[optimized] (lambda (k598) (let ((k599 (##core#lambda (r600) (let ((k602 (##core#lambda (r603) (let ((k605 (##core#lambda (r606) (let ((k608 (##core#lambda (r609) (let ((k611 (##core#lambda (r612) (let ((t614 (set! flush-output-port #f flush-output))) (let ((t615 (set! current-jiffy #f current-milliseconds))) (let ((t616 (set! jiffies-per-second #f (lambda (k618) (k618 1000))))) (let ((t619 (set! current-second #f current-seconds))) (let ((t620 (set! inexact #f exact->inexact))) (let ((t621 (set! exact #f inexact->exact))) (let ((t622 (set! square #f (lambda (k624 x61) (k624 (##core#inline_allocate ("C_a_i_times" 4) x61 x61)))))) (let ((t628 (set! exact-integer? #f integer?))) (let ((t629 (set! this-scheme-implementation-name #f (lambda (k631) (let ((k636 (##core#lambda (r637) (string-append k631 "chicken-" r637)))) (chicken-version k636)))))) (let ((t639 (set! lexico #f (lambda (k641 base66) (let ((lex-fixed67 (##core#undefined))) (let ((lex-first68 (##core#undefined))) (let ((t642 (set! lex-fixed67 #f (lambda (k644 fixed69 lhs70 rhs71) (let ((check72 (##core#undefined))) (let ((t645 (set! check72 #f (lambda (k647 lhs73 rhs74) (if (##core#inline "C_i_nullp" lhs73) (k647 fixed69) (let ((k654 (##core#lambda (r655) (let ((r661 (##core#inline "C_eqp" r655 'equal))) (let ((r664 (##core#cond r661 r661 (##core#inline "C_eqp" r655 fixed69)))) (if r664 (let ((r671 (##core#inline "C_i_cdr" lhs73))) (let ((r675 (##core#inline "C_i_cdr" rhs74))) (check72 k647 r671 r675))) (k647 'uncomparable))))))) (let ((r682 (##core#inline "C_i_car" lhs73))) (let ((r686 (##core#inline "C_i_car" rhs74))) (base66 k654 r682 r686))))))))) (check72 k644 lhs70 rhs71))))))) (let ((t691 (set! lex-first68 #f (lambda (k693 lhs80 rhs81) (if (##core#inline "C_i_nullp" lhs80) (k693 'equal) (let ((k700 (##core#lambda (r701) (let ((r707 (##core#inline "C_eqp" r701 'less))) (let ((r710 (##core#cond r707 r707 (##core#inline "C_eqp" r701 'more)))) (if r710 (let ((r717 (##core#inline "C_i_cdr" lhs80))) (let ((r721 (##core#inline "C_i_cdr" rhs81))) (lex-fixed67 k693 r701 r717 r721))) (let ((r727 (##core#inline "C_eqp" r701 'equal))) (if r727 (let ((r734 (##core#inline "C_i_cdr" lhs80))) (let ((r738 (##core#inline "C_i_cdr" rhs81))) (lex-first68 k693 r734 r738))) (let ((r744 (##core#inline "C_eqp" r701 'uncomparable))) (k693 (##core#cond r744 'uncomparable (##core#undefined)))))))))))) (let ((r751 (##core#inline "C_i_car" lhs80))) (let ((r755 (##core#inline "C_i_car" rhs81))) (base66 k700 r751 r755))))))))) (k641 lex-first68))))))))) (let ((t757 (set! make-lattice #f (lambda (k759 elem-list95 cmp-func96) (k759 (##core#inline_allocate ("C_a_i_cons" 3) elem-list95 cmp-func96)))))) (let ((t763 (set! lattice->elements #f car))) (let ((t764 (set! lattice->cmp #f cdr))) (let ((t765 (set! zulu-select #f (lambda (k767 test100 lst101) (let ((select-a102 (##core#undefined))) (let ((t768 (set! select-a102 #f (lambda (k770 ac103 lst104) (if (##core#inline "C_i_nullp" lst104) (xreverse! k770 ac103) (let ((r785 (##core#inline "C_i_car" lst104))) (let ((head105 r785)) (let ((k794 (##core#lambda (r795) (let ((r788 (##core#cond r795 (##core#inline_allocate ("C_a_i_cons" 3) head105 ac103) ac103))) (let ((r792 (##core#inline "C_i_cdr" lst104))) (select-a102 k770 r788 r792)))))) (test100 k794 head105))))))))) (select-a102 k767 '() lst101))))))) (let ((rotate109 (##core#undefined))) (let ((rotate108110 (lambda (k805 fo111 fum112) (let ((r807 (##core#inline "C_i_cdr" fo111))) (let ((r810 (##core#inline "C_i_set_cdr" fo111 fum112))) (if (##core#inline "C_i_nullp" r807) (k805 fo111) (rotate109 k805 r807 fo111))))))) (let ((t821 (set! rotate109 #f rotate108110))) (let ((t803 (set! xreverse! #f (lambda (k823 lst115) (if (##core#inline "C_i_nullp" lst115) (k823 '()) (rotate109 k823 lst115 '())))))) (let ((t833 (set! select-map #f (lambda (k835 test118 func119 lst120) (let ((select-a121 (##core#undefined))) (let ((t836 (set! select-a121 #f (lambda (k838 ac122 lst123) (if (##core#inline "C_i_nullp" lst123) (xreverse! k838 ac122) (let ((r853 (##core#inline "C_i_car" lst123))) (let ((head124 r853)) (let ((k855 (##core#lambda (r856) (let ((r860 (##core#inline "C_i_cdr" lst123))) (select-a121 k838 r856 r860))))) (let ((k862 (##core#lambda (r863) (if r863 (let ((k869 (##core#lambda (r870) (k855 (##core#inline_allocate ("C_a_i_cons" 3) r870 ac122))))) (func119 k869 head124)) (k855 ac122))))) (test118 k862 head124)))))))))) (select-a121 k835 '() lst120))))))) (let ((t875 (set! map-and #f (lambda (k877 proc127 lst128) (if (##core#inline "C_i_nullp" lst128) (k877 #t) (let ((drudge130 (##core#undefined))) (let ((drudge129131 (lambda (k885 lst132) (let ((r887 (##core#inline "C_i_cdr" lst132))) (let ((rest133 r887)) (if (##core#inline "C_i_nullp" rest133) (let ((r900 (##core#inline "C_i_car" lst132))) (proc127 k885 r900)) (let ((k905 (##core#lambda (r906) (if r906 (drudge130 k885 rest133) (k885 #f))))) (let ((r913 (##core#inline "C_i_car" lst132))) (proc127 k905 r913))))))))) (let ((t915 (set! drudge130 #f drudge129131))) (drudge130 k877 lst128))))))))) (let ((t919 (set! maps-1 #f (lambda (k921 source137 target138 pas139 new140) (let ((k922 (##core#lambda (r923) (let ((scmp141 r923)) (let ((k925 (##core#lambda (r926) (let ((tcmp142 r926)) (let ((k928 (##core#lambda (r929) (let ((less143 r929)) (let ((k931 (##core#lambda (r932) (let ((more144 r932)) (let ((a937 (lambda (k939 t147) (let ((k943 (##core#lambda (r944) (if r944 (let ((a949 (lambda (k951 t2150) (let ((k956 (##core#lambda (r957) (k951 (##core#inline "C_i_memq" r957 '(more equal)))))) (tcmp142 k956 t2150 t147))))) (map-and k939 a949 more144)) (k939 #f))))) (let ((a959 (lambda (k961 t2149) (let ((k966 (##core#lambda (r967) (k961 (##core#inline "C_i_memq" r967 '(less equal)))))) (tcmp142 k966 t2149 t147))))) (map-and k943 a959 less143)))))) (let ((k970 (##core#lambda (r971) (zulu-select k921 a937 r971)))) (lattice->elements k970 target138))))))) (let ((a973 (lambda (k975 p146) (let ((k980 (##core#lambda (r981) (k975 (##core#inline "C_eqp" 'more r981))))) (let ((r985 (##core#inline "C_i_car" p146))) (scmp141 k980 r985 new140)))))) (select-map k931 a973 cdr pas139))))))) (let ((a987 (lambda (k989 p145) (let ((k994 (##core#lambda (r995) (k989 (##core#inline "C_eqp" 'less r995))))) (let ((r999 (##core#inline "C_i_car" p145))) (scmp141 k994 r999 new140)))))) (select-map k928 a987 cdr pas139))))))) (lattice->cmp k925 target138)))))) (lattice->cmp k922 source137)))))) (let ((t1001 (set! maps-rest #f (lambda (k1003 source152 target153 pas154 rest155 to-1156 to-collect157) (if (##core#inline "C_i_nullp" rest155) (to-1156 k1003 pas154) (let ((r1014 (##core#inline "C_i_car" rest155))) (let ((next158 r1014)) (let ((r1017 (##core#inline "C_i_cdr" rest155))) (let ((rest159 r1017)) (let ((r1024 (##core#inline_allocate ("C_a_i_cons" 3) (##core#undefined) '()))) (let ((g167175 r1024)) (let ((g166176 g167175)) (let ((g168177 (lambda (k1027 x179) (let ((r1037 (##core#inline_allocate ("C_a_i_cons" 3) next158 x179))) (let ((r1033 (##core#inline_allocate ("C_a_i_cons" 3) r1037 pas154))) (maps-rest k1027 source152 target153 r1033 rest159 to-1156 to-collect157)))))) (let ((k1039 (##core#lambda (r1040) (let ((r1043 (##core#inline "C_i_check_list_2" r1040 'map))) (let ((k1045 (##core#lambda (r1046) (to-collect157 k1003 r1046)))) (let ((map-loop162180 (##core#undefined))) (let ((t1048 (set! map-loop162180 #f (lambda (k1050 g174181) (if (##core#inline "C_i_pairp" g174181) (let ((k1072 (##core#lambda (r1073) (let ((r1058 (##core#inline_allocate ("C_a_i_cons" 3) r1073 '()))) (let ((r1061 (##core#inline "C_i_setslot" g167175 1 r1058))) (let ((t1063 (set! g167175 #f r1058))) (let ((r1069 (##core#inline "C_slot" g174181 1))) (map-loop162180 k1050 r1069)))))))) (let ((r1077 (##core#inline "C_slot" g174181 0))) (g168177 k1072 r1077))) (k1050 (##core#inline "C_slot" g166176 1))))))) (map-loop162180 k1045 r1040)))))))) (maps-1 k1039 source152 target153 pas154 next158))))))))))))))) (let ((t1082 (set! maps #f (lambda (k1084 source188 target189) (let ((k1089 (##core#lambda (r1090) (let ((a1088 r1090)) (let ((k1093 (##core#lambda (r1094) (make-lattice k1084 a1088 r1094)))) (let ((k1097 (##core#lambda (r1098) (lexico k1093 r1098)))) (lattice->cmp k1097 target189))))))) (let ((k1101 (##core#lambda (r1102) (let ((a1104 (lambda (k1106 x190) (let ((r1112 (##core#inline_allocate ("C_a_i_cons" 3) (##core#undefined) '()))) (let ((g198206 r1112)) (let ((g197207 g198206)) (let ((r1115 (##core#inline "C_i_check_list_2" x190 'map))) (let ((k1117 (##core#lambda (r1118) (k1106 (##core#inline_allocate ("C_a_i_list1" 3) r1118))))) (let ((map-loop193210 (##core#undefined))) (let ((t1120 (set! map-loop193210 #f (lambda (k1122 g205211) (if (##core#inline "C_i_pairp" g205211) (let ((r1149 (##core#inline "C_slot" g205211 0))) (let ((r1145 (##core#inline "C_i_cdr" r1149))) (let ((r1130 (##core#inline_allocate ("C_a_i_cons" 3) r1145 '()))) (let ((r1133 (##core#inline "C_i_setslot" g198206 1 r1130))) (let ((t1135 (set! g198206 #f r1130))) (let ((r1141 (##core#inline "C_slot" g205211 1))) (map-loop193210 k1122 r1141))))))) (k1122 (##core#inline "C_slot" g197207 1))))))) (map-loop193210 k1117 x190))))))))))) (let ((a1154 (lambda (k1156 x217) ((##core#proc "C_apply" #t) k1156 append x217)))) (maps-rest k1089 source188 target189 '() r1102 a1104 a1154)))))) (lattice->elements k1101 source188))))))) (let ((t1160 (set! count-maps #f (lambda (k1162 source219 target220) (let ((k1167 (##core#lambda (r1168) (let ((a1170 (lambda (k1172 x221) (k1172 1)))) (maps-rest k1162 source219 target220 '() r1168 a1170 sum))))) (lattice->elements k1167 source219)))))) (let ((t1173 (set! sum #f (lambda (k1175 lst223) (if (##core#inline "C_i_nullp" lst223) (k1175 0) (let ((r1187 (##core#inline "C_i_car" lst223))) (let ((a1185 r1187)) (let ((k1190 (##core#lambda (r1191) (k1175 (##core#inline_allocate ("C_a_i_plus" 4) a1185 r1191))))) (let ((r1195 (##core#inline "C_i_cdr" lst223))) (sum k1190 r1195)))))))))) (let ((t1197 (set! run #f (lambda (k1199 k225) (let ((k1200 (##core#lambda (r1201) (let ((l2226 r1201)) (let ((k1203 (##core#lambda (r1204) (let ((l3247 r1204)) (let ((k1206 (##core#lambda (r1207) (let ((l4248 r1207)) (let ((k1209 (##core#lambda (r1210) (let ((k1212 (##core#lambda (r1213) (let ((k1215 (##core#lambda (r1216) (let ((k1218 (##core#lambda (r1219) (let ((tmp249254 k225)) (##core#switch 5 tmp249254 33 (count-maps k1199 l3247 l3247) 44 (count-maps k1199 l4248 l4248) 45 (let ((k1245 (##core#lambda (r1246) (count-maps k1199 l4248 r1246)))) (maps k1245 l4248 l4248)) 54 (let ((k1257 (##core#lambda (r1258) (count-maps k1199 r1258 l4248)))) (maps k1257 l4248 l4248)) 55 (let ((k1269 (##core#lambda (r1270) (count-maps k1199 r1270 r1270)))) (maps k1269 l4248 l4248)) (error k1199 "run: unanticipated problem size" k225)))))) (count-maps k1218 l3247 l2226))))) (count-maps k1215 l2226 l3247))))) (count-maps k1212 l3247 l3247))))) (count-maps k1209 l2226 l2226)))))) (maps k1206 l3247 l3247)))))) (maps k1203 l2226 l2226)))))) (let ((a1278 (lambda (k1280 lhs227 rhs228) (let ((tmp229234 lhs227)) (let ((r1285 (##core#inline "C_eqp" tmp229234 'low))) (if r1285 (let ((tmp235240 rhs228)) (let ((r1291 (##core#inline "C_eqp" tmp235240 'low))) (if r1291 (k1280 'equal) (let ((r1297 (##core#inline "C_eqp" tmp235240 'high))) (if r1297 (k1280 'less) (error k1280 'make-lattice "base" rhs228)))))) (let ((r1306 (##core#inline "C_eqp" tmp229234 'high))) (if r1306 (let ((tmp241246 rhs228)) (let ((r1312 (##core#inline "C_eqp" tmp241246 'low))) (if r1312 (k1280 'more) (let ((r1318 (##core#inline "C_eqp" tmp241246 'high))) (if r1318 (k1280 'equal) (error k1280 'make-lattice "base" rhs228)))))) (error k1280 'make-lattice "base" lhs227))))))))) (make-lattice k1200 '(low high) a1278))))))) (let ((t1326 (set! main #f (lambda (k1328) (let ((k1329 (##core#lambda (r1330) (let ((count263 r1330)) (let ((k1332 (##core#lambda (r1333) (let ((input1264 r1333)) (let ((k1335 (##core#lambda (r1336) (let ((output265 r1336)) (let ((k1338 (##core#lambda (r1339) (let ((s2266 r1339)) (let ((k1341 (##core#lambda (r1342) (let ((k1348 (##core#lambda (r1349) (let ((a1351 (lambda (k1353) (let ((k1358 (##core#lambda (r1359) (run k1353 r1359)))) (hide k1358 count263 input1264))))) (let ((a1361 (lambda (k1363 result269) (k1363 (##core#inline "C_i_nequalp" result269 output265))))) (run-r7rs-benchmark k1328 r1349 count263 a1351 a1361)))))) (string-append k1348 "lattice" ":" r1342 ":" s2266))))) (number->string k1341 input1264)))))) (number->string k1338 count263)))))) (read k1335)))))) (read k1332)))))) (read k1329)))))) (let ((t1367 (set! hide #f (lambda (k1369 r271 x272) (let ((a1373 (lambda (k1375) (let ((a1390 (lambda (k1392 x273) (k1392 x273)))) (let ((r1381 (##core#inline_allocate ("C_a_i_vector2" 3) values a1390))) (let ((r1388 (##core#inline "C_i_lessp" r271 100))) (let ((r1385 (##core#cond r1388 0 1))) ((##core#proc "C_values" #t) k1375 r1381 r1385)))))))) (let ((a1393 (lambda (k1395 v274 i275) (let ((r1397 (##core#inline "C_i_vector_ref" v274 i275))) (r1397 k1395 x272))))) ((##core#proc "C_call_with_values" #t) k1369 a1373 a1393))))))) (let ((t1402 (set! run-r7rs-benchmark #f (lambda (k1404 name279 count280 thunk281 ok?282) (let ((k1419 (##core#lambda (r1420) (let ((k1422 (##core#lambda (r1423) (let ((k1425 (##core#lambda (r1426) (let ((k1428 (##core#lambda (r1429) (let ((k1431 (##core#lambda (r1432) (let ((j/s285 r1432)) (let ((k1434 (##core#lambda (r1435) (let ((t0286 r1435)) (let ((k1437 (##core#lambda (r1438) (let ((j0287 r1438)) (let ((loop288 (##core#undefined))) (let ((t1443 (set! loop288 #f (lambda (k1445 i289 result290) (if (##core#inline "C_i_lessp" i289 count280) (let ((r1457 (##core#inline_allocate ("C_a_i_plus" 4) i289 1))) (let ((a1455 r1457)) (let ((k1460 (##core#lambda (r1461) (loop288 k1445 a1455 r1461)))) (thunk281 k1460)))) (let ((k1466 (##core#lambda (r1467) (if r1467 (let ((k1469 (##core#lambda (r1470) (let ((j1295 r1470)) (let ((k1472 (##core#lambda (r1473) (let ((t1296 r1473)) (let ((r1476 (##core#inline_allocate ("C_a_i_minus" 4) j1295 j0287))) (let ((k1478 (##core#lambda (r1479) (let ((secs298 r1479)) (let ((k1481 (##core#lambda (r1482) (let ((secs2299 r1482)) (let ((k1484 (##core#lambda (r1485) (let ((k1487 (##core#lambda (r1488) (let ((k1490 (##core#lambda (r1491) (let ((k1493 (##core#lambda (r1494) (let ((k1496 (##core#lambda (r1497) (let ((k1499 (##core#lambda (r1500) (let ((k1502 (##core#lambda (r1503) (let ((k1505 (##core#lambda (r1506) (let ((k1508 (##core#lambda (r1509) (let ((k1511 (##core#lambda (r1512) (let ((k1514 (##core#lambda (r1515) (let ((k1517 (##core#lambda (r1518) (let ((k1520 (##core#lambda (r1521) (let ((k1523 (##core#lambda (r1524) (let ((k1526 (##core#lambda (r1527) (k1445 result290)))) (let ((r1531 ##sys#standard-output)) (flush-output-port k1526 ##sys#standard-output)))))) (newline k1523))))) (display k1520 secs298))))) (display k1517 ","))))) (display k1514 name279))))) (display k1511 ","))))) (let ((k1534 (##core#lambda (r1535) (display k1508 r1535)))) (this-scheme-implementation-name k1534)))))) (display k1505 "+!CSVLINE!+"))))) (newline k1502))))) (display k1499 name279))))) (display k1496 ") for "))))) (write k1493 secs2299))))) (display k1490 " seconds ("))))) (write k1487 secs298))))) (display k1484 "Elapsed time: ")))))) (let ((r1539 (##core#inline_allocate ("C_a_i_minus" 4) t1296 t0286))) (let ((k1407 k1481)) (let ((k1412 (##core#lambda (r1413) (k1407 (##core#inline_allocate ("C_a_i_divide" 4) r1413 1000))))) (let ((r1417 (##core#inline_allocate ("C_a_i_times" 4) 1000 r1539))) (round k1412 r1417)))))))))) (let ((r1543 (##core#inline_allocate ("C_a_i_divide" 4) r1476 j/s285))) (inexact k1478 r1543)))))))) (current-second k1472)))))) (current-jiffy k1469)) (let ((k1545 (##core#lambda (r1546) (let ((k1548 (##core#lambda (r1549) (let ((k1551 (##core#lambda (r1552) (let ((k1554 (##core#lambda (r1555) (k1445 result290)))) (let ((r1559 ##sys#standard-output)) (flush-output-port k1554 ##sys#standard-output)))))) (newline k1551))))) (write k1548 result290))))) (display k1545 "ERROR: returned incorrect result: ")))))) (ok?282 k1466 result290))))))) (loop288 k1404 0 #f))))))) (current-jiffy k1437)))))) (current-second k1434)))))) (jiffies-per-second k1431))))) (let ((r1563 ##sys#standard-output)) (flush-output-port k1428 ##sys#standard-output)))))) (newline k1425))))) (display k1422 name279))))) (display k1419 "Running ")))))) (let ((k1565 (##core#lambda (r1566) (let ((k1568 (##core#lambda (r1569) (k598 (##core#undefined))))) (let ((k1571 (##core#lambda (r1572) (r1572 k1568)))) (##sys#implicit-exit-handler k1571)))))) (main k1565)))))))))))))))))))))))))))))))))) (##sys#require k611 'vector-lib))))) (##core#callunit "extras" k608))))) (##core#callunit "chicken_2dsyntax" k605))))) (##core#callunit "eval" k602))))) (##core#callunit "library" k599)))