From 9174e320dc712c9be65d9f55fd11f33556857ec9 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Mon, 11 Apr 2016 23:37:49 -0400 Subject: [PATCH 001/121] WIP - use differnt heap for small objects --- gc.c | 13 +++++++++++-- include/cyclone/types.h | 10 ++++++++-- runtime.c | 10 +++++++--- 3 files changed, 26 insertions(+), 7 deletions(-) diff --git a/gc.c b/gc.c index f0da6eb3..7872b7e3 100644 --- a/gc.c +++ b/gc.c @@ -426,15 +426,22 @@ void *gc_try_alloc(gc_heap *h, size_t size, char *obj, gc_thread_data *thd) return NULL; } -void *gc_alloc(gc_heap *h, size_t size, char *obj, gc_thread_data *thd, int *heap_grown) +void *gc_alloc(gc_heap_root *hrt, size_t size, char *obj, gc_thread_data *thd, int *heap_grown) { void *result = NULL; + gc_heap *h = NULL; size_t max_freed = 0, sum_freed = 0, total_size; // TODO: check return value, if null (could not alloc) then // run a collection and check how much free space there is. if less // the allowed ratio, try growing heap. // then try realloc. if cannot alloc now, then throw out of memory error size = gc_heap_align(size); + if (size <= 32){ + h = hrt->small_obj_heap; + } else { + h = hrt->heap; + } + result = gc_try_alloc(h, size, obj, thd); if (!result) { // A vanilla mark&sweep collector would collect now, but unfortunately @@ -1190,7 +1197,8 @@ fprintf(stderr, "DEBUG - after wait_handshake async\n"); ck_pr_cas_int(&gc_stage, STAGE_TRACING, STAGE_SWEEPING); // //sweep : - max_freed = gc_sweep(gc_get_heap(), &freed); + max_freed = gc_sweep(gc_get_heap()->heap, &freed); + max_freed = gc_sweep(gc_get_heap()->small_obj_heap, &freed); total_size = cached_heap_total_size; //gc_heap_total_size(gc_get_heap()); total_free = cached_heap_free_size; //gc_heap_total_free_size(gc_get_heap()); @@ -1200,6 +1208,7 @@ fprintf(stderr, "DEBUG - after wait_handshake async\n"); fprintf(stdout, "Less than %f%% of the heap is free, growing it\n", 100.0 * GC_FREE_THRESHOLD); #endif + TODO: how do we know which heap to grow??? gc_grow_heap(gc_get_heap(), 0, 0); total_size = cached_heap_total_size; total_free = cached_heap_free_size; diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 0eceecea..a4a8c8fc 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -128,6 +128,12 @@ struct gc_heap_t { char *data; }; +typedef struct gc_heap_root_t gc_heap_root; +struct gc_heap_root_t { + gc_heap *small_obj_heap; + gc_heap *heap; +}; + typedef struct gc_header_type_t gc_header_type; struct gc_header_type_t { unsigned int mark; // mark bits (TODO: only need 2, reduce size of type?) @@ -398,7 +404,7 @@ void gc_print_stats(gc_heap *h); int gc_grow_heap(gc_heap *h, size_t size, size_t chunk_size); char *gc_copy_obj(object hp, char *obj, gc_thread_data *thd); void *gc_try_alloc(gc_heap *h, size_t size, char *obj, gc_thread_data *thd); -void *gc_alloc(gc_heap *h, size_t size, char *obj, gc_thread_data *thd, int *heap_grown); +void *gc_alloc(gc_heap_root *h, size_t size, char *obj, gc_thread_data *thd, int *heap_grown); size_t gc_allocated_bytes(object obj, gc_free_list *q, gc_free_list *r); gc_heap *gc_heap_last(gc_heap *h); size_t gc_heap_total_size(gc_heap *h); @@ -435,7 +441,7 @@ void gc_mutator_thread_runnable(gc_thread_data *thd, object result); // set_thread_blocked((data), (cont)); \ // body \ // return_thread_runnable((data), (result)); -gc_heap *gc_get_heap(); +gc_heap_root *gc_get_heap(); int gc_minor(void *data, object low_limit, object high_limit, closure cont, object *args, int num_args); /* Mutation table to support minor GC write barrier */ void add_mutation(void *data, object var, int index, object value); diff --git a/runtime.c b/runtime.c index accf1beb..9b4c21a2 100644 --- a/runtime.c +++ b/runtime.c @@ -95,7 +95,7 @@ void Cyc_check_bounds(void *data, const char *label, int len, int index) { /*END closcall section */ /* Global variables. */ -static gc_heap *Cyc_heap; +static gc_heap_root *Cyc_heap; long no_gcs = 0; /* Count the number of GC's. */ long no_major_gcs = 0; /* Count the number of GC's. */ @@ -164,7 +164,11 @@ static bool set_insert(ck_hs_t *hs, const void *value) void gc_init_heap(long heap_size) { - Cyc_heap = gc_heap_create(heap_size, 0, 0); + + Cyc_heap = malloc(sizeof(gc_heap_root)); + Cyc_heap->heap = gc_heap_create(heap_size, 0, 0); + Cyc_heap->small_obj_heap = gc_heap_create(heap_size, 0, 0); + if (!ck_hs_init(&symbol_table, CK_HS_MODE_OBJECT | CK_HS_MODE_SPMC, hs_hash, hs_compare, @@ -180,7 +184,7 @@ void gc_init_heap(long heap_size) } } -gc_heap *gc_get_heap() +gc_heap_root *gc_get_heap() { return Cyc_heap; } From b18aadb2294edbe05ca080d53cbaf150ac084d7a Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Mon, 11 Apr 2016 21:18:34 -0400 Subject: [PATCH 002/121] Temporarily disable growing heap after GC To get this working properly, would need to figure out if any sub-heaps are nearly full. Since we grow these heaps anyway as needed, this code is not strictly required. So diabling for now to get cyclone to build and run again. --- gc.c | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/gc.c b/gc.c index 7872b7e3..3e7b36fd 100644 --- a/gc.c +++ b/gc.c @@ -1202,17 +1202,18 @@ fprintf(stderr, "DEBUG - after wait_handshake async\n"); total_size = cached_heap_total_size; //gc_heap_total_size(gc_get_heap()); total_free = cached_heap_free_size; //gc_heap_total_free_size(gc_get_heap()); -//TODO: want stats on how much of each heap page is used - while (total_free < (total_size * GC_FREE_THRESHOLD)) { -#if GC_DEBUG_TRACE - fprintf(stdout, "Less than %f%% of the heap is free, growing it\n", - 100.0 * GC_FREE_THRESHOLD); -#endif - TODO: how do we know which heap to grow??? - gc_grow_heap(gc_get_heap(), 0, 0); - total_size = cached_heap_total_size; - total_free = cached_heap_free_size; - } +// TODO: disabling for now +////TODO: want stats on how much of each heap page is used +// while (total_free < (total_size * GC_FREE_THRESHOLD)) { +//#if GC_DEBUG_TRACE +// fprintf(stdout, "Less than %f%% of the heap is free, growing it\n", +// 100.0 * GC_FREE_THRESHOLD); +//#endif +// //TODO: how do we know which heap to grow??? +// gc_grow_heap(gc_get_heap(), 0, 0); +// total_size = cached_heap_total_size; +// total_free = cached_heap_free_size; +// } #if GC_DEBUG_TRACE fprintf(stderr, "sweep done, total_size = %zu, total_free = %zu, freed = %zu, max_freed = %zu, elapsed = %zu\n", total_size, total_free, From 4457cd24c0a0c1532c1a7ae112cf8a5a6166659d Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Mon, 11 Apr 2016 22:57:39 -0400 Subject: [PATCH 003/121] Stub for vector heap alloc --- runtime.c | 45 ++++++++++++++++++++++++++++++++------------- 1 file changed, 32 insertions(+), 13 deletions(-) diff --git a/runtime.c b/runtime.c index 9b4c21a2..8209aa12 100644 --- a/runtime.c +++ b/runtime.c @@ -1436,7 +1436,7 @@ object Cyc_command_line_arguments(void *data, object cont) { object Cyc_make_vector(void *data, object cont, int argc, object len, ...) { object v = nil; object fill = boolean_f; - int i; + int i, ulen; va_list ap; va_start(ap, len); if (argc > 1) { @@ -1444,18 +1444,37 @@ object Cyc_make_vector(void *data, object cont, int argc, object len, ...) { } va_end(ap); Cyc_check_num(data, len); - v = alloca(sizeof(vector_type)); - ((vector)v)->hdr.mark = gc_color_red; - ((vector)v)->hdr.grayed = 0; - ((vector)v)->tag = vector_tag; - ((vector)v)->num_elt = unbox_number(len); - ((vector)v)->elts = - (((vector)v)->num_elt > 0) ? - (object *)alloca(sizeof(object) * ((vector)v)->num_elt) : - NULL; - for (i = 0; i < ((vector)v)->num_elt; i++) { - ((vector)v)->elts[i] = fill; - } + ulen = unbox_number(len); + +// TODO: if vector is too big, would need to alloc directly on the heap +// if (ulen < 10000) { + v = alloca(sizeof(vector_type)); + ((vector)v)->hdr.mark = gc_color_red; + ((vector)v)->hdr.grayed = 0; + ((vector)v)->tag = vector_tag; + ((vector)v)->num_elt = ulen; + ((vector)v)->elts = + (((vector)v)->num_elt > 0) ? + (object *)alloca(sizeof(object) * ((vector)v)->num_elt) : + NULL; + for (i = 0; i < ((vector)v)->num_elt; i++) { + ((vector)v)->elts[i] = fill; + } +// } else { +// // Experimenting with heap allocation if vector is too large +// int heap_grown; +// vector_type *vt = gc_alloc(Cyc_heap, +// sizeof(vector_type) + sizeof(object) * ulen, +// boolean_f, (gc_thread_data *)data, &heap_grown); +// mark(vt) = ((gc_thread_data *)data)->gc_alloc_color; +// type_of(vt) = vector_tag; +// vt->num_elt = ulen; +// vt->elts = (object *)((char *)vt) + sizeof(vector_type); +// for (i = 0; i < ulen; i++) { +// vt->elts[i] = fill; +// } +// v = vt; +// } return_closcall1(data, cont, v); } From 89881e901ab042275ba5c841f31ca54844f9b780 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 12 Apr 2016 21:34:18 -0400 Subject: [PATCH 004/121] Experimenting with a medium object heap --- gc.c | 3 +++ include/cyclone/types.h | 1 + runtime.c | 1 + 3 files changed, 5 insertions(+) diff --git a/gc.c b/gc.c index 3e7b36fd..9357f1da 100644 --- a/gc.c +++ b/gc.c @@ -438,6 +438,8 @@ void *gc_alloc(gc_heap_root *hrt, size_t size, char *obj, gc_thread_data *thd, i size = gc_heap_align(size); if (size <= 32){ h = hrt->small_obj_heap; + } else if (size <= 64) { + h = hrt->medium_obj_heap; } else { h = hrt->heap; } @@ -1199,6 +1201,7 @@ fprintf(stderr, "DEBUG - after wait_handshake async\n"); //sweep : max_freed = gc_sweep(gc_get_heap()->heap, &freed); max_freed = gc_sweep(gc_get_heap()->small_obj_heap, &freed); + max_freed = gc_sweep(gc_get_heap()->medium_obj_heap, &freed); total_size = cached_heap_total_size; //gc_heap_total_size(gc_get_heap()); total_free = cached_heap_free_size; //gc_heap_total_free_size(gc_get_heap()); diff --git a/include/cyclone/types.h b/include/cyclone/types.h index a4a8c8fc..4ee92caf 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -131,6 +131,7 @@ struct gc_heap_t { typedef struct gc_heap_root_t gc_heap_root; struct gc_heap_root_t { gc_heap *small_obj_heap; + gc_heap *medium_obj_heap; gc_heap *heap; }; diff --git a/runtime.c b/runtime.c index 8209aa12..a649f5fc 100644 --- a/runtime.c +++ b/runtime.c @@ -168,6 +168,7 @@ void gc_init_heap(long heap_size) Cyc_heap = malloc(sizeof(gc_heap_root)); Cyc_heap->heap = gc_heap_create(heap_size, 0, 0); Cyc_heap->small_obj_heap = gc_heap_create(heap_size, 0, 0); + Cyc_heap->medium_obj_heap = gc_heap_create(heap_size, 0, 0); if (!ck_hs_init(&symbol_table, CK_HS_MODE_OBJECT | CK_HS_MODE_SPMC, From 0de7c6b98bef59111f7dd8e7843606c85b5d8680 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 12 Apr 2016 23:10:21 -0400 Subject: [PATCH 005/121] Experimenting with gradual heap growth --- gc.c | 30 ++++++++++++++++++++++++++---- runtime.c | 6 +++--- 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/gc.c b/gc.c index 9357f1da..bc7f7f1c 100644 --- a/gc.c +++ b/gc.c @@ -382,10 +382,32 @@ int gc_grow_heap(gc_heap *h, size_t size, size_t chunk_size) size_t cur_size, new_size; gc_heap *h_last, *h_new; pthread_mutex_lock(&heap_lock); - h_last = gc_heap_last(h); - cur_size = h_last->size; - // JAE - For now, just add a new page - new_size = cur_size; //gc_heap_align(((cur_size > size) ? cur_size : size) * 2); + // TODO: experiment with + // 1) growing heap gradually using a fibonnaci sequence growth + // 2) cap at HEAP_SIZE + // 3) allocate larger pages if heap aligned size is > page size? + { + size_t prev_size = 0; + new_size = 0; + h_last = h; + while (h_last->next) { + if (new_size < HEAP_SIZE){ + new_size = prev_size + h_last->size; + prev_size = h_last->size; + } else { + new_size = HEAP_SIZE; + } + h_last = h_last->next; + } + if (new_size == 0) + new_size = h_last->size; + //fprintf(stderr, "Growing heap new page size = %zu\n", new_size); + } +// OLD code: +// h_last = gc_heap_last(h); +// cur_size = h_last->size; +// new_size = cur_size; //gc_heap_align(((cur_size > size) ? cur_size : size) * 2); +// END TODO h_new = gc_heap_create(new_size, h_last->max_size, chunk_size); h_last->next = h_new; pthread_mutex_unlock(&heap_lock); diff --git a/runtime.c b/runtime.c index a649f5fc..78d22a19 100644 --- a/runtime.c +++ b/runtime.c @@ -166,9 +166,9 @@ void gc_init_heap(long heap_size) { Cyc_heap = malloc(sizeof(gc_heap_root)); - Cyc_heap->heap = gc_heap_create(heap_size, 0, 0); - Cyc_heap->small_obj_heap = gc_heap_create(heap_size, 0, 0); - Cyc_heap->medium_obj_heap = gc_heap_create(heap_size, 0, 0); + Cyc_heap->heap = gc_heap_create(1 * 1024 * 1024, 0, 0); + Cyc_heap->small_obj_heap = gc_heap_create(1 * 1024 * 1024, 0, 0); + Cyc_heap->medium_obj_heap = gc_heap_create(1 * 1024 * 1024, 0, 0); if (!ck_hs_init(&symbol_table, CK_HS_MODE_OBJECT | CK_HS_MODE_SPMC, From 8d8ce71c92d8ab691166daf81add9e7b05ba9960 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 12 Apr 2016 23:44:13 -0400 Subject: [PATCH 006/121] Revert previous change, for now --- gc.c | 54 ++++++++++++++++++++++++++++-------------------------- runtime.c | 6 +++--- 2 files changed, 31 insertions(+), 29 deletions(-) diff --git a/gc.c b/gc.c index bc7f7f1c..6294ac06 100644 --- a/gc.c +++ b/gc.c @@ -382,32 +382,34 @@ int gc_grow_heap(gc_heap *h, size_t size, size_t chunk_size) size_t cur_size, new_size; gc_heap *h_last, *h_new; pthread_mutex_lock(&heap_lock); - // TODO: experiment with - // 1) growing heap gradually using a fibonnaci sequence growth - // 2) cap at HEAP_SIZE - // 3) allocate larger pages if heap aligned size is > page size? - { - size_t prev_size = 0; - new_size = 0; - h_last = h; - while (h_last->next) { - if (new_size < HEAP_SIZE){ - new_size = prev_size + h_last->size; - prev_size = h_last->size; - } else { - new_size = HEAP_SIZE; - } - h_last = h_last->next; - } - if (new_size == 0) - new_size = h_last->size; - //fprintf(stderr, "Growing heap new page size = %zu\n", new_size); - } -// OLD code: -// h_last = gc_heap_last(h); -// cur_size = h_last->size; -// new_size = cur_size; //gc_heap_align(((cur_size > size) ? cur_size : size) * 2); -// END TODO + // Compute size of new heap page +// experimental code for growing heap gradually using fibonnaci sequence. +// but with boyer benchmarks there is more thrashing with this method, +// so for now it is not used. If it is used again, the initial heaps will +// need to start at a lower size (EG 1 MB). +// { +// size_t prev_size = 0; +// new_size = 0; +// h_last = h; +// while (h_last->next) { +// if (new_size < HEAP_SIZE){ +// new_size = prev_size + h_last->size; +// prev_size = h_last->size; +// } else { +// new_size = HEAP_SIZE; +// } +// h_last = h_last->next; +// } +// if (new_size == 0) +// new_size = h_last->size; +// //fprintf(stderr, "Growing heap new page size = %zu\n", new_size); +// } + h_last = gc_heap_last(h); + cur_size = h_last->size; + new_size = cur_size; //gc_heap_align(((cur_size > size) ? cur_size : size) * 2); + // allocate larger pages if size will not fit on the page + //new_size = gc_heap_align(((cur_size > size) ? cur_size : size)); + // Done with computing new page size h_new = gc_heap_create(new_size, h_last->max_size, chunk_size); h_last->next = h_new; pthread_mutex_unlock(&heap_lock); diff --git a/runtime.c b/runtime.c index 78d22a19..a649f5fc 100644 --- a/runtime.c +++ b/runtime.c @@ -166,9 +166,9 @@ void gc_init_heap(long heap_size) { Cyc_heap = malloc(sizeof(gc_heap_root)); - Cyc_heap->heap = gc_heap_create(1 * 1024 * 1024, 0, 0); - Cyc_heap->small_obj_heap = gc_heap_create(1 * 1024 * 1024, 0, 0); - Cyc_heap->medium_obj_heap = gc_heap_create(1 * 1024 * 1024, 0, 0); + Cyc_heap->heap = gc_heap_create(heap_size, 0, 0); + Cyc_heap->small_obj_heap = gc_heap_create(heap_size, 0, 0); + Cyc_heap->medium_obj_heap = gc_heap_create(heap_size, 0, 0); if (!ck_hs_init(&symbol_table, CK_HS_MODE_OBJECT | CK_HS_MODE_SPMC, From 398c55310146a490e4c638af1a38a5f68b8ba304 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 04:09:32 -0400 Subject: [PATCH 007/121] Added a note about memory growth --- TODO | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/TODO b/TODO index 7ea4c9ce..63bac2bf 100644 --- a/TODO +++ b/TODO @@ -4,6 +4,12 @@ Tier 1: - Performance - most likely need CPS optimization and closure elimination - pass larceny benchmarks (will require some bugfixes): +TODO: sboyer finishes in a reasonable amount of time now, but the collector's memory growth is + not being limited. need to test, but I think disabling the growth code after collection + is throwing off the collector's memory ratios and causing each major collection to first + 'bump' gc_grow_heap. anyway, need to figure this out + + benchmarks that do not finish due to missing features: - gcbench.scm - Needed to manually import (srfi 9) From 71d085091d0ba7b923618e244add7120085b0079 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 12 Apr 2016 21:47:41 -0400 Subject: [PATCH 008/121] Fully-generalize gc algorithms Updated code to support 3 types of heaps, based on size. Need to be able to use the old algorithms to inspect the active size of each heap. We need to collect if one of the sub-heaps is almost full, even if the others are mostly empty. --- gc.c | 85 ++++++++++++++++++++++++----------------- include/cyclone/types.h | 12 ++++-- runtime.c | 6 +-- 3 files changed, 60 insertions(+), 43 deletions(-) diff --git a/gc.c b/gc.c index 6294ac06..9eb41e49 100644 --- a/gc.c +++ b/gc.c @@ -59,10 +59,8 @@ static int mark_stack_i = 0; static pthread_mutex_t heap_lock; // Cached heap statistics -// Note this assumes a single overall heap "chain". Code would need to -// be modified to support multiple independent heaps -static int cached_heap_free_size = 0; -static int cached_heap_total_size = 0; +static int cached_heap_free_sizes[3] = {0, 0, 0}; +static int cached_heap_total_sizes[3] = {0, 0, 0}; // Data for each individual mutator thread ck_array_t Cyc_mutators, old_mutators; @@ -178,7 +176,7 @@ void gc_free_old_thread_data() pthread_mutex_unlock(&mutators_lock); } -gc_heap *gc_heap_create(size_t size, size_t max_size, size_t chunk_size) +gc_heap *gc_heap_create(int heap_type, size_t size, size_t max_size, size_t chunk_size) { gc_free_list *free, *next; gc_heap *h; @@ -187,8 +185,8 @@ gc_heap *gc_heap_create(size_t size, size_t max_size, size_t chunk_size) if (!h) return NULL; h->size = size; //h->free_size = size; - cached_heap_total_size += size; - cached_heap_free_size += size; + cached_heap_total_sizes[heap_type] += size; + cached_heap_free_sizes[heap_type] += size; h->chunk_size = chunk_size; h->max_size = max_size; h->data = (char *) gc_heap_align(sizeof(h->data) + (uintptr_t)&(h->data)); @@ -377,7 +375,7 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) return (char *)obj; } -int gc_grow_heap(gc_heap *h, size_t size, size_t chunk_size) +int gc_grow_heap(gc_heap *h, int heap_type, size_t size, size_t chunk_size) { size_t cur_size, new_size; gc_heap *h_last, *h_new; @@ -410,7 +408,7 @@ int gc_grow_heap(gc_heap *h, size_t size, size_t chunk_size) // allocate larger pages if size will not fit on the page //new_size = gc_heap_align(((cur_size > size) ? cur_size : size)); // Done with computing new page size - h_new = gc_heap_create(new_size, h_last->max_size, chunk_size); + h_new = gc_heap_create(heap_type, new_size, h_last->max_size, chunk_size); h_last->next = h_new; pthread_mutex_unlock(&heap_lock); #if GC_DEBUG_TRACE @@ -419,7 +417,7 @@ int gc_grow_heap(gc_heap *h, size_t size, size_t chunk_size) return (h_new != NULL); } -void *gc_try_alloc(gc_heap *h, size_t size, char *obj, gc_thread_data *thd) +void *gc_try_alloc(gc_heap *h, int heap_type, size_t size, char *obj, gc_thread_data *thd) { gc_free_list *f1, *f2, *f3; pthread_mutex_lock(&heap_lock); @@ -440,7 +438,7 @@ void *gc_try_alloc(gc_heap *h, size_t size, char *obj, gc_thread_data *thd) // Copy object into heap now to avoid any uninitialized memory issues gc_copy_obj(f2, obj, thd); //h->free_size -= gc_allocated_bytes(obj, NULL, NULL); - cached_heap_free_size -= gc_allocated_bytes(obj, NULL, NULL); + cached_heap_free_sizes[heap_type] -= gc_allocated_bytes(obj, NULL, NULL); pthread_mutex_unlock(&heap_lock); return f2; } @@ -454,6 +452,7 @@ void *gc_alloc(gc_heap_root *hrt, size_t size, char *obj, gc_thread_data *thd, i { void *result = NULL; gc_heap *h = NULL; + int heap_type; size_t max_freed = 0, sum_freed = 0, total_size; // TODO: check return value, if null (could not alloc) then // run a collection and check how much free space there is. if less @@ -462,20 +461,23 @@ void *gc_alloc(gc_heap_root *hrt, size_t size, char *obj, gc_thread_data *thd, i size = gc_heap_align(size); if (size <= 32){ h = hrt->small_obj_heap; + heap_type = HEAP_SM; } else if (size <= 64) { h = hrt->medium_obj_heap; + heap_type = HEAP_MED; } else { h = hrt->heap; + heap_type = HEAP_REST; } - result = gc_try_alloc(h, size, obj, thd); + result = gc_try_alloc(h, heap_type, size, obj, thd); if (!result) { // A vanilla mark&sweep collector would collect now, but unfortunately // we can't do that because we have to go through multiple stages, some // of which are asynchronous. So... no choice but to grow the heap. - gc_grow_heap(h, size, 0); + gc_grow_heap(h, heap_type, size, 0); *heap_grown = 1; - result = gc_try_alloc(h, size, obj, thd); + result = gc_try_alloc(h, heap_type, size, obj, thd); if (!result) { fprintf(stderr, "out of memory error allocating %zu bytes\n", size); exit(1); // could throw error, but OOM is a major issue, so... @@ -562,7 +564,7 @@ size_t gc_heap_total_size(gc_heap *h) // return total_size; //} -size_t gc_sweep(gc_heap *h, size_t *sum_freed_ptr) +size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr) { size_t freed, max_freed=0, heap_freed = 0, sum_freed=0, size; object p, end; @@ -674,7 +676,7 @@ size_t gc_sweep(gc_heap *h, size_t *sum_freed_ptr) } } //h->free_size += heap_freed; - cached_heap_free_size += heap_freed; + cached_heap_free_sizes[heap_type] += heap_freed; sum_freed += heap_freed; heap_freed = 0; } @@ -895,8 +897,12 @@ void gc_mut_cooperate(gc_thread_data *thd, int buf_len) // Threshold is intentially low because we have to go through an // entire handshake/trace/sweep cycle, ideally without growing heap. if (ck_pr_load_int(&gc_stage) == STAGE_RESTING && - (cached_heap_free_size < (cached_heap_total_size * - GC_COLLECTION_THRESHOLD))){ + ((cached_heap_free_sizes[HEAP_SM] < + cached_heap_total_sizes[HEAP_SM] * GC_COLLECTION_THRESHOLD) || + (cached_heap_free_sizes[HEAP_MED] < + cached_heap_total_sizes[HEAP_MED] * GC_COLLECTION_THRESHOLD) || + (cached_heap_free_sizes[HEAP_REST] < + cached_heap_total_sizes[HEAP_REST] * GC_COLLECTION_THRESHOLD))){ #if GC_DEBUG_TRACE fprintf(stdout, "Less than %f%% of the heap is free, initiating collector\n", 100.0 * GC_COLLECTION_THRESHOLD); #endif @@ -1180,7 +1186,7 @@ void debug_dump_globals(); // Main collector function void gc_collector() { - int old_clear, old_mark; + int old_clear, old_mark, heap_type; size_t freed = 0, max_freed = 0, total_size, total_free; #if GC_DEBUG_TRACE time_t gc_collector_start = time(NULL); @@ -1223,25 +1229,32 @@ fprintf(stderr, "DEBUG - after wait_handshake async\n"); ck_pr_cas_int(&gc_stage, STAGE_TRACING, STAGE_SWEEPING); // //sweep : - max_freed = gc_sweep(gc_get_heap()->heap, &freed); - max_freed = gc_sweep(gc_get_heap()->small_obj_heap, &freed); - max_freed = gc_sweep(gc_get_heap()->medium_obj_heap, &freed); - total_size = cached_heap_total_size; //gc_heap_total_size(gc_get_heap()); - total_free = cached_heap_free_size; //gc_heap_total_free_size(gc_get_heap()); + max_freed = gc_sweep(gc_get_heap()->heap, HEAP_REST, &freed); + max_freed = gc_sweep(gc_get_heap()->small_obj_heap, HEAP_SM, &freed); + max_freed = gc_sweep(gc_get_heap()->medium_obj_heap, HEAP_MED, &freed); -// TODO: disabling for now -////TODO: want stats on how much of each heap page is used -// while (total_free < (total_size * GC_FREE_THRESHOLD)) { -//#if GC_DEBUG_TRACE -// fprintf(stdout, "Less than %f%% of the heap is free, growing it\n", -// 100.0 * GC_FREE_THRESHOLD); -//#endif -// //TODO: how do we know which heap to grow??? -// gc_grow_heap(gc_get_heap(), 0, 0); -// total_size = cached_heap_total_size; -// total_free = cached_heap_free_size; -// } + for (heap_type = 0; heap_type < 2; heap_type++) { + while (cached_heap_free_sizes[heap_type] < (cached_heap_total_sizes[heap_type] * GC_FREE_THRESHOLD)) { #if GC_DEBUG_TRACE + fprintf(stdout, "Less than %f%% of the heap %d is free, growing it\n", + 100.0 * GC_FREE_THRESHOLD, heap_type); +#endif + if (heap_type == HEAP_SM) { + gc_grow_heap(gc_get_heap()->small_obj_heap, heap_type, 0, 0); + } else if (heap_type == HEAP_MED) { + gc_grow_heap(gc_get_heap()->medium_obj_heap, heap_type, 0, 0); + } else if (heap_type == HEAP_REST) { + gc_grow_heap(gc_get_heap()->heap, heap_type, 0, 0); + } + } + } +#if GC_DEBUG_TRACE + total_size = cached_heap_total_sizes[HEAP_SM] + + cached_heap_total_sizes[HEAP_MED] + + cached_heap_total_sizes[HEAP_REST]; + total_free = cached_heap_free_sizes[HEAP_SM] + + cached_heap_free_sizes[HEAP_MED] + + cached_heap_free_sizes[HEAP_REST]; fprintf(stderr, "sweep done, total_size = %zu, total_free = %zu, freed = %zu, max_freed = %zu, elapsed = %zu\n", total_size, total_free, freed, max_freed, time(NULL) - gc_collector_start); diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 4ee92caf..70c2461b 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -111,6 +111,10 @@ struct gc_thread_data_t { /* GC data structures */ +typedef enum { HEAP_SM = 0 + , HEAP_MED + , HEAP_REST } cached_heap_type; + typedef struct gc_free_list_t gc_free_list; struct gc_free_list_t { unsigned int size; @@ -400,11 +404,11 @@ void vpbuffer_free(void **buf); void gc_initialize(); void gc_add_mutator(gc_thread_data *thd); void gc_remove_mutator(gc_thread_data *thd); -gc_heap *gc_heap_create(size_t size, size_t max_size, size_t chunk_size); +gc_heap *gc_heap_create(int heap_type, size_t size, size_t max_size, size_t chunk_size); void gc_print_stats(gc_heap *h); -int gc_grow_heap(gc_heap *h, size_t size, size_t chunk_size); +int gc_grow_heap(gc_heap *h, int heap_type, size_t size, size_t chunk_size); char *gc_copy_obj(object hp, char *obj, gc_thread_data *thd); -void *gc_try_alloc(gc_heap *h, size_t size, char *obj, gc_thread_data *thd); +void *gc_try_alloc(gc_heap *h, int heap_type, size_t size, char *obj, gc_thread_data *thd); void *gc_alloc(gc_heap_root *h, size_t size, char *obj, gc_thread_data *thd, int *heap_grown); size_t gc_allocated_bytes(object obj, gc_free_list *q, gc_free_list *r); gc_heap *gc_heap_last(gc_heap *h); @@ -413,7 +417,7 @@ size_t gc_heap_total_size(gc_heap *h); //size_t gc_collect(gc_heap *h, size_t *sum_freed); //void gc_mark(gc_heap *h, object obj); void gc_mark_globals(void); -size_t gc_sweep(gc_heap *h, size_t *sum_freed_ptr); +size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr); void gc_thr_grow_move_buffer(gc_thread_data *d); void gc_thr_add_to_move_buffer(gc_thread_data *d, int *alloci, object obj); void gc_thread_data_init(gc_thread_data *thd, int mut_num, char *stack_base, long stack_size); diff --git a/runtime.c b/runtime.c index a649f5fc..b9929bc9 100644 --- a/runtime.c +++ b/runtime.c @@ -166,9 +166,9 @@ void gc_init_heap(long heap_size) { Cyc_heap = malloc(sizeof(gc_heap_root)); - Cyc_heap->heap = gc_heap_create(heap_size, 0, 0); - Cyc_heap->small_obj_heap = gc_heap_create(heap_size, 0, 0); - Cyc_heap->medium_obj_heap = gc_heap_create(heap_size, 0, 0); + Cyc_heap->heap = gc_heap_create(HEAP_REST, heap_size, 0, 0); + Cyc_heap->small_obj_heap = gc_heap_create(HEAP_SM, heap_size, 0, 0); + Cyc_heap->medium_obj_heap = gc_heap_create(HEAP_MED, heap_size, 0, 0); if (!ck_hs_init(&symbol_table, CK_HS_MODE_OBJECT | CK_HS_MODE_SPMC, From 157812741083f8c690719a4a9dd96057c7b6859b Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 12 Apr 2016 22:17:32 -0400 Subject: [PATCH 009/121] Grow heap more slowly --- gc.c | 42 ++++++++++++++++++++++-------------------- runtime.c | 8 ++++---- 2 files changed, 26 insertions(+), 24 deletions(-) diff --git a/gc.c b/gc.c index 9eb41e49..91fd712b 100644 --- a/gc.c +++ b/gc.c @@ -385,26 +385,28 @@ int gc_grow_heap(gc_heap *h, int heap_type, size_t size, size_t chunk_size) // but with boyer benchmarks there is more thrashing with this method, // so for now it is not used. If it is used again, the initial heaps will // need to start at a lower size (EG 1 MB). -// { -// size_t prev_size = 0; -// new_size = 0; -// h_last = h; -// while (h_last->next) { -// if (new_size < HEAP_SIZE){ -// new_size = prev_size + h_last->size; -// prev_size = h_last->size; -// } else { -// new_size = HEAP_SIZE; -// } -// h_last = h_last->next; -// } -// if (new_size == 0) -// new_size = h_last->size; -// //fprintf(stderr, "Growing heap new page size = %zu\n", new_size); -// } - h_last = gc_heap_last(h); - cur_size = h_last->size; - new_size = cur_size; //gc_heap_align(((cur_size > size) ? cur_size : size) * 2); + { + size_t prev_size = 0 * 1024 * 1024; + new_size = 0; + h_last = h; + while (h_last->next) { + if (new_size < HEAP_SIZE){ + new_size = prev_size + h_last->size; + prev_size = h_last->size; + } else { + new_size = HEAP_SIZE; + } + h_last = h_last->next; + } + if (new_size == 0) + new_size = prev_size + h_last->size; +//#if GC_DEBUG_TRACE + fprintf(stderr, "Growing heap %d new page size = %zu\n", heap_type, new_size); +//#endif + } +// h_last = gc_heap_last(h); +// cur_size = h_last->size; +// new_size = cur_size; //gc_heap_align(((cur_size > size) ? cur_size : size) * 2); // allocate larger pages if size will not fit on the page //new_size = gc_heap_align(((cur_size > size) ? cur_size : size)); // Done with computing new page size diff --git a/runtime.c b/runtime.c index b9929bc9..b42f3f91 100644 --- a/runtime.c +++ b/runtime.c @@ -164,11 +164,11 @@ static bool set_insert(ck_hs_t *hs, const void *value) void gc_init_heap(long heap_size) { - + size_t initial_heap_size = 1 * 1024 * 1024; Cyc_heap = malloc(sizeof(gc_heap_root)); - Cyc_heap->heap = gc_heap_create(HEAP_REST, heap_size, 0, 0); - Cyc_heap->small_obj_heap = gc_heap_create(HEAP_SM, heap_size, 0, 0); - Cyc_heap->medium_obj_heap = gc_heap_create(HEAP_MED, heap_size, 0, 0); + Cyc_heap->heap = gc_heap_create(HEAP_REST, initial_heap_size, 0, 0); + Cyc_heap->small_obj_heap = gc_heap_create(HEAP_SM, initial_heap_size, 0, 0); + Cyc_heap->medium_obj_heap = gc_heap_create(HEAP_MED, initial_heap_size, 0, 0); if (!ck_hs_init(&symbol_table, CK_HS_MODE_OBJECT | CK_HS_MODE_SPMC, From a05e3af2f36158d470b2d2e71d3136edf2fa5e86 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 12 Apr 2016 22:22:24 -0400 Subject: [PATCH 010/121] Fixup I/O --- examples/threading/many-writers.scm | 2 +- examples/threading/producer-consumer.scm | 15 ++++++++++----- examples/threading/thread-join.scm | 9 ++++++--- 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/examples/threading/many-writers.scm b/examples/threading/many-writers.scm index 4daeea2e..a6dd33e0 100644 --- a/examples/threading/many-writers.scm +++ b/examples/threading/many-writers.scm @@ -6,7 +6,7 @@ (srfi 18)) (define (write-forever val) - (write val) + (display val) (write-forever val)) (define (make-writer val) diff --git a/examples/threading/producer-consumer.scm b/examples/threading/producer-consumer.scm index 9c73af95..26240fd4 100644 --- a/examples/threading/producer-consumer.scm +++ b/examples/threading/producer-consumer.scm @@ -18,24 +18,29 @@ (cond ((> n 0) (mutex-lock! *lock*) - (write (cons 'a *queue*)) + (display (cons 'a *queue*)) + (newline) (set! *queue* (->heap (cons (->heap n) *queue*))) (mutex-unlock! *lock*) (loop (- n 1))) (else - (write "producer thread done"))))) + (display "producer thread done") + (newline))))) (define (consumer) (let loop () - ;(write (list (null? *queue*) *queue*)) + ;(display (list (null? *queue*) *queue*)) + ;(newline) (define sleep? #f) (mutex-lock! *lock*) (cond ((not (null? *queue*)) - (write (car *queue*)) + (display (car *queue*)) + (newline) (set! *queue* (cdr *queue*))) (else - (write "consumer sleeping") + (display "consumer sleeping") + (newline) (set! sleep? #t))) (mutex-unlock! *lock*) (if sleep? (thread-sleep! 1000)) diff --git a/examples/threading/thread-join.scm b/examples/threading/thread-join.scm index eaef96c1..2aaebbcc 100644 --- a/examples/threading/thread-join.scm +++ b/examples/threading/thread-join.scm @@ -11,13 +11,16 @@ (thread-start! (make-thread (lambda () - (write "started thread") + (display "started thread") + (newline) (thread-sleep! 3000) - (write "thread done") + (display "thread done") + (newline) (condition-variable-broadcast! cv)))) ;; Main thread - wait for thread to broadcast it is done (mutex-lock! m) (mutex-unlock! m cv) ;; Wait on cv -(write "main thread done") +(display "main thread done") +(newline) (thread-sleep! 500) From b0b02c0dc7d595b84641bc406cc261cac141a994 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 12 Apr 2016 22:37:06 -0400 Subject: [PATCH 011/121] Move fprintf to GC trace --- gc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gc.c b/gc.c index 91fd712b..6e42f8ce 100644 --- a/gc.c +++ b/gc.c @@ -400,9 +400,9 @@ int gc_grow_heap(gc_heap *h, int heap_type, size_t size, size_t chunk_size) } if (new_size == 0) new_size = prev_size + h_last->size; -//#if GC_DEBUG_TRACE +#if GC_DEBUG_TRACE fprintf(stderr, "Growing heap %d new page size = %zu\n", heap_type, new_size); -//#endif +#endif } // h_last = gc_heap_last(h); // cur_size = h_last->size; From 6d9b1436ec283c055f7bbb239f1c1b0ff11fc1f3 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 21:21:48 -0400 Subject: [PATCH 012/121] Tweak initial heap size --- gc.c | 2 +- runtime.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gc.c b/gc.c index 6e42f8ce..6f58fdd6 100644 --- a/gc.c +++ b/gc.c @@ -386,7 +386,7 @@ int gc_grow_heap(gc_heap *h, int heap_type, size_t size, size_t chunk_size) // so for now it is not used. If it is used again, the initial heaps will // need to start at a lower size (EG 1 MB). { - size_t prev_size = 0 * 1024 * 1024; + size_t prev_size = 2 * 1024 * 1024; new_size = 0; h_last = h; while (h_last->next) { diff --git a/runtime.c b/runtime.c index b42f3f91..80da55d5 100644 --- a/runtime.c +++ b/runtime.c @@ -164,7 +164,7 @@ static bool set_insert(ck_hs_t *hs, const void *value) void gc_init_heap(long heap_size) { - size_t initial_heap_size = 1 * 1024 * 1024; + size_t initial_heap_size = 3 * 1024 * 1024; Cyc_heap = malloc(sizeof(gc_heap_root)); Cyc_heap->heap = gc_heap_create(HEAP_REST, initial_heap_size, 0, 0); Cyc_heap->small_obj_heap = gc_heap_create(HEAP_SM, initial_heap_size, 0, 0); From 4cb4769e6c697907cb064dae53eb1f829269d6a7 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 23:04:20 -0400 Subject: [PATCH 013/121] Added additional benchmarks --- docs/Benchmarks.md | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/docs/Benchmarks.md b/docs/Benchmarks.md index 5f7355ec..17d4b366 100644 --- a/docs/Benchmarks.md +++ b/docs/Benchmarks.md @@ -7,6 +7,8 @@ The following [benchmarks from Larceny](http://www.larcenists.org/benchmarksGenu These benchmarks were recorded on a system with an Intel Core i5 CPU @ 2.20 GHz and indicate elapsed time in seconds. Longer bars indicate worse performance, although a bar is not displayed if the benchmark could not be completed in a reasonable amount of time. + + Benchmark | Cyclone | Chibi | Chicken --------- | ------- | ----- | ------- @@ -22,4 +24,16 @@ takl | 132 | - | 78.7 ntakl | 152 | 193 | 77.9 cpstak | 92 | - | 35 ctak | 7.9 | - | 8.6 - + | | | +ack | 288 | 161 | 116 +array1 | 167 | 130 | 29.4 +string | 1 | 8.478 | 1.584 +sum1 | 27 | 74 | 7.737 +cat | 43.669 | 132 | 55 +tail | 367 | 674 | - +wc | 202 | 1072 | 36.4 + | | | +nboyer | 67.783 | 73.516 | 39.377 +sboyer | 48.044 | 69.243 | 23.628 +gcbench | 143.478 | - | 16.75 +mperm | 328.741 | 260.358 | 57.5 From aec70d86c6c9f9e8b3029e1cd8280bb80e3bff5f Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 23:04:47 -0400 Subject: [PATCH 014/121] Initial file --- docs/images/benchmarks/gc.png | Bin 0 -> 10377 bytes docs/images/benchmarks/kvw.png | Bin 0 -> 11545 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/images/benchmarks/gc.png create mode 100644 docs/images/benchmarks/kvw.png diff --git a/docs/images/benchmarks/gc.png b/docs/images/benchmarks/gc.png new file mode 100644 index 0000000000000000000000000000000000000000..d498996e26c15f5eb4fa7c0f342bca7034125673 GIT binary patch literal 10377 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 Date: Wed, 13 Apr 2016 23:08:23 -0400 Subject: [PATCH 015/121] Move charts/grid together --- docs/Benchmarks.md | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/docs/Benchmarks.md b/docs/Benchmarks.md index 17d4b366..03f7c3fb 100644 --- a/docs/Benchmarks.md +++ b/docs/Benchmarks.md @@ -2,13 +2,9 @@ # Benchmarks -The following [benchmarks from Larceny](http://www.larcenists.org/benchmarksGenuineR7Linux.html) give an indication of how well Cyclone performs compared with other R7RS Schemes. +The following [benchmarks from Larceny](http://www.larcenists.org/benchmarksGenuineR7Linux.html) give an indication of how well Cyclone performs compared with other R7RS Schemes. These benchmarks were recorded on a system with an Intel Core i5 CPU @ 2.20 GHz and indicate elapsed time in seconds. Longer bars indicate worse performance, although a bar is not displayed if the benchmark could not be completed in a reasonable amount of time. -These benchmarks were recorded on a system with an Intel Core i5 CPU @ 2.20 GHz and indicate elapsed time in seconds. Longer bars indicate worse performance, although a bar is not displayed if the benchmark could not be completed in a reasonable amount of time. - - - - +# Benchmark | Cyclone | Chibi | Chicken --------- | ------- | ----- | ------- @@ -24,7 +20,11 @@ takl | 132 | - | 78.7 ntakl | 152 | 193 | 77.9 cpstak | 92 | - | 35 ctak | 7.9 | - | 8.6 - | | | + +# + +Benchmark | Cyclone | Chibi | Chicken +--------- | ------- | ----- | ------- ack | 288 | 161 | 116 array1 | 167 | 130 | 29.4 string | 1 | 8.478 | 1.584 @@ -32,7 +32,11 @@ sum1 | 27 | 74 | 7.737 cat | 43.669 | 132 | 55 tail | 367 | 674 | - wc | 202 | 1072 | 36.4 - | | | + +# + +Benchmark | Cyclone | Chibi | Chicken +--------- | ------- | ----- | ------- nboyer | 67.783 | 73.516 | 39.377 sboyer | 48.044 | 69.243 | 23.628 gcbench | 143.478 | - | 16.75 From 568b829ae1f93ccf97e14deefa2c1d883deb6648 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 23:09:55 -0400 Subject: [PATCH 016/121] WIP --- docs/Benchmarks.md | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/docs/Benchmarks.md b/docs/Benchmarks.md index 03f7c3fb..52131837 100644 --- a/docs/Benchmarks.md +++ b/docs/Benchmarks.md @@ -4,7 +4,9 @@ The following [benchmarks from Larceny](http://www.larcenists.org/benchmarksGenuineR7Linux.html) give an indication of how well Cyclone performs compared with other R7RS Schemes. These benchmarks were recorded on a system with an Intel Core i5 CPU @ 2.20 GHz and indicate elapsed time in seconds. Longer bars indicate worse performance, although a bar is not displayed if the benchmark could not be completed in a reasonable amount of time. -# +# Gabriel Benchmarks + + Benchmark | Cyclone | Chibi | Chicken --------- | ------- | ----- | ------- @@ -21,7 +23,9 @@ ntakl | 152 | 193 | 77.9 cpstak | 92 | - | 35 ctak | 7.9 | - | 8.6 -# +# Kernighan and Van Wyk Benchmarks + + Benchmark | Cyclone | Chibi | Chicken --------- | ------- | ----- | ------- @@ -33,7 +37,9 @@ cat | 43.669 | 132 | 55 tail | 367 | 674 | - wc | 202 | 1072 | 36.4 -# +# Garbage Collection Benchmarks + + Benchmark | Cyclone | Chibi | Chicken --------- | ------- | ----- | ------- From d84431e1755923e1fe119174e6b69e40b6e252c3 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 23:10:55 -0400 Subject: [PATCH 017/121] WIP --- docs/Benchmarks.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/Benchmarks.md b/docs/Benchmarks.md index 52131837..e4a87d4c 100644 --- a/docs/Benchmarks.md +++ b/docs/Benchmarks.md @@ -4,7 +4,7 @@ The following [benchmarks from Larceny](http://www.larcenists.org/benchmarksGenuineR7Linux.html) give an indication of how well Cyclone performs compared with other R7RS Schemes. These benchmarks were recorded on a system with an Intel Core i5 CPU @ 2.20 GHz and indicate elapsed time in seconds. Longer bars indicate worse performance, although a bar is not displayed if the benchmark could not be completed in a reasonable amount of time. -# Gabriel Benchmarks +## Gabriel Benchmarks @@ -23,7 +23,7 @@ ntakl | 152 | 193 | 77.9 cpstak | 92 | - | 35 ctak | 7.9 | - | 8.6 -# Kernighan and Van Wyk Benchmarks +## Kernighan and Van Wyk Benchmarks @@ -37,7 +37,7 @@ cat | 43.669 | 132 | 55 tail | 367 | 674 | - wc | 202 | 1072 | 36.4 -# Garbage Collection Benchmarks +## Garbage Collection Benchmarks From 75cb39b3ea50db21ad0e9a52123ebaef4a1e3964 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 23:44:47 -0400 Subject: [PATCH 018/121] Added library TODO section --- TODO | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/TODO b/TODO index 63bac2bf..3d500eea 100644 --- a/TODO +++ b/TODO @@ -1,6 +1,27 @@ Initiatives: Tier 1: +- Library support + Library syntax (5.6): + supported: + - export + - import + - begin + - include + - cond-expand?????? + not supported: + - rename + - export-all (but this is not standard!) + + Import sets (importing libraries, section 5.2): + supported: + - library name + not supported (not these are defined recursively, and can be nested): + - only + - except + - rename + - prefix + - Performance - most likely need CPS optimization and closure elimination - pass larceny benchmarks (will require some bugfixes): From e3abb3f74499f16d4860425974ebe0ab439f6369 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 23:58:05 -0400 Subject: [PATCH 019/121] WIP --- TODO | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/TODO b/TODO index 3d500eea..6e73d549 100644 --- a/TODO +++ b/TODO @@ -1,5 +1,9 @@ Initiatives: +add rename support to library syntax, start by looking at lib:exports. +will need a way of compiling this into the library, and for progs/libs importing the library (although +those may just be able to simply each rename to refer to the renamed identifier) + Tier 1: - Library support Library syntax (5.6): From 89d2e6afa0f9db9c70bc989c80844b1e16d60f2d Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 14 Apr 2016 01:13:16 -0400 Subject: [PATCH 020/121] -ci functions are implemented. --- docs/Scheme-Language-Compliance.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/Scheme-Language-Compliance.md b/docs/Scheme-Language-Compliance.md index e166043b..d8ce6f9c 100644 --- a/docs/Scheme-Language-Compliance.md +++ b/docs/Scheme-Language-Compliance.md @@ -36,8 +36,8 @@ Section | Status | Comments 6.3 Booleans | Yes | `#true` and `#false` are not recognized by parser. 6.4 Pairs and lists | Yes | `member` functions are predicates, `member` and `assoc` do not accept `compare` argument. 6.5 Symbols | Yes | -6.6 Characters | Partial | No unicode support, `char-ci` predicates are not implemented. -6.7 Strings | Partial | No unicode support, `string-ci` functions are not implemented. +6.6 Characters | Partial | No unicode support. +6.7 Strings | Partial | No unicode support. 6.8 Vectors | Yes | 6.9 Bytevectors | Yes | 6.10 Control features | Yes | `dynamic-wind` is limited, and does not work across calls to continuations. From a04616a88a678339846b1d44eaa96c88d8c9c35d Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 14 Apr 2016 02:30:52 -0400 Subject: [PATCH 021/121] Added a note about the FFI --- TODO | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/TODO b/TODO index 6e73d549..04542fb4 100644 --- a/TODO +++ b/TODO @@ -4,7 +4,7 @@ add rename support to library syntax, start by looking at lib:exports. will need a way of compiling this into the library, and for progs/libs importing the library (although those may just be able to simply each rename to refer to the renamed identifier) -Tier 1: +Tier 0: - Library support Library syntax (5.6): supported: @@ -25,7 +25,13 @@ Tier 1: - except - rename - prefix +- FFI + - want to create an example program (lib?) that does something interesting, like make a cURL request + for that, will need to be able to include the appropriate C header(s), and link to the appropriate C libraries + + +Tier 1: - Performance - most likely need CPS optimization and closure elimination - pass larceny benchmarks (will require some bugfixes): From b29eba231447566f974c1f4782a578997fd4c445 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 14 Apr 2016 04:07:45 -0400 Subject: [PATCH 022/121] WIP --- TODO | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TODO b/TODO index 04542fb4..3edd2142 100644 --- a/TODO +++ b/TODO @@ -28,7 +28,7 @@ Tier 0: - FFI - want to create an example program (lib?) that does something interesting, like make a cURL request for that, will need to be able to include the appropriate C header(s), and link to the appropriate C libraries - +- game of life demo - need to fix this up (one way or the other) so it runs Tier 1: From 1ba57525826dd1b9968df0750835c11e70ec9086 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 21:35:09 -0400 Subject: [PATCH 023/121] Allow this program to compile --- examples/game-of-life/life.scm | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/examples/game-of-life/life.scm b/examples/game-of-life/life.scm index 1bd1704d..93b8171b 100644 --- a/examples/game-of-life/life.scm +++ b/examples/game-of-life/life.scm @@ -11,16 +11,25 @@ ;;; > huski life.scm ;;; (import (scheme base) - (only (example life) life) - (rename (prefix (example grid) grid-) - (grid-make make-grid))) + (example life) + (example grid)) +;; TODO: +; (only (example life) life) +; (rename (prefix (example grid) grid-) +; (grid-make make-grid))) ;; Initialize a grid with a glider. -(define grid (make-grid 24 24)) -(grid-put! grid 1 1 #t) -(grid-put! grid 2 2 #t) -(grid-put! grid 3 0 #t) -(grid-put! grid 3 1 #t) -(grid-put! grid 3 2 #t) +;(define grid (make-grid 24 24)) +;(grid-put! grid 1 1 #t) +;(grid-put! grid 2 2 #t) +;(grid-put! grid 3 0 #t) +;(grid-put! grid 3 1 #t) +;(grid-put! grid 3 2 #t) +(define grid (make 24 24)) +(put! grid 1 1 #t) +(put! grid 2 2 #t) +(put! grid 3 0 #t) +(put! grid 3 1 #t) +(put! grid 3 2 #t) ;; Run for x iterations. -(life grid 10) ;80 +(life grid 80) From dff146e1183f4e78110fe77c31152c81167930ff Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 21:53:06 -0400 Subject: [PATCH 024/121] Added section presenting example programs --- README.md | 10 ++++++++++ examples/tail-call-optimization.scm | 14 +++++++------- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 8a4f3e8a..e682b305 100644 --- a/README.md +++ b/README.md @@ -53,6 +53,16 @@ Documentation - Finally, if you need another resource to start learning the Scheme language you may want to try a classic textbook such as [Structure and Interpretation of Computer Programs](https://mitpress.mit.edu/sicp/full-text/book/book.html). +Example Programs +---------------- + +Cyclone provides several example programs, including: + +- [Game of Life](examples/game-of-life) - The game of life example program and libraries from R7RS. +- [Threading](examples/threading) - Various examples of multi-threaded programs. +- [Tail Call Optimization](tail-call-optimization.scm) - A simple example of Scheme tail call optimization; this program runs forever, calling into two mutually recursive functions. +- Finally, the largest program is the compiler itself. Most of the code is compiled into a series of libraries which are used by [`cyclone.scm`](cyclone.scm) and [`icyc.scm`](icyc.scm) to create executables for Cyclone's compiler and interpreter. + License ------- Copyright (C) 2014 [Justin Ethier](http://github.com/justinethier). diff --git a/examples/tail-call-optimization.scm b/examples/tail-call-optimization.scm index 52319355..b024f569 100644 --- a/examples/tail-call-optimization.scm +++ b/examples/tail-call-optimization.scm @@ -1,11 +1,11 @@ ;; This should run forever using a constant amount of memory ;; and max CPU: -;; Original program: -;; (define (foo) (bar)) -;; (define (bar) (foo)) -;; (foo) +(define (foo) (bar)) +(define (bar) (foo)) +(foo) -(letrec ((foo (lambda () (bar))) - (bar (lambda () (foo)))) - (foo)) +;; Another way to write it: +;; (letrec ((foo (lambda () (bar))) +;; (bar (lambda () (foo)))) +;; (foo)) From b5e7726eb464c4822402c4e4d60bcba549dc4fdf Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 22:00:49 -0400 Subject: [PATCH 025/121] Formatting, fixed broken link --- README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index e682b305..644dafa9 100644 --- a/README.md +++ b/README.md @@ -59,8 +59,11 @@ Example Programs Cyclone provides several example programs, including: - [Game of Life](examples/game-of-life) - The game of life example program and libraries from R7RS. + - [Threading](examples/threading) - Various examples of multi-threaded programs. -- [Tail Call Optimization](tail-call-optimization.scm) - A simple example of Scheme tail call optimization; this program runs forever, calling into two mutually recursive functions. + +- [Tail Call Optimization](examples/tail-call-optimization.scm) - A simple example of Scheme tail call optimization; this program runs forever, calling into two mutually recursive functions. + - Finally, the largest program is the compiler itself. Most of the code is compiled into a series of libraries which are used by [`cyclone.scm`](cyclone.scm) and [`icyc.scm`](icyc.scm) to create executables for Cyclone's compiler and interpreter. License From 98bd7e479ca0b5d79d495617be0690ba9c2715db Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 22:07:30 -0400 Subject: [PATCH 026/121] Rev --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 644dafa9..fe6b9db2 100644 --- a/README.md +++ b/README.md @@ -64,7 +64,7 @@ Cyclone provides several example programs, including: - [Tail Call Optimization](examples/tail-call-optimization.scm) - A simple example of Scheme tail call optimization; this program runs forever, calling into two mutually recursive functions. -- Finally, the largest program is the compiler itself. Most of the code is compiled into a series of libraries which are used by [`cyclone.scm`](cyclone.scm) and [`icyc.scm`](icyc.scm) to create executables for Cyclone's compiler and interpreter. +- Finally, the largest program is the compiler itself. Most of the code is contained in a series of libraries which are used by [`cyclone.scm`](cyclone.scm) and [`icyc.scm`](icyc.scm) to create executables for Cyclone's compiler and interpreter. License ------- From 78a7f801fc7ae19d8f4ed87c3f1628bd87033c2d Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 13 Apr 2016 22:40:26 -0400 Subject: [PATCH 027/121] Fixed up this example --- TODO | 1 - 1 file changed, 1 deletion(-) diff --git a/TODO b/TODO index 3edd2142..846ab9f2 100644 --- a/TODO +++ b/TODO @@ -28,7 +28,6 @@ Tier 0: - FFI - want to create an example program (lib?) that does something interesting, like make a cURL request for that, will need to be able to include the appropriate C header(s), and link to the appropriate C libraries -- game of life demo - need to fix this up (one way or the other) so it runs Tier 1: From a6e926280903522624f462dbb98811c609d9cef2 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 14 Apr 2016 22:23:16 -0400 Subject: [PATCH 028/121] Initial file --- examples/Makefile | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 examples/Makefile diff --git a/examples/Makefile b/examples/Makefile new file mode 100644 index 00000000..2d3b5827 --- /dev/null +++ b/examples/Makefile @@ -0,0 +1,44 @@ +# Build all example programs +TARGETS = \ + tail-call-optimization \ + begin-splicing \ + fac \ + long-running-process \ + game-of-life/life \ + hello-library/hello \ + threading/cv-broadcast \ + threading/many-writers \ + threading/producer-consumer \ + threading/thread-join \ + +SRCFILES = $(addsuffix .scm, $(TARGETS)) + +all: $(TARGETS) + +tail-call-optimization : tail-call-optimization.scm + cyclone $^ +begin-splicing : begin-splicing.scm + cyclone $^ +fac : fac.scm + cyclone $^ +long-running-process : long-running-process.scm + cyclone $^ +threading/cv-broadcast : threading/cv-broadcast.scm + cyclone $^ +threading/many-writers : threading/many-writers.scm + cyclone $^ +threading/producer-consumer: threading/producer-consumer.scm + cyclone $^ +threading/thread-join : threading/thread-join.scm + cyclone $^ +game-of-life/life: + cd game-of-life ; make +hello-library/hello: + cd hello-library ; make + +.PHONY: clean +clean: + rm -rf *.o *.c *.meta $(TARGETS) + cd threading ; rm -rf *.o *.c *.meta + cd game-of-life ; make clean + cd hello-library ; make clean From faa9638300c1969c1d824bb55d516daf385da84f Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 14 Apr 2016 22:24:35 -0400 Subject: [PATCH 029/121] Added 'examples' directive --- Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Makefile b/Makefile index 0cf7ce8d..2002d7ff 100644 --- a/Makefile +++ b/Makefile @@ -110,6 +110,9 @@ bootstrap: icyc cp cyclone.c $(BOOTSTRAP_DIR)/cyclone.c cp Makefile.config $(BOOTSTRAP_DIR)/Makefile.config +.PHONY: examples +examples: + cd examples ; make .PHONY: test test: $(TESTFILES) $(CYCLONE) @@ -123,6 +126,7 @@ tags: clean: rm -rf a.out *.o *.so *.a *.out tags cyclone icyc scheme/*.o scheme/*.c scheme/*.meta srfi/*.c srfi/*.meta srfi/*.o scheme/cyclone/*.o scheme/cyclone/*.c scheme/cyclone/*.meta cyclone.c dispatch.c icyc.c generate-c.c generate-c $(foreach f,$(TESTSCM), rm -rf $(f) $(f).c tests/$(f).c;) + cd examples ; make clean install-includes: $(MKDIR) $(DESTDIR)$(INCDIR) From 1a6469fedf84ad546d2a0471585c00817dfab9cd Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 14 Apr 2016 22:43:11 -0400 Subject: [PATCH 030/121] Tweak compilation order --- examples/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/Makefile b/examples/Makefile index 2d3b5827..d17a8326 100644 --- a/examples/Makefile +++ b/examples/Makefile @@ -4,12 +4,12 @@ TARGETS = \ begin-splicing \ fac \ long-running-process \ - game-of-life/life \ - hello-library/hello \ threading/cv-broadcast \ threading/many-writers \ threading/producer-consumer \ threading/thread-join \ + game-of-life/life \ + hello-library/hello \ SRCFILES = $(addsuffix .scm, $(TARGETS)) From 7d9aae56d80638c24325c6a3f5cd508f822faa02 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 14 Apr 2016 23:25:53 -0400 Subject: [PATCH 031/121] Added lib:rename-exports, made lib:exports handle renames --- scheme/cyclone/libraries.sld | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/scheme/cyclone/libraries.sld b/scheme/cyclone/libraries.sld index 795af26c..a642026d 100644 --- a/scheme/cyclone/libraries.sld +++ b/scheme/cyclone/libraries.sld @@ -26,6 +26,7 @@ lib:name->symbol lib:result lib:exports + lib:rename-exports lib:imports lib:body lib:includes @@ -80,10 +81,23 @@ ;; TODO: most of these below assume 0 or 1 instances of the directive. ;; may need to replace some of these later with filter operations to ;; support more than 1 instance. -(define (lib:exports ast) +(define (lib:raw-exports ast) (lib:result (let ((code (assoc 'export (cddr ast)))) (if code (cdr code) #f)))) +(define (lib:rename-exports ast) + (filter + (lambda (ex) + (tagged-list? 'rename ex)) + (lib:raw-exports ast))) +(define (lib:exports ast) + (map + (lambda (ex) + ;; Replace any renamed exports + (if (tagged-list? 'rename ex) + (caddr ex) + ex)) + (lib:raw-exports ast))) (define (lib:imports ast) (lib:result (let ((code (assoc 'import (cddr ast)))) From dbb4ab83a4a3178e9e9ce0b5e3679eb38d3e7854 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Fri, 15 Apr 2016 00:00:49 -0400 Subject: [PATCH 032/121] WIP - renaming of library exports --- cyclone.scm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cyclone.scm b/cyclone.scm index 93db7793..a75fb757 100644 --- a/cyclone.scm +++ b/cyclone.scm @@ -68,6 +68,15 @@ (lib:exports (car input-program)))) (set! imports (lib:imports (car input-program))) (set! input-program (lib:body (car input-program))) + ; Add any renamed exports to the begin section + ;(let ((renames (lib:rename-exports (car input-program)))) + ; (set! input-program + ; (append + ; (map + ; (lambda (r) + ; `(define ,(caddr r) ,(cadr r))) + ; renames) + ; input-program))) ;; Prepend any included files into the begin section (if (not (null? includes)) (for-each From 89ff8efb70b25c9b0cc8b0d4456d44584eba4bfb Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Fri, 15 Apr 2016 00:01:08 -0400 Subject: [PATCH 033/121] WIP --- TODO | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/TODO b/TODO index 846ab9f2..85d70b93 100644 --- a/TODO +++ b/TODO @@ -12,10 +12,11 @@ Tier 0: - import - begin - include - - cond-expand?????? not supported: - rename - - export-all (but this is not standard!) + - cond-expand + - include-ci + - export-all (but this is not standard, so ok!) Import sets (importing libraries, section 5.2): supported: From 16dd14345a16b7b4c3c101c23e040c44232dcea3 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Fri, 15 Apr 2016 00:16:04 -0400 Subject: [PATCH 034/121] Handling of library renames --- cyclone.scm | 18 +++++++++--------- examples/hello-library/libs/lib1.sld | 4 +++- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/cyclone.scm b/cyclone.scm index a75fb757..718060b6 100644 --- a/cyclone.scm +++ b/cyclone.scm @@ -68,15 +68,15 @@ (lib:exports (car input-program)))) (set! imports (lib:imports (car input-program))) (set! input-program (lib:body (car input-program))) - ; Add any renamed exports to the begin section - ;(let ((renames (lib:rename-exports (car input-program)))) - ; (set! input-program - ; (append - ; (map - ; (lambda (r) - ; `(define ,(caddr r) ,(cadr r))) - ; renames) - ; input-program))) + ;; Add any renamed exports to the begin section + (let ((renames (lib:rename-exports (car input-program)))) + (set! input-program + (append + (map + (lambda (r) + `(define ,(caddr r) ,(cadr r))) + renames) + input-program))) ;; Prepend any included files into the begin section (if (not (null? includes)) (for-each diff --git a/examples/hello-library/libs/lib1.sld b/examples/hello-library/libs/lib1.sld index 632e8d26..6174ce8e 100644 --- a/examples/hello-library/libs/lib1.sld +++ b/examples/hello-library/libs/lib1.sld @@ -5,7 +5,9 @@ ;;; A sample library ;;; (define-library (libs lib1) - (export lib1-hello lib1-test) + (export + lib1-hello + (rename lib1-test lib1-test-renamed)) (include "lib1.scm") (import (scheme base) (scheme write) From 59ce8821383d1297be5e21d16e9270c29ce98c10 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Fri, 15 Apr 2016 00:18:12 -0400 Subject: [PATCH 035/121] WIP --- examples/hello-library/hello.scm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/examples/hello-library/hello.scm b/examples/hello-library/hello.scm index 9c060823..2397f4ae 100644 --- a/examples/hello-library/hello.scm +++ b/examples/hello-library/hello.scm @@ -7,6 +7,13 @@ ) (write "hello") -;(test-lib1-hello) +(newline) + +(lib1-test-renamed) +(newline) + (write (lib1-hello)) +(newline) + (write "world") +(newline) From 31b46ecd65f60cd28d07fbd5b3a7fb73400934ce Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Fri, 15 Apr 2016 02:06:26 -0400 Subject: [PATCH 036/121] WIP --- cyclone.scm | 52 +++++++++++++++++++++++++++------------------------- 1 file changed, 27 insertions(+), 25 deletions(-) diff --git a/cyclone.scm b/cyclone.scm index 718060b6..62257d65 100644 --- a/cyclone.scm +++ b/cyclone.scm @@ -20,23 +20,23 @@ (scheme cyclone macros) (scheme cyclone libraries)) -(cond-expand - (chicken - (define (Cyc-installation-dir . opt) - (if (equal? '(inc) opt) - "/home/justin/Documents/cyclone/include" - ;; Ignore opt and always assume current dir for chicken, since it is just dev - "/home/justin/Documents/cyclone")) - (require-extension extras) ;; pretty-print - (require-extension chicken-syntax) ;; when - (require-extension srfi-1) ;; every - (load (string-append (Cyc-installation-dir) "/scheme/cyclone/common.so")) - (load (string-append (Cyc-installation-dir) "/scheme/parser.so")) - (load (string-append (Cyc-installation-dir) "/scheme/cyclone/util.so")) - (load (string-append (Cyc-installation-dir) "/scheme/cyclone/libraries.so")) - (load (string-append (Cyc-installation-dir) "/scheme/cyclone/transforms.so")) - (load (string-append (Cyc-installation-dir) "/scheme/cyclone/cgen.so"))) - (else #f)) +;;(cond-expand +;; (chicken +;; (define (Cyc-installation-dir . opt) +;; (if (equal? '(inc) opt) +;; "/home/justin/Documents/cyclone/include" +;; ;; Ignore opt and always assume current dir for chicken, since it is just dev +;; "/home/justin/Documents/cyclone")) +;; (require-extension extras) ;; pretty-print +;; (require-extension chicken-syntax) ;; when +;; (require-extension srfi-1) ;; every +;; (load (string-append (Cyc-installation-dir) "/scheme/cyclone/common.so")) +;; (load (string-append (Cyc-installation-dir) "/scheme/parser.so")) +;; (load (string-append (Cyc-installation-dir) "/scheme/cyclone/util.so")) +;; (load (string-append (Cyc-installation-dir) "/scheme/cyclone/libraries.so")) +;; (load (string-append (Cyc-installation-dir) "/scheme/cyclone/transforms.so")) +;; (load (string-append (Cyc-installation-dir) "/scheme/cyclone/cgen.so"))) +;; (else #f)) ;; Code emission. @@ -51,6 +51,7 @@ (define imported-vars '()) (define lib-name '()) (define lib-exports '()) + (define lib-renamed-exports '()) (emit *c-file-header-comment*) ; Guarantee placement at top of C file @@ -66,17 +67,18 @@ (cons (lib:name->symbol lib-name) (lib:exports (car input-program)))) + (set! lib-renamed-exports + (lib:rename-exports (car input-program))) (set! imports (lib:imports (car input-program))) (set! input-program (lib:body (car input-program))) ;; Add any renamed exports to the begin section - (let ((renames (lib:rename-exports (car input-program)))) - (set! input-program - (append - (map - (lambda (r) - `(define ,(caddr r) ,(cadr r))) - renames) - input-program))) + (set! input-program + (append + (map + (lambda (r) + `(define ,(caddr r) ,(cadr r))) + lib-renamed-exports) + input-program)) ;; Prepend any included files into the begin section (if (not (null? includes)) (for-each From 67948b039d4a4304d49543375a20e827abeee2a2 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Fri, 15 Apr 2016 02:09:12 -0400 Subject: [PATCH 037/121] Fix runtime error --- examples/hello-library/hello.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/hello-library/hello.scm b/examples/hello-library/hello.scm index 2397f4ae..b5ef2ad5 100644 --- a/examples/hello-library/hello.scm +++ b/examples/hello-library/hello.scm @@ -9,7 +9,7 @@ (write "hello") (newline) -(lib1-test-renamed) +(write lib1-test-renamed) (newline) (write (lib1-hello)) From 68d07bc9887af705b3f7db0769e9c40c73f26270 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Fri, 15 Apr 2016 02:51:06 -0400 Subject: [PATCH 038/121] Mark tests that timed out --- docs/Benchmarks.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/Benchmarks.md b/docs/Benchmarks.md index e4a87d4c..a8e70ddd 100644 --- a/docs/Benchmarks.md +++ b/docs/Benchmarks.md @@ -15,13 +15,13 @@ deriv | 39 | 212 | 13 destruc | 136 | 197 | 20 diviter | 51 | 122.9 | 8 divrec | 70 | 108 | 29 -puzzle | 184 | - | 32 +puzzle | 184 | Timeout | 32 triangl | 95 | 201 | 26.6 tak | 70 | 105 | 28.9 -takl | 132 | - | 78.7 +takl | 132 | Timeout | 78.7 ntakl | 152 | 193 | 77.9 -cpstak | 92 | - | 35 -ctak | 7.9 | - | 8.6 +cpstak | 92 | Timeout | 35 +ctak | 7.9 | Timeout | 8.6 ## Kernighan and Van Wyk Benchmarks @@ -45,5 +45,5 @@ Benchmark | Cyclone | Chibi | Chicken --------- | ------- | ----- | ------- nboyer | 67.783 | 73.516 | 39.377 sboyer | 48.044 | 69.243 | 23.628 -gcbench | 143.478 | - | 16.75 +gcbench | 143.478 | Timeout | 16.75 mperm | 328.741 | 260.358 | 57.5 From b32e4160bead213fcdc62d75dbd5e9033ef9f505 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Sat, 16 Apr 2016 00:12:58 -0400 Subject: [PATCH 039/121] Noted library rename is supported, focus on FFI next --- TODO | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/TODO b/TODO index 85d70b93..4ca96498 100644 --- a/TODO +++ b/TODO @@ -5,6 +5,9 @@ will need a way of compiling this into the library, and for progs/libs importing those may just be able to simply each rename to refer to the renamed identifier) Tier 0: +- FFI + - want to create an example program (lib?) that does something interesting, like make a cURL request + for that, will need to be able to include the appropriate C header(s), and link to the appropriate C libraries - Library support Library syntax (5.6): supported: @@ -12,8 +15,8 @@ Tier 0: - import - begin - include - not supported: - rename + not supported: - cond-expand - include-ci - export-all (but this is not standard, so ok!) @@ -26,9 +29,6 @@ Tier 0: - except - rename - prefix -- FFI - - want to create an example program (lib?) that does something interesting, like make a cURL request - for that, will need to be able to include the appropriate C header(s), and link to the appropriate C libraries Tier 1: From 6d81868b13930e826a2724906ce86a7bdefa5e9e Mon Sep 17 00:00:00 2001 From: justin Date: Sun, 17 Apr 2016 22:10:42 -0400 Subject: [PATCH 040/121] Grammar fix, mention int value types --- docs/User-Manual.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/User-Manual.md b/docs/User-Manual.md index bb9c5f7c..c405db3b 100644 --- a/docs/User-Manual.md +++ b/docs/User-Manual.md @@ -122,7 +122,7 @@ Cyclone implements the Scheme language as documented by the [R7RS Sch A [R7RS Compliance Chart](Scheme-Language-Compliance.md) lists differences between the specification and Cyclone's implementation. -[API Documentation](API.md) is available for the libraries provide by Cyclone. +[API Documentation](API.md) is available for the libraries provided by Cyclone. # Multithreaded Programming @@ -140,7 +140,7 @@ Due to how Cyclone's garbage collector is implemented, objects are relocated in Finally, note there are some objects that are not relocated so the above does not apply: -- Characters are stored using value types and do not need to be garbage collected. +- Characters and integers are stored using value types and do not need to be garbage collected. - Symbols are stored in a global table rather than the stack/heap. - Mutexes are always allocated on the heap since by definition they are used by more than one thread. From c11a494c1818fa0dd98d522de09fe61f021a16b4 Mon Sep 17 00:00:00 2001 From: justin Date: Sun, 17 Apr 2016 22:23:00 -0400 Subject: [PATCH 041/121] Moved section 5.6 support to an issue --- TODO | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/TODO b/TODO index 4ca96498..e49a9fda 100644 --- a/TODO +++ b/TODO @@ -9,17 +9,6 @@ Tier 0: - want to create an example program (lib?) that does something interesting, like make a cURL request for that, will need to be able to include the appropriate C header(s), and link to the appropriate C libraries - Library support - Library syntax (5.6): - supported: - - export - - import - - begin - - include - - rename - not supported: - - cond-expand - - include-ci - - export-all (but this is not standard, so ok!) Import sets (importing libraries, section 5.2): supported: From f2f70e8ff85e64476c0842e88f468ff901ac2f95 Mon Sep 17 00:00:00 2001 From: justin Date: Sun, 17 Apr 2016 22:30:01 -0400 Subject: [PATCH 042/121] Removed obsolete file --- debug/compilation/boyer/nboyer-cps.scm | 1332 -- debug/compilation/boyer/nboyer.c | 16770 ---------------------- debug/compilation/boyer/nboyer.scm | 836 -- debug/compilation/boyer/sboyer-cps.scm | 1357 -- debug/compilation/boyer/sboyer.c | 17115 ----------------------- debug/compilation/boyer/sboyer.scm | 849 -- 6 files changed, 38259 deletions(-) delete mode 100644 debug/compilation/boyer/nboyer-cps.scm delete mode 100644 debug/compilation/boyer/nboyer.c delete mode 100644 debug/compilation/boyer/nboyer.scm delete mode 100644 debug/compilation/boyer/sboyer-cps.scm delete mode 100644 debug/compilation/boyer/sboyer.c delete mode 100644 debug/compilation/boyer/sboyer.scm diff --git a/debug/compilation/boyer/nboyer-cps.scm b/debug/compilation/boyer/nboyer-cps.scm deleted file mode 100644 index f5f5fd8a..00000000 --- a/debug/compilation/boyer/nboyer-cps.scm +++ /dev/null @@ -1,1332 +0,0 @@ -;; nboyer cps conversion -((define main - (lambda (k$633) - (read (lambda (r$634) - ((lambda (count$254) - (read (lambda (r$635) - ((lambda (input$255) - (read (lambda (r$636) - ((lambda (output$256) - ((lambda (r$637) - ((lambda (s2$257) - ((lambda (r$638) - ((lambda (s1$258) - ((lambda (name$259) - ((lambda () - ((lambda (r$639) - ((lambda (r$640) - ((lambda (r$641) - (run-r7rs-benchmark - k$633 - r$639 - count$254 - r$640 - r$641)) - (lambda (k$642 rewrites$260) - ((lambda (r$643) - (if r$643 - (k$642 (= rewrites$260 output$256)) - (k$642 #f))) - (number? rewrites$260))))) - (lambda (k$644) - (setup-boyer - (lambda (r$645) - (hide (lambda (r$646) - (test-boyer k$644 alist term r$646)) - count$254 - input$255)))))) - (string-append name$259 ":" s1$258 ":" s2$257))))) - "nboyer")) - r$638)) - (number->string input$255))) - r$637)) - (number->string count$254))) - r$636)))) - r$635)))) - r$634))))) - (define alist #f) - (define term #f) - (define setup-boyer (lambda (k$626 . args$253) (k$626 #t))) - (define test-boyer (lambda (k$623 . args$252) (k$623 #t))) - (define hide - (lambda (k$609 r$248 x$247) - ((lambda (r$610) - ((lambda (r$611) (call-with-values k$609 r$610 r$611)) - (lambda (k$612 v$250 i$249) - ((lambda (r$613) (r$613 k$612 x$247)) (vector-ref v$250 i$249))))) - (lambda (k$614) - ((lambda (r$619) - (vector - (lambda (r$615) - ((lambda (k$617) - ((lambda (r$618) (if r$618 (k$617 0) (k$617 1))) - (< r$248 100))) - (lambda (r$616) (values k$614 r$615 r$616)))) - values - r$619)) - (lambda (k$620 x$251) (k$620 x$251))))))) - (define run-r7rs-benchmark - (lambda (k$568 name$229 count$228 thunk$227 ok?$226) - ((lambda (rounded$231) - ((lambda (rounded$232) - ((lambda (r$603) - ((lambda (r$569) - (display - (lambda (r$570) - (display - (lambda (r$571) - (newline - (lambda (r$572) - (flush-output-port - (lambda (r$573) - (jiffies-per-second - (lambda (r$574) - ((lambda (j/s$233) - (current-second - (lambda (r$575) - ((lambda (t0$234) - (current-jiffy - (lambda (r$576) - ((lambda (j0$235) - ((lambda () - ((lambda (k$602) (if #f (k$602 #f) (k$602 #f))) - (lambda (r$577) - ((lambda (i$237 result$236) - ((lambda (loop$238) - ((lambda (r$579) - ((lambda (r$578) - (loop$238 k$568 i$237 result$236)) - (set! loop$238 r$579))) - (lambda (k$580 i$240 result$239) - ((lambda (r$581) - (if r$581 - ((lambda () - ((lambda (r$582) - (thunk$227 - (lambda (r$583) (loop$238 k$580 r$582 r$583)))) - (+ i$240 1)))) - (ok?$226 - (lambda (r$584) - (if r$584 - ((lambda () - (current-jiffy - (lambda (r$586) - ((lambda (j1$241) - (current-second - (lambda (r$587) - ((lambda (t1$242) - ((lambda (r$588) - ((lambda (jifs$243) - ((lambda (r$598) - (inexact - (lambda (r$589) - ((lambda (secs$244) - ((lambda (r$597) - (rounded$231 - (lambda (r$590) - ((lambda (secs2$245) - ((lambda () - (display - (lambda (r$591) - (write (lambda (r$592) - (display - (lambda (r$593) - (write (lambda (r$594) - (display - (lambda (r$595) - (display - (lambda (r$596) - (newline (lambda (r$585) (k$580 result$239)))) - name$229)) - ") for ")) - secs2$245)) - " seconds (")) - secs$244)) - "Elapsed time: ")))) - r$590)) - r$597)) - (- t1$242 t0$234))) - r$589)) - r$598)) - (/ jifs$243 j/s$233))) - r$588)) - (- j1$241 j0$235))) - r$587)))) - r$586))))) - ((lambda () - (display - (lambda (r$599) - (write (lambda (r$600) - (newline (lambda (r$601) (k$580 result$239)))) - result$239)) - "ERROR: returned incorrect result: "))))) - result$239))) - (< i$240 count$228))))) - #f)) - 0 - r$577)))))) - r$576)))) - r$575)))) - r$574)))))))) - name$229)) - "Running ")) - (set! rounded$231 r$603))) - (lambda (k$604 x$246) - ((lambda (r$606) - (round (lambda (r$605) (k$604 (/ r$605 1000))) r$606)) - (* 1000 x$246))))) - #f)) - #f))) - ((lambda (*symbol-records-alist*$118 - add-lemma$117 - add-lemma-lst$116 - apply-subst$115 - apply-subst-lst$114 - false-term$113 - falsep$112 - get$111 - get-lemmas$110 - get-name$109 - if-constructor$108 - make-symbol-record$107 - one-way-unify$106 - one-way-unify1$105 - one-way-unify1-lst$104 - put$103 - put-lemmas!$102 - rewrite$101 - rewrite-args$100 - rewrite-count$99 - rewrite-with-lemmas$98 - setup$97 - symbol->symbol-record$96 - symbol-record-equal?$95 - tautologyp$94 - tautp$93 - term-args-equal?$92 - term-equal?$91 - term-member?$90 - test$89 - trans-of-implies$88 - trans-of-implies1$87 - translate-alist$86 - translate-args$85 - translate-term$84 - true-term$83 - truep$82 - unify-subst$81 - untranslate-term$80) - ((lambda () - ((lambda (r$261) - ((lambda (r$565) - ((lambda (r$262) - ((lambda (r$564) - ((lambda (r$263) - ((lambda () - ((lambda (setup$157 - add-lemma-lst$156 - add-lemma$155 - translate-term$154 - translate-args$153 - untranslate-term$152 - put$151 - get$150 - symbol->symbol-record$149 - *symbol-records-alist*$148 - make-symbol-record$147 - put-lemmas!$146 - get-lemmas$145 - get-name$144 - symbol-record-equal?$143 - test$142 - translate-alist$141 - apply-subst$140 - apply-subst-lst$139 - tautp$138 - tautologyp$137 - if-constructor$136 - rewrite-count$135 - rewrite$134 - rewrite-args$133 - rewrite-with-lemmas$132 - unify-subst$131 - one-way-unify$130 - one-way-unify1$129 - one-way-unify1-lst$128 - falsep$127 - truep$126 - false-term$125 - true-term$124 - trans-of-implies$123 - trans-of-implies1$122 - term-equal?$121 - term-args-equal?$120 - term-member?$119) - ((lambda (r$561) - ((lambda (r$265) - ((lambda (r$555) - ((lambda (r$266) - ((lambda (r$537) - ((lambda (r$267) - ((lambda (r$530) - ((lambda (r$268) - ((lambda (r$523) - ((lambda (r$269) - ((lambda (r$516) - ((lambda (r$270) - ((lambda (r$513) - ((lambda (r$271) - ((lambda (r$510) - ((lambda (r$272) - ((lambda (r$503) - ((lambda (r$273) - ((lambda (r$502) - ((lambda (r$274) - ((lambda (r$499) - ((lambda (r$275) - ((lambda (r$497) - ((lambda (r$276) - ((lambda (r$495) - ((lambda (r$277) - ((lambda (r$493) - ((lambda (r$278) - ((lambda (r$491) - ((lambda (r$279) - ((lambda (r$477) - ((lambda (r$280) - ((lambda (r$468) - ((lambda (r$281) - ((lambda (r$461) - ((lambda (r$282) - ((lambda (r$454) - ((lambda (r$283) - ((lambda (r$449) - ((lambda (r$284) - ((lambda (r$429) - ((lambda (r$285) - ((lambda (r$428) - ((lambda (r$286) - ((lambda (r$287) - ((lambda (r$417) - ((lambda (r$288) - ((lambda (r$410) - ((lambda (r$289) - ((lambda (r$400) - ((lambda (r$290) - ((lambda (r$399) - ((lambda (r$291) - ((lambda (r$395) - ((lambda (r$292) - ((lambda (r$380) - ((lambda (r$293) - ((lambda (r$371) - ((lambda (r$294) - ((lambda (r$368) - ((lambda (r$295) - ((lambda (r$365) - ((lambda (r$296) - ((lambda (r$364) - ((lambda (r$297) - ((lambda (r$363) - ((lambda (r$298) - ((lambda (r$356) - ((lambda (r$299) - ((lambda (r$346) - ((lambda (r$300) - ((lambda (r$337) - ((lambda (r$301) - ((lambda (r$328) - ((lambda (r$302) - ((lambda (r$322) - ((lambda (r$303) - ((lambda (r$309) - ((lambda (r$304) - ((lambda (r$305) - ((lambda (r$264) (main %halt)) - (set! test-boyer r$305))) - (lambda (k$306 alist$160 term$159 n$158) - ((lambda (r$307) - (test$142 - (lambda (r$308) - ((lambda (answer$161) - (if answer$161 - (k$306 rewrite-count$135) - (k$306 #f))) - r$308)) - alist$160 - term$159 - n$158)) - (set! rewrite-count$135 0))))) - (set! setup-boyer r$309))) - (lambda (k$310) - ((lambda (r$321) - ((lambda (r$311) - ((lambda (r$320) - (symbol->symbol-record$149 - (lambda (r$319) - ((lambda (r$312) - ((lambda (r$318) - (translate-term$154 - (lambda (r$317) - ((lambda (r$313) - ((lambda (r$316) - (translate-term$154 - (lambda (r$315) - ((lambda (r$314) (setup$157 k$310)) - (set! true-term$124 r$315))) - r$316)) - '(t))) - (set! false-term$125 r$317))) - r$318)) - '(f))) - (set! if-constructor$136 r$319))) - r$320)) - 'if)) - (set! *symbol-records-alist*$148 r$321))) - '())))) - (set! term-member?$119 r$322))) - (lambda (k$323 x$163 lst$162) - ((lambda (r$324) - (if r$324 - ((lambda () (k$323 #f))) - ((lambda (r$327) - (term-equal?$121 - (lambda (r$325) - (if r$325 - ((lambda () (k$323 #t))) - ((lambda () - ((lambda (r$326) - (term-member?$119 k$323 x$163 r$326)) - (cdr lst$162)))))) - x$163 - r$327)) - (car lst$162)))) - (null? lst$162))))) - (set! term-args-equal?$120 r$328))) - (lambda (k$329 lst1$165 lst2$164) - ((lambda (r$330) - (if r$330 - ((lambda () (k$329 (null? lst2$164)))) - ((lambda (r$331) - (if r$331 - ((lambda () (k$329 #f))) - ((lambda (r$335) - ((lambda (r$336) - (term-equal?$121 - (lambda (r$332) - (if r$332 - ((lambda () - ((lambda (r$333) - ((lambda (r$334) - (term-args-equal?$120 k$329 r$333 r$334)) - (cdr lst2$164))) - (cdr lst1$165)))) - ((lambda () (k$329 #f))))) - r$335 - r$336)) - (car lst2$164))) - (car lst1$165)))) - (null? lst2$164)))) - (null? lst1$165))))) - (set! term-equal?$121 r$337))) - (lambda (k$338 x$167 y$166) - ((lambda (r$339) - (if r$339 - ((lambda () - ((lambda (r$340) - (if r$340 - ((lambda (r$344) - ((lambda (r$345) - (symbol-record-equal?$143 - (lambda (r$341) - (if r$341 - ((lambda (r$342) - ((lambda (r$343) - (term-args-equal?$120 k$338 r$342 r$343)) - (cdr y$166))) - (cdr x$167)) - (k$338 #f))) - r$344 - r$345)) - (car y$166))) - (car x$167)) - (k$338 #f))) - (pair? y$166)))) - ((lambda () (k$338 (equal? x$167 y$166)))))) - (pair? x$167))))) - (set! trans-of-implies1$122 r$346))) - (lambda (k$347 n$168) - ((lambda (r$348) - (if r$348 - ((lambda () - ((lambda (r$349) (list k$347 r$349 0 1)) - 'implies))) - ((lambda () - ((lambda (r$350) - ((lambda (r$354) - ((lambda (r$355) - (list (lambda (r$351) - ((lambda (r$353) - (trans-of-implies1$122 - (lambda (r$352) (list k$347 r$350 r$351 r$352)) - r$353)) - (- n$168 1))) - r$354 - r$355 - n$168)) - (- n$168 1))) - 'implies)) - 'and))))) - (equal? n$168 1))))) - (set! trans-of-implies$123 r$356))) - (lambda (k$357 n$169) - ((lambda (r$359) - (trans-of-implies1$122 - (lambda (r$360) - ((lambda (r$362) - (list (lambda (r$361) - (list (lambda (r$358) (translate-term$154 k$357 r$358)) - r$359 - r$360 - r$361)) - r$362 - 0 - n$169)) - 'implies)) - n$169)) - 'implies)))) - (set! true-term$124 r$363))) - '*)) - (set! false-term$125 r$364))) - '*)) - (set! truep$126 r$365))) - (lambda (k$366 x$171 lst$170) - (term-equal?$121 - (lambda (r$367) - ((lambda (tmp$172) - (if tmp$172 - (k$366 tmp$172) - (term-member?$119 k$366 x$171 lst$170))) - r$367)) - x$171 - true-term$124)))) - (set! falsep$127 r$368))) - (lambda (k$369 x$174 lst$173) - (term-equal?$121 - (lambda (r$370) - ((lambda (tmp$175) - (if tmp$175 - (k$369 tmp$175) - (term-member?$119 k$369 x$174 lst$173))) - r$370)) - x$174 - false-term$125)))) - (set! one-way-unify1-lst$128 r$371))) - (lambda (k$372 lst1$177 lst2$176) - ((lambda (r$373) - (if r$373 - ((lambda () (k$372 (null? lst2$176)))) - ((lambda (r$374) - (if r$374 - ((lambda () (k$372 #f))) - ((lambda (r$378) - ((lambda (r$379) - (one-way-unify1$129 - (lambda (r$375) - (if r$375 - ((lambda () - ((lambda (r$376) - ((lambda (r$377) - (one-way-unify1-lst$128 k$372 r$376 r$377)) - (cdr lst2$176))) - (cdr lst1$177)))) - ((lambda () (k$372 #f))))) - r$378 - r$379)) - (car lst2$176))) - (car lst1$177)))) - (null? lst2$176)))) - (null? lst1$177))))) - (set! one-way-unify1$129 r$380))) - (lambda (k$381 term1$179 term2$178) - ((lambda (r$382) - (if r$382 - ((lambda (r$383) - (if r$383 - ((lambda (r$387) - ((lambda (r$388) - ((lambda (r$384) - (if r$384 - ((lambda () - ((lambda (r$385) - ((lambda (r$386) - (one-way-unify1-lst$128 k$381 r$385 r$386)) - (cdr term2$178))) - (cdr term1$179)))) - ((lambda () (k$381 #f))))) - (eq? r$387 r$388))) - (car term2$178))) - (car term1$179)) - ((lambda () (k$381 #f))))) - (pair? term1$179)) - ((lambda () - ((lambda (r$389) - ((lambda (temp-temp$180) - (if temp-temp$180 - ((lambda () - ((lambda (r$390) - (term-equal?$121 k$381 term1$179 r$390)) - (cdr temp-temp$180)))) - ((lambda (r$391) - (if r$391 - ((lambda () (k$381 (equal? term1$179 term2$178)))) - ((lambda () - ((lambda (r$394) - ((lambda (r$393) - ((lambda (r$392) (k$381 #t)) - (set! unify-subst$131 r$393))) - (cons r$394 unify-subst$131))) - (cons term2$178 term1$179)))))) - (number? term2$178)))) - r$389)) - (assq term2$178 unify-subst$131)))))) - (pair? term2$178))))) - (set! one-way-unify$130 r$395))) - (lambda (k$396 term1$182 term2$181) - ((lambda (r$398) - ((lambda (r$397) - (one-way-unify1$129 k$396 term1$182 term2$181)) - (set! unify-subst$131 r$398))) - '())))) - (set! unify-subst$131 r$399))) - '*)) - (set! rewrite-with-lemmas$132 r$400))) - (lambda (k$401 term$184 lst$183) - ((lambda (r$402) - (if r$402 - ((lambda () (k$401 term$184))) - ((lambda (r$409) - ((lambda (r$408) - (one-way-unify$130 - (lambda (r$403) - (if r$403 - ((lambda () - ((lambda (r$406) - ((lambda (r$405) - (apply-subst$140 - (lambda (r$404) (rewrite$134 k$401 r$404)) - unify-subst$131 - r$405)) - (caddr r$406))) - (car lst$183)))) - ((lambda () - ((lambda (r$407) - (rewrite-with-lemmas$132 k$401 term$184 r$407)) - (cdr lst$183)))))) - term$184 - r$408)) - (cadr r$409))) - (car lst$183)))) - (null? lst$183))))) - (set! rewrite-args$133 r$410))) - (lambda (k$411 lst$185) - ((lambda (r$412) - (if r$412 - ((lambda () (k$411 '()))) - ((lambda () - ((lambda (r$416) - (rewrite$134 - (lambda (r$413) - ((lambda (r$415) - (rewrite-args$133 - (lambda (r$414) (k$411 (cons r$413 r$414))) - r$415)) - (cdr lst$185))) - r$416)) - (car lst$185)))))) - (null? lst$185))))) - (set! rewrite$134 r$417))) - (lambda (k$418 term$186) - ((lambda (r$427) - ((lambda (r$419) - ((lambda (r$420) - (if r$420 - ((lambda () - ((lambda (r$424) - ((lambda (r$426) - (rewrite-args$133 - (lambda (r$425) - ((lambda (r$421) - ((lambda (r$423) - (get-lemmas$145 - (lambda (r$422) - (rewrite-with-lemmas$132 k$418 r$421 r$422)) - r$423)) - (car term$186))) - (cons r$424 r$425))) - r$426)) - (cdr term$186))) - (car term$186)))) - ((lambda () (k$418 term$186))))) - (pair? term$186))) - (set! rewrite-count$135 r$427))) - (+ rewrite-count$135 1))))) - (set! rewrite-count$135 0))) - (set! if-constructor$136 r$428))) - '*)) - (set! tautologyp$137 r$429))) - (lambda (k$430 x$189 true-lst$188 false-lst$187) - (truep$126 - (lambda (r$431) - (if r$431 - ((lambda () (k$430 #t))) - (falsep$127 - (lambda (r$432) - (if r$432 - ((lambda () (k$430 #f))) - ((lambda (r$433) - (if r$433 - ((lambda (r$448) - ((lambda (r$434) - (if r$434 - ((lambda () - ((lambda (r$447) - (truep$126 - (lambda (r$435) - (if r$435 - ((lambda () - ((lambda (r$436) - (tautologyp$137 - k$430 - r$436 - true-lst$188 - false-lst$187)) - (caddr x$189)))) - ((lambda (r$446) - (falsep$127 - (lambda (r$437) - (if r$437 - ((lambda () - ((lambda (r$438) - (tautologyp$137 - k$430 - r$438 - true-lst$188 - false-lst$187)) - (cadddr x$189)))) - ((lambda () - ((lambda (r$443) - ((lambda (r$445) - ((lambda (r$444) - (tautologyp$137 - (lambda (r$439) - (if r$439 - ((lambda (r$440) - ((lambda (r$442) - ((lambda (r$441) - (tautologyp$137 k$430 r$440 true-lst$188 r$441)) - (cons r$442 false-lst$187))) - (cadr x$189))) - (cadddr x$189)) - (k$430 #f))) - r$443 - r$444 - false-lst$187)) - (cons r$445 true-lst$188))) - (cadr x$189))) - (caddr x$189)))))) - r$446 - false-lst$187)) - (cadr x$189)))) - r$447 - true-lst$188)) - (cadr x$189)))) - ((lambda () (k$430 #f))))) - (eq? r$448 if-constructor$136))) - (car x$189)) - ((lambda () (k$430 #f))))) - (pair? x$189)))) - x$189 - false-lst$187))) - x$189 - true-lst$188)))) - (set! tautp$138 r$449))) - (lambda (k$450 x$190) - (rewrite$134 - (lambda (r$451) - ((lambda (r$452) - ((lambda (r$453) - (tautologyp$137 k$450 r$451 r$452 r$453)) - '())) - '())) - x$190)))) - (set! apply-subst-lst$139 r$454))) - (lambda (k$455 alist$192 lst$191) - ((lambda (r$456) - (if r$456 - ((lambda () (k$455 '()))) - ((lambda () - ((lambda (r$460) - (apply-subst$140 - (lambda (r$457) - ((lambda (r$459) - (apply-subst-lst$139 - (lambda (r$458) (k$455 (cons r$457 r$458))) - alist$192 - r$459)) - (cdr lst$191))) - alist$192 - r$460)) - (car lst$191)))))) - (null? lst$191))))) - (set! apply-subst$140 r$461))) - (lambda (k$462 alist$194 term$193) - ((lambda (r$463) - (if r$463 - ((lambda () - ((lambda (r$464) - ((lambda (r$466) - (apply-subst-lst$139 - (lambda (r$465) (k$462 (cons r$464 r$465))) - alist$194 - r$466)) - (cdr term$193))) - (car term$193)))) - ((lambda () - ((lambda (r$467) - ((lambda (temp-temp$195) - (if temp-temp$195 - (k$462 (cdr temp-temp$195)) - (k$462 term$193))) - r$467)) - (assq term$193 alist$194)))))) - (pair? term$193))))) - (set! translate-alist$141 r$468))) - (lambda (k$469 alist$196) - ((lambda (r$470) - (if r$470 - ((lambda () (k$469 '()))) - ((lambda () - ((lambda (r$474) - ((lambda (r$476) - (translate-term$154 - (lambda (r$475) - ((lambda (r$471) - ((lambda (r$473) - (translate-alist$141 - (lambda (r$472) (k$469 (cons r$471 r$472))) - r$473)) - (cdr alist$196))) - (cons r$474 r$475))) - r$476)) - (cdar alist$196))) - (caar alist$196)))))) - (null? alist$196))))) - (set! test$142 r$477))) - (lambda (k$478 alist$199 term$198 n$197) - (translate-alist$141 - (lambda (r$480) - ((lambda (term$201 n$200) - ((lambda (lp$202) - ((lambda (r$484) - ((lambda (r$483) - (lp$202 - (lambda (r$482) - (translate-term$154 - (lambda (r$481) - (apply-subst$140 - (lambda (r$479) - ((lambda (term$205) (tautp$138 k$478 term$205)) - r$479)) - r$480 - r$481)) - r$482)) - term$201 - n$200)) - (set! lp$202 r$484))) - (lambda (k$485 term$204 n$203) - (zero? (lambda (r$486) - (if r$486 - (k$485 term$204) - ((lambda (r$489) - ((lambda (r$490) - (list (lambda (r$487) - ((lambda (r$488) (lp$202 k$485 r$487 r$488)) - (- n$203 1))) - r$489 - term$204 - r$490)) - '(f))) - 'or))) - n$203)))) - #f)) - term$198 - n$197)) - alist$199)))) - (set! symbol-record-equal?$143 r$491))) - (lambda (k$492 r1$207 r2$206) - (k$492 (eq? r1$207 r2$206))))) - (set! get-name$144 r$493))) - (lambda (k$494 symbol-record$208) - (k$494 (vector-ref symbol-record$208 0))))) - (set! get-lemmas$145 r$495))) - (lambda (k$496 symbol-record$209) - (k$496 (vector-ref symbol-record$209 1))))) - (set! put-lemmas!$146 r$497))) - (lambda (k$498 symbol-record$211 lemmas$210) - (k$498 (vector-set! symbol-record$211 1 lemmas$210))))) - (set! make-symbol-record$147 r$499))) - (lambda (k$500 sym$212) - ((lambda (r$501) (vector k$500 sym$212 r$501)) - '())))) - (set! *symbol-records-alist*$148 r$502))) - '())) - (set! symbol->symbol-record$149 r$503))) - (lambda (k$504 sym$213) - ((lambda (r$505) - ((lambda (x$214) - (if x$214 - (k$504 (cdr x$214)) - (make-symbol-record$147 - (lambda (r$506) - ((lambda (r$215) - ((lambda (r$509) - ((lambda (r$508) - ((lambda (r$507) (k$504 r$215)) - (set! *symbol-records-alist*$148 r$508))) - (cons r$509 *symbol-records-alist*$148))) - (cons sym$213 r$215))) - r$506)) - sym$213))) - r$505)) - (assq sym$213 *symbol-records-alist*$148))))) - (set! get$150 r$510))) - (lambda (k$511 sym$217 property$216) - (symbol->symbol-record$149 - (lambda (r$512) (get-lemmas$145 k$511 r$512)) - sym$217)))) - (set! put$151 r$513))) - (lambda (k$514 sym$220 property$219 value$218) - (symbol->symbol-record$149 - (lambda (r$515) - (put-lemmas!$146 k$514 r$515 value$218)) - sym$220)))) - (set! untranslate-term$152 r$516))) - (lambda (k$517 term$221) - ((lambda (r$518) - (if r$518 - ((lambda () - ((lambda (r$522) - (get-name$144 - (lambda (r$519) - ((lambda (r$521) - (map (lambda (r$520) (k$517 (cons r$519 r$520))) - untranslate-term$152 - r$521)) - (cdr term$221))) - r$522)) - (car term$221)))) - ((lambda () (k$517 term$221))))) - (pair? term$221))))) - (set! translate-args$153 r$523))) - (lambda (k$524 lst$222) - ((lambda (r$525) - (if r$525 - ((lambda () (k$524 '()))) - ((lambda () - ((lambda (r$529) - (translate-term$154 - (lambda (r$526) - ((lambda (r$528) - (translate-args$153 - (lambda (r$527) (k$524 (cons r$526 r$527))) - r$528)) - (cdr lst$222))) - r$529)) - (car lst$222)))))) - (null? lst$222))))) - (set! translate-term$154 r$530))) - (lambda (k$531 term$223) - ((lambda (r$532) - (if r$532 - ((lambda () - ((lambda (r$536) - (symbol->symbol-record$149 - (lambda (r$533) - ((lambda (r$535) - (translate-args$153 - (lambda (r$534) (k$531 (cons r$533 r$534))) - r$535)) - (cdr term$223))) - r$536)) - (car term$223)))) - ((lambda () (k$531 term$223))))) - (pair? term$223))))) - (set! add-lemma$155 r$537))) - (lambda (k$538 term$224) - ((lambda (k$549) - ((lambda (r$550) - (if r$550 - ((lambda (r$553) - ((lambda (r$554) - ((lambda (r$551) - (if r$551 - ((lambda (r$552) (k$549 (pair? r$552))) - (cadr term$224)) - (k$549 #f))) - (eq? r$553 r$554))) - 'equal)) - (car term$224)) - (k$549 #f))) - (pair? term$224))) - (lambda (r$539) - (if r$539 - ((lambda () - ((lambda (r$548) - ((lambda (r$540) - ((lambda (r$541) - (translate-term$154 - (lambda (r$543) - ((lambda (r$547) - ((lambda (r$545) - ((lambda (r$546) - (get$150 - (lambda (r$544) - ((lambda (r$542) - (put$151 k$538 r$540 r$541 r$542)) - (cons r$543 r$544))) - r$545 - r$546)) - 'lemmas)) - (car r$547))) - (cadr term$224))) - term$224)) - 'lemmas)) - (car r$548))) - (cadr term$224)))) - ((lambda () - (error k$538 - #f - "ADD-LEMMA did not like term: " - term$224))))))))) - (set! add-lemma-lst$156 r$555))) - (lambda (k$556 lst$225) - ((lambda (r$557) - (if r$557 - ((lambda () (k$556 #t))) - ((lambda () - ((lambda (r$560) - (add-lemma$155 - (lambda (r$558) - ((lambda (r$559) (add-lemma-lst$156 k$556 r$559)) - (cdr lst$225))) - r$560)) - (car lst$225)))))) - (null? lst$225))))) - (set! setup$157 r$561))) - (lambda (k$562) - ((lambda (r$563) (add-lemma-lst$156 k$562 r$563)) - '((equal (compile form) - (reverse (codegen (optimize form) (nil)))) - (equal (eqp x y) (equal (fix x) (fix y))) - (equal (greaterp x y) (lessp y x)) - (equal (lesseqp x y) (not (lessp y x))) - (equal (greatereqp x y) (not (lessp x y))) - (equal (boolean x) - (or (equal x (t)) (equal x (f)))) - (equal (iff x y) - (and (implies x y) (implies y x))) - (equal (even1 x) - (if (zerop x) (t) (odd (_1- x)))) - (equal (countps- l pred) - (countps-loop l pred (zero))) - (equal (fact- i) (fact-loop i 1)) - (equal (reverse- x) (reverse-loop x (nil))) - (equal (divides x y) (zerop (remainder y x))) - (equal (assume-true var alist) - (cons (cons var (t)) alist)) - (equal (assume-false var alist) - (cons (cons var (f)) alist)) - (equal (tautology-checker x) - (tautologyp (normalize x) (nil))) - (equal (falsify x) - (falsify1 (normalize x) (nil))) - (equal (prime x) - (and (not (zerop x)) - (not (equal x (add1 (zero)))) - (prime1 x (_1- x)))) - (equal (and p q) (if p (if q (t) (f)) (f))) - (equal (or p q) (if p (t) (if q (t) (f)))) - (equal (not p) (if p (f) (t))) - (equal (implies p q) (if p (if q (t) (f)) (t))) - (equal (fix x) (if (numberp x) x (zero))) - (equal (if (if a b c) d e) - (if a (if b d e) (if c d e))) - (equal (zerop x) - (or (equal x (zero)) (not (numberp x)))) - (equal (plus (plus x y) z) (plus x (plus y z))) - (equal (equal (plus a b) (zero)) - (and (zerop a) (zerop b))) - (equal (difference x x) (zero)) - (equal (equal (plus a b) (plus a c)) - (equal (fix b) (fix c))) - (equal (equal (zero) (difference x y)) - (not (lessp y x))) - (equal (equal x (difference x y)) - (and (numberp x) (or (equal x (zero)) (zerop y)))) - (equal (meaning (plus-tree (append x y)) a) - (plus (meaning (plus-tree x) a) - (meaning (plus-tree y) a))) - (equal (meaning (plus-tree (plus-fringe x)) a) - (fix (meaning x a))) - (equal (append (append x y) z) - (append x (append y z))) - (equal (reverse (append a b)) - (append (reverse b) (reverse a))) - (equal (times x (plus y z)) - (plus (times x y) (times x z))) - (equal (times (times x y) z) - (times x (times y z))) - (equal (equal (times x y) (zero)) - (or (zerop x) (zerop y))) - (equal (exec (append x y) pds envrn) - (exec y (exec x pds envrn) envrn)) - (equal (mc-flatten x y) (append (flatten x) y)) - (equal (member x (append a b)) - (or (member x a) (member x b))) - (equal (member x (reverse y)) (member x y)) - (equal (length (reverse x)) (length x)) - (equal (member a (intersect b c)) - (and (member a b) (member a c))) - (equal (nth (zero) i) (zero)) - (equal (exp i (plus j k)) - (times (exp i j) (exp i k))) - (equal (exp i (times j k)) (exp (exp i j) k)) - (equal (reverse-loop x y) (append (reverse x) y)) - (equal (reverse-loop x (nil)) (reverse x)) - (equal (count-list z (sort-lp x y)) - (plus (count-list z x) (count-list z y))) - (equal (equal (append a b) (append a c)) - (equal b c)) - (equal (plus (remainder x y) (times y (quotient x y))) - (fix x)) - (equal (power-eval (big-plus1 l i base) base) - (plus (power-eval l base) i)) - (equal (power-eval (big-plus x y i base) base) - (plus i - (plus (power-eval x base) (power-eval y base)))) - (equal (remainder y 1) (zero)) - (equal (lessp (remainder x y) y) (not (zerop y))) - (equal (remainder x x) (zero)) - (equal (lessp (quotient i j) i) - (and (not (zerop i)) - (or (zerop j) (not (equal j 1))))) - (equal (lessp (remainder x y) x) - (and (not (zerop y)) - (not (zerop x)) - (not (lessp x y)))) - (equal (power-eval (power-rep i base) base) - (fix i)) - (equal (power-eval - (big-plus - (power-rep i base) - (power-rep j base) - (zero) - base) - base) - (plus i j)) - (equal (gcd x y) (gcd y x)) - (equal (nth (append a b) i) - (append - (nth a i) - (nth b (difference i (length a))))) - (equal (difference (plus x y) x) (fix y)) - (equal (difference (plus y x) x) (fix y)) - (equal (difference (plus x y) (plus x z)) - (difference y z)) - (equal (times x (difference c w)) - (difference (times c x) (times w x))) - (equal (remainder (times x z) z) (zero)) - (equal (difference (plus b (plus a c)) a) - (plus b c)) - (equal (difference (add1 (plus y z)) z) (add1 y)) - (equal (lessp (plus x y) (plus x z)) (lessp y z)) - (equal (lessp (times x z) (times y z)) - (and (not (zerop z)) (lessp x y))) - (equal (lessp y (plus x y)) (not (zerop x))) - (equal (gcd (times x z) (times y z)) - (times z (gcd x y))) - (equal (value (normalize x) a) (value x a)) - (equal (equal (flatten x) (cons y (nil))) - (and (nlistp x) (equal x y))) - (equal (listp (gopher x)) (listp x)) - (equal (samefringe x y) - (equal (flatten x) (flatten y))) - (equal (equal (greatest-factor x y) (zero)) - (and (or (zerop y) (equal y 1)) (equal x (zero)))) - (equal (equal (greatest-factor x y) 1) - (equal x 1)) - (equal (numberp (greatest-factor x y)) - (not (and (or (zerop y) (equal y 1)) - (not (numberp x))))) - (equal (times-list (append x y)) - (times (times-list x) (times-list y))) - (equal (prime-list (append x y)) - (and (prime-list x) (prime-list y))) - (equal (equal z (times w z)) - (and (numberp z) - (or (equal z (zero)) (equal w 1)))) - (equal (greatereqp x y) (not (lessp x y))) - (equal (equal x (times x y)) - (or (equal x (zero)) - (and (numberp x) (equal y 1)))) - (equal (remainder (times y x) y) (zero)) - (equal (equal (times a b) 1) - (and (not (equal a (zero))) - (not (equal b (zero))) - (numberp a) - (numberp b) - (equal (_1- a) (zero)) - (equal (_1- b) (zero)))) - (equal (lessp (length (delete x l)) (length l)) - (member x l)) - (equal (sort2 (delete x l)) (delete x (sort2 l))) - (equal (dsort x) (sort2 x)) - (equal (length - (cons x1 - (cons x2 - (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) - (plus 6 (length x7))) - (equal (difference (add1 (add1 x)) 2) (fix x)) - (equal (quotient (plus x (plus x y)) 2) - (plus x (quotient y 2))) - (equal (sigma (zero) i) - (quotient (times i (add1 i)) 2)) - (equal (plus x (add1 y)) - (if (numberp y) (add1 (plus x y)) (add1 x))) - (equal (equal (difference x y) (difference z y)) - (if (lessp x y) - (not (lessp y z)) - (if (lessp z y) - (not (lessp y x)) - (equal (fix x) (fix z))))) - (equal (meaning (plus-tree (delete x y)) a) - (if (member x y) - (difference - (meaning (plus-tree y) a) - (meaning x a)) - (meaning (plus-tree y) a))) - (equal (times x (add1 y)) - (if (numberp y) (plus x (times x y)) (fix x))) - (equal (nth (nil) i) (if (zerop i) (nil) (zero))) - (equal (last (append a b)) - (if (listp b) - (last b) - (if (listp a) (cons (car (last a)) b) b))) - (equal (equal (lessp x y) z) - (if (lessp x y) (equal (t) z) (equal (f) z))) - (equal (assignment x (append a b)) - (if (assignedp x a) - (assignment x a) - (assignment x b))) - (equal (car (gopher x)) - (if (listp x) (car (flatten x)) (zero))) - (equal (flatten (cdr (gopher x))) - (if (listp x) - (cdr (flatten x)) - (cons (zero) (nil)))) - (equal (quotient (times y x) y) - (if (zerop y) (zero) (fix x))) - (equal (get j (set i val mem)) - (if (eqp j i) val (get j mem)))))))) - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f)))) - (set! term r$564))) - '(implies - (and (implies x y) - (and (implies y z) (and (implies z u) (implies u w)))) - (implies x w)))) - (set! alist r$565))) - '((x f (plus (plus a b) (plus c (zero)))) - (y f (times (times a b) (plus c d))) - (z f (reverse (append (append a b) (nil)))) - (u equal (plus a b) (difference x y)) - (w lessp (remainder a b) (member a (length b)))))) - 0)))) - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f)) -#;1> diff --git a/debug/compilation/boyer/nboyer.c b/debug/compilation/boyer/nboyer.c deleted file mode 100644 index 44706a09..00000000 --- a/debug/compilation/boyer/nboyer.c +++ /dev/null @@ -1,16770 +0,0 @@ -/** - ** This file was automatically generated by the Cyclone scheme compiler - ** - ** (c) 2014-2016 Justin Ethier - ** Version 0.0.5 (Pre-release) - ** - **/ - -/* -"---------------- input program:" */ -/* -((import (scheme base) (scheme cxr) (scheme read) (scheme write) (scheme time)) (define (main) (let* ((count (read)) (input (read)) (output (read)) (s2 (number->string count)) (s1 (number->string input)) (name "nboyer")) (run-r7rs-benchmark (string-append name ":" s1 ":" s2) count (lambda () (setup-boyer) (test-boyer alist term (hide count input))) (lambda (rewrites) (and (number? rewrites) (= rewrites output)))))) (define alist (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b)))))) (define term (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w)))) (define (setup-boyer . args) #t) (define (test-boyer . args) #t) (let () (define (setup) (add-lemma-lst (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem))))))) (define (add-lemma-lst lst) (cond ((null? lst) #t) (else (add-lemma (car lst)) (add-lemma-lst (cdr lst))))) (define (add-lemma term) (cond ((and (pair? term) (eq? (car term) (quote equal)) (pair? (cadr term))) (put (car (cadr term)) (quote lemmas) (cons (translate-term term) (get (car (cadr term)) (quote lemmas))))) (else (error #f "ADD-LEMMA did not like term: " term)))) (define (translate-term term) (cond ((not (pair? term)) term) (else (cons (symbol->symbol-record (car term)) (translate-args (cdr term)))))) (define (translate-args lst) (cond ((null? lst) (quote ())) (else (cons (translate-term (car lst)) (translate-args (cdr lst)))))) (define (untranslate-term term) (cond ((not (pair? term)) term) (else (cons (get-name (car term)) (map untranslate-term (cdr term)))))) (define (put sym property value) (put-lemmas! (symbol->symbol-record sym) value)) (define (get sym property) (get-lemmas (symbol->symbol-record sym))) (define (symbol->symbol-record sym) (let ((x (assq sym *symbol-records-alist*))) (if x (cdr x) (let ((r (make-symbol-record sym))) (set! *symbol-records-alist* (cons (cons sym r) *symbol-records-alist*)) r)))) (define *symbol-records-alist* (quote ())) (define (make-symbol-record sym) (vector sym (quote ()))) (define (put-lemmas! symbol-record lemmas) (vector-set! symbol-record 1 lemmas)) (define (get-lemmas symbol-record) (vector-ref symbol-record 1)) (define (get-name symbol-record) (vector-ref symbol-record 0)) (define (symbol-record-equal? r1 r2) (eq? r1 r2)) (define (test alist term n) (let ((term (apply-subst (translate-alist alist) (translate-term (do ((term term (list (quote or) term (quote (f))) ...) (n n (- n 1) ...)) ((zero? n) term)))))) (tautp term))) (define (translate-alist alist) (cond ((null? alist) (quote ())) (else (cons (cons (caar alist) (translate-term (cdar alist))) (translate-alist (cdr alist)))))) (define (apply-subst alist term) (cond ((not (pair? term)) (let ((temp-temp (assq term alist))) (if temp-temp (cdr temp-temp) term))) (else (cons (car term) (apply-subst-lst alist (cdr term)))))) (define (apply-subst-lst alist lst) (cond ((null? lst) (quote ())) (else (cons (apply-subst alist (car lst)) (apply-subst-lst alist (cdr lst)))))) (define (tautp x) (tautologyp (rewrite x) (quote ()) (quote ()))) (define (tautologyp x true-lst false-lst) (cond ((truep x true-lst) #t) ((falsep x false-lst) #f) ((not (pair? x)) #f) ((eq? (car x) if-constructor) (cond ((truep (cadr x) true-lst) (tautologyp (caddr x) true-lst false-lst)) ((falsep (cadr x) false-lst) (tautologyp (cadddr x) true-lst false-lst)) (else (and (tautologyp (caddr x) (cons (cadr x) true-lst) false-lst) (tautologyp (cadddr x) true-lst (cons (cadr x) false-lst)))))) (else #f))) (define if-constructor (quote *)) (define rewrite-count 0) (define (rewrite term) (set! rewrite-count (+ rewrite-count 1)) (cond ((not (pair? term)) term) (else (rewrite-with-lemmas (cons (car term) (rewrite-args (cdr term))) (get-lemmas (car term)))))) (define (rewrite-args lst) (cond ((null? lst) (quote ())) (else (cons (rewrite (car lst)) (rewrite-args (cdr lst)))))) (define (rewrite-with-lemmas term lst) (cond ((null? lst) term) ((one-way-unify term (cadr (car lst))) (rewrite (apply-subst unify-subst (caddr (car lst))))) (else (rewrite-with-lemmas term (cdr lst))))) (define unify-subst (quote *)) (define (one-way-unify term1 term2) (begin (set! unify-subst (quote ())) (one-way-unify1 term1 term2))) (define (one-way-unify1 term1 term2) (cond ((not (pair? term2)) (let ((temp-temp (assq term2 unify-subst))) (cond (temp-temp (term-equal? term1 (cdr temp-temp))) ((number? term2) (equal? term1 term2)) (else (set! unify-subst (cons (cons term2 term1) unify-subst)) #t)))) ((not (pair? term1)) #f) ((eq? (car term1) (car term2)) (one-way-unify1-lst (cdr term1) (cdr term2))) (else #f))) (define (one-way-unify1-lst lst1 lst2) (cond ((null? lst1) (null? lst2)) ((null? lst2) #f) ((one-way-unify1 (car lst1) (car lst2)) (one-way-unify1-lst (cdr lst1) (cdr lst2))) (else #f))) (define (falsep x lst) (or (term-equal? x false-term) (term-member? x lst))) (define (truep x lst) (or (term-equal? x true-term) (term-member? x lst))) (define false-term (quote *)) (define true-term (quote *)) (define (trans-of-implies n) (translate-term (list (quote implies) (trans-of-implies1 n) (list (quote implies) 0 n)))) (define (trans-of-implies1 n) (cond ((equal? n 1) (list (quote implies) 0 1)) (else (list (quote and) (list (quote implies) (- n 1) n) (trans-of-implies1 (- n 1)))))) (define (term-equal? x y) (cond ((pair? x) (and (pair? y) (symbol-record-equal? (car x) (car y)) (term-args-equal? (cdr x) (cdr y)))) (else (equal? x y)))) (define (term-args-equal? lst1 lst2) (cond ((null? lst1) (null? lst2)) ((null? lst2) #f) ((term-equal? (car lst1) (car lst2)) (term-args-equal? (cdr lst1) (cdr lst2))) (else #f))) (define (term-member? x lst) (cond ((null? lst) #f) ((term-equal? x (car lst)) #t) (else (term-member? x (cdr lst))))) (set! setup-boyer (lambda () (set! *symbol-records-alist* (quote ())) (set! if-constructor (symbol->symbol-record (quote if))) (set! false-term (translate-term (quote (f)))) (set! true-term (translate-term (quote (t)))) (setup))) (set! test-boyer (lambda (alist term n) (set! rewrite-count 0) (let ((answer (test alist term n))) (if answer rewrite-count #f))))) (define (hide r x) (call-with-values (lambda () (values (vector values (lambda (x) x)) (if (< r 100) 0 1))) (lambda (v i) ((vector-ref v i) x)))) (define (run-r7rs-benchmark name count thunk ok?) (define (rounded x) (/ (round (* 1000 x)) 1000)) (display "Running ") (display name) (newline) (flush-output-port) (let* ((j/s (jiffies-per-second)) (t0 (current-second)) (j0 (current-jiffy))) (let loop ((i 0) (result (if #f #f))) (cond ((< i count) (loop (+ i 1) (thunk))) ((ok? result) (let* ((j1 (current-jiffy)) (t1 (current-second)) (jifs (- j1 j0)) (secs (inexact (/ jifs j/s))) (secs2 (rounded (- t1 t0)))) (display "Elapsed time: ") (write secs) (display " seconds (") (write secs2) (display ") for ") (display name) (newline)) result) (else (display "ERROR: returned incorrect result: ") (write result) (newline) result))))) (main)) */ -/* -"imports:" */ -/* -((scheme base) (scheme cxr) (scheme read) (scheme write) (scheme time)) */ -/* -"resolved imports:" */ -/* -((cons-source scheme base) (syntax-rules scheme base) (letrec* scheme base) (guard scheme base) (guard-aux scheme base) (receive scheme base) (abs scheme base) (max scheme base) (min scheme base) (modulo scheme base) (floor-remainder scheme base) (even? scheme base) (exact-integer? scheme base) (exact? scheme base) (inexact? scheme base) (odd? scheme base) (complex? scheme base) (rational? scheme base) (gcd scheme base) (lcm scheme base) (quotient scheme base) (remainder scheme base) (truncate-quotient scheme base) (truncate-remainder scheme base) (truncate/ scheme base) (floor-quotient scheme base) (floor-remainder scheme base) (floor/ scheme base) (square scheme base) (expt scheme base) (call-with-current-continuation scheme base) (call/cc scheme base) (call-with-values scheme base) (dynamic-wind scheme base) (values scheme base) (char=? scheme base) (char? scheme base) (char<=? scheme base) (char>=? scheme base) (string=? scheme base) (string? scheme base) (string>=? scheme base) (foldl scheme base) (foldr scheme base) (not scheme base) (list? scheme base) (zero? scheme base) (positive? scheme base) (negative? scheme base) (append scheme base) (list scheme base) (make-list scheme base) (list-copy scheme base) (map scheme base) (for-each scheme base) (list-tail scheme base) (list-ref scheme base) (list-set! scheme base) (reverse scheme base) (boolean=? scheme base) (symbol=? scheme base) (Cyc-obj=? scheme base) (vector scheme base) (vector-append scheme base) (vector-copy scheme base) (vector-copy! scheme base) (vector-fill! scheme base) (vector->list scheme base) (vector->string scheme base) (vector-map scheme base) (vector-for-each scheme base) (make-string scheme base) (string scheme base) (string-copy scheme base) (string-copy! scheme base) (string-fill! scheme base) (string->list scheme base) (string->vector scheme base) (string-map scheme base) (string-for-each scheme base) (make-parameter scheme base) (current-output-port scheme base) (current-input-port scheme base) (current-error-port scheme base) (call-with-port scheme base) (error scheme base) (raise scheme base) (raise-continuable scheme base) (with-exception-handler scheme base) (Cyc-add-exception-handler scheme base) (Cyc-remove-exception-handler scheme base) (newline scheme base) (write-char scheme base) (write-string scheme base) (flush-output-port scheme base) (read-line scheme base) (read-string scheme base) (input-port? scheme base) (output-port? scheme base) (input-port-open? scheme base) (output-port-open? scheme base) (features scheme base) (any scheme base) (every scheme base) (and scheme base) (or scheme base) (let scheme base) (let* scheme base) (letrec scheme base) (begin scheme base) (case scheme base) (cond scheme base) (cond-expand scheme base) (do scheme base) (when scheme base) (unless scheme base) (quasiquote scheme base) (floor scheme base) (ceiling scheme base) (truncate scheme base) (round scheme base) (exact scheme base) (inexact scheme base) (eof-object scheme base) (syntax-error scheme base) (bytevector-copy scheme base) (utf8->string scheme base) (string->utf8 scheme base) (denominator scheme base) (numerator scheme base) (caaaaar scheme cxr) (read scheme read) (read-all scheme read) (display scheme write) (write scheme write) (current-second scheme time) (current-jiffy scheme time) (jiffies-per-second scheme time)) */ -/* -"resolved macros:" */ -/* -() */ -/* -"---------------- after macro expansion:" */ -/* -((define main (lambda () ((lambda (count) ((lambda (input) ((lambda (output) ((lambda (s2) ((lambda (s1) ((lambda (name) ((lambda () (run-r7rs-benchmark (string-append name ":" s1 ":" s2) count (lambda () (setup-boyer) (test-boyer alist term (hide count input))) (lambda (rewrites) (if (number? rewrites) (= rewrites output) #f)))))) "nboyer")) (number->string input))) (number->string count))) (read))) (read))) (read)))) (define alist (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b)))))) (define term (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w)))) (define setup-boyer (lambda args #t)) (define test-boyer (lambda args #t)) ((lambda () (define setup (lambda () (add-lemma-lst (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem)))))))) (define add-lemma-lst (lambda (lst) (if (null? lst) ((lambda () #t)) ((lambda () (add-lemma (car lst)) (add-lemma-lst (cdr lst))))))) (define add-lemma (lambda (term) (if (if (pair? term) (if (eq? (car term) (quote equal)) (pair? (cadr term)) #f) #f) ((lambda () (put (car (cadr term)) (quote lemmas) (cons (translate-term term) (get (car (cadr term)) (quote lemmas)))))) ((lambda () (error #f "ADD-LEMMA did not like term: " term)))))) (define translate-term (lambda (term) (if (not (pair? term)) ((lambda () term)) ((lambda () (cons (symbol->symbol-record (car term)) (translate-args (cdr term)))))))) (define translate-args (lambda (lst) (if (null? lst) ((lambda () (quote ()))) ((lambda () (cons (translate-term (car lst)) (translate-args (cdr lst)))))))) (define untranslate-term (lambda (term) (if (not (pair? term)) ((lambda () term)) ((lambda () (cons (get-name (car term)) (map untranslate-term (cdr term)))))))) (define put (lambda (sym property value) (put-lemmas! (symbol->symbol-record sym) value))) (define get (lambda (sym property) (get-lemmas (symbol->symbol-record sym)))) (define symbol->symbol-record (lambda (sym) ((lambda (x) (if x (cdr x) ((lambda (r) (set! *symbol-records-alist* (cons (cons sym r) *symbol-records-alist*)) r) (make-symbol-record sym)))) (assq sym *symbol-records-alist*)))) (define *symbol-records-alist* (quote ())) (define make-symbol-record (lambda (sym) (vector sym (quote ())))) (define put-lemmas! (lambda (symbol-record lemmas) (vector-set! symbol-record 1 lemmas))) (define get-lemmas (lambda (symbol-record) (vector-ref symbol-record 1))) (define get-name (lambda (symbol-record) (vector-ref symbol-record 0))) (define symbol-record-equal? (lambda (r1 r2) (eq? r1 r2))) (define test (lambda (alist term n) ((lambda (term) (tautp term)) (apply-subst (translate-alist alist) (translate-term ((lambda (term n) ((lambda (lp) (set! lp (lambda (term n) (if (zero? n) term (lp (list (quote or) term (quote (f))) (- n 1))))) (lp term n)) #f)) term n)))))) (define translate-alist (lambda (alist) (if (null? alist) ((lambda () (quote ()))) ((lambda () (cons (cons (caar alist) (translate-term (cdar alist))) (translate-alist (cdr alist)))))))) (define apply-subst (lambda (alist term) (if (not (pair? term)) ((lambda () ((lambda (temp-temp) (if temp-temp (cdr temp-temp) term)) (assq term alist)))) ((lambda () (cons (car term) (apply-subst-lst alist (cdr term)))))))) (define apply-subst-lst (lambda (alist lst) (if (null? lst) ((lambda () (quote ()))) ((lambda () (cons (apply-subst alist (car lst)) (apply-subst-lst alist (cdr lst)))))))) (define tautp (lambda (x) (tautologyp (rewrite x) (quote ()) (quote ())))) (define tautologyp (lambda (x true-lst false-lst) (if (truep x true-lst) ((lambda () #t)) (if (falsep x false-lst) ((lambda () #f)) (if (not (pair? x)) ((lambda () #f)) (if (eq? (car x) if-constructor) ((lambda () (if (truep (cadr x) true-lst) ((lambda () (tautologyp (caddr x) true-lst false-lst))) (if (falsep (cadr x) false-lst) ((lambda () (tautologyp (cadddr x) true-lst false-lst))) ((lambda () (if (tautologyp (caddr x) (cons (cadr x) true-lst) false-lst) (tautologyp (cadddr x) true-lst (cons (cadr x) false-lst)) #f))))))) ((lambda () #f)))))))) (define if-constructor (quote *)) (define rewrite-count 0) (define rewrite (lambda (term) (set! rewrite-count (+ rewrite-count 1)) (if (not (pair? term)) ((lambda () term)) ((lambda () (rewrite-with-lemmas (cons (car term) (rewrite-args (cdr term))) (get-lemmas (car term)))))))) (define rewrite-args (lambda (lst) (if (null? lst) ((lambda () (quote ()))) ((lambda () (cons (rewrite (car lst)) (rewrite-args (cdr lst)))))))) (define rewrite-with-lemmas (lambda (term lst) (if (null? lst) ((lambda () term)) (if (one-way-unify term (cadr (car lst))) ((lambda () (rewrite (apply-subst unify-subst (caddr (car lst)))))) ((lambda () (rewrite-with-lemmas term (cdr lst)))))))) (define unify-subst (quote *)) (define one-way-unify (lambda (term1 term2) (set! unify-subst (quote ())) (one-way-unify1 term1 term2))) (define one-way-unify1 (lambda (term1 term2) (if (not (pair? term2)) ((lambda () ((lambda (temp-temp) (if temp-temp ((lambda () (term-equal? term1 (cdr temp-temp)))) (if (number? term2) ((lambda () (equal? term1 term2))) ((lambda () (set! unify-subst (cons (cons term2 term1) unify-subst)) #t))))) (assq term2 unify-subst)))) (if (not (pair? term1)) ((lambda () #f)) (if (eq? (car term1) (car term2)) ((lambda () (one-way-unify1-lst (cdr term1) (cdr term2)))) ((lambda () #f))))))) (define one-way-unify1-lst (lambda (lst1 lst2) (if (null? lst1) ((lambda () (null? lst2))) (if (null? lst2) ((lambda () #f)) (if (one-way-unify1 (car lst1) (car lst2)) ((lambda () (one-way-unify1-lst (cdr lst1) (cdr lst2)))) ((lambda () #f))))))) (define falsep (lambda (x lst) ((lambda (tmp) (if tmp tmp (term-member? x lst))) (term-equal? x false-term)))) (define truep (lambda (x lst) ((lambda (tmp) (if tmp tmp (term-member? x lst))) (term-equal? x true-term)))) (define false-term (quote *)) (define true-term (quote *)) (define trans-of-implies (lambda (n) (translate-term (list (quote implies) (trans-of-implies1 n) (list (quote implies) 0 n))))) (define trans-of-implies1 (lambda (n) (if (equal? n 1) ((lambda () (list (quote implies) 0 1))) ((lambda () (list (quote and) (list (quote implies) (- n 1) n) (trans-of-implies1 (- n 1)))))))) (define term-equal? (lambda (x y) (if (pair? x) ((lambda () (if (pair? y) (if (symbol-record-equal? (car x) (car y)) (term-args-equal? (cdr x) (cdr y)) #f) #f))) ((lambda () (equal? x y)))))) (define term-args-equal? (lambda (lst1 lst2) (if (null? lst1) ((lambda () (null? lst2))) (if (null? lst2) ((lambda () #f)) (if (term-equal? (car lst1) (car lst2)) ((lambda () (term-args-equal? (cdr lst1) (cdr lst2)))) ((lambda () #f))))))) (define term-member? (lambda (x lst) (if (null? lst) ((lambda () #f)) (if (term-equal? x (car lst)) ((lambda () #t)) ((lambda () (term-member? x (cdr lst)))))))) (set! setup-boyer (lambda () (set! *symbol-records-alist* (quote ())) (set! if-constructor (symbol->symbol-record (quote if))) (set! false-term (translate-term (quote (f)))) (set! true-term (translate-term (quote (t)))) (setup))) (set! test-boyer (lambda (alist term n) (set! rewrite-count 0) ((lambda (answer) (if answer rewrite-count #f)) (test alist term n)))))) (define hide (lambda (r x) (call-with-values (lambda () (values (vector values (lambda (x) x)) (if (< r 100) 0 1))) (lambda (v i) ((vector-ref v i) x))))) (define run-r7rs-benchmark (lambda (name count thunk ok?) (define rounded (lambda (x) (/ (round (* 1000 x)) 1000))) (display "Running ") (display name) (newline) (flush-output-port) ((lambda (j/s) ((lambda (t0) ((lambda (j0) ((lambda () ((lambda (i result) ((lambda (loop) (set! loop (lambda (i result) (if (< i count) ((lambda () (loop (+ i 1) (thunk)))) (if (ok? result) ((lambda () ((lambda (j1) ((lambda (t1) ((lambda (jifs) ((lambda (secs) ((lambda (secs2) ((lambda () (display "Elapsed time: ") (write secs) (display " seconds (") (write secs2) (display ") for ") (display name) (newline)))) (rounded (- t1 t0)))) (inexact (/ jifs j/s)))) (- j1 j0))) (current-second))) (current-jiffy)) result)) ((lambda () (display "ERROR: returned incorrect result: ") (write result) (newline) result)))))) (loop i result)) #f)) 0 (if #f #f #f))))) (current-jiffy))) (current-second))) (jiffies-per-second)))) (main)) */ -/* -"---------------- after processing globals" */ -/* -((define main (lambda () ((lambda (count) ((lambda (input) ((lambda (output) ((lambda (s2) ((lambda (s1) ((lambda (name) ((lambda () (run-r7rs-benchmark (string-append name ":" s1 ":" s2) count (lambda () (setup-boyer) (test-boyer alist term (hide count input))) (lambda (rewrites) (if (number? rewrites) (= rewrites output) #f)))))) "nboyer")) (number->string input))) (number->string count))) (read))) (read))) (read)))) (define alist #f) (define term #f) (define setup-boyer (lambda args #t)) (define test-boyer (lambda args #t)) (define hide (lambda (r x) (call-with-values (lambda () (values (vector values (lambda (x) x)) (if (< r 100) 0 1))) (lambda (v i) ((vector-ref v i) x))))) (define run-r7rs-benchmark (lambda (name count thunk ok?) (define rounded (lambda (x) (/ (round (* 1000 x)) 1000))) (display "Running ") (display name) (newline) (flush-output-port) ((lambda (j/s) ((lambda (t0) ((lambda (j0) ((lambda () ((lambda (i result) ((lambda (loop) (set! loop (lambda (i result) (if (< i count) ((lambda () (loop (+ i 1) (thunk)))) (if (ok? result) ((lambda () ((lambda (j1) ((lambda (t1) ((lambda (jifs) ((lambda (secs) ((lambda (secs2) ((lambda () (display "Elapsed time: ") (write secs) (display " seconds (") (write secs2) (display ") for ") (display name) (newline)))) (rounded (- t1 t0)))) (inexact (/ jifs j/s)))) (- j1 j0))) (current-second))) (current-jiffy)) result)) ((lambda () (display "ERROR: returned incorrect result: ") (write result) (newline) result)))))) (loop i result)) #f)) 0 (if #f #f #f))))) (current-jiffy))) (current-second))) (jiffies-per-second)))) ((lambda () 0 (set! alist (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b)))))) (set! term (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w)))) ((lambda () (define setup (lambda () (add-lemma-lst (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem)))))))) (define add-lemma-lst (lambda (lst) (if (null? lst) ((lambda () #t)) ((lambda () (add-lemma (car lst)) (add-lemma-lst (cdr lst))))))) (define add-lemma (lambda (term) (if (if (pair? term) (if (eq? (car term) (quote equal)) (pair? (cadr term)) #f) #f) ((lambda () (put (car (cadr term)) (quote lemmas) (cons (translate-term term) (get (car (cadr term)) (quote lemmas)))))) ((lambda () (error #f "ADD-LEMMA did not like term: " term)))))) (define translate-term (lambda (term) (if (not (pair? term)) ((lambda () term)) ((lambda () (cons (symbol->symbol-record (car term)) (translate-args (cdr term)))))))) (define translate-args (lambda (lst) (if (null? lst) ((lambda () (quote ()))) ((lambda () (cons (translate-term (car lst)) (translate-args (cdr lst)))))))) (define untranslate-term (lambda (term) (if (not (pair? term)) ((lambda () term)) ((lambda () (cons (get-name (car term)) (map untranslate-term (cdr term)))))))) (define put (lambda (sym property value) (put-lemmas! (symbol->symbol-record sym) value))) (define get (lambda (sym property) (get-lemmas (symbol->symbol-record sym)))) (define symbol->symbol-record (lambda (sym) ((lambda (x) (if x (cdr x) ((lambda (r) (set! *symbol-records-alist* (cons (cons sym r) *symbol-records-alist*)) r) (make-symbol-record sym)))) (assq sym *symbol-records-alist*)))) (define *symbol-records-alist* (quote ())) (define make-symbol-record (lambda (sym) (vector sym (quote ())))) (define put-lemmas! (lambda (symbol-record lemmas) (vector-set! symbol-record 1 lemmas))) (define get-lemmas (lambda (symbol-record) (vector-ref symbol-record 1))) (define get-name (lambda (symbol-record) (vector-ref symbol-record 0))) (define symbol-record-equal? (lambda (r1 r2) (eq? r1 r2))) (define test (lambda (alist term n) ((lambda (term) (tautp term)) (apply-subst (translate-alist alist) (translate-term ((lambda (term n) ((lambda (lp) (set! lp (lambda (term n) (if (zero? n) term (lp (list (quote or) term (quote (f))) (- n 1))))) (lp term n)) #f)) term n)))))) (define translate-alist (lambda (alist) (if (null? alist) ((lambda () (quote ()))) ((lambda () (cons (cons (caar alist) (translate-term (cdar alist))) (translate-alist (cdr alist)))))))) (define apply-subst (lambda (alist term) (if (not (pair? term)) ((lambda () ((lambda (temp-temp) (if temp-temp (cdr temp-temp) term)) (assq term alist)))) ((lambda () (cons (car term) (apply-subst-lst alist (cdr term)))))))) (define apply-subst-lst (lambda (alist lst) (if (null? lst) ((lambda () (quote ()))) ((lambda () (cons (apply-subst alist (car lst)) (apply-subst-lst alist (cdr lst)))))))) (define tautp (lambda (x) (tautologyp (rewrite x) (quote ()) (quote ())))) (define tautologyp (lambda (x true-lst false-lst) (if (truep x true-lst) ((lambda () #t)) (if (falsep x false-lst) ((lambda () #f)) (if (not (pair? x)) ((lambda () #f)) (if (eq? (car x) if-constructor) ((lambda () (if (truep (cadr x) true-lst) ((lambda () (tautologyp (caddr x) true-lst false-lst))) (if (falsep (cadr x) false-lst) ((lambda () (tautologyp (cadddr x) true-lst false-lst))) ((lambda () (if (tautologyp (caddr x) (cons (cadr x) true-lst) false-lst) (tautologyp (cadddr x) true-lst (cons (cadr x) false-lst)) #f))))))) ((lambda () #f)))))))) (define if-constructor (quote *)) (define rewrite-count 0) (define rewrite (lambda (term) (set! rewrite-count (+ rewrite-count 1)) (if (not (pair? term)) ((lambda () term)) ((lambda () (rewrite-with-lemmas (cons (car term) (rewrite-args (cdr term))) (get-lemmas (car term)))))))) (define rewrite-args (lambda (lst) (if (null? lst) ((lambda () (quote ()))) ((lambda () (cons (rewrite (car lst)) (rewrite-args (cdr lst)))))))) (define rewrite-with-lemmas (lambda (term lst) (if (null? lst) ((lambda () term)) (if (one-way-unify term (cadr (car lst))) ((lambda () (rewrite (apply-subst unify-subst (caddr (car lst)))))) ((lambda () (rewrite-with-lemmas term (cdr lst)))))))) (define unify-subst (quote *)) (define one-way-unify (lambda (term1 term2) (set! unify-subst (quote ())) (one-way-unify1 term1 term2))) (define one-way-unify1 (lambda (term1 term2) (if (not (pair? term2)) ((lambda () ((lambda (temp-temp) (if temp-temp ((lambda () (term-equal? term1 (cdr temp-temp)))) (if (number? term2) ((lambda () (equal? term1 term2))) ((lambda () (set! unify-subst (cons (cons term2 term1) unify-subst)) #t))))) (assq term2 unify-subst)))) (if (not (pair? term1)) ((lambda () #f)) (if (eq? (car term1) (car term2)) ((lambda () (one-way-unify1-lst (cdr term1) (cdr term2)))) ((lambda () #f))))))) (define one-way-unify1-lst (lambda (lst1 lst2) (if (null? lst1) ((lambda () (null? lst2))) (if (null? lst2) ((lambda () #f)) (if (one-way-unify1 (car lst1) (car lst2)) ((lambda () (one-way-unify1-lst (cdr lst1) (cdr lst2)))) ((lambda () #f))))))) (define falsep (lambda (x lst) ((lambda (tmp) (if tmp tmp (term-member? x lst))) (term-equal? x false-term)))) (define truep (lambda (x lst) ((lambda (tmp) (if tmp tmp (term-member? x lst))) (term-equal? x true-term)))) (define false-term (quote *)) (define true-term (quote *)) (define trans-of-implies (lambda (n) (translate-term (list (quote implies) (trans-of-implies1 n) (list (quote implies) 0 n))))) (define trans-of-implies1 (lambda (n) (if (equal? n 1) ((lambda () (list (quote implies) 0 1))) ((lambda () (list (quote and) (list (quote implies) (- n 1) n) (trans-of-implies1 (- n 1)))))))) (define term-equal? (lambda (x y) (if (pair? x) ((lambda () (if (pair? y) (if (symbol-record-equal? (car x) (car y)) (term-args-equal? (cdr x) (cdr y)) #f) #f))) ((lambda () (equal? x y)))))) (define term-args-equal? (lambda (lst1 lst2) (if (null? lst1) ((lambda () (null? lst2))) (if (null? lst2) ((lambda () #f)) (if (term-equal? (car lst1) (car lst2)) ((lambda () (term-args-equal? (cdr lst1) (cdr lst2)))) ((lambda () #f))))))) (define term-member? (lambda (x lst) (if (null? lst) ((lambda () #f)) (if (term-equal? x (car lst)) ((lambda () #t)) ((lambda () (term-member? x (cdr lst)))))))) (set! setup-boyer (lambda () (set! *symbol-records-alist* (quote ())) (set! if-constructor (symbol->symbol-record (quote if))) (set! false-term (translate-term (quote (f)))) (set! true-term (translate-term (quote (t)))) (setup))) (set! test-boyer (lambda (alist term n) (set! rewrite-count 0) ((lambda (answer) (if answer rewrite-count #f)) (test alist term n)))))) (main)))) */ -/* -"---------------- after alpha conversion:" */ -/* -((define main (lambda () ((lambda (count$254) ((lambda (input$255) ((lambda (output$256) ((lambda (s2$257) ((lambda (s1$258) ((lambda (name$259) ((lambda () (run-r7rs-benchmark (string-append name$259 ":" s1$258 ":" s2$257) count$254 (lambda () (setup-boyer) (test-boyer alist term (hide count$254 input$255))) (lambda (rewrites$260) (if (number? rewrites$260) (= rewrites$260 output$256) #f)))))) "nboyer")) (number->string input$255))) (number->string count$254))) (read))) (read))) (read)))) (define alist #f) (define term #f) (define setup-boyer (lambda args$253 #t)) (define test-boyer (lambda args$252 #t)) (define hide (lambda (r$248 x$247) (call-with-values (lambda () (values (vector values (lambda (x$251) x$251)) (if (< r$248 100) 0 1))) (lambda (v$250 i$249) ((vector-ref v$250 i$249) x$247))))) (define run-r7rs-benchmark (lambda (name$229 count$228 thunk$227 ok?$226) ((lambda (rounded$231) ((lambda (rounded$232) (set! rounded$231 (lambda (x$246) (/ (round (* 1000 x$246)) 1000))) (display "Running ") (display name$229) (newline) (flush-output-port) ((lambda (j/s$233) ((lambda (t0$234) ((lambda (j0$235) ((lambda () ((lambda (i$237 result$236) ((lambda (loop$238) (set! loop$238 (lambda (i$240 result$239) (if (< i$240 count$228) ((lambda () (loop$238 (+ i$240 1) (thunk$227)))) (if (ok?$226 result$239) ((lambda () ((lambda (j1$241) ((lambda (t1$242) ((lambda (jifs$243) ((lambda (secs$244) ((lambda (secs2$245) ((lambda () (display "Elapsed time: ") (write secs$244) (display " seconds (") (write secs2$245) (display ") for ") (display name$229) (newline)))) (rounded$231 (- t1$242 t0$234)))) (inexact (/ jifs$243 j/s$233)))) (- j1$241 j0$235))) (current-second))) (current-jiffy)) result$239)) ((lambda () (display "ERROR: returned incorrect result: ") (write result$239) (newline) result$239)))))) (loop$238 i$237 result$236)) #f)) 0 (if #f #f #f))))) (current-jiffy))) (current-second))) (jiffies-per-second))) #f)) #f))) ((lambda (*symbol-records-alist*$118 add-lemma$117 add-lemma-lst$116 apply-subst$115 apply-subst-lst$114 false-term$113 falsep$112 get$111 get-lemmas$110 get-name$109 if-constructor$108 make-symbol-record$107 one-way-unify$106 one-way-unify1$105 one-way-unify1-lst$104 put$103 put-lemmas!$102 rewrite$101 rewrite-args$100 rewrite-count$99 rewrite-with-lemmas$98 setup$97 symbol->symbol-record$96 symbol-record-equal?$95 tautologyp$94 tautp$93 term-args-equal?$92 term-equal?$91 term-member?$90 test$89 trans-of-implies$88 trans-of-implies1$87 translate-alist$86 translate-args$85 translate-term$84 true-term$83 truep$82 unify-subst$81 untranslate-term$80) ((lambda () 0 (set! alist (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b)))))) (set! term (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w)))) ((lambda () ((lambda (setup$157 add-lemma-lst$156 add-lemma$155 translate-term$154 translate-args$153 untranslate-term$152 put$151 get$150 symbol->symbol-record$149 *symbol-records-alist*$148 make-symbol-record$147 put-lemmas!$146 get-lemmas$145 get-name$144 symbol-record-equal?$143 test$142 translate-alist$141 apply-subst$140 apply-subst-lst$139 tautp$138 tautologyp$137 if-constructor$136 rewrite-count$135 rewrite$134 rewrite-args$133 rewrite-with-lemmas$132 unify-subst$131 one-way-unify$130 one-way-unify1$129 one-way-unify1-lst$128 falsep$127 truep$126 false-term$125 true-term$124 trans-of-implies$123 trans-of-implies1$122 term-equal?$121 term-args-equal?$120 term-member?$119) (set! setup$157 (lambda () (add-lemma-lst$156 (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem)))))))) (set! add-lemma-lst$156 (lambda (lst$225) (if (null? lst$225) ((lambda () #t)) ((lambda () (add-lemma$155 (car lst$225)) (add-lemma-lst$156 (cdr lst$225))))))) (set! add-lemma$155 (lambda (term$224) (if (if (pair? term$224) (if (eq? (car term$224) (quote equal)) (pair? (cadr term$224)) #f) #f) ((lambda () (put$151 (car (cadr term$224)) (quote lemmas) (cons (translate-term$154 term$224) (get$150 (car (cadr term$224)) (quote lemmas)))))) ((lambda () (error #f "ADD-LEMMA did not like term: " term$224)))))) (set! translate-term$154 (lambda (term$223) (if (pair? term$223) ((lambda () (cons (symbol->symbol-record$149 (car term$223)) (translate-args$153 (cdr term$223))))) ((lambda () term$223))))) (set! translate-args$153 (lambda (lst$222) (if (null? lst$222) ((lambda () (quote ()))) ((lambda () (cons (translate-term$154 (car lst$222)) (translate-args$153 (cdr lst$222)))))))) (set! untranslate-term$152 (lambda (term$221) (if (pair? term$221) ((lambda () (cons (get-name$144 (car term$221)) (map untranslate-term$152 (cdr term$221))))) ((lambda () term$221))))) (set! put$151 (lambda (sym$220 property$219 value$218) (put-lemmas!$146 (symbol->symbol-record$149 sym$220) value$218))) (set! get$150 (lambda (sym$217 property$216) (get-lemmas$145 (symbol->symbol-record$149 sym$217)))) (set! symbol->symbol-record$149 (lambda (sym$213) ((lambda (x$214) (if x$214 (cdr x$214) ((lambda (r$215) (set! *symbol-records-alist*$148 (cons (cons sym$213 r$215) *symbol-records-alist*$148)) r$215) (make-symbol-record$147 sym$213)))) (assq sym$213 *symbol-records-alist*$148)))) (set! *symbol-records-alist*$148 (quote ())) (set! make-symbol-record$147 (lambda (sym$212) (vector sym$212 (quote ())))) (set! put-lemmas!$146 (lambda (symbol-record$211 lemmas$210) (vector-set! symbol-record$211 1 lemmas$210))) (set! get-lemmas$145 (lambda (symbol-record$209) (vector-ref symbol-record$209 1))) (set! get-name$144 (lambda (symbol-record$208) (vector-ref symbol-record$208 0))) (set! symbol-record-equal?$143 (lambda (r1$207 r2$206) (eq? r1$207 r2$206))) (set! test$142 (lambda (alist$199 term$198 n$197) ((lambda (term$205) (tautp$138 term$205)) (apply-subst$140 (translate-alist$141 alist$199) (translate-term$154 ((lambda (term$201 n$200) ((lambda (lp$202) (set! lp$202 (lambda (term$204 n$203) (if (zero? n$203) term$204 (lp$202 (list (quote or) term$204 (quote (f))) (- n$203 1))))) (lp$202 term$201 n$200)) #f)) term$198 n$197)))))) (set! translate-alist$141 (lambda (alist$196) (if (null? alist$196) ((lambda () (quote ()))) ((lambda () (cons (cons (caar alist$196) (translate-term$154 (cdar alist$196))) (translate-alist$141 (cdr alist$196)))))))) (set! apply-subst$140 (lambda (alist$194 term$193) (if (pair? term$193) ((lambda () (cons (car term$193) (apply-subst-lst$139 alist$194 (cdr term$193))))) ((lambda () ((lambda (temp-temp$195) (if temp-temp$195 (cdr temp-temp$195) term$193)) (assq term$193 alist$194))))))) (set! apply-subst-lst$139 (lambda (alist$192 lst$191) (if (null? lst$191) ((lambda () (quote ()))) ((lambda () (cons (apply-subst$140 alist$192 (car lst$191)) (apply-subst-lst$139 alist$192 (cdr lst$191)))))))) (set! tautp$138 (lambda (x$190) (tautologyp$137 (rewrite$134 x$190) (quote ()) (quote ())))) (set! tautologyp$137 (lambda (x$189 true-lst$188 false-lst$187) (if (truep$126 x$189 true-lst$188) ((lambda () #t)) (if (falsep$127 x$189 false-lst$187) ((lambda () #f)) (if (pair? x$189) (if (eq? (car x$189) if-constructor$136) ((lambda () (if (truep$126 (cadr x$189) true-lst$188) ((lambda () (tautologyp$137 (caddr x$189) true-lst$188 false-lst$187))) (if (falsep$127 (cadr x$189) false-lst$187) ((lambda () (tautologyp$137 (cadddr x$189) true-lst$188 false-lst$187))) ((lambda () (if (tautologyp$137 (caddr x$189) (cons (cadr x$189) true-lst$188) false-lst$187) (tautologyp$137 (cadddr x$189) true-lst$188 (cons (cadr x$189) false-lst$187)) #f))))))) ((lambda () #f))) ((lambda () #f))))))) (set! if-constructor$136 (quote *)) (set! rewrite-count$135 0) (set! rewrite$134 (lambda (term$186) (set! rewrite-count$135 (+ rewrite-count$135 1)) (if (pair? term$186) ((lambda () (rewrite-with-lemmas$132 (cons (car term$186) (rewrite-args$133 (cdr term$186))) (get-lemmas$145 (car term$186))))) ((lambda () term$186))))) (set! rewrite-args$133 (lambda (lst$185) (if (null? lst$185) ((lambda () (quote ()))) ((lambda () (cons (rewrite$134 (car lst$185)) (rewrite-args$133 (cdr lst$185)))))))) (set! rewrite-with-lemmas$132 (lambda (term$184 lst$183) (if (null? lst$183) ((lambda () term$184)) (if (one-way-unify$130 term$184 (cadr (car lst$183))) ((lambda () (rewrite$134 (apply-subst$140 unify-subst$131 (caddr (car lst$183)))))) ((lambda () (rewrite-with-lemmas$132 term$184 (cdr lst$183)))))))) (set! unify-subst$131 (quote *)) (set! one-way-unify$130 (lambda (term1$182 term2$181) (set! unify-subst$131 (quote ())) (one-way-unify1$129 term1$182 term2$181))) (set! one-way-unify1$129 (lambda (term1$179 term2$178) (if (pair? term2$178) (if (pair? term1$179) (if (eq? (car term1$179) (car term2$178)) ((lambda () (one-way-unify1-lst$128 (cdr term1$179) (cdr term2$178)))) ((lambda () #f))) ((lambda () #f))) ((lambda () ((lambda (temp-temp$180) (if temp-temp$180 ((lambda () (term-equal?$121 term1$179 (cdr temp-temp$180)))) (if (number? term2$178) ((lambda () (equal? term1$179 term2$178))) ((lambda () (set! unify-subst$131 (cons (cons term2$178 term1$179) unify-subst$131)) #t))))) (assq term2$178 unify-subst$131))))))) (set! one-way-unify1-lst$128 (lambda (lst1$177 lst2$176) (if (null? lst1$177) ((lambda () (null? lst2$176))) (if (null? lst2$176) ((lambda () #f)) (if (one-way-unify1$129 (car lst1$177) (car lst2$176)) ((lambda () (one-way-unify1-lst$128 (cdr lst1$177) (cdr lst2$176)))) ((lambda () #f))))))) (set! falsep$127 (lambda (x$174 lst$173) ((lambda (tmp$175) (if tmp$175 tmp$175 (term-member?$119 x$174 lst$173))) (term-equal?$121 x$174 false-term$125)))) (set! truep$126 (lambda (x$171 lst$170) ((lambda (tmp$172) (if tmp$172 tmp$172 (term-member?$119 x$171 lst$170))) (term-equal?$121 x$171 true-term$124)))) (set! false-term$125 (quote *)) (set! true-term$124 (quote *)) (set! trans-of-implies$123 (lambda (n$169) (translate-term$154 (list (quote implies) (trans-of-implies1$122 n$169) (list (quote implies) 0 n$169))))) (set! trans-of-implies1$122 (lambda (n$168) (if (equal? n$168 1) ((lambda () (list (quote implies) 0 1))) ((lambda () (list (quote and) (list (quote implies) (- n$168 1) n$168) (trans-of-implies1$122 (- n$168 1)))))))) (set! term-equal?$121 (lambda (x$167 y$166) (if (pair? x$167) ((lambda () (if (pair? y$166) (if (symbol-record-equal?$143 (car x$167) (car y$166)) (term-args-equal?$120 (cdr x$167) (cdr y$166)) #f) #f))) ((lambda () (equal? x$167 y$166)))))) (set! term-args-equal?$120 (lambda (lst1$165 lst2$164) (if (null? lst1$165) ((lambda () (null? lst2$164))) (if (null? lst2$164) ((lambda () #f)) (if (term-equal?$121 (car lst1$165) (car lst2$164)) ((lambda () (term-args-equal?$120 (cdr lst1$165) (cdr lst2$164)))) ((lambda () #f))))))) (set! term-member?$119 (lambda (x$163 lst$162) (if (null? lst$162) ((lambda () #f)) (if (term-equal?$121 x$163 (car lst$162)) ((lambda () #t)) ((lambda () (term-member?$119 x$163 (cdr lst$162)))))))) (set! setup-boyer (lambda () (set! *symbol-records-alist*$148 (quote ())) (set! if-constructor$136 (symbol->symbol-record$149 (quote if))) (set! false-term$125 (translate-term$154 (quote (f)))) (set! true-term$124 (translate-term$154 (quote (t)))) (setup$157))) (set! test-boyer (lambda (alist$160 term$159 n$158) (set! rewrite-count$135 0) ((lambda (answer$161) (if answer$161 rewrite-count$135 #f)) (test$142 alist$160 term$159 n$158))))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f))) (main)))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)) */ -/* -"---------------- after CPS:" */ -/* -((define main (lambda (k$633) (read (lambda (r$634) ((lambda (count$254) (read (lambda (r$635) ((lambda (input$255) (read (lambda (r$636) ((lambda (output$256) ((lambda (r$637) ((lambda (s2$257) ((lambda (r$638) ((lambda (s1$258) ((lambda (name$259) ((lambda () ((lambda (r$639) ((lambda (r$640) ((lambda (r$641) (run-r7rs-benchmark k$633 r$639 count$254 r$640 r$641)) (lambda (k$642 rewrites$260) ((lambda (r$643) (if r$643 (k$642 (= rewrites$260 output$256)) (k$642 #f))) (number? rewrites$260))))) (lambda (k$644) (setup-boyer (lambda (r$645) (hide (lambda (r$646) (test-boyer k$644 alist term r$646)) count$254 input$255)))))) (string-append name$259 ":" s1$258 ":" s2$257))))) "nboyer")) r$638)) (number->string input$255))) r$637)) (number->string count$254))) r$636)))) r$635)))) r$634))))) (define alist #f) (define term #f) (define setup-boyer (lambda (k$626 . args$253) (k$626 #t))) (define test-boyer (lambda (k$623 . args$252) (k$623 #t))) (define hide (lambda (k$609 r$248 x$247) ((lambda (r$610) ((lambda (r$611) (call-with-values k$609 r$610 r$611)) (lambda (k$612 v$250 i$249) ((lambda (r$613) (r$613 k$612 x$247)) (vector-ref v$250 i$249))))) (lambda (k$614) ((lambda (r$619) (vector (lambda (r$615) ((lambda (k$617) ((lambda (r$618) (if r$618 (k$617 0) (k$617 1))) (< r$248 100))) (lambda (r$616) (values k$614 r$615 r$616)))) values r$619)) (lambda (k$620 x$251) (k$620 x$251))))))) (define run-r7rs-benchmark (lambda (k$568 name$229 count$228 thunk$227 ok?$226) ((lambda (rounded$231) ((lambda (rounded$232) ((lambda (r$603) ((lambda (r$569) (display (lambda (r$570) (display (lambda (r$571) (newline (lambda (r$572) (flush-output-port (lambda (r$573) (jiffies-per-second (lambda (r$574) ((lambda (j/s$233) (current-second (lambda (r$575) ((lambda (t0$234) (current-jiffy (lambda (r$576) ((lambda (j0$235) ((lambda () ((lambda (k$602) (if #f (k$602 #f) (k$602 #f))) (lambda (r$577) ((lambda (i$237 result$236) ((lambda (loop$238) ((lambda (r$579) ((lambda (r$578) (loop$238 k$568 i$237 result$236)) (set! loop$238 r$579))) (lambda (k$580 i$240 result$239) ((lambda (r$581) (if r$581 ((lambda () ((lambda (r$582) (thunk$227 (lambda (r$583) (loop$238 k$580 r$582 r$583)))) (+ i$240 1)))) (ok?$226 (lambda (r$584) (if r$584 ((lambda () (current-jiffy (lambda (r$586) ((lambda (j1$241) (current-second (lambda (r$587) ((lambda (t1$242) ((lambda (r$588) ((lambda (jifs$243) ((lambda (r$598) (inexact (lambda (r$589) ((lambda (secs$244) ((lambda (r$597) (rounded$231 (lambda (r$590) ((lambda (secs2$245) ((lambda () (display (lambda (r$591) (write (lambda (r$592) (display (lambda (r$593) (write (lambda (r$594) (display (lambda (r$595) (display (lambda (r$596) (newline (lambda (r$585) (k$580 result$239)))) name$229)) ") for ")) secs2$245)) " seconds (")) secs$244)) "Elapsed time: ")))) r$590)) r$597)) (- t1$242 t0$234))) r$589)) r$598)) (/ jifs$243 j/s$233))) r$588)) (- j1$241 j0$235))) r$587)))) r$586))))) ((lambda () (display (lambda (r$599) (write (lambda (r$600) (newline (lambda (r$601) (k$580 result$239)))) result$239)) "ERROR: returned incorrect result: "))))) result$239))) (< i$240 count$228))))) #f)) 0 r$577)))))) r$576)))) r$575)))) r$574)))))))) name$229)) "Running ")) (set! rounded$231 r$603))) (lambda (k$604 x$246) ((lambda (r$606) (round (lambda (r$605) (k$604 (/ r$605 1000))) r$606)) (* 1000 x$246))))) #f)) #f))) ((lambda (*symbol-records-alist*$118 add-lemma$117 add-lemma-lst$116 apply-subst$115 apply-subst-lst$114 false-term$113 falsep$112 get$111 get-lemmas$110 get-name$109 if-constructor$108 make-symbol-record$107 one-way-unify$106 one-way-unify1$105 one-way-unify1-lst$104 put$103 put-lemmas!$102 rewrite$101 rewrite-args$100 rewrite-count$99 rewrite-with-lemmas$98 setup$97 symbol->symbol-record$96 symbol-record-equal?$95 tautologyp$94 tautp$93 term-args-equal?$92 term-equal?$91 term-member?$90 test$89 trans-of-implies$88 trans-of-implies1$87 translate-alist$86 translate-args$85 translate-term$84 true-term$83 truep$82 unify-subst$81 untranslate-term$80) ((lambda () ((lambda (r$261) ((lambda (r$565) ((lambda (r$262) ((lambda (r$564) ((lambda (r$263) ((lambda () ((lambda (setup$157 add-lemma-lst$156 add-lemma$155 translate-term$154 translate-args$153 untranslate-term$152 put$151 get$150 symbol->symbol-record$149 *symbol-records-alist*$148 make-symbol-record$147 put-lemmas!$146 get-lemmas$145 get-name$144 symbol-record-equal?$143 test$142 translate-alist$141 apply-subst$140 apply-subst-lst$139 tautp$138 tautologyp$137 if-constructor$136 rewrite-count$135 rewrite$134 rewrite-args$133 rewrite-with-lemmas$132 unify-subst$131 one-way-unify$130 one-way-unify1$129 one-way-unify1-lst$128 falsep$127 truep$126 false-term$125 true-term$124 trans-of-implies$123 trans-of-implies1$122 term-equal?$121 term-args-equal?$120 term-member?$119) ((lambda (r$561) ((lambda (r$265) ((lambda (r$555) ((lambda (r$266) ((lambda (r$537) ((lambda (r$267) ((lambda (r$530) ((lambda (r$268) ((lambda (r$523) ((lambda (r$269) ((lambda (r$516) ((lambda (r$270) ((lambda (r$513) ((lambda (r$271) ((lambda (r$510) ((lambda (r$272) ((lambda (r$503) ((lambda (r$273) ((lambda (r$502) ((lambda (r$274) ((lambda (r$499) ((lambda (r$275) ((lambda (r$497) ((lambda (r$276) ((lambda (r$495) ((lambda (r$277) ((lambda (r$493) ((lambda (r$278) ((lambda (r$491) ((lambda (r$279) ((lambda (r$477) ((lambda (r$280) ((lambda (r$468) ((lambda (r$281) ((lambda (r$461) ((lambda (r$282) ((lambda (r$454) ((lambda (r$283) ((lambda (r$449) ((lambda (r$284) ((lambda (r$429) ((lambda (r$285) ((lambda (r$428) ((lambda (r$286) ((lambda (r$287) ((lambda (r$417) ((lambda (r$288) ((lambda (r$410) ((lambda (r$289) ((lambda (r$400) ((lambda (r$290) ((lambda (r$399) ((lambda (r$291) ((lambda (r$395) ((lambda (r$292) ((lambda (r$380) ((lambda (r$293) ((lambda (r$371) ((lambda (r$294) ((lambda (r$368) ((lambda (r$295) ((lambda (r$365) ((lambda (r$296) ((lambda (r$364) ((lambda (r$297) ((lambda (r$363) ((lambda (r$298) ((lambda (r$356) ((lambda (r$299) ((lambda (r$346) ((lambda (r$300) ((lambda (r$337) ((lambda (r$301) ((lambda (r$328) ((lambda (r$302) ((lambda (r$322) ((lambda (r$303) ((lambda (r$309) ((lambda (r$304) ((lambda (r$305) ((lambda (r$264) (main %halt)) (set! test-boyer r$305))) (lambda (k$306 alist$160 term$159 n$158) ((lambda (r$307) (test$142 (lambda (r$308) ((lambda (answer$161) (if answer$161 (k$306 rewrite-count$135) (k$306 #f))) r$308)) alist$160 term$159 n$158)) (set! rewrite-count$135 0))))) (set! setup-boyer r$309))) (lambda (k$310) ((lambda (r$321) ((lambda (r$311) ((lambda (r$320) (symbol->symbol-record$149 (lambda (r$319) ((lambda (r$312) ((lambda (r$318) (translate-term$154 (lambda (r$317) ((lambda (r$313) ((lambda (r$316) (translate-term$154 (lambda (r$315) ((lambda (r$314) (setup$157 k$310)) (set! true-term$124 r$315))) r$316)) (quote (t)))) (set! false-term$125 r$317))) r$318)) (quote (f)))) (set! if-constructor$136 r$319))) r$320)) (quote if))) (set! *symbol-records-alist*$148 r$321))) (quote ()))))) (set! term-member?$119 r$322))) (lambda (k$323 x$163 lst$162) ((lambda (r$324) (if r$324 ((lambda () (k$323 #f))) ((lambda (r$327) (term-equal?$121 (lambda (r$325) (if r$325 ((lambda () (k$323 #t))) ((lambda () ((lambda (r$326) (term-member?$119 k$323 x$163 r$326)) (cdr lst$162)))))) x$163 r$327)) (car lst$162)))) (null? lst$162))))) (set! term-args-equal?$120 r$328))) (lambda (k$329 lst1$165 lst2$164) ((lambda (r$330) (if r$330 ((lambda () (k$329 (null? lst2$164)))) ((lambda (r$331) (if r$331 ((lambda () (k$329 #f))) ((lambda (r$335) ((lambda (r$336) (term-equal?$121 (lambda (r$332) (if r$332 ((lambda () ((lambda (r$333) ((lambda (r$334) (term-args-equal?$120 k$329 r$333 r$334)) (cdr lst2$164))) (cdr lst1$165)))) ((lambda () (k$329 #f))))) r$335 r$336)) (car lst2$164))) (car lst1$165)))) (null? lst2$164)))) (null? lst1$165))))) (set! term-equal?$121 r$337))) (lambda (k$338 x$167 y$166) ((lambda (r$339) (if r$339 ((lambda () ((lambda (r$340) (if r$340 ((lambda (r$344) ((lambda (r$345) (symbol-record-equal?$143 (lambda (r$341) (if r$341 ((lambda (r$342) ((lambda (r$343) (term-args-equal?$120 k$338 r$342 r$343)) (cdr y$166))) (cdr x$167)) (k$338 #f))) r$344 r$345)) (car y$166))) (car x$167)) (k$338 #f))) (pair? y$166)))) ((lambda () (k$338 (equal? x$167 y$166)))))) (pair? x$167))))) (set! trans-of-implies1$122 r$346))) (lambda (k$347 n$168) ((lambda (r$348) (if r$348 ((lambda () ((lambda (r$349) (list k$347 r$349 0 1)) (quote implies)))) ((lambda () ((lambda (r$350) ((lambda (r$354) ((lambda (r$355) (list (lambda (r$351) ((lambda (r$353) (trans-of-implies1$122 (lambda (r$352) (list k$347 r$350 r$351 r$352)) r$353)) (- n$168 1))) r$354 r$355 n$168)) (- n$168 1))) (quote implies))) (quote and)))))) (equal? n$168 1))))) (set! trans-of-implies$123 r$356))) (lambda (k$357 n$169) ((lambda (r$359) (trans-of-implies1$122 (lambda (r$360) ((lambda (r$362) (list (lambda (r$361) (list (lambda (r$358) (translate-term$154 k$357 r$358)) r$359 r$360 r$361)) r$362 0 n$169)) (quote implies))) n$169)) (quote implies))))) (set! true-term$124 r$363))) (quote *))) (set! false-term$125 r$364))) (quote *))) (set! truep$126 r$365))) (lambda (k$366 x$171 lst$170) (term-equal?$121 (lambda (r$367) ((lambda (tmp$172) (if tmp$172 (k$366 tmp$172) (term-member?$119 k$366 x$171 lst$170))) r$367)) x$171 true-term$124)))) (set! falsep$127 r$368))) (lambda (k$369 x$174 lst$173) (term-equal?$121 (lambda (r$370) ((lambda (tmp$175) (if tmp$175 (k$369 tmp$175) (term-member?$119 k$369 x$174 lst$173))) r$370)) x$174 false-term$125)))) (set! one-way-unify1-lst$128 r$371))) (lambda (k$372 lst1$177 lst2$176) ((lambda (r$373) (if r$373 ((lambda () (k$372 (null? lst2$176)))) ((lambda (r$374) (if r$374 ((lambda () (k$372 #f))) ((lambda (r$378) ((lambda (r$379) (one-way-unify1$129 (lambda (r$375) (if r$375 ((lambda () ((lambda (r$376) ((lambda (r$377) (one-way-unify1-lst$128 k$372 r$376 r$377)) (cdr lst2$176))) (cdr lst1$177)))) ((lambda () (k$372 #f))))) r$378 r$379)) (car lst2$176))) (car lst1$177)))) (null? lst2$176)))) (null? lst1$177))))) (set! one-way-unify1$129 r$380))) (lambda (k$381 term1$179 term2$178) ((lambda (r$382) (if r$382 ((lambda (r$383) (if r$383 ((lambda (r$387) ((lambda (r$388) ((lambda (r$384) (if r$384 ((lambda () ((lambda (r$385) ((lambda (r$386) (one-way-unify1-lst$128 k$381 r$385 r$386)) (cdr term2$178))) (cdr term1$179)))) ((lambda () (k$381 #f))))) (eq? r$387 r$388))) (car term2$178))) (car term1$179)) ((lambda () (k$381 #f))))) (pair? term1$179)) ((lambda () ((lambda (r$389) ((lambda (temp-temp$180) (if temp-temp$180 ((lambda () ((lambda (r$390) (term-equal?$121 k$381 term1$179 r$390)) (cdr temp-temp$180)))) ((lambda (r$391) (if r$391 ((lambda () (k$381 (equal? term1$179 term2$178)))) ((lambda () ((lambda (r$394) ((lambda (r$393) ((lambda (r$392) (k$381 #t)) (set! unify-subst$131 r$393))) (cons r$394 unify-subst$131))) (cons term2$178 term1$179)))))) (number? term2$178)))) r$389)) (assq term2$178 unify-subst$131)))))) (pair? term2$178))))) (set! one-way-unify$130 r$395))) (lambda (k$396 term1$182 term2$181) ((lambda (r$398) ((lambda (r$397) (one-way-unify1$129 k$396 term1$182 term2$181)) (set! unify-subst$131 r$398))) (quote ()))))) (set! unify-subst$131 r$399))) (quote *))) (set! rewrite-with-lemmas$132 r$400))) (lambda (k$401 term$184 lst$183) ((lambda (r$402) (if r$402 ((lambda () (k$401 term$184))) ((lambda (r$409) ((lambda (r$408) (one-way-unify$130 (lambda (r$403) (if r$403 ((lambda () ((lambda (r$406) ((lambda (r$405) (apply-subst$140 (lambda (r$404) (rewrite$134 k$401 r$404)) unify-subst$131 r$405)) (caddr r$406))) (car lst$183)))) ((lambda () ((lambda (r$407) (rewrite-with-lemmas$132 k$401 term$184 r$407)) (cdr lst$183)))))) term$184 r$408)) (cadr r$409))) (car lst$183)))) (null? lst$183))))) (set! rewrite-args$133 r$410))) (lambda (k$411 lst$185) ((lambda (r$412) (if r$412 ((lambda () (k$411 (quote ())))) ((lambda () ((lambda (r$416) (rewrite$134 (lambda (r$413) ((lambda (r$415) (rewrite-args$133 (lambda (r$414) (k$411 (cons r$413 r$414))) r$415)) (cdr lst$185))) r$416)) (car lst$185)))))) (null? lst$185))))) (set! rewrite$134 r$417))) (lambda (k$418 term$186) ((lambda (r$427) ((lambda (r$419) ((lambda (r$420) (if r$420 ((lambda () ((lambda (r$424) ((lambda (r$426) (rewrite-args$133 (lambda (r$425) ((lambda (r$421) ((lambda (r$423) (get-lemmas$145 (lambda (r$422) (rewrite-with-lemmas$132 k$418 r$421 r$422)) r$423)) (car term$186))) (cons r$424 r$425))) r$426)) (cdr term$186))) (car term$186)))) ((lambda () (k$418 term$186))))) (pair? term$186))) (set! rewrite-count$135 r$427))) (+ rewrite-count$135 1))))) (set! rewrite-count$135 0))) (set! if-constructor$136 r$428))) (quote *))) (set! tautologyp$137 r$429))) (lambda (k$430 x$189 true-lst$188 false-lst$187) (truep$126 (lambda (r$431) (if r$431 ((lambda () (k$430 #t))) (falsep$127 (lambda (r$432) (if r$432 ((lambda () (k$430 #f))) ((lambda (r$433) (if r$433 ((lambda (r$448) ((lambda (r$434) (if r$434 ((lambda () ((lambda (r$447) (truep$126 (lambda (r$435) (if r$435 ((lambda () ((lambda (r$436) (tautologyp$137 k$430 r$436 true-lst$188 false-lst$187)) (caddr x$189)))) ((lambda (r$446) (falsep$127 (lambda (r$437) (if r$437 ((lambda () ((lambda (r$438) (tautologyp$137 k$430 r$438 true-lst$188 false-lst$187)) (cadddr x$189)))) ((lambda () ((lambda (r$443) ((lambda (r$445) ((lambda (r$444) (tautologyp$137 (lambda (r$439) (if r$439 ((lambda (r$440) ((lambda (r$442) ((lambda (r$441) (tautologyp$137 k$430 r$440 true-lst$188 r$441)) (cons r$442 false-lst$187))) (cadr x$189))) (cadddr x$189)) (k$430 #f))) r$443 r$444 false-lst$187)) (cons r$445 true-lst$188))) (cadr x$189))) (caddr x$189)))))) r$446 false-lst$187)) (cadr x$189)))) r$447 true-lst$188)) (cadr x$189)))) ((lambda () (k$430 #f))))) (eq? r$448 if-constructor$136))) (car x$189)) ((lambda () (k$430 #f))))) (pair? x$189)))) x$189 false-lst$187))) x$189 true-lst$188)))) (set! tautp$138 r$449))) (lambda (k$450 x$190) (rewrite$134 (lambda (r$451) ((lambda (r$452) ((lambda (r$453) (tautologyp$137 k$450 r$451 r$452 r$453)) (quote ()))) (quote ()))) x$190)))) (set! apply-subst-lst$139 r$454))) (lambda (k$455 alist$192 lst$191) ((lambda (r$456) (if r$456 ((lambda () (k$455 (quote ())))) ((lambda () ((lambda (r$460) (apply-subst$140 (lambda (r$457) ((lambda (r$459) (apply-subst-lst$139 (lambda (r$458) (k$455 (cons r$457 r$458))) alist$192 r$459)) (cdr lst$191))) alist$192 r$460)) (car lst$191)))))) (null? lst$191))))) (set! apply-subst$140 r$461))) (lambda (k$462 alist$194 term$193) ((lambda (r$463) (if r$463 ((lambda () ((lambda (r$464) ((lambda (r$466) (apply-subst-lst$139 (lambda (r$465) (k$462 (cons r$464 r$465))) alist$194 r$466)) (cdr term$193))) (car term$193)))) ((lambda () ((lambda (r$467) ((lambda (temp-temp$195) (if temp-temp$195 (k$462 (cdr temp-temp$195)) (k$462 term$193))) r$467)) (assq term$193 alist$194)))))) (pair? term$193))))) (set! translate-alist$141 r$468))) (lambda (k$469 alist$196) ((lambda (r$470) (if r$470 ((lambda () (k$469 (quote ())))) ((lambda () ((lambda (r$474) ((lambda (r$476) (translate-term$154 (lambda (r$475) ((lambda (r$471) ((lambda (r$473) (translate-alist$141 (lambda (r$472) (k$469 (cons r$471 r$472))) r$473)) (cdr alist$196))) (cons r$474 r$475))) r$476)) (cdar alist$196))) (caar alist$196)))))) (null? alist$196))))) (set! test$142 r$477))) (lambda (k$478 alist$199 term$198 n$197) (translate-alist$141 (lambda (r$480) ((lambda (term$201 n$200) ((lambda (lp$202) ((lambda (r$484) ((lambda (r$483) (lp$202 (lambda (r$482) (translate-term$154 (lambda (r$481) (apply-subst$140 (lambda (r$479) ((lambda (term$205) (tautp$138 k$478 term$205)) r$479)) r$480 r$481)) r$482)) term$201 n$200)) (set! lp$202 r$484))) (lambda (k$485 term$204 n$203) (zero? (lambda (r$486) (if r$486 (k$485 term$204) ((lambda (r$489) ((lambda (r$490) (list (lambda (r$487) ((lambda (r$488) (lp$202 k$485 r$487 r$488)) (- n$203 1))) r$489 term$204 r$490)) (quote (f)))) (quote or)))) n$203)))) #f)) term$198 n$197)) alist$199)))) (set! symbol-record-equal?$143 r$491))) (lambda (k$492 r1$207 r2$206) (k$492 (eq? r1$207 r2$206))))) (set! get-name$144 r$493))) (lambda (k$494 symbol-record$208) (k$494 (vector-ref symbol-record$208 0))))) (set! get-lemmas$145 r$495))) (lambda (k$496 symbol-record$209) (k$496 (vector-ref symbol-record$209 1))))) (set! put-lemmas!$146 r$497))) (lambda (k$498 symbol-record$211 lemmas$210) (k$498 (vector-set! symbol-record$211 1 lemmas$210))))) (set! make-symbol-record$147 r$499))) (lambda (k$500 sym$212) ((lambda (r$501) (vector k$500 sym$212 r$501)) (quote ()))))) (set! *symbol-records-alist*$148 r$502))) (quote ()))) (set! symbol->symbol-record$149 r$503))) (lambda (k$504 sym$213) ((lambda (r$505) ((lambda (x$214) (if x$214 (k$504 (cdr x$214)) (make-symbol-record$147 (lambda (r$506) ((lambda (r$215) ((lambda (r$509) ((lambda (r$508) ((lambda (r$507) (k$504 r$215)) (set! *symbol-records-alist*$148 r$508))) (cons r$509 *symbol-records-alist*$148))) (cons sym$213 r$215))) r$506)) sym$213))) r$505)) (assq sym$213 *symbol-records-alist*$148))))) (set! get$150 r$510))) (lambda (k$511 sym$217 property$216) (symbol->symbol-record$149 (lambda (r$512) (get-lemmas$145 k$511 r$512)) sym$217)))) (set! put$151 r$513))) (lambda (k$514 sym$220 property$219 value$218) (symbol->symbol-record$149 (lambda (r$515) (put-lemmas!$146 k$514 r$515 value$218)) sym$220)))) (set! untranslate-term$152 r$516))) (lambda (k$517 term$221) ((lambda (r$518) (if r$518 ((lambda () ((lambda (r$522) (get-name$144 (lambda (r$519) ((lambda (r$521) (map (lambda (r$520) (k$517 (cons r$519 r$520))) untranslate-term$152 r$521)) (cdr term$221))) r$522)) (car term$221)))) ((lambda () (k$517 term$221))))) (pair? term$221))))) (set! translate-args$153 r$523))) (lambda (k$524 lst$222) ((lambda (r$525) (if r$525 ((lambda () (k$524 (quote ())))) ((lambda () ((lambda (r$529) (translate-term$154 (lambda (r$526) ((lambda (r$528) (translate-args$153 (lambda (r$527) (k$524 (cons r$526 r$527))) r$528)) (cdr lst$222))) r$529)) (car lst$222)))))) (null? lst$222))))) (set! translate-term$154 r$530))) (lambda (k$531 term$223) ((lambda (r$532) (if r$532 ((lambda () ((lambda (r$536) (symbol->symbol-record$149 (lambda (r$533) ((lambda (r$535) (translate-args$153 (lambda (r$534) (k$531 (cons r$533 r$534))) r$535)) (cdr term$223))) r$536)) (car term$223)))) ((lambda () (k$531 term$223))))) (pair? term$223))))) (set! add-lemma$155 r$537))) (lambda (k$538 term$224) ((lambda (k$549) ((lambda (r$550) (if r$550 ((lambda (r$553) ((lambda (r$554) ((lambda (r$551) (if r$551 ((lambda (r$552) (k$549 (pair? r$552))) (cadr term$224)) (k$549 #f))) (eq? r$553 r$554))) (quote equal))) (car term$224)) (k$549 #f))) (pair? term$224))) (lambda (r$539) (if r$539 ((lambda () ((lambda (r$548) ((lambda (r$540) ((lambda (r$541) (translate-term$154 (lambda (r$543) ((lambda (r$547) ((lambda (r$545) ((lambda (r$546) (get$150 (lambda (r$544) ((lambda (r$542) (put$151 k$538 r$540 r$541 r$542)) (cons r$543 r$544))) r$545 r$546)) (quote lemmas))) (car r$547))) (cadr term$224))) term$224)) (quote lemmas))) (car r$548))) (cadr term$224)))) ((lambda () (error k$538 #f "ADD-LEMMA did not like term: " term$224))))))))) (set! add-lemma-lst$156 r$555))) (lambda (k$556 lst$225) ((lambda (r$557) (if r$557 ((lambda () (k$556 #t))) ((lambda () ((lambda (r$560) (add-lemma$155 (lambda (r$558) ((lambda (r$559) (add-lemma-lst$156 k$556 r$559)) (cdr lst$225))) r$560)) (car lst$225)))))) (null? lst$225))))) (set! setup$157 r$561))) (lambda (k$562) ((lambda (r$563) (add-lemma-lst$156 k$562 r$563)) (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem))))))))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)))) (set! term r$564))) (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w))))) (set! alist r$565))) (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b))))))) 0)))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)) */ -/* -"---------------- after cps optimizations:" */ -/* -((define main (lambda (k$633) (read (lambda (count$254) (read (lambda (input$255) (read (lambda (output$256) ((lambda (s2$257) ((lambda (s1$258) ((lambda (name$259) ((lambda () ((lambda (r$639) ((lambda (r$640) ((lambda (r$641) (run-r7rs-benchmark k$633 r$639 count$254 r$640 r$641)) (lambda (k$642 rewrites$260) ((lambda (r$643) (if r$643 (k$642 (= rewrites$260 output$256)) (k$642 #f))) (number? rewrites$260))))) (lambda (k$644) (setup-boyer (lambda (r$645) (hide (lambda (r$646) (test-boyer k$644 alist term r$646)) count$254 input$255)))))) (string-append name$259 ":" s1$258 ":" s2$257))))) "nboyer")) (number->string input$255))) (number->string count$254)))))))))) (define alist #f) (define term #f) (define setup-boyer (lambda (k$626 . args$253) (k$626 #t))) (define test-boyer (lambda (k$623 . args$252) (k$623 #t))) (define hide (lambda (k$609 r$248 x$247) ((lambda (r$610) ((lambda (r$611) (call-with-values k$609 r$610 r$611)) (lambda (k$612 v$250 i$249) ((lambda (r$613) (r$613 k$612 x$247)) (vector-ref v$250 i$249))))) (lambda (k$614) ((lambda (r$619) (vector (lambda (r$615) ((lambda (k$617) ((lambda (r$618) (if r$618 (k$617 0) (k$617 1))) (< r$248 100))) (lambda (r$616) (values k$614 r$615 r$616)))) values r$619)) (lambda (k$620 x$251) (k$620 x$251))))))) (define run-r7rs-benchmark (lambda (k$568 name$229 count$228 thunk$227 ok?$226) ((lambda (rounded$231) ((lambda (rounded$232) ((lambda (r$603) ((lambda (r$569) (display (lambda (r$570) (display (lambda (r$571) (newline (lambda (r$572) (flush-output-port (lambda (r$573) (jiffies-per-second (lambda (j/s$233) (current-second (lambda (t0$234) (current-jiffy (lambda (j0$235) ((lambda () ((lambda (k$602) (if #f (k$602 #f) (k$602 #f))) (lambda (r$577) ((lambda (i$237 result$236) ((lambda (loop$238) ((lambda (r$579) ((lambda (r$578) (loop$238 k$568 i$237 result$236)) (set! loop$238 r$579))) (lambda (k$580 i$240 result$239) ((lambda (r$581) (if r$581 ((lambda () ((lambda (r$582) (thunk$227 (lambda (r$583) (loop$238 k$580 r$582 r$583)))) (+ i$240 1)))) (ok?$226 (lambda (r$584) (if r$584 ((lambda () (current-jiffy (lambda (j1$241) (current-second (lambda (t1$242) ((lambda (jifs$243) ((lambda (r$598) (inexact (lambda (secs$244) ((lambda (r$597) (rounded$231 (lambda (secs2$245) ((lambda () (display (lambda (r$591) (write (lambda (r$592) (display (lambda (r$593) (write (lambda (r$594) (display (lambda (r$595) (display (lambda (r$596) (newline (lambda (r$585) (k$580 result$239)))) name$229)) ") for ")) secs2$245)) " seconds (")) secs$244)) "Elapsed time: ")))) r$597)) (- t1$242 t0$234))) r$598)) (/ jifs$243 j/s$233))) (- j1$241 j0$235)))))))) ((lambda () (display (lambda (r$599) (write (lambda (r$600) (newline (lambda (r$601) (k$580 result$239)))) result$239)) "ERROR: returned incorrect result: "))))) result$239))) (< i$240 count$228))))) #f)) 0 r$577)))))))))))))))) name$229)) "Running ")) (set! rounded$231 r$603))) (lambda (k$604 x$246) ((lambda (r$606) (round (lambda (r$605) (k$604 (/ r$605 1000))) r$606)) (* 1000 x$246))))) #f)) #f))) ((lambda (*symbol-records-alist*$118 add-lemma$117 add-lemma-lst$116 apply-subst$115 apply-subst-lst$114 false-term$113 falsep$112 get$111 get-lemmas$110 get-name$109 if-constructor$108 make-symbol-record$107 one-way-unify$106 one-way-unify1$105 one-way-unify1-lst$104 put$103 put-lemmas!$102 rewrite$101 rewrite-args$100 rewrite-count$99 rewrite-with-lemmas$98 setup$97 symbol->symbol-record$96 symbol-record-equal?$95 tautologyp$94 tautp$93 term-args-equal?$92 term-equal?$91 term-member?$90 test$89 trans-of-implies$88 trans-of-implies1$87 translate-alist$86 translate-args$85 translate-term$84 true-term$83 truep$82 unify-subst$81 untranslate-term$80) ((lambda () ((lambda (r$261) ((lambda (r$565) ((lambda (r$262) ((lambda (r$564) ((lambda (r$263) ((lambda () ((lambda (setup$157 add-lemma-lst$156 add-lemma$155 translate-term$154 translate-args$153 untranslate-term$152 put$151 get$150 symbol->symbol-record$149 *symbol-records-alist*$148 make-symbol-record$147 put-lemmas!$146 get-lemmas$145 get-name$144 symbol-record-equal?$143 test$142 translate-alist$141 apply-subst$140 apply-subst-lst$139 tautp$138 tautologyp$137 if-constructor$136 rewrite-count$135 rewrite$134 rewrite-args$133 rewrite-with-lemmas$132 unify-subst$131 one-way-unify$130 one-way-unify1$129 one-way-unify1-lst$128 falsep$127 truep$126 false-term$125 true-term$124 trans-of-implies$123 trans-of-implies1$122 term-equal?$121 term-args-equal?$120 term-member?$119) ((lambda (r$561) ((lambda (r$265) ((lambda (r$555) ((lambda (r$266) ((lambda (r$537) ((lambda (r$267) ((lambda (r$530) ((lambda (r$268) ((lambda (r$523) ((lambda (r$269) ((lambda (r$516) ((lambda (r$270) ((lambda (r$513) ((lambda (r$271) ((lambda (r$510) ((lambda (r$272) ((lambda (r$503) ((lambda (r$273) ((lambda (r$502) ((lambda (r$274) ((lambda (r$499) ((lambda (r$275) ((lambda (r$497) ((lambda (r$276) ((lambda (r$495) ((lambda (r$277) ((lambda (r$493) ((lambda (r$278) ((lambda (r$491) ((lambda (r$279) ((lambda (r$477) ((lambda (r$280) ((lambda (r$468) ((lambda (r$281) ((lambda (r$461) ((lambda (r$282) ((lambda (r$454) ((lambda (r$283) ((lambda (r$449) ((lambda (r$284) ((lambda (r$429) ((lambda (r$285) ((lambda (r$428) ((lambda (r$286) ((lambda (r$287) ((lambda (r$417) ((lambda (r$288) ((lambda (r$410) ((lambda (r$289) ((lambda (r$400) ((lambda (r$290) ((lambda (r$399) ((lambda (r$291) ((lambda (r$395) ((lambda (r$292) ((lambda (r$380) ((lambda (r$293) ((lambda (r$371) ((lambda (r$294) ((lambda (r$368) ((lambda (r$295) ((lambda (r$365) ((lambda (r$296) ((lambda (r$364) ((lambda (r$297) ((lambda (r$363) ((lambda (r$298) ((lambda (r$356) ((lambda (r$299) ((lambda (r$346) ((lambda (r$300) ((lambda (r$337) ((lambda (r$301) ((lambda (r$328) ((lambda (r$302) ((lambda (r$322) ((lambda (r$303) ((lambda (r$309) ((lambda (r$304) ((lambda (r$305) ((lambda (r$264) (main %halt)) (set! test-boyer r$305))) (lambda (k$306 alist$160 term$159 n$158) ((lambda (r$307) (test$142 (lambda (answer$161) (if answer$161 (k$306 rewrite-count$135) (k$306 #f))) alist$160 term$159 n$158)) (set! rewrite-count$135 0))))) (set! setup-boyer r$309))) (lambda (k$310) ((lambda (r$321) ((lambda (r$311) ((lambda (r$320) (symbol->symbol-record$149 (lambda (r$319) ((lambda (r$312) ((lambda (r$318) (translate-term$154 (lambda (r$317) ((lambda (r$313) ((lambda (r$316) (translate-term$154 (lambda (r$315) ((lambda (r$314) (setup$157 k$310)) (set! true-term$124 r$315))) r$316)) (quote (t)))) (set! false-term$125 r$317))) r$318)) (quote (f)))) (set! if-constructor$136 r$319))) r$320)) (quote if))) (set! *symbol-records-alist*$148 r$321))) (quote ()))))) (set! term-member?$119 r$322))) (lambda (k$323 x$163 lst$162) ((lambda (r$324) (if r$324 ((lambda () (k$323 #f))) ((lambda (r$327) (term-equal?$121 (lambda (r$325) (if r$325 ((lambda () (k$323 #t))) ((lambda () ((lambda (r$326) (term-member?$119 k$323 x$163 r$326)) (cdr lst$162)))))) x$163 r$327)) (car lst$162)))) (null? lst$162))))) (set! term-args-equal?$120 r$328))) (lambda (k$329 lst1$165 lst2$164) ((lambda (r$330) (if r$330 ((lambda () (k$329 (null? lst2$164)))) ((lambda (r$331) (if r$331 ((lambda () (k$329 #f))) ((lambda (r$335) ((lambda (r$336) (term-equal?$121 (lambda (r$332) (if r$332 ((lambda () ((lambda (r$333) ((lambda (r$334) (term-args-equal?$120 k$329 r$333 r$334)) (cdr lst2$164))) (cdr lst1$165)))) ((lambda () (k$329 #f))))) r$335 r$336)) (car lst2$164))) (car lst1$165)))) (null? lst2$164)))) (null? lst1$165))))) (set! term-equal?$121 r$337))) (lambda (k$338 x$167 y$166) ((lambda (r$339) (if r$339 ((lambda () ((lambda (r$340) (if r$340 ((lambda (r$344) ((lambda (r$345) (symbol-record-equal?$143 (lambda (r$341) (if r$341 ((lambda (r$342) ((lambda (r$343) (term-args-equal?$120 k$338 r$342 r$343)) (cdr y$166))) (cdr x$167)) (k$338 #f))) r$344 r$345)) (car y$166))) (car x$167)) (k$338 #f))) (pair? y$166)))) ((lambda () (k$338 (equal? x$167 y$166)))))) (pair? x$167))))) (set! trans-of-implies1$122 r$346))) (lambda (k$347 n$168) ((lambda (r$348) (if r$348 ((lambda () ((lambda (r$349) (list k$347 r$349 0 1)) (quote implies)))) ((lambda () ((lambda (r$350) ((lambda (r$354) ((lambda (r$355) (list (lambda (r$351) ((lambda (r$353) (trans-of-implies1$122 (lambda (r$352) (list k$347 r$350 r$351 r$352)) r$353)) (- n$168 1))) r$354 r$355 n$168)) (- n$168 1))) (quote implies))) (quote and)))))) (equal? n$168 1))))) (set! trans-of-implies$123 r$356))) (lambda (k$357 n$169) ((lambda (r$359) (trans-of-implies1$122 (lambda (r$360) ((lambda (r$362) (list (lambda (r$361) (list (lambda (r$358) (translate-term$154 k$357 r$358)) r$359 r$360 r$361)) r$362 0 n$169)) (quote implies))) n$169)) (quote implies))))) (set! true-term$124 r$363))) (quote *))) (set! false-term$125 r$364))) (quote *))) (set! truep$126 r$365))) (lambda (k$366 x$171 lst$170) (term-equal?$121 (lambda (tmp$172) (if tmp$172 (k$366 tmp$172) (term-member?$119 k$366 x$171 lst$170))) x$171 true-term$124)))) (set! falsep$127 r$368))) (lambda (k$369 x$174 lst$173) (term-equal?$121 (lambda (tmp$175) (if tmp$175 (k$369 tmp$175) (term-member?$119 k$369 x$174 lst$173))) x$174 false-term$125)))) (set! one-way-unify1-lst$128 r$371))) (lambda (k$372 lst1$177 lst2$176) ((lambda (r$373) (if r$373 ((lambda () (k$372 (null? lst2$176)))) ((lambda (r$374) (if r$374 ((lambda () (k$372 #f))) ((lambda (r$378) ((lambda (r$379) (one-way-unify1$129 (lambda (r$375) (if r$375 ((lambda () ((lambda (r$376) ((lambda (r$377) (one-way-unify1-lst$128 k$372 r$376 r$377)) (cdr lst2$176))) (cdr lst1$177)))) ((lambda () (k$372 #f))))) r$378 r$379)) (car lst2$176))) (car lst1$177)))) (null? lst2$176)))) (null? lst1$177))))) (set! one-way-unify1$129 r$380))) (lambda (k$381 term1$179 term2$178) ((lambda (r$382) (if r$382 ((lambda (r$383) (if r$383 ((lambda (r$387) ((lambda (r$388) ((lambda (r$384) (if r$384 ((lambda () ((lambda (r$385) ((lambda (r$386) (one-way-unify1-lst$128 k$381 r$385 r$386)) (cdr term2$178))) (cdr term1$179)))) ((lambda () (k$381 #f))))) (eq? r$387 r$388))) (car term2$178))) (car term1$179)) ((lambda () (k$381 #f))))) (pair? term1$179)) ((lambda () ((lambda (temp-temp$180) (if temp-temp$180 ((lambda () ((lambda (r$390) (term-equal?$121 k$381 term1$179 r$390)) (cdr temp-temp$180)))) ((lambda (r$391) (if r$391 ((lambda () (k$381 (equal? term1$179 term2$178)))) ((lambda () ((lambda (r$394) ((lambda (r$393) ((lambda (r$392) (k$381 #t)) (set! unify-subst$131 r$393))) (cons r$394 unify-subst$131))) (cons term2$178 term1$179)))))) (number? term2$178)))) (assq term2$178 unify-subst$131)))))) (pair? term2$178))))) (set! one-way-unify$130 r$395))) (lambda (k$396 term1$182 term2$181) ((lambda (r$398) ((lambda (r$397) (one-way-unify1$129 k$396 term1$182 term2$181)) (set! unify-subst$131 r$398))) (quote ()))))) (set! unify-subst$131 r$399))) (quote *))) (set! rewrite-with-lemmas$132 r$400))) (lambda (k$401 term$184 lst$183) ((lambda (r$402) (if r$402 ((lambda () (k$401 term$184))) ((lambda (r$409) ((lambda (r$408) (one-way-unify$130 (lambda (r$403) (if r$403 ((lambda () ((lambda (r$406) ((lambda (r$405) (apply-subst$140 (lambda (r$404) (rewrite$134 k$401 r$404)) unify-subst$131 r$405)) (caddr r$406))) (car lst$183)))) ((lambda () ((lambda (r$407) (rewrite-with-lemmas$132 k$401 term$184 r$407)) (cdr lst$183)))))) term$184 r$408)) (cadr r$409))) (car lst$183)))) (null? lst$183))))) (set! rewrite-args$133 r$410))) (lambda (k$411 lst$185) ((lambda (r$412) (if r$412 ((lambda () (k$411 (quote ())))) ((lambda () ((lambda (r$416) (rewrite$134 (lambda (r$413) ((lambda (r$415) (rewrite-args$133 (lambda (r$414) (k$411 (cons r$413 r$414))) r$415)) (cdr lst$185))) r$416)) (car lst$185)))))) (null? lst$185))))) (set! rewrite$134 r$417))) (lambda (k$418 term$186) ((lambda (r$427) ((lambda (r$419) ((lambda (r$420) (if r$420 ((lambda () ((lambda (r$424) ((lambda (r$426) (rewrite-args$133 (lambda (r$425) ((lambda (r$421) ((lambda (r$423) (get-lemmas$145 (lambda (r$422) (rewrite-with-lemmas$132 k$418 r$421 r$422)) r$423)) (car term$186))) (cons r$424 r$425))) r$426)) (cdr term$186))) (car term$186)))) ((lambda () (k$418 term$186))))) (pair? term$186))) (set! rewrite-count$135 r$427))) (+ rewrite-count$135 1))))) (set! rewrite-count$135 0))) (set! if-constructor$136 r$428))) (quote *))) (set! tautologyp$137 r$429))) (lambda (k$430 x$189 true-lst$188 false-lst$187) (truep$126 (lambda (r$431) (if r$431 ((lambda () (k$430 #t))) (falsep$127 (lambda (r$432) (if r$432 ((lambda () (k$430 #f))) ((lambda (r$433) (if r$433 ((lambda (r$448) ((lambda (r$434) (if r$434 ((lambda () ((lambda (r$447) (truep$126 (lambda (r$435) (if r$435 ((lambda () ((lambda (r$436) (tautologyp$137 k$430 r$436 true-lst$188 false-lst$187)) (caddr x$189)))) ((lambda (r$446) (falsep$127 (lambda (r$437) (if r$437 ((lambda () ((lambda (r$438) (tautologyp$137 k$430 r$438 true-lst$188 false-lst$187)) (cadddr x$189)))) ((lambda () ((lambda (r$443) ((lambda (r$445) ((lambda (r$444) (tautologyp$137 (lambda (r$439) (if r$439 ((lambda (r$440) ((lambda (r$442) ((lambda (r$441) (tautologyp$137 k$430 r$440 true-lst$188 r$441)) (cons r$442 false-lst$187))) (cadr x$189))) (cadddr x$189)) (k$430 #f))) r$443 r$444 false-lst$187)) (cons r$445 true-lst$188))) (cadr x$189))) (caddr x$189)))))) r$446 false-lst$187)) (cadr x$189)))) r$447 true-lst$188)) (cadr x$189)))) ((lambda () (k$430 #f))))) (eq? r$448 if-constructor$136))) (car x$189)) ((lambda () (k$430 #f))))) (pair? x$189)))) x$189 false-lst$187))) x$189 true-lst$188)))) (set! tautp$138 r$449))) (lambda (k$450 x$190) (rewrite$134 (lambda (r$451) ((lambda (r$452) ((lambda (r$453) (tautologyp$137 k$450 r$451 r$452 r$453)) (quote ()))) (quote ()))) x$190)))) (set! apply-subst-lst$139 r$454))) (lambda (k$455 alist$192 lst$191) ((lambda (r$456) (if r$456 ((lambda () (k$455 (quote ())))) ((lambda () ((lambda (r$460) (apply-subst$140 (lambda (r$457) ((lambda (r$459) (apply-subst-lst$139 (lambda (r$458) (k$455 (cons r$457 r$458))) alist$192 r$459)) (cdr lst$191))) alist$192 r$460)) (car lst$191)))))) (null? lst$191))))) (set! apply-subst$140 r$461))) (lambda (k$462 alist$194 term$193) ((lambda (r$463) (if r$463 ((lambda () ((lambda (r$464) ((lambda (r$466) (apply-subst-lst$139 (lambda (r$465) (k$462 (cons r$464 r$465))) alist$194 r$466)) (cdr term$193))) (car term$193)))) ((lambda () ((lambda (temp-temp$195) (if temp-temp$195 (k$462 (cdr temp-temp$195)) (k$462 term$193))) (assq term$193 alist$194)))))) (pair? term$193))))) (set! translate-alist$141 r$468))) (lambda (k$469 alist$196) ((lambda (r$470) (if r$470 ((lambda () (k$469 (quote ())))) ((lambda () ((lambda (r$474) ((lambda (r$476) (translate-term$154 (lambda (r$475) ((lambda (r$471) ((lambda (r$473) (translate-alist$141 (lambda (r$472) (k$469 (cons r$471 r$472))) r$473)) (cdr alist$196))) (cons r$474 r$475))) r$476)) (cdar alist$196))) (caar alist$196)))))) (null? alist$196))))) (set! test$142 r$477))) (lambda (k$478 alist$199 term$198 n$197) (translate-alist$141 (lambda (r$480) ((lambda (term$201 n$200) ((lambda (lp$202) ((lambda (r$484) ((lambda (r$483) (lp$202 (lambda (r$482) (translate-term$154 (lambda (r$481) (apply-subst$140 (lambda (term$205) (tautp$138 k$478 term$205)) r$480 r$481)) r$482)) term$201 n$200)) (set! lp$202 r$484))) (lambda (k$485 term$204 n$203) (zero? (lambda (r$486) (if r$486 (k$485 term$204) ((lambda (r$489) ((lambda (r$490) (list (lambda (r$487) ((lambda (r$488) (lp$202 k$485 r$487 r$488)) (- n$203 1))) r$489 term$204 r$490)) (quote (f)))) (quote or)))) n$203)))) #f)) term$198 n$197)) alist$199)))) (set! symbol-record-equal?$143 r$491))) (lambda (k$492 r1$207 r2$206) (k$492 (eq? r1$207 r2$206))))) (set! get-name$144 r$493))) (lambda (k$494 symbol-record$208) (k$494 (vector-ref symbol-record$208 0))))) (set! get-lemmas$145 r$495))) (lambda (k$496 symbol-record$209) (k$496 (vector-ref symbol-record$209 1))))) (set! put-lemmas!$146 r$497))) (lambda (k$498 symbol-record$211 lemmas$210) (k$498 (vector-set! symbol-record$211 1 lemmas$210))))) (set! make-symbol-record$147 r$499))) (lambda (k$500 sym$212) ((lambda (r$501) (vector k$500 sym$212 r$501)) (quote ()))))) (set! *symbol-records-alist*$148 r$502))) (quote ()))) (set! symbol->symbol-record$149 r$503))) (lambda (k$504 sym$213) ((lambda (x$214) (if x$214 (k$504 (cdr x$214)) (make-symbol-record$147 (lambda (r$215) ((lambda (r$509) ((lambda (r$508) ((lambda (r$507) (k$504 r$215)) (set! *symbol-records-alist*$148 r$508))) (cons r$509 *symbol-records-alist*$148))) (cons sym$213 r$215))) sym$213))) (assq sym$213 *symbol-records-alist*$148))))) (set! get$150 r$510))) (lambda (k$511 sym$217 property$216) (symbol->symbol-record$149 (lambda (r$512) (get-lemmas$145 k$511 r$512)) sym$217)))) (set! put$151 r$513))) (lambda (k$514 sym$220 property$219 value$218) (symbol->symbol-record$149 (lambda (r$515) (put-lemmas!$146 k$514 r$515 value$218)) sym$220)))) (set! untranslate-term$152 r$516))) (lambda (k$517 term$221) ((lambda (r$518) (if r$518 ((lambda () ((lambda (r$522) (get-name$144 (lambda (r$519) ((lambda (r$521) (map (lambda (r$520) (k$517 (cons r$519 r$520))) untranslate-term$152 r$521)) (cdr term$221))) r$522)) (car term$221)))) ((lambda () (k$517 term$221))))) (pair? term$221))))) (set! translate-args$153 r$523))) (lambda (k$524 lst$222) ((lambda (r$525) (if r$525 ((lambda () (k$524 (quote ())))) ((lambda () ((lambda (r$529) (translate-term$154 (lambda (r$526) ((lambda (r$528) (translate-args$153 (lambda (r$527) (k$524 (cons r$526 r$527))) r$528)) (cdr lst$222))) r$529)) (car lst$222)))))) (null? lst$222))))) (set! translate-term$154 r$530))) (lambda (k$531 term$223) ((lambda (r$532) (if r$532 ((lambda () ((lambda (r$536) (symbol->symbol-record$149 (lambda (r$533) ((lambda (r$535) (translate-args$153 (lambda (r$534) (k$531 (cons r$533 r$534))) r$535)) (cdr term$223))) r$536)) (car term$223)))) ((lambda () (k$531 term$223))))) (pair? term$223))))) (set! add-lemma$155 r$537))) (lambda (k$538 term$224) ((lambda (k$549) ((lambda (r$550) (if r$550 ((lambda (r$553) ((lambda (r$554) ((lambda (r$551) (if r$551 ((lambda (r$552) (k$549 (pair? r$552))) (cadr term$224)) (k$549 #f))) (eq? r$553 r$554))) (quote equal))) (car term$224)) (k$549 #f))) (pair? term$224))) (lambda (r$539) (if r$539 ((lambda () ((lambda (r$548) ((lambda (r$540) ((lambda (r$541) (translate-term$154 (lambda (r$543) ((lambda (r$547) ((lambda (r$545) ((lambda (r$546) (get$150 (lambda (r$544) ((lambda (r$542) (put$151 k$538 r$540 r$541 r$542)) (cons r$543 r$544))) r$545 r$546)) (quote lemmas))) (car r$547))) (cadr term$224))) term$224)) (quote lemmas))) (car r$548))) (cadr term$224)))) ((lambda () (error k$538 #f "ADD-LEMMA did not like term: " term$224))))))))) (set! add-lemma-lst$156 r$555))) (lambda (k$556 lst$225) ((lambda (r$557) (if r$557 ((lambda () (k$556 #t))) ((lambda () ((lambda (r$560) (add-lemma$155 (lambda (r$558) ((lambda (r$559) (add-lemma-lst$156 k$556 r$559)) (cdr lst$225))) r$560)) (car lst$225)))))) (null? lst$225))))) (set! setup$157 r$561))) (lambda (k$562) ((lambda (r$563) (add-lemma-lst$156 k$562 r$563)) (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem))))))))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)))) (set! term r$564))) (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w))))) (set! alist r$565))) (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b))))))) 0)))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)) */ -/* -"---------------- after wrap-mutables:" */ -/* -((define main (lambda (k$633) (read (lambda (count$254) (read (lambda (input$255) (read (lambda (output$256) ((lambda (s2$257) ((lambda (s1$258) ((lambda (name$259) ((lambda () ((lambda (r$639) ((lambda (r$640) ((lambda (r$641) (run-r7rs-benchmark k$633 r$639 count$254 r$640 r$641)) (lambda (k$642 rewrites$260) ((lambda (r$643) (if r$643 (k$642 (= rewrites$260 output$256)) (k$642 #f))) (number? rewrites$260))))) (lambda (k$644) (setup-boyer (lambda (r$645) (hide (lambda (r$646) (test-boyer k$644 alist term r$646)) count$254 input$255)))))) (string-append name$259 ":" s1$258 ":" s2$257))))) "nboyer")) (number->string input$255))) (number->string count$254)))))))))) (define alist #f) (define term #f) (define setup-boyer (lambda (k$626 . args$253) (k$626 #t))) (define test-boyer (lambda (k$623 . args$252) (k$623 #t))) (define hide (lambda (k$609 r$248 x$247) ((lambda (r$610) ((lambda (r$611) (call-with-values k$609 r$610 r$611)) (lambda (k$612 v$250 i$249) ((lambda (r$613) (r$613 k$612 x$247)) (vector-ref v$250 i$249))))) (lambda (k$614) ((lambda (r$619) (vector (lambda (r$615) ((lambda (k$617) ((lambda (r$618) (if r$618 (k$617 0) (k$617 1))) (< r$248 100))) (lambda (r$616) (values k$614 r$615 r$616)))) values r$619)) (lambda (k$620 x$251) (k$620 x$251))))))) (define run-r7rs-benchmark (lambda (k$568 name$229 count$228 thunk$227 ok?$226) ((lambda (rounded$231) ((lambda (rounded$231) ((lambda (rounded$232) ((lambda (r$603) ((lambda (r$569) (display (lambda (r$570) (display (lambda (r$571) (newline (lambda (r$572) (flush-output-port (lambda (r$573) (jiffies-per-second (lambda (j/s$233) (current-second (lambda (t0$234) (current-jiffy (lambda (j0$235) ((lambda () ((lambda (k$602) (if #f (k$602 #f) (k$602 #f))) (lambda (r$577) ((lambda (i$237 result$236) ((lambda (loop$238) ((lambda (loop$238) ((lambda (r$579) ((lambda (r$578) ((cell-get loop$238) k$568 i$237 result$236)) (set-cell! loop$238 r$579))) (lambda (k$580 i$240 result$239) ((lambda (r$581) (if r$581 ((lambda () ((lambda (r$582) (thunk$227 (lambda (r$583) ((cell-get loop$238) k$580 r$582 r$583)))) (+ i$240 1)))) (ok?$226 (lambda (r$584) (if r$584 ((lambda () (current-jiffy (lambda (j1$241) (current-second (lambda (t1$242) ((lambda (jifs$243) ((lambda (r$598) (inexact (lambda (secs$244) ((lambda (r$597) ((cell-get rounded$231) (lambda (secs2$245) ((lambda () (display (lambda (r$591) (write (lambda (r$592) (display (lambda (r$593) (write (lambda (r$594) (display (lambda (r$595) (display (lambda (r$596) (newline (lambda (r$585) (k$580 result$239)))) name$229)) ") for ")) secs2$245)) " seconds (")) secs$244)) "Elapsed time: ")))) r$597)) (- t1$242 t0$234))) r$598)) (/ jifs$243 j/s$233))) (- j1$241 j0$235)))))))) ((lambda () (display (lambda (r$599) (write (lambda (r$600) (newline (lambda (r$601) (k$580 result$239)))) result$239)) "ERROR: returned incorrect result: "))))) result$239))) (< i$240 count$228))))) (cell loop$238))) #f)) 0 r$577)))))))))))))))) name$229)) "Running ")) (set-cell! rounded$231 r$603))) (lambda (k$604 x$246) ((lambda (r$606) (round (lambda (r$605) (k$604 (/ r$605 1000))) r$606)) (* 1000 x$246))))) #f)) (cell rounded$231))) #f))) ((lambda (*symbol-records-alist*$118 add-lemma$117 add-lemma-lst$116 apply-subst$115 apply-subst-lst$114 false-term$113 falsep$112 get$111 get-lemmas$110 get-name$109 if-constructor$108 make-symbol-record$107 one-way-unify$106 one-way-unify1$105 one-way-unify1-lst$104 put$103 put-lemmas!$102 rewrite$101 rewrite-args$100 rewrite-count$99 rewrite-with-lemmas$98 setup$97 symbol->symbol-record$96 symbol-record-equal?$95 tautologyp$94 tautp$93 term-args-equal?$92 term-equal?$91 term-member?$90 test$89 trans-of-implies$88 trans-of-implies1$87 translate-alist$86 translate-args$85 translate-term$84 true-term$83 truep$82 unify-subst$81 untranslate-term$80) ((lambda () ((lambda (r$261) ((lambda (r$565) ((lambda (r$262) ((lambda (r$564) ((lambda (r$263) ((lambda () ((lambda (setup$157 add-lemma-lst$156 add-lemma$155 translate-term$154 translate-args$153 untranslate-term$152 put$151 get$150 symbol->symbol-record$149 *symbol-records-alist*$148 make-symbol-record$147 put-lemmas!$146 get-lemmas$145 get-name$144 symbol-record-equal?$143 test$142 translate-alist$141 apply-subst$140 apply-subst-lst$139 tautp$138 tautologyp$137 if-constructor$136 rewrite-count$135 rewrite$134 rewrite-args$133 rewrite-with-lemmas$132 unify-subst$131 one-way-unify$130 one-way-unify1$129 one-way-unify1-lst$128 falsep$127 truep$126 false-term$125 true-term$124 trans-of-implies$123 trans-of-implies1$122 term-equal?$121 term-args-equal?$120 term-member?$119) ((lambda (setup$157) ((lambda (add-lemma-lst$156) ((lambda (add-lemma$155) ((lambda (translate-term$154) ((lambda (translate-args$153) ((lambda (untranslate-term$152) ((lambda (put$151) ((lambda (get$150) ((lambda (symbol->symbol-record$149) ((lambda (*symbol-records-alist*$148) ((lambda (make-symbol-record$147) ((lambda (put-lemmas!$146) ((lambda (get-lemmas$145) ((lambda (get-name$144) ((lambda (symbol-record-equal?$143) ((lambda (test$142) ((lambda (translate-alist$141) ((lambda (apply-subst$140) ((lambda (apply-subst-lst$139) ((lambda (tautp$138) ((lambda (tautologyp$137) ((lambda (if-constructor$136) ((lambda (rewrite-count$135) ((lambda (rewrite$134) ((lambda (rewrite-args$133) ((lambda (rewrite-with-lemmas$132) ((lambda (unify-subst$131) ((lambda (one-way-unify$130) ((lambda (one-way-unify1$129) ((lambda (one-way-unify1-lst$128) ((lambda (falsep$127) ((lambda (truep$126) ((lambda (false-term$125) ((lambda (true-term$124) ((lambda (trans-of-implies$123) ((lambda (trans-of-implies1$122) ((lambda (term-equal?$121) ((lambda (term-args-equal?$120) ((lambda (term-member?$119) ((lambda (r$561) ((lambda (r$265) ((lambda (r$555) ((lambda (r$266) ((lambda (r$537) ((lambda (r$267) ((lambda (r$530) ((lambda (r$268) ((lambda (r$523) ((lambda (r$269) ((lambda (r$516) ((lambda (r$270) ((lambda (r$513) ((lambda (r$271) ((lambda (r$510) ((lambda (r$272) ((lambda (r$503) ((lambda (r$273) ((lambda (r$502) ((lambda (r$274) ((lambda (r$499) ((lambda (r$275) ((lambda (r$497) ((lambda (r$276) ((lambda (r$495) ((lambda (r$277) ((lambda (r$493) ((lambda (r$278) ((lambda (r$491) ((lambda (r$279) ((lambda (r$477) ((lambda (r$280) ((lambda (r$468) ((lambda (r$281) ((lambda (r$461) ((lambda (r$282) ((lambda (r$454) ((lambda (r$283) ((lambda (r$449) ((lambda (r$284) ((lambda (r$429) ((lambda (r$285) ((lambda (r$428) ((lambda (r$286) ((lambda (r$287) ((lambda (r$417) ((lambda (r$288) ((lambda (r$410) ((lambda (r$289) ((lambda (r$400) ((lambda (r$290) ((lambda (r$399) ((lambda (r$291) ((lambda (r$395) ((lambda (r$292) ((lambda (r$380) ((lambda (r$293) ((lambda (r$371) ((lambda (r$294) ((lambda (r$368) ((lambda (r$295) ((lambda (r$365) ((lambda (r$296) ((lambda (r$364) ((lambda (r$297) ((lambda (r$363) ((lambda (r$298) ((lambda (r$356) ((lambda (r$299) ((lambda (r$346) ((lambda (r$300) ((lambda (r$337) ((lambda (r$301) ((lambda (r$328) ((lambda (r$302) ((lambda (r$322) ((lambda (r$303) ((lambda (r$309) ((lambda (r$304) ((lambda (r$305) ((lambda (r$264) (main %halt)) (set-global! test-boyer r$305))) (lambda (k$306 alist$160 term$159 n$158) ((lambda (r$307) ((cell-get test$142) (lambda (answer$161) (if answer$161 (k$306 (cell-get rewrite-count$135)) (k$306 #f))) alist$160 term$159 n$158)) (set-cell! rewrite-count$135 0))))) (set-global! setup-boyer r$309))) (lambda (k$310) ((lambda (r$321) ((lambda (r$311) ((lambda (r$320) ((cell-get symbol->symbol-record$149) (lambda (r$319) ((lambda (r$312) ((lambda (r$318) ((cell-get translate-term$154) (lambda (r$317) ((lambda (r$313) ((lambda (r$316) ((cell-get translate-term$154) (lambda (r$315) ((lambda (r$314) ((cell-get setup$157) k$310)) (set-cell! true-term$124 r$315))) r$316)) (quote (t)))) (set-cell! false-term$125 r$317))) r$318)) (quote (f)))) (set-cell! if-constructor$136 r$319))) r$320)) (quote if))) (set-cell! *symbol-records-alist*$148 r$321))) (quote ()))))) (set-cell! term-member?$119 r$322))) (lambda (k$323 x$163 lst$162) ((lambda (r$324) (if r$324 ((lambda () (k$323 #f))) ((lambda (r$327) ((cell-get term-equal?$121) (lambda (r$325) (if r$325 ((lambda () (k$323 #t))) ((lambda () ((lambda (r$326) ((cell-get term-member?$119) k$323 x$163 r$326)) (cdr lst$162)))))) x$163 r$327)) (car lst$162)))) (null? lst$162))))) (set-cell! term-args-equal?$120 r$328))) (lambda (k$329 lst1$165 lst2$164) ((lambda (r$330) (if r$330 ((lambda () (k$329 (null? lst2$164)))) ((lambda (r$331) (if r$331 ((lambda () (k$329 #f))) ((lambda (r$335) ((lambda (r$336) ((cell-get term-equal?$121) (lambda (r$332) (if r$332 ((lambda () ((lambda (r$333) ((lambda (r$334) ((cell-get term-args-equal?$120) k$329 r$333 r$334)) (cdr lst2$164))) (cdr lst1$165)))) ((lambda () (k$329 #f))))) r$335 r$336)) (car lst2$164))) (car lst1$165)))) (null? lst2$164)))) (null? lst1$165))))) (set-cell! term-equal?$121 r$337))) (lambda (k$338 x$167 y$166) ((lambda (r$339) (if r$339 ((lambda () ((lambda (r$340) (if r$340 ((lambda (r$344) ((lambda (r$345) ((cell-get symbol-record-equal?$143) (lambda (r$341) (if r$341 ((lambda (r$342) ((lambda (r$343) ((cell-get term-args-equal?$120) k$338 r$342 r$343)) (cdr y$166))) (cdr x$167)) (k$338 #f))) r$344 r$345)) (car y$166))) (car x$167)) (k$338 #f))) (pair? y$166)))) ((lambda () (k$338 (equal? x$167 y$166)))))) (pair? x$167))))) (set-cell! trans-of-implies1$122 r$346))) (lambda (k$347 n$168) ((lambda (r$348) (if r$348 ((lambda () ((lambda (r$349) (list k$347 r$349 0 1)) (quote implies)))) ((lambda () ((lambda (r$350) ((lambda (r$354) ((lambda (r$355) (list (lambda (r$351) ((lambda (r$353) ((cell-get trans-of-implies1$122) (lambda (r$352) (list k$347 r$350 r$351 r$352)) r$353)) (- n$168 1))) r$354 r$355 n$168)) (- n$168 1))) (quote implies))) (quote and)))))) (equal? n$168 1))))) (set-cell! trans-of-implies$123 r$356))) (lambda (k$357 n$169) ((lambda (r$359) ((cell-get trans-of-implies1$122) (lambda (r$360) ((lambda (r$362) (list (lambda (r$361) (list (lambda (r$358) ((cell-get translate-term$154) k$357 r$358)) r$359 r$360 r$361)) r$362 0 n$169)) (quote implies))) n$169)) (quote implies))))) (set-cell! true-term$124 r$363))) (quote *))) (set-cell! false-term$125 r$364))) (quote *))) (set-cell! truep$126 r$365))) (lambda (k$366 x$171 lst$170) ((cell-get term-equal?$121) (lambda (tmp$172) (if tmp$172 (k$366 tmp$172) ((cell-get term-member?$119) k$366 x$171 lst$170))) x$171 (cell-get true-term$124))))) (set-cell! falsep$127 r$368))) (lambda (k$369 x$174 lst$173) ((cell-get term-equal?$121) (lambda (tmp$175) (if tmp$175 (k$369 tmp$175) ((cell-get term-member?$119) k$369 x$174 lst$173))) x$174 (cell-get false-term$125))))) (set-cell! one-way-unify1-lst$128 r$371))) (lambda (k$372 lst1$177 lst2$176) ((lambda (r$373) (if r$373 ((lambda () (k$372 (null? lst2$176)))) ((lambda (r$374) (if r$374 ((lambda () (k$372 #f))) ((lambda (r$378) ((lambda (r$379) ((cell-get one-way-unify1$129) (lambda (r$375) (if r$375 ((lambda () ((lambda (r$376) ((lambda (r$377) ((cell-get one-way-unify1-lst$128) k$372 r$376 r$377)) (cdr lst2$176))) (cdr lst1$177)))) ((lambda () (k$372 #f))))) r$378 r$379)) (car lst2$176))) (car lst1$177)))) (null? lst2$176)))) (null? lst1$177))))) (set-cell! one-way-unify1$129 r$380))) (lambda (k$381 term1$179 term2$178) ((lambda (r$382) (if r$382 ((lambda (r$383) (if r$383 ((lambda (r$387) ((lambda (r$388) ((lambda (r$384) (if r$384 ((lambda () ((lambda (r$385) ((lambda (r$386) ((cell-get one-way-unify1-lst$128) k$381 r$385 r$386)) (cdr term2$178))) (cdr term1$179)))) ((lambda () (k$381 #f))))) (eq? r$387 r$388))) (car term2$178))) (car term1$179)) ((lambda () (k$381 #f))))) (pair? term1$179)) ((lambda () ((lambda (temp-temp$180) (if temp-temp$180 ((lambda () ((lambda (r$390) ((cell-get term-equal?$121) k$381 term1$179 r$390)) (cdr temp-temp$180)))) ((lambda (r$391) (if r$391 ((lambda () (k$381 (equal? term1$179 term2$178)))) ((lambda () ((lambda (r$394) ((lambda (r$393) ((lambda (r$392) (k$381 #t)) (set-cell! unify-subst$131 r$393))) (cons r$394 (cell-get unify-subst$131)))) (cons term2$178 term1$179)))))) (number? term2$178)))) (assq term2$178 (cell-get unify-subst$131))))))) (pair? term2$178))))) (set-cell! one-way-unify$130 r$395))) (lambda (k$396 term1$182 term2$181) ((lambda (r$398) ((lambda (r$397) ((cell-get one-way-unify1$129) k$396 term1$182 term2$181)) (set-cell! unify-subst$131 r$398))) (quote ()))))) (set-cell! unify-subst$131 r$399))) (quote *))) (set-cell! rewrite-with-lemmas$132 r$400))) (lambda (k$401 term$184 lst$183) ((lambda (r$402) (if r$402 ((lambda () (k$401 term$184))) ((lambda (r$409) ((lambda (r$408) ((cell-get one-way-unify$130) (lambda (r$403) (if r$403 ((lambda () ((lambda (r$406) ((lambda (r$405) ((cell-get apply-subst$140) (lambda (r$404) ((cell-get rewrite$134) k$401 r$404)) (cell-get unify-subst$131) r$405)) (caddr r$406))) (car lst$183)))) ((lambda () ((lambda (r$407) ((cell-get rewrite-with-lemmas$132) k$401 term$184 r$407)) (cdr lst$183)))))) term$184 r$408)) (cadr r$409))) (car lst$183)))) (null? lst$183))))) (set-cell! rewrite-args$133 r$410))) (lambda (k$411 lst$185) ((lambda (r$412) (if r$412 ((lambda () (k$411 (quote ())))) ((lambda () ((lambda (r$416) ((cell-get rewrite$134) (lambda (r$413) ((lambda (r$415) ((cell-get rewrite-args$133) (lambda (r$414) (k$411 (cons r$413 r$414))) r$415)) (cdr lst$185))) r$416)) (car lst$185)))))) (null? lst$185))))) (set-cell! rewrite$134 r$417))) (lambda (k$418 term$186) ((lambda (r$427) ((lambda (r$419) ((lambda (r$420) (if r$420 ((lambda () ((lambda (r$424) ((lambda (r$426) ((cell-get rewrite-args$133) (lambda (r$425) ((lambda (r$421) ((lambda (r$423) ((cell-get get-lemmas$145) (lambda (r$422) ((cell-get rewrite-with-lemmas$132) k$418 r$421 r$422)) r$423)) (car term$186))) (cons r$424 r$425))) r$426)) (cdr term$186))) (car term$186)))) ((lambda () (k$418 term$186))))) (pair? term$186))) (set-cell! rewrite-count$135 r$427))) (+ (cell-get rewrite-count$135) 1))))) (set-cell! rewrite-count$135 0))) (set-cell! if-constructor$136 r$428))) (quote *))) (set-cell! tautologyp$137 r$429))) (lambda (k$430 x$189 true-lst$188 false-lst$187) ((cell-get truep$126) (lambda (r$431) (if r$431 ((lambda () (k$430 #t))) ((cell-get falsep$127) (lambda (r$432) (if r$432 ((lambda () (k$430 #f))) ((lambda (r$433) (if r$433 ((lambda (r$448) ((lambda (r$434) (if r$434 ((lambda () ((lambda (r$447) ((cell-get truep$126) (lambda (r$435) (if r$435 ((lambda () ((lambda (r$436) ((cell-get tautologyp$137) k$430 r$436 true-lst$188 false-lst$187)) (caddr x$189)))) ((lambda (r$446) ((cell-get falsep$127) (lambda (r$437) (if r$437 ((lambda () ((lambda (r$438) ((cell-get tautologyp$137) k$430 r$438 true-lst$188 false-lst$187)) (cadddr x$189)))) ((lambda () ((lambda (r$443) ((lambda (r$445) ((lambda (r$444) ((cell-get tautologyp$137) (lambda (r$439) (if r$439 ((lambda (r$440) ((lambda (r$442) ((lambda (r$441) ((cell-get tautologyp$137) k$430 r$440 true-lst$188 r$441)) (cons r$442 false-lst$187))) (cadr x$189))) (cadddr x$189)) (k$430 #f))) r$443 r$444 false-lst$187)) (cons r$445 true-lst$188))) (cadr x$189))) (caddr x$189)))))) r$446 false-lst$187)) (cadr x$189)))) r$447 true-lst$188)) (cadr x$189)))) ((lambda () (k$430 #f))))) (eq? r$448 (cell-get if-constructor$136)))) (car x$189)) ((lambda () (k$430 #f))))) (pair? x$189)))) x$189 false-lst$187))) x$189 true-lst$188)))) (set-cell! tautp$138 r$449))) (lambda (k$450 x$190) ((cell-get rewrite$134) (lambda (r$451) ((lambda (r$452) ((lambda (r$453) ((cell-get tautologyp$137) k$450 r$451 r$452 r$453)) (quote ()))) (quote ()))) x$190)))) (set-cell! apply-subst-lst$139 r$454))) (lambda (k$455 alist$192 lst$191) ((lambda (r$456) (if r$456 ((lambda () (k$455 (quote ())))) ((lambda () ((lambda (r$460) ((cell-get apply-subst$140) (lambda (r$457) ((lambda (r$459) ((cell-get apply-subst-lst$139) (lambda (r$458) (k$455 (cons r$457 r$458))) alist$192 r$459)) (cdr lst$191))) alist$192 r$460)) (car lst$191)))))) (null? lst$191))))) (set-cell! apply-subst$140 r$461))) (lambda (k$462 alist$194 term$193) ((lambda (r$463) (if r$463 ((lambda () ((lambda (r$464) ((lambda (r$466) ((cell-get apply-subst-lst$139) (lambda (r$465) (k$462 (cons r$464 r$465))) alist$194 r$466)) (cdr term$193))) (car term$193)))) ((lambda () ((lambda (temp-temp$195) (if temp-temp$195 (k$462 (cdr temp-temp$195)) (k$462 term$193))) (assq term$193 alist$194)))))) (pair? term$193))))) (set-cell! translate-alist$141 r$468))) (lambda (k$469 alist$196) ((lambda (r$470) (if r$470 ((lambda () (k$469 (quote ())))) ((lambda () ((lambda (r$474) ((lambda (r$476) ((cell-get translate-term$154) (lambda (r$475) ((lambda (r$471) ((lambda (r$473) ((cell-get translate-alist$141) (lambda (r$472) (k$469 (cons r$471 r$472))) r$473)) (cdr alist$196))) (cons r$474 r$475))) r$476)) (cdar alist$196))) (caar alist$196)))))) (null? alist$196))))) (set-cell! test$142 r$477))) (lambda (k$478 alist$199 term$198 n$197) ((cell-get translate-alist$141) (lambda (r$480) ((lambda (term$201 n$200) ((lambda (lp$202) ((lambda (lp$202) ((lambda (r$484) ((lambda (r$483) ((cell-get lp$202) (lambda (r$482) ((cell-get translate-term$154) (lambda (r$481) ((cell-get apply-subst$140) (lambda (term$205) ((cell-get tautp$138) k$478 term$205)) r$480 r$481)) r$482)) term$201 n$200)) (set-cell! lp$202 r$484))) (lambda (k$485 term$204 n$203) (zero? (lambda (r$486) (if r$486 (k$485 term$204) ((lambda (r$489) ((lambda (r$490) (list (lambda (r$487) ((lambda (r$488) ((cell-get lp$202) k$485 r$487 r$488)) (- n$203 1))) r$489 term$204 r$490)) (quote (f)))) (quote or)))) n$203)))) (cell lp$202))) #f)) term$198 n$197)) alist$199)))) (set-cell! symbol-record-equal?$143 r$491))) (lambda (k$492 r1$207 r2$206) (k$492 (eq? r1$207 r2$206))))) (set-cell! get-name$144 r$493))) (lambda (k$494 symbol-record$208) (k$494 (vector-ref symbol-record$208 0))))) (set-cell! get-lemmas$145 r$495))) (lambda (k$496 symbol-record$209) (k$496 (vector-ref symbol-record$209 1))))) (set-cell! put-lemmas!$146 r$497))) (lambda (k$498 symbol-record$211 lemmas$210) (k$498 (vector-set! symbol-record$211 1 lemmas$210))))) (set-cell! make-symbol-record$147 r$499))) (lambda (k$500 sym$212) ((lambda (r$501) (vector k$500 sym$212 r$501)) (quote ()))))) (set-cell! *symbol-records-alist*$148 r$502))) (quote ()))) (set-cell! symbol->symbol-record$149 r$503))) (lambda (k$504 sym$213) ((lambda (x$214) (if x$214 (k$504 (cdr x$214)) ((cell-get make-symbol-record$147) (lambda (r$215) ((lambda (r$509) ((lambda (r$508) ((lambda (r$507) (k$504 r$215)) (set-cell! *symbol-records-alist*$148 r$508))) (cons r$509 (cell-get *symbol-records-alist*$148)))) (cons sym$213 r$215))) sym$213))) (assq sym$213 (cell-get *symbol-records-alist*$148)))))) (set-cell! get$150 r$510))) (lambda (k$511 sym$217 property$216) ((cell-get symbol->symbol-record$149) (lambda (r$512) ((cell-get get-lemmas$145) k$511 r$512)) sym$217)))) (set-cell! put$151 r$513))) (lambda (k$514 sym$220 property$219 value$218) ((cell-get symbol->symbol-record$149) (lambda (r$515) ((cell-get put-lemmas!$146) k$514 r$515 value$218)) sym$220)))) (set-cell! untranslate-term$152 r$516))) (lambda (k$517 term$221) ((lambda (r$518) (if r$518 ((lambda () ((lambda (r$522) ((cell-get get-name$144) (lambda (r$519) ((lambda (r$521) (map (lambda (r$520) (k$517 (cons r$519 r$520))) (cell-get untranslate-term$152) r$521)) (cdr term$221))) r$522)) (car term$221)))) ((lambda () (k$517 term$221))))) (pair? term$221))))) (set-cell! translate-args$153 r$523))) (lambda (k$524 lst$222) ((lambda (r$525) (if r$525 ((lambda () (k$524 (quote ())))) ((lambda () ((lambda (r$529) ((cell-get translate-term$154) (lambda (r$526) ((lambda (r$528) ((cell-get translate-args$153) (lambda (r$527) (k$524 (cons r$526 r$527))) r$528)) (cdr lst$222))) r$529)) (car lst$222)))))) (null? lst$222))))) (set-cell! translate-term$154 r$530))) (lambda (k$531 term$223) ((lambda (r$532) (if r$532 ((lambda () ((lambda (r$536) ((cell-get symbol->symbol-record$149) (lambda (r$533) ((lambda (r$535) ((cell-get translate-args$153) (lambda (r$534) (k$531 (cons r$533 r$534))) r$535)) (cdr term$223))) r$536)) (car term$223)))) ((lambda () (k$531 term$223))))) (pair? term$223))))) (set-cell! add-lemma$155 r$537))) (lambda (k$538 term$224) ((lambda (k$549) ((lambda (r$550) (if r$550 ((lambda (r$553) ((lambda (r$554) ((lambda (r$551) (if r$551 ((lambda (r$552) (k$549 (pair? r$552))) (cadr term$224)) (k$549 #f))) (eq? r$553 r$554))) (quote equal))) (car term$224)) (k$549 #f))) (pair? term$224))) (lambda (r$539) (if r$539 ((lambda () ((lambda (r$548) ((lambda (r$540) ((lambda (r$541) ((cell-get translate-term$154) (lambda (r$543) ((lambda (r$547) ((lambda (r$545) ((lambda (r$546) ((cell-get get$150) (lambda (r$544) ((lambda (r$542) ((cell-get put$151) k$538 r$540 r$541 r$542)) (cons r$543 r$544))) r$545 r$546)) (quote lemmas))) (car r$547))) (cadr term$224))) term$224)) (quote lemmas))) (car r$548))) (cadr term$224)))) ((lambda () (error k$538 #f "ADD-LEMMA did not like term: " term$224))))))))) (set-cell! add-lemma-lst$156 r$555))) (lambda (k$556 lst$225) ((lambda (r$557) (if r$557 ((lambda () (k$556 #t))) ((lambda () ((lambda (r$560) ((cell-get add-lemma$155) (lambda (r$558) ((lambda (r$559) ((cell-get add-lemma-lst$156) k$556 r$559)) (cdr lst$225))) r$560)) (car lst$225)))))) (null? lst$225))))) (set-cell! setup$157 r$561))) (lambda (k$562) ((lambda (r$563) ((cell-get add-lemma-lst$156) k$562 r$563)) (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem))))))))) (cell term-member?$119))) (cell term-args-equal?$120))) (cell term-equal?$121))) (cell trans-of-implies1$122))) (cell trans-of-implies$123))) (cell true-term$124))) (cell false-term$125))) (cell truep$126))) (cell falsep$127))) (cell one-way-unify1-lst$128))) (cell one-way-unify1$129))) (cell one-way-unify$130))) (cell unify-subst$131))) (cell rewrite-with-lemmas$132))) (cell rewrite-args$133))) (cell rewrite$134))) (cell rewrite-count$135))) (cell if-constructor$136))) (cell tautologyp$137))) (cell tautp$138))) (cell apply-subst-lst$139))) (cell apply-subst$140))) (cell translate-alist$141))) (cell test$142))) (cell symbol-record-equal?$143))) (cell get-name$144))) (cell get-lemmas$145))) (cell put-lemmas!$146))) (cell make-symbol-record$147))) (cell *symbol-records-alist*$148))) (cell symbol->symbol-record$149))) (cell get$150))) (cell put$151))) (cell untranslate-term$152))) (cell translate-args$153))) (cell translate-term$154))) (cell add-lemma$155))) (cell add-lemma-lst$156))) (cell setup$157))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)))) (set-global! term r$564))) (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w))))) (set-global! alist r$565))) (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b))))))) 0)))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)) */ -/* -"---------------- after closure-convert:" */ -/* -((define main (lambda (k$633) ((%closure-ref read 0) read (%closure (lambda (self$1099 count$254) ((%closure-ref read 0) read (%closure (lambda (self$1100 input$255) ((%closure-ref read 0) read (%closure (lambda (self$1101 output$256) ((%closure (lambda (self$1102 s2$257) ((%closure (lambda (self$1103 s1$258) ((%closure (lambda (self$1104 name$259) ((%closure (lambda (self$1105) ((%closure (lambda (self$1106 r$639) ((%closure (lambda (self$1110 r$640) ((%closure (lambda (self$1113 r$641) ((%closure-ref run-r7rs-benchmark 0) run-r7rs-benchmark (%closure-ref self$1113 2) (%closure-ref self$1113 3) (%closure-ref self$1113 1) (%closure-ref self$1113 4) r$641)) (%closure-ref self$1110 1) (%closure-ref self$1110 2) (%closure-ref self$1110 4) r$640) (%closure (lambda (self$1111 k$642 rewrites$260) ((%closure (lambda (self$1112 r$643) (if r$643 ((%closure-ref (%closure-ref self$1112 1) 0) (%closure-ref self$1112 1) (= (%closure-ref self$1112 3) (%closure-ref self$1112 2))) ((%closure-ref (%closure-ref self$1112 1) 0) (%closure-ref self$1112 1) #f))) k$642 (%closure-ref self$1111 1) rewrites$260) (number? rewrites$260))) (%closure-ref self$1110 3)))) (%closure-ref self$1106 1) (%closure-ref self$1106 3) (%closure-ref self$1106 4) r$639) (%closure (lambda (self$1107 k$644) ((%closure-ref setup-boyer 0) setup-boyer (%closure (lambda (self$1108 r$645) ((%closure-ref hide 0) hide (%closure (lambda (self$1109 r$646) ((%closure-ref test-boyer 0) test-boyer (%closure-ref self$1109 1) alist term r$646)) (%closure-ref self$1108 3)) (%closure-ref self$1108 1) (%closure-ref self$1108 2))) (%closure-ref self$1107 1) (%closure-ref self$1107 2) k$644))) (%closure-ref self$1106 1) (%closure-ref self$1106 2)))) (%closure-ref self$1105 1) (%closure-ref self$1105 2) (%closure-ref self$1105 3) (%closure-ref self$1105 5)) (string-append (%closure-ref self$1105 4) ":" (%closure-ref self$1105 6) ":" (%closure-ref self$1105 7)))) (%closure-ref self$1104 1) (%closure-ref self$1104 2) (%closure-ref self$1104 3) name$259 (%closure-ref self$1104 4) (%closure-ref self$1104 5) (%closure-ref self$1104 6)))) (%closure-ref self$1103 1) (%closure-ref self$1103 2) (%closure-ref self$1103 3) (%closure-ref self$1103 4) s1$258 (%closure-ref self$1103 5)) "nboyer")) (%closure-ref self$1102 1) (%closure-ref self$1102 2) (%closure-ref self$1102 3) (%closure-ref self$1102 4) s2$257) (number->string (%closure-ref self$1102 2)))) (%closure-ref self$1101 1) (%closure-ref self$1101 2) (%closure-ref self$1101 3) output$256) (number->string (%closure-ref self$1101 1)))) (%closure-ref self$1100 1) input$255 (%closure-ref self$1100 2)))) count$254 (%closure-ref self$1099 1)))) k$633)))) (define alist (%closure-ref #f 0) #f) (define term (%closure-ref #f 0) #f) (define setup-boyer (lambda (k$626 . args$253) ((%closure-ref k$626 0) k$626 #t))) (define test-boyer (lambda (k$623 . args$252) ((%closure-ref k$623 0) k$623 #t))) (define hide (lambda (k$609 r$248 x$247) ((%closure (lambda (self$1095 r$610) ((%closure (lambda (self$1098 r$611) ((%closure-ref call-with-values 0) call-with-values (%closure-ref self$1098 1) (%closure-ref self$1098 2) r$611)) (%closure-ref self$1095 1) r$610) (%closure (lambda (self$1096 k$612 v$250 i$249) ((%closure (lambda (self$1097 r$613) ((%closure-ref r$613 0) r$613 (%closure-ref self$1097 1) (%closure-ref self$1097 2))) k$612 (%closure-ref self$1096 1)) (vector-ref v$250 i$249))) (%closure-ref self$1095 2)))) k$609 x$247) (%closure (lambda (self$1088 k$614) ((%closure (lambda (self$1090 r$619) ((%closure-ref vector 0) vector (%closure (lambda (self$1091 r$615) ((%closure (lambda (self$1093 k$617) ((%closure (lambda (self$1094 r$618) (if r$618 ((%closure-ref (%closure-ref self$1094 1) 0) (%closure-ref self$1094 1) 0) ((%closure-ref (%closure-ref self$1094 1) 0) (%closure-ref self$1094 1) 1))) k$617) (< (%closure-ref self$1093 1) 100))) (%closure-ref self$1091 2)) (%closure (lambda (self$1092 r$616) ((%closure-ref values 0) values (%closure-ref self$1092 1) (%closure-ref self$1092 2) r$616)) (%closure-ref self$1091 1) r$615))) (%closure-ref self$1090 1) (%closure-ref self$1090 2)) values r$619)) k$614 (%closure-ref self$1088 1)) (%closure (lambda (self$1089 k$620 x$251) ((%closure-ref k$620 0) k$620 x$251))))) r$248)))) (define run-r7rs-benchmark (lambda (k$568 name$229 count$228 thunk$227 ok?$226) ((%closure (lambda (self$1040 rounded$231) ((%closure (lambda (self$1041 rounded$231) ((%closure (lambda (self$1042 rounded$232) ((%closure (lambda (self$1046 r$603) ((%closure (lambda (self$1047 r$569) ((%closure-ref display 0) display (%closure (lambda (self$1048 r$570) ((%closure-ref display 0) display (%closure (lambda (self$1049 r$571) ((%closure-ref newline 0) newline (%closure (lambda (self$1050 r$572) ((%closure-ref flush-output-port 0) flush-output-port (%closure (lambda (self$1051 r$573) ((%closure-ref jiffies-per-second 0) jiffies-per-second (%closure (lambda (self$1052 j/s$233) ((%closure-ref current-second 0) current-second (%closure (lambda (self$1053 t0$234) ((%closure-ref current-jiffy 0) current-jiffy (%closure (lambda (self$1054 j0$235) ((%closure (lambda (self$1055) ((lambda (k$602) (if #f ((%closure-ref k$602 0) k$602 #f) ((%closure-ref k$602 0) k$602 #f))) (%closure (lambda (self$1056 r$577) ((%closure (lambda (self$1057 i$237 result$236) ((%closure (lambda (self$1058 loop$238) ((%closure (lambda (self$1059 loop$238) ((%closure (lambda (self$1086 r$579) ((%closure (lambda (self$1087 r$578) ((%closure-ref (cell-get (%closure-ref self$1087 3)) 0) (cell-get (%closure-ref self$1087 3)) (%closure-ref self$1087 2) (%closure-ref self$1087 1) (%closure-ref self$1087 4))) (%closure-ref self$1086 1) (%closure-ref self$1086 2) (%closure-ref self$1086 3) (%closure-ref self$1086 4)) (set-cell! (%closure-ref self$1086 3) r$579))) (%closure-ref self$1059 2) (%closure-ref self$1059 5) loop$238 (%closure-ref self$1059 8)) (%closure (lambda (self$1060 k$580 i$240 result$239) ((%closure (lambda (self$1061 r$581) (if r$581 ((%closure (lambda (self$1083) ((%closure (lambda (self$1084 r$582) ((%closure-ref (%closure-ref self$1084 3) 0) (%closure-ref self$1084 3) (%closure (lambda (self$1085 r$583) ((%closure-ref (cell-get (%closure-ref self$1085 2)) 0) (cell-get (%closure-ref self$1085 2)) (%closure-ref self$1085 1) (%closure-ref self$1085 3) r$583)) (%closure-ref self$1084 1) (%closure-ref self$1084 2) r$582))) (%closure-ref self$1083 2) (%closure-ref self$1083 3) (%closure-ref self$1083 4)) (+ (%closure-ref self$1083 1) 1))) (%closure-ref self$1061 1) (%closure-ref self$1061 4) (%closure-ref self$1061 5) (%closure-ref self$1061 11))) ((%closure-ref (%closure-ref self$1061 7) 0) (%closure-ref self$1061 7) (%closure (lambda (self$1062 r$584) (if r$584 ((%closure (lambda (self$1067) ((%closure-ref current-jiffy 0) current-jiffy (%closure (lambda (self$1068 j1$241) ((%closure-ref current-second 0) current-second (%closure (lambda (self$1069 t1$242) ((%closure (lambda (self$1070 jifs$243) ((%closure (lambda (self$1071 r$598) ((%closure-ref inexact 0) inexact (%closure (lambda (self$1072 secs$244) ((%closure (lambda (self$1073 r$597) ((%closure-ref (cell-get (%closure-ref self$1073 4)) 0) (cell-get (%closure-ref self$1073 4)) (%closure (lambda (self$1074 secs2$245) ((%closure (lambda (self$1075) ((%closure-ref display 0) display (%closure (lambda (self$1076 r$591) ((%closure-ref write 0) write (%closure (lambda (self$1077 r$592) ((%closure-ref display 0) display (%closure (lambda (self$1078 r$593) ((%closure-ref write 0) write (%closure (lambda (self$1079 r$594) ((%closure-ref display 0) display (%closure (lambda (self$1080 r$595) ((%closure-ref display 0) display (%closure (lambda (self$1081 r$596) ((%closure-ref newline 0) newline (%closure (lambda (self$1082 r$585) ((%closure-ref (%closure-ref self$1082 1) 0) (%closure-ref self$1082 1) (%closure-ref self$1082 2))) (%closure-ref self$1081 1) (%closure-ref self$1081 2)))) (%closure-ref self$1080 1) (%closure-ref self$1080 3)) (%closure-ref self$1080 2))) (%closure-ref self$1079 1) (%closure-ref self$1079 2) (%closure-ref self$1079 3)) ") for ")) (%closure-ref self$1078 1) (%closure-ref self$1078 2) (%closure-ref self$1078 3)) (%closure-ref self$1078 4))) (%closure-ref self$1077 1) (%closure-ref self$1077 2) (%closure-ref self$1077 3) (%closure-ref self$1077 4)) " seconds (")) (%closure-ref self$1076 1) (%closure-ref self$1076 2) (%closure-ref self$1076 3) (%closure-ref self$1076 5)) (%closure-ref self$1076 4))) (%closure-ref self$1075 1) (%closure-ref self$1075 2) (%closure-ref self$1075 3) (%closure-ref self$1075 4) (%closure-ref self$1075 5)) "Elapsed time: ")) (%closure-ref self$1074 1) (%closure-ref self$1074 2) (%closure-ref self$1074 3) (%closure-ref self$1074 4) secs2$245))) (%closure-ref self$1073 1) (%closure-ref self$1073 2) (%closure-ref self$1073 3) (%closure-ref self$1073 5)) r$597)) (%closure-ref self$1072 1) (%closure-ref self$1072 2) (%closure-ref self$1072 3) (%closure-ref self$1072 4) secs$244) (- (%closure-ref self$1072 6) (%closure-ref self$1072 5)))) (%closure-ref self$1071 1) (%closure-ref self$1071 2) (%closure-ref self$1071 3) (%closure-ref self$1071 4) (%closure-ref self$1071 5) (%closure-ref self$1071 6)) r$598)) (%closure-ref self$1070 2) (%closure-ref self$1070 3) (%closure-ref self$1070 4) (%closure-ref self$1070 5) (%closure-ref self$1070 6) (%closure-ref self$1070 7)) (/ jifs$243 (%closure-ref self$1070 1)))) (%closure-ref self$1069 1) (%closure-ref self$1069 4) (%closure-ref self$1069 5) (%closure-ref self$1069 6) (%closure-ref self$1069 7) (%closure-ref self$1069 8) t1$242) (- (%closure-ref self$1069 3) (%closure-ref self$1069 2)))) (%closure-ref self$1068 1) (%closure-ref self$1068 2) j1$241 (%closure-ref self$1068 3) (%closure-ref self$1068 4) (%closure-ref self$1068 5) (%closure-ref self$1068 6) (%closure-ref self$1068 7)))) (%closure-ref self$1067 1) (%closure-ref self$1067 2) (%closure-ref self$1067 3) (%closure-ref self$1067 4) (%closure-ref self$1067 5) (%closure-ref self$1067 6) (%closure-ref self$1067 7)))) (%closure-ref self$1062 1) (%closure-ref self$1062 2) (%closure-ref self$1062 3) (%closure-ref self$1062 4) (%closure-ref self$1062 5) (%closure-ref self$1062 6) (%closure-ref self$1062 7))) ((%closure (lambda (self$1063) ((%closure-ref display 0) display (%closure (lambda (self$1064 r$599) ((%closure-ref write 0) write (%closure (lambda (self$1065 r$600) ((%closure-ref newline 0) newline (%closure (lambda (self$1066 r$601) ((%closure-ref (%closure-ref self$1066 1) 0) (%closure-ref self$1066 1) (%closure-ref self$1066 2))) (%closure-ref self$1065 1) (%closure-ref self$1065 2)))) (%closure-ref self$1064 1) (%closure-ref self$1064 2)) (%closure-ref self$1064 2))) (%closure-ref self$1063 1) (%closure-ref self$1063 2)) "ERROR: returned incorrect result: ")) (%closure-ref self$1062 3) (%closure-ref self$1062 5))))) (%closure-ref self$1061 2) (%closure-ref self$1061 3) (%closure-ref self$1061 4) (%closure-ref self$1061 6) (%closure-ref self$1061 8) (%closure-ref self$1061 9) (%closure-ref self$1061 10)) (%closure-ref self$1061 8)))) i$240 (%closure-ref self$1060 2) (%closure-ref self$1060 3) k$580 (%closure-ref self$1060 4) (%closure-ref self$1060 5) (%closure-ref self$1060 6) result$239 (%closure-ref self$1060 7) (%closure-ref self$1060 8) (%closure-ref self$1060 9)) (< i$240 (%closure-ref self$1060 1)))) (%closure-ref self$1059 1) (%closure-ref self$1059 3) (%closure-ref self$1059 4) loop$238 (%closure-ref self$1059 6) (%closure-ref self$1059 7) (%closure-ref self$1059 9) (%closure-ref self$1059 10) (%closure-ref self$1059 11)))) (%closure-ref self$1058 1) (%closure-ref self$1058 2) (%closure-ref self$1058 3) (%closure-ref self$1058 4) (%closure-ref self$1058 5) (%closure-ref self$1058 6) (%closure-ref self$1058 7) (%closure-ref self$1058 8) (%closure-ref self$1058 9) (%closure-ref self$1058 10) (%closure-ref self$1058 11)) (cell loop$238))) (%closure-ref self$1057 1) i$237 (%closure-ref self$1057 2) (%closure-ref self$1057 3) (%closure-ref self$1057 4) (%closure-ref self$1057 5) (%closure-ref self$1057 6) result$236 (%closure-ref self$1057 7) (%closure-ref self$1057 8) (%closure-ref self$1057 9)) #f)) (%closure-ref self$1056 1) (%closure-ref self$1056 2) (%closure-ref self$1056 3) (%closure-ref self$1056 4) (%closure-ref self$1056 5) (%closure-ref self$1056 6) (%closure-ref self$1056 7) (%closure-ref self$1056 8) (%closure-ref self$1056 9)) 0 r$577)) (%closure-ref self$1055 1) (%closure-ref self$1055 2) (%closure-ref self$1055 3) (%closure-ref self$1055 4) (%closure-ref self$1055 5) (%closure-ref self$1055 6) (%closure-ref self$1055 7) (%closure-ref self$1055 8) (%closure-ref self$1055 9)))) (%closure-ref self$1054 1) (%closure-ref self$1054 2) j0$235 (%closure-ref self$1054 3) (%closure-ref self$1054 4) (%closure-ref self$1054 5) (%closure-ref self$1054 6) (%closure-ref self$1054 7) (%closure-ref self$1054 8)))) (%closure-ref self$1053 1) (%closure-ref self$1053 2) (%closure-ref self$1053 3) (%closure-ref self$1053 4) (%closure-ref self$1053 5) (%closure-ref self$1053 6) t0$234 (%closure-ref self$1053 7)))) (%closure-ref self$1052 1) j/s$233 (%closure-ref self$1052 2) (%closure-ref self$1052 3) (%closure-ref self$1052 4) (%closure-ref self$1052 5) (%closure-ref self$1052 6)))) (%closure-ref self$1051 1) (%closure-ref self$1051 2) (%closure-ref self$1051 3) (%closure-ref self$1051 4) (%closure-ref self$1051 5) (%closure-ref self$1051 6)))) (%closure-ref self$1050 1) (%closure-ref self$1050 2) (%closure-ref self$1050 3) (%closure-ref self$1050 4) (%closure-ref self$1050 5) (%closure-ref self$1050 6)))) (%closure-ref self$1049 1) (%closure-ref self$1049 2) (%closure-ref self$1049 3) (%closure-ref self$1049 4) (%closure-ref self$1049 5) (%closure-ref self$1049 6)))) (%closure-ref self$1048 1) (%closure-ref self$1048 2) (%closure-ref self$1048 3) (%closure-ref self$1048 4) (%closure-ref self$1048 5) (%closure-ref self$1048 6)) (%closure-ref self$1048 3))) (%closure-ref self$1047 1) (%closure-ref self$1047 2) (%closure-ref self$1047 3) (%closure-ref self$1047 4) (%closure-ref self$1047 5) (%closure-ref self$1047 6)) "Running ")) (%closure-ref self$1046 1) (%closure-ref self$1046 2) (%closure-ref self$1046 3) (%closure-ref self$1046 4) (%closure-ref self$1046 5) (%closure-ref self$1046 6)) (set-cell! (%closure-ref self$1046 5) r$603))) (%closure-ref self$1042 1) (%closure-ref self$1042 2) (%closure-ref self$1042 3) (%closure-ref self$1042 4) (%closure-ref self$1042 5) (%closure-ref self$1042 6)) (%closure (lambda (self$1043 k$604 x$246) ((%closure (lambda (self$1044 r$606) ((%closure-ref round 0) round (%closure (lambda (self$1045 r$605) ((%closure-ref (%closure-ref self$1045 1) 0) (%closure-ref self$1045 1) (/ r$605 1000))) (%closure-ref self$1044 1)) r$606)) k$604) (* 1000 x$246)))))) (%closure-ref self$1041 1) (%closure-ref self$1041 2) (%closure-ref self$1041 3) (%closure-ref self$1041 4) rounded$231 (%closure-ref self$1041 5)) #f)) (%closure-ref self$1040 1) (%closure-ref self$1040 2) (%closure-ref self$1040 3) (%closure-ref self$1040 4) (%closure-ref self$1040 5)) (cell rounded$231))) count$228 k$568 name$229 ok?$226 thunk$227) #f))) ((lambda (*symbol-records-alist*$118 add-lemma$117 add-lemma-lst$116 apply-subst$115 apply-subst-lst$114 false-term$113 falsep$112 get$111 get-lemmas$110 get-name$109 if-constructor$108 make-symbol-record$107 one-way-unify$106 one-way-unify1$105 one-way-unify1-lst$104 put$103 put-lemmas!$102 rewrite$101 rewrite-args$100 rewrite-count$99 rewrite-with-lemmas$98 setup$97 symbol->symbol-record$96 symbol-record-equal?$95 tautologyp$94 tautp$93 term-args-equal?$92 term-equal?$91 term-member?$90 test$89 trans-of-implies$88 trans-of-implies1$87 translate-alist$86 translate-args$85 translate-term$84 true-term$83 truep$82 unify-subst$81 untranslate-term$80) ((lambda () ((lambda (r$261) ((lambda (r$565) ((lambda (r$262) ((lambda (r$564) ((lambda (r$263) ((lambda () ((lambda (setup$157 add-lemma-lst$156 add-lemma$155 translate-term$154 translate-args$153 untranslate-term$152 put$151 get$150 symbol->symbol-record$149 *symbol-records-alist*$148 make-symbol-record$147 put-lemmas!$146 get-lemmas$145 get-name$144 symbol-record-equal?$143 test$142 translate-alist$141 apply-subst$140 apply-subst-lst$139 tautp$138 tautologyp$137 if-constructor$136 rewrite-count$135 rewrite$134 rewrite-args$133 rewrite-with-lemmas$132 unify-subst$131 one-way-unify$130 one-way-unify1$129 one-way-unify1-lst$128 falsep$127 truep$126 false-term$125 true-term$124 trans-of-implies$123 trans-of-implies1$122 term-equal?$121 term-args-equal?$120 term-member?$119) ((%closure (lambda (self$647 setup$157) ((%closure (lambda (self$648 add-lemma-lst$156) ((%closure (lambda (self$649 add-lemma$155) ((%closure (lambda (self$650 translate-term$154) ((%closure (lambda (self$651 translate-args$153) ((%closure (lambda (self$652 untranslate-term$152) ((%closure (lambda (self$653 put$151) ((%closure (lambda (self$654 get$150) ((%closure (lambda (self$655 symbol->symbol-record$149) ((%closure (lambda (self$656 *symbol-records-alist*$148) ((%closure (lambda (self$657 make-symbol-record$147) ((%closure (lambda (self$658 put-lemmas!$146) ((%closure (lambda (self$659 get-lemmas$145) ((%closure (lambda (self$660 get-name$144) ((%closure (lambda (self$661 symbol-record-equal?$143) ((%closure (lambda (self$662 test$142) ((%closure (lambda (self$663 translate-alist$141) ((%closure (lambda (self$664 apply-subst$140) ((%closure (lambda (self$665 apply-subst-lst$139) ((%closure (lambda (self$666 tautp$138) ((%closure (lambda (self$667 tautologyp$137) ((%closure (lambda (self$668 if-constructor$136) ((%closure (lambda (self$669 rewrite-count$135) ((%closure (lambda (self$670 rewrite$134) ((%closure (lambda (self$671 rewrite-args$133) ((%closure (lambda (self$672 rewrite-with-lemmas$132) ((%closure (lambda (self$673 unify-subst$131) ((%closure (lambda (self$674 one-way-unify$130) ((%closure (lambda (self$675 one-way-unify1$129) ((%closure (lambda (self$676 one-way-unify1-lst$128) ((%closure (lambda (self$677 falsep$127) ((%closure (lambda (self$678 truep$126) ((%closure (lambda (self$679 false-term$125) ((%closure (lambda (self$680 true-term$124) ((%closure (lambda (self$681 trans-of-implies$123) ((%closure (lambda (self$682 trans-of-implies1$122) ((%closure (lambda (self$683 term-equal?$121) ((%closure (lambda (self$684 term-args-equal?$120) ((%closure (lambda (self$685 term-member?$119) ((%closure (lambda (self$688 r$561) ((%closure (lambda (self$689 r$265) ((%closure (lambda (self$697 r$555) ((%closure (lambda (self$698 r$266) ((%closure (lambda (self$718 r$537) ((%closure (lambda (self$719 r$267) ((%closure (lambda (self$728 r$530) ((%closure (lambda (self$729 r$268) ((%closure (lambda (self$738 r$523) ((%closure (lambda (self$739 r$269) ((%closure (lambda (self$748 r$516) ((%closure (lambda (self$749 r$270) ((%closure (lambda (self$752 r$513) ((%closure (lambda (self$753 r$271) ((%closure (lambda (self$756 r$510) ((%closure (lambda (self$757 r$272) ((%closure (lambda (self$764 r$503) ((%closure (lambda (self$765 r$273) ((%closure (lambda (self$766 r$502) ((%closure (lambda (self$767 r$274) ((%closure (lambda (self$770 r$499) ((%closure (lambda (self$771 r$275) ((%closure (lambda (self$773 r$497) ((%closure (lambda (self$774 r$276) ((%closure (lambda (self$776 r$495) ((%closure (lambda (self$777 r$277) ((%closure (lambda (self$779 r$493) ((%closure (lambda (self$780 r$278) ((%closure (lambda (self$782 r$491) ((%closure (lambda (self$783 r$279) ((%closure (lambda (self$800 r$477) ((%closure (lambda (self$801 r$280) ((%closure (lambda (self$812 r$468) ((%closure (lambda (self$813 r$281) ((%closure (lambda (self$822 r$461) ((%closure (lambda (self$823 r$282) ((%closure (lambda (self$832 r$454) ((%closure (lambda (self$833 r$283) ((%closure (lambda (self$838 r$449) ((%closure (lambda (self$839 r$284) ((%closure (lambda (self$867 r$429) ((%closure (lambda (self$868 r$285) ((%closure (lambda (self$869 r$428) ((%closure (lambda (self$870 r$286) ((%closure (lambda (self$871 r$287) ((%closure (lambda (self$884 r$417) ((%closure (lambda (self$885 r$288) ((%closure (lambda (self$894 r$410) ((%closure (lambda (self$895 r$289) ((%closure (lambda (self$908 r$400) ((%closure (lambda (self$909 r$290) ((%closure (lambda (self$910 r$399) ((%closure (lambda (self$911 r$291) ((%closure (lambda (self$915 r$395) ((%closure (lambda (self$916 r$292) ((%closure (lambda (self$938 r$380) ((%closure (lambda (self$939 r$293) ((%closure (lambda (self$952 r$371) ((%closure (lambda (self$953 r$294) ((%closure (lambda (self$956 r$368) ((%closure (lambda (self$957 r$295) ((%closure (lambda (self$960 r$365) ((%closure (lambda (self$961 r$296) ((%closure (lambda (self$962 r$364) ((%closure (lambda (self$963 r$297) ((%closure (lambda (self$964 r$363) ((%closure (lambda (self$965 r$298) ((%closure (lambda (self$972 r$356) ((%closure (lambda (self$973 r$299) ((%closure (lambda (self$985 r$346) ((%closure (lambda (self$986 r$300) ((%closure (lambda (self$997 r$337) ((%closure (lambda (self$998 r$301) ((%closure (lambda (self$1011 r$328) ((%closure (lambda (self$1012 r$302) ((%closure (lambda (self$1021 r$322) ((%closure (lambda (self$1022 r$303) ((%closure (lambda (self$1035 r$309) ((%closure (lambda (self$1036 r$304) ((lambda (r$305) ((lambda (r$264) ((%closure-ref main 0) main %halt)) (set-global! test-boyer r$305))) (%closure (lambda (self$1037 k$306 alist$160 term$159 n$158) ((%closure (lambda (self$1038 r$307) ((%closure-ref (cell-get (%closure-ref self$1038 6)) 0) (cell-get (%closure-ref self$1038 6)) (%closure (lambda (self$1039 answer$161) (if answer$161 ((%closure-ref (%closure-ref self$1039 1) 0) (%closure-ref self$1039 1) (cell-get (%closure-ref self$1039 2))) ((%closure-ref (%closure-ref self$1039 1) 0) (%closure-ref self$1039 1) #f))) (%closure-ref self$1038 2) (%closure-ref self$1038 4)) (%closure-ref self$1038 1) (%closure-ref self$1038 5) (%closure-ref self$1038 3))) alist$160 k$306 n$158 (%closure-ref self$1037 1) term$159 (%closure-ref self$1037 2)) (set-cell! (%closure-ref self$1037 1) 0))) (%closure-ref self$1036 1) (%closure-ref self$1036 2)))) (%closure-ref self$1035 1) (%closure-ref self$1035 2)) (set-global! setup-boyer r$309))) (%closure-ref self$1022 4) (%closure-ref self$1022 7)) (%closure (lambda (self$1023 k$310) ((%closure (lambda (self$1024 r$321) ((%closure (lambda (self$1025 r$311) ((%closure (lambda (self$1026 r$320) ((%closure-ref (cell-get (%closure-ref self$1026 5)) 0) (cell-get (%closure-ref self$1026 5)) (%closure (lambda (self$1027 r$319) ((%closure (lambda (self$1028 r$312) ((%closure (lambda (self$1029 r$318) ((%closure-ref (cell-get (%closure-ref self$1029 4)) 0) (cell-get (%closure-ref self$1029 4)) (%closure (lambda (self$1030 r$317) ((%closure (lambda (self$1031 r$313) ((%closure (lambda (self$1032 r$316) ((%closure-ref (cell-get (%closure-ref self$1032 3)) 0) (cell-get (%closure-ref self$1032 3)) (%closure (lambda (self$1033 r$315) ((%closure (lambda (self$1034 r$314) ((%closure-ref (cell-get (%closure-ref self$1034 2)) 0) (cell-get (%closure-ref self$1034 2)) (%closure-ref self$1034 1))) (%closure-ref self$1033 1) (%closure-ref self$1033 2)) (set-cell! (%closure-ref self$1033 3) r$315))) (%closure-ref self$1032 1) (%closure-ref self$1032 2) (%closure-ref self$1032 4)) r$316)) (%closure-ref self$1031 1) (%closure-ref self$1031 2) (%closure-ref self$1031 3) (%closure-ref self$1031 4)) (quote (t)))) (%closure-ref self$1030 2) (%closure-ref self$1030 3) (%closure-ref self$1030 4) (%closure-ref self$1030 5)) (set-cell! (%closure-ref self$1030 1) r$317))) (%closure-ref self$1029 1) (%closure-ref self$1029 2) (%closure-ref self$1029 3) (%closure-ref self$1029 4) (%closure-ref self$1029 5)) r$318)) (%closure-ref self$1028 1) (%closure-ref self$1028 2) (%closure-ref self$1028 3) (%closure-ref self$1028 4) (%closure-ref self$1028 5)) (quote (f)))) (%closure-ref self$1027 1) (%closure-ref self$1027 3) (%closure-ref self$1027 4) (%closure-ref self$1027 5) (%closure-ref self$1027 6)) (set-cell! (%closure-ref self$1027 2) r$319))) (%closure-ref self$1026 1) (%closure-ref self$1026 2) (%closure-ref self$1026 3) (%closure-ref self$1026 4) (%closure-ref self$1026 6) (%closure-ref self$1026 7)) r$320)) (%closure-ref self$1025 1) (%closure-ref self$1025 2) (%closure-ref self$1025 3) (%closure-ref self$1025 4) (%closure-ref self$1025 5) (%closure-ref self$1025 6) (%closure-ref self$1025 7)) (quote if))) (%closure-ref self$1024 2) (%closure-ref self$1024 3) (%closure-ref self$1024 4) (%closure-ref self$1024 5) (%closure-ref self$1024 6) (%closure-ref self$1024 7) (%closure-ref self$1024 8)) (set-cell! (%closure-ref self$1024 1) r$321))) (%closure-ref self$1023 1) (%closure-ref self$1023 2) (%closure-ref self$1023 3) k$310 (%closure-ref self$1023 4) (%closure-ref self$1023 5) (%closure-ref self$1023 6) (%closure-ref self$1023 7)) (quote ()))) (%closure-ref self$1022 1) (%closure-ref self$1022 2) (%closure-ref self$1022 3) (%closure-ref self$1022 5) (%closure-ref self$1022 6) (%closure-ref self$1022 8) (%closure-ref self$1022 9)))) (%closure-ref self$1021 1) (%closure-ref self$1021 2) (%closure-ref self$1021 3) (%closure-ref self$1021 4) (%closure-ref self$1021 5) (%closure-ref self$1021 6) (%closure-ref self$1021 8) (%closure-ref self$1021 9) (%closure-ref self$1021 10)) (set-cell! (%closure-ref self$1021 7) r$322))) (%closure-ref self$1012 1) (%closure-ref self$1012 2) (%closure-ref self$1012 3) (%closure-ref self$1012 4) (%closure-ref self$1012 5) (%closure-ref self$1012 6) (%closure-ref self$1012 8) (%closure-ref self$1012 9) (%closure-ref self$1012 10) (%closure-ref self$1012 11)) (%closure (lambda (self$1013 k$323 x$163 lst$162) ((%closure (lambda (self$1014 r$324) (if r$324 ((%closure (lambda (self$1020) ((%closure-ref (%closure-ref self$1020 1) 0) (%closure-ref self$1020 1) #f)) (%closure-ref self$1014 1))) ((%closure (lambda (self$1015 r$327) ((%closure-ref (cell-get (%closure-ref self$1015 3)) 0) (cell-get (%closure-ref self$1015 3)) (%closure (lambda (self$1016 r$325) (if r$325 ((%closure (lambda (self$1019) ((%closure-ref (%closure-ref self$1019 1) 0) (%closure-ref self$1019 1) #t)) (%closure-ref self$1016 1))) ((%closure (lambda (self$1017) ((%closure (lambda (self$1018 r$326) ((%closure-ref (cell-get (%closure-ref self$1018 2)) 0) (cell-get (%closure-ref self$1018 2)) (%closure-ref self$1018 1) (%closure-ref self$1018 3) r$326)) (%closure-ref self$1017 1) (%closure-ref self$1017 3) (%closure-ref self$1017 4)) (cdr (%closure-ref self$1017 2)))) (%closure-ref self$1016 1) (%closure-ref self$1016 2) (%closure-ref self$1016 3) (%closure-ref self$1016 4))))) (%closure-ref self$1015 1) (%closure-ref self$1015 2) (%closure-ref self$1015 4) (%closure-ref self$1015 5)) (%closure-ref self$1015 5) r$327)) (%closure-ref self$1014 1) (%closure-ref self$1014 2) (%closure-ref self$1014 3) (%closure-ref self$1014 4) (%closure-ref self$1014 5)) (car (%closure-ref self$1014 2))))) k$323 lst$162 (%closure-ref self$1013 1) (%closure-ref self$1013 2) x$163) (null? lst$162))) (%closure-ref self$1012 7) (%closure-ref self$1012 8)))) (%closure-ref self$1011 1) (%closure-ref self$1011 2) (%closure-ref self$1011 3) (%closure-ref self$1011 4) (%closure-ref self$1011 5) (%closure-ref self$1011 6) (%closure-ref self$1011 8) (%closure-ref self$1011 9) (%closure-ref self$1011 10) (%closure-ref self$1011 11) (%closure-ref self$1011 12)) (set-cell! (%closure-ref self$1011 7) r$328))) (%closure-ref self$998 1) (%closure-ref self$998 2) (%closure-ref self$998 3) (%closure-ref self$998 4) (%closure-ref self$998 5) (%closure-ref self$998 6) (%closure-ref self$998 7) (%closure-ref self$998 8) (%closure-ref self$998 9) (%closure-ref self$998 10) (%closure-ref self$998 11) (%closure-ref self$998 12)) (%closure (lambda (self$999 k$329 lst1$165 lst2$164) ((%closure (lambda (self$1000 r$330) (if r$330 ((%closure (lambda (self$1010) ((%closure-ref (%closure-ref self$1010 1) 0) (%closure-ref self$1010 1) (null? (%closure-ref self$1010 2)))) (%closure-ref self$1000 1) (%closure-ref self$1000 3))) ((%closure (lambda (self$1001 r$331) (if r$331 ((%closure (lambda (self$1009) ((%closure-ref (%closure-ref self$1009 1) 0) (%closure-ref self$1009 1) #f)) (%closure-ref self$1001 1))) ((%closure (lambda (self$1002 r$335) ((%closure (lambda (self$1003 r$336) ((%closure-ref (cell-get (%closure-ref self$1003 6)) 0) (cell-get (%closure-ref self$1003 6)) (%closure (lambda (self$1004 r$332) (if r$332 ((%closure (lambda (self$1006) ((%closure (lambda (self$1007 r$333) ((%closure (lambda (self$1008 r$334) ((%closure-ref (cell-get (%closure-ref self$1008 3)) 0) (cell-get (%closure-ref self$1008 3)) (%closure-ref self$1008 1) (%closure-ref self$1008 2) r$334)) (%closure-ref self$1007 1) r$333 (%closure-ref self$1007 3)) (cdr (%closure-ref self$1007 2)))) (%closure-ref self$1006 1) (%closure-ref self$1006 3) (%closure-ref self$1006 4)) (cdr (%closure-ref self$1006 2)))) (%closure-ref self$1004 1) (%closure-ref self$1004 2) (%closure-ref self$1004 3) (%closure-ref self$1004 4))) ((%closure (lambda (self$1005) ((%closure-ref (%closure-ref self$1005 1) 0) (%closure-ref self$1005 1) #f)) (%closure-ref self$1004 1))))) (%closure-ref self$1003 1) (%closure-ref self$1003 2) (%closure-ref self$1003 3) (%closure-ref self$1003 5)) (%closure-ref self$1003 4) r$336)) (%closure-ref self$1002 1) (%closure-ref self$1002 2) (%closure-ref self$1002 3) r$335 (%closure-ref self$1002 4) (%closure-ref self$1002 5)) (car (%closure-ref self$1002 3)))) (%closure-ref self$1001 1) (%closure-ref self$1001 2) (%closure-ref self$1001 3) (%closure-ref self$1001 4) (%closure-ref self$1001 5)) (car (%closure-ref self$1001 2))))) (%closure-ref self$1000 1) (%closure-ref self$1000 2) (%closure-ref self$1000 3) (%closure-ref self$1000 4) (%closure-ref self$1000 5)) (null? (%closure-ref self$1000 3))))) k$329 lst1$165 lst2$164 (%closure-ref self$999 1) (%closure-ref self$999 2)) (null? lst1$165))) (%closure-ref self$998 7) (%closure-ref self$998 8)))) (%closure-ref self$997 1) (%closure-ref self$997 2) (%closure-ref self$997 3) (%closure-ref self$997 4) (%closure-ref self$997 5) (%closure-ref self$997 6) (%closure-ref self$997 7) (%closure-ref self$997 8) (%closure-ref self$997 9) (%closure-ref self$997 10) (%closure-ref self$997 11) (%closure-ref self$997 12)) (set-cell! (%closure-ref self$997 8) r$337))) (%closure-ref self$986 1) (%closure-ref self$986 2) (%closure-ref self$986 3) (%closure-ref self$986 4) (%closure-ref self$986 5) (%closure-ref self$986 6) (%closure-ref self$986 8) (%closure-ref self$986 9) (%closure-ref self$986 10) (%closure-ref self$986 11) (%closure-ref self$986 12) (%closure-ref self$986 13)) (%closure (lambda (self$987 k$338 x$167 y$166) ((%closure (lambda (self$988 r$339) (if r$339 ((%closure (lambda (self$990) ((%closure (lambda (self$991 r$340) (if r$340 ((%closure (lambda (self$992 r$344) ((%closure (lambda (self$993 r$345) ((%closure-ref (cell-get (%closure-ref self$993 3)) 0) (cell-get (%closure-ref self$993 3)) (%closure (lambda (self$994 r$341) (if r$341 ((%closure (lambda (self$995 r$342) ((%closure (lambda (self$996 r$343) ((%closure-ref (cell-get (%closure-ref self$996 3)) 0) (cell-get (%closure-ref self$996 3)) (%closure-ref self$996 1) (%closure-ref self$996 2) r$343)) (%closure-ref self$995 1) r$342 (%closure-ref self$995 2)) (cdr (%closure-ref self$995 3)))) (%closure-ref self$994 1) (%closure-ref self$994 2) (%closure-ref self$994 4)) (cdr (%closure-ref self$994 3))) ((%closure-ref (%closure-ref self$994 1) 0) (%closure-ref self$994 1) #f))) (%closure-ref self$993 1) (%closure-ref self$993 4) (%closure-ref self$993 5) (%closure-ref self$993 6)) (%closure-ref self$993 2) r$345)) (%closure-ref self$992 1) r$344 (%closure-ref self$992 2) (%closure-ref self$992 3) (%closure-ref self$992 4) (%closure-ref self$992 5)) (car (%closure-ref self$992 5)))) (%closure-ref self$991 1) (%closure-ref self$991 2) (%closure-ref self$991 3) (%closure-ref self$991 4) (%closure-ref self$991 5)) (car (%closure-ref self$991 4))) ((%closure-ref (%closure-ref self$991 1) 0) (%closure-ref self$991 1) #f))) (%closure-ref self$990 1) (%closure-ref self$990 2) (%closure-ref self$990 3) (%closure-ref self$990 4) (%closure-ref self$990 5)) (pair? (%closure-ref self$990 5)))) (%closure-ref self$988 1) (%closure-ref self$988 2) (%closure-ref self$988 3) (%closure-ref self$988 4) (%closure-ref self$988 5))) ((%closure (lambda (self$989) ((%closure-ref (%closure-ref self$989 1) 0) (%closure-ref self$989 1) (equal? (%closure-ref self$989 2) (%closure-ref self$989 3)))) (%closure-ref self$988 1) (%closure-ref self$988 4) (%closure-ref self$988 5))))) k$338 (%closure-ref self$987 1) (%closure-ref self$987 2) x$167 y$166) (pair? x$167))) (%closure-ref self$986 7) (%closure-ref self$986 8)))) (%closure-ref self$985 1) (%closure-ref self$985 2) (%closure-ref self$985 3) (%closure-ref self$985 4) (%closure-ref self$985 5) (%closure-ref self$985 6) (%closure-ref self$985 7) (%closure-ref self$985 8) (%closure-ref self$985 9) (%closure-ref self$985 10) (%closure-ref self$985 11) (%closure-ref self$985 13) (%closure-ref self$985 14)) (set-cell! (%closure-ref self$985 12) r$346))) (%closure-ref self$973 1) (%closure-ref self$973 2) (%closure-ref self$973 3) (%closure-ref self$973 4) (%closure-ref self$973 5) (%closure-ref self$973 6) (%closure-ref self$973 7) (%closure-ref self$973 8) (%closure-ref self$973 9) (%closure-ref self$973 10) (%closure-ref self$973 11) (%closure-ref self$973 12) (%closure-ref self$973 13) (%closure-ref self$973 14)) (%closure (lambda (self$974 k$347 n$168) ((%closure (lambda (self$975 r$348) (if r$348 ((%closure (lambda (self$983) ((%closure (lambda (self$984 r$349) ((%closure-ref list 0) list (%closure-ref self$984 1) r$349 0 1)) (%closure-ref self$983 1)) (quote implies))) (%closure-ref self$975 1))) ((%closure (lambda (self$976) ((%closure (lambda (self$977 r$350) ((%closure (lambda (self$978 r$354) ((%closure (lambda (self$979 r$355) ((%closure-ref list 0) list (%closure (lambda (self$980 r$351) ((%closure (lambda (self$981 r$353) ((%closure-ref (cell-get (%closure-ref self$981 4)) 0) (cell-get (%closure-ref self$981 4)) (%closure (lambda (self$982 r$352) ((%closure-ref list 0) list (%closure-ref self$982 1) (%closure-ref self$982 2) (%closure-ref self$982 3) r$352)) (%closure-ref self$981 1) (%closure-ref self$981 2) (%closure-ref self$981 3)) r$353)) (%closure-ref self$980 1) (%closure-ref self$980 3) r$351 (%closure-ref self$980 4)) (- (%closure-ref self$980 2) 1))) (%closure-ref self$979 1) (%closure-ref self$979 2) (%closure-ref self$979 3) (%closure-ref self$979 5)) (%closure-ref self$979 4) r$355 (%closure-ref self$979 2))) (%closure-ref self$978 1) (%closure-ref self$978 2) (%closure-ref self$978 3) r$354 (%closure-ref self$978 4)) (- (%closure-ref self$978 2) 1))) (%closure-ref self$977 1) (%closure-ref self$977 2) r$350 (%closure-ref self$977 3)) (quote implies))) (%closure-ref self$976 1) (%closure-ref self$976 2) (%closure-ref self$976 3)) (quote and))) (%closure-ref self$975 1) (%closure-ref self$975 2) (%closure-ref self$975 3))))) k$347 n$168 (%closure-ref self$974 1)) (equal? n$168 1))) (%closure-ref self$973 12)))) (%closure-ref self$972 1) (%closure-ref self$972 2) (%closure-ref self$972 3) (%closure-ref self$972 4) (%closure-ref self$972 5) (%closure-ref self$972 6) (%closure-ref self$972 7) (%closure-ref self$972 8) (%closure-ref self$972 9) (%closure-ref self$972 10) (%closure-ref self$972 11) (%closure-ref self$972 13) (%closure-ref self$972 14) (%closure-ref self$972 15)) (set-cell! (%closure-ref self$972 12) r$356))) (%closure-ref self$965 1) (%closure-ref self$965 2) (%closure-ref self$965 3) (%closure-ref self$965 4) (%closure-ref self$965 5) (%closure-ref self$965 6) (%closure-ref self$965 7) (%closure-ref self$965 8) (%closure-ref self$965 9) (%closure-ref self$965 10) (%closure-ref self$965 11) (%closure-ref self$965 12) (%closure-ref self$965 13) (%closure-ref self$965 14) (%closure-ref self$965 15)) (%closure (lambda (self$966 k$357 n$169) ((%closure (lambda (self$967 r$359) ((%closure-ref (cell-get (%closure-ref self$967 3)) 0) (cell-get (%closure-ref self$967 3)) (%closure (lambda (self$968 r$360) ((%closure (lambda (self$969 r$362) ((%closure-ref list 0) list (%closure (lambda (self$970 r$361) ((%closure-ref list 0) list (%closure (lambda (self$971 r$358) ((%closure-ref (cell-get (%closure-ref self$971 2)) 0) (cell-get (%closure-ref self$971 2)) (%closure-ref self$971 1) r$358)) (%closure-ref self$970 1) (%closure-ref self$970 4)) (%closure-ref self$970 2) (%closure-ref self$970 3) r$361)) (%closure-ref self$969 1) (%closure-ref self$969 3) (%closure-ref self$969 4) (%closure-ref self$969 5)) r$362 0 (%closure-ref self$969 2))) (%closure-ref self$968 1) (%closure-ref self$968 2) (%closure-ref self$968 3) r$360 (%closure-ref self$968 4)) (quote implies))) (%closure-ref self$967 1) (%closure-ref self$967 2) r$359 (%closure-ref self$967 4)) (%closure-ref self$967 2))) k$357 n$169 (%closure-ref self$966 1) (%closure-ref self$966 2)) (quote implies))) (%closure-ref self$965 13) (%closure-ref self$965 14)))) (%closure-ref self$964 1) (%closure-ref self$964 2) (%closure-ref self$964 3) (%closure-ref self$964 4) (%closure-ref self$964 5) (%closure-ref self$964 6) (%closure-ref self$964 7) (%closure-ref self$964 8) (%closure-ref self$964 9) (%closure-ref self$964 10) (%closure-ref self$964 11) (%closure-ref self$964 12) (%closure-ref self$964 13) (%closure-ref self$964 14) (%closure-ref self$964 15)) (set-cell! (%closure-ref self$964 15) r$363))) (%closure-ref self$963 1) (%closure-ref self$963 2) (%closure-ref self$963 3) (%closure-ref self$963 4) (%closure-ref self$963 5) (%closure-ref self$963 6) (%closure-ref self$963 7) (%closure-ref self$963 8) (%closure-ref self$963 9) (%closure-ref self$963 10) (%closure-ref self$963 11) (%closure-ref self$963 12) (%closure-ref self$963 13) (%closure-ref self$963 14) (%closure-ref self$963 15)) (quote *))) (%closure-ref self$962 1) (%closure-ref self$962 2) (%closure-ref self$962 3) (%closure-ref self$962 4) (%closure-ref self$962 5) (%closure-ref self$962 6) (%closure-ref self$962 7) (%closure-ref self$962 8) (%closure-ref self$962 9) (%closure-ref self$962 10) (%closure-ref self$962 11) (%closure-ref self$962 12) (%closure-ref self$962 13) (%closure-ref self$962 14) (%closure-ref self$962 15)) (set-cell! (%closure-ref self$962 2) r$364))) (%closure-ref self$961 1) (%closure-ref self$961 2) (%closure-ref self$961 3) (%closure-ref self$961 4) (%closure-ref self$961 5) (%closure-ref self$961 6) (%closure-ref self$961 7) (%closure-ref self$961 8) (%closure-ref self$961 9) (%closure-ref self$961 10) (%closure-ref self$961 11) (%closure-ref self$961 12) (%closure-ref self$961 13) (%closure-ref self$961 14) (%closure-ref self$961 15)) (quote *))) (%closure-ref self$960 1) (%closure-ref self$960 2) (%closure-ref self$960 3) (%closure-ref self$960 4) (%closure-ref self$960 5) (%closure-ref self$960 6) (%closure-ref self$960 7) (%closure-ref self$960 8) (%closure-ref self$960 9) (%closure-ref self$960 10) (%closure-ref self$960 11) (%closure-ref self$960 12) (%closure-ref self$960 13) (%closure-ref self$960 14) (%closure-ref self$960 15)) (set-cell! (%closure-ref self$960 16) r$365))) (%closure-ref self$957 1) (%closure-ref self$957 2) (%closure-ref self$957 3) (%closure-ref self$957 4) (%closure-ref self$957 5) (%closure-ref self$957 6) (%closure-ref self$957 7) (%closure-ref self$957 8) (%closure-ref self$957 9) (%closure-ref self$957 10) (%closure-ref self$957 11) (%closure-ref self$957 12) (%closure-ref self$957 13) (%closure-ref self$957 14) (%closure-ref self$957 15) (%closure-ref self$957 16)) (%closure (lambda (self$958 k$366 x$171 lst$170) ((%closure-ref (cell-get (%closure-ref self$958 1)) 0) (cell-get (%closure-ref self$958 1)) (%closure (lambda (self$959 tmp$172) (if tmp$172 ((%closure-ref (%closure-ref self$959 1) 0) (%closure-ref self$959 1) tmp$172) ((%closure-ref (cell-get (%closure-ref self$959 3)) 0) (cell-get (%closure-ref self$959 3)) (%closure-ref self$959 1) (%closure-ref self$959 4) (%closure-ref self$959 2)))) k$366 lst$170 (%closure-ref self$958 2) x$171) x$171 (cell-get (%closure-ref self$958 3)))) (%closure-ref self$957 9) (%closure-ref self$957 10) (%closure-ref self$957 15)))) (%closure-ref self$956 1) (%closure-ref self$956 2) (%closure-ref self$956 4) (%closure-ref self$956 5) (%closure-ref self$956 6) (%closure-ref self$956 7) (%closure-ref self$956 8) (%closure-ref self$956 9) (%closure-ref self$956 10) (%closure-ref self$956 11) (%closure-ref self$956 12) (%closure-ref self$956 13) (%closure-ref self$956 14) (%closure-ref self$956 15) (%closure-ref self$956 16) (%closure-ref self$956 17)) (set-cell! (%closure-ref self$956 3) r$368))) (%closure-ref self$953 1) (%closure-ref self$953 2) (%closure-ref self$953 3) (%closure-ref self$953 4) (%closure-ref self$953 5) (%closure-ref self$953 6) (%closure-ref self$953 7) (%closure-ref self$953 8) (%closure-ref self$953 9) (%closure-ref self$953 10) (%closure-ref self$953 11) (%closure-ref self$953 12) (%closure-ref self$953 13) (%closure-ref self$953 14) (%closure-ref self$953 15) (%closure-ref self$953 16) (%closure-ref self$953 17)) (%closure (lambda (self$954 k$369 x$174 lst$173) ((%closure-ref (cell-get (%closure-ref self$954 2)) 0) (cell-get (%closure-ref self$954 2)) (%closure (lambda (self$955 tmp$175) (if tmp$175 ((%closure-ref (%closure-ref self$955 1) 0) (%closure-ref self$955 1) tmp$175) ((%closure-ref (cell-get (%closure-ref self$955 3)) 0) (cell-get (%closure-ref self$955 3)) (%closure-ref self$955 1) (%closure-ref self$955 4) (%closure-ref self$955 2)))) k$369 lst$173 (%closure-ref self$954 3) x$174) x$174 (cell-get (%closure-ref self$954 1)))) (%closure-ref self$953 2) (%closure-ref self$953 10) (%closure-ref self$953 11)))) (%closure-ref self$952 1) (%closure-ref self$952 2) (%closure-ref self$952 3) (%closure-ref self$952 4) (%closure-ref self$952 6) (%closure-ref self$952 7) (%closure-ref self$952 8) (%closure-ref self$952 9) (%closure-ref self$952 10) (%closure-ref self$952 11) (%closure-ref self$952 12) (%closure-ref self$952 13) (%closure-ref self$952 14) (%closure-ref self$952 15) (%closure-ref self$952 16) (%closure-ref self$952 17) (%closure-ref self$952 18)) (set-cell! (%closure-ref self$952 5) r$371))) (%closure-ref self$939 1) (%closure-ref self$939 2) (%closure-ref self$939 3) (%closure-ref self$939 4) (%closure-ref self$939 6) (%closure-ref self$939 7) (%closure-ref self$939 8) (%closure-ref self$939 9) (%closure-ref self$939 10) (%closure-ref self$939 11) (%closure-ref self$939 12) (%closure-ref self$939 13) (%closure-ref self$939 14) (%closure-ref self$939 15) (%closure-ref self$939 16) (%closure-ref self$939 17) (%closure-ref self$939 18) (%closure-ref self$939 19)) (%closure (lambda (self$940 k$372 lst1$177 lst2$176) ((%closure (lambda (self$941 r$373) (if r$373 ((%closure (lambda (self$951) ((%closure-ref (%closure-ref self$951 1) 0) (%closure-ref self$951 1) (null? (%closure-ref self$951 2)))) (%closure-ref self$941 1) (%closure-ref self$941 3))) ((%closure (lambda (self$942 r$374) (if r$374 ((%closure (lambda (self$950) ((%closure-ref (%closure-ref self$950 1) 0) (%closure-ref self$950 1) #f)) (%closure-ref self$942 1))) ((%closure (lambda (self$943 r$378) ((%closure (lambda (self$944 r$379) ((%closure-ref (cell-get (%closure-ref self$944 4)) 0) (cell-get (%closure-ref self$944 4)) (%closure (lambda (self$945 r$375) (if r$375 ((%closure (lambda (self$947) ((%closure (lambda (self$948 r$376) ((%closure (lambda (self$949 r$377) ((%closure-ref (cell-get (%closure-ref self$949 2)) 0) (cell-get (%closure-ref self$949 2)) (%closure-ref self$949 1) (%closure-ref self$949 3) r$377)) (%closure-ref self$948 1) (%closure-ref self$948 3) r$376) (cdr (%closure-ref self$948 2)))) (%closure-ref self$947 1) (%closure-ref self$947 3) (%closure-ref self$947 4)) (cdr (%closure-ref self$947 2)))) (%closure-ref self$945 1) (%closure-ref self$945 2) (%closure-ref self$945 3) (%closure-ref self$945 4))) ((%closure (lambda (self$946) ((%closure-ref (%closure-ref self$946 1) 0) (%closure-ref self$946 1) #f)) (%closure-ref self$945 1))))) (%closure-ref self$944 1) (%closure-ref self$944 2) (%closure-ref self$944 3) (%closure-ref self$944 5)) (%closure-ref self$944 6) r$379)) (%closure-ref self$943 1) (%closure-ref self$943 2) (%closure-ref self$943 3) (%closure-ref self$943 4) (%closure-ref self$943 5) r$378) (car (%closure-ref self$943 3)))) (%closure-ref self$942 1) (%closure-ref self$942 2) (%closure-ref self$942 3) (%closure-ref self$942 4) (%closure-ref self$942 5)) (car (%closure-ref self$942 2))))) (%closure-ref self$941 1) (%closure-ref self$941 2) (%closure-ref self$941 3) (%closure-ref self$941 4) (%closure-ref self$941 5)) (null? (%closure-ref self$941 3))))) k$372 lst1$177 lst2$176 (%closure-ref self$940 1) (%closure-ref self$940 2)) (null? lst1$177))) (%closure-ref self$939 5) (%closure-ref self$939 6)))) (%closure-ref self$938 1) (%closure-ref self$938 2) (%closure-ref self$938 3) (%closure-ref self$938 4) (%closure-ref self$938 5) (%closure-ref self$938 6) (%closure-ref self$938 7) (%closure-ref self$938 8) (%closure-ref self$938 9) (%closure-ref self$938 10) (%closure-ref self$938 11) (%closure-ref self$938 12) (%closure-ref self$938 13) (%closure-ref self$938 14) (%closure-ref self$938 15) (%closure-ref self$938 16) (%closure-ref self$938 17) (%closure-ref self$938 18) (%closure-ref self$938 19)) (set-cell! (%closure-ref self$938 5) r$380))) (%closure-ref self$916 1) (%closure-ref self$916 2) (%closure-ref self$916 3) (%closure-ref self$916 4) (%closure-ref self$916 5) (%closure-ref self$916 6) (%closure-ref self$916 7) (%closure-ref self$916 8) (%closure-ref self$916 9) (%closure-ref self$916 10) (%closure-ref self$916 11) (%closure-ref self$916 12) (%closure-ref self$916 13) (%closure-ref self$916 14) (%closure-ref self$916 15) (%closure-ref self$916 16) (%closure-ref self$916 17) (%closure-ref self$916 18) (%closure-ref self$916 19)) (%closure (lambda (self$917 k$381 term1$179 term2$178) ((%closure (lambda (self$918 r$382) (if r$382 ((%closure (lambda (self$929 r$383) (if r$383 ((%closure (lambda (self$931 r$387) ((%closure (lambda (self$932 r$388) ((%closure (lambda (self$933 r$384) (if r$384 ((%closure (lambda (self$935) ((%closure (lambda (self$936 r$385) ((%closure (lambda (self$937 r$386) ((%closure-ref (cell-get (%closure-ref self$937 2)) 0) (cell-get (%closure-ref self$937 2)) (%closure-ref self$937 1) (%closure-ref self$937 3) r$386)) (%closure-ref self$936 1) (%closure-ref self$936 2) r$385) (cdr (%closure-ref self$936 3)))) (%closure-ref self$935 1) (%closure-ref self$935 2) (%closure-ref self$935 4)) (cdr (%closure-ref self$935 3)))) (%closure-ref self$933 1) (%closure-ref self$933 2) (%closure-ref self$933 3) (%closure-ref self$933 4))) ((%closure (lambda (self$934) ((%closure-ref (%closure-ref self$934 1) 0) (%closure-ref self$934 1) #f)) (%closure-ref self$933 1))))) (%closure-ref self$932 1) (%closure-ref self$932 2) (%closure-ref self$932 4) (%closure-ref self$932 5)) (eq? (%closure-ref self$932 3) r$388))) (%closure-ref self$931 1) (%closure-ref self$931 2) r$387 (%closure-ref self$931 3) (%closure-ref self$931 4)) (car (%closure-ref self$931 4)))) (%closure-ref self$929 1) (%closure-ref self$929 2) (%closure-ref self$929 3) (%closure-ref self$929 4)) (car (%closure-ref self$929 3))) ((%closure (lambda (self$930) ((%closure-ref (%closure-ref self$930 1) 0) (%closure-ref self$930 1) #f)) (%closure-ref self$929 1))))) (%closure-ref self$918 1) (%closure-ref self$918 2) (%closure-ref self$918 4) (%closure-ref self$918 5)) (pair? (%closure-ref self$918 4))) ((%closure (lambda (self$919) ((%closure (lambda (self$920 temp-temp$180) (if temp-temp$180 ((%closure (lambda (self$927) ((%closure (lambda (self$928 r$390) ((%closure-ref (cell-get (%closure-ref self$928 2)) 0) (cell-get (%closure-ref self$928 2)) (%closure-ref self$928 1) (%closure-ref self$928 3) r$390)) (%closure-ref self$927 1) (%closure-ref self$927 3) (%closure-ref self$927 4)) (cdr (%closure-ref self$927 2)))) (%closure-ref self$920 1) temp-temp$180 (%closure-ref self$920 2) (%closure-ref self$920 3))) ((%closure (lambda (self$921 r$391) (if r$391 ((%closure (lambda (self$926) ((%closure-ref (%closure-ref self$926 1) 0) (%closure-ref self$926 1) (equal? (%closure-ref self$926 2) (%closure-ref self$926 3)))) (%closure-ref self$921 1) (%closure-ref self$921 2) (%closure-ref self$921 3))) ((%closure (lambda (self$922) ((%closure (lambda (self$923 r$394) ((%closure (lambda (self$924 r$393) ((%closure (lambda (self$925 r$392) ((%closure-ref (%closure-ref self$925 1) 0) (%closure-ref self$925 1) #t)) (%closure-ref self$924 1)) (set-cell! (%closure-ref self$924 2) r$393))) (%closure-ref self$923 1) (%closure-ref self$923 2)) (cons r$394 (cell-get (%closure-ref self$923 2))))) (%closure-ref self$922 1) (%closure-ref self$922 4)) (cons (%closure-ref self$922 3) (%closure-ref self$922 2)))) (%closure-ref self$921 1) (%closure-ref self$921 2) (%closure-ref self$921 3) (%closure-ref self$921 4))))) (%closure-ref self$920 1) (%closure-ref self$920 3) (%closure-ref self$920 4) (%closure-ref self$920 5)) (number? (%closure-ref self$920 4))))) (%closure-ref self$919 1) (%closure-ref self$919 2) (%closure-ref self$919 3) (%closure-ref self$919 4) (%closure-ref self$919 5)) (assq (%closure-ref self$919 4) (cell-get (%closure-ref self$919 5))))) (%closure-ref self$918 1) (%closure-ref self$918 3) (%closure-ref self$918 4) (%closure-ref self$918 5) (%closure-ref self$918 6))))) k$381 (%closure-ref self$917 1) (%closure-ref self$917 2) term1$179 term2$178 (%closure-ref self$917 3)) (pair? term2$178))) (%closure-ref self$916 6) (%closure-ref self$916 12) (%closure-ref self$916 20)))) (%closure-ref self$915 1) (%closure-ref self$915 2) (%closure-ref self$915 3) (%closure-ref self$915 4) (%closure-ref self$915 6) (%closure-ref self$915 7) (%closure-ref self$915 8) (%closure-ref self$915 9) (%closure-ref self$915 10) (%closure-ref self$915 11) (%closure-ref self$915 12) (%closure-ref self$915 13) (%closure-ref self$915 14) (%closure-ref self$915 15) (%closure-ref self$915 16) (%closure-ref self$915 17) (%closure-ref self$915 18) (%closure-ref self$915 19) (%closure-ref self$915 20) (%closure-ref self$915 21)) (set-cell! (%closure-ref self$915 5) r$395))) (%closure-ref self$911 1) (%closure-ref self$911 2) (%closure-ref self$911 3) (%closure-ref self$911 4) (%closure-ref self$911 5) (%closure-ref self$911 6) (%closure-ref self$911 7) (%closure-ref self$911 8) (%closure-ref self$911 9) (%closure-ref self$911 10) (%closure-ref self$911 11) (%closure-ref self$911 12) (%closure-ref self$911 13) (%closure-ref self$911 14) (%closure-ref self$911 15) (%closure-ref self$911 16) (%closure-ref self$911 17) (%closure-ref self$911 18) (%closure-ref self$911 19) (%closure-ref self$911 20) (%closure-ref self$911 21)) (%closure (lambda (self$912 k$396 term1$182 term2$181) ((%closure (lambda (self$913 r$398) ((%closure (lambda (self$914 r$397) ((%closure-ref (cell-get (%closure-ref self$914 2)) 0) (cell-get (%closure-ref self$914 2)) (%closure-ref self$914 1) (%closure-ref self$914 3) (%closure-ref self$914 4))) (%closure-ref self$913 1) (%closure-ref self$913 2) (%closure-ref self$913 3) (%closure-ref self$913 4)) (set-cell! (%closure-ref self$913 5) r$398))) k$396 (%closure-ref self$912 1) term1$182 term2$181 (%closure-ref self$912 2)) (quote ()))) (%closure-ref self$911 6) (%closure-ref self$911 21)))) (%closure-ref self$910 1) (%closure-ref self$910 2) (%closure-ref self$910 3) (%closure-ref self$910 4) (%closure-ref self$910 5) (%closure-ref self$910 6) (%closure-ref self$910 7) (%closure-ref self$910 8) (%closure-ref self$910 9) (%closure-ref self$910 10) (%closure-ref self$910 11) (%closure-ref self$910 12) (%closure-ref self$910 13) (%closure-ref self$910 14) (%closure-ref self$910 15) (%closure-ref self$910 16) (%closure-ref self$910 17) (%closure-ref self$910 18) (%closure-ref self$910 19) (%closure-ref self$910 20) (%closure-ref self$910 21)) (set-cell! (%closure-ref self$910 21) r$399))) (%closure-ref self$909 1) (%closure-ref self$909 2) (%closure-ref self$909 3) (%closure-ref self$909 4) (%closure-ref self$909 5) (%closure-ref self$909 6) (%closure-ref self$909 7) (%closure-ref self$909 8) (%closure-ref self$909 9) (%closure-ref self$909 10) (%closure-ref self$909 11) (%closure-ref self$909 12) (%closure-ref self$909 13) (%closure-ref self$909 14) (%closure-ref self$909 15) (%closure-ref self$909 16) (%closure-ref self$909 17) (%closure-ref self$909 18) (%closure-ref self$909 19) (%closure-ref self$909 20) (%closure-ref self$909 21)) (quote *))) (%closure-ref self$908 1) (%closure-ref self$908 2) (%closure-ref self$908 3) (%closure-ref self$908 4) (%closure-ref self$908 5) (%closure-ref self$908 6) (%closure-ref self$908 7) (%closure-ref self$908 8) (%closure-ref self$908 10) (%closure-ref self$908 11) (%closure-ref self$908 12) (%closure-ref self$908 13) (%closure-ref self$908 14) (%closure-ref self$908 15) (%closure-ref self$908 16) (%closure-ref self$908 17) (%closure-ref self$908 18) (%closure-ref self$908 19) (%closure-ref self$908 20) (%closure-ref self$908 21) (%closure-ref self$908 22)) (set-cell! (%closure-ref self$908 9) r$400))) (%closure-ref self$895 1) (%closure-ref self$895 3) (%closure-ref self$895 4) (%closure-ref self$895 5) (%closure-ref self$895 6) (%closure-ref self$895 7) (%closure-ref self$895 8) (%closure-ref self$895 10) (%closure-ref self$895 11) (%closure-ref self$895 12) (%closure-ref self$895 13) (%closure-ref self$895 14) (%closure-ref self$895 15) (%closure-ref self$895 16) (%closure-ref self$895 17) (%closure-ref self$895 18) (%closure-ref self$895 19) (%closure-ref self$895 20) (%closure-ref self$895 21) (%closure-ref self$895 22) (%closure-ref self$895 23) (%closure-ref self$895 24)) (%closure (lambda (self$896 k$401 term$184 lst$183) ((%closure (lambda (self$897 r$402) (if r$402 ((%closure (lambda (self$907) ((%closure-ref (%closure-ref self$907 1) 0) (%closure-ref self$907 1) (%closure-ref self$907 2))) (%closure-ref self$897 2) (%closure-ref self$897 7))) ((%closure (lambda (self$898 r$409) ((%closure (lambda (self$899 r$408) ((%closure-ref (cell-get (%closure-ref self$899 4)) 0) (cell-get (%closure-ref self$899 4)) (%closure (lambda (self$900 r$403) (if r$403 ((%closure (lambda (self$903) ((%closure (lambda (self$904 r$406) ((%closure (lambda (self$905 r$405) ((%closure-ref (cell-get (%closure-ref self$905 1)) 0) (cell-get (%closure-ref self$905 1)) (%closure (lambda (self$906 r$404) ((%closure-ref (cell-get (%closure-ref self$906 2)) 0) (cell-get (%closure-ref self$906 2)) (%closure-ref self$906 1) r$404)) (%closure-ref self$905 2) (%closure-ref self$905 3)) (cell-get (%closure-ref self$905 4)) r$405)) (%closure-ref self$904 1) (%closure-ref self$904 2) (%closure-ref self$904 3) (%closure-ref self$904 4)) (caddr r$406))) (%closure-ref self$903 1) (%closure-ref self$903 2) (%closure-ref self$903 4) (%closure-ref self$903 5)) (car (%closure-ref self$903 3)))) (%closure-ref self$900 1) (%closure-ref self$900 2) (%closure-ref self$900 3) (%closure-ref self$900 4) (%closure-ref self$900 7))) ((%closure (lambda (self$901) ((%closure (lambda (self$902 r$407) ((%closure-ref (cell-get (%closure-ref self$902 2)) 0) (cell-get (%closure-ref self$902 2)) (%closure-ref self$902 1) (%closure-ref self$902 3) r$407)) (%closure-ref self$901 1) (%closure-ref self$901 3) (%closure-ref self$901 4)) (cdr (%closure-ref self$901 2)))) (%closure-ref self$900 2) (%closure-ref self$900 3) (%closure-ref self$900 5) (%closure-ref self$900 6))))) (%closure-ref self$899 1) (%closure-ref self$899 2) (%closure-ref self$899 3) (%closure-ref self$899 5) (%closure-ref self$899 6) (%closure-ref self$899 7) (%closure-ref self$899 8)) (%closure-ref self$899 7) r$408)) (%closure-ref self$898 1) (%closure-ref self$898 2) (%closure-ref self$898 3) (%closure-ref self$898 4) (%closure-ref self$898 5) (%closure-ref self$898 6) (%closure-ref self$898 7) (%closure-ref self$898 8)) (cadr r$409))) (%closure-ref self$897 1) (%closure-ref self$897 2) (%closure-ref self$897 3) (%closure-ref self$897 4) (%closure-ref self$897 5) (%closure-ref self$897 6) (%closure-ref self$897 7) (%closure-ref self$897 8)) (car (%closure-ref self$897 3))))) (%closure-ref self$896 1) k$401 lst$183 (%closure-ref self$896 2) (%closure-ref self$896 3) (%closure-ref self$896 4) term$184 (%closure-ref self$896 5)) (null? lst$183))) (%closure-ref self$895 2) (%closure-ref self$895 6) (%closure-ref self$895 9) (%closure-ref self$895 11) (%closure-ref self$895 24)))) (%closure-ref self$894 1) (%closure-ref self$894 2) (%closure-ref self$894 3) (%closure-ref self$894 4) (%closure-ref self$894 5) (%closure-ref self$894 6) (%closure-ref self$894 7) (%closure-ref self$894 8) (%closure-ref self$894 9) (%closure-ref self$894 11) (%closure-ref self$894 12) (%closure-ref self$894 13) (%closure-ref self$894 14) (%closure-ref self$894 15) (%closure-ref self$894 16) (%closure-ref self$894 17) (%closure-ref self$894 18) (%closure-ref self$894 19) (%closure-ref self$894 20) (%closure-ref self$894 21) (%closure-ref self$894 22) (%closure-ref self$894 23) (%closure-ref self$894 24) (%closure-ref self$894 25)) (set-cell! (%closure-ref self$894 10) r$410))) (%closure-ref self$885 1) (%closure-ref self$885 2) (%closure-ref self$885 3) (%closure-ref self$885 4) (%closure-ref self$885 5) (%closure-ref self$885 6) (%closure-ref self$885 7) (%closure-ref self$885 8) (%closure-ref self$885 9) (%closure-ref self$885 10) (%closure-ref self$885 11) (%closure-ref self$885 12) (%closure-ref self$885 13) (%closure-ref self$885 14) (%closure-ref self$885 15) (%closure-ref self$885 16) (%closure-ref self$885 17) (%closure-ref self$885 18) (%closure-ref self$885 19) (%closure-ref self$885 20) (%closure-ref self$885 21) (%closure-ref self$885 22) (%closure-ref self$885 23) (%closure-ref self$885 24) (%closure-ref self$885 25)) (%closure (lambda (self$886 k$411 lst$185) ((%closure (lambda (self$887 r$412) (if r$412 ((%closure (lambda (self$893) ((%closure-ref (%closure-ref self$893 1) 0) (%closure-ref self$893 1) (quote ()))) (%closure-ref self$887 1))) ((%closure (lambda (self$888) ((%closure (lambda (self$889 r$416) ((%closure-ref (cell-get (%closure-ref self$889 3)) 0) (cell-get (%closure-ref self$889 3)) (%closure (lambda (self$890 r$413) ((%closure (lambda (self$891 r$415) ((%closure-ref (cell-get (%closure-ref self$891 3)) 0) (cell-get (%closure-ref self$891 3)) (%closure (lambda (self$892 r$414) ((%closure-ref (%closure-ref self$892 1) 0) (%closure-ref self$892 1) (cons (%closure-ref self$892 2) r$414))) (%closure-ref self$891 1) (%closure-ref self$891 2)) r$415)) (%closure-ref self$890 1) r$413 (%closure-ref self$890 3)) (cdr (%closure-ref self$890 2)))) (%closure-ref self$889 1) (%closure-ref self$889 2) (%closure-ref self$889 4)) r$416)) (%closure-ref self$888 1) (%closure-ref self$888 2) (%closure-ref self$888 3) (%closure-ref self$888 4)) (car (%closure-ref self$888 2)))) (%closure-ref self$887 1) (%closure-ref self$887 2) (%closure-ref self$887 3) (%closure-ref self$887 4))))) k$411 lst$185 (%closure-ref self$886 1) (%closure-ref self$886 2)) (null? lst$185))) (%closure-ref self$885 9) (%closure-ref self$885 10)))) (%closure-ref self$884 1) (%closure-ref self$884 2) (%closure-ref self$884 3) (%closure-ref self$884 4) (%closure-ref self$884 5) (%closure-ref self$884 6) (%closure-ref self$884 7) (%closure-ref self$884 8) (%closure-ref self$884 9) (%closure-ref self$884 10) (%closure-ref self$884 11) (%closure-ref self$884 12) (%closure-ref self$884 13) (%closure-ref self$884 14) (%closure-ref self$884 15) (%closure-ref self$884 16) (%closure-ref self$884 17) (%closure-ref self$884 18) (%closure-ref self$884 19) (%closure-ref self$884 20) (%closure-ref self$884 21) (%closure-ref self$884 22) (%closure-ref self$884 23) (%closure-ref self$884 24) (%closure-ref self$884 25)) (set-cell! (%closure-ref self$884 9) r$417))) (%closure-ref self$871 1) (%closure-ref self$871 2) (%closure-ref self$871 3) (%closure-ref self$871 4) (%closure-ref self$871 6) (%closure-ref self$871 7) (%closure-ref self$871 8) (%closure-ref self$871 9) (%closure-ref self$871 10) (%closure-ref self$871 11) (%closure-ref self$871 12) (%closure-ref self$871 13) (%closure-ref self$871 14) (%closure-ref self$871 15) (%closure-ref self$871 16) (%closure-ref self$871 17) (%closure-ref self$871 18) (%closure-ref self$871 19) (%closure-ref self$871 20) (%closure-ref self$871 21) (%closure-ref self$871 22) (%closure-ref self$871 23) (%closure-ref self$871 24) (%closure-ref self$871 25) (%closure-ref self$871 26)) (%closure (lambda (self$872 k$418 term$186) ((%closure (lambda (self$873 r$427) ((%closure (lambda (self$874 r$419) ((%closure (lambda (self$875 r$420) (if r$420 ((%closure (lambda (self$877) ((%closure (lambda (self$878 r$424) ((%closure (lambda (self$879 r$426) ((%closure-ref (cell-get (%closure-ref self$879 4)) 0) (cell-get (%closure-ref self$879 4)) (%closure (lambda (self$880 r$425) ((%closure (lambda (self$881 r$421) ((%closure (lambda (self$882 r$423) ((%closure-ref (cell-get (%closure-ref self$882 1)) 0) (cell-get (%closure-ref self$882 1)) (%closure (lambda (self$883 r$422) ((%closure-ref (cell-get (%closure-ref self$883 3)) 0) (cell-get (%closure-ref self$883 3)) (%closure-ref self$883 1) (%closure-ref self$883 2) r$422)) (%closure-ref self$882 2) (%closure-ref self$882 3) (%closure-ref self$882 4)) r$423)) (%closure-ref self$881 1) (%closure-ref self$881 2) r$421 (%closure-ref self$881 3)) (car (%closure-ref self$881 4)))) (%closure-ref self$880 1) (%closure-ref self$880 2) (%closure-ref self$880 4) (%closure-ref self$880 5)) (cons (%closure-ref self$880 3) r$425))) (%closure-ref self$879 1) (%closure-ref self$879 2) (%closure-ref self$879 3) (%closure-ref self$879 5) (%closure-ref self$879 6)) r$426)) (%closure-ref self$878 1) (%closure-ref self$878 2) r$424 (%closure-ref self$878 3) (%closure-ref self$878 4) (%closure-ref self$878 5)) (cdr (%closure-ref self$878 5)))) (%closure-ref self$877 1) (%closure-ref self$877 2) (%closure-ref self$877 3) (%closure-ref self$877 4) (%closure-ref self$877 5)) (car (%closure-ref self$877 5)))) (%closure-ref self$875 1) (%closure-ref self$875 2) (%closure-ref self$875 3) (%closure-ref self$875 4) (%closure-ref self$875 5))) ((%closure (lambda (self$876) ((%closure-ref (%closure-ref self$876 1) 0) (%closure-ref self$876 1) (%closure-ref self$876 2))) (%closure-ref self$875 2) (%closure-ref self$875 5))))) (%closure-ref self$874 1) (%closure-ref self$874 2) (%closure-ref self$874 3) (%closure-ref self$874 4) (%closure-ref self$874 5)) (pair? (%closure-ref self$874 5)))) (%closure-ref self$873 1) (%closure-ref self$873 2) (%closure-ref self$873 3) (%closure-ref self$873 5) (%closure-ref self$873 6)) (set-cell! (%closure-ref self$873 4) r$427))) (%closure-ref self$872 1) k$418 (%closure-ref self$872 2) (%closure-ref self$872 3) (%closure-ref self$872 4) term$186) (+ (cell-get (%closure-ref self$872 3)) 1))) (%closure-ref self$871 5) (%closure-ref self$871 11) (%closure-ref self$871 12) (%closure-ref self$871 13)))) (%closure-ref self$870 1) (%closure-ref self$870 2) (%closure-ref self$870 3) (%closure-ref self$870 4) (%closure-ref self$870 5) (%closure-ref self$870 6) (%closure-ref self$870 7) (%closure-ref self$870 8) (%closure-ref self$870 9) (%closure-ref self$870 10) (%closure-ref self$870 11) (%closure-ref self$870 12) (%closure-ref self$870 13) (%closure-ref self$870 14) (%closure-ref self$870 15) (%closure-ref self$870 16) (%closure-ref self$870 17) (%closure-ref self$870 18) (%closure-ref self$870 19) (%closure-ref self$870 20) (%closure-ref self$870 21) (%closure-ref self$870 22) (%closure-ref self$870 23) (%closure-ref self$870 24) (%closure-ref self$870 25) (%closure-ref self$870 26)) (set-cell! (%closure-ref self$870 12) 0))) (%closure-ref self$869 1) (%closure-ref self$869 2) (%closure-ref self$869 3) (%closure-ref self$869 4) (%closure-ref self$869 5) (%closure-ref self$869 6) (%closure-ref self$869 7) (%closure-ref self$869 8) (%closure-ref self$869 9) (%closure-ref self$869 10) (%closure-ref self$869 11) (%closure-ref self$869 12) (%closure-ref self$869 13) (%closure-ref self$869 14) (%closure-ref self$869 15) (%closure-ref self$869 16) (%closure-ref self$869 17) (%closure-ref self$869 18) (%closure-ref self$869 19) (%closure-ref self$869 20) (%closure-ref self$869 21) (%closure-ref self$869 22) (%closure-ref self$869 23) (%closure-ref self$869 24) (%closure-ref self$869 25) (%closure-ref self$869 26)) (set-cell! (%closure-ref self$869 6) r$428))) (%closure-ref self$868 1) (%closure-ref self$868 2) (%closure-ref self$868 3) (%closure-ref self$868 4) (%closure-ref self$868 5) (%closure-ref self$868 6) (%closure-ref self$868 7) (%closure-ref self$868 8) (%closure-ref self$868 9) (%closure-ref self$868 10) (%closure-ref self$868 11) (%closure-ref self$868 12) (%closure-ref self$868 13) (%closure-ref self$868 14) (%closure-ref self$868 15) (%closure-ref self$868 16) (%closure-ref self$868 17) (%closure-ref self$868 18) (%closure-ref self$868 19) (%closure-ref self$868 20) (%closure-ref self$868 21) (%closure-ref self$868 22) (%closure-ref self$868 23) (%closure-ref self$868 24) (%closure-ref self$868 25) (%closure-ref self$868 26)) (quote *))) (%closure-ref self$867 1) (%closure-ref self$867 2) (%closure-ref self$867 3) (%closure-ref self$867 4) (%closure-ref self$867 5) (%closure-ref self$867 6) (%closure-ref self$867 7) (%closure-ref self$867 8) (%closure-ref self$867 9) (%closure-ref self$867 10) (%closure-ref self$867 11) (%closure-ref self$867 12) (%closure-ref self$867 13) (%closure-ref self$867 14) (%closure-ref self$867 15) (%closure-ref self$867 16) (%closure-ref self$867 18) (%closure-ref self$867 19) (%closure-ref self$867 20) (%closure-ref self$867 21) (%closure-ref self$867 22) (%closure-ref self$867 23) (%closure-ref self$867 24) (%closure-ref self$867 25) (%closure-ref self$867 26) (%closure-ref self$867 27)) (set-cell! (%closure-ref self$867 17) r$429))) (%closure-ref self$839 1) (%closure-ref self$839 2) (%closure-ref self$839 3) (%closure-ref self$839 4) (%closure-ref self$839 5) (%closure-ref self$839 6) (%closure-ref self$839 7) (%closure-ref self$839 8) (%closure-ref self$839 9) (%closure-ref self$839 10) (%closure-ref self$839 11) (%closure-ref self$839 12) (%closure-ref self$839 13) (%closure-ref self$839 14) (%closure-ref self$839 15) (%closure-ref self$839 16) (%closure-ref self$839 17) (%closure-ref self$839 18) (%closure-ref self$839 19) (%closure-ref self$839 20) (%closure-ref self$839 21) (%closure-ref self$839 22) (%closure-ref self$839 23) (%closure-ref self$839 24) (%closure-ref self$839 25) (%closure-ref self$839 26) (%closure-ref self$839 27)) (%closure (lambda (self$840 k$430 x$189 true-lst$188 false-lst$187) ((%closure-ref (cell-get (%closure-ref self$840 4)) 0) (cell-get (%closure-ref self$840 4)) (%closure (lambda (self$841 r$431) (if r$431 ((%closure (lambda (self$866) ((%closure-ref (%closure-ref self$866 1) 0) (%closure-ref self$866 1) #t)) (%closure-ref self$841 4))) ((%closure-ref (cell-get (%closure-ref self$841 2)) 0) (cell-get (%closure-ref self$841 2)) (%closure (lambda (self$842 r$432) (if r$432 ((%closure (lambda (self$865) ((%closure-ref (%closure-ref self$865 1) 0) (%closure-ref self$865 1) #f)) (%closure-ref self$842 4))) ((%closure (lambda (self$843 r$433) (if r$433 ((%closure (lambda (self$845 r$448) ((%closure (lambda (self$846 r$434) (if r$434 ((%closure (lambda (self$848) ((%closure (lambda (self$849 r$447) ((%closure-ref (cell-get (%closure-ref self$849 6)) 0) (cell-get (%closure-ref self$849 6)) (%closure (lambda (self$850 r$435) (if r$435 ((%closure (lambda (self$863) ((%closure (lambda (self$864 r$436) ((%closure-ref (cell-get (%closure-ref self$864 3)) 0) (cell-get (%closure-ref self$864 3)) (%closure-ref self$864 2) r$436 (%closure-ref self$864 4) (%closure-ref self$864 1))) (%closure-ref self$863 1) (%closure-ref self$863 2) (%closure-ref self$863 3) (%closure-ref self$863 4)) (caddr (%closure-ref self$863 5)))) (%closure-ref self$850 1) (%closure-ref self$850 3) (%closure-ref self$850 4) (%closure-ref self$850 5) (%closure-ref self$850 6))) ((%closure (lambda (self$851 r$446) ((%closure-ref (cell-get (%closure-ref self$851 2)) 0) (cell-get (%closure-ref self$851 2)) (%closure (lambda (self$852 r$437) (if r$437 ((%closure (lambda (self$861) ((%closure (lambda (self$862 r$438) ((%closure-ref (cell-get (%closure-ref self$862 3)) 0) (cell-get (%closure-ref self$862 3)) (%closure-ref self$862 2) r$438 (%closure-ref self$862 4) (%closure-ref self$862 1))) (%closure-ref self$861 1) (%closure-ref self$861 2) (%closure-ref self$861 3) (%closure-ref self$861 4)) (cadddr (%closure-ref self$861 5)))) (%closure-ref self$852 1) (%closure-ref self$852 2) (%closure-ref self$852 3) (%closure-ref self$852 4) (%closure-ref self$852 5))) ((%closure (lambda (self$853) ((%closure (lambda (self$854 r$443) ((%closure (lambda (self$855 r$445) ((%closure (lambda (self$856 r$444) ((%closure-ref (cell-get (%closure-ref self$856 4)) 0) (cell-get (%closure-ref self$856 4)) (%closure (lambda (self$857 r$439) (if r$439 ((%closure (lambda (self$858 r$440) ((%closure (lambda (self$859 r$442) ((%closure (lambda (self$860 r$441) ((%closure-ref (cell-get (%closure-ref self$860 3)) 0) (cell-get (%closure-ref self$860 3)) (%closure-ref self$860 1) (%closure-ref self$860 2) (%closure-ref self$860 4) r$441)) (%closure-ref self$859 2) (%closure-ref self$859 3) (%closure-ref self$859 4) (%closure-ref self$859 5)) (cons r$442 (%closure-ref self$859 1)))) (%closure-ref self$858 1) (%closure-ref self$858 2) r$440 (%closure-ref self$858 3) (%closure-ref self$858 4)) (cadr (%closure-ref self$858 5)))) (%closure-ref self$857 1) (%closure-ref self$857 2) (%closure-ref self$857 3) (%closure-ref self$857 4) (%closure-ref self$857 5)) (cadddr (%closure-ref self$857 5))) ((%closure-ref (%closure-ref self$857 2) 0) (%closure-ref self$857 2) #f))) (%closure-ref self$856 1) (%closure-ref self$856 2) (%closure-ref self$856 4) (%closure-ref self$856 5) (%closure-ref self$856 6)) (%closure-ref self$856 3) r$444 (%closure-ref self$856 1))) (%closure-ref self$855 1) (%closure-ref self$855 2) (%closure-ref self$855 3) (%closure-ref self$855 4) (%closure-ref self$855 5) (%closure-ref self$855 6)) (cons r$445 (%closure-ref self$855 5)))) (%closure-ref self$854 1) (%closure-ref self$854 2) r$443 (%closure-ref self$854 3) (%closure-ref self$854 4) (%closure-ref self$854 5)) (cadr (%closure-ref self$854 5)))) (%closure-ref self$853 1) (%closure-ref self$853 2) (%closure-ref self$853 3) (%closure-ref self$853 4) (%closure-ref self$853 5)) (caddr (%closure-ref self$853 5)))) (%closure-ref self$852 1) (%closure-ref self$852 2) (%closure-ref self$852 3) (%closure-ref self$852 4) (%closure-ref self$852 5))))) (%closure-ref self$851 1) (%closure-ref self$851 3) (%closure-ref self$851 4) (%closure-ref self$851 5) (%closure-ref self$851 6)) r$446 (%closure-ref self$851 1))) (%closure-ref self$850 1) (%closure-ref self$850 2) (%closure-ref self$850 3) (%closure-ref self$850 4) (%closure-ref self$850 5) (%closure-ref self$850 6)) (cadr (%closure-ref self$850 6))))) (%closure-ref self$849 1) (%closure-ref self$849 2) (%closure-ref self$849 3) (%closure-ref self$849 4) (%closure-ref self$849 5) (%closure-ref self$849 7)) r$447 (%closure-ref self$849 5))) (%closure-ref self$848 1) (%closure-ref self$848 2) (%closure-ref self$848 3) (%closure-ref self$848 4) (%closure-ref self$848 5) (%closure-ref self$848 6) (%closure-ref self$848 7)) (cadr (%closure-ref self$848 7)))) (%closure-ref self$846 1) (%closure-ref self$846 2) (%closure-ref self$846 3) (%closure-ref self$846 4) (%closure-ref self$846 5) (%closure-ref self$846 6) (%closure-ref self$846 7))) ((%closure (lambda (self$847) ((%closure-ref (%closure-ref self$847 1) 0) (%closure-ref self$847 1) #f)) (%closure-ref self$846 3))))) (%closure-ref self$845 1) (%closure-ref self$845 2) (%closure-ref self$845 4) (%closure-ref self$845 5) (%closure-ref self$845 6) (%closure-ref self$845 7) (%closure-ref self$845 8)) (eq? r$448 (cell-get (%closure-ref self$845 3))))) (%closure-ref self$843 1) (%closure-ref self$843 2) (%closure-ref self$843 3) (%closure-ref self$843 4) (%closure-ref self$843 5) (%closure-ref self$843 6) (%closure-ref self$843 7) (%closure-ref self$843 8)) (car (%closure-ref self$843 8))) ((%closure (lambda (self$844) ((%closure-ref (%closure-ref self$844 1) 0) (%closure-ref self$844 1) #f)) (%closure-ref self$843 4))))) (%closure-ref self$842 1) (%closure-ref self$842 2) (%closure-ref self$842 3) (%closure-ref self$842 4) (%closure-ref self$842 5) (%closure-ref self$842 6) (%closure-ref self$842 7) (%closure-ref self$842 8)) (pair? (%closure-ref self$842 8))))) (%closure-ref self$841 1) (%closure-ref self$841 2) (%closure-ref self$841 3) (%closure-ref self$841 4) (%closure-ref self$841 5) (%closure-ref self$841 6) (%closure-ref self$841 7) (%closure-ref self$841 8)) (%closure-ref self$841 8) (%closure-ref self$841 1)))) false-lst$187 (%closure-ref self$840 1) (%closure-ref self$840 2) k$430 (%closure-ref self$840 3) true-lst$188 (%closure-ref self$840 4) x$189) x$189 true-lst$188)) (%closure-ref self$839 4) (%closure-ref self$839 6) (%closure-ref self$839 17) (%closure-ref self$839 26)))) (%closure-ref self$838 1) (%closure-ref self$838 2) (%closure-ref self$838 3) (%closure-ref self$838 4) (%closure-ref self$838 5) (%closure-ref self$838 6) (%closure-ref self$838 7) (%closure-ref self$838 8) (%closure-ref self$838 9) (%closure-ref self$838 10) (%closure-ref self$838 11) (%closure-ref self$838 12) (%closure-ref self$838 13) (%closure-ref self$838 14) (%closure-ref self$838 15) (%closure-ref self$838 16) (%closure-ref self$838 17) (%closure-ref self$838 19) (%closure-ref self$838 20) (%closure-ref self$838 21) (%closure-ref self$838 22) (%closure-ref self$838 23) (%closure-ref self$838 24) (%closure-ref self$838 25) (%closure-ref self$838 26) (%closure-ref self$838 27) (%closure-ref self$838 28)) (set-cell! (%closure-ref self$838 18) r$449))) (%closure-ref self$833 1) (%closure-ref self$833 2) (%closure-ref self$833 3) (%closure-ref self$833 4) (%closure-ref self$833 5) (%closure-ref self$833 6) (%closure-ref self$833 7) (%closure-ref self$833 8) (%closure-ref self$833 9) (%closure-ref self$833 10) (%closure-ref self$833 11) (%closure-ref self$833 12) (%closure-ref self$833 13) (%closure-ref self$833 14) (%closure-ref self$833 15) (%closure-ref self$833 16) (%closure-ref self$833 17) (%closure-ref self$833 18) (%closure-ref self$833 19) (%closure-ref self$833 20) (%closure-ref self$833 21) (%closure-ref self$833 22) (%closure-ref self$833 23) (%closure-ref self$833 24) (%closure-ref self$833 25) (%closure-ref self$833 26) (%closure-ref self$833 27) (%closure-ref self$833 28)) (%closure (lambda (self$834 k$450 x$190) ((%closure-ref (cell-get (%closure-ref self$834 1)) 0) (cell-get (%closure-ref self$834 1)) (%closure (lambda (self$835 r$451) ((%closure (lambda (self$836 r$452) ((%closure (lambda (self$837 r$453) ((%closure-ref (cell-get (%closure-ref self$837 4)) 0) (cell-get (%closure-ref self$837 4)) (%closure-ref self$837 1) (%closure-ref self$837 2) (%closure-ref self$837 3) r$453)) (%closure-ref self$836 1) (%closure-ref self$836 2) r$452 (%closure-ref self$836 3)) (quote ()))) (%closure-ref self$835 1) r$451 (%closure-ref self$835 2)) (quote ()))) k$450 (%closure-ref self$834 2)) x$190)) (%closure-ref self$833 10) (%closure-ref self$833 17)))) (%closure-ref self$832 1) (%closure-ref self$832 2) (%closure-ref self$832 4) (%closure-ref self$832 5) (%closure-ref self$832 6) (%closure-ref self$832 7) (%closure-ref self$832 8) (%closure-ref self$832 9) (%closure-ref self$832 10) (%closure-ref self$832 11) (%closure-ref self$832 12) (%closure-ref self$832 13) (%closure-ref self$832 14) (%closure-ref self$832 15) (%closure-ref self$832 16) (%closure-ref self$832 17) (%closure-ref self$832 18) (%closure-ref self$832 19) (%closure-ref self$832 20) (%closure-ref self$832 21) (%closure-ref self$832 22) (%closure-ref self$832 23) (%closure-ref self$832 24) (%closure-ref self$832 25) (%closure-ref self$832 26) (%closure-ref self$832 27) (%closure-ref self$832 28) (%closure-ref self$832 29)) (set-cell! (%closure-ref self$832 3) r$454))) (%closure-ref self$823 1) (%closure-ref self$823 2) (%closure-ref self$823 3) (%closure-ref self$823 4) (%closure-ref self$823 5) (%closure-ref self$823 6) (%closure-ref self$823 7) (%closure-ref self$823 8) (%closure-ref self$823 9) (%closure-ref self$823 10) (%closure-ref self$823 11) (%closure-ref self$823 12) (%closure-ref self$823 13) (%closure-ref self$823 14) (%closure-ref self$823 15) (%closure-ref self$823 16) (%closure-ref self$823 17) (%closure-ref self$823 18) (%closure-ref self$823 19) (%closure-ref self$823 20) (%closure-ref self$823 21) (%closure-ref self$823 22) (%closure-ref self$823 23) (%closure-ref self$823 24) (%closure-ref self$823 25) (%closure-ref self$823 26) (%closure-ref self$823 27) (%closure-ref self$823 28) (%closure-ref self$823 29)) (%closure (lambda (self$824 k$455 alist$192 lst$191) ((%closure (lambda (self$825 r$456) (if r$456 ((%closure (lambda (self$831) ((%closure-ref (%closure-ref self$831 1) 0) (%closure-ref self$831 1) (quote ()))) (%closure-ref self$825 4))) ((%closure (lambda (self$826) ((%closure (lambda (self$827 r$460) ((%closure-ref (cell-get (%closure-ref self$827 2)) 0) (cell-get (%closure-ref self$827 2)) (%closure (lambda (self$828 r$457) ((%closure (lambda (self$829 r$459) ((%closure-ref (cell-get (%closure-ref self$829 2)) 0) (cell-get (%closure-ref self$829 2)) (%closure (lambda (self$830 r$458) ((%closure-ref (%closure-ref self$830 1) 0) (%closure-ref self$830 1) (cons (%closure-ref self$830 2) r$458))) (%closure-ref self$829 3) (%closure-ref self$829 4)) (%closure-ref self$829 1) r$459)) (%closure-ref self$828 1) (%closure-ref self$828 2) (%closure-ref self$828 3) r$457) (cdr (%closure-ref self$828 4)))) (%closure-ref self$827 1) (%closure-ref self$827 3) (%closure-ref self$827 4) (%closure-ref self$827 5)) (%closure-ref self$827 1) r$460)) (%closure-ref self$826 1) (%closure-ref self$826 2) (%closure-ref self$826 3) (%closure-ref self$826 4) (%closure-ref self$826 5)) (car (%closure-ref self$826 5)))) (%closure-ref self$825 1) (%closure-ref self$825 2) (%closure-ref self$825 3) (%closure-ref self$825 4) (%closure-ref self$825 5))))) alist$192 (%closure-ref self$824 1) (%closure-ref self$824 2) k$455 lst$191) (null? lst$191))) (%closure-ref self$823 2) (%closure-ref self$823 3)))) (%closure-ref self$822 1) (%closure-ref self$822 2) (%closure-ref self$822 3) (%closure-ref self$822 4) (%closure-ref self$822 5) (%closure-ref self$822 6) (%closure-ref self$822 7) (%closure-ref self$822 8) (%closure-ref self$822 9) (%closure-ref self$822 10) (%closure-ref self$822 11) (%closure-ref self$822 12) (%closure-ref self$822 13) (%closure-ref self$822 14) (%closure-ref self$822 15) (%closure-ref self$822 16) (%closure-ref self$822 17) (%closure-ref self$822 18) (%closure-ref self$822 19) (%closure-ref self$822 20) (%closure-ref self$822 21) (%closure-ref self$822 22) (%closure-ref self$822 23) (%closure-ref self$822 24) (%closure-ref self$822 25) (%closure-ref self$822 26) (%closure-ref self$822 27) (%closure-ref self$822 28) (%closure-ref self$822 29)) (set-cell! (%closure-ref self$822 2) r$461))) (%closure-ref self$813 1) (%closure-ref self$813 2) (%closure-ref self$813 3) (%closure-ref self$813 4) (%closure-ref self$813 5) (%closure-ref self$813 6) (%closure-ref self$813 7) (%closure-ref self$813 8) (%closure-ref self$813 9) (%closure-ref self$813 10) (%closure-ref self$813 11) (%closure-ref self$813 12) (%closure-ref self$813 13) (%closure-ref self$813 14) (%closure-ref self$813 15) (%closure-ref self$813 16) (%closure-ref self$813 17) (%closure-ref self$813 18) (%closure-ref self$813 19) (%closure-ref self$813 20) (%closure-ref self$813 21) (%closure-ref self$813 22) (%closure-ref self$813 23) (%closure-ref self$813 24) (%closure-ref self$813 25) (%closure-ref self$813 26) (%closure-ref self$813 27) (%closure-ref self$813 28) (%closure-ref self$813 29)) (%closure (lambda (self$814 k$462 alist$194 term$193) ((%closure (lambda (self$815 r$463) (if r$463 ((%closure (lambda (self$818) ((%closure (lambda (self$819 r$464) ((%closure (lambda (self$820 r$466) ((%closure-ref (cell-get (%closure-ref self$820 2)) 0) (cell-get (%closure-ref self$820 2)) (%closure (lambda (self$821 r$465) ((%closure-ref (%closure-ref self$821 1) 0) (%closure-ref self$821 1) (cons (%closure-ref self$821 2) r$465))) (%closure-ref self$820 3) (%closure-ref self$820 4)) (%closure-ref self$820 1) r$466)) (%closure-ref self$819 1) (%closure-ref self$819 2) (%closure-ref self$819 3) r$464) (cdr (%closure-ref self$819 4)))) (%closure-ref self$818 1) (%closure-ref self$818 2) (%closure-ref self$818 3) (%closure-ref self$818 4)) (car (%closure-ref self$818 4)))) (%closure-ref self$815 1) (%closure-ref self$815 2) (%closure-ref self$815 3) (%closure-ref self$815 4))) ((%closure (lambda (self$816) ((%closure (lambda (self$817 temp-temp$195) (if temp-temp$195 ((%closure-ref (%closure-ref self$817 1) 0) (%closure-ref self$817 1) (cdr temp-temp$195)) ((%closure-ref (%closure-ref self$817 1) 0) (%closure-ref self$817 1) (%closure-ref self$817 2)))) (%closure-ref self$816 2) (%closure-ref self$816 3)) (assq (%closure-ref self$816 3) (%closure-ref self$816 1)))) (%closure-ref self$815 1) (%closure-ref self$815 3) (%closure-ref self$815 4))))) alist$194 (%closure-ref self$814 1) k$462 term$193) (pair? term$193))) (%closure-ref self$813 3)))) (%closure-ref self$812 1) (%closure-ref self$812 2) (%closure-ref self$812 3) (%closure-ref self$812 4) (%closure-ref self$812 5) (%closure-ref self$812 6) (%closure-ref self$812 7) (%closure-ref self$812 8) (%closure-ref self$812 9) (%closure-ref self$812 10) (%closure-ref self$812 11) (%closure-ref self$812 12) (%closure-ref self$812 13) (%closure-ref self$812 14) (%closure-ref self$812 15) (%closure-ref self$812 16) (%closure-ref self$812 17) (%closure-ref self$812 18) (%closure-ref self$812 19) (%closure-ref self$812 20) (%closure-ref self$812 21) (%closure-ref self$812 22) (%closure-ref self$812 23) (%closure-ref self$812 24) (%closure-ref self$812 25) (%closure-ref self$812 27) (%closure-ref self$812 28) (%closure-ref self$812 29) (%closure-ref self$812 30)) (set-cell! (%closure-ref self$812 26) r$468))) (%closure-ref self$801 1) (%closure-ref self$801 2) (%closure-ref self$801 3) (%closure-ref self$801 4) (%closure-ref self$801 5) (%closure-ref self$801 6) (%closure-ref self$801 7) (%closure-ref self$801 8) (%closure-ref self$801 9) (%closure-ref self$801 10) (%closure-ref self$801 11) (%closure-ref self$801 12) (%closure-ref self$801 13) (%closure-ref self$801 14) (%closure-ref self$801 15) (%closure-ref self$801 16) (%closure-ref self$801 17) (%closure-ref self$801 18) (%closure-ref self$801 19) (%closure-ref self$801 20) (%closure-ref self$801 21) (%closure-ref self$801 22) (%closure-ref self$801 23) (%closure-ref self$801 24) (%closure-ref self$801 25) (%closure-ref self$801 26) (%closure-ref self$801 27) (%closure-ref self$801 28) (%closure-ref self$801 29) (%closure-ref self$801 30)) (%closure (lambda (self$802 k$469 alist$196) ((%closure (lambda (self$803 r$470) (if r$470 ((%closure (lambda (self$811) ((%closure-ref (%closure-ref self$811 1) 0) (%closure-ref self$811 1) (quote ()))) (%closure-ref self$803 2))) ((%closure (lambda (self$804) ((%closure (lambda (self$805 r$474) ((%closure (lambda (self$806 r$476) ((%closure-ref (cell-get (%closure-ref self$806 5)) 0) (cell-get (%closure-ref self$806 5)) (%closure (lambda (self$807 r$475) ((%closure (lambda (self$808 r$471) ((%closure (lambda (self$809 r$473) ((%closure-ref (cell-get (%closure-ref self$809 3)) 0) (cell-get (%closure-ref self$809 3)) (%closure (lambda (self$810 r$472) ((%closure-ref (%closure-ref self$810 1) 0) (%closure-ref self$810 1) (cons (%closure-ref self$810 2) r$472))) (%closure-ref self$809 1) (%closure-ref self$809 2)) r$473)) (%closure-ref self$808 2) r$471 (%closure-ref self$808 3)) (cdr (%closure-ref self$808 1)))) (%closure-ref self$807 1) (%closure-ref self$807 2) (%closure-ref self$807 4)) (cons (%closure-ref self$807 3) r$475))) (%closure-ref self$806 1) (%closure-ref self$806 2) (%closure-ref self$806 3) (%closure-ref self$806 4)) r$476)) (%closure-ref self$805 1) (%closure-ref self$805 2) r$474 (%closure-ref self$805 3) (%closure-ref self$805 4)) (cdar (%closure-ref self$805 1)))) (%closure-ref self$804 1) (%closure-ref self$804 2) (%closure-ref self$804 3) (%closure-ref self$804 4)) (caar (%closure-ref self$804 1)))) (%closure-ref self$803 1) (%closure-ref self$803 2) (%closure-ref self$803 3) (%closure-ref self$803 4))))) alist$196 k$469 (%closure-ref self$802 1) (%closure-ref self$802 2)) (null? alist$196))) (%closure-ref self$801 26) (%closure-ref self$801 27)))) (%closure-ref self$800 1) (%closure-ref self$800 2) (%closure-ref self$800 3) (%closure-ref self$800 4) (%closure-ref self$800 5) (%closure-ref self$800 6) (%closure-ref self$800 7) (%closure-ref self$800 8) (%closure-ref self$800 9) (%closure-ref self$800 10) (%closure-ref self$800 11) (%closure-ref self$800 12) (%closure-ref self$800 13) (%closure-ref self$800 14) (%closure-ref self$800 15) (%closure-ref self$800 16) (%closure-ref self$800 17) (%closure-ref self$800 18) (%closure-ref self$800 19) (%closure-ref self$800 20) (%closure-ref self$800 21) (%closure-ref self$800 22) (%closure-ref self$800 23) (%closure-ref self$800 24) (%closure-ref self$800 25) (%closure-ref self$800 26) (%closure-ref self$800 27) (%closure-ref self$800 28) (%closure-ref self$800 29) (%closure-ref self$800 30)) (set-cell! (%closure-ref self$800 23) r$477))) (%closure-ref self$783 1) (%closure-ref self$783 2) (%closure-ref self$783 3) (%closure-ref self$783 4) (%closure-ref self$783 5) (%closure-ref self$783 6) (%closure-ref self$783 7) (%closure-ref self$783 8) (%closure-ref self$783 9) (%closure-ref self$783 10) (%closure-ref self$783 11) (%closure-ref self$783 12) (%closure-ref self$783 13) (%closure-ref self$783 14) (%closure-ref self$783 15) (%closure-ref self$783 16) (%closure-ref self$783 17) (%closure-ref self$783 18) (%closure-ref self$783 19) (%closure-ref self$783 20) (%closure-ref self$783 21) (%closure-ref self$783 22) (%closure-ref self$783 23) (%closure-ref self$783 24) (%closure-ref self$783 25) (%closure-ref self$783 26) (%closure-ref self$783 27) (%closure-ref self$783 28) (%closure-ref self$783 29) (%closure-ref self$783 30)) (%closure (lambda (self$784 k$478 alist$199 term$198 n$197) ((%closure-ref (cell-get (%closure-ref self$784 3)) 0) (cell-get (%closure-ref self$784 3)) (%closure (lambda (self$785 r$480) ((%closure (lambda (self$786 term$201 n$200) ((%closure (lambda (self$787 lp$202) ((%closure (lambda (self$788 lp$202) ((%closure (lambda (self$795 r$484) ((%closure (lambda (self$796 r$483) ((%closure-ref (cell-get (%closure-ref self$796 3)) 0) (cell-get (%closure-ref self$796 3)) (%closure (lambda (self$797 r$482) ((%closure-ref (cell-get (%closure-ref self$797 5)) 0) (cell-get (%closure-ref self$797 5)) (%closure (lambda (self$798 r$481) ((%closure-ref (cell-get (%closure-ref self$798 1)) 0) (cell-get (%closure-ref self$798 1)) (%closure (lambda (self$799 term$205) ((%closure-ref (cell-get (%closure-ref self$799 2)) 0) (cell-get (%closure-ref self$799 2)) (%closure-ref self$799 1) term$205)) (%closure-ref self$798 2) (%closure-ref self$798 4)) (%closure-ref self$798 3) r$481)) (%closure-ref self$797 1) (%closure-ref self$797 2) (%closure-ref self$797 3) (%closure-ref self$797 4)) r$482)) (%closure-ref self$796 1) (%closure-ref self$796 2) (%closure-ref self$796 5) (%closure-ref self$796 6) (%closure-ref self$796 8)) (%closure-ref self$796 7) (%closure-ref self$796 4))) (%closure-ref self$795 1) (%closure-ref self$795 2) (%closure-ref self$795 3) (%closure-ref self$795 4) (%closure-ref self$795 5) (%closure-ref self$795 6) (%closure-ref self$795 7) (%closure-ref self$795 8)) (set-cell! (%closure-ref self$795 3) r$484))) (%closure-ref self$788 1) (%closure-ref self$788 2) lp$202 (%closure-ref self$788 3) (%closure-ref self$788 4) (%closure-ref self$788 5) (%closure-ref self$788 6) (%closure-ref self$788 7)) (%closure (lambda (self$789 k$485 term$204 n$203) ((%closure-ref zero? 0) zero? (%closure (lambda (self$790 r$486) (if r$486 ((%closure-ref (%closure-ref self$790 1) 0) (%closure-ref self$790 1) (%closure-ref self$790 4)) ((%closure (lambda (self$791 r$489) ((%closure (lambda (self$792 r$490) ((%closure-ref list 0) list (%closure (lambda (self$793 r$487) ((%closure (lambda (self$794 r$488) ((%closure-ref (cell-get (%closure-ref self$794 2)) 0) (cell-get (%closure-ref self$794 2)) (%closure-ref self$794 1) (%closure-ref self$794 3) r$488)) (%closure-ref self$793 1) (%closure-ref self$793 2) r$487) (- (%closure-ref self$793 3) 1))) (%closure-ref self$792 1) (%closure-ref self$792 2) (%closure-ref self$792 3)) (%closure-ref self$792 4) (%closure-ref self$792 5) r$490)) (%closure-ref self$791 1) (%closure-ref self$791 2) (%closure-ref self$791 3) r$489 (%closure-ref self$791 4)) (quote (f)))) (%closure-ref self$790 1) (%closure-ref self$790 2) (%closure-ref self$790 3) (%closure-ref self$790 4)) (quote or)))) k$485 (%closure-ref self$789 1) n$203 term$204) n$203)) lp$202))) (%closure-ref self$787 1) (%closure-ref self$787 2) (%closure-ref self$787 3) (%closure-ref self$787 4) (%closure-ref self$787 5) (%closure-ref self$787 6) (%closure-ref self$787 7)) (cell lp$202))) (%closure-ref self$786 1) (%closure-ref self$786 2) n$200 (%closure-ref self$786 3) (%closure-ref self$786 4) term$201 (%closure-ref self$786 5)) #f)) (%closure-ref self$785 1) (%closure-ref self$785 2) r$480 (%closure-ref self$785 4) (%closure-ref self$785 6)) (%closure-ref self$785 5) (%closure-ref self$785 3))) (%closure-ref self$784 1) k$478 n$197 (%closure-ref self$784 2) term$198 (%closure-ref self$784 4)) alist$199)) (%closure-ref self$783 2) (%closure-ref self$783 19) (%closure-ref self$783 26) (%closure-ref self$783 27)))) (%closure-ref self$782 1) (%closure-ref self$782 2) (%closure-ref self$782 3) (%closure-ref self$782 4) (%closure-ref self$782 5) (%closure-ref self$782 6) (%closure-ref self$782 7) (%closure-ref self$782 8) (%closure-ref self$782 9) (%closure-ref self$782 10) (%closure-ref self$782 11) (%closure-ref self$782 12) (%closure-ref self$782 13) (%closure-ref self$782 14) (%closure-ref self$782 15) (%closure-ref self$782 16) (%closure-ref self$782 17) (%closure-ref self$782 18) (%closure-ref self$782 19) (%closure-ref self$782 20) (%closure-ref self$782 21) (%closure-ref self$782 22) (%closure-ref self$782 23) (%closure-ref self$782 24) (%closure-ref self$782 25) (%closure-ref self$782 26) (%closure-ref self$782 27) (%closure-ref self$782 28) (%closure-ref self$782 29) (%closure-ref self$782 30)) (set-cell! (%closure-ref self$782 17) r$491))) (%closure-ref self$780 1) (%closure-ref self$780 2) (%closure-ref self$780 3) (%closure-ref self$780 4) (%closure-ref self$780 5) (%closure-ref self$780 6) (%closure-ref self$780 7) (%closure-ref self$780 8) (%closure-ref self$780 9) (%closure-ref self$780 10) (%closure-ref self$780 11) (%closure-ref self$780 12) (%closure-ref self$780 13) (%closure-ref self$780 14) (%closure-ref self$780 15) (%closure-ref self$780 16) (%closure-ref self$780 17) (%closure-ref self$780 18) (%closure-ref self$780 19) (%closure-ref self$780 20) (%closure-ref self$780 21) (%closure-ref self$780 22) (%closure-ref self$780 23) (%closure-ref self$780 24) (%closure-ref self$780 25) (%closure-ref self$780 26) (%closure-ref self$780 27) (%closure-ref self$780 28) (%closure-ref self$780 29) (%closure-ref self$780 30)) (%closure (lambda (self$781 k$492 r1$207 r2$206) ((%closure-ref k$492 0) k$492 (eq? r1$207 r2$206)))))) (%closure-ref self$779 1) (%closure-ref self$779 2) (%closure-ref self$779 3) (%closure-ref self$779 4) (%closure-ref self$779 5) (%closure-ref self$779 6) (%closure-ref self$779 8) (%closure-ref self$779 9) (%closure-ref self$779 10) (%closure-ref self$779 11) (%closure-ref self$779 12) (%closure-ref self$779 13) (%closure-ref self$779 14) (%closure-ref self$779 15) (%closure-ref self$779 16) (%closure-ref self$779 17) (%closure-ref self$779 18) (%closure-ref self$779 19) (%closure-ref self$779 20) (%closure-ref self$779 21) (%closure-ref self$779 22) (%closure-ref self$779 23) (%closure-ref self$779 24) (%closure-ref self$779 25) (%closure-ref self$779 26) (%closure-ref self$779 27) (%closure-ref self$779 28) (%closure-ref self$779 29) (%closure-ref self$779 30) (%closure-ref self$779 31)) (set-cell! (%closure-ref self$779 7) r$493))) (%closure-ref self$777 1) (%closure-ref self$777 2) (%closure-ref self$777 3) (%closure-ref self$777 4) (%closure-ref self$777 5) (%closure-ref self$777 6) (%closure-ref self$777 7) (%closure-ref self$777 8) (%closure-ref self$777 9) (%closure-ref self$777 10) (%closure-ref self$777 11) (%closure-ref self$777 12) (%closure-ref self$777 13) (%closure-ref self$777 14) (%closure-ref self$777 15) (%closure-ref self$777 16) (%closure-ref self$777 17) (%closure-ref self$777 18) (%closure-ref self$777 19) (%closure-ref self$777 20) (%closure-ref self$777 21) (%closure-ref self$777 22) (%closure-ref self$777 23) (%closure-ref self$777 24) (%closure-ref self$777 25) (%closure-ref self$777 26) (%closure-ref self$777 27) (%closure-ref self$777 28) (%closure-ref self$777 29) (%closure-ref self$777 30) (%closure-ref self$777 31)) (%closure (lambda (self$778 k$494 symbol-record$208) ((%closure-ref k$494 0) k$494 (vector-ref symbol-record$208 0)))))) (%closure-ref self$776 1) (%closure-ref self$776 2) (%closure-ref self$776 3) (%closure-ref self$776 4) (%closure-ref self$776 5) (%closure-ref self$776 6) (%closure-ref self$776 7) (%closure-ref self$776 8) (%closure-ref self$776 9) (%closure-ref self$776 10) (%closure-ref self$776 11) (%closure-ref self$776 12) (%closure-ref self$776 13) (%closure-ref self$776 14) (%closure-ref self$776 15) (%closure-ref self$776 16) (%closure-ref self$776 17) (%closure-ref self$776 18) (%closure-ref self$776 19) (%closure-ref self$776 20) (%closure-ref self$776 21) (%closure-ref self$776 22) (%closure-ref self$776 23) (%closure-ref self$776 24) (%closure-ref self$776 25) (%closure-ref self$776 26) (%closure-ref self$776 27) (%closure-ref self$776 28) (%closure-ref self$776 29) (%closure-ref self$776 30) (%closure-ref self$776 31)) (set-cell! (%closure-ref self$776 6) r$495))) (%closure-ref self$774 1) (%closure-ref self$774 2) (%closure-ref self$774 3) (%closure-ref self$774 4) (%closure-ref self$774 5) (%closure-ref self$774 6) (%closure-ref self$774 7) (%closure-ref self$774 8) (%closure-ref self$774 9) (%closure-ref self$774 10) (%closure-ref self$774 11) (%closure-ref self$774 12) (%closure-ref self$774 13) (%closure-ref self$774 14) (%closure-ref self$774 15) (%closure-ref self$774 16) (%closure-ref self$774 17) (%closure-ref self$774 18) (%closure-ref self$774 19) (%closure-ref self$774 20) (%closure-ref self$774 21) (%closure-ref self$774 22) (%closure-ref self$774 23) (%closure-ref self$774 24) (%closure-ref self$774 25) (%closure-ref self$774 26) (%closure-ref self$774 27) (%closure-ref self$774 28) (%closure-ref self$774 29) (%closure-ref self$774 30) (%closure-ref self$774 31)) (%closure (lambda (self$775 k$496 symbol-record$209) ((%closure-ref k$496 0) k$496 (vector-ref symbol-record$209 1)))))) (%closure-ref self$773 1) (%closure-ref self$773 2) (%closure-ref self$773 3) (%closure-ref self$773 4) (%closure-ref self$773 5) (%closure-ref self$773 6) (%closure-ref self$773 7) (%closure-ref self$773 8) (%closure-ref self$773 9) (%closure-ref self$773 10) (%closure-ref self$773 11) (%closure-ref self$773 13) (%closure-ref self$773 14) (%closure-ref self$773 15) (%closure-ref self$773 16) (%closure-ref self$773 17) (%closure-ref self$773 18) (%closure-ref self$773 19) (%closure-ref self$773 20) (%closure-ref self$773 21) (%closure-ref self$773 22) (%closure-ref self$773 23) (%closure-ref self$773 24) (%closure-ref self$773 25) (%closure-ref self$773 26) (%closure-ref self$773 27) (%closure-ref self$773 28) (%closure-ref self$773 29) (%closure-ref self$773 30) (%closure-ref self$773 31) (%closure-ref self$773 32)) (set-cell! (%closure-ref self$773 12) r$497))) (%closure-ref self$771 1) (%closure-ref self$771 2) (%closure-ref self$771 3) (%closure-ref self$771 4) (%closure-ref self$771 5) (%closure-ref self$771 6) (%closure-ref self$771 7) (%closure-ref self$771 8) (%closure-ref self$771 9) (%closure-ref self$771 10) (%closure-ref self$771 11) (%closure-ref self$771 12) (%closure-ref self$771 13) (%closure-ref self$771 14) (%closure-ref self$771 15) (%closure-ref self$771 16) (%closure-ref self$771 17) (%closure-ref self$771 18) (%closure-ref self$771 19) (%closure-ref self$771 20) (%closure-ref self$771 21) (%closure-ref self$771 22) (%closure-ref self$771 23) (%closure-ref self$771 24) (%closure-ref self$771 25) (%closure-ref self$771 26) (%closure-ref self$771 27) (%closure-ref self$771 28) (%closure-ref self$771 29) (%closure-ref self$771 30) (%closure-ref self$771 31) (%closure-ref self$771 32)) (%closure (lambda (self$772 k$498 symbol-record$211 lemmas$210) ((%closure-ref k$498 0) k$498 (vector-set! symbol-record$211 1 lemmas$210)))))) (%closure-ref self$770 1) (%closure-ref self$770 2) (%closure-ref self$770 3) (%closure-ref self$770 4) (%closure-ref self$770 5) (%closure-ref self$770 6) (%closure-ref self$770 7) (%closure-ref self$770 8) (%closure-ref self$770 10) (%closure-ref self$770 11) (%closure-ref self$770 12) (%closure-ref self$770 13) (%closure-ref self$770 14) (%closure-ref self$770 15) (%closure-ref self$770 16) (%closure-ref self$770 17) (%closure-ref self$770 18) (%closure-ref self$770 19) (%closure-ref self$770 20) (%closure-ref self$770 21) (%closure-ref self$770 22) (%closure-ref self$770 23) (%closure-ref self$770 24) (%closure-ref self$770 25) (%closure-ref self$770 26) (%closure-ref self$770 27) (%closure-ref self$770 28) (%closure-ref self$770 29) (%closure-ref self$770 30) (%closure-ref self$770 31) (%closure-ref self$770 32) (%closure-ref self$770 33)) (set-cell! (%closure-ref self$770 9) r$499))) (%closure-ref self$767 1) (%closure-ref self$767 2) (%closure-ref self$767 3) (%closure-ref self$767 4) (%closure-ref self$767 5) (%closure-ref self$767 6) (%closure-ref self$767 7) (%closure-ref self$767 8) (%closure-ref self$767 9) (%closure-ref self$767 10) (%closure-ref self$767 11) (%closure-ref self$767 12) (%closure-ref self$767 13) (%closure-ref self$767 14) (%closure-ref self$767 15) (%closure-ref self$767 16) (%closure-ref self$767 17) (%closure-ref self$767 18) (%closure-ref self$767 19) (%closure-ref self$767 20) (%closure-ref self$767 21) (%closure-ref self$767 22) (%closure-ref self$767 23) (%closure-ref self$767 24) (%closure-ref self$767 25) (%closure-ref self$767 26) (%closure-ref self$767 27) (%closure-ref self$767 28) (%closure-ref self$767 29) (%closure-ref self$767 30) (%closure-ref self$767 31) (%closure-ref self$767 32) (%closure-ref self$767 33)) (%closure (lambda (self$768 k$500 sym$212) ((%closure (lambda (self$769 r$501) ((%closure-ref vector 0) vector (%closure-ref self$769 1) (%closure-ref self$769 2) r$501)) k$500 sym$212) (quote ())))))) (%closure-ref self$766 1) (%closure-ref self$766 2) (%closure-ref self$766 3) (%closure-ref self$766 4) (%closure-ref self$766 5) (%closure-ref self$766 6) (%closure-ref self$766 7) (%closure-ref self$766 8) (%closure-ref self$766 9) (%closure-ref self$766 10) (%closure-ref self$766 11) (%closure-ref self$766 12) (%closure-ref self$766 13) (%closure-ref self$766 14) (%closure-ref self$766 15) (%closure-ref self$766 16) (%closure-ref self$766 17) (%closure-ref self$766 18) (%closure-ref self$766 19) (%closure-ref self$766 20) (%closure-ref self$766 21) (%closure-ref self$766 22) (%closure-ref self$766 23) (%closure-ref self$766 24) (%closure-ref self$766 25) (%closure-ref self$766 26) (%closure-ref self$766 27) (%closure-ref self$766 28) (%closure-ref self$766 29) (%closure-ref self$766 30) (%closure-ref self$766 31) (%closure-ref self$766 32) (%closure-ref self$766 33)) (set-cell! (%closure-ref self$766 1) r$502))) (%closure-ref self$765 1) (%closure-ref self$765 2) (%closure-ref self$765 3) (%closure-ref self$765 4) (%closure-ref self$765 5) (%closure-ref self$765 6) (%closure-ref self$765 7) (%closure-ref self$765 8) (%closure-ref self$765 9) (%closure-ref self$765 10) (%closure-ref self$765 11) (%closure-ref self$765 12) (%closure-ref self$765 13) (%closure-ref self$765 14) (%closure-ref self$765 15) (%closure-ref self$765 16) (%closure-ref self$765 17) (%closure-ref self$765 18) (%closure-ref self$765 19) (%closure-ref self$765 20) (%closure-ref self$765 21) (%closure-ref self$765 22) (%closure-ref self$765 23) (%closure-ref self$765 24) (%closure-ref self$765 25) (%closure-ref self$765 26) (%closure-ref self$765 27) (%closure-ref self$765 28) (%closure-ref self$765 29) (%closure-ref self$765 30) (%closure-ref self$765 31) (%closure-ref self$765 32) (%closure-ref self$765 33)) (quote ()))) (%closure-ref self$764 1) (%closure-ref self$764 2) (%closure-ref self$764 3) (%closure-ref self$764 4) (%closure-ref self$764 5) (%closure-ref self$764 6) (%closure-ref self$764 7) (%closure-ref self$764 8) (%closure-ref self$764 9) (%closure-ref self$764 10) (%closure-ref self$764 11) (%closure-ref self$764 12) (%closure-ref self$764 13) (%closure-ref self$764 14) (%closure-ref self$764 15) (%closure-ref self$764 16) (%closure-ref self$764 17) (%closure-ref self$764 18) (%closure-ref self$764 19) (%closure-ref self$764 20) (%closure-ref self$764 21) (%closure-ref self$764 22) (%closure-ref self$764 23) (%closure-ref self$764 24) (%closure-ref self$764 25) (%closure-ref self$764 26) (%closure-ref self$764 27) (%closure-ref self$764 28) (%closure-ref self$764 29) (%closure-ref self$764 30) (%closure-ref self$764 31) (%closure-ref self$764 32) (%closure-ref self$764 33)) (set-cell! (%closure-ref self$764 19) r$503))) (%closure-ref self$757 1) (%closure-ref self$757 2) (%closure-ref self$757 3) (%closure-ref self$757 4) (%closure-ref self$757 5) (%closure-ref self$757 6) (%closure-ref self$757 7) (%closure-ref self$757 8) (%closure-ref self$757 9) (%closure-ref self$757 10) (%closure-ref self$757 11) (%closure-ref self$757 12) (%closure-ref self$757 13) (%closure-ref self$757 14) (%closure-ref self$757 15) (%closure-ref self$757 16) (%closure-ref self$757 17) (%closure-ref self$757 18) (%closure-ref self$757 19) (%closure-ref self$757 20) (%closure-ref self$757 21) (%closure-ref self$757 22) (%closure-ref self$757 23) (%closure-ref self$757 24) (%closure-ref self$757 25) (%closure-ref self$757 26) (%closure-ref self$757 27) (%closure-ref self$757 28) (%closure-ref self$757 29) (%closure-ref self$757 30) (%closure-ref self$757 31) (%closure-ref self$757 32) (%closure-ref self$757 33)) (%closure (lambda (self$758 k$504 sym$213) ((%closure (lambda (self$759 x$214) (if x$214 ((%closure-ref (%closure-ref self$759 2) 0) (%closure-ref self$759 2) (cdr x$214)) ((%closure-ref (cell-get (%closure-ref self$759 3)) 0) (cell-get (%closure-ref self$759 3)) (%closure (lambda (self$760 r$215) ((%closure (lambda (self$761 r$509) ((%closure (lambda (self$762 r$508) ((%closure (lambda (self$763 r$507) ((%closure-ref (%closure-ref self$763 1) 0) (%closure-ref self$763 1) (%closure-ref self$763 2))) (%closure-ref self$762 2) (%closure-ref self$762 3)) (set-cell! (%closure-ref self$762 1) r$508))) (%closure-ref self$761 1) (%closure-ref self$761 2) (%closure-ref self$761 3)) (cons r$509 (cell-get (%closure-ref self$761 1))))) (%closure-ref self$760 1) (%closure-ref self$760 2) r$215) (cons (%closure-ref self$760 3) r$215))) (%closure-ref self$759 1) (%closure-ref self$759 2) (%closure-ref self$759 4)) (%closure-ref self$759 4)))) (%closure-ref self$758 1) k$504 (%closure-ref self$758 2) sym$213) (assq sym$213 (cell-get (%closure-ref self$758 1))))) (%closure-ref self$757 1) (%closure-ref self$757 9)))) (%closure-ref self$756 1) (%closure-ref self$756 2) (%closure-ref self$756 3) (%closure-ref self$756 4) (%closure-ref self$756 5) (%closure-ref self$756 7) (%closure-ref self$756 8) (%closure-ref self$756 9) (%closure-ref self$756 10) (%closure-ref self$756 11) (%closure-ref self$756 12) (%closure-ref self$756 13) (%closure-ref self$756 14) (%closure-ref self$756 15) (%closure-ref self$756 16) (%closure-ref self$756 17) (%closure-ref self$756 18) (%closure-ref self$756 19) (%closure-ref self$756 20) (%closure-ref self$756 21) (%closure-ref self$756 22) (%closure-ref self$756 23) (%closure-ref self$756 24) (%closure-ref self$756 25) (%closure-ref self$756 26) (%closure-ref self$756 27) (%closure-ref self$756 28) (%closure-ref self$756 29) (%closure-ref self$756 30) (%closure-ref self$756 31) (%closure-ref self$756 32) (%closure-ref self$756 33) (%closure-ref self$756 34)) (set-cell! (%closure-ref self$756 6) r$510))) (%closure-ref self$753 1) (%closure-ref self$753 2) (%closure-ref self$753 3) (%closure-ref self$753 4) (%closure-ref self$753 5) (%closure-ref self$753 6) (%closure-ref self$753 7) (%closure-ref self$753 8) (%closure-ref self$753 9) (%closure-ref self$753 10) (%closure-ref self$753 11) (%closure-ref self$753 12) (%closure-ref self$753 13) (%closure-ref self$753 14) (%closure-ref self$753 15) (%closure-ref self$753 16) (%closure-ref self$753 17) (%closure-ref self$753 18) (%closure-ref self$753 19) (%closure-ref self$753 20) (%closure-ref self$753 21) (%closure-ref self$753 22) (%closure-ref self$753 23) (%closure-ref self$753 24) (%closure-ref self$753 25) (%closure-ref self$753 26) (%closure-ref self$753 27) (%closure-ref self$753 28) (%closure-ref self$753 29) (%closure-ref self$753 30) (%closure-ref self$753 31) (%closure-ref self$753 32) (%closure-ref self$753 33) (%closure-ref self$753 34)) (%closure (lambda (self$754 k$511 sym$217 property$216) ((%closure-ref (cell-get (%closure-ref self$754 2)) 0) (cell-get (%closure-ref self$754 2)) (%closure (lambda (self$755 r$512) ((%closure-ref (cell-get (%closure-ref self$755 1)) 0) (cell-get (%closure-ref self$755 1)) (%closure-ref self$755 2) r$512)) (%closure-ref self$754 1) k$511) sym$217)) (%closure-ref self$753 7) (%closure-ref self$753 20)))) (%closure-ref self$752 1) (%closure-ref self$752 2) (%closure-ref self$752 3) (%closure-ref self$752 4) (%closure-ref self$752 5) (%closure-ref self$752 6) (%closure-ref self$752 7) (%closure-ref self$752 8) (%closure-ref self$752 9) (%closure-ref self$752 10) (%closure-ref self$752 11) (%closure-ref self$752 12) (%closure-ref self$752 13) (%closure-ref self$752 15) (%closure-ref self$752 16) (%closure-ref self$752 17) (%closure-ref self$752 18) (%closure-ref self$752 19) (%closure-ref self$752 20) (%closure-ref self$752 21) (%closure-ref self$752 22) (%closure-ref self$752 23) (%closure-ref self$752 24) (%closure-ref self$752 25) (%closure-ref self$752 26) (%closure-ref self$752 27) (%closure-ref self$752 28) (%closure-ref self$752 29) (%closure-ref self$752 30) (%closure-ref self$752 31) (%closure-ref self$752 32) (%closure-ref self$752 33) (%closure-ref self$752 34) (%closure-ref self$752 35)) (set-cell! (%closure-ref self$752 14) r$513))) (%closure-ref self$749 1) (%closure-ref self$749 2) (%closure-ref self$749 3) (%closure-ref self$749 4) (%closure-ref self$749 5) (%closure-ref self$749 6) (%closure-ref self$749 7) (%closure-ref self$749 8) (%closure-ref self$749 9) (%closure-ref self$749 10) (%closure-ref self$749 11) (%closure-ref self$749 12) (%closure-ref self$749 13) (%closure-ref self$749 14) (%closure-ref self$749 15) (%closure-ref self$749 16) (%closure-ref self$749 17) (%closure-ref self$749 18) (%closure-ref self$749 19) (%closure-ref self$749 20) (%closure-ref self$749 21) (%closure-ref self$749 22) (%closure-ref self$749 23) (%closure-ref self$749 24) (%closure-ref self$749 25) (%closure-ref self$749 26) (%closure-ref self$749 27) (%closure-ref self$749 28) (%closure-ref self$749 29) (%closure-ref self$749 30) (%closure-ref self$749 31) (%closure-ref self$749 32) (%closure-ref self$749 33) (%closure-ref self$749 34) (%closure-ref self$749 35)) (%closure (lambda (self$750 k$514 sym$220 property$219 value$218) ((%closure-ref (cell-get (%closure-ref self$750 2)) 0) (cell-get (%closure-ref self$750 2)) (%closure (lambda (self$751 r$515) ((%closure-ref (cell-get (%closure-ref self$751 2)) 0) (cell-get (%closure-ref self$751 2)) (%closure-ref self$751 1) r$515 (%closure-ref self$751 3))) k$514 (%closure-ref self$750 1) value$218) sym$220)) (%closure-ref self$749 15) (%closure-ref self$749 21)))) (%closure-ref self$748 1) (%closure-ref self$748 2) (%closure-ref self$748 3) (%closure-ref self$748 4) (%closure-ref self$748 5) (%closure-ref self$748 6) (%closure-ref self$748 7) (%closure-ref self$748 8) (%closure-ref self$748 9) (%closure-ref self$748 10) (%closure-ref self$748 11) (%closure-ref self$748 12) (%closure-ref self$748 13) (%closure-ref self$748 14) (%closure-ref self$748 15) (%closure-ref self$748 16) (%closure-ref self$748 17) (%closure-ref self$748 18) (%closure-ref self$748 19) (%closure-ref self$748 20) (%closure-ref self$748 21) (%closure-ref self$748 22) (%closure-ref self$748 23) (%closure-ref self$748 24) (%closure-ref self$748 25) (%closure-ref self$748 26) (%closure-ref self$748 27) (%closure-ref self$748 28) (%closure-ref self$748 29) (%closure-ref self$748 30) (%closure-ref self$748 31) (%closure-ref self$748 32) (%closure-ref self$748 33) (%closure-ref self$748 34) (%closure-ref self$748 35)) (set-cell! (%closure-ref self$748 36) r$516))) (%closure-ref self$739 1) (%closure-ref self$739 2) (%closure-ref self$739 3) (%closure-ref self$739 4) (%closure-ref self$739 5) (%closure-ref self$739 6) (%closure-ref self$739 7) (%closure-ref self$739 8) (%closure-ref self$739 9) (%closure-ref self$739 10) (%closure-ref self$739 11) (%closure-ref self$739 12) (%closure-ref self$739 13) (%closure-ref self$739 14) (%closure-ref self$739 15) (%closure-ref self$739 16) (%closure-ref self$739 17) (%closure-ref self$739 18) (%closure-ref self$739 19) (%closure-ref self$739 20) (%closure-ref self$739 21) (%closure-ref self$739 22) (%closure-ref self$739 23) (%closure-ref self$739 24) (%closure-ref self$739 25) (%closure-ref self$739 26) (%closure-ref self$739 27) (%closure-ref self$739 28) (%closure-ref self$739 29) (%closure-ref self$739 30) (%closure-ref self$739 31) (%closure-ref self$739 32) (%closure-ref self$739 33) (%closure-ref self$739 34) (%closure-ref self$739 35) (%closure-ref self$739 36)) (%closure (lambda (self$740 k$517 term$221) ((%closure (lambda (self$741 r$518) (if r$518 ((%closure (lambda (self$743) ((%closure (lambda (self$744 r$522) ((%closure-ref (cell-get (%closure-ref self$744 1)) 0) (cell-get (%closure-ref self$744 1)) (%closure (lambda (self$745 r$519) ((%closure (lambda (self$746 r$521) ((%closure-ref map 0) map (%closure (lambda (self$747 r$520) ((%closure-ref (%closure-ref self$747 1) 0) (%closure-ref self$747 1) (cons (%closure-ref self$747 2) r$520))) (%closure-ref self$746 1) (%closure-ref self$746 2)) (cell-get (%closure-ref self$746 3)) r$521)) (%closure-ref self$745 1) r$519 (%closure-ref self$745 3)) (cdr (%closure-ref self$745 2)))) (%closure-ref self$744 2) (%closure-ref self$744 3) (%closure-ref self$744 4)) r$522)) (%closure-ref self$743 1) (%closure-ref self$743 2) (%closure-ref self$743 3) (%closure-ref self$743 4)) (car (%closure-ref self$743 3)))) (%closure-ref self$741 1) (%closure-ref self$741 2) (%closure-ref self$741 3) (%closure-ref self$741 4))) ((%closure (lambda (self$742) ((%closure-ref (%closure-ref self$742 1) 0) (%closure-ref self$742 1) (%closure-ref self$742 2))) (%closure-ref self$741 2) (%closure-ref self$741 3))))) (%closure-ref self$740 1) k$517 term$221 (%closure-ref self$740 2)) (pair? term$221))) (%closure-ref self$739 8) (%closure-ref self$739 36)))) (%closure-ref self$738 1) (%closure-ref self$738 2) (%closure-ref self$738 3) (%closure-ref self$738 4) (%closure-ref self$738 5) (%closure-ref self$738 6) (%closure-ref self$738 7) (%closure-ref self$738 8) (%closure-ref self$738 9) (%closure-ref self$738 10) (%closure-ref self$738 11) (%closure-ref self$738 12) (%closure-ref self$738 13) (%closure-ref self$738 14) (%closure-ref self$738 15) (%closure-ref self$738 16) (%closure-ref self$738 17) (%closure-ref self$738 18) (%closure-ref self$738 19) (%closure-ref self$738 20) (%closure-ref self$738 21) (%closure-ref self$738 22) (%closure-ref self$738 23) (%closure-ref self$738 24) (%closure-ref self$738 25) (%closure-ref self$738 26) (%closure-ref self$738 27) (%closure-ref self$738 28) (%closure-ref self$738 29) (%closure-ref self$738 30) (%closure-ref self$738 31) (%closure-ref self$738 33) (%closure-ref self$738 34) (%closure-ref self$738 35) (%closure-ref self$738 36) (%closure-ref self$738 37)) (set-cell! (%closure-ref self$738 32) r$523))) (%closure-ref self$729 1) (%closure-ref self$729 2) (%closure-ref self$729 3) (%closure-ref self$729 4) (%closure-ref self$729 5) (%closure-ref self$729 6) (%closure-ref self$729 7) (%closure-ref self$729 8) (%closure-ref self$729 9) (%closure-ref self$729 10) (%closure-ref self$729 11) (%closure-ref self$729 12) (%closure-ref self$729 13) (%closure-ref self$729 14) (%closure-ref self$729 15) (%closure-ref self$729 16) (%closure-ref self$729 17) (%closure-ref self$729 18) (%closure-ref self$729 19) (%closure-ref self$729 20) (%closure-ref self$729 21) (%closure-ref self$729 22) (%closure-ref self$729 23) (%closure-ref self$729 24) (%closure-ref self$729 25) (%closure-ref self$729 26) (%closure-ref self$729 27) (%closure-ref self$729 28) (%closure-ref self$729 29) (%closure-ref self$729 30) (%closure-ref self$729 31) (%closure-ref self$729 32) (%closure-ref self$729 33) (%closure-ref self$729 34) (%closure-ref self$729 35) (%closure-ref self$729 36) (%closure-ref self$729 37)) (%closure (lambda (self$730 k$524 lst$222) ((%closure (lambda (self$731 r$525) (if r$525 ((%closure (lambda (self$737) ((%closure-ref (%closure-ref self$737 1) 0) (%closure-ref self$737 1) (quote ()))) (%closure-ref self$731 1))) ((%closure (lambda (self$732) ((%closure (lambda (self$733 r$529) ((%closure-ref (cell-get (%closure-ref self$733 4)) 0) (cell-get (%closure-ref self$733 4)) (%closure (lambda (self$734 r$526) ((%closure (lambda (self$735 r$528) ((%closure-ref (cell-get (%closure-ref self$735 3)) 0) (cell-get (%closure-ref self$735 3)) (%closure (lambda (self$736 r$527) ((%closure-ref (%closure-ref self$736 1) 0) (%closure-ref self$736 1) (cons (%closure-ref self$736 2) r$527))) (%closure-ref self$735 1) (%closure-ref self$735 2)) r$528)) (%closure-ref self$734 1) r$526 (%closure-ref self$734 3)) (cdr (%closure-ref self$734 2)))) (%closure-ref self$733 1) (%closure-ref self$733 2) (%closure-ref self$733 3)) r$529)) (%closure-ref self$732 1) (%closure-ref self$732 2) (%closure-ref self$732 3) (%closure-ref self$732 4)) (car (%closure-ref self$732 2)))) (%closure-ref self$731 1) (%closure-ref self$731 2) (%closure-ref self$731 3) (%closure-ref self$731 4))))) k$524 lst$222 (%closure-ref self$730 1) (%closure-ref self$730 2)) (null? lst$222))) (%closure-ref self$729 32) (%closure-ref self$729 33)))) (%closure-ref self$728 1) (%closure-ref self$728 2) (%closure-ref self$728 3) (%closure-ref self$728 4) (%closure-ref self$728 5) (%closure-ref self$728 6) (%closure-ref self$728 7) (%closure-ref self$728 8) (%closure-ref self$728 9) (%closure-ref self$728 10) (%closure-ref self$728 11) (%closure-ref self$728 12) (%closure-ref self$728 13) (%closure-ref self$728 14) (%closure-ref self$728 15) (%closure-ref self$728 16) (%closure-ref self$728 17) (%closure-ref self$728 18) (%closure-ref self$728 19) (%closure-ref self$728 20) (%closure-ref self$728 21) (%closure-ref self$728 22) (%closure-ref self$728 23) (%closure-ref self$728 24) (%closure-ref self$728 25) (%closure-ref self$728 26) (%closure-ref self$728 27) (%closure-ref self$728 28) (%closure-ref self$728 29) (%closure-ref self$728 30) (%closure-ref self$728 31) (%closure-ref self$728 32) (%closure-ref self$728 33) (%closure-ref self$728 34) (%closure-ref self$728 35) (%closure-ref self$728 36) (%closure-ref self$728 37)) (set-cell! (%closure-ref self$728 33) r$530))) (%closure-ref self$719 1) (%closure-ref self$719 2) (%closure-ref self$719 3) (%closure-ref self$719 4) (%closure-ref self$719 5) (%closure-ref self$719 6) (%closure-ref self$719 7) (%closure-ref self$719 8) (%closure-ref self$719 9) (%closure-ref self$719 10) (%closure-ref self$719 11) (%closure-ref self$719 12) (%closure-ref self$719 13) (%closure-ref self$719 14) (%closure-ref self$719 15) (%closure-ref self$719 16) (%closure-ref self$719 17) (%closure-ref self$719 18) (%closure-ref self$719 19) (%closure-ref self$719 20) (%closure-ref self$719 21) (%closure-ref self$719 22) (%closure-ref self$719 23) (%closure-ref self$719 24) (%closure-ref self$719 25) (%closure-ref self$719 26) (%closure-ref self$719 27) (%closure-ref self$719 28) (%closure-ref self$719 29) (%closure-ref self$719 30) (%closure-ref self$719 31) (%closure-ref self$719 32) (%closure-ref self$719 33) (%closure-ref self$719 34) (%closure-ref self$719 35) (%closure-ref self$719 36) (%closure-ref self$719 37)) (%closure (lambda (self$720 k$531 term$223) ((%closure (lambda (self$721 r$532) (if r$532 ((%closure (lambda (self$723) ((%closure (lambda (self$724 r$536) ((%closure-ref (cell-get (%closure-ref self$724 2)) 0) (cell-get (%closure-ref self$724 2)) (%closure (lambda (self$725 r$533) ((%closure (lambda (self$726 r$535) ((%closure-ref (cell-get (%closure-ref self$726 3)) 0) (cell-get (%closure-ref self$726 3)) (%closure (lambda (self$727 r$534) ((%closure-ref (%closure-ref self$727 1) 0) (%closure-ref self$727 1) (cons (%closure-ref self$727 2) r$534))) (%closure-ref self$726 1) (%closure-ref self$726 2)) r$535)) (%closure-ref self$725 1) r$533 (%closure-ref self$725 3)) (cdr (%closure-ref self$725 2)))) (%closure-ref self$724 1) (%closure-ref self$724 3) (%closure-ref self$724 4)) r$536)) (%closure-ref self$723 1) (%closure-ref self$723 2) (%closure-ref self$723 3) (%closure-ref self$723 4)) (car (%closure-ref self$723 3)))) (%closure-ref self$721 1) (%closure-ref self$721 2) (%closure-ref self$721 3) (%closure-ref self$721 4))) ((%closure (lambda (self$722) ((%closure-ref (%closure-ref self$722 1) 0) (%closure-ref self$722 1) (%closure-ref self$722 2))) (%closure-ref self$721 1) (%closure-ref self$721 3))))) k$531 (%closure-ref self$720 1) term$223 (%closure-ref self$720 2)) (pair? term$223))) (%closure-ref self$719 21) (%closure-ref self$719 32)))) (%closure-ref self$718 1) (%closure-ref self$718 3) (%closure-ref self$718 4) (%closure-ref self$718 5) (%closure-ref self$718 6) (%closure-ref self$718 7) (%closure-ref self$718 8) (%closure-ref self$718 9) (%closure-ref self$718 10) (%closure-ref self$718 11) (%closure-ref self$718 12) (%closure-ref self$718 13) (%closure-ref self$718 14) (%closure-ref self$718 15) (%closure-ref self$718 16) (%closure-ref self$718 17) (%closure-ref self$718 18) (%closure-ref self$718 19) (%closure-ref self$718 20) (%closure-ref self$718 21) (%closure-ref self$718 22) (%closure-ref self$718 23) (%closure-ref self$718 24) (%closure-ref self$718 25) (%closure-ref self$718 26) (%closure-ref self$718 27) (%closure-ref self$718 28) (%closure-ref self$718 29) (%closure-ref self$718 30) (%closure-ref self$718 31) (%closure-ref self$718 32) (%closure-ref self$718 33) (%closure-ref self$718 34) (%closure-ref self$718 35) (%closure-ref self$718 36) (%closure-ref self$718 37) (%closure-ref self$718 38)) (set-cell! (%closure-ref self$718 2) r$537))) (%closure-ref self$698 1) (%closure-ref self$698 2) (%closure-ref self$698 3) (%closure-ref self$698 4) (%closure-ref self$698 5) (%closure-ref self$698 6) (%closure-ref self$698 7) (%closure-ref self$698 8) (%closure-ref self$698 9) (%closure-ref self$698 10) (%closure-ref self$698 11) (%closure-ref self$698 12) (%closure-ref self$698 13) (%closure-ref self$698 14) (%closure-ref self$698 15) (%closure-ref self$698 16) (%closure-ref self$698 17) (%closure-ref self$698 18) (%closure-ref self$698 19) (%closure-ref self$698 20) (%closure-ref self$698 21) (%closure-ref self$698 22) (%closure-ref self$698 23) (%closure-ref self$698 24) (%closure-ref self$698 25) (%closure-ref self$698 26) (%closure-ref self$698 27) (%closure-ref self$698 28) (%closure-ref self$698 29) (%closure-ref self$698 30) (%closure-ref self$698 31) (%closure-ref self$698 32) (%closure-ref self$698 33) (%closure-ref self$698 34) (%closure-ref self$698 35) (%closure-ref self$698 36) (%closure-ref self$698 37) (%closure-ref self$698 38)) (%closure (lambda (self$699 k$538 term$224) ((%closure (lambda (self$712 k$549) ((%closure (lambda (self$713 r$550) (if r$550 ((%closure (lambda (self$714 r$553) ((%closure (lambda (self$715 r$554) ((%closure (lambda (self$716 r$551) (if r$551 ((%closure (lambda (self$717 r$552) ((%closure-ref (%closure-ref self$717 1) 0) (%closure-ref self$717 1) (pair? r$552))) (%closure-ref self$716 1)) (cadr (%closure-ref self$716 2))) ((%closure-ref (%closure-ref self$716 1) 0) (%closure-ref self$716 1) #f))) (%closure-ref self$715 1) (%closure-ref self$715 3)) (eq? (%closure-ref self$715 2) r$554))) (%closure-ref self$714 1) r$553 (%closure-ref self$714 2)) (quote equal))) (%closure-ref self$713 1) (%closure-ref self$713 2)) (car (%closure-ref self$713 2))) ((%closure-ref (%closure-ref self$713 1) 0) (%closure-ref self$713 1) #f))) k$549 (%closure-ref self$712 1)) (pair? (%closure-ref self$712 1)))) term$224) (%closure (lambda (self$700 r$539) (if r$539 ((%closure (lambda (self$702) ((%closure (lambda (self$703 r$548) ((%closure (lambda (self$704 r$540) ((%closure (lambda (self$705 r$541) ((%closure-ref (cell-get (%closure-ref self$705 6)) 0) (cell-get (%closure-ref self$705 6)) (%closure (lambda (self$706 r$543) ((%closure (lambda (self$707 r$547) ((%closure (lambda (self$708 r$545) ((%closure (lambda (self$709 r$546) ((%closure-ref (cell-get (%closure-ref self$709 1)) 0) (cell-get (%closure-ref self$709 1)) (%closure (lambda (self$710 r$544) ((%closure (lambda (self$711 r$542) ((%closure-ref (cell-get (%closure-ref self$711 2)) 0) (cell-get (%closure-ref self$711 2)) (%closure-ref self$711 1) (%closure-ref self$711 3) (%closure-ref self$711 4) r$542)) (%closure-ref self$710 1) (%closure-ref self$710 2) (%closure-ref self$710 3) (%closure-ref self$710 4)) (cons (%closure-ref self$710 5) r$544))) (%closure-ref self$709 2) (%closure-ref self$709 3) (%closure-ref self$709 4) (%closure-ref self$709 5) (%closure-ref self$709 6)) (%closure-ref self$709 7) r$546)) (%closure-ref self$708 1) (%closure-ref self$708 2) (%closure-ref self$708 3) (%closure-ref self$708 4) (%closure-ref self$708 5) (%closure-ref self$708 6) r$545) (quote lemmas))) (%closure-ref self$707 1) (%closure-ref self$707 2) (%closure-ref self$707 3) (%closure-ref self$707 4) (%closure-ref self$707 5) (%closure-ref self$707 6)) (car r$547))) (%closure-ref self$706 1) (%closure-ref self$706 2) (%closure-ref self$706 3) (%closure-ref self$706 4) (%closure-ref self$706 5) r$543) (cadr (%closure-ref self$706 6)))) (%closure-ref self$705 1) (%closure-ref self$705 2) (%closure-ref self$705 3) (%closure-ref self$705 4) r$541 (%closure-ref self$705 5)) (%closure-ref self$705 5))) (%closure-ref self$704 1) (%closure-ref self$704 2) (%closure-ref self$704 3) r$540 (%closure-ref self$704 4) (%closure-ref self$704 5)) (quote lemmas))) (%closure-ref self$703 1) (%closure-ref self$703 2) (%closure-ref self$703 3) (%closure-ref self$703 4) (%closure-ref self$703 5)) (car r$548))) (%closure-ref self$702 1) (%closure-ref self$702 2) (%closure-ref self$702 3) (%closure-ref self$702 4) (%closure-ref self$702 5)) (cadr (%closure-ref self$702 4)))) (%closure-ref self$700 1) (%closure-ref self$700 2) (%closure-ref self$700 3) (%closure-ref self$700 4) (%closure-ref self$700 5))) ((%closure (lambda (self$701) ((%closure-ref error 0) error (%closure-ref self$701 1) #f "ADD-LEMMA did not like term: " (%closure-ref self$701 2))) (%closure-ref self$700 2) (%closure-ref self$700 4))))) (%closure-ref self$699 1) k$538 (%closure-ref self$699 2) term$224 (%closure-ref self$699 3)))) (%closure-ref self$698 7) (%closure-ref self$698 15) (%closure-ref self$698 34)))) (%closure-ref self$697 1) (%closure-ref self$697 2) (%closure-ref self$697 4) (%closure-ref self$697 5) (%closure-ref self$697 6) (%closure-ref self$697 7) (%closure-ref self$697 8) (%closure-ref self$697 9) (%closure-ref self$697 10) (%closure-ref self$697 11) (%closure-ref self$697 12) (%closure-ref self$697 13) (%closure-ref self$697 14) (%closure-ref self$697 15) (%closure-ref self$697 16) (%closure-ref self$697 17) (%closure-ref self$697 18) (%closure-ref self$697 19) (%closure-ref self$697 20) (%closure-ref self$697 21) (%closure-ref self$697 22) (%closure-ref self$697 23) (%closure-ref self$697 24) (%closure-ref self$697 25) (%closure-ref self$697 26) (%closure-ref self$697 27) (%closure-ref self$697 28) (%closure-ref self$697 29) (%closure-ref self$697 30) (%closure-ref self$697 31) (%closure-ref self$697 32) (%closure-ref self$697 33) (%closure-ref self$697 34) (%closure-ref self$697 35) (%closure-ref self$697 36) (%closure-ref self$697 37) (%closure-ref self$697 38) (%closure-ref self$697 39)) (set-cell! (%closure-ref self$697 3) r$555))) (%closure-ref self$689 1) (%closure-ref self$689 2) (%closure-ref self$689 3) (%closure-ref self$689 4) (%closure-ref self$689 5) (%closure-ref self$689 6) (%closure-ref self$689 7) (%closure-ref self$689 8) (%closure-ref self$689 9) (%closure-ref self$689 10) (%closure-ref self$689 11) (%closure-ref self$689 12) (%closure-ref self$689 13) (%closure-ref self$689 14) (%closure-ref self$689 15) (%closure-ref self$689 16) (%closure-ref self$689 17) (%closure-ref self$689 18) (%closure-ref self$689 19) (%closure-ref self$689 20) (%closure-ref self$689 21) (%closure-ref self$689 22) (%closure-ref self$689 23) (%closure-ref self$689 24) (%closure-ref self$689 25) (%closure-ref self$689 26) (%closure-ref self$689 27) (%closure-ref self$689 28) (%closure-ref self$689 29) (%closure-ref self$689 30) (%closure-ref self$689 31) (%closure-ref self$689 32) (%closure-ref self$689 33) (%closure-ref self$689 34) (%closure-ref self$689 35) (%closure-ref self$689 36) (%closure-ref self$689 37) (%closure-ref self$689 38) (%closure-ref self$689 39)) (%closure (lambda (self$690 k$556 lst$225) ((%closure (lambda (self$691 r$557) (if r$557 ((%closure (lambda (self$696) ((%closure-ref (%closure-ref self$696 1) 0) (%closure-ref self$696 1) #t)) (%closure-ref self$691 3))) ((%closure (lambda (self$692) ((%closure (lambda (self$693 r$560) ((%closure-ref (cell-get (%closure-ref self$693 1)) 0) (cell-get (%closure-ref self$693 1)) (%closure (lambda (self$694 r$558) ((%closure (lambda (self$695 r$559) ((%closure-ref (cell-get (%closure-ref self$695 1)) 0) (cell-get (%closure-ref self$695 1)) (%closure-ref self$695 2) r$559)) (%closure-ref self$694 1) (%closure-ref self$694 2)) (cdr (%closure-ref self$694 3)))) (%closure-ref self$693 2) (%closure-ref self$693 3) (%closure-ref self$693 4)) r$560)) (%closure-ref self$692 1) (%closure-ref self$692 2) (%closure-ref self$692 3) (%closure-ref self$692 4)) (car (%closure-ref self$692 4)))) (%closure-ref self$691 1) (%closure-ref self$691 2) (%closure-ref self$691 3) (%closure-ref self$691 4))))) (%closure-ref self$690 1) (%closure-ref self$690 2) k$556 lst$225) (null? lst$225))) (%closure-ref self$689 2) (%closure-ref self$689 3)))) (%closure-ref self$688 1) (%closure-ref self$688 2) (%closure-ref self$688 3) (%closure-ref self$688 4) (%closure-ref self$688 5) (%closure-ref self$688 6) (%closure-ref self$688 7) (%closure-ref self$688 8) (%closure-ref self$688 9) (%closure-ref self$688 10) (%closure-ref self$688 11) (%closure-ref self$688 12) (%closure-ref self$688 13) (%closure-ref self$688 14) (%closure-ref self$688 15) (%closure-ref self$688 16) (%closure-ref self$688 17) (%closure-ref self$688 18) (%closure-ref self$688 19) (%closure-ref self$688 20) (%closure-ref self$688 21) (%closure-ref self$688 22) (%closure-ref self$688 23) (%closure-ref self$688 24) (%closure-ref self$688 25) (%closure-ref self$688 26) (%closure-ref self$688 27) (%closure-ref self$688 28) (%closure-ref self$688 29) (%closure-ref self$688 30) (%closure-ref self$688 31) (%closure-ref self$688 32) (%closure-ref self$688 33) (%closure-ref self$688 34) (%closure-ref self$688 35) (%closure-ref self$688 36) (%closure-ref self$688 37) (%closure-ref self$688 38) (%closure-ref self$688 39)) (set-cell! (%closure-ref self$688 22) r$561))) (%closure-ref self$685 1) (%closure-ref self$685 2) (%closure-ref self$685 3) (%closure-ref self$685 4) (%closure-ref self$685 5) (%closure-ref self$685 6) (%closure-ref self$685 7) (%closure-ref self$685 8) (%closure-ref self$685 9) (%closure-ref self$685 10) (%closure-ref self$685 11) (%closure-ref self$685 12) (%closure-ref self$685 13) (%closure-ref self$685 14) (%closure-ref self$685 15) (%closure-ref self$685 16) (%closure-ref self$685 17) (%closure-ref self$685 18) (%closure-ref self$685 19) (%closure-ref self$685 20) (%closure-ref self$685 21) (%closure-ref self$685 22) (%closure-ref self$685 23) (%closure-ref self$685 24) (%closure-ref self$685 25) (%closure-ref self$685 26) (%closure-ref self$685 27) (%closure-ref self$685 28) term-member?$119 (%closure-ref self$685 29) (%closure-ref self$685 30) (%closure-ref self$685 31) (%closure-ref self$685 32) (%closure-ref self$685 33) (%closure-ref self$685 34) (%closure-ref self$685 35) (%closure-ref self$685 36) (%closure-ref self$685 37) (%closure-ref self$685 38)) (%closure (lambda (self$686 k$562) ((%closure (lambda (self$687 r$563) ((%closure-ref (cell-get (%closure-ref self$687 1)) 0) (cell-get (%closure-ref self$687 1)) (%closure-ref self$687 2) r$563)) (%closure-ref self$686 1) k$562) (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem))))))) (%closure-ref self$685 3)))) (%closure-ref self$684 1) (%closure-ref self$684 2) (%closure-ref self$684 3) (%closure-ref self$684 4) (%closure-ref self$684 5) (%closure-ref self$684 6) (%closure-ref self$684 7) (%closure-ref self$684 8) (%closure-ref self$684 9) (%closure-ref self$684 10) (%closure-ref self$684 11) (%closure-ref self$684 12) (%closure-ref self$684 13) (%closure-ref self$684 14) (%closure-ref self$684 15) (%closure-ref self$684 16) (%closure-ref self$684 17) (%closure-ref self$684 18) (%closure-ref self$684 19) (%closure-ref self$684 20) (%closure-ref self$684 21) (%closure-ref self$684 22) (%closure-ref self$684 23) (%closure-ref self$684 24) (%closure-ref self$684 25) (%closure-ref self$684 26) term-args-equal?$120 (%closure-ref self$684 27) (%closure-ref self$684 29) (%closure-ref self$684 30) (%closure-ref self$684 31) (%closure-ref self$684 32) (%closure-ref self$684 33) (%closure-ref self$684 34) (%closure-ref self$684 35) (%closure-ref self$684 36) (%closure-ref self$684 37) (%closure-ref self$684 38)) (cell (%closure-ref self$684 28)))) (%closure-ref self$683 1) (%closure-ref self$683 2) (%closure-ref self$683 3) (%closure-ref self$683 4) (%closure-ref self$683 5) (%closure-ref self$683 6) (%closure-ref self$683 7) (%closure-ref self$683 8) (%closure-ref self$683 9) (%closure-ref self$683 10) (%closure-ref self$683 11) (%closure-ref self$683 12) (%closure-ref self$683 13) (%closure-ref self$683 14) (%closure-ref self$683 15) (%closure-ref self$683 16) (%closure-ref self$683 17) (%closure-ref self$683 18) (%closure-ref self$683 19) (%closure-ref self$683 20) (%closure-ref self$683 21) (%closure-ref self$683 22) (%closure-ref self$683 23) (%closure-ref self$683 24) (%closure-ref self$683 25) (%closure-ref self$683 26) term-equal?$121 (%closure-ref self$683 28) (%closure-ref self$683 29) (%closure-ref self$683 30) (%closure-ref self$683 31) (%closure-ref self$683 32) (%closure-ref self$683 33) (%closure-ref self$683 34) (%closure-ref self$683 35) (%closure-ref self$683 36) (%closure-ref self$683 37) (%closure-ref self$683 38)) (cell (%closure-ref self$683 27)))) (%closure-ref self$682 1) (%closure-ref self$682 2) (%closure-ref self$682 3) (%closure-ref self$682 4) (%closure-ref self$682 5) (%closure-ref self$682 6) (%closure-ref self$682 7) (%closure-ref self$682 8) (%closure-ref self$682 9) (%closure-ref self$682 10) (%closure-ref self$682 11) (%closure-ref self$682 12) (%closure-ref self$682 13) (%closure-ref self$682 14) (%closure-ref self$682 15) (%closure-ref self$682 16) (%closure-ref self$682 17) (%closure-ref self$682 18) (%closure-ref self$682 19) (%closure-ref self$682 20) (%closure-ref self$682 21) (%closure-ref self$682 22) (%closure-ref self$682 23) (%closure-ref self$682 24) (%closure-ref self$682 25) (%closure-ref self$682 26) (%closure-ref self$682 27) (%closure-ref self$682 29) (%closure-ref self$682 30) (%closure-ref self$682 31) trans-of-implies1$122 (%closure-ref self$682 32) (%closure-ref self$682 33) (%closure-ref self$682 34) (%closure-ref self$682 35) (%closure-ref self$682 36) (%closure-ref self$682 37) (%closure-ref self$682 38)) (cell (%closure-ref self$682 28)))) (%closure-ref self$681 1) (%closure-ref self$681 2) (%closure-ref self$681 3) (%closure-ref self$681 4) (%closure-ref self$681 5) (%closure-ref self$681 6) (%closure-ref self$681 7) (%closure-ref self$681 8) (%closure-ref self$681 9) (%closure-ref self$681 10) (%closure-ref self$681 11) (%closure-ref self$681 12) (%closure-ref self$681 13) (%closure-ref self$681 14) (%closure-ref self$681 15) (%closure-ref self$681 16) (%closure-ref self$681 17) (%closure-ref self$681 18) (%closure-ref self$681 19) (%closure-ref self$681 20) (%closure-ref self$681 21) (%closure-ref self$681 22) (%closure-ref self$681 23) (%closure-ref self$681 24) (%closure-ref self$681 25) (%closure-ref self$681 26) (%closure-ref self$681 27) (%closure-ref self$681 28) (%closure-ref self$681 29) (%closure-ref self$681 30) trans-of-implies$123 (%closure-ref self$681 32) (%closure-ref self$681 33) (%closure-ref self$681 34) (%closure-ref self$681 35) (%closure-ref self$681 36) (%closure-ref self$681 37) (%closure-ref self$681 38)) (cell (%closure-ref self$681 31)))) (%closure-ref self$680 1) (%closure-ref self$680 2) (%closure-ref self$680 3) (%closure-ref self$680 4) (%closure-ref self$680 5) (%closure-ref self$680 6) (%closure-ref self$680 7) (%closure-ref self$680 8) (%closure-ref self$680 9) (%closure-ref self$680 10) (%closure-ref self$680 11) (%closure-ref self$680 12) (%closure-ref self$680 13) (%closure-ref self$680 14) (%closure-ref self$680 15) (%closure-ref self$680 16) (%closure-ref self$680 17) (%closure-ref self$680 18) (%closure-ref self$680 19) (%closure-ref self$680 20) (%closure-ref self$680 21) (%closure-ref self$680 22) (%closure-ref self$680 23) (%closure-ref self$680 24) (%closure-ref self$680 25) (%closure-ref self$680 26) (%closure-ref self$680 27) (%closure-ref self$680 28) (%closure-ref self$680 29) (%closure-ref self$680 30) (%closure-ref self$680 32) (%closure-ref self$680 33) (%closure-ref self$680 34) (%closure-ref self$680 35) true-term$124 (%closure-ref self$680 36) (%closure-ref self$680 37) (%closure-ref self$680 38)) (cell (%closure-ref self$680 31)))) (%closure-ref self$679 1) (%closure-ref self$679 2) (%closure-ref self$679 3) (%closure-ref self$679 4) (%closure-ref self$679 5) false-term$125 (%closure-ref self$679 6) (%closure-ref self$679 7) (%closure-ref self$679 8) (%closure-ref self$679 9) (%closure-ref self$679 10) (%closure-ref self$679 11) (%closure-ref self$679 12) (%closure-ref self$679 13) (%closure-ref self$679 14) (%closure-ref self$679 15) (%closure-ref self$679 16) (%closure-ref self$679 17) (%closure-ref self$679 18) (%closure-ref self$679 19) (%closure-ref self$679 20) (%closure-ref self$679 21) (%closure-ref self$679 22) (%closure-ref self$679 23) (%closure-ref self$679 24) (%closure-ref self$679 25) (%closure-ref self$679 26) (%closure-ref self$679 27) (%closure-ref self$679 28) (%closure-ref self$679 29) (%closure-ref self$679 30) (%closure-ref self$679 31) (%closure-ref self$679 32) (%closure-ref self$679 33) (%closure-ref self$679 34) (%closure-ref self$679 36) (%closure-ref self$679 37) (%closure-ref self$679 38)) (cell (%closure-ref self$679 35)))) (%closure-ref self$678 1) (%closure-ref self$678 2) (%closure-ref self$678 3) (%closure-ref self$678 4) (%closure-ref self$678 5) (%closure-ref self$678 7) (%closure-ref self$678 8) (%closure-ref self$678 9) (%closure-ref self$678 10) (%closure-ref self$678 11) (%closure-ref self$678 12) (%closure-ref self$678 13) (%closure-ref self$678 14) (%closure-ref self$678 15) (%closure-ref self$678 16) (%closure-ref self$678 17) (%closure-ref self$678 18) (%closure-ref self$678 19) (%closure-ref self$678 20) (%closure-ref self$678 21) (%closure-ref self$678 22) (%closure-ref self$678 23) (%closure-ref self$678 24) (%closure-ref self$678 25) (%closure-ref self$678 26) (%closure-ref self$678 27) (%closure-ref self$678 28) (%closure-ref self$678 29) (%closure-ref self$678 30) (%closure-ref self$678 31) (%closure-ref self$678 32) (%closure-ref self$678 33) (%closure-ref self$678 34) (%closure-ref self$678 35) (%closure-ref self$678 36) truep$126 (%closure-ref self$678 37) (%closure-ref self$678 38)) (cell (%closure-ref self$678 6)))) (%closure-ref self$677 1) (%closure-ref self$677 2) (%closure-ref self$677 3) (%closure-ref self$677 4) (%closure-ref self$677 5) (%closure-ref self$677 6) falsep$127 (%closure-ref self$677 7) (%closure-ref self$677 8) (%closure-ref self$677 9) (%closure-ref self$677 10) (%closure-ref self$677 11) (%closure-ref self$677 12) (%closure-ref self$677 13) (%closure-ref self$677 14) (%closure-ref self$677 15) (%closure-ref self$677 16) (%closure-ref self$677 17) (%closure-ref self$677 18) (%closure-ref self$677 19) (%closure-ref self$677 20) (%closure-ref self$677 21) (%closure-ref self$677 22) (%closure-ref self$677 23) (%closure-ref self$677 24) (%closure-ref self$677 25) (%closure-ref self$677 26) (%closure-ref self$677 27) (%closure-ref self$677 28) (%closure-ref self$677 29) (%closure-ref self$677 30) (%closure-ref self$677 31) (%closure-ref self$677 32) (%closure-ref self$677 33) (%closure-ref self$677 34) (%closure-ref self$677 35) (%closure-ref self$677 37) (%closure-ref self$677 38)) (cell (%closure-ref self$677 36)))) (%closure-ref self$676 1) (%closure-ref self$676 2) (%closure-ref self$676 3) (%closure-ref self$676 4) (%closure-ref self$676 5) (%closure-ref self$676 6) (%closure-ref self$676 8) (%closure-ref self$676 9) (%closure-ref self$676 10) (%closure-ref self$676 11) (%closure-ref self$676 12) (%closure-ref self$676 13) (%closure-ref self$676 14) one-way-unify1-lst$128 (%closure-ref self$676 15) (%closure-ref self$676 16) (%closure-ref self$676 17) (%closure-ref self$676 18) (%closure-ref self$676 19) (%closure-ref self$676 20) (%closure-ref self$676 21) (%closure-ref self$676 22) (%closure-ref self$676 23) (%closure-ref self$676 24) (%closure-ref self$676 25) (%closure-ref self$676 26) (%closure-ref self$676 27) (%closure-ref self$676 28) (%closure-ref self$676 29) (%closure-ref self$676 30) (%closure-ref self$676 31) (%closure-ref self$676 32) (%closure-ref self$676 33) (%closure-ref self$676 34) (%closure-ref self$676 35) (%closure-ref self$676 36) (%closure-ref self$676 37) (%closure-ref self$676 38)) (cell (%closure-ref self$676 7)))) (%closure-ref self$675 1) (%closure-ref self$675 2) (%closure-ref self$675 3) (%closure-ref self$675 4) (%closure-ref self$675 5) (%closure-ref self$675 6) (%closure-ref self$675 7) (%closure-ref self$675 8) (%closure-ref self$675 9) (%closure-ref self$675 10) (%closure-ref self$675 11) (%closure-ref self$675 12) (%closure-ref self$675 13) one-way-unify1$129 (%closure-ref self$675 15) (%closure-ref self$675 16) (%closure-ref self$675 17) (%closure-ref self$675 18) (%closure-ref self$675 19) (%closure-ref self$675 20) (%closure-ref self$675 21) (%closure-ref self$675 22) (%closure-ref self$675 23) (%closure-ref self$675 24) (%closure-ref self$675 25) (%closure-ref self$675 26) (%closure-ref self$675 27) (%closure-ref self$675 28) (%closure-ref self$675 29) (%closure-ref self$675 30) (%closure-ref self$675 31) (%closure-ref self$675 32) (%closure-ref self$675 33) (%closure-ref self$675 34) (%closure-ref self$675 35) (%closure-ref self$675 36) (%closure-ref self$675 37) (%closure-ref self$675 38)) (cell (%closure-ref self$675 14)))) (%closure-ref self$674 1) (%closure-ref self$674 2) (%closure-ref self$674 3) (%closure-ref self$674 4) (%closure-ref self$674 5) (%closure-ref self$674 6) (%closure-ref self$674 7) (%closure-ref self$674 8) (%closure-ref self$674 9) (%closure-ref self$674 10) (%closure-ref self$674 11) (%closure-ref self$674 12) one-way-unify$130 (%closure-ref self$674 14) (%closure-ref self$674 15) (%closure-ref self$674 16) (%closure-ref self$674 17) (%closure-ref self$674 18) (%closure-ref self$674 19) (%closure-ref self$674 20) (%closure-ref self$674 21) (%closure-ref self$674 22) (%closure-ref self$674 23) (%closure-ref self$674 24) (%closure-ref self$674 25) (%closure-ref self$674 26) (%closure-ref self$674 27) (%closure-ref self$674 28) (%closure-ref self$674 29) (%closure-ref self$674 30) (%closure-ref self$674 31) (%closure-ref self$674 32) (%closure-ref self$674 33) (%closure-ref self$674 34) (%closure-ref self$674 35) (%closure-ref self$674 36) (%closure-ref self$674 37) (%closure-ref self$674 38)) (cell (%closure-ref self$674 13)))) (%closure-ref self$673 1) (%closure-ref self$673 2) (%closure-ref self$673 3) (%closure-ref self$673 4) (%closure-ref self$673 5) (%closure-ref self$673 6) (%closure-ref self$673 7) (%closure-ref self$673 8) (%closure-ref self$673 9) (%closure-ref self$673 10) (%closure-ref self$673 11) (%closure-ref self$673 12) (%closure-ref self$673 14) (%closure-ref self$673 15) (%closure-ref self$673 16) (%closure-ref self$673 17) (%closure-ref self$673 18) (%closure-ref self$673 19) (%closure-ref self$673 20) (%closure-ref self$673 21) (%closure-ref self$673 22) (%closure-ref self$673 23) (%closure-ref self$673 24) (%closure-ref self$673 25) (%closure-ref self$673 26) (%closure-ref self$673 27) (%closure-ref self$673 28) (%closure-ref self$673 29) (%closure-ref self$673 30) (%closure-ref self$673 31) (%closure-ref self$673 32) (%closure-ref self$673 33) (%closure-ref self$673 34) (%closure-ref self$673 35) (%closure-ref self$673 36) (%closure-ref self$673 37) unify-subst$131 (%closure-ref self$673 38)) (cell (%closure-ref self$673 13)))) (%closure-ref self$672 1) (%closure-ref self$672 2) (%closure-ref self$672 3) (%closure-ref self$672 4) (%closure-ref self$672 5) (%closure-ref self$672 6) (%closure-ref self$672 7) (%closure-ref self$672 8) (%closure-ref self$672 9) (%closure-ref self$672 10) (%closure-ref self$672 11) (%closure-ref self$672 12) (%closure-ref self$672 13) (%closure-ref self$672 14) (%closure-ref self$672 15) (%closure-ref self$672 16) (%closure-ref self$672 17) (%closure-ref self$672 18) (%closure-ref self$672 19) (%closure-ref self$672 20) rewrite-with-lemmas$132 (%closure-ref self$672 21) (%closure-ref self$672 22) (%closure-ref self$672 23) (%closure-ref self$672 24) (%closure-ref self$672 25) (%closure-ref self$672 26) (%closure-ref self$672 27) (%closure-ref self$672 28) (%closure-ref self$672 29) (%closure-ref self$672 30) (%closure-ref self$672 31) (%closure-ref self$672 32) (%closure-ref self$672 33) (%closure-ref self$672 34) (%closure-ref self$672 35) (%closure-ref self$672 36) (%closure-ref self$672 38)) (cell (%closure-ref self$672 37)))) (%closure-ref self$671 1) (%closure-ref self$671 2) (%closure-ref self$671 3) (%closure-ref self$671 4) (%closure-ref self$671 5) (%closure-ref self$671 6) (%closure-ref self$671 7) (%closure-ref self$671 8) (%closure-ref self$671 9) (%closure-ref self$671 10) (%closure-ref self$671 11) (%closure-ref self$671 12) (%closure-ref self$671 13) (%closure-ref self$671 14) (%closure-ref self$671 15) (%closure-ref self$671 16) (%closure-ref self$671 17) (%closure-ref self$671 18) rewrite-args$133 (%closure-ref self$671 19) (%closure-ref self$671 21) (%closure-ref self$671 22) (%closure-ref self$671 23) (%closure-ref self$671 24) (%closure-ref self$671 25) (%closure-ref self$671 26) (%closure-ref self$671 27) (%closure-ref self$671 28) (%closure-ref self$671 29) (%closure-ref self$671 30) (%closure-ref self$671 31) (%closure-ref self$671 32) (%closure-ref self$671 33) (%closure-ref self$671 34) (%closure-ref self$671 35) (%closure-ref self$671 36) (%closure-ref self$671 37) (%closure-ref self$671 38)) (cell (%closure-ref self$671 20)))) (%closure-ref self$670 1) (%closure-ref self$670 2) (%closure-ref self$670 3) (%closure-ref self$670 4) (%closure-ref self$670 5) (%closure-ref self$670 6) (%closure-ref self$670 7) (%closure-ref self$670 8) (%closure-ref self$670 9) (%closure-ref self$670 10) (%closure-ref self$670 11) (%closure-ref self$670 12) (%closure-ref self$670 13) (%closure-ref self$670 14) (%closure-ref self$670 15) (%closure-ref self$670 16) (%closure-ref self$670 17) rewrite$134 (%closure-ref self$670 19) (%closure-ref self$670 20) (%closure-ref self$670 21) (%closure-ref self$670 22) (%closure-ref self$670 23) (%closure-ref self$670 24) (%closure-ref self$670 25) (%closure-ref self$670 26) (%closure-ref self$670 27) (%closure-ref self$670 28) (%closure-ref self$670 29) (%closure-ref self$670 30) (%closure-ref self$670 31) (%closure-ref self$670 32) (%closure-ref self$670 33) (%closure-ref self$670 34) (%closure-ref self$670 35) (%closure-ref self$670 36) (%closure-ref self$670 37) (%closure-ref self$670 38)) (cell (%closure-ref self$670 18)))) (%closure-ref self$669 1) (%closure-ref self$669 2) (%closure-ref self$669 3) (%closure-ref self$669 4) (%closure-ref self$669 5) (%closure-ref self$669 6) (%closure-ref self$669 7) (%closure-ref self$669 8) (%closure-ref self$669 9) (%closure-ref self$669 10) (%closure-ref self$669 11) (%closure-ref self$669 12) (%closure-ref self$669 13) (%closure-ref self$669 14) (%closure-ref self$669 15) (%closure-ref self$669 16) (%closure-ref self$669 17) (%closure-ref self$669 19) rewrite-count$135 (%closure-ref self$669 20) (%closure-ref self$669 21) (%closure-ref self$669 22) (%closure-ref self$669 23) (%closure-ref self$669 24) (%closure-ref self$669 25) (%closure-ref self$669 26) (%closure-ref self$669 27) (%closure-ref self$669 28) (%closure-ref self$669 29) (%closure-ref self$669 30) (%closure-ref self$669 31) (%closure-ref self$669 32) (%closure-ref self$669 33) (%closure-ref self$669 34) (%closure-ref self$669 35) (%closure-ref self$669 36) (%closure-ref self$669 37) (%closure-ref self$669 38)) (cell (%closure-ref self$669 18)))) (%closure-ref self$668 1) (%closure-ref self$668 2) (%closure-ref self$668 3) (%closure-ref self$668 4) (%closure-ref self$668 5) (%closure-ref self$668 6) (%closure-ref self$668 7) (%closure-ref self$668 8) (%closure-ref self$668 9) (%closure-ref self$668 10) if-constructor$136 (%closure-ref self$668 11) (%closure-ref self$668 12) (%closure-ref self$668 13) (%closure-ref self$668 14) (%closure-ref self$668 15) (%closure-ref self$668 16) (%closure-ref self$668 17) (%closure-ref self$668 18) (%closure-ref self$668 20) (%closure-ref self$668 21) (%closure-ref self$668 22) (%closure-ref self$668 23) (%closure-ref self$668 24) (%closure-ref self$668 25) (%closure-ref self$668 26) (%closure-ref self$668 27) (%closure-ref self$668 28) (%closure-ref self$668 29) (%closure-ref self$668 30) (%closure-ref self$668 31) (%closure-ref self$668 32) (%closure-ref self$668 33) (%closure-ref self$668 34) (%closure-ref self$668 35) (%closure-ref self$668 36) (%closure-ref self$668 37) (%closure-ref self$668 38)) (cell (%closure-ref self$668 19)))) (%closure-ref self$667 1) (%closure-ref self$667 2) (%closure-ref self$667 3) (%closure-ref self$667 4) (%closure-ref self$667 5) (%closure-ref self$667 6) (%closure-ref self$667 7) (%closure-ref self$667 8) (%closure-ref self$667 9) (%closure-ref self$667 10) (%closure-ref self$667 12) (%closure-ref self$667 13) (%closure-ref self$667 14) (%closure-ref self$667 15) (%closure-ref self$667 16) (%closure-ref self$667 17) (%closure-ref self$667 18) (%closure-ref self$667 19) (%closure-ref self$667 20) (%closure-ref self$667 21) (%closure-ref self$667 22) (%closure-ref self$667 23) (%closure-ref self$667 24) tautologyp$137 (%closure-ref self$667 25) (%closure-ref self$667 26) (%closure-ref self$667 27) (%closure-ref self$667 28) (%closure-ref self$667 29) (%closure-ref self$667 30) (%closure-ref self$667 31) (%closure-ref self$667 32) (%closure-ref self$667 33) (%closure-ref self$667 34) (%closure-ref self$667 35) (%closure-ref self$667 36) (%closure-ref self$667 37) (%closure-ref self$667 38)) (cell (%closure-ref self$667 11)))) (%closure-ref self$666 1) (%closure-ref self$666 2) (%closure-ref self$666 3) (%closure-ref self$666 4) (%closure-ref self$666 5) (%closure-ref self$666 6) (%closure-ref self$666 7) (%closure-ref self$666 8) (%closure-ref self$666 9) (%closure-ref self$666 10) (%closure-ref self$666 11) (%closure-ref self$666 12) (%closure-ref self$666 13) (%closure-ref self$666 14) (%closure-ref self$666 15) (%closure-ref self$666 16) (%closure-ref self$666 17) (%closure-ref self$666 18) (%closure-ref self$666 19) (%closure-ref self$666 20) (%closure-ref self$666 21) (%closure-ref self$666 22) (%closure-ref self$666 23) (%closure-ref self$666 24) tautp$138 (%closure-ref self$666 26) (%closure-ref self$666 27) (%closure-ref self$666 28) (%closure-ref self$666 29) (%closure-ref self$666 30) (%closure-ref self$666 31) (%closure-ref self$666 32) (%closure-ref self$666 33) (%closure-ref self$666 34) (%closure-ref self$666 35) (%closure-ref self$666 36) (%closure-ref self$666 37) (%closure-ref self$666 38)) (cell (%closure-ref self$666 25)))) (%closure-ref self$665 1) (%closure-ref self$665 2) (%closure-ref self$665 3) (%closure-ref self$665 4) apply-subst-lst$139 (%closure-ref self$665 5) (%closure-ref self$665 6) (%closure-ref self$665 7) (%closure-ref self$665 8) (%closure-ref self$665 9) (%closure-ref self$665 10) (%closure-ref self$665 11) (%closure-ref self$665 12) (%closure-ref self$665 13) (%closure-ref self$665 14) (%closure-ref self$665 15) (%closure-ref self$665 16) (%closure-ref self$665 17) (%closure-ref self$665 18) (%closure-ref self$665 19) (%closure-ref self$665 20) (%closure-ref self$665 21) (%closure-ref self$665 22) (%closure-ref self$665 23) (%closure-ref self$665 24) (%closure-ref self$665 26) (%closure-ref self$665 27) (%closure-ref self$665 28) (%closure-ref self$665 29) (%closure-ref self$665 30) (%closure-ref self$665 31) (%closure-ref self$665 32) (%closure-ref self$665 33) (%closure-ref self$665 34) (%closure-ref self$665 35) (%closure-ref self$665 36) (%closure-ref self$665 37) (%closure-ref self$665 38)) (cell (%closure-ref self$665 25)))) (%closure-ref self$664 1) (%closure-ref self$664 2) (%closure-ref self$664 3) apply-subst$140 (%closure-ref self$664 5) (%closure-ref self$664 6) (%closure-ref self$664 7) (%closure-ref self$664 8) (%closure-ref self$664 9) (%closure-ref self$664 10) (%closure-ref self$664 11) (%closure-ref self$664 12) (%closure-ref self$664 13) (%closure-ref self$664 14) (%closure-ref self$664 15) (%closure-ref self$664 16) (%closure-ref self$664 17) (%closure-ref self$664 18) (%closure-ref self$664 19) (%closure-ref self$664 20) (%closure-ref self$664 21) (%closure-ref self$664 22) (%closure-ref self$664 23) (%closure-ref self$664 24) (%closure-ref self$664 25) (%closure-ref self$664 26) (%closure-ref self$664 27) (%closure-ref self$664 28) (%closure-ref self$664 29) (%closure-ref self$664 30) (%closure-ref self$664 31) (%closure-ref self$664 32) (%closure-ref self$664 33) (%closure-ref self$664 34) (%closure-ref self$664 35) (%closure-ref self$664 36) (%closure-ref self$664 37) (%closure-ref self$664 38)) (cell (%closure-ref self$664 4)))) (%closure-ref self$663 1) (%closure-ref self$663 2) (%closure-ref self$663 3) (%closure-ref self$663 5) (%closure-ref self$663 6) (%closure-ref self$663 7) (%closure-ref self$663 8) (%closure-ref self$663 9) (%closure-ref self$663 10) (%closure-ref self$663 11) (%closure-ref self$663 12) (%closure-ref self$663 13) (%closure-ref self$663 14) (%closure-ref self$663 15) (%closure-ref self$663 16) (%closure-ref self$663 17) (%closure-ref self$663 18) (%closure-ref self$663 19) (%closure-ref self$663 20) (%closure-ref self$663 21) (%closure-ref self$663 22) (%closure-ref self$663 23) (%closure-ref self$663 24) (%closure-ref self$663 25) (%closure-ref self$663 26) (%closure-ref self$663 27) (%closure-ref self$663 28) (%closure-ref self$663 29) (%closure-ref self$663 30) (%closure-ref self$663 31) (%closure-ref self$663 32) translate-alist$141 (%closure-ref self$663 33) (%closure-ref self$663 34) (%closure-ref self$663 35) (%closure-ref self$663 36) (%closure-ref self$663 37) (%closure-ref self$663 38)) (cell (%closure-ref self$663 4)))) (%closure-ref self$662 1) (%closure-ref self$662 2) (%closure-ref self$662 3) (%closure-ref self$662 4) (%closure-ref self$662 5) (%closure-ref self$662 6) (%closure-ref self$662 7) (%closure-ref self$662 8) (%closure-ref self$662 9) (%closure-ref self$662 10) (%closure-ref self$662 11) (%closure-ref self$662 12) (%closure-ref self$662 13) (%closure-ref self$662 14) (%closure-ref self$662 15) (%closure-ref self$662 16) (%closure-ref self$662 17) (%closure-ref self$662 18) (%closure-ref self$662 19) (%closure-ref self$662 20) (%closure-ref self$662 21) (%closure-ref self$662 22) (%closure-ref self$662 23) (%closure-ref self$662 24) (%closure-ref self$662 25) (%closure-ref self$662 26) (%closure-ref self$662 27) (%closure-ref self$662 28) (%closure-ref self$662 29) test$142 (%closure-ref self$662 30) (%closure-ref self$662 31) (%closure-ref self$662 33) (%closure-ref self$662 34) (%closure-ref self$662 35) (%closure-ref self$662 36) (%closure-ref self$662 37) (%closure-ref self$662 38)) (cell (%closure-ref self$662 32)))) (%closure-ref self$661 1) (%closure-ref self$661 2) (%closure-ref self$661 3) (%closure-ref self$661 4) (%closure-ref self$661 5) (%closure-ref self$661 6) (%closure-ref self$661 7) (%closure-ref self$661 8) (%closure-ref self$661 9) (%closure-ref self$661 10) (%closure-ref self$661 11) (%closure-ref self$661 12) (%closure-ref self$661 13) (%closure-ref self$661 14) (%closure-ref self$661 15) (%closure-ref self$661 16) (%closure-ref self$661 17) (%closure-ref self$661 18) (%closure-ref self$661 19) (%closure-ref self$661 20) (%closure-ref self$661 21) (%closure-ref self$661 22) (%closure-ref self$661 23) symbol-record-equal?$143 (%closure-ref self$661 24) (%closure-ref self$661 25) (%closure-ref self$661 26) (%closure-ref self$661 27) (%closure-ref self$661 28) (%closure-ref self$661 30) (%closure-ref self$661 31) (%closure-ref self$661 32) (%closure-ref self$661 33) (%closure-ref self$661 34) (%closure-ref self$661 35) (%closure-ref self$661 36) (%closure-ref self$661 37) (%closure-ref self$661 38)) (cell (%closure-ref self$661 29)))) (%closure-ref self$660 1) (%closure-ref self$660 2) (%closure-ref self$660 3) (%closure-ref self$660 4) (%closure-ref self$660 5) (%closure-ref self$660 6) (%closure-ref self$660 7) (%closure-ref self$660 8) (%closure-ref self$660 9) get-name$144 (%closure-ref self$660 10) (%closure-ref self$660 11) (%closure-ref self$660 12) (%closure-ref self$660 13) (%closure-ref self$660 14) (%closure-ref self$660 15) (%closure-ref self$660 16) (%closure-ref self$660 17) (%closure-ref self$660 18) (%closure-ref self$660 19) (%closure-ref self$660 20) (%closure-ref self$660 21) (%closure-ref self$660 22) (%closure-ref self$660 24) (%closure-ref self$660 25) (%closure-ref self$660 26) (%closure-ref self$660 27) (%closure-ref self$660 28) (%closure-ref self$660 29) (%closure-ref self$660 30) (%closure-ref self$660 31) (%closure-ref self$660 32) (%closure-ref self$660 33) (%closure-ref self$660 34) (%closure-ref self$660 35) (%closure-ref self$660 36) (%closure-ref self$660 37) (%closure-ref self$660 38)) (cell (%closure-ref self$660 23)))) (%closure-ref self$659 1) (%closure-ref self$659 2) (%closure-ref self$659 3) (%closure-ref self$659 4) (%closure-ref self$659 5) (%closure-ref self$659 6) (%closure-ref self$659 7) (%closure-ref self$659 8) get-lemmas$145 (%closure-ref self$659 10) (%closure-ref self$659 11) (%closure-ref self$659 12) (%closure-ref self$659 13) (%closure-ref self$659 14) (%closure-ref self$659 15) (%closure-ref self$659 16) (%closure-ref self$659 17) (%closure-ref self$659 18) (%closure-ref self$659 19) (%closure-ref self$659 20) (%closure-ref self$659 21) (%closure-ref self$659 22) (%closure-ref self$659 23) (%closure-ref self$659 24) (%closure-ref self$659 25) (%closure-ref self$659 26) (%closure-ref self$659 27) (%closure-ref self$659 28) (%closure-ref self$659 29) (%closure-ref self$659 30) (%closure-ref self$659 31) (%closure-ref self$659 32) (%closure-ref self$659 33) (%closure-ref self$659 34) (%closure-ref self$659 35) (%closure-ref self$659 36) (%closure-ref self$659 37) (%closure-ref self$659 38)) (cell (%closure-ref self$659 9)))) (%closure-ref self$658 1) (%closure-ref self$658 2) (%closure-ref self$658 3) (%closure-ref self$658 4) (%closure-ref self$658 5) (%closure-ref self$658 6) (%closure-ref self$658 7) (%closure-ref self$658 8) (%closure-ref self$658 10) (%closure-ref self$658 11) (%closure-ref self$658 12) (%closure-ref self$658 13) (%closure-ref self$658 14) (%closure-ref self$658 15) (%closure-ref self$658 16) put-lemmas!$146 (%closure-ref self$658 17) (%closure-ref self$658 18) (%closure-ref self$658 19) (%closure-ref self$658 20) (%closure-ref self$658 21) (%closure-ref self$658 22) (%closure-ref self$658 23) (%closure-ref self$658 24) (%closure-ref self$658 25) (%closure-ref self$658 26) (%closure-ref self$658 27) (%closure-ref self$658 28) (%closure-ref self$658 29) (%closure-ref self$658 30) (%closure-ref self$658 31) (%closure-ref self$658 32) (%closure-ref self$658 33) (%closure-ref self$658 34) (%closure-ref self$658 35) (%closure-ref self$658 36) (%closure-ref self$658 37) (%closure-ref self$658 38)) (cell (%closure-ref self$658 9)))) (%closure-ref self$657 1) (%closure-ref self$657 2) (%closure-ref self$657 3) (%closure-ref self$657 4) (%closure-ref self$657 5) (%closure-ref self$657 6) (%closure-ref self$657 7) (%closure-ref self$657 8) (%closure-ref self$657 9) (%closure-ref self$657 10) (%closure-ref self$657 11) make-symbol-record$147 (%closure-ref self$657 12) (%closure-ref self$657 13) (%closure-ref self$657 14) (%closure-ref self$657 15) (%closure-ref self$657 17) (%closure-ref self$657 18) (%closure-ref self$657 19) (%closure-ref self$657 20) (%closure-ref self$657 21) (%closure-ref self$657 22) (%closure-ref self$657 23) (%closure-ref self$657 24) (%closure-ref self$657 25) (%closure-ref self$657 26) (%closure-ref self$657 27) (%closure-ref self$657 28) (%closure-ref self$657 29) (%closure-ref self$657 30) (%closure-ref self$657 31) (%closure-ref self$657 32) (%closure-ref self$657 33) (%closure-ref self$657 34) (%closure-ref self$657 35) (%closure-ref self$657 36) (%closure-ref self$657 37) (%closure-ref self$657 38)) (cell (%closure-ref self$657 16)))) *symbol-records-alist*$148 (%closure-ref self$656 1) (%closure-ref self$656 2) (%closure-ref self$656 3) (%closure-ref self$656 4) (%closure-ref self$656 5) (%closure-ref self$656 6) (%closure-ref self$656 7) (%closure-ref self$656 8) (%closure-ref self$656 9) (%closure-ref self$656 10) (%closure-ref self$656 12) (%closure-ref self$656 13) (%closure-ref self$656 14) (%closure-ref self$656 15) (%closure-ref self$656 16) (%closure-ref self$656 17) (%closure-ref self$656 18) (%closure-ref self$656 19) (%closure-ref self$656 20) (%closure-ref self$656 21) (%closure-ref self$656 22) (%closure-ref self$656 23) (%closure-ref self$656 24) (%closure-ref self$656 25) (%closure-ref self$656 26) (%closure-ref self$656 27) (%closure-ref self$656 28) (%closure-ref self$656 29) (%closure-ref self$656 30) (%closure-ref self$656 31) (%closure-ref self$656 32) (%closure-ref self$656 33) (%closure-ref self$656 34) (%closure-ref self$656 35) (%closure-ref self$656 36) (%closure-ref self$656 37) (%closure-ref self$656 38)) (cell (%closure-ref self$656 11)))) (%closure-ref self$655 2) (%closure-ref self$655 3) (%closure-ref self$655 4) (%closure-ref self$655 5) (%closure-ref self$655 6) (%closure-ref self$655 7) (%closure-ref self$655 8) (%closure-ref self$655 9) (%closure-ref self$655 10) (%closure-ref self$655 11) (%closure-ref self$655 12) (%closure-ref self$655 13) (%closure-ref self$655 14) (%closure-ref self$655 15) (%closure-ref self$655 16) (%closure-ref self$655 17) (%closure-ref self$655 18) (%closure-ref self$655 19) (%closure-ref self$655 20) (%closure-ref self$655 21) (%closure-ref self$655 22) symbol->symbol-record$149 (%closure-ref self$655 23) (%closure-ref self$655 24) (%closure-ref self$655 25) (%closure-ref self$655 26) (%closure-ref self$655 27) (%closure-ref self$655 28) (%closure-ref self$655 29) (%closure-ref self$655 30) (%closure-ref self$655 31) (%closure-ref self$655 32) (%closure-ref self$655 33) (%closure-ref self$655 34) (%closure-ref self$655 35) (%closure-ref self$655 36) (%closure-ref self$655 37) (%closure-ref self$655 38)) (cell (%closure-ref self$655 1)))) (%closure-ref self$654 1) (%closure-ref self$654 2) (%closure-ref self$654 3) (%closure-ref self$654 4) (%closure-ref self$654 5) (%closure-ref self$654 6) (%closure-ref self$654 7) get$150 (%closure-ref self$654 8) (%closure-ref self$654 9) (%closure-ref self$654 10) (%closure-ref self$654 11) (%closure-ref self$654 12) (%closure-ref self$654 13) (%closure-ref self$654 14) (%closure-ref self$654 15) (%closure-ref self$654 16) (%closure-ref self$654 17) (%closure-ref self$654 18) (%closure-ref self$654 19) (%closure-ref self$654 20) (%closure-ref self$654 21) (%closure-ref self$654 23) (%closure-ref self$654 24) (%closure-ref self$654 25) (%closure-ref self$654 26) (%closure-ref self$654 27) (%closure-ref self$654 28) (%closure-ref self$654 29) (%closure-ref self$654 30) (%closure-ref self$654 31) (%closure-ref self$654 32) (%closure-ref self$654 33) (%closure-ref self$654 34) (%closure-ref self$654 35) (%closure-ref self$654 36) (%closure-ref self$654 37) (%closure-ref self$654 38)) (cell (%closure-ref self$654 22)))) (%closure-ref self$653 1) (%closure-ref self$653 2) (%closure-ref self$653 3) (%closure-ref self$653 4) (%closure-ref self$653 5) (%closure-ref self$653 6) (%closure-ref self$653 7) (%closure-ref self$653 9) (%closure-ref self$653 10) (%closure-ref self$653 11) (%closure-ref self$653 12) (%closure-ref self$653 13) (%closure-ref self$653 14) (%closure-ref self$653 15) put$151 (%closure-ref self$653 16) (%closure-ref self$653 17) (%closure-ref self$653 18) (%closure-ref self$653 19) (%closure-ref self$653 20) (%closure-ref self$653 21) (%closure-ref self$653 22) (%closure-ref self$653 23) (%closure-ref self$653 24) (%closure-ref self$653 25) (%closure-ref self$653 26) (%closure-ref self$653 27) (%closure-ref self$653 28) (%closure-ref self$653 29) (%closure-ref self$653 30) (%closure-ref self$653 31) (%closure-ref self$653 32) (%closure-ref self$653 33) (%closure-ref self$653 34) (%closure-ref self$653 35) (%closure-ref self$653 36) (%closure-ref self$653 37) (%closure-ref self$653 38)) (cell (%closure-ref self$653 8)))) (%closure-ref self$652 1) (%closure-ref self$652 2) (%closure-ref self$652 3) (%closure-ref self$652 4) (%closure-ref self$652 5) (%closure-ref self$652 6) (%closure-ref self$652 7) (%closure-ref self$652 8) (%closure-ref self$652 9) (%closure-ref self$652 10) (%closure-ref self$652 11) (%closure-ref self$652 12) (%closure-ref self$652 13) (%closure-ref self$652 14) (%closure-ref self$652 15) (%closure-ref self$652 17) (%closure-ref self$652 18) (%closure-ref self$652 19) (%closure-ref self$652 20) (%closure-ref self$652 21) (%closure-ref self$652 22) (%closure-ref self$652 23) (%closure-ref self$652 24) (%closure-ref self$652 25) (%closure-ref self$652 26) (%closure-ref self$652 27) (%closure-ref self$652 28) (%closure-ref self$652 29) (%closure-ref self$652 30) (%closure-ref self$652 31) (%closure-ref self$652 32) (%closure-ref self$652 33) (%closure-ref self$652 34) (%closure-ref self$652 35) (%closure-ref self$652 36) (%closure-ref self$652 37) (%closure-ref self$652 38) untranslate-term$152) (cell (%closure-ref self$652 16)))) (%closure-ref self$651 1) (%closure-ref self$651 2) (%closure-ref self$651 3) (%closure-ref self$651 4) (%closure-ref self$651 5) (%closure-ref self$651 6) (%closure-ref self$651 7) (%closure-ref self$651 8) (%closure-ref self$651 9) (%closure-ref self$651 10) (%closure-ref self$651 11) (%closure-ref self$651 12) (%closure-ref self$651 13) (%closure-ref self$651 14) (%closure-ref self$651 15) (%closure-ref self$651 16) (%closure-ref self$651 17) (%closure-ref self$651 18) (%closure-ref self$651 19) (%closure-ref self$651 20) (%closure-ref self$651 21) (%closure-ref self$651 22) (%closure-ref self$651 23) (%closure-ref self$651 24) (%closure-ref self$651 25) (%closure-ref self$651 26) (%closure-ref self$651 27) (%closure-ref self$651 28) (%closure-ref self$651 29) (%closure-ref self$651 30) (%closure-ref self$651 31) (%closure-ref self$651 32) (%closure-ref self$651 33) translate-args$153 (%closure-ref self$651 34) (%closure-ref self$651 35) (%closure-ref self$651 36) (%closure-ref self$651 37)) (cell (%closure-ref self$651 38)))) (%closure-ref self$650 1) (%closure-ref self$650 2) (%closure-ref self$650 3) (%closure-ref self$650 4) (%closure-ref self$650 5) (%closure-ref self$650 6) (%closure-ref self$650 7) (%closure-ref self$650 8) (%closure-ref self$650 9) (%closure-ref self$650 10) (%closure-ref self$650 11) (%closure-ref self$650 12) (%closure-ref self$650 13) (%closure-ref self$650 14) (%closure-ref self$650 15) (%closure-ref self$650 16) (%closure-ref self$650 17) (%closure-ref self$650 18) (%closure-ref self$650 19) (%closure-ref self$650 20) (%closure-ref self$650 21) (%closure-ref self$650 22) (%closure-ref self$650 23) (%closure-ref self$650 24) (%closure-ref self$650 25) (%closure-ref self$650 26) (%closure-ref self$650 27) (%closure-ref self$650 28) (%closure-ref self$650 29) (%closure-ref self$650 30) (%closure-ref self$650 31) (%closure-ref self$650 32) (%closure-ref self$650 33) translate-term$154 (%closure-ref self$650 35) (%closure-ref self$650 36) (%closure-ref self$650 37) (%closure-ref self$650 38)) (cell (%closure-ref self$650 34)))) (%closure-ref self$649 1) add-lemma$155 (%closure-ref self$649 2) (%closure-ref self$649 3) (%closure-ref self$649 4) (%closure-ref self$649 5) (%closure-ref self$649 6) (%closure-ref self$649 7) (%closure-ref self$649 8) (%closure-ref self$649 9) (%closure-ref self$649 10) (%closure-ref self$649 11) (%closure-ref self$649 12) (%closure-ref self$649 13) (%closure-ref self$649 14) (%closure-ref self$649 15) (%closure-ref self$649 16) (%closure-ref self$649 17) (%closure-ref self$649 18) (%closure-ref self$649 19) (%closure-ref self$649 20) (%closure-ref self$649 21) (%closure-ref self$649 22) (%closure-ref self$649 23) (%closure-ref self$649 24) (%closure-ref self$649 25) (%closure-ref self$649 26) (%closure-ref self$649 27) (%closure-ref self$649 28) (%closure-ref self$649 29) (%closure-ref self$649 30) (%closure-ref self$649 31) (%closure-ref self$649 32) (%closure-ref self$649 33) (%closure-ref self$649 35) (%closure-ref self$649 36) (%closure-ref self$649 37) (%closure-ref self$649 38)) (cell (%closure-ref self$649 34)))) (%closure-ref self$648 1) add-lemma-lst$156 (%closure-ref self$648 3) (%closure-ref self$648 4) (%closure-ref self$648 5) (%closure-ref self$648 6) (%closure-ref self$648 7) (%closure-ref self$648 8) (%closure-ref self$648 9) (%closure-ref self$648 10) (%closure-ref self$648 11) (%closure-ref self$648 12) (%closure-ref self$648 13) (%closure-ref self$648 14) (%closure-ref self$648 15) (%closure-ref self$648 16) (%closure-ref self$648 17) (%closure-ref self$648 18) (%closure-ref self$648 19) (%closure-ref self$648 20) (%closure-ref self$648 21) (%closure-ref self$648 22) (%closure-ref self$648 23) (%closure-ref self$648 24) (%closure-ref self$648 25) (%closure-ref self$648 26) (%closure-ref self$648 27) (%closure-ref self$648 28) (%closure-ref self$648 29) (%closure-ref self$648 30) (%closure-ref self$648 31) (%closure-ref self$648 32) (%closure-ref self$648 33) (%closure-ref self$648 34) (%closure-ref self$648 35) (%closure-ref self$648 36) (%closure-ref self$648 37) (%closure-ref self$648 38)) (cell (%closure-ref self$648 2)))) (%closure-ref self$647 1) (%closure-ref self$647 2) (%closure-ref self$647 4) (%closure-ref self$647 5) (%closure-ref self$647 6) (%closure-ref self$647 7) (%closure-ref self$647 8) (%closure-ref self$647 9) (%closure-ref self$647 10) (%closure-ref self$647 11) (%closure-ref self$647 12) (%closure-ref self$647 13) (%closure-ref self$647 14) (%closure-ref self$647 15) (%closure-ref self$647 16) (%closure-ref self$647 17) (%closure-ref self$647 18) (%closure-ref self$647 19) (%closure-ref self$647 20) (%closure-ref self$647 21) setup$157 (%closure-ref self$647 22) (%closure-ref self$647 23) (%closure-ref self$647 24) (%closure-ref self$647 25) (%closure-ref self$647 26) (%closure-ref self$647 27) (%closure-ref self$647 28) (%closure-ref self$647 29) (%closure-ref self$647 30) (%closure-ref self$647 31) (%closure-ref self$647 32) (%closure-ref self$647 33) (%closure-ref self$647 34) (%closure-ref self$647 35) (%closure-ref self$647 36) (%closure-ref self$647 37) (%closure-ref self$647 38)) (cell (%closure-ref self$647 3)))) *symbol-records-alist*$148 add-lemma$155 add-lemma-lst$156 apply-subst$140 apply-subst-lst$139 false-term$125 falsep$127 get$150 get-lemmas$145 get-name$144 if-constructor$136 make-symbol-record$147 one-way-unify$130 one-way-unify1$129 one-way-unify1-lst$128 put$151 put-lemmas!$146 rewrite$134 rewrite-args$133 rewrite-count$135 rewrite-with-lemmas$132 symbol->symbol-record$149 symbol-record-equal?$143 tautologyp$137 tautp$138 term-args-equal?$120 term-equal?$121 term-member?$119 test$142 trans-of-implies$123 trans-of-implies1$122 translate-alist$141 translate-args$153 translate-term$154 true-term$124 truep$126 unify-subst$131 untranslate-term$152) (cell setup$157))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)))) (set-global! term r$564))) (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w))))) (set-global! alist r$565))) (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b))))))) 0)))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)) */ -/* -"---------------- C code:" */ -#define closcall0(td,clo) ((clo)->fn)(td,0,clo) -#define return_closcall0(td, clo) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[0]; \ - GC(td,clo,buf,0); return; \ - } else {closcall0(td,(closure) (clo)); return;}} - -#define return_direct0(td, _fn) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[0]; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 0); return; \ - } else { (_fn)(td,0,(closure)_fn); }} - -#define closcall1(td,clo,a1) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,0, (closure)(a1), clo); } else { ((clo)->fn)(td,1,clo,a1);} -#define return_closcall1(td, clo,a1) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[1]; buf[0] = a1;\ - GC(td,clo,buf,1); return; \ - } else {closcall1(td,(closure) (clo),a1); return;}} - -#define return_direct1(td, _fn,a1) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[1]; buf[0] = a1; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 1); return; \ - } else { (_fn)(td,1,(closure)_fn,a1); }} - -#define closcall2(td,clo,a1,a2) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,1, (closure)(a1), clo,a2); } else { ((clo)->fn)(td,2,clo,a1,a2);} -#define return_closcall2(td, clo,a1,a2) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[2]; buf[0] = a1;buf[1] = a2;\ - GC(td,clo,buf,2); return; \ - } else {closcall2(td,(closure) (clo),a1,a2); return;}} - -#define return_direct2(td, _fn,a1,a2) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[2]; buf[0] = a1;buf[1] = a2; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 2); return; \ - } else { (_fn)(td,2,(closure)_fn,a1,a2); }} - -#define closcall3(td,clo,a1,a2,a3) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,2, (closure)(a1), clo,a2,a3); } else { ((clo)->fn)(td,3,clo,a1,a2,a3);} -#define return_closcall3(td, clo,a1,a2,a3) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[3]; buf[0] = a1;buf[1] = a2;buf[2] = a3;\ - GC(td,clo,buf,3); return; \ - } else {closcall3(td,(closure) (clo),a1,a2,a3); return;}} - -#define return_direct3(td, _fn,a1,a2,a3) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[3]; buf[0] = a1;buf[1] = a2;buf[2] = a3; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 3); return; \ - } else { (_fn)(td,3,(closure)_fn,a1,a2,a3); }} - -#define closcall4(td,clo,a1,a2,a3,a4) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,3, (closure)(a1), clo,a2,a3,a4); } else { ((clo)->fn)(td,4,clo,a1,a2,a3,a4);} -#define return_closcall4(td, clo,a1,a2,a3,a4) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[4]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;\ - GC(td,clo,buf,4); return; \ - } else {closcall4(td,(closure) (clo),a1,a2,a3,a4); return;}} - -#define return_direct4(td, _fn,a1,a2,a3,a4) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[4]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 4); return; \ - } else { (_fn)(td,4,(closure)_fn,a1,a2,a3,a4); }} - -#define closcall5(td,clo,a1,a2,a3,a4,a5) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,4, (closure)(a1), clo,a2,a3,a4,a5); } else { ((clo)->fn)(td,5,clo,a1,a2,a3,a4,a5);} -#define return_closcall5(td, clo,a1,a2,a3,a4,a5) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[5]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;buf[4] = a5;\ - GC(td,clo,buf,5); return; \ - } else {closcall5(td,(closure) (clo),a1,a2,a3,a4,a5); return;}} - -#define return_direct5(td, _fn,a1,a2,a3,a4,a5) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[5]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;buf[4] = a5; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 5); return; \ - } else { (_fn)(td,5,(closure)_fn,a1,a2,a3,a4,a5); }} - -#define closcall39(td,clo,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,38, (closure)(a1), clo,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39); } else { ((clo)->fn)(td,39,clo,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39);} -#define return_closcall39(td, clo,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[39]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;buf[4] = a5;buf[5] = a6;buf[6] = a7;buf[7] = a8;buf[8] = a9;buf[9] = a10;buf[10] = a11;buf[11] = a12;buf[12] = a13;buf[13] = a14;buf[14] = a15;buf[15] = a16;buf[16] = a17;buf[17] = a18;buf[18] = a19;buf[19] = a20;buf[20] = a21;buf[21] = a22;buf[22] = a23;buf[23] = a24;buf[24] = a25;buf[25] = a26;buf[26] = a27;buf[27] = a28;buf[28] = a29;buf[29] = a30;buf[30] = a31;buf[31] = a32;buf[32] = a33;buf[33] = a34;buf[34] = a35;buf[35] = a36;buf[36] = a37;buf[37] = a38;buf[38] = a39;\ - GC(td,clo,buf,39); return; \ - } else {closcall39(td,(closure) (clo),a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39); return;}} - -#define return_direct39(td, _fn,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[39]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;buf[4] = a5;buf[5] = a6;buf[6] = a7;buf[7] = a8;buf[8] = a9;buf[9] = a10;buf[10] = a11;buf[11] = a12;buf[12] = a13;buf[13] = a14;buf[14] = a15;buf[15] = a16;buf[16] = a17;buf[17] = a18;buf[18] = a19;buf[19] = a20;buf[20] = a21;buf[21] = a22;buf[22] = a23;buf[23] = a24;buf[24] = a25;buf[25] = a26;buf[26] = a27;buf[27] = a28;buf[28] = a29;buf[29] = a30;buf[30] = a31;buf[31] = a32;buf[32] = a33;buf[33] = a34;buf[34] = a35;buf[35] = a36;buf[36] = a37;buf[37] = a38;buf[38] = a39; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 39); return; \ - } else { (_fn)(td,39,(closure)_fn,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39); }} - -#include "cyclone/types.h" -object __glo_run_91r7rs_91benchmark = nil; -object __glo_hide = nil; -object __glo_test_91boyer = nil; -object __glo_setup_91boyer = nil; -object __glo_term = nil; -object __glo_alist = nil; -object __glo_main = nil; -extern object __glo_cons_91source_scheme_base; -extern object __glo_syntax_91rules_scheme_base; -extern object __glo_letrec_85_scheme_base; -extern object __glo_guard_scheme_base; -extern object __glo_guard_91aux_scheme_base; -extern object __glo_receive_scheme_base; -extern object __glo_abs_scheme_base; -extern object __glo_max_scheme_base; -extern object __glo_min_scheme_base; -extern object __glo_modulo_scheme_base; -extern object __glo_floor_91remainder_scheme_base; -extern object __glo_even_127_scheme_base; -extern object __glo_exact_91integer_127_scheme_base; -extern object __glo_exact_127_scheme_base; -extern object __glo_inexact_127_scheme_base; -extern object __glo_odd_127_scheme_base; -extern object __glo_complex_127_scheme_base; -extern object __glo_rational_127_scheme_base; -extern object __glo_gcd_scheme_base; -extern object __glo_lcm_scheme_base; -extern object __glo_quotient_scheme_base; -extern object __glo_remainder_scheme_base; -extern object __glo_truncate_91quotient_scheme_base; -extern object __glo_truncate_91remainder_scheme_base; -extern object __glo_truncate_95_scheme_base; -extern object __glo_floor_91quotient_scheme_base; -extern object __glo_floor_91remainder_scheme_base; -extern object __glo_floor_95_scheme_base; -extern object __glo_square_scheme_base; -extern object __glo_expt_scheme_base; -extern object __glo_call_91with_91current_91continuation_scheme_base; -extern object __glo_call_95cc_scheme_base; -extern object __glo_call_91with_91values_scheme_base; -extern object __glo_dynamic_91wind_scheme_base; -extern object __glo_values_scheme_base; -extern object __glo_char_123_127_scheme_base; -extern object __glo_char_121_127_scheme_base; -extern object __glo_char_125_127_scheme_base; -extern object __glo_char_121_123_127_scheme_base; -extern object __glo_char_125_123_127_scheme_base; -extern object __glo_string_123_127_scheme_base; -extern object __glo_string_121_127_scheme_base; -extern object __glo_string_121_123_127_scheme_base; -extern object __glo_string_125_127_scheme_base; -extern object __glo_string_125_123_127_scheme_base; -extern object __glo_foldl_scheme_base; -extern object __glo_foldr_scheme_base; -extern object __glo_not_scheme_base; -extern object __glo_list_127_scheme_base; -extern object __glo_zero_127_scheme_base; -extern object __glo_positive_127_scheme_base; -extern object __glo_negative_127_scheme_base; -extern object __glo_append_scheme_base; -extern object __glo__list_scheme_base; -extern object __glo_make_91list_scheme_base; -extern object __glo_list_91copy_scheme_base; -extern object __glo_map_scheme_base; -extern object __glo_for_91each_scheme_base; -extern object __glo_list_91tail_scheme_base; -extern object __glo_list_91ref_scheme_base; -extern object __glo_list_91set_67_scheme_base; -extern object __glo_reverse_scheme_base; -extern object __glo_boolean_123_127_scheme_base; -extern object __glo_symbol_123_127_scheme_base; -extern object __glo_Cyc_91obj_123_127_scheme_base; -extern object __glo_vector_scheme_base; -extern object __glo_vector_91append_scheme_base; -extern object __glo_vector_91copy_scheme_base; -extern object __glo_vector_91copy_67_scheme_base; -extern object __glo_vector_91fill_67_scheme_base; -extern object __glo_vector_91_125list_scheme_base; -extern object __glo_vector_91_125string_scheme_base; -extern object __glo_vector_91map_scheme_base; -extern object __glo_vector_91for_91each_scheme_base; -extern object __glo_make_91string_scheme_base; -extern object __glo_string_scheme_base; -extern object __glo_string_91copy_scheme_base; -extern object __glo_string_91copy_67_scheme_base; -extern object __glo_string_91fill_67_scheme_base; -extern object __glo_string_91_125list_scheme_base; -extern object __glo_string_91_125vector_scheme_base; -extern object __glo_string_91map_scheme_base; -extern object __glo_string_91for_91each_scheme_base; -extern object __glo_make_91parameter_scheme_base; -extern object __glo_current_91output_91port_scheme_base; -extern object __glo_current_91input_91port_scheme_base; -extern object __glo_current_91error_91port_scheme_base; -extern object __glo_call_91with_91port_scheme_base; -extern object __glo_error_scheme_base; -extern object __glo_raise_scheme_base; -extern object __glo_raise_91continuable_scheme_base; -extern object __glo_with_91exception_91handler_scheme_base; -extern object __glo_Cyc_91add_91exception_91handler_scheme_base; -extern object __glo_Cyc_91remove_91exception_91handler_scheme_base; -extern object __glo_newline_scheme_base; -extern object __glo_write_91char_scheme_base; -extern object __glo_write_91string_scheme_base; -extern object __glo_flush_91output_91port_scheme_base; -extern object __glo_read_91line_scheme_base; -extern object __glo_read_91string_scheme_base; -extern object __glo_input_91port_127_scheme_base; -extern object __glo_output_91port_127_scheme_base; -extern object __glo_input_91port_91open_127_scheme_base; -extern object __glo_output_91port_91open_127_scheme_base; -extern object __glo_features_scheme_base; -extern object __glo_any_scheme_base; -extern object __glo_every_scheme_base; -extern object __glo_and_scheme_base; -extern object __glo_or_scheme_base; -extern object __glo_let_scheme_base; -extern object __glo_let_85_scheme_base; -extern object __glo_letrec_scheme_base; -extern object __glo_begin_scheme_base; -extern object __glo__case_scheme_base; -extern object __glo_cond_scheme_base; -extern object __glo_cond_91expand_scheme_base; -extern object __glo__do_scheme_base; -extern object __glo_when_scheme_base; -extern object __glo_unless_scheme_base; -extern object __glo_quasiquote_scheme_base; -extern object __glo_floor_scheme_base; -extern object __glo_ceiling_scheme_base; -extern object __glo_truncate_scheme_base; -extern object __glo_round_scheme_base; -extern object __glo_exact_scheme_base; -extern object __glo_inexact_scheme_base; -extern object __glo_eof_91object_scheme_base; -extern object __glo_syntax_91error_scheme_base; -extern object __glo_bytevector_91copy_scheme_base; -extern object __glo_utf8_91_125string_scheme_base; -extern object __glo_string_91_125utf8_scheme_base; -extern object __glo_denominator_scheme_base; -extern object __glo_numerator_scheme_base; -extern object __glo_caaaaar_scheme_cxr; -extern object __glo_read_scheme_read; -extern object __glo_read_91all_scheme_read; -extern object __glo_display_scheme_write; -extern object __glo_write_scheme_write; -extern object __glo_current_91second_scheme_time; -extern object __glo_current_91jiffy_scheme_time; -extern object __glo_jiffies_91per_91second_scheme_time; -#include "cyclone/runtime.h" -#include "cyclone/runtime-main.h" -defsymbol(u); -defsymbol(mem); -defsymbol(val); -defsymbol(set); -defsymbol(get); -defsymbol(cdr); -defsymbol(assignedp); -defsymbol(assignment); -defsymbol(car); -defsymbol(last); -defsymbol(sigma); -defsymbol(x7); -defsymbol(x6); -defsymbol(x5); -defsymbol(x4); -defsymbol(x3); -defsymbol(x2); -defsymbol(x1); -defsymbol(dsort); -defsymbol(sort2); -defsymbol(delete); -defsymbol(prime_91list); -defsymbol(times_91list); -defsymbol(greatest_91factor); -defsymbol(samefringe); -defsymbol(gopher); -defsymbol(listp); -defsymbol(nlistp); -defsymbol(value); -defsymbol(w); -defsymbol(gcd); -defsymbol(power_91rep); -defsymbol(big_91plus); -defsymbol(base); -defsymbol(big_91plus1); -defsymbol(power_91eval); -defsymbol(quotient); -defsymbol(sort_91lp); -defsymbol(count_91list); -defsymbol(k); -defsymbol(j); -defsymbol(exp); -defsymbol(nth); -defsymbol(intersect); -defsymbol(length); -defsymbol(member); -defsymbol(flatten); -defsymbol(mc_91flatten); -defsymbol(envrn); -defsymbol(pds); -defsymbol(exec); -defsymbol(times); -defsymbol(plus_91fringe); -defsymbol(append); -defsymbol(plus_91tree); -defsymbol(meaning); -defsymbol(difference); -defsymbol(z); -defsymbol(plus); -defsymbol(e); -defsymbol(d); -defsymbol(c); -defsymbol(b); -defsymbol(a); -defsymbol(numberp); -defsymbol(q); -defsymbol(p); -defsymbol(prime1); -defsymbol(add1); -defsymbol(prime); -defsymbol(falsify1); -defsymbol(falsify); -defsymbol(normalize); -defsymbol(tautologyp); -defsymbol(tautology_91checker); -defsymbol(assume_91false); -defsymbol(cons); -defsymbol(alist); -defsymbol(var); -defsymbol(assume_91true); -defsymbol(remainder); -defsymbol(divides); -defsymbol(reverse_91loop); -defsymbol(reverse_91); -defsymbol(fact_91loop); -defsymbol(i); -defsymbol(fact_91); -defsymbol(zero); -defsymbol(countps_91loop); -defsymbol(pred); -defsymbol(l); -defsymbol(countps_91); -defsymbol(_1911_91); -defsymbol(odd); -defsymbol(zerop); -defsymbol(even1); -defsymbol(iff); -defsymbol(boolean); -defsymbol(greatereqp); -defsymbol(not); -defsymbol(lesseqp); -defsymbol(lessp); -defsymbol(greaterp); -defsymbol(fix); -defsymbol(y); -defsymbol(x); -defsymbol(eqp); -defsymbol(nil); -defsymbol(optimize); -defsymbol(codegen); -defsymbol(reverse); -defsymbol(form); -defsymbol(compile); -defsymbol(lemmas); -defsymbol(equal); -defsymbol(or); -defsymbol(_85); -defsymbol(and); -defsymbol(implies); -defsymbol(_if); -defsymbol(f); -defsymbol(t); -static void __lambda_483(void *data, int argc, closure _,object _85symbol_91records_91alist_85_73118, object add_91lemma_73117, object add_91lemma_91lst_73116, object apply_91subst_73115, object apply_91subst_91lst_73114, object false_91term_73113, object falsep_73112, object get_73111, object get_91lemmas_73110, object get_91name_73109, object if_91constructor_73108, object make_91symbol_91record_73107, object one_91way_91unify_73106, object one_91way_91unify1_73105, object one_91way_91unify1_91lst_73104, object put_73103, object put_91lemmas_67_73102, object rewrite_73101, object rewrite_91args_73100, object rewrite_91count_7399, object rewrite_91with_91lemmas_7398, object setup_7397, object symbol_91_125symbol_91record_7396, object symbol_91record_91equal_127_7395, object tautologyp_7394, object tautp_7393, object term_91args_91equal_127_7392, object term_91equal_127_7391, object term_91member_127_7390, object test_7389, object trans_91of_91implies_7388, object trans_91of_91implies1_7387, object translate_91alist_7386, object translate_91args_7385, object translate_91term_7384, object true_91term_7383, object truep_7382, object unify_91subst_7381, object untranslate_91term_7380) ; -static void __lambda_482(void *data, int argc, closure _) ; -static void __lambda_481(void *data, int argc, closure _,object r_73261) ; -static void __lambda_480(void *data, int argc, closure _,object r_73565) ; -static void __lambda_479(void *data, int argc, closure _,object r_73262) ; -static void __lambda_478(void *data, int argc, closure _,object r_73564) ; -static void __lambda_477(void *data, int argc, closure _,object r_73263) ; -static void __lambda_476(void *data, int argc, closure _) ; -static void __lambda_475(void *data, int argc, closure _,object setup_73157, object add_91lemma_91lst_73156, object add_91lemma_73155, object translate_91term_73154, object translate_91args_73153, object untranslate_91term_73152, object put_73151, object get_73150, object symbol_91_125symbol_91record_73149, object _85symbol_91records_91alist_85_73148, object make_91symbol_91record_73147, object put_91lemmas_67_73146, object get_91lemmas_73145, object get_91name_73144, object symbol_91record_91equal_127_73143, object test_73142, object translate_91alist_73141, object apply_91subst_73140, object apply_91subst_91lst_73139, object tautp_73138, object tautologyp_73137, object if_91constructor_73136, object rewrite_91count_73135, object rewrite_73134, object rewrite_91args_73133, object rewrite_91with_91lemmas_73132, object unify_91subst_73131, object one_91way_91unify_73130, object one_91way_91unify1_73129, object one_91way_91unify1_91lst_73128, object falsep_73127, object truep_73126, object false_91term_73125, object true_91term_73124, object trans_91of_91implies_73123, object trans_91of_91implies1_73122, object term_91equal_127_73121, object term_91args_91equal_127_73120, object term_91member_127_73119) ; -static void __lambda_474(void *data, int argc, object self_73647, object setup_73157) ; -static void __lambda_473(void *data, int argc, object self_73648, object add_91lemma_91lst_73156) ; -static void __lambda_472(void *data, int argc, object self_73649, object add_91lemma_73155) ; -static void __lambda_471(void *data, int argc, object self_73650, object translate_91term_73154) ; -static void __lambda_470(void *data, int argc, object self_73651, object translate_91args_73153) ; -static void __lambda_469(void *data, int argc, object self_73652, object untranslate_91term_73152) ; -static void __lambda_468(void *data, int argc, object self_73653, object put_73151) ; -static void __lambda_467(void *data, int argc, object self_73654, object get_73150) ; -static void __lambda_466(void *data, int argc, object self_73655, object symbol_91_125symbol_91record_73149) ; -static void __lambda_465(void *data, int argc, object self_73656, object _85symbol_91records_91alist_85_73148) ; -static void __lambda_464(void *data, int argc, object self_73657, object make_91symbol_91record_73147) ; -static void __lambda_463(void *data, int argc, object self_73658, object put_91lemmas_67_73146) ; -static void __lambda_462(void *data, int argc, object self_73659, object get_91lemmas_73145) ; -static void __lambda_461(void *data, int argc, object self_73660, object get_91name_73144) ; -static void __lambda_460(void *data, int argc, object self_73661, object symbol_91record_91equal_127_73143) ; -static void __lambda_459(void *data, int argc, object self_73662, object test_73142) ; -static void __lambda_458(void *data, int argc, object self_73663, object translate_91alist_73141) ; -static void __lambda_457(void *data, int argc, object self_73664, object apply_91subst_73140) ; -static void __lambda_456(void *data, int argc, object self_73665, object apply_91subst_91lst_73139) ; -static void __lambda_455(void *data, int argc, object self_73666, object tautp_73138) ; -static void __lambda_454(void *data, int argc, object self_73667, object tautologyp_73137) ; -static void __lambda_453(void *data, int argc, object self_73668, object if_91constructor_73136) ; -static void __lambda_452(void *data, int argc, object self_73669, object rewrite_91count_73135) ; -static void __lambda_451(void *data, int argc, object self_73670, object rewrite_73134) ; -static void __lambda_450(void *data, int argc, object self_73671, object rewrite_91args_73133) ; -static void __lambda_449(void *data, int argc, object self_73672, object rewrite_91with_91lemmas_73132) ; -static void __lambda_448(void *data, int argc, object self_73673, object unify_91subst_73131) ; -static void __lambda_447(void *data, int argc, object self_73674, object one_91way_91unify_73130) ; -static void __lambda_446(void *data, int argc, object self_73675, object one_91way_91unify1_73129) ; -static void __lambda_445(void *data, int argc, object self_73676, object one_91way_91unify1_91lst_73128) ; -static void __lambda_444(void *data, int argc, object self_73677, object falsep_73127) ; -static void __lambda_443(void *data, int argc, object self_73678, object truep_73126) ; -static void __lambda_442(void *data, int argc, object self_73679, object false_91term_73125) ; -static void __lambda_441(void *data, int argc, object self_73680, object true_91term_73124) ; -static void __lambda_440(void *data, int argc, object self_73681, object trans_91of_91implies_73123) ; -static void __lambda_439(void *data, int argc, object self_73682, object trans_91of_91implies1_73122) ; -static void __lambda_438(void *data, int argc, object self_73683, object term_91equal_127_73121) ; -static void __lambda_437(void *data, int argc, object self_73684, object term_91args_91equal_127_73120) ; -static void __lambda_436(void *data, int argc, object self_73685, object term_91member_127_73119) ; -static void __lambda_435(void *data, int argc, object self_73686, object k_73562) ; -static void __lambda_434(void *data, int argc, object self_73687, object r_73563) ; -static void __lambda_433(void *data, int argc, object self_73688, object r_73561) ; -static void __lambda_432(void *data, int argc, object self_73689, object r_73265) ; -static void __lambda_431(void *data, int argc, object self_73690, object k_73556, object lst_73225) ; -static void __lambda_430(void *data, int argc, object self_73691, object r_73557) ; -static void __lambda_429(void *data, int argc, object self_73692) ; -static void __lambda_428(void *data, int argc, object self_73693, object r_73560) ; -static void __lambda_427(void *data, int argc, object self_73694, object r_73558) ; -static void __lambda_426(void *data, int argc, object self_73695, object r_73559) ; -static void __lambda_425(void *data, int argc, object self_73696) ; -static void __lambda_424(void *data, int argc, object self_73697, object r_73555) ; -static void __lambda_423(void *data, int argc, object self_73698, object r_73266) ; -static void __lambda_422(void *data, int argc, object self_73699, object k_73538, object term_73224) ; -static void __lambda_421(void *data, int argc, object self_73700, object r_73539) ; -static void __lambda_420(void *data, int argc, object self_73701) ; -static void __lambda_419(void *data, int argc, object self_73702) ; -static void __lambda_418(void *data, int argc, object self_73703, object r_73548) ; -static void __lambda_417(void *data, int argc, object self_73704, object r_73540) ; -static void __lambda_416(void *data, int argc, object self_73705, object r_73541) ; -static void __lambda_415(void *data, int argc, object self_73706, object r_73543) ; -static void __lambda_414(void *data, int argc, object self_73707, object r_73547) ; -static void __lambda_413(void *data, int argc, object self_73708, object r_73545) ; -static void __lambda_412(void *data, int argc, object self_73709, object r_73546) ; -static void __lambda_411(void *data, int argc, object self_73710, object r_73544) ; -static void __lambda_410(void *data, int argc, object self_73711, object r_73542) ; -static void __lambda_409(void *data, int argc, object self_73712, object k_73549) ; -static void __lambda_408(void *data, int argc, object self_73713, object r_73550) ; -static void __lambda_407(void *data, int argc, object self_73714, object r_73553) ; -static void __lambda_406(void *data, int argc, object self_73715, object r_73554) ; -static void __lambda_405(void *data, int argc, object self_73716, object r_73551) ; -static void __lambda_404(void *data, int argc, object self_73717, object r_73552) ; -static void __lambda_403(void *data, int argc, object self_73718, object r_73537) ; -static void __lambda_402(void *data, int argc, object self_73719, object r_73267) ; -static void __lambda_401(void *data, int argc, object self_73720, object k_73531, object term_73223) ; -static void __lambda_400(void *data, int argc, object self_73721, object r_73532) ; -static void __lambda_399(void *data, int argc, object self_73722) ; -static void __lambda_398(void *data, int argc, object self_73723) ; -static void __lambda_397(void *data, int argc, object self_73724, object r_73536) ; -static void __lambda_396(void *data, int argc, object self_73725, object r_73533) ; -static void __lambda_395(void *data, int argc, object self_73726, object r_73535) ; -static void __lambda_394(void *data, int argc, object self_73727, object r_73534) ; -static void __lambda_393(void *data, int argc, object self_73728, object r_73530) ; -static void __lambda_392(void *data, int argc, object self_73729, object r_73268) ; -static void __lambda_391(void *data, int argc, object self_73730, object k_73524, object lst_73222) ; -static void __lambda_390(void *data, int argc, object self_73731, object r_73525) ; -static void __lambda_389(void *data, int argc, object self_73732) ; -static void __lambda_388(void *data, int argc, object self_73733, object r_73529) ; -static void __lambda_387(void *data, int argc, object self_73734, object r_73526) ; -static void __lambda_386(void *data, int argc, object self_73735, object r_73528) ; -static void __lambda_385(void *data, int argc, object self_73736, object r_73527) ; -static void __lambda_384(void *data, int argc, object self_73737) ; -static void __lambda_383(void *data, int argc, object self_73738, object r_73523) ; -static void __lambda_382(void *data, int argc, object self_73739, object r_73269) ; -static void __lambda_381(void *data, int argc, object self_73740, object k_73517, object term_73221) ; -static void __lambda_380(void *data, int argc, object self_73741, object r_73518) ; -static void __lambda_379(void *data, int argc, object self_73742) ; -static void __lambda_378(void *data, int argc, object self_73743) ; -static void __lambda_377(void *data, int argc, object self_73744, object r_73522) ; -static void __lambda_376(void *data, int argc, object self_73745, object r_73519) ; -static void __lambda_375(void *data, int argc, object self_73746, object r_73521) ; -static void __lambda_374(void *data, int argc, object self_73747, object r_73520) ; -static void __lambda_373(void *data, int argc, object self_73748, object r_73516) ; -static void __lambda_372(void *data, int argc, object self_73749, object r_73270) ; -static void __lambda_371(void *data, int argc, object self_73750, object k_73514, object sym_73220, object property_73219, object value_73218) ; -static void __lambda_370(void *data, int argc, object self_73751, object r_73515) ; -static void __lambda_369(void *data, int argc, object self_73752, object r_73513) ; -static void __lambda_368(void *data, int argc, object self_73753, object r_73271) ; -static void __lambda_367(void *data, int argc, object self_73754, object k_73511, object sym_73217, object property_73216) ; -static void __lambda_366(void *data, int argc, object self_73755, object r_73512) ; -static void __lambda_365(void *data, int argc, object self_73756, object r_73510) ; -static void __lambda_364(void *data, int argc, object self_73757, object r_73272) ; -static void __lambda_363(void *data, int argc, object self_73758, object k_73504, object sym_73213) ; -static void __lambda_362(void *data, int argc, object self_73759, object x_73214) ; -static void __lambda_361(void *data, int argc, object self_73760, object r_73215) ; -static void __lambda_360(void *data, int argc, object self_73761, object r_73509) ; -static void __lambda_359(void *data, int argc, object self_73762, object r_73508) ; -static void __lambda_358(void *data, int argc, object self_73763, object r_73507) ; -static void __lambda_357(void *data, int argc, object self_73764, object r_73503) ; -static void __lambda_356(void *data, int argc, object self_73765, object r_73273) ; -static void __lambda_355(void *data, int argc, object self_73766, object r_73502) ; -static void __lambda_354(void *data, int argc, object self_73767, object r_73274) ; -static void __lambda_353(void *data, int argc, object self_73768, object k_73500, object sym_73212) ; -static void __lambda_352(void *data, int argc, object self_73769, object r_73501) ; -static void __lambda_351(void *data, int argc, object self_73770, object r_73499) ; -static void __lambda_350(void *data, int argc, object self_73771, object r_73275) ; -static void __lambda_349(void *data, int argc, object self_73772, object k_73498, object symbol_91record_73211, object lemmas_73210) ; -static void __lambda_348(void *data, int argc, object self_73773, object r_73497) ; -static void __lambda_347(void *data, int argc, object self_73774, object r_73276) ; -static void __lambda_346(void *data, int argc, object self_73775, object k_73496, object symbol_91record_73209) ; -static void __lambda_345(void *data, int argc, object self_73776, object r_73495) ; -static void __lambda_344(void *data, int argc, object self_73777, object r_73277) ; -static void __lambda_343(void *data, int argc, object self_73778, object k_73494, object symbol_91record_73208) ; -static void __lambda_342(void *data, int argc, object self_73779, object r_73493) ; -static void __lambda_341(void *data, int argc, object self_73780, object r_73278) ; -static void __lambda_340(void *data, int argc, object self_73781, object k_73492, object r1_73207, object r2_73206) ; -static void __lambda_339(void *data, int argc, object self_73782, object r_73491) ; -static void __lambda_338(void *data, int argc, object self_73783, object r_73279) ; -static void __lambda_337(void *data, int argc, object self_73784, object k_73478, object alist_73199, object term_73198, object n_73197) ; -static void __lambda_336(void *data, int argc, object self_73785, object r_73480) ; -static void __lambda_335(void *data, int argc, object self_73786, object term_73201, object n_73200) ; -static void __lambda_334(void *data, int argc, object self_73787, object lp_73202) ; -static void __lambda_333(void *data, int argc, object self_73788, object lp_73202) ; -static void __lambda_332(void *data, int argc, object self_73789, object k_73485, object term_73204, object n_73203) ; -static void __lambda_331(void *data, int argc, object self_73790, object r_73486) ; -static void __lambda_330(void *data, int argc, object self_73791, object r_73489) ; -static void __lambda_329(void *data, int argc, object self_73792, object r_73490) ; -static void __lambda_328(void *data, int argc, object self_73793, object r_73487) ; -static void __lambda_327(void *data, int argc, object self_73794, object r_73488) ; -static void __lambda_326(void *data, int argc, object self_73795, object r_73484) ; -static void __lambda_325(void *data, int argc, object self_73796, object r_73483) ; -static void __lambda_324(void *data, int argc, object self_73797, object r_73482) ; -static void __lambda_323(void *data, int argc, object self_73798, object r_73481) ; -static void __lambda_322(void *data, int argc, object self_73799, object term_73205) ; -static void __lambda_321(void *data, int argc, object self_73800, object r_73477) ; -static void __lambda_320(void *data, int argc, object self_73801, object r_73280) ; -static void __lambda_319(void *data, int argc, object self_73802, object k_73469, object alist_73196) ; -static void __lambda_318(void *data, int argc, object self_73803, object r_73470) ; -static void __lambda_317(void *data, int argc, object self_73804) ; -static void __lambda_316(void *data, int argc, object self_73805, object r_73474) ; -static void __lambda_315(void *data, int argc, object self_73806, object r_73476) ; -static void __lambda_314(void *data, int argc, object self_73807, object r_73475) ; -static void __lambda_313(void *data, int argc, object self_73808, object r_73471) ; -static void __lambda_312(void *data, int argc, object self_73809, object r_73473) ; -static void __lambda_311(void *data, int argc, object self_73810, object r_73472) ; -static void __lambda_310(void *data, int argc, object self_73811) ; -static void __lambda_309(void *data, int argc, object self_73812, object r_73468) ; -static void __lambda_308(void *data, int argc, object self_73813, object r_73281) ; -static void __lambda_307(void *data, int argc, object self_73814, object k_73462, object alist_73194, object term_73193) ; -static void __lambda_306(void *data, int argc, object self_73815, object r_73463) ; -static void __lambda_305(void *data, int argc, object self_73816) ; -static void __lambda_304(void *data, int argc, object self_73817, object temp_91temp_73195) ; -static void __lambda_303(void *data, int argc, object self_73818) ; -static void __lambda_302(void *data, int argc, object self_73819, object r_73464) ; -static void __lambda_301(void *data, int argc, object self_73820, object r_73466) ; -static void __lambda_300(void *data, int argc, object self_73821, object r_73465) ; -static void __lambda_299(void *data, int argc, object self_73822, object r_73461) ; -static void __lambda_298(void *data, int argc, object self_73823, object r_73282) ; -static void __lambda_297(void *data, int argc, object self_73824, object k_73455, object alist_73192, object lst_73191) ; -static void __lambda_296(void *data, int argc, object self_73825, object r_73456) ; -static void __lambda_295(void *data, int argc, object self_73826) ; -static void __lambda_294(void *data, int argc, object self_73827, object r_73460) ; -static void __lambda_293(void *data, int argc, object self_73828, object r_73457) ; -static void __lambda_292(void *data, int argc, object self_73829, object r_73459) ; -static void __lambda_291(void *data, int argc, object self_73830, object r_73458) ; -static void __lambda_290(void *data, int argc, object self_73831) ; -static void __lambda_289(void *data, int argc, object self_73832, object r_73454) ; -static void __lambda_288(void *data, int argc, object self_73833, object r_73283) ; -static void __lambda_287(void *data, int argc, object self_73834, object k_73450, object x_73190) ; -static void __lambda_286(void *data, int argc, object self_73835, object r_73451) ; -static void __lambda_285(void *data, int argc, object self_73836, object r_73452) ; -static void __lambda_284(void *data, int argc, object self_73837, object r_73453) ; -static void __lambda_283(void *data, int argc, object self_73838, object r_73449) ; -static void __lambda_282(void *data, int argc, object self_73839, object r_73284) ; -static void __lambda_281(void *data, int argc, object self_73840, object k_73430, object x_73189, object true_91lst_73188, object false_91lst_73187) ; -static void __lambda_280(void *data, int argc, object self_73841, object r_73431) ; -static void __lambda_279(void *data, int argc, object self_73842, object r_73432) ; -static void __lambda_278(void *data, int argc, object self_73843, object r_73433) ; -static void __lambda_277(void *data, int argc, object self_73844) ; -static void __lambda_276(void *data, int argc, object self_73845, object r_73448) ; -static void __lambda_275(void *data, int argc, object self_73846, object r_73434) ; -static void __lambda_274(void *data, int argc, object self_73847) ; -static void __lambda_273(void *data, int argc, object self_73848) ; -static void __lambda_272(void *data, int argc, object self_73849, object r_73447) ; -static void __lambda_271(void *data, int argc, object self_73850, object r_73435) ; -static void __lambda_270(void *data, int argc, object self_73851, object r_73446) ; -static void __lambda_269(void *data, int argc, object self_73852, object r_73437) ; -static void __lambda_268(void *data, int argc, object self_73853) ; -static void __lambda_267(void *data, int argc, object self_73854, object r_73443) ; -static void __lambda_266(void *data, int argc, object self_73855, object r_73445) ; -static void __lambda_265(void *data, int argc, object self_73856, object r_73444) ; -static void __lambda_264(void *data, int argc, object self_73857, object r_73439) ; -static void __lambda_263(void *data, int argc, object self_73858, object r_73440) ; -static void __lambda_262(void *data, int argc, object self_73859, object r_73442) ; -static void __lambda_261(void *data, int argc, object self_73860, object r_73441) ; -static void __lambda_260(void *data, int argc, object self_73861) ; -static void __lambda_259(void *data, int argc, object self_73862, object r_73438) ; -static void __lambda_258(void *data, int argc, object self_73863) ; -static void __lambda_257(void *data, int argc, object self_73864, object r_73436) ; -static void __lambda_256(void *data, int argc, object self_73865) ; -static void __lambda_255(void *data, int argc, object self_73866) ; -static void __lambda_254(void *data, int argc, object self_73867, object r_73429) ; -static void __lambda_253(void *data, int argc, object self_73868, object r_73285) ; -static void __lambda_252(void *data, int argc, object self_73869, object r_73428) ; -static void __lambda_251(void *data, int argc, object self_73870, object r_73286) ; -static void __lambda_250(void *data, int argc, object self_73871, object r_73287) ; -static void __lambda_249(void *data, int argc, object self_73872, object k_73418, object term_73186) ; -static void __lambda_248(void *data, int argc, object self_73873, object r_73427) ; -static void __lambda_247(void *data, int argc, object self_73874, object r_73419) ; -static void __lambda_246(void *data, int argc, object self_73875, object r_73420) ; -static void __lambda_245(void *data, int argc, object self_73876) ; -static void __lambda_244(void *data, int argc, object self_73877) ; -static void __lambda_243(void *data, int argc, object self_73878, object r_73424) ; -static void __lambda_242(void *data, int argc, object self_73879, object r_73426) ; -static void __lambda_241(void *data, int argc, object self_73880, object r_73425) ; -static void __lambda_240(void *data, int argc, object self_73881, object r_73421) ; -static void __lambda_239(void *data, int argc, object self_73882, object r_73423) ; -static void __lambda_238(void *data, int argc, object self_73883, object r_73422) ; -static void __lambda_237(void *data, int argc, object self_73884, object r_73417) ; -static void __lambda_236(void *data, int argc, object self_73885, object r_73288) ; -static void __lambda_235(void *data, int argc, object self_73886, object k_73411, object lst_73185) ; -static void __lambda_234(void *data, int argc, object self_73887, object r_73412) ; -static void __lambda_233(void *data, int argc, object self_73888) ; -static void __lambda_232(void *data, int argc, object self_73889, object r_73416) ; -static void __lambda_231(void *data, int argc, object self_73890, object r_73413) ; -static void __lambda_230(void *data, int argc, object self_73891, object r_73415) ; -static void __lambda_229(void *data, int argc, object self_73892, object r_73414) ; -static void __lambda_228(void *data, int argc, object self_73893) ; -static void __lambda_227(void *data, int argc, object self_73894, object r_73410) ; -static void __lambda_226(void *data, int argc, object self_73895, object r_73289) ; -static void __lambda_225(void *data, int argc, object self_73896, object k_73401, object term_73184, object lst_73183) ; -static void __lambda_224(void *data, int argc, object self_73897, object r_73402) ; -static void __lambda_223(void *data, int argc, object self_73898, object r_73409) ; -static void __lambda_222(void *data, int argc, object self_73899, object r_73408) ; -static void __lambda_221(void *data, int argc, object self_73900, object r_73403) ; -static void __lambda_220(void *data, int argc, object self_73901) ; -static void __lambda_219(void *data, int argc, object self_73902, object r_73407) ; -static void __lambda_218(void *data, int argc, object self_73903) ; -static void __lambda_217(void *data, int argc, object self_73904, object r_73406) ; -static void __lambda_216(void *data, int argc, object self_73905, object r_73405) ; -static void __lambda_215(void *data, int argc, object self_73906, object r_73404) ; -static void __lambda_214(void *data, int argc, object self_73907) ; -static void __lambda_213(void *data, int argc, object self_73908, object r_73400) ; -static void __lambda_212(void *data, int argc, object self_73909, object r_73290) ; -static void __lambda_211(void *data, int argc, object self_73910, object r_73399) ; -static void __lambda_210(void *data, int argc, object self_73911, object r_73291) ; -static void __lambda_209(void *data, int argc, object self_73912, object k_73396, object term1_73182, object term2_73181) ; -static void __lambda_208(void *data, int argc, object self_73913, object r_73398) ; -static void __lambda_207(void *data, int argc, object self_73914, object r_73397) ; -static void __lambda_206(void *data, int argc, object self_73915, object r_73395) ; -static void __lambda_205(void *data, int argc, object self_73916, object r_73292) ; -static void __lambda_204(void *data, int argc, object self_73917, object k_73381, object term1_73179, object term2_73178) ; -static void __lambda_203(void *data, int argc, object self_73918, object r_73382) ; -static void __lambda_202(void *data, int argc, object self_73919) ; -static void __lambda_201(void *data, int argc, object self_73920, object temp_91temp_73180) ; -static void __lambda_200(void *data, int argc, object self_73921, object r_73391) ; -static void __lambda_199(void *data, int argc, object self_73922) ; -static void __lambda_198(void *data, int argc, object self_73923, object r_73394) ; -static void __lambda_197(void *data, int argc, object self_73924, object r_73393) ; -static void __lambda_196(void *data, int argc, object self_73925, object r_73392) ; -static void __lambda_195(void *data, int argc, object self_73926) ; -static void __lambda_194(void *data, int argc, object self_73927) ; -static void __lambda_193(void *data, int argc, object self_73928, object r_73390) ; -static void __lambda_192(void *data, int argc, object self_73929, object r_73383) ; -static void __lambda_191(void *data, int argc, object self_73930) ; -static void __lambda_190(void *data, int argc, object self_73931, object r_73387) ; -static void __lambda_189(void *data, int argc, object self_73932, object r_73388) ; -static void __lambda_188(void *data, int argc, object self_73933, object r_73384) ; -static void __lambda_187(void *data, int argc, object self_73934) ; -static void __lambda_186(void *data, int argc, object self_73935) ; -static void __lambda_185(void *data, int argc, object self_73936, object r_73385) ; -static void __lambda_184(void *data, int argc, object self_73937, object r_73386) ; -static void __lambda_183(void *data, int argc, object self_73938, object r_73380) ; -static void __lambda_182(void *data, int argc, object self_73939, object r_73293) ; -static void __lambda_181(void *data, int argc, object self_73940, object k_73372, object lst1_73177, object lst2_73176) ; -static void __lambda_180(void *data, int argc, object self_73941, object r_73373) ; -static void __lambda_179(void *data, int argc, object self_73942, object r_73374) ; -static void __lambda_178(void *data, int argc, object self_73943, object r_73378) ; -static void __lambda_177(void *data, int argc, object self_73944, object r_73379) ; -static void __lambda_176(void *data, int argc, object self_73945, object r_73375) ; -static void __lambda_175(void *data, int argc, object self_73946) ; -static void __lambda_174(void *data, int argc, object self_73947) ; -static void __lambda_173(void *data, int argc, object self_73948, object r_73376) ; -static void __lambda_172(void *data, int argc, object self_73949, object r_73377) ; -static void __lambda_171(void *data, int argc, object self_73950) ; -static void __lambda_170(void *data, int argc, object self_73951) ; -static void __lambda_169(void *data, int argc, object self_73952, object r_73371) ; -static void __lambda_168(void *data, int argc, object self_73953, object r_73294) ; -static void __lambda_167(void *data, int argc, object self_73954, object k_73369, object x_73174, object lst_73173) ; -static void __lambda_166(void *data, int argc, object self_73955, object tmp_73175) ; -static void __lambda_165(void *data, int argc, object self_73956, object r_73368) ; -static void __lambda_164(void *data, int argc, object self_73957, object r_73295) ; -static void __lambda_163(void *data, int argc, object self_73958, object k_73366, object x_73171, object lst_73170) ; -static void __lambda_162(void *data, int argc, object self_73959, object tmp_73172) ; -static void __lambda_161(void *data, int argc, object self_73960, object r_73365) ; -static void __lambda_160(void *data, int argc, object self_73961, object r_73296) ; -static void __lambda_159(void *data, int argc, object self_73962, object r_73364) ; -static void __lambda_158(void *data, int argc, object self_73963, object r_73297) ; -static void __lambda_157(void *data, int argc, object self_73964, object r_73363) ; -static void __lambda_156(void *data, int argc, object self_73965, object r_73298) ; -static void __lambda_155(void *data, int argc, object self_73966, object k_73357, object n_73169) ; -static void __lambda_154(void *data, int argc, object self_73967, object r_73359) ; -static void __lambda_153(void *data, int argc, object self_73968, object r_73360) ; -static void __lambda_152(void *data, int argc, object self_73969, object r_73362) ; -static void __lambda_151(void *data, int argc, object self_73970, object r_73361) ; -static void __lambda_150(void *data, int argc, object self_73971, object r_73358) ; -static void __lambda_149(void *data, int argc, object self_73972, object r_73356) ; -static void __lambda_148(void *data, int argc, object self_73973, object r_73299) ; -static void __lambda_147(void *data, int argc, object self_73974, object k_73347, object n_73168) ; -static void __lambda_146(void *data, int argc, object self_73975, object r_73348) ; -static void __lambda_145(void *data, int argc, object self_73976) ; -static void __lambda_144(void *data, int argc, object self_73977, object r_73350) ; -static void __lambda_143(void *data, int argc, object self_73978, object r_73354) ; -static void __lambda_142(void *data, int argc, object self_73979, object r_73355) ; -static void __lambda_141(void *data, int argc, object self_73980, object r_73351) ; -static void __lambda_140(void *data, int argc, object self_73981, object r_73353) ; -static void __lambda_139(void *data, int argc, object self_73982, object r_73352) ; -static void __lambda_138(void *data, int argc, object self_73983) ; -static void __lambda_137(void *data, int argc, object self_73984, object r_73349) ; -static void __lambda_136(void *data, int argc, object self_73985, object r_73346) ; -static void __lambda_135(void *data, int argc, object self_73986, object r_73300) ; -static void __lambda_134(void *data, int argc, object self_73987, object k_73338, object x_73167, object y_73166) ; -static void __lambda_133(void *data, int argc, object self_73988, object r_73339) ; -static void __lambda_132(void *data, int argc, object self_73989) ; -static void __lambda_131(void *data, int argc, object self_73990) ; -static void __lambda_130(void *data, int argc, object self_73991, object r_73340) ; -static void __lambda_129(void *data, int argc, object self_73992, object r_73344) ; -static void __lambda_128(void *data, int argc, object self_73993, object r_73345) ; -static void __lambda_127(void *data, int argc, object self_73994, object r_73341) ; -static void __lambda_126(void *data, int argc, object self_73995, object r_73342) ; -static void __lambda_125(void *data, int argc, object self_73996, object r_73343) ; -static void __lambda_124(void *data, int argc, object self_73997, object r_73337) ; -static void __lambda_123(void *data, int argc, object self_73998, object r_73301) ; -static void __lambda_122(void *data, int argc, object self_73999, object k_73329, object lst1_73165, object lst2_73164) ; -static void __lambda_121(void *data, int argc, object self_731000, object r_73330) ; -static void __lambda_120(void *data, int argc, object self_731001, object r_73331) ; -static void __lambda_119(void *data, int argc, object self_731002, object r_73335) ; -static void __lambda_118(void *data, int argc, object self_731003, object r_73336) ; -static void __lambda_117(void *data, int argc, object self_731004, object r_73332) ; -static void __lambda_116(void *data, int argc, object self_731005) ; -static void __lambda_115(void *data, int argc, object self_731006) ; -static void __lambda_114(void *data, int argc, object self_731007, object r_73333) ; -static void __lambda_113(void *data, int argc, object self_731008, object r_73334) ; -static void __lambda_112(void *data, int argc, object self_731009) ; -static void __lambda_111(void *data, int argc, object self_731010) ; -static void __lambda_110(void *data, int argc, object self_731011, object r_73328) ; -static void __lambda_109(void *data, int argc, object self_731012, object r_73302) ; -static void __lambda_108(void *data, int argc, object self_731013, object k_73323, object x_73163, object lst_73162) ; -static void __lambda_107(void *data, int argc, object self_731014, object r_73324) ; -static void __lambda_106(void *data, int argc, object self_731015, object r_73327) ; -static void __lambda_105(void *data, int argc, object self_731016, object r_73325) ; -static void __lambda_104(void *data, int argc, object self_731017) ; -static void __lambda_103(void *data, int argc, object self_731018, object r_73326) ; -static void __lambda_102(void *data, int argc, object self_731019) ; -static void __lambda_101(void *data, int argc, object self_731020) ; -static void __lambda_100(void *data, int argc, object self_731021, object r_73322) ; -static void __lambda_99(void *data, int argc, object self_731022, object r_73303) ; -static void __lambda_98(void *data, int argc, object self_731023, object k_73310) ; -static void __lambda_97(void *data, int argc, object self_731024, object r_73321) ; -static void __lambda_96(void *data, int argc, object self_731025, object r_73311) ; -static void __lambda_95(void *data, int argc, object self_731026, object r_73320) ; -static void __lambda_94(void *data, int argc, object self_731027, object r_73319) ; -static void __lambda_93(void *data, int argc, object self_731028, object r_73312) ; -static void __lambda_92(void *data, int argc, object self_731029, object r_73318) ; -static void __lambda_91(void *data, int argc, object self_731030, object r_73317) ; -static void __lambda_90(void *data, int argc, object self_731031, object r_73313) ; -static void __lambda_89(void *data, int argc, object self_731032, object r_73316) ; -static void __lambda_88(void *data, int argc, object self_731033, object r_73315) ; -static void __lambda_87(void *data, int argc, object self_731034, object r_73314) ; -static void __lambda_86(void *data, int argc, object self_731035, object r_73309) ; -static void __lambda_85(void *data, int argc, object self_731036, object r_73304) ; -static void __lambda_84(void *data, int argc, object self_731037, object k_73306, object alist_73160, object term_73159, object n_73158) ; -static void __lambda_83(void *data, int argc, object self_731038, object r_73307) ; -static void __lambda_82(void *data, int argc, object self_731039, object answer_73161) ; -static void __lambda_81(void *data, int argc, closure _,object r_73305) ; -static void __lambda_80(void *data, int argc, closure _,object r_73264) ; -static void __lambda_79(void *data, int argc, closure _,object k_73568, object name_73229, object count_73228, object thunk_73227, object ok_127_73226) ; -static void __lambda_78(void *data, int argc, object self_731040, object rounded_73231) ; -static void __lambda_77(void *data, int argc, object self_731041, object rounded_73231) ; -static void __lambda_76(void *data, int argc, object self_731042, object rounded_73232) ; -static void __lambda_75(void *data, int argc, object self_731043, object k_73604, object x_73246) ; -static void __lambda_74(void *data, int argc, object self_731044, object r_73606) ; -static void __lambda_73(void *data, int argc, object self_731045, object r_73605) ; -static void __lambda_72(void *data, int argc, object self_731046, object r_73603) ; -static void __lambda_71(void *data, int argc, object self_731047, object r_73569) ; -static void __lambda_70(void *data, int argc, object self_731048, object r_73570) ; -static void __lambda_69(void *data, int argc, object self_731049, object r_73571) ; -static void __lambda_68(void *data, int argc, object self_731050, object r_73572) ; -static void __lambda_67(void *data, int argc, object self_731051, object r_73573) ; -static void __lambda_66(void *data, int argc, object self_731052, object j_95s_73233) ; -static void __lambda_65(void *data, int argc, object self_731053, object t0_73234) ; -static void __lambda_64(void *data, int argc, object self_731054, object j0_73235) ; -static void __lambda_63(void *data, int argc, object self_731055) ; -static void __lambda_62(void *data, int argc, object self_731056, object r_73577) ; -static void __lambda_61(void *data, int argc, object self_731057, object i_73237, object result_73236) ; -static void __lambda_60(void *data, int argc, object self_731058, object loop_73238) ; -static void __lambda_59(void *data, int argc, object self_731059, object loop_73238) ; -static void __lambda_58(void *data, int argc, object self_731060, object k_73580, object i_73240, object result_73239) ; -static void __lambda_57(void *data, int argc, object self_731061, object r_73581) ; -static void __lambda_56(void *data, int argc, object self_731062, object r_73584) ; -static void __lambda_55(void *data, int argc, object self_731063) ; -static void __lambda_54(void *data, int argc, object self_731064, object r_73599) ; -static void __lambda_53(void *data, int argc, object self_731065, object r_73600) ; -static void __lambda_52(void *data, int argc, object self_731066, object r_73601) ; -static void __lambda_51(void *data, int argc, object self_731067) ; -static void __lambda_50(void *data, int argc, object self_731068, object j1_73241) ; -static void __lambda_49(void *data, int argc, object self_731069, object t1_73242) ; -static void __lambda_48(void *data, int argc, object self_731070, object jifs_73243) ; -static void __lambda_47(void *data, int argc, object self_731071, object r_73598) ; -static void __lambda_46(void *data, int argc, object self_731072, object secs_73244) ; -static void __lambda_45(void *data, int argc, object self_731073, object r_73597) ; -static void __lambda_44(void *data, int argc, object self_731074, object secs2_73245) ; -static void __lambda_43(void *data, int argc, object self_731075) ; -static void __lambda_42(void *data, int argc, object self_731076, object r_73591) ; -static void __lambda_41(void *data, int argc, object self_731077, object r_73592) ; -static void __lambda_40(void *data, int argc, object self_731078, object r_73593) ; -static void __lambda_39(void *data, int argc, object self_731079, object r_73594) ; -static void __lambda_38(void *data, int argc, object self_731080, object r_73595) ; -static void __lambda_37(void *data, int argc, object self_731081, object r_73596) ; -static void __lambda_36(void *data, int argc, object self_731082, object r_73585) ; -static void __lambda_35(void *data, int argc, object self_731083) ; -static void __lambda_34(void *data, int argc, object self_731084, object r_73582) ; -static void __lambda_33(void *data, int argc, object self_731085, object r_73583) ; -static void __lambda_32(void *data, int argc, object self_731086, object r_73579) ; -static void __lambda_31(void *data, int argc, object self_731087, object r_73578) ; -static void __lambda_30(void *data, int argc, closure _,object k_73602) ; -static void __lambda_29(void *data, int argc, closure _,object k_73609, object r_73248, object x_73247) ; -static void __lambda_28(void *data, int argc, object self_731088, object k_73614) ; -static void __lambda_27(void *data, int argc, object self_731089, object k_73620, object x_73251) ; -static void __lambda_26(void *data, int argc, object self_731090, object r_73619) ; -static void __lambda_25(void *data, int argc, object self_731091, object r_73615) ; -static void __lambda_24(void *data, int argc, object self_731092, object r_73616) ; -static void __lambda_23(void *data, int argc, object self_731093, object k_73617) ; -static void __lambda_22(void *data, int argc, object self_731094, object r_73618) ; -static void __lambda_21(void *data, int argc, object self_731095, object r_73610) ; -static void __lambda_20(void *data, int argc, object self_731096, object k_73612, object v_73250, object i_73249) ; -static void __lambda_19(void *data, int argc, object self_731097, object r_73613) ; -static void __lambda_18(void *data, int argc, object self_731098, object r_73611) ; -static void __lambda_17(void *data, int argc, closure _,object k_73623, object args_73252_raw, ...) ; -static void __lambda_16(void *data, int argc, closure _,object k_73626, object args_73253_raw, ...) ; -static void __lambda_15(void *data, int argc, closure _,object k_73633) ; -static void __lambda_14(void *data, int argc, object self_731099, object count_73254) ; -static void __lambda_13(void *data, int argc, object self_731100, object input_73255) ; -static void __lambda_12(void *data, int argc, object self_731101, object output_73256) ; -static void __lambda_11(void *data, int argc, object self_731102, object s2_73257) ; -static void __lambda_10(void *data, int argc, object self_731103, object s1_73258) ; -static void __lambda_9(void *data, int argc, object self_731104, object name_73259) ; -static void __lambda_8(void *data, int argc, object self_731105) ; -static void __lambda_7(void *data, int argc, object self_731106, object r_73639) ; -static void __lambda_6(void *data, int argc, object self_731107, object k_73644) ; -static void __lambda_5(void *data, int argc, object self_731108, object r_73645) ; -static void __lambda_4(void *data, int argc, object self_731109, object r_73646) ; -static void __lambda_3(void *data, int argc, object self_731110, object r_73640) ; -static void __lambda_2(void *data, int argc, object self_731111, object k_73642, object rewrites_73260) ; -static void __lambda_1(void *data, int argc, object self_731112, object r_73643) ; -static void __lambda_0(void *data, int argc, object self_731113, object r_73641) ; - -static void __lambda_483(void *data, int argc, closure _,object _85symbol_91records_91alist_85_73118, object add_91lemma_73117, object add_91lemma_91lst_73116, object apply_91subst_73115, object apply_91subst_91lst_73114, object false_91term_73113, object falsep_73112, object get_73111, object get_91lemmas_73110, object get_91name_73109, object if_91constructor_73108, object make_91symbol_91record_73107, object one_91way_91unify_73106, object one_91way_91unify1_73105, object one_91way_91unify1_91lst_73104, object put_73103, object put_91lemmas_67_73102, object rewrite_73101, object rewrite_91args_73100, object rewrite_91count_7399, object rewrite_91with_91lemmas_7398, object setup_7397, object symbol_91_125symbol_91record_7396, object symbol_91record_91equal_127_7395, object tautologyp_7394, object tautp_7393, object term_91args_91equal_127_7392, object term_91equal_127_7391, object term_91member_127_7390, object test_7389, object trans_91of_91implies_7388, object trans_91of_91implies1_7387, object translate_91alist_7386, object translate_91args_7385, object translate_91term_7384, object true_91term_7383, object truep_7382, object unify_91subst_7381, object untranslate_91term_7380) { - return_direct0(data,__lambda_482);; -} - -static void __lambda_482(void *data, int argc, closure _) { - return_direct1(data,__lambda_481,obj_int2obj(0));; -} - -static void __lambda_481(void *data, int argc, closure _,object r_73261) { - make_cons(c_735175,quote_b,nil); -make_cons(c_735174,quote_a,&c_735175); -make_cons(c_735173,quote_plus,&c_735174); -make_cons(c_735180,quote_zero,nil); -make_cons(c_735179,&c_735180,nil); -make_cons(c_735178,quote_c,&c_735179); -make_cons(c_735177,quote_plus,&c_735178); -make_cons(c_735176,&c_735177,nil); -make_cons(c_735172,&c_735173,&c_735176); -make_cons(c_735171,quote_plus,&c_735172); -make_cons(c_735170,&c_735171,nil); -make_cons(c_735169,quote_f,&c_735170); -make_cons(c_735168,quote_x,&c_735169); -make_cons(c_735189,quote_b,nil); -make_cons(c_735188,quote_a,&c_735189); -make_cons(c_735187,quote_times,&c_735188); -make_cons(c_735193,quote_d,nil); -make_cons(c_735192,quote_c,&c_735193); -make_cons(c_735191,quote_plus,&c_735192); -make_cons(c_735190,&c_735191,nil); -make_cons(c_735186,&c_735187,&c_735190); -make_cons(c_735185,quote_times,&c_735186); -make_cons(c_735184,&c_735185,nil); -make_cons(c_735183,quote_f,&c_735184); -make_cons(c_735182,quote_y,&c_735183); -make_cons(c_735204,quote_b,nil); -make_cons(c_735203,quote_a,&c_735204); -make_cons(c_735202,quote_append,&c_735203); -make_cons(c_735206,quote_nil,nil); -make_cons(c_735205,&c_735206,nil); -make_cons(c_735201,&c_735202,&c_735205); -make_cons(c_735200,quote_append,&c_735201); -make_cons(c_735199,&c_735200,nil); -make_cons(c_735198,quote_reverse,&c_735199); -make_cons(c_735197,&c_735198,nil); -make_cons(c_735196,quote_f,&c_735197); -make_cons(c_735195,quote_z,&c_735196); -make_cons(c_735213,quote_b,nil); -make_cons(c_735212,quote_a,&c_735213); -make_cons(c_735211,quote_plus,&c_735212); -make_cons(c_735217,quote_y,nil); -make_cons(c_735216,quote_x,&c_735217); -make_cons(c_735215,quote_difference,&c_735216); -make_cons(c_735214,&c_735215,nil); -make_cons(c_735210,&c_735211,&c_735214); -make_cons(c_735209,quote_equal,&c_735210); -make_cons(c_735208,quote_u,&c_735209); -make_cons(c_735224,quote_b,nil); -make_cons(c_735223,quote_a,&c_735224); -make_cons(c_735222,quote_remainder,&c_735223); -make_cons(c_735230,quote_b,nil); -make_cons(c_735229,quote_length,&c_735230); -make_cons(c_735228,&c_735229,nil); -make_cons(c_735227,quote_a,&c_735228); -make_cons(c_735226,quote_member,&c_735227); -make_cons(c_735225,&c_735226,nil); -make_cons(c_735221,&c_735222,&c_735225); -make_cons(c_735220,quote_lessp,&c_735221); -make_cons(c_735219,quote_w,&c_735220); -make_cons(c_735218,&c_735219,nil); -make_cons(c_735207,&c_735208,&c_735218); -make_cons(c_735194,&c_735195,&c_735207); -make_cons(c_735181,&c_735182,&c_735194); -make_cons(c_735167,&c_735168,&c_735181); -return_direct1(data,__lambda_480,&c_735167);; -} - -static void __lambda_480(void *data, int argc, closure _,object r_73565) { - return_direct1(data,__lambda_479,global_set(__glo_alist, r_73565));; -} - -static void __lambda_479(void *data, int argc, closure _,object r_73262) { - make_cons(c_735144,quote_y,nil); -make_cons(c_735143,quote_x,&c_735144); -make_cons(c_735142,quote_implies,&c_735143); -make_cons(c_735150,quote_z,nil); -make_cons(c_735149,quote_y,&c_735150); -make_cons(c_735148,quote_implies,&c_735149); -make_cons(c_735156,quote_u,nil); -make_cons(c_735155,quote_z,&c_735156); -make_cons(c_735154,quote_implies,&c_735155); -make_cons(c_735160,quote_w,nil); -make_cons(c_735159,quote_u,&c_735160); -make_cons(c_735158,quote_implies,&c_735159); -make_cons(c_735157,&c_735158,nil); -make_cons(c_735153,&c_735154,&c_735157); -make_cons(c_735152,quote_and,&c_735153); -make_cons(c_735151,&c_735152,nil); -make_cons(c_735147,&c_735148,&c_735151); -make_cons(c_735146,quote_and,&c_735147); -make_cons(c_735145,&c_735146,nil); -make_cons(c_735141,&c_735142,&c_735145); -make_cons(c_735140,quote_and,&c_735141); -make_cons(c_735164,quote_w,nil); -make_cons(c_735163,quote_x,&c_735164); -make_cons(c_735162,quote_implies,&c_735163); -make_cons(c_735161,&c_735162,nil); -make_cons(c_735139,&c_735140,&c_735161); -make_cons(c_735138,quote_implies,&c_735139); -return_direct1(data,__lambda_478,&c_735138);; -} - -static void __lambda_478(void *data, int argc, closure _,object r_73564) { - return_direct1(data,__lambda_477,global_set(__glo_term, r_73564));; -} - -static void __lambda_477(void *data, int argc, closure _,object r_73263) { - return_direct0(data,__lambda_476);; -} - -static void __lambda_476(void *data, int argc, closure _) { - return_direct39(data,__lambda_475,boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f);; -} - -static void __lambda_475(void *data, int argc, closure _,object setup_73157, object add_91lemma_91lst_73156, object add_91lemma_73155, object translate_91term_73154, object translate_91args_73153, object untranslate_91term_73152, object put_73151, object get_73150, object symbol_91_125symbol_91record_73149, object _85symbol_91records_91alist_85_73148, object make_91symbol_91record_73147, object put_91lemmas_67_73146, object get_91lemmas_73145, object get_91name_73144, object symbol_91record_91equal_127_73143, object test_73142, object translate_91alist_73141, object apply_91subst_73140, object apply_91subst_91lst_73139, object tautp_73138, object tautologyp_73137, object if_91constructor_73136, object rewrite_91count_73135, object rewrite_73134, object rewrite_91args_73133, object rewrite_91with_91lemmas_73132, object unify_91subst_73131, object one_91way_91unify_73130, object one_91way_91unify1_73129, object one_91way_91unify1_91lst_73128, object falsep_73127, object truep_73126, object false_91term_73125, object true_91term_73124, object trans_91of_91implies_73123, object trans_91of_91implies1_73122, object term_91equal_127_73121, object term_91args_91equal_127_73120, object term_91member_127_73119) { - -closureN_type c_731407; -c_731407.hdr.mark = gc_color_red; - c_731407.hdr.grayed = 0; -c_731407.tag = closureN_tag; - c_731407.fn = (function_type)__lambda_474; -c_731407.num_args = 1; -c_731407.num_elt = 38; -c_731407.elts = (object *)alloca(sizeof(object) * 38); -c_731407.elts[0] = _85symbol_91records_91alist_85_73148; -c_731407.elts[1] = add_91lemma_73155; -c_731407.elts[2] = add_91lemma_91lst_73156; -c_731407.elts[3] = apply_91subst_73140; -c_731407.elts[4] = apply_91subst_91lst_73139; -c_731407.elts[5] = false_91term_73125; -c_731407.elts[6] = falsep_73127; -c_731407.elts[7] = get_73150; -c_731407.elts[8] = get_91lemmas_73145; -c_731407.elts[9] = get_91name_73144; -c_731407.elts[10] = if_91constructor_73136; -c_731407.elts[11] = make_91symbol_91record_73147; -c_731407.elts[12] = one_91way_91unify_73130; -c_731407.elts[13] = one_91way_91unify1_73129; -c_731407.elts[14] = one_91way_91unify1_91lst_73128; -c_731407.elts[15] = put_73151; -c_731407.elts[16] = put_91lemmas_67_73146; -c_731407.elts[17] = rewrite_73134; -c_731407.elts[18] = rewrite_91args_73133; -c_731407.elts[19] = rewrite_91count_73135; -c_731407.elts[20] = rewrite_91with_91lemmas_73132; -c_731407.elts[21] = symbol_91_125symbol_91record_73149; -c_731407.elts[22] = symbol_91record_91equal_127_73143; -c_731407.elts[23] = tautologyp_73137; -c_731407.elts[24] = tautp_73138; -c_731407.elts[25] = term_91args_91equal_127_73120; -c_731407.elts[26] = term_91equal_127_73121; -c_731407.elts[27] = term_91member_127_73119; -c_731407.elts[28] = test_73142; -c_731407.elts[29] = trans_91of_91implies_73123; -c_731407.elts[30] = trans_91of_91implies1_73122; -c_731407.elts[31] = translate_91alist_73141; -c_731407.elts[32] = translate_91args_73153; -c_731407.elts[33] = translate_91term_73154; -c_731407.elts[34] = true_91term_73124; -c_731407.elts[35] = truep_73126; -c_731407.elts[36] = unify_91subst_73131; -c_731407.elts[37] = untranslate_91term_73152; - - -make_cell(c_735135,setup_73157); -return_closcall1(data,(closure)&c_731407, &c_735135);; -} - -static void __lambda_474(void *data, int argc, object self_73647, object setup_73157) { - -closureN_type c_731409; -c_731409.hdr.mark = gc_color_red; - c_731409.hdr.grayed = 0; -c_731409.tag = closureN_tag; - c_731409.fn = (function_type)__lambda_473; -c_731409.num_args = 1; -c_731409.num_elt = 38; -c_731409.elts = (object *)alloca(sizeof(object) * 38); -c_731409.elts[0] = ((closureN)self_73647)->elts[0]; -c_731409.elts[1] = ((closureN)self_73647)->elts[1]; -c_731409.elts[2] = ((closureN)self_73647)->elts[3]; -c_731409.elts[3] = ((closureN)self_73647)->elts[4]; -c_731409.elts[4] = ((closureN)self_73647)->elts[5]; -c_731409.elts[5] = ((closureN)self_73647)->elts[6]; -c_731409.elts[6] = ((closureN)self_73647)->elts[7]; -c_731409.elts[7] = ((closureN)self_73647)->elts[8]; -c_731409.elts[8] = ((closureN)self_73647)->elts[9]; -c_731409.elts[9] = ((closureN)self_73647)->elts[10]; -c_731409.elts[10] = ((closureN)self_73647)->elts[11]; -c_731409.elts[11] = ((closureN)self_73647)->elts[12]; -c_731409.elts[12] = ((closureN)self_73647)->elts[13]; -c_731409.elts[13] = ((closureN)self_73647)->elts[14]; -c_731409.elts[14] = ((closureN)self_73647)->elts[15]; -c_731409.elts[15] = ((closureN)self_73647)->elts[16]; -c_731409.elts[16] = ((closureN)self_73647)->elts[17]; -c_731409.elts[17] = ((closureN)self_73647)->elts[18]; -c_731409.elts[18] = ((closureN)self_73647)->elts[19]; -c_731409.elts[19] = ((closureN)self_73647)->elts[20]; -c_731409.elts[20] = setup_73157; -c_731409.elts[21] = ((closureN)self_73647)->elts[21]; -c_731409.elts[22] = ((closureN)self_73647)->elts[22]; -c_731409.elts[23] = ((closureN)self_73647)->elts[23]; -c_731409.elts[24] = ((closureN)self_73647)->elts[24]; -c_731409.elts[25] = ((closureN)self_73647)->elts[25]; -c_731409.elts[26] = ((closureN)self_73647)->elts[26]; -c_731409.elts[27] = ((closureN)self_73647)->elts[27]; -c_731409.elts[28] = ((closureN)self_73647)->elts[28]; -c_731409.elts[29] = ((closureN)self_73647)->elts[29]; -c_731409.elts[30] = ((closureN)self_73647)->elts[30]; -c_731409.elts[31] = ((closureN)self_73647)->elts[31]; -c_731409.elts[32] = ((closureN)self_73647)->elts[32]; -c_731409.elts[33] = ((closureN)self_73647)->elts[33]; -c_731409.elts[34] = ((closureN)self_73647)->elts[34]; -c_731409.elts[35] = ((closureN)self_73647)->elts[35]; -c_731409.elts[36] = ((closureN)self_73647)->elts[36]; -c_731409.elts[37] = ((closureN)self_73647)->elts[37]; - - -make_cell(c_735131,((closureN)self_73647)->elts[2]); -return_closcall1(data,(closure)&c_731409, &c_735131);; -} - -static void __lambda_473(void *data, int argc, object self_73648, object add_91lemma_91lst_73156) { - -closureN_type c_731411; -c_731411.hdr.mark = gc_color_red; - c_731411.hdr.grayed = 0; -c_731411.tag = closureN_tag; - c_731411.fn = (function_type)__lambda_472; -c_731411.num_args = 1; -c_731411.num_elt = 38; -c_731411.elts = (object *)alloca(sizeof(object) * 38); -c_731411.elts[0] = ((closureN)self_73648)->elts[0]; -c_731411.elts[1] = add_91lemma_91lst_73156; -c_731411.elts[2] = ((closureN)self_73648)->elts[2]; -c_731411.elts[3] = ((closureN)self_73648)->elts[3]; -c_731411.elts[4] = ((closureN)self_73648)->elts[4]; -c_731411.elts[5] = ((closureN)self_73648)->elts[5]; -c_731411.elts[6] = ((closureN)self_73648)->elts[6]; -c_731411.elts[7] = ((closureN)self_73648)->elts[7]; -c_731411.elts[8] = ((closureN)self_73648)->elts[8]; -c_731411.elts[9] = ((closureN)self_73648)->elts[9]; -c_731411.elts[10] = ((closureN)self_73648)->elts[10]; -c_731411.elts[11] = ((closureN)self_73648)->elts[11]; -c_731411.elts[12] = ((closureN)self_73648)->elts[12]; -c_731411.elts[13] = ((closureN)self_73648)->elts[13]; -c_731411.elts[14] = ((closureN)self_73648)->elts[14]; -c_731411.elts[15] = ((closureN)self_73648)->elts[15]; -c_731411.elts[16] = ((closureN)self_73648)->elts[16]; -c_731411.elts[17] = ((closureN)self_73648)->elts[17]; -c_731411.elts[18] = ((closureN)self_73648)->elts[18]; -c_731411.elts[19] = ((closureN)self_73648)->elts[19]; -c_731411.elts[20] = ((closureN)self_73648)->elts[20]; -c_731411.elts[21] = ((closureN)self_73648)->elts[21]; -c_731411.elts[22] = ((closureN)self_73648)->elts[22]; -c_731411.elts[23] = ((closureN)self_73648)->elts[23]; -c_731411.elts[24] = ((closureN)self_73648)->elts[24]; -c_731411.elts[25] = ((closureN)self_73648)->elts[25]; -c_731411.elts[26] = ((closureN)self_73648)->elts[26]; -c_731411.elts[27] = ((closureN)self_73648)->elts[27]; -c_731411.elts[28] = ((closureN)self_73648)->elts[28]; -c_731411.elts[29] = ((closureN)self_73648)->elts[29]; -c_731411.elts[30] = ((closureN)self_73648)->elts[30]; -c_731411.elts[31] = ((closureN)self_73648)->elts[31]; -c_731411.elts[32] = ((closureN)self_73648)->elts[32]; -c_731411.elts[33] = ((closureN)self_73648)->elts[33]; -c_731411.elts[34] = ((closureN)self_73648)->elts[34]; -c_731411.elts[35] = ((closureN)self_73648)->elts[35]; -c_731411.elts[36] = ((closureN)self_73648)->elts[36]; -c_731411.elts[37] = ((closureN)self_73648)->elts[37]; - - -make_cell(c_735127,((closureN)self_73648)->elts[1]); -return_closcall1(data,(closure)&c_731411, &c_735127);; -} - -static void __lambda_472(void *data, int argc, object self_73649, object add_91lemma_73155) { - -closureN_type c_731413; -c_731413.hdr.mark = gc_color_red; - c_731413.hdr.grayed = 0; -c_731413.tag = closureN_tag; - c_731413.fn = (function_type)__lambda_471; -c_731413.num_args = 1; -c_731413.num_elt = 38; -c_731413.elts = (object *)alloca(sizeof(object) * 38); -c_731413.elts[0] = ((closureN)self_73649)->elts[0]; -c_731413.elts[1] = add_91lemma_73155; -c_731413.elts[2] = ((closureN)self_73649)->elts[1]; -c_731413.elts[3] = ((closureN)self_73649)->elts[2]; -c_731413.elts[4] = ((closureN)self_73649)->elts[3]; -c_731413.elts[5] = ((closureN)self_73649)->elts[4]; -c_731413.elts[6] = ((closureN)self_73649)->elts[5]; -c_731413.elts[7] = ((closureN)self_73649)->elts[6]; -c_731413.elts[8] = ((closureN)self_73649)->elts[7]; -c_731413.elts[9] = ((closureN)self_73649)->elts[8]; -c_731413.elts[10] = ((closureN)self_73649)->elts[9]; -c_731413.elts[11] = ((closureN)self_73649)->elts[10]; -c_731413.elts[12] = ((closureN)self_73649)->elts[11]; -c_731413.elts[13] = ((closureN)self_73649)->elts[12]; -c_731413.elts[14] = ((closureN)self_73649)->elts[13]; -c_731413.elts[15] = ((closureN)self_73649)->elts[14]; -c_731413.elts[16] = ((closureN)self_73649)->elts[15]; -c_731413.elts[17] = ((closureN)self_73649)->elts[16]; -c_731413.elts[18] = ((closureN)self_73649)->elts[17]; -c_731413.elts[19] = ((closureN)self_73649)->elts[18]; -c_731413.elts[20] = ((closureN)self_73649)->elts[19]; -c_731413.elts[21] = ((closureN)self_73649)->elts[20]; -c_731413.elts[22] = ((closureN)self_73649)->elts[21]; -c_731413.elts[23] = ((closureN)self_73649)->elts[22]; -c_731413.elts[24] = ((closureN)self_73649)->elts[23]; -c_731413.elts[25] = ((closureN)self_73649)->elts[24]; -c_731413.elts[26] = ((closureN)self_73649)->elts[25]; -c_731413.elts[27] = ((closureN)self_73649)->elts[26]; -c_731413.elts[28] = ((closureN)self_73649)->elts[27]; -c_731413.elts[29] = ((closureN)self_73649)->elts[28]; -c_731413.elts[30] = ((closureN)self_73649)->elts[29]; -c_731413.elts[31] = ((closureN)self_73649)->elts[30]; -c_731413.elts[32] = ((closureN)self_73649)->elts[31]; -c_731413.elts[33] = ((closureN)self_73649)->elts[32]; -c_731413.elts[34] = ((closureN)self_73649)->elts[34]; -c_731413.elts[35] = ((closureN)self_73649)->elts[35]; -c_731413.elts[36] = ((closureN)self_73649)->elts[36]; -c_731413.elts[37] = ((closureN)self_73649)->elts[37]; - - -make_cell(c_735123,((closureN)self_73649)->elts[33]); -return_closcall1(data,(closure)&c_731413, &c_735123);; -} - -static void __lambda_471(void *data, int argc, object self_73650, object translate_91term_73154) { - -closureN_type c_731415; -c_731415.hdr.mark = gc_color_red; - c_731415.hdr.grayed = 0; -c_731415.tag = closureN_tag; - c_731415.fn = (function_type)__lambda_470; -c_731415.num_args = 1; -c_731415.num_elt = 38; -c_731415.elts = (object *)alloca(sizeof(object) * 38); -c_731415.elts[0] = ((closureN)self_73650)->elts[0]; -c_731415.elts[1] = ((closureN)self_73650)->elts[1]; -c_731415.elts[2] = ((closureN)self_73650)->elts[2]; -c_731415.elts[3] = ((closureN)self_73650)->elts[3]; -c_731415.elts[4] = ((closureN)self_73650)->elts[4]; -c_731415.elts[5] = ((closureN)self_73650)->elts[5]; -c_731415.elts[6] = ((closureN)self_73650)->elts[6]; -c_731415.elts[7] = ((closureN)self_73650)->elts[7]; -c_731415.elts[8] = ((closureN)self_73650)->elts[8]; -c_731415.elts[9] = ((closureN)self_73650)->elts[9]; -c_731415.elts[10] = ((closureN)self_73650)->elts[10]; -c_731415.elts[11] = ((closureN)self_73650)->elts[11]; -c_731415.elts[12] = ((closureN)self_73650)->elts[12]; -c_731415.elts[13] = ((closureN)self_73650)->elts[13]; -c_731415.elts[14] = ((closureN)self_73650)->elts[14]; -c_731415.elts[15] = ((closureN)self_73650)->elts[15]; -c_731415.elts[16] = ((closureN)self_73650)->elts[16]; -c_731415.elts[17] = ((closureN)self_73650)->elts[17]; -c_731415.elts[18] = ((closureN)self_73650)->elts[18]; -c_731415.elts[19] = ((closureN)self_73650)->elts[19]; -c_731415.elts[20] = ((closureN)self_73650)->elts[20]; -c_731415.elts[21] = ((closureN)self_73650)->elts[21]; -c_731415.elts[22] = ((closureN)self_73650)->elts[22]; -c_731415.elts[23] = ((closureN)self_73650)->elts[23]; -c_731415.elts[24] = ((closureN)self_73650)->elts[24]; -c_731415.elts[25] = ((closureN)self_73650)->elts[25]; -c_731415.elts[26] = ((closureN)self_73650)->elts[26]; -c_731415.elts[27] = ((closureN)self_73650)->elts[27]; -c_731415.elts[28] = ((closureN)self_73650)->elts[28]; -c_731415.elts[29] = ((closureN)self_73650)->elts[29]; -c_731415.elts[30] = ((closureN)self_73650)->elts[30]; -c_731415.elts[31] = ((closureN)self_73650)->elts[31]; -c_731415.elts[32] = ((closureN)self_73650)->elts[32]; -c_731415.elts[33] = translate_91term_73154; -c_731415.elts[34] = ((closureN)self_73650)->elts[34]; -c_731415.elts[35] = ((closureN)self_73650)->elts[35]; -c_731415.elts[36] = ((closureN)self_73650)->elts[36]; -c_731415.elts[37] = ((closureN)self_73650)->elts[37]; - - -make_cell(c_735119,((closureN)self_73650)->elts[33]); -return_closcall1(data,(closure)&c_731415, &c_735119);; -} - -static void __lambda_470(void *data, int argc, object self_73651, object translate_91args_73153) { - -closureN_type c_731417; -c_731417.hdr.mark = gc_color_red; - c_731417.hdr.grayed = 0; -c_731417.tag = closureN_tag; - c_731417.fn = (function_type)__lambda_469; -c_731417.num_args = 1; -c_731417.num_elt = 38; -c_731417.elts = (object *)alloca(sizeof(object) * 38); -c_731417.elts[0] = ((closureN)self_73651)->elts[0]; -c_731417.elts[1] = ((closureN)self_73651)->elts[1]; -c_731417.elts[2] = ((closureN)self_73651)->elts[2]; -c_731417.elts[3] = ((closureN)self_73651)->elts[3]; -c_731417.elts[4] = ((closureN)self_73651)->elts[4]; -c_731417.elts[5] = ((closureN)self_73651)->elts[5]; -c_731417.elts[6] = ((closureN)self_73651)->elts[6]; -c_731417.elts[7] = ((closureN)self_73651)->elts[7]; -c_731417.elts[8] = ((closureN)self_73651)->elts[8]; -c_731417.elts[9] = ((closureN)self_73651)->elts[9]; -c_731417.elts[10] = ((closureN)self_73651)->elts[10]; -c_731417.elts[11] = ((closureN)self_73651)->elts[11]; -c_731417.elts[12] = ((closureN)self_73651)->elts[12]; -c_731417.elts[13] = ((closureN)self_73651)->elts[13]; -c_731417.elts[14] = ((closureN)self_73651)->elts[14]; -c_731417.elts[15] = ((closureN)self_73651)->elts[15]; -c_731417.elts[16] = ((closureN)self_73651)->elts[16]; -c_731417.elts[17] = ((closureN)self_73651)->elts[17]; -c_731417.elts[18] = ((closureN)self_73651)->elts[18]; -c_731417.elts[19] = ((closureN)self_73651)->elts[19]; -c_731417.elts[20] = ((closureN)self_73651)->elts[20]; -c_731417.elts[21] = ((closureN)self_73651)->elts[21]; -c_731417.elts[22] = ((closureN)self_73651)->elts[22]; -c_731417.elts[23] = ((closureN)self_73651)->elts[23]; -c_731417.elts[24] = ((closureN)self_73651)->elts[24]; -c_731417.elts[25] = ((closureN)self_73651)->elts[25]; -c_731417.elts[26] = ((closureN)self_73651)->elts[26]; -c_731417.elts[27] = ((closureN)self_73651)->elts[27]; -c_731417.elts[28] = ((closureN)self_73651)->elts[28]; -c_731417.elts[29] = ((closureN)self_73651)->elts[29]; -c_731417.elts[30] = ((closureN)self_73651)->elts[30]; -c_731417.elts[31] = ((closureN)self_73651)->elts[31]; -c_731417.elts[32] = ((closureN)self_73651)->elts[32]; -c_731417.elts[33] = translate_91args_73153; -c_731417.elts[34] = ((closureN)self_73651)->elts[33]; -c_731417.elts[35] = ((closureN)self_73651)->elts[34]; -c_731417.elts[36] = ((closureN)self_73651)->elts[35]; -c_731417.elts[37] = ((closureN)self_73651)->elts[36]; - - -make_cell(c_735115,((closureN)self_73651)->elts[37]); -return_closcall1(data,(closure)&c_731417, &c_735115);; -} - -static void __lambda_469(void *data, int argc, object self_73652, object untranslate_91term_73152) { - -closureN_type c_731419; -c_731419.hdr.mark = gc_color_red; - c_731419.hdr.grayed = 0; -c_731419.tag = closureN_tag; - c_731419.fn = (function_type)__lambda_468; -c_731419.num_args = 1; -c_731419.num_elt = 38; -c_731419.elts = (object *)alloca(sizeof(object) * 38); -c_731419.elts[0] = ((closureN)self_73652)->elts[0]; -c_731419.elts[1] = ((closureN)self_73652)->elts[1]; -c_731419.elts[2] = ((closureN)self_73652)->elts[2]; -c_731419.elts[3] = ((closureN)self_73652)->elts[3]; -c_731419.elts[4] = ((closureN)self_73652)->elts[4]; -c_731419.elts[5] = ((closureN)self_73652)->elts[5]; -c_731419.elts[6] = ((closureN)self_73652)->elts[6]; -c_731419.elts[7] = ((closureN)self_73652)->elts[7]; -c_731419.elts[8] = ((closureN)self_73652)->elts[8]; -c_731419.elts[9] = ((closureN)self_73652)->elts[9]; -c_731419.elts[10] = ((closureN)self_73652)->elts[10]; -c_731419.elts[11] = ((closureN)self_73652)->elts[11]; -c_731419.elts[12] = ((closureN)self_73652)->elts[12]; -c_731419.elts[13] = ((closureN)self_73652)->elts[13]; -c_731419.elts[14] = ((closureN)self_73652)->elts[14]; -c_731419.elts[15] = ((closureN)self_73652)->elts[16]; -c_731419.elts[16] = ((closureN)self_73652)->elts[17]; -c_731419.elts[17] = ((closureN)self_73652)->elts[18]; -c_731419.elts[18] = ((closureN)self_73652)->elts[19]; -c_731419.elts[19] = ((closureN)self_73652)->elts[20]; -c_731419.elts[20] = ((closureN)self_73652)->elts[21]; -c_731419.elts[21] = ((closureN)self_73652)->elts[22]; -c_731419.elts[22] = ((closureN)self_73652)->elts[23]; -c_731419.elts[23] = ((closureN)self_73652)->elts[24]; -c_731419.elts[24] = ((closureN)self_73652)->elts[25]; -c_731419.elts[25] = ((closureN)self_73652)->elts[26]; -c_731419.elts[26] = ((closureN)self_73652)->elts[27]; -c_731419.elts[27] = ((closureN)self_73652)->elts[28]; -c_731419.elts[28] = ((closureN)self_73652)->elts[29]; -c_731419.elts[29] = ((closureN)self_73652)->elts[30]; -c_731419.elts[30] = ((closureN)self_73652)->elts[31]; -c_731419.elts[31] = ((closureN)self_73652)->elts[32]; -c_731419.elts[32] = ((closureN)self_73652)->elts[33]; -c_731419.elts[33] = ((closureN)self_73652)->elts[34]; -c_731419.elts[34] = ((closureN)self_73652)->elts[35]; -c_731419.elts[35] = ((closureN)self_73652)->elts[36]; -c_731419.elts[36] = ((closureN)self_73652)->elts[37]; -c_731419.elts[37] = untranslate_91term_73152; - - -make_cell(c_735111,((closureN)self_73652)->elts[15]); -return_closcall1(data,(closure)&c_731419, &c_735111);; -} - -static void __lambda_468(void *data, int argc, object self_73653, object put_73151) { - -closureN_type c_731421; -c_731421.hdr.mark = gc_color_red; - c_731421.hdr.grayed = 0; -c_731421.tag = closureN_tag; - c_731421.fn = (function_type)__lambda_467; -c_731421.num_args = 1; -c_731421.num_elt = 38; -c_731421.elts = (object *)alloca(sizeof(object) * 38); -c_731421.elts[0] = ((closureN)self_73653)->elts[0]; -c_731421.elts[1] = ((closureN)self_73653)->elts[1]; -c_731421.elts[2] = ((closureN)self_73653)->elts[2]; -c_731421.elts[3] = ((closureN)self_73653)->elts[3]; -c_731421.elts[4] = ((closureN)self_73653)->elts[4]; -c_731421.elts[5] = ((closureN)self_73653)->elts[5]; -c_731421.elts[6] = ((closureN)self_73653)->elts[6]; -c_731421.elts[7] = ((closureN)self_73653)->elts[8]; -c_731421.elts[8] = ((closureN)self_73653)->elts[9]; -c_731421.elts[9] = ((closureN)self_73653)->elts[10]; -c_731421.elts[10] = ((closureN)self_73653)->elts[11]; -c_731421.elts[11] = ((closureN)self_73653)->elts[12]; -c_731421.elts[12] = ((closureN)self_73653)->elts[13]; -c_731421.elts[13] = ((closureN)self_73653)->elts[14]; -c_731421.elts[14] = put_73151; -c_731421.elts[15] = ((closureN)self_73653)->elts[15]; -c_731421.elts[16] = ((closureN)self_73653)->elts[16]; -c_731421.elts[17] = ((closureN)self_73653)->elts[17]; -c_731421.elts[18] = ((closureN)self_73653)->elts[18]; -c_731421.elts[19] = ((closureN)self_73653)->elts[19]; -c_731421.elts[20] = ((closureN)self_73653)->elts[20]; -c_731421.elts[21] = ((closureN)self_73653)->elts[21]; -c_731421.elts[22] = ((closureN)self_73653)->elts[22]; -c_731421.elts[23] = ((closureN)self_73653)->elts[23]; -c_731421.elts[24] = ((closureN)self_73653)->elts[24]; -c_731421.elts[25] = ((closureN)self_73653)->elts[25]; -c_731421.elts[26] = ((closureN)self_73653)->elts[26]; -c_731421.elts[27] = ((closureN)self_73653)->elts[27]; -c_731421.elts[28] = ((closureN)self_73653)->elts[28]; -c_731421.elts[29] = ((closureN)self_73653)->elts[29]; -c_731421.elts[30] = ((closureN)self_73653)->elts[30]; -c_731421.elts[31] = ((closureN)self_73653)->elts[31]; -c_731421.elts[32] = ((closureN)self_73653)->elts[32]; -c_731421.elts[33] = ((closureN)self_73653)->elts[33]; -c_731421.elts[34] = ((closureN)self_73653)->elts[34]; -c_731421.elts[35] = ((closureN)self_73653)->elts[35]; -c_731421.elts[36] = ((closureN)self_73653)->elts[36]; -c_731421.elts[37] = ((closureN)self_73653)->elts[37]; - - -make_cell(c_735107,((closureN)self_73653)->elts[7]); -return_closcall1(data,(closure)&c_731421, &c_735107);; -} - -static void __lambda_467(void *data, int argc, object self_73654, object get_73150) { - -closureN_type c_731423; -c_731423.hdr.mark = gc_color_red; - c_731423.hdr.grayed = 0; -c_731423.tag = closureN_tag; - c_731423.fn = (function_type)__lambda_466; -c_731423.num_args = 1; -c_731423.num_elt = 38; -c_731423.elts = (object *)alloca(sizeof(object) * 38); -c_731423.elts[0] = ((closureN)self_73654)->elts[0]; -c_731423.elts[1] = ((closureN)self_73654)->elts[1]; -c_731423.elts[2] = ((closureN)self_73654)->elts[2]; -c_731423.elts[3] = ((closureN)self_73654)->elts[3]; -c_731423.elts[4] = ((closureN)self_73654)->elts[4]; -c_731423.elts[5] = ((closureN)self_73654)->elts[5]; -c_731423.elts[6] = ((closureN)self_73654)->elts[6]; -c_731423.elts[7] = get_73150; -c_731423.elts[8] = ((closureN)self_73654)->elts[7]; -c_731423.elts[9] = ((closureN)self_73654)->elts[8]; -c_731423.elts[10] = ((closureN)self_73654)->elts[9]; -c_731423.elts[11] = ((closureN)self_73654)->elts[10]; -c_731423.elts[12] = ((closureN)self_73654)->elts[11]; -c_731423.elts[13] = ((closureN)self_73654)->elts[12]; -c_731423.elts[14] = ((closureN)self_73654)->elts[13]; -c_731423.elts[15] = ((closureN)self_73654)->elts[14]; -c_731423.elts[16] = ((closureN)self_73654)->elts[15]; -c_731423.elts[17] = ((closureN)self_73654)->elts[16]; -c_731423.elts[18] = ((closureN)self_73654)->elts[17]; -c_731423.elts[19] = ((closureN)self_73654)->elts[18]; -c_731423.elts[20] = ((closureN)self_73654)->elts[19]; -c_731423.elts[21] = ((closureN)self_73654)->elts[20]; -c_731423.elts[22] = ((closureN)self_73654)->elts[22]; -c_731423.elts[23] = ((closureN)self_73654)->elts[23]; -c_731423.elts[24] = ((closureN)self_73654)->elts[24]; -c_731423.elts[25] = ((closureN)self_73654)->elts[25]; -c_731423.elts[26] = ((closureN)self_73654)->elts[26]; -c_731423.elts[27] = ((closureN)self_73654)->elts[27]; -c_731423.elts[28] = ((closureN)self_73654)->elts[28]; -c_731423.elts[29] = ((closureN)self_73654)->elts[29]; -c_731423.elts[30] = ((closureN)self_73654)->elts[30]; -c_731423.elts[31] = ((closureN)self_73654)->elts[31]; -c_731423.elts[32] = ((closureN)self_73654)->elts[32]; -c_731423.elts[33] = ((closureN)self_73654)->elts[33]; -c_731423.elts[34] = ((closureN)self_73654)->elts[34]; -c_731423.elts[35] = ((closureN)self_73654)->elts[35]; -c_731423.elts[36] = ((closureN)self_73654)->elts[36]; -c_731423.elts[37] = ((closureN)self_73654)->elts[37]; - - -make_cell(c_735103,((closureN)self_73654)->elts[21]); -return_closcall1(data,(closure)&c_731423, &c_735103);; -} - -static void __lambda_466(void *data, int argc, object self_73655, object symbol_91_125symbol_91record_73149) { - -closureN_type c_731425; -c_731425.hdr.mark = gc_color_red; - c_731425.hdr.grayed = 0; -c_731425.tag = closureN_tag; - c_731425.fn = (function_type)__lambda_465; -c_731425.num_args = 1; -c_731425.num_elt = 38; -c_731425.elts = (object *)alloca(sizeof(object) * 38); -c_731425.elts[0] = ((closureN)self_73655)->elts[1]; -c_731425.elts[1] = ((closureN)self_73655)->elts[2]; -c_731425.elts[2] = ((closureN)self_73655)->elts[3]; -c_731425.elts[3] = ((closureN)self_73655)->elts[4]; -c_731425.elts[4] = ((closureN)self_73655)->elts[5]; -c_731425.elts[5] = ((closureN)self_73655)->elts[6]; -c_731425.elts[6] = ((closureN)self_73655)->elts[7]; -c_731425.elts[7] = ((closureN)self_73655)->elts[8]; -c_731425.elts[8] = ((closureN)self_73655)->elts[9]; -c_731425.elts[9] = ((closureN)self_73655)->elts[10]; -c_731425.elts[10] = ((closureN)self_73655)->elts[11]; -c_731425.elts[11] = ((closureN)self_73655)->elts[12]; -c_731425.elts[12] = ((closureN)self_73655)->elts[13]; -c_731425.elts[13] = ((closureN)self_73655)->elts[14]; -c_731425.elts[14] = ((closureN)self_73655)->elts[15]; -c_731425.elts[15] = ((closureN)self_73655)->elts[16]; -c_731425.elts[16] = ((closureN)self_73655)->elts[17]; -c_731425.elts[17] = ((closureN)self_73655)->elts[18]; -c_731425.elts[18] = ((closureN)self_73655)->elts[19]; -c_731425.elts[19] = ((closureN)self_73655)->elts[20]; -c_731425.elts[20] = ((closureN)self_73655)->elts[21]; -c_731425.elts[21] = symbol_91_125symbol_91record_73149; -c_731425.elts[22] = ((closureN)self_73655)->elts[22]; -c_731425.elts[23] = ((closureN)self_73655)->elts[23]; -c_731425.elts[24] = ((closureN)self_73655)->elts[24]; -c_731425.elts[25] = ((closureN)self_73655)->elts[25]; -c_731425.elts[26] = ((closureN)self_73655)->elts[26]; -c_731425.elts[27] = ((closureN)self_73655)->elts[27]; -c_731425.elts[28] = ((closureN)self_73655)->elts[28]; -c_731425.elts[29] = ((closureN)self_73655)->elts[29]; -c_731425.elts[30] = ((closureN)self_73655)->elts[30]; -c_731425.elts[31] = ((closureN)self_73655)->elts[31]; -c_731425.elts[32] = ((closureN)self_73655)->elts[32]; -c_731425.elts[33] = ((closureN)self_73655)->elts[33]; -c_731425.elts[34] = ((closureN)self_73655)->elts[34]; -c_731425.elts[35] = ((closureN)self_73655)->elts[35]; -c_731425.elts[36] = ((closureN)self_73655)->elts[36]; -c_731425.elts[37] = ((closureN)self_73655)->elts[37]; - - -make_cell(c_735099,((closureN)self_73655)->elts[0]); -return_closcall1(data,(closure)&c_731425, &c_735099);; -} - -static void __lambda_465(void *data, int argc, object self_73656, object _85symbol_91records_91alist_85_73148) { - -closureN_type c_731427; -c_731427.hdr.mark = gc_color_red; - c_731427.hdr.grayed = 0; -c_731427.tag = closureN_tag; - c_731427.fn = (function_type)__lambda_464; -c_731427.num_args = 1; -c_731427.num_elt = 38; -c_731427.elts = (object *)alloca(sizeof(object) * 38); -c_731427.elts[0] = _85symbol_91records_91alist_85_73148; -c_731427.elts[1] = ((closureN)self_73656)->elts[0]; -c_731427.elts[2] = ((closureN)self_73656)->elts[1]; -c_731427.elts[3] = ((closureN)self_73656)->elts[2]; -c_731427.elts[4] = ((closureN)self_73656)->elts[3]; -c_731427.elts[5] = ((closureN)self_73656)->elts[4]; -c_731427.elts[6] = ((closureN)self_73656)->elts[5]; -c_731427.elts[7] = ((closureN)self_73656)->elts[6]; -c_731427.elts[8] = ((closureN)self_73656)->elts[7]; -c_731427.elts[9] = ((closureN)self_73656)->elts[8]; -c_731427.elts[10] = ((closureN)self_73656)->elts[9]; -c_731427.elts[11] = ((closureN)self_73656)->elts[11]; -c_731427.elts[12] = ((closureN)self_73656)->elts[12]; -c_731427.elts[13] = ((closureN)self_73656)->elts[13]; -c_731427.elts[14] = ((closureN)self_73656)->elts[14]; -c_731427.elts[15] = ((closureN)self_73656)->elts[15]; -c_731427.elts[16] = ((closureN)self_73656)->elts[16]; -c_731427.elts[17] = ((closureN)self_73656)->elts[17]; -c_731427.elts[18] = ((closureN)self_73656)->elts[18]; -c_731427.elts[19] = ((closureN)self_73656)->elts[19]; -c_731427.elts[20] = ((closureN)self_73656)->elts[20]; -c_731427.elts[21] = ((closureN)self_73656)->elts[21]; -c_731427.elts[22] = ((closureN)self_73656)->elts[22]; -c_731427.elts[23] = ((closureN)self_73656)->elts[23]; -c_731427.elts[24] = ((closureN)self_73656)->elts[24]; -c_731427.elts[25] = ((closureN)self_73656)->elts[25]; -c_731427.elts[26] = ((closureN)self_73656)->elts[26]; -c_731427.elts[27] = ((closureN)self_73656)->elts[27]; -c_731427.elts[28] = ((closureN)self_73656)->elts[28]; -c_731427.elts[29] = ((closureN)self_73656)->elts[29]; -c_731427.elts[30] = ((closureN)self_73656)->elts[30]; -c_731427.elts[31] = ((closureN)self_73656)->elts[31]; -c_731427.elts[32] = ((closureN)self_73656)->elts[32]; -c_731427.elts[33] = ((closureN)self_73656)->elts[33]; -c_731427.elts[34] = ((closureN)self_73656)->elts[34]; -c_731427.elts[35] = ((closureN)self_73656)->elts[35]; -c_731427.elts[36] = ((closureN)self_73656)->elts[36]; -c_731427.elts[37] = ((closureN)self_73656)->elts[37]; - - -make_cell(c_735095,((closureN)self_73656)->elts[10]); -return_closcall1(data,(closure)&c_731427, &c_735095);; -} - -static void __lambda_464(void *data, int argc, object self_73657, object make_91symbol_91record_73147) { - -closureN_type c_731429; -c_731429.hdr.mark = gc_color_red; - c_731429.hdr.grayed = 0; -c_731429.tag = closureN_tag; - c_731429.fn = (function_type)__lambda_463; -c_731429.num_args = 1; -c_731429.num_elt = 38; -c_731429.elts = (object *)alloca(sizeof(object) * 38); -c_731429.elts[0] = ((closureN)self_73657)->elts[0]; -c_731429.elts[1] = ((closureN)self_73657)->elts[1]; -c_731429.elts[2] = ((closureN)self_73657)->elts[2]; -c_731429.elts[3] = ((closureN)self_73657)->elts[3]; -c_731429.elts[4] = ((closureN)self_73657)->elts[4]; -c_731429.elts[5] = ((closureN)self_73657)->elts[5]; -c_731429.elts[6] = ((closureN)self_73657)->elts[6]; -c_731429.elts[7] = ((closureN)self_73657)->elts[7]; -c_731429.elts[8] = ((closureN)self_73657)->elts[8]; -c_731429.elts[9] = ((closureN)self_73657)->elts[9]; -c_731429.elts[10] = ((closureN)self_73657)->elts[10]; -c_731429.elts[11] = make_91symbol_91record_73147; -c_731429.elts[12] = ((closureN)self_73657)->elts[11]; -c_731429.elts[13] = ((closureN)self_73657)->elts[12]; -c_731429.elts[14] = ((closureN)self_73657)->elts[13]; -c_731429.elts[15] = ((closureN)self_73657)->elts[14]; -c_731429.elts[16] = ((closureN)self_73657)->elts[16]; -c_731429.elts[17] = ((closureN)self_73657)->elts[17]; -c_731429.elts[18] = ((closureN)self_73657)->elts[18]; -c_731429.elts[19] = ((closureN)self_73657)->elts[19]; -c_731429.elts[20] = ((closureN)self_73657)->elts[20]; -c_731429.elts[21] = ((closureN)self_73657)->elts[21]; -c_731429.elts[22] = ((closureN)self_73657)->elts[22]; -c_731429.elts[23] = ((closureN)self_73657)->elts[23]; -c_731429.elts[24] = ((closureN)self_73657)->elts[24]; -c_731429.elts[25] = ((closureN)self_73657)->elts[25]; -c_731429.elts[26] = ((closureN)self_73657)->elts[26]; -c_731429.elts[27] = ((closureN)self_73657)->elts[27]; -c_731429.elts[28] = ((closureN)self_73657)->elts[28]; -c_731429.elts[29] = ((closureN)self_73657)->elts[29]; -c_731429.elts[30] = ((closureN)self_73657)->elts[30]; -c_731429.elts[31] = ((closureN)self_73657)->elts[31]; -c_731429.elts[32] = ((closureN)self_73657)->elts[32]; -c_731429.elts[33] = ((closureN)self_73657)->elts[33]; -c_731429.elts[34] = ((closureN)self_73657)->elts[34]; -c_731429.elts[35] = ((closureN)self_73657)->elts[35]; -c_731429.elts[36] = ((closureN)self_73657)->elts[36]; -c_731429.elts[37] = ((closureN)self_73657)->elts[37]; - - -make_cell(c_735091,((closureN)self_73657)->elts[15]); -return_closcall1(data,(closure)&c_731429, &c_735091);; -} - -static void __lambda_463(void *data, int argc, object self_73658, object put_91lemmas_67_73146) { - -closureN_type c_731431; -c_731431.hdr.mark = gc_color_red; - c_731431.hdr.grayed = 0; -c_731431.tag = closureN_tag; - c_731431.fn = (function_type)__lambda_462; -c_731431.num_args = 1; -c_731431.num_elt = 38; -c_731431.elts = (object *)alloca(sizeof(object) * 38); -c_731431.elts[0] = ((closureN)self_73658)->elts[0]; -c_731431.elts[1] = ((closureN)self_73658)->elts[1]; -c_731431.elts[2] = ((closureN)self_73658)->elts[2]; -c_731431.elts[3] = ((closureN)self_73658)->elts[3]; -c_731431.elts[4] = ((closureN)self_73658)->elts[4]; -c_731431.elts[5] = ((closureN)self_73658)->elts[5]; -c_731431.elts[6] = ((closureN)self_73658)->elts[6]; -c_731431.elts[7] = ((closureN)self_73658)->elts[7]; -c_731431.elts[8] = ((closureN)self_73658)->elts[9]; -c_731431.elts[9] = ((closureN)self_73658)->elts[10]; -c_731431.elts[10] = ((closureN)self_73658)->elts[11]; -c_731431.elts[11] = ((closureN)self_73658)->elts[12]; -c_731431.elts[12] = ((closureN)self_73658)->elts[13]; -c_731431.elts[13] = ((closureN)self_73658)->elts[14]; -c_731431.elts[14] = ((closureN)self_73658)->elts[15]; -c_731431.elts[15] = put_91lemmas_67_73146; -c_731431.elts[16] = ((closureN)self_73658)->elts[16]; -c_731431.elts[17] = ((closureN)self_73658)->elts[17]; -c_731431.elts[18] = ((closureN)self_73658)->elts[18]; -c_731431.elts[19] = ((closureN)self_73658)->elts[19]; -c_731431.elts[20] = ((closureN)self_73658)->elts[20]; -c_731431.elts[21] = ((closureN)self_73658)->elts[21]; -c_731431.elts[22] = ((closureN)self_73658)->elts[22]; -c_731431.elts[23] = ((closureN)self_73658)->elts[23]; -c_731431.elts[24] = ((closureN)self_73658)->elts[24]; -c_731431.elts[25] = ((closureN)self_73658)->elts[25]; -c_731431.elts[26] = ((closureN)self_73658)->elts[26]; -c_731431.elts[27] = ((closureN)self_73658)->elts[27]; -c_731431.elts[28] = ((closureN)self_73658)->elts[28]; -c_731431.elts[29] = ((closureN)self_73658)->elts[29]; -c_731431.elts[30] = ((closureN)self_73658)->elts[30]; -c_731431.elts[31] = ((closureN)self_73658)->elts[31]; -c_731431.elts[32] = ((closureN)self_73658)->elts[32]; -c_731431.elts[33] = ((closureN)self_73658)->elts[33]; -c_731431.elts[34] = ((closureN)self_73658)->elts[34]; -c_731431.elts[35] = ((closureN)self_73658)->elts[35]; -c_731431.elts[36] = ((closureN)self_73658)->elts[36]; -c_731431.elts[37] = ((closureN)self_73658)->elts[37]; - - -make_cell(c_735087,((closureN)self_73658)->elts[8]); -return_closcall1(data,(closure)&c_731431, &c_735087);; -} - -static void __lambda_462(void *data, int argc, object self_73659, object get_91lemmas_73145) { - -closureN_type c_731433; -c_731433.hdr.mark = gc_color_red; - c_731433.hdr.grayed = 0; -c_731433.tag = closureN_tag; - c_731433.fn = (function_type)__lambda_461; -c_731433.num_args = 1; -c_731433.num_elt = 38; -c_731433.elts = (object *)alloca(sizeof(object) * 38); -c_731433.elts[0] = ((closureN)self_73659)->elts[0]; -c_731433.elts[1] = ((closureN)self_73659)->elts[1]; -c_731433.elts[2] = ((closureN)self_73659)->elts[2]; -c_731433.elts[3] = ((closureN)self_73659)->elts[3]; -c_731433.elts[4] = ((closureN)self_73659)->elts[4]; -c_731433.elts[5] = ((closureN)self_73659)->elts[5]; -c_731433.elts[6] = ((closureN)self_73659)->elts[6]; -c_731433.elts[7] = ((closureN)self_73659)->elts[7]; -c_731433.elts[8] = get_91lemmas_73145; -c_731433.elts[9] = ((closureN)self_73659)->elts[9]; -c_731433.elts[10] = ((closureN)self_73659)->elts[10]; -c_731433.elts[11] = ((closureN)self_73659)->elts[11]; -c_731433.elts[12] = ((closureN)self_73659)->elts[12]; -c_731433.elts[13] = ((closureN)self_73659)->elts[13]; -c_731433.elts[14] = ((closureN)self_73659)->elts[14]; -c_731433.elts[15] = ((closureN)self_73659)->elts[15]; -c_731433.elts[16] = ((closureN)self_73659)->elts[16]; -c_731433.elts[17] = ((closureN)self_73659)->elts[17]; -c_731433.elts[18] = ((closureN)self_73659)->elts[18]; -c_731433.elts[19] = ((closureN)self_73659)->elts[19]; -c_731433.elts[20] = ((closureN)self_73659)->elts[20]; -c_731433.elts[21] = ((closureN)self_73659)->elts[21]; -c_731433.elts[22] = ((closureN)self_73659)->elts[22]; -c_731433.elts[23] = ((closureN)self_73659)->elts[23]; -c_731433.elts[24] = ((closureN)self_73659)->elts[24]; -c_731433.elts[25] = ((closureN)self_73659)->elts[25]; -c_731433.elts[26] = ((closureN)self_73659)->elts[26]; -c_731433.elts[27] = ((closureN)self_73659)->elts[27]; -c_731433.elts[28] = ((closureN)self_73659)->elts[28]; -c_731433.elts[29] = ((closureN)self_73659)->elts[29]; -c_731433.elts[30] = ((closureN)self_73659)->elts[30]; -c_731433.elts[31] = ((closureN)self_73659)->elts[31]; -c_731433.elts[32] = ((closureN)self_73659)->elts[32]; -c_731433.elts[33] = ((closureN)self_73659)->elts[33]; -c_731433.elts[34] = ((closureN)self_73659)->elts[34]; -c_731433.elts[35] = ((closureN)self_73659)->elts[35]; -c_731433.elts[36] = ((closureN)self_73659)->elts[36]; -c_731433.elts[37] = ((closureN)self_73659)->elts[37]; - - -make_cell(c_735083,((closureN)self_73659)->elts[8]); -return_closcall1(data,(closure)&c_731433, &c_735083);; -} - -static void __lambda_461(void *data, int argc, object self_73660, object get_91name_73144) { - -closureN_type c_731435; -c_731435.hdr.mark = gc_color_red; - c_731435.hdr.grayed = 0; -c_731435.tag = closureN_tag; - c_731435.fn = (function_type)__lambda_460; -c_731435.num_args = 1; -c_731435.num_elt = 38; -c_731435.elts = (object *)alloca(sizeof(object) * 38); -c_731435.elts[0] = ((closureN)self_73660)->elts[0]; -c_731435.elts[1] = ((closureN)self_73660)->elts[1]; -c_731435.elts[2] = ((closureN)self_73660)->elts[2]; -c_731435.elts[3] = ((closureN)self_73660)->elts[3]; -c_731435.elts[4] = ((closureN)self_73660)->elts[4]; -c_731435.elts[5] = ((closureN)self_73660)->elts[5]; -c_731435.elts[6] = ((closureN)self_73660)->elts[6]; -c_731435.elts[7] = ((closureN)self_73660)->elts[7]; -c_731435.elts[8] = ((closureN)self_73660)->elts[8]; -c_731435.elts[9] = get_91name_73144; -c_731435.elts[10] = ((closureN)self_73660)->elts[9]; -c_731435.elts[11] = ((closureN)self_73660)->elts[10]; -c_731435.elts[12] = ((closureN)self_73660)->elts[11]; -c_731435.elts[13] = ((closureN)self_73660)->elts[12]; -c_731435.elts[14] = ((closureN)self_73660)->elts[13]; -c_731435.elts[15] = ((closureN)self_73660)->elts[14]; -c_731435.elts[16] = ((closureN)self_73660)->elts[15]; -c_731435.elts[17] = ((closureN)self_73660)->elts[16]; -c_731435.elts[18] = ((closureN)self_73660)->elts[17]; -c_731435.elts[19] = ((closureN)self_73660)->elts[18]; -c_731435.elts[20] = ((closureN)self_73660)->elts[19]; -c_731435.elts[21] = ((closureN)self_73660)->elts[20]; -c_731435.elts[22] = ((closureN)self_73660)->elts[21]; -c_731435.elts[23] = ((closureN)self_73660)->elts[23]; -c_731435.elts[24] = ((closureN)self_73660)->elts[24]; -c_731435.elts[25] = ((closureN)self_73660)->elts[25]; -c_731435.elts[26] = ((closureN)self_73660)->elts[26]; -c_731435.elts[27] = ((closureN)self_73660)->elts[27]; -c_731435.elts[28] = ((closureN)self_73660)->elts[28]; -c_731435.elts[29] = ((closureN)self_73660)->elts[29]; -c_731435.elts[30] = ((closureN)self_73660)->elts[30]; -c_731435.elts[31] = ((closureN)self_73660)->elts[31]; -c_731435.elts[32] = ((closureN)self_73660)->elts[32]; -c_731435.elts[33] = ((closureN)self_73660)->elts[33]; -c_731435.elts[34] = ((closureN)self_73660)->elts[34]; -c_731435.elts[35] = ((closureN)self_73660)->elts[35]; -c_731435.elts[36] = ((closureN)self_73660)->elts[36]; -c_731435.elts[37] = ((closureN)self_73660)->elts[37]; - - -make_cell(c_735079,((closureN)self_73660)->elts[22]); -return_closcall1(data,(closure)&c_731435, &c_735079);; -} - -static void __lambda_460(void *data, int argc, object self_73661, object symbol_91record_91equal_127_73143) { - -closureN_type c_731437; -c_731437.hdr.mark = gc_color_red; - c_731437.hdr.grayed = 0; -c_731437.tag = closureN_tag; - c_731437.fn = (function_type)__lambda_459; -c_731437.num_args = 1; -c_731437.num_elt = 38; -c_731437.elts = (object *)alloca(sizeof(object) * 38); -c_731437.elts[0] = ((closureN)self_73661)->elts[0]; -c_731437.elts[1] = ((closureN)self_73661)->elts[1]; -c_731437.elts[2] = ((closureN)self_73661)->elts[2]; -c_731437.elts[3] = ((closureN)self_73661)->elts[3]; -c_731437.elts[4] = ((closureN)self_73661)->elts[4]; -c_731437.elts[5] = ((closureN)self_73661)->elts[5]; -c_731437.elts[6] = ((closureN)self_73661)->elts[6]; -c_731437.elts[7] = ((closureN)self_73661)->elts[7]; -c_731437.elts[8] = ((closureN)self_73661)->elts[8]; -c_731437.elts[9] = ((closureN)self_73661)->elts[9]; -c_731437.elts[10] = ((closureN)self_73661)->elts[10]; -c_731437.elts[11] = ((closureN)self_73661)->elts[11]; -c_731437.elts[12] = ((closureN)self_73661)->elts[12]; -c_731437.elts[13] = ((closureN)self_73661)->elts[13]; -c_731437.elts[14] = ((closureN)self_73661)->elts[14]; -c_731437.elts[15] = ((closureN)self_73661)->elts[15]; -c_731437.elts[16] = ((closureN)self_73661)->elts[16]; -c_731437.elts[17] = ((closureN)self_73661)->elts[17]; -c_731437.elts[18] = ((closureN)self_73661)->elts[18]; -c_731437.elts[19] = ((closureN)self_73661)->elts[19]; -c_731437.elts[20] = ((closureN)self_73661)->elts[20]; -c_731437.elts[21] = ((closureN)self_73661)->elts[21]; -c_731437.elts[22] = ((closureN)self_73661)->elts[22]; -c_731437.elts[23] = symbol_91record_91equal_127_73143; -c_731437.elts[24] = ((closureN)self_73661)->elts[23]; -c_731437.elts[25] = ((closureN)self_73661)->elts[24]; -c_731437.elts[26] = ((closureN)self_73661)->elts[25]; -c_731437.elts[27] = ((closureN)self_73661)->elts[26]; -c_731437.elts[28] = ((closureN)self_73661)->elts[27]; -c_731437.elts[29] = ((closureN)self_73661)->elts[29]; -c_731437.elts[30] = ((closureN)self_73661)->elts[30]; -c_731437.elts[31] = ((closureN)self_73661)->elts[31]; -c_731437.elts[32] = ((closureN)self_73661)->elts[32]; -c_731437.elts[33] = ((closureN)self_73661)->elts[33]; -c_731437.elts[34] = ((closureN)self_73661)->elts[34]; -c_731437.elts[35] = ((closureN)self_73661)->elts[35]; -c_731437.elts[36] = ((closureN)self_73661)->elts[36]; -c_731437.elts[37] = ((closureN)self_73661)->elts[37]; - - -make_cell(c_735075,((closureN)self_73661)->elts[28]); -return_closcall1(data,(closure)&c_731437, &c_735075);; -} - -static void __lambda_459(void *data, int argc, object self_73662, object test_73142) { - -closureN_type c_731439; -c_731439.hdr.mark = gc_color_red; - c_731439.hdr.grayed = 0; -c_731439.tag = closureN_tag; - c_731439.fn = (function_type)__lambda_458; -c_731439.num_args = 1; -c_731439.num_elt = 38; -c_731439.elts = (object *)alloca(sizeof(object) * 38); -c_731439.elts[0] = ((closureN)self_73662)->elts[0]; -c_731439.elts[1] = ((closureN)self_73662)->elts[1]; -c_731439.elts[2] = ((closureN)self_73662)->elts[2]; -c_731439.elts[3] = ((closureN)self_73662)->elts[3]; -c_731439.elts[4] = ((closureN)self_73662)->elts[4]; -c_731439.elts[5] = ((closureN)self_73662)->elts[5]; -c_731439.elts[6] = ((closureN)self_73662)->elts[6]; -c_731439.elts[7] = ((closureN)self_73662)->elts[7]; -c_731439.elts[8] = ((closureN)self_73662)->elts[8]; -c_731439.elts[9] = ((closureN)self_73662)->elts[9]; -c_731439.elts[10] = ((closureN)self_73662)->elts[10]; -c_731439.elts[11] = ((closureN)self_73662)->elts[11]; -c_731439.elts[12] = ((closureN)self_73662)->elts[12]; -c_731439.elts[13] = ((closureN)self_73662)->elts[13]; -c_731439.elts[14] = ((closureN)self_73662)->elts[14]; -c_731439.elts[15] = ((closureN)self_73662)->elts[15]; -c_731439.elts[16] = ((closureN)self_73662)->elts[16]; -c_731439.elts[17] = ((closureN)self_73662)->elts[17]; -c_731439.elts[18] = ((closureN)self_73662)->elts[18]; -c_731439.elts[19] = ((closureN)self_73662)->elts[19]; -c_731439.elts[20] = ((closureN)self_73662)->elts[20]; -c_731439.elts[21] = ((closureN)self_73662)->elts[21]; -c_731439.elts[22] = ((closureN)self_73662)->elts[22]; -c_731439.elts[23] = ((closureN)self_73662)->elts[23]; -c_731439.elts[24] = ((closureN)self_73662)->elts[24]; -c_731439.elts[25] = ((closureN)self_73662)->elts[25]; -c_731439.elts[26] = ((closureN)self_73662)->elts[26]; -c_731439.elts[27] = ((closureN)self_73662)->elts[27]; -c_731439.elts[28] = ((closureN)self_73662)->elts[28]; -c_731439.elts[29] = test_73142; -c_731439.elts[30] = ((closureN)self_73662)->elts[29]; -c_731439.elts[31] = ((closureN)self_73662)->elts[30]; -c_731439.elts[32] = ((closureN)self_73662)->elts[32]; -c_731439.elts[33] = ((closureN)self_73662)->elts[33]; -c_731439.elts[34] = ((closureN)self_73662)->elts[34]; -c_731439.elts[35] = ((closureN)self_73662)->elts[35]; -c_731439.elts[36] = ((closureN)self_73662)->elts[36]; -c_731439.elts[37] = ((closureN)self_73662)->elts[37]; - - -make_cell(c_735071,((closureN)self_73662)->elts[31]); -return_closcall1(data,(closure)&c_731439, &c_735071);; -} - -static void __lambda_458(void *data, int argc, object self_73663, object translate_91alist_73141) { - -closureN_type c_731441; -c_731441.hdr.mark = gc_color_red; - c_731441.hdr.grayed = 0; -c_731441.tag = closureN_tag; - c_731441.fn = (function_type)__lambda_457; -c_731441.num_args = 1; -c_731441.num_elt = 38; -c_731441.elts = (object *)alloca(sizeof(object) * 38); -c_731441.elts[0] = ((closureN)self_73663)->elts[0]; -c_731441.elts[1] = ((closureN)self_73663)->elts[1]; -c_731441.elts[2] = ((closureN)self_73663)->elts[2]; -c_731441.elts[3] = ((closureN)self_73663)->elts[4]; -c_731441.elts[4] = ((closureN)self_73663)->elts[5]; -c_731441.elts[5] = ((closureN)self_73663)->elts[6]; -c_731441.elts[6] = ((closureN)self_73663)->elts[7]; -c_731441.elts[7] = ((closureN)self_73663)->elts[8]; -c_731441.elts[8] = ((closureN)self_73663)->elts[9]; -c_731441.elts[9] = ((closureN)self_73663)->elts[10]; -c_731441.elts[10] = ((closureN)self_73663)->elts[11]; -c_731441.elts[11] = ((closureN)self_73663)->elts[12]; -c_731441.elts[12] = ((closureN)self_73663)->elts[13]; -c_731441.elts[13] = ((closureN)self_73663)->elts[14]; -c_731441.elts[14] = ((closureN)self_73663)->elts[15]; -c_731441.elts[15] = ((closureN)self_73663)->elts[16]; -c_731441.elts[16] = ((closureN)self_73663)->elts[17]; -c_731441.elts[17] = ((closureN)self_73663)->elts[18]; -c_731441.elts[18] = ((closureN)self_73663)->elts[19]; -c_731441.elts[19] = ((closureN)self_73663)->elts[20]; -c_731441.elts[20] = ((closureN)self_73663)->elts[21]; -c_731441.elts[21] = ((closureN)self_73663)->elts[22]; -c_731441.elts[22] = ((closureN)self_73663)->elts[23]; -c_731441.elts[23] = ((closureN)self_73663)->elts[24]; -c_731441.elts[24] = ((closureN)self_73663)->elts[25]; -c_731441.elts[25] = ((closureN)self_73663)->elts[26]; -c_731441.elts[26] = ((closureN)self_73663)->elts[27]; -c_731441.elts[27] = ((closureN)self_73663)->elts[28]; -c_731441.elts[28] = ((closureN)self_73663)->elts[29]; -c_731441.elts[29] = ((closureN)self_73663)->elts[30]; -c_731441.elts[30] = ((closureN)self_73663)->elts[31]; -c_731441.elts[31] = translate_91alist_73141; -c_731441.elts[32] = ((closureN)self_73663)->elts[32]; -c_731441.elts[33] = ((closureN)self_73663)->elts[33]; -c_731441.elts[34] = ((closureN)self_73663)->elts[34]; -c_731441.elts[35] = ((closureN)self_73663)->elts[35]; -c_731441.elts[36] = ((closureN)self_73663)->elts[36]; -c_731441.elts[37] = ((closureN)self_73663)->elts[37]; - - -make_cell(c_735067,((closureN)self_73663)->elts[3]); -return_closcall1(data,(closure)&c_731441, &c_735067);; -} - -static void __lambda_457(void *data, int argc, object self_73664, object apply_91subst_73140) { - -closureN_type c_731443; -c_731443.hdr.mark = gc_color_red; - c_731443.hdr.grayed = 0; -c_731443.tag = closureN_tag; - c_731443.fn = (function_type)__lambda_456; -c_731443.num_args = 1; -c_731443.num_elt = 38; -c_731443.elts = (object *)alloca(sizeof(object) * 38); -c_731443.elts[0] = ((closureN)self_73664)->elts[0]; -c_731443.elts[1] = ((closureN)self_73664)->elts[1]; -c_731443.elts[2] = ((closureN)self_73664)->elts[2]; -c_731443.elts[3] = apply_91subst_73140; -c_731443.elts[4] = ((closureN)self_73664)->elts[4]; -c_731443.elts[5] = ((closureN)self_73664)->elts[5]; -c_731443.elts[6] = ((closureN)self_73664)->elts[6]; -c_731443.elts[7] = ((closureN)self_73664)->elts[7]; -c_731443.elts[8] = ((closureN)self_73664)->elts[8]; -c_731443.elts[9] = ((closureN)self_73664)->elts[9]; -c_731443.elts[10] = ((closureN)self_73664)->elts[10]; -c_731443.elts[11] = ((closureN)self_73664)->elts[11]; -c_731443.elts[12] = ((closureN)self_73664)->elts[12]; -c_731443.elts[13] = ((closureN)self_73664)->elts[13]; -c_731443.elts[14] = ((closureN)self_73664)->elts[14]; -c_731443.elts[15] = ((closureN)self_73664)->elts[15]; -c_731443.elts[16] = ((closureN)self_73664)->elts[16]; -c_731443.elts[17] = ((closureN)self_73664)->elts[17]; -c_731443.elts[18] = ((closureN)self_73664)->elts[18]; -c_731443.elts[19] = ((closureN)self_73664)->elts[19]; -c_731443.elts[20] = ((closureN)self_73664)->elts[20]; -c_731443.elts[21] = ((closureN)self_73664)->elts[21]; -c_731443.elts[22] = ((closureN)self_73664)->elts[22]; -c_731443.elts[23] = ((closureN)self_73664)->elts[23]; -c_731443.elts[24] = ((closureN)self_73664)->elts[24]; -c_731443.elts[25] = ((closureN)self_73664)->elts[25]; -c_731443.elts[26] = ((closureN)self_73664)->elts[26]; -c_731443.elts[27] = ((closureN)self_73664)->elts[27]; -c_731443.elts[28] = ((closureN)self_73664)->elts[28]; -c_731443.elts[29] = ((closureN)self_73664)->elts[29]; -c_731443.elts[30] = ((closureN)self_73664)->elts[30]; -c_731443.elts[31] = ((closureN)self_73664)->elts[31]; -c_731443.elts[32] = ((closureN)self_73664)->elts[32]; -c_731443.elts[33] = ((closureN)self_73664)->elts[33]; -c_731443.elts[34] = ((closureN)self_73664)->elts[34]; -c_731443.elts[35] = ((closureN)self_73664)->elts[35]; -c_731443.elts[36] = ((closureN)self_73664)->elts[36]; -c_731443.elts[37] = ((closureN)self_73664)->elts[37]; - - -make_cell(c_735063,((closureN)self_73664)->elts[3]); -return_closcall1(data,(closure)&c_731443, &c_735063);; -} - -static void __lambda_456(void *data, int argc, object self_73665, object apply_91subst_91lst_73139) { - -closureN_type c_731445; -c_731445.hdr.mark = gc_color_red; - c_731445.hdr.grayed = 0; -c_731445.tag = closureN_tag; - c_731445.fn = (function_type)__lambda_455; -c_731445.num_args = 1; -c_731445.num_elt = 38; -c_731445.elts = (object *)alloca(sizeof(object) * 38); -c_731445.elts[0] = ((closureN)self_73665)->elts[0]; -c_731445.elts[1] = ((closureN)self_73665)->elts[1]; -c_731445.elts[2] = ((closureN)self_73665)->elts[2]; -c_731445.elts[3] = ((closureN)self_73665)->elts[3]; -c_731445.elts[4] = apply_91subst_91lst_73139; -c_731445.elts[5] = ((closureN)self_73665)->elts[4]; -c_731445.elts[6] = ((closureN)self_73665)->elts[5]; -c_731445.elts[7] = ((closureN)self_73665)->elts[6]; -c_731445.elts[8] = ((closureN)self_73665)->elts[7]; -c_731445.elts[9] = ((closureN)self_73665)->elts[8]; -c_731445.elts[10] = ((closureN)self_73665)->elts[9]; -c_731445.elts[11] = ((closureN)self_73665)->elts[10]; -c_731445.elts[12] = ((closureN)self_73665)->elts[11]; -c_731445.elts[13] = ((closureN)self_73665)->elts[12]; -c_731445.elts[14] = ((closureN)self_73665)->elts[13]; -c_731445.elts[15] = ((closureN)self_73665)->elts[14]; -c_731445.elts[16] = ((closureN)self_73665)->elts[15]; -c_731445.elts[17] = ((closureN)self_73665)->elts[16]; -c_731445.elts[18] = ((closureN)self_73665)->elts[17]; -c_731445.elts[19] = ((closureN)self_73665)->elts[18]; -c_731445.elts[20] = ((closureN)self_73665)->elts[19]; -c_731445.elts[21] = ((closureN)self_73665)->elts[20]; -c_731445.elts[22] = ((closureN)self_73665)->elts[21]; -c_731445.elts[23] = ((closureN)self_73665)->elts[22]; -c_731445.elts[24] = ((closureN)self_73665)->elts[23]; -c_731445.elts[25] = ((closureN)self_73665)->elts[25]; -c_731445.elts[26] = ((closureN)self_73665)->elts[26]; -c_731445.elts[27] = ((closureN)self_73665)->elts[27]; -c_731445.elts[28] = ((closureN)self_73665)->elts[28]; -c_731445.elts[29] = ((closureN)self_73665)->elts[29]; -c_731445.elts[30] = ((closureN)self_73665)->elts[30]; -c_731445.elts[31] = ((closureN)self_73665)->elts[31]; -c_731445.elts[32] = ((closureN)self_73665)->elts[32]; -c_731445.elts[33] = ((closureN)self_73665)->elts[33]; -c_731445.elts[34] = ((closureN)self_73665)->elts[34]; -c_731445.elts[35] = ((closureN)self_73665)->elts[35]; -c_731445.elts[36] = ((closureN)self_73665)->elts[36]; -c_731445.elts[37] = ((closureN)self_73665)->elts[37]; - - -make_cell(c_735059,((closureN)self_73665)->elts[24]); -return_closcall1(data,(closure)&c_731445, &c_735059);; -} - -static void __lambda_455(void *data, int argc, object self_73666, object tautp_73138) { - -closureN_type c_731447; -c_731447.hdr.mark = gc_color_red; - c_731447.hdr.grayed = 0; -c_731447.tag = closureN_tag; - c_731447.fn = (function_type)__lambda_454; -c_731447.num_args = 1; -c_731447.num_elt = 38; -c_731447.elts = (object *)alloca(sizeof(object) * 38); -c_731447.elts[0] = ((closureN)self_73666)->elts[0]; -c_731447.elts[1] = ((closureN)self_73666)->elts[1]; -c_731447.elts[2] = ((closureN)self_73666)->elts[2]; -c_731447.elts[3] = ((closureN)self_73666)->elts[3]; -c_731447.elts[4] = ((closureN)self_73666)->elts[4]; -c_731447.elts[5] = ((closureN)self_73666)->elts[5]; -c_731447.elts[6] = ((closureN)self_73666)->elts[6]; -c_731447.elts[7] = ((closureN)self_73666)->elts[7]; -c_731447.elts[8] = ((closureN)self_73666)->elts[8]; -c_731447.elts[9] = ((closureN)self_73666)->elts[9]; -c_731447.elts[10] = ((closureN)self_73666)->elts[10]; -c_731447.elts[11] = ((closureN)self_73666)->elts[11]; -c_731447.elts[12] = ((closureN)self_73666)->elts[12]; -c_731447.elts[13] = ((closureN)self_73666)->elts[13]; -c_731447.elts[14] = ((closureN)self_73666)->elts[14]; -c_731447.elts[15] = ((closureN)self_73666)->elts[15]; -c_731447.elts[16] = ((closureN)self_73666)->elts[16]; -c_731447.elts[17] = ((closureN)self_73666)->elts[17]; -c_731447.elts[18] = ((closureN)self_73666)->elts[18]; -c_731447.elts[19] = ((closureN)self_73666)->elts[19]; -c_731447.elts[20] = ((closureN)self_73666)->elts[20]; -c_731447.elts[21] = ((closureN)self_73666)->elts[21]; -c_731447.elts[22] = ((closureN)self_73666)->elts[22]; -c_731447.elts[23] = ((closureN)self_73666)->elts[23]; -c_731447.elts[24] = tautp_73138; -c_731447.elts[25] = ((closureN)self_73666)->elts[25]; -c_731447.elts[26] = ((closureN)self_73666)->elts[26]; -c_731447.elts[27] = ((closureN)self_73666)->elts[27]; -c_731447.elts[28] = ((closureN)self_73666)->elts[28]; -c_731447.elts[29] = ((closureN)self_73666)->elts[29]; -c_731447.elts[30] = ((closureN)self_73666)->elts[30]; -c_731447.elts[31] = ((closureN)self_73666)->elts[31]; -c_731447.elts[32] = ((closureN)self_73666)->elts[32]; -c_731447.elts[33] = ((closureN)self_73666)->elts[33]; -c_731447.elts[34] = ((closureN)self_73666)->elts[34]; -c_731447.elts[35] = ((closureN)self_73666)->elts[35]; -c_731447.elts[36] = ((closureN)self_73666)->elts[36]; -c_731447.elts[37] = ((closureN)self_73666)->elts[37]; - - -make_cell(c_735055,((closureN)self_73666)->elts[24]); -return_closcall1(data,(closure)&c_731447, &c_735055);; -} - -static void __lambda_454(void *data, int argc, object self_73667, object tautologyp_73137) { - -closureN_type c_731449; -c_731449.hdr.mark = gc_color_red; - c_731449.hdr.grayed = 0; -c_731449.tag = closureN_tag; - c_731449.fn = (function_type)__lambda_453; -c_731449.num_args = 1; -c_731449.num_elt = 38; -c_731449.elts = (object *)alloca(sizeof(object) * 38); -c_731449.elts[0] = ((closureN)self_73667)->elts[0]; -c_731449.elts[1] = ((closureN)self_73667)->elts[1]; -c_731449.elts[2] = ((closureN)self_73667)->elts[2]; -c_731449.elts[3] = ((closureN)self_73667)->elts[3]; -c_731449.elts[4] = ((closureN)self_73667)->elts[4]; -c_731449.elts[5] = ((closureN)self_73667)->elts[5]; -c_731449.elts[6] = ((closureN)self_73667)->elts[6]; -c_731449.elts[7] = ((closureN)self_73667)->elts[7]; -c_731449.elts[8] = ((closureN)self_73667)->elts[8]; -c_731449.elts[9] = ((closureN)self_73667)->elts[9]; -c_731449.elts[10] = ((closureN)self_73667)->elts[11]; -c_731449.elts[11] = ((closureN)self_73667)->elts[12]; -c_731449.elts[12] = ((closureN)self_73667)->elts[13]; -c_731449.elts[13] = ((closureN)self_73667)->elts[14]; -c_731449.elts[14] = ((closureN)self_73667)->elts[15]; -c_731449.elts[15] = ((closureN)self_73667)->elts[16]; -c_731449.elts[16] = ((closureN)self_73667)->elts[17]; -c_731449.elts[17] = ((closureN)self_73667)->elts[18]; -c_731449.elts[18] = ((closureN)self_73667)->elts[19]; -c_731449.elts[19] = ((closureN)self_73667)->elts[20]; -c_731449.elts[20] = ((closureN)self_73667)->elts[21]; -c_731449.elts[21] = ((closureN)self_73667)->elts[22]; -c_731449.elts[22] = ((closureN)self_73667)->elts[23]; -c_731449.elts[23] = tautologyp_73137; -c_731449.elts[24] = ((closureN)self_73667)->elts[24]; -c_731449.elts[25] = ((closureN)self_73667)->elts[25]; -c_731449.elts[26] = ((closureN)self_73667)->elts[26]; -c_731449.elts[27] = ((closureN)self_73667)->elts[27]; -c_731449.elts[28] = ((closureN)self_73667)->elts[28]; -c_731449.elts[29] = ((closureN)self_73667)->elts[29]; -c_731449.elts[30] = ((closureN)self_73667)->elts[30]; -c_731449.elts[31] = ((closureN)self_73667)->elts[31]; -c_731449.elts[32] = ((closureN)self_73667)->elts[32]; -c_731449.elts[33] = ((closureN)self_73667)->elts[33]; -c_731449.elts[34] = ((closureN)self_73667)->elts[34]; -c_731449.elts[35] = ((closureN)self_73667)->elts[35]; -c_731449.elts[36] = ((closureN)self_73667)->elts[36]; -c_731449.elts[37] = ((closureN)self_73667)->elts[37]; - - -make_cell(c_735051,((closureN)self_73667)->elts[10]); -return_closcall1(data,(closure)&c_731449, &c_735051);; -} - -static void __lambda_453(void *data, int argc, object self_73668, object if_91constructor_73136) { - -closureN_type c_731451; -c_731451.hdr.mark = gc_color_red; - c_731451.hdr.grayed = 0; -c_731451.tag = closureN_tag; - c_731451.fn = (function_type)__lambda_452; -c_731451.num_args = 1; -c_731451.num_elt = 38; -c_731451.elts = (object *)alloca(sizeof(object) * 38); -c_731451.elts[0] = ((closureN)self_73668)->elts[0]; -c_731451.elts[1] = ((closureN)self_73668)->elts[1]; -c_731451.elts[2] = ((closureN)self_73668)->elts[2]; -c_731451.elts[3] = ((closureN)self_73668)->elts[3]; -c_731451.elts[4] = ((closureN)self_73668)->elts[4]; -c_731451.elts[5] = ((closureN)self_73668)->elts[5]; -c_731451.elts[6] = ((closureN)self_73668)->elts[6]; -c_731451.elts[7] = ((closureN)self_73668)->elts[7]; -c_731451.elts[8] = ((closureN)self_73668)->elts[8]; -c_731451.elts[9] = ((closureN)self_73668)->elts[9]; -c_731451.elts[10] = if_91constructor_73136; -c_731451.elts[11] = ((closureN)self_73668)->elts[10]; -c_731451.elts[12] = ((closureN)self_73668)->elts[11]; -c_731451.elts[13] = ((closureN)self_73668)->elts[12]; -c_731451.elts[14] = ((closureN)self_73668)->elts[13]; -c_731451.elts[15] = ((closureN)self_73668)->elts[14]; -c_731451.elts[16] = ((closureN)self_73668)->elts[15]; -c_731451.elts[17] = ((closureN)self_73668)->elts[16]; -c_731451.elts[18] = ((closureN)self_73668)->elts[17]; -c_731451.elts[19] = ((closureN)self_73668)->elts[19]; -c_731451.elts[20] = ((closureN)self_73668)->elts[20]; -c_731451.elts[21] = ((closureN)self_73668)->elts[21]; -c_731451.elts[22] = ((closureN)self_73668)->elts[22]; -c_731451.elts[23] = ((closureN)self_73668)->elts[23]; -c_731451.elts[24] = ((closureN)self_73668)->elts[24]; -c_731451.elts[25] = ((closureN)self_73668)->elts[25]; -c_731451.elts[26] = ((closureN)self_73668)->elts[26]; -c_731451.elts[27] = ((closureN)self_73668)->elts[27]; -c_731451.elts[28] = ((closureN)self_73668)->elts[28]; -c_731451.elts[29] = ((closureN)self_73668)->elts[29]; -c_731451.elts[30] = ((closureN)self_73668)->elts[30]; -c_731451.elts[31] = ((closureN)self_73668)->elts[31]; -c_731451.elts[32] = ((closureN)self_73668)->elts[32]; -c_731451.elts[33] = ((closureN)self_73668)->elts[33]; -c_731451.elts[34] = ((closureN)self_73668)->elts[34]; -c_731451.elts[35] = ((closureN)self_73668)->elts[35]; -c_731451.elts[36] = ((closureN)self_73668)->elts[36]; -c_731451.elts[37] = ((closureN)self_73668)->elts[37]; - - -make_cell(c_735047,((closureN)self_73668)->elts[18]); -return_closcall1(data,(closure)&c_731451, &c_735047);; -} - -static void __lambda_452(void *data, int argc, object self_73669, object rewrite_91count_73135) { - -closureN_type c_731453; -c_731453.hdr.mark = gc_color_red; - c_731453.hdr.grayed = 0; -c_731453.tag = closureN_tag; - c_731453.fn = (function_type)__lambda_451; -c_731453.num_args = 1; -c_731453.num_elt = 38; -c_731453.elts = (object *)alloca(sizeof(object) * 38); -c_731453.elts[0] = ((closureN)self_73669)->elts[0]; -c_731453.elts[1] = ((closureN)self_73669)->elts[1]; -c_731453.elts[2] = ((closureN)self_73669)->elts[2]; -c_731453.elts[3] = ((closureN)self_73669)->elts[3]; -c_731453.elts[4] = ((closureN)self_73669)->elts[4]; -c_731453.elts[5] = ((closureN)self_73669)->elts[5]; -c_731453.elts[6] = ((closureN)self_73669)->elts[6]; -c_731453.elts[7] = ((closureN)self_73669)->elts[7]; -c_731453.elts[8] = ((closureN)self_73669)->elts[8]; -c_731453.elts[9] = ((closureN)self_73669)->elts[9]; -c_731453.elts[10] = ((closureN)self_73669)->elts[10]; -c_731453.elts[11] = ((closureN)self_73669)->elts[11]; -c_731453.elts[12] = ((closureN)self_73669)->elts[12]; -c_731453.elts[13] = ((closureN)self_73669)->elts[13]; -c_731453.elts[14] = ((closureN)self_73669)->elts[14]; -c_731453.elts[15] = ((closureN)self_73669)->elts[15]; -c_731453.elts[16] = ((closureN)self_73669)->elts[16]; -c_731453.elts[17] = ((closureN)self_73669)->elts[18]; -c_731453.elts[18] = rewrite_91count_73135; -c_731453.elts[19] = ((closureN)self_73669)->elts[19]; -c_731453.elts[20] = ((closureN)self_73669)->elts[20]; -c_731453.elts[21] = ((closureN)self_73669)->elts[21]; -c_731453.elts[22] = ((closureN)self_73669)->elts[22]; -c_731453.elts[23] = ((closureN)self_73669)->elts[23]; -c_731453.elts[24] = ((closureN)self_73669)->elts[24]; -c_731453.elts[25] = ((closureN)self_73669)->elts[25]; -c_731453.elts[26] = ((closureN)self_73669)->elts[26]; -c_731453.elts[27] = ((closureN)self_73669)->elts[27]; -c_731453.elts[28] = ((closureN)self_73669)->elts[28]; -c_731453.elts[29] = ((closureN)self_73669)->elts[29]; -c_731453.elts[30] = ((closureN)self_73669)->elts[30]; -c_731453.elts[31] = ((closureN)self_73669)->elts[31]; -c_731453.elts[32] = ((closureN)self_73669)->elts[32]; -c_731453.elts[33] = ((closureN)self_73669)->elts[33]; -c_731453.elts[34] = ((closureN)self_73669)->elts[34]; -c_731453.elts[35] = ((closureN)self_73669)->elts[35]; -c_731453.elts[36] = ((closureN)self_73669)->elts[36]; -c_731453.elts[37] = ((closureN)self_73669)->elts[37]; - - -make_cell(c_735043,((closureN)self_73669)->elts[17]); -return_closcall1(data,(closure)&c_731453, &c_735043);; -} - -static void __lambda_451(void *data, int argc, object self_73670, object rewrite_73134) { - -closureN_type c_731455; -c_731455.hdr.mark = gc_color_red; - c_731455.hdr.grayed = 0; -c_731455.tag = closureN_tag; - c_731455.fn = (function_type)__lambda_450; -c_731455.num_args = 1; -c_731455.num_elt = 38; -c_731455.elts = (object *)alloca(sizeof(object) * 38); -c_731455.elts[0] = ((closureN)self_73670)->elts[0]; -c_731455.elts[1] = ((closureN)self_73670)->elts[1]; -c_731455.elts[2] = ((closureN)self_73670)->elts[2]; -c_731455.elts[3] = ((closureN)self_73670)->elts[3]; -c_731455.elts[4] = ((closureN)self_73670)->elts[4]; -c_731455.elts[5] = ((closureN)self_73670)->elts[5]; -c_731455.elts[6] = ((closureN)self_73670)->elts[6]; -c_731455.elts[7] = ((closureN)self_73670)->elts[7]; -c_731455.elts[8] = ((closureN)self_73670)->elts[8]; -c_731455.elts[9] = ((closureN)self_73670)->elts[9]; -c_731455.elts[10] = ((closureN)self_73670)->elts[10]; -c_731455.elts[11] = ((closureN)self_73670)->elts[11]; -c_731455.elts[12] = ((closureN)self_73670)->elts[12]; -c_731455.elts[13] = ((closureN)self_73670)->elts[13]; -c_731455.elts[14] = ((closureN)self_73670)->elts[14]; -c_731455.elts[15] = ((closureN)self_73670)->elts[15]; -c_731455.elts[16] = ((closureN)self_73670)->elts[16]; -c_731455.elts[17] = rewrite_73134; -c_731455.elts[18] = ((closureN)self_73670)->elts[18]; -c_731455.elts[19] = ((closureN)self_73670)->elts[19]; -c_731455.elts[20] = ((closureN)self_73670)->elts[20]; -c_731455.elts[21] = ((closureN)self_73670)->elts[21]; -c_731455.elts[22] = ((closureN)self_73670)->elts[22]; -c_731455.elts[23] = ((closureN)self_73670)->elts[23]; -c_731455.elts[24] = ((closureN)self_73670)->elts[24]; -c_731455.elts[25] = ((closureN)self_73670)->elts[25]; -c_731455.elts[26] = ((closureN)self_73670)->elts[26]; -c_731455.elts[27] = ((closureN)self_73670)->elts[27]; -c_731455.elts[28] = ((closureN)self_73670)->elts[28]; -c_731455.elts[29] = ((closureN)self_73670)->elts[29]; -c_731455.elts[30] = ((closureN)self_73670)->elts[30]; -c_731455.elts[31] = ((closureN)self_73670)->elts[31]; -c_731455.elts[32] = ((closureN)self_73670)->elts[32]; -c_731455.elts[33] = ((closureN)self_73670)->elts[33]; -c_731455.elts[34] = ((closureN)self_73670)->elts[34]; -c_731455.elts[35] = ((closureN)self_73670)->elts[35]; -c_731455.elts[36] = ((closureN)self_73670)->elts[36]; -c_731455.elts[37] = ((closureN)self_73670)->elts[37]; - - -make_cell(c_735039,((closureN)self_73670)->elts[17]); -return_closcall1(data,(closure)&c_731455, &c_735039);; -} - -static void __lambda_450(void *data, int argc, object self_73671, object rewrite_91args_73133) { - -closureN_type c_731457; -c_731457.hdr.mark = gc_color_red; - c_731457.hdr.grayed = 0; -c_731457.tag = closureN_tag; - c_731457.fn = (function_type)__lambda_449; -c_731457.num_args = 1; -c_731457.num_elt = 38; -c_731457.elts = (object *)alloca(sizeof(object) * 38); -c_731457.elts[0] = ((closureN)self_73671)->elts[0]; -c_731457.elts[1] = ((closureN)self_73671)->elts[1]; -c_731457.elts[2] = ((closureN)self_73671)->elts[2]; -c_731457.elts[3] = ((closureN)self_73671)->elts[3]; -c_731457.elts[4] = ((closureN)self_73671)->elts[4]; -c_731457.elts[5] = ((closureN)self_73671)->elts[5]; -c_731457.elts[6] = ((closureN)self_73671)->elts[6]; -c_731457.elts[7] = ((closureN)self_73671)->elts[7]; -c_731457.elts[8] = ((closureN)self_73671)->elts[8]; -c_731457.elts[9] = ((closureN)self_73671)->elts[9]; -c_731457.elts[10] = ((closureN)self_73671)->elts[10]; -c_731457.elts[11] = ((closureN)self_73671)->elts[11]; -c_731457.elts[12] = ((closureN)self_73671)->elts[12]; -c_731457.elts[13] = ((closureN)self_73671)->elts[13]; -c_731457.elts[14] = ((closureN)self_73671)->elts[14]; -c_731457.elts[15] = ((closureN)self_73671)->elts[15]; -c_731457.elts[16] = ((closureN)self_73671)->elts[16]; -c_731457.elts[17] = ((closureN)self_73671)->elts[17]; -c_731457.elts[18] = rewrite_91args_73133; -c_731457.elts[19] = ((closureN)self_73671)->elts[18]; -c_731457.elts[20] = ((closureN)self_73671)->elts[20]; -c_731457.elts[21] = ((closureN)self_73671)->elts[21]; -c_731457.elts[22] = ((closureN)self_73671)->elts[22]; -c_731457.elts[23] = ((closureN)self_73671)->elts[23]; -c_731457.elts[24] = ((closureN)self_73671)->elts[24]; -c_731457.elts[25] = ((closureN)self_73671)->elts[25]; -c_731457.elts[26] = ((closureN)self_73671)->elts[26]; -c_731457.elts[27] = ((closureN)self_73671)->elts[27]; -c_731457.elts[28] = ((closureN)self_73671)->elts[28]; -c_731457.elts[29] = ((closureN)self_73671)->elts[29]; -c_731457.elts[30] = ((closureN)self_73671)->elts[30]; -c_731457.elts[31] = ((closureN)self_73671)->elts[31]; -c_731457.elts[32] = ((closureN)self_73671)->elts[32]; -c_731457.elts[33] = ((closureN)self_73671)->elts[33]; -c_731457.elts[34] = ((closureN)self_73671)->elts[34]; -c_731457.elts[35] = ((closureN)self_73671)->elts[35]; -c_731457.elts[36] = ((closureN)self_73671)->elts[36]; -c_731457.elts[37] = ((closureN)self_73671)->elts[37]; - - -make_cell(c_735035,((closureN)self_73671)->elts[19]); -return_closcall1(data,(closure)&c_731457, &c_735035);; -} - -static void __lambda_449(void *data, int argc, object self_73672, object rewrite_91with_91lemmas_73132) { - -closureN_type c_731459; -c_731459.hdr.mark = gc_color_red; - c_731459.hdr.grayed = 0; -c_731459.tag = closureN_tag; - c_731459.fn = (function_type)__lambda_448; -c_731459.num_args = 1; -c_731459.num_elt = 38; -c_731459.elts = (object *)alloca(sizeof(object) * 38); -c_731459.elts[0] = ((closureN)self_73672)->elts[0]; -c_731459.elts[1] = ((closureN)self_73672)->elts[1]; -c_731459.elts[2] = ((closureN)self_73672)->elts[2]; -c_731459.elts[3] = ((closureN)self_73672)->elts[3]; -c_731459.elts[4] = ((closureN)self_73672)->elts[4]; -c_731459.elts[5] = ((closureN)self_73672)->elts[5]; -c_731459.elts[6] = ((closureN)self_73672)->elts[6]; -c_731459.elts[7] = ((closureN)self_73672)->elts[7]; -c_731459.elts[8] = ((closureN)self_73672)->elts[8]; -c_731459.elts[9] = ((closureN)self_73672)->elts[9]; -c_731459.elts[10] = ((closureN)self_73672)->elts[10]; -c_731459.elts[11] = ((closureN)self_73672)->elts[11]; -c_731459.elts[12] = ((closureN)self_73672)->elts[12]; -c_731459.elts[13] = ((closureN)self_73672)->elts[13]; -c_731459.elts[14] = ((closureN)self_73672)->elts[14]; -c_731459.elts[15] = ((closureN)self_73672)->elts[15]; -c_731459.elts[16] = ((closureN)self_73672)->elts[16]; -c_731459.elts[17] = ((closureN)self_73672)->elts[17]; -c_731459.elts[18] = ((closureN)self_73672)->elts[18]; -c_731459.elts[19] = ((closureN)self_73672)->elts[19]; -c_731459.elts[20] = rewrite_91with_91lemmas_73132; -c_731459.elts[21] = ((closureN)self_73672)->elts[20]; -c_731459.elts[22] = ((closureN)self_73672)->elts[21]; -c_731459.elts[23] = ((closureN)self_73672)->elts[22]; -c_731459.elts[24] = ((closureN)self_73672)->elts[23]; -c_731459.elts[25] = ((closureN)self_73672)->elts[24]; -c_731459.elts[26] = ((closureN)self_73672)->elts[25]; -c_731459.elts[27] = ((closureN)self_73672)->elts[26]; -c_731459.elts[28] = ((closureN)self_73672)->elts[27]; -c_731459.elts[29] = ((closureN)self_73672)->elts[28]; -c_731459.elts[30] = ((closureN)self_73672)->elts[29]; -c_731459.elts[31] = ((closureN)self_73672)->elts[30]; -c_731459.elts[32] = ((closureN)self_73672)->elts[31]; -c_731459.elts[33] = ((closureN)self_73672)->elts[32]; -c_731459.elts[34] = ((closureN)self_73672)->elts[33]; -c_731459.elts[35] = ((closureN)self_73672)->elts[34]; -c_731459.elts[36] = ((closureN)self_73672)->elts[35]; -c_731459.elts[37] = ((closureN)self_73672)->elts[37]; - - -make_cell(c_735031,((closureN)self_73672)->elts[36]); -return_closcall1(data,(closure)&c_731459, &c_735031);; -} - -static void __lambda_448(void *data, int argc, object self_73673, object unify_91subst_73131) { - -closureN_type c_731461; -c_731461.hdr.mark = gc_color_red; - c_731461.hdr.grayed = 0; -c_731461.tag = closureN_tag; - c_731461.fn = (function_type)__lambda_447; -c_731461.num_args = 1; -c_731461.num_elt = 38; -c_731461.elts = (object *)alloca(sizeof(object) * 38); -c_731461.elts[0] = ((closureN)self_73673)->elts[0]; -c_731461.elts[1] = ((closureN)self_73673)->elts[1]; -c_731461.elts[2] = ((closureN)self_73673)->elts[2]; -c_731461.elts[3] = ((closureN)self_73673)->elts[3]; -c_731461.elts[4] = ((closureN)self_73673)->elts[4]; -c_731461.elts[5] = ((closureN)self_73673)->elts[5]; -c_731461.elts[6] = ((closureN)self_73673)->elts[6]; -c_731461.elts[7] = ((closureN)self_73673)->elts[7]; -c_731461.elts[8] = ((closureN)self_73673)->elts[8]; -c_731461.elts[9] = ((closureN)self_73673)->elts[9]; -c_731461.elts[10] = ((closureN)self_73673)->elts[10]; -c_731461.elts[11] = ((closureN)self_73673)->elts[11]; -c_731461.elts[12] = ((closureN)self_73673)->elts[13]; -c_731461.elts[13] = ((closureN)self_73673)->elts[14]; -c_731461.elts[14] = ((closureN)self_73673)->elts[15]; -c_731461.elts[15] = ((closureN)self_73673)->elts[16]; -c_731461.elts[16] = ((closureN)self_73673)->elts[17]; -c_731461.elts[17] = ((closureN)self_73673)->elts[18]; -c_731461.elts[18] = ((closureN)self_73673)->elts[19]; -c_731461.elts[19] = ((closureN)self_73673)->elts[20]; -c_731461.elts[20] = ((closureN)self_73673)->elts[21]; -c_731461.elts[21] = ((closureN)self_73673)->elts[22]; -c_731461.elts[22] = ((closureN)self_73673)->elts[23]; -c_731461.elts[23] = ((closureN)self_73673)->elts[24]; -c_731461.elts[24] = ((closureN)self_73673)->elts[25]; -c_731461.elts[25] = ((closureN)self_73673)->elts[26]; -c_731461.elts[26] = ((closureN)self_73673)->elts[27]; -c_731461.elts[27] = ((closureN)self_73673)->elts[28]; -c_731461.elts[28] = ((closureN)self_73673)->elts[29]; -c_731461.elts[29] = ((closureN)self_73673)->elts[30]; -c_731461.elts[30] = ((closureN)self_73673)->elts[31]; -c_731461.elts[31] = ((closureN)self_73673)->elts[32]; -c_731461.elts[32] = ((closureN)self_73673)->elts[33]; -c_731461.elts[33] = ((closureN)self_73673)->elts[34]; -c_731461.elts[34] = ((closureN)self_73673)->elts[35]; -c_731461.elts[35] = ((closureN)self_73673)->elts[36]; -c_731461.elts[36] = unify_91subst_73131; -c_731461.elts[37] = ((closureN)self_73673)->elts[37]; - - -make_cell(c_735027,((closureN)self_73673)->elts[12]); -return_closcall1(data,(closure)&c_731461, &c_735027);; -} - -static void __lambda_447(void *data, int argc, object self_73674, object one_91way_91unify_73130) { - -closureN_type c_731463; -c_731463.hdr.mark = gc_color_red; - c_731463.hdr.grayed = 0; -c_731463.tag = closureN_tag; - c_731463.fn = (function_type)__lambda_446; -c_731463.num_args = 1; -c_731463.num_elt = 38; -c_731463.elts = (object *)alloca(sizeof(object) * 38); -c_731463.elts[0] = ((closureN)self_73674)->elts[0]; -c_731463.elts[1] = ((closureN)self_73674)->elts[1]; -c_731463.elts[2] = ((closureN)self_73674)->elts[2]; -c_731463.elts[3] = ((closureN)self_73674)->elts[3]; -c_731463.elts[4] = ((closureN)self_73674)->elts[4]; -c_731463.elts[5] = ((closureN)self_73674)->elts[5]; -c_731463.elts[6] = ((closureN)self_73674)->elts[6]; -c_731463.elts[7] = ((closureN)self_73674)->elts[7]; -c_731463.elts[8] = ((closureN)self_73674)->elts[8]; -c_731463.elts[9] = ((closureN)self_73674)->elts[9]; -c_731463.elts[10] = ((closureN)self_73674)->elts[10]; -c_731463.elts[11] = ((closureN)self_73674)->elts[11]; -c_731463.elts[12] = one_91way_91unify_73130; -c_731463.elts[13] = ((closureN)self_73674)->elts[13]; -c_731463.elts[14] = ((closureN)self_73674)->elts[14]; -c_731463.elts[15] = ((closureN)self_73674)->elts[15]; -c_731463.elts[16] = ((closureN)self_73674)->elts[16]; -c_731463.elts[17] = ((closureN)self_73674)->elts[17]; -c_731463.elts[18] = ((closureN)self_73674)->elts[18]; -c_731463.elts[19] = ((closureN)self_73674)->elts[19]; -c_731463.elts[20] = ((closureN)self_73674)->elts[20]; -c_731463.elts[21] = ((closureN)self_73674)->elts[21]; -c_731463.elts[22] = ((closureN)self_73674)->elts[22]; -c_731463.elts[23] = ((closureN)self_73674)->elts[23]; -c_731463.elts[24] = ((closureN)self_73674)->elts[24]; -c_731463.elts[25] = ((closureN)self_73674)->elts[25]; -c_731463.elts[26] = ((closureN)self_73674)->elts[26]; -c_731463.elts[27] = ((closureN)self_73674)->elts[27]; -c_731463.elts[28] = ((closureN)self_73674)->elts[28]; -c_731463.elts[29] = ((closureN)self_73674)->elts[29]; -c_731463.elts[30] = ((closureN)self_73674)->elts[30]; -c_731463.elts[31] = ((closureN)self_73674)->elts[31]; -c_731463.elts[32] = ((closureN)self_73674)->elts[32]; -c_731463.elts[33] = ((closureN)self_73674)->elts[33]; -c_731463.elts[34] = ((closureN)self_73674)->elts[34]; -c_731463.elts[35] = ((closureN)self_73674)->elts[35]; -c_731463.elts[36] = ((closureN)self_73674)->elts[36]; -c_731463.elts[37] = ((closureN)self_73674)->elts[37]; - - -make_cell(c_735023,((closureN)self_73674)->elts[12]); -return_closcall1(data,(closure)&c_731463, &c_735023);; -} - -static void __lambda_446(void *data, int argc, object self_73675, object one_91way_91unify1_73129) { - -closureN_type c_731465; -c_731465.hdr.mark = gc_color_red; - c_731465.hdr.grayed = 0; -c_731465.tag = closureN_tag; - c_731465.fn = (function_type)__lambda_445; -c_731465.num_args = 1; -c_731465.num_elt = 38; -c_731465.elts = (object *)alloca(sizeof(object) * 38); -c_731465.elts[0] = ((closureN)self_73675)->elts[0]; -c_731465.elts[1] = ((closureN)self_73675)->elts[1]; -c_731465.elts[2] = ((closureN)self_73675)->elts[2]; -c_731465.elts[3] = ((closureN)self_73675)->elts[3]; -c_731465.elts[4] = ((closureN)self_73675)->elts[4]; -c_731465.elts[5] = ((closureN)self_73675)->elts[5]; -c_731465.elts[6] = ((closureN)self_73675)->elts[6]; -c_731465.elts[7] = ((closureN)self_73675)->elts[7]; -c_731465.elts[8] = ((closureN)self_73675)->elts[8]; -c_731465.elts[9] = ((closureN)self_73675)->elts[9]; -c_731465.elts[10] = ((closureN)self_73675)->elts[10]; -c_731465.elts[11] = ((closureN)self_73675)->elts[11]; -c_731465.elts[12] = ((closureN)self_73675)->elts[12]; -c_731465.elts[13] = one_91way_91unify1_73129; -c_731465.elts[14] = ((closureN)self_73675)->elts[14]; -c_731465.elts[15] = ((closureN)self_73675)->elts[15]; -c_731465.elts[16] = ((closureN)self_73675)->elts[16]; -c_731465.elts[17] = ((closureN)self_73675)->elts[17]; -c_731465.elts[18] = ((closureN)self_73675)->elts[18]; -c_731465.elts[19] = ((closureN)self_73675)->elts[19]; -c_731465.elts[20] = ((closureN)self_73675)->elts[20]; -c_731465.elts[21] = ((closureN)self_73675)->elts[21]; -c_731465.elts[22] = ((closureN)self_73675)->elts[22]; -c_731465.elts[23] = ((closureN)self_73675)->elts[23]; -c_731465.elts[24] = ((closureN)self_73675)->elts[24]; -c_731465.elts[25] = ((closureN)self_73675)->elts[25]; -c_731465.elts[26] = ((closureN)self_73675)->elts[26]; -c_731465.elts[27] = ((closureN)self_73675)->elts[27]; -c_731465.elts[28] = ((closureN)self_73675)->elts[28]; -c_731465.elts[29] = ((closureN)self_73675)->elts[29]; -c_731465.elts[30] = ((closureN)self_73675)->elts[30]; -c_731465.elts[31] = ((closureN)self_73675)->elts[31]; -c_731465.elts[32] = ((closureN)self_73675)->elts[32]; -c_731465.elts[33] = ((closureN)self_73675)->elts[33]; -c_731465.elts[34] = ((closureN)self_73675)->elts[34]; -c_731465.elts[35] = ((closureN)self_73675)->elts[35]; -c_731465.elts[36] = ((closureN)self_73675)->elts[36]; -c_731465.elts[37] = ((closureN)self_73675)->elts[37]; - - -make_cell(c_735019,((closureN)self_73675)->elts[13]); -return_closcall1(data,(closure)&c_731465, &c_735019);; -} - -static void __lambda_445(void *data, int argc, object self_73676, object one_91way_91unify1_91lst_73128) { - -closureN_type c_731467; -c_731467.hdr.mark = gc_color_red; - c_731467.hdr.grayed = 0; -c_731467.tag = closureN_tag; - c_731467.fn = (function_type)__lambda_444; -c_731467.num_args = 1; -c_731467.num_elt = 38; -c_731467.elts = (object *)alloca(sizeof(object) * 38); -c_731467.elts[0] = ((closureN)self_73676)->elts[0]; -c_731467.elts[1] = ((closureN)self_73676)->elts[1]; -c_731467.elts[2] = ((closureN)self_73676)->elts[2]; -c_731467.elts[3] = ((closureN)self_73676)->elts[3]; -c_731467.elts[4] = ((closureN)self_73676)->elts[4]; -c_731467.elts[5] = ((closureN)self_73676)->elts[5]; -c_731467.elts[6] = ((closureN)self_73676)->elts[7]; -c_731467.elts[7] = ((closureN)self_73676)->elts[8]; -c_731467.elts[8] = ((closureN)self_73676)->elts[9]; -c_731467.elts[9] = ((closureN)self_73676)->elts[10]; -c_731467.elts[10] = ((closureN)self_73676)->elts[11]; -c_731467.elts[11] = ((closureN)self_73676)->elts[12]; -c_731467.elts[12] = ((closureN)self_73676)->elts[13]; -c_731467.elts[13] = one_91way_91unify1_91lst_73128; -c_731467.elts[14] = ((closureN)self_73676)->elts[14]; -c_731467.elts[15] = ((closureN)self_73676)->elts[15]; -c_731467.elts[16] = ((closureN)self_73676)->elts[16]; -c_731467.elts[17] = ((closureN)self_73676)->elts[17]; -c_731467.elts[18] = ((closureN)self_73676)->elts[18]; -c_731467.elts[19] = ((closureN)self_73676)->elts[19]; -c_731467.elts[20] = ((closureN)self_73676)->elts[20]; -c_731467.elts[21] = ((closureN)self_73676)->elts[21]; -c_731467.elts[22] = ((closureN)self_73676)->elts[22]; -c_731467.elts[23] = ((closureN)self_73676)->elts[23]; -c_731467.elts[24] = ((closureN)self_73676)->elts[24]; -c_731467.elts[25] = ((closureN)self_73676)->elts[25]; -c_731467.elts[26] = ((closureN)self_73676)->elts[26]; -c_731467.elts[27] = ((closureN)self_73676)->elts[27]; -c_731467.elts[28] = ((closureN)self_73676)->elts[28]; -c_731467.elts[29] = ((closureN)self_73676)->elts[29]; -c_731467.elts[30] = ((closureN)self_73676)->elts[30]; -c_731467.elts[31] = ((closureN)self_73676)->elts[31]; -c_731467.elts[32] = ((closureN)self_73676)->elts[32]; -c_731467.elts[33] = ((closureN)self_73676)->elts[33]; -c_731467.elts[34] = ((closureN)self_73676)->elts[34]; -c_731467.elts[35] = ((closureN)self_73676)->elts[35]; -c_731467.elts[36] = ((closureN)self_73676)->elts[36]; -c_731467.elts[37] = ((closureN)self_73676)->elts[37]; - - -make_cell(c_735015,((closureN)self_73676)->elts[6]); -return_closcall1(data,(closure)&c_731467, &c_735015);; -} - -static void __lambda_444(void *data, int argc, object self_73677, object falsep_73127) { - -closureN_type c_731469; -c_731469.hdr.mark = gc_color_red; - c_731469.hdr.grayed = 0; -c_731469.tag = closureN_tag; - c_731469.fn = (function_type)__lambda_443; -c_731469.num_args = 1; -c_731469.num_elt = 38; -c_731469.elts = (object *)alloca(sizeof(object) * 38); -c_731469.elts[0] = ((closureN)self_73677)->elts[0]; -c_731469.elts[1] = ((closureN)self_73677)->elts[1]; -c_731469.elts[2] = ((closureN)self_73677)->elts[2]; -c_731469.elts[3] = ((closureN)self_73677)->elts[3]; -c_731469.elts[4] = ((closureN)self_73677)->elts[4]; -c_731469.elts[5] = ((closureN)self_73677)->elts[5]; -c_731469.elts[6] = falsep_73127; -c_731469.elts[7] = ((closureN)self_73677)->elts[6]; -c_731469.elts[8] = ((closureN)self_73677)->elts[7]; -c_731469.elts[9] = ((closureN)self_73677)->elts[8]; -c_731469.elts[10] = ((closureN)self_73677)->elts[9]; -c_731469.elts[11] = ((closureN)self_73677)->elts[10]; -c_731469.elts[12] = ((closureN)self_73677)->elts[11]; -c_731469.elts[13] = ((closureN)self_73677)->elts[12]; -c_731469.elts[14] = ((closureN)self_73677)->elts[13]; -c_731469.elts[15] = ((closureN)self_73677)->elts[14]; -c_731469.elts[16] = ((closureN)self_73677)->elts[15]; -c_731469.elts[17] = ((closureN)self_73677)->elts[16]; -c_731469.elts[18] = ((closureN)self_73677)->elts[17]; -c_731469.elts[19] = ((closureN)self_73677)->elts[18]; -c_731469.elts[20] = ((closureN)self_73677)->elts[19]; -c_731469.elts[21] = ((closureN)self_73677)->elts[20]; -c_731469.elts[22] = ((closureN)self_73677)->elts[21]; -c_731469.elts[23] = ((closureN)self_73677)->elts[22]; -c_731469.elts[24] = ((closureN)self_73677)->elts[23]; -c_731469.elts[25] = ((closureN)self_73677)->elts[24]; -c_731469.elts[26] = ((closureN)self_73677)->elts[25]; -c_731469.elts[27] = ((closureN)self_73677)->elts[26]; -c_731469.elts[28] = ((closureN)self_73677)->elts[27]; -c_731469.elts[29] = ((closureN)self_73677)->elts[28]; -c_731469.elts[30] = ((closureN)self_73677)->elts[29]; -c_731469.elts[31] = ((closureN)self_73677)->elts[30]; -c_731469.elts[32] = ((closureN)self_73677)->elts[31]; -c_731469.elts[33] = ((closureN)self_73677)->elts[32]; -c_731469.elts[34] = ((closureN)self_73677)->elts[33]; -c_731469.elts[35] = ((closureN)self_73677)->elts[34]; -c_731469.elts[36] = ((closureN)self_73677)->elts[36]; -c_731469.elts[37] = ((closureN)self_73677)->elts[37]; - - -make_cell(c_735011,((closureN)self_73677)->elts[35]); -return_closcall1(data,(closure)&c_731469, &c_735011);; -} - -static void __lambda_443(void *data, int argc, object self_73678, object truep_73126) { - -closureN_type c_731471; -c_731471.hdr.mark = gc_color_red; - c_731471.hdr.grayed = 0; -c_731471.tag = closureN_tag; - c_731471.fn = (function_type)__lambda_442; -c_731471.num_args = 1; -c_731471.num_elt = 38; -c_731471.elts = (object *)alloca(sizeof(object) * 38); -c_731471.elts[0] = ((closureN)self_73678)->elts[0]; -c_731471.elts[1] = ((closureN)self_73678)->elts[1]; -c_731471.elts[2] = ((closureN)self_73678)->elts[2]; -c_731471.elts[3] = ((closureN)self_73678)->elts[3]; -c_731471.elts[4] = ((closureN)self_73678)->elts[4]; -c_731471.elts[5] = ((closureN)self_73678)->elts[6]; -c_731471.elts[6] = ((closureN)self_73678)->elts[7]; -c_731471.elts[7] = ((closureN)self_73678)->elts[8]; -c_731471.elts[8] = ((closureN)self_73678)->elts[9]; -c_731471.elts[9] = ((closureN)self_73678)->elts[10]; -c_731471.elts[10] = ((closureN)self_73678)->elts[11]; -c_731471.elts[11] = ((closureN)self_73678)->elts[12]; -c_731471.elts[12] = ((closureN)self_73678)->elts[13]; -c_731471.elts[13] = ((closureN)self_73678)->elts[14]; -c_731471.elts[14] = ((closureN)self_73678)->elts[15]; -c_731471.elts[15] = ((closureN)self_73678)->elts[16]; -c_731471.elts[16] = ((closureN)self_73678)->elts[17]; -c_731471.elts[17] = ((closureN)self_73678)->elts[18]; -c_731471.elts[18] = ((closureN)self_73678)->elts[19]; -c_731471.elts[19] = ((closureN)self_73678)->elts[20]; -c_731471.elts[20] = ((closureN)self_73678)->elts[21]; -c_731471.elts[21] = ((closureN)self_73678)->elts[22]; -c_731471.elts[22] = ((closureN)self_73678)->elts[23]; -c_731471.elts[23] = ((closureN)self_73678)->elts[24]; -c_731471.elts[24] = ((closureN)self_73678)->elts[25]; -c_731471.elts[25] = ((closureN)self_73678)->elts[26]; -c_731471.elts[26] = ((closureN)self_73678)->elts[27]; -c_731471.elts[27] = ((closureN)self_73678)->elts[28]; -c_731471.elts[28] = ((closureN)self_73678)->elts[29]; -c_731471.elts[29] = ((closureN)self_73678)->elts[30]; -c_731471.elts[30] = ((closureN)self_73678)->elts[31]; -c_731471.elts[31] = ((closureN)self_73678)->elts[32]; -c_731471.elts[32] = ((closureN)self_73678)->elts[33]; -c_731471.elts[33] = ((closureN)self_73678)->elts[34]; -c_731471.elts[34] = ((closureN)self_73678)->elts[35]; -c_731471.elts[35] = truep_73126; -c_731471.elts[36] = ((closureN)self_73678)->elts[36]; -c_731471.elts[37] = ((closureN)self_73678)->elts[37]; - - -make_cell(c_735007,((closureN)self_73678)->elts[5]); -return_closcall1(data,(closure)&c_731471, &c_735007);; -} - -static void __lambda_442(void *data, int argc, object self_73679, object false_91term_73125) { - -closureN_type c_731473; -c_731473.hdr.mark = gc_color_red; - c_731473.hdr.grayed = 0; -c_731473.tag = closureN_tag; - c_731473.fn = (function_type)__lambda_441; -c_731473.num_args = 1; -c_731473.num_elt = 38; -c_731473.elts = (object *)alloca(sizeof(object) * 38); -c_731473.elts[0] = ((closureN)self_73679)->elts[0]; -c_731473.elts[1] = ((closureN)self_73679)->elts[1]; -c_731473.elts[2] = ((closureN)self_73679)->elts[2]; -c_731473.elts[3] = ((closureN)self_73679)->elts[3]; -c_731473.elts[4] = ((closureN)self_73679)->elts[4]; -c_731473.elts[5] = false_91term_73125; -c_731473.elts[6] = ((closureN)self_73679)->elts[5]; -c_731473.elts[7] = ((closureN)self_73679)->elts[6]; -c_731473.elts[8] = ((closureN)self_73679)->elts[7]; -c_731473.elts[9] = ((closureN)self_73679)->elts[8]; -c_731473.elts[10] = ((closureN)self_73679)->elts[9]; -c_731473.elts[11] = ((closureN)self_73679)->elts[10]; -c_731473.elts[12] = ((closureN)self_73679)->elts[11]; -c_731473.elts[13] = ((closureN)self_73679)->elts[12]; -c_731473.elts[14] = ((closureN)self_73679)->elts[13]; -c_731473.elts[15] = ((closureN)self_73679)->elts[14]; -c_731473.elts[16] = ((closureN)self_73679)->elts[15]; -c_731473.elts[17] = ((closureN)self_73679)->elts[16]; -c_731473.elts[18] = ((closureN)self_73679)->elts[17]; -c_731473.elts[19] = ((closureN)self_73679)->elts[18]; -c_731473.elts[20] = ((closureN)self_73679)->elts[19]; -c_731473.elts[21] = ((closureN)self_73679)->elts[20]; -c_731473.elts[22] = ((closureN)self_73679)->elts[21]; -c_731473.elts[23] = ((closureN)self_73679)->elts[22]; -c_731473.elts[24] = ((closureN)self_73679)->elts[23]; -c_731473.elts[25] = ((closureN)self_73679)->elts[24]; -c_731473.elts[26] = ((closureN)self_73679)->elts[25]; -c_731473.elts[27] = ((closureN)self_73679)->elts[26]; -c_731473.elts[28] = ((closureN)self_73679)->elts[27]; -c_731473.elts[29] = ((closureN)self_73679)->elts[28]; -c_731473.elts[30] = ((closureN)self_73679)->elts[29]; -c_731473.elts[31] = ((closureN)self_73679)->elts[30]; -c_731473.elts[32] = ((closureN)self_73679)->elts[31]; -c_731473.elts[33] = ((closureN)self_73679)->elts[32]; -c_731473.elts[34] = ((closureN)self_73679)->elts[33]; -c_731473.elts[35] = ((closureN)self_73679)->elts[35]; -c_731473.elts[36] = ((closureN)self_73679)->elts[36]; -c_731473.elts[37] = ((closureN)self_73679)->elts[37]; - - -make_cell(c_735003,((closureN)self_73679)->elts[34]); -return_closcall1(data,(closure)&c_731473, &c_735003);; -} - -static void __lambda_441(void *data, int argc, object self_73680, object true_91term_73124) { - -closureN_type c_731475; -c_731475.hdr.mark = gc_color_red; - c_731475.hdr.grayed = 0; -c_731475.tag = closureN_tag; - c_731475.fn = (function_type)__lambda_440; -c_731475.num_args = 1; -c_731475.num_elt = 38; -c_731475.elts = (object *)alloca(sizeof(object) * 38); -c_731475.elts[0] = ((closureN)self_73680)->elts[0]; -c_731475.elts[1] = ((closureN)self_73680)->elts[1]; -c_731475.elts[2] = ((closureN)self_73680)->elts[2]; -c_731475.elts[3] = ((closureN)self_73680)->elts[3]; -c_731475.elts[4] = ((closureN)self_73680)->elts[4]; -c_731475.elts[5] = ((closureN)self_73680)->elts[5]; -c_731475.elts[6] = ((closureN)self_73680)->elts[6]; -c_731475.elts[7] = ((closureN)self_73680)->elts[7]; -c_731475.elts[8] = ((closureN)self_73680)->elts[8]; -c_731475.elts[9] = ((closureN)self_73680)->elts[9]; -c_731475.elts[10] = ((closureN)self_73680)->elts[10]; -c_731475.elts[11] = ((closureN)self_73680)->elts[11]; -c_731475.elts[12] = ((closureN)self_73680)->elts[12]; -c_731475.elts[13] = ((closureN)self_73680)->elts[13]; -c_731475.elts[14] = ((closureN)self_73680)->elts[14]; -c_731475.elts[15] = ((closureN)self_73680)->elts[15]; -c_731475.elts[16] = ((closureN)self_73680)->elts[16]; -c_731475.elts[17] = ((closureN)self_73680)->elts[17]; -c_731475.elts[18] = ((closureN)self_73680)->elts[18]; -c_731475.elts[19] = ((closureN)self_73680)->elts[19]; -c_731475.elts[20] = ((closureN)self_73680)->elts[20]; -c_731475.elts[21] = ((closureN)self_73680)->elts[21]; -c_731475.elts[22] = ((closureN)self_73680)->elts[22]; -c_731475.elts[23] = ((closureN)self_73680)->elts[23]; -c_731475.elts[24] = ((closureN)self_73680)->elts[24]; -c_731475.elts[25] = ((closureN)self_73680)->elts[25]; -c_731475.elts[26] = ((closureN)self_73680)->elts[26]; -c_731475.elts[27] = ((closureN)self_73680)->elts[27]; -c_731475.elts[28] = ((closureN)self_73680)->elts[28]; -c_731475.elts[29] = ((closureN)self_73680)->elts[29]; -c_731475.elts[30] = ((closureN)self_73680)->elts[31]; -c_731475.elts[31] = ((closureN)self_73680)->elts[32]; -c_731475.elts[32] = ((closureN)self_73680)->elts[33]; -c_731475.elts[33] = ((closureN)self_73680)->elts[34]; -c_731475.elts[34] = true_91term_73124; -c_731475.elts[35] = ((closureN)self_73680)->elts[35]; -c_731475.elts[36] = ((closureN)self_73680)->elts[36]; -c_731475.elts[37] = ((closureN)self_73680)->elts[37]; - - -make_cell(c_734999,((closureN)self_73680)->elts[30]); -return_closcall1(data,(closure)&c_731475, &c_734999);; -} - -static void __lambda_440(void *data, int argc, object self_73681, object trans_91of_91implies_73123) { - -closureN_type c_731477; -c_731477.hdr.mark = gc_color_red; - c_731477.hdr.grayed = 0; -c_731477.tag = closureN_tag; - c_731477.fn = (function_type)__lambda_439; -c_731477.num_args = 1; -c_731477.num_elt = 38; -c_731477.elts = (object *)alloca(sizeof(object) * 38); -c_731477.elts[0] = ((closureN)self_73681)->elts[0]; -c_731477.elts[1] = ((closureN)self_73681)->elts[1]; -c_731477.elts[2] = ((closureN)self_73681)->elts[2]; -c_731477.elts[3] = ((closureN)self_73681)->elts[3]; -c_731477.elts[4] = ((closureN)self_73681)->elts[4]; -c_731477.elts[5] = ((closureN)self_73681)->elts[5]; -c_731477.elts[6] = ((closureN)self_73681)->elts[6]; -c_731477.elts[7] = ((closureN)self_73681)->elts[7]; -c_731477.elts[8] = ((closureN)self_73681)->elts[8]; -c_731477.elts[9] = ((closureN)self_73681)->elts[9]; -c_731477.elts[10] = ((closureN)self_73681)->elts[10]; -c_731477.elts[11] = ((closureN)self_73681)->elts[11]; -c_731477.elts[12] = ((closureN)self_73681)->elts[12]; -c_731477.elts[13] = ((closureN)self_73681)->elts[13]; -c_731477.elts[14] = ((closureN)self_73681)->elts[14]; -c_731477.elts[15] = ((closureN)self_73681)->elts[15]; -c_731477.elts[16] = ((closureN)self_73681)->elts[16]; -c_731477.elts[17] = ((closureN)self_73681)->elts[17]; -c_731477.elts[18] = ((closureN)self_73681)->elts[18]; -c_731477.elts[19] = ((closureN)self_73681)->elts[19]; -c_731477.elts[20] = ((closureN)self_73681)->elts[20]; -c_731477.elts[21] = ((closureN)self_73681)->elts[21]; -c_731477.elts[22] = ((closureN)self_73681)->elts[22]; -c_731477.elts[23] = ((closureN)self_73681)->elts[23]; -c_731477.elts[24] = ((closureN)self_73681)->elts[24]; -c_731477.elts[25] = ((closureN)self_73681)->elts[25]; -c_731477.elts[26] = ((closureN)self_73681)->elts[26]; -c_731477.elts[27] = ((closureN)self_73681)->elts[27]; -c_731477.elts[28] = ((closureN)self_73681)->elts[28]; -c_731477.elts[29] = ((closureN)self_73681)->elts[29]; -c_731477.elts[30] = trans_91of_91implies_73123; -c_731477.elts[31] = ((closureN)self_73681)->elts[31]; -c_731477.elts[32] = ((closureN)self_73681)->elts[32]; -c_731477.elts[33] = ((closureN)self_73681)->elts[33]; -c_731477.elts[34] = ((closureN)self_73681)->elts[34]; -c_731477.elts[35] = ((closureN)self_73681)->elts[35]; -c_731477.elts[36] = ((closureN)self_73681)->elts[36]; -c_731477.elts[37] = ((closureN)self_73681)->elts[37]; - - -make_cell(c_734995,((closureN)self_73681)->elts[30]); -return_closcall1(data,(closure)&c_731477, &c_734995);; -} - -static void __lambda_439(void *data, int argc, object self_73682, object trans_91of_91implies1_73122) { - -closureN_type c_731479; -c_731479.hdr.mark = gc_color_red; - c_731479.hdr.grayed = 0; -c_731479.tag = closureN_tag; - c_731479.fn = (function_type)__lambda_438; -c_731479.num_args = 1; -c_731479.num_elt = 38; -c_731479.elts = (object *)alloca(sizeof(object) * 38); -c_731479.elts[0] = ((closureN)self_73682)->elts[0]; -c_731479.elts[1] = ((closureN)self_73682)->elts[1]; -c_731479.elts[2] = ((closureN)self_73682)->elts[2]; -c_731479.elts[3] = ((closureN)self_73682)->elts[3]; -c_731479.elts[4] = ((closureN)self_73682)->elts[4]; -c_731479.elts[5] = ((closureN)self_73682)->elts[5]; -c_731479.elts[6] = ((closureN)self_73682)->elts[6]; -c_731479.elts[7] = ((closureN)self_73682)->elts[7]; -c_731479.elts[8] = ((closureN)self_73682)->elts[8]; -c_731479.elts[9] = ((closureN)self_73682)->elts[9]; -c_731479.elts[10] = ((closureN)self_73682)->elts[10]; -c_731479.elts[11] = ((closureN)self_73682)->elts[11]; -c_731479.elts[12] = ((closureN)self_73682)->elts[12]; -c_731479.elts[13] = ((closureN)self_73682)->elts[13]; -c_731479.elts[14] = ((closureN)self_73682)->elts[14]; -c_731479.elts[15] = ((closureN)self_73682)->elts[15]; -c_731479.elts[16] = ((closureN)self_73682)->elts[16]; -c_731479.elts[17] = ((closureN)self_73682)->elts[17]; -c_731479.elts[18] = ((closureN)self_73682)->elts[18]; -c_731479.elts[19] = ((closureN)self_73682)->elts[19]; -c_731479.elts[20] = ((closureN)self_73682)->elts[20]; -c_731479.elts[21] = ((closureN)self_73682)->elts[21]; -c_731479.elts[22] = ((closureN)self_73682)->elts[22]; -c_731479.elts[23] = ((closureN)self_73682)->elts[23]; -c_731479.elts[24] = ((closureN)self_73682)->elts[24]; -c_731479.elts[25] = ((closureN)self_73682)->elts[25]; -c_731479.elts[26] = ((closureN)self_73682)->elts[26]; -c_731479.elts[27] = ((closureN)self_73682)->elts[28]; -c_731479.elts[28] = ((closureN)self_73682)->elts[29]; -c_731479.elts[29] = ((closureN)self_73682)->elts[30]; -c_731479.elts[30] = trans_91of_91implies1_73122; -c_731479.elts[31] = ((closureN)self_73682)->elts[31]; -c_731479.elts[32] = ((closureN)self_73682)->elts[32]; -c_731479.elts[33] = ((closureN)self_73682)->elts[33]; -c_731479.elts[34] = ((closureN)self_73682)->elts[34]; -c_731479.elts[35] = ((closureN)self_73682)->elts[35]; -c_731479.elts[36] = ((closureN)self_73682)->elts[36]; -c_731479.elts[37] = ((closureN)self_73682)->elts[37]; - - -make_cell(c_734991,((closureN)self_73682)->elts[27]); -return_closcall1(data,(closure)&c_731479, &c_734991);; -} - -static void __lambda_438(void *data, int argc, object self_73683, object term_91equal_127_73121) { - -closureN_type c_731481; -c_731481.hdr.mark = gc_color_red; - c_731481.hdr.grayed = 0; -c_731481.tag = closureN_tag; - c_731481.fn = (function_type)__lambda_437; -c_731481.num_args = 1; -c_731481.num_elt = 38; -c_731481.elts = (object *)alloca(sizeof(object) * 38); -c_731481.elts[0] = ((closureN)self_73683)->elts[0]; -c_731481.elts[1] = ((closureN)self_73683)->elts[1]; -c_731481.elts[2] = ((closureN)self_73683)->elts[2]; -c_731481.elts[3] = ((closureN)self_73683)->elts[3]; -c_731481.elts[4] = ((closureN)self_73683)->elts[4]; -c_731481.elts[5] = ((closureN)self_73683)->elts[5]; -c_731481.elts[6] = ((closureN)self_73683)->elts[6]; -c_731481.elts[7] = ((closureN)self_73683)->elts[7]; -c_731481.elts[8] = ((closureN)self_73683)->elts[8]; -c_731481.elts[9] = ((closureN)self_73683)->elts[9]; -c_731481.elts[10] = ((closureN)self_73683)->elts[10]; -c_731481.elts[11] = ((closureN)self_73683)->elts[11]; -c_731481.elts[12] = ((closureN)self_73683)->elts[12]; -c_731481.elts[13] = ((closureN)self_73683)->elts[13]; -c_731481.elts[14] = ((closureN)self_73683)->elts[14]; -c_731481.elts[15] = ((closureN)self_73683)->elts[15]; -c_731481.elts[16] = ((closureN)self_73683)->elts[16]; -c_731481.elts[17] = ((closureN)self_73683)->elts[17]; -c_731481.elts[18] = ((closureN)self_73683)->elts[18]; -c_731481.elts[19] = ((closureN)self_73683)->elts[19]; -c_731481.elts[20] = ((closureN)self_73683)->elts[20]; -c_731481.elts[21] = ((closureN)self_73683)->elts[21]; -c_731481.elts[22] = ((closureN)self_73683)->elts[22]; -c_731481.elts[23] = ((closureN)self_73683)->elts[23]; -c_731481.elts[24] = ((closureN)self_73683)->elts[24]; -c_731481.elts[25] = ((closureN)self_73683)->elts[25]; -c_731481.elts[26] = term_91equal_127_73121; -c_731481.elts[27] = ((closureN)self_73683)->elts[27]; -c_731481.elts[28] = ((closureN)self_73683)->elts[28]; -c_731481.elts[29] = ((closureN)self_73683)->elts[29]; -c_731481.elts[30] = ((closureN)self_73683)->elts[30]; -c_731481.elts[31] = ((closureN)self_73683)->elts[31]; -c_731481.elts[32] = ((closureN)self_73683)->elts[32]; -c_731481.elts[33] = ((closureN)self_73683)->elts[33]; -c_731481.elts[34] = ((closureN)self_73683)->elts[34]; -c_731481.elts[35] = ((closureN)self_73683)->elts[35]; -c_731481.elts[36] = ((closureN)self_73683)->elts[36]; -c_731481.elts[37] = ((closureN)self_73683)->elts[37]; - - -make_cell(c_734987,((closureN)self_73683)->elts[26]); -return_closcall1(data,(closure)&c_731481, &c_734987);; -} - -static void __lambda_437(void *data, int argc, object self_73684, object term_91args_91equal_127_73120) { - -closureN_type c_731483; -c_731483.hdr.mark = gc_color_red; - c_731483.hdr.grayed = 0; -c_731483.tag = closureN_tag; - c_731483.fn = (function_type)__lambda_436; -c_731483.num_args = 1; -c_731483.num_elt = 38; -c_731483.elts = (object *)alloca(sizeof(object) * 38); -c_731483.elts[0] = ((closureN)self_73684)->elts[0]; -c_731483.elts[1] = ((closureN)self_73684)->elts[1]; -c_731483.elts[2] = ((closureN)self_73684)->elts[2]; -c_731483.elts[3] = ((closureN)self_73684)->elts[3]; -c_731483.elts[4] = ((closureN)self_73684)->elts[4]; -c_731483.elts[5] = ((closureN)self_73684)->elts[5]; -c_731483.elts[6] = ((closureN)self_73684)->elts[6]; -c_731483.elts[7] = ((closureN)self_73684)->elts[7]; -c_731483.elts[8] = ((closureN)self_73684)->elts[8]; -c_731483.elts[9] = ((closureN)self_73684)->elts[9]; -c_731483.elts[10] = ((closureN)self_73684)->elts[10]; -c_731483.elts[11] = ((closureN)self_73684)->elts[11]; -c_731483.elts[12] = ((closureN)self_73684)->elts[12]; -c_731483.elts[13] = ((closureN)self_73684)->elts[13]; -c_731483.elts[14] = ((closureN)self_73684)->elts[14]; -c_731483.elts[15] = ((closureN)self_73684)->elts[15]; -c_731483.elts[16] = ((closureN)self_73684)->elts[16]; -c_731483.elts[17] = ((closureN)self_73684)->elts[17]; -c_731483.elts[18] = ((closureN)self_73684)->elts[18]; -c_731483.elts[19] = ((closureN)self_73684)->elts[19]; -c_731483.elts[20] = ((closureN)self_73684)->elts[20]; -c_731483.elts[21] = ((closureN)self_73684)->elts[21]; -c_731483.elts[22] = ((closureN)self_73684)->elts[22]; -c_731483.elts[23] = ((closureN)self_73684)->elts[23]; -c_731483.elts[24] = ((closureN)self_73684)->elts[24]; -c_731483.elts[25] = ((closureN)self_73684)->elts[25]; -c_731483.elts[26] = term_91args_91equal_127_73120; -c_731483.elts[27] = ((closureN)self_73684)->elts[26]; -c_731483.elts[28] = ((closureN)self_73684)->elts[28]; -c_731483.elts[29] = ((closureN)self_73684)->elts[29]; -c_731483.elts[30] = ((closureN)self_73684)->elts[30]; -c_731483.elts[31] = ((closureN)self_73684)->elts[31]; -c_731483.elts[32] = ((closureN)self_73684)->elts[32]; -c_731483.elts[33] = ((closureN)self_73684)->elts[33]; -c_731483.elts[34] = ((closureN)self_73684)->elts[34]; -c_731483.elts[35] = ((closureN)self_73684)->elts[35]; -c_731483.elts[36] = ((closureN)self_73684)->elts[36]; -c_731483.elts[37] = ((closureN)self_73684)->elts[37]; - - -make_cell(c_734983,((closureN)self_73684)->elts[27]); -return_closcall1(data,(closure)&c_731483, &c_734983);; -} - -static void __lambda_436(void *data, int argc, object self_73685, object term_91member_127_73119) { - -closureN_type c_731485; -c_731485.hdr.mark = gc_color_red; - c_731485.hdr.grayed = 0; -c_731485.tag = closureN_tag; - c_731485.fn = (function_type)__lambda_433; -c_731485.num_args = 1; -c_731485.num_elt = 39; -c_731485.elts = (object *)alloca(sizeof(object) * 39); -c_731485.elts[0] = ((closureN)self_73685)->elts[0]; -c_731485.elts[1] = ((closureN)self_73685)->elts[1]; -c_731485.elts[2] = ((closureN)self_73685)->elts[2]; -c_731485.elts[3] = ((closureN)self_73685)->elts[3]; -c_731485.elts[4] = ((closureN)self_73685)->elts[4]; -c_731485.elts[5] = ((closureN)self_73685)->elts[5]; -c_731485.elts[6] = ((closureN)self_73685)->elts[6]; -c_731485.elts[7] = ((closureN)self_73685)->elts[7]; -c_731485.elts[8] = ((closureN)self_73685)->elts[8]; -c_731485.elts[9] = ((closureN)self_73685)->elts[9]; -c_731485.elts[10] = ((closureN)self_73685)->elts[10]; -c_731485.elts[11] = ((closureN)self_73685)->elts[11]; -c_731485.elts[12] = ((closureN)self_73685)->elts[12]; -c_731485.elts[13] = ((closureN)self_73685)->elts[13]; -c_731485.elts[14] = ((closureN)self_73685)->elts[14]; -c_731485.elts[15] = ((closureN)self_73685)->elts[15]; -c_731485.elts[16] = ((closureN)self_73685)->elts[16]; -c_731485.elts[17] = ((closureN)self_73685)->elts[17]; -c_731485.elts[18] = ((closureN)self_73685)->elts[18]; -c_731485.elts[19] = ((closureN)self_73685)->elts[19]; -c_731485.elts[20] = ((closureN)self_73685)->elts[20]; -c_731485.elts[21] = ((closureN)self_73685)->elts[21]; -c_731485.elts[22] = ((closureN)self_73685)->elts[22]; -c_731485.elts[23] = ((closureN)self_73685)->elts[23]; -c_731485.elts[24] = ((closureN)self_73685)->elts[24]; -c_731485.elts[25] = ((closureN)self_73685)->elts[25]; -c_731485.elts[26] = ((closureN)self_73685)->elts[26]; -c_731485.elts[27] = ((closureN)self_73685)->elts[27]; -c_731485.elts[28] = term_91member_127_73119; -c_731485.elts[29] = ((closureN)self_73685)->elts[28]; -c_731485.elts[30] = ((closureN)self_73685)->elts[29]; -c_731485.elts[31] = ((closureN)self_73685)->elts[30]; -c_731485.elts[32] = ((closureN)self_73685)->elts[31]; -c_731485.elts[33] = ((closureN)self_73685)->elts[32]; -c_731485.elts[34] = ((closureN)self_73685)->elts[33]; -c_731485.elts[35] = ((closureN)self_73685)->elts[34]; -c_731485.elts[36] = ((closureN)self_73685)->elts[35]; -c_731485.elts[37] = ((closureN)self_73685)->elts[36]; -c_731485.elts[38] = ((closureN)self_73685)->elts[37]; - - -closureN_type c_733126; -c_733126.hdr.mark = gc_color_red; - c_733126.hdr.grayed = 0; -c_733126.tag = closureN_tag; - c_733126.fn = (function_type)__lambda_435; -c_733126.num_args = 0; -c_733126.num_elt = 1; -c_733126.elts = (object *)alloca(sizeof(object) * 1); -c_733126.elts[0] = ((closureN)self_73685)->elts[2]; - -return_closcall1(data,(closure)&c_731485, &c_733126);; -} - -static void __lambda_435(void *data, int argc, object self_73686, object k_73562) { - -closureN_type c_733128; -c_733128.hdr.mark = gc_color_red; - c_733128.hdr.grayed = 0; -c_733128.tag = closureN_tag; - c_733128.fn = (function_type)__lambda_434; -c_733128.num_args = 1; -c_733128.num_elt = 2; -c_733128.elts = (object *)alloca(sizeof(object) * 2); -c_733128.elts[0] = ((closureN)self_73686)->elts[0]; -c_733128.elts[1] = k_73562; - - -make_cons(c_733138,quote_form,nil); - -make_cons(c_733137,quote_compile,&c_733138); - -make_cons(c_733145,quote_form,nil); - -make_cons(c_733144,quote_optimize,&c_733145); - -make_cons(c_733147,quote_nil,nil); - -make_cons(c_733146,&c_733147,nil); - -make_cons(c_733143,&c_733144,&c_733146); - -make_cons(c_733142,quote_codegen,&c_733143); - -make_cons(c_733141,&c_733142,nil); - -make_cons(c_733140,quote_reverse,&c_733141); - -make_cons(c_733139,&c_733140,nil); - -make_cons(c_733136,&c_733137,&c_733139); - -make_cons(c_733135,quote_equal,&c_733136); - -make_cons(c_733153,quote_y,nil); - -make_cons(c_733152,quote_x,&c_733153); - -make_cons(c_733151,quote_eqp,&c_733152); - -make_cons(c_733158,quote_x,nil); - -make_cons(c_733157,quote_fix,&c_733158); - -make_cons(c_733161,quote_y,nil); - -make_cons(c_733160,quote_fix,&c_733161); - -make_cons(c_733159,&c_733160,nil); - -make_cons(c_733156,&c_733157,&c_733159); - -make_cons(c_733155,quote_equal,&c_733156); - -make_cons(c_733154,&c_733155,nil); - -make_cons(c_733150,&c_733151,&c_733154); - -make_cons(c_733149,quote_equal,&c_733150); - -make_cons(c_733167,quote_y,nil); - -make_cons(c_733166,quote_x,&c_733167); - -make_cons(c_733165,quote_greaterp,&c_733166); - -make_cons(c_733171,quote_x,nil); - -make_cons(c_733170,quote_y,&c_733171); - -make_cons(c_733169,quote_lessp,&c_733170); - -make_cons(c_733168,&c_733169,nil); - -make_cons(c_733164,&c_733165,&c_733168); - -make_cons(c_733163,quote_equal,&c_733164); - -make_cons(c_733177,quote_y,nil); - -make_cons(c_733176,quote_x,&c_733177); - -make_cons(c_733175,quote_lesseqp,&c_733176); - -make_cons(c_733183,quote_x,nil); - -make_cons(c_733182,quote_y,&c_733183); - -make_cons(c_733181,quote_lessp,&c_733182); - -make_cons(c_733180,&c_733181,nil); - -make_cons(c_733179,quote_not,&c_733180); - -make_cons(c_733178,&c_733179,nil); - -make_cons(c_733174,&c_733175,&c_733178); - -make_cons(c_733173,quote_equal,&c_733174); - -make_cons(c_733189,quote_y,nil); - -make_cons(c_733188,quote_x,&c_733189); - -make_cons(c_733187,quote_greatereqp,&c_733188); - -make_cons(c_733195,quote_y,nil); - -make_cons(c_733194,quote_x,&c_733195); - -make_cons(c_733193,quote_lessp,&c_733194); - -make_cons(c_733192,&c_733193,nil); - -make_cons(c_733191,quote_not,&c_733192); - -make_cons(c_733190,&c_733191,nil); - -make_cons(c_733186,&c_733187,&c_733190); - -make_cons(c_733185,quote_equal,&c_733186); - -make_cons(c_733200,quote_x,nil); - -make_cons(c_733199,quote_boolean,&c_733200); - -make_cons(c_733207,quote_t,nil); - -make_cons(c_733206,&c_733207,nil); - -make_cons(c_733205,quote_x,&c_733206); - -make_cons(c_733204,quote_equal,&c_733205); - -make_cons(c_733212,quote_f,nil); - -make_cons(c_733211,&c_733212,nil); - -make_cons(c_733210,quote_x,&c_733211); - -make_cons(c_733209,quote_equal,&c_733210); - -make_cons(c_733208,&c_733209,nil); - -make_cons(c_733203,&c_733204,&c_733208); - -make_cons(c_733202,quote_or,&c_733203); - -make_cons(c_733201,&c_733202,nil); - -make_cons(c_733198,&c_733199,&c_733201); - -make_cons(c_733197,quote_equal,&c_733198); - -make_cons(c_733218,quote_y,nil); - -make_cons(c_733217,quote_x,&c_733218); - -make_cons(c_733216,quote_iff,&c_733217); - -make_cons(c_733224,quote_y,nil); - -make_cons(c_733223,quote_x,&c_733224); - -make_cons(c_733222,quote_implies,&c_733223); - -make_cons(c_733228,quote_x,nil); - -make_cons(c_733227,quote_y,&c_733228); - -make_cons(c_733226,quote_implies,&c_733227); - -make_cons(c_733225,&c_733226,nil); - -make_cons(c_733221,&c_733222,&c_733225); - -make_cons(c_733220,quote_and,&c_733221); - -make_cons(c_733219,&c_733220,nil); - -make_cons(c_733215,&c_733216,&c_733219); - -make_cons(c_733214,quote_equal,&c_733215); - -make_cons(c_733233,quote_x,nil); - -make_cons(c_733232,quote_even1,&c_733233); - -make_cons(c_733238,quote_x,nil); - -make_cons(c_733237,quote_zerop,&c_733238); - -make_cons(c_733240,quote_t,nil); - -make_cons(c_733245,quote_x,nil); - -make_cons(c_733244,quote__1911_91,&c_733245); - -make_cons(c_733243,&c_733244,nil); - -make_cons(c_733242,quote_odd,&c_733243); - -make_cons(c_733241,&c_733242,nil); - -make_cons(c_733239,&c_733240,&c_733241); - -make_cons(c_733236,&c_733237,&c_733239); - -make_cons(c_733235,quote__if,&c_733236); - -make_cons(c_733234,&c_733235,nil); - -make_cons(c_733231,&c_733232,&c_733234); - -make_cons(c_733230,quote_equal,&c_733231); - -make_cons(c_733251,quote_pred,nil); - -make_cons(c_733250,quote_l,&c_733251); - -make_cons(c_733249,quote_countps_91,&c_733250); - -make_cons(c_733257,quote_zero,nil); - -make_cons(c_733256,&c_733257,nil); - -make_cons(c_733255,quote_pred,&c_733256); - -make_cons(c_733254,quote_l,&c_733255); - -make_cons(c_733253,quote_countps_91loop,&c_733254); - -make_cons(c_733252,&c_733253,nil); - -make_cons(c_733248,&c_733249,&c_733252); - -make_cons(c_733247,quote_equal,&c_733248); - -make_cons(c_733262,quote_i,nil); - -make_cons(c_733261,quote_fact_91,&c_733262); - -make_cons(c_733266,obj_int2obj(1),nil); - -make_cons(c_733265,quote_i,&c_733266); - -make_cons(c_733264,quote_fact_91loop,&c_733265); - -make_cons(c_733263,&c_733264,nil); - -make_cons(c_733260,&c_733261,&c_733263); - -make_cons(c_733259,quote_equal,&c_733260); - -make_cons(c_733271,quote_x,nil); - -make_cons(c_733270,quote_reverse_91,&c_733271); - -make_cons(c_733276,quote_nil,nil); - -make_cons(c_733275,&c_733276,nil); - -make_cons(c_733274,quote_x,&c_733275); - -make_cons(c_733273,quote_reverse_91loop,&c_733274); - -make_cons(c_733272,&c_733273,nil); - -make_cons(c_733269,&c_733270,&c_733272); - -make_cons(c_733268,quote_equal,&c_733269); - -make_cons(c_733282,quote_y,nil); - -make_cons(c_733281,quote_x,&c_733282); - -make_cons(c_733280,quote_divides,&c_733281); - -make_cons(c_733288,quote_x,nil); - -make_cons(c_733287,quote_y,&c_733288); - -make_cons(c_733286,quote_remainder,&c_733287); - -make_cons(c_733285,&c_733286,nil); - -make_cons(c_733284,quote_zerop,&c_733285); - -make_cons(c_733283,&c_733284,nil); - -make_cons(c_733279,&c_733280,&c_733283); - -make_cons(c_733278,quote_equal,&c_733279); - -make_cons(c_733294,quote_alist,nil); - -make_cons(c_733293,quote_var,&c_733294); - -make_cons(c_733292,quote_assume_91true,&c_733293); - -make_cons(c_733301,quote_t,nil); - -make_cons(c_733300,&c_733301,nil); - -make_cons(c_733299,quote_var,&c_733300); - -make_cons(c_733298,quote_cons,&c_733299); - -make_cons(c_733302,quote_alist,nil); - -make_cons(c_733297,&c_733298,&c_733302); - -make_cons(c_733296,quote_cons,&c_733297); - -make_cons(c_733295,&c_733296,nil); - -make_cons(c_733291,&c_733292,&c_733295); - -make_cons(c_733290,quote_equal,&c_733291); - -make_cons(c_733308,quote_alist,nil); - -make_cons(c_733307,quote_var,&c_733308); - -make_cons(c_733306,quote_assume_91false,&c_733307); - -make_cons(c_733315,quote_f,nil); - -make_cons(c_733314,&c_733315,nil); - -make_cons(c_733313,quote_var,&c_733314); - -make_cons(c_733312,quote_cons,&c_733313); - -make_cons(c_733316,quote_alist,nil); - -make_cons(c_733311,&c_733312,&c_733316); - -make_cons(c_733310,quote_cons,&c_733311); - -make_cons(c_733309,&c_733310,nil); - -make_cons(c_733305,&c_733306,&c_733309); - -make_cons(c_733304,quote_equal,&c_733305); - -make_cons(c_733321,quote_x,nil); - -make_cons(c_733320,quote_tautology_91checker,&c_733321); - -make_cons(c_733326,quote_x,nil); - -make_cons(c_733325,quote_normalize,&c_733326); - -make_cons(c_733328,quote_nil,nil); - -make_cons(c_733327,&c_733328,nil); - -make_cons(c_733324,&c_733325,&c_733327); - -make_cons(c_733323,quote_tautologyp,&c_733324); - -make_cons(c_733322,&c_733323,nil); - -make_cons(c_733319,&c_733320,&c_733322); - -make_cons(c_733318,quote_equal,&c_733319); - -make_cons(c_733333,quote_x,nil); - -make_cons(c_733332,quote_falsify,&c_733333); - -make_cons(c_733338,quote_x,nil); - -make_cons(c_733337,quote_normalize,&c_733338); - -make_cons(c_733340,quote_nil,nil); - -make_cons(c_733339,&c_733340,nil); - -make_cons(c_733336,&c_733337,&c_733339); - -make_cons(c_733335,quote_falsify1,&c_733336); - -make_cons(c_733334,&c_733335,nil); - -make_cons(c_733331,&c_733332,&c_733334); - -make_cons(c_733330,quote_equal,&c_733331); - -make_cons(c_733345,quote_x,nil); - -make_cons(c_733344,quote_prime,&c_733345); - -make_cons(c_733352,quote_x,nil); - -make_cons(c_733351,quote_zerop,&c_733352); - -make_cons(c_733350,&c_733351,nil); - -make_cons(c_733349,quote_not,&c_733350); - -make_cons(c_733361,quote_zero,nil); - -make_cons(c_733360,&c_733361,nil); - -make_cons(c_733359,quote_add1,&c_733360); - -make_cons(c_733358,&c_733359,nil); - -make_cons(c_733357,quote_x,&c_733358); - -make_cons(c_733356,quote_equal,&c_733357); - -make_cons(c_733355,&c_733356,nil); - -make_cons(c_733354,quote_not,&c_733355); - -make_cons(c_733367,quote_x,nil); - -make_cons(c_733366,quote__1911_91,&c_733367); - -make_cons(c_733365,&c_733366,nil); - -make_cons(c_733364,quote_x,&c_733365); - -make_cons(c_733363,quote_prime1,&c_733364); - -make_cons(c_733362,&c_733363,nil); - -make_cons(c_733353,&c_733354,&c_733362); - -make_cons(c_733348,&c_733349,&c_733353); - -make_cons(c_733347,quote_and,&c_733348); - -make_cons(c_733346,&c_733347,nil); - -make_cons(c_733343,&c_733344,&c_733346); - -make_cons(c_733342,quote_equal,&c_733343); - -make_cons(c_733373,quote_q,nil); - -make_cons(c_733372,quote_p,&c_733373); - -make_cons(c_733371,quote_and,&c_733372); - -make_cons(c_733381,quote_t,nil); - -make_cons(c_733383,quote_f,nil); - -make_cons(c_733382,&c_733383,nil); - -make_cons(c_733380,&c_733381,&c_733382); - -make_cons(c_733379,quote_q,&c_733380); - -make_cons(c_733378,quote__if,&c_733379); - -make_cons(c_733385,quote_f,nil); - -make_cons(c_733384,&c_733385,nil); - -make_cons(c_733377,&c_733378,&c_733384); - -make_cons(c_733376,quote_p,&c_733377); - -make_cons(c_733375,quote__if,&c_733376); - -make_cons(c_733374,&c_733375,nil); - -make_cons(c_733370,&c_733371,&c_733374); - -make_cons(c_733369,quote_equal,&c_733370); - -make_cons(c_733391,quote_q,nil); - -make_cons(c_733390,quote_p,&c_733391); - -make_cons(c_733389,quote_or,&c_733390); - -make_cons(c_733396,quote_t,nil); - -make_cons(c_733401,quote_t,nil); - -make_cons(c_733403,quote_f,nil); - -make_cons(c_733402,&c_733403,nil); - -make_cons(c_733400,&c_733401,&c_733402); - -make_cons(c_733399,quote_q,&c_733400); - -make_cons(c_733398,quote__if,&c_733399); - -make_cons(c_733397,&c_733398,nil); - -make_cons(c_733395,&c_733396,&c_733397); - -make_cons(c_733394,quote_p,&c_733395); - -make_cons(c_733393,quote__if,&c_733394); - -make_cons(c_733392,&c_733393,nil); - -make_cons(c_733388,&c_733389,&c_733392); - -make_cons(c_733387,quote_equal,&c_733388); - -make_cons(c_733408,quote_p,nil); - -make_cons(c_733407,quote_not,&c_733408); - -make_cons(c_733413,quote_f,nil); - -make_cons(c_733415,quote_t,nil); - -make_cons(c_733414,&c_733415,nil); - -make_cons(c_733412,&c_733413,&c_733414); - -make_cons(c_733411,quote_p,&c_733412); - -make_cons(c_733410,quote__if,&c_733411); - -make_cons(c_733409,&c_733410,nil); - -make_cons(c_733406,&c_733407,&c_733409); - -make_cons(c_733405,quote_equal,&c_733406); - -make_cons(c_733421,quote_q,nil); - -make_cons(c_733420,quote_p,&c_733421); - -make_cons(c_733419,quote_implies,&c_733420); - -make_cons(c_733429,quote_t,nil); - -make_cons(c_733431,quote_f,nil); - -make_cons(c_733430,&c_733431,nil); - -make_cons(c_733428,&c_733429,&c_733430); - -make_cons(c_733427,quote_q,&c_733428); - -make_cons(c_733426,quote__if,&c_733427); - -make_cons(c_733433,quote_t,nil); - -make_cons(c_733432,&c_733433,nil); - -make_cons(c_733425,&c_733426,&c_733432); - -make_cons(c_733424,quote_p,&c_733425); - -make_cons(c_733423,quote__if,&c_733424); - -make_cons(c_733422,&c_733423,nil); - -make_cons(c_733418,&c_733419,&c_733422); - -make_cons(c_733417,quote_equal,&c_733418); - -make_cons(c_733438,quote_x,nil); - -make_cons(c_733437,quote_fix,&c_733438); - -make_cons(c_733443,quote_x,nil); - -make_cons(c_733442,quote_numberp,&c_733443); - -make_cons(c_733446,quote_zero,nil); - -make_cons(c_733445,&c_733446,nil); - -make_cons(c_733444,quote_x,&c_733445); - -make_cons(c_733441,&c_733442,&c_733444); - -make_cons(c_733440,quote__if,&c_733441); - -make_cons(c_733439,&c_733440,nil); - -make_cons(c_733436,&c_733437,&c_733439); - -make_cons(c_733435,quote_equal,&c_733436); - -make_cons(c_733455,quote_c,nil); - -make_cons(c_733454,quote_b,&c_733455); - -make_cons(c_733453,quote_a,&c_733454); - -make_cons(c_733452,quote__if,&c_733453); - -make_cons(c_733457,quote_e,nil); - -make_cons(c_733456,quote_d,&c_733457); - -make_cons(c_733451,&c_733452,&c_733456); - -make_cons(c_733450,quote__if,&c_733451); - -make_cons(c_733465,quote_e,nil); - -make_cons(c_733464,quote_d,&c_733465); - -make_cons(c_733463,quote_b,&c_733464); - -make_cons(c_733462,quote__if,&c_733463); - -make_cons(c_733470,quote_e,nil); - -make_cons(c_733469,quote_d,&c_733470); - -make_cons(c_733468,quote_c,&c_733469); - -make_cons(c_733467,quote__if,&c_733468); - -make_cons(c_733466,&c_733467,nil); - -make_cons(c_733461,&c_733462,&c_733466); - -make_cons(c_733460,quote_a,&c_733461); - -make_cons(c_733459,quote__if,&c_733460); - -make_cons(c_733458,&c_733459,nil); - -make_cons(c_733449,&c_733450,&c_733458); - -make_cons(c_733448,quote_equal,&c_733449); - -make_cons(c_733475,quote_x,nil); - -make_cons(c_733474,quote_zerop,&c_733475); - -make_cons(c_733482,quote_zero,nil); - -make_cons(c_733481,&c_733482,nil); - -make_cons(c_733480,quote_x,&c_733481); - -make_cons(c_733479,quote_equal,&c_733480); - -make_cons(c_733487,quote_x,nil); - -make_cons(c_733486,quote_numberp,&c_733487); - -make_cons(c_733485,&c_733486,nil); - -make_cons(c_733484,quote_not,&c_733485); - -make_cons(c_733483,&c_733484,nil); - -make_cons(c_733478,&c_733479,&c_733483); - -make_cons(c_733477,quote_or,&c_733478); - -make_cons(c_733476,&c_733477,nil); - -make_cons(c_733473,&c_733474,&c_733476); - -make_cons(c_733472,quote_equal,&c_733473); - -make_cons(c_733495,quote_y,nil); - -make_cons(c_733494,quote_x,&c_733495); - -make_cons(c_733493,quote_plus,&c_733494); - -make_cons(c_733496,quote_z,nil); - -make_cons(c_733492,&c_733493,&c_733496); - -make_cons(c_733491,quote_plus,&c_733492); - -make_cons(c_733503,quote_z,nil); - -make_cons(c_733502,quote_y,&c_733503); - -make_cons(c_733501,quote_plus,&c_733502); - -make_cons(c_733500,&c_733501,nil); - -make_cons(c_733499,quote_x,&c_733500); - -make_cons(c_733498,quote_plus,&c_733499); - -make_cons(c_733497,&c_733498,nil); - -make_cons(c_733490,&c_733491,&c_733497); - -make_cons(c_733489,quote_equal,&c_733490); - -make_cons(c_733511,quote_b,nil); - -make_cons(c_733510,quote_a,&c_733511); - -make_cons(c_733509,quote_plus,&c_733510); - -make_cons(c_733513,quote_zero,nil); - -make_cons(c_733512,&c_733513,nil); - -make_cons(c_733508,&c_733509,&c_733512); - -make_cons(c_733507,quote_equal,&c_733508); - -make_cons(c_733518,quote_a,nil); - -make_cons(c_733517,quote_zerop,&c_733518); - -make_cons(c_733521,quote_b,nil); - -make_cons(c_733520,quote_zerop,&c_733521); - -make_cons(c_733519,&c_733520,nil); - -make_cons(c_733516,&c_733517,&c_733519); - -make_cons(c_733515,quote_and,&c_733516); - -make_cons(c_733514,&c_733515,nil); - -make_cons(c_733506,&c_733507,&c_733514); - -make_cons(c_733505,quote_equal,&c_733506); - -make_cons(c_733527,quote_x,nil); - -make_cons(c_733526,quote_x,&c_733527); - -make_cons(c_733525,quote_difference,&c_733526); - -make_cons(c_733529,quote_zero,nil); - -make_cons(c_733528,&c_733529,nil); - -make_cons(c_733524,&c_733525,&c_733528); - -make_cons(c_733523,quote_equal,&c_733524); - -make_cons(c_733537,quote_b,nil); - -make_cons(c_733536,quote_a,&c_733537); - -make_cons(c_733535,quote_plus,&c_733536); - -make_cons(c_733541,quote_c,nil); - -make_cons(c_733540,quote_a,&c_733541); - -make_cons(c_733539,quote_plus,&c_733540); - -make_cons(c_733538,&c_733539,nil); - -make_cons(c_733534,&c_733535,&c_733538); - -make_cons(c_733533,quote_equal,&c_733534); - -make_cons(c_733546,quote_b,nil); - -make_cons(c_733545,quote_fix,&c_733546); - -make_cons(c_733549,quote_c,nil); - -make_cons(c_733548,quote_fix,&c_733549); - -make_cons(c_733547,&c_733548,nil); - -make_cons(c_733544,&c_733545,&c_733547); - -make_cons(c_733543,quote_equal,&c_733544); - -make_cons(c_733542,&c_733543,nil); - -make_cons(c_733532,&c_733533,&c_733542); - -make_cons(c_733531,quote_equal,&c_733532); - -make_cons(c_733555,quote_zero,nil); - -make_cons(c_733559,quote_y,nil); - -make_cons(c_733558,quote_x,&c_733559); - -make_cons(c_733557,quote_difference,&c_733558); - -make_cons(c_733556,&c_733557,nil); - -make_cons(c_733554,&c_733555,&c_733556); - -make_cons(c_733553,quote_equal,&c_733554); - -make_cons(c_733565,quote_x,nil); - -make_cons(c_733564,quote_y,&c_733565); - -make_cons(c_733563,quote_lessp,&c_733564); - -make_cons(c_733562,&c_733563,nil); - -make_cons(c_733561,quote_not,&c_733562); - -make_cons(c_733560,&c_733561,nil); - -make_cons(c_733552,&c_733553,&c_733560); - -make_cons(c_733551,quote_equal,&c_733552); - -make_cons(c_733574,quote_y,nil); - -make_cons(c_733573,quote_x,&c_733574); - -make_cons(c_733572,quote_difference,&c_733573); - -make_cons(c_733571,&c_733572,nil); - -make_cons(c_733570,quote_x,&c_733571); - -make_cons(c_733569,quote_equal,&c_733570); - -make_cons(c_733579,quote_x,nil); - -make_cons(c_733578,quote_numberp,&c_733579); - -make_cons(c_733586,quote_zero,nil); - -make_cons(c_733585,&c_733586,nil); - -make_cons(c_733584,quote_x,&c_733585); - -make_cons(c_733583,quote_equal,&c_733584); - -make_cons(c_733589,quote_y,nil); - -make_cons(c_733588,quote_zerop,&c_733589); - -make_cons(c_733587,&c_733588,nil); - -make_cons(c_733582,&c_733583,&c_733587); - -make_cons(c_733581,quote_or,&c_733582); - -make_cons(c_733580,&c_733581,nil); - -make_cons(c_733577,&c_733578,&c_733580); - -make_cons(c_733576,quote_and,&c_733577); - -make_cons(c_733575,&c_733576,nil); - -make_cons(c_733568,&c_733569,&c_733575); - -make_cons(c_733567,quote_equal,&c_733568); - -make_cons(c_733599,quote_y,nil); - -make_cons(c_733598,quote_x,&c_733599); - -make_cons(c_733597,quote_append,&c_733598); - -make_cons(c_733596,&c_733597,nil); - -make_cons(c_733595,quote_plus_91tree,&c_733596); - -make_cons(c_733600,quote_a,nil); - -make_cons(c_733594,&c_733595,&c_733600); - -make_cons(c_733593,quote_meaning,&c_733594); - -make_cons(c_733607,quote_x,nil); - -make_cons(c_733606,quote_plus_91tree,&c_733607); - -make_cons(c_733608,quote_a,nil); - -make_cons(c_733605,&c_733606,&c_733608); - -make_cons(c_733604,quote_meaning,&c_733605); - -make_cons(c_733613,quote_y,nil); - -make_cons(c_733612,quote_plus_91tree,&c_733613); - -make_cons(c_733614,quote_a,nil); - -make_cons(c_733611,&c_733612,&c_733614); - -make_cons(c_733610,quote_meaning,&c_733611); - -make_cons(c_733609,&c_733610,nil); - -make_cons(c_733603,&c_733604,&c_733609); - -make_cons(c_733602,quote_plus,&c_733603); - -make_cons(c_733601,&c_733602,nil); - -make_cons(c_733592,&c_733593,&c_733601); - -make_cons(c_733591,quote_equal,&c_733592); - -make_cons(c_733623,quote_x,nil); - -make_cons(c_733622,quote_plus_91fringe,&c_733623); - -make_cons(c_733621,&c_733622,nil); - -make_cons(c_733620,quote_plus_91tree,&c_733621); - -make_cons(c_733624,quote_a,nil); - -make_cons(c_733619,&c_733620,&c_733624); - -make_cons(c_733618,quote_meaning,&c_733619); - -make_cons(c_733630,quote_a,nil); - -make_cons(c_733629,quote_x,&c_733630); - -make_cons(c_733628,quote_meaning,&c_733629); - -make_cons(c_733627,&c_733628,nil); - -make_cons(c_733626,quote_fix,&c_733627); - -make_cons(c_733625,&c_733626,nil); - -make_cons(c_733617,&c_733618,&c_733625); - -make_cons(c_733616,quote_equal,&c_733617); - -make_cons(c_733638,quote_y,nil); - -make_cons(c_733637,quote_x,&c_733638); - -make_cons(c_733636,quote_append,&c_733637); - -make_cons(c_733639,quote_z,nil); - -make_cons(c_733635,&c_733636,&c_733639); - -make_cons(c_733634,quote_append,&c_733635); - -make_cons(c_733646,quote_z,nil); - -make_cons(c_733645,quote_y,&c_733646); - -make_cons(c_733644,quote_append,&c_733645); - -make_cons(c_733643,&c_733644,nil); - -make_cons(c_733642,quote_x,&c_733643); - -make_cons(c_733641,quote_append,&c_733642); - -make_cons(c_733640,&c_733641,nil); - -make_cons(c_733633,&c_733634,&c_733640); - -make_cons(c_733632,quote_equal,&c_733633); - -make_cons(c_733654,quote_b,nil); - -make_cons(c_733653,quote_a,&c_733654); - -make_cons(c_733652,quote_append,&c_733653); - -make_cons(c_733651,&c_733652,nil); - -make_cons(c_733650,quote_reverse,&c_733651); - -make_cons(c_733659,quote_b,nil); - -make_cons(c_733658,quote_reverse,&c_733659); - -make_cons(c_733662,quote_a,nil); - -make_cons(c_733661,quote_reverse,&c_733662); - -make_cons(c_733660,&c_733661,nil); - -make_cons(c_733657,&c_733658,&c_733660); - -make_cons(c_733656,quote_append,&c_733657); - -make_cons(c_733655,&c_733656,nil); - -make_cons(c_733649,&c_733650,&c_733655); - -make_cons(c_733648,quote_equal,&c_733649); - -make_cons(c_733671,quote_z,nil); - -make_cons(c_733670,quote_y,&c_733671); - -make_cons(c_733669,quote_plus,&c_733670); - -make_cons(c_733668,&c_733669,nil); - -make_cons(c_733667,quote_x,&c_733668); - -make_cons(c_733666,quote_times,&c_733667); - -make_cons(c_733677,quote_y,nil); - -make_cons(c_733676,quote_x,&c_733677); - -make_cons(c_733675,quote_times,&c_733676); - -make_cons(c_733681,quote_z,nil); - -make_cons(c_733680,quote_x,&c_733681); - -make_cons(c_733679,quote_times,&c_733680); - -make_cons(c_733678,&c_733679,nil); - -make_cons(c_733674,&c_733675,&c_733678); - -make_cons(c_733673,quote_plus,&c_733674); - -make_cons(c_733672,&c_733673,nil); - -make_cons(c_733665,&c_733666,&c_733672); - -make_cons(c_733664,quote_equal,&c_733665); - -make_cons(c_733689,quote_y,nil); - -make_cons(c_733688,quote_x,&c_733689); - -make_cons(c_733687,quote_times,&c_733688); - -make_cons(c_733690,quote_z,nil); - -make_cons(c_733686,&c_733687,&c_733690); - -make_cons(c_733685,quote_times,&c_733686); - -make_cons(c_733697,quote_z,nil); - -make_cons(c_733696,quote_y,&c_733697); - -make_cons(c_733695,quote_times,&c_733696); - -make_cons(c_733694,&c_733695,nil); - -make_cons(c_733693,quote_x,&c_733694); - -make_cons(c_733692,quote_times,&c_733693); - -make_cons(c_733691,&c_733692,nil); - -make_cons(c_733684,&c_733685,&c_733691); - -make_cons(c_733683,quote_equal,&c_733684); - -make_cons(c_733705,quote_y,nil); - -make_cons(c_733704,quote_x,&c_733705); - -make_cons(c_733703,quote_times,&c_733704); - -make_cons(c_733707,quote_zero,nil); - -make_cons(c_733706,&c_733707,nil); - -make_cons(c_733702,&c_733703,&c_733706); - -make_cons(c_733701,quote_equal,&c_733702); - -make_cons(c_733712,quote_x,nil); - -make_cons(c_733711,quote_zerop,&c_733712); - -make_cons(c_733715,quote_y,nil); - -make_cons(c_733714,quote_zerop,&c_733715); - -make_cons(c_733713,&c_733714,nil); - -make_cons(c_733710,&c_733711,&c_733713); - -make_cons(c_733709,quote_or,&c_733710); - -make_cons(c_733708,&c_733709,nil); - -make_cons(c_733700,&c_733701,&c_733708); - -make_cons(c_733699,quote_equal,&c_733700); - -make_cons(c_733723,quote_y,nil); - -make_cons(c_733722,quote_x,&c_733723); - -make_cons(c_733721,quote_append,&c_733722); - -make_cons(c_733725,quote_envrn,nil); - -make_cons(c_733724,quote_pds,&c_733725); - -make_cons(c_733720,&c_733721,&c_733724); - -make_cons(c_733719,quote_exec,&c_733720); - -make_cons(c_733733,quote_envrn,nil); - -make_cons(c_733732,quote_pds,&c_733733); - -make_cons(c_733731,quote_x,&c_733732); - -make_cons(c_733730,quote_exec,&c_733731); - -make_cons(c_733734,quote_envrn,nil); - -make_cons(c_733729,&c_733730,&c_733734); - -make_cons(c_733728,quote_y,&c_733729); - -make_cons(c_733727,quote_exec,&c_733728); - -make_cons(c_733726,&c_733727,nil); - -make_cons(c_733718,&c_733719,&c_733726); - -make_cons(c_733717,quote_equal,&c_733718); - -make_cons(c_733740,quote_y,nil); - -make_cons(c_733739,quote_x,&c_733740); - -make_cons(c_733738,quote_mc_91flatten,&c_733739); - -make_cons(c_733745,quote_x,nil); - -make_cons(c_733744,quote_flatten,&c_733745); - -make_cons(c_733746,quote_y,nil); - -make_cons(c_733743,&c_733744,&c_733746); - -make_cons(c_733742,quote_append,&c_733743); - -make_cons(c_733741,&c_733742,nil); - -make_cons(c_733737,&c_733738,&c_733741); - -make_cons(c_733736,quote_equal,&c_733737); - -make_cons(c_733755,quote_b,nil); - -make_cons(c_733754,quote_a,&c_733755); - -make_cons(c_733753,quote_append,&c_733754); - -make_cons(c_733752,&c_733753,nil); - -make_cons(c_733751,quote_x,&c_733752); - -make_cons(c_733750,quote_member,&c_733751); - -make_cons(c_733761,quote_a,nil); - -make_cons(c_733760,quote_x,&c_733761); - -make_cons(c_733759,quote_member,&c_733760); - -make_cons(c_733765,quote_b,nil); - -make_cons(c_733764,quote_x,&c_733765); - -make_cons(c_733763,quote_member,&c_733764); - -make_cons(c_733762,&c_733763,nil); - -make_cons(c_733758,&c_733759,&c_733762); - -make_cons(c_733757,quote_or,&c_733758); - -make_cons(c_733756,&c_733757,nil); - -make_cons(c_733749,&c_733750,&c_733756); - -make_cons(c_733748,quote_equal,&c_733749); - -make_cons(c_733773,quote_y,nil); - -make_cons(c_733772,quote_reverse,&c_733773); - -make_cons(c_733771,&c_733772,nil); - -make_cons(c_733770,quote_x,&c_733771); - -make_cons(c_733769,quote_member,&c_733770); - -make_cons(c_733777,quote_y,nil); - -make_cons(c_733776,quote_x,&c_733777); - -make_cons(c_733775,quote_member,&c_733776); - -make_cons(c_733774,&c_733775,nil); - -make_cons(c_733768,&c_733769,&c_733774); - -make_cons(c_733767,quote_equal,&c_733768); - -make_cons(c_733784,quote_x,nil); - -make_cons(c_733783,quote_reverse,&c_733784); - -make_cons(c_733782,&c_733783,nil); - -make_cons(c_733781,quote_length,&c_733782); - -make_cons(c_733787,quote_x,nil); - -make_cons(c_733786,quote_length,&c_733787); - -make_cons(c_733785,&c_733786,nil); - -make_cons(c_733780,&c_733781,&c_733785); - -make_cons(c_733779,quote_equal,&c_733780); - -make_cons(c_733796,quote_c,nil); - -make_cons(c_733795,quote_b,&c_733796); - -make_cons(c_733794,quote_intersect,&c_733795); - -make_cons(c_733793,&c_733794,nil); - -make_cons(c_733792,quote_a,&c_733793); - -make_cons(c_733791,quote_member,&c_733792); - -make_cons(c_733802,quote_b,nil); - -make_cons(c_733801,quote_a,&c_733802); - -make_cons(c_733800,quote_member,&c_733801); - -make_cons(c_733806,quote_c,nil); - -make_cons(c_733805,quote_a,&c_733806); - -make_cons(c_733804,quote_member,&c_733805); - -make_cons(c_733803,&c_733804,nil); - -make_cons(c_733799,&c_733800,&c_733803); - -make_cons(c_733798,quote_and,&c_733799); - -make_cons(c_733797,&c_733798,nil); - -make_cons(c_733790,&c_733791,&c_733797); - -make_cons(c_733789,quote_equal,&c_733790); - -make_cons(c_733812,quote_zero,nil); - -make_cons(c_733813,quote_i,nil); - -make_cons(c_733811,&c_733812,&c_733813); - -make_cons(c_733810,quote_nth,&c_733811); - -make_cons(c_733815,quote_zero,nil); - -make_cons(c_733814,&c_733815,nil); - -make_cons(c_733809,&c_733810,&c_733814); - -make_cons(c_733808,quote_equal,&c_733809); - -make_cons(c_733824,quote_k,nil); - -make_cons(c_733823,quote_j,&c_733824); - -make_cons(c_733822,quote_plus,&c_733823); - -make_cons(c_733821,&c_733822,nil); - -make_cons(c_733820,quote_i,&c_733821); - -make_cons(c_733819,quote_exp,&c_733820); - -make_cons(c_733830,quote_j,nil); - -make_cons(c_733829,quote_i,&c_733830); - -make_cons(c_733828,quote_exp,&c_733829); - -make_cons(c_733834,quote_k,nil); - -make_cons(c_733833,quote_i,&c_733834); - -make_cons(c_733832,quote_exp,&c_733833); - -make_cons(c_733831,&c_733832,nil); - -make_cons(c_733827,&c_733828,&c_733831); - -make_cons(c_733826,quote_times,&c_733827); - -make_cons(c_733825,&c_733826,nil); - -make_cons(c_733818,&c_733819,&c_733825); - -make_cons(c_733817,quote_equal,&c_733818); - -make_cons(c_733843,quote_k,nil); - -make_cons(c_733842,quote_j,&c_733843); - -make_cons(c_733841,quote_times,&c_733842); - -make_cons(c_733840,&c_733841,nil); - -make_cons(c_733839,quote_i,&c_733840); - -make_cons(c_733838,quote_exp,&c_733839); - -make_cons(c_733849,quote_j,nil); - -make_cons(c_733848,quote_i,&c_733849); - -make_cons(c_733847,quote_exp,&c_733848); - -make_cons(c_733850,quote_k,nil); - -make_cons(c_733846,&c_733847,&c_733850); - -make_cons(c_733845,quote_exp,&c_733846); - -make_cons(c_733844,&c_733845,nil); - -make_cons(c_733837,&c_733838,&c_733844); - -make_cons(c_733836,quote_equal,&c_733837); - -make_cons(c_733856,quote_y,nil); - -make_cons(c_733855,quote_x,&c_733856); - -make_cons(c_733854,quote_reverse_91loop,&c_733855); - -make_cons(c_733861,quote_x,nil); - -make_cons(c_733860,quote_reverse,&c_733861); - -make_cons(c_733862,quote_y,nil); - -make_cons(c_733859,&c_733860,&c_733862); - -make_cons(c_733858,quote_append,&c_733859); - -make_cons(c_733857,&c_733858,nil); - -make_cons(c_733853,&c_733854,&c_733857); - -make_cons(c_733852,quote_equal,&c_733853); - -make_cons(c_733869,quote_nil,nil); - -make_cons(c_733868,&c_733869,nil); - -make_cons(c_733867,quote_x,&c_733868); - -make_cons(c_733866,quote_reverse_91loop,&c_733867); - -make_cons(c_733872,quote_x,nil); - -make_cons(c_733871,quote_reverse,&c_733872); - -make_cons(c_733870,&c_733871,nil); - -make_cons(c_733865,&c_733866,&c_733870); - -make_cons(c_733864,quote_equal,&c_733865); - -make_cons(c_733881,quote_y,nil); - -make_cons(c_733880,quote_x,&c_733881); - -make_cons(c_733879,quote_sort_91lp,&c_733880); - -make_cons(c_733878,&c_733879,nil); - -make_cons(c_733877,quote_z,&c_733878); - -make_cons(c_733876,quote_count_91list,&c_733877); - -make_cons(c_733887,quote_x,nil); - -make_cons(c_733886,quote_z,&c_733887); - -make_cons(c_733885,quote_count_91list,&c_733886); - -make_cons(c_733891,quote_y,nil); - -make_cons(c_733890,quote_z,&c_733891); - -make_cons(c_733889,quote_count_91list,&c_733890); - -make_cons(c_733888,&c_733889,nil); - -make_cons(c_733884,&c_733885,&c_733888); - -make_cons(c_733883,quote_plus,&c_733884); - -make_cons(c_733882,&c_733883,nil); - -make_cons(c_733875,&c_733876,&c_733882); - -make_cons(c_733874,quote_equal,&c_733875); - -make_cons(c_733899,quote_b,nil); - -make_cons(c_733898,quote_a,&c_733899); - -make_cons(c_733897,quote_append,&c_733898); - -make_cons(c_733903,quote_c,nil); - -make_cons(c_733902,quote_a,&c_733903); - -make_cons(c_733901,quote_append,&c_733902); - -make_cons(c_733900,&c_733901,nil); - -make_cons(c_733896,&c_733897,&c_733900); - -make_cons(c_733895,quote_equal,&c_733896); - -make_cons(c_733907,quote_c,nil); - -make_cons(c_733906,quote_b,&c_733907); - -make_cons(c_733905,quote_equal,&c_733906); - -make_cons(c_733904,&c_733905,nil); - -make_cons(c_733894,&c_733895,&c_733904); - -make_cons(c_733893,quote_equal,&c_733894); - -make_cons(c_733915,quote_y,nil); - -make_cons(c_733914,quote_x,&c_733915); - -make_cons(c_733913,quote_remainder,&c_733914); - -make_cons(c_733922,quote_y,nil); - -make_cons(c_733921,quote_x,&c_733922); - -make_cons(c_733920,quote_quotient,&c_733921); - -make_cons(c_733919,&c_733920,nil); - -make_cons(c_733918,quote_y,&c_733919); - -make_cons(c_733917,quote_times,&c_733918); - -make_cons(c_733916,&c_733917,nil); - -make_cons(c_733912,&c_733913,&c_733916); - -make_cons(c_733911,quote_plus,&c_733912); - -make_cons(c_733925,quote_x,nil); - -make_cons(c_733924,quote_fix,&c_733925); - -make_cons(c_733923,&c_733924,nil); - -make_cons(c_733910,&c_733911,&c_733923); - -make_cons(c_733909,quote_equal,&c_733910); - -make_cons(c_733934,quote_base,nil); - -make_cons(c_733933,quote_i,&c_733934); - -make_cons(c_733932,quote_l,&c_733933); - -make_cons(c_733931,quote_big_91plus1,&c_733932); - -make_cons(c_733935,quote_base,nil); - -make_cons(c_733930,&c_733931,&c_733935); - -make_cons(c_733929,quote_power_91eval,&c_733930); - -make_cons(c_733941,quote_base,nil); - -make_cons(c_733940,quote_l,&c_733941); - -make_cons(c_733939,quote_power_91eval,&c_733940); - -make_cons(c_733942,quote_i,nil); - -make_cons(c_733938,&c_733939,&c_733942); - -make_cons(c_733937,quote_plus,&c_733938); - -make_cons(c_733936,&c_733937,nil); - -make_cons(c_733928,&c_733929,&c_733936); - -make_cons(c_733927,quote_equal,&c_733928); - -make_cons(c_733952,quote_base,nil); - -make_cons(c_733951,quote_i,&c_733952); - -make_cons(c_733950,quote_y,&c_733951); - -make_cons(c_733949,quote_x,&c_733950); - -make_cons(c_733948,quote_big_91plus,&c_733949); - -make_cons(c_733953,quote_base,nil); - -make_cons(c_733947,&c_733948,&c_733953); - -make_cons(c_733946,quote_power_91eval,&c_733947); - -make_cons(c_733962,quote_base,nil); - -make_cons(c_733961,quote_x,&c_733962); - -make_cons(c_733960,quote_power_91eval,&c_733961); - -make_cons(c_733966,quote_base,nil); - -make_cons(c_733965,quote_y,&c_733966); - -make_cons(c_733964,quote_power_91eval,&c_733965); - -make_cons(c_733963,&c_733964,nil); - -make_cons(c_733959,&c_733960,&c_733963); - -make_cons(c_733958,quote_plus,&c_733959); - -make_cons(c_733957,&c_733958,nil); - -make_cons(c_733956,quote_i,&c_733957); - -make_cons(c_733955,quote_plus,&c_733956); - -make_cons(c_733954,&c_733955,nil); - -make_cons(c_733945,&c_733946,&c_733954); - -make_cons(c_733944,quote_equal,&c_733945); - -make_cons(c_733972,obj_int2obj(1),nil); - -make_cons(c_733971,quote_y,&c_733972); - -make_cons(c_733970,quote_remainder,&c_733971); - -make_cons(c_733974,quote_zero,nil); - -make_cons(c_733973,&c_733974,nil); - -make_cons(c_733969,&c_733970,&c_733973); - -make_cons(c_733968,quote_equal,&c_733969); - -make_cons(c_733982,quote_y,nil); - -make_cons(c_733981,quote_x,&c_733982); - -make_cons(c_733980,quote_remainder,&c_733981); - -make_cons(c_733983,quote_y,nil); - -make_cons(c_733979,&c_733980,&c_733983); - -make_cons(c_733978,quote_lessp,&c_733979); - -make_cons(c_733988,quote_y,nil); - -make_cons(c_733987,quote_zerop,&c_733988); - -make_cons(c_733986,&c_733987,nil); - -make_cons(c_733985,quote_not,&c_733986); - -make_cons(c_733984,&c_733985,nil); - -make_cons(c_733977,&c_733978,&c_733984); - -make_cons(c_733976,quote_equal,&c_733977); - -make_cons(c_733994,quote_x,nil); - -make_cons(c_733993,quote_x,&c_733994); - -make_cons(c_733992,quote_remainder,&c_733993); - -make_cons(c_733996,quote_zero,nil); - -make_cons(c_733995,&c_733996,nil); - -make_cons(c_733991,&c_733992,&c_733995); - -make_cons(c_733990,quote_equal,&c_733991); - -make_cons(c_734004,quote_j,nil); - -make_cons(c_734003,quote_i,&c_734004); - -make_cons(c_734002,quote_quotient,&c_734003); - -make_cons(c_734005,quote_i,nil); - -make_cons(c_734001,&c_734002,&c_734005); - -make_cons(c_734000,quote_lessp,&c_734001); - -make_cons(c_734012,quote_i,nil); - -make_cons(c_734011,quote_zerop,&c_734012); - -make_cons(c_734010,&c_734011,nil); - -make_cons(c_734009,quote_not,&c_734010); - -make_cons(c_734017,quote_j,nil); - -make_cons(c_734016,quote_zerop,&c_734017); - -make_cons(c_734023,obj_int2obj(1),nil); - -make_cons(c_734022,quote_j,&c_734023); - -make_cons(c_734021,quote_equal,&c_734022); - -make_cons(c_734020,&c_734021,nil); - -make_cons(c_734019,quote_not,&c_734020); - -make_cons(c_734018,&c_734019,nil); - -make_cons(c_734015,&c_734016,&c_734018); - -make_cons(c_734014,quote_or,&c_734015); - -make_cons(c_734013,&c_734014,nil); - -make_cons(c_734008,&c_734009,&c_734013); - -make_cons(c_734007,quote_and,&c_734008); - -make_cons(c_734006,&c_734007,nil); - -make_cons(c_733999,&c_734000,&c_734006); - -make_cons(c_733998,quote_equal,&c_733999); - -make_cons(c_734031,quote_y,nil); - -make_cons(c_734030,quote_x,&c_734031); - -make_cons(c_734029,quote_remainder,&c_734030); - -make_cons(c_734032,quote_x,nil); - -make_cons(c_734028,&c_734029,&c_734032); - -make_cons(c_734027,quote_lessp,&c_734028); - -make_cons(c_734039,quote_y,nil); - -make_cons(c_734038,quote_zerop,&c_734039); - -make_cons(c_734037,&c_734038,nil); - -make_cons(c_734036,quote_not,&c_734037); - -make_cons(c_734044,quote_x,nil); - -make_cons(c_734043,quote_zerop,&c_734044); - -make_cons(c_734042,&c_734043,nil); - -make_cons(c_734041,quote_not,&c_734042); - -make_cons(c_734050,quote_y,nil); - -make_cons(c_734049,quote_x,&c_734050); - -make_cons(c_734048,quote_lessp,&c_734049); - -make_cons(c_734047,&c_734048,nil); - -make_cons(c_734046,quote_not,&c_734047); - -make_cons(c_734045,&c_734046,nil); - -make_cons(c_734040,&c_734041,&c_734045); - -make_cons(c_734035,&c_734036,&c_734040); - -make_cons(c_734034,quote_and,&c_734035); - -make_cons(c_734033,&c_734034,nil); - -make_cons(c_734026,&c_734027,&c_734033); - -make_cons(c_734025,quote_equal,&c_734026); - -make_cons(c_734058,quote_base,nil); - -make_cons(c_734057,quote_i,&c_734058); - -make_cons(c_734056,quote_power_91rep,&c_734057); - -make_cons(c_734059,quote_base,nil); - -make_cons(c_734055,&c_734056,&c_734059); - -make_cons(c_734054,quote_power_91eval,&c_734055); - -make_cons(c_734062,quote_i,nil); - -make_cons(c_734061,quote_fix,&c_734062); - -make_cons(c_734060,&c_734061,nil); - -make_cons(c_734053,&c_734054,&c_734060); - -make_cons(c_734052,quote_equal,&c_734053); - -make_cons(c_734072,quote_base,nil); - -make_cons(c_734071,quote_i,&c_734072); - -make_cons(c_734070,quote_power_91rep,&c_734071); - -make_cons(c_734076,quote_base,nil); - -make_cons(c_734075,quote_j,&c_734076); - -make_cons(c_734074,quote_power_91rep,&c_734075); - -make_cons(c_734078,quote_zero,nil); - -make_cons(c_734079,quote_base,nil); - -make_cons(c_734077,&c_734078,&c_734079); - -make_cons(c_734073,&c_734074,&c_734077); - -make_cons(c_734069,&c_734070,&c_734073); - -make_cons(c_734068,quote_big_91plus,&c_734069); - -make_cons(c_734080,quote_base,nil); - -make_cons(c_734067,&c_734068,&c_734080); - -make_cons(c_734066,quote_power_91eval,&c_734067); - -make_cons(c_734084,quote_j,nil); - -make_cons(c_734083,quote_i,&c_734084); - -make_cons(c_734082,quote_plus,&c_734083); - -make_cons(c_734081,&c_734082,nil); - -make_cons(c_734065,&c_734066,&c_734081); - -make_cons(c_734064,quote_equal,&c_734065); - -make_cons(c_734090,quote_y,nil); - -make_cons(c_734089,quote_x,&c_734090); - -make_cons(c_734088,quote_gcd,&c_734089); - -make_cons(c_734094,quote_x,nil); - -make_cons(c_734093,quote_y,&c_734094); - -make_cons(c_734092,quote_gcd,&c_734093); - -make_cons(c_734091,&c_734092,nil); - -make_cons(c_734087,&c_734088,&c_734091); - -make_cons(c_734086,quote_equal,&c_734087); - -make_cons(c_734102,quote_b,nil); - -make_cons(c_734101,quote_a,&c_734102); - -make_cons(c_734100,quote_append,&c_734101); - -make_cons(c_734103,quote_i,nil); - -make_cons(c_734099,&c_734100,&c_734103); - -make_cons(c_734098,quote_nth,&c_734099); - -make_cons(c_734109,quote_i,nil); - -make_cons(c_734108,quote_a,&c_734109); - -make_cons(c_734107,quote_nth,&c_734108); - -make_cons(c_734118,quote_a,nil); - -make_cons(c_734117,quote_length,&c_734118); - -make_cons(c_734116,&c_734117,nil); - -make_cons(c_734115,quote_i,&c_734116); - -make_cons(c_734114,quote_difference,&c_734115); - -make_cons(c_734113,&c_734114,nil); - -make_cons(c_734112,quote_b,&c_734113); - -make_cons(c_734111,quote_nth,&c_734112); - -make_cons(c_734110,&c_734111,nil); - -make_cons(c_734106,&c_734107,&c_734110); - -make_cons(c_734105,quote_append,&c_734106); - -make_cons(c_734104,&c_734105,nil); - -make_cons(c_734097,&c_734098,&c_734104); - -make_cons(c_734096,quote_equal,&c_734097); - -make_cons(c_734126,quote_y,nil); - -make_cons(c_734125,quote_x,&c_734126); - -make_cons(c_734124,quote_plus,&c_734125); - -make_cons(c_734127,quote_x,nil); - -make_cons(c_734123,&c_734124,&c_734127); - -make_cons(c_734122,quote_difference,&c_734123); - -make_cons(c_734130,quote_y,nil); - -make_cons(c_734129,quote_fix,&c_734130); - -make_cons(c_734128,&c_734129,nil); - -make_cons(c_734121,&c_734122,&c_734128); - -make_cons(c_734120,quote_equal,&c_734121); - -make_cons(c_734138,quote_x,nil); - -make_cons(c_734137,quote_y,&c_734138); - -make_cons(c_734136,quote_plus,&c_734137); - -make_cons(c_734139,quote_x,nil); - -make_cons(c_734135,&c_734136,&c_734139); - -make_cons(c_734134,quote_difference,&c_734135); - -make_cons(c_734142,quote_y,nil); - -make_cons(c_734141,quote_fix,&c_734142); - -make_cons(c_734140,&c_734141,nil); - -make_cons(c_734133,&c_734134,&c_734140); - -make_cons(c_734132,quote_equal,&c_734133); - -make_cons(c_734150,quote_y,nil); - -make_cons(c_734149,quote_x,&c_734150); - -make_cons(c_734148,quote_plus,&c_734149); - -make_cons(c_734154,quote_z,nil); - -make_cons(c_734153,quote_x,&c_734154); - -make_cons(c_734152,quote_plus,&c_734153); - -make_cons(c_734151,&c_734152,nil); - -make_cons(c_734147,&c_734148,&c_734151); - -make_cons(c_734146,quote_difference,&c_734147); - -make_cons(c_734158,quote_z,nil); - -make_cons(c_734157,quote_y,&c_734158); - -make_cons(c_734156,quote_difference,&c_734157); - -make_cons(c_734155,&c_734156,nil); - -make_cons(c_734145,&c_734146,&c_734155); - -make_cons(c_734144,quote_equal,&c_734145); - -make_cons(c_734167,quote_w,nil); - -make_cons(c_734166,quote_c,&c_734167); - -make_cons(c_734165,quote_difference,&c_734166); - -make_cons(c_734164,&c_734165,nil); - -make_cons(c_734163,quote_x,&c_734164); - -make_cons(c_734162,quote_times,&c_734163); - -make_cons(c_734173,quote_x,nil); - -make_cons(c_734172,quote_c,&c_734173); - -make_cons(c_734171,quote_times,&c_734172); - -make_cons(c_734177,quote_x,nil); - -make_cons(c_734176,quote_w,&c_734177); - -make_cons(c_734175,quote_times,&c_734176); - -make_cons(c_734174,&c_734175,nil); - -make_cons(c_734170,&c_734171,&c_734174); - -make_cons(c_734169,quote_difference,&c_734170); - -make_cons(c_734168,&c_734169,nil); - -make_cons(c_734161,&c_734162,&c_734168); - -make_cons(c_734160,quote_equal,&c_734161); - -make_cons(c_734185,quote_z,nil); - -make_cons(c_734184,quote_x,&c_734185); - -make_cons(c_734183,quote_times,&c_734184); - -make_cons(c_734186,quote_z,nil); - -make_cons(c_734182,&c_734183,&c_734186); - -make_cons(c_734181,quote_remainder,&c_734182); - -make_cons(c_734188,quote_zero,nil); - -make_cons(c_734187,&c_734188,nil); - -make_cons(c_734180,&c_734181,&c_734187); - -make_cons(c_734179,quote_equal,&c_734180); - -make_cons(c_734199,quote_c,nil); - -make_cons(c_734198,quote_a,&c_734199); - -make_cons(c_734197,quote_plus,&c_734198); - -make_cons(c_734196,&c_734197,nil); - -make_cons(c_734195,quote_b,&c_734196); - -make_cons(c_734194,quote_plus,&c_734195); - -make_cons(c_734200,quote_a,nil); - -make_cons(c_734193,&c_734194,&c_734200); - -make_cons(c_734192,quote_difference,&c_734193); - -make_cons(c_734204,quote_c,nil); - -make_cons(c_734203,quote_b,&c_734204); - -make_cons(c_734202,quote_plus,&c_734203); - -make_cons(c_734201,&c_734202,nil); - -make_cons(c_734191,&c_734192,&c_734201); - -make_cons(c_734190,quote_equal,&c_734191); - -make_cons(c_734214,quote_z,nil); - -make_cons(c_734213,quote_y,&c_734214); - -make_cons(c_734212,quote_plus,&c_734213); - -make_cons(c_734211,&c_734212,nil); - -make_cons(c_734210,quote_add1,&c_734211); - -make_cons(c_734215,quote_z,nil); - -make_cons(c_734209,&c_734210,&c_734215); - -make_cons(c_734208,quote_difference,&c_734209); - -make_cons(c_734218,quote_y,nil); - -make_cons(c_734217,quote_add1,&c_734218); - -make_cons(c_734216,&c_734217,nil); - -make_cons(c_734207,&c_734208,&c_734216); - -make_cons(c_734206,quote_equal,&c_734207); - -make_cons(c_734226,quote_y,nil); - -make_cons(c_734225,quote_x,&c_734226); - -make_cons(c_734224,quote_plus,&c_734225); - -make_cons(c_734230,quote_z,nil); - -make_cons(c_734229,quote_x,&c_734230); - -make_cons(c_734228,quote_plus,&c_734229); - -make_cons(c_734227,&c_734228,nil); - -make_cons(c_734223,&c_734224,&c_734227); - -make_cons(c_734222,quote_lessp,&c_734223); - -make_cons(c_734234,quote_z,nil); - -make_cons(c_734233,quote_y,&c_734234); - -make_cons(c_734232,quote_lessp,&c_734233); - -make_cons(c_734231,&c_734232,nil); - -make_cons(c_734221,&c_734222,&c_734231); - -make_cons(c_734220,quote_equal,&c_734221); - -make_cons(c_734242,quote_z,nil); - -make_cons(c_734241,quote_x,&c_734242); - -make_cons(c_734240,quote_times,&c_734241); - -make_cons(c_734246,quote_z,nil); - -make_cons(c_734245,quote_y,&c_734246); - -make_cons(c_734244,quote_times,&c_734245); - -make_cons(c_734243,&c_734244,nil); - -make_cons(c_734239,&c_734240,&c_734243); - -make_cons(c_734238,quote_lessp,&c_734239); - -make_cons(c_734253,quote_z,nil); - -make_cons(c_734252,quote_zerop,&c_734253); - -make_cons(c_734251,&c_734252,nil); - -make_cons(c_734250,quote_not,&c_734251); - -make_cons(c_734257,quote_y,nil); - -make_cons(c_734256,quote_x,&c_734257); - -make_cons(c_734255,quote_lessp,&c_734256); - -make_cons(c_734254,&c_734255,nil); - -make_cons(c_734249,&c_734250,&c_734254); - -make_cons(c_734248,quote_and,&c_734249); - -make_cons(c_734247,&c_734248,nil); - -make_cons(c_734237,&c_734238,&c_734247); - -make_cons(c_734236,quote_equal,&c_734237); - -make_cons(c_734266,quote_y,nil); - -make_cons(c_734265,quote_x,&c_734266); - -make_cons(c_734264,quote_plus,&c_734265); - -make_cons(c_734263,&c_734264,nil); - -make_cons(c_734262,quote_y,&c_734263); - -make_cons(c_734261,quote_lessp,&c_734262); - -make_cons(c_734271,quote_x,nil); - -make_cons(c_734270,quote_zerop,&c_734271); - -make_cons(c_734269,&c_734270,nil); - -make_cons(c_734268,quote_not,&c_734269); - -make_cons(c_734267,&c_734268,nil); - -make_cons(c_734260,&c_734261,&c_734267); - -make_cons(c_734259,quote_equal,&c_734260); - -make_cons(c_734279,quote_z,nil); - -make_cons(c_734278,quote_x,&c_734279); - -make_cons(c_734277,quote_times,&c_734278); - -make_cons(c_734283,quote_z,nil); - -make_cons(c_734282,quote_y,&c_734283); - -make_cons(c_734281,quote_times,&c_734282); - -make_cons(c_734280,&c_734281,nil); - -make_cons(c_734276,&c_734277,&c_734280); - -make_cons(c_734275,quote_gcd,&c_734276); - -make_cons(c_734290,quote_y,nil); - -make_cons(c_734289,quote_x,&c_734290); - -make_cons(c_734288,quote_gcd,&c_734289); - -make_cons(c_734287,&c_734288,nil); - -make_cons(c_734286,quote_z,&c_734287); - -make_cons(c_734285,quote_times,&c_734286); - -make_cons(c_734284,&c_734285,nil); - -make_cons(c_734274,&c_734275,&c_734284); - -make_cons(c_734273,quote_equal,&c_734274); - -make_cons(c_734297,quote_x,nil); - -make_cons(c_734296,quote_normalize,&c_734297); - -make_cons(c_734298,quote_a,nil); - -make_cons(c_734295,&c_734296,&c_734298); - -make_cons(c_734294,quote_value,&c_734295); - -make_cons(c_734302,quote_a,nil); - -make_cons(c_734301,quote_x,&c_734302); - -make_cons(c_734300,quote_value,&c_734301); - -make_cons(c_734299,&c_734300,nil); - -make_cons(c_734293,&c_734294,&c_734299); - -make_cons(c_734292,quote_equal,&c_734293); - -make_cons(c_734309,quote_x,nil); - -make_cons(c_734308,quote_flatten,&c_734309); - -make_cons(c_734314,quote_nil,nil); - -make_cons(c_734313,&c_734314,nil); - -make_cons(c_734312,quote_y,&c_734313); - -make_cons(c_734311,quote_cons,&c_734312); - -make_cons(c_734310,&c_734311,nil); - -make_cons(c_734307,&c_734308,&c_734310); - -make_cons(c_734306,quote_equal,&c_734307); - -make_cons(c_734319,quote_x,nil); - -make_cons(c_734318,quote_nlistp,&c_734319); - -make_cons(c_734323,quote_y,nil); - -make_cons(c_734322,quote_x,&c_734323); - -make_cons(c_734321,quote_equal,&c_734322); - -make_cons(c_734320,&c_734321,nil); - -make_cons(c_734317,&c_734318,&c_734320); - -make_cons(c_734316,quote_and,&c_734317); - -make_cons(c_734315,&c_734316,nil); - -make_cons(c_734305,&c_734306,&c_734315); - -make_cons(c_734304,quote_equal,&c_734305); - -make_cons(c_734330,quote_x,nil); - -make_cons(c_734329,quote_gopher,&c_734330); - -make_cons(c_734328,&c_734329,nil); - -make_cons(c_734327,quote_listp,&c_734328); - -make_cons(c_734333,quote_x,nil); - -make_cons(c_734332,quote_listp,&c_734333); - -make_cons(c_734331,&c_734332,nil); - -make_cons(c_734326,&c_734327,&c_734331); - -make_cons(c_734325,quote_equal,&c_734326); - -make_cons(c_734339,quote_y,nil); - -make_cons(c_734338,quote_x,&c_734339); - -make_cons(c_734337,quote_samefringe,&c_734338); - -make_cons(c_734344,quote_x,nil); - -make_cons(c_734343,quote_flatten,&c_734344); - -make_cons(c_734347,quote_y,nil); - -make_cons(c_734346,quote_flatten,&c_734347); - -make_cons(c_734345,&c_734346,nil); - -make_cons(c_734342,&c_734343,&c_734345); - -make_cons(c_734341,quote_equal,&c_734342); - -make_cons(c_734340,&c_734341,nil); - -make_cons(c_734336,&c_734337,&c_734340); - -make_cons(c_734335,quote_equal,&c_734336); - -make_cons(c_734355,quote_y,nil); - -make_cons(c_734354,quote_x,&c_734355); - -make_cons(c_734353,quote_greatest_91factor,&c_734354); - -make_cons(c_734357,quote_zero,nil); - -make_cons(c_734356,&c_734357,nil); - -make_cons(c_734352,&c_734353,&c_734356); - -make_cons(c_734351,quote_equal,&c_734352); - -make_cons(c_734364,quote_y,nil); - -make_cons(c_734363,quote_zerop,&c_734364); - -make_cons(c_734368,obj_int2obj(1),nil); - -make_cons(c_734367,quote_y,&c_734368); - -make_cons(c_734366,quote_equal,&c_734367); - -make_cons(c_734365,&c_734366,nil); - -make_cons(c_734362,&c_734363,&c_734365); - -make_cons(c_734361,quote_or,&c_734362); - -make_cons(c_734373,quote_zero,nil); - -make_cons(c_734372,&c_734373,nil); - -make_cons(c_734371,quote_x,&c_734372); - -make_cons(c_734370,quote_equal,&c_734371); - -make_cons(c_734369,&c_734370,nil); - -make_cons(c_734360,&c_734361,&c_734369); - -make_cons(c_734359,quote_and,&c_734360); - -make_cons(c_734358,&c_734359,nil); - -make_cons(c_734350,&c_734351,&c_734358); - -make_cons(c_734349,quote_equal,&c_734350); - -make_cons(c_734381,quote_y,nil); - -make_cons(c_734380,quote_x,&c_734381); - -make_cons(c_734379,quote_greatest_91factor,&c_734380); - -make_cons(c_734382,obj_int2obj(1),nil); - -make_cons(c_734378,&c_734379,&c_734382); - -make_cons(c_734377,quote_equal,&c_734378); - -make_cons(c_734386,obj_int2obj(1),nil); - -make_cons(c_734385,quote_x,&c_734386); - -make_cons(c_734384,quote_equal,&c_734385); - -make_cons(c_734383,&c_734384,nil); - -make_cons(c_734376,&c_734377,&c_734383); - -make_cons(c_734375,quote_equal,&c_734376); - -make_cons(c_734394,quote_y,nil); - -make_cons(c_734393,quote_x,&c_734394); - -make_cons(c_734392,quote_greatest_91factor,&c_734393); - -make_cons(c_734391,&c_734392,nil); - -make_cons(c_734390,quote_numberp,&c_734391); - -make_cons(c_734403,quote_y,nil); - -make_cons(c_734402,quote_zerop,&c_734403); - -make_cons(c_734407,obj_int2obj(1),nil); - -make_cons(c_734406,quote_y,&c_734407); - -make_cons(c_734405,quote_equal,&c_734406); - -make_cons(c_734404,&c_734405,nil); - -make_cons(c_734401,&c_734402,&c_734404); - -make_cons(c_734400,quote_or,&c_734401); - -make_cons(c_734412,quote_x,nil); - -make_cons(c_734411,quote_numberp,&c_734412); - -make_cons(c_734410,&c_734411,nil); - -make_cons(c_734409,quote_not,&c_734410); - -make_cons(c_734408,&c_734409,nil); - -make_cons(c_734399,&c_734400,&c_734408); - -make_cons(c_734398,quote_and,&c_734399); - -make_cons(c_734397,&c_734398,nil); - -make_cons(c_734396,quote_not,&c_734397); - -make_cons(c_734395,&c_734396,nil); - -make_cons(c_734389,&c_734390,&c_734395); - -make_cons(c_734388,quote_equal,&c_734389); - -make_cons(c_734420,quote_y,nil); - -make_cons(c_734419,quote_x,&c_734420); - -make_cons(c_734418,quote_append,&c_734419); - -make_cons(c_734417,&c_734418,nil); - -make_cons(c_734416,quote_times_91list,&c_734417); - -make_cons(c_734425,quote_x,nil); - -make_cons(c_734424,quote_times_91list,&c_734425); - -make_cons(c_734428,quote_y,nil); - -make_cons(c_734427,quote_times_91list,&c_734428); - -make_cons(c_734426,&c_734427,nil); - -make_cons(c_734423,&c_734424,&c_734426); - -make_cons(c_734422,quote_times,&c_734423); - -make_cons(c_734421,&c_734422,nil); - -make_cons(c_734415,&c_734416,&c_734421); - -make_cons(c_734414,quote_equal,&c_734415); - -make_cons(c_734436,quote_y,nil); - -make_cons(c_734435,quote_x,&c_734436); - -make_cons(c_734434,quote_append,&c_734435); - -make_cons(c_734433,&c_734434,nil); - -make_cons(c_734432,quote_prime_91list,&c_734433); - -make_cons(c_734441,quote_x,nil); - -make_cons(c_734440,quote_prime_91list,&c_734441); - -make_cons(c_734444,quote_y,nil); - -make_cons(c_734443,quote_prime_91list,&c_734444); - -make_cons(c_734442,&c_734443,nil); - -make_cons(c_734439,&c_734440,&c_734442); - -make_cons(c_734438,quote_and,&c_734439); - -make_cons(c_734437,&c_734438,nil); - -make_cons(c_734431,&c_734432,&c_734437); - -make_cons(c_734430,quote_equal,&c_734431); - -make_cons(c_734453,quote_z,nil); - -make_cons(c_734452,quote_w,&c_734453); - -make_cons(c_734451,quote_times,&c_734452); - -make_cons(c_734450,&c_734451,nil); - -make_cons(c_734449,quote_z,&c_734450); - -make_cons(c_734448,quote_equal,&c_734449); - -make_cons(c_734458,quote_z,nil); - -make_cons(c_734457,quote_numberp,&c_734458); - -make_cons(c_734465,quote_zero,nil); - -make_cons(c_734464,&c_734465,nil); - -make_cons(c_734463,quote_z,&c_734464); - -make_cons(c_734462,quote_equal,&c_734463); - -make_cons(c_734469,obj_int2obj(1),nil); - -make_cons(c_734468,quote_w,&c_734469); - -make_cons(c_734467,quote_equal,&c_734468); - -make_cons(c_734466,&c_734467,nil); - -make_cons(c_734461,&c_734462,&c_734466); - -make_cons(c_734460,quote_or,&c_734461); - -make_cons(c_734459,&c_734460,nil); - -make_cons(c_734456,&c_734457,&c_734459); - -make_cons(c_734455,quote_and,&c_734456); - -make_cons(c_734454,&c_734455,nil); - -make_cons(c_734447,&c_734448,&c_734454); - -make_cons(c_734446,quote_equal,&c_734447); - -make_cons(c_734475,quote_y,nil); - -make_cons(c_734474,quote_x,&c_734475); - -make_cons(c_734473,quote_greatereqp,&c_734474); - -make_cons(c_734481,quote_y,nil); - -make_cons(c_734480,quote_x,&c_734481); - -make_cons(c_734479,quote_lessp,&c_734480); - -make_cons(c_734478,&c_734479,nil); - -make_cons(c_734477,quote_not,&c_734478); - -make_cons(c_734476,&c_734477,nil); - -make_cons(c_734472,&c_734473,&c_734476); - -make_cons(c_734471,quote_equal,&c_734472); - -make_cons(c_734490,quote_y,nil); - -make_cons(c_734489,quote_x,&c_734490); - -make_cons(c_734488,quote_times,&c_734489); - -make_cons(c_734487,&c_734488,nil); - -make_cons(c_734486,quote_x,&c_734487); - -make_cons(c_734485,quote_equal,&c_734486); - -make_cons(c_734497,quote_zero,nil); - -make_cons(c_734496,&c_734497,nil); - -make_cons(c_734495,quote_x,&c_734496); - -make_cons(c_734494,quote_equal,&c_734495); - -make_cons(c_734502,quote_x,nil); - -make_cons(c_734501,quote_numberp,&c_734502); - -make_cons(c_734506,obj_int2obj(1),nil); - -make_cons(c_734505,quote_y,&c_734506); - -make_cons(c_734504,quote_equal,&c_734505); - -make_cons(c_734503,&c_734504,nil); - -make_cons(c_734500,&c_734501,&c_734503); - -make_cons(c_734499,quote_and,&c_734500); - -make_cons(c_734498,&c_734499,nil); - -make_cons(c_734493,&c_734494,&c_734498); - -make_cons(c_734492,quote_or,&c_734493); - -make_cons(c_734491,&c_734492,nil); - -make_cons(c_734484,&c_734485,&c_734491); - -make_cons(c_734483,quote_equal,&c_734484); - -make_cons(c_734514,quote_x,nil); - -make_cons(c_734513,quote_y,&c_734514); - -make_cons(c_734512,quote_times,&c_734513); - -make_cons(c_734515,quote_y,nil); - -make_cons(c_734511,&c_734512,&c_734515); - -make_cons(c_734510,quote_remainder,&c_734511); - -make_cons(c_734517,quote_zero,nil); - -make_cons(c_734516,&c_734517,nil); - -make_cons(c_734509,&c_734510,&c_734516); - -make_cons(c_734508,quote_equal,&c_734509); - -make_cons(c_734525,quote_b,nil); - -make_cons(c_734524,quote_a,&c_734525); - -make_cons(c_734523,quote_times,&c_734524); - -make_cons(c_734526,obj_int2obj(1),nil); - -make_cons(c_734522,&c_734523,&c_734526); - -make_cons(c_734521,quote_equal,&c_734522); - -make_cons(c_734535,quote_zero,nil); - -make_cons(c_734534,&c_734535,nil); - -make_cons(c_734533,quote_a,&c_734534); - -make_cons(c_734532,quote_equal,&c_734533); - -make_cons(c_734531,&c_734532,nil); - -make_cons(c_734530,quote_not,&c_734531); - -make_cons(c_734542,quote_zero,nil); - -make_cons(c_734541,&c_734542,nil); - -make_cons(c_734540,quote_b,&c_734541); - -make_cons(c_734539,quote_equal,&c_734540); - -make_cons(c_734538,&c_734539,nil); - -make_cons(c_734537,quote_not,&c_734538); - -make_cons(c_734545,quote_a,nil); - -make_cons(c_734544,quote_numberp,&c_734545); - -make_cons(c_734548,quote_b,nil); - -make_cons(c_734547,quote_numberp,&c_734548); - -make_cons(c_734553,quote_a,nil); - -make_cons(c_734552,quote__1911_91,&c_734553); - -make_cons(c_734555,quote_zero,nil); - -make_cons(c_734554,&c_734555,nil); - -make_cons(c_734551,&c_734552,&c_734554); - -make_cons(c_734550,quote_equal,&c_734551); - -make_cons(c_734560,quote_b,nil); - -make_cons(c_734559,quote__1911_91,&c_734560); - -make_cons(c_734562,quote_zero,nil); - -make_cons(c_734561,&c_734562,nil); - -make_cons(c_734558,&c_734559,&c_734561); - -make_cons(c_734557,quote_equal,&c_734558); - -make_cons(c_734556,&c_734557,nil); - -make_cons(c_734549,&c_734550,&c_734556); - -make_cons(c_734546,&c_734547,&c_734549); - -make_cons(c_734543,&c_734544,&c_734546); - -make_cons(c_734536,&c_734537,&c_734543); - -make_cons(c_734529,&c_734530,&c_734536); - -make_cons(c_734528,quote_and,&c_734529); - -make_cons(c_734527,&c_734528,nil); - -make_cons(c_734520,&c_734521,&c_734527); - -make_cons(c_734519,quote_equal,&c_734520); - -make_cons(c_734572,quote_l,nil); - -make_cons(c_734571,quote_x,&c_734572); - -make_cons(c_734570,quote_delete,&c_734571); - -make_cons(c_734569,&c_734570,nil); - -make_cons(c_734568,quote_length,&c_734569); - -make_cons(c_734575,quote_l,nil); - -make_cons(c_734574,quote_length,&c_734575); - -make_cons(c_734573,&c_734574,nil); - -make_cons(c_734567,&c_734568,&c_734573); - -make_cons(c_734566,quote_lessp,&c_734567); - -make_cons(c_734579,quote_l,nil); - -make_cons(c_734578,quote_x,&c_734579); - -make_cons(c_734577,quote_member,&c_734578); - -make_cons(c_734576,&c_734577,nil); - -make_cons(c_734565,&c_734566,&c_734576); - -make_cons(c_734564,quote_equal,&c_734565); - -make_cons(c_734587,quote_l,nil); - -make_cons(c_734586,quote_x,&c_734587); - -make_cons(c_734585,quote_delete,&c_734586); - -make_cons(c_734584,&c_734585,nil); - -make_cons(c_734583,quote_sort2,&c_734584); - -make_cons(c_734593,quote_l,nil); - -make_cons(c_734592,quote_sort2,&c_734593); - -make_cons(c_734591,&c_734592,nil); - -make_cons(c_734590,quote_x,&c_734591); - -make_cons(c_734589,quote_delete,&c_734590); - -make_cons(c_734588,&c_734589,nil); - -make_cons(c_734582,&c_734583,&c_734588); - -make_cons(c_734581,quote_equal,&c_734582); - -make_cons(c_734598,quote_x,nil); - -make_cons(c_734597,quote_dsort,&c_734598); - -make_cons(c_734601,quote_x,nil); - -make_cons(c_734600,quote_sort2,&c_734601); - -make_cons(c_734599,&c_734600,nil); - -make_cons(c_734596,&c_734597,&c_734599); - -make_cons(c_734595,quote_equal,&c_734596); - -make_cons(c_734624,quote_x7,nil); - -make_cons(c_734623,quote_x6,&c_734624); - -make_cons(c_734622,quote_cons,&c_734623); - -make_cons(c_734621,&c_734622,nil); - -make_cons(c_734620,quote_x5,&c_734621); - -make_cons(c_734619,quote_cons,&c_734620); - -make_cons(c_734618,&c_734619,nil); - -make_cons(c_734617,quote_x4,&c_734618); - -make_cons(c_734616,quote_cons,&c_734617); - -make_cons(c_734615,&c_734616,nil); - -make_cons(c_734614,quote_x3,&c_734615); - -make_cons(c_734613,quote_cons,&c_734614); - -make_cons(c_734612,&c_734613,nil); - -make_cons(c_734611,quote_x2,&c_734612); - -make_cons(c_734610,quote_cons,&c_734611); - -make_cons(c_734609,&c_734610,nil); - -make_cons(c_734608,quote_x1,&c_734609); - -make_cons(c_734607,quote_cons,&c_734608); - -make_cons(c_734606,&c_734607,nil); - -make_cons(c_734605,quote_length,&c_734606); - -make_cons(c_734630,quote_x7,nil); - -make_cons(c_734629,quote_length,&c_734630); - -make_cons(c_734628,&c_734629,nil); - -make_cons(c_734627,obj_int2obj(6),&c_734628); - -make_cons(c_734626,quote_plus,&c_734627); - -make_cons(c_734625,&c_734626,nil); - -make_cons(c_734604,&c_734605,&c_734625); - -make_cons(c_734603,quote_equal,&c_734604); - -make_cons(c_734639,quote_x,nil); - -make_cons(c_734638,quote_add1,&c_734639); - -make_cons(c_734637,&c_734638,nil); - -make_cons(c_734636,quote_add1,&c_734637); - -make_cons(c_734640,obj_int2obj(2),nil); - -make_cons(c_734635,&c_734636,&c_734640); - -make_cons(c_734634,quote_difference,&c_734635); - -make_cons(c_734643,quote_x,nil); - -make_cons(c_734642,quote_fix,&c_734643); - -make_cons(c_734641,&c_734642,nil); - -make_cons(c_734633,&c_734634,&c_734641); - -make_cons(c_734632,quote_equal,&c_734633); - -make_cons(c_734654,quote_y,nil); - -make_cons(c_734653,quote_x,&c_734654); - -make_cons(c_734652,quote_plus,&c_734653); - -make_cons(c_734651,&c_734652,nil); - -make_cons(c_734650,quote_x,&c_734651); - -make_cons(c_734649,quote_plus,&c_734650); - -make_cons(c_734655,obj_int2obj(2),nil); - -make_cons(c_734648,&c_734649,&c_734655); - -make_cons(c_734647,quote_quotient,&c_734648); - -make_cons(c_734662,obj_int2obj(2),nil); - -make_cons(c_734661,quote_y,&c_734662); - -make_cons(c_734660,quote_quotient,&c_734661); - -make_cons(c_734659,&c_734660,nil); - -make_cons(c_734658,quote_x,&c_734659); - -make_cons(c_734657,quote_plus,&c_734658); - -make_cons(c_734656,&c_734657,nil); - -make_cons(c_734646,&c_734647,&c_734656); - -make_cons(c_734645,quote_equal,&c_734646); - -make_cons(c_734668,quote_zero,nil); - -make_cons(c_734669,quote_i,nil); - -make_cons(c_734667,&c_734668,&c_734669); - -make_cons(c_734666,quote_sigma,&c_734667); - -make_cons(c_734677,quote_i,nil); - -make_cons(c_734676,quote_add1,&c_734677); - -make_cons(c_734675,&c_734676,nil); - -make_cons(c_734674,quote_i,&c_734675); - -make_cons(c_734673,quote_times,&c_734674); - -make_cons(c_734678,obj_int2obj(2),nil); - -make_cons(c_734672,&c_734673,&c_734678); - -make_cons(c_734671,quote_quotient,&c_734672); - -make_cons(c_734670,&c_734671,nil); - -make_cons(c_734665,&c_734666,&c_734670); - -make_cons(c_734664,quote_equal,&c_734665); - -make_cons(c_734686,quote_y,nil); - -make_cons(c_734685,quote_add1,&c_734686); - -make_cons(c_734684,&c_734685,nil); - -make_cons(c_734683,quote_x,&c_734684); - -make_cons(c_734682,quote_plus,&c_734683); - -make_cons(c_734691,quote_y,nil); - -make_cons(c_734690,quote_numberp,&c_734691); - -make_cons(c_734697,quote_y,nil); - -make_cons(c_734696,quote_x,&c_734697); - -make_cons(c_734695,quote_plus,&c_734696); - -make_cons(c_734694,&c_734695,nil); - -make_cons(c_734693,quote_add1,&c_734694); - -make_cons(c_734700,quote_x,nil); - -make_cons(c_734699,quote_add1,&c_734700); - -make_cons(c_734698,&c_734699,nil); - -make_cons(c_734692,&c_734693,&c_734698); - -make_cons(c_734689,&c_734690,&c_734692); - -make_cons(c_734688,quote__if,&c_734689); - -make_cons(c_734687,&c_734688,nil); - -make_cons(c_734681,&c_734682,&c_734687); - -make_cons(c_734680,quote_equal,&c_734681); - -make_cons(c_734708,quote_y,nil); - -make_cons(c_734707,quote_x,&c_734708); - -make_cons(c_734706,quote_difference,&c_734707); - -make_cons(c_734712,quote_y,nil); - -make_cons(c_734711,quote_z,&c_734712); - -make_cons(c_734710,quote_difference,&c_734711); - -make_cons(c_734709,&c_734710,nil); - -make_cons(c_734705,&c_734706,&c_734709); - -make_cons(c_734704,quote_equal,&c_734705); - -make_cons(c_734718,quote_y,nil); - -make_cons(c_734717,quote_x,&c_734718); - -make_cons(c_734716,quote_lessp,&c_734717); - -make_cons(c_734724,quote_z,nil); - -make_cons(c_734723,quote_y,&c_734724); - -make_cons(c_734722,quote_lessp,&c_734723); - -make_cons(c_734721,&c_734722,nil); - -make_cons(c_734720,quote_not,&c_734721); - -make_cons(c_734730,quote_y,nil); - -make_cons(c_734729,quote_z,&c_734730); - -make_cons(c_734728,quote_lessp,&c_734729); - -make_cons(c_734736,quote_x,nil); - -make_cons(c_734735,quote_y,&c_734736); - -make_cons(c_734734,quote_lessp,&c_734735); - -make_cons(c_734733,&c_734734,nil); - -make_cons(c_734732,quote_not,&c_734733); - -make_cons(c_734741,quote_x,nil); - -make_cons(c_734740,quote_fix,&c_734741); - -make_cons(c_734744,quote_z,nil); - -make_cons(c_734743,quote_fix,&c_734744); - -make_cons(c_734742,&c_734743,nil); - -make_cons(c_734739,&c_734740,&c_734742); - -make_cons(c_734738,quote_equal,&c_734739); - -make_cons(c_734737,&c_734738,nil); - -make_cons(c_734731,&c_734732,&c_734737); - -make_cons(c_734727,&c_734728,&c_734731); - -make_cons(c_734726,quote__if,&c_734727); - -make_cons(c_734725,&c_734726,nil); - -make_cons(c_734719,&c_734720,&c_734725); - -make_cons(c_734715,&c_734716,&c_734719); - -make_cons(c_734714,quote__if,&c_734715); - -make_cons(c_734713,&c_734714,nil); - -make_cons(c_734703,&c_734704,&c_734713); - -make_cons(c_734702,quote_equal,&c_734703); - -make_cons(c_734754,quote_y,nil); - -make_cons(c_734753,quote_x,&c_734754); - -make_cons(c_734752,quote_delete,&c_734753); - -make_cons(c_734751,&c_734752,nil); - -make_cons(c_734750,quote_plus_91tree,&c_734751); - -make_cons(c_734755,quote_a,nil); - -make_cons(c_734749,&c_734750,&c_734755); - -make_cons(c_734748,quote_meaning,&c_734749); - -make_cons(c_734761,quote_y,nil); - -make_cons(c_734760,quote_x,&c_734761); - -make_cons(c_734759,quote_member,&c_734760); - -make_cons(c_734768,quote_y,nil); - -make_cons(c_734767,quote_plus_91tree,&c_734768); - -make_cons(c_734769,quote_a,nil); - -make_cons(c_734766,&c_734767,&c_734769); - -make_cons(c_734765,quote_meaning,&c_734766); - -make_cons(c_734773,quote_a,nil); - -make_cons(c_734772,quote_x,&c_734773); - -make_cons(c_734771,quote_meaning,&c_734772); - -make_cons(c_734770,&c_734771,nil); - -make_cons(c_734764,&c_734765,&c_734770); - -make_cons(c_734763,quote_difference,&c_734764); - -make_cons(c_734778,quote_y,nil); - -make_cons(c_734777,quote_plus_91tree,&c_734778); - -make_cons(c_734779,quote_a,nil); - -make_cons(c_734776,&c_734777,&c_734779); - -make_cons(c_734775,quote_meaning,&c_734776); - -make_cons(c_734774,&c_734775,nil); - -make_cons(c_734762,&c_734763,&c_734774); - -make_cons(c_734758,&c_734759,&c_734762); - -make_cons(c_734757,quote__if,&c_734758); - -make_cons(c_734756,&c_734757,nil); - -make_cons(c_734747,&c_734748,&c_734756); - -make_cons(c_734746,quote_equal,&c_734747); - -make_cons(c_734787,quote_y,nil); - -make_cons(c_734786,quote_add1,&c_734787); - -make_cons(c_734785,&c_734786,nil); - -make_cons(c_734784,quote_x,&c_734785); - -make_cons(c_734783,quote_times,&c_734784); - -make_cons(c_734792,quote_y,nil); - -make_cons(c_734791,quote_numberp,&c_734792); - -make_cons(c_734799,quote_y,nil); - -make_cons(c_734798,quote_x,&c_734799); - -make_cons(c_734797,quote_times,&c_734798); - -make_cons(c_734796,&c_734797,nil); - -make_cons(c_734795,quote_x,&c_734796); - -make_cons(c_734794,quote_plus,&c_734795); - -make_cons(c_734802,quote_x,nil); - -make_cons(c_734801,quote_fix,&c_734802); - -make_cons(c_734800,&c_734801,nil); - -make_cons(c_734793,&c_734794,&c_734800); - -make_cons(c_734790,&c_734791,&c_734793); - -make_cons(c_734789,quote__if,&c_734790); - -make_cons(c_734788,&c_734789,nil); - -make_cons(c_734782,&c_734783,&c_734788); - -make_cons(c_734781,quote_equal,&c_734782); - -make_cons(c_734808,quote_nil,nil); - -make_cons(c_734809,quote_i,nil); - -make_cons(c_734807,&c_734808,&c_734809); - -make_cons(c_734806,quote_nth,&c_734807); - -make_cons(c_734814,quote_i,nil); - -make_cons(c_734813,quote_zerop,&c_734814); - -make_cons(c_734816,quote_nil,nil); - -make_cons(c_734818,quote_zero,nil); - -make_cons(c_734817,&c_734818,nil); - -make_cons(c_734815,&c_734816,&c_734817); - -make_cons(c_734812,&c_734813,&c_734815); - -make_cons(c_734811,quote__if,&c_734812); - -make_cons(c_734810,&c_734811,nil); - -make_cons(c_734805,&c_734806,&c_734810); - -make_cons(c_734804,quote_equal,&c_734805); - -make_cons(c_734826,quote_b,nil); - -make_cons(c_734825,quote_a,&c_734826); - -make_cons(c_734824,quote_append,&c_734825); - -make_cons(c_734823,&c_734824,nil); - -make_cons(c_734822,quote_last,&c_734823); - -make_cons(c_734831,quote_b,nil); - -make_cons(c_734830,quote_listp,&c_734831); - -make_cons(c_734834,quote_b,nil); - -make_cons(c_734833,quote_last,&c_734834); - -make_cons(c_734839,quote_a,nil); - -make_cons(c_734838,quote_listp,&c_734839); - -make_cons(c_734846,quote_a,nil); - -make_cons(c_734845,quote_last,&c_734846); - -make_cons(c_734844,&c_734845,nil); - -make_cons(c_734843,quote_car,&c_734844); - -make_cons(c_734847,quote_b,nil); - -make_cons(c_734842,&c_734843,&c_734847); - -make_cons(c_734841,quote_cons,&c_734842); - -make_cons(c_734848,quote_b,nil); - -make_cons(c_734840,&c_734841,&c_734848); - -make_cons(c_734837,&c_734838,&c_734840); - -make_cons(c_734836,quote__if,&c_734837); - -make_cons(c_734835,&c_734836,nil); - -make_cons(c_734832,&c_734833,&c_734835); - -make_cons(c_734829,&c_734830,&c_734832); - -make_cons(c_734828,quote__if,&c_734829); - -make_cons(c_734827,&c_734828,nil); - -make_cons(c_734821,&c_734822,&c_734827); - -make_cons(c_734820,quote_equal,&c_734821); - -make_cons(c_734856,quote_y,nil); - -make_cons(c_734855,quote_x,&c_734856); - -make_cons(c_734854,quote_lessp,&c_734855); - -make_cons(c_734857,quote_z,nil); - -make_cons(c_734853,&c_734854,&c_734857); - -make_cons(c_734852,quote_equal,&c_734853); - -make_cons(c_734863,quote_y,nil); - -make_cons(c_734862,quote_x,&c_734863); - -make_cons(c_734861,quote_lessp,&c_734862); - -make_cons(c_734867,quote_t,nil); - -make_cons(c_734868,quote_z,nil); - -make_cons(c_734866,&c_734867,&c_734868); - -make_cons(c_734865,quote_equal,&c_734866); - -make_cons(c_734872,quote_f,nil); - -make_cons(c_734873,quote_z,nil); - -make_cons(c_734871,&c_734872,&c_734873); - -make_cons(c_734870,quote_equal,&c_734871); - -make_cons(c_734869,&c_734870,nil); - -make_cons(c_734864,&c_734865,&c_734869); - -make_cons(c_734860,&c_734861,&c_734864); - -make_cons(c_734859,quote__if,&c_734860); - -make_cons(c_734858,&c_734859,nil); - -make_cons(c_734851,&c_734852,&c_734858); - -make_cons(c_734850,quote_equal,&c_734851); - -make_cons(c_734882,quote_b,nil); - -make_cons(c_734881,quote_a,&c_734882); - -make_cons(c_734880,quote_append,&c_734881); - -make_cons(c_734879,&c_734880,nil); - -make_cons(c_734878,quote_x,&c_734879); - -make_cons(c_734877,quote_assignment,&c_734878); - -make_cons(c_734888,quote_a,nil); - -make_cons(c_734887,quote_x,&c_734888); - -make_cons(c_734886,quote_assignedp,&c_734887); - -make_cons(c_734892,quote_a,nil); - -make_cons(c_734891,quote_x,&c_734892); - -make_cons(c_734890,quote_assignment,&c_734891); - -make_cons(c_734896,quote_b,nil); - -make_cons(c_734895,quote_x,&c_734896); - -make_cons(c_734894,quote_assignment,&c_734895); - -make_cons(c_734893,&c_734894,nil); - -make_cons(c_734889,&c_734890,&c_734893); - -make_cons(c_734885,&c_734886,&c_734889); - -make_cons(c_734884,quote__if,&c_734885); - -make_cons(c_734883,&c_734884,nil); - -make_cons(c_734876,&c_734877,&c_734883); - -make_cons(c_734875,quote_equal,&c_734876); - -make_cons(c_734903,quote_x,nil); - -make_cons(c_734902,quote_gopher,&c_734903); - -make_cons(c_734901,&c_734902,nil); - -make_cons(c_734900,quote_car,&c_734901); - -make_cons(c_734908,quote_x,nil); - -make_cons(c_734907,quote_listp,&c_734908); - -make_cons(c_734913,quote_x,nil); - -make_cons(c_734912,quote_flatten,&c_734913); - -make_cons(c_734911,&c_734912,nil); - -make_cons(c_734910,quote_car,&c_734911); - -make_cons(c_734915,quote_zero,nil); - -make_cons(c_734914,&c_734915,nil); - -make_cons(c_734909,&c_734910,&c_734914); - -make_cons(c_734906,&c_734907,&c_734909); - -make_cons(c_734905,quote__if,&c_734906); - -make_cons(c_734904,&c_734905,nil); - -make_cons(c_734899,&c_734900,&c_734904); - -make_cons(c_734898,quote_equal,&c_734899); - -make_cons(c_734924,quote_x,nil); - -make_cons(c_734923,quote_gopher,&c_734924); - -make_cons(c_734922,&c_734923,nil); - -make_cons(c_734921,quote_cdr,&c_734922); - -make_cons(c_734920,&c_734921,nil); - -make_cons(c_734919,quote_flatten,&c_734920); - -make_cons(c_734929,quote_x,nil); - -make_cons(c_734928,quote_listp,&c_734929); - -make_cons(c_734934,quote_x,nil); - -make_cons(c_734933,quote_flatten,&c_734934); - -make_cons(c_734932,&c_734933,nil); - -make_cons(c_734931,quote_cdr,&c_734932); - -make_cons(c_734938,quote_zero,nil); - -make_cons(c_734940,quote_nil,nil); - -make_cons(c_734939,&c_734940,nil); - -make_cons(c_734937,&c_734938,&c_734939); - -make_cons(c_734936,quote_cons,&c_734937); - -make_cons(c_734935,&c_734936,nil); - -make_cons(c_734930,&c_734931,&c_734935); - -make_cons(c_734927,&c_734928,&c_734930); - -make_cons(c_734926,quote__if,&c_734927); - -make_cons(c_734925,&c_734926,nil); - -make_cons(c_734918,&c_734919,&c_734925); - -make_cons(c_734917,quote_equal,&c_734918); - -make_cons(c_734948,quote_x,nil); - -make_cons(c_734947,quote_y,&c_734948); - -make_cons(c_734946,quote_times,&c_734947); - -make_cons(c_734949,quote_y,nil); - -make_cons(c_734945,&c_734946,&c_734949); - -make_cons(c_734944,quote_quotient,&c_734945); - -make_cons(c_734954,quote_y,nil); - -make_cons(c_734953,quote_zerop,&c_734954); - -make_cons(c_734956,quote_zero,nil); - -make_cons(c_734959,quote_x,nil); - -make_cons(c_734958,quote_fix,&c_734959); - -make_cons(c_734957,&c_734958,nil); - -make_cons(c_734955,&c_734956,&c_734957); - -make_cons(c_734952,&c_734953,&c_734955); - -make_cons(c_734951,quote__if,&c_734952); - -make_cons(c_734950,&c_734951,nil); - -make_cons(c_734943,&c_734944,&c_734950); - -make_cons(c_734942,quote_equal,&c_734943); - -make_cons(c_734969,quote_mem,nil); - -make_cons(c_734968,quote_val,&c_734969); - -make_cons(c_734967,quote_i,&c_734968); - -make_cons(c_734966,quote_set,&c_734967); - -make_cons(c_734965,&c_734966,nil); - -make_cons(c_734964,quote_j,&c_734965); - -make_cons(c_734963,quote_get,&c_734964); - -make_cons(c_734975,quote_i,nil); - -make_cons(c_734974,quote_j,&c_734975); - -make_cons(c_734973,quote_eqp,&c_734974); - -make_cons(c_734980,quote_mem,nil); - -make_cons(c_734979,quote_j,&c_734980); - -make_cons(c_734978,quote_get,&c_734979); - -make_cons(c_734977,&c_734978,nil); - -make_cons(c_734976,quote_val,&c_734977); - -make_cons(c_734972,&c_734973,&c_734976); - -make_cons(c_734971,quote__if,&c_734972); - -make_cons(c_734970,&c_734971,nil); - -make_cons(c_734962,&c_734963,&c_734970); - -make_cons(c_734961,quote_equal,&c_734962); - -make_cons(c_734960,&c_734961,nil); - -make_cons(c_734941,&c_734942,&c_734960); - -make_cons(c_734916,&c_734917,&c_734941); - -make_cons(c_734897,&c_734898,&c_734916); - -make_cons(c_734874,&c_734875,&c_734897); - -make_cons(c_734849,&c_734850,&c_734874); - -make_cons(c_734819,&c_734820,&c_734849); - -make_cons(c_734803,&c_734804,&c_734819); - -make_cons(c_734780,&c_734781,&c_734803); - -make_cons(c_734745,&c_734746,&c_734780); - -make_cons(c_734701,&c_734702,&c_734745); - -make_cons(c_734679,&c_734680,&c_734701); - -make_cons(c_734663,&c_734664,&c_734679); - -make_cons(c_734644,&c_734645,&c_734663); - -make_cons(c_734631,&c_734632,&c_734644); - -make_cons(c_734602,&c_734603,&c_734631); - -make_cons(c_734594,&c_734595,&c_734602); - -make_cons(c_734580,&c_734581,&c_734594); - -make_cons(c_734563,&c_734564,&c_734580); - -make_cons(c_734518,&c_734519,&c_734563); - -make_cons(c_734507,&c_734508,&c_734518); - -make_cons(c_734482,&c_734483,&c_734507); - -make_cons(c_734470,&c_734471,&c_734482); - -make_cons(c_734445,&c_734446,&c_734470); - -make_cons(c_734429,&c_734430,&c_734445); - -make_cons(c_734413,&c_734414,&c_734429); - -make_cons(c_734387,&c_734388,&c_734413); - -make_cons(c_734374,&c_734375,&c_734387); - -make_cons(c_734348,&c_734349,&c_734374); - -make_cons(c_734334,&c_734335,&c_734348); - -make_cons(c_734324,&c_734325,&c_734334); - -make_cons(c_734303,&c_734304,&c_734324); - -make_cons(c_734291,&c_734292,&c_734303); - -make_cons(c_734272,&c_734273,&c_734291); - -make_cons(c_734258,&c_734259,&c_734272); - -make_cons(c_734235,&c_734236,&c_734258); - -make_cons(c_734219,&c_734220,&c_734235); - -make_cons(c_734205,&c_734206,&c_734219); - -make_cons(c_734189,&c_734190,&c_734205); - -make_cons(c_734178,&c_734179,&c_734189); - -make_cons(c_734159,&c_734160,&c_734178); - -make_cons(c_734143,&c_734144,&c_734159); - -make_cons(c_734131,&c_734132,&c_734143); - -make_cons(c_734119,&c_734120,&c_734131); - -make_cons(c_734095,&c_734096,&c_734119); - -make_cons(c_734085,&c_734086,&c_734095); - -make_cons(c_734063,&c_734064,&c_734085); - -make_cons(c_734051,&c_734052,&c_734063); - -make_cons(c_734024,&c_734025,&c_734051); - -make_cons(c_733997,&c_733998,&c_734024); - -make_cons(c_733989,&c_733990,&c_733997); - -make_cons(c_733975,&c_733976,&c_733989); - -make_cons(c_733967,&c_733968,&c_733975); - -make_cons(c_733943,&c_733944,&c_733967); - -make_cons(c_733926,&c_733927,&c_733943); - -make_cons(c_733908,&c_733909,&c_733926); - -make_cons(c_733892,&c_733893,&c_733908); - -make_cons(c_733873,&c_733874,&c_733892); - -make_cons(c_733863,&c_733864,&c_733873); - -make_cons(c_733851,&c_733852,&c_733863); - -make_cons(c_733835,&c_733836,&c_733851); - -make_cons(c_733816,&c_733817,&c_733835); - -make_cons(c_733807,&c_733808,&c_733816); - -make_cons(c_733788,&c_733789,&c_733807); - -make_cons(c_733778,&c_733779,&c_733788); - -make_cons(c_733766,&c_733767,&c_733778); - -make_cons(c_733747,&c_733748,&c_733766); - -make_cons(c_733735,&c_733736,&c_733747); - -make_cons(c_733716,&c_733717,&c_733735); - -make_cons(c_733698,&c_733699,&c_733716); - -make_cons(c_733682,&c_733683,&c_733698); - -make_cons(c_733663,&c_733664,&c_733682); - -make_cons(c_733647,&c_733648,&c_733663); - -make_cons(c_733631,&c_733632,&c_733647); - -make_cons(c_733615,&c_733616,&c_733631); - -make_cons(c_733590,&c_733591,&c_733615); - -make_cons(c_733566,&c_733567,&c_733590); - -make_cons(c_733550,&c_733551,&c_733566); - -make_cons(c_733530,&c_733531,&c_733550); - -make_cons(c_733522,&c_733523,&c_733530); - -make_cons(c_733504,&c_733505,&c_733522); - -make_cons(c_733488,&c_733489,&c_733504); - -make_cons(c_733471,&c_733472,&c_733488); - -make_cons(c_733447,&c_733448,&c_733471); - -make_cons(c_733434,&c_733435,&c_733447); - -make_cons(c_733416,&c_733417,&c_733434); - -make_cons(c_733404,&c_733405,&c_733416); - -make_cons(c_733386,&c_733387,&c_733404); - -make_cons(c_733368,&c_733369,&c_733386); - -make_cons(c_733341,&c_733342,&c_733368); - -make_cons(c_733329,&c_733330,&c_733341); - -make_cons(c_733317,&c_733318,&c_733329); - -make_cons(c_733303,&c_733304,&c_733317); - -make_cons(c_733289,&c_733290,&c_733303); - -make_cons(c_733277,&c_733278,&c_733289); - -make_cons(c_733267,&c_733268,&c_733277); - -make_cons(c_733258,&c_733259,&c_733267); - -make_cons(c_733246,&c_733247,&c_733258); - -make_cons(c_733229,&c_733230,&c_733246); - -make_cons(c_733213,&c_733214,&c_733229); - -make_cons(c_733196,&c_733197,&c_733213); - -make_cons(c_733184,&c_733185,&c_733196); - -make_cons(c_733172,&c_733173,&c_733184); - -make_cons(c_733162,&c_733163,&c_733172); - -make_cons(c_733148,&c_733149,&c_733162); - -make_cons(c_733134,&c_733135,&c_733148); -return_closcall1(data,(closure)&c_733128, &c_733134);; -} - -static void __lambda_434(void *data, int argc, object self_73687, object r_73563) { - return_closcall2(data, cell_get(((closureN)self_73687)->elts[0]), ((closureN)self_73687)->elts[1], r_73563);; -} - -static void __lambda_433(void *data, int argc, object self_73688, object r_73561) { - -closureN_type c_731487; -c_731487.hdr.mark = gc_color_red; - c_731487.hdr.grayed = 0; -c_731487.tag = closureN_tag; - c_731487.fn = (function_type)__lambda_432; -c_731487.num_args = 1; -c_731487.num_elt = 39; -c_731487.elts = (object *)alloca(sizeof(object) * 39); -c_731487.elts[0] = ((closureN)self_73688)->elts[0]; -c_731487.elts[1] = ((closureN)self_73688)->elts[1]; -c_731487.elts[2] = ((closureN)self_73688)->elts[2]; -c_731487.elts[3] = ((closureN)self_73688)->elts[3]; -c_731487.elts[4] = ((closureN)self_73688)->elts[4]; -c_731487.elts[5] = ((closureN)self_73688)->elts[5]; -c_731487.elts[6] = ((closureN)self_73688)->elts[6]; -c_731487.elts[7] = ((closureN)self_73688)->elts[7]; -c_731487.elts[8] = ((closureN)self_73688)->elts[8]; -c_731487.elts[9] = ((closureN)self_73688)->elts[9]; -c_731487.elts[10] = ((closureN)self_73688)->elts[10]; -c_731487.elts[11] = ((closureN)self_73688)->elts[11]; -c_731487.elts[12] = ((closureN)self_73688)->elts[12]; -c_731487.elts[13] = ((closureN)self_73688)->elts[13]; -c_731487.elts[14] = ((closureN)self_73688)->elts[14]; -c_731487.elts[15] = ((closureN)self_73688)->elts[15]; -c_731487.elts[16] = ((closureN)self_73688)->elts[16]; -c_731487.elts[17] = ((closureN)self_73688)->elts[17]; -c_731487.elts[18] = ((closureN)self_73688)->elts[18]; -c_731487.elts[19] = ((closureN)self_73688)->elts[19]; -c_731487.elts[20] = ((closureN)self_73688)->elts[20]; -c_731487.elts[21] = ((closureN)self_73688)->elts[21]; -c_731487.elts[22] = ((closureN)self_73688)->elts[22]; -c_731487.elts[23] = ((closureN)self_73688)->elts[23]; -c_731487.elts[24] = ((closureN)self_73688)->elts[24]; -c_731487.elts[25] = ((closureN)self_73688)->elts[25]; -c_731487.elts[26] = ((closureN)self_73688)->elts[26]; -c_731487.elts[27] = ((closureN)self_73688)->elts[27]; -c_731487.elts[28] = ((closureN)self_73688)->elts[28]; -c_731487.elts[29] = ((closureN)self_73688)->elts[29]; -c_731487.elts[30] = ((closureN)self_73688)->elts[30]; -c_731487.elts[31] = ((closureN)self_73688)->elts[31]; -c_731487.elts[32] = ((closureN)self_73688)->elts[32]; -c_731487.elts[33] = ((closureN)self_73688)->elts[33]; -c_731487.elts[34] = ((closureN)self_73688)->elts[34]; -c_731487.elts[35] = ((closureN)self_73688)->elts[35]; -c_731487.elts[36] = ((closureN)self_73688)->elts[36]; -c_731487.elts[37] = ((closureN)self_73688)->elts[37]; -c_731487.elts[38] = ((closureN)self_73688)->elts[38]; - -return_closcall1(data,(closure)&c_731487, Cyc_set_car(data, ((closureN)self_73688)->elts[21], r_73561));; -} - -static void __lambda_432(void *data, int argc, object self_73689, object r_73265) { - -closureN_type c_731489; -c_731489.hdr.mark = gc_color_red; - c_731489.hdr.grayed = 0; -c_731489.tag = closureN_tag; - c_731489.fn = (function_type)__lambda_424; -c_731489.num_args = 1; -c_731489.num_elt = 39; -c_731489.elts = (object *)alloca(sizeof(object) * 39); -c_731489.elts[0] = ((closureN)self_73689)->elts[0]; -c_731489.elts[1] = ((closureN)self_73689)->elts[1]; -c_731489.elts[2] = ((closureN)self_73689)->elts[2]; -c_731489.elts[3] = ((closureN)self_73689)->elts[3]; -c_731489.elts[4] = ((closureN)self_73689)->elts[4]; -c_731489.elts[5] = ((closureN)self_73689)->elts[5]; -c_731489.elts[6] = ((closureN)self_73689)->elts[6]; -c_731489.elts[7] = ((closureN)self_73689)->elts[7]; -c_731489.elts[8] = ((closureN)self_73689)->elts[8]; -c_731489.elts[9] = ((closureN)self_73689)->elts[9]; -c_731489.elts[10] = ((closureN)self_73689)->elts[10]; -c_731489.elts[11] = ((closureN)self_73689)->elts[11]; -c_731489.elts[12] = ((closureN)self_73689)->elts[12]; -c_731489.elts[13] = ((closureN)self_73689)->elts[13]; -c_731489.elts[14] = ((closureN)self_73689)->elts[14]; -c_731489.elts[15] = ((closureN)self_73689)->elts[15]; -c_731489.elts[16] = ((closureN)self_73689)->elts[16]; -c_731489.elts[17] = ((closureN)self_73689)->elts[17]; -c_731489.elts[18] = ((closureN)self_73689)->elts[18]; -c_731489.elts[19] = ((closureN)self_73689)->elts[19]; -c_731489.elts[20] = ((closureN)self_73689)->elts[20]; -c_731489.elts[21] = ((closureN)self_73689)->elts[21]; -c_731489.elts[22] = ((closureN)self_73689)->elts[22]; -c_731489.elts[23] = ((closureN)self_73689)->elts[23]; -c_731489.elts[24] = ((closureN)self_73689)->elts[24]; -c_731489.elts[25] = ((closureN)self_73689)->elts[25]; -c_731489.elts[26] = ((closureN)self_73689)->elts[26]; -c_731489.elts[27] = ((closureN)self_73689)->elts[27]; -c_731489.elts[28] = ((closureN)self_73689)->elts[28]; -c_731489.elts[29] = ((closureN)self_73689)->elts[29]; -c_731489.elts[30] = ((closureN)self_73689)->elts[30]; -c_731489.elts[31] = ((closureN)self_73689)->elts[31]; -c_731489.elts[32] = ((closureN)self_73689)->elts[32]; -c_731489.elts[33] = ((closureN)self_73689)->elts[33]; -c_731489.elts[34] = ((closureN)self_73689)->elts[34]; -c_731489.elts[35] = ((closureN)self_73689)->elts[35]; -c_731489.elts[36] = ((closureN)self_73689)->elts[36]; -c_731489.elts[37] = ((closureN)self_73689)->elts[37]; -c_731489.elts[38] = ((closureN)self_73689)->elts[38]; - - -closureN_type c_733092; -c_733092.hdr.mark = gc_color_red; - c_733092.hdr.grayed = 0; -c_733092.tag = closureN_tag; - c_733092.fn = (function_type)__lambda_431; -c_733092.num_args = 1; -c_733092.num_elt = 2; -c_733092.elts = (object *)alloca(sizeof(object) * 2); -c_733092.elts[0] = ((closureN)self_73689)->elts[1]; -c_733092.elts[1] = ((closureN)self_73689)->elts[2]; - -return_closcall1(data,(closure)&c_731489, &c_733092);; -} - -static void __lambda_431(void *data, int argc, object self_73690, object k_73556, object lst_73225) { - -closureN_type c_733094; -c_733094.hdr.mark = gc_color_red; - c_733094.hdr.grayed = 0; -c_733094.tag = closureN_tag; - c_733094.fn = (function_type)__lambda_430; -c_733094.num_args = 1; -c_733094.num_elt = 4; -c_733094.elts = (object *)alloca(sizeof(object) * 4); -c_733094.elts[0] = ((closureN)self_73690)->elts[0]; -c_733094.elts[1] = ((closureN)self_73690)->elts[1]; -c_733094.elts[2] = k_73556; -c_733094.elts[3] = lst_73225; - -return_closcall1(data,(closure)&c_733094, Cyc_is_null(lst_73225));; -} - -static void __lambda_430(void *data, int argc, object self_73691, object r_73557) { - if( !eq(boolean_f, r_73557) ){ - -closureN_type c_733096; -c_733096.hdr.mark = gc_color_red; - c_733096.hdr.grayed = 0; -c_733096.tag = closureN_tag; - c_733096.fn = (function_type)__lambda_425; -c_733096.num_args = 0; -c_733096.num_elt = 1; -c_733096.elts = (object *)alloca(sizeof(object) * 1); -c_733096.elts[0] = ((closureN)self_73691)->elts[2]; - -return_closcall0(data,(closure)&c_733096); -} else { - -closureN_type c_733100; -c_733100.hdr.mark = gc_color_red; - c_733100.hdr.grayed = 0; -c_733100.tag = closureN_tag; - c_733100.fn = (function_type)__lambda_429; -c_733100.num_args = 0; -c_733100.num_elt = 4; -c_733100.elts = (object *)alloca(sizeof(object) * 4); -c_733100.elts[0] = ((closureN)self_73691)->elts[0]; -c_733100.elts[1] = ((closureN)self_73691)->elts[1]; -c_733100.elts[2] = ((closureN)self_73691)->elts[2]; -c_733100.elts[3] = ((closureN)self_73691)->elts[3]; - -return_closcall0(data,(closure)&c_733100);} -; -} - -static void __lambda_429(void *data, int argc, object self_73692) { - -closureN_type c_733102; -c_733102.hdr.mark = gc_color_red; - c_733102.hdr.grayed = 0; -c_733102.tag = closureN_tag; - c_733102.fn = (function_type)__lambda_428; -c_733102.num_args = 1; -c_733102.num_elt = 4; -c_733102.elts = (object *)alloca(sizeof(object) * 4); -c_733102.elts[0] = ((closureN)self_73692)->elts[0]; -c_733102.elts[1] = ((closureN)self_73692)->elts[1]; -c_733102.elts[2] = ((closureN)self_73692)->elts[2]; -c_733102.elts[3] = ((closureN)self_73692)->elts[3]; - -return_closcall1(data,(closure)&c_733102, car(((closureN)self_73692)->elts[3]));; -} - -static void __lambda_428(void *data, int argc, object self_73693, object r_73560) { - -closureN_type c_733107; -c_733107.hdr.mark = gc_color_red; - c_733107.hdr.grayed = 0; -c_733107.tag = closureN_tag; - c_733107.fn = (function_type)__lambda_427; -c_733107.num_args = 1; -c_733107.num_elt = 3; -c_733107.elts = (object *)alloca(sizeof(object) * 3); -c_733107.elts[0] = ((closureN)self_73693)->elts[1]; -c_733107.elts[1] = ((closureN)self_73693)->elts[2]; -c_733107.elts[2] = ((closureN)self_73693)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73693)->elts[0]), &c_733107, r_73560);; -} - -static void __lambda_427(void *data, int argc, object self_73694, object r_73558) { - -closureN_type c_733109; -c_733109.hdr.mark = gc_color_red; - c_733109.hdr.grayed = 0; -c_733109.tag = closureN_tag; - c_733109.fn = (function_type)__lambda_426; -c_733109.num_args = 1; -c_733109.num_elt = 2; -c_733109.elts = (object *)alloca(sizeof(object) * 2); -c_733109.elts[0] = ((closureN)self_73694)->elts[0]; -c_733109.elts[1] = ((closureN)self_73694)->elts[1]; - -return_closcall1(data,(closure)&c_733109, cdr(((closureN)self_73694)->elts[2]));; -} - -static void __lambda_426(void *data, int argc, object self_73695, object r_73559) { - return_closcall2(data, cell_get(((closureN)self_73695)->elts[0]), ((closureN)self_73695)->elts[1], r_73559);; -} - -static void __lambda_425(void *data, int argc, object self_73696) { - return_closcall1(data, ((closureN)self_73696)->elts[0], boolean_t);; -} - -static void __lambda_424(void *data, int argc, object self_73697, object r_73555) { - -closureN_type c_731491; -c_731491.hdr.mark = gc_color_red; - c_731491.hdr.grayed = 0; -c_731491.tag = closureN_tag; - c_731491.fn = (function_type)__lambda_423; -c_731491.num_args = 1; -c_731491.num_elt = 38; -c_731491.elts = (object *)alloca(sizeof(object) * 38); -c_731491.elts[0] = ((closureN)self_73697)->elts[0]; -c_731491.elts[1] = ((closureN)self_73697)->elts[1]; -c_731491.elts[2] = ((closureN)self_73697)->elts[3]; -c_731491.elts[3] = ((closureN)self_73697)->elts[4]; -c_731491.elts[4] = ((closureN)self_73697)->elts[5]; -c_731491.elts[5] = ((closureN)self_73697)->elts[6]; -c_731491.elts[6] = ((closureN)self_73697)->elts[7]; -c_731491.elts[7] = ((closureN)self_73697)->elts[8]; -c_731491.elts[8] = ((closureN)self_73697)->elts[9]; -c_731491.elts[9] = ((closureN)self_73697)->elts[10]; -c_731491.elts[10] = ((closureN)self_73697)->elts[11]; -c_731491.elts[11] = ((closureN)self_73697)->elts[12]; -c_731491.elts[12] = ((closureN)self_73697)->elts[13]; -c_731491.elts[13] = ((closureN)self_73697)->elts[14]; -c_731491.elts[14] = ((closureN)self_73697)->elts[15]; -c_731491.elts[15] = ((closureN)self_73697)->elts[16]; -c_731491.elts[16] = ((closureN)self_73697)->elts[17]; -c_731491.elts[17] = ((closureN)self_73697)->elts[18]; -c_731491.elts[18] = ((closureN)self_73697)->elts[19]; -c_731491.elts[19] = ((closureN)self_73697)->elts[20]; -c_731491.elts[20] = ((closureN)self_73697)->elts[21]; -c_731491.elts[21] = ((closureN)self_73697)->elts[22]; -c_731491.elts[22] = ((closureN)self_73697)->elts[23]; -c_731491.elts[23] = ((closureN)self_73697)->elts[24]; -c_731491.elts[24] = ((closureN)self_73697)->elts[25]; -c_731491.elts[25] = ((closureN)self_73697)->elts[26]; -c_731491.elts[26] = ((closureN)self_73697)->elts[27]; -c_731491.elts[27] = ((closureN)self_73697)->elts[28]; -c_731491.elts[28] = ((closureN)self_73697)->elts[29]; -c_731491.elts[29] = ((closureN)self_73697)->elts[30]; -c_731491.elts[30] = ((closureN)self_73697)->elts[31]; -c_731491.elts[31] = ((closureN)self_73697)->elts[32]; -c_731491.elts[32] = ((closureN)self_73697)->elts[33]; -c_731491.elts[33] = ((closureN)self_73697)->elts[34]; -c_731491.elts[34] = ((closureN)self_73697)->elts[35]; -c_731491.elts[35] = ((closureN)self_73697)->elts[36]; -c_731491.elts[36] = ((closureN)self_73697)->elts[37]; -c_731491.elts[37] = ((closureN)self_73697)->elts[38]; - -return_closcall1(data,(closure)&c_731491, Cyc_set_car(data, ((closureN)self_73697)->elts[2], r_73555));; -} - -static void __lambda_423(void *data, int argc, object self_73698, object r_73266) { - -closureN_type c_731493; -c_731493.hdr.mark = gc_color_red; - c_731493.hdr.grayed = 0; -c_731493.tag = closureN_tag; - c_731493.fn = (function_type)__lambda_403; -c_731493.num_args = 1; -c_731493.num_elt = 38; -c_731493.elts = (object *)alloca(sizeof(object) * 38); -c_731493.elts[0] = ((closureN)self_73698)->elts[0]; -c_731493.elts[1] = ((closureN)self_73698)->elts[1]; -c_731493.elts[2] = ((closureN)self_73698)->elts[2]; -c_731493.elts[3] = ((closureN)self_73698)->elts[3]; -c_731493.elts[4] = ((closureN)self_73698)->elts[4]; -c_731493.elts[5] = ((closureN)self_73698)->elts[5]; -c_731493.elts[6] = ((closureN)self_73698)->elts[6]; -c_731493.elts[7] = ((closureN)self_73698)->elts[7]; -c_731493.elts[8] = ((closureN)self_73698)->elts[8]; -c_731493.elts[9] = ((closureN)self_73698)->elts[9]; -c_731493.elts[10] = ((closureN)self_73698)->elts[10]; -c_731493.elts[11] = ((closureN)self_73698)->elts[11]; -c_731493.elts[12] = ((closureN)self_73698)->elts[12]; -c_731493.elts[13] = ((closureN)self_73698)->elts[13]; -c_731493.elts[14] = ((closureN)self_73698)->elts[14]; -c_731493.elts[15] = ((closureN)self_73698)->elts[15]; -c_731493.elts[16] = ((closureN)self_73698)->elts[16]; -c_731493.elts[17] = ((closureN)self_73698)->elts[17]; -c_731493.elts[18] = ((closureN)self_73698)->elts[18]; -c_731493.elts[19] = ((closureN)self_73698)->elts[19]; -c_731493.elts[20] = ((closureN)self_73698)->elts[20]; -c_731493.elts[21] = ((closureN)self_73698)->elts[21]; -c_731493.elts[22] = ((closureN)self_73698)->elts[22]; -c_731493.elts[23] = ((closureN)self_73698)->elts[23]; -c_731493.elts[24] = ((closureN)self_73698)->elts[24]; -c_731493.elts[25] = ((closureN)self_73698)->elts[25]; -c_731493.elts[26] = ((closureN)self_73698)->elts[26]; -c_731493.elts[27] = ((closureN)self_73698)->elts[27]; -c_731493.elts[28] = ((closureN)self_73698)->elts[28]; -c_731493.elts[29] = ((closureN)self_73698)->elts[29]; -c_731493.elts[30] = ((closureN)self_73698)->elts[30]; -c_731493.elts[31] = ((closureN)self_73698)->elts[31]; -c_731493.elts[32] = ((closureN)self_73698)->elts[32]; -c_731493.elts[33] = ((closureN)self_73698)->elts[33]; -c_731493.elts[34] = ((closureN)self_73698)->elts[34]; -c_731493.elts[35] = ((closureN)self_73698)->elts[35]; -c_731493.elts[36] = ((closureN)self_73698)->elts[36]; -c_731493.elts[37] = ((closureN)self_73698)->elts[37]; - - -closureN_type c_733000; -c_733000.hdr.mark = gc_color_red; - c_733000.hdr.grayed = 0; -c_733000.tag = closureN_tag; - c_733000.fn = (function_type)__lambda_422; -c_733000.num_args = 1; -c_733000.num_elt = 3; -c_733000.elts = (object *)alloca(sizeof(object) * 3); -c_733000.elts[0] = ((closureN)self_73698)->elts[6]; -c_733000.elts[1] = ((closureN)self_73698)->elts[14]; -c_733000.elts[2] = ((closureN)self_73698)->elts[33]; - -return_closcall1(data,(closure)&c_731493, &c_733000);; -} - -static void __lambda_422(void *data, int argc, object self_73699, object k_73538, object term_73224) { - -closureN_type c_733002; -c_733002.hdr.mark = gc_color_red; - c_733002.hdr.grayed = 0; -c_733002.tag = closureN_tag; - c_733002.fn = (function_type)__lambda_409; -c_733002.num_args = 0; -c_733002.num_elt = 1; -c_733002.elts = (object *)alloca(sizeof(object) * 1); -c_733002.elts[0] = term_73224; - - -closureN_type c_733033; -c_733033.hdr.mark = gc_color_red; - c_733033.hdr.grayed = 0; -c_733033.tag = closureN_tag; - c_733033.fn = (function_type)__lambda_421; -c_733033.num_args = 1; -c_733033.num_elt = 5; -c_733033.elts = (object *)alloca(sizeof(object) * 5); -c_733033.elts[0] = ((closureN)self_73699)->elts[0]; -c_733033.elts[1] = k_73538; -c_733033.elts[2] = ((closureN)self_73699)->elts[1]; -c_733033.elts[3] = term_73224; -c_733033.elts[4] = ((closureN)self_73699)->elts[2]; - -return_closcall1(data,(closure)&c_733002, &c_733033);; -} - -static void __lambda_421(void *data, int argc, object self_73700, object r_73539) { - if( !eq(boolean_f, r_73539) ){ - -closureN_type c_733035; -c_733035.hdr.mark = gc_color_red; - c_733035.hdr.grayed = 0; -c_733035.tag = closureN_tag; - c_733035.fn = (function_type)__lambda_419; -c_733035.num_args = 0; -c_733035.num_elt = 5; -c_733035.elts = (object *)alloca(sizeof(object) * 5); -c_733035.elts[0] = ((closureN)self_73700)->elts[0]; -c_733035.elts[1] = ((closureN)self_73700)->elts[1]; -c_733035.elts[2] = ((closureN)self_73700)->elts[2]; -c_733035.elts[3] = ((closureN)self_73700)->elts[3]; -c_733035.elts[4] = ((closureN)self_73700)->elts[4]; - -return_closcall0(data,(closure)&c_733035); -} else { - -closureN_type c_733084; -c_733084.hdr.mark = gc_color_red; - c_733084.hdr.grayed = 0; -c_733084.tag = closureN_tag; - c_733084.fn = (function_type)__lambda_420; -c_733084.num_args = 0; -c_733084.num_elt = 2; -c_733084.elts = (object *)alloca(sizeof(object) * 2); -c_733084.elts[0] = ((closureN)self_73700)->elts[1]; -c_733084.elts[1] = ((closureN)self_73700)->elts[3]; - -return_closcall0(data,(closure)&c_733084);} -; -} - -static void __lambda_420(void *data, int argc, object self_73701) { - -make_string(c_733087, "ADD-LEMMA did not like term: "); -return_closcall4(data, __glo_error_scheme_base, ((closureN)self_73701)->elts[0], boolean_f, &c_733087, ((closureN)self_73701)->elts[1]);; -} - -static void __lambda_419(void *data, int argc, object self_73702) { - -closureN_type c_733037; -c_733037.hdr.mark = gc_color_red; - c_733037.hdr.grayed = 0; -c_733037.tag = closureN_tag; - c_733037.fn = (function_type)__lambda_418; -c_733037.num_args = 1; -c_733037.num_elt = 5; -c_733037.elts = (object *)alloca(sizeof(object) * 5); -c_733037.elts[0] = ((closureN)self_73702)->elts[0]; -c_733037.elts[1] = ((closureN)self_73702)->elts[1]; -c_733037.elts[2] = ((closureN)self_73702)->elts[2]; -c_733037.elts[3] = ((closureN)self_73702)->elts[3]; -c_733037.elts[4] = ((closureN)self_73702)->elts[4]; - -return_closcall1(data,(closure)&c_733037, cadr(((closureN)self_73702)->elts[3]));; -} - -static void __lambda_418(void *data, int argc, object self_73703, object r_73548) { - -closureN_type c_733039; -c_733039.hdr.mark = gc_color_red; - c_733039.hdr.grayed = 0; -c_733039.tag = closureN_tag; - c_733039.fn = (function_type)__lambda_417; -c_733039.num_args = 1; -c_733039.num_elt = 5; -c_733039.elts = (object *)alloca(sizeof(object) * 5); -c_733039.elts[0] = ((closureN)self_73703)->elts[0]; -c_733039.elts[1] = ((closureN)self_73703)->elts[1]; -c_733039.elts[2] = ((closureN)self_73703)->elts[2]; -c_733039.elts[3] = ((closureN)self_73703)->elts[3]; -c_733039.elts[4] = ((closureN)self_73703)->elts[4]; - -return_closcall1(data,(closure)&c_733039, car(r_73548));; -} - -static void __lambda_417(void *data, int argc, object self_73704, object r_73540) { - -closureN_type c_733041; -c_733041.hdr.mark = gc_color_red; - c_733041.hdr.grayed = 0; -c_733041.tag = closureN_tag; - c_733041.fn = (function_type)__lambda_416; -c_733041.num_args = 1; -c_733041.num_elt = 6; -c_733041.elts = (object *)alloca(sizeof(object) * 6); -c_733041.elts[0] = ((closureN)self_73704)->elts[0]; -c_733041.elts[1] = ((closureN)self_73704)->elts[1]; -c_733041.elts[2] = ((closureN)self_73704)->elts[2]; -c_733041.elts[3] = r_73540; -c_733041.elts[4] = ((closureN)self_73704)->elts[3]; -c_733041.elts[5] = ((closureN)self_73704)->elts[4]; - -return_closcall1(data,(closure)&c_733041, quote_lemmas);; -} - -static void __lambda_416(void *data, int argc, object self_73705, object r_73541) { - -closureN_type c_733046; -c_733046.hdr.mark = gc_color_red; - c_733046.hdr.grayed = 0; -c_733046.tag = closureN_tag; - c_733046.fn = (function_type)__lambda_415; -c_733046.num_args = 1; -c_733046.num_elt = 6; -c_733046.elts = (object *)alloca(sizeof(object) * 6); -c_733046.elts[0] = ((closureN)self_73705)->elts[0]; -c_733046.elts[1] = ((closureN)self_73705)->elts[1]; -c_733046.elts[2] = ((closureN)self_73705)->elts[2]; -c_733046.elts[3] = ((closureN)self_73705)->elts[3]; -c_733046.elts[4] = r_73541; -c_733046.elts[5] = ((closureN)self_73705)->elts[4]; - -return_closcall2(data, cell_get(((closureN)self_73705)->elts[5]), &c_733046, ((closureN)self_73705)->elts[4]);; -} - -static void __lambda_415(void *data, int argc, object self_73706, object r_73543) { - -closureN_type c_733048; -c_733048.hdr.mark = gc_color_red; - c_733048.hdr.grayed = 0; -c_733048.tag = closureN_tag; - c_733048.fn = (function_type)__lambda_414; -c_733048.num_args = 1; -c_733048.num_elt = 6; -c_733048.elts = (object *)alloca(sizeof(object) * 6); -c_733048.elts[0] = ((closureN)self_73706)->elts[0]; -c_733048.elts[1] = ((closureN)self_73706)->elts[1]; -c_733048.elts[2] = ((closureN)self_73706)->elts[2]; -c_733048.elts[3] = ((closureN)self_73706)->elts[3]; -c_733048.elts[4] = ((closureN)self_73706)->elts[4]; -c_733048.elts[5] = r_73543; - -return_closcall1(data,(closure)&c_733048, cadr(((closureN)self_73706)->elts[5]));; -} - -static void __lambda_414(void *data, int argc, object self_73707, object r_73547) { - -closureN_type c_733050; -c_733050.hdr.mark = gc_color_red; - c_733050.hdr.grayed = 0; -c_733050.tag = closureN_tag; - c_733050.fn = (function_type)__lambda_413; -c_733050.num_args = 1; -c_733050.num_elt = 6; -c_733050.elts = (object *)alloca(sizeof(object) * 6); -c_733050.elts[0] = ((closureN)self_73707)->elts[0]; -c_733050.elts[1] = ((closureN)self_73707)->elts[1]; -c_733050.elts[2] = ((closureN)self_73707)->elts[2]; -c_733050.elts[3] = ((closureN)self_73707)->elts[3]; -c_733050.elts[4] = ((closureN)self_73707)->elts[4]; -c_733050.elts[5] = ((closureN)self_73707)->elts[5]; - -return_closcall1(data,(closure)&c_733050, car(r_73547));; -} - -static void __lambda_413(void *data, int argc, object self_73708, object r_73545) { - -closureN_type c_733052; -c_733052.hdr.mark = gc_color_red; - c_733052.hdr.grayed = 0; -c_733052.tag = closureN_tag; - c_733052.fn = (function_type)__lambda_412; -c_733052.num_args = 1; -c_733052.num_elt = 7; -c_733052.elts = (object *)alloca(sizeof(object) * 7); -c_733052.elts[0] = ((closureN)self_73708)->elts[0]; -c_733052.elts[1] = ((closureN)self_73708)->elts[1]; -c_733052.elts[2] = ((closureN)self_73708)->elts[2]; -c_733052.elts[3] = ((closureN)self_73708)->elts[3]; -c_733052.elts[4] = ((closureN)self_73708)->elts[4]; -c_733052.elts[5] = ((closureN)self_73708)->elts[5]; -c_733052.elts[6] = r_73545; - -return_closcall1(data,(closure)&c_733052, quote_lemmas);; -} - -static void __lambda_412(void *data, int argc, object self_73709, object r_73546) { - -closureN_type c_733057; -c_733057.hdr.mark = gc_color_red; - c_733057.hdr.grayed = 0; -c_733057.tag = closureN_tag; - c_733057.fn = (function_type)__lambda_411; -c_733057.num_args = 1; -c_733057.num_elt = 5; -c_733057.elts = (object *)alloca(sizeof(object) * 5); -c_733057.elts[0] = ((closureN)self_73709)->elts[1]; -c_733057.elts[1] = ((closureN)self_73709)->elts[2]; -c_733057.elts[2] = ((closureN)self_73709)->elts[3]; -c_733057.elts[3] = ((closureN)self_73709)->elts[4]; -c_733057.elts[4] = ((closureN)self_73709)->elts[5]; - -return_closcall3(data, cell_get(((closureN)self_73709)->elts[0]), &c_733057, ((closureN)self_73709)->elts[6], r_73546);; -} - -static void __lambda_411(void *data, int argc, object self_73710, object r_73544) { - -closureN_type c_733059; -c_733059.hdr.mark = gc_color_red; - c_733059.hdr.grayed = 0; -c_733059.tag = closureN_tag; - c_733059.fn = (function_type)__lambda_410; -c_733059.num_args = 1; -c_733059.num_elt = 4; -c_733059.elts = (object *)alloca(sizeof(object) * 4); -c_733059.elts[0] = ((closureN)self_73710)->elts[0]; -c_733059.elts[1] = ((closureN)self_73710)->elts[1]; -c_733059.elts[2] = ((closureN)self_73710)->elts[2]; -c_733059.elts[3] = ((closureN)self_73710)->elts[3]; - - -make_cons(c_733069,((closureN)self_73710)->elts[4], r_73544); -return_closcall1(data,(closure)&c_733059, &c_733069);; -} - -static void __lambda_410(void *data, int argc, object self_73711, object r_73542) { - return_closcall4(data, cell_get(((closureN)self_73711)->elts[1]), ((closureN)self_73711)->elts[0], ((closureN)self_73711)->elts[2], ((closureN)self_73711)->elts[3], r_73542);; -} - -static void __lambda_409(void *data, int argc, object self_73712, object k_73549) { - -closureN_type c_733004; -c_733004.hdr.mark = gc_color_red; - c_733004.hdr.grayed = 0; -c_733004.tag = closureN_tag; - c_733004.fn = (function_type)__lambda_408; -c_733004.num_args = 1; -c_733004.num_elt = 2; -c_733004.elts = (object *)alloca(sizeof(object) * 2); -c_733004.elts[0] = k_73549; -c_733004.elts[1] = ((closureN)self_73712)->elts[0]; - -return_closcall1(data,(closure)&c_733004, Cyc_is_cons(((closureN)self_73712)->elts[0]));; -} - -static void __lambda_408(void *data, int argc, object self_73713, object r_73550) { - if( !eq(boolean_f, r_73550) ){ - -closureN_type c_733006; -c_733006.hdr.mark = gc_color_red; - c_733006.hdr.grayed = 0; -c_733006.tag = closureN_tag; - c_733006.fn = (function_type)__lambda_407; -c_733006.num_args = 1; -c_733006.num_elt = 2; -c_733006.elts = (object *)alloca(sizeof(object) * 2); -c_733006.elts[0] = ((closureN)self_73713)->elts[0]; -c_733006.elts[1] = ((closureN)self_73713)->elts[1]; - -return_closcall1(data,(closure)&c_733006, car(((closureN)self_73713)->elts[1])); -} else { - return_closcall1(data, ((closureN)self_73713)->elts[0], boolean_f);} -; -} - -static void __lambda_407(void *data, int argc, object self_73714, object r_73553) { - -closureN_type c_733008; -c_733008.hdr.mark = gc_color_red; - c_733008.hdr.grayed = 0; -c_733008.tag = closureN_tag; - c_733008.fn = (function_type)__lambda_406; -c_733008.num_args = 1; -c_733008.num_elt = 3; -c_733008.elts = (object *)alloca(sizeof(object) * 3); -c_733008.elts[0] = ((closureN)self_73714)->elts[0]; -c_733008.elts[1] = r_73553; -c_733008.elts[2] = ((closureN)self_73714)->elts[1]; - -return_closcall1(data,(closure)&c_733008, quote_equal);; -} - -static void __lambda_406(void *data, int argc, object self_73715, object r_73554) { - -closureN_type c_733010; -c_733010.hdr.mark = gc_color_red; - c_733010.hdr.grayed = 0; -c_733010.tag = closureN_tag; - c_733010.fn = (function_type)__lambda_405; -c_733010.num_args = 1; -c_733010.num_elt = 2; -c_733010.elts = (object *)alloca(sizeof(object) * 2); -c_733010.elts[0] = ((closureN)self_73715)->elts[0]; -c_733010.elts[1] = ((closureN)self_73715)->elts[2]; - -return_closcall1(data,(closure)&c_733010, Cyc_eq(((closureN)self_73715)->elts[1], r_73554));; -} - -static void __lambda_405(void *data, int argc, object self_73716, object r_73551) { - if( !eq(boolean_f, r_73551) ){ - -closureN_type c_733012; -c_733012.hdr.mark = gc_color_red; - c_733012.hdr.grayed = 0; -c_733012.tag = closureN_tag; - c_733012.fn = (function_type)__lambda_404; -c_733012.num_args = 1; -c_733012.num_elt = 1; -c_733012.elts = (object *)alloca(sizeof(object) * 1); -c_733012.elts[0] = ((closureN)self_73716)->elts[0]; - -return_closcall1(data,(closure)&c_733012, cadr(((closureN)self_73716)->elts[1])); -} else { - return_closcall1(data, ((closureN)self_73716)->elts[0], boolean_f);} -; -} - -static void __lambda_404(void *data, int argc, object self_73717, object r_73552) { - return_closcall1(data, ((closureN)self_73717)->elts[0], Cyc_is_cons(r_73552));; -} - -static void __lambda_403(void *data, int argc, object self_73718, object r_73537) { - -closureN_type c_731495; -c_731495.hdr.mark = gc_color_red; - c_731495.hdr.grayed = 0; -c_731495.tag = closureN_tag; - c_731495.fn = (function_type)__lambda_402; -c_731495.num_args = 1; -c_731495.num_elt = 37; -c_731495.elts = (object *)alloca(sizeof(object) * 37); -c_731495.elts[0] = ((closureN)self_73718)->elts[0]; -c_731495.elts[1] = ((closureN)self_73718)->elts[2]; -c_731495.elts[2] = ((closureN)self_73718)->elts[3]; -c_731495.elts[3] = ((closureN)self_73718)->elts[4]; -c_731495.elts[4] = ((closureN)self_73718)->elts[5]; -c_731495.elts[5] = ((closureN)self_73718)->elts[6]; -c_731495.elts[6] = ((closureN)self_73718)->elts[7]; -c_731495.elts[7] = ((closureN)self_73718)->elts[8]; -c_731495.elts[8] = ((closureN)self_73718)->elts[9]; -c_731495.elts[9] = ((closureN)self_73718)->elts[10]; -c_731495.elts[10] = ((closureN)self_73718)->elts[11]; -c_731495.elts[11] = ((closureN)self_73718)->elts[12]; -c_731495.elts[12] = ((closureN)self_73718)->elts[13]; -c_731495.elts[13] = ((closureN)self_73718)->elts[14]; -c_731495.elts[14] = ((closureN)self_73718)->elts[15]; -c_731495.elts[15] = ((closureN)self_73718)->elts[16]; -c_731495.elts[16] = ((closureN)self_73718)->elts[17]; -c_731495.elts[17] = ((closureN)self_73718)->elts[18]; -c_731495.elts[18] = ((closureN)self_73718)->elts[19]; -c_731495.elts[19] = ((closureN)self_73718)->elts[20]; -c_731495.elts[20] = ((closureN)self_73718)->elts[21]; -c_731495.elts[21] = ((closureN)self_73718)->elts[22]; -c_731495.elts[22] = ((closureN)self_73718)->elts[23]; -c_731495.elts[23] = ((closureN)self_73718)->elts[24]; -c_731495.elts[24] = ((closureN)self_73718)->elts[25]; -c_731495.elts[25] = ((closureN)self_73718)->elts[26]; -c_731495.elts[26] = ((closureN)self_73718)->elts[27]; -c_731495.elts[27] = ((closureN)self_73718)->elts[28]; -c_731495.elts[28] = ((closureN)self_73718)->elts[29]; -c_731495.elts[29] = ((closureN)self_73718)->elts[30]; -c_731495.elts[30] = ((closureN)self_73718)->elts[31]; -c_731495.elts[31] = ((closureN)self_73718)->elts[32]; -c_731495.elts[32] = ((closureN)self_73718)->elts[33]; -c_731495.elts[33] = ((closureN)self_73718)->elts[34]; -c_731495.elts[34] = ((closureN)self_73718)->elts[35]; -c_731495.elts[35] = ((closureN)self_73718)->elts[36]; -c_731495.elts[36] = ((closureN)self_73718)->elts[37]; - -return_closcall1(data,(closure)&c_731495, Cyc_set_car(data, ((closureN)self_73718)->elts[1], r_73537));; -} - -static void __lambda_402(void *data, int argc, object self_73719, object r_73267) { - -closureN_type c_731497; -c_731497.hdr.mark = gc_color_red; - c_731497.hdr.grayed = 0; -c_731497.tag = closureN_tag; - c_731497.fn = (function_type)__lambda_393; -c_731497.num_args = 1; -c_731497.num_elt = 37; -c_731497.elts = (object *)alloca(sizeof(object) * 37); -c_731497.elts[0] = ((closureN)self_73719)->elts[0]; -c_731497.elts[1] = ((closureN)self_73719)->elts[1]; -c_731497.elts[2] = ((closureN)self_73719)->elts[2]; -c_731497.elts[3] = ((closureN)self_73719)->elts[3]; -c_731497.elts[4] = ((closureN)self_73719)->elts[4]; -c_731497.elts[5] = ((closureN)self_73719)->elts[5]; -c_731497.elts[6] = ((closureN)self_73719)->elts[6]; -c_731497.elts[7] = ((closureN)self_73719)->elts[7]; -c_731497.elts[8] = ((closureN)self_73719)->elts[8]; -c_731497.elts[9] = ((closureN)self_73719)->elts[9]; -c_731497.elts[10] = ((closureN)self_73719)->elts[10]; -c_731497.elts[11] = ((closureN)self_73719)->elts[11]; -c_731497.elts[12] = ((closureN)self_73719)->elts[12]; -c_731497.elts[13] = ((closureN)self_73719)->elts[13]; -c_731497.elts[14] = ((closureN)self_73719)->elts[14]; -c_731497.elts[15] = ((closureN)self_73719)->elts[15]; -c_731497.elts[16] = ((closureN)self_73719)->elts[16]; -c_731497.elts[17] = ((closureN)self_73719)->elts[17]; -c_731497.elts[18] = ((closureN)self_73719)->elts[18]; -c_731497.elts[19] = ((closureN)self_73719)->elts[19]; -c_731497.elts[20] = ((closureN)self_73719)->elts[20]; -c_731497.elts[21] = ((closureN)self_73719)->elts[21]; -c_731497.elts[22] = ((closureN)self_73719)->elts[22]; -c_731497.elts[23] = ((closureN)self_73719)->elts[23]; -c_731497.elts[24] = ((closureN)self_73719)->elts[24]; -c_731497.elts[25] = ((closureN)self_73719)->elts[25]; -c_731497.elts[26] = ((closureN)self_73719)->elts[26]; -c_731497.elts[27] = ((closureN)self_73719)->elts[27]; -c_731497.elts[28] = ((closureN)self_73719)->elts[28]; -c_731497.elts[29] = ((closureN)self_73719)->elts[29]; -c_731497.elts[30] = ((closureN)self_73719)->elts[30]; -c_731497.elts[31] = ((closureN)self_73719)->elts[31]; -c_731497.elts[32] = ((closureN)self_73719)->elts[32]; -c_731497.elts[33] = ((closureN)self_73719)->elts[33]; -c_731497.elts[34] = ((closureN)self_73719)->elts[34]; -c_731497.elts[35] = ((closureN)self_73719)->elts[35]; -c_731497.elts[36] = ((closureN)self_73719)->elts[36]; - - -closureN_type c_732959; -c_732959.hdr.mark = gc_color_red; - c_732959.hdr.grayed = 0; -c_732959.tag = closureN_tag; - c_732959.fn = (function_type)__lambda_401; -c_732959.num_args = 1; -c_732959.num_elt = 2; -c_732959.elts = (object *)alloca(sizeof(object) * 2); -c_732959.elts[0] = ((closureN)self_73719)->elts[20]; -c_732959.elts[1] = ((closureN)self_73719)->elts[31]; - -return_closcall1(data,(closure)&c_731497, &c_732959);; -} - -static void __lambda_401(void *data, int argc, object self_73720, object k_73531, object term_73223) { - -closureN_type c_732961; -c_732961.hdr.mark = gc_color_red; - c_732961.hdr.grayed = 0; -c_732961.tag = closureN_tag; - c_732961.fn = (function_type)__lambda_400; -c_732961.num_args = 1; -c_732961.num_elt = 4; -c_732961.elts = (object *)alloca(sizeof(object) * 4); -c_732961.elts[0] = k_73531; -c_732961.elts[1] = ((closureN)self_73720)->elts[0]; -c_732961.elts[2] = term_73223; -c_732961.elts[3] = ((closureN)self_73720)->elts[1]; - -return_closcall1(data,(closure)&c_732961, Cyc_is_cons(term_73223));; -} - -static void __lambda_400(void *data, int argc, object self_73721, object r_73532) { - if( !eq(boolean_f, r_73532) ){ - -closureN_type c_732963; -c_732963.hdr.mark = gc_color_red; - c_732963.hdr.grayed = 0; -c_732963.tag = closureN_tag; - c_732963.fn = (function_type)__lambda_398; -c_732963.num_args = 0; -c_732963.num_elt = 4; -c_732963.elts = (object *)alloca(sizeof(object) * 4); -c_732963.elts[0] = ((closureN)self_73721)->elts[0]; -c_732963.elts[1] = ((closureN)self_73721)->elts[1]; -c_732963.elts[2] = ((closureN)self_73721)->elts[2]; -c_732963.elts[3] = ((closureN)self_73721)->elts[3]; - -return_closcall0(data,(closure)&c_732963); -} else { - -closureN_type c_732991; -c_732991.hdr.mark = gc_color_red; - c_732991.hdr.grayed = 0; -c_732991.tag = closureN_tag; - c_732991.fn = (function_type)__lambda_399; -c_732991.num_args = 0; -c_732991.num_elt = 2; -c_732991.elts = (object *)alloca(sizeof(object) * 2); -c_732991.elts[0] = ((closureN)self_73721)->elts[0]; -c_732991.elts[1] = ((closureN)self_73721)->elts[2]; - -return_closcall0(data,(closure)&c_732991);} -; -} - -static void __lambda_399(void *data, int argc, object self_73722) { - return_closcall1(data, ((closureN)self_73722)->elts[0], ((closureN)self_73722)->elts[1]);; -} - -static void __lambda_398(void *data, int argc, object self_73723) { - -closureN_type c_732965; -c_732965.hdr.mark = gc_color_red; - c_732965.hdr.grayed = 0; -c_732965.tag = closureN_tag; - c_732965.fn = (function_type)__lambda_397; -c_732965.num_args = 1; -c_732965.num_elt = 4; -c_732965.elts = (object *)alloca(sizeof(object) * 4); -c_732965.elts[0] = ((closureN)self_73723)->elts[0]; -c_732965.elts[1] = ((closureN)self_73723)->elts[1]; -c_732965.elts[2] = ((closureN)self_73723)->elts[2]; -c_732965.elts[3] = ((closureN)self_73723)->elts[3]; - -return_closcall1(data,(closure)&c_732965, car(((closureN)self_73723)->elts[2]));; -} - -static void __lambda_397(void *data, int argc, object self_73724, object r_73536) { - -closureN_type c_732970; -c_732970.hdr.mark = gc_color_red; - c_732970.hdr.grayed = 0; -c_732970.tag = closureN_tag; - c_732970.fn = (function_type)__lambda_396; -c_732970.num_args = 1; -c_732970.num_elt = 3; -c_732970.elts = (object *)alloca(sizeof(object) * 3); -c_732970.elts[0] = ((closureN)self_73724)->elts[0]; -c_732970.elts[1] = ((closureN)self_73724)->elts[2]; -c_732970.elts[2] = ((closureN)self_73724)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73724)->elts[1]), &c_732970, r_73536);; -} - -static void __lambda_396(void *data, int argc, object self_73725, object r_73533) { - -closureN_type c_732972; -c_732972.hdr.mark = gc_color_red; - c_732972.hdr.grayed = 0; -c_732972.tag = closureN_tag; - c_732972.fn = (function_type)__lambda_395; -c_732972.num_args = 1; -c_732972.num_elt = 3; -c_732972.elts = (object *)alloca(sizeof(object) * 3); -c_732972.elts[0] = ((closureN)self_73725)->elts[0]; -c_732972.elts[1] = r_73533; -c_732972.elts[2] = ((closureN)self_73725)->elts[2]; - -return_closcall1(data,(closure)&c_732972, cdr(((closureN)self_73725)->elts[1]));; -} - -static void __lambda_395(void *data, int argc, object self_73726, object r_73535) { - -closureN_type c_732977; -c_732977.hdr.mark = gc_color_red; - c_732977.hdr.grayed = 0; -c_732977.tag = closureN_tag; - c_732977.fn = (function_type)__lambda_394; -c_732977.num_args = 1; -c_732977.num_elt = 2; -c_732977.elts = (object *)alloca(sizeof(object) * 2); -c_732977.elts[0] = ((closureN)self_73726)->elts[0]; -c_732977.elts[1] = ((closureN)self_73726)->elts[1]; - -return_closcall2(data, cell_get(((closureN)self_73726)->elts[2]), &c_732977, r_73535);; -} - -static void __lambda_394(void *data, int argc, object self_73727, object r_73534) { - -make_cons(c_732982,((closureN)self_73727)->elts[1], r_73534); -return_closcall1(data, ((closureN)self_73727)->elts[0], &c_732982);; -} - -static void __lambda_393(void *data, int argc, object self_73728, object r_73530) { - -closureN_type c_731499; -c_731499.hdr.mark = gc_color_red; - c_731499.hdr.grayed = 0; -c_731499.tag = closureN_tag; - c_731499.fn = (function_type)__lambda_392; -c_731499.num_args = 1; -c_731499.num_elt = 37; -c_731499.elts = (object *)alloca(sizeof(object) * 37); -c_731499.elts[0] = ((closureN)self_73728)->elts[0]; -c_731499.elts[1] = ((closureN)self_73728)->elts[1]; -c_731499.elts[2] = ((closureN)self_73728)->elts[2]; -c_731499.elts[3] = ((closureN)self_73728)->elts[3]; -c_731499.elts[4] = ((closureN)self_73728)->elts[4]; -c_731499.elts[5] = ((closureN)self_73728)->elts[5]; -c_731499.elts[6] = ((closureN)self_73728)->elts[6]; -c_731499.elts[7] = ((closureN)self_73728)->elts[7]; -c_731499.elts[8] = ((closureN)self_73728)->elts[8]; -c_731499.elts[9] = ((closureN)self_73728)->elts[9]; -c_731499.elts[10] = ((closureN)self_73728)->elts[10]; -c_731499.elts[11] = ((closureN)self_73728)->elts[11]; -c_731499.elts[12] = ((closureN)self_73728)->elts[12]; -c_731499.elts[13] = ((closureN)self_73728)->elts[13]; -c_731499.elts[14] = ((closureN)self_73728)->elts[14]; -c_731499.elts[15] = ((closureN)self_73728)->elts[15]; -c_731499.elts[16] = ((closureN)self_73728)->elts[16]; -c_731499.elts[17] = ((closureN)self_73728)->elts[17]; -c_731499.elts[18] = ((closureN)self_73728)->elts[18]; -c_731499.elts[19] = ((closureN)self_73728)->elts[19]; -c_731499.elts[20] = ((closureN)self_73728)->elts[20]; -c_731499.elts[21] = ((closureN)self_73728)->elts[21]; -c_731499.elts[22] = ((closureN)self_73728)->elts[22]; -c_731499.elts[23] = ((closureN)self_73728)->elts[23]; -c_731499.elts[24] = ((closureN)self_73728)->elts[24]; -c_731499.elts[25] = ((closureN)self_73728)->elts[25]; -c_731499.elts[26] = ((closureN)self_73728)->elts[26]; -c_731499.elts[27] = ((closureN)self_73728)->elts[27]; -c_731499.elts[28] = ((closureN)self_73728)->elts[28]; -c_731499.elts[29] = ((closureN)self_73728)->elts[29]; -c_731499.elts[30] = ((closureN)self_73728)->elts[30]; -c_731499.elts[31] = ((closureN)self_73728)->elts[31]; -c_731499.elts[32] = ((closureN)self_73728)->elts[32]; -c_731499.elts[33] = ((closureN)self_73728)->elts[33]; -c_731499.elts[34] = ((closureN)self_73728)->elts[34]; -c_731499.elts[35] = ((closureN)self_73728)->elts[35]; -c_731499.elts[36] = ((closureN)self_73728)->elts[36]; - -return_closcall1(data,(closure)&c_731499, Cyc_set_car(data, ((closureN)self_73728)->elts[32], r_73530));; -} - -static void __lambda_392(void *data, int argc, object self_73729, object r_73268) { - -closureN_type c_731501; -c_731501.hdr.mark = gc_color_red; - c_731501.hdr.grayed = 0; -c_731501.tag = closureN_tag; - c_731501.fn = (function_type)__lambda_383; -c_731501.num_args = 1; -c_731501.num_elt = 37; -c_731501.elts = (object *)alloca(sizeof(object) * 37); -c_731501.elts[0] = ((closureN)self_73729)->elts[0]; -c_731501.elts[1] = ((closureN)self_73729)->elts[1]; -c_731501.elts[2] = ((closureN)self_73729)->elts[2]; -c_731501.elts[3] = ((closureN)self_73729)->elts[3]; -c_731501.elts[4] = ((closureN)self_73729)->elts[4]; -c_731501.elts[5] = ((closureN)self_73729)->elts[5]; -c_731501.elts[6] = ((closureN)self_73729)->elts[6]; -c_731501.elts[7] = ((closureN)self_73729)->elts[7]; -c_731501.elts[8] = ((closureN)self_73729)->elts[8]; -c_731501.elts[9] = ((closureN)self_73729)->elts[9]; -c_731501.elts[10] = ((closureN)self_73729)->elts[10]; -c_731501.elts[11] = ((closureN)self_73729)->elts[11]; -c_731501.elts[12] = ((closureN)self_73729)->elts[12]; -c_731501.elts[13] = ((closureN)self_73729)->elts[13]; -c_731501.elts[14] = ((closureN)self_73729)->elts[14]; -c_731501.elts[15] = ((closureN)self_73729)->elts[15]; -c_731501.elts[16] = ((closureN)self_73729)->elts[16]; -c_731501.elts[17] = ((closureN)self_73729)->elts[17]; -c_731501.elts[18] = ((closureN)self_73729)->elts[18]; -c_731501.elts[19] = ((closureN)self_73729)->elts[19]; -c_731501.elts[20] = ((closureN)self_73729)->elts[20]; -c_731501.elts[21] = ((closureN)self_73729)->elts[21]; -c_731501.elts[22] = ((closureN)self_73729)->elts[22]; -c_731501.elts[23] = ((closureN)self_73729)->elts[23]; -c_731501.elts[24] = ((closureN)self_73729)->elts[24]; -c_731501.elts[25] = ((closureN)self_73729)->elts[25]; -c_731501.elts[26] = ((closureN)self_73729)->elts[26]; -c_731501.elts[27] = ((closureN)self_73729)->elts[27]; -c_731501.elts[28] = ((closureN)self_73729)->elts[28]; -c_731501.elts[29] = ((closureN)self_73729)->elts[29]; -c_731501.elts[30] = ((closureN)self_73729)->elts[30]; -c_731501.elts[31] = ((closureN)self_73729)->elts[31]; -c_731501.elts[32] = ((closureN)self_73729)->elts[32]; -c_731501.elts[33] = ((closureN)self_73729)->elts[33]; -c_731501.elts[34] = ((closureN)self_73729)->elts[34]; -c_731501.elts[35] = ((closureN)self_73729)->elts[35]; -c_731501.elts[36] = ((closureN)self_73729)->elts[36]; - - -closureN_type c_732919; -c_732919.hdr.mark = gc_color_red; - c_732919.hdr.grayed = 0; -c_732919.tag = closureN_tag; - c_732919.fn = (function_type)__lambda_391; -c_732919.num_args = 1; -c_732919.num_elt = 2; -c_732919.elts = (object *)alloca(sizeof(object) * 2); -c_732919.elts[0] = ((closureN)self_73729)->elts[31]; -c_732919.elts[1] = ((closureN)self_73729)->elts[32]; - -return_closcall1(data,(closure)&c_731501, &c_732919);; -} - -static void __lambda_391(void *data, int argc, object self_73730, object k_73524, object lst_73222) { - -closureN_type c_732921; -c_732921.hdr.mark = gc_color_red; - c_732921.hdr.grayed = 0; -c_732921.tag = closureN_tag; - c_732921.fn = (function_type)__lambda_390; -c_732921.num_args = 1; -c_732921.num_elt = 4; -c_732921.elts = (object *)alloca(sizeof(object) * 4); -c_732921.elts[0] = k_73524; -c_732921.elts[1] = lst_73222; -c_732921.elts[2] = ((closureN)self_73730)->elts[0]; -c_732921.elts[3] = ((closureN)self_73730)->elts[1]; - -return_closcall1(data,(closure)&c_732921, Cyc_is_null(lst_73222));; -} - -static void __lambda_390(void *data, int argc, object self_73731, object r_73525) { - if( !eq(boolean_f, r_73525) ){ - -closureN_type c_732923; -c_732923.hdr.mark = gc_color_red; - c_732923.hdr.grayed = 0; -c_732923.tag = closureN_tag; - c_732923.fn = (function_type)__lambda_384; -c_732923.num_args = 0; -c_732923.num_elt = 1; -c_732923.elts = (object *)alloca(sizeof(object) * 1); -c_732923.elts[0] = ((closureN)self_73731)->elts[0]; - -return_closcall0(data,(closure)&c_732923); -} else { - -closureN_type c_732927; -c_732927.hdr.mark = gc_color_red; - c_732927.hdr.grayed = 0; -c_732927.tag = closureN_tag; - c_732927.fn = (function_type)__lambda_389; -c_732927.num_args = 0; -c_732927.num_elt = 4; -c_732927.elts = (object *)alloca(sizeof(object) * 4); -c_732927.elts[0] = ((closureN)self_73731)->elts[0]; -c_732927.elts[1] = ((closureN)self_73731)->elts[1]; -c_732927.elts[2] = ((closureN)self_73731)->elts[2]; -c_732927.elts[3] = ((closureN)self_73731)->elts[3]; - -return_closcall0(data,(closure)&c_732927);} -; -} - -static void __lambda_389(void *data, int argc, object self_73732) { - -closureN_type c_732929; -c_732929.hdr.mark = gc_color_red; - c_732929.hdr.grayed = 0; -c_732929.tag = closureN_tag; - c_732929.fn = (function_type)__lambda_388; -c_732929.num_args = 1; -c_732929.num_elt = 4; -c_732929.elts = (object *)alloca(sizeof(object) * 4); -c_732929.elts[0] = ((closureN)self_73732)->elts[0]; -c_732929.elts[1] = ((closureN)self_73732)->elts[1]; -c_732929.elts[2] = ((closureN)self_73732)->elts[2]; -c_732929.elts[3] = ((closureN)self_73732)->elts[3]; - -return_closcall1(data,(closure)&c_732929, car(((closureN)self_73732)->elts[1]));; -} - -static void __lambda_388(void *data, int argc, object self_73733, object r_73529) { - -closureN_type c_732934; -c_732934.hdr.mark = gc_color_red; - c_732934.hdr.grayed = 0; -c_732934.tag = closureN_tag; - c_732934.fn = (function_type)__lambda_387; -c_732934.num_args = 1; -c_732934.num_elt = 3; -c_732934.elts = (object *)alloca(sizeof(object) * 3); -c_732934.elts[0] = ((closureN)self_73733)->elts[0]; -c_732934.elts[1] = ((closureN)self_73733)->elts[1]; -c_732934.elts[2] = ((closureN)self_73733)->elts[2]; - -return_closcall2(data, cell_get(((closureN)self_73733)->elts[3]), &c_732934, r_73529);; -} - -static void __lambda_387(void *data, int argc, object self_73734, object r_73526) { - -closureN_type c_732936; -c_732936.hdr.mark = gc_color_red; - c_732936.hdr.grayed = 0; -c_732936.tag = closureN_tag; - c_732936.fn = (function_type)__lambda_386; -c_732936.num_args = 1; -c_732936.num_elt = 3; -c_732936.elts = (object *)alloca(sizeof(object) * 3); -c_732936.elts[0] = ((closureN)self_73734)->elts[0]; -c_732936.elts[1] = r_73526; -c_732936.elts[2] = ((closureN)self_73734)->elts[2]; - -return_closcall1(data,(closure)&c_732936, cdr(((closureN)self_73734)->elts[1]));; -} - -static void __lambda_386(void *data, int argc, object self_73735, object r_73528) { - -closureN_type c_732941; -c_732941.hdr.mark = gc_color_red; - c_732941.hdr.grayed = 0; -c_732941.tag = closureN_tag; - c_732941.fn = (function_type)__lambda_385; -c_732941.num_args = 1; -c_732941.num_elt = 2; -c_732941.elts = (object *)alloca(sizeof(object) * 2); -c_732941.elts[0] = ((closureN)self_73735)->elts[0]; -c_732941.elts[1] = ((closureN)self_73735)->elts[1]; - -return_closcall2(data, cell_get(((closureN)self_73735)->elts[2]), &c_732941, r_73528);; -} - -static void __lambda_385(void *data, int argc, object self_73736, object r_73527) { - -make_cons(c_732946,((closureN)self_73736)->elts[1], r_73527); -return_closcall1(data, ((closureN)self_73736)->elts[0], &c_732946);; -} - -static void __lambda_384(void *data, int argc, object self_73737) { - return_closcall1(data, ((closureN)self_73737)->elts[0], nil);; -} - -static void __lambda_383(void *data, int argc, object self_73738, object r_73523) { - -closureN_type c_731503; -c_731503.hdr.mark = gc_color_red; - c_731503.hdr.grayed = 0; -c_731503.tag = closureN_tag; - c_731503.fn = (function_type)__lambda_382; -c_731503.num_args = 1; -c_731503.num_elt = 36; -c_731503.elts = (object *)alloca(sizeof(object) * 36); -c_731503.elts[0] = ((closureN)self_73738)->elts[0]; -c_731503.elts[1] = ((closureN)self_73738)->elts[1]; -c_731503.elts[2] = ((closureN)self_73738)->elts[2]; -c_731503.elts[3] = ((closureN)self_73738)->elts[3]; -c_731503.elts[4] = ((closureN)self_73738)->elts[4]; -c_731503.elts[5] = ((closureN)self_73738)->elts[5]; -c_731503.elts[6] = ((closureN)self_73738)->elts[6]; -c_731503.elts[7] = ((closureN)self_73738)->elts[7]; -c_731503.elts[8] = ((closureN)self_73738)->elts[8]; -c_731503.elts[9] = ((closureN)self_73738)->elts[9]; -c_731503.elts[10] = ((closureN)self_73738)->elts[10]; -c_731503.elts[11] = ((closureN)self_73738)->elts[11]; -c_731503.elts[12] = ((closureN)self_73738)->elts[12]; -c_731503.elts[13] = ((closureN)self_73738)->elts[13]; -c_731503.elts[14] = ((closureN)self_73738)->elts[14]; -c_731503.elts[15] = ((closureN)self_73738)->elts[15]; -c_731503.elts[16] = ((closureN)self_73738)->elts[16]; -c_731503.elts[17] = ((closureN)self_73738)->elts[17]; -c_731503.elts[18] = ((closureN)self_73738)->elts[18]; -c_731503.elts[19] = ((closureN)self_73738)->elts[19]; -c_731503.elts[20] = ((closureN)self_73738)->elts[20]; -c_731503.elts[21] = ((closureN)self_73738)->elts[21]; -c_731503.elts[22] = ((closureN)self_73738)->elts[22]; -c_731503.elts[23] = ((closureN)self_73738)->elts[23]; -c_731503.elts[24] = ((closureN)self_73738)->elts[24]; -c_731503.elts[25] = ((closureN)self_73738)->elts[25]; -c_731503.elts[26] = ((closureN)self_73738)->elts[26]; -c_731503.elts[27] = ((closureN)self_73738)->elts[27]; -c_731503.elts[28] = ((closureN)self_73738)->elts[28]; -c_731503.elts[29] = ((closureN)self_73738)->elts[29]; -c_731503.elts[30] = ((closureN)self_73738)->elts[30]; -c_731503.elts[31] = ((closureN)self_73738)->elts[32]; -c_731503.elts[32] = ((closureN)self_73738)->elts[33]; -c_731503.elts[33] = ((closureN)self_73738)->elts[34]; -c_731503.elts[34] = ((closureN)self_73738)->elts[35]; -c_731503.elts[35] = ((closureN)self_73738)->elts[36]; - -return_closcall1(data,(closure)&c_731503, Cyc_set_car(data, ((closureN)self_73738)->elts[31], r_73523));; -} - -static void __lambda_382(void *data, int argc, object self_73739, object r_73269) { - -closureN_type c_731505; -c_731505.hdr.mark = gc_color_red; - c_731505.hdr.grayed = 0; -c_731505.tag = closureN_tag; - c_731505.fn = (function_type)__lambda_373; -c_731505.num_args = 1; -c_731505.num_elt = 36; -c_731505.elts = (object *)alloca(sizeof(object) * 36); -c_731505.elts[0] = ((closureN)self_73739)->elts[0]; -c_731505.elts[1] = ((closureN)self_73739)->elts[1]; -c_731505.elts[2] = ((closureN)self_73739)->elts[2]; -c_731505.elts[3] = ((closureN)self_73739)->elts[3]; -c_731505.elts[4] = ((closureN)self_73739)->elts[4]; -c_731505.elts[5] = ((closureN)self_73739)->elts[5]; -c_731505.elts[6] = ((closureN)self_73739)->elts[6]; -c_731505.elts[7] = ((closureN)self_73739)->elts[7]; -c_731505.elts[8] = ((closureN)self_73739)->elts[8]; -c_731505.elts[9] = ((closureN)self_73739)->elts[9]; -c_731505.elts[10] = ((closureN)self_73739)->elts[10]; -c_731505.elts[11] = ((closureN)self_73739)->elts[11]; -c_731505.elts[12] = ((closureN)self_73739)->elts[12]; -c_731505.elts[13] = ((closureN)self_73739)->elts[13]; -c_731505.elts[14] = ((closureN)self_73739)->elts[14]; -c_731505.elts[15] = ((closureN)self_73739)->elts[15]; -c_731505.elts[16] = ((closureN)self_73739)->elts[16]; -c_731505.elts[17] = ((closureN)self_73739)->elts[17]; -c_731505.elts[18] = ((closureN)self_73739)->elts[18]; -c_731505.elts[19] = ((closureN)self_73739)->elts[19]; -c_731505.elts[20] = ((closureN)self_73739)->elts[20]; -c_731505.elts[21] = ((closureN)self_73739)->elts[21]; -c_731505.elts[22] = ((closureN)self_73739)->elts[22]; -c_731505.elts[23] = ((closureN)self_73739)->elts[23]; -c_731505.elts[24] = ((closureN)self_73739)->elts[24]; -c_731505.elts[25] = ((closureN)self_73739)->elts[25]; -c_731505.elts[26] = ((closureN)self_73739)->elts[26]; -c_731505.elts[27] = ((closureN)self_73739)->elts[27]; -c_731505.elts[28] = ((closureN)self_73739)->elts[28]; -c_731505.elts[29] = ((closureN)self_73739)->elts[29]; -c_731505.elts[30] = ((closureN)self_73739)->elts[30]; -c_731505.elts[31] = ((closureN)self_73739)->elts[31]; -c_731505.elts[32] = ((closureN)self_73739)->elts[32]; -c_731505.elts[33] = ((closureN)self_73739)->elts[33]; -c_731505.elts[34] = ((closureN)self_73739)->elts[34]; -c_731505.elts[35] = ((closureN)self_73739)->elts[35]; - - -closureN_type c_732878; -c_732878.hdr.mark = gc_color_red; - c_732878.hdr.grayed = 0; -c_732878.tag = closureN_tag; - c_732878.fn = (function_type)__lambda_381; -c_732878.num_args = 1; -c_732878.num_elt = 2; -c_732878.elts = (object *)alloca(sizeof(object) * 2); -c_732878.elts[0] = ((closureN)self_73739)->elts[7]; -c_732878.elts[1] = ((closureN)self_73739)->elts[35]; - -return_closcall1(data,(closure)&c_731505, &c_732878);; -} - -static void __lambda_381(void *data, int argc, object self_73740, object k_73517, object term_73221) { - -closureN_type c_732880; -c_732880.hdr.mark = gc_color_red; - c_732880.hdr.grayed = 0; -c_732880.tag = closureN_tag; - c_732880.fn = (function_type)__lambda_380; -c_732880.num_args = 1; -c_732880.num_elt = 4; -c_732880.elts = (object *)alloca(sizeof(object) * 4); -c_732880.elts[0] = ((closureN)self_73740)->elts[0]; -c_732880.elts[1] = k_73517; -c_732880.elts[2] = term_73221; -c_732880.elts[3] = ((closureN)self_73740)->elts[1]; - -return_closcall1(data,(closure)&c_732880, Cyc_is_cons(term_73221));; -} - -static void __lambda_380(void *data, int argc, object self_73741, object r_73518) { - if( !eq(boolean_f, r_73518) ){ - -closureN_type c_732882; -c_732882.hdr.mark = gc_color_red; - c_732882.hdr.grayed = 0; -c_732882.tag = closureN_tag; - c_732882.fn = (function_type)__lambda_378; -c_732882.num_args = 0; -c_732882.num_elt = 4; -c_732882.elts = (object *)alloca(sizeof(object) * 4); -c_732882.elts[0] = ((closureN)self_73741)->elts[0]; -c_732882.elts[1] = ((closureN)self_73741)->elts[1]; -c_732882.elts[2] = ((closureN)self_73741)->elts[2]; -c_732882.elts[3] = ((closureN)self_73741)->elts[3]; - -return_closcall0(data,(closure)&c_732882); -} else { - -closureN_type c_732910; -c_732910.hdr.mark = gc_color_red; - c_732910.hdr.grayed = 0; -c_732910.tag = closureN_tag; - c_732910.fn = (function_type)__lambda_379; -c_732910.num_args = 0; -c_732910.num_elt = 2; -c_732910.elts = (object *)alloca(sizeof(object) * 2); -c_732910.elts[0] = ((closureN)self_73741)->elts[1]; -c_732910.elts[1] = ((closureN)self_73741)->elts[2]; - -return_closcall0(data,(closure)&c_732910);} -; -} - -static void __lambda_379(void *data, int argc, object self_73742) { - return_closcall1(data, ((closureN)self_73742)->elts[0], ((closureN)self_73742)->elts[1]);; -} - -static void __lambda_378(void *data, int argc, object self_73743) { - -closureN_type c_732884; -c_732884.hdr.mark = gc_color_red; - c_732884.hdr.grayed = 0; -c_732884.tag = closureN_tag; - c_732884.fn = (function_type)__lambda_377; -c_732884.num_args = 1; -c_732884.num_elt = 4; -c_732884.elts = (object *)alloca(sizeof(object) * 4); -c_732884.elts[0] = ((closureN)self_73743)->elts[0]; -c_732884.elts[1] = ((closureN)self_73743)->elts[1]; -c_732884.elts[2] = ((closureN)self_73743)->elts[2]; -c_732884.elts[3] = ((closureN)self_73743)->elts[3]; - -return_closcall1(data,(closure)&c_732884, car(((closureN)self_73743)->elts[2]));; -} - -static void __lambda_377(void *data, int argc, object self_73744, object r_73522) { - -closureN_type c_732889; -c_732889.hdr.mark = gc_color_red; - c_732889.hdr.grayed = 0; -c_732889.tag = closureN_tag; - c_732889.fn = (function_type)__lambda_376; -c_732889.num_args = 1; -c_732889.num_elt = 3; -c_732889.elts = (object *)alloca(sizeof(object) * 3); -c_732889.elts[0] = ((closureN)self_73744)->elts[1]; -c_732889.elts[1] = ((closureN)self_73744)->elts[2]; -c_732889.elts[2] = ((closureN)self_73744)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73744)->elts[0]), &c_732889, r_73522);; -} - -static void __lambda_376(void *data, int argc, object self_73745, object r_73519) { - -closureN_type c_732891; -c_732891.hdr.mark = gc_color_red; - c_732891.hdr.grayed = 0; -c_732891.tag = closureN_tag; - c_732891.fn = (function_type)__lambda_375; -c_732891.num_args = 1; -c_732891.num_elt = 3; -c_732891.elts = (object *)alloca(sizeof(object) * 3); -c_732891.elts[0] = ((closureN)self_73745)->elts[0]; -c_732891.elts[1] = r_73519; -c_732891.elts[2] = ((closureN)self_73745)->elts[2]; - -return_closcall1(data,(closure)&c_732891, cdr(((closureN)self_73745)->elts[1]));; -} - -static void __lambda_375(void *data, int argc, object self_73746, object r_73521) { - -closureN_type c_732893; -c_732893.hdr.mark = gc_color_red; - c_732893.hdr.grayed = 0; -c_732893.tag = closureN_tag; - c_732893.fn = (function_type)__lambda_374; -c_732893.num_args = 1; -c_732893.num_elt = 2; -c_732893.elts = (object *)alloca(sizeof(object) * 2); -c_732893.elts[0] = ((closureN)self_73746)->elts[0]; -c_732893.elts[1] = ((closureN)self_73746)->elts[1]; - -return_closcall3(data, __glo_map_scheme_base, &c_732893, cell_get(((closureN)self_73746)->elts[2]), r_73521);; -} - -static void __lambda_374(void *data, int argc, object self_73747, object r_73520) { - -make_cons(c_732898,((closureN)self_73747)->elts[1], r_73520); -return_closcall1(data, ((closureN)self_73747)->elts[0], &c_732898);; -} - -static void __lambda_373(void *data, int argc, object self_73748, object r_73516) { - -closureN_type c_731507; -c_731507.hdr.mark = gc_color_red; - c_731507.hdr.grayed = 0; -c_731507.tag = closureN_tag; - c_731507.fn = (function_type)__lambda_372; -c_731507.num_args = 1; -c_731507.num_elt = 35; -c_731507.elts = (object *)alloca(sizeof(object) * 35); -c_731507.elts[0] = ((closureN)self_73748)->elts[0]; -c_731507.elts[1] = ((closureN)self_73748)->elts[1]; -c_731507.elts[2] = ((closureN)self_73748)->elts[2]; -c_731507.elts[3] = ((closureN)self_73748)->elts[3]; -c_731507.elts[4] = ((closureN)self_73748)->elts[4]; -c_731507.elts[5] = ((closureN)self_73748)->elts[5]; -c_731507.elts[6] = ((closureN)self_73748)->elts[6]; -c_731507.elts[7] = ((closureN)self_73748)->elts[7]; -c_731507.elts[8] = ((closureN)self_73748)->elts[8]; -c_731507.elts[9] = ((closureN)self_73748)->elts[9]; -c_731507.elts[10] = ((closureN)self_73748)->elts[10]; -c_731507.elts[11] = ((closureN)self_73748)->elts[11]; -c_731507.elts[12] = ((closureN)self_73748)->elts[12]; -c_731507.elts[13] = ((closureN)self_73748)->elts[13]; -c_731507.elts[14] = ((closureN)self_73748)->elts[14]; -c_731507.elts[15] = ((closureN)self_73748)->elts[15]; -c_731507.elts[16] = ((closureN)self_73748)->elts[16]; -c_731507.elts[17] = ((closureN)self_73748)->elts[17]; -c_731507.elts[18] = ((closureN)self_73748)->elts[18]; -c_731507.elts[19] = ((closureN)self_73748)->elts[19]; -c_731507.elts[20] = ((closureN)self_73748)->elts[20]; -c_731507.elts[21] = ((closureN)self_73748)->elts[21]; -c_731507.elts[22] = ((closureN)self_73748)->elts[22]; -c_731507.elts[23] = ((closureN)self_73748)->elts[23]; -c_731507.elts[24] = ((closureN)self_73748)->elts[24]; -c_731507.elts[25] = ((closureN)self_73748)->elts[25]; -c_731507.elts[26] = ((closureN)self_73748)->elts[26]; -c_731507.elts[27] = ((closureN)self_73748)->elts[27]; -c_731507.elts[28] = ((closureN)self_73748)->elts[28]; -c_731507.elts[29] = ((closureN)self_73748)->elts[29]; -c_731507.elts[30] = ((closureN)self_73748)->elts[30]; -c_731507.elts[31] = ((closureN)self_73748)->elts[31]; -c_731507.elts[32] = ((closureN)self_73748)->elts[32]; -c_731507.elts[33] = ((closureN)self_73748)->elts[33]; -c_731507.elts[34] = ((closureN)self_73748)->elts[34]; - -return_closcall1(data,(closure)&c_731507, Cyc_set_car(data, ((closureN)self_73748)->elts[35], r_73516));; -} - -static void __lambda_372(void *data, int argc, object self_73749, object r_73270) { - -closureN_type c_731509; -c_731509.hdr.mark = gc_color_red; - c_731509.hdr.grayed = 0; -c_731509.tag = closureN_tag; - c_731509.fn = (function_type)__lambda_369; -c_731509.num_args = 1; -c_731509.num_elt = 35; -c_731509.elts = (object *)alloca(sizeof(object) * 35); -c_731509.elts[0] = ((closureN)self_73749)->elts[0]; -c_731509.elts[1] = ((closureN)self_73749)->elts[1]; -c_731509.elts[2] = ((closureN)self_73749)->elts[2]; -c_731509.elts[3] = ((closureN)self_73749)->elts[3]; -c_731509.elts[4] = ((closureN)self_73749)->elts[4]; -c_731509.elts[5] = ((closureN)self_73749)->elts[5]; -c_731509.elts[6] = ((closureN)self_73749)->elts[6]; -c_731509.elts[7] = ((closureN)self_73749)->elts[7]; -c_731509.elts[8] = ((closureN)self_73749)->elts[8]; -c_731509.elts[9] = ((closureN)self_73749)->elts[9]; -c_731509.elts[10] = ((closureN)self_73749)->elts[10]; -c_731509.elts[11] = ((closureN)self_73749)->elts[11]; -c_731509.elts[12] = ((closureN)self_73749)->elts[12]; -c_731509.elts[13] = ((closureN)self_73749)->elts[13]; -c_731509.elts[14] = ((closureN)self_73749)->elts[14]; -c_731509.elts[15] = ((closureN)self_73749)->elts[15]; -c_731509.elts[16] = ((closureN)self_73749)->elts[16]; -c_731509.elts[17] = ((closureN)self_73749)->elts[17]; -c_731509.elts[18] = ((closureN)self_73749)->elts[18]; -c_731509.elts[19] = ((closureN)self_73749)->elts[19]; -c_731509.elts[20] = ((closureN)self_73749)->elts[20]; -c_731509.elts[21] = ((closureN)self_73749)->elts[21]; -c_731509.elts[22] = ((closureN)self_73749)->elts[22]; -c_731509.elts[23] = ((closureN)self_73749)->elts[23]; -c_731509.elts[24] = ((closureN)self_73749)->elts[24]; -c_731509.elts[25] = ((closureN)self_73749)->elts[25]; -c_731509.elts[26] = ((closureN)self_73749)->elts[26]; -c_731509.elts[27] = ((closureN)self_73749)->elts[27]; -c_731509.elts[28] = ((closureN)self_73749)->elts[28]; -c_731509.elts[29] = ((closureN)self_73749)->elts[29]; -c_731509.elts[30] = ((closureN)self_73749)->elts[30]; -c_731509.elts[31] = ((closureN)self_73749)->elts[31]; -c_731509.elts[32] = ((closureN)self_73749)->elts[32]; -c_731509.elts[33] = ((closureN)self_73749)->elts[33]; -c_731509.elts[34] = ((closureN)self_73749)->elts[34]; - - -closureN_type c_732863; -c_732863.hdr.mark = gc_color_red; - c_732863.hdr.grayed = 0; -c_732863.tag = closureN_tag; - c_732863.fn = (function_type)__lambda_371; -c_732863.num_args = 3; -c_732863.num_elt = 2; -c_732863.elts = (object *)alloca(sizeof(object) * 2); -c_732863.elts[0] = ((closureN)self_73749)->elts[14]; -c_732863.elts[1] = ((closureN)self_73749)->elts[20]; - -return_closcall1(data,(closure)&c_731509, &c_732863);; -} - -static void __lambda_371(void *data, int argc, object self_73750, object k_73514, object sym_73220, object property_73219, object value_73218) { - -closureN_type c_732868; -c_732868.hdr.mark = gc_color_red; - c_732868.hdr.grayed = 0; -c_732868.tag = closureN_tag; - c_732868.fn = (function_type)__lambda_370; -c_732868.num_args = 1; -c_732868.num_elt = 3; -c_732868.elts = (object *)alloca(sizeof(object) * 3); -c_732868.elts[0] = k_73514; -c_732868.elts[1] = ((closureN)self_73750)->elts[0]; -c_732868.elts[2] = value_73218; - -return_closcall2(data, cell_get(((closureN)self_73750)->elts[1]), &c_732868, sym_73220);; -} - -static void __lambda_370(void *data, int argc, object self_73751, object r_73515) { - return_closcall3(data, cell_get(((closureN)self_73751)->elts[1]), ((closureN)self_73751)->elts[0], r_73515, ((closureN)self_73751)->elts[2]);; -} - -static void __lambda_369(void *data, int argc, object self_73752, object r_73513) { - -closureN_type c_731511; -c_731511.hdr.mark = gc_color_red; - c_731511.hdr.grayed = 0; -c_731511.tag = closureN_tag; - c_731511.fn = (function_type)__lambda_368; -c_731511.num_args = 1; -c_731511.num_elt = 34; -c_731511.elts = (object *)alloca(sizeof(object) * 34); -c_731511.elts[0] = ((closureN)self_73752)->elts[0]; -c_731511.elts[1] = ((closureN)self_73752)->elts[1]; -c_731511.elts[2] = ((closureN)self_73752)->elts[2]; -c_731511.elts[3] = ((closureN)self_73752)->elts[3]; -c_731511.elts[4] = ((closureN)self_73752)->elts[4]; -c_731511.elts[5] = ((closureN)self_73752)->elts[5]; -c_731511.elts[6] = ((closureN)self_73752)->elts[6]; -c_731511.elts[7] = ((closureN)self_73752)->elts[7]; -c_731511.elts[8] = ((closureN)self_73752)->elts[8]; -c_731511.elts[9] = ((closureN)self_73752)->elts[9]; -c_731511.elts[10] = ((closureN)self_73752)->elts[10]; -c_731511.elts[11] = ((closureN)self_73752)->elts[11]; -c_731511.elts[12] = ((closureN)self_73752)->elts[12]; -c_731511.elts[13] = ((closureN)self_73752)->elts[14]; -c_731511.elts[14] = ((closureN)self_73752)->elts[15]; -c_731511.elts[15] = ((closureN)self_73752)->elts[16]; -c_731511.elts[16] = ((closureN)self_73752)->elts[17]; -c_731511.elts[17] = ((closureN)self_73752)->elts[18]; -c_731511.elts[18] = ((closureN)self_73752)->elts[19]; -c_731511.elts[19] = ((closureN)self_73752)->elts[20]; -c_731511.elts[20] = ((closureN)self_73752)->elts[21]; -c_731511.elts[21] = ((closureN)self_73752)->elts[22]; -c_731511.elts[22] = ((closureN)self_73752)->elts[23]; -c_731511.elts[23] = ((closureN)self_73752)->elts[24]; -c_731511.elts[24] = ((closureN)self_73752)->elts[25]; -c_731511.elts[25] = ((closureN)self_73752)->elts[26]; -c_731511.elts[26] = ((closureN)self_73752)->elts[27]; -c_731511.elts[27] = ((closureN)self_73752)->elts[28]; -c_731511.elts[28] = ((closureN)self_73752)->elts[29]; -c_731511.elts[29] = ((closureN)self_73752)->elts[30]; -c_731511.elts[30] = ((closureN)self_73752)->elts[31]; -c_731511.elts[31] = ((closureN)self_73752)->elts[32]; -c_731511.elts[32] = ((closureN)self_73752)->elts[33]; -c_731511.elts[33] = ((closureN)self_73752)->elts[34]; - -return_closcall1(data,(closure)&c_731511, Cyc_set_car(data, ((closureN)self_73752)->elts[13], r_73513));; -} - -static void __lambda_368(void *data, int argc, object self_73753, object r_73271) { - -closureN_type c_731513; -c_731513.hdr.mark = gc_color_red; - c_731513.hdr.grayed = 0; -c_731513.tag = closureN_tag; - c_731513.fn = (function_type)__lambda_365; -c_731513.num_args = 1; -c_731513.num_elt = 34; -c_731513.elts = (object *)alloca(sizeof(object) * 34); -c_731513.elts[0] = ((closureN)self_73753)->elts[0]; -c_731513.elts[1] = ((closureN)self_73753)->elts[1]; -c_731513.elts[2] = ((closureN)self_73753)->elts[2]; -c_731513.elts[3] = ((closureN)self_73753)->elts[3]; -c_731513.elts[4] = ((closureN)self_73753)->elts[4]; -c_731513.elts[5] = ((closureN)self_73753)->elts[5]; -c_731513.elts[6] = ((closureN)self_73753)->elts[6]; -c_731513.elts[7] = ((closureN)self_73753)->elts[7]; -c_731513.elts[8] = ((closureN)self_73753)->elts[8]; -c_731513.elts[9] = ((closureN)self_73753)->elts[9]; -c_731513.elts[10] = ((closureN)self_73753)->elts[10]; -c_731513.elts[11] = ((closureN)self_73753)->elts[11]; -c_731513.elts[12] = ((closureN)self_73753)->elts[12]; -c_731513.elts[13] = ((closureN)self_73753)->elts[13]; -c_731513.elts[14] = ((closureN)self_73753)->elts[14]; -c_731513.elts[15] = ((closureN)self_73753)->elts[15]; -c_731513.elts[16] = ((closureN)self_73753)->elts[16]; -c_731513.elts[17] = ((closureN)self_73753)->elts[17]; -c_731513.elts[18] = ((closureN)self_73753)->elts[18]; -c_731513.elts[19] = ((closureN)self_73753)->elts[19]; -c_731513.elts[20] = ((closureN)self_73753)->elts[20]; -c_731513.elts[21] = ((closureN)self_73753)->elts[21]; -c_731513.elts[22] = ((closureN)self_73753)->elts[22]; -c_731513.elts[23] = ((closureN)self_73753)->elts[23]; -c_731513.elts[24] = ((closureN)self_73753)->elts[24]; -c_731513.elts[25] = ((closureN)self_73753)->elts[25]; -c_731513.elts[26] = ((closureN)self_73753)->elts[26]; -c_731513.elts[27] = ((closureN)self_73753)->elts[27]; -c_731513.elts[28] = ((closureN)self_73753)->elts[28]; -c_731513.elts[29] = ((closureN)self_73753)->elts[29]; -c_731513.elts[30] = ((closureN)self_73753)->elts[30]; -c_731513.elts[31] = ((closureN)self_73753)->elts[31]; -c_731513.elts[32] = ((closureN)self_73753)->elts[32]; -c_731513.elts[33] = ((closureN)self_73753)->elts[33]; - - -closureN_type c_732849; -c_732849.hdr.mark = gc_color_red; - c_732849.hdr.grayed = 0; -c_732849.tag = closureN_tag; - c_732849.fn = (function_type)__lambda_367; -c_732849.num_args = 2; -c_732849.num_elt = 2; -c_732849.elts = (object *)alloca(sizeof(object) * 2); -c_732849.elts[0] = ((closureN)self_73753)->elts[6]; -c_732849.elts[1] = ((closureN)self_73753)->elts[19]; - -return_closcall1(data,(closure)&c_731513, &c_732849);; -} - -static void __lambda_367(void *data, int argc, object self_73754, object k_73511, object sym_73217, object property_73216) { - -closureN_type c_732854; -c_732854.hdr.mark = gc_color_red; - c_732854.hdr.grayed = 0; -c_732854.tag = closureN_tag; - c_732854.fn = (function_type)__lambda_366; -c_732854.num_args = 1; -c_732854.num_elt = 2; -c_732854.elts = (object *)alloca(sizeof(object) * 2); -c_732854.elts[0] = ((closureN)self_73754)->elts[0]; -c_732854.elts[1] = k_73511; - -return_closcall2(data, cell_get(((closureN)self_73754)->elts[1]), &c_732854, sym_73217);; -} - -static void __lambda_366(void *data, int argc, object self_73755, object r_73512) { - return_closcall2(data, cell_get(((closureN)self_73755)->elts[0]), ((closureN)self_73755)->elts[1], r_73512);; -} - -static void __lambda_365(void *data, int argc, object self_73756, object r_73510) { - -closureN_type c_731515; -c_731515.hdr.mark = gc_color_red; - c_731515.hdr.grayed = 0; -c_731515.tag = closureN_tag; - c_731515.fn = (function_type)__lambda_364; -c_731515.num_args = 1; -c_731515.num_elt = 33; -c_731515.elts = (object *)alloca(sizeof(object) * 33); -c_731515.elts[0] = ((closureN)self_73756)->elts[0]; -c_731515.elts[1] = ((closureN)self_73756)->elts[1]; -c_731515.elts[2] = ((closureN)self_73756)->elts[2]; -c_731515.elts[3] = ((closureN)self_73756)->elts[3]; -c_731515.elts[4] = ((closureN)self_73756)->elts[4]; -c_731515.elts[5] = ((closureN)self_73756)->elts[6]; -c_731515.elts[6] = ((closureN)self_73756)->elts[7]; -c_731515.elts[7] = ((closureN)self_73756)->elts[8]; -c_731515.elts[8] = ((closureN)self_73756)->elts[9]; -c_731515.elts[9] = ((closureN)self_73756)->elts[10]; -c_731515.elts[10] = ((closureN)self_73756)->elts[11]; -c_731515.elts[11] = ((closureN)self_73756)->elts[12]; -c_731515.elts[12] = ((closureN)self_73756)->elts[13]; -c_731515.elts[13] = ((closureN)self_73756)->elts[14]; -c_731515.elts[14] = ((closureN)self_73756)->elts[15]; -c_731515.elts[15] = ((closureN)self_73756)->elts[16]; -c_731515.elts[16] = ((closureN)self_73756)->elts[17]; -c_731515.elts[17] = ((closureN)self_73756)->elts[18]; -c_731515.elts[18] = ((closureN)self_73756)->elts[19]; -c_731515.elts[19] = ((closureN)self_73756)->elts[20]; -c_731515.elts[20] = ((closureN)self_73756)->elts[21]; -c_731515.elts[21] = ((closureN)self_73756)->elts[22]; -c_731515.elts[22] = ((closureN)self_73756)->elts[23]; -c_731515.elts[23] = ((closureN)self_73756)->elts[24]; -c_731515.elts[24] = ((closureN)self_73756)->elts[25]; -c_731515.elts[25] = ((closureN)self_73756)->elts[26]; -c_731515.elts[26] = ((closureN)self_73756)->elts[27]; -c_731515.elts[27] = ((closureN)self_73756)->elts[28]; -c_731515.elts[28] = ((closureN)self_73756)->elts[29]; -c_731515.elts[29] = ((closureN)self_73756)->elts[30]; -c_731515.elts[30] = ((closureN)self_73756)->elts[31]; -c_731515.elts[31] = ((closureN)self_73756)->elts[32]; -c_731515.elts[32] = ((closureN)self_73756)->elts[33]; - -return_closcall1(data,(closure)&c_731515, Cyc_set_car(data, ((closureN)self_73756)->elts[5], r_73510));; -} - -static void __lambda_364(void *data, int argc, object self_73757, object r_73272) { - -closureN_type c_731517; -c_731517.hdr.mark = gc_color_red; - c_731517.hdr.grayed = 0; -c_731517.tag = closureN_tag; - c_731517.fn = (function_type)__lambda_357; -c_731517.num_args = 1; -c_731517.num_elt = 33; -c_731517.elts = (object *)alloca(sizeof(object) * 33); -c_731517.elts[0] = ((closureN)self_73757)->elts[0]; -c_731517.elts[1] = ((closureN)self_73757)->elts[1]; -c_731517.elts[2] = ((closureN)self_73757)->elts[2]; -c_731517.elts[3] = ((closureN)self_73757)->elts[3]; -c_731517.elts[4] = ((closureN)self_73757)->elts[4]; -c_731517.elts[5] = ((closureN)self_73757)->elts[5]; -c_731517.elts[6] = ((closureN)self_73757)->elts[6]; -c_731517.elts[7] = ((closureN)self_73757)->elts[7]; -c_731517.elts[8] = ((closureN)self_73757)->elts[8]; -c_731517.elts[9] = ((closureN)self_73757)->elts[9]; -c_731517.elts[10] = ((closureN)self_73757)->elts[10]; -c_731517.elts[11] = ((closureN)self_73757)->elts[11]; -c_731517.elts[12] = ((closureN)self_73757)->elts[12]; -c_731517.elts[13] = ((closureN)self_73757)->elts[13]; -c_731517.elts[14] = ((closureN)self_73757)->elts[14]; -c_731517.elts[15] = ((closureN)self_73757)->elts[15]; -c_731517.elts[16] = ((closureN)self_73757)->elts[16]; -c_731517.elts[17] = ((closureN)self_73757)->elts[17]; -c_731517.elts[18] = ((closureN)self_73757)->elts[18]; -c_731517.elts[19] = ((closureN)self_73757)->elts[19]; -c_731517.elts[20] = ((closureN)self_73757)->elts[20]; -c_731517.elts[21] = ((closureN)self_73757)->elts[21]; -c_731517.elts[22] = ((closureN)self_73757)->elts[22]; -c_731517.elts[23] = ((closureN)self_73757)->elts[23]; -c_731517.elts[24] = ((closureN)self_73757)->elts[24]; -c_731517.elts[25] = ((closureN)self_73757)->elts[25]; -c_731517.elts[26] = ((closureN)self_73757)->elts[26]; -c_731517.elts[27] = ((closureN)self_73757)->elts[27]; -c_731517.elts[28] = ((closureN)self_73757)->elts[28]; -c_731517.elts[29] = ((closureN)self_73757)->elts[29]; -c_731517.elts[30] = ((closureN)self_73757)->elts[30]; -c_731517.elts[31] = ((closureN)self_73757)->elts[31]; -c_731517.elts[32] = ((closureN)self_73757)->elts[32]; - - -closureN_type c_732806; -c_732806.hdr.mark = gc_color_red; - c_732806.hdr.grayed = 0; -c_732806.tag = closureN_tag; - c_732806.fn = (function_type)__lambda_363; -c_732806.num_args = 1; -c_732806.num_elt = 2; -c_732806.elts = (object *)alloca(sizeof(object) * 2); -c_732806.elts[0] = ((closureN)self_73757)->elts[0]; -c_732806.elts[1] = ((closureN)self_73757)->elts[8]; - -return_closcall1(data,(closure)&c_731517, &c_732806);; -} - -static void __lambda_363(void *data, int argc, object self_73758, object k_73504, object sym_73213) { - -closureN_type c_732808; -c_732808.hdr.mark = gc_color_red; - c_732808.hdr.grayed = 0; -c_732808.tag = closureN_tag; - c_732808.fn = (function_type)__lambda_362; -c_732808.num_args = 1; -c_732808.num_elt = 4; -c_732808.elts = (object *)alloca(sizeof(object) * 4); -c_732808.elts[0] = ((closureN)self_73758)->elts[0]; -c_732808.elts[1] = k_73504; -c_732808.elts[2] = ((closureN)self_73758)->elts[1]; -c_732808.elts[3] = sym_73213; - -return_closcall1(data,(closure)&c_732808, assq(data, sym_73213, cell_get(((closureN)self_73758)->elts[0])));; -} - -static void __lambda_362(void *data, int argc, object self_73759, object x_73214) { - if( !eq(boolean_f, x_73214) ){ - return_closcall1(data, ((closureN)self_73759)->elts[1], cdr(x_73214)); -} else { - -closureN_type c_732817; -c_732817.hdr.mark = gc_color_red; - c_732817.hdr.grayed = 0; -c_732817.tag = closureN_tag; - c_732817.fn = (function_type)__lambda_361; -c_732817.num_args = 1; -c_732817.num_elt = 3; -c_732817.elts = (object *)alloca(sizeof(object) * 3); -c_732817.elts[0] = ((closureN)self_73759)->elts[0]; -c_732817.elts[1] = ((closureN)self_73759)->elts[1]; -c_732817.elts[2] = ((closureN)self_73759)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73759)->elts[2]), &c_732817, ((closureN)self_73759)->elts[3]);} -; -} - -static void __lambda_361(void *data, int argc, object self_73760, object r_73215) { - -closureN_type c_732819; -c_732819.hdr.mark = gc_color_red; - c_732819.hdr.grayed = 0; -c_732819.tag = closureN_tag; - c_732819.fn = (function_type)__lambda_360; -c_732819.num_args = 1; -c_732819.num_elt = 3; -c_732819.elts = (object *)alloca(sizeof(object) * 3); -c_732819.elts[0] = ((closureN)self_73760)->elts[0]; -c_732819.elts[1] = ((closureN)self_73760)->elts[1]; -c_732819.elts[2] = r_73215; - - -make_cons(c_732838,((closureN)self_73760)->elts[2], r_73215); -return_closcall1(data,(closure)&c_732819, &c_732838);; -} - -static void __lambda_360(void *data, int argc, object self_73761, object r_73509) { - -closureN_type c_732821; -c_732821.hdr.mark = gc_color_red; - c_732821.hdr.grayed = 0; -c_732821.tag = closureN_tag; - c_732821.fn = (function_type)__lambda_359; -c_732821.num_args = 1; -c_732821.num_elt = 3; -c_732821.elts = (object *)alloca(sizeof(object) * 3); -c_732821.elts[0] = ((closureN)self_73761)->elts[0]; -c_732821.elts[1] = ((closureN)self_73761)->elts[1]; -c_732821.elts[2] = ((closureN)self_73761)->elts[2]; - - -make_cons(c_732832,r_73509, cell_get(((closureN)self_73761)->elts[0])); -return_closcall1(data,(closure)&c_732821, &c_732832);; -} - -static void __lambda_359(void *data, int argc, object self_73762, object r_73508) { - -closureN_type c_732823; -c_732823.hdr.mark = gc_color_red; - c_732823.hdr.grayed = 0; -c_732823.tag = closureN_tag; - c_732823.fn = (function_type)__lambda_358; -c_732823.num_args = 1; -c_732823.num_elt = 2; -c_732823.elts = (object *)alloca(sizeof(object) * 2); -c_732823.elts[0] = ((closureN)self_73762)->elts[1]; -c_732823.elts[1] = ((closureN)self_73762)->elts[2]; - -return_closcall1(data,(closure)&c_732823, Cyc_set_car(data, ((closureN)self_73762)->elts[0], r_73508));; -} - -static void __lambda_358(void *data, int argc, object self_73763, object r_73507) { - return_closcall1(data, ((closureN)self_73763)->elts[0], ((closureN)self_73763)->elts[1]);; -} - -static void __lambda_357(void *data, int argc, object self_73764, object r_73503) { - -closureN_type c_731519; -c_731519.hdr.mark = gc_color_red; - c_731519.hdr.grayed = 0; -c_731519.tag = closureN_tag; - c_731519.fn = (function_type)__lambda_356; -c_731519.num_args = 1; -c_731519.num_elt = 33; -c_731519.elts = (object *)alloca(sizeof(object) * 33); -c_731519.elts[0] = ((closureN)self_73764)->elts[0]; -c_731519.elts[1] = ((closureN)self_73764)->elts[1]; -c_731519.elts[2] = ((closureN)self_73764)->elts[2]; -c_731519.elts[3] = ((closureN)self_73764)->elts[3]; -c_731519.elts[4] = ((closureN)self_73764)->elts[4]; -c_731519.elts[5] = ((closureN)self_73764)->elts[5]; -c_731519.elts[6] = ((closureN)self_73764)->elts[6]; -c_731519.elts[7] = ((closureN)self_73764)->elts[7]; -c_731519.elts[8] = ((closureN)self_73764)->elts[8]; -c_731519.elts[9] = ((closureN)self_73764)->elts[9]; -c_731519.elts[10] = ((closureN)self_73764)->elts[10]; -c_731519.elts[11] = ((closureN)self_73764)->elts[11]; -c_731519.elts[12] = ((closureN)self_73764)->elts[12]; -c_731519.elts[13] = ((closureN)self_73764)->elts[13]; -c_731519.elts[14] = ((closureN)self_73764)->elts[14]; -c_731519.elts[15] = ((closureN)self_73764)->elts[15]; -c_731519.elts[16] = ((closureN)self_73764)->elts[16]; -c_731519.elts[17] = ((closureN)self_73764)->elts[17]; -c_731519.elts[18] = ((closureN)self_73764)->elts[18]; -c_731519.elts[19] = ((closureN)self_73764)->elts[19]; -c_731519.elts[20] = ((closureN)self_73764)->elts[20]; -c_731519.elts[21] = ((closureN)self_73764)->elts[21]; -c_731519.elts[22] = ((closureN)self_73764)->elts[22]; -c_731519.elts[23] = ((closureN)self_73764)->elts[23]; -c_731519.elts[24] = ((closureN)self_73764)->elts[24]; -c_731519.elts[25] = ((closureN)self_73764)->elts[25]; -c_731519.elts[26] = ((closureN)self_73764)->elts[26]; -c_731519.elts[27] = ((closureN)self_73764)->elts[27]; -c_731519.elts[28] = ((closureN)self_73764)->elts[28]; -c_731519.elts[29] = ((closureN)self_73764)->elts[29]; -c_731519.elts[30] = ((closureN)self_73764)->elts[30]; -c_731519.elts[31] = ((closureN)self_73764)->elts[31]; -c_731519.elts[32] = ((closureN)self_73764)->elts[32]; - -return_closcall1(data,(closure)&c_731519, Cyc_set_car(data, ((closureN)self_73764)->elts[18], r_73503));; -} - -static void __lambda_356(void *data, int argc, object self_73765, object r_73273) { - -closureN_type c_731521; -c_731521.hdr.mark = gc_color_red; - c_731521.hdr.grayed = 0; -c_731521.tag = closureN_tag; - c_731521.fn = (function_type)__lambda_355; -c_731521.num_args = 1; -c_731521.num_elt = 33; -c_731521.elts = (object *)alloca(sizeof(object) * 33); -c_731521.elts[0] = ((closureN)self_73765)->elts[0]; -c_731521.elts[1] = ((closureN)self_73765)->elts[1]; -c_731521.elts[2] = ((closureN)self_73765)->elts[2]; -c_731521.elts[3] = ((closureN)self_73765)->elts[3]; -c_731521.elts[4] = ((closureN)self_73765)->elts[4]; -c_731521.elts[5] = ((closureN)self_73765)->elts[5]; -c_731521.elts[6] = ((closureN)self_73765)->elts[6]; -c_731521.elts[7] = ((closureN)self_73765)->elts[7]; -c_731521.elts[8] = ((closureN)self_73765)->elts[8]; -c_731521.elts[9] = ((closureN)self_73765)->elts[9]; -c_731521.elts[10] = ((closureN)self_73765)->elts[10]; -c_731521.elts[11] = ((closureN)self_73765)->elts[11]; -c_731521.elts[12] = ((closureN)self_73765)->elts[12]; -c_731521.elts[13] = ((closureN)self_73765)->elts[13]; -c_731521.elts[14] = ((closureN)self_73765)->elts[14]; -c_731521.elts[15] = ((closureN)self_73765)->elts[15]; -c_731521.elts[16] = ((closureN)self_73765)->elts[16]; -c_731521.elts[17] = ((closureN)self_73765)->elts[17]; -c_731521.elts[18] = ((closureN)self_73765)->elts[18]; -c_731521.elts[19] = ((closureN)self_73765)->elts[19]; -c_731521.elts[20] = ((closureN)self_73765)->elts[20]; -c_731521.elts[21] = ((closureN)self_73765)->elts[21]; -c_731521.elts[22] = ((closureN)self_73765)->elts[22]; -c_731521.elts[23] = ((closureN)self_73765)->elts[23]; -c_731521.elts[24] = ((closureN)self_73765)->elts[24]; -c_731521.elts[25] = ((closureN)self_73765)->elts[25]; -c_731521.elts[26] = ((closureN)self_73765)->elts[26]; -c_731521.elts[27] = ((closureN)self_73765)->elts[27]; -c_731521.elts[28] = ((closureN)self_73765)->elts[28]; -c_731521.elts[29] = ((closureN)self_73765)->elts[29]; -c_731521.elts[30] = ((closureN)self_73765)->elts[30]; -c_731521.elts[31] = ((closureN)self_73765)->elts[31]; -c_731521.elts[32] = ((closureN)self_73765)->elts[32]; - -return_closcall1(data,(closure)&c_731521, nil);; -} - -static void __lambda_355(void *data, int argc, object self_73766, object r_73502) { - -closureN_type c_731523; -c_731523.hdr.mark = gc_color_red; - c_731523.hdr.grayed = 0; -c_731523.tag = closureN_tag; - c_731523.fn = (function_type)__lambda_354; -c_731523.num_args = 1; -c_731523.num_elt = 33; -c_731523.elts = (object *)alloca(sizeof(object) * 33); -c_731523.elts[0] = ((closureN)self_73766)->elts[0]; -c_731523.elts[1] = ((closureN)self_73766)->elts[1]; -c_731523.elts[2] = ((closureN)self_73766)->elts[2]; -c_731523.elts[3] = ((closureN)self_73766)->elts[3]; -c_731523.elts[4] = ((closureN)self_73766)->elts[4]; -c_731523.elts[5] = ((closureN)self_73766)->elts[5]; -c_731523.elts[6] = ((closureN)self_73766)->elts[6]; -c_731523.elts[7] = ((closureN)self_73766)->elts[7]; -c_731523.elts[8] = ((closureN)self_73766)->elts[8]; -c_731523.elts[9] = ((closureN)self_73766)->elts[9]; -c_731523.elts[10] = ((closureN)self_73766)->elts[10]; -c_731523.elts[11] = ((closureN)self_73766)->elts[11]; -c_731523.elts[12] = ((closureN)self_73766)->elts[12]; -c_731523.elts[13] = ((closureN)self_73766)->elts[13]; -c_731523.elts[14] = ((closureN)self_73766)->elts[14]; -c_731523.elts[15] = ((closureN)self_73766)->elts[15]; -c_731523.elts[16] = ((closureN)self_73766)->elts[16]; -c_731523.elts[17] = ((closureN)self_73766)->elts[17]; -c_731523.elts[18] = ((closureN)self_73766)->elts[18]; -c_731523.elts[19] = ((closureN)self_73766)->elts[19]; -c_731523.elts[20] = ((closureN)self_73766)->elts[20]; -c_731523.elts[21] = ((closureN)self_73766)->elts[21]; -c_731523.elts[22] = ((closureN)self_73766)->elts[22]; -c_731523.elts[23] = ((closureN)self_73766)->elts[23]; -c_731523.elts[24] = ((closureN)self_73766)->elts[24]; -c_731523.elts[25] = ((closureN)self_73766)->elts[25]; -c_731523.elts[26] = ((closureN)self_73766)->elts[26]; -c_731523.elts[27] = ((closureN)self_73766)->elts[27]; -c_731523.elts[28] = ((closureN)self_73766)->elts[28]; -c_731523.elts[29] = ((closureN)self_73766)->elts[29]; -c_731523.elts[30] = ((closureN)self_73766)->elts[30]; -c_731523.elts[31] = ((closureN)self_73766)->elts[31]; -c_731523.elts[32] = ((closureN)self_73766)->elts[32]; - -return_closcall1(data,(closure)&c_731523, Cyc_set_car(data, ((closureN)self_73766)->elts[0], r_73502));; -} - -static void __lambda_354(void *data, int argc, object self_73767, object r_73274) { - -closureN_type c_731525; -c_731525.hdr.mark = gc_color_red; - c_731525.hdr.grayed = 0; -c_731525.tag = closureN_tag; - c_731525.fn = (function_type)__lambda_351; -c_731525.num_args = 1; -c_731525.num_elt = 33; -c_731525.elts = (object *)alloca(sizeof(object) * 33); -c_731525.elts[0] = ((closureN)self_73767)->elts[0]; -c_731525.elts[1] = ((closureN)self_73767)->elts[1]; -c_731525.elts[2] = ((closureN)self_73767)->elts[2]; -c_731525.elts[3] = ((closureN)self_73767)->elts[3]; -c_731525.elts[4] = ((closureN)self_73767)->elts[4]; -c_731525.elts[5] = ((closureN)self_73767)->elts[5]; -c_731525.elts[6] = ((closureN)self_73767)->elts[6]; -c_731525.elts[7] = ((closureN)self_73767)->elts[7]; -c_731525.elts[8] = ((closureN)self_73767)->elts[8]; -c_731525.elts[9] = ((closureN)self_73767)->elts[9]; -c_731525.elts[10] = ((closureN)self_73767)->elts[10]; -c_731525.elts[11] = ((closureN)self_73767)->elts[11]; -c_731525.elts[12] = ((closureN)self_73767)->elts[12]; -c_731525.elts[13] = ((closureN)self_73767)->elts[13]; -c_731525.elts[14] = ((closureN)self_73767)->elts[14]; -c_731525.elts[15] = ((closureN)self_73767)->elts[15]; -c_731525.elts[16] = ((closureN)self_73767)->elts[16]; -c_731525.elts[17] = ((closureN)self_73767)->elts[17]; -c_731525.elts[18] = ((closureN)self_73767)->elts[18]; -c_731525.elts[19] = ((closureN)self_73767)->elts[19]; -c_731525.elts[20] = ((closureN)self_73767)->elts[20]; -c_731525.elts[21] = ((closureN)self_73767)->elts[21]; -c_731525.elts[22] = ((closureN)self_73767)->elts[22]; -c_731525.elts[23] = ((closureN)self_73767)->elts[23]; -c_731525.elts[24] = ((closureN)self_73767)->elts[24]; -c_731525.elts[25] = ((closureN)self_73767)->elts[25]; -c_731525.elts[26] = ((closureN)self_73767)->elts[26]; -c_731525.elts[27] = ((closureN)self_73767)->elts[27]; -c_731525.elts[28] = ((closureN)self_73767)->elts[28]; -c_731525.elts[29] = ((closureN)self_73767)->elts[29]; -c_731525.elts[30] = ((closureN)self_73767)->elts[30]; -c_731525.elts[31] = ((closureN)self_73767)->elts[31]; -c_731525.elts[32] = ((closureN)self_73767)->elts[32]; - - -mclosure0(c_732794, (function_type)__lambda_353);c_732794.num_args = 1; -return_closcall1(data,(closure)&c_731525, &c_732794);; -} - -static void __lambda_353(void *data, int argc, object self_73768, object k_73500, object sym_73212) { - -closureN_type c_732796; -c_732796.hdr.mark = gc_color_red; - c_732796.hdr.grayed = 0; -c_732796.tag = closureN_tag; - c_732796.fn = (function_type)__lambda_352; -c_732796.num_args = 1; -c_732796.num_elt = 2; -c_732796.elts = (object *)alloca(sizeof(object) * 2); -c_732796.elts[0] = k_73500; -c_732796.elts[1] = sym_73212; - -return_closcall1(data,(closure)&c_732796, nil);; -} - -static void __lambda_352(void *data, int argc, object self_73769, object r_73501) { - return_closcall3(data, __glo_vector_scheme_base, ((closureN)self_73769)->elts[0], ((closureN)self_73769)->elts[1], r_73501);; -} - -static void __lambda_351(void *data, int argc, object self_73770, object r_73499) { - -closureN_type c_731527; -c_731527.hdr.mark = gc_color_red; - c_731527.hdr.grayed = 0; -c_731527.tag = closureN_tag; - c_731527.fn = (function_type)__lambda_350; -c_731527.num_args = 1; -c_731527.num_elt = 32; -c_731527.elts = (object *)alloca(sizeof(object) * 32); -c_731527.elts[0] = ((closureN)self_73770)->elts[0]; -c_731527.elts[1] = ((closureN)self_73770)->elts[1]; -c_731527.elts[2] = ((closureN)self_73770)->elts[2]; -c_731527.elts[3] = ((closureN)self_73770)->elts[3]; -c_731527.elts[4] = ((closureN)self_73770)->elts[4]; -c_731527.elts[5] = ((closureN)self_73770)->elts[5]; -c_731527.elts[6] = ((closureN)self_73770)->elts[6]; -c_731527.elts[7] = ((closureN)self_73770)->elts[7]; -c_731527.elts[8] = ((closureN)self_73770)->elts[9]; -c_731527.elts[9] = ((closureN)self_73770)->elts[10]; -c_731527.elts[10] = ((closureN)self_73770)->elts[11]; -c_731527.elts[11] = ((closureN)self_73770)->elts[12]; -c_731527.elts[12] = ((closureN)self_73770)->elts[13]; -c_731527.elts[13] = ((closureN)self_73770)->elts[14]; -c_731527.elts[14] = ((closureN)self_73770)->elts[15]; -c_731527.elts[15] = ((closureN)self_73770)->elts[16]; -c_731527.elts[16] = ((closureN)self_73770)->elts[17]; -c_731527.elts[17] = ((closureN)self_73770)->elts[18]; -c_731527.elts[18] = ((closureN)self_73770)->elts[19]; -c_731527.elts[19] = ((closureN)self_73770)->elts[20]; -c_731527.elts[20] = ((closureN)self_73770)->elts[21]; -c_731527.elts[21] = ((closureN)self_73770)->elts[22]; -c_731527.elts[22] = ((closureN)self_73770)->elts[23]; -c_731527.elts[23] = ((closureN)self_73770)->elts[24]; -c_731527.elts[24] = ((closureN)self_73770)->elts[25]; -c_731527.elts[25] = ((closureN)self_73770)->elts[26]; -c_731527.elts[26] = ((closureN)self_73770)->elts[27]; -c_731527.elts[27] = ((closureN)self_73770)->elts[28]; -c_731527.elts[28] = ((closureN)self_73770)->elts[29]; -c_731527.elts[29] = ((closureN)self_73770)->elts[30]; -c_731527.elts[30] = ((closureN)self_73770)->elts[31]; -c_731527.elts[31] = ((closureN)self_73770)->elts[32]; - -return_closcall1(data,(closure)&c_731527, Cyc_set_car(data, ((closureN)self_73770)->elts[8], r_73499));; -} - -static void __lambda_350(void *data, int argc, object self_73771, object r_73275) { - -closureN_type c_731529; -c_731529.hdr.mark = gc_color_red; - c_731529.hdr.grayed = 0; -c_731529.tag = closureN_tag; - c_731529.fn = (function_type)__lambda_348; -c_731529.num_args = 1; -c_731529.num_elt = 32; -c_731529.elts = (object *)alloca(sizeof(object) * 32); -c_731529.elts[0] = ((closureN)self_73771)->elts[0]; -c_731529.elts[1] = ((closureN)self_73771)->elts[1]; -c_731529.elts[2] = ((closureN)self_73771)->elts[2]; -c_731529.elts[3] = ((closureN)self_73771)->elts[3]; -c_731529.elts[4] = ((closureN)self_73771)->elts[4]; -c_731529.elts[5] = ((closureN)self_73771)->elts[5]; -c_731529.elts[6] = ((closureN)self_73771)->elts[6]; -c_731529.elts[7] = ((closureN)self_73771)->elts[7]; -c_731529.elts[8] = ((closureN)self_73771)->elts[8]; -c_731529.elts[9] = ((closureN)self_73771)->elts[9]; -c_731529.elts[10] = ((closureN)self_73771)->elts[10]; -c_731529.elts[11] = ((closureN)self_73771)->elts[11]; -c_731529.elts[12] = ((closureN)self_73771)->elts[12]; -c_731529.elts[13] = ((closureN)self_73771)->elts[13]; -c_731529.elts[14] = ((closureN)self_73771)->elts[14]; -c_731529.elts[15] = ((closureN)self_73771)->elts[15]; -c_731529.elts[16] = ((closureN)self_73771)->elts[16]; -c_731529.elts[17] = ((closureN)self_73771)->elts[17]; -c_731529.elts[18] = ((closureN)self_73771)->elts[18]; -c_731529.elts[19] = ((closureN)self_73771)->elts[19]; -c_731529.elts[20] = ((closureN)self_73771)->elts[20]; -c_731529.elts[21] = ((closureN)self_73771)->elts[21]; -c_731529.elts[22] = ((closureN)self_73771)->elts[22]; -c_731529.elts[23] = ((closureN)self_73771)->elts[23]; -c_731529.elts[24] = ((closureN)self_73771)->elts[24]; -c_731529.elts[25] = ((closureN)self_73771)->elts[25]; -c_731529.elts[26] = ((closureN)self_73771)->elts[26]; -c_731529.elts[27] = ((closureN)self_73771)->elts[27]; -c_731529.elts[28] = ((closureN)self_73771)->elts[28]; -c_731529.elts[29] = ((closureN)self_73771)->elts[29]; -c_731529.elts[30] = ((closureN)self_73771)->elts[30]; -c_731529.elts[31] = ((closureN)self_73771)->elts[31]; - - -mclosure0(c_732787, (function_type)__lambda_349);c_732787.num_args = 2; -return_closcall1(data,(closure)&c_731529, &c_732787);; -} - -static void __lambda_349(void *data, int argc, object self_73772, object k_73498, object symbol_91record_73211, object lemmas_73210) { - return_closcall1(data, k_73498, Cyc_vector_set(data, symbol_91record_73211, obj_int2obj(1), lemmas_73210));; -} - -static void __lambda_348(void *data, int argc, object self_73773, object r_73497) { - -closureN_type c_731531; -c_731531.hdr.mark = gc_color_red; - c_731531.hdr.grayed = 0; -c_731531.tag = closureN_tag; - c_731531.fn = (function_type)__lambda_347; -c_731531.num_args = 1; -c_731531.num_elt = 31; -c_731531.elts = (object *)alloca(sizeof(object) * 31); -c_731531.elts[0] = ((closureN)self_73773)->elts[0]; -c_731531.elts[1] = ((closureN)self_73773)->elts[1]; -c_731531.elts[2] = ((closureN)self_73773)->elts[2]; -c_731531.elts[3] = ((closureN)self_73773)->elts[3]; -c_731531.elts[4] = ((closureN)self_73773)->elts[4]; -c_731531.elts[5] = ((closureN)self_73773)->elts[5]; -c_731531.elts[6] = ((closureN)self_73773)->elts[6]; -c_731531.elts[7] = ((closureN)self_73773)->elts[7]; -c_731531.elts[8] = ((closureN)self_73773)->elts[8]; -c_731531.elts[9] = ((closureN)self_73773)->elts[9]; -c_731531.elts[10] = ((closureN)self_73773)->elts[10]; -c_731531.elts[11] = ((closureN)self_73773)->elts[12]; -c_731531.elts[12] = ((closureN)self_73773)->elts[13]; -c_731531.elts[13] = ((closureN)self_73773)->elts[14]; -c_731531.elts[14] = ((closureN)self_73773)->elts[15]; -c_731531.elts[15] = ((closureN)self_73773)->elts[16]; -c_731531.elts[16] = ((closureN)self_73773)->elts[17]; -c_731531.elts[17] = ((closureN)self_73773)->elts[18]; -c_731531.elts[18] = ((closureN)self_73773)->elts[19]; -c_731531.elts[19] = ((closureN)self_73773)->elts[20]; -c_731531.elts[20] = ((closureN)self_73773)->elts[21]; -c_731531.elts[21] = ((closureN)self_73773)->elts[22]; -c_731531.elts[22] = ((closureN)self_73773)->elts[23]; -c_731531.elts[23] = ((closureN)self_73773)->elts[24]; -c_731531.elts[24] = ((closureN)self_73773)->elts[25]; -c_731531.elts[25] = ((closureN)self_73773)->elts[26]; -c_731531.elts[26] = ((closureN)self_73773)->elts[27]; -c_731531.elts[27] = ((closureN)self_73773)->elts[28]; -c_731531.elts[28] = ((closureN)self_73773)->elts[29]; -c_731531.elts[29] = ((closureN)self_73773)->elts[30]; -c_731531.elts[30] = ((closureN)self_73773)->elts[31]; - -return_closcall1(data,(closure)&c_731531, Cyc_set_car(data, ((closureN)self_73773)->elts[11], r_73497));; -} - -static void __lambda_347(void *data, int argc, object self_73774, object r_73276) { - -closureN_type c_731533; -c_731533.hdr.mark = gc_color_red; - c_731533.hdr.grayed = 0; -c_731533.tag = closureN_tag; - c_731533.fn = (function_type)__lambda_345; -c_731533.num_args = 1; -c_731533.num_elt = 31; -c_731533.elts = (object *)alloca(sizeof(object) * 31); -c_731533.elts[0] = ((closureN)self_73774)->elts[0]; -c_731533.elts[1] = ((closureN)self_73774)->elts[1]; -c_731533.elts[2] = ((closureN)self_73774)->elts[2]; -c_731533.elts[3] = ((closureN)self_73774)->elts[3]; -c_731533.elts[4] = ((closureN)self_73774)->elts[4]; -c_731533.elts[5] = ((closureN)self_73774)->elts[5]; -c_731533.elts[6] = ((closureN)self_73774)->elts[6]; -c_731533.elts[7] = ((closureN)self_73774)->elts[7]; -c_731533.elts[8] = ((closureN)self_73774)->elts[8]; -c_731533.elts[9] = ((closureN)self_73774)->elts[9]; -c_731533.elts[10] = ((closureN)self_73774)->elts[10]; -c_731533.elts[11] = ((closureN)self_73774)->elts[11]; -c_731533.elts[12] = ((closureN)self_73774)->elts[12]; -c_731533.elts[13] = ((closureN)self_73774)->elts[13]; -c_731533.elts[14] = ((closureN)self_73774)->elts[14]; -c_731533.elts[15] = ((closureN)self_73774)->elts[15]; -c_731533.elts[16] = ((closureN)self_73774)->elts[16]; -c_731533.elts[17] = ((closureN)self_73774)->elts[17]; -c_731533.elts[18] = ((closureN)self_73774)->elts[18]; -c_731533.elts[19] = ((closureN)self_73774)->elts[19]; -c_731533.elts[20] = ((closureN)self_73774)->elts[20]; -c_731533.elts[21] = ((closureN)self_73774)->elts[21]; -c_731533.elts[22] = ((closureN)self_73774)->elts[22]; -c_731533.elts[23] = ((closureN)self_73774)->elts[23]; -c_731533.elts[24] = ((closureN)self_73774)->elts[24]; -c_731533.elts[25] = ((closureN)self_73774)->elts[25]; -c_731533.elts[26] = ((closureN)self_73774)->elts[26]; -c_731533.elts[27] = ((closureN)self_73774)->elts[27]; -c_731533.elts[28] = ((closureN)self_73774)->elts[28]; -c_731533.elts[29] = ((closureN)self_73774)->elts[29]; -c_731533.elts[30] = ((closureN)self_73774)->elts[30]; - - -mclosure0(c_732780, (function_type)__lambda_346);c_732780.num_args = 1; -return_closcall1(data,(closure)&c_731533, &c_732780);; -} - -static void __lambda_346(void *data, int argc, object self_73775, object k_73496, object symbol_91record_73209) { - return_closcall1(data, k_73496, Cyc_vector_ref(data, symbol_91record_73209, obj_int2obj(1)));; -} - -static void __lambda_345(void *data, int argc, object self_73776, object r_73495) { - -closureN_type c_731535; -c_731535.hdr.mark = gc_color_red; - c_731535.hdr.grayed = 0; -c_731535.tag = closureN_tag; - c_731535.fn = (function_type)__lambda_344; -c_731535.num_args = 1; -c_731535.num_elt = 31; -c_731535.elts = (object *)alloca(sizeof(object) * 31); -c_731535.elts[0] = ((closureN)self_73776)->elts[0]; -c_731535.elts[1] = ((closureN)self_73776)->elts[1]; -c_731535.elts[2] = ((closureN)self_73776)->elts[2]; -c_731535.elts[3] = ((closureN)self_73776)->elts[3]; -c_731535.elts[4] = ((closureN)self_73776)->elts[4]; -c_731535.elts[5] = ((closureN)self_73776)->elts[5]; -c_731535.elts[6] = ((closureN)self_73776)->elts[6]; -c_731535.elts[7] = ((closureN)self_73776)->elts[7]; -c_731535.elts[8] = ((closureN)self_73776)->elts[8]; -c_731535.elts[9] = ((closureN)self_73776)->elts[9]; -c_731535.elts[10] = ((closureN)self_73776)->elts[10]; -c_731535.elts[11] = ((closureN)self_73776)->elts[11]; -c_731535.elts[12] = ((closureN)self_73776)->elts[12]; -c_731535.elts[13] = ((closureN)self_73776)->elts[13]; -c_731535.elts[14] = ((closureN)self_73776)->elts[14]; -c_731535.elts[15] = ((closureN)self_73776)->elts[15]; -c_731535.elts[16] = ((closureN)self_73776)->elts[16]; -c_731535.elts[17] = ((closureN)self_73776)->elts[17]; -c_731535.elts[18] = ((closureN)self_73776)->elts[18]; -c_731535.elts[19] = ((closureN)self_73776)->elts[19]; -c_731535.elts[20] = ((closureN)self_73776)->elts[20]; -c_731535.elts[21] = ((closureN)self_73776)->elts[21]; -c_731535.elts[22] = ((closureN)self_73776)->elts[22]; -c_731535.elts[23] = ((closureN)self_73776)->elts[23]; -c_731535.elts[24] = ((closureN)self_73776)->elts[24]; -c_731535.elts[25] = ((closureN)self_73776)->elts[25]; -c_731535.elts[26] = ((closureN)self_73776)->elts[26]; -c_731535.elts[27] = ((closureN)self_73776)->elts[27]; -c_731535.elts[28] = ((closureN)self_73776)->elts[28]; -c_731535.elts[29] = ((closureN)self_73776)->elts[29]; -c_731535.elts[30] = ((closureN)self_73776)->elts[30]; - -return_closcall1(data,(closure)&c_731535, Cyc_set_car(data, ((closureN)self_73776)->elts[5], r_73495));; -} - -static void __lambda_344(void *data, int argc, object self_73777, object r_73277) { - -closureN_type c_731537; -c_731537.hdr.mark = gc_color_red; - c_731537.hdr.grayed = 0; -c_731537.tag = closureN_tag; - c_731537.fn = (function_type)__lambda_342; -c_731537.num_args = 1; -c_731537.num_elt = 31; -c_731537.elts = (object *)alloca(sizeof(object) * 31); -c_731537.elts[0] = ((closureN)self_73777)->elts[0]; -c_731537.elts[1] = ((closureN)self_73777)->elts[1]; -c_731537.elts[2] = ((closureN)self_73777)->elts[2]; -c_731537.elts[3] = ((closureN)self_73777)->elts[3]; -c_731537.elts[4] = ((closureN)self_73777)->elts[4]; -c_731537.elts[5] = ((closureN)self_73777)->elts[5]; -c_731537.elts[6] = ((closureN)self_73777)->elts[6]; -c_731537.elts[7] = ((closureN)self_73777)->elts[7]; -c_731537.elts[8] = ((closureN)self_73777)->elts[8]; -c_731537.elts[9] = ((closureN)self_73777)->elts[9]; -c_731537.elts[10] = ((closureN)self_73777)->elts[10]; -c_731537.elts[11] = ((closureN)self_73777)->elts[11]; -c_731537.elts[12] = ((closureN)self_73777)->elts[12]; -c_731537.elts[13] = ((closureN)self_73777)->elts[13]; -c_731537.elts[14] = ((closureN)self_73777)->elts[14]; -c_731537.elts[15] = ((closureN)self_73777)->elts[15]; -c_731537.elts[16] = ((closureN)self_73777)->elts[16]; -c_731537.elts[17] = ((closureN)self_73777)->elts[17]; -c_731537.elts[18] = ((closureN)self_73777)->elts[18]; -c_731537.elts[19] = ((closureN)self_73777)->elts[19]; -c_731537.elts[20] = ((closureN)self_73777)->elts[20]; -c_731537.elts[21] = ((closureN)self_73777)->elts[21]; -c_731537.elts[22] = ((closureN)self_73777)->elts[22]; -c_731537.elts[23] = ((closureN)self_73777)->elts[23]; -c_731537.elts[24] = ((closureN)self_73777)->elts[24]; -c_731537.elts[25] = ((closureN)self_73777)->elts[25]; -c_731537.elts[26] = ((closureN)self_73777)->elts[26]; -c_731537.elts[27] = ((closureN)self_73777)->elts[27]; -c_731537.elts[28] = ((closureN)self_73777)->elts[28]; -c_731537.elts[29] = ((closureN)self_73777)->elts[29]; -c_731537.elts[30] = ((closureN)self_73777)->elts[30]; - - -mclosure0(c_732773, (function_type)__lambda_343);c_732773.num_args = 1; -return_closcall1(data,(closure)&c_731537, &c_732773);; -} - -static void __lambda_343(void *data, int argc, object self_73778, object k_73494, object symbol_91record_73208) { - return_closcall1(data, k_73494, Cyc_vector_ref(data, symbol_91record_73208, obj_int2obj(0)));; -} - -static void __lambda_342(void *data, int argc, object self_73779, object r_73493) { - -closureN_type c_731539; -c_731539.hdr.mark = gc_color_red; - c_731539.hdr.grayed = 0; -c_731539.tag = closureN_tag; - c_731539.fn = (function_type)__lambda_341; -c_731539.num_args = 1; -c_731539.num_elt = 30; -c_731539.elts = (object *)alloca(sizeof(object) * 30); -c_731539.elts[0] = ((closureN)self_73779)->elts[0]; -c_731539.elts[1] = ((closureN)self_73779)->elts[1]; -c_731539.elts[2] = ((closureN)self_73779)->elts[2]; -c_731539.elts[3] = ((closureN)self_73779)->elts[3]; -c_731539.elts[4] = ((closureN)self_73779)->elts[4]; -c_731539.elts[5] = ((closureN)self_73779)->elts[5]; -c_731539.elts[6] = ((closureN)self_73779)->elts[7]; -c_731539.elts[7] = ((closureN)self_73779)->elts[8]; -c_731539.elts[8] = ((closureN)self_73779)->elts[9]; -c_731539.elts[9] = ((closureN)self_73779)->elts[10]; -c_731539.elts[10] = ((closureN)self_73779)->elts[11]; -c_731539.elts[11] = ((closureN)self_73779)->elts[12]; -c_731539.elts[12] = ((closureN)self_73779)->elts[13]; -c_731539.elts[13] = ((closureN)self_73779)->elts[14]; -c_731539.elts[14] = ((closureN)self_73779)->elts[15]; -c_731539.elts[15] = ((closureN)self_73779)->elts[16]; -c_731539.elts[16] = ((closureN)self_73779)->elts[17]; -c_731539.elts[17] = ((closureN)self_73779)->elts[18]; -c_731539.elts[18] = ((closureN)self_73779)->elts[19]; -c_731539.elts[19] = ((closureN)self_73779)->elts[20]; -c_731539.elts[20] = ((closureN)self_73779)->elts[21]; -c_731539.elts[21] = ((closureN)self_73779)->elts[22]; -c_731539.elts[22] = ((closureN)self_73779)->elts[23]; -c_731539.elts[23] = ((closureN)self_73779)->elts[24]; -c_731539.elts[24] = ((closureN)self_73779)->elts[25]; -c_731539.elts[25] = ((closureN)self_73779)->elts[26]; -c_731539.elts[26] = ((closureN)self_73779)->elts[27]; -c_731539.elts[27] = ((closureN)self_73779)->elts[28]; -c_731539.elts[28] = ((closureN)self_73779)->elts[29]; -c_731539.elts[29] = ((closureN)self_73779)->elts[30]; - -return_closcall1(data,(closure)&c_731539, Cyc_set_car(data, ((closureN)self_73779)->elts[6], r_73493));; -} - -static void __lambda_341(void *data, int argc, object self_73780, object r_73278) { - -closureN_type c_731541; -c_731541.hdr.mark = gc_color_red; - c_731541.hdr.grayed = 0; -c_731541.tag = closureN_tag; - c_731541.fn = (function_type)__lambda_339; -c_731541.num_args = 1; -c_731541.num_elt = 30; -c_731541.elts = (object *)alloca(sizeof(object) * 30); -c_731541.elts[0] = ((closureN)self_73780)->elts[0]; -c_731541.elts[1] = ((closureN)self_73780)->elts[1]; -c_731541.elts[2] = ((closureN)self_73780)->elts[2]; -c_731541.elts[3] = ((closureN)self_73780)->elts[3]; -c_731541.elts[4] = ((closureN)self_73780)->elts[4]; -c_731541.elts[5] = ((closureN)self_73780)->elts[5]; -c_731541.elts[6] = ((closureN)self_73780)->elts[6]; -c_731541.elts[7] = ((closureN)self_73780)->elts[7]; -c_731541.elts[8] = ((closureN)self_73780)->elts[8]; -c_731541.elts[9] = ((closureN)self_73780)->elts[9]; -c_731541.elts[10] = ((closureN)self_73780)->elts[10]; -c_731541.elts[11] = ((closureN)self_73780)->elts[11]; -c_731541.elts[12] = ((closureN)self_73780)->elts[12]; -c_731541.elts[13] = ((closureN)self_73780)->elts[13]; -c_731541.elts[14] = ((closureN)self_73780)->elts[14]; -c_731541.elts[15] = ((closureN)self_73780)->elts[15]; -c_731541.elts[16] = ((closureN)self_73780)->elts[16]; -c_731541.elts[17] = ((closureN)self_73780)->elts[17]; -c_731541.elts[18] = ((closureN)self_73780)->elts[18]; -c_731541.elts[19] = ((closureN)self_73780)->elts[19]; -c_731541.elts[20] = ((closureN)self_73780)->elts[20]; -c_731541.elts[21] = ((closureN)self_73780)->elts[21]; -c_731541.elts[22] = ((closureN)self_73780)->elts[22]; -c_731541.elts[23] = ((closureN)self_73780)->elts[23]; -c_731541.elts[24] = ((closureN)self_73780)->elts[24]; -c_731541.elts[25] = ((closureN)self_73780)->elts[25]; -c_731541.elts[26] = ((closureN)self_73780)->elts[26]; -c_731541.elts[27] = ((closureN)self_73780)->elts[27]; -c_731541.elts[28] = ((closureN)self_73780)->elts[28]; -c_731541.elts[29] = ((closureN)self_73780)->elts[29]; - - -mclosure0(c_732766, (function_type)__lambda_340);c_732766.num_args = 2; -return_closcall1(data,(closure)&c_731541, &c_732766);; -} - -static void __lambda_340(void *data, int argc, object self_73781, object k_73492, object r1_73207, object r2_73206) { - return_closcall1(data, k_73492, Cyc_eq(r1_73207, r2_73206));; -} - -static void __lambda_339(void *data, int argc, object self_73782, object r_73491) { - -closureN_type c_731543; -c_731543.hdr.mark = gc_color_red; - c_731543.hdr.grayed = 0; -c_731543.tag = closureN_tag; - c_731543.fn = (function_type)__lambda_338; -c_731543.num_args = 1; -c_731543.num_elt = 30; -c_731543.elts = (object *)alloca(sizeof(object) * 30); -c_731543.elts[0] = ((closureN)self_73782)->elts[0]; -c_731543.elts[1] = ((closureN)self_73782)->elts[1]; -c_731543.elts[2] = ((closureN)self_73782)->elts[2]; -c_731543.elts[3] = ((closureN)self_73782)->elts[3]; -c_731543.elts[4] = ((closureN)self_73782)->elts[4]; -c_731543.elts[5] = ((closureN)self_73782)->elts[5]; -c_731543.elts[6] = ((closureN)self_73782)->elts[6]; -c_731543.elts[7] = ((closureN)self_73782)->elts[7]; -c_731543.elts[8] = ((closureN)self_73782)->elts[8]; -c_731543.elts[9] = ((closureN)self_73782)->elts[9]; -c_731543.elts[10] = ((closureN)self_73782)->elts[10]; -c_731543.elts[11] = ((closureN)self_73782)->elts[11]; -c_731543.elts[12] = ((closureN)self_73782)->elts[12]; -c_731543.elts[13] = ((closureN)self_73782)->elts[13]; -c_731543.elts[14] = ((closureN)self_73782)->elts[14]; -c_731543.elts[15] = ((closureN)self_73782)->elts[15]; -c_731543.elts[16] = ((closureN)self_73782)->elts[16]; -c_731543.elts[17] = ((closureN)self_73782)->elts[17]; -c_731543.elts[18] = ((closureN)self_73782)->elts[18]; -c_731543.elts[19] = ((closureN)self_73782)->elts[19]; -c_731543.elts[20] = ((closureN)self_73782)->elts[20]; -c_731543.elts[21] = ((closureN)self_73782)->elts[21]; -c_731543.elts[22] = ((closureN)self_73782)->elts[22]; -c_731543.elts[23] = ((closureN)self_73782)->elts[23]; -c_731543.elts[24] = ((closureN)self_73782)->elts[24]; -c_731543.elts[25] = ((closureN)self_73782)->elts[25]; -c_731543.elts[26] = ((closureN)self_73782)->elts[26]; -c_731543.elts[27] = ((closureN)self_73782)->elts[27]; -c_731543.elts[28] = ((closureN)self_73782)->elts[28]; -c_731543.elts[29] = ((closureN)self_73782)->elts[29]; - -return_closcall1(data,(closure)&c_731543, Cyc_set_car(data, ((closureN)self_73782)->elts[16], r_73491));; -} - -static void __lambda_338(void *data, int argc, object self_73783, object r_73279) { - -closureN_type c_731545; -c_731545.hdr.mark = gc_color_red; - c_731545.hdr.grayed = 0; -c_731545.tag = closureN_tag; - c_731545.fn = (function_type)__lambda_321; -c_731545.num_args = 1; -c_731545.num_elt = 30; -c_731545.elts = (object *)alloca(sizeof(object) * 30); -c_731545.elts[0] = ((closureN)self_73783)->elts[0]; -c_731545.elts[1] = ((closureN)self_73783)->elts[1]; -c_731545.elts[2] = ((closureN)self_73783)->elts[2]; -c_731545.elts[3] = ((closureN)self_73783)->elts[3]; -c_731545.elts[4] = ((closureN)self_73783)->elts[4]; -c_731545.elts[5] = ((closureN)self_73783)->elts[5]; -c_731545.elts[6] = ((closureN)self_73783)->elts[6]; -c_731545.elts[7] = ((closureN)self_73783)->elts[7]; -c_731545.elts[8] = ((closureN)self_73783)->elts[8]; -c_731545.elts[9] = ((closureN)self_73783)->elts[9]; -c_731545.elts[10] = ((closureN)self_73783)->elts[10]; -c_731545.elts[11] = ((closureN)self_73783)->elts[11]; -c_731545.elts[12] = ((closureN)self_73783)->elts[12]; -c_731545.elts[13] = ((closureN)self_73783)->elts[13]; -c_731545.elts[14] = ((closureN)self_73783)->elts[14]; -c_731545.elts[15] = ((closureN)self_73783)->elts[15]; -c_731545.elts[16] = ((closureN)self_73783)->elts[16]; -c_731545.elts[17] = ((closureN)self_73783)->elts[17]; -c_731545.elts[18] = ((closureN)self_73783)->elts[18]; -c_731545.elts[19] = ((closureN)self_73783)->elts[19]; -c_731545.elts[20] = ((closureN)self_73783)->elts[20]; -c_731545.elts[21] = ((closureN)self_73783)->elts[21]; -c_731545.elts[22] = ((closureN)self_73783)->elts[22]; -c_731545.elts[23] = ((closureN)self_73783)->elts[23]; -c_731545.elts[24] = ((closureN)self_73783)->elts[24]; -c_731545.elts[25] = ((closureN)self_73783)->elts[25]; -c_731545.elts[26] = ((closureN)self_73783)->elts[26]; -c_731545.elts[27] = ((closureN)self_73783)->elts[27]; -c_731545.elts[28] = ((closureN)self_73783)->elts[28]; -c_731545.elts[29] = ((closureN)self_73783)->elts[29]; - - -closureN_type c_732689; -c_732689.hdr.mark = gc_color_red; - c_732689.hdr.grayed = 0; -c_732689.tag = closureN_tag; - c_732689.fn = (function_type)__lambda_337; -c_732689.num_args = 3; -c_732689.num_elt = 4; -c_732689.elts = (object *)alloca(sizeof(object) * 4); -c_732689.elts[0] = ((closureN)self_73783)->elts[1]; -c_732689.elts[1] = ((closureN)self_73783)->elts[18]; -c_732689.elts[2] = ((closureN)self_73783)->elts[25]; -c_732689.elts[3] = ((closureN)self_73783)->elts[26]; - -return_closcall1(data,(closure)&c_731545, &c_732689);; -} - -static void __lambda_337(void *data, int argc, object self_73784, object k_73478, object alist_73199, object term_73198, object n_73197) { - -closureN_type c_732694; -c_732694.hdr.mark = gc_color_red; - c_732694.hdr.grayed = 0; -c_732694.tag = closureN_tag; - c_732694.fn = (function_type)__lambda_336; -c_732694.num_args = 1; -c_732694.num_elt = 6; -c_732694.elts = (object *)alloca(sizeof(object) * 6); -c_732694.elts[0] = ((closureN)self_73784)->elts[0]; -c_732694.elts[1] = k_73478; -c_732694.elts[2] = n_73197; -c_732694.elts[3] = ((closureN)self_73784)->elts[1]; -c_732694.elts[4] = term_73198; -c_732694.elts[5] = ((closureN)self_73784)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73784)->elts[2]), &c_732694, alist_73199);; -} - -static void __lambda_336(void *data, int argc, object self_73785, object r_73480) { - -closureN_type c_732696; -c_732696.hdr.mark = gc_color_red; - c_732696.hdr.grayed = 0; -c_732696.tag = closureN_tag; - c_732696.fn = (function_type)__lambda_335; -c_732696.num_args = 2; -c_732696.num_elt = 5; -c_732696.elts = (object *)alloca(sizeof(object) * 5); -c_732696.elts[0] = ((closureN)self_73785)->elts[0]; -c_732696.elts[1] = ((closureN)self_73785)->elts[1]; -c_732696.elts[2] = r_73480; -c_732696.elts[3] = ((closureN)self_73785)->elts[3]; -c_732696.elts[4] = ((closureN)self_73785)->elts[5]; - -return_closcall2(data,(closure)&c_732696, ((closureN)self_73785)->elts[4], ((closureN)self_73785)->elts[2]);; -} - -static void __lambda_335(void *data, int argc, object self_73786, object term_73201, object n_73200) { - -closureN_type c_732698; -c_732698.hdr.mark = gc_color_red; - c_732698.hdr.grayed = 0; -c_732698.tag = closureN_tag; - c_732698.fn = (function_type)__lambda_334; -c_732698.num_args = 1; -c_732698.num_elt = 7; -c_732698.elts = (object *)alloca(sizeof(object) * 7); -c_732698.elts[0] = ((closureN)self_73786)->elts[0]; -c_732698.elts[1] = ((closureN)self_73786)->elts[1]; -c_732698.elts[2] = n_73200; -c_732698.elts[3] = ((closureN)self_73786)->elts[2]; -c_732698.elts[4] = ((closureN)self_73786)->elts[3]; -c_732698.elts[5] = term_73201; -c_732698.elts[6] = ((closureN)self_73786)->elts[4]; - -return_closcall1(data,(closure)&c_732698, boolean_f);; -} - -static void __lambda_334(void *data, int argc, object self_73787, object lp_73202) { - -closureN_type c_732700; -c_732700.hdr.mark = gc_color_red; - c_732700.hdr.grayed = 0; -c_732700.tag = closureN_tag; - c_732700.fn = (function_type)__lambda_333; -c_732700.num_args = 1; -c_732700.num_elt = 7; -c_732700.elts = (object *)alloca(sizeof(object) * 7); -c_732700.elts[0] = ((closureN)self_73787)->elts[0]; -c_732700.elts[1] = ((closureN)self_73787)->elts[1]; -c_732700.elts[2] = ((closureN)self_73787)->elts[2]; -c_732700.elts[3] = ((closureN)self_73787)->elts[3]; -c_732700.elts[4] = ((closureN)self_73787)->elts[4]; -c_732700.elts[5] = ((closureN)self_73787)->elts[5]; -c_732700.elts[6] = ((closureN)self_73787)->elts[6]; - - -make_cell(c_732760,lp_73202); -return_closcall1(data,(closure)&c_732700, &c_732760);; -} - -static void __lambda_333(void *data, int argc, object self_73788, object lp_73202) { - -closureN_type c_732702; -c_732702.hdr.mark = gc_color_red; - c_732702.hdr.grayed = 0; -c_732702.tag = closureN_tag; - c_732702.fn = (function_type)__lambda_326; -c_732702.num_args = 1; -c_732702.num_elt = 8; -c_732702.elts = (object *)alloca(sizeof(object) * 8); -c_732702.elts[0] = ((closureN)self_73788)->elts[0]; -c_732702.elts[1] = ((closureN)self_73788)->elts[1]; -c_732702.elts[2] = lp_73202; -c_732702.elts[3] = ((closureN)self_73788)->elts[2]; -c_732702.elts[4] = ((closureN)self_73788)->elts[3]; -c_732702.elts[5] = ((closureN)self_73788)->elts[4]; -c_732702.elts[6] = ((closureN)self_73788)->elts[5]; -c_732702.elts[7] = ((closureN)self_73788)->elts[6]; - - -closureN_type c_732731; -c_732731.hdr.mark = gc_color_red; - c_732731.hdr.grayed = 0; -c_732731.tag = closureN_tag; - c_732731.fn = (function_type)__lambda_332; -c_732731.num_args = 2; -c_732731.num_elt = 1; -c_732731.elts = (object *)alloca(sizeof(object) * 1); -c_732731.elts[0] = lp_73202; - -return_closcall1(data,(closure)&c_732702, &c_732731);; -} - -static void __lambda_332(void *data, int argc, object self_73789, object k_73485, object term_73204, object n_73203) { - -closureN_type c_732733; -c_732733.hdr.mark = gc_color_red; - c_732733.hdr.grayed = 0; -c_732733.tag = closureN_tag; - c_732733.fn = (function_type)__lambda_331; -c_732733.num_args = 1; -c_732733.num_elt = 4; -c_732733.elts = (object *)alloca(sizeof(object) * 4); -c_732733.elts[0] = k_73485; -c_732733.elts[1] = ((closureN)self_73789)->elts[0]; -c_732733.elts[2] = n_73203; -c_732733.elts[3] = term_73204; - -return_closcall2(data, __glo_zero_127_scheme_base, &c_732733, n_73203);; -} - -static void __lambda_331(void *data, int argc, object self_73790, object r_73486) { - if( !eq(boolean_f, r_73486) ){ - return_closcall1(data, ((closureN)self_73790)->elts[0], ((closureN)self_73790)->elts[3]); -} else { - -closureN_type c_732738; -c_732738.hdr.mark = gc_color_red; - c_732738.hdr.grayed = 0; -c_732738.tag = closureN_tag; - c_732738.fn = (function_type)__lambda_330; -c_732738.num_args = 1; -c_732738.num_elt = 4; -c_732738.elts = (object *)alloca(sizeof(object) * 4); -c_732738.elts[0] = ((closureN)self_73790)->elts[0]; -c_732738.elts[1] = ((closureN)self_73790)->elts[1]; -c_732738.elts[2] = ((closureN)self_73790)->elts[2]; -c_732738.elts[3] = ((closureN)self_73790)->elts[3]; - -return_closcall1(data,(closure)&c_732738, quote_or);} -; -} - -static void __lambda_330(void *data, int argc, object self_73791, object r_73489) { - -closureN_type c_732740; -c_732740.hdr.mark = gc_color_red; - c_732740.hdr.grayed = 0; -c_732740.tag = closureN_tag; - c_732740.fn = (function_type)__lambda_329; -c_732740.num_args = 1; -c_732740.num_elt = 5; -c_732740.elts = (object *)alloca(sizeof(object) * 5); -c_732740.elts[0] = ((closureN)self_73791)->elts[0]; -c_732740.elts[1] = ((closureN)self_73791)->elts[1]; -c_732740.elts[2] = ((closureN)self_73791)->elts[2]; -c_732740.elts[3] = r_73489; -c_732740.elts[4] = ((closureN)self_73791)->elts[3]; - - -make_cons(c_732757,quote_f,nil); -return_closcall1(data,(closure)&c_732740, &c_732757);; -} - -static void __lambda_329(void *data, int argc, object self_73792, object r_73490) { - -closureN_type c_732742; -c_732742.hdr.mark = gc_color_red; - c_732742.hdr.grayed = 0; -c_732742.tag = closureN_tag; - c_732742.fn = (function_type)__lambda_328; -c_732742.num_args = 1; -c_732742.num_elt = 3; -c_732742.elts = (object *)alloca(sizeof(object) * 3); -c_732742.elts[0] = ((closureN)self_73792)->elts[0]; -c_732742.elts[1] = ((closureN)self_73792)->elts[1]; -c_732742.elts[2] = ((closureN)self_73792)->elts[2]; - -return_closcall4(data, __glo__list_scheme_base, &c_732742, ((closureN)self_73792)->elts[3], ((closureN)self_73792)->elts[4], r_73490);; -} - -static void __lambda_328(void *data, int argc, object self_73793, object r_73487) { - -closureN_type c_732744; -c_732744.hdr.mark = gc_color_red; - c_732744.hdr.grayed = 0; -c_732744.tag = closureN_tag; - c_732744.fn = (function_type)__lambda_327; -c_732744.num_args = 1; -c_732744.num_elt = 3; -c_732744.elts = (object *)alloca(sizeof(object) * 3); -c_732744.elts[0] = ((closureN)self_73793)->elts[0]; -c_732744.elts[1] = ((closureN)self_73793)->elts[1]; -c_732744.elts[2] = r_73487; - - -object c_732753 = Cyc_sub(data,(closure)&c_732744,2,((closureN)self_73793)->elts[2], obj_int2obj(1)); -return_closcall1(data,(closure)&c_732744, c_732753);; -} - -static void __lambda_327(void *data, int argc, object self_73794, object r_73488) { - return_closcall3(data, cell_get(((closureN)self_73794)->elts[1]), ((closureN)self_73794)->elts[0], ((closureN)self_73794)->elts[2], r_73488);; -} - -static void __lambda_326(void *data, int argc, object self_73795, object r_73484) { - -closureN_type c_732704; -c_732704.hdr.mark = gc_color_red; - c_732704.hdr.grayed = 0; -c_732704.tag = closureN_tag; - c_732704.fn = (function_type)__lambda_325; -c_732704.num_args = 1; -c_732704.num_elt = 8; -c_732704.elts = (object *)alloca(sizeof(object) * 8); -c_732704.elts[0] = ((closureN)self_73795)->elts[0]; -c_732704.elts[1] = ((closureN)self_73795)->elts[1]; -c_732704.elts[2] = ((closureN)self_73795)->elts[2]; -c_732704.elts[3] = ((closureN)self_73795)->elts[3]; -c_732704.elts[4] = ((closureN)self_73795)->elts[4]; -c_732704.elts[5] = ((closureN)self_73795)->elts[5]; -c_732704.elts[6] = ((closureN)self_73795)->elts[6]; -c_732704.elts[7] = ((closureN)self_73795)->elts[7]; - -return_closcall1(data,(closure)&c_732704, Cyc_set_car(data, ((closureN)self_73795)->elts[2], r_73484));; -} - -static void __lambda_325(void *data, int argc, object self_73796, object r_73483) { - -closureN_type c_732709; -c_732709.hdr.mark = gc_color_red; - c_732709.hdr.grayed = 0; -c_732709.tag = closureN_tag; - c_732709.fn = (function_type)__lambda_324; -c_732709.num_args = 1; -c_732709.num_elt = 5; -c_732709.elts = (object *)alloca(sizeof(object) * 5); -c_732709.elts[0] = ((closureN)self_73796)->elts[0]; -c_732709.elts[1] = ((closureN)self_73796)->elts[1]; -c_732709.elts[2] = ((closureN)self_73796)->elts[4]; -c_732709.elts[3] = ((closureN)self_73796)->elts[5]; -c_732709.elts[4] = ((closureN)self_73796)->elts[7]; - -return_closcall3(data, cell_get(((closureN)self_73796)->elts[2]), &c_732709, ((closureN)self_73796)->elts[6], ((closureN)self_73796)->elts[3]);; -} - -static void __lambda_324(void *data, int argc, object self_73797, object r_73482) { - -closureN_type c_732714; -c_732714.hdr.mark = gc_color_red; - c_732714.hdr.grayed = 0; -c_732714.tag = closureN_tag; - c_732714.fn = (function_type)__lambda_323; -c_732714.num_args = 1; -c_732714.num_elt = 4; -c_732714.elts = (object *)alloca(sizeof(object) * 4); -c_732714.elts[0] = ((closureN)self_73797)->elts[0]; -c_732714.elts[1] = ((closureN)self_73797)->elts[1]; -c_732714.elts[2] = ((closureN)self_73797)->elts[2]; -c_732714.elts[3] = ((closureN)self_73797)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73797)->elts[4]), &c_732714, r_73482);; -} - -static void __lambda_323(void *data, int argc, object self_73798, object r_73481) { - -closureN_type c_732719; -c_732719.hdr.mark = gc_color_red; - c_732719.hdr.grayed = 0; -c_732719.tag = closureN_tag; - c_732719.fn = (function_type)__lambda_322; -c_732719.num_args = 1; -c_732719.num_elt = 2; -c_732719.elts = (object *)alloca(sizeof(object) * 2); -c_732719.elts[0] = ((closureN)self_73798)->elts[1]; -c_732719.elts[1] = ((closureN)self_73798)->elts[3]; - -return_closcall3(data, cell_get(((closureN)self_73798)->elts[0]), &c_732719, ((closureN)self_73798)->elts[2], r_73481);; -} - -static void __lambda_322(void *data, int argc, object self_73799, object term_73205) { - return_closcall2(data, cell_get(((closureN)self_73799)->elts[1]), ((closureN)self_73799)->elts[0], term_73205);; -} - -static void __lambda_321(void *data, int argc, object self_73800, object r_73477) { - -closureN_type c_731547; -c_731547.hdr.mark = gc_color_red; - c_731547.hdr.grayed = 0; -c_731547.tag = closureN_tag; - c_731547.fn = (function_type)__lambda_320; -c_731547.num_args = 1; -c_731547.num_elt = 30; -c_731547.elts = (object *)alloca(sizeof(object) * 30); -c_731547.elts[0] = ((closureN)self_73800)->elts[0]; -c_731547.elts[1] = ((closureN)self_73800)->elts[1]; -c_731547.elts[2] = ((closureN)self_73800)->elts[2]; -c_731547.elts[3] = ((closureN)self_73800)->elts[3]; -c_731547.elts[4] = ((closureN)self_73800)->elts[4]; -c_731547.elts[5] = ((closureN)self_73800)->elts[5]; -c_731547.elts[6] = ((closureN)self_73800)->elts[6]; -c_731547.elts[7] = ((closureN)self_73800)->elts[7]; -c_731547.elts[8] = ((closureN)self_73800)->elts[8]; -c_731547.elts[9] = ((closureN)self_73800)->elts[9]; -c_731547.elts[10] = ((closureN)self_73800)->elts[10]; -c_731547.elts[11] = ((closureN)self_73800)->elts[11]; -c_731547.elts[12] = ((closureN)self_73800)->elts[12]; -c_731547.elts[13] = ((closureN)self_73800)->elts[13]; -c_731547.elts[14] = ((closureN)self_73800)->elts[14]; -c_731547.elts[15] = ((closureN)self_73800)->elts[15]; -c_731547.elts[16] = ((closureN)self_73800)->elts[16]; -c_731547.elts[17] = ((closureN)self_73800)->elts[17]; -c_731547.elts[18] = ((closureN)self_73800)->elts[18]; -c_731547.elts[19] = ((closureN)self_73800)->elts[19]; -c_731547.elts[20] = ((closureN)self_73800)->elts[20]; -c_731547.elts[21] = ((closureN)self_73800)->elts[21]; -c_731547.elts[22] = ((closureN)self_73800)->elts[22]; -c_731547.elts[23] = ((closureN)self_73800)->elts[23]; -c_731547.elts[24] = ((closureN)self_73800)->elts[24]; -c_731547.elts[25] = ((closureN)self_73800)->elts[25]; -c_731547.elts[26] = ((closureN)self_73800)->elts[26]; -c_731547.elts[27] = ((closureN)self_73800)->elts[27]; -c_731547.elts[28] = ((closureN)self_73800)->elts[28]; -c_731547.elts[29] = ((closureN)self_73800)->elts[29]; - -return_closcall1(data,(closure)&c_731547, Cyc_set_car(data, ((closureN)self_73800)->elts[22], r_73477));; -} - -static void __lambda_320(void *data, int argc, object self_73801, object r_73280) { - -closureN_type c_731549; -c_731549.hdr.mark = gc_color_red; - c_731549.hdr.grayed = 0; -c_731549.tag = closureN_tag; - c_731549.fn = (function_type)__lambda_309; -c_731549.num_args = 1; -c_731549.num_elt = 30; -c_731549.elts = (object *)alloca(sizeof(object) * 30); -c_731549.elts[0] = ((closureN)self_73801)->elts[0]; -c_731549.elts[1] = ((closureN)self_73801)->elts[1]; -c_731549.elts[2] = ((closureN)self_73801)->elts[2]; -c_731549.elts[3] = ((closureN)self_73801)->elts[3]; -c_731549.elts[4] = ((closureN)self_73801)->elts[4]; -c_731549.elts[5] = ((closureN)self_73801)->elts[5]; -c_731549.elts[6] = ((closureN)self_73801)->elts[6]; -c_731549.elts[7] = ((closureN)self_73801)->elts[7]; -c_731549.elts[8] = ((closureN)self_73801)->elts[8]; -c_731549.elts[9] = ((closureN)self_73801)->elts[9]; -c_731549.elts[10] = ((closureN)self_73801)->elts[10]; -c_731549.elts[11] = ((closureN)self_73801)->elts[11]; -c_731549.elts[12] = ((closureN)self_73801)->elts[12]; -c_731549.elts[13] = ((closureN)self_73801)->elts[13]; -c_731549.elts[14] = ((closureN)self_73801)->elts[14]; -c_731549.elts[15] = ((closureN)self_73801)->elts[15]; -c_731549.elts[16] = ((closureN)self_73801)->elts[16]; -c_731549.elts[17] = ((closureN)self_73801)->elts[17]; -c_731549.elts[18] = ((closureN)self_73801)->elts[18]; -c_731549.elts[19] = ((closureN)self_73801)->elts[19]; -c_731549.elts[20] = ((closureN)self_73801)->elts[20]; -c_731549.elts[21] = ((closureN)self_73801)->elts[21]; -c_731549.elts[22] = ((closureN)self_73801)->elts[22]; -c_731549.elts[23] = ((closureN)self_73801)->elts[23]; -c_731549.elts[24] = ((closureN)self_73801)->elts[24]; -c_731549.elts[25] = ((closureN)self_73801)->elts[25]; -c_731549.elts[26] = ((closureN)self_73801)->elts[26]; -c_731549.elts[27] = ((closureN)self_73801)->elts[27]; -c_731549.elts[28] = ((closureN)self_73801)->elts[28]; -c_731549.elts[29] = ((closureN)self_73801)->elts[29]; - - -closureN_type c_732638; -c_732638.hdr.mark = gc_color_red; - c_732638.hdr.grayed = 0; -c_732638.tag = closureN_tag; - c_732638.fn = (function_type)__lambda_319; -c_732638.num_args = 1; -c_732638.num_elt = 2; -c_732638.elts = (object *)alloca(sizeof(object) * 2); -c_732638.elts[0] = ((closureN)self_73801)->elts[25]; -c_732638.elts[1] = ((closureN)self_73801)->elts[26]; - -return_closcall1(data,(closure)&c_731549, &c_732638);; -} - -static void __lambda_319(void *data, int argc, object self_73802, object k_73469, object alist_73196) { - -closureN_type c_732640; -c_732640.hdr.mark = gc_color_red; - c_732640.hdr.grayed = 0; -c_732640.tag = closureN_tag; - c_732640.fn = (function_type)__lambda_318; -c_732640.num_args = 1; -c_732640.num_elt = 4; -c_732640.elts = (object *)alloca(sizeof(object) * 4); -c_732640.elts[0] = alist_73196; -c_732640.elts[1] = k_73469; -c_732640.elts[2] = ((closureN)self_73802)->elts[0]; -c_732640.elts[3] = ((closureN)self_73802)->elts[1]; - -return_closcall1(data,(closure)&c_732640, Cyc_is_null(alist_73196));; -} - -static void __lambda_318(void *data, int argc, object self_73803, object r_73470) { - if( !eq(boolean_f, r_73470) ){ - -closureN_type c_732642; -c_732642.hdr.mark = gc_color_red; - c_732642.hdr.grayed = 0; -c_732642.tag = closureN_tag; - c_732642.fn = (function_type)__lambda_310; -c_732642.num_args = 0; -c_732642.num_elt = 1; -c_732642.elts = (object *)alloca(sizeof(object) * 1); -c_732642.elts[0] = ((closureN)self_73803)->elts[1]; - -return_closcall0(data,(closure)&c_732642); -} else { - -closureN_type c_732646; -c_732646.hdr.mark = gc_color_red; - c_732646.hdr.grayed = 0; -c_732646.tag = closureN_tag; - c_732646.fn = (function_type)__lambda_317; -c_732646.num_args = 0; -c_732646.num_elt = 4; -c_732646.elts = (object *)alloca(sizeof(object) * 4); -c_732646.elts[0] = ((closureN)self_73803)->elts[0]; -c_732646.elts[1] = ((closureN)self_73803)->elts[1]; -c_732646.elts[2] = ((closureN)self_73803)->elts[2]; -c_732646.elts[3] = ((closureN)self_73803)->elts[3]; - -return_closcall0(data,(closure)&c_732646);} -; -} - -static void __lambda_317(void *data, int argc, object self_73804) { - -closureN_type c_732648; -c_732648.hdr.mark = gc_color_red; - c_732648.hdr.grayed = 0; -c_732648.tag = closureN_tag; - c_732648.fn = (function_type)__lambda_316; -c_732648.num_args = 1; -c_732648.num_elt = 4; -c_732648.elts = (object *)alloca(sizeof(object) * 4); -c_732648.elts[0] = ((closureN)self_73804)->elts[0]; -c_732648.elts[1] = ((closureN)self_73804)->elts[1]; -c_732648.elts[2] = ((closureN)self_73804)->elts[2]; -c_732648.elts[3] = ((closureN)self_73804)->elts[3]; - -return_closcall1(data,(closure)&c_732648, caar(((closureN)self_73804)->elts[0]));; -} - -static void __lambda_316(void *data, int argc, object self_73805, object r_73474) { - -closureN_type c_732650; -c_732650.hdr.mark = gc_color_red; - c_732650.hdr.grayed = 0; -c_732650.tag = closureN_tag; - c_732650.fn = (function_type)__lambda_315; -c_732650.num_args = 1; -c_732650.num_elt = 5; -c_732650.elts = (object *)alloca(sizeof(object) * 5); -c_732650.elts[0] = ((closureN)self_73805)->elts[0]; -c_732650.elts[1] = ((closureN)self_73805)->elts[1]; -c_732650.elts[2] = r_73474; -c_732650.elts[3] = ((closureN)self_73805)->elts[2]; -c_732650.elts[4] = ((closureN)self_73805)->elts[3]; - -return_closcall1(data,(closure)&c_732650, cdar(((closureN)self_73805)->elts[0]));; -} - -static void __lambda_315(void *data, int argc, object self_73806, object r_73476) { - -closureN_type c_732655; -c_732655.hdr.mark = gc_color_red; - c_732655.hdr.grayed = 0; -c_732655.tag = closureN_tag; - c_732655.fn = (function_type)__lambda_314; -c_732655.num_args = 1; -c_732655.num_elt = 4; -c_732655.elts = (object *)alloca(sizeof(object) * 4); -c_732655.elts[0] = ((closureN)self_73806)->elts[0]; -c_732655.elts[1] = ((closureN)self_73806)->elts[1]; -c_732655.elts[2] = ((closureN)self_73806)->elts[2]; -c_732655.elts[3] = ((closureN)self_73806)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73806)->elts[4]), &c_732655, r_73476);; -} - -static void __lambda_314(void *data, int argc, object self_73807, object r_73475) { - -closureN_type c_732657; -c_732657.hdr.mark = gc_color_red; - c_732657.hdr.grayed = 0; -c_732657.tag = closureN_tag; - c_732657.fn = (function_type)__lambda_313; -c_732657.num_args = 1; -c_732657.num_elt = 3; -c_732657.elts = (object *)alloca(sizeof(object) * 3); -c_732657.elts[0] = ((closureN)self_73807)->elts[0]; -c_732657.elts[1] = ((closureN)self_73807)->elts[1]; -c_732657.elts[2] = ((closureN)self_73807)->elts[3]; - - -make_cons(c_732676,((closureN)self_73807)->elts[2], r_73475); -return_closcall1(data,(closure)&c_732657, &c_732676);; -} - -static void __lambda_313(void *data, int argc, object self_73808, object r_73471) { - -closureN_type c_732659; -c_732659.hdr.mark = gc_color_red; - c_732659.hdr.grayed = 0; -c_732659.tag = closureN_tag; - c_732659.fn = (function_type)__lambda_312; -c_732659.num_args = 1; -c_732659.num_elt = 3; -c_732659.elts = (object *)alloca(sizeof(object) * 3); -c_732659.elts[0] = ((closureN)self_73808)->elts[1]; -c_732659.elts[1] = r_73471; -c_732659.elts[2] = ((closureN)self_73808)->elts[2]; - -return_closcall1(data,(closure)&c_732659, cdr(((closureN)self_73808)->elts[0]));; -} - -static void __lambda_312(void *data, int argc, object self_73809, object r_73473) { - -closureN_type c_732664; -c_732664.hdr.mark = gc_color_red; - c_732664.hdr.grayed = 0; -c_732664.tag = closureN_tag; - c_732664.fn = (function_type)__lambda_311; -c_732664.num_args = 1; -c_732664.num_elt = 2; -c_732664.elts = (object *)alloca(sizeof(object) * 2); -c_732664.elts[0] = ((closureN)self_73809)->elts[0]; -c_732664.elts[1] = ((closureN)self_73809)->elts[1]; - -return_closcall2(data, cell_get(((closureN)self_73809)->elts[2]), &c_732664, r_73473);; -} - -static void __lambda_311(void *data, int argc, object self_73810, object r_73472) { - -make_cons(c_732669,((closureN)self_73810)->elts[1], r_73472); -return_closcall1(data, ((closureN)self_73810)->elts[0], &c_732669);; -} - -static void __lambda_310(void *data, int argc, object self_73811) { - return_closcall1(data, ((closureN)self_73811)->elts[0], nil);; -} - -static void __lambda_309(void *data, int argc, object self_73812, object r_73468) { - -closureN_type c_731551; -c_731551.hdr.mark = gc_color_red; - c_731551.hdr.grayed = 0; -c_731551.tag = closureN_tag; - c_731551.fn = (function_type)__lambda_308; -c_731551.num_args = 1; -c_731551.num_elt = 29; -c_731551.elts = (object *)alloca(sizeof(object) * 29); -c_731551.elts[0] = ((closureN)self_73812)->elts[0]; -c_731551.elts[1] = ((closureN)self_73812)->elts[1]; -c_731551.elts[2] = ((closureN)self_73812)->elts[2]; -c_731551.elts[3] = ((closureN)self_73812)->elts[3]; -c_731551.elts[4] = ((closureN)self_73812)->elts[4]; -c_731551.elts[5] = ((closureN)self_73812)->elts[5]; -c_731551.elts[6] = ((closureN)self_73812)->elts[6]; -c_731551.elts[7] = ((closureN)self_73812)->elts[7]; -c_731551.elts[8] = ((closureN)self_73812)->elts[8]; -c_731551.elts[9] = ((closureN)self_73812)->elts[9]; -c_731551.elts[10] = ((closureN)self_73812)->elts[10]; -c_731551.elts[11] = ((closureN)self_73812)->elts[11]; -c_731551.elts[12] = ((closureN)self_73812)->elts[12]; -c_731551.elts[13] = ((closureN)self_73812)->elts[13]; -c_731551.elts[14] = ((closureN)self_73812)->elts[14]; -c_731551.elts[15] = ((closureN)self_73812)->elts[15]; -c_731551.elts[16] = ((closureN)self_73812)->elts[16]; -c_731551.elts[17] = ((closureN)self_73812)->elts[17]; -c_731551.elts[18] = ((closureN)self_73812)->elts[18]; -c_731551.elts[19] = ((closureN)self_73812)->elts[19]; -c_731551.elts[20] = ((closureN)self_73812)->elts[20]; -c_731551.elts[21] = ((closureN)self_73812)->elts[21]; -c_731551.elts[22] = ((closureN)self_73812)->elts[22]; -c_731551.elts[23] = ((closureN)self_73812)->elts[23]; -c_731551.elts[24] = ((closureN)self_73812)->elts[24]; -c_731551.elts[25] = ((closureN)self_73812)->elts[26]; -c_731551.elts[26] = ((closureN)self_73812)->elts[27]; -c_731551.elts[27] = ((closureN)self_73812)->elts[28]; -c_731551.elts[28] = ((closureN)self_73812)->elts[29]; - -return_closcall1(data,(closure)&c_731551, Cyc_set_car(data, ((closureN)self_73812)->elts[25], r_73468));; -} - -static void __lambda_308(void *data, int argc, object self_73813, object r_73281) { - -closureN_type c_731553; -c_731553.hdr.mark = gc_color_red; - c_731553.hdr.grayed = 0; -c_731553.tag = closureN_tag; - c_731553.fn = (function_type)__lambda_299; -c_731553.num_args = 1; -c_731553.num_elt = 29; -c_731553.elts = (object *)alloca(sizeof(object) * 29); -c_731553.elts[0] = ((closureN)self_73813)->elts[0]; -c_731553.elts[1] = ((closureN)self_73813)->elts[1]; -c_731553.elts[2] = ((closureN)self_73813)->elts[2]; -c_731553.elts[3] = ((closureN)self_73813)->elts[3]; -c_731553.elts[4] = ((closureN)self_73813)->elts[4]; -c_731553.elts[5] = ((closureN)self_73813)->elts[5]; -c_731553.elts[6] = ((closureN)self_73813)->elts[6]; -c_731553.elts[7] = ((closureN)self_73813)->elts[7]; -c_731553.elts[8] = ((closureN)self_73813)->elts[8]; -c_731553.elts[9] = ((closureN)self_73813)->elts[9]; -c_731553.elts[10] = ((closureN)self_73813)->elts[10]; -c_731553.elts[11] = ((closureN)self_73813)->elts[11]; -c_731553.elts[12] = ((closureN)self_73813)->elts[12]; -c_731553.elts[13] = ((closureN)self_73813)->elts[13]; -c_731553.elts[14] = ((closureN)self_73813)->elts[14]; -c_731553.elts[15] = ((closureN)self_73813)->elts[15]; -c_731553.elts[16] = ((closureN)self_73813)->elts[16]; -c_731553.elts[17] = ((closureN)self_73813)->elts[17]; -c_731553.elts[18] = ((closureN)self_73813)->elts[18]; -c_731553.elts[19] = ((closureN)self_73813)->elts[19]; -c_731553.elts[20] = ((closureN)self_73813)->elts[20]; -c_731553.elts[21] = ((closureN)self_73813)->elts[21]; -c_731553.elts[22] = ((closureN)self_73813)->elts[22]; -c_731553.elts[23] = ((closureN)self_73813)->elts[23]; -c_731553.elts[24] = ((closureN)self_73813)->elts[24]; -c_731553.elts[25] = ((closureN)self_73813)->elts[25]; -c_731553.elts[26] = ((closureN)self_73813)->elts[26]; -c_731553.elts[27] = ((closureN)self_73813)->elts[27]; -c_731553.elts[28] = ((closureN)self_73813)->elts[28]; - - -closureN_type c_732591; -c_732591.hdr.mark = gc_color_red; - c_732591.hdr.grayed = 0; -c_732591.tag = closureN_tag; - c_732591.fn = (function_type)__lambda_307; -c_732591.num_args = 2; -c_732591.num_elt = 1; -c_732591.elts = (object *)alloca(sizeof(object) * 1); -c_732591.elts[0] = ((closureN)self_73813)->elts[2]; - -return_closcall1(data,(closure)&c_731553, &c_732591);; -} - -static void __lambda_307(void *data, int argc, object self_73814, object k_73462, object alist_73194, object term_73193) { - -closureN_type c_732593; -c_732593.hdr.mark = gc_color_red; - c_732593.hdr.grayed = 0; -c_732593.tag = closureN_tag; - c_732593.fn = (function_type)__lambda_306; -c_732593.num_args = 1; -c_732593.num_elt = 4; -c_732593.elts = (object *)alloca(sizeof(object) * 4); -c_732593.elts[0] = alist_73194; -c_732593.elts[1] = ((closureN)self_73814)->elts[0]; -c_732593.elts[2] = k_73462; -c_732593.elts[3] = term_73193; - -return_closcall1(data,(closure)&c_732593, Cyc_is_cons(term_73193));; -} - -static void __lambda_306(void *data, int argc, object self_73815, object r_73463) { - if( !eq(boolean_f, r_73463) ){ - -closureN_type c_732595; -c_732595.hdr.mark = gc_color_red; - c_732595.hdr.grayed = 0; -c_732595.tag = closureN_tag; - c_732595.fn = (function_type)__lambda_303; -c_732595.num_args = 0; -c_732595.num_elt = 4; -c_732595.elts = (object *)alloca(sizeof(object) * 4); -c_732595.elts[0] = ((closureN)self_73815)->elts[0]; -c_732595.elts[1] = ((closureN)self_73815)->elts[1]; -c_732595.elts[2] = ((closureN)self_73815)->elts[2]; -c_732595.elts[3] = ((closureN)self_73815)->elts[3]; - -return_closcall0(data,(closure)&c_732595); -} else { - -closureN_type c_732619; -c_732619.hdr.mark = gc_color_red; - c_732619.hdr.grayed = 0; -c_732619.tag = closureN_tag; - c_732619.fn = (function_type)__lambda_305; -c_732619.num_args = 0; -c_732619.num_elt = 3; -c_732619.elts = (object *)alloca(sizeof(object) * 3); -c_732619.elts[0] = ((closureN)self_73815)->elts[0]; -c_732619.elts[1] = ((closureN)self_73815)->elts[2]; -c_732619.elts[2] = ((closureN)self_73815)->elts[3]; - -return_closcall0(data,(closure)&c_732619);} -; -} - -static void __lambda_305(void *data, int argc, object self_73816) { - -closureN_type c_732621; -c_732621.hdr.mark = gc_color_red; - c_732621.hdr.grayed = 0; -c_732621.tag = closureN_tag; - c_732621.fn = (function_type)__lambda_304; -c_732621.num_args = 1; -c_732621.num_elt = 2; -c_732621.elts = (object *)alloca(sizeof(object) * 2); -c_732621.elts[0] = ((closureN)self_73816)->elts[1]; -c_732621.elts[1] = ((closureN)self_73816)->elts[2]; - -return_closcall1(data,(closure)&c_732621, assq(data, ((closureN)self_73816)->elts[2], ((closureN)self_73816)->elts[0]));; -} - -static void __lambda_304(void *data, int argc, object self_73817, object temp_91temp_73195) { - if( !eq(boolean_f, temp_91temp_73195) ){ - return_closcall1(data, ((closureN)self_73817)->elts[0], cdr(temp_91temp_73195)); -} else { - return_closcall1(data, ((closureN)self_73817)->elts[0], ((closureN)self_73817)->elts[1]);} -; -} - -static void __lambda_303(void *data, int argc, object self_73818) { - -closureN_type c_732597; -c_732597.hdr.mark = gc_color_red; - c_732597.hdr.grayed = 0; -c_732597.tag = closureN_tag; - c_732597.fn = (function_type)__lambda_302; -c_732597.num_args = 1; -c_732597.num_elt = 4; -c_732597.elts = (object *)alloca(sizeof(object) * 4); -c_732597.elts[0] = ((closureN)self_73818)->elts[0]; -c_732597.elts[1] = ((closureN)self_73818)->elts[1]; -c_732597.elts[2] = ((closureN)self_73818)->elts[2]; -c_732597.elts[3] = ((closureN)self_73818)->elts[3]; - -return_closcall1(data,(closure)&c_732597, car(((closureN)self_73818)->elts[3]));; -} - -static void __lambda_302(void *data, int argc, object self_73819, object r_73464) { - -closureN_type c_732599; -c_732599.hdr.mark = gc_color_red; - c_732599.hdr.grayed = 0; -c_732599.tag = closureN_tag; - c_732599.fn = (function_type)__lambda_301; -c_732599.num_args = 1; -c_732599.num_elt = 4; -c_732599.elts = (object *)alloca(sizeof(object) * 4); -c_732599.elts[0] = ((closureN)self_73819)->elts[0]; -c_732599.elts[1] = ((closureN)self_73819)->elts[1]; -c_732599.elts[2] = ((closureN)self_73819)->elts[2]; -c_732599.elts[3] = r_73464; - -return_closcall1(data,(closure)&c_732599, cdr(((closureN)self_73819)->elts[3]));; -} - -static void __lambda_301(void *data, int argc, object self_73820, object r_73466) { - -closureN_type c_732604; -c_732604.hdr.mark = gc_color_red; - c_732604.hdr.grayed = 0; -c_732604.tag = closureN_tag; - c_732604.fn = (function_type)__lambda_300; -c_732604.num_args = 1; -c_732604.num_elt = 2; -c_732604.elts = (object *)alloca(sizeof(object) * 2); -c_732604.elts[0] = ((closureN)self_73820)->elts[2]; -c_732604.elts[1] = ((closureN)self_73820)->elts[3]; - -return_closcall3(data, cell_get(((closureN)self_73820)->elts[1]), &c_732604, ((closureN)self_73820)->elts[0], r_73466);; -} - -static void __lambda_300(void *data, int argc, object self_73821, object r_73465) { - -make_cons(c_732609,((closureN)self_73821)->elts[1], r_73465); -return_closcall1(data, ((closureN)self_73821)->elts[0], &c_732609);; -} - -static void __lambda_299(void *data, int argc, object self_73822, object r_73461) { - -closureN_type c_731555; -c_731555.hdr.mark = gc_color_red; - c_731555.hdr.grayed = 0; -c_731555.tag = closureN_tag; - c_731555.fn = (function_type)__lambda_298; -c_731555.num_args = 1; -c_731555.num_elt = 29; -c_731555.elts = (object *)alloca(sizeof(object) * 29); -c_731555.elts[0] = ((closureN)self_73822)->elts[0]; -c_731555.elts[1] = ((closureN)self_73822)->elts[1]; -c_731555.elts[2] = ((closureN)self_73822)->elts[2]; -c_731555.elts[3] = ((closureN)self_73822)->elts[3]; -c_731555.elts[4] = ((closureN)self_73822)->elts[4]; -c_731555.elts[5] = ((closureN)self_73822)->elts[5]; -c_731555.elts[6] = ((closureN)self_73822)->elts[6]; -c_731555.elts[7] = ((closureN)self_73822)->elts[7]; -c_731555.elts[8] = ((closureN)self_73822)->elts[8]; -c_731555.elts[9] = ((closureN)self_73822)->elts[9]; -c_731555.elts[10] = ((closureN)self_73822)->elts[10]; -c_731555.elts[11] = ((closureN)self_73822)->elts[11]; -c_731555.elts[12] = ((closureN)self_73822)->elts[12]; -c_731555.elts[13] = ((closureN)self_73822)->elts[13]; -c_731555.elts[14] = ((closureN)self_73822)->elts[14]; -c_731555.elts[15] = ((closureN)self_73822)->elts[15]; -c_731555.elts[16] = ((closureN)self_73822)->elts[16]; -c_731555.elts[17] = ((closureN)self_73822)->elts[17]; -c_731555.elts[18] = ((closureN)self_73822)->elts[18]; -c_731555.elts[19] = ((closureN)self_73822)->elts[19]; -c_731555.elts[20] = ((closureN)self_73822)->elts[20]; -c_731555.elts[21] = ((closureN)self_73822)->elts[21]; -c_731555.elts[22] = ((closureN)self_73822)->elts[22]; -c_731555.elts[23] = ((closureN)self_73822)->elts[23]; -c_731555.elts[24] = ((closureN)self_73822)->elts[24]; -c_731555.elts[25] = ((closureN)self_73822)->elts[25]; -c_731555.elts[26] = ((closureN)self_73822)->elts[26]; -c_731555.elts[27] = ((closureN)self_73822)->elts[27]; -c_731555.elts[28] = ((closureN)self_73822)->elts[28]; - -return_closcall1(data,(closure)&c_731555, Cyc_set_car(data, ((closureN)self_73822)->elts[1], r_73461));; -} - -static void __lambda_298(void *data, int argc, object self_73823, object r_73282) { - -closureN_type c_731557; -c_731557.hdr.mark = gc_color_red; - c_731557.hdr.grayed = 0; -c_731557.tag = closureN_tag; - c_731557.fn = (function_type)__lambda_289; -c_731557.num_args = 1; -c_731557.num_elt = 29; -c_731557.elts = (object *)alloca(sizeof(object) * 29); -c_731557.elts[0] = ((closureN)self_73823)->elts[0]; -c_731557.elts[1] = ((closureN)self_73823)->elts[1]; -c_731557.elts[2] = ((closureN)self_73823)->elts[2]; -c_731557.elts[3] = ((closureN)self_73823)->elts[3]; -c_731557.elts[4] = ((closureN)self_73823)->elts[4]; -c_731557.elts[5] = ((closureN)self_73823)->elts[5]; -c_731557.elts[6] = ((closureN)self_73823)->elts[6]; -c_731557.elts[7] = ((closureN)self_73823)->elts[7]; -c_731557.elts[8] = ((closureN)self_73823)->elts[8]; -c_731557.elts[9] = ((closureN)self_73823)->elts[9]; -c_731557.elts[10] = ((closureN)self_73823)->elts[10]; -c_731557.elts[11] = ((closureN)self_73823)->elts[11]; -c_731557.elts[12] = ((closureN)self_73823)->elts[12]; -c_731557.elts[13] = ((closureN)self_73823)->elts[13]; -c_731557.elts[14] = ((closureN)self_73823)->elts[14]; -c_731557.elts[15] = ((closureN)self_73823)->elts[15]; -c_731557.elts[16] = ((closureN)self_73823)->elts[16]; -c_731557.elts[17] = ((closureN)self_73823)->elts[17]; -c_731557.elts[18] = ((closureN)self_73823)->elts[18]; -c_731557.elts[19] = ((closureN)self_73823)->elts[19]; -c_731557.elts[20] = ((closureN)self_73823)->elts[20]; -c_731557.elts[21] = ((closureN)self_73823)->elts[21]; -c_731557.elts[22] = ((closureN)self_73823)->elts[22]; -c_731557.elts[23] = ((closureN)self_73823)->elts[23]; -c_731557.elts[24] = ((closureN)self_73823)->elts[24]; -c_731557.elts[25] = ((closureN)self_73823)->elts[25]; -c_731557.elts[26] = ((closureN)self_73823)->elts[26]; -c_731557.elts[27] = ((closureN)self_73823)->elts[27]; -c_731557.elts[28] = ((closureN)self_73823)->elts[28]; - - -closureN_type c_732549; -c_732549.hdr.mark = gc_color_red; - c_732549.hdr.grayed = 0; -c_732549.tag = closureN_tag; - c_732549.fn = (function_type)__lambda_297; -c_732549.num_args = 2; -c_732549.num_elt = 2; -c_732549.elts = (object *)alloca(sizeof(object) * 2); -c_732549.elts[0] = ((closureN)self_73823)->elts[1]; -c_732549.elts[1] = ((closureN)self_73823)->elts[2]; - -return_closcall1(data,(closure)&c_731557, &c_732549);; -} - -static void __lambda_297(void *data, int argc, object self_73824, object k_73455, object alist_73192, object lst_73191) { - -closureN_type c_732551; -c_732551.hdr.mark = gc_color_red; - c_732551.hdr.grayed = 0; -c_732551.tag = closureN_tag; - c_732551.fn = (function_type)__lambda_296; -c_732551.num_args = 1; -c_732551.num_elt = 5; -c_732551.elts = (object *)alloca(sizeof(object) * 5); -c_732551.elts[0] = alist_73192; -c_732551.elts[1] = ((closureN)self_73824)->elts[0]; -c_732551.elts[2] = ((closureN)self_73824)->elts[1]; -c_732551.elts[3] = k_73455; -c_732551.elts[4] = lst_73191; - -return_closcall1(data,(closure)&c_732551, Cyc_is_null(lst_73191));; -} - -static void __lambda_296(void *data, int argc, object self_73825, object r_73456) { - if( !eq(boolean_f, r_73456) ){ - -closureN_type c_732553; -c_732553.hdr.mark = gc_color_red; - c_732553.hdr.grayed = 0; -c_732553.tag = closureN_tag; - c_732553.fn = (function_type)__lambda_290; -c_732553.num_args = 0; -c_732553.num_elt = 1; -c_732553.elts = (object *)alloca(sizeof(object) * 1); -c_732553.elts[0] = ((closureN)self_73825)->elts[3]; - -return_closcall0(data,(closure)&c_732553); -} else { - -closureN_type c_732557; -c_732557.hdr.mark = gc_color_red; - c_732557.hdr.grayed = 0; -c_732557.tag = closureN_tag; - c_732557.fn = (function_type)__lambda_295; -c_732557.num_args = 0; -c_732557.num_elt = 5; -c_732557.elts = (object *)alloca(sizeof(object) * 5); -c_732557.elts[0] = ((closureN)self_73825)->elts[0]; -c_732557.elts[1] = ((closureN)self_73825)->elts[1]; -c_732557.elts[2] = ((closureN)self_73825)->elts[2]; -c_732557.elts[3] = ((closureN)self_73825)->elts[3]; -c_732557.elts[4] = ((closureN)self_73825)->elts[4]; - -return_closcall0(data,(closure)&c_732557);} -; -} - -static void __lambda_295(void *data, int argc, object self_73826) { - -closureN_type c_732559; -c_732559.hdr.mark = gc_color_red; - c_732559.hdr.grayed = 0; -c_732559.tag = closureN_tag; - c_732559.fn = (function_type)__lambda_294; -c_732559.num_args = 1; -c_732559.num_elt = 5; -c_732559.elts = (object *)alloca(sizeof(object) * 5); -c_732559.elts[0] = ((closureN)self_73826)->elts[0]; -c_732559.elts[1] = ((closureN)self_73826)->elts[1]; -c_732559.elts[2] = ((closureN)self_73826)->elts[2]; -c_732559.elts[3] = ((closureN)self_73826)->elts[3]; -c_732559.elts[4] = ((closureN)self_73826)->elts[4]; - -return_closcall1(data,(closure)&c_732559, car(((closureN)self_73826)->elts[4]));; -} - -static void __lambda_294(void *data, int argc, object self_73827, object r_73460) { - -closureN_type c_732564; -c_732564.hdr.mark = gc_color_red; - c_732564.hdr.grayed = 0; -c_732564.tag = closureN_tag; - c_732564.fn = (function_type)__lambda_293; -c_732564.num_args = 1; -c_732564.num_elt = 4; -c_732564.elts = (object *)alloca(sizeof(object) * 4); -c_732564.elts[0] = ((closureN)self_73827)->elts[0]; -c_732564.elts[1] = ((closureN)self_73827)->elts[2]; -c_732564.elts[2] = ((closureN)self_73827)->elts[3]; -c_732564.elts[3] = ((closureN)self_73827)->elts[4]; - -return_closcall3(data, cell_get(((closureN)self_73827)->elts[1]), &c_732564, ((closureN)self_73827)->elts[0], r_73460);; -} - -static void __lambda_293(void *data, int argc, object self_73828, object r_73457) { - -closureN_type c_732566; -c_732566.hdr.mark = gc_color_red; - c_732566.hdr.grayed = 0; -c_732566.tag = closureN_tag; - c_732566.fn = (function_type)__lambda_292; -c_732566.num_args = 1; -c_732566.num_elt = 4; -c_732566.elts = (object *)alloca(sizeof(object) * 4); -c_732566.elts[0] = ((closureN)self_73828)->elts[0]; -c_732566.elts[1] = ((closureN)self_73828)->elts[1]; -c_732566.elts[2] = ((closureN)self_73828)->elts[2]; -c_732566.elts[3] = r_73457; - -return_closcall1(data,(closure)&c_732566, cdr(((closureN)self_73828)->elts[3]));; -} - -static void __lambda_292(void *data, int argc, object self_73829, object r_73459) { - -closureN_type c_732571; -c_732571.hdr.mark = gc_color_red; - c_732571.hdr.grayed = 0; -c_732571.tag = closureN_tag; - c_732571.fn = (function_type)__lambda_291; -c_732571.num_args = 1; -c_732571.num_elt = 2; -c_732571.elts = (object *)alloca(sizeof(object) * 2); -c_732571.elts[0] = ((closureN)self_73829)->elts[2]; -c_732571.elts[1] = ((closureN)self_73829)->elts[3]; - -return_closcall3(data, cell_get(((closureN)self_73829)->elts[1]), &c_732571, ((closureN)self_73829)->elts[0], r_73459);; -} - -static void __lambda_291(void *data, int argc, object self_73830, object r_73458) { - -make_cons(c_732576,((closureN)self_73830)->elts[1], r_73458); -return_closcall1(data, ((closureN)self_73830)->elts[0], &c_732576);; -} - -static void __lambda_290(void *data, int argc, object self_73831) { - return_closcall1(data, ((closureN)self_73831)->elts[0], nil);; -} - -static void __lambda_289(void *data, int argc, object self_73832, object r_73454) { - -closureN_type c_731559; -c_731559.hdr.mark = gc_color_red; - c_731559.hdr.grayed = 0; -c_731559.tag = closureN_tag; - c_731559.fn = (function_type)__lambda_288; -c_731559.num_args = 1; -c_731559.num_elt = 28; -c_731559.elts = (object *)alloca(sizeof(object) * 28); -c_731559.elts[0] = ((closureN)self_73832)->elts[0]; -c_731559.elts[1] = ((closureN)self_73832)->elts[1]; -c_731559.elts[2] = ((closureN)self_73832)->elts[3]; -c_731559.elts[3] = ((closureN)self_73832)->elts[4]; -c_731559.elts[4] = ((closureN)self_73832)->elts[5]; -c_731559.elts[5] = ((closureN)self_73832)->elts[6]; -c_731559.elts[6] = ((closureN)self_73832)->elts[7]; -c_731559.elts[7] = ((closureN)self_73832)->elts[8]; -c_731559.elts[8] = ((closureN)self_73832)->elts[9]; -c_731559.elts[9] = ((closureN)self_73832)->elts[10]; -c_731559.elts[10] = ((closureN)self_73832)->elts[11]; -c_731559.elts[11] = ((closureN)self_73832)->elts[12]; -c_731559.elts[12] = ((closureN)self_73832)->elts[13]; -c_731559.elts[13] = ((closureN)self_73832)->elts[14]; -c_731559.elts[14] = ((closureN)self_73832)->elts[15]; -c_731559.elts[15] = ((closureN)self_73832)->elts[16]; -c_731559.elts[16] = ((closureN)self_73832)->elts[17]; -c_731559.elts[17] = ((closureN)self_73832)->elts[18]; -c_731559.elts[18] = ((closureN)self_73832)->elts[19]; -c_731559.elts[19] = ((closureN)self_73832)->elts[20]; -c_731559.elts[20] = ((closureN)self_73832)->elts[21]; -c_731559.elts[21] = ((closureN)self_73832)->elts[22]; -c_731559.elts[22] = ((closureN)self_73832)->elts[23]; -c_731559.elts[23] = ((closureN)self_73832)->elts[24]; -c_731559.elts[24] = ((closureN)self_73832)->elts[25]; -c_731559.elts[25] = ((closureN)self_73832)->elts[26]; -c_731559.elts[26] = ((closureN)self_73832)->elts[27]; -c_731559.elts[27] = ((closureN)self_73832)->elts[28]; - -return_closcall1(data,(closure)&c_731559, Cyc_set_car(data, ((closureN)self_73832)->elts[2], r_73454));; -} - -static void __lambda_288(void *data, int argc, object self_73833, object r_73283) { - -closureN_type c_731561; -c_731561.hdr.mark = gc_color_red; - c_731561.hdr.grayed = 0; -c_731561.tag = closureN_tag; - c_731561.fn = (function_type)__lambda_283; -c_731561.num_args = 1; -c_731561.num_elt = 28; -c_731561.elts = (object *)alloca(sizeof(object) * 28); -c_731561.elts[0] = ((closureN)self_73833)->elts[0]; -c_731561.elts[1] = ((closureN)self_73833)->elts[1]; -c_731561.elts[2] = ((closureN)self_73833)->elts[2]; -c_731561.elts[3] = ((closureN)self_73833)->elts[3]; -c_731561.elts[4] = ((closureN)self_73833)->elts[4]; -c_731561.elts[5] = ((closureN)self_73833)->elts[5]; -c_731561.elts[6] = ((closureN)self_73833)->elts[6]; -c_731561.elts[7] = ((closureN)self_73833)->elts[7]; -c_731561.elts[8] = ((closureN)self_73833)->elts[8]; -c_731561.elts[9] = ((closureN)self_73833)->elts[9]; -c_731561.elts[10] = ((closureN)self_73833)->elts[10]; -c_731561.elts[11] = ((closureN)self_73833)->elts[11]; -c_731561.elts[12] = ((closureN)self_73833)->elts[12]; -c_731561.elts[13] = ((closureN)self_73833)->elts[13]; -c_731561.elts[14] = ((closureN)self_73833)->elts[14]; -c_731561.elts[15] = ((closureN)self_73833)->elts[15]; -c_731561.elts[16] = ((closureN)self_73833)->elts[16]; -c_731561.elts[17] = ((closureN)self_73833)->elts[17]; -c_731561.elts[18] = ((closureN)self_73833)->elts[18]; -c_731561.elts[19] = ((closureN)self_73833)->elts[19]; -c_731561.elts[20] = ((closureN)self_73833)->elts[20]; -c_731561.elts[21] = ((closureN)self_73833)->elts[21]; -c_731561.elts[22] = ((closureN)self_73833)->elts[22]; -c_731561.elts[23] = ((closureN)self_73833)->elts[23]; -c_731561.elts[24] = ((closureN)self_73833)->elts[24]; -c_731561.elts[25] = ((closureN)self_73833)->elts[25]; -c_731561.elts[26] = ((closureN)self_73833)->elts[26]; -c_731561.elts[27] = ((closureN)self_73833)->elts[27]; - - -closureN_type c_732529; -c_732529.hdr.mark = gc_color_red; - c_732529.hdr.grayed = 0; -c_732529.tag = closureN_tag; - c_732529.fn = (function_type)__lambda_287; -c_732529.num_args = 1; -c_732529.num_elt = 2; -c_732529.elts = (object *)alloca(sizeof(object) * 2); -c_732529.elts[0] = ((closureN)self_73833)->elts[9]; -c_732529.elts[1] = ((closureN)self_73833)->elts[16]; - -return_closcall1(data,(closure)&c_731561, &c_732529);; -} - -static void __lambda_287(void *data, int argc, object self_73834, object k_73450, object x_73190) { - -closureN_type c_732534; -c_732534.hdr.mark = gc_color_red; - c_732534.hdr.grayed = 0; -c_732534.tag = closureN_tag; - c_732534.fn = (function_type)__lambda_286; -c_732534.num_args = 1; -c_732534.num_elt = 2; -c_732534.elts = (object *)alloca(sizeof(object) * 2); -c_732534.elts[0] = k_73450; -c_732534.elts[1] = ((closureN)self_73834)->elts[1]; - -return_closcall2(data, cell_get(((closureN)self_73834)->elts[0]), &c_732534, x_73190);; -} - -static void __lambda_286(void *data, int argc, object self_73835, object r_73451) { - -closureN_type c_732536; -c_732536.hdr.mark = gc_color_red; - c_732536.hdr.grayed = 0; -c_732536.tag = closureN_tag; - c_732536.fn = (function_type)__lambda_285; -c_732536.num_args = 1; -c_732536.num_elt = 3; -c_732536.elts = (object *)alloca(sizeof(object) * 3); -c_732536.elts[0] = ((closureN)self_73835)->elts[0]; -c_732536.elts[1] = r_73451; -c_732536.elts[2] = ((closureN)self_73835)->elts[1]; - -return_closcall1(data,(closure)&c_732536, nil);; -} - -static void __lambda_285(void *data, int argc, object self_73836, object r_73452) { - -closureN_type c_732538; -c_732538.hdr.mark = gc_color_red; - c_732538.hdr.grayed = 0; -c_732538.tag = closureN_tag; - c_732538.fn = (function_type)__lambda_284; -c_732538.num_args = 1; -c_732538.num_elt = 4; -c_732538.elts = (object *)alloca(sizeof(object) * 4); -c_732538.elts[0] = ((closureN)self_73836)->elts[0]; -c_732538.elts[1] = ((closureN)self_73836)->elts[1]; -c_732538.elts[2] = r_73452; -c_732538.elts[3] = ((closureN)self_73836)->elts[2]; - -return_closcall1(data,(closure)&c_732538, nil);; -} - -static void __lambda_284(void *data, int argc, object self_73837, object r_73453) { - return_closcall4(data, cell_get(((closureN)self_73837)->elts[3]), ((closureN)self_73837)->elts[0], ((closureN)self_73837)->elts[1], ((closureN)self_73837)->elts[2], r_73453);; -} - -static void __lambda_283(void *data, int argc, object self_73838, object r_73449) { - -closureN_type c_731563; -c_731563.hdr.mark = gc_color_red; - c_731563.hdr.grayed = 0; -c_731563.tag = closureN_tag; - c_731563.fn = (function_type)__lambda_282; -c_731563.num_args = 1; -c_731563.num_elt = 27; -c_731563.elts = (object *)alloca(sizeof(object) * 27); -c_731563.elts[0] = ((closureN)self_73838)->elts[0]; -c_731563.elts[1] = ((closureN)self_73838)->elts[1]; -c_731563.elts[2] = ((closureN)self_73838)->elts[2]; -c_731563.elts[3] = ((closureN)self_73838)->elts[3]; -c_731563.elts[4] = ((closureN)self_73838)->elts[4]; -c_731563.elts[5] = ((closureN)self_73838)->elts[5]; -c_731563.elts[6] = ((closureN)self_73838)->elts[6]; -c_731563.elts[7] = ((closureN)self_73838)->elts[7]; -c_731563.elts[8] = ((closureN)self_73838)->elts[8]; -c_731563.elts[9] = ((closureN)self_73838)->elts[9]; -c_731563.elts[10] = ((closureN)self_73838)->elts[10]; -c_731563.elts[11] = ((closureN)self_73838)->elts[11]; -c_731563.elts[12] = ((closureN)self_73838)->elts[12]; -c_731563.elts[13] = ((closureN)self_73838)->elts[13]; -c_731563.elts[14] = ((closureN)self_73838)->elts[14]; -c_731563.elts[15] = ((closureN)self_73838)->elts[15]; -c_731563.elts[16] = ((closureN)self_73838)->elts[16]; -c_731563.elts[17] = ((closureN)self_73838)->elts[18]; -c_731563.elts[18] = ((closureN)self_73838)->elts[19]; -c_731563.elts[19] = ((closureN)self_73838)->elts[20]; -c_731563.elts[20] = ((closureN)self_73838)->elts[21]; -c_731563.elts[21] = ((closureN)self_73838)->elts[22]; -c_731563.elts[22] = ((closureN)self_73838)->elts[23]; -c_731563.elts[23] = ((closureN)self_73838)->elts[24]; -c_731563.elts[24] = ((closureN)self_73838)->elts[25]; -c_731563.elts[25] = ((closureN)self_73838)->elts[26]; -c_731563.elts[26] = ((closureN)self_73838)->elts[27]; - -return_closcall1(data,(closure)&c_731563, Cyc_set_car(data, ((closureN)self_73838)->elts[17], r_73449));; -} - -static void __lambda_282(void *data, int argc, object self_73839, object r_73284) { - -closureN_type c_731565; -c_731565.hdr.mark = gc_color_red; - c_731565.hdr.grayed = 0; -c_731565.tag = closureN_tag; - c_731565.fn = (function_type)__lambda_254; -c_731565.num_args = 1; -c_731565.num_elt = 27; -c_731565.elts = (object *)alloca(sizeof(object) * 27); -c_731565.elts[0] = ((closureN)self_73839)->elts[0]; -c_731565.elts[1] = ((closureN)self_73839)->elts[1]; -c_731565.elts[2] = ((closureN)self_73839)->elts[2]; -c_731565.elts[3] = ((closureN)self_73839)->elts[3]; -c_731565.elts[4] = ((closureN)self_73839)->elts[4]; -c_731565.elts[5] = ((closureN)self_73839)->elts[5]; -c_731565.elts[6] = ((closureN)self_73839)->elts[6]; -c_731565.elts[7] = ((closureN)self_73839)->elts[7]; -c_731565.elts[8] = ((closureN)self_73839)->elts[8]; -c_731565.elts[9] = ((closureN)self_73839)->elts[9]; -c_731565.elts[10] = ((closureN)self_73839)->elts[10]; -c_731565.elts[11] = ((closureN)self_73839)->elts[11]; -c_731565.elts[12] = ((closureN)self_73839)->elts[12]; -c_731565.elts[13] = ((closureN)self_73839)->elts[13]; -c_731565.elts[14] = ((closureN)self_73839)->elts[14]; -c_731565.elts[15] = ((closureN)self_73839)->elts[15]; -c_731565.elts[16] = ((closureN)self_73839)->elts[16]; -c_731565.elts[17] = ((closureN)self_73839)->elts[17]; -c_731565.elts[18] = ((closureN)self_73839)->elts[18]; -c_731565.elts[19] = ((closureN)self_73839)->elts[19]; -c_731565.elts[20] = ((closureN)self_73839)->elts[20]; -c_731565.elts[21] = ((closureN)self_73839)->elts[21]; -c_731565.elts[22] = ((closureN)self_73839)->elts[22]; -c_731565.elts[23] = ((closureN)self_73839)->elts[23]; -c_731565.elts[24] = ((closureN)self_73839)->elts[24]; -c_731565.elts[25] = ((closureN)self_73839)->elts[25]; -c_731565.elts[26] = ((closureN)self_73839)->elts[26]; - - -closureN_type c_732378; -c_732378.hdr.mark = gc_color_red; - c_732378.hdr.grayed = 0; -c_732378.tag = closureN_tag; - c_732378.fn = (function_type)__lambda_281; -c_732378.num_args = 3; -c_732378.num_elt = 4; -c_732378.elts = (object *)alloca(sizeof(object) * 4); -c_732378.elts[0] = ((closureN)self_73839)->elts[3]; -c_732378.elts[1] = ((closureN)self_73839)->elts[5]; -c_732378.elts[2] = ((closureN)self_73839)->elts[16]; -c_732378.elts[3] = ((closureN)self_73839)->elts[25]; - -return_closcall1(data,(closure)&c_731565, &c_732378);; -} - -static void __lambda_281(void *data, int argc, object self_73840, object k_73430, object x_73189, object true_91lst_73188, object false_91lst_73187) { - -closureN_type c_732383; -c_732383.hdr.mark = gc_color_red; - c_732383.hdr.grayed = 0; -c_732383.tag = closureN_tag; - c_732383.fn = (function_type)__lambda_280; -c_732383.num_args = 1; -c_732383.num_elt = 8; -c_732383.elts = (object *)alloca(sizeof(object) * 8); -c_732383.elts[0] = false_91lst_73187; -c_732383.elts[1] = ((closureN)self_73840)->elts[0]; -c_732383.elts[2] = ((closureN)self_73840)->elts[1]; -c_732383.elts[3] = k_73430; -c_732383.elts[4] = ((closureN)self_73840)->elts[2]; -c_732383.elts[5] = true_91lst_73188; -c_732383.elts[6] = ((closureN)self_73840)->elts[3]; -c_732383.elts[7] = x_73189; - -return_closcall3(data, cell_get(((closureN)self_73840)->elts[3]), &c_732383, x_73189, true_91lst_73188);; -} - -static void __lambda_280(void *data, int argc, object self_73841, object r_73431) { - if( !eq(boolean_f, r_73431) ){ - -closureN_type c_732385; -c_732385.hdr.mark = gc_color_red; - c_732385.hdr.grayed = 0; -c_732385.tag = closureN_tag; - c_732385.fn = (function_type)__lambda_255; -c_732385.num_args = 0; -c_732385.num_elt = 1; -c_732385.elts = (object *)alloca(sizeof(object) * 1); -c_732385.elts[0] = ((closureN)self_73841)->elts[3]; - -return_closcall0(data,(closure)&c_732385); -} else { - -closureN_type c_732392; -c_732392.hdr.mark = gc_color_red; - c_732392.hdr.grayed = 0; -c_732392.tag = closureN_tag; - c_732392.fn = (function_type)__lambda_279; -c_732392.num_args = 1; -c_732392.num_elt = 8; -c_732392.elts = (object *)alloca(sizeof(object) * 8); -c_732392.elts[0] = ((closureN)self_73841)->elts[0]; -c_732392.elts[1] = ((closureN)self_73841)->elts[1]; -c_732392.elts[2] = ((closureN)self_73841)->elts[2]; -c_732392.elts[3] = ((closureN)self_73841)->elts[3]; -c_732392.elts[4] = ((closureN)self_73841)->elts[4]; -c_732392.elts[5] = ((closureN)self_73841)->elts[5]; -c_732392.elts[6] = ((closureN)self_73841)->elts[6]; -c_732392.elts[7] = ((closureN)self_73841)->elts[7]; - -return_closcall3(data, cell_get(((closureN)self_73841)->elts[1]), &c_732392, ((closureN)self_73841)->elts[7], ((closureN)self_73841)->elts[0]);} -; -} - -static void __lambda_279(void *data, int argc, object self_73842, object r_73432) { - if( !eq(boolean_f, r_73432) ){ - -closureN_type c_732394; -c_732394.hdr.mark = gc_color_red; - c_732394.hdr.grayed = 0; -c_732394.tag = closureN_tag; - c_732394.fn = (function_type)__lambda_256; -c_732394.num_args = 0; -c_732394.num_elt = 1; -c_732394.elts = (object *)alloca(sizeof(object) * 1); -c_732394.elts[0] = ((closureN)self_73842)->elts[3]; - -return_closcall0(data,(closure)&c_732394); -} else { - -closureN_type c_732398; -c_732398.hdr.mark = gc_color_red; - c_732398.hdr.grayed = 0; -c_732398.tag = closureN_tag; - c_732398.fn = (function_type)__lambda_278; -c_732398.num_args = 1; -c_732398.num_elt = 8; -c_732398.elts = (object *)alloca(sizeof(object) * 8); -c_732398.elts[0] = ((closureN)self_73842)->elts[0]; -c_732398.elts[1] = ((closureN)self_73842)->elts[1]; -c_732398.elts[2] = ((closureN)self_73842)->elts[2]; -c_732398.elts[3] = ((closureN)self_73842)->elts[3]; -c_732398.elts[4] = ((closureN)self_73842)->elts[4]; -c_732398.elts[5] = ((closureN)self_73842)->elts[5]; -c_732398.elts[6] = ((closureN)self_73842)->elts[6]; -c_732398.elts[7] = ((closureN)self_73842)->elts[7]; - -return_closcall1(data,(closure)&c_732398, Cyc_is_cons(((closureN)self_73842)->elts[7]));} -; -} - -static void __lambda_278(void *data, int argc, object self_73843, object r_73433) { - if( !eq(boolean_f, r_73433) ){ - -closureN_type c_732400; -c_732400.hdr.mark = gc_color_red; - c_732400.hdr.grayed = 0; -c_732400.tag = closureN_tag; - c_732400.fn = (function_type)__lambda_276; -c_732400.num_args = 1; -c_732400.num_elt = 8; -c_732400.elts = (object *)alloca(sizeof(object) * 8); -c_732400.elts[0] = ((closureN)self_73843)->elts[0]; -c_732400.elts[1] = ((closureN)self_73843)->elts[1]; -c_732400.elts[2] = ((closureN)self_73843)->elts[2]; -c_732400.elts[3] = ((closureN)self_73843)->elts[3]; -c_732400.elts[4] = ((closureN)self_73843)->elts[4]; -c_732400.elts[5] = ((closureN)self_73843)->elts[5]; -c_732400.elts[6] = ((closureN)self_73843)->elts[6]; -c_732400.elts[7] = ((closureN)self_73843)->elts[7]; - -return_closcall1(data,(closure)&c_732400, car(((closureN)self_73843)->elts[7])); -} else { - -closureN_type c_732518; -c_732518.hdr.mark = gc_color_red; - c_732518.hdr.grayed = 0; -c_732518.tag = closureN_tag; - c_732518.fn = (function_type)__lambda_277; -c_732518.num_args = 0; -c_732518.num_elt = 1; -c_732518.elts = (object *)alloca(sizeof(object) * 1); -c_732518.elts[0] = ((closureN)self_73843)->elts[3]; - -return_closcall0(data,(closure)&c_732518);} -; -} - -static void __lambda_277(void *data, int argc, object self_73844) { - return_closcall1(data, ((closureN)self_73844)->elts[0], boolean_f);; -} - -static void __lambda_276(void *data, int argc, object self_73845, object r_73448) { - -closureN_type c_732402; -c_732402.hdr.mark = gc_color_red; - c_732402.hdr.grayed = 0; -c_732402.tag = closureN_tag; - c_732402.fn = (function_type)__lambda_275; -c_732402.num_args = 1; -c_732402.num_elt = 7; -c_732402.elts = (object *)alloca(sizeof(object) * 7); -c_732402.elts[0] = ((closureN)self_73845)->elts[0]; -c_732402.elts[1] = ((closureN)self_73845)->elts[1]; -c_732402.elts[2] = ((closureN)self_73845)->elts[3]; -c_732402.elts[3] = ((closureN)self_73845)->elts[4]; -c_732402.elts[4] = ((closureN)self_73845)->elts[5]; -c_732402.elts[5] = ((closureN)self_73845)->elts[6]; -c_732402.elts[6] = ((closureN)self_73845)->elts[7]; - -return_closcall1(data,(closure)&c_732402, Cyc_eq(r_73448, cell_get(((closureN)self_73845)->elts[2])));; -} - -static void __lambda_275(void *data, int argc, object self_73846, object r_73434) { - if( !eq(boolean_f, r_73434) ){ - -closureN_type c_732404; -c_732404.hdr.mark = gc_color_red; - c_732404.hdr.grayed = 0; -c_732404.tag = closureN_tag; - c_732404.fn = (function_type)__lambda_273; -c_732404.num_args = 0; -c_732404.num_elt = 7; -c_732404.elts = (object *)alloca(sizeof(object) * 7); -c_732404.elts[0] = ((closureN)self_73846)->elts[0]; -c_732404.elts[1] = ((closureN)self_73846)->elts[1]; -c_732404.elts[2] = ((closureN)self_73846)->elts[2]; -c_732404.elts[3] = ((closureN)self_73846)->elts[3]; -c_732404.elts[4] = ((closureN)self_73846)->elts[4]; -c_732404.elts[5] = ((closureN)self_73846)->elts[5]; -c_732404.elts[6] = ((closureN)self_73846)->elts[6]; - -return_closcall0(data,(closure)&c_732404); -} else { - -closureN_type c_732506; -c_732506.hdr.mark = gc_color_red; - c_732506.hdr.grayed = 0; -c_732506.tag = closureN_tag; - c_732506.fn = (function_type)__lambda_274; -c_732506.num_args = 0; -c_732506.num_elt = 1; -c_732506.elts = (object *)alloca(sizeof(object) * 1); -c_732506.elts[0] = ((closureN)self_73846)->elts[2]; - -return_closcall0(data,(closure)&c_732506);} -; -} - -static void __lambda_274(void *data, int argc, object self_73847) { - return_closcall1(data, ((closureN)self_73847)->elts[0], boolean_f);; -} - -static void __lambda_273(void *data, int argc, object self_73848) { - -closureN_type c_732406; -c_732406.hdr.mark = gc_color_red; - c_732406.hdr.grayed = 0; -c_732406.tag = closureN_tag; - c_732406.fn = (function_type)__lambda_272; -c_732406.num_args = 1; -c_732406.num_elt = 7; -c_732406.elts = (object *)alloca(sizeof(object) * 7); -c_732406.elts[0] = ((closureN)self_73848)->elts[0]; -c_732406.elts[1] = ((closureN)self_73848)->elts[1]; -c_732406.elts[2] = ((closureN)self_73848)->elts[2]; -c_732406.elts[3] = ((closureN)self_73848)->elts[3]; -c_732406.elts[4] = ((closureN)self_73848)->elts[4]; -c_732406.elts[5] = ((closureN)self_73848)->elts[5]; -c_732406.elts[6] = ((closureN)self_73848)->elts[6]; - -return_closcall1(data,(closure)&c_732406, cadr(((closureN)self_73848)->elts[6]));; -} - -static void __lambda_272(void *data, int argc, object self_73849, object r_73447) { - -closureN_type c_732411; -c_732411.hdr.mark = gc_color_red; - c_732411.hdr.grayed = 0; -c_732411.tag = closureN_tag; - c_732411.fn = (function_type)__lambda_271; -c_732411.num_args = 1; -c_732411.num_elt = 6; -c_732411.elts = (object *)alloca(sizeof(object) * 6); -c_732411.elts[0] = ((closureN)self_73849)->elts[0]; -c_732411.elts[1] = ((closureN)self_73849)->elts[1]; -c_732411.elts[2] = ((closureN)self_73849)->elts[2]; -c_732411.elts[3] = ((closureN)self_73849)->elts[3]; -c_732411.elts[4] = ((closureN)self_73849)->elts[4]; -c_732411.elts[5] = ((closureN)self_73849)->elts[6]; - -return_closcall3(data, cell_get(((closureN)self_73849)->elts[5]), &c_732411, r_73447, ((closureN)self_73849)->elts[4]);; -} - -static void __lambda_271(void *data, int argc, object self_73850, object r_73435) { - if( !eq(boolean_f, r_73435) ){ - -closureN_type c_732413; -c_732413.hdr.mark = gc_color_red; - c_732413.hdr.grayed = 0; -c_732413.tag = closureN_tag; - c_732413.fn = (function_type)__lambda_258; -c_732413.num_args = 0; -c_732413.num_elt = 5; -c_732413.elts = (object *)alloca(sizeof(object) * 5); -c_732413.elts[0] = ((closureN)self_73850)->elts[0]; -c_732413.elts[1] = ((closureN)self_73850)->elts[2]; -c_732413.elts[2] = ((closureN)self_73850)->elts[3]; -c_732413.elts[3] = ((closureN)self_73850)->elts[4]; -c_732413.elts[4] = ((closureN)self_73850)->elts[5]; - -return_closcall0(data,(closure)&c_732413); -} else { - -closureN_type c_732427; -c_732427.hdr.mark = gc_color_red; - c_732427.hdr.grayed = 0; -c_732427.tag = closureN_tag; - c_732427.fn = (function_type)__lambda_270; -c_732427.num_args = 1; -c_732427.num_elt = 6; -c_732427.elts = (object *)alloca(sizeof(object) * 6); -c_732427.elts[0] = ((closureN)self_73850)->elts[0]; -c_732427.elts[1] = ((closureN)self_73850)->elts[1]; -c_732427.elts[2] = ((closureN)self_73850)->elts[2]; -c_732427.elts[3] = ((closureN)self_73850)->elts[3]; -c_732427.elts[4] = ((closureN)self_73850)->elts[4]; -c_732427.elts[5] = ((closureN)self_73850)->elts[5]; - -return_closcall1(data,(closure)&c_732427, cadr(((closureN)self_73850)->elts[5]));} -; -} - -static void __lambda_270(void *data, int argc, object self_73851, object r_73446) { - -closureN_type c_732432; -c_732432.hdr.mark = gc_color_red; - c_732432.hdr.grayed = 0; -c_732432.tag = closureN_tag; - c_732432.fn = (function_type)__lambda_269; -c_732432.num_args = 1; -c_732432.num_elt = 5; -c_732432.elts = (object *)alloca(sizeof(object) * 5); -c_732432.elts[0] = ((closureN)self_73851)->elts[0]; -c_732432.elts[1] = ((closureN)self_73851)->elts[2]; -c_732432.elts[2] = ((closureN)self_73851)->elts[3]; -c_732432.elts[3] = ((closureN)self_73851)->elts[4]; -c_732432.elts[4] = ((closureN)self_73851)->elts[5]; - -return_closcall3(data, cell_get(((closureN)self_73851)->elts[1]), &c_732432, r_73446, ((closureN)self_73851)->elts[0]);; -} - -static void __lambda_269(void *data, int argc, object self_73852, object r_73437) { - if( !eq(boolean_f, r_73437) ){ - -closureN_type c_732434; -c_732434.hdr.mark = gc_color_red; - c_732434.hdr.grayed = 0; -c_732434.tag = closureN_tag; - c_732434.fn = (function_type)__lambda_260; -c_732434.num_args = 0; -c_732434.num_elt = 5; -c_732434.elts = (object *)alloca(sizeof(object) * 5); -c_732434.elts[0] = ((closureN)self_73852)->elts[0]; -c_732434.elts[1] = ((closureN)self_73852)->elts[1]; -c_732434.elts[2] = ((closureN)self_73852)->elts[2]; -c_732434.elts[3] = ((closureN)self_73852)->elts[3]; -c_732434.elts[4] = ((closureN)self_73852)->elts[4]; - -return_closcall0(data,(closure)&c_732434); -} else { - -closureN_type c_732448; -c_732448.hdr.mark = gc_color_red; - c_732448.hdr.grayed = 0; -c_732448.tag = closureN_tag; - c_732448.fn = (function_type)__lambda_268; -c_732448.num_args = 0; -c_732448.num_elt = 5; -c_732448.elts = (object *)alloca(sizeof(object) * 5); -c_732448.elts[0] = ((closureN)self_73852)->elts[0]; -c_732448.elts[1] = ((closureN)self_73852)->elts[1]; -c_732448.elts[2] = ((closureN)self_73852)->elts[2]; -c_732448.elts[3] = ((closureN)self_73852)->elts[3]; -c_732448.elts[4] = ((closureN)self_73852)->elts[4]; - -return_closcall0(data,(closure)&c_732448);} -; -} - -static void __lambda_268(void *data, int argc, object self_73853) { - -closureN_type c_732450; -c_732450.hdr.mark = gc_color_red; - c_732450.hdr.grayed = 0; -c_732450.tag = closureN_tag; - c_732450.fn = (function_type)__lambda_267; -c_732450.num_args = 1; -c_732450.num_elt = 5; -c_732450.elts = (object *)alloca(sizeof(object) * 5); -c_732450.elts[0] = ((closureN)self_73853)->elts[0]; -c_732450.elts[1] = ((closureN)self_73853)->elts[1]; -c_732450.elts[2] = ((closureN)self_73853)->elts[2]; -c_732450.elts[3] = ((closureN)self_73853)->elts[3]; -c_732450.elts[4] = ((closureN)self_73853)->elts[4]; - -return_closcall1(data,(closure)&c_732450, caddr(((closureN)self_73853)->elts[4]));; -} - -static void __lambda_267(void *data, int argc, object self_73854, object r_73443) { - -closureN_type c_732452; -c_732452.hdr.mark = gc_color_red; - c_732452.hdr.grayed = 0; -c_732452.tag = closureN_tag; - c_732452.fn = (function_type)__lambda_266; -c_732452.num_args = 1; -c_732452.num_elt = 6; -c_732452.elts = (object *)alloca(sizeof(object) * 6); -c_732452.elts[0] = ((closureN)self_73854)->elts[0]; -c_732452.elts[1] = ((closureN)self_73854)->elts[1]; -c_732452.elts[2] = r_73443; -c_732452.elts[3] = ((closureN)self_73854)->elts[2]; -c_732452.elts[4] = ((closureN)self_73854)->elts[3]; -c_732452.elts[5] = ((closureN)self_73854)->elts[4]; - -return_closcall1(data,(closure)&c_732452, cadr(((closureN)self_73854)->elts[4]));; -} - -static void __lambda_266(void *data, int argc, object self_73855, object r_73445) { - -closureN_type c_732454; -c_732454.hdr.mark = gc_color_red; - c_732454.hdr.grayed = 0; -c_732454.tag = closureN_tag; - c_732454.fn = (function_type)__lambda_265; -c_732454.num_args = 1; -c_732454.num_elt = 6; -c_732454.elts = (object *)alloca(sizeof(object) * 6); -c_732454.elts[0] = ((closureN)self_73855)->elts[0]; -c_732454.elts[1] = ((closureN)self_73855)->elts[1]; -c_732454.elts[2] = ((closureN)self_73855)->elts[2]; -c_732454.elts[3] = ((closureN)self_73855)->elts[3]; -c_732454.elts[4] = ((closureN)self_73855)->elts[4]; -c_732454.elts[5] = ((closureN)self_73855)->elts[5]; - - -make_cons(c_732489,r_73445, ((closureN)self_73855)->elts[4]); -return_closcall1(data,(closure)&c_732454, &c_732489);; -} - -static void __lambda_265(void *data, int argc, object self_73856, object r_73444) { - -closureN_type c_732459; -c_732459.hdr.mark = gc_color_red; - c_732459.hdr.grayed = 0; -c_732459.tag = closureN_tag; - c_732459.fn = (function_type)__lambda_264; -c_732459.num_args = 1; -c_732459.num_elt = 5; -c_732459.elts = (object *)alloca(sizeof(object) * 5); -c_732459.elts[0] = ((closureN)self_73856)->elts[0]; -c_732459.elts[1] = ((closureN)self_73856)->elts[1]; -c_732459.elts[2] = ((closureN)self_73856)->elts[3]; -c_732459.elts[3] = ((closureN)self_73856)->elts[4]; -c_732459.elts[4] = ((closureN)self_73856)->elts[5]; - -return_closcall4(data, cell_get(((closureN)self_73856)->elts[3]), &c_732459, ((closureN)self_73856)->elts[2], r_73444, ((closureN)self_73856)->elts[0]);; -} - -static void __lambda_264(void *data, int argc, object self_73857, object r_73439) { - if( !eq(boolean_f, r_73439) ){ - -closureN_type c_732461; -c_732461.hdr.mark = gc_color_red; - c_732461.hdr.grayed = 0; -c_732461.tag = closureN_tag; - c_732461.fn = (function_type)__lambda_263; -c_732461.num_args = 1; -c_732461.num_elt = 5; -c_732461.elts = (object *)alloca(sizeof(object) * 5); -c_732461.elts[0] = ((closureN)self_73857)->elts[0]; -c_732461.elts[1] = ((closureN)self_73857)->elts[1]; -c_732461.elts[2] = ((closureN)self_73857)->elts[2]; -c_732461.elts[3] = ((closureN)self_73857)->elts[3]; -c_732461.elts[4] = ((closureN)self_73857)->elts[4]; - -return_closcall1(data,(closure)&c_732461, cadddr(((closureN)self_73857)->elts[4])); -} else { - return_closcall1(data, ((closureN)self_73857)->elts[1], boolean_f);} -; -} - -static void __lambda_263(void *data, int argc, object self_73858, object r_73440) { - -closureN_type c_732463; -c_732463.hdr.mark = gc_color_red; - c_732463.hdr.grayed = 0; -c_732463.tag = closureN_tag; - c_732463.fn = (function_type)__lambda_262; -c_732463.num_args = 1; -c_732463.num_elt = 5; -c_732463.elts = (object *)alloca(sizeof(object) * 5); -c_732463.elts[0] = ((closureN)self_73858)->elts[0]; -c_732463.elts[1] = ((closureN)self_73858)->elts[1]; -c_732463.elts[2] = r_73440; -c_732463.elts[3] = ((closureN)self_73858)->elts[2]; -c_732463.elts[4] = ((closureN)self_73858)->elts[3]; - -return_closcall1(data,(closure)&c_732463, cadr(((closureN)self_73858)->elts[4]));; -} - -static void __lambda_262(void *data, int argc, object self_73859, object r_73442) { - -closureN_type c_732465; -c_732465.hdr.mark = gc_color_red; - c_732465.hdr.grayed = 0; -c_732465.tag = closureN_tag; - c_732465.fn = (function_type)__lambda_261; -c_732465.num_args = 1; -c_732465.num_elt = 4; -c_732465.elts = (object *)alloca(sizeof(object) * 4); -c_732465.elts[0] = ((closureN)self_73859)->elts[1]; -c_732465.elts[1] = ((closureN)self_73859)->elts[2]; -c_732465.elts[2] = ((closureN)self_73859)->elts[3]; -c_732465.elts[3] = ((closureN)self_73859)->elts[4]; - - -make_cons(c_732475,r_73442, ((closureN)self_73859)->elts[0]); -return_closcall1(data,(closure)&c_732465, &c_732475);; -} - -static void __lambda_261(void *data, int argc, object self_73860, object r_73441) { - return_closcall4(data, cell_get(((closureN)self_73860)->elts[2]), ((closureN)self_73860)->elts[0], ((closureN)self_73860)->elts[1], ((closureN)self_73860)->elts[3], r_73441);; -} - -static void __lambda_260(void *data, int argc, object self_73861) { - -closureN_type c_732436; -c_732436.hdr.mark = gc_color_red; - c_732436.hdr.grayed = 0; -c_732436.tag = closureN_tag; - c_732436.fn = (function_type)__lambda_259; -c_732436.num_args = 1; -c_732436.num_elt = 4; -c_732436.elts = (object *)alloca(sizeof(object) * 4); -c_732436.elts[0] = ((closureN)self_73861)->elts[0]; -c_732436.elts[1] = ((closureN)self_73861)->elts[1]; -c_732436.elts[2] = ((closureN)self_73861)->elts[2]; -c_732436.elts[3] = ((closureN)self_73861)->elts[3]; - -return_closcall1(data,(closure)&c_732436, cadddr(((closureN)self_73861)->elts[4]));; -} - -static void __lambda_259(void *data, int argc, object self_73862, object r_73438) { - return_closcall4(data, cell_get(((closureN)self_73862)->elts[2]), ((closureN)self_73862)->elts[1], r_73438, ((closureN)self_73862)->elts[3], ((closureN)self_73862)->elts[0]);; -} - -static void __lambda_258(void *data, int argc, object self_73863) { - -closureN_type c_732415; -c_732415.hdr.mark = gc_color_red; - c_732415.hdr.grayed = 0; -c_732415.tag = closureN_tag; - c_732415.fn = (function_type)__lambda_257; -c_732415.num_args = 1; -c_732415.num_elt = 4; -c_732415.elts = (object *)alloca(sizeof(object) * 4); -c_732415.elts[0] = ((closureN)self_73863)->elts[0]; -c_732415.elts[1] = ((closureN)self_73863)->elts[1]; -c_732415.elts[2] = ((closureN)self_73863)->elts[2]; -c_732415.elts[3] = ((closureN)self_73863)->elts[3]; - -return_closcall1(data,(closure)&c_732415, caddr(((closureN)self_73863)->elts[4]));; -} - -static void __lambda_257(void *data, int argc, object self_73864, object r_73436) { - return_closcall4(data, cell_get(((closureN)self_73864)->elts[2]), ((closureN)self_73864)->elts[1], r_73436, ((closureN)self_73864)->elts[3], ((closureN)self_73864)->elts[0]);; -} - -static void __lambda_256(void *data, int argc, object self_73865) { - return_closcall1(data, ((closureN)self_73865)->elts[0], boolean_f);; -} - -static void __lambda_255(void *data, int argc, object self_73866) { - return_closcall1(data, ((closureN)self_73866)->elts[0], boolean_t);; -} - -static void __lambda_254(void *data, int argc, object self_73867, object r_73429) { - -closureN_type c_731567; -c_731567.hdr.mark = gc_color_red; - c_731567.hdr.grayed = 0; -c_731567.tag = closureN_tag; - c_731567.fn = (function_type)__lambda_253; -c_731567.num_args = 1; -c_731567.num_elt = 26; -c_731567.elts = (object *)alloca(sizeof(object) * 26); -c_731567.elts[0] = ((closureN)self_73867)->elts[0]; -c_731567.elts[1] = ((closureN)self_73867)->elts[1]; -c_731567.elts[2] = ((closureN)self_73867)->elts[2]; -c_731567.elts[3] = ((closureN)self_73867)->elts[3]; -c_731567.elts[4] = ((closureN)self_73867)->elts[4]; -c_731567.elts[5] = ((closureN)self_73867)->elts[5]; -c_731567.elts[6] = ((closureN)self_73867)->elts[6]; -c_731567.elts[7] = ((closureN)self_73867)->elts[7]; -c_731567.elts[8] = ((closureN)self_73867)->elts[8]; -c_731567.elts[9] = ((closureN)self_73867)->elts[9]; -c_731567.elts[10] = ((closureN)self_73867)->elts[10]; -c_731567.elts[11] = ((closureN)self_73867)->elts[11]; -c_731567.elts[12] = ((closureN)self_73867)->elts[12]; -c_731567.elts[13] = ((closureN)self_73867)->elts[13]; -c_731567.elts[14] = ((closureN)self_73867)->elts[14]; -c_731567.elts[15] = ((closureN)self_73867)->elts[15]; -c_731567.elts[16] = ((closureN)self_73867)->elts[17]; -c_731567.elts[17] = ((closureN)self_73867)->elts[18]; -c_731567.elts[18] = ((closureN)self_73867)->elts[19]; -c_731567.elts[19] = ((closureN)self_73867)->elts[20]; -c_731567.elts[20] = ((closureN)self_73867)->elts[21]; -c_731567.elts[21] = ((closureN)self_73867)->elts[22]; -c_731567.elts[22] = ((closureN)self_73867)->elts[23]; -c_731567.elts[23] = ((closureN)self_73867)->elts[24]; -c_731567.elts[24] = ((closureN)self_73867)->elts[25]; -c_731567.elts[25] = ((closureN)self_73867)->elts[26]; - -return_closcall1(data,(closure)&c_731567, Cyc_set_car(data, ((closureN)self_73867)->elts[16], r_73429));; -} - -static void __lambda_253(void *data, int argc, object self_73868, object r_73285) { - -closureN_type c_731569; -c_731569.hdr.mark = gc_color_red; - c_731569.hdr.grayed = 0; -c_731569.tag = closureN_tag; - c_731569.fn = (function_type)__lambda_252; -c_731569.num_args = 1; -c_731569.num_elt = 26; -c_731569.elts = (object *)alloca(sizeof(object) * 26); -c_731569.elts[0] = ((closureN)self_73868)->elts[0]; -c_731569.elts[1] = ((closureN)self_73868)->elts[1]; -c_731569.elts[2] = ((closureN)self_73868)->elts[2]; -c_731569.elts[3] = ((closureN)self_73868)->elts[3]; -c_731569.elts[4] = ((closureN)self_73868)->elts[4]; -c_731569.elts[5] = ((closureN)self_73868)->elts[5]; -c_731569.elts[6] = ((closureN)self_73868)->elts[6]; -c_731569.elts[7] = ((closureN)self_73868)->elts[7]; -c_731569.elts[8] = ((closureN)self_73868)->elts[8]; -c_731569.elts[9] = ((closureN)self_73868)->elts[9]; -c_731569.elts[10] = ((closureN)self_73868)->elts[10]; -c_731569.elts[11] = ((closureN)self_73868)->elts[11]; -c_731569.elts[12] = ((closureN)self_73868)->elts[12]; -c_731569.elts[13] = ((closureN)self_73868)->elts[13]; -c_731569.elts[14] = ((closureN)self_73868)->elts[14]; -c_731569.elts[15] = ((closureN)self_73868)->elts[15]; -c_731569.elts[16] = ((closureN)self_73868)->elts[16]; -c_731569.elts[17] = ((closureN)self_73868)->elts[17]; -c_731569.elts[18] = ((closureN)self_73868)->elts[18]; -c_731569.elts[19] = ((closureN)self_73868)->elts[19]; -c_731569.elts[20] = ((closureN)self_73868)->elts[20]; -c_731569.elts[21] = ((closureN)self_73868)->elts[21]; -c_731569.elts[22] = ((closureN)self_73868)->elts[22]; -c_731569.elts[23] = ((closureN)self_73868)->elts[23]; -c_731569.elts[24] = ((closureN)self_73868)->elts[24]; -c_731569.elts[25] = ((closureN)self_73868)->elts[25]; - -return_closcall1(data,(closure)&c_731569, quote__85);; -} - -static void __lambda_252(void *data, int argc, object self_73869, object r_73428) { - -closureN_type c_731571; -c_731571.hdr.mark = gc_color_red; - c_731571.hdr.grayed = 0; -c_731571.tag = closureN_tag; - c_731571.fn = (function_type)__lambda_251; -c_731571.num_args = 1; -c_731571.num_elt = 26; -c_731571.elts = (object *)alloca(sizeof(object) * 26); -c_731571.elts[0] = ((closureN)self_73869)->elts[0]; -c_731571.elts[1] = ((closureN)self_73869)->elts[1]; -c_731571.elts[2] = ((closureN)self_73869)->elts[2]; -c_731571.elts[3] = ((closureN)self_73869)->elts[3]; -c_731571.elts[4] = ((closureN)self_73869)->elts[4]; -c_731571.elts[5] = ((closureN)self_73869)->elts[5]; -c_731571.elts[6] = ((closureN)self_73869)->elts[6]; -c_731571.elts[7] = ((closureN)self_73869)->elts[7]; -c_731571.elts[8] = ((closureN)self_73869)->elts[8]; -c_731571.elts[9] = ((closureN)self_73869)->elts[9]; -c_731571.elts[10] = ((closureN)self_73869)->elts[10]; -c_731571.elts[11] = ((closureN)self_73869)->elts[11]; -c_731571.elts[12] = ((closureN)self_73869)->elts[12]; -c_731571.elts[13] = ((closureN)self_73869)->elts[13]; -c_731571.elts[14] = ((closureN)self_73869)->elts[14]; -c_731571.elts[15] = ((closureN)self_73869)->elts[15]; -c_731571.elts[16] = ((closureN)self_73869)->elts[16]; -c_731571.elts[17] = ((closureN)self_73869)->elts[17]; -c_731571.elts[18] = ((closureN)self_73869)->elts[18]; -c_731571.elts[19] = ((closureN)self_73869)->elts[19]; -c_731571.elts[20] = ((closureN)self_73869)->elts[20]; -c_731571.elts[21] = ((closureN)self_73869)->elts[21]; -c_731571.elts[22] = ((closureN)self_73869)->elts[22]; -c_731571.elts[23] = ((closureN)self_73869)->elts[23]; -c_731571.elts[24] = ((closureN)self_73869)->elts[24]; -c_731571.elts[25] = ((closureN)self_73869)->elts[25]; - -return_closcall1(data,(closure)&c_731571, Cyc_set_car(data, ((closureN)self_73869)->elts[5], r_73428));; -} - -static void __lambda_251(void *data, int argc, object self_73870, object r_73286) { - -closureN_type c_731573; -c_731573.hdr.mark = gc_color_red; - c_731573.hdr.grayed = 0; -c_731573.tag = closureN_tag; - c_731573.fn = (function_type)__lambda_250; -c_731573.num_args = 1; -c_731573.num_elt = 26; -c_731573.elts = (object *)alloca(sizeof(object) * 26); -c_731573.elts[0] = ((closureN)self_73870)->elts[0]; -c_731573.elts[1] = ((closureN)self_73870)->elts[1]; -c_731573.elts[2] = ((closureN)self_73870)->elts[2]; -c_731573.elts[3] = ((closureN)self_73870)->elts[3]; -c_731573.elts[4] = ((closureN)self_73870)->elts[4]; -c_731573.elts[5] = ((closureN)self_73870)->elts[5]; -c_731573.elts[6] = ((closureN)self_73870)->elts[6]; -c_731573.elts[7] = ((closureN)self_73870)->elts[7]; -c_731573.elts[8] = ((closureN)self_73870)->elts[8]; -c_731573.elts[9] = ((closureN)self_73870)->elts[9]; -c_731573.elts[10] = ((closureN)self_73870)->elts[10]; -c_731573.elts[11] = ((closureN)self_73870)->elts[11]; -c_731573.elts[12] = ((closureN)self_73870)->elts[12]; -c_731573.elts[13] = ((closureN)self_73870)->elts[13]; -c_731573.elts[14] = ((closureN)self_73870)->elts[14]; -c_731573.elts[15] = ((closureN)self_73870)->elts[15]; -c_731573.elts[16] = ((closureN)self_73870)->elts[16]; -c_731573.elts[17] = ((closureN)self_73870)->elts[17]; -c_731573.elts[18] = ((closureN)self_73870)->elts[18]; -c_731573.elts[19] = ((closureN)self_73870)->elts[19]; -c_731573.elts[20] = ((closureN)self_73870)->elts[20]; -c_731573.elts[21] = ((closureN)self_73870)->elts[21]; -c_731573.elts[22] = ((closureN)self_73870)->elts[22]; -c_731573.elts[23] = ((closureN)self_73870)->elts[23]; -c_731573.elts[24] = ((closureN)self_73870)->elts[24]; -c_731573.elts[25] = ((closureN)self_73870)->elts[25]; - -return_closcall1(data,(closure)&c_731573, Cyc_set_car(data, ((closureN)self_73870)->elts[11], obj_int2obj(0)));; -} - -static void __lambda_250(void *data, int argc, object self_73871, object r_73287) { - -closureN_type c_731575; -c_731575.hdr.mark = gc_color_red; - c_731575.hdr.grayed = 0; -c_731575.tag = closureN_tag; - c_731575.fn = (function_type)__lambda_237; -c_731575.num_args = 1; -c_731575.num_elt = 25; -c_731575.elts = (object *)alloca(sizeof(object) * 25); -c_731575.elts[0] = ((closureN)self_73871)->elts[0]; -c_731575.elts[1] = ((closureN)self_73871)->elts[1]; -c_731575.elts[2] = ((closureN)self_73871)->elts[2]; -c_731575.elts[3] = ((closureN)self_73871)->elts[3]; -c_731575.elts[4] = ((closureN)self_73871)->elts[5]; -c_731575.elts[5] = ((closureN)self_73871)->elts[6]; -c_731575.elts[6] = ((closureN)self_73871)->elts[7]; -c_731575.elts[7] = ((closureN)self_73871)->elts[8]; -c_731575.elts[8] = ((closureN)self_73871)->elts[9]; -c_731575.elts[9] = ((closureN)self_73871)->elts[10]; -c_731575.elts[10] = ((closureN)self_73871)->elts[11]; -c_731575.elts[11] = ((closureN)self_73871)->elts[12]; -c_731575.elts[12] = ((closureN)self_73871)->elts[13]; -c_731575.elts[13] = ((closureN)self_73871)->elts[14]; -c_731575.elts[14] = ((closureN)self_73871)->elts[15]; -c_731575.elts[15] = ((closureN)self_73871)->elts[16]; -c_731575.elts[16] = ((closureN)self_73871)->elts[17]; -c_731575.elts[17] = ((closureN)self_73871)->elts[18]; -c_731575.elts[18] = ((closureN)self_73871)->elts[19]; -c_731575.elts[19] = ((closureN)self_73871)->elts[20]; -c_731575.elts[20] = ((closureN)self_73871)->elts[21]; -c_731575.elts[21] = ((closureN)self_73871)->elts[22]; -c_731575.elts[22] = ((closureN)self_73871)->elts[23]; -c_731575.elts[23] = ((closureN)self_73871)->elts[24]; -c_731575.elts[24] = ((closureN)self_73871)->elts[25]; - - -closureN_type c_732306; -c_732306.hdr.mark = gc_color_red; - c_732306.hdr.grayed = 0; -c_732306.tag = closureN_tag; - c_732306.fn = (function_type)__lambda_249; -c_732306.num_args = 1; -c_732306.num_elt = 4; -c_732306.elts = (object *)alloca(sizeof(object) * 4); -c_732306.elts[0] = ((closureN)self_73871)->elts[4]; -c_732306.elts[1] = ((closureN)self_73871)->elts[10]; -c_732306.elts[2] = ((closureN)self_73871)->elts[11]; -c_732306.elts[3] = ((closureN)self_73871)->elts[12]; - -return_closcall1(data,(closure)&c_731575, &c_732306);; -} - -static void __lambda_249(void *data, int argc, object self_73872, object k_73418, object term_73186) { - -closureN_type c_732308; -c_732308.hdr.mark = gc_color_red; - c_732308.hdr.grayed = 0; -c_732308.tag = closureN_tag; - c_732308.fn = (function_type)__lambda_248; -c_732308.num_args = 1; -c_732308.num_elt = 6; -c_732308.elts = (object *)alloca(sizeof(object) * 6); -c_732308.elts[0] = ((closureN)self_73872)->elts[0]; -c_732308.elts[1] = k_73418; -c_732308.elts[2] = ((closureN)self_73872)->elts[1]; -c_732308.elts[3] = ((closureN)self_73872)->elts[2]; -c_732308.elts[4] = ((closureN)self_73872)->elts[3]; -c_732308.elts[5] = term_73186; - - -object c_732365 = Cyc_sum(data,(closure)&c_732308,2,cell_get(((closureN)self_73872)->elts[2]), obj_int2obj(1)); -return_closcall1(data,(closure)&c_732308, c_732365);; -} - -static void __lambda_248(void *data, int argc, object self_73873, object r_73427) { - -closureN_type c_732310; -c_732310.hdr.mark = gc_color_red; - c_732310.hdr.grayed = 0; -c_732310.tag = closureN_tag; - c_732310.fn = (function_type)__lambda_247; -c_732310.num_args = 1; -c_732310.num_elt = 5; -c_732310.elts = (object *)alloca(sizeof(object) * 5); -c_732310.elts[0] = ((closureN)self_73873)->elts[0]; -c_732310.elts[1] = ((closureN)self_73873)->elts[1]; -c_732310.elts[2] = ((closureN)self_73873)->elts[2]; -c_732310.elts[3] = ((closureN)self_73873)->elts[4]; -c_732310.elts[4] = ((closureN)self_73873)->elts[5]; - -return_closcall1(data,(closure)&c_732310, Cyc_set_car(data, ((closureN)self_73873)->elts[3], r_73427));; -} - -static void __lambda_247(void *data, int argc, object self_73874, object r_73419) { - -closureN_type c_732312; -c_732312.hdr.mark = gc_color_red; - c_732312.hdr.grayed = 0; -c_732312.tag = closureN_tag; - c_732312.fn = (function_type)__lambda_246; -c_732312.num_args = 1; -c_732312.num_elt = 5; -c_732312.elts = (object *)alloca(sizeof(object) * 5); -c_732312.elts[0] = ((closureN)self_73874)->elts[0]; -c_732312.elts[1] = ((closureN)self_73874)->elts[1]; -c_732312.elts[2] = ((closureN)self_73874)->elts[2]; -c_732312.elts[3] = ((closureN)self_73874)->elts[3]; -c_732312.elts[4] = ((closureN)self_73874)->elts[4]; - -return_closcall1(data,(closure)&c_732312, Cyc_is_cons(((closureN)self_73874)->elts[4]));; -} - -static void __lambda_246(void *data, int argc, object self_73875, object r_73420) { - if( !eq(boolean_f, r_73420) ){ - -closureN_type c_732314; -c_732314.hdr.mark = gc_color_red; - c_732314.hdr.grayed = 0; -c_732314.tag = closureN_tag; - c_732314.fn = (function_type)__lambda_244; -c_732314.num_args = 0; -c_732314.num_elt = 5; -c_732314.elts = (object *)alloca(sizeof(object) * 5); -c_732314.elts[0] = ((closureN)self_73875)->elts[0]; -c_732314.elts[1] = ((closureN)self_73875)->elts[1]; -c_732314.elts[2] = ((closureN)self_73875)->elts[2]; -c_732314.elts[3] = ((closureN)self_73875)->elts[3]; -c_732314.elts[4] = ((closureN)self_73875)->elts[4]; - -return_closcall0(data,(closure)&c_732314); -} else { - -closureN_type c_732353; -c_732353.hdr.mark = gc_color_red; - c_732353.hdr.grayed = 0; -c_732353.tag = closureN_tag; - c_732353.fn = (function_type)__lambda_245; -c_732353.num_args = 0; -c_732353.num_elt = 2; -c_732353.elts = (object *)alloca(sizeof(object) * 2); -c_732353.elts[0] = ((closureN)self_73875)->elts[1]; -c_732353.elts[1] = ((closureN)self_73875)->elts[4]; - -return_closcall0(data,(closure)&c_732353);} -; -} - -static void __lambda_245(void *data, int argc, object self_73876) { - return_closcall1(data, ((closureN)self_73876)->elts[0], ((closureN)self_73876)->elts[1]);; -} - -static void __lambda_244(void *data, int argc, object self_73877) { - -closureN_type c_732316; -c_732316.hdr.mark = gc_color_red; - c_732316.hdr.grayed = 0; -c_732316.tag = closureN_tag; - c_732316.fn = (function_type)__lambda_243; -c_732316.num_args = 1; -c_732316.num_elt = 5; -c_732316.elts = (object *)alloca(sizeof(object) * 5); -c_732316.elts[0] = ((closureN)self_73877)->elts[0]; -c_732316.elts[1] = ((closureN)self_73877)->elts[1]; -c_732316.elts[2] = ((closureN)self_73877)->elts[2]; -c_732316.elts[3] = ((closureN)self_73877)->elts[3]; -c_732316.elts[4] = ((closureN)self_73877)->elts[4]; - -return_closcall1(data,(closure)&c_732316, car(((closureN)self_73877)->elts[4]));; -} - -static void __lambda_243(void *data, int argc, object self_73878, object r_73424) { - -closureN_type c_732318; -c_732318.hdr.mark = gc_color_red; - c_732318.hdr.grayed = 0; -c_732318.tag = closureN_tag; - c_732318.fn = (function_type)__lambda_242; -c_732318.num_args = 1; -c_732318.num_elt = 6; -c_732318.elts = (object *)alloca(sizeof(object) * 6); -c_732318.elts[0] = ((closureN)self_73878)->elts[0]; -c_732318.elts[1] = ((closureN)self_73878)->elts[1]; -c_732318.elts[2] = r_73424; -c_732318.elts[3] = ((closureN)self_73878)->elts[2]; -c_732318.elts[4] = ((closureN)self_73878)->elts[3]; -c_732318.elts[5] = ((closureN)self_73878)->elts[4]; - -return_closcall1(data,(closure)&c_732318, cdr(((closureN)self_73878)->elts[4]));; -} - -static void __lambda_242(void *data, int argc, object self_73879, object r_73426) { - -closureN_type c_732323; -c_732323.hdr.mark = gc_color_red; - c_732323.hdr.grayed = 0; -c_732323.tag = closureN_tag; - c_732323.fn = (function_type)__lambda_241; -c_732323.num_args = 1; -c_732323.num_elt = 5; -c_732323.elts = (object *)alloca(sizeof(object) * 5); -c_732323.elts[0] = ((closureN)self_73879)->elts[0]; -c_732323.elts[1] = ((closureN)self_73879)->elts[1]; -c_732323.elts[2] = ((closureN)self_73879)->elts[2]; -c_732323.elts[3] = ((closureN)self_73879)->elts[4]; -c_732323.elts[4] = ((closureN)self_73879)->elts[5]; - -return_closcall2(data, cell_get(((closureN)self_73879)->elts[3]), &c_732323, r_73426);; -} - -static void __lambda_241(void *data, int argc, object self_73880, object r_73425) { - -closureN_type c_732325; -c_732325.hdr.mark = gc_color_red; - c_732325.hdr.grayed = 0; -c_732325.tag = closureN_tag; - c_732325.fn = (function_type)__lambda_240; -c_732325.num_args = 1; -c_732325.num_elt = 4; -c_732325.elts = (object *)alloca(sizeof(object) * 4); -c_732325.elts[0] = ((closureN)self_73880)->elts[0]; -c_732325.elts[1] = ((closureN)self_73880)->elts[1]; -c_732325.elts[2] = ((closureN)self_73880)->elts[3]; -c_732325.elts[3] = ((closureN)self_73880)->elts[4]; - - -make_cons(c_732344,((closureN)self_73880)->elts[2], r_73425); -return_closcall1(data,(closure)&c_732325, &c_732344);; -} - -static void __lambda_240(void *data, int argc, object self_73881, object r_73421) { - -closureN_type c_732327; -c_732327.hdr.mark = gc_color_red; - c_732327.hdr.grayed = 0; -c_732327.tag = closureN_tag; - c_732327.fn = (function_type)__lambda_239; -c_732327.num_args = 1; -c_732327.num_elt = 4; -c_732327.elts = (object *)alloca(sizeof(object) * 4); -c_732327.elts[0] = ((closureN)self_73881)->elts[0]; -c_732327.elts[1] = ((closureN)self_73881)->elts[1]; -c_732327.elts[2] = r_73421; -c_732327.elts[3] = ((closureN)self_73881)->elts[2]; - -return_closcall1(data,(closure)&c_732327, car(((closureN)self_73881)->elts[3]));; -} - -static void __lambda_239(void *data, int argc, object self_73882, object r_73423) { - -closureN_type c_732332; -c_732332.hdr.mark = gc_color_red; - c_732332.hdr.grayed = 0; -c_732332.tag = closureN_tag; - c_732332.fn = (function_type)__lambda_238; -c_732332.num_args = 1; -c_732332.num_elt = 3; -c_732332.elts = (object *)alloca(sizeof(object) * 3); -c_732332.elts[0] = ((closureN)self_73882)->elts[1]; -c_732332.elts[1] = ((closureN)self_73882)->elts[2]; -c_732332.elts[2] = ((closureN)self_73882)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73882)->elts[0]), &c_732332, r_73423);; -} - -static void __lambda_238(void *data, int argc, object self_73883, object r_73422) { - return_closcall3(data, cell_get(((closureN)self_73883)->elts[2]), ((closureN)self_73883)->elts[0], ((closureN)self_73883)->elts[1], r_73422);; -} - -static void __lambda_237(void *data, int argc, object self_73884, object r_73417) { - -closureN_type c_731577; -c_731577.hdr.mark = gc_color_red; - c_731577.hdr.grayed = 0; -c_731577.tag = closureN_tag; - c_731577.fn = (function_type)__lambda_236; -c_731577.num_args = 1; -c_731577.num_elt = 25; -c_731577.elts = (object *)alloca(sizeof(object) * 25); -c_731577.elts[0] = ((closureN)self_73884)->elts[0]; -c_731577.elts[1] = ((closureN)self_73884)->elts[1]; -c_731577.elts[2] = ((closureN)self_73884)->elts[2]; -c_731577.elts[3] = ((closureN)self_73884)->elts[3]; -c_731577.elts[4] = ((closureN)self_73884)->elts[4]; -c_731577.elts[5] = ((closureN)self_73884)->elts[5]; -c_731577.elts[6] = ((closureN)self_73884)->elts[6]; -c_731577.elts[7] = ((closureN)self_73884)->elts[7]; -c_731577.elts[8] = ((closureN)self_73884)->elts[8]; -c_731577.elts[9] = ((closureN)self_73884)->elts[9]; -c_731577.elts[10] = ((closureN)self_73884)->elts[10]; -c_731577.elts[11] = ((closureN)self_73884)->elts[11]; -c_731577.elts[12] = ((closureN)self_73884)->elts[12]; -c_731577.elts[13] = ((closureN)self_73884)->elts[13]; -c_731577.elts[14] = ((closureN)self_73884)->elts[14]; -c_731577.elts[15] = ((closureN)self_73884)->elts[15]; -c_731577.elts[16] = ((closureN)self_73884)->elts[16]; -c_731577.elts[17] = ((closureN)self_73884)->elts[17]; -c_731577.elts[18] = ((closureN)self_73884)->elts[18]; -c_731577.elts[19] = ((closureN)self_73884)->elts[19]; -c_731577.elts[20] = ((closureN)self_73884)->elts[20]; -c_731577.elts[21] = ((closureN)self_73884)->elts[21]; -c_731577.elts[22] = ((closureN)self_73884)->elts[22]; -c_731577.elts[23] = ((closureN)self_73884)->elts[23]; -c_731577.elts[24] = ((closureN)self_73884)->elts[24]; - -return_closcall1(data,(closure)&c_731577, Cyc_set_car(data, ((closureN)self_73884)->elts[8], r_73417));; -} - -static void __lambda_236(void *data, int argc, object self_73885, object r_73288) { - -closureN_type c_731579; -c_731579.hdr.mark = gc_color_red; - c_731579.hdr.grayed = 0; -c_731579.tag = closureN_tag; - c_731579.fn = (function_type)__lambda_227; -c_731579.num_args = 1; -c_731579.num_elt = 25; -c_731579.elts = (object *)alloca(sizeof(object) * 25); -c_731579.elts[0] = ((closureN)self_73885)->elts[0]; -c_731579.elts[1] = ((closureN)self_73885)->elts[1]; -c_731579.elts[2] = ((closureN)self_73885)->elts[2]; -c_731579.elts[3] = ((closureN)self_73885)->elts[3]; -c_731579.elts[4] = ((closureN)self_73885)->elts[4]; -c_731579.elts[5] = ((closureN)self_73885)->elts[5]; -c_731579.elts[6] = ((closureN)self_73885)->elts[6]; -c_731579.elts[7] = ((closureN)self_73885)->elts[7]; -c_731579.elts[8] = ((closureN)self_73885)->elts[8]; -c_731579.elts[9] = ((closureN)self_73885)->elts[9]; -c_731579.elts[10] = ((closureN)self_73885)->elts[10]; -c_731579.elts[11] = ((closureN)self_73885)->elts[11]; -c_731579.elts[12] = ((closureN)self_73885)->elts[12]; -c_731579.elts[13] = ((closureN)self_73885)->elts[13]; -c_731579.elts[14] = ((closureN)self_73885)->elts[14]; -c_731579.elts[15] = ((closureN)self_73885)->elts[15]; -c_731579.elts[16] = ((closureN)self_73885)->elts[16]; -c_731579.elts[17] = ((closureN)self_73885)->elts[17]; -c_731579.elts[18] = ((closureN)self_73885)->elts[18]; -c_731579.elts[19] = ((closureN)self_73885)->elts[19]; -c_731579.elts[20] = ((closureN)self_73885)->elts[20]; -c_731579.elts[21] = ((closureN)self_73885)->elts[21]; -c_731579.elts[22] = ((closureN)self_73885)->elts[22]; -c_731579.elts[23] = ((closureN)self_73885)->elts[23]; -c_731579.elts[24] = ((closureN)self_73885)->elts[24]; - - -closureN_type c_732266; -c_732266.hdr.mark = gc_color_red; - c_732266.hdr.grayed = 0; -c_732266.tag = closureN_tag; - c_732266.fn = (function_type)__lambda_235; -c_732266.num_args = 1; -c_732266.num_elt = 2; -c_732266.elts = (object *)alloca(sizeof(object) * 2); -c_732266.elts[0] = ((closureN)self_73885)->elts[8]; -c_732266.elts[1] = ((closureN)self_73885)->elts[9]; - -return_closcall1(data,(closure)&c_731579, &c_732266);; -} - -static void __lambda_235(void *data, int argc, object self_73886, object k_73411, object lst_73185) { - -closureN_type c_732268; -c_732268.hdr.mark = gc_color_red; - c_732268.hdr.grayed = 0; -c_732268.tag = closureN_tag; - c_732268.fn = (function_type)__lambda_234; -c_732268.num_args = 1; -c_732268.num_elt = 4; -c_732268.elts = (object *)alloca(sizeof(object) * 4); -c_732268.elts[0] = k_73411; -c_732268.elts[1] = lst_73185; -c_732268.elts[2] = ((closureN)self_73886)->elts[0]; -c_732268.elts[3] = ((closureN)self_73886)->elts[1]; - -return_closcall1(data,(closure)&c_732268, Cyc_is_null(lst_73185));; -} - -static void __lambda_234(void *data, int argc, object self_73887, object r_73412) { - if( !eq(boolean_f, r_73412) ){ - -closureN_type c_732270; -c_732270.hdr.mark = gc_color_red; - c_732270.hdr.grayed = 0; -c_732270.tag = closureN_tag; - c_732270.fn = (function_type)__lambda_228; -c_732270.num_args = 0; -c_732270.num_elt = 1; -c_732270.elts = (object *)alloca(sizeof(object) * 1); -c_732270.elts[0] = ((closureN)self_73887)->elts[0]; - -return_closcall0(data,(closure)&c_732270); -} else { - -closureN_type c_732274; -c_732274.hdr.mark = gc_color_red; - c_732274.hdr.grayed = 0; -c_732274.tag = closureN_tag; - c_732274.fn = (function_type)__lambda_233; -c_732274.num_args = 0; -c_732274.num_elt = 4; -c_732274.elts = (object *)alloca(sizeof(object) * 4); -c_732274.elts[0] = ((closureN)self_73887)->elts[0]; -c_732274.elts[1] = ((closureN)self_73887)->elts[1]; -c_732274.elts[2] = ((closureN)self_73887)->elts[2]; -c_732274.elts[3] = ((closureN)self_73887)->elts[3]; - -return_closcall0(data,(closure)&c_732274);} -; -} - -static void __lambda_233(void *data, int argc, object self_73888) { - -closureN_type c_732276; -c_732276.hdr.mark = gc_color_red; - c_732276.hdr.grayed = 0; -c_732276.tag = closureN_tag; - c_732276.fn = (function_type)__lambda_232; -c_732276.num_args = 1; -c_732276.num_elt = 4; -c_732276.elts = (object *)alloca(sizeof(object) * 4); -c_732276.elts[0] = ((closureN)self_73888)->elts[0]; -c_732276.elts[1] = ((closureN)self_73888)->elts[1]; -c_732276.elts[2] = ((closureN)self_73888)->elts[2]; -c_732276.elts[3] = ((closureN)self_73888)->elts[3]; - -return_closcall1(data,(closure)&c_732276, car(((closureN)self_73888)->elts[1]));; -} - -static void __lambda_232(void *data, int argc, object self_73889, object r_73416) { - -closureN_type c_732281; -c_732281.hdr.mark = gc_color_red; - c_732281.hdr.grayed = 0; -c_732281.tag = closureN_tag; - c_732281.fn = (function_type)__lambda_231; -c_732281.num_args = 1; -c_732281.num_elt = 3; -c_732281.elts = (object *)alloca(sizeof(object) * 3); -c_732281.elts[0] = ((closureN)self_73889)->elts[0]; -c_732281.elts[1] = ((closureN)self_73889)->elts[1]; -c_732281.elts[2] = ((closureN)self_73889)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73889)->elts[2]), &c_732281, r_73416);; -} - -static void __lambda_231(void *data, int argc, object self_73890, object r_73413) { - -closureN_type c_732283; -c_732283.hdr.mark = gc_color_red; - c_732283.hdr.grayed = 0; -c_732283.tag = closureN_tag; - c_732283.fn = (function_type)__lambda_230; -c_732283.num_args = 1; -c_732283.num_elt = 3; -c_732283.elts = (object *)alloca(sizeof(object) * 3); -c_732283.elts[0] = ((closureN)self_73890)->elts[0]; -c_732283.elts[1] = r_73413; -c_732283.elts[2] = ((closureN)self_73890)->elts[2]; - -return_closcall1(data,(closure)&c_732283, cdr(((closureN)self_73890)->elts[1]));; -} - -static void __lambda_230(void *data, int argc, object self_73891, object r_73415) { - -closureN_type c_732288; -c_732288.hdr.mark = gc_color_red; - c_732288.hdr.grayed = 0; -c_732288.tag = closureN_tag; - c_732288.fn = (function_type)__lambda_229; -c_732288.num_args = 1; -c_732288.num_elt = 2; -c_732288.elts = (object *)alloca(sizeof(object) * 2); -c_732288.elts[0] = ((closureN)self_73891)->elts[0]; -c_732288.elts[1] = ((closureN)self_73891)->elts[1]; - -return_closcall2(data, cell_get(((closureN)self_73891)->elts[2]), &c_732288, r_73415);; -} - -static void __lambda_229(void *data, int argc, object self_73892, object r_73414) { - -make_cons(c_732293,((closureN)self_73892)->elts[1], r_73414); -return_closcall1(data, ((closureN)self_73892)->elts[0], &c_732293);; -} - -static void __lambda_228(void *data, int argc, object self_73893) { - return_closcall1(data, ((closureN)self_73893)->elts[0], nil);; -} - -static void __lambda_227(void *data, int argc, object self_73894, object r_73410) { - -closureN_type c_731581; -c_731581.hdr.mark = gc_color_red; - c_731581.hdr.grayed = 0; -c_731581.tag = closureN_tag; - c_731581.fn = (function_type)__lambda_226; -c_731581.num_args = 1; -c_731581.num_elt = 24; -c_731581.elts = (object *)alloca(sizeof(object) * 24); -c_731581.elts[0] = ((closureN)self_73894)->elts[0]; -c_731581.elts[1] = ((closureN)self_73894)->elts[1]; -c_731581.elts[2] = ((closureN)self_73894)->elts[2]; -c_731581.elts[3] = ((closureN)self_73894)->elts[3]; -c_731581.elts[4] = ((closureN)self_73894)->elts[4]; -c_731581.elts[5] = ((closureN)self_73894)->elts[5]; -c_731581.elts[6] = ((closureN)self_73894)->elts[6]; -c_731581.elts[7] = ((closureN)self_73894)->elts[7]; -c_731581.elts[8] = ((closureN)self_73894)->elts[8]; -c_731581.elts[9] = ((closureN)self_73894)->elts[10]; -c_731581.elts[10] = ((closureN)self_73894)->elts[11]; -c_731581.elts[11] = ((closureN)self_73894)->elts[12]; -c_731581.elts[12] = ((closureN)self_73894)->elts[13]; -c_731581.elts[13] = ((closureN)self_73894)->elts[14]; -c_731581.elts[14] = ((closureN)self_73894)->elts[15]; -c_731581.elts[15] = ((closureN)self_73894)->elts[16]; -c_731581.elts[16] = ((closureN)self_73894)->elts[17]; -c_731581.elts[17] = ((closureN)self_73894)->elts[18]; -c_731581.elts[18] = ((closureN)self_73894)->elts[19]; -c_731581.elts[19] = ((closureN)self_73894)->elts[20]; -c_731581.elts[20] = ((closureN)self_73894)->elts[21]; -c_731581.elts[21] = ((closureN)self_73894)->elts[22]; -c_731581.elts[22] = ((closureN)self_73894)->elts[23]; -c_731581.elts[23] = ((closureN)self_73894)->elts[24]; - -return_closcall1(data,(closure)&c_731581, Cyc_set_car(data, ((closureN)self_73894)->elts[9], r_73410));; -} - -static void __lambda_226(void *data, int argc, object self_73895, object r_73289) { - -closureN_type c_731583; -c_731583.hdr.mark = gc_color_red; - c_731583.hdr.grayed = 0; -c_731583.tag = closureN_tag; - c_731583.fn = (function_type)__lambda_213; -c_731583.num_args = 1; -c_731583.num_elt = 22; -c_731583.elts = (object *)alloca(sizeof(object) * 22); -c_731583.elts[0] = ((closureN)self_73895)->elts[0]; -c_731583.elts[1] = ((closureN)self_73895)->elts[2]; -c_731583.elts[2] = ((closureN)self_73895)->elts[3]; -c_731583.elts[3] = ((closureN)self_73895)->elts[4]; -c_731583.elts[4] = ((closureN)self_73895)->elts[5]; -c_731583.elts[5] = ((closureN)self_73895)->elts[6]; -c_731583.elts[6] = ((closureN)self_73895)->elts[7]; -c_731583.elts[7] = ((closureN)self_73895)->elts[9]; -c_731583.elts[8] = ((closureN)self_73895)->elts[10]; -c_731583.elts[9] = ((closureN)self_73895)->elts[11]; -c_731583.elts[10] = ((closureN)self_73895)->elts[12]; -c_731583.elts[11] = ((closureN)self_73895)->elts[13]; -c_731583.elts[12] = ((closureN)self_73895)->elts[14]; -c_731583.elts[13] = ((closureN)self_73895)->elts[15]; -c_731583.elts[14] = ((closureN)self_73895)->elts[16]; -c_731583.elts[15] = ((closureN)self_73895)->elts[17]; -c_731583.elts[16] = ((closureN)self_73895)->elts[18]; -c_731583.elts[17] = ((closureN)self_73895)->elts[19]; -c_731583.elts[18] = ((closureN)self_73895)->elts[20]; -c_731583.elts[19] = ((closureN)self_73895)->elts[21]; -c_731583.elts[20] = ((closureN)self_73895)->elts[22]; -c_731583.elts[21] = ((closureN)self_73895)->elts[23]; - - -closureN_type c_732201; -c_732201.hdr.mark = gc_color_red; - c_732201.hdr.grayed = 0; -c_732201.tag = closureN_tag; - c_732201.fn = (function_type)__lambda_225; -c_732201.num_args = 2; -c_732201.num_elt = 5; -c_732201.elts = (object *)alloca(sizeof(object) * 5); -c_732201.elts[0] = ((closureN)self_73895)->elts[1]; -c_732201.elts[1] = ((closureN)self_73895)->elts[5]; -c_732201.elts[2] = ((closureN)self_73895)->elts[8]; -c_732201.elts[3] = ((closureN)self_73895)->elts[10]; -c_732201.elts[4] = ((closureN)self_73895)->elts[23]; - -return_closcall1(data,(closure)&c_731583, &c_732201);; -} - -static void __lambda_225(void *data, int argc, object self_73896, object k_73401, object term_73184, object lst_73183) { - -closureN_type c_732203; -c_732203.hdr.mark = gc_color_red; - c_732203.hdr.grayed = 0; -c_732203.tag = closureN_tag; - c_732203.fn = (function_type)__lambda_224; -c_732203.num_args = 1; -c_732203.num_elt = 8; -c_732203.elts = (object *)alloca(sizeof(object) * 8); -c_732203.elts[0] = ((closureN)self_73896)->elts[0]; -c_732203.elts[1] = k_73401; -c_732203.elts[2] = lst_73183; -c_732203.elts[3] = ((closureN)self_73896)->elts[1]; -c_732203.elts[4] = ((closureN)self_73896)->elts[2]; -c_732203.elts[5] = ((closureN)self_73896)->elts[3]; -c_732203.elts[6] = term_73184; -c_732203.elts[7] = ((closureN)self_73896)->elts[4]; - -return_closcall1(data,(closure)&c_732203, Cyc_is_null(lst_73183));; -} - -static void __lambda_224(void *data, int argc, object self_73897, object r_73402) { - if( !eq(boolean_f, r_73402) ){ - -closureN_type c_732205; -c_732205.hdr.mark = gc_color_red; - c_732205.hdr.grayed = 0; -c_732205.tag = closureN_tag; - c_732205.fn = (function_type)__lambda_214; -c_732205.num_args = 0; -c_732205.num_elt = 2; -c_732205.elts = (object *)alloca(sizeof(object) * 2); -c_732205.elts[0] = ((closureN)self_73897)->elts[1]; -c_732205.elts[1] = ((closureN)self_73897)->elts[6]; - -return_closcall0(data,(closure)&c_732205); -} else { - -closureN_type c_732210; -c_732210.hdr.mark = gc_color_red; - c_732210.hdr.grayed = 0; -c_732210.tag = closureN_tag; - c_732210.fn = (function_type)__lambda_223; -c_732210.num_args = 1; -c_732210.num_elt = 8; -c_732210.elts = (object *)alloca(sizeof(object) * 8); -c_732210.elts[0] = ((closureN)self_73897)->elts[0]; -c_732210.elts[1] = ((closureN)self_73897)->elts[1]; -c_732210.elts[2] = ((closureN)self_73897)->elts[2]; -c_732210.elts[3] = ((closureN)self_73897)->elts[3]; -c_732210.elts[4] = ((closureN)self_73897)->elts[4]; -c_732210.elts[5] = ((closureN)self_73897)->elts[5]; -c_732210.elts[6] = ((closureN)self_73897)->elts[6]; -c_732210.elts[7] = ((closureN)self_73897)->elts[7]; - -return_closcall1(data,(closure)&c_732210, car(((closureN)self_73897)->elts[2]));} -; -} - -static void __lambda_223(void *data, int argc, object self_73898, object r_73409) { - -closureN_type c_732212; -c_732212.hdr.mark = gc_color_red; - c_732212.hdr.grayed = 0; -c_732212.tag = closureN_tag; - c_732212.fn = (function_type)__lambda_222; -c_732212.num_args = 1; -c_732212.num_elt = 8; -c_732212.elts = (object *)alloca(sizeof(object) * 8); -c_732212.elts[0] = ((closureN)self_73898)->elts[0]; -c_732212.elts[1] = ((closureN)self_73898)->elts[1]; -c_732212.elts[2] = ((closureN)self_73898)->elts[2]; -c_732212.elts[3] = ((closureN)self_73898)->elts[3]; -c_732212.elts[4] = ((closureN)self_73898)->elts[4]; -c_732212.elts[5] = ((closureN)self_73898)->elts[5]; -c_732212.elts[6] = ((closureN)self_73898)->elts[6]; -c_732212.elts[7] = ((closureN)self_73898)->elts[7]; - -return_closcall1(data,(closure)&c_732212, cadr(r_73409));; -} - -static void __lambda_222(void *data, int argc, object self_73899, object r_73408) { - -closureN_type c_732217; -c_732217.hdr.mark = gc_color_red; - c_732217.hdr.grayed = 0; -c_732217.tag = closureN_tag; - c_732217.fn = (function_type)__lambda_221; -c_732217.num_args = 1; -c_732217.num_elt = 7; -c_732217.elts = (object *)alloca(sizeof(object) * 7); -c_732217.elts[0] = ((closureN)self_73899)->elts[0]; -c_732217.elts[1] = ((closureN)self_73899)->elts[1]; -c_732217.elts[2] = ((closureN)self_73899)->elts[2]; -c_732217.elts[3] = ((closureN)self_73899)->elts[4]; -c_732217.elts[4] = ((closureN)self_73899)->elts[5]; -c_732217.elts[5] = ((closureN)self_73899)->elts[6]; -c_732217.elts[6] = ((closureN)self_73899)->elts[7]; - -return_closcall3(data, cell_get(((closureN)self_73899)->elts[3]), &c_732217, ((closureN)self_73899)->elts[6], r_73408);; -} - -static void __lambda_221(void *data, int argc, object self_73900, object r_73403) { - if( !eq(boolean_f, r_73403) ){ - -closureN_type c_732219; -c_732219.hdr.mark = gc_color_red; - c_732219.hdr.grayed = 0; -c_732219.tag = closureN_tag; - c_732219.fn = (function_type)__lambda_218; -c_732219.num_args = 0; -c_732219.num_elt = 5; -c_732219.elts = (object *)alloca(sizeof(object) * 5); -c_732219.elts[0] = ((closureN)self_73900)->elts[0]; -c_732219.elts[1] = ((closureN)self_73900)->elts[1]; -c_732219.elts[2] = ((closureN)self_73900)->elts[2]; -c_732219.elts[3] = ((closureN)self_73900)->elts[3]; -c_732219.elts[4] = ((closureN)self_73900)->elts[6]; - -return_closcall0(data,(closure)&c_732219); -} else { - -closureN_type c_732243; -c_732243.hdr.mark = gc_color_red; - c_732243.hdr.grayed = 0; -c_732243.tag = closureN_tag; - c_732243.fn = (function_type)__lambda_220; -c_732243.num_args = 0; -c_732243.num_elt = 4; -c_732243.elts = (object *)alloca(sizeof(object) * 4); -c_732243.elts[0] = ((closureN)self_73900)->elts[1]; -c_732243.elts[1] = ((closureN)self_73900)->elts[2]; -c_732243.elts[2] = ((closureN)self_73900)->elts[4]; -c_732243.elts[3] = ((closureN)self_73900)->elts[5]; - -return_closcall0(data,(closure)&c_732243);} -; -} - -static void __lambda_220(void *data, int argc, object self_73901) { - -closureN_type c_732245; -c_732245.hdr.mark = gc_color_red; - c_732245.hdr.grayed = 0; -c_732245.tag = closureN_tag; - c_732245.fn = (function_type)__lambda_219; -c_732245.num_args = 1; -c_732245.num_elt = 3; -c_732245.elts = (object *)alloca(sizeof(object) * 3); -c_732245.elts[0] = ((closureN)self_73901)->elts[0]; -c_732245.elts[1] = ((closureN)self_73901)->elts[2]; -c_732245.elts[2] = ((closureN)self_73901)->elts[3]; - -return_closcall1(data,(closure)&c_732245, cdr(((closureN)self_73901)->elts[1]));; -} - -static void __lambda_219(void *data, int argc, object self_73902, object r_73407) { - return_closcall3(data, cell_get(((closureN)self_73902)->elts[1]), ((closureN)self_73902)->elts[0], ((closureN)self_73902)->elts[2], r_73407);; -} - -static void __lambda_218(void *data, int argc, object self_73903) { - -closureN_type c_732221; -c_732221.hdr.mark = gc_color_red; - c_732221.hdr.grayed = 0; -c_732221.tag = closureN_tag; - c_732221.fn = (function_type)__lambda_217; -c_732221.num_args = 1; -c_732221.num_elt = 4; -c_732221.elts = (object *)alloca(sizeof(object) * 4); -c_732221.elts[0] = ((closureN)self_73903)->elts[0]; -c_732221.elts[1] = ((closureN)self_73903)->elts[1]; -c_732221.elts[2] = ((closureN)self_73903)->elts[3]; -c_732221.elts[3] = ((closureN)self_73903)->elts[4]; - -return_closcall1(data,(closure)&c_732221, car(((closureN)self_73903)->elts[2]));; -} - -static void __lambda_217(void *data, int argc, object self_73904, object r_73406) { - -closureN_type c_732223; -c_732223.hdr.mark = gc_color_red; - c_732223.hdr.grayed = 0; -c_732223.tag = closureN_tag; - c_732223.fn = (function_type)__lambda_216; -c_732223.num_args = 1; -c_732223.num_elt = 4; -c_732223.elts = (object *)alloca(sizeof(object) * 4); -c_732223.elts[0] = ((closureN)self_73904)->elts[0]; -c_732223.elts[1] = ((closureN)self_73904)->elts[1]; -c_732223.elts[2] = ((closureN)self_73904)->elts[2]; -c_732223.elts[3] = ((closureN)self_73904)->elts[3]; - -return_closcall1(data,(closure)&c_732223, caddr(r_73406));; -} - -static void __lambda_216(void *data, int argc, object self_73905, object r_73405) { - -closureN_type c_732228; -c_732228.hdr.mark = gc_color_red; - c_732228.hdr.grayed = 0; -c_732228.tag = closureN_tag; - c_732228.fn = (function_type)__lambda_215; -c_732228.num_args = 1; -c_732228.num_elt = 2; -c_732228.elts = (object *)alloca(sizeof(object) * 2); -c_732228.elts[0] = ((closureN)self_73905)->elts[1]; -c_732228.elts[1] = ((closureN)self_73905)->elts[2]; - -return_closcall3(data, cell_get(((closureN)self_73905)->elts[0]), &c_732228, cell_get(((closureN)self_73905)->elts[3]), r_73405);; -} - -static void __lambda_215(void *data, int argc, object self_73906, object r_73404) { - return_closcall2(data, cell_get(((closureN)self_73906)->elts[1]), ((closureN)self_73906)->elts[0], r_73404);; -} - -static void __lambda_214(void *data, int argc, object self_73907) { - return_closcall1(data, ((closureN)self_73907)->elts[0], ((closureN)self_73907)->elts[1]);; -} - -static void __lambda_213(void *data, int argc, object self_73908, object r_73400) { - -closureN_type c_731585; -c_731585.hdr.mark = gc_color_red; - c_731585.hdr.grayed = 0; -c_731585.tag = closureN_tag; - c_731585.fn = (function_type)__lambda_212; -c_731585.num_args = 1; -c_731585.num_elt = 21; -c_731585.elts = (object *)alloca(sizeof(object) * 21); -c_731585.elts[0] = ((closureN)self_73908)->elts[0]; -c_731585.elts[1] = ((closureN)self_73908)->elts[1]; -c_731585.elts[2] = ((closureN)self_73908)->elts[2]; -c_731585.elts[3] = ((closureN)self_73908)->elts[3]; -c_731585.elts[4] = ((closureN)self_73908)->elts[4]; -c_731585.elts[5] = ((closureN)self_73908)->elts[5]; -c_731585.elts[6] = ((closureN)self_73908)->elts[6]; -c_731585.elts[7] = ((closureN)self_73908)->elts[7]; -c_731585.elts[8] = ((closureN)self_73908)->elts[9]; -c_731585.elts[9] = ((closureN)self_73908)->elts[10]; -c_731585.elts[10] = ((closureN)self_73908)->elts[11]; -c_731585.elts[11] = ((closureN)self_73908)->elts[12]; -c_731585.elts[12] = ((closureN)self_73908)->elts[13]; -c_731585.elts[13] = ((closureN)self_73908)->elts[14]; -c_731585.elts[14] = ((closureN)self_73908)->elts[15]; -c_731585.elts[15] = ((closureN)self_73908)->elts[16]; -c_731585.elts[16] = ((closureN)self_73908)->elts[17]; -c_731585.elts[17] = ((closureN)self_73908)->elts[18]; -c_731585.elts[18] = ((closureN)self_73908)->elts[19]; -c_731585.elts[19] = ((closureN)self_73908)->elts[20]; -c_731585.elts[20] = ((closureN)self_73908)->elts[21]; - -return_closcall1(data,(closure)&c_731585, Cyc_set_car(data, ((closureN)self_73908)->elts[8], r_73400));; -} - -static void __lambda_212(void *data, int argc, object self_73909, object r_73290) { - -closureN_type c_731587; -c_731587.hdr.mark = gc_color_red; - c_731587.hdr.grayed = 0; -c_731587.tag = closureN_tag; - c_731587.fn = (function_type)__lambda_211; -c_731587.num_args = 1; -c_731587.num_elt = 21; -c_731587.elts = (object *)alloca(sizeof(object) * 21); -c_731587.elts[0] = ((closureN)self_73909)->elts[0]; -c_731587.elts[1] = ((closureN)self_73909)->elts[1]; -c_731587.elts[2] = ((closureN)self_73909)->elts[2]; -c_731587.elts[3] = ((closureN)self_73909)->elts[3]; -c_731587.elts[4] = ((closureN)self_73909)->elts[4]; -c_731587.elts[5] = ((closureN)self_73909)->elts[5]; -c_731587.elts[6] = ((closureN)self_73909)->elts[6]; -c_731587.elts[7] = ((closureN)self_73909)->elts[7]; -c_731587.elts[8] = ((closureN)self_73909)->elts[8]; -c_731587.elts[9] = ((closureN)self_73909)->elts[9]; -c_731587.elts[10] = ((closureN)self_73909)->elts[10]; -c_731587.elts[11] = ((closureN)self_73909)->elts[11]; -c_731587.elts[12] = ((closureN)self_73909)->elts[12]; -c_731587.elts[13] = ((closureN)self_73909)->elts[13]; -c_731587.elts[14] = ((closureN)self_73909)->elts[14]; -c_731587.elts[15] = ((closureN)self_73909)->elts[15]; -c_731587.elts[16] = ((closureN)self_73909)->elts[16]; -c_731587.elts[17] = ((closureN)self_73909)->elts[17]; -c_731587.elts[18] = ((closureN)self_73909)->elts[18]; -c_731587.elts[19] = ((closureN)self_73909)->elts[19]; -c_731587.elts[20] = ((closureN)self_73909)->elts[20]; - -return_closcall1(data,(closure)&c_731587, quote__85);; -} - -static void __lambda_211(void *data, int argc, object self_73910, object r_73399) { - -closureN_type c_731589; -c_731589.hdr.mark = gc_color_red; - c_731589.hdr.grayed = 0; -c_731589.tag = closureN_tag; - c_731589.fn = (function_type)__lambda_210; -c_731589.num_args = 1; -c_731589.num_elt = 21; -c_731589.elts = (object *)alloca(sizeof(object) * 21); -c_731589.elts[0] = ((closureN)self_73910)->elts[0]; -c_731589.elts[1] = ((closureN)self_73910)->elts[1]; -c_731589.elts[2] = ((closureN)self_73910)->elts[2]; -c_731589.elts[3] = ((closureN)self_73910)->elts[3]; -c_731589.elts[4] = ((closureN)self_73910)->elts[4]; -c_731589.elts[5] = ((closureN)self_73910)->elts[5]; -c_731589.elts[6] = ((closureN)self_73910)->elts[6]; -c_731589.elts[7] = ((closureN)self_73910)->elts[7]; -c_731589.elts[8] = ((closureN)self_73910)->elts[8]; -c_731589.elts[9] = ((closureN)self_73910)->elts[9]; -c_731589.elts[10] = ((closureN)self_73910)->elts[10]; -c_731589.elts[11] = ((closureN)self_73910)->elts[11]; -c_731589.elts[12] = ((closureN)self_73910)->elts[12]; -c_731589.elts[13] = ((closureN)self_73910)->elts[13]; -c_731589.elts[14] = ((closureN)self_73910)->elts[14]; -c_731589.elts[15] = ((closureN)self_73910)->elts[15]; -c_731589.elts[16] = ((closureN)self_73910)->elts[16]; -c_731589.elts[17] = ((closureN)self_73910)->elts[17]; -c_731589.elts[18] = ((closureN)self_73910)->elts[18]; -c_731589.elts[19] = ((closureN)self_73910)->elts[19]; -c_731589.elts[20] = ((closureN)self_73910)->elts[20]; - -return_closcall1(data,(closure)&c_731589, Cyc_set_car(data, ((closureN)self_73910)->elts[20], r_73399));; -} - -static void __lambda_210(void *data, int argc, object self_73911, object r_73291) { - -closureN_type c_731591; -c_731591.hdr.mark = gc_color_red; - c_731591.hdr.grayed = 0; -c_731591.tag = closureN_tag; - c_731591.fn = (function_type)__lambda_206; -c_731591.num_args = 1; -c_731591.num_elt = 21; -c_731591.elts = (object *)alloca(sizeof(object) * 21); -c_731591.elts[0] = ((closureN)self_73911)->elts[0]; -c_731591.elts[1] = ((closureN)self_73911)->elts[1]; -c_731591.elts[2] = ((closureN)self_73911)->elts[2]; -c_731591.elts[3] = ((closureN)self_73911)->elts[3]; -c_731591.elts[4] = ((closureN)self_73911)->elts[4]; -c_731591.elts[5] = ((closureN)self_73911)->elts[5]; -c_731591.elts[6] = ((closureN)self_73911)->elts[6]; -c_731591.elts[7] = ((closureN)self_73911)->elts[7]; -c_731591.elts[8] = ((closureN)self_73911)->elts[8]; -c_731591.elts[9] = ((closureN)self_73911)->elts[9]; -c_731591.elts[10] = ((closureN)self_73911)->elts[10]; -c_731591.elts[11] = ((closureN)self_73911)->elts[11]; -c_731591.elts[12] = ((closureN)self_73911)->elts[12]; -c_731591.elts[13] = ((closureN)self_73911)->elts[13]; -c_731591.elts[14] = ((closureN)self_73911)->elts[14]; -c_731591.elts[15] = ((closureN)self_73911)->elts[15]; -c_731591.elts[16] = ((closureN)self_73911)->elts[16]; -c_731591.elts[17] = ((closureN)self_73911)->elts[17]; -c_731591.elts[18] = ((closureN)self_73911)->elts[18]; -c_731591.elts[19] = ((closureN)self_73911)->elts[19]; -c_731591.elts[20] = ((closureN)self_73911)->elts[20]; - - -closureN_type c_732180; -c_732180.hdr.mark = gc_color_red; - c_732180.hdr.grayed = 0; -c_732180.tag = closureN_tag; - c_732180.fn = (function_type)__lambda_209; -c_732180.num_args = 2; -c_732180.num_elt = 2; -c_732180.elts = (object *)alloca(sizeof(object) * 2); -c_732180.elts[0] = ((closureN)self_73911)->elts[5]; -c_732180.elts[1] = ((closureN)self_73911)->elts[20]; - -return_closcall1(data,(closure)&c_731591, &c_732180);; -} - -static void __lambda_209(void *data, int argc, object self_73912, object k_73396, object term1_73182, object term2_73181) { - -closureN_type c_732182; -c_732182.hdr.mark = gc_color_red; - c_732182.hdr.grayed = 0; -c_732182.tag = closureN_tag; - c_732182.fn = (function_type)__lambda_208; -c_732182.num_args = 1; -c_732182.num_elt = 5; -c_732182.elts = (object *)alloca(sizeof(object) * 5); -c_732182.elts[0] = k_73396; -c_732182.elts[1] = ((closureN)self_73912)->elts[0]; -c_732182.elts[2] = term1_73182; -c_732182.elts[3] = term2_73181; -c_732182.elts[4] = ((closureN)self_73912)->elts[1]; - -return_closcall1(data,(closure)&c_732182, nil);; -} - -static void __lambda_208(void *data, int argc, object self_73913, object r_73398) { - -closureN_type c_732184; -c_732184.hdr.mark = gc_color_red; - c_732184.hdr.grayed = 0; -c_732184.tag = closureN_tag; - c_732184.fn = (function_type)__lambda_207; -c_732184.num_args = 1; -c_732184.num_elt = 4; -c_732184.elts = (object *)alloca(sizeof(object) * 4); -c_732184.elts[0] = ((closureN)self_73913)->elts[0]; -c_732184.elts[1] = ((closureN)self_73913)->elts[1]; -c_732184.elts[2] = ((closureN)self_73913)->elts[2]; -c_732184.elts[3] = ((closureN)self_73913)->elts[3]; - -return_closcall1(data,(closure)&c_732184, Cyc_set_car(data, ((closureN)self_73913)->elts[4], r_73398));; -} - -static void __lambda_207(void *data, int argc, object self_73914, object r_73397) { - return_closcall3(data, cell_get(((closureN)self_73914)->elts[1]), ((closureN)self_73914)->elts[0], ((closureN)self_73914)->elts[2], ((closureN)self_73914)->elts[3]);; -} - -static void __lambda_206(void *data, int argc, object self_73915, object r_73395) { - -closureN_type c_731593; -c_731593.hdr.mark = gc_color_red; - c_731593.hdr.grayed = 0; -c_731593.tag = closureN_tag; - c_731593.fn = (function_type)__lambda_205; -c_731593.num_args = 1; -c_731593.num_elt = 20; -c_731593.elts = (object *)alloca(sizeof(object) * 20); -c_731593.elts[0] = ((closureN)self_73915)->elts[0]; -c_731593.elts[1] = ((closureN)self_73915)->elts[1]; -c_731593.elts[2] = ((closureN)self_73915)->elts[2]; -c_731593.elts[3] = ((closureN)self_73915)->elts[3]; -c_731593.elts[4] = ((closureN)self_73915)->elts[5]; -c_731593.elts[5] = ((closureN)self_73915)->elts[6]; -c_731593.elts[6] = ((closureN)self_73915)->elts[7]; -c_731593.elts[7] = ((closureN)self_73915)->elts[8]; -c_731593.elts[8] = ((closureN)self_73915)->elts[9]; -c_731593.elts[9] = ((closureN)self_73915)->elts[10]; -c_731593.elts[10] = ((closureN)self_73915)->elts[11]; -c_731593.elts[11] = ((closureN)self_73915)->elts[12]; -c_731593.elts[12] = ((closureN)self_73915)->elts[13]; -c_731593.elts[13] = ((closureN)self_73915)->elts[14]; -c_731593.elts[14] = ((closureN)self_73915)->elts[15]; -c_731593.elts[15] = ((closureN)self_73915)->elts[16]; -c_731593.elts[16] = ((closureN)self_73915)->elts[17]; -c_731593.elts[17] = ((closureN)self_73915)->elts[18]; -c_731593.elts[18] = ((closureN)self_73915)->elts[19]; -c_731593.elts[19] = ((closureN)self_73915)->elts[20]; - -return_closcall1(data,(closure)&c_731593, Cyc_set_car(data, ((closureN)self_73915)->elts[4], r_73395));; -} - -static void __lambda_205(void *data, int argc, object self_73916, object r_73292) { - -closureN_type c_731595; -c_731595.hdr.mark = gc_color_red; - c_731595.hdr.grayed = 0; -c_731595.tag = closureN_tag; - c_731595.fn = (function_type)__lambda_183; -c_731595.num_args = 1; -c_731595.num_elt = 19; -c_731595.elts = (object *)alloca(sizeof(object) * 19); -c_731595.elts[0] = ((closureN)self_73916)->elts[0]; -c_731595.elts[1] = ((closureN)self_73916)->elts[1]; -c_731595.elts[2] = ((closureN)self_73916)->elts[2]; -c_731595.elts[3] = ((closureN)self_73916)->elts[3]; -c_731595.elts[4] = ((closureN)self_73916)->elts[4]; -c_731595.elts[5] = ((closureN)self_73916)->elts[5]; -c_731595.elts[6] = ((closureN)self_73916)->elts[6]; -c_731595.elts[7] = ((closureN)self_73916)->elts[7]; -c_731595.elts[8] = ((closureN)self_73916)->elts[8]; -c_731595.elts[9] = ((closureN)self_73916)->elts[9]; -c_731595.elts[10] = ((closureN)self_73916)->elts[10]; -c_731595.elts[11] = ((closureN)self_73916)->elts[11]; -c_731595.elts[12] = ((closureN)self_73916)->elts[12]; -c_731595.elts[13] = ((closureN)self_73916)->elts[13]; -c_731595.elts[14] = ((closureN)self_73916)->elts[14]; -c_731595.elts[15] = ((closureN)self_73916)->elts[15]; -c_731595.elts[16] = ((closureN)self_73916)->elts[16]; -c_731595.elts[17] = ((closureN)self_73916)->elts[17]; -c_731595.elts[18] = ((closureN)self_73916)->elts[18]; - - -closureN_type c_732066; -c_732066.hdr.mark = gc_color_red; - c_732066.hdr.grayed = 0; -c_732066.tag = closureN_tag; - c_732066.fn = (function_type)__lambda_204; -c_732066.num_args = 2; -c_732066.num_elt = 3; -c_732066.elts = (object *)alloca(sizeof(object) * 3); -c_732066.elts[0] = ((closureN)self_73916)->elts[5]; -c_732066.elts[1] = ((closureN)self_73916)->elts[11]; -c_732066.elts[2] = ((closureN)self_73916)->elts[19]; - -return_closcall1(data,(closure)&c_731595, &c_732066);; -} - -static void __lambda_204(void *data, int argc, object self_73917, object k_73381, object term1_73179, object term2_73178) { - -closureN_type c_732068; -c_732068.hdr.mark = gc_color_red; - c_732068.hdr.grayed = 0; -c_732068.tag = closureN_tag; - c_732068.fn = (function_type)__lambda_203; -c_732068.num_args = 1; -c_732068.num_elt = 6; -c_732068.elts = (object *)alloca(sizeof(object) * 6); -c_732068.elts[0] = k_73381; -c_732068.elts[1] = ((closureN)self_73917)->elts[0]; -c_732068.elts[2] = ((closureN)self_73917)->elts[1]; -c_732068.elts[3] = term1_73179; -c_732068.elts[4] = term2_73178; -c_732068.elts[5] = ((closureN)self_73917)->elts[2]; - -return_closcall1(data,(closure)&c_732068, Cyc_is_cons(term2_73178));; -} - -static void __lambda_203(void *data, int argc, object self_73918, object r_73382) { - if( !eq(boolean_f, r_73382) ){ - -closureN_type c_732070; -c_732070.hdr.mark = gc_color_red; - c_732070.hdr.grayed = 0; -c_732070.tag = closureN_tag; - c_732070.fn = (function_type)__lambda_192; -c_732070.num_args = 1; -c_732070.num_elt = 4; -c_732070.elts = (object *)alloca(sizeof(object) * 4); -c_732070.elts[0] = ((closureN)self_73918)->elts[0]; -c_732070.elts[1] = ((closureN)self_73918)->elts[1]; -c_732070.elts[2] = ((closureN)self_73918)->elts[3]; -c_732070.elts[3] = ((closureN)self_73918)->elts[4]; - -return_closcall1(data,(closure)&c_732070, Cyc_is_cons(((closureN)self_73918)->elts[3])); -} else { - -closureN_type c_732116; -c_732116.hdr.mark = gc_color_red; - c_732116.hdr.grayed = 0; -c_732116.tag = closureN_tag; - c_732116.fn = (function_type)__lambda_202; -c_732116.num_args = 0; -c_732116.num_elt = 5; -c_732116.elts = (object *)alloca(sizeof(object) * 5); -c_732116.elts[0] = ((closureN)self_73918)->elts[0]; -c_732116.elts[1] = ((closureN)self_73918)->elts[2]; -c_732116.elts[2] = ((closureN)self_73918)->elts[3]; -c_732116.elts[3] = ((closureN)self_73918)->elts[4]; -c_732116.elts[4] = ((closureN)self_73918)->elts[5]; - -return_closcall0(data,(closure)&c_732116);} -; -} - -static void __lambda_202(void *data, int argc, object self_73919) { - -closureN_type c_732118; -c_732118.hdr.mark = gc_color_red; - c_732118.hdr.grayed = 0; -c_732118.tag = closureN_tag; - c_732118.fn = (function_type)__lambda_201; -c_732118.num_args = 1; -c_732118.num_elt = 5; -c_732118.elts = (object *)alloca(sizeof(object) * 5); -c_732118.elts[0] = ((closureN)self_73919)->elts[0]; -c_732118.elts[1] = ((closureN)self_73919)->elts[1]; -c_732118.elts[2] = ((closureN)self_73919)->elts[2]; -c_732118.elts[3] = ((closureN)self_73919)->elts[3]; -c_732118.elts[4] = ((closureN)self_73919)->elts[4]; - -return_closcall1(data,(closure)&c_732118, assq(data, ((closureN)self_73919)->elts[3], cell_get(((closureN)self_73919)->elts[4])));; -} - -static void __lambda_201(void *data, int argc, object self_73920, object temp_91temp_73180) { - if( !eq(boolean_f, temp_91temp_73180) ){ - -closureN_type c_732120; -c_732120.hdr.mark = gc_color_red; - c_732120.hdr.grayed = 0; -c_732120.tag = closureN_tag; - c_732120.fn = (function_type)__lambda_194; -c_732120.num_args = 0; -c_732120.num_elt = 4; -c_732120.elts = (object *)alloca(sizeof(object) * 4); -c_732120.elts[0] = ((closureN)self_73920)->elts[0]; -c_732120.elts[1] = temp_91temp_73180; -c_732120.elts[2] = ((closureN)self_73920)->elts[1]; -c_732120.elts[3] = ((closureN)self_73920)->elts[2]; - -return_closcall0(data,(closure)&c_732120); -} else { - -closureN_type c_732133; -c_732133.hdr.mark = gc_color_red; - c_732133.hdr.grayed = 0; -c_732133.tag = closureN_tag; - c_732133.fn = (function_type)__lambda_200; -c_732133.num_args = 1; -c_732133.num_elt = 4; -c_732133.elts = (object *)alloca(sizeof(object) * 4); -c_732133.elts[0] = ((closureN)self_73920)->elts[0]; -c_732133.elts[1] = ((closureN)self_73920)->elts[2]; -c_732133.elts[2] = ((closureN)self_73920)->elts[3]; -c_732133.elts[3] = ((closureN)self_73920)->elts[4]; - -return_closcall1(data,(closure)&c_732133, Cyc_is_number(((closureN)self_73920)->elts[3]));} -; -} - -static void __lambda_200(void *data, int argc, object self_73921, object r_73391) { - if( !eq(boolean_f, r_73391) ){ - -closureN_type c_732135; -c_732135.hdr.mark = gc_color_red; - c_732135.hdr.grayed = 0; -c_732135.tag = closureN_tag; - c_732135.fn = (function_type)__lambda_195; -c_732135.num_args = 0; -c_732135.num_elt = 3; -c_732135.elts = (object *)alloca(sizeof(object) * 3); -c_732135.elts[0] = ((closureN)self_73921)->elts[0]; -c_732135.elts[1] = ((closureN)self_73921)->elts[1]; -c_732135.elts[2] = ((closureN)self_73921)->elts[2]; - -return_closcall0(data,(closure)&c_732135); -} else { - -closureN_type c_732143; -c_732143.hdr.mark = gc_color_red; - c_732143.hdr.grayed = 0; -c_732143.tag = closureN_tag; - c_732143.fn = (function_type)__lambda_199; -c_732143.num_args = 0; -c_732143.num_elt = 4; -c_732143.elts = (object *)alloca(sizeof(object) * 4); -c_732143.elts[0] = ((closureN)self_73921)->elts[0]; -c_732143.elts[1] = ((closureN)self_73921)->elts[1]; -c_732143.elts[2] = ((closureN)self_73921)->elts[2]; -c_732143.elts[3] = ((closureN)self_73921)->elts[3]; - -return_closcall0(data,(closure)&c_732143);} -; -} - -static void __lambda_199(void *data, int argc, object self_73922) { - -closureN_type c_732145; -c_732145.hdr.mark = gc_color_red; - c_732145.hdr.grayed = 0; -c_732145.tag = closureN_tag; - c_732145.fn = (function_type)__lambda_198; -c_732145.num_args = 1; -c_732145.num_elt = 2; -c_732145.elts = (object *)alloca(sizeof(object) * 2); -c_732145.elts[0] = ((closureN)self_73922)->elts[0]; -c_732145.elts[1] = ((closureN)self_73922)->elts[3]; - - -make_cons(c_732163,((closureN)self_73922)->elts[2], ((closureN)self_73922)->elts[1]); -return_closcall1(data,(closure)&c_732145, &c_732163);; -} - -static void __lambda_198(void *data, int argc, object self_73923, object r_73394) { - -closureN_type c_732147; -c_732147.hdr.mark = gc_color_red; - c_732147.hdr.grayed = 0; -c_732147.tag = closureN_tag; - c_732147.fn = (function_type)__lambda_197; -c_732147.num_args = 1; -c_732147.num_elt = 2; -c_732147.elts = (object *)alloca(sizeof(object) * 2); -c_732147.elts[0] = ((closureN)self_73923)->elts[0]; -c_732147.elts[1] = ((closureN)self_73923)->elts[1]; - - -make_cons(c_732157,r_73394, cell_get(((closureN)self_73923)->elts[1])); -return_closcall1(data,(closure)&c_732147, &c_732157);; -} - -static void __lambda_197(void *data, int argc, object self_73924, object r_73393) { - -closureN_type c_732149; -c_732149.hdr.mark = gc_color_red; - c_732149.hdr.grayed = 0; -c_732149.tag = closureN_tag; - c_732149.fn = (function_type)__lambda_196; -c_732149.num_args = 1; -c_732149.num_elt = 1; -c_732149.elts = (object *)alloca(sizeof(object) * 1); -c_732149.elts[0] = ((closureN)self_73924)->elts[0]; - -return_closcall1(data,(closure)&c_732149, Cyc_set_car(data, ((closureN)self_73924)->elts[1], r_73393));; -} - -static void __lambda_196(void *data, int argc, object self_73925, object r_73392) { - return_closcall1(data, ((closureN)self_73925)->elts[0], boolean_t);; -} - -static void __lambda_195(void *data, int argc, object self_73926) { - return_closcall1(data, ((closureN)self_73926)->elts[0], equalp(((closureN)self_73926)->elts[1], ((closureN)self_73926)->elts[2]));; -} - -static void __lambda_194(void *data, int argc, object self_73927) { - -closureN_type c_732122; -c_732122.hdr.mark = gc_color_red; - c_732122.hdr.grayed = 0; -c_732122.tag = closureN_tag; - c_732122.fn = (function_type)__lambda_193; -c_732122.num_args = 1; -c_732122.num_elt = 3; -c_732122.elts = (object *)alloca(sizeof(object) * 3); -c_732122.elts[0] = ((closureN)self_73927)->elts[0]; -c_732122.elts[1] = ((closureN)self_73927)->elts[2]; -c_732122.elts[2] = ((closureN)self_73927)->elts[3]; - -return_closcall1(data,(closure)&c_732122, cdr(((closureN)self_73927)->elts[1]));; -} - -static void __lambda_193(void *data, int argc, object self_73928, object r_73390) { - return_closcall3(data, cell_get(((closureN)self_73928)->elts[1]), ((closureN)self_73928)->elts[0], ((closureN)self_73928)->elts[2], r_73390);; -} - -static void __lambda_192(void *data, int argc, object self_73929, object r_73383) { - if( !eq(boolean_f, r_73383) ){ - -closureN_type c_732072; -c_732072.hdr.mark = gc_color_red; - c_732072.hdr.grayed = 0; -c_732072.tag = closureN_tag; - c_732072.fn = (function_type)__lambda_190; -c_732072.num_args = 1; -c_732072.num_elt = 4; -c_732072.elts = (object *)alloca(sizeof(object) * 4); -c_732072.elts[0] = ((closureN)self_73929)->elts[0]; -c_732072.elts[1] = ((closureN)self_73929)->elts[1]; -c_732072.elts[2] = ((closureN)self_73929)->elts[2]; -c_732072.elts[3] = ((closureN)self_73929)->elts[3]; - -return_closcall1(data,(closure)&c_732072, car(((closureN)self_73929)->elts[2])); -} else { - -closureN_type c_732109; -c_732109.hdr.mark = gc_color_red; - c_732109.hdr.grayed = 0; -c_732109.tag = closureN_tag; - c_732109.fn = (function_type)__lambda_191; -c_732109.num_args = 0; -c_732109.num_elt = 1; -c_732109.elts = (object *)alloca(sizeof(object) * 1); -c_732109.elts[0] = ((closureN)self_73929)->elts[0]; - -return_closcall0(data,(closure)&c_732109);} -; -} - -static void __lambda_191(void *data, int argc, object self_73930) { - return_closcall1(data, ((closureN)self_73930)->elts[0], boolean_f);; -} - -static void __lambda_190(void *data, int argc, object self_73931, object r_73387) { - -closureN_type c_732074; -c_732074.hdr.mark = gc_color_red; - c_732074.hdr.grayed = 0; -c_732074.tag = closureN_tag; - c_732074.fn = (function_type)__lambda_189; -c_732074.num_args = 1; -c_732074.num_elt = 5; -c_732074.elts = (object *)alloca(sizeof(object) * 5); -c_732074.elts[0] = ((closureN)self_73931)->elts[0]; -c_732074.elts[1] = ((closureN)self_73931)->elts[1]; -c_732074.elts[2] = r_73387; -c_732074.elts[3] = ((closureN)self_73931)->elts[2]; -c_732074.elts[4] = ((closureN)self_73931)->elts[3]; - -return_closcall1(data,(closure)&c_732074, car(((closureN)self_73931)->elts[3]));; -} - -static void __lambda_189(void *data, int argc, object self_73932, object r_73388) { - -closureN_type c_732076; -c_732076.hdr.mark = gc_color_red; - c_732076.hdr.grayed = 0; -c_732076.tag = closureN_tag; - c_732076.fn = (function_type)__lambda_188; -c_732076.num_args = 1; -c_732076.num_elt = 4; -c_732076.elts = (object *)alloca(sizeof(object) * 4); -c_732076.elts[0] = ((closureN)self_73932)->elts[0]; -c_732076.elts[1] = ((closureN)self_73932)->elts[1]; -c_732076.elts[2] = ((closureN)self_73932)->elts[3]; -c_732076.elts[3] = ((closureN)self_73932)->elts[4]; - -return_closcall1(data,(closure)&c_732076, Cyc_eq(((closureN)self_73932)->elts[2], r_73388));; -} - -static void __lambda_188(void *data, int argc, object self_73933, object r_73384) { - if( !eq(boolean_f, r_73384) ){ - -closureN_type c_732078; -c_732078.hdr.mark = gc_color_red; - c_732078.hdr.grayed = 0; -c_732078.tag = closureN_tag; - c_732078.fn = (function_type)__lambda_186; -c_732078.num_args = 0; -c_732078.num_elt = 4; -c_732078.elts = (object *)alloca(sizeof(object) * 4); -c_732078.elts[0] = ((closureN)self_73933)->elts[0]; -c_732078.elts[1] = ((closureN)self_73933)->elts[1]; -c_732078.elts[2] = ((closureN)self_73933)->elts[2]; -c_732078.elts[3] = ((closureN)self_73933)->elts[3]; - -return_closcall0(data,(closure)&c_732078); -} else { - -closureN_type c_732096; -c_732096.hdr.mark = gc_color_red; - c_732096.hdr.grayed = 0; -c_732096.tag = closureN_tag; - c_732096.fn = (function_type)__lambda_187; -c_732096.num_args = 0; -c_732096.num_elt = 1; -c_732096.elts = (object *)alloca(sizeof(object) * 1); -c_732096.elts[0] = ((closureN)self_73933)->elts[0]; - -return_closcall0(data,(closure)&c_732096);} -; -} - -static void __lambda_187(void *data, int argc, object self_73934) { - return_closcall1(data, ((closureN)self_73934)->elts[0], boolean_f);; -} - -static void __lambda_186(void *data, int argc, object self_73935) { - -closureN_type c_732080; -c_732080.hdr.mark = gc_color_red; - c_732080.hdr.grayed = 0; -c_732080.tag = closureN_tag; - c_732080.fn = (function_type)__lambda_185; -c_732080.num_args = 1; -c_732080.num_elt = 3; -c_732080.elts = (object *)alloca(sizeof(object) * 3); -c_732080.elts[0] = ((closureN)self_73935)->elts[0]; -c_732080.elts[1] = ((closureN)self_73935)->elts[1]; -c_732080.elts[2] = ((closureN)self_73935)->elts[3]; - -return_closcall1(data,(closure)&c_732080, cdr(((closureN)self_73935)->elts[2]));; -} - -static void __lambda_185(void *data, int argc, object self_73936, object r_73385) { - -closureN_type c_732082; -c_732082.hdr.mark = gc_color_red; - c_732082.hdr.grayed = 0; -c_732082.tag = closureN_tag; - c_732082.fn = (function_type)__lambda_184; -c_732082.num_args = 1; -c_732082.num_elt = 3; -c_732082.elts = (object *)alloca(sizeof(object) * 3); -c_732082.elts[0] = ((closureN)self_73936)->elts[0]; -c_732082.elts[1] = ((closureN)self_73936)->elts[1]; -c_732082.elts[2] = r_73385; - -return_closcall1(data,(closure)&c_732082, cdr(((closureN)self_73936)->elts[2]));; -} - -static void __lambda_184(void *data, int argc, object self_73937, object r_73386) { - return_closcall3(data, cell_get(((closureN)self_73937)->elts[1]), ((closureN)self_73937)->elts[0], ((closureN)self_73937)->elts[2], r_73386);; -} - -static void __lambda_183(void *data, int argc, object self_73938, object r_73380) { - -closureN_type c_731597; -c_731597.hdr.mark = gc_color_red; - c_731597.hdr.grayed = 0; -c_731597.tag = closureN_tag; - c_731597.fn = (function_type)__lambda_182; -c_731597.num_args = 1; -c_731597.num_elt = 19; -c_731597.elts = (object *)alloca(sizeof(object) * 19); -c_731597.elts[0] = ((closureN)self_73938)->elts[0]; -c_731597.elts[1] = ((closureN)self_73938)->elts[1]; -c_731597.elts[2] = ((closureN)self_73938)->elts[2]; -c_731597.elts[3] = ((closureN)self_73938)->elts[3]; -c_731597.elts[4] = ((closureN)self_73938)->elts[4]; -c_731597.elts[5] = ((closureN)self_73938)->elts[5]; -c_731597.elts[6] = ((closureN)self_73938)->elts[6]; -c_731597.elts[7] = ((closureN)self_73938)->elts[7]; -c_731597.elts[8] = ((closureN)self_73938)->elts[8]; -c_731597.elts[9] = ((closureN)self_73938)->elts[9]; -c_731597.elts[10] = ((closureN)self_73938)->elts[10]; -c_731597.elts[11] = ((closureN)self_73938)->elts[11]; -c_731597.elts[12] = ((closureN)self_73938)->elts[12]; -c_731597.elts[13] = ((closureN)self_73938)->elts[13]; -c_731597.elts[14] = ((closureN)self_73938)->elts[14]; -c_731597.elts[15] = ((closureN)self_73938)->elts[15]; -c_731597.elts[16] = ((closureN)self_73938)->elts[16]; -c_731597.elts[17] = ((closureN)self_73938)->elts[17]; -c_731597.elts[18] = ((closureN)self_73938)->elts[18]; - -return_closcall1(data,(closure)&c_731597, Cyc_set_car(data, ((closureN)self_73938)->elts[4], r_73380));; -} - -static void __lambda_182(void *data, int argc, object self_73939, object r_73293) { - -closureN_type c_731599; -c_731599.hdr.mark = gc_color_red; - c_731599.hdr.grayed = 0; -c_731599.tag = closureN_tag; - c_731599.fn = (function_type)__lambda_169; -c_731599.num_args = 1; -c_731599.num_elt = 18; -c_731599.elts = (object *)alloca(sizeof(object) * 18); -c_731599.elts[0] = ((closureN)self_73939)->elts[0]; -c_731599.elts[1] = ((closureN)self_73939)->elts[1]; -c_731599.elts[2] = ((closureN)self_73939)->elts[2]; -c_731599.elts[3] = ((closureN)self_73939)->elts[3]; -c_731599.elts[4] = ((closureN)self_73939)->elts[5]; -c_731599.elts[5] = ((closureN)self_73939)->elts[6]; -c_731599.elts[6] = ((closureN)self_73939)->elts[7]; -c_731599.elts[7] = ((closureN)self_73939)->elts[8]; -c_731599.elts[8] = ((closureN)self_73939)->elts[9]; -c_731599.elts[9] = ((closureN)self_73939)->elts[10]; -c_731599.elts[10] = ((closureN)self_73939)->elts[11]; -c_731599.elts[11] = ((closureN)self_73939)->elts[12]; -c_731599.elts[12] = ((closureN)self_73939)->elts[13]; -c_731599.elts[13] = ((closureN)self_73939)->elts[14]; -c_731599.elts[14] = ((closureN)self_73939)->elts[15]; -c_731599.elts[15] = ((closureN)self_73939)->elts[16]; -c_731599.elts[16] = ((closureN)self_73939)->elts[17]; -c_731599.elts[17] = ((closureN)self_73939)->elts[18]; - - -closureN_type c_732004; -c_732004.hdr.mark = gc_color_red; - c_732004.hdr.grayed = 0; -c_732004.tag = closureN_tag; - c_732004.fn = (function_type)__lambda_181; -c_732004.num_args = 2; -c_732004.num_elt = 2; -c_732004.elts = (object *)alloca(sizeof(object) * 2); -c_732004.elts[0] = ((closureN)self_73939)->elts[4]; -c_732004.elts[1] = ((closureN)self_73939)->elts[5]; - -return_closcall1(data,(closure)&c_731599, &c_732004);; -} - -static void __lambda_181(void *data, int argc, object self_73940, object k_73372, object lst1_73177, object lst2_73176) { - -closureN_type c_732006; -c_732006.hdr.mark = gc_color_red; - c_732006.hdr.grayed = 0; -c_732006.tag = closureN_tag; - c_732006.fn = (function_type)__lambda_180; -c_732006.num_args = 1; -c_732006.num_elt = 5; -c_732006.elts = (object *)alloca(sizeof(object) * 5); -c_732006.elts[0] = k_73372; -c_732006.elts[1] = lst1_73177; -c_732006.elts[2] = lst2_73176; -c_732006.elts[3] = ((closureN)self_73940)->elts[0]; -c_732006.elts[4] = ((closureN)self_73940)->elts[1]; - -return_closcall1(data,(closure)&c_732006, Cyc_is_null(lst1_73177));; -} - -static void __lambda_180(void *data, int argc, object self_73941, object r_73373) { - if( !eq(boolean_f, r_73373) ){ - -closureN_type c_732008; -c_732008.hdr.mark = gc_color_red; - c_732008.hdr.grayed = 0; -c_732008.tag = closureN_tag; - c_732008.fn = (function_type)__lambda_170; -c_732008.num_args = 0; -c_732008.num_elt = 2; -c_732008.elts = (object *)alloca(sizeof(object) * 2); -c_732008.elts[0] = ((closureN)self_73941)->elts[0]; -c_732008.elts[1] = ((closureN)self_73941)->elts[2]; - -return_closcall0(data,(closure)&c_732008); -} else { - -closureN_type c_732015; -c_732015.hdr.mark = gc_color_red; - c_732015.hdr.grayed = 0; -c_732015.tag = closureN_tag; - c_732015.fn = (function_type)__lambda_179; -c_732015.num_args = 1; -c_732015.num_elt = 5; -c_732015.elts = (object *)alloca(sizeof(object) * 5); -c_732015.elts[0] = ((closureN)self_73941)->elts[0]; -c_732015.elts[1] = ((closureN)self_73941)->elts[1]; -c_732015.elts[2] = ((closureN)self_73941)->elts[2]; -c_732015.elts[3] = ((closureN)self_73941)->elts[3]; -c_732015.elts[4] = ((closureN)self_73941)->elts[4]; - -return_closcall1(data,(closure)&c_732015, Cyc_is_null(((closureN)self_73941)->elts[2]));} -; -} - -static void __lambda_179(void *data, int argc, object self_73942, object r_73374) { - if( !eq(boolean_f, r_73374) ){ - -closureN_type c_732017; -c_732017.hdr.mark = gc_color_red; - c_732017.hdr.grayed = 0; -c_732017.tag = closureN_tag; - c_732017.fn = (function_type)__lambda_171; -c_732017.num_args = 0; -c_732017.num_elt = 1; -c_732017.elts = (object *)alloca(sizeof(object) * 1); -c_732017.elts[0] = ((closureN)self_73942)->elts[0]; - -return_closcall0(data,(closure)&c_732017); -} else { - -closureN_type c_732021; -c_732021.hdr.mark = gc_color_red; - c_732021.hdr.grayed = 0; -c_732021.tag = closureN_tag; - c_732021.fn = (function_type)__lambda_178; -c_732021.num_args = 1; -c_732021.num_elt = 5; -c_732021.elts = (object *)alloca(sizeof(object) * 5); -c_732021.elts[0] = ((closureN)self_73942)->elts[0]; -c_732021.elts[1] = ((closureN)self_73942)->elts[1]; -c_732021.elts[2] = ((closureN)self_73942)->elts[2]; -c_732021.elts[3] = ((closureN)self_73942)->elts[3]; -c_732021.elts[4] = ((closureN)self_73942)->elts[4]; - -return_closcall1(data,(closure)&c_732021, car(((closureN)self_73942)->elts[1]));} -; -} - -static void __lambda_178(void *data, int argc, object self_73943, object r_73378) { - -closureN_type c_732023; -c_732023.hdr.mark = gc_color_red; - c_732023.hdr.grayed = 0; -c_732023.tag = closureN_tag; - c_732023.fn = (function_type)__lambda_177; -c_732023.num_args = 1; -c_732023.num_elt = 6; -c_732023.elts = (object *)alloca(sizeof(object) * 6); -c_732023.elts[0] = ((closureN)self_73943)->elts[0]; -c_732023.elts[1] = ((closureN)self_73943)->elts[1]; -c_732023.elts[2] = ((closureN)self_73943)->elts[2]; -c_732023.elts[3] = ((closureN)self_73943)->elts[3]; -c_732023.elts[4] = ((closureN)self_73943)->elts[4]; -c_732023.elts[5] = r_73378; - -return_closcall1(data,(closure)&c_732023, car(((closureN)self_73943)->elts[2]));; -} - -static void __lambda_177(void *data, int argc, object self_73944, object r_73379) { - -closureN_type c_732028; -c_732028.hdr.mark = gc_color_red; - c_732028.hdr.grayed = 0; -c_732028.tag = closureN_tag; - c_732028.fn = (function_type)__lambda_176; -c_732028.num_args = 1; -c_732028.num_elt = 4; -c_732028.elts = (object *)alloca(sizeof(object) * 4); -c_732028.elts[0] = ((closureN)self_73944)->elts[0]; -c_732028.elts[1] = ((closureN)self_73944)->elts[1]; -c_732028.elts[2] = ((closureN)self_73944)->elts[2]; -c_732028.elts[3] = ((closureN)self_73944)->elts[4]; - -return_closcall3(data, cell_get(((closureN)self_73944)->elts[3]), &c_732028, ((closureN)self_73944)->elts[5], r_73379);; -} - -static void __lambda_176(void *data, int argc, object self_73945, object r_73375) { - if( !eq(boolean_f, r_73375) ){ - -closureN_type c_732030; -c_732030.hdr.mark = gc_color_red; - c_732030.hdr.grayed = 0; -c_732030.tag = closureN_tag; - c_732030.fn = (function_type)__lambda_174; -c_732030.num_args = 0; -c_732030.num_elt = 4; -c_732030.elts = (object *)alloca(sizeof(object) * 4); -c_732030.elts[0] = ((closureN)self_73945)->elts[0]; -c_732030.elts[1] = ((closureN)self_73945)->elts[1]; -c_732030.elts[2] = ((closureN)self_73945)->elts[2]; -c_732030.elts[3] = ((closureN)self_73945)->elts[3]; - -return_closcall0(data,(closure)&c_732030); -} else { - -closureN_type c_732048; -c_732048.hdr.mark = gc_color_red; - c_732048.hdr.grayed = 0; -c_732048.tag = closureN_tag; - c_732048.fn = (function_type)__lambda_175; -c_732048.num_args = 0; -c_732048.num_elt = 1; -c_732048.elts = (object *)alloca(sizeof(object) * 1); -c_732048.elts[0] = ((closureN)self_73945)->elts[0]; - -return_closcall0(data,(closure)&c_732048);} -; -} - -static void __lambda_175(void *data, int argc, object self_73946) { - return_closcall1(data, ((closureN)self_73946)->elts[0], boolean_f);; -} - -static void __lambda_174(void *data, int argc, object self_73947) { - -closureN_type c_732032; -c_732032.hdr.mark = gc_color_red; - c_732032.hdr.grayed = 0; -c_732032.tag = closureN_tag; - c_732032.fn = (function_type)__lambda_173; -c_732032.num_args = 1; -c_732032.num_elt = 3; -c_732032.elts = (object *)alloca(sizeof(object) * 3); -c_732032.elts[0] = ((closureN)self_73947)->elts[0]; -c_732032.elts[1] = ((closureN)self_73947)->elts[2]; -c_732032.elts[2] = ((closureN)self_73947)->elts[3]; - -return_closcall1(data,(closure)&c_732032, cdr(((closureN)self_73947)->elts[1]));; -} - -static void __lambda_173(void *data, int argc, object self_73948, object r_73376) { - -closureN_type c_732034; -c_732034.hdr.mark = gc_color_red; - c_732034.hdr.grayed = 0; -c_732034.tag = closureN_tag; - c_732034.fn = (function_type)__lambda_172; -c_732034.num_args = 1; -c_732034.num_elt = 3; -c_732034.elts = (object *)alloca(sizeof(object) * 3); -c_732034.elts[0] = ((closureN)self_73948)->elts[0]; -c_732034.elts[1] = ((closureN)self_73948)->elts[2]; -c_732034.elts[2] = r_73376; - -return_closcall1(data,(closure)&c_732034, cdr(((closureN)self_73948)->elts[1]));; -} - -static void __lambda_172(void *data, int argc, object self_73949, object r_73377) { - return_closcall3(data, cell_get(((closureN)self_73949)->elts[1]), ((closureN)self_73949)->elts[0], ((closureN)self_73949)->elts[2], r_73377);; -} - -static void __lambda_171(void *data, int argc, object self_73950) { - return_closcall1(data, ((closureN)self_73950)->elts[0], boolean_f);; -} - -static void __lambda_170(void *data, int argc, object self_73951) { - return_closcall1(data, ((closureN)self_73951)->elts[0], Cyc_is_null(((closureN)self_73951)->elts[1]));; -} - -static void __lambda_169(void *data, int argc, object self_73952, object r_73371) { - -closureN_type c_731601; -c_731601.hdr.mark = gc_color_red; - c_731601.hdr.grayed = 0; -c_731601.tag = closureN_tag; - c_731601.fn = (function_type)__lambda_168; -c_731601.num_args = 1; -c_731601.num_elt = 17; -c_731601.elts = (object *)alloca(sizeof(object) * 17); -c_731601.elts[0] = ((closureN)self_73952)->elts[0]; -c_731601.elts[1] = ((closureN)self_73952)->elts[1]; -c_731601.elts[2] = ((closureN)self_73952)->elts[2]; -c_731601.elts[3] = ((closureN)self_73952)->elts[3]; -c_731601.elts[4] = ((closureN)self_73952)->elts[5]; -c_731601.elts[5] = ((closureN)self_73952)->elts[6]; -c_731601.elts[6] = ((closureN)self_73952)->elts[7]; -c_731601.elts[7] = ((closureN)self_73952)->elts[8]; -c_731601.elts[8] = ((closureN)self_73952)->elts[9]; -c_731601.elts[9] = ((closureN)self_73952)->elts[10]; -c_731601.elts[10] = ((closureN)self_73952)->elts[11]; -c_731601.elts[11] = ((closureN)self_73952)->elts[12]; -c_731601.elts[12] = ((closureN)self_73952)->elts[13]; -c_731601.elts[13] = ((closureN)self_73952)->elts[14]; -c_731601.elts[14] = ((closureN)self_73952)->elts[15]; -c_731601.elts[15] = ((closureN)self_73952)->elts[16]; -c_731601.elts[16] = ((closureN)self_73952)->elts[17]; - -return_closcall1(data,(closure)&c_731601, Cyc_set_car(data, ((closureN)self_73952)->elts[4], r_73371));; -} - -static void __lambda_168(void *data, int argc, object self_73953, object r_73294) { - -closureN_type c_731603; -c_731603.hdr.mark = gc_color_red; - c_731603.hdr.grayed = 0; -c_731603.tag = closureN_tag; - c_731603.fn = (function_type)__lambda_165; -c_731603.num_args = 1; -c_731603.num_elt = 17; -c_731603.elts = (object *)alloca(sizeof(object) * 17); -c_731603.elts[0] = ((closureN)self_73953)->elts[0]; -c_731603.elts[1] = ((closureN)self_73953)->elts[1]; -c_731603.elts[2] = ((closureN)self_73953)->elts[2]; -c_731603.elts[3] = ((closureN)self_73953)->elts[3]; -c_731603.elts[4] = ((closureN)self_73953)->elts[4]; -c_731603.elts[5] = ((closureN)self_73953)->elts[5]; -c_731603.elts[6] = ((closureN)self_73953)->elts[6]; -c_731603.elts[7] = ((closureN)self_73953)->elts[7]; -c_731603.elts[8] = ((closureN)self_73953)->elts[8]; -c_731603.elts[9] = ((closureN)self_73953)->elts[9]; -c_731603.elts[10] = ((closureN)self_73953)->elts[10]; -c_731603.elts[11] = ((closureN)self_73953)->elts[11]; -c_731603.elts[12] = ((closureN)self_73953)->elts[12]; -c_731603.elts[13] = ((closureN)self_73953)->elts[13]; -c_731603.elts[14] = ((closureN)self_73953)->elts[14]; -c_731603.elts[15] = ((closureN)self_73953)->elts[15]; -c_731603.elts[16] = ((closureN)self_73953)->elts[16]; - - -closureN_type c_731983; -c_731983.hdr.mark = gc_color_red; - c_731983.hdr.grayed = 0; -c_731983.tag = closureN_tag; - c_731983.fn = (function_type)__lambda_167; -c_731983.num_args = 2; -c_731983.num_elt = 3; -c_731983.elts = (object *)alloca(sizeof(object) * 3); -c_731983.elts[0] = ((closureN)self_73953)->elts[1]; -c_731983.elts[1] = ((closureN)self_73953)->elts[9]; -c_731983.elts[2] = ((closureN)self_73953)->elts[10]; - -return_closcall1(data,(closure)&c_731603, &c_731983);; -} - -static void __lambda_167(void *data, int argc, object self_73954, object k_73369, object x_73174, object lst_73173) { - -closureN_type c_731988; -c_731988.hdr.mark = gc_color_red; - c_731988.hdr.grayed = 0; -c_731988.tag = closureN_tag; - c_731988.fn = (function_type)__lambda_166; -c_731988.num_args = 1; -c_731988.num_elt = 4; -c_731988.elts = (object *)alloca(sizeof(object) * 4); -c_731988.elts[0] = k_73369; -c_731988.elts[1] = lst_73173; -c_731988.elts[2] = ((closureN)self_73954)->elts[2]; -c_731988.elts[3] = x_73174; - -return_closcall3(data, cell_get(((closureN)self_73954)->elts[1]), &c_731988, x_73174, cell_get(((closureN)self_73954)->elts[0]));; -} - -static void __lambda_166(void *data, int argc, object self_73955, object tmp_73175) { - if( !eq(boolean_f, tmp_73175) ){ - return_closcall1(data, ((closureN)self_73955)->elts[0], tmp_73175); -} else { - return_closcall3(data, cell_get(((closureN)self_73955)->elts[2]), ((closureN)self_73955)->elts[0], ((closureN)self_73955)->elts[3], ((closureN)self_73955)->elts[1]);} -; -} - -static void __lambda_165(void *data, int argc, object self_73956, object r_73368) { - -closureN_type c_731605; -c_731605.hdr.mark = gc_color_red; - c_731605.hdr.grayed = 0; -c_731605.tag = closureN_tag; - c_731605.fn = (function_type)__lambda_164; -c_731605.num_args = 1; -c_731605.num_elt = 16; -c_731605.elts = (object *)alloca(sizeof(object) * 16); -c_731605.elts[0] = ((closureN)self_73956)->elts[0]; -c_731605.elts[1] = ((closureN)self_73956)->elts[1]; -c_731605.elts[2] = ((closureN)self_73956)->elts[3]; -c_731605.elts[3] = ((closureN)self_73956)->elts[4]; -c_731605.elts[4] = ((closureN)self_73956)->elts[5]; -c_731605.elts[5] = ((closureN)self_73956)->elts[6]; -c_731605.elts[6] = ((closureN)self_73956)->elts[7]; -c_731605.elts[7] = ((closureN)self_73956)->elts[8]; -c_731605.elts[8] = ((closureN)self_73956)->elts[9]; -c_731605.elts[9] = ((closureN)self_73956)->elts[10]; -c_731605.elts[10] = ((closureN)self_73956)->elts[11]; -c_731605.elts[11] = ((closureN)self_73956)->elts[12]; -c_731605.elts[12] = ((closureN)self_73956)->elts[13]; -c_731605.elts[13] = ((closureN)self_73956)->elts[14]; -c_731605.elts[14] = ((closureN)self_73956)->elts[15]; -c_731605.elts[15] = ((closureN)self_73956)->elts[16]; - -return_closcall1(data,(closure)&c_731605, Cyc_set_car(data, ((closureN)self_73956)->elts[2], r_73368));; -} - -static void __lambda_164(void *data, int argc, object self_73957, object r_73295) { - -closureN_type c_731607; -c_731607.hdr.mark = gc_color_red; - c_731607.hdr.grayed = 0; -c_731607.tag = closureN_tag; - c_731607.fn = (function_type)__lambda_161; -c_731607.num_args = 1; -c_731607.num_elt = 16; -c_731607.elts = (object *)alloca(sizeof(object) * 16); -c_731607.elts[0] = ((closureN)self_73957)->elts[0]; -c_731607.elts[1] = ((closureN)self_73957)->elts[1]; -c_731607.elts[2] = ((closureN)self_73957)->elts[2]; -c_731607.elts[3] = ((closureN)self_73957)->elts[3]; -c_731607.elts[4] = ((closureN)self_73957)->elts[4]; -c_731607.elts[5] = ((closureN)self_73957)->elts[5]; -c_731607.elts[6] = ((closureN)self_73957)->elts[6]; -c_731607.elts[7] = ((closureN)self_73957)->elts[7]; -c_731607.elts[8] = ((closureN)self_73957)->elts[8]; -c_731607.elts[9] = ((closureN)self_73957)->elts[9]; -c_731607.elts[10] = ((closureN)self_73957)->elts[10]; -c_731607.elts[11] = ((closureN)self_73957)->elts[11]; -c_731607.elts[12] = ((closureN)self_73957)->elts[12]; -c_731607.elts[13] = ((closureN)self_73957)->elts[13]; -c_731607.elts[14] = ((closureN)self_73957)->elts[14]; -c_731607.elts[15] = ((closureN)self_73957)->elts[15]; - - -closureN_type c_731962; -c_731962.hdr.mark = gc_color_red; - c_731962.hdr.grayed = 0; -c_731962.tag = closureN_tag; - c_731962.fn = (function_type)__lambda_163; -c_731962.num_args = 2; -c_731962.num_elt = 3; -c_731962.elts = (object *)alloca(sizeof(object) * 3); -c_731962.elts[0] = ((closureN)self_73957)->elts[8]; -c_731962.elts[1] = ((closureN)self_73957)->elts[9]; -c_731962.elts[2] = ((closureN)self_73957)->elts[14]; - -return_closcall1(data,(closure)&c_731607, &c_731962);; -} - -static void __lambda_163(void *data, int argc, object self_73958, object k_73366, object x_73171, object lst_73170) { - -closureN_type c_731967; -c_731967.hdr.mark = gc_color_red; - c_731967.hdr.grayed = 0; -c_731967.tag = closureN_tag; - c_731967.fn = (function_type)__lambda_162; -c_731967.num_args = 1; -c_731967.num_elt = 4; -c_731967.elts = (object *)alloca(sizeof(object) * 4); -c_731967.elts[0] = k_73366; -c_731967.elts[1] = lst_73170; -c_731967.elts[2] = ((closureN)self_73958)->elts[1]; -c_731967.elts[3] = x_73171; - -return_closcall3(data, cell_get(((closureN)self_73958)->elts[0]), &c_731967, x_73171, cell_get(((closureN)self_73958)->elts[2]));; -} - -static void __lambda_162(void *data, int argc, object self_73959, object tmp_73172) { - if( !eq(boolean_f, tmp_73172) ){ - return_closcall1(data, ((closureN)self_73959)->elts[0], tmp_73172); -} else { - return_closcall3(data, cell_get(((closureN)self_73959)->elts[2]), ((closureN)self_73959)->elts[0], ((closureN)self_73959)->elts[3], ((closureN)self_73959)->elts[1]);} -; -} - -static void __lambda_161(void *data, int argc, object self_73960, object r_73365) { - -closureN_type c_731609; -c_731609.hdr.mark = gc_color_red; - c_731609.hdr.grayed = 0; -c_731609.tag = closureN_tag; - c_731609.fn = (function_type)__lambda_160; -c_731609.num_args = 1; -c_731609.num_elt = 15; -c_731609.elts = (object *)alloca(sizeof(object) * 15); -c_731609.elts[0] = ((closureN)self_73960)->elts[0]; -c_731609.elts[1] = ((closureN)self_73960)->elts[1]; -c_731609.elts[2] = ((closureN)self_73960)->elts[2]; -c_731609.elts[3] = ((closureN)self_73960)->elts[3]; -c_731609.elts[4] = ((closureN)self_73960)->elts[4]; -c_731609.elts[5] = ((closureN)self_73960)->elts[5]; -c_731609.elts[6] = ((closureN)self_73960)->elts[6]; -c_731609.elts[7] = ((closureN)self_73960)->elts[7]; -c_731609.elts[8] = ((closureN)self_73960)->elts[8]; -c_731609.elts[9] = ((closureN)self_73960)->elts[9]; -c_731609.elts[10] = ((closureN)self_73960)->elts[10]; -c_731609.elts[11] = ((closureN)self_73960)->elts[11]; -c_731609.elts[12] = ((closureN)self_73960)->elts[12]; -c_731609.elts[13] = ((closureN)self_73960)->elts[13]; -c_731609.elts[14] = ((closureN)self_73960)->elts[14]; - -return_closcall1(data,(closure)&c_731609, Cyc_set_car(data, ((closureN)self_73960)->elts[15], r_73365));; -} - -static void __lambda_160(void *data, int argc, object self_73961, object r_73296) { - -closureN_type c_731611; -c_731611.hdr.mark = gc_color_red; - c_731611.hdr.grayed = 0; -c_731611.tag = closureN_tag; - c_731611.fn = (function_type)__lambda_159; -c_731611.num_args = 1; -c_731611.num_elt = 15; -c_731611.elts = (object *)alloca(sizeof(object) * 15); -c_731611.elts[0] = ((closureN)self_73961)->elts[0]; -c_731611.elts[1] = ((closureN)self_73961)->elts[1]; -c_731611.elts[2] = ((closureN)self_73961)->elts[2]; -c_731611.elts[3] = ((closureN)self_73961)->elts[3]; -c_731611.elts[4] = ((closureN)self_73961)->elts[4]; -c_731611.elts[5] = ((closureN)self_73961)->elts[5]; -c_731611.elts[6] = ((closureN)self_73961)->elts[6]; -c_731611.elts[7] = ((closureN)self_73961)->elts[7]; -c_731611.elts[8] = ((closureN)self_73961)->elts[8]; -c_731611.elts[9] = ((closureN)self_73961)->elts[9]; -c_731611.elts[10] = ((closureN)self_73961)->elts[10]; -c_731611.elts[11] = ((closureN)self_73961)->elts[11]; -c_731611.elts[12] = ((closureN)self_73961)->elts[12]; -c_731611.elts[13] = ((closureN)self_73961)->elts[13]; -c_731611.elts[14] = ((closureN)self_73961)->elts[14]; - -return_closcall1(data,(closure)&c_731611, quote__85);; -} - -static void __lambda_159(void *data, int argc, object self_73962, object r_73364) { - -closureN_type c_731613; -c_731613.hdr.mark = gc_color_red; - c_731613.hdr.grayed = 0; -c_731613.tag = closureN_tag; - c_731613.fn = (function_type)__lambda_158; -c_731613.num_args = 1; -c_731613.num_elt = 15; -c_731613.elts = (object *)alloca(sizeof(object) * 15); -c_731613.elts[0] = ((closureN)self_73962)->elts[0]; -c_731613.elts[1] = ((closureN)self_73962)->elts[1]; -c_731613.elts[2] = ((closureN)self_73962)->elts[2]; -c_731613.elts[3] = ((closureN)self_73962)->elts[3]; -c_731613.elts[4] = ((closureN)self_73962)->elts[4]; -c_731613.elts[5] = ((closureN)self_73962)->elts[5]; -c_731613.elts[6] = ((closureN)self_73962)->elts[6]; -c_731613.elts[7] = ((closureN)self_73962)->elts[7]; -c_731613.elts[8] = ((closureN)self_73962)->elts[8]; -c_731613.elts[9] = ((closureN)self_73962)->elts[9]; -c_731613.elts[10] = ((closureN)self_73962)->elts[10]; -c_731613.elts[11] = ((closureN)self_73962)->elts[11]; -c_731613.elts[12] = ((closureN)self_73962)->elts[12]; -c_731613.elts[13] = ((closureN)self_73962)->elts[13]; -c_731613.elts[14] = ((closureN)self_73962)->elts[14]; - -return_closcall1(data,(closure)&c_731613, Cyc_set_car(data, ((closureN)self_73962)->elts[1], r_73364));; -} - -static void __lambda_158(void *data, int argc, object self_73963, object r_73297) { - -closureN_type c_731615; -c_731615.hdr.mark = gc_color_red; - c_731615.hdr.grayed = 0; -c_731615.tag = closureN_tag; - c_731615.fn = (function_type)__lambda_157; -c_731615.num_args = 1; -c_731615.num_elt = 15; -c_731615.elts = (object *)alloca(sizeof(object) * 15); -c_731615.elts[0] = ((closureN)self_73963)->elts[0]; -c_731615.elts[1] = ((closureN)self_73963)->elts[1]; -c_731615.elts[2] = ((closureN)self_73963)->elts[2]; -c_731615.elts[3] = ((closureN)self_73963)->elts[3]; -c_731615.elts[4] = ((closureN)self_73963)->elts[4]; -c_731615.elts[5] = ((closureN)self_73963)->elts[5]; -c_731615.elts[6] = ((closureN)self_73963)->elts[6]; -c_731615.elts[7] = ((closureN)self_73963)->elts[7]; -c_731615.elts[8] = ((closureN)self_73963)->elts[8]; -c_731615.elts[9] = ((closureN)self_73963)->elts[9]; -c_731615.elts[10] = ((closureN)self_73963)->elts[10]; -c_731615.elts[11] = ((closureN)self_73963)->elts[11]; -c_731615.elts[12] = ((closureN)self_73963)->elts[12]; -c_731615.elts[13] = ((closureN)self_73963)->elts[13]; -c_731615.elts[14] = ((closureN)self_73963)->elts[14]; - -return_closcall1(data,(closure)&c_731615, quote__85);; -} - -static void __lambda_157(void *data, int argc, object self_73964, object r_73363) { - -closureN_type c_731617; -c_731617.hdr.mark = gc_color_red; - c_731617.hdr.grayed = 0; -c_731617.tag = closureN_tag; - c_731617.fn = (function_type)__lambda_156; -c_731617.num_args = 1; -c_731617.num_elt = 15; -c_731617.elts = (object *)alloca(sizeof(object) * 15); -c_731617.elts[0] = ((closureN)self_73964)->elts[0]; -c_731617.elts[1] = ((closureN)self_73964)->elts[1]; -c_731617.elts[2] = ((closureN)self_73964)->elts[2]; -c_731617.elts[3] = ((closureN)self_73964)->elts[3]; -c_731617.elts[4] = ((closureN)self_73964)->elts[4]; -c_731617.elts[5] = ((closureN)self_73964)->elts[5]; -c_731617.elts[6] = ((closureN)self_73964)->elts[6]; -c_731617.elts[7] = ((closureN)self_73964)->elts[7]; -c_731617.elts[8] = ((closureN)self_73964)->elts[8]; -c_731617.elts[9] = ((closureN)self_73964)->elts[9]; -c_731617.elts[10] = ((closureN)self_73964)->elts[10]; -c_731617.elts[11] = ((closureN)self_73964)->elts[11]; -c_731617.elts[12] = ((closureN)self_73964)->elts[12]; -c_731617.elts[13] = ((closureN)self_73964)->elts[13]; -c_731617.elts[14] = ((closureN)self_73964)->elts[14]; - -return_closcall1(data,(closure)&c_731617, Cyc_set_car(data, ((closureN)self_73964)->elts[14], r_73363));; -} - -static void __lambda_156(void *data, int argc, object self_73965, object r_73298) { - -closureN_type c_731619; -c_731619.hdr.mark = gc_color_red; - c_731619.hdr.grayed = 0; -c_731619.tag = closureN_tag; - c_731619.fn = (function_type)__lambda_149; -c_731619.num_args = 1; -c_731619.num_elt = 15; -c_731619.elts = (object *)alloca(sizeof(object) * 15); -c_731619.elts[0] = ((closureN)self_73965)->elts[0]; -c_731619.elts[1] = ((closureN)self_73965)->elts[1]; -c_731619.elts[2] = ((closureN)self_73965)->elts[2]; -c_731619.elts[3] = ((closureN)self_73965)->elts[3]; -c_731619.elts[4] = ((closureN)self_73965)->elts[4]; -c_731619.elts[5] = ((closureN)self_73965)->elts[5]; -c_731619.elts[6] = ((closureN)self_73965)->elts[6]; -c_731619.elts[7] = ((closureN)self_73965)->elts[7]; -c_731619.elts[8] = ((closureN)self_73965)->elts[8]; -c_731619.elts[9] = ((closureN)self_73965)->elts[9]; -c_731619.elts[10] = ((closureN)self_73965)->elts[10]; -c_731619.elts[11] = ((closureN)self_73965)->elts[11]; -c_731619.elts[12] = ((closureN)self_73965)->elts[12]; -c_731619.elts[13] = ((closureN)self_73965)->elts[13]; -c_731619.elts[14] = ((closureN)self_73965)->elts[14]; - - -closureN_type c_731930; -c_731930.hdr.mark = gc_color_red; - c_731930.hdr.grayed = 0; -c_731930.tag = closureN_tag; - c_731930.fn = (function_type)__lambda_155; -c_731930.num_args = 1; -c_731930.num_elt = 2; -c_731930.elts = (object *)alloca(sizeof(object) * 2); -c_731930.elts[0] = ((closureN)self_73965)->elts[12]; -c_731930.elts[1] = ((closureN)self_73965)->elts[13]; - -return_closcall1(data,(closure)&c_731619, &c_731930);; -} - -static void __lambda_155(void *data, int argc, object self_73966, object k_73357, object n_73169) { - -closureN_type c_731932; -c_731932.hdr.mark = gc_color_red; - c_731932.hdr.grayed = 0; -c_731932.tag = closureN_tag; - c_731932.fn = (function_type)__lambda_154; -c_731932.num_args = 1; -c_731932.num_elt = 4; -c_731932.elts = (object *)alloca(sizeof(object) * 4); -c_731932.elts[0] = k_73357; -c_731932.elts[1] = n_73169; -c_731932.elts[2] = ((closureN)self_73966)->elts[0]; -c_731932.elts[3] = ((closureN)self_73966)->elts[1]; - -return_closcall1(data,(closure)&c_731932, quote_implies);; -} - -static void __lambda_154(void *data, int argc, object self_73967, object r_73359) { - -closureN_type c_731937; -c_731937.hdr.mark = gc_color_red; - c_731937.hdr.grayed = 0; -c_731937.tag = closureN_tag; - c_731937.fn = (function_type)__lambda_153; -c_731937.num_args = 1; -c_731937.num_elt = 4; -c_731937.elts = (object *)alloca(sizeof(object) * 4); -c_731937.elts[0] = ((closureN)self_73967)->elts[0]; -c_731937.elts[1] = ((closureN)self_73967)->elts[1]; -c_731937.elts[2] = r_73359; -c_731937.elts[3] = ((closureN)self_73967)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73967)->elts[2]), &c_731937, ((closureN)self_73967)->elts[1]);; -} - -static void __lambda_153(void *data, int argc, object self_73968, object r_73360) { - -closureN_type c_731939; -c_731939.hdr.mark = gc_color_red; - c_731939.hdr.grayed = 0; -c_731939.tag = closureN_tag; - c_731939.fn = (function_type)__lambda_152; -c_731939.num_args = 1; -c_731939.num_elt = 5; -c_731939.elts = (object *)alloca(sizeof(object) * 5); -c_731939.elts[0] = ((closureN)self_73968)->elts[0]; -c_731939.elts[1] = ((closureN)self_73968)->elts[1]; -c_731939.elts[2] = ((closureN)self_73968)->elts[2]; -c_731939.elts[3] = r_73360; -c_731939.elts[4] = ((closureN)self_73968)->elts[3]; - -return_closcall1(data,(closure)&c_731939, quote_implies);; -} - -static void __lambda_152(void *data, int argc, object self_73969, object r_73362) { - -closureN_type c_731941; -c_731941.hdr.mark = gc_color_red; - c_731941.hdr.grayed = 0; -c_731941.tag = closureN_tag; - c_731941.fn = (function_type)__lambda_151; -c_731941.num_args = 1; -c_731941.num_elt = 4; -c_731941.elts = (object *)alloca(sizeof(object) * 4); -c_731941.elts[0] = ((closureN)self_73969)->elts[0]; -c_731941.elts[1] = ((closureN)self_73969)->elts[2]; -c_731941.elts[2] = ((closureN)self_73969)->elts[3]; -c_731941.elts[3] = ((closureN)self_73969)->elts[4]; - -return_closcall4(data, __glo__list_scheme_base, &c_731941, r_73362, obj_int2obj(0), ((closureN)self_73969)->elts[1]);; -} - -static void __lambda_151(void *data, int argc, object self_73970, object r_73361) { - -closureN_type c_731943; -c_731943.hdr.mark = gc_color_red; - c_731943.hdr.grayed = 0; -c_731943.tag = closureN_tag; - c_731943.fn = (function_type)__lambda_150; -c_731943.num_args = 1; -c_731943.num_elt = 2; -c_731943.elts = (object *)alloca(sizeof(object) * 2); -c_731943.elts[0] = ((closureN)self_73970)->elts[0]; -c_731943.elts[1] = ((closureN)self_73970)->elts[3]; - -return_closcall4(data, __glo__list_scheme_base, &c_731943, ((closureN)self_73970)->elts[1], ((closureN)self_73970)->elts[2], r_73361);; -} - -static void __lambda_150(void *data, int argc, object self_73971, object r_73358) { - return_closcall2(data, cell_get(((closureN)self_73971)->elts[1]), ((closureN)self_73971)->elts[0], r_73358);; -} - -static void __lambda_149(void *data, int argc, object self_73972, object r_73356) { - -closureN_type c_731621; -c_731621.hdr.mark = gc_color_red; - c_731621.hdr.grayed = 0; -c_731621.tag = closureN_tag; - c_731621.fn = (function_type)__lambda_148; -c_731621.num_args = 1; -c_731621.num_elt = 14; -c_731621.elts = (object *)alloca(sizeof(object) * 14); -c_731621.elts[0] = ((closureN)self_73972)->elts[0]; -c_731621.elts[1] = ((closureN)self_73972)->elts[1]; -c_731621.elts[2] = ((closureN)self_73972)->elts[2]; -c_731621.elts[3] = ((closureN)self_73972)->elts[3]; -c_731621.elts[4] = ((closureN)self_73972)->elts[4]; -c_731621.elts[5] = ((closureN)self_73972)->elts[5]; -c_731621.elts[6] = ((closureN)self_73972)->elts[6]; -c_731621.elts[7] = ((closureN)self_73972)->elts[7]; -c_731621.elts[8] = ((closureN)self_73972)->elts[8]; -c_731621.elts[9] = ((closureN)self_73972)->elts[9]; -c_731621.elts[10] = ((closureN)self_73972)->elts[10]; -c_731621.elts[11] = ((closureN)self_73972)->elts[12]; -c_731621.elts[12] = ((closureN)self_73972)->elts[13]; -c_731621.elts[13] = ((closureN)self_73972)->elts[14]; - -return_closcall1(data,(closure)&c_731621, Cyc_set_car(data, ((closureN)self_73972)->elts[11], r_73356));; -} - -static void __lambda_148(void *data, int argc, object self_73973, object r_73299) { - -closureN_type c_731623; -c_731623.hdr.mark = gc_color_red; - c_731623.hdr.grayed = 0; -c_731623.tag = closureN_tag; - c_731623.fn = (function_type)__lambda_136; -c_731623.num_args = 1; -c_731623.num_elt = 14; -c_731623.elts = (object *)alloca(sizeof(object) * 14); -c_731623.elts[0] = ((closureN)self_73973)->elts[0]; -c_731623.elts[1] = ((closureN)self_73973)->elts[1]; -c_731623.elts[2] = ((closureN)self_73973)->elts[2]; -c_731623.elts[3] = ((closureN)self_73973)->elts[3]; -c_731623.elts[4] = ((closureN)self_73973)->elts[4]; -c_731623.elts[5] = ((closureN)self_73973)->elts[5]; -c_731623.elts[6] = ((closureN)self_73973)->elts[6]; -c_731623.elts[7] = ((closureN)self_73973)->elts[7]; -c_731623.elts[8] = ((closureN)self_73973)->elts[8]; -c_731623.elts[9] = ((closureN)self_73973)->elts[9]; -c_731623.elts[10] = ((closureN)self_73973)->elts[10]; -c_731623.elts[11] = ((closureN)self_73973)->elts[11]; -c_731623.elts[12] = ((closureN)self_73973)->elts[12]; -c_731623.elts[13] = ((closureN)self_73973)->elts[13]; - - -closureN_type c_731885; -c_731885.hdr.mark = gc_color_red; - c_731885.hdr.grayed = 0; -c_731885.tag = closureN_tag; - c_731885.fn = (function_type)__lambda_147; -c_731885.num_args = 1; -c_731885.num_elt = 1; -c_731885.elts = (object *)alloca(sizeof(object) * 1); -c_731885.elts[0] = ((closureN)self_73973)->elts[11]; - -return_closcall1(data,(closure)&c_731623, &c_731885);; -} - -static void __lambda_147(void *data, int argc, object self_73974, object k_73347, object n_73168) { - -closureN_type c_731887; -c_731887.hdr.mark = gc_color_red; - c_731887.hdr.grayed = 0; -c_731887.tag = closureN_tag; - c_731887.fn = (function_type)__lambda_146; -c_731887.num_args = 1; -c_731887.num_elt = 3; -c_731887.elts = (object *)alloca(sizeof(object) * 3); -c_731887.elts[0] = k_73347; -c_731887.elts[1] = n_73168; -c_731887.elts[2] = ((closureN)self_73974)->elts[0]; - -return_closcall1(data,(closure)&c_731887, equalp(n_73168, obj_int2obj(1)));; -} - -static void __lambda_146(void *data, int argc, object self_73975, object r_73348) { - if( !eq(boolean_f, r_73348) ){ - -closureN_type c_731889; -c_731889.hdr.mark = gc_color_red; - c_731889.hdr.grayed = 0; -c_731889.tag = closureN_tag; - c_731889.fn = (function_type)__lambda_138; -c_731889.num_args = 0; -c_731889.num_elt = 1; -c_731889.elts = (object *)alloca(sizeof(object) * 1); -c_731889.elts[0] = ((closureN)self_73975)->elts[0]; - -return_closcall0(data,(closure)&c_731889); -} else { - -closureN_type c_731895; -c_731895.hdr.mark = gc_color_red; - c_731895.hdr.grayed = 0; -c_731895.tag = closureN_tag; - c_731895.fn = (function_type)__lambda_145; -c_731895.num_args = 0; -c_731895.num_elt = 3; -c_731895.elts = (object *)alloca(sizeof(object) * 3); -c_731895.elts[0] = ((closureN)self_73975)->elts[0]; -c_731895.elts[1] = ((closureN)self_73975)->elts[1]; -c_731895.elts[2] = ((closureN)self_73975)->elts[2]; - -return_closcall0(data,(closure)&c_731895);} -; -} - -static void __lambda_145(void *data, int argc, object self_73976) { - -closureN_type c_731897; -c_731897.hdr.mark = gc_color_red; - c_731897.hdr.grayed = 0; -c_731897.tag = closureN_tag; - c_731897.fn = (function_type)__lambda_144; -c_731897.num_args = 1; -c_731897.num_elt = 3; -c_731897.elts = (object *)alloca(sizeof(object) * 3); -c_731897.elts[0] = ((closureN)self_73976)->elts[0]; -c_731897.elts[1] = ((closureN)self_73976)->elts[1]; -c_731897.elts[2] = ((closureN)self_73976)->elts[2]; - -return_closcall1(data,(closure)&c_731897, quote_and);; -} - -static void __lambda_144(void *data, int argc, object self_73977, object r_73350) { - -closureN_type c_731899; -c_731899.hdr.mark = gc_color_red; - c_731899.hdr.grayed = 0; -c_731899.tag = closureN_tag; - c_731899.fn = (function_type)__lambda_143; -c_731899.num_args = 1; -c_731899.num_elt = 4; -c_731899.elts = (object *)alloca(sizeof(object) * 4); -c_731899.elts[0] = ((closureN)self_73977)->elts[0]; -c_731899.elts[1] = ((closureN)self_73977)->elts[1]; -c_731899.elts[2] = r_73350; -c_731899.elts[3] = ((closureN)self_73977)->elts[2]; - -return_closcall1(data,(closure)&c_731899, quote_implies);; -} - -static void __lambda_143(void *data, int argc, object self_73978, object r_73354) { - -closureN_type c_731901; -c_731901.hdr.mark = gc_color_red; - c_731901.hdr.grayed = 0; -c_731901.tag = closureN_tag; - c_731901.fn = (function_type)__lambda_142; -c_731901.num_args = 1; -c_731901.num_elt = 5; -c_731901.elts = (object *)alloca(sizeof(object) * 5); -c_731901.elts[0] = ((closureN)self_73978)->elts[0]; -c_731901.elts[1] = ((closureN)self_73978)->elts[1]; -c_731901.elts[2] = ((closureN)self_73978)->elts[2]; -c_731901.elts[3] = r_73354; -c_731901.elts[4] = ((closureN)self_73978)->elts[3]; - - -object c_731923 = Cyc_sub(data,(closure)&c_731901,2,((closureN)self_73978)->elts[1], obj_int2obj(1)); -return_closcall1(data,(closure)&c_731901, c_731923);; -} - -static void __lambda_142(void *data, int argc, object self_73979, object r_73355) { - -closureN_type c_731903; -c_731903.hdr.mark = gc_color_red; - c_731903.hdr.grayed = 0; -c_731903.tag = closureN_tag; - c_731903.fn = (function_type)__lambda_141; -c_731903.num_args = 1; -c_731903.num_elt = 4; -c_731903.elts = (object *)alloca(sizeof(object) * 4); -c_731903.elts[0] = ((closureN)self_73979)->elts[0]; -c_731903.elts[1] = ((closureN)self_73979)->elts[1]; -c_731903.elts[2] = ((closureN)self_73979)->elts[2]; -c_731903.elts[3] = ((closureN)self_73979)->elts[4]; - -return_closcall4(data, __glo__list_scheme_base, &c_731903, ((closureN)self_73979)->elts[3], r_73355, ((closureN)self_73979)->elts[1]);; -} - -static void __lambda_141(void *data, int argc, object self_73980, object r_73351) { - -closureN_type c_731905; -c_731905.hdr.mark = gc_color_red; - c_731905.hdr.grayed = 0; -c_731905.tag = closureN_tag; - c_731905.fn = (function_type)__lambda_140; -c_731905.num_args = 1; -c_731905.num_elt = 4; -c_731905.elts = (object *)alloca(sizeof(object) * 4); -c_731905.elts[0] = ((closureN)self_73980)->elts[0]; -c_731905.elts[1] = ((closureN)self_73980)->elts[2]; -c_731905.elts[2] = r_73351; -c_731905.elts[3] = ((closureN)self_73980)->elts[3]; - - -object c_731917 = Cyc_sub(data,(closure)&c_731905,2,((closureN)self_73980)->elts[1], obj_int2obj(1)); -return_closcall1(data,(closure)&c_731905, c_731917);; -} - -static void __lambda_140(void *data, int argc, object self_73981, object r_73353) { - -closureN_type c_731910; -c_731910.hdr.mark = gc_color_red; - c_731910.hdr.grayed = 0; -c_731910.tag = closureN_tag; - c_731910.fn = (function_type)__lambda_139; -c_731910.num_args = 1; -c_731910.num_elt = 3; -c_731910.elts = (object *)alloca(sizeof(object) * 3); -c_731910.elts[0] = ((closureN)self_73981)->elts[0]; -c_731910.elts[1] = ((closureN)self_73981)->elts[1]; -c_731910.elts[2] = ((closureN)self_73981)->elts[2]; - -return_closcall2(data, cell_get(((closureN)self_73981)->elts[3]), &c_731910, r_73353);; -} - -static void __lambda_139(void *data, int argc, object self_73982, object r_73352) { - return_closcall4(data, __glo__list_scheme_base, ((closureN)self_73982)->elts[0], ((closureN)self_73982)->elts[1], ((closureN)self_73982)->elts[2], r_73352);; -} - -static void __lambda_138(void *data, int argc, object self_73983) { - -closureN_type c_731891; -c_731891.hdr.mark = gc_color_red; - c_731891.hdr.grayed = 0; -c_731891.tag = closureN_tag; - c_731891.fn = (function_type)__lambda_137; -c_731891.num_args = 1; -c_731891.num_elt = 1; -c_731891.elts = (object *)alloca(sizeof(object) * 1); -c_731891.elts[0] = ((closureN)self_73983)->elts[0]; - -return_closcall1(data,(closure)&c_731891, quote_implies);; -} - -static void __lambda_137(void *data, int argc, object self_73984, object r_73349) { - return_closcall4(data, __glo__list_scheme_base, ((closureN)self_73984)->elts[0], r_73349, obj_int2obj(0), obj_int2obj(1));; -} - -static void __lambda_136(void *data, int argc, object self_73985, object r_73346) { - -closureN_type c_731625; -c_731625.hdr.mark = gc_color_red; - c_731625.hdr.grayed = 0; -c_731625.tag = closureN_tag; - c_731625.fn = (function_type)__lambda_135; -c_731625.num_args = 1; -c_731625.num_elt = 13; -c_731625.elts = (object *)alloca(sizeof(object) * 13); -c_731625.elts[0] = ((closureN)self_73985)->elts[0]; -c_731625.elts[1] = ((closureN)self_73985)->elts[1]; -c_731625.elts[2] = ((closureN)self_73985)->elts[2]; -c_731625.elts[3] = ((closureN)self_73985)->elts[3]; -c_731625.elts[4] = ((closureN)self_73985)->elts[4]; -c_731625.elts[5] = ((closureN)self_73985)->elts[5]; -c_731625.elts[6] = ((closureN)self_73985)->elts[6]; -c_731625.elts[7] = ((closureN)self_73985)->elts[7]; -c_731625.elts[8] = ((closureN)self_73985)->elts[8]; -c_731625.elts[9] = ((closureN)self_73985)->elts[9]; -c_731625.elts[10] = ((closureN)self_73985)->elts[10]; -c_731625.elts[11] = ((closureN)self_73985)->elts[12]; -c_731625.elts[12] = ((closureN)self_73985)->elts[13]; - -return_closcall1(data,(closure)&c_731625, Cyc_set_car(data, ((closureN)self_73985)->elts[11], r_73346));; -} - -static void __lambda_135(void *data, int argc, object self_73986, object r_73300) { - -closureN_type c_731627; -c_731627.hdr.mark = gc_color_red; - c_731627.hdr.grayed = 0; -c_731627.tag = closureN_tag; - c_731627.fn = (function_type)__lambda_124; -c_731627.num_args = 1; -c_731627.num_elt = 12; -c_731627.elts = (object *)alloca(sizeof(object) * 12); -c_731627.elts[0] = ((closureN)self_73986)->elts[0]; -c_731627.elts[1] = ((closureN)self_73986)->elts[1]; -c_731627.elts[2] = ((closureN)self_73986)->elts[2]; -c_731627.elts[3] = ((closureN)self_73986)->elts[3]; -c_731627.elts[4] = ((closureN)self_73986)->elts[4]; -c_731627.elts[5] = ((closureN)self_73986)->elts[5]; -c_731627.elts[6] = ((closureN)self_73986)->elts[7]; -c_731627.elts[7] = ((closureN)self_73986)->elts[8]; -c_731627.elts[8] = ((closureN)self_73986)->elts[9]; -c_731627.elts[9] = ((closureN)self_73986)->elts[10]; -c_731627.elts[10] = ((closureN)self_73986)->elts[11]; -c_731627.elts[11] = ((closureN)self_73986)->elts[12]; - - -closureN_type c_731826; -c_731826.hdr.mark = gc_color_red; - c_731826.hdr.grayed = 0; -c_731826.tag = closureN_tag; - c_731826.fn = (function_type)__lambda_134; -c_731826.num_args = 2; -c_731826.num_elt = 2; -c_731826.elts = (object *)alloca(sizeof(object) * 2); -c_731826.elts[0] = ((closureN)self_73986)->elts[6]; -c_731826.elts[1] = ((closureN)self_73986)->elts[7]; - -return_closcall1(data,(closure)&c_731627, &c_731826);; -} - -static void __lambda_134(void *data, int argc, object self_73987, object k_73338, object x_73167, object y_73166) { - -closureN_type c_731828; -c_731828.hdr.mark = gc_color_red; - c_731828.hdr.grayed = 0; -c_731828.tag = closureN_tag; - c_731828.fn = (function_type)__lambda_133; -c_731828.num_args = 1; -c_731828.num_elt = 5; -c_731828.elts = (object *)alloca(sizeof(object) * 5); -c_731828.elts[0] = k_73338; -c_731828.elts[1] = ((closureN)self_73987)->elts[0]; -c_731828.elts[2] = ((closureN)self_73987)->elts[1]; -c_731828.elts[3] = x_73167; -c_731828.elts[4] = y_73166; - -return_closcall1(data,(closure)&c_731828, Cyc_is_cons(x_73167));; -} - -static void __lambda_133(void *data, int argc, object self_73988, object r_73339) { - if( !eq(boolean_f, r_73339) ){ - -closureN_type c_731830; -c_731830.hdr.mark = gc_color_red; - c_731830.hdr.grayed = 0; -c_731830.tag = closureN_tag; - c_731830.fn = (function_type)__lambda_131; -c_731830.num_args = 0; -c_731830.num_elt = 5; -c_731830.elts = (object *)alloca(sizeof(object) * 5); -c_731830.elts[0] = ((closureN)self_73988)->elts[0]; -c_731830.elts[1] = ((closureN)self_73988)->elts[1]; -c_731830.elts[2] = ((closureN)self_73988)->elts[2]; -c_731830.elts[3] = ((closureN)self_73988)->elts[3]; -c_731830.elts[4] = ((closureN)self_73988)->elts[4]; - -return_closcall0(data,(closure)&c_731830); -} else { - -closureN_type c_731873; -c_731873.hdr.mark = gc_color_red; - c_731873.hdr.grayed = 0; -c_731873.tag = closureN_tag; - c_731873.fn = (function_type)__lambda_132; -c_731873.num_args = 0; -c_731873.num_elt = 3; -c_731873.elts = (object *)alloca(sizeof(object) * 3); -c_731873.elts[0] = ((closureN)self_73988)->elts[0]; -c_731873.elts[1] = ((closureN)self_73988)->elts[3]; -c_731873.elts[2] = ((closureN)self_73988)->elts[4]; - -return_closcall0(data,(closure)&c_731873);} -; -} - -static void __lambda_132(void *data, int argc, object self_73989) { - return_closcall1(data, ((closureN)self_73989)->elts[0], equalp(((closureN)self_73989)->elts[1], ((closureN)self_73989)->elts[2]));; -} - -static void __lambda_131(void *data, int argc, object self_73990) { - -closureN_type c_731832; -c_731832.hdr.mark = gc_color_red; - c_731832.hdr.grayed = 0; -c_731832.tag = closureN_tag; - c_731832.fn = (function_type)__lambda_130; -c_731832.num_args = 1; -c_731832.num_elt = 5; -c_731832.elts = (object *)alloca(sizeof(object) * 5); -c_731832.elts[0] = ((closureN)self_73990)->elts[0]; -c_731832.elts[1] = ((closureN)self_73990)->elts[1]; -c_731832.elts[2] = ((closureN)self_73990)->elts[2]; -c_731832.elts[3] = ((closureN)self_73990)->elts[3]; -c_731832.elts[4] = ((closureN)self_73990)->elts[4]; - -return_closcall1(data,(closure)&c_731832, Cyc_is_cons(((closureN)self_73990)->elts[4]));; -} - -static void __lambda_130(void *data, int argc, object self_73991, object r_73340) { - if( !eq(boolean_f, r_73340) ){ - -closureN_type c_731834; -c_731834.hdr.mark = gc_color_red; - c_731834.hdr.grayed = 0; -c_731834.tag = closureN_tag; - c_731834.fn = (function_type)__lambda_129; -c_731834.num_args = 1; -c_731834.num_elt = 5; -c_731834.elts = (object *)alloca(sizeof(object) * 5); -c_731834.elts[0] = ((closureN)self_73991)->elts[0]; -c_731834.elts[1] = ((closureN)self_73991)->elts[1]; -c_731834.elts[2] = ((closureN)self_73991)->elts[2]; -c_731834.elts[3] = ((closureN)self_73991)->elts[3]; -c_731834.elts[4] = ((closureN)self_73991)->elts[4]; - -return_closcall1(data,(closure)&c_731834, car(((closureN)self_73991)->elts[3])); -} else { - return_closcall1(data, ((closureN)self_73991)->elts[0], boolean_f);} -; -} - -static void __lambda_129(void *data, int argc, object self_73992, object r_73344) { - -closureN_type c_731836; -c_731836.hdr.mark = gc_color_red; - c_731836.hdr.grayed = 0; -c_731836.tag = closureN_tag; - c_731836.fn = (function_type)__lambda_128; -c_731836.num_args = 1; -c_731836.num_elt = 6; -c_731836.elts = (object *)alloca(sizeof(object) * 6); -c_731836.elts[0] = ((closureN)self_73992)->elts[0]; -c_731836.elts[1] = r_73344; -c_731836.elts[2] = ((closureN)self_73992)->elts[1]; -c_731836.elts[3] = ((closureN)self_73992)->elts[2]; -c_731836.elts[4] = ((closureN)self_73992)->elts[3]; -c_731836.elts[5] = ((closureN)self_73992)->elts[4]; - -return_closcall1(data,(closure)&c_731836, car(((closureN)self_73992)->elts[4]));; -} - -static void __lambda_128(void *data, int argc, object self_73993, object r_73345) { - -closureN_type c_731841; -c_731841.hdr.mark = gc_color_red; - c_731841.hdr.grayed = 0; -c_731841.tag = closureN_tag; - c_731841.fn = (function_type)__lambda_127; -c_731841.num_args = 1; -c_731841.num_elt = 4; -c_731841.elts = (object *)alloca(sizeof(object) * 4); -c_731841.elts[0] = ((closureN)self_73993)->elts[0]; -c_731841.elts[1] = ((closureN)self_73993)->elts[3]; -c_731841.elts[2] = ((closureN)self_73993)->elts[4]; -c_731841.elts[3] = ((closureN)self_73993)->elts[5]; - -return_closcall3(data, cell_get(((closureN)self_73993)->elts[2]), &c_731841, ((closureN)self_73993)->elts[1], r_73345);; -} - -static void __lambda_127(void *data, int argc, object self_73994, object r_73341) { - if( !eq(boolean_f, r_73341) ){ - -closureN_type c_731843; -c_731843.hdr.mark = gc_color_red; - c_731843.hdr.grayed = 0; -c_731843.tag = closureN_tag; - c_731843.fn = (function_type)__lambda_126; -c_731843.num_args = 1; -c_731843.num_elt = 3; -c_731843.elts = (object *)alloca(sizeof(object) * 3); -c_731843.elts[0] = ((closureN)self_73994)->elts[0]; -c_731843.elts[1] = ((closureN)self_73994)->elts[1]; -c_731843.elts[2] = ((closureN)self_73994)->elts[3]; - -return_closcall1(data,(closure)&c_731843, cdr(((closureN)self_73994)->elts[2])); -} else { - return_closcall1(data, ((closureN)self_73994)->elts[0], boolean_f);} -; -} - -static void __lambda_126(void *data, int argc, object self_73995, object r_73342) { - -closureN_type c_731845; -c_731845.hdr.mark = gc_color_red; - c_731845.hdr.grayed = 0; -c_731845.tag = closureN_tag; - c_731845.fn = (function_type)__lambda_125; -c_731845.num_args = 1; -c_731845.num_elt = 3; -c_731845.elts = (object *)alloca(sizeof(object) * 3); -c_731845.elts[0] = ((closureN)self_73995)->elts[0]; -c_731845.elts[1] = r_73342; -c_731845.elts[2] = ((closureN)self_73995)->elts[1]; - -return_closcall1(data,(closure)&c_731845, cdr(((closureN)self_73995)->elts[2]));; -} - -static void __lambda_125(void *data, int argc, object self_73996, object r_73343) { - return_closcall3(data, cell_get(((closureN)self_73996)->elts[2]), ((closureN)self_73996)->elts[0], ((closureN)self_73996)->elts[1], r_73343);; -} - -static void __lambda_124(void *data, int argc, object self_73997, object r_73337) { - -closureN_type c_731629; -c_731629.hdr.mark = gc_color_red; - c_731629.hdr.grayed = 0; -c_731629.tag = closureN_tag; - c_731629.fn = (function_type)__lambda_123; -c_731629.num_args = 1; -c_731629.num_elt = 12; -c_731629.elts = (object *)alloca(sizeof(object) * 12); -c_731629.elts[0] = ((closureN)self_73997)->elts[0]; -c_731629.elts[1] = ((closureN)self_73997)->elts[1]; -c_731629.elts[2] = ((closureN)self_73997)->elts[2]; -c_731629.elts[3] = ((closureN)self_73997)->elts[3]; -c_731629.elts[4] = ((closureN)self_73997)->elts[4]; -c_731629.elts[5] = ((closureN)self_73997)->elts[5]; -c_731629.elts[6] = ((closureN)self_73997)->elts[6]; -c_731629.elts[7] = ((closureN)self_73997)->elts[7]; -c_731629.elts[8] = ((closureN)self_73997)->elts[8]; -c_731629.elts[9] = ((closureN)self_73997)->elts[9]; -c_731629.elts[10] = ((closureN)self_73997)->elts[10]; -c_731629.elts[11] = ((closureN)self_73997)->elts[11]; - -return_closcall1(data,(closure)&c_731629, Cyc_set_car(data, ((closureN)self_73997)->elts[7], r_73337));; -} - -static void __lambda_123(void *data, int argc, object self_73998, object r_73301) { - -closureN_type c_731631; -c_731631.hdr.mark = gc_color_red; - c_731631.hdr.grayed = 0; -c_731631.tag = closureN_tag; - c_731631.fn = (function_type)__lambda_110; -c_731631.num_args = 1; -c_731631.num_elt = 12; -c_731631.elts = (object *)alloca(sizeof(object) * 12); -c_731631.elts[0] = ((closureN)self_73998)->elts[0]; -c_731631.elts[1] = ((closureN)self_73998)->elts[1]; -c_731631.elts[2] = ((closureN)self_73998)->elts[2]; -c_731631.elts[3] = ((closureN)self_73998)->elts[3]; -c_731631.elts[4] = ((closureN)self_73998)->elts[4]; -c_731631.elts[5] = ((closureN)self_73998)->elts[5]; -c_731631.elts[6] = ((closureN)self_73998)->elts[6]; -c_731631.elts[7] = ((closureN)self_73998)->elts[7]; -c_731631.elts[8] = ((closureN)self_73998)->elts[8]; -c_731631.elts[9] = ((closureN)self_73998)->elts[9]; -c_731631.elts[10] = ((closureN)self_73998)->elts[10]; -c_731631.elts[11] = ((closureN)self_73998)->elts[11]; - - -closureN_type c_731764; -c_731764.hdr.mark = gc_color_red; - c_731764.hdr.grayed = 0; -c_731764.tag = closureN_tag; - c_731764.fn = (function_type)__lambda_122; -c_731764.num_args = 2; -c_731764.num_elt = 2; -c_731764.elts = (object *)alloca(sizeof(object) * 2); -c_731764.elts[0] = ((closureN)self_73998)->elts[6]; -c_731764.elts[1] = ((closureN)self_73998)->elts[7]; - -return_closcall1(data,(closure)&c_731631, &c_731764);; -} - -static void __lambda_122(void *data, int argc, object self_73999, object k_73329, object lst1_73165, object lst2_73164) { - -closureN_type c_731766; -c_731766.hdr.mark = gc_color_red; - c_731766.hdr.grayed = 0; -c_731766.tag = closureN_tag; - c_731766.fn = (function_type)__lambda_121; -c_731766.num_args = 1; -c_731766.num_elt = 5; -c_731766.elts = (object *)alloca(sizeof(object) * 5); -c_731766.elts[0] = k_73329; -c_731766.elts[1] = lst1_73165; -c_731766.elts[2] = lst2_73164; -c_731766.elts[3] = ((closureN)self_73999)->elts[0]; -c_731766.elts[4] = ((closureN)self_73999)->elts[1]; - -return_closcall1(data,(closure)&c_731766, Cyc_is_null(lst1_73165));; -} - -static void __lambda_121(void *data, int argc, object self_731000, object r_73330) { - if( !eq(boolean_f, r_73330) ){ - -closureN_type c_731768; -c_731768.hdr.mark = gc_color_red; - c_731768.hdr.grayed = 0; -c_731768.tag = closureN_tag; - c_731768.fn = (function_type)__lambda_111; -c_731768.num_args = 0; -c_731768.num_elt = 2; -c_731768.elts = (object *)alloca(sizeof(object) * 2); -c_731768.elts[0] = ((closureN)self_731000)->elts[0]; -c_731768.elts[1] = ((closureN)self_731000)->elts[2]; - -return_closcall0(data,(closure)&c_731768); -} else { - -closureN_type c_731775; -c_731775.hdr.mark = gc_color_red; - c_731775.hdr.grayed = 0; -c_731775.tag = closureN_tag; - c_731775.fn = (function_type)__lambda_120; -c_731775.num_args = 1; -c_731775.num_elt = 5; -c_731775.elts = (object *)alloca(sizeof(object) * 5); -c_731775.elts[0] = ((closureN)self_731000)->elts[0]; -c_731775.elts[1] = ((closureN)self_731000)->elts[1]; -c_731775.elts[2] = ((closureN)self_731000)->elts[2]; -c_731775.elts[3] = ((closureN)self_731000)->elts[3]; -c_731775.elts[4] = ((closureN)self_731000)->elts[4]; - -return_closcall1(data,(closure)&c_731775, Cyc_is_null(((closureN)self_731000)->elts[2]));} -; -} - -static void __lambda_120(void *data, int argc, object self_731001, object r_73331) { - if( !eq(boolean_f, r_73331) ){ - -closureN_type c_731777; -c_731777.hdr.mark = gc_color_red; - c_731777.hdr.grayed = 0; -c_731777.tag = closureN_tag; - c_731777.fn = (function_type)__lambda_112; -c_731777.num_args = 0; -c_731777.num_elt = 1; -c_731777.elts = (object *)alloca(sizeof(object) * 1); -c_731777.elts[0] = ((closureN)self_731001)->elts[0]; - -return_closcall0(data,(closure)&c_731777); -} else { - -closureN_type c_731781; -c_731781.hdr.mark = gc_color_red; - c_731781.hdr.grayed = 0; -c_731781.tag = closureN_tag; - c_731781.fn = (function_type)__lambda_119; -c_731781.num_args = 1; -c_731781.num_elt = 5; -c_731781.elts = (object *)alloca(sizeof(object) * 5); -c_731781.elts[0] = ((closureN)self_731001)->elts[0]; -c_731781.elts[1] = ((closureN)self_731001)->elts[1]; -c_731781.elts[2] = ((closureN)self_731001)->elts[2]; -c_731781.elts[3] = ((closureN)self_731001)->elts[3]; -c_731781.elts[4] = ((closureN)self_731001)->elts[4]; - -return_closcall1(data,(closure)&c_731781, car(((closureN)self_731001)->elts[1]));} -; -} - -static void __lambda_119(void *data, int argc, object self_731002, object r_73335) { - -closureN_type c_731783; -c_731783.hdr.mark = gc_color_red; - c_731783.hdr.grayed = 0; -c_731783.tag = closureN_tag; - c_731783.fn = (function_type)__lambda_118; -c_731783.num_args = 1; -c_731783.num_elt = 6; -c_731783.elts = (object *)alloca(sizeof(object) * 6); -c_731783.elts[0] = ((closureN)self_731002)->elts[0]; -c_731783.elts[1] = ((closureN)self_731002)->elts[1]; -c_731783.elts[2] = ((closureN)self_731002)->elts[2]; -c_731783.elts[3] = r_73335; -c_731783.elts[4] = ((closureN)self_731002)->elts[3]; -c_731783.elts[5] = ((closureN)self_731002)->elts[4]; - -return_closcall1(data,(closure)&c_731783, car(((closureN)self_731002)->elts[2]));; -} - -static void __lambda_118(void *data, int argc, object self_731003, object r_73336) { - -closureN_type c_731788; -c_731788.hdr.mark = gc_color_red; - c_731788.hdr.grayed = 0; -c_731788.tag = closureN_tag; - c_731788.fn = (function_type)__lambda_117; -c_731788.num_args = 1; -c_731788.num_elt = 4; -c_731788.elts = (object *)alloca(sizeof(object) * 4); -c_731788.elts[0] = ((closureN)self_731003)->elts[0]; -c_731788.elts[1] = ((closureN)self_731003)->elts[1]; -c_731788.elts[2] = ((closureN)self_731003)->elts[2]; -c_731788.elts[3] = ((closureN)self_731003)->elts[4]; - -return_closcall3(data, cell_get(((closureN)self_731003)->elts[5]), &c_731788, ((closureN)self_731003)->elts[3], r_73336);; -} - -static void __lambda_117(void *data, int argc, object self_731004, object r_73332) { - if( !eq(boolean_f, r_73332) ){ - -closureN_type c_731790; -c_731790.hdr.mark = gc_color_red; - c_731790.hdr.grayed = 0; -c_731790.tag = closureN_tag; - c_731790.fn = (function_type)__lambda_115; -c_731790.num_args = 0; -c_731790.num_elt = 4; -c_731790.elts = (object *)alloca(sizeof(object) * 4); -c_731790.elts[0] = ((closureN)self_731004)->elts[0]; -c_731790.elts[1] = ((closureN)self_731004)->elts[1]; -c_731790.elts[2] = ((closureN)self_731004)->elts[2]; -c_731790.elts[3] = ((closureN)self_731004)->elts[3]; - -return_closcall0(data,(closure)&c_731790); -} else { - -closureN_type c_731808; -c_731808.hdr.mark = gc_color_red; - c_731808.hdr.grayed = 0; -c_731808.tag = closureN_tag; - c_731808.fn = (function_type)__lambda_116; -c_731808.num_args = 0; -c_731808.num_elt = 1; -c_731808.elts = (object *)alloca(sizeof(object) * 1); -c_731808.elts[0] = ((closureN)self_731004)->elts[0]; - -return_closcall0(data,(closure)&c_731808);} -; -} - -static void __lambda_116(void *data, int argc, object self_731005) { - return_closcall1(data, ((closureN)self_731005)->elts[0], boolean_f);; -} - -static void __lambda_115(void *data, int argc, object self_731006) { - -closureN_type c_731792; -c_731792.hdr.mark = gc_color_red; - c_731792.hdr.grayed = 0; -c_731792.tag = closureN_tag; - c_731792.fn = (function_type)__lambda_114; -c_731792.num_args = 1; -c_731792.num_elt = 3; -c_731792.elts = (object *)alloca(sizeof(object) * 3); -c_731792.elts[0] = ((closureN)self_731006)->elts[0]; -c_731792.elts[1] = ((closureN)self_731006)->elts[2]; -c_731792.elts[2] = ((closureN)self_731006)->elts[3]; - -return_closcall1(data,(closure)&c_731792, cdr(((closureN)self_731006)->elts[1]));; -} - -static void __lambda_114(void *data, int argc, object self_731007, object r_73333) { - -closureN_type c_731794; -c_731794.hdr.mark = gc_color_red; - c_731794.hdr.grayed = 0; -c_731794.tag = closureN_tag; - c_731794.fn = (function_type)__lambda_113; -c_731794.num_args = 1; -c_731794.num_elt = 3; -c_731794.elts = (object *)alloca(sizeof(object) * 3); -c_731794.elts[0] = ((closureN)self_731007)->elts[0]; -c_731794.elts[1] = r_73333; -c_731794.elts[2] = ((closureN)self_731007)->elts[2]; - -return_closcall1(data,(closure)&c_731794, cdr(((closureN)self_731007)->elts[1]));; -} - -static void __lambda_113(void *data, int argc, object self_731008, object r_73334) { - return_closcall3(data, cell_get(((closureN)self_731008)->elts[2]), ((closureN)self_731008)->elts[0], ((closureN)self_731008)->elts[1], r_73334);; -} - -static void __lambda_112(void *data, int argc, object self_731009) { - return_closcall1(data, ((closureN)self_731009)->elts[0], boolean_f);; -} - -static void __lambda_111(void *data, int argc, object self_731010) { - return_closcall1(data, ((closureN)self_731010)->elts[0], Cyc_is_null(((closureN)self_731010)->elts[1]));; -} - -static void __lambda_110(void *data, int argc, object self_731011, object r_73328) { - -closureN_type c_731633; -c_731633.hdr.mark = gc_color_red; - c_731633.hdr.grayed = 0; -c_731633.tag = closureN_tag; - c_731633.fn = (function_type)__lambda_109; -c_731633.num_args = 1; -c_731633.num_elt = 11; -c_731633.elts = (object *)alloca(sizeof(object) * 11); -c_731633.elts[0] = ((closureN)self_731011)->elts[0]; -c_731633.elts[1] = ((closureN)self_731011)->elts[1]; -c_731633.elts[2] = ((closureN)self_731011)->elts[2]; -c_731633.elts[3] = ((closureN)self_731011)->elts[3]; -c_731633.elts[4] = ((closureN)self_731011)->elts[4]; -c_731633.elts[5] = ((closureN)self_731011)->elts[5]; -c_731633.elts[6] = ((closureN)self_731011)->elts[7]; -c_731633.elts[7] = ((closureN)self_731011)->elts[8]; -c_731633.elts[8] = ((closureN)self_731011)->elts[9]; -c_731633.elts[9] = ((closureN)self_731011)->elts[10]; -c_731633.elts[10] = ((closureN)self_731011)->elts[11]; - -return_closcall1(data,(closure)&c_731633, Cyc_set_car(data, ((closureN)self_731011)->elts[6], r_73328));; -} - -static void __lambda_109(void *data, int argc, object self_731012, object r_73302) { - -closureN_type c_731635; -c_731635.hdr.mark = gc_color_red; - c_731635.hdr.grayed = 0; -c_731635.tag = closureN_tag; - c_731635.fn = (function_type)__lambda_100; -c_731635.num_args = 1; -c_731635.num_elt = 10; -c_731635.elts = (object *)alloca(sizeof(object) * 10); -c_731635.elts[0] = ((closureN)self_731012)->elts[0]; -c_731635.elts[1] = ((closureN)self_731012)->elts[1]; -c_731635.elts[2] = ((closureN)self_731012)->elts[2]; -c_731635.elts[3] = ((closureN)self_731012)->elts[3]; -c_731635.elts[4] = ((closureN)self_731012)->elts[4]; -c_731635.elts[5] = ((closureN)self_731012)->elts[5]; -c_731635.elts[6] = ((closureN)self_731012)->elts[7]; -c_731635.elts[7] = ((closureN)self_731012)->elts[8]; -c_731635.elts[8] = ((closureN)self_731012)->elts[9]; -c_731635.elts[9] = ((closureN)self_731012)->elts[10]; - - -closureN_type c_731724; -c_731724.hdr.mark = gc_color_red; - c_731724.hdr.grayed = 0; -c_731724.tag = closureN_tag; - c_731724.fn = (function_type)__lambda_108; -c_731724.num_args = 2; -c_731724.num_elt = 2; -c_731724.elts = (object *)alloca(sizeof(object) * 2); -c_731724.elts[0] = ((closureN)self_731012)->elts[6]; -c_731724.elts[1] = ((closureN)self_731012)->elts[7]; - -return_closcall1(data,(closure)&c_731635, &c_731724);; -} - -static void __lambda_108(void *data, int argc, object self_731013, object k_73323, object x_73163, object lst_73162) { - -closureN_type c_731726; -c_731726.hdr.mark = gc_color_red; - c_731726.hdr.grayed = 0; -c_731726.tag = closureN_tag; - c_731726.fn = (function_type)__lambda_107; -c_731726.num_args = 1; -c_731726.num_elt = 5; -c_731726.elts = (object *)alloca(sizeof(object) * 5); -c_731726.elts[0] = k_73323; -c_731726.elts[1] = lst_73162; -c_731726.elts[2] = ((closureN)self_731013)->elts[0]; -c_731726.elts[3] = ((closureN)self_731013)->elts[1]; -c_731726.elts[4] = x_73163; - -return_closcall1(data,(closure)&c_731726, Cyc_is_null(lst_73162));; -} - -static void __lambda_107(void *data, int argc, object self_731014, object r_73324) { - if( !eq(boolean_f, r_73324) ){ - -closureN_type c_731728; -c_731728.hdr.mark = gc_color_red; - c_731728.hdr.grayed = 0; -c_731728.tag = closureN_tag; - c_731728.fn = (function_type)__lambda_101; -c_731728.num_args = 0; -c_731728.num_elt = 1; -c_731728.elts = (object *)alloca(sizeof(object) * 1); -c_731728.elts[0] = ((closureN)self_731014)->elts[0]; - -return_closcall0(data,(closure)&c_731728); -} else { - -closureN_type c_731732; -c_731732.hdr.mark = gc_color_red; - c_731732.hdr.grayed = 0; -c_731732.tag = closureN_tag; - c_731732.fn = (function_type)__lambda_106; -c_731732.num_args = 1; -c_731732.num_elt = 5; -c_731732.elts = (object *)alloca(sizeof(object) * 5); -c_731732.elts[0] = ((closureN)self_731014)->elts[0]; -c_731732.elts[1] = ((closureN)self_731014)->elts[1]; -c_731732.elts[2] = ((closureN)self_731014)->elts[2]; -c_731732.elts[3] = ((closureN)self_731014)->elts[3]; -c_731732.elts[4] = ((closureN)self_731014)->elts[4]; - -return_closcall1(data,(closure)&c_731732, car(((closureN)self_731014)->elts[1]));} -; -} - -static void __lambda_106(void *data, int argc, object self_731015, object r_73327) { - -closureN_type c_731737; -c_731737.hdr.mark = gc_color_red; - c_731737.hdr.grayed = 0; -c_731737.tag = closureN_tag; - c_731737.fn = (function_type)__lambda_105; -c_731737.num_args = 1; -c_731737.num_elt = 4; -c_731737.elts = (object *)alloca(sizeof(object) * 4); -c_731737.elts[0] = ((closureN)self_731015)->elts[0]; -c_731737.elts[1] = ((closureN)self_731015)->elts[1]; -c_731737.elts[2] = ((closureN)self_731015)->elts[3]; -c_731737.elts[3] = ((closureN)self_731015)->elts[4]; - -return_closcall3(data, cell_get(((closureN)self_731015)->elts[2]), &c_731737, ((closureN)self_731015)->elts[4], r_73327);; -} - -static void __lambda_105(void *data, int argc, object self_731016, object r_73325) { - if( !eq(boolean_f, r_73325) ){ - -closureN_type c_731739; -c_731739.hdr.mark = gc_color_red; - c_731739.hdr.grayed = 0; -c_731739.tag = closureN_tag; - c_731739.fn = (function_type)__lambda_102; -c_731739.num_args = 0; -c_731739.num_elt = 1; -c_731739.elts = (object *)alloca(sizeof(object) * 1); -c_731739.elts[0] = ((closureN)self_731016)->elts[0]; - -return_closcall0(data,(closure)&c_731739); -} else { - -closureN_type c_731743; -c_731743.hdr.mark = gc_color_red; - c_731743.hdr.grayed = 0; -c_731743.tag = closureN_tag; - c_731743.fn = (function_type)__lambda_104; -c_731743.num_args = 0; -c_731743.num_elt = 4; -c_731743.elts = (object *)alloca(sizeof(object) * 4); -c_731743.elts[0] = ((closureN)self_731016)->elts[0]; -c_731743.elts[1] = ((closureN)self_731016)->elts[1]; -c_731743.elts[2] = ((closureN)self_731016)->elts[2]; -c_731743.elts[3] = ((closureN)self_731016)->elts[3]; - -return_closcall0(data,(closure)&c_731743);} -; -} - -static void __lambda_104(void *data, int argc, object self_731017) { - -closureN_type c_731745; -c_731745.hdr.mark = gc_color_red; - c_731745.hdr.grayed = 0; -c_731745.tag = closureN_tag; - c_731745.fn = (function_type)__lambda_103; -c_731745.num_args = 1; -c_731745.num_elt = 3; -c_731745.elts = (object *)alloca(sizeof(object) * 3); -c_731745.elts[0] = ((closureN)self_731017)->elts[0]; -c_731745.elts[1] = ((closureN)self_731017)->elts[2]; -c_731745.elts[2] = ((closureN)self_731017)->elts[3]; - -return_closcall1(data,(closure)&c_731745, cdr(((closureN)self_731017)->elts[1]));; -} - -static void __lambda_103(void *data, int argc, object self_731018, object r_73326) { - return_closcall3(data, cell_get(((closureN)self_731018)->elts[1]), ((closureN)self_731018)->elts[0], ((closureN)self_731018)->elts[2], r_73326);; -} - -static void __lambda_102(void *data, int argc, object self_731019) { - return_closcall1(data, ((closureN)self_731019)->elts[0], boolean_t);; -} - -static void __lambda_101(void *data, int argc, object self_731020) { - return_closcall1(data, ((closureN)self_731020)->elts[0], boolean_f);; -} - -static void __lambda_100(void *data, int argc, object self_731021, object r_73322) { - -closureN_type c_731637; -c_731637.hdr.mark = gc_color_red; - c_731637.hdr.grayed = 0; -c_731637.tag = closureN_tag; - c_731637.fn = (function_type)__lambda_99; -c_731637.num_args = 1; -c_731637.num_elt = 9; -c_731637.elts = (object *)alloca(sizeof(object) * 9); -c_731637.elts[0] = ((closureN)self_731021)->elts[0]; -c_731637.elts[1] = ((closureN)self_731021)->elts[1]; -c_731637.elts[2] = ((closureN)self_731021)->elts[2]; -c_731637.elts[3] = ((closureN)self_731021)->elts[3]; -c_731637.elts[4] = ((closureN)self_731021)->elts[4]; -c_731637.elts[5] = ((closureN)self_731021)->elts[5]; -c_731637.elts[6] = ((closureN)self_731021)->elts[7]; -c_731637.elts[7] = ((closureN)self_731021)->elts[8]; -c_731637.elts[8] = ((closureN)self_731021)->elts[9]; - -return_closcall1(data,(closure)&c_731637, Cyc_set_car(data, ((closureN)self_731021)->elts[6], r_73322));; -} - -static void __lambda_99(void *data, int argc, object self_731022, object r_73303) { - -closureN_type c_731639; -c_731639.hdr.mark = gc_color_red; - c_731639.hdr.grayed = 0; -c_731639.tag = closureN_tag; - c_731639.fn = (function_type)__lambda_86; -c_731639.num_args = 1; -c_731639.num_elt = 2; -c_731639.elts = (object *)alloca(sizeof(object) * 2); -c_731639.elts[0] = ((closureN)self_731022)->elts[3]; -c_731639.elts[1] = ((closureN)self_731022)->elts[6]; - - -closureN_type c_731670; -c_731670.hdr.mark = gc_color_red; - c_731670.hdr.grayed = 0; -c_731670.tag = closureN_tag; - c_731670.fn = (function_type)__lambda_98; -c_731670.num_args = 0; -c_731670.num_elt = 7; -c_731670.elts = (object *)alloca(sizeof(object) * 7); -c_731670.elts[0] = ((closureN)self_731022)->elts[0]; -c_731670.elts[1] = ((closureN)self_731022)->elts[1]; -c_731670.elts[2] = ((closureN)self_731022)->elts[2]; -c_731670.elts[3] = ((closureN)self_731022)->elts[4]; -c_731670.elts[4] = ((closureN)self_731022)->elts[5]; -c_731670.elts[5] = ((closureN)self_731022)->elts[7]; -c_731670.elts[6] = ((closureN)self_731022)->elts[8]; - -return_closcall1(data,(closure)&c_731639, &c_731670);; -} - -static void __lambda_98(void *data, int argc, object self_731023, object k_73310) { - -closureN_type c_731672; -c_731672.hdr.mark = gc_color_red; - c_731672.hdr.grayed = 0; -c_731672.tag = closureN_tag; - c_731672.fn = (function_type)__lambda_97; -c_731672.num_args = 1; -c_731672.num_elt = 8; -c_731672.elts = (object *)alloca(sizeof(object) * 8); -c_731672.elts[0] = ((closureN)self_731023)->elts[0]; -c_731672.elts[1] = ((closureN)self_731023)->elts[1]; -c_731672.elts[2] = ((closureN)self_731023)->elts[2]; -c_731672.elts[3] = k_73310; -c_731672.elts[4] = ((closureN)self_731023)->elts[3]; -c_731672.elts[5] = ((closureN)self_731023)->elts[4]; -c_731672.elts[6] = ((closureN)self_731023)->elts[5]; -c_731672.elts[7] = ((closureN)self_731023)->elts[6]; - -return_closcall1(data,(closure)&c_731672, nil);; -} - -static void __lambda_97(void *data, int argc, object self_731024, object r_73321) { - -closureN_type c_731674; -c_731674.hdr.mark = gc_color_red; - c_731674.hdr.grayed = 0; -c_731674.tag = closureN_tag; - c_731674.fn = (function_type)__lambda_96; -c_731674.num_args = 1; -c_731674.num_elt = 7; -c_731674.elts = (object *)alloca(sizeof(object) * 7); -c_731674.elts[0] = ((closureN)self_731024)->elts[1]; -c_731674.elts[1] = ((closureN)self_731024)->elts[2]; -c_731674.elts[2] = ((closureN)self_731024)->elts[3]; -c_731674.elts[3] = ((closureN)self_731024)->elts[4]; -c_731674.elts[4] = ((closureN)self_731024)->elts[5]; -c_731674.elts[5] = ((closureN)self_731024)->elts[6]; -c_731674.elts[6] = ((closureN)self_731024)->elts[7]; - -return_closcall1(data,(closure)&c_731674, Cyc_set_car(data, ((closureN)self_731024)->elts[0], r_73321));; -} - -static void __lambda_96(void *data, int argc, object self_731025, object r_73311) { - -closureN_type c_731676; -c_731676.hdr.mark = gc_color_red; - c_731676.hdr.grayed = 0; -c_731676.tag = closureN_tag; - c_731676.fn = (function_type)__lambda_95; -c_731676.num_args = 1; -c_731676.num_elt = 7; -c_731676.elts = (object *)alloca(sizeof(object) * 7); -c_731676.elts[0] = ((closureN)self_731025)->elts[0]; -c_731676.elts[1] = ((closureN)self_731025)->elts[1]; -c_731676.elts[2] = ((closureN)self_731025)->elts[2]; -c_731676.elts[3] = ((closureN)self_731025)->elts[3]; -c_731676.elts[4] = ((closureN)self_731025)->elts[4]; -c_731676.elts[5] = ((closureN)self_731025)->elts[5]; -c_731676.elts[6] = ((closureN)self_731025)->elts[6]; - -return_closcall1(data,(closure)&c_731676, quote__if);; -} - -static void __lambda_95(void *data, int argc, object self_731026, object r_73320) { - -closureN_type c_731681; -c_731681.hdr.mark = gc_color_red; - c_731681.hdr.grayed = 0; -c_731681.tag = closureN_tag; - c_731681.fn = (function_type)__lambda_94; -c_731681.num_args = 1; -c_731681.num_elt = 6; -c_731681.elts = (object *)alloca(sizeof(object) * 6); -c_731681.elts[0] = ((closureN)self_731026)->elts[0]; -c_731681.elts[1] = ((closureN)self_731026)->elts[1]; -c_731681.elts[2] = ((closureN)self_731026)->elts[2]; -c_731681.elts[3] = ((closureN)self_731026)->elts[3]; -c_731681.elts[4] = ((closureN)self_731026)->elts[5]; -c_731681.elts[5] = ((closureN)self_731026)->elts[6]; - -return_closcall2(data, cell_get(((closureN)self_731026)->elts[4]), &c_731681, r_73320);; -} - -static void __lambda_94(void *data, int argc, object self_731027, object r_73319) { - -closureN_type c_731683; -c_731683.hdr.mark = gc_color_red; - c_731683.hdr.grayed = 0; -c_731683.tag = closureN_tag; - c_731683.fn = (function_type)__lambda_93; -c_731683.num_args = 1; -c_731683.num_elt = 5; -c_731683.elts = (object *)alloca(sizeof(object) * 5); -c_731683.elts[0] = ((closureN)self_731027)->elts[0]; -c_731683.elts[1] = ((closureN)self_731027)->elts[2]; -c_731683.elts[2] = ((closureN)self_731027)->elts[3]; -c_731683.elts[3] = ((closureN)self_731027)->elts[4]; -c_731683.elts[4] = ((closureN)self_731027)->elts[5]; - -return_closcall1(data,(closure)&c_731683, Cyc_set_car(data, ((closureN)self_731027)->elts[1], r_73319));; -} - -static void __lambda_93(void *data, int argc, object self_731028, object r_73312) { - -closureN_type c_731685; -c_731685.hdr.mark = gc_color_red; - c_731685.hdr.grayed = 0; -c_731685.tag = closureN_tag; - c_731685.fn = (function_type)__lambda_92; -c_731685.num_args = 1; -c_731685.num_elt = 5; -c_731685.elts = (object *)alloca(sizeof(object) * 5); -c_731685.elts[0] = ((closureN)self_731028)->elts[0]; -c_731685.elts[1] = ((closureN)self_731028)->elts[1]; -c_731685.elts[2] = ((closureN)self_731028)->elts[2]; -c_731685.elts[3] = ((closureN)self_731028)->elts[3]; -c_731685.elts[4] = ((closureN)self_731028)->elts[4]; - - -make_cons(c_731714,quote_f,nil); -return_closcall1(data,(closure)&c_731685, &c_731714);; -} - -static void __lambda_92(void *data, int argc, object self_731029, object r_73318) { - -closureN_type c_731690; -c_731690.hdr.mark = gc_color_red; - c_731690.hdr.grayed = 0; -c_731690.tag = closureN_tag; - c_731690.fn = (function_type)__lambda_91; -c_731690.num_args = 1; -c_731690.num_elt = 5; -c_731690.elts = (object *)alloca(sizeof(object) * 5); -c_731690.elts[0] = ((closureN)self_731029)->elts[0]; -c_731690.elts[1] = ((closureN)self_731029)->elts[1]; -c_731690.elts[2] = ((closureN)self_731029)->elts[2]; -c_731690.elts[3] = ((closureN)self_731029)->elts[3]; -c_731690.elts[4] = ((closureN)self_731029)->elts[4]; - -return_closcall2(data, cell_get(((closureN)self_731029)->elts[3]), &c_731690, r_73318);; -} - -static void __lambda_91(void *data, int argc, object self_731030, object r_73317) { - -closureN_type c_731692; -c_731692.hdr.mark = gc_color_red; - c_731692.hdr.grayed = 0; -c_731692.tag = closureN_tag; - c_731692.fn = (function_type)__lambda_90; -c_731692.num_args = 1; -c_731692.num_elt = 4; -c_731692.elts = (object *)alloca(sizeof(object) * 4); -c_731692.elts[0] = ((closureN)self_731030)->elts[1]; -c_731692.elts[1] = ((closureN)self_731030)->elts[2]; -c_731692.elts[2] = ((closureN)self_731030)->elts[3]; -c_731692.elts[3] = ((closureN)self_731030)->elts[4]; - -return_closcall1(data,(closure)&c_731692, Cyc_set_car(data, ((closureN)self_731030)->elts[0], r_73317));; -} - -static void __lambda_90(void *data, int argc, object self_731031, object r_73313) { - -closureN_type c_731694; -c_731694.hdr.mark = gc_color_red; - c_731694.hdr.grayed = 0; -c_731694.tag = closureN_tag; - c_731694.fn = (function_type)__lambda_89; -c_731694.num_args = 1; -c_731694.num_elt = 4; -c_731694.elts = (object *)alloca(sizeof(object) * 4); -c_731694.elts[0] = ((closureN)self_731031)->elts[0]; -c_731694.elts[1] = ((closureN)self_731031)->elts[1]; -c_731694.elts[2] = ((closureN)self_731031)->elts[2]; -c_731694.elts[3] = ((closureN)self_731031)->elts[3]; - - -make_cons(c_731710,quote_t,nil); -return_closcall1(data,(closure)&c_731694, &c_731710);; -} - -static void __lambda_89(void *data, int argc, object self_731032, object r_73316) { - -closureN_type c_731699; -c_731699.hdr.mark = gc_color_red; - c_731699.hdr.grayed = 0; -c_731699.tag = closureN_tag; - c_731699.fn = (function_type)__lambda_88; -c_731699.num_args = 1; -c_731699.num_elt = 3; -c_731699.elts = (object *)alloca(sizeof(object) * 3); -c_731699.elts[0] = ((closureN)self_731032)->elts[0]; -c_731699.elts[1] = ((closureN)self_731032)->elts[1]; -c_731699.elts[2] = ((closureN)self_731032)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_731032)->elts[2]), &c_731699, r_73316);; -} - -static void __lambda_88(void *data, int argc, object self_731033, object r_73315) { - -closureN_type c_731701; -c_731701.hdr.mark = gc_color_red; - c_731701.hdr.grayed = 0; -c_731701.tag = closureN_tag; - c_731701.fn = (function_type)__lambda_87; -c_731701.num_args = 1; -c_731701.num_elt = 2; -c_731701.elts = (object *)alloca(sizeof(object) * 2); -c_731701.elts[0] = ((closureN)self_731033)->elts[0]; -c_731701.elts[1] = ((closureN)self_731033)->elts[1]; - -return_closcall1(data,(closure)&c_731701, Cyc_set_car(data, ((closureN)self_731033)->elts[2], r_73315));; -} - -static void __lambda_87(void *data, int argc, object self_731034, object r_73314) { - return_closcall1(data, cell_get(((closureN)self_731034)->elts[1]), ((closureN)self_731034)->elts[0]);; -} - -static void __lambda_86(void *data, int argc, object self_731035, object r_73309) { - -closureN_type c_731641; -c_731641.hdr.mark = gc_color_red; - c_731641.hdr.grayed = 0; -c_731641.tag = closureN_tag; - c_731641.fn = (function_type)__lambda_85; -c_731641.num_args = 1; -c_731641.num_elt = 2; -c_731641.elts = (object *)alloca(sizeof(object) * 2); -c_731641.elts[0] = ((closureN)self_731035)->elts[0]; -c_731641.elts[1] = ((closureN)self_731035)->elts[1]; - -return_closcall1(data,(closure)&c_731641, global_set(__glo_setup_91boyer, r_73309));; -} - -static void __lambda_85(void *data, int argc, object self_731036, object r_73304) { - closureN_type c_731647; -c_731647.hdr.mark = gc_color_red; - c_731647.hdr.grayed = 0; -c_731647.tag = closureN_tag; - c_731647.fn = (function_type)__lambda_84; -c_731647.num_args = 3; -c_731647.num_elt = 2; -c_731647.elts = (object *)alloca(sizeof(object) * 2); -c_731647.elts[0] = ((closureN)self_731036)->elts[0]; -c_731647.elts[1] = ((closureN)self_731036)->elts[1]; - -return_direct1(data,__lambda_81,&c_731647);; -} - -static void __lambda_84(void *data, int argc, object self_731037, object k_73306, object alist_73160, object term_73159, object n_73158) { - -closureN_type c_731649; -c_731649.hdr.mark = gc_color_red; - c_731649.hdr.grayed = 0; -c_731649.tag = closureN_tag; - c_731649.fn = (function_type)__lambda_83; -c_731649.num_args = 1; -c_731649.num_elt = 6; -c_731649.elts = (object *)alloca(sizeof(object) * 6); -c_731649.elts[0] = alist_73160; -c_731649.elts[1] = k_73306; -c_731649.elts[2] = n_73158; -c_731649.elts[3] = ((closureN)self_731037)->elts[0]; -c_731649.elts[4] = term_73159; -c_731649.elts[5] = ((closureN)self_731037)->elts[1]; - -return_closcall1(data,(closure)&c_731649, Cyc_set_car(data, ((closureN)self_731037)->elts[0], obj_int2obj(0)));; -} - -static void __lambda_83(void *data, int argc, object self_731038, object r_73307) { - -closureN_type c_731654; -c_731654.hdr.mark = gc_color_red; - c_731654.hdr.grayed = 0; -c_731654.tag = closureN_tag; - c_731654.fn = (function_type)__lambda_82; -c_731654.num_args = 1; -c_731654.num_elt = 2; -c_731654.elts = (object *)alloca(sizeof(object) * 2); -c_731654.elts[0] = ((closureN)self_731038)->elts[1]; -c_731654.elts[1] = ((closureN)self_731038)->elts[3]; - -return_closcall4(data, cell_get(((closureN)self_731038)->elts[5]), &c_731654, ((closureN)self_731038)->elts[0], ((closureN)self_731038)->elts[4], ((closureN)self_731038)->elts[2]);; -} - -static void __lambda_82(void *data, int argc, object self_731039, object answer_73161) { - if( !eq(boolean_f, answer_73161) ){ - return_closcall1(data, ((closureN)self_731039)->elts[0], cell_get(((closureN)self_731039)->elts[1])); -} else { - return_closcall1(data, ((closureN)self_731039)->elts[0], boolean_f);} -; -} - -static void __lambda_81(void *data, int argc, closure _,object r_73305) { - return_direct1(data,__lambda_80,global_set(__glo_test_91boyer, r_73305));; -} - -static void __lambda_80(void *data, int argc, closure _,object r_73264) { - return_closcall1(data, __glo_main, primitive__75halt);; -} - -static void __lambda_79(void *data, int argc, closure _,object k_73568, object name_73229, object count_73228, object thunk_73227, object ok_127_73226) { - Cyc_st_add(data, "nboyer.scm:run-r7rs-benchmark"); - -closureN_type c_731225; -c_731225.hdr.mark = gc_color_red; - c_731225.hdr.grayed = 0; -c_731225.tag = closureN_tag; - c_731225.fn = (function_type)__lambda_78; -c_731225.num_args = 1; -c_731225.num_elt = 5; -c_731225.elts = (object *)alloca(sizeof(object) * 5); -c_731225.elts[0] = count_73228; -c_731225.elts[1] = k_73568; -c_731225.elts[2] = name_73229; -c_731225.elts[3] = ok_127_73226; -c_731225.elts[4] = thunk_73227; - -return_closcall1(data,(closure)&c_731225, boolean_f);; -} - -static void __lambda_78(void *data, int argc, object self_731040, object rounded_73231) { - -closureN_type c_731227; -c_731227.hdr.mark = gc_color_red; - c_731227.hdr.grayed = 0; -c_731227.tag = closureN_tag; - c_731227.fn = (function_type)__lambda_77; -c_731227.num_args = 1; -c_731227.num_elt = 5; -c_731227.elts = (object *)alloca(sizeof(object) * 5); -c_731227.elts[0] = ((closureN)self_731040)->elts[0]; -c_731227.elts[1] = ((closureN)self_731040)->elts[1]; -c_731227.elts[2] = ((closureN)self_731040)->elts[2]; -c_731227.elts[3] = ((closureN)self_731040)->elts[3]; -c_731227.elts[4] = ((closureN)self_731040)->elts[4]; - - -make_cell(c_731396,rounded_73231); -return_closcall1(data,(closure)&c_731227, &c_731396);; -} - -static void __lambda_77(void *data, int argc, object self_731041, object rounded_73231) { - -closureN_type c_731229; -c_731229.hdr.mark = gc_color_red; - c_731229.hdr.grayed = 0; -c_731229.tag = closureN_tag; - c_731229.fn = (function_type)__lambda_76; -c_731229.num_args = 1; -c_731229.num_elt = 6; -c_731229.elts = (object *)alloca(sizeof(object) * 6); -c_731229.elts[0] = ((closureN)self_731041)->elts[0]; -c_731229.elts[1] = ((closureN)self_731041)->elts[1]; -c_731229.elts[2] = ((closureN)self_731041)->elts[2]; -c_731229.elts[3] = ((closureN)self_731041)->elts[3]; -c_731229.elts[4] = rounded_73231; -c_731229.elts[5] = ((closureN)self_731041)->elts[4]; - -return_closcall1(data,(closure)&c_731229, boolean_f);; -} - -static void __lambda_76(void *data, int argc, object self_731042, object rounded_73232) { - -closureN_type c_731231; -c_731231.hdr.mark = gc_color_red; - c_731231.hdr.grayed = 0; -c_731231.tag = closureN_tag; - c_731231.fn = (function_type)__lambda_72; -c_731231.num_args = 1; -c_731231.num_elt = 6; -c_731231.elts = (object *)alloca(sizeof(object) * 6); -c_731231.elts[0] = ((closureN)self_731042)->elts[0]; -c_731231.elts[1] = ((closureN)self_731042)->elts[1]; -c_731231.elts[2] = ((closureN)self_731042)->elts[2]; -c_731231.elts[3] = ((closureN)self_731042)->elts[3]; -c_731231.elts[4] = ((closureN)self_731042)->elts[4]; -c_731231.elts[5] = ((closureN)self_731042)->elts[5]; - - -mclosure0(c_731381, (function_type)__lambda_75);c_731381.num_args = 1; -return_closcall1(data,(closure)&c_731231, &c_731381);; -} - -static void __lambda_75(void *data, int argc, object self_731043, object k_73604, object x_73246) { - -closureN_type c_731383; -c_731383.hdr.mark = gc_color_red; - c_731383.hdr.grayed = 0; -c_731383.tag = closureN_tag; - c_731383.fn = (function_type)__lambda_74; -c_731383.num_args = 1; -c_731383.num_elt = 1; -c_731383.elts = (object *)alloca(sizeof(object) * 1); -c_731383.elts[0] = k_73604; - - -object c_731393 = Cyc_mul(data,(closure)&c_731383,2,obj_int2obj(1000), x_73246); -return_closcall1(data,(closure)&c_731383, c_731393);; -} - -static void __lambda_74(void *data, int argc, object self_731044, object r_73606) { - -closureN_type c_731385; -c_731385.hdr.mark = gc_color_red; - c_731385.hdr.grayed = 0; -c_731385.tag = closureN_tag; - c_731385.fn = (function_type)__lambda_73; -c_731385.num_args = 1; -c_731385.num_elt = 1; -c_731385.elts = (object *)alloca(sizeof(object) * 1); -c_731385.elts[0] = ((closureN)self_731044)->elts[0]; - -return_closcall2(data, __glo_round_scheme_base, &c_731385, r_73606);; -} - -static void __lambda_73(void *data, int argc, object self_731045, object r_73605) { - -object c_731390 = Cyc_div(data, ((closureN)self_731045)->elts[0],2,r_73605, obj_int2obj(1000)); -return_closcall1(data, ((closureN)self_731045)->elts[0], c_731390);; -} - -static void __lambda_72(void *data, int argc, object self_731046, object r_73603) { - -closureN_type c_731233; -c_731233.hdr.mark = gc_color_red; - c_731233.hdr.grayed = 0; -c_731233.tag = closureN_tag; - c_731233.fn = (function_type)__lambda_71; -c_731233.num_args = 1; -c_731233.num_elt = 6; -c_731233.elts = (object *)alloca(sizeof(object) * 6); -c_731233.elts[0] = ((closureN)self_731046)->elts[0]; -c_731233.elts[1] = ((closureN)self_731046)->elts[1]; -c_731233.elts[2] = ((closureN)self_731046)->elts[2]; -c_731233.elts[3] = ((closureN)self_731046)->elts[3]; -c_731233.elts[4] = ((closureN)self_731046)->elts[4]; -c_731233.elts[5] = ((closureN)self_731046)->elts[5]; - -return_closcall1(data,(closure)&c_731233, Cyc_set_car(data, ((closureN)self_731046)->elts[4], r_73603));; -} - -static void __lambda_71(void *data, int argc, object self_731047, object r_73569) { - -closureN_type c_731235; -c_731235.hdr.mark = gc_color_red; - c_731235.hdr.grayed = 0; -c_731235.tag = closureN_tag; - c_731235.fn = (function_type)__lambda_70; -c_731235.num_args = 1; -c_731235.num_elt = 6; -c_731235.elts = (object *)alloca(sizeof(object) * 6); -c_731235.elts[0] = ((closureN)self_731047)->elts[0]; -c_731235.elts[1] = ((closureN)self_731047)->elts[1]; -c_731235.elts[2] = ((closureN)self_731047)->elts[2]; -c_731235.elts[3] = ((closureN)self_731047)->elts[3]; -c_731235.elts[4] = ((closureN)self_731047)->elts[4]; -c_731235.elts[5] = ((closureN)self_731047)->elts[5]; - - -make_string(c_731377, "Running "); -return_closcall2(data, __glo_display_scheme_write, &c_731235, &c_731377);; -} - -static void __lambda_70(void *data, int argc, object self_731048, object r_73570) { - -closureN_type c_731237; -c_731237.hdr.mark = gc_color_red; - c_731237.hdr.grayed = 0; -c_731237.tag = closureN_tag; - c_731237.fn = (function_type)__lambda_69; -c_731237.num_args = 1; -c_731237.num_elt = 6; -c_731237.elts = (object *)alloca(sizeof(object) * 6); -c_731237.elts[0] = ((closureN)self_731048)->elts[0]; -c_731237.elts[1] = ((closureN)self_731048)->elts[1]; -c_731237.elts[2] = ((closureN)self_731048)->elts[2]; -c_731237.elts[3] = ((closureN)self_731048)->elts[3]; -c_731237.elts[4] = ((closureN)self_731048)->elts[4]; -c_731237.elts[5] = ((closureN)self_731048)->elts[5]; - -return_closcall2(data, __glo_display_scheme_write, &c_731237, ((closureN)self_731048)->elts[2]);; -} - -static void __lambda_69(void *data, int argc, object self_731049, object r_73571) { - -closureN_type c_731239; -c_731239.hdr.mark = gc_color_red; - c_731239.hdr.grayed = 0; -c_731239.tag = closureN_tag; - c_731239.fn = (function_type)__lambda_68; -c_731239.num_args = 1; -c_731239.num_elt = 6; -c_731239.elts = (object *)alloca(sizeof(object) * 6); -c_731239.elts[0] = ((closureN)self_731049)->elts[0]; -c_731239.elts[1] = ((closureN)self_731049)->elts[1]; -c_731239.elts[2] = ((closureN)self_731049)->elts[2]; -c_731239.elts[3] = ((closureN)self_731049)->elts[3]; -c_731239.elts[4] = ((closureN)self_731049)->elts[4]; -c_731239.elts[5] = ((closureN)self_731049)->elts[5]; - -return_closcall1(data, __glo_newline_scheme_base, &c_731239);; -} - -static void __lambda_68(void *data, int argc, object self_731050, object r_73572) { - -closureN_type c_731241; -c_731241.hdr.mark = gc_color_red; - c_731241.hdr.grayed = 0; -c_731241.tag = closureN_tag; - c_731241.fn = (function_type)__lambda_67; -c_731241.num_args = 1; -c_731241.num_elt = 6; -c_731241.elts = (object *)alloca(sizeof(object) * 6); -c_731241.elts[0] = ((closureN)self_731050)->elts[0]; -c_731241.elts[1] = ((closureN)self_731050)->elts[1]; -c_731241.elts[2] = ((closureN)self_731050)->elts[2]; -c_731241.elts[3] = ((closureN)self_731050)->elts[3]; -c_731241.elts[4] = ((closureN)self_731050)->elts[4]; -c_731241.elts[5] = ((closureN)self_731050)->elts[5]; - -return_closcall1(data, __glo_flush_91output_91port_scheme_base, &c_731241);; -} - -static void __lambda_67(void *data, int argc, object self_731051, object r_73573) { - -closureN_type c_731243; -c_731243.hdr.mark = gc_color_red; - c_731243.hdr.grayed = 0; -c_731243.tag = closureN_tag; - c_731243.fn = (function_type)__lambda_66; -c_731243.num_args = 1; -c_731243.num_elt = 6; -c_731243.elts = (object *)alloca(sizeof(object) * 6); -c_731243.elts[0] = ((closureN)self_731051)->elts[0]; -c_731243.elts[1] = ((closureN)self_731051)->elts[1]; -c_731243.elts[2] = ((closureN)self_731051)->elts[2]; -c_731243.elts[3] = ((closureN)self_731051)->elts[3]; -c_731243.elts[4] = ((closureN)self_731051)->elts[4]; -c_731243.elts[5] = ((closureN)self_731051)->elts[5]; - -return_closcall1(data, __glo_jiffies_91per_91second_scheme_time, &c_731243);; -} - -static void __lambda_66(void *data, int argc, object self_731052, object j_95s_73233) { - -closureN_type c_731245; -c_731245.hdr.mark = gc_color_red; - c_731245.hdr.grayed = 0; -c_731245.tag = closureN_tag; - c_731245.fn = (function_type)__lambda_65; -c_731245.num_args = 1; -c_731245.num_elt = 7; -c_731245.elts = (object *)alloca(sizeof(object) * 7); -c_731245.elts[0] = ((closureN)self_731052)->elts[0]; -c_731245.elts[1] = j_95s_73233; -c_731245.elts[2] = ((closureN)self_731052)->elts[1]; -c_731245.elts[3] = ((closureN)self_731052)->elts[2]; -c_731245.elts[4] = ((closureN)self_731052)->elts[3]; -c_731245.elts[5] = ((closureN)self_731052)->elts[4]; -c_731245.elts[6] = ((closureN)self_731052)->elts[5]; - -return_closcall1(data, __glo_current_91second_scheme_time, &c_731245);; -} - -static void __lambda_65(void *data, int argc, object self_731053, object t0_73234) { - -closureN_type c_731247; -c_731247.hdr.mark = gc_color_red; - c_731247.hdr.grayed = 0; -c_731247.tag = closureN_tag; - c_731247.fn = (function_type)__lambda_64; -c_731247.num_args = 1; -c_731247.num_elt = 8; -c_731247.elts = (object *)alloca(sizeof(object) * 8); -c_731247.elts[0] = ((closureN)self_731053)->elts[0]; -c_731247.elts[1] = ((closureN)self_731053)->elts[1]; -c_731247.elts[2] = ((closureN)self_731053)->elts[2]; -c_731247.elts[3] = ((closureN)self_731053)->elts[3]; -c_731247.elts[4] = ((closureN)self_731053)->elts[4]; -c_731247.elts[5] = ((closureN)self_731053)->elts[5]; -c_731247.elts[6] = t0_73234; -c_731247.elts[7] = ((closureN)self_731053)->elts[6]; - -return_closcall1(data, __glo_current_91jiffy_scheme_time, &c_731247);; -} - -static void __lambda_64(void *data, int argc, object self_731054, object j0_73235) { - -closureN_type c_731249; -c_731249.hdr.mark = gc_color_red; - c_731249.hdr.grayed = 0; -c_731249.tag = closureN_tag; - c_731249.fn = (function_type)__lambda_63; -c_731249.num_args = 0; -c_731249.num_elt = 9; -c_731249.elts = (object *)alloca(sizeof(object) * 9); -c_731249.elts[0] = ((closureN)self_731054)->elts[0]; -c_731249.elts[1] = ((closureN)self_731054)->elts[1]; -c_731249.elts[2] = j0_73235; -c_731249.elts[3] = ((closureN)self_731054)->elts[2]; -c_731249.elts[4] = ((closureN)self_731054)->elts[3]; -c_731249.elts[5] = ((closureN)self_731054)->elts[4]; -c_731249.elts[6] = ((closureN)self_731054)->elts[5]; -c_731249.elts[7] = ((closureN)self_731054)->elts[6]; -c_731249.elts[8] = ((closureN)self_731054)->elts[7]; - -return_closcall0(data,(closure)&c_731249);; -} - -static void __lambda_63(void *data, int argc, object self_731055) { - closureN_type c_731253; -c_731253.hdr.mark = gc_color_red; - c_731253.hdr.grayed = 0; -c_731253.tag = closureN_tag; - c_731253.fn = (function_type)__lambda_62; -c_731253.num_args = 1; -c_731253.num_elt = 9; -c_731253.elts = (object *)alloca(sizeof(object) * 9); -c_731253.elts[0] = ((closureN)self_731055)->elts[0]; -c_731253.elts[1] = ((closureN)self_731055)->elts[1]; -c_731253.elts[2] = ((closureN)self_731055)->elts[2]; -c_731253.elts[3] = ((closureN)self_731055)->elts[3]; -c_731253.elts[4] = ((closureN)self_731055)->elts[4]; -c_731253.elts[5] = ((closureN)self_731055)->elts[5]; -c_731253.elts[6] = ((closureN)self_731055)->elts[6]; -c_731253.elts[7] = ((closureN)self_731055)->elts[7]; -c_731253.elts[8] = ((closureN)self_731055)->elts[8]; - -return_direct1(data,__lambda_30,&c_731253);; -} - -static void __lambda_62(void *data, int argc, object self_731056, object r_73577) { - -closureN_type c_731255; -c_731255.hdr.mark = gc_color_red; - c_731255.hdr.grayed = 0; -c_731255.tag = closureN_tag; - c_731255.fn = (function_type)__lambda_61; -c_731255.num_args = 2; -c_731255.num_elt = 9; -c_731255.elts = (object *)alloca(sizeof(object) * 9); -c_731255.elts[0] = ((closureN)self_731056)->elts[0]; -c_731255.elts[1] = ((closureN)self_731056)->elts[1]; -c_731255.elts[2] = ((closureN)self_731056)->elts[2]; -c_731255.elts[3] = ((closureN)self_731056)->elts[3]; -c_731255.elts[4] = ((closureN)self_731056)->elts[4]; -c_731255.elts[5] = ((closureN)self_731056)->elts[5]; -c_731255.elts[6] = ((closureN)self_731056)->elts[6]; -c_731255.elts[7] = ((closureN)self_731056)->elts[7]; -c_731255.elts[8] = ((closureN)self_731056)->elts[8]; - -return_closcall2(data,(closure)&c_731255, obj_int2obj(0), r_73577);; -} - -static void __lambda_61(void *data, int argc, object self_731057, object i_73237, object result_73236) { - -closureN_type c_731257; -c_731257.hdr.mark = gc_color_red; - c_731257.hdr.grayed = 0; -c_731257.tag = closureN_tag; - c_731257.fn = (function_type)__lambda_60; -c_731257.num_args = 1; -c_731257.num_elt = 11; -c_731257.elts = (object *)alloca(sizeof(object) * 11); -c_731257.elts[0] = ((closureN)self_731057)->elts[0]; -c_731257.elts[1] = i_73237; -c_731257.elts[2] = ((closureN)self_731057)->elts[1]; -c_731257.elts[3] = ((closureN)self_731057)->elts[2]; -c_731257.elts[4] = ((closureN)self_731057)->elts[3]; -c_731257.elts[5] = ((closureN)self_731057)->elts[4]; -c_731257.elts[6] = ((closureN)self_731057)->elts[5]; -c_731257.elts[7] = result_73236; -c_731257.elts[8] = ((closureN)self_731057)->elts[6]; -c_731257.elts[9] = ((closureN)self_731057)->elts[7]; -c_731257.elts[10] = ((closureN)self_731057)->elts[8]; - -return_closcall1(data,(closure)&c_731257, boolean_f);; -} - -static void __lambda_60(void *data, int argc, object self_731058, object loop_73238) { - -closureN_type c_731259; -c_731259.hdr.mark = gc_color_red; - c_731259.hdr.grayed = 0; -c_731259.tag = closureN_tag; - c_731259.fn = (function_type)__lambda_59; -c_731259.num_args = 1; -c_731259.num_elt = 11; -c_731259.elts = (object *)alloca(sizeof(object) * 11); -c_731259.elts[0] = ((closureN)self_731058)->elts[0]; -c_731259.elts[1] = ((closureN)self_731058)->elts[1]; -c_731259.elts[2] = ((closureN)self_731058)->elts[2]; -c_731259.elts[3] = ((closureN)self_731058)->elts[3]; -c_731259.elts[4] = ((closureN)self_731058)->elts[4]; -c_731259.elts[5] = ((closureN)self_731058)->elts[5]; -c_731259.elts[6] = ((closureN)self_731058)->elts[6]; -c_731259.elts[7] = ((closureN)self_731058)->elts[7]; -c_731259.elts[8] = ((closureN)self_731058)->elts[8]; -c_731259.elts[9] = ((closureN)self_731058)->elts[9]; -c_731259.elts[10] = ((closureN)self_731058)->elts[10]; - - -make_cell(c_731375,loop_73238); -return_closcall1(data,(closure)&c_731259, &c_731375);; -} - -static void __lambda_59(void *data, int argc, object self_731059, object loop_73238) { - -closureN_type c_731261; -c_731261.hdr.mark = gc_color_red; - c_731261.hdr.grayed = 0; -c_731261.tag = closureN_tag; - c_731261.fn = (function_type)__lambda_32; -c_731261.num_args = 1; -c_731261.num_elt = 4; -c_731261.elts = (object *)alloca(sizeof(object) * 4); -c_731261.elts[0] = ((closureN)self_731059)->elts[1]; -c_731261.elts[1] = ((closureN)self_731059)->elts[4]; -c_731261.elts[2] = loop_73238; -c_731261.elts[3] = ((closureN)self_731059)->elts[7]; - - -closureN_type c_731274; -c_731274.hdr.mark = gc_color_red; - c_731274.hdr.grayed = 0; -c_731274.tag = closureN_tag; - c_731274.fn = (function_type)__lambda_58; -c_731274.num_args = 2; -c_731274.num_elt = 9; -c_731274.elts = (object *)alloca(sizeof(object) * 9); -c_731274.elts[0] = ((closureN)self_731059)->elts[0]; -c_731274.elts[1] = ((closureN)self_731059)->elts[2]; -c_731274.elts[2] = ((closureN)self_731059)->elts[3]; -c_731274.elts[3] = loop_73238; -c_731274.elts[4] = ((closureN)self_731059)->elts[5]; -c_731274.elts[5] = ((closureN)self_731059)->elts[6]; -c_731274.elts[6] = ((closureN)self_731059)->elts[8]; -c_731274.elts[7] = ((closureN)self_731059)->elts[9]; -c_731274.elts[8] = ((closureN)self_731059)->elts[10]; - -return_closcall1(data,(closure)&c_731261, &c_731274);; -} - -static void __lambda_58(void *data, int argc, object self_731060, object k_73580, object i_73240, object result_73239) { - -closureN_type c_731276; -c_731276.hdr.mark = gc_color_red; - c_731276.hdr.grayed = 0; -c_731276.tag = closureN_tag; - c_731276.fn = (function_type)__lambda_57; -c_731276.num_args = 1; -c_731276.num_elt = 11; -c_731276.elts = (object *)alloca(sizeof(object) * 11); -c_731276.elts[0] = i_73240; -c_731276.elts[1] = ((closureN)self_731060)->elts[1]; -c_731276.elts[2] = ((closureN)self_731060)->elts[2]; -c_731276.elts[3] = k_73580; -c_731276.elts[4] = ((closureN)self_731060)->elts[3]; -c_731276.elts[5] = ((closureN)self_731060)->elts[4]; -c_731276.elts[6] = ((closureN)self_731060)->elts[5]; -c_731276.elts[7] = result_73239; -c_731276.elts[8] = ((closureN)self_731060)->elts[6]; -c_731276.elts[9] = ((closureN)self_731060)->elts[7]; -c_731276.elts[10] = ((closureN)self_731060)->elts[8]; - - -object c_731371 = Cyc_num_lt(data,(closure)&c_731276,2,i_73240, ((closureN)self_731060)->elts[0]); -return_closcall1(data,(closure)&c_731276, c_731371);; -} - -static void __lambda_57(void *data, int argc, object self_731061, object r_73581) { - if( !eq(boolean_f, r_73581) ){ - -closureN_type c_731278; -c_731278.hdr.mark = gc_color_red; - c_731278.hdr.grayed = 0; -c_731278.tag = closureN_tag; - c_731278.fn = (function_type)__lambda_35; -c_731278.num_args = 0; -c_731278.num_elt = 4; -c_731278.elts = (object *)alloca(sizeof(object) * 4); -c_731278.elts[0] = ((closureN)self_731061)->elts[0]; -c_731278.elts[1] = ((closureN)self_731061)->elts[3]; -c_731278.elts[2] = ((closureN)self_731061)->elts[4]; -c_731278.elts[3] = ((closureN)self_731061)->elts[10]; - -return_closcall0(data,(closure)&c_731278); -} else { - -closureN_type c_731296; -c_731296.hdr.mark = gc_color_red; - c_731296.hdr.grayed = 0; -c_731296.tag = closureN_tag; - c_731296.fn = (function_type)__lambda_56; -c_731296.num_args = 1; -c_731296.num_elt = 7; -c_731296.elts = (object *)alloca(sizeof(object) * 7); -c_731296.elts[0] = ((closureN)self_731061)->elts[1]; -c_731296.elts[1] = ((closureN)self_731061)->elts[2]; -c_731296.elts[2] = ((closureN)self_731061)->elts[3]; -c_731296.elts[3] = ((closureN)self_731061)->elts[5]; -c_731296.elts[4] = ((closureN)self_731061)->elts[7]; -c_731296.elts[5] = ((closureN)self_731061)->elts[8]; -c_731296.elts[6] = ((closureN)self_731061)->elts[9]; - -return_closcall2(data, ((closureN)self_731061)->elts[6], &c_731296, ((closureN)self_731061)->elts[7]);} -; -} - -static void __lambda_56(void *data, int argc, object self_731062, object r_73584) { - if( !eq(boolean_f, r_73584) ){ - -closureN_type c_731298; -c_731298.hdr.mark = gc_color_red; - c_731298.hdr.grayed = 0; -c_731298.tag = closureN_tag; - c_731298.fn = (function_type)__lambda_51; -c_731298.num_args = 0; -c_731298.num_elt = 7; -c_731298.elts = (object *)alloca(sizeof(object) * 7); -c_731298.elts[0] = ((closureN)self_731062)->elts[0]; -c_731298.elts[1] = ((closureN)self_731062)->elts[1]; -c_731298.elts[2] = ((closureN)self_731062)->elts[2]; -c_731298.elts[3] = ((closureN)self_731062)->elts[3]; -c_731298.elts[4] = ((closureN)self_731062)->elts[4]; -c_731298.elts[5] = ((closureN)self_731062)->elts[5]; -c_731298.elts[6] = ((closureN)self_731062)->elts[6]; - -return_closcall0(data,(closure)&c_731298); -} else { - -closureN_type c_731356; -c_731356.hdr.mark = gc_color_red; - c_731356.hdr.grayed = 0; -c_731356.tag = closureN_tag; - c_731356.fn = (function_type)__lambda_55; -c_731356.num_args = 0; -c_731356.num_elt = 2; -c_731356.elts = (object *)alloca(sizeof(object) * 2); -c_731356.elts[0] = ((closureN)self_731062)->elts[2]; -c_731356.elts[1] = ((closureN)self_731062)->elts[4]; - -return_closcall0(data,(closure)&c_731356);} -; -} - -static void __lambda_55(void *data, int argc, object self_731063) { - -closureN_type c_731358; -c_731358.hdr.mark = gc_color_red; - c_731358.hdr.grayed = 0; -c_731358.tag = closureN_tag; - c_731358.fn = (function_type)__lambda_54; -c_731358.num_args = 1; -c_731358.num_elt = 2; -c_731358.elts = (object *)alloca(sizeof(object) * 2); -c_731358.elts[0] = ((closureN)self_731063)->elts[0]; -c_731358.elts[1] = ((closureN)self_731063)->elts[1]; - - -make_string(c_731367, "ERROR: returned incorrect result: "); -return_closcall2(data, __glo_display_scheme_write, &c_731358, &c_731367);; -} - -static void __lambda_54(void *data, int argc, object self_731064, object r_73599) { - -closureN_type c_731360; -c_731360.hdr.mark = gc_color_red; - c_731360.hdr.grayed = 0; -c_731360.tag = closureN_tag; - c_731360.fn = (function_type)__lambda_53; -c_731360.num_args = 1; -c_731360.num_elt = 2; -c_731360.elts = (object *)alloca(sizeof(object) * 2); -c_731360.elts[0] = ((closureN)self_731064)->elts[0]; -c_731360.elts[1] = ((closureN)self_731064)->elts[1]; - -return_closcall2(data, __glo_write_scheme_write, &c_731360, ((closureN)self_731064)->elts[1]);; -} - -static void __lambda_53(void *data, int argc, object self_731065, object r_73600) { - -closureN_type c_731362; -c_731362.hdr.mark = gc_color_red; - c_731362.hdr.grayed = 0; -c_731362.tag = closureN_tag; - c_731362.fn = (function_type)__lambda_52; -c_731362.num_args = 1; -c_731362.num_elt = 2; -c_731362.elts = (object *)alloca(sizeof(object) * 2); -c_731362.elts[0] = ((closureN)self_731065)->elts[0]; -c_731362.elts[1] = ((closureN)self_731065)->elts[1]; - -return_closcall1(data, __glo_newline_scheme_base, &c_731362);; -} - -static void __lambda_52(void *data, int argc, object self_731066, object r_73601) { - return_closcall1(data, ((closureN)self_731066)->elts[0], ((closureN)self_731066)->elts[1]);; -} - -static void __lambda_51(void *data, int argc, object self_731067) { - -closureN_type c_731300; -c_731300.hdr.mark = gc_color_red; - c_731300.hdr.grayed = 0; -c_731300.tag = closureN_tag; - c_731300.fn = (function_type)__lambda_50; -c_731300.num_args = 1; -c_731300.num_elt = 7; -c_731300.elts = (object *)alloca(sizeof(object) * 7); -c_731300.elts[0] = ((closureN)self_731067)->elts[0]; -c_731300.elts[1] = ((closureN)self_731067)->elts[1]; -c_731300.elts[2] = ((closureN)self_731067)->elts[2]; -c_731300.elts[3] = ((closureN)self_731067)->elts[3]; -c_731300.elts[4] = ((closureN)self_731067)->elts[4]; -c_731300.elts[5] = ((closureN)self_731067)->elts[5]; -c_731300.elts[6] = ((closureN)self_731067)->elts[6]; - -return_closcall1(data, __glo_current_91jiffy_scheme_time, &c_731300);; -} - -static void __lambda_50(void *data, int argc, object self_731068, object j1_73241) { - -closureN_type c_731302; -c_731302.hdr.mark = gc_color_red; - c_731302.hdr.grayed = 0; -c_731302.tag = closureN_tag; - c_731302.fn = (function_type)__lambda_49; -c_731302.num_args = 1; -c_731302.num_elt = 8; -c_731302.elts = (object *)alloca(sizeof(object) * 8); -c_731302.elts[0] = ((closureN)self_731068)->elts[0]; -c_731302.elts[1] = ((closureN)self_731068)->elts[1]; -c_731302.elts[2] = j1_73241; -c_731302.elts[3] = ((closureN)self_731068)->elts[2]; -c_731302.elts[4] = ((closureN)self_731068)->elts[3]; -c_731302.elts[5] = ((closureN)self_731068)->elts[4]; -c_731302.elts[6] = ((closureN)self_731068)->elts[5]; -c_731302.elts[7] = ((closureN)self_731068)->elts[6]; - -return_closcall1(data, __glo_current_91second_scheme_time, &c_731302);; -} - -static void __lambda_49(void *data, int argc, object self_731069, object t1_73242) { - -closureN_type c_731304; -c_731304.hdr.mark = gc_color_red; - c_731304.hdr.grayed = 0; -c_731304.tag = closureN_tag; - c_731304.fn = (function_type)__lambda_48; -c_731304.num_args = 1; -c_731304.num_elt = 7; -c_731304.elts = (object *)alloca(sizeof(object) * 7); -c_731304.elts[0] = ((closureN)self_731069)->elts[0]; -c_731304.elts[1] = ((closureN)self_731069)->elts[3]; -c_731304.elts[2] = ((closureN)self_731069)->elts[4]; -c_731304.elts[3] = ((closureN)self_731069)->elts[5]; -c_731304.elts[4] = ((closureN)self_731069)->elts[6]; -c_731304.elts[5] = ((closureN)self_731069)->elts[7]; -c_731304.elts[6] = t1_73242; - - -object c_731352 = Cyc_sub(data,(closure)&c_731304,2,((closureN)self_731069)->elts[2], ((closureN)self_731069)->elts[1]); -return_closcall1(data,(closure)&c_731304, c_731352);; -} - -static void __lambda_48(void *data, int argc, object self_731070, object jifs_73243) { - -closureN_type c_731306; -c_731306.hdr.mark = gc_color_red; - c_731306.hdr.grayed = 0; -c_731306.tag = closureN_tag; - c_731306.fn = (function_type)__lambda_47; -c_731306.num_args = 1; -c_731306.num_elt = 6; -c_731306.elts = (object *)alloca(sizeof(object) * 6); -c_731306.elts[0] = ((closureN)self_731070)->elts[1]; -c_731306.elts[1] = ((closureN)self_731070)->elts[2]; -c_731306.elts[2] = ((closureN)self_731070)->elts[3]; -c_731306.elts[3] = ((closureN)self_731070)->elts[4]; -c_731306.elts[4] = ((closureN)self_731070)->elts[5]; -c_731306.elts[5] = ((closureN)self_731070)->elts[6]; - - -object c_731348 = Cyc_div(data,(closure)&c_731306,2,jifs_73243, ((closureN)self_731070)->elts[0]); -return_closcall1(data,(closure)&c_731306, c_731348);; -} - -static void __lambda_47(void *data, int argc, object self_731071, object r_73598) { - -closureN_type c_731308; -c_731308.hdr.mark = gc_color_red; - c_731308.hdr.grayed = 0; -c_731308.tag = closureN_tag; - c_731308.fn = (function_type)__lambda_46; -c_731308.num_args = 1; -c_731308.num_elt = 6; -c_731308.elts = (object *)alloca(sizeof(object) * 6); -c_731308.elts[0] = ((closureN)self_731071)->elts[0]; -c_731308.elts[1] = ((closureN)self_731071)->elts[1]; -c_731308.elts[2] = ((closureN)self_731071)->elts[2]; -c_731308.elts[3] = ((closureN)self_731071)->elts[3]; -c_731308.elts[4] = ((closureN)self_731071)->elts[4]; -c_731308.elts[5] = ((closureN)self_731071)->elts[5]; - -return_closcall2(data, __glo_inexact_scheme_base, &c_731308, r_73598);; -} - -static void __lambda_46(void *data, int argc, object self_731072, object secs_73244) { - -closureN_type c_731310; -c_731310.hdr.mark = gc_color_red; - c_731310.hdr.grayed = 0; -c_731310.tag = closureN_tag; - c_731310.fn = (function_type)__lambda_45; -c_731310.num_args = 1; -c_731310.num_elt = 5; -c_731310.elts = (object *)alloca(sizeof(object) * 5); -c_731310.elts[0] = ((closureN)self_731072)->elts[0]; -c_731310.elts[1] = ((closureN)self_731072)->elts[1]; -c_731310.elts[2] = ((closureN)self_731072)->elts[2]; -c_731310.elts[3] = ((closureN)self_731072)->elts[3]; -c_731310.elts[4] = secs_73244; - - -object c_731343 = Cyc_sub(data,(closure)&c_731310,2,((closureN)self_731072)->elts[5], ((closureN)self_731072)->elts[4]); -return_closcall1(data,(closure)&c_731310, c_731343);; -} - -static void __lambda_45(void *data, int argc, object self_731073, object r_73597) { - -closureN_type c_731315; -c_731315.hdr.mark = gc_color_red; - c_731315.hdr.grayed = 0; -c_731315.tag = closureN_tag; - c_731315.fn = (function_type)__lambda_44; -c_731315.num_args = 1; -c_731315.num_elt = 4; -c_731315.elts = (object *)alloca(sizeof(object) * 4); -c_731315.elts[0] = ((closureN)self_731073)->elts[0]; -c_731315.elts[1] = ((closureN)self_731073)->elts[1]; -c_731315.elts[2] = ((closureN)self_731073)->elts[2]; -c_731315.elts[3] = ((closureN)self_731073)->elts[4]; - -return_closcall2(data, cell_get(((closureN)self_731073)->elts[3]), &c_731315, r_73597);; -} - -static void __lambda_44(void *data, int argc, object self_731074, object secs2_73245) { - -closureN_type c_731317; -c_731317.hdr.mark = gc_color_red; - c_731317.hdr.grayed = 0; -c_731317.tag = closureN_tag; - c_731317.fn = (function_type)__lambda_43; -c_731317.num_args = 0; -c_731317.num_elt = 5; -c_731317.elts = (object *)alloca(sizeof(object) * 5); -c_731317.elts[0] = ((closureN)self_731074)->elts[0]; -c_731317.elts[1] = ((closureN)self_731074)->elts[1]; -c_731317.elts[2] = ((closureN)self_731074)->elts[2]; -c_731317.elts[3] = ((closureN)self_731074)->elts[3]; -c_731317.elts[4] = secs2_73245; - -return_closcall0(data,(closure)&c_731317);; -} - -static void __lambda_43(void *data, int argc, object self_731075) { - -closureN_type c_731319; -c_731319.hdr.mark = gc_color_red; - c_731319.hdr.grayed = 0; -c_731319.tag = closureN_tag; - c_731319.fn = (function_type)__lambda_42; -c_731319.num_args = 1; -c_731319.num_elt = 5; -c_731319.elts = (object *)alloca(sizeof(object) * 5); -c_731319.elts[0] = ((closureN)self_731075)->elts[0]; -c_731319.elts[1] = ((closureN)self_731075)->elts[1]; -c_731319.elts[2] = ((closureN)self_731075)->elts[2]; -c_731319.elts[3] = ((closureN)self_731075)->elts[3]; -c_731319.elts[4] = ((closureN)self_731075)->elts[4]; - - -make_string(c_731340, "Elapsed time: "); -return_closcall2(data, __glo_display_scheme_write, &c_731319, &c_731340);; -} - -static void __lambda_42(void *data, int argc, object self_731076, object r_73591) { - -closureN_type c_731321; -c_731321.hdr.mark = gc_color_red; - c_731321.hdr.grayed = 0; -c_731321.tag = closureN_tag; - c_731321.fn = (function_type)__lambda_41; -c_731321.num_args = 1; -c_731321.num_elt = 4; -c_731321.elts = (object *)alloca(sizeof(object) * 4); -c_731321.elts[0] = ((closureN)self_731076)->elts[0]; -c_731321.elts[1] = ((closureN)self_731076)->elts[1]; -c_731321.elts[2] = ((closureN)self_731076)->elts[2]; -c_731321.elts[3] = ((closureN)self_731076)->elts[4]; - -return_closcall2(data, __glo_write_scheme_write, &c_731321, ((closureN)self_731076)->elts[3]);; -} - -static void __lambda_41(void *data, int argc, object self_731077, object r_73592) { - -closureN_type c_731323; -c_731323.hdr.mark = gc_color_red; - c_731323.hdr.grayed = 0; -c_731323.tag = closureN_tag; - c_731323.fn = (function_type)__lambda_40; -c_731323.num_args = 1; -c_731323.num_elt = 4; -c_731323.elts = (object *)alloca(sizeof(object) * 4); -c_731323.elts[0] = ((closureN)self_731077)->elts[0]; -c_731323.elts[1] = ((closureN)self_731077)->elts[1]; -c_731323.elts[2] = ((closureN)self_731077)->elts[2]; -c_731323.elts[3] = ((closureN)self_731077)->elts[3]; - - -make_string(c_731338, " seconds ("); -return_closcall2(data, __glo_display_scheme_write, &c_731323, &c_731338);; -} - -static void __lambda_40(void *data, int argc, object self_731078, object r_73593) { - -closureN_type c_731325; -c_731325.hdr.mark = gc_color_red; - c_731325.hdr.grayed = 0; -c_731325.tag = closureN_tag; - c_731325.fn = (function_type)__lambda_39; -c_731325.num_args = 1; -c_731325.num_elt = 3; -c_731325.elts = (object *)alloca(sizeof(object) * 3); -c_731325.elts[0] = ((closureN)self_731078)->elts[0]; -c_731325.elts[1] = ((closureN)self_731078)->elts[1]; -c_731325.elts[2] = ((closureN)self_731078)->elts[2]; - -return_closcall2(data, __glo_write_scheme_write, &c_731325, ((closureN)self_731078)->elts[3]);; -} - -static void __lambda_39(void *data, int argc, object self_731079, object r_73594) { - -closureN_type c_731327; -c_731327.hdr.mark = gc_color_red; - c_731327.hdr.grayed = 0; -c_731327.tag = closureN_tag; - c_731327.fn = (function_type)__lambda_38; -c_731327.num_args = 1; -c_731327.num_elt = 3; -c_731327.elts = (object *)alloca(sizeof(object) * 3); -c_731327.elts[0] = ((closureN)self_731079)->elts[0]; -c_731327.elts[1] = ((closureN)self_731079)->elts[1]; -c_731327.elts[2] = ((closureN)self_731079)->elts[2]; - - -make_string(c_731336, ") for "); -return_closcall2(data, __glo_display_scheme_write, &c_731327, &c_731336);; -} - -static void __lambda_38(void *data, int argc, object self_731080, object r_73595) { - -closureN_type c_731329; -c_731329.hdr.mark = gc_color_red; - c_731329.hdr.grayed = 0; -c_731329.tag = closureN_tag; - c_731329.fn = (function_type)__lambda_37; -c_731329.num_args = 1; -c_731329.num_elt = 2; -c_731329.elts = (object *)alloca(sizeof(object) * 2); -c_731329.elts[0] = ((closureN)self_731080)->elts[0]; -c_731329.elts[1] = ((closureN)self_731080)->elts[2]; - -return_closcall2(data, __glo_display_scheme_write, &c_731329, ((closureN)self_731080)->elts[1]);; -} - -static void __lambda_37(void *data, int argc, object self_731081, object r_73596) { - -closureN_type c_731331; -c_731331.hdr.mark = gc_color_red; - c_731331.hdr.grayed = 0; -c_731331.tag = closureN_tag; - c_731331.fn = (function_type)__lambda_36; -c_731331.num_args = 1; -c_731331.num_elt = 2; -c_731331.elts = (object *)alloca(sizeof(object) * 2); -c_731331.elts[0] = ((closureN)self_731081)->elts[0]; -c_731331.elts[1] = ((closureN)self_731081)->elts[1]; - -return_closcall1(data, __glo_newline_scheme_base, &c_731331);; -} - -static void __lambda_36(void *data, int argc, object self_731082, object r_73585) { - return_closcall1(data, ((closureN)self_731082)->elts[0], ((closureN)self_731082)->elts[1]);; -} - -static void __lambda_35(void *data, int argc, object self_731083) { - -closureN_type c_731280; -c_731280.hdr.mark = gc_color_red; - c_731280.hdr.grayed = 0; -c_731280.tag = closureN_tag; - c_731280.fn = (function_type)__lambda_34; -c_731280.num_args = 1; -c_731280.num_elt = 3; -c_731280.elts = (object *)alloca(sizeof(object) * 3); -c_731280.elts[0] = ((closureN)self_731083)->elts[1]; -c_731280.elts[1] = ((closureN)self_731083)->elts[2]; -c_731280.elts[2] = ((closureN)self_731083)->elts[3]; - - -object c_731292 = Cyc_sum(data,(closure)&c_731280,2,((closureN)self_731083)->elts[0], obj_int2obj(1)); -return_closcall1(data,(closure)&c_731280, c_731292);; -} - -static void __lambda_34(void *data, int argc, object self_731084, object r_73582) { - -closureN_type c_731283; -c_731283.hdr.mark = gc_color_red; - c_731283.hdr.grayed = 0; -c_731283.tag = closureN_tag; - c_731283.fn = (function_type)__lambda_33; -c_731283.num_args = 1; -c_731283.num_elt = 3; -c_731283.elts = (object *)alloca(sizeof(object) * 3); -c_731283.elts[0] = ((closureN)self_731084)->elts[0]; -c_731283.elts[1] = ((closureN)self_731084)->elts[1]; -c_731283.elts[2] = r_73582; - -return_closcall1(data, ((closureN)self_731084)->elts[2], &c_731283);; -} - -static void __lambda_33(void *data, int argc, object self_731085, object r_73583) { - return_closcall3(data, cell_get(((closureN)self_731085)->elts[1]), ((closureN)self_731085)->elts[0], ((closureN)self_731085)->elts[2], r_73583);; -} - -static void __lambda_32(void *data, int argc, object self_731086, object r_73579) { - -closureN_type c_731263; -c_731263.hdr.mark = gc_color_red; - c_731263.hdr.grayed = 0; -c_731263.tag = closureN_tag; - c_731263.fn = (function_type)__lambda_31; -c_731263.num_args = 1; -c_731263.num_elt = 4; -c_731263.elts = (object *)alloca(sizeof(object) * 4); -c_731263.elts[0] = ((closureN)self_731086)->elts[0]; -c_731263.elts[1] = ((closureN)self_731086)->elts[1]; -c_731263.elts[2] = ((closureN)self_731086)->elts[2]; -c_731263.elts[3] = ((closureN)self_731086)->elts[3]; - -return_closcall1(data,(closure)&c_731263, Cyc_set_car(data, ((closureN)self_731086)->elts[2], r_73579));; -} - -static void __lambda_31(void *data, int argc, object self_731087, object r_73578) { - return_closcall3(data, cell_get(((closureN)self_731087)->elts[2]), ((closureN)self_731087)->elts[1], ((closureN)self_731087)->elts[0], ((closureN)self_731087)->elts[3]);; -} - -static void __lambda_30(void *data, int argc, closure _,object k_73602) { - Cyc_st_add(data, "nboyer.scm:run-r7rs-benchmark"); -if( !eq(boolean_f, boolean_f) ){ - return_closcall1(data, k_73602, boolean_f); -} else { - return_closcall1(data, k_73602, boolean_f);} -; -} - -static void __lambda_29(void *data, int argc, closure _,object k_73609, object r_73248, object x_73247) { - Cyc_st_add(data, "nboyer.scm:hide"); - -closureN_type c_731186; -c_731186.hdr.mark = gc_color_red; - c_731186.hdr.grayed = 0; -c_731186.tag = closureN_tag; - c_731186.fn = (function_type)__lambda_21; -c_731186.num_args = 1; -c_731186.num_elt = 2; -c_731186.elts = (object *)alloca(sizeof(object) * 2); -c_731186.elts[0] = k_73609; -c_731186.elts[1] = x_73247; - - -closureN_type c_731200; -c_731200.hdr.mark = gc_color_red; - c_731200.hdr.grayed = 0; -c_731200.tag = closureN_tag; - c_731200.fn = (function_type)__lambda_28; -c_731200.num_args = 0; -c_731200.num_elt = 1; -c_731200.elts = (object *)alloca(sizeof(object) * 1); -c_731200.elts[0] = r_73248; - -return_closcall1(data,(closure)&c_731186, &c_731200);; -} - -static void __lambda_28(void *data, int argc, object self_731088, object k_73614) { - -closureN_type c_731202; -c_731202.hdr.mark = gc_color_red; - c_731202.hdr.grayed = 0; -c_731202.tag = closureN_tag; - c_731202.fn = (function_type)__lambda_26; -c_731202.num_args = 1; -c_731202.num_elt = 2; -c_731202.elts = (object *)alloca(sizeof(object) * 2); -c_731202.elts[0] = k_73614; -c_731202.elts[1] = ((closureN)self_731088)->elts[0]; - - -mclosure0(c_731221, (function_type)__lambda_27);c_731221.num_args = 1; -return_closcall1(data,(closure)&c_731202, &c_731221);; -} - -static void __lambda_27(void *data, int argc, object self_731089, object k_73620, object x_73251) { - return_closcall1(data, k_73620, x_73251);; -} - -static void __lambda_26(void *data, int argc, object self_731090, object r_73619) { - -closureN_type c_731204; -c_731204.hdr.mark = gc_color_red; - c_731204.hdr.grayed = 0; -c_731204.tag = closureN_tag; - c_731204.fn = (function_type)__lambda_25; -c_731204.num_args = 1; -c_731204.num_elt = 2; -c_731204.elts = (object *)alloca(sizeof(object) * 2); -c_731204.elts[0] = ((closureN)self_731090)->elts[0]; -c_731204.elts[1] = ((closureN)self_731090)->elts[1]; - -return_closcall3(data, __glo_vector_scheme_base, &c_731204, __glo_values_scheme_base, r_73619);; -} - -static void __lambda_25(void *data, int argc, object self_731091, object r_73615) { - -closureN_type c_731206; -c_731206.hdr.mark = gc_color_red; - c_731206.hdr.grayed = 0; -c_731206.tag = closureN_tag; - c_731206.fn = (function_type)__lambda_23; -c_731206.num_args = 0; -c_731206.num_elt = 1; -c_731206.elts = (object *)alloca(sizeof(object) * 1); -c_731206.elts[0] = ((closureN)self_731091)->elts[1]; - - -closureN_type c_731217; -c_731217.hdr.mark = gc_color_red; - c_731217.hdr.grayed = 0; -c_731217.tag = closureN_tag; - c_731217.fn = (function_type)__lambda_24; -c_731217.num_args = 1; -c_731217.num_elt = 2; -c_731217.elts = (object *)alloca(sizeof(object) * 2); -c_731217.elts[0] = ((closureN)self_731091)->elts[0]; -c_731217.elts[1] = r_73615; - -return_closcall1(data,(closure)&c_731206, &c_731217);; -} - -static void __lambda_24(void *data, int argc, object self_731092, object r_73616) { - return_closcall3(data, __glo_values_scheme_base, ((closureN)self_731092)->elts[0], ((closureN)self_731092)->elts[1], r_73616);; -} - -static void __lambda_23(void *data, int argc, object self_731093, object k_73617) { - -closureN_type c_731208; -c_731208.hdr.mark = gc_color_red; - c_731208.hdr.grayed = 0; -c_731208.tag = closureN_tag; - c_731208.fn = (function_type)__lambda_22; -c_731208.num_args = 1; -c_731208.num_elt = 1; -c_731208.elts = (object *)alloca(sizeof(object) * 1); -c_731208.elts[0] = k_73617; - - -object c_731215 = Cyc_num_lt(data,(closure)&c_731208,2,((closureN)self_731093)->elts[0], obj_int2obj(100)); -return_closcall1(data,(closure)&c_731208, c_731215);; -} - -static void __lambda_22(void *data, int argc, object self_731094, object r_73618) { - if( !eq(boolean_f, r_73618) ){ - return_closcall1(data, ((closureN)self_731094)->elts[0], obj_int2obj(0)); -} else { - return_closcall1(data, ((closureN)self_731094)->elts[0], obj_int2obj(1));} -; -} - -static void __lambda_21(void *data, int argc, object self_731095, object r_73610) { - -closureN_type c_731188; -c_731188.hdr.mark = gc_color_red; - c_731188.hdr.grayed = 0; -c_731188.tag = closureN_tag; - c_731188.fn = (function_type)__lambda_18; -c_731188.num_args = 1; -c_731188.num_elt = 2; -c_731188.elts = (object *)alloca(sizeof(object) * 2); -c_731188.elts[0] = ((closureN)self_731095)->elts[0]; -c_731188.elts[1] = r_73610; - - -closureN_type c_731192; -c_731192.hdr.mark = gc_color_red; - c_731192.hdr.grayed = 0; -c_731192.tag = closureN_tag; - c_731192.fn = (function_type)__lambda_20; -c_731192.num_args = 2; -c_731192.num_elt = 1; -c_731192.elts = (object *)alloca(sizeof(object) * 1); -c_731192.elts[0] = ((closureN)self_731095)->elts[1]; - -return_closcall1(data,(closure)&c_731188, &c_731192);; -} - -static void __lambda_20(void *data, int argc, object self_731096, object k_73612, object v_73250, object i_73249) { - -closureN_type c_731194; -c_731194.hdr.mark = gc_color_red; - c_731194.hdr.grayed = 0; -c_731194.tag = closureN_tag; - c_731194.fn = (function_type)__lambda_19; -c_731194.num_args = 1; -c_731194.num_elt = 2; -c_731194.elts = (object *)alloca(sizeof(object) * 2); -c_731194.elts[0] = k_73612; -c_731194.elts[1] = ((closureN)self_731096)->elts[0]; - -return_closcall1(data,(closure)&c_731194, Cyc_vector_ref(data, v_73250, i_73249));; -} - -static void __lambda_19(void *data, int argc, object self_731097, object r_73613) { - return_closcall2(data, r_73613, ((closureN)self_731097)->elts[0], ((closureN)self_731097)->elts[1]);; -} - -static void __lambda_18(void *data, int argc, object self_731098, object r_73611) { - return_closcall3(data, __glo_call_91with_91values_scheme_base, ((closureN)self_731098)->elts[0], ((closureN)self_731098)->elts[1], r_73611);; -} - -static void __lambda_17(void *data, int argc, closure _,object k_73623, object args_73252_raw, ...) { -load_varargs(args_73252, args_73252_raw, argc - 1); - Cyc_st_add(data, "nboyer.scm:test-boyer"); -return_closcall1(data, k_73623, boolean_t);; -} - -static void __lambda_16(void *data, int argc, closure _,object k_73626, object args_73253_raw, ...) { -load_varargs(args_73253, args_73253_raw, argc - 1); - Cyc_st_add(data, "nboyer.scm:setup-boyer"); -return_closcall1(data, k_73626, boolean_t);; -} - -static void __lambda_15(void *data, int argc, closure _,object k_73633) { - Cyc_st_add(data, "nboyer.scm:main"); - -closureN_type c_731116; -c_731116.hdr.mark = gc_color_red; - c_731116.hdr.grayed = 0; -c_731116.tag = closureN_tag; - c_731116.fn = (function_type)__lambda_14; -c_731116.num_args = 1; -c_731116.num_elt = 1; -c_731116.elts = (object *)alloca(sizeof(object) * 1); -c_731116.elts[0] = k_73633; - -return_closcall1(data, __glo_read_scheme_read, &c_731116);; -} - -static void __lambda_14(void *data, int argc, object self_731099, object count_73254) { - -closureN_type c_731118; -c_731118.hdr.mark = gc_color_red; - c_731118.hdr.grayed = 0; -c_731118.tag = closureN_tag; - c_731118.fn = (function_type)__lambda_13; -c_731118.num_args = 1; -c_731118.num_elt = 2; -c_731118.elts = (object *)alloca(sizeof(object) * 2); -c_731118.elts[0] = count_73254; -c_731118.elts[1] = ((closureN)self_731099)->elts[0]; - -return_closcall1(data, __glo_read_scheme_read, &c_731118);; -} - -static void __lambda_13(void *data, int argc, object self_731100, object input_73255) { - -closureN_type c_731120; -c_731120.hdr.mark = gc_color_red; - c_731120.hdr.grayed = 0; -c_731120.tag = closureN_tag; - c_731120.fn = (function_type)__lambda_12; -c_731120.num_args = 1; -c_731120.num_elt = 3; -c_731120.elts = (object *)alloca(sizeof(object) * 3); -c_731120.elts[0] = ((closureN)self_731100)->elts[0]; -c_731120.elts[1] = input_73255; -c_731120.elts[2] = ((closureN)self_731100)->elts[1]; - -return_closcall1(data, __glo_read_scheme_read, &c_731120);; -} - -static void __lambda_12(void *data, int argc, object self_731101, object output_73256) { - -closureN_type c_731122; -c_731122.hdr.mark = gc_color_red; - c_731122.hdr.grayed = 0; -c_731122.tag = closureN_tag; - c_731122.fn = (function_type)__lambda_11; -c_731122.num_args = 1; -c_731122.num_elt = 4; -c_731122.elts = (object *)alloca(sizeof(object) * 4); -c_731122.elts[0] = ((closureN)self_731101)->elts[0]; -c_731122.elts[1] = ((closureN)self_731101)->elts[1]; -c_731122.elts[2] = ((closureN)self_731101)->elts[2]; -c_731122.elts[3] = output_73256; - - -object c_731178 = Cyc_number2string2(data,(closure)&c_731122,1,((closureN)self_731101)->elts[0]); -return_closcall1(data,(closure)&c_731122, c_731178);; -} - -static void __lambda_11(void *data, int argc, object self_731102, object s2_73257) { - -closureN_type c_731124; -c_731124.hdr.mark = gc_color_red; - c_731124.hdr.grayed = 0; -c_731124.tag = closureN_tag; - c_731124.fn = (function_type)__lambda_10; -c_731124.num_args = 1; -c_731124.num_elt = 5; -c_731124.elts = (object *)alloca(sizeof(object) * 5); -c_731124.elts[0] = ((closureN)self_731102)->elts[0]; -c_731124.elts[1] = ((closureN)self_731102)->elts[1]; -c_731124.elts[2] = ((closureN)self_731102)->elts[2]; -c_731124.elts[3] = ((closureN)self_731102)->elts[3]; -c_731124.elts[4] = s2_73257; - - -object c_731174 = Cyc_number2string2(data,(closure)&c_731124,1,((closureN)self_731102)->elts[1]); -return_closcall1(data,(closure)&c_731124, c_731174);; -} - -static void __lambda_10(void *data, int argc, object self_731103, object s1_73258) { - -closureN_type c_731126; -c_731126.hdr.mark = gc_color_red; - c_731126.hdr.grayed = 0; -c_731126.tag = closureN_tag; - c_731126.fn = (function_type)__lambda_9; -c_731126.num_args = 1; -c_731126.num_elt = 6; -c_731126.elts = (object *)alloca(sizeof(object) * 6); -c_731126.elts[0] = ((closureN)self_731103)->elts[0]; -c_731126.elts[1] = ((closureN)self_731103)->elts[1]; -c_731126.elts[2] = ((closureN)self_731103)->elts[2]; -c_731126.elts[3] = ((closureN)self_731103)->elts[3]; -c_731126.elts[4] = s1_73258; -c_731126.elts[5] = ((closureN)self_731103)->elts[4]; - - -make_string(c_731171, "nboyer"); -return_closcall1(data,(closure)&c_731126, &c_731171);; -} - -static void __lambda_9(void *data, int argc, object self_731104, object name_73259) { - -closureN_type c_731128; -c_731128.hdr.mark = gc_color_red; - c_731128.hdr.grayed = 0; -c_731128.tag = closureN_tag; - c_731128.fn = (function_type)__lambda_8; -c_731128.num_args = 0; -c_731128.num_elt = 7; -c_731128.elts = (object *)alloca(sizeof(object) * 7); -c_731128.elts[0] = ((closureN)self_731104)->elts[0]; -c_731128.elts[1] = ((closureN)self_731104)->elts[1]; -c_731128.elts[2] = ((closureN)self_731104)->elts[2]; -c_731128.elts[3] = name_73259; -c_731128.elts[4] = ((closureN)self_731104)->elts[3]; -c_731128.elts[5] = ((closureN)self_731104)->elts[4]; -c_731128.elts[6] = ((closureN)self_731104)->elts[5]; - -return_closcall0(data,(closure)&c_731128);; -} - -static void __lambda_8(void *data, int argc, object self_731105) { - -closureN_type c_731130; -c_731130.hdr.mark = gc_color_red; - c_731130.hdr.grayed = 0; -c_731130.tag = closureN_tag; - c_731130.fn = (function_type)__lambda_7; -c_731130.num_args = 1; -c_731130.num_elt = 4; -c_731130.elts = (object *)alloca(sizeof(object) * 4); -c_731130.elts[0] = ((closureN)self_731105)->elts[0]; -c_731130.elts[1] = ((closureN)self_731105)->elts[1]; -c_731130.elts[2] = ((closureN)self_731105)->elts[2]; -c_731130.elts[3] = ((closureN)self_731105)->elts[4]; - - -make_string(c_731167, ":"); - -make_string(c_731169, ":"); - -object c_731165 = Cyc_string_append(data,(closure)&c_731130,5,((closureN)self_731105)->elts[3], &c_731167, ((closureN)self_731105)->elts[5], &c_731169, ((closureN)self_731105)->elts[6]); -return_closcall1(data,(closure)&c_731130, c_731165);; -} - -static void __lambda_7(void *data, int argc, object self_731106, object r_73639) { - -closureN_type c_731132; -c_731132.hdr.mark = gc_color_red; - c_731132.hdr.grayed = 0; -c_731132.tag = closureN_tag; - c_731132.fn = (function_type)__lambda_3; -c_731132.num_args = 1; -c_731132.num_elt = 4; -c_731132.elts = (object *)alloca(sizeof(object) * 4); -c_731132.elts[0] = ((closureN)self_731106)->elts[0]; -c_731132.elts[1] = ((closureN)self_731106)->elts[2]; -c_731132.elts[2] = ((closureN)self_731106)->elts[3]; -c_731132.elts[3] = r_73639; - - -closureN_type c_731154; -c_731154.hdr.mark = gc_color_red; - c_731154.hdr.grayed = 0; -c_731154.tag = closureN_tag; - c_731154.fn = (function_type)__lambda_6; -c_731154.num_args = 0; -c_731154.num_elt = 2; -c_731154.elts = (object *)alloca(sizeof(object) * 2); -c_731154.elts[0] = ((closureN)self_731106)->elts[0]; -c_731154.elts[1] = ((closureN)self_731106)->elts[1]; - -return_closcall1(data,(closure)&c_731132, &c_731154);; -} - -static void __lambda_6(void *data, int argc, object self_731107, object k_73644) { - -closureN_type c_731156; -c_731156.hdr.mark = gc_color_red; - c_731156.hdr.grayed = 0; -c_731156.tag = closureN_tag; - c_731156.fn = (function_type)__lambda_5; -c_731156.num_args = 1; -c_731156.num_elt = 3; -c_731156.elts = (object *)alloca(sizeof(object) * 3); -c_731156.elts[0] = ((closureN)self_731107)->elts[0]; -c_731156.elts[1] = ((closureN)self_731107)->elts[1]; -c_731156.elts[2] = k_73644; - -return_closcall1(data, __glo_setup_91boyer, &c_731156);; -} - -static void __lambda_5(void *data, int argc, object self_731108, object r_73645) { - -closureN_type c_731158; -c_731158.hdr.mark = gc_color_red; - c_731158.hdr.grayed = 0; -c_731158.tag = closureN_tag; - c_731158.fn = (function_type)__lambda_4; -c_731158.num_args = 1; -c_731158.num_elt = 1; -c_731158.elts = (object *)alloca(sizeof(object) * 1); -c_731158.elts[0] = ((closureN)self_731108)->elts[2]; - -return_closcall3(data, __glo_hide, &c_731158, ((closureN)self_731108)->elts[0], ((closureN)self_731108)->elts[1]);; -} - -static void __lambda_4(void *data, int argc, object self_731109, object r_73646) { - return_closcall4(data, __glo_test_91boyer, ((closureN)self_731109)->elts[0], __glo_alist, __glo_term, r_73646);; -} - -static void __lambda_3(void *data, int argc, object self_731110, object r_73640) { - -closureN_type c_731134; -c_731134.hdr.mark = gc_color_red; - c_731134.hdr.grayed = 0; -c_731134.tag = closureN_tag; - c_731134.fn = (function_type)__lambda_0; -c_731134.num_args = 1; -c_731134.num_elt = 4; -c_731134.elts = (object *)alloca(sizeof(object) * 4); -c_731134.elts[0] = ((closureN)self_731110)->elts[0]; -c_731134.elts[1] = ((closureN)self_731110)->elts[1]; -c_731134.elts[2] = ((closureN)self_731110)->elts[3]; -c_731134.elts[3] = r_73640; - - -closureN_type c_731140; -c_731140.hdr.mark = gc_color_red; - c_731140.hdr.grayed = 0; -c_731140.tag = closureN_tag; - c_731140.fn = (function_type)__lambda_2; -c_731140.num_args = 1; -c_731140.num_elt = 1; -c_731140.elts = (object *)alloca(sizeof(object) * 1); -c_731140.elts[0] = ((closureN)self_731110)->elts[2]; - -return_closcall1(data,(closure)&c_731134, &c_731140);; -} - -static void __lambda_2(void *data, int argc, object self_731111, object k_73642, object rewrites_73260) { - -closureN_type c_731142; -c_731142.hdr.mark = gc_color_red; - c_731142.hdr.grayed = 0; -c_731142.tag = closureN_tag; - c_731142.fn = (function_type)__lambda_1; -c_731142.num_args = 1; -c_731142.num_elt = 3; -c_731142.elts = (object *)alloca(sizeof(object) * 3); -c_731142.elts[0] = k_73642; -c_731142.elts[1] = ((closureN)self_731111)->elts[0]; -c_731142.elts[2] = rewrites_73260; - -return_closcall1(data,(closure)&c_731142, Cyc_is_number(rewrites_73260));; -} - -static void __lambda_1(void *data, int argc, object self_731112, object r_73643) { - if( !eq(boolean_f, r_73643) ){ - -object c_731147 = Cyc_num_eq(data, ((closureN)self_731112)->elts[0],2,((closureN)self_731112)->elts[2], ((closureN)self_731112)->elts[1]); -return_closcall1(data, ((closureN)self_731112)->elts[0], c_731147); -} else { - return_closcall1(data, ((closureN)self_731112)->elts[0], boolean_f);} -; -} - -static void __lambda_0(void *data, int argc, object self_731113, object r_73641) { - return_closcall5(data, __glo_run_91r7rs_91benchmark, ((closureN)self_731113)->elts[1], ((closureN)self_731113)->elts[2], ((closureN)self_731113)->elts[0], ((closureN)self_731113)->elts[3], r_73641);; -} - -static void c_entry_pt_first_lambda(void *data, int argc, closure cont, object value); -extern void c_schemebase_entry_pt(void *data, int argc, closure cont, object value); -extern void c_schemetime_entry_pt(void *data, int argc, closure cont, object value); -extern void c_schemecxr_entry_pt(void *data, int argc, closure cont, object value); -extern void c_scheme_char_entry_pt(void *data, int argc, closure cont, object value); -extern void c_schemeread_entry_pt(void *data, int argc, closure cont, object value); -extern void c_schemewrite_entry_pt(void *data, int argc, closure cont, object value); -static void c_entry_pt(data, argc, env,cont) void *data; int argc; closure env,cont; { - quote_u = find_or_add_symbol("u"); - quote_mem = find_or_add_symbol("mem"); - quote_val = find_or_add_symbol("val"); - quote_set = find_or_add_symbol("set"); - quote_get = find_or_add_symbol("get"); - quote_cdr = find_or_add_symbol("cdr"); - quote_assignedp = find_or_add_symbol("assignedp"); - quote_assignment = find_or_add_symbol("assignment"); - quote_car = find_or_add_symbol("car"); - quote_last = find_or_add_symbol("last"); - quote_sigma = find_or_add_symbol("sigma"); - quote_x7 = find_or_add_symbol("x7"); - quote_x6 = find_or_add_symbol("x6"); - quote_x5 = find_or_add_symbol("x5"); - quote_x4 = find_or_add_symbol("x4"); - quote_x3 = find_or_add_symbol("x3"); - quote_x2 = find_or_add_symbol("x2"); - quote_x1 = find_or_add_symbol("x1"); - quote_dsort = find_or_add_symbol("dsort"); - quote_sort2 = find_or_add_symbol("sort2"); - quote_delete = find_or_add_symbol("delete"); - quote_prime_91list = find_or_add_symbol("prime-list"); - quote_times_91list = find_or_add_symbol("times-list"); - quote_greatest_91factor = find_or_add_symbol("greatest-factor"); - quote_samefringe = find_or_add_symbol("samefringe"); - quote_gopher = find_or_add_symbol("gopher"); - quote_listp = find_or_add_symbol("listp"); - quote_nlistp = find_or_add_symbol("nlistp"); - quote_value = find_or_add_symbol("value"); - quote_w = find_or_add_symbol("w"); - quote_gcd = find_or_add_symbol("gcd"); - quote_power_91rep = find_or_add_symbol("power-rep"); - quote_big_91plus = find_or_add_symbol("big-plus"); - quote_base = find_or_add_symbol("base"); - quote_big_91plus1 = find_or_add_symbol("big-plus1"); - quote_power_91eval = find_or_add_symbol("power-eval"); - quote_quotient = find_or_add_symbol("quotient"); - quote_sort_91lp = find_or_add_symbol("sort-lp"); - quote_count_91list = find_or_add_symbol("count-list"); - quote_k = find_or_add_symbol("k"); - quote_j = find_or_add_symbol("j"); - quote_exp = find_or_add_symbol("exp"); - quote_nth = find_or_add_symbol("nth"); - quote_intersect = find_or_add_symbol("intersect"); - quote_length = find_or_add_symbol("length"); - quote_member = find_or_add_symbol("member"); - quote_flatten = find_or_add_symbol("flatten"); - quote_mc_91flatten = find_or_add_symbol("mc-flatten"); - quote_envrn = find_or_add_symbol("envrn"); - quote_pds = find_or_add_symbol("pds"); - quote_exec = find_or_add_symbol("exec"); - quote_times = find_or_add_symbol("times"); - quote_plus_91fringe = find_or_add_symbol("plus-fringe"); - quote_append = find_or_add_symbol("append"); - quote_plus_91tree = find_or_add_symbol("plus-tree"); - quote_meaning = find_or_add_symbol("meaning"); - quote_difference = find_or_add_symbol("difference"); - quote_z = find_or_add_symbol("z"); - quote_plus = find_or_add_symbol("plus"); - quote_e = find_or_add_symbol("e"); - quote_d = find_or_add_symbol("d"); - quote_c = find_or_add_symbol("c"); - quote_b = find_or_add_symbol("b"); - quote_a = find_or_add_symbol("a"); - quote_numberp = find_or_add_symbol("numberp"); - quote_q = find_or_add_symbol("q"); - quote_p = find_or_add_symbol("p"); - quote_prime1 = find_or_add_symbol("prime1"); - quote_add1 = find_or_add_symbol("add1"); - quote_prime = find_or_add_symbol("prime"); - quote_falsify1 = find_or_add_symbol("falsify1"); - quote_falsify = find_or_add_symbol("falsify"); - quote_normalize = find_or_add_symbol("normalize"); - quote_tautologyp = find_or_add_symbol("tautologyp"); - quote_tautology_91checker = find_or_add_symbol("tautology-checker"); - quote_assume_91false = find_or_add_symbol("assume-false"); - quote_cons = find_or_add_symbol("cons"); - quote_alist = find_or_add_symbol("alist"); - quote_var = find_or_add_symbol("var"); - quote_assume_91true = find_or_add_symbol("assume-true"); - quote_remainder = find_or_add_symbol("remainder"); - quote_divides = find_or_add_symbol("divides"); - quote_reverse_91loop = find_or_add_symbol("reverse-loop"); - quote_reverse_91 = find_or_add_symbol("reverse-"); - quote_fact_91loop = find_or_add_symbol("fact-loop"); - quote_i = find_or_add_symbol("i"); - quote_fact_91 = find_or_add_symbol("fact-"); - quote_zero = find_or_add_symbol("zero"); - quote_countps_91loop = find_or_add_symbol("countps-loop"); - quote_pred = find_or_add_symbol("pred"); - quote_l = find_or_add_symbol("l"); - quote_countps_91 = find_or_add_symbol("countps-"); - quote__1911_91 = find_or_add_symbol("_1-"); - quote_odd = find_or_add_symbol("odd"); - quote_zerop = find_or_add_symbol("zerop"); - quote_even1 = find_or_add_symbol("even1"); - quote_iff = find_or_add_symbol("iff"); - quote_boolean = find_or_add_symbol("boolean"); - quote_greatereqp = find_or_add_symbol("greatereqp"); - quote_not = find_or_add_symbol("not"); - quote_lesseqp = find_or_add_symbol("lesseqp"); - quote_lessp = find_or_add_symbol("lessp"); - quote_greaterp = find_or_add_symbol("greaterp"); - quote_fix = find_or_add_symbol("fix"); - quote_y = find_or_add_symbol("y"); - quote_x = find_or_add_symbol("x"); - quote_eqp = find_or_add_symbol("eqp"); - quote_nil = find_or_add_symbol("nil"); - quote_optimize = find_or_add_symbol("optimize"); - quote_codegen = find_or_add_symbol("codegen"); - quote_reverse = find_or_add_symbol("reverse"); - quote_form = find_or_add_symbol("form"); - quote_compile = find_or_add_symbol("compile"); - quote_lemmas = find_or_add_symbol("lemmas"); - quote_equal = find_or_add_symbol("equal"); - quote_or = find_or_add_symbol("or"); - quote__85 = find_or_add_symbol("*"); - quote_and = find_or_add_symbol("and"); - quote_implies = find_or_add_symbol("implies"); - quote__if = find_or_add_symbol("if"); - quote_f = find_or_add_symbol("f"); - quote_t = find_or_add_symbol("t"); - - add_global((object *) &__glo_run_91r7rs_91benchmark); - add_global((object *) &__glo_hide); - add_global((object *) &__glo_test_91boyer); - add_global((object *) &__glo_setup_91boyer); - add_global((object *) &__glo_term); - add_global((object *) &__glo_alist); - add_global((object *) &__glo_main); - add_symbol(quote_u); - add_symbol(quote_mem); - add_symbol(quote_val); - add_symbol(quote_set); - add_symbol(quote_get); - add_symbol(quote_cdr); - add_symbol(quote_assignedp); - add_symbol(quote_assignment); - add_symbol(quote_car); - add_symbol(quote_last); - add_symbol(quote_sigma); - add_symbol(quote_x7); - add_symbol(quote_x6); - add_symbol(quote_x5); - add_symbol(quote_x4); - add_symbol(quote_x3); - add_symbol(quote_x2); - add_symbol(quote_x1); - add_symbol(quote_dsort); - add_symbol(quote_sort2); - add_symbol(quote_delete); - add_symbol(quote_prime_91list); - add_symbol(quote_times_91list); - add_symbol(quote_greatest_91factor); - add_symbol(quote_samefringe); - add_symbol(quote_gopher); - add_symbol(quote_listp); - add_symbol(quote_nlistp); - add_symbol(quote_value); - add_symbol(quote_w); - add_symbol(quote_gcd); - add_symbol(quote_power_91rep); - add_symbol(quote_big_91plus); - add_symbol(quote_base); - add_symbol(quote_big_91plus1); - add_symbol(quote_power_91eval); - add_symbol(quote_quotient); - add_symbol(quote_sort_91lp); - add_symbol(quote_count_91list); - add_symbol(quote_k); - add_symbol(quote_j); - add_symbol(quote_exp); - add_symbol(quote_nth); - add_symbol(quote_intersect); - add_symbol(quote_length); - add_symbol(quote_member); - add_symbol(quote_flatten); - add_symbol(quote_mc_91flatten); - add_symbol(quote_envrn); - add_symbol(quote_pds); - add_symbol(quote_exec); - add_symbol(quote_times); - add_symbol(quote_plus_91fringe); - add_symbol(quote_append); - add_symbol(quote_plus_91tree); - add_symbol(quote_meaning); - add_symbol(quote_difference); - add_symbol(quote_z); - add_symbol(quote_plus); - add_symbol(quote_e); - add_symbol(quote_d); - add_symbol(quote_c); - add_symbol(quote_b); - add_symbol(quote_a); - add_symbol(quote_numberp); - add_symbol(quote_q); - add_symbol(quote_p); - add_symbol(quote_prime1); - add_symbol(quote_add1); - add_symbol(quote_prime); - add_symbol(quote_falsify1); - add_symbol(quote_falsify); - add_symbol(quote_normalize); - add_symbol(quote_tautologyp); - add_symbol(quote_tautology_91checker); - add_symbol(quote_assume_91false); - add_symbol(quote_cons); - add_symbol(quote_alist); - add_symbol(quote_var); - add_symbol(quote_assume_91true); - add_symbol(quote_remainder); - add_symbol(quote_divides); - add_symbol(quote_reverse_91loop); - add_symbol(quote_reverse_91); - add_symbol(quote_fact_91loop); - add_symbol(quote_i); - add_symbol(quote_fact_91); - add_symbol(quote_zero); - add_symbol(quote_countps_91loop); - add_symbol(quote_pred); - add_symbol(quote_l); - add_symbol(quote_countps_91); - add_symbol(quote__1911_91); - add_symbol(quote_odd); - add_symbol(quote_zerop); - add_symbol(quote_even1); - add_symbol(quote_iff); - add_symbol(quote_boolean); - add_symbol(quote_greatereqp); - add_symbol(quote_not); - add_symbol(quote_lesseqp); - add_symbol(quote_lessp); - add_symbol(quote_greaterp); - add_symbol(quote_fix); - add_symbol(quote_y); - add_symbol(quote_x); - add_symbol(quote_eqp); - add_symbol(quote_nil); - add_symbol(quote_optimize); - add_symbol(quote_codegen); - add_symbol(quote_reverse); - add_symbol(quote_form); - add_symbol(quote_compile); - add_symbol(quote_lemmas); - add_symbol(quote_equal); - add_symbol(quote_or); - add_symbol(quote__85); - add_symbol(quote_and); - add_symbol(quote_implies); - add_symbol(quote__if); - add_symbol(quote_f); - add_symbol(quote_t); - mclosure0(c_731223, (function_type)__lambda_79);c_731223.num_args = 4; - __glo_run_91r7rs_91benchmark = &c_731223; - mclosure0(c_731184, (function_type)__lambda_29);c_731184.num_args = 2; - __glo_hide = &c_731184; - mclosure0(c_731182, (function_type)__lambda_17);c_731182.num_args = 0; - __glo_test_91boyer = &c_731182; - mclosure0(c_731180, (function_type)__lambda_16);c_731180.num_args = 0; - __glo_setup_91boyer = &c_731180; - mclosure0(c_731114, (function_type)__lambda_15);c_731114.num_args = 0; - __glo_main = &c_731114; - __glo_term = boolean_f; - __glo_alist = boolean_f; - - make_cvar(cvar_735231, (object *)&__glo_run_91r7rs_91benchmark);make_cons(pair_735232, find_or_add_symbol("run-r7rs-benchmark"), &cvar_735231); - make_cvar(cvar_735233, (object *)&__glo_hide);make_cons(pair_735234, find_or_add_symbol("hide"), &cvar_735233); - make_cvar(cvar_735235, (object *)&__glo_test_91boyer);make_cons(pair_735236, find_or_add_symbol("test-boyer"), &cvar_735235); - make_cvar(cvar_735237, (object *)&__glo_setup_91boyer);make_cons(pair_735238, find_or_add_symbol("setup-boyer"), &cvar_735237); - make_cvar(cvar_735239, (object *)&__glo_term);make_cons(pair_735240, find_or_add_symbol("term"), &cvar_735239); - make_cvar(cvar_735241, (object *)&__glo_alist);make_cons(pair_735242, find_or_add_symbol("alist"), &cvar_735241); - make_cvar(cvar_735243, (object *)&__glo_main);make_cons(pair_735244, find_or_add_symbol("main"), &cvar_735243); -make_cons(c_735245, &pair_735232,Cyc_global_variables); -make_cons(c_735246, &pair_735234, &c_735245); -make_cons(c_735247, &pair_735236, &c_735246); -make_cons(c_735248, &pair_735238, &c_735247); -make_cons(c_735249, &pair_735240, &c_735248); -make_cons(c_735250, &pair_735242, &c_735249); -make_cons(c_735251, &pair_735244, &c_735250); -Cyc_global_variables = &c_735251; -mclosure1(c_done, c_entry_pt_first_lambda, &c_done); -mclosure1(c_735252, c_schemewrite_entry_pt, &c_done); -mclosure1(c_735253, c_schemeread_entry_pt, &c_735252); -mclosure1(c_735254, c_scheme_char_entry_pt, &c_735253); -mclosure1(c_735255, c_schemecxr_entry_pt, &c_735254); -mclosure1(c_735256, c_schemetime_entry_pt, &c_735255); -mclosure1(c_735257, c_schemebase_entry_pt, &c_735256); -(c_735257.fn)(data, 0, &c_735257, &c_735257); -} -static void c_entry_pt_first_lambda(void *data, int argc, closure cont, object value) { - - - - - - - - return_direct39(data,__lambda_483,boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f); -} -main(int argc,char **argv) -{gc_thread_data *thd; - long stack_size = global_stack_size = STACK_SIZE; - long heap_size = global_heap_size = HEAP_SIZE; - mclosure0(clos_halt,&Cyc_halt); // Halt if final closure is reached - mclosure0(entry_pt,&c_entry_pt); // First function to execute - _cyc_argc = argc; - _cyc_argv = argv; - gc_initialize(); - thd = malloc(sizeof(gc_thread_data)); - gc_thread_data_init(thd, 0, (char *) &stack_size, stack_size); - thd->gc_cont = &entry_pt; - thd->gc_args[0] = &clos_halt; - thd->gc_num_args = 1; - gc_add_mutator(thd); - Cyc_heap_init(heap_size); - thd->thread_state = CYC_THREAD_STATE_RUNNABLE; - Cyc_start_trampoline(thd); - return 0;} diff --git a/debug/compilation/boyer/nboyer.scm b/debug/compilation/boyer/nboyer.scm deleted file mode 100644 index df16dcb8..00000000 --- a/debug/compilation/boyer/nboyer.scm +++ /dev/null @@ -1,836 +0,0 @@ -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; File: nboyer.sch -; Description: The Boyer benchmark -; Author: Bob Boyer -; Created: 5-Apr-85 -; Modified: 10-Apr-85 14:52:20 (Bob Shaw) -; 22-Jul-87 (Will Clinger) -; 2-Jul-88 (Will Clinger -- distinguished #f and the empty list) -; 13-Feb-97 (Will Clinger -- fixed bugs in unifier and rules, -; rewrote to eliminate property lists, and added -; a scaling parameter suggested by Bob Boyer) -; 19-Mar-99 (Will Clinger -- cleaned up comments) -; 24-Nov-07 (Will Clinger -- converted to R6RS) -; Language: Scheme -; Status: Public Domain -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -;;; NBOYER -- Logic programming benchmark, originally written by Bob Boyer. -;;; Fairly CONS intensive. - -; Note: The version of this benchmark that appears in Dick Gabriel's book -; contained several bugs that are corrected here. These bugs are discussed -; by Henry Baker, "The Boyer Benchmark Meets Linear Logic", ACM SIGPLAN Lisp -; Pointers 6(4), October-December 1993, pages 3-10. The fixed bugs are: -; -; The benchmark now returns a boolean result. -; FALSEP and TRUEP use TERM-MEMBER? rather than MEMV (which is called MEMBER -; in Common Lisp) -; ONE-WAY-UNIFY1 now treats numbers correctly -; ONE-WAY-UNIFY1-LST now treats empty lists correctly -; Rule 19 has been corrected (this rule was not touched by the original -; benchmark, but is used by this version) -; Rules 84 and 101 have been corrected (but these rules are never touched -; by the benchmark) -; -; According to Baker, these bug fixes make the benchmark 10-25% slower. -; Please do not compare the timings from this benchmark against those of -; the original benchmark. -; -; This version of the benchmark also prints the number of rewrites as a sanity -; check, because it is too easy for a buggy version to return the correct -; boolean result. The correct number of rewrites is -; -; n rewrites peak live storage (approximate, in bytes) -; 0 95024 520,000 -; 1 591777 2,085,000 -; 2 1813975 5,175,000 -; 3 5375678 -; 4 16445406 -; 5 51507739 - -; Nboyer is a 2-phase benchmark. -; The first phase attaches lemmas to symbols. This phase is not timed, -; but it accounts for very little of the runtime anyway. -; The second phase creates the test problem, and tests to see -; whether it is implied by the lemmas. - -(import (scheme base) - (scheme cxr) - (scheme read) - (scheme write) - (scheme time)) - -(define (main) - (let* ((count (read)) - (input (read)) - (output (read)) - (s2 (number->string count)) - (s1 (number->string input)) - (name "nboyer")) - (run-r7rs-benchmark - (string-append name ":" s1 ":" s2) - count - (lambda () - (setup-boyer) - (test-boyer alist term (hide count input))) - (lambda (rewrites) - (and (number? rewrites) (= rewrites output)))))) - -(define alist - (quote ((x f (plus (plus a b) - (plus c (zero)))) - (y f (times (times a b) - (plus c d))) - (z f (reverse (append (append a b) - (nil)))) - (u equal (plus a b) - (difference x y)) - (w lessp (remainder a b) - (member a (length b)))))) - -(define term - (quote (implies (and (implies x y) - (and (implies y z) - (and (implies z u) - (implies u w)))) - (implies x w)))) - -(define (setup-boyer . args) #t) ; assigned below -(define (test-boyer . args) #t) ; assigned below - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; -; The first phase. -; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -; In the original benchmark, it stored a list of lemmas on the -; property lists of symbols. -; In the new benchmark, it maintains an association list of -; symbols and symbol-records, and stores the list of lemmas -; within the symbol-records. - -(let () - - (define (setup) - (add-lemma-lst - (quote ((equal (compile form) - (reverse (codegen (optimize form) - (nil)))) - (equal (eqp x y) - (equal (fix x) - (fix y))) - (equal (greaterp x y) - (lessp y x)) - (equal (lesseqp x y) - (not (lessp y x))) - (equal (greatereqp x y) - (not (lessp x y))) - (equal (boolean x) - (or (equal x (t)) - (equal x (f)))) - (equal (iff x y) - (and (implies x y) - (implies y x))) - (equal (even1 x) - (if (zerop x) - (t) - (odd (_1- x)))) - (equal (countps- l pred) - (countps-loop l pred (zero))) - (equal (fact- i) - (fact-loop i 1)) - (equal (reverse- x) - (reverse-loop x (nil))) - (equal (divides x y) - (zerop (remainder y x))) - (equal (assume-true var alist) - (cons (cons var (t)) - alist)) - (equal (assume-false var alist) - (cons (cons var (f)) - alist)) - (equal (tautology-checker x) - (tautologyp (normalize x) - (nil))) - (equal (falsify x) - (falsify1 (normalize x) - (nil))) - (equal (prime x) - (and (not (zerop x)) - (not (equal x (add1 (zero)))) - (prime1 x (_1- x)))) - (equal (and p q) - (if p (if q (t) - (f)) - (f))) - (equal (or p q) - (if p (t) - (if q (t) - (f)))) - (equal (not p) - (if p (f) - (t))) - (equal (implies p q) - (if p (if q (t) - (f)) - (t))) - (equal (fix x) - (if (numberp x) - x - (zero))) - (equal (if (if a b c) - d e) - (if a (if b d e) - (if c d e))) - (equal (zerop x) - (or (equal x (zero)) - (not (numberp x)))) - (equal (plus (plus x y) - z) - (plus x (plus y z))) - (equal (equal (plus a b) - (zero)) - (and (zerop a) - (zerop b))) - (equal (difference x x) - (zero)) - (equal (equal (plus a b) - (plus a c)) - (equal (fix b) - (fix c))) - (equal (equal (zero) - (difference x y)) - (not (lessp y x))) - (equal (equal x (difference x y)) - (and (numberp x) - (or (equal x (zero)) - (zerop y)))) - (equal (meaning (plus-tree (append x y)) - a) - (plus (meaning (plus-tree x) - a) - (meaning (plus-tree y) - a))) - (equal (meaning (plus-tree (plus-fringe x)) - a) - (fix (meaning x a))) - (equal (append (append x y) - z) - (append x (append y z))) - (equal (reverse (append a b)) - (append (reverse b) - (reverse a))) - (equal (times x (plus y z)) - (plus (times x y) - (times x z))) - (equal (times (times x y) - z) - (times x (times y z))) - (equal (equal (times x y) - (zero)) - (or (zerop x) - (zerop y))) - (equal (exec (append x y) - pds envrn) - (exec y (exec x pds envrn) - envrn)) - (equal (mc-flatten x y) - (append (flatten x) - y)) - (equal (member x (append a b)) - (or (member x a) - (member x b))) - (equal (member x (reverse y)) - (member x y)) - (equal (length (reverse x)) - (length x)) - (equal (member a (intersect b c)) - (and (member a b) - (member a c))) - (equal (nth (zero) - i) - (zero)) - (equal (exp i (plus j k)) - (times (exp i j) - (exp i k))) - (equal (exp i (times j k)) - (exp (exp i j) - k)) - (equal (reverse-loop x y) - (append (reverse x) - y)) - (equal (reverse-loop x (nil)) - (reverse x)) - (equal (count-list z (sort-lp x y)) - (plus (count-list z x) - (count-list z y))) - (equal (equal (append a b) - (append a c)) - (equal b c)) - (equal (plus (remainder x y) - (times y (quotient x y))) - (fix x)) - (equal (power-eval (big-plus1 l i base) - base) - (plus (power-eval l base) - i)) - (equal (power-eval (big-plus x y i base) - base) - (plus i (plus (power-eval x base) - (power-eval y base)))) - (equal (remainder y 1) - (zero)) - (equal (lessp (remainder x y) - y) - (not (zerop y))) - (equal (remainder x x) - (zero)) - (equal (lessp (quotient i j) - i) - (and (not (zerop i)) - (or (zerop j) - (not (equal j 1))))) - (equal (lessp (remainder x y) - x) - (and (not (zerop y)) - (not (zerop x)) - (not (lessp x y)))) - (equal (power-eval (power-rep i base) - base) - (fix i)) - (equal (power-eval (big-plus (power-rep i base) - (power-rep j base) - (zero) - base) - base) - (plus i j)) - (equal (gcd x y) - (gcd y x)) - (equal (nth (append a b) - i) - (append (nth a i) - (nth b (difference i (length a))))) - (equal (difference (plus x y) - x) - (fix y)) - (equal (difference (plus y x) - x) - (fix y)) - (equal (difference (plus x y) - (plus x z)) - (difference y z)) - (equal (times x (difference c w)) - (difference (times c x) - (times w x))) - (equal (remainder (times x z) - z) - (zero)) - (equal (difference (plus b (plus a c)) - a) - (plus b c)) - (equal (difference (add1 (plus y z)) - z) - (add1 y)) - (equal (lessp (plus x y) - (plus x z)) - (lessp y z)) - (equal (lessp (times x z) - (times y z)) - (and (not (zerop z)) - (lessp x y))) - (equal (lessp y (plus x y)) - (not (zerop x))) - (equal (gcd (times x z) - (times y z)) - (times z (gcd x y))) - (equal (value (normalize x) - a) - (value x a)) - (equal (equal (flatten x) - (cons y (nil))) - (and (nlistp x) - (equal x y))) - (equal (listp (gopher x)) - (listp x)) - (equal (samefringe x y) - (equal (flatten x) - (flatten y))) - (equal (equal (greatest-factor x y) - (zero)) - (and (or (zerop y) - (equal y 1)) - (equal x (zero)))) - (equal (equal (greatest-factor x y) - 1) - (equal x 1)) - (equal (numberp (greatest-factor x y)) - (not (and (or (zerop y) - (equal y 1)) - (not (numberp x))))) - (equal (times-list (append x y)) - (times (times-list x) - (times-list y))) - (equal (prime-list (append x y)) - (and (prime-list x) - (prime-list y))) - (equal (equal z (times w z)) - (and (numberp z) - (or (equal z (zero)) - (equal w 1)))) - (equal (greatereqp x y) - (not (lessp x y))) - (equal (equal x (times x y)) - (or (equal x (zero)) - (and (numberp x) - (equal y 1)))) - (equal (remainder (times y x) - y) - (zero)) - (equal (equal (times a b) - 1) - (and (not (equal a (zero))) - (not (equal b (zero))) - (numberp a) - (numberp b) - (equal (_1- a) - (zero)) - (equal (_1- b) - (zero)))) - (equal (lessp (length (delete x l)) - (length l)) - (member x l)) - (equal (sort2 (delete x l)) - (delete x (sort2 l))) - (equal (dsort x) - (sort2 x)) - (equal (length (cons x1 - (cons x2 - (cons x3 (cons x4 - (cons x5 - (cons x6 x7))))))) - (plus 6 (length x7))) - (equal (difference (add1 (add1 x)) - 2) - (fix x)) - (equal (quotient (plus x (plus x y)) - 2) - (plus x (quotient y 2))) - (equal (sigma (zero) - i) - (quotient (times i (add1 i)) - 2)) - (equal (plus x (add1 y)) - (if (numberp y) - (add1 (plus x y)) - (add1 x))) - (equal (equal (difference x y) - (difference z y)) - (if (lessp x y) - (not (lessp y z)) - (if (lessp z y) - (not (lessp y x)) - (equal (fix x) - (fix z))))) - (equal (meaning (plus-tree (delete x y)) - a) - (if (member x y) - (difference (meaning (plus-tree y) - a) - (meaning x a)) - (meaning (plus-tree y) - a))) - (equal (times x (add1 y)) - (if (numberp y) - (plus x (times x y)) - (fix x))) - (equal (nth (nil) - i) - (if (zerop i) - (nil) - (zero))) - (equal (last (append a b)) - (if (listp b) - (last b) - (if (listp a) - (cons (car (last a)) - b) - b))) - (equal (equal (lessp x y) - z) - (if (lessp x y) - (equal (t) z) - (equal (f) z))) - (equal (assignment x (append a b)) - (if (assignedp x a) - (assignment x a) - (assignment x b))) - (equal (car (gopher x)) - (if (listp x) - (car (flatten x)) - (zero))) - (equal (flatten (cdr (gopher x))) - (if (listp x) - (cdr (flatten x)) - (cons (zero) - (nil)))) - (equal (quotient (times y x) - y) - (if (zerop y) - (zero) - (fix x))) - (equal (get j (set i val mem)) - (if (eqp j i) - val - (get j mem))))))) - - (define (add-lemma-lst lst) - (cond ((null? lst) - #t) - (else (add-lemma (car lst)) - (add-lemma-lst (cdr lst))))) - - (define (add-lemma term) - (cond ((and (pair? term) - (eq? (car term) - (quote equal)) - (pair? (cadr term))) - (put (car (cadr term)) - (quote lemmas) - (cons - (translate-term term) - (get (car (cadr term)) (quote lemmas))))) - (else (error #f "ADD-LEMMA did not like term: " term)))) - - ; Translates a term by replacing its constructor symbols by symbol-records. - - (define (translate-term term) - (cond ((not (pair? term)) - term) - (else (cons (symbol->symbol-record (car term)) - (translate-args (cdr term)))))) - - (define (translate-args lst) - (cond ((null? lst) - '()) - (else (cons (translate-term (car lst)) - (translate-args (cdr lst)))))) - - ; For debugging only, so the use of MAP does not change - ; the first-order character of the benchmark. - - (define (untranslate-term term) - (cond ((not (pair? term)) - term) - (else (cons (get-name (car term)) - (map untranslate-term (cdr term)))))) - - ; A symbol-record is represented as a vector with two fields: - ; the symbol (for debugging) and - ; the list of lemmas associated with the symbol. - - (define (put sym property value) - (put-lemmas! (symbol->symbol-record sym) value)) - - (define (get sym property) - (get-lemmas (symbol->symbol-record sym))) - - (define (symbol->symbol-record sym) - (let ((x (assq sym *symbol-records-alist*))) - (if x - (cdr x) - (let ((r (make-symbol-record sym))) - (set! *symbol-records-alist* - (cons (cons sym r) - *symbol-records-alist*)) - r)))) - - ; Association list of symbols and symbol-records. - - (define *symbol-records-alist* '()) - - ; A symbol-record is represented as a vector with two fields: - ; the symbol (for debugging) and - ; the list of lemmas associated with the symbol. - - (define (make-symbol-record sym) - (vector sym '())) - - (define (put-lemmas! symbol-record lemmas) - (vector-set! symbol-record 1 lemmas)) - - (define (get-lemmas symbol-record) - (vector-ref symbol-record 1)) - - (define (get-name symbol-record) - (vector-ref symbol-record 0)) - - (define (symbol-record-equal? r1 r2) - (eq? r1 r2)) - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - ; - ; The second phase. - ; - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (define (test alist term n) - (let ((term - (apply-subst - (translate-alist alist) - (translate-term - (do ((term term (list 'or term '(f))) - (n n (- n 1))) - ((zero? n) term)))))) - (tautp term))) - - (define (translate-alist alist) - (cond ((null? alist) - '()) - (else (cons (cons (caar alist) - (translate-term (cdar alist))) - (translate-alist (cdr alist)))))) - - (define (apply-subst alist term) - (cond ((not (pair? term)) - (let ((temp-temp (assq term alist))) - (if temp-temp - (cdr temp-temp) - term))) - (else (cons (car term) - (apply-subst-lst alist (cdr term)))))) - - (define (apply-subst-lst alist lst) - (cond ((null? lst) - '()) - (else (cons (apply-subst alist (car lst)) - (apply-subst-lst alist (cdr lst)))))) - - (define (tautp x) - (tautologyp (rewrite x) - '() '())) - - (define (tautologyp x true-lst false-lst) - (cond ((truep x true-lst) - #t) - ((falsep x false-lst) - #f) - ((not (pair? x)) - #f) - ((eq? (car x) if-constructor) - (cond ((truep (cadr x) - true-lst) - (tautologyp (caddr x) - true-lst false-lst)) - ((falsep (cadr x) - false-lst) - (tautologyp (cadddr x) - true-lst false-lst)) - (else (and (tautologyp (caddr x) - (cons (cadr x) - true-lst) - false-lst) - (tautologyp (cadddr x) - true-lst - (cons (cadr x) - false-lst)))))) - (else #f))) - - (define if-constructor '*) ; becomes (symbol->symbol-record 'if) - - (define rewrite-count 0) ; sanity check - - (define (rewrite term) - (set! rewrite-count (+ rewrite-count 1)) - (cond ((not (pair? term)) - term) - (else (rewrite-with-lemmas (cons (car term) - (rewrite-args (cdr term))) - (get-lemmas (car term)))))) - - (define (rewrite-args lst) - (cond ((null? lst) - '()) - (else (cons (rewrite (car lst)) - (rewrite-args (cdr lst)))))) - - (define (rewrite-with-lemmas term lst) - (cond ((null? lst) - term) - ((one-way-unify term (cadr (car lst))) - (rewrite (apply-subst unify-subst (caddr (car lst))))) - (else (rewrite-with-lemmas term (cdr lst))))) - - (define unify-subst '*) - - (define (one-way-unify term1 term2) - (begin (set! unify-subst '()) - (one-way-unify1 term1 term2))) - - (define (one-way-unify1 term1 term2) - (cond ((not (pair? term2)) - (let ((temp-temp (assq term2 unify-subst))) - (cond (temp-temp - (term-equal? term1 (cdr temp-temp))) - ((number? term2) ; This bug fix makes - (equal? term1 term2)) ; nboyer 10-25% slower! - (else - (set! unify-subst (cons (cons term2 term1) - unify-subst)) - #t)))) - ((not (pair? term1)) - #f) - ((eq? (car term1) - (car term2)) - (one-way-unify1-lst (cdr term1) - (cdr term2))) - (else #f))) - - (define (one-way-unify1-lst lst1 lst2) - (cond ((null? lst1) - (null? lst2)) - ((null? lst2) - #f) - ((one-way-unify1 (car lst1) - (car lst2)) - (one-way-unify1-lst (cdr lst1) - (cdr lst2))) - (else #f))) - - (define (falsep x lst) - (or (term-equal? x false-term) - (term-member? x lst))) - - (define (truep x lst) - (or (term-equal? x true-term) - (term-member? x lst))) - - (define false-term '*) ; becomes (translate-term '(f)) - (define true-term '*) ; becomes (translate-term '(t)) - - ; The next two procedures were in the original benchmark - ; but were never used. - - (define (trans-of-implies n) - (translate-term - (list (quote implies) - (trans-of-implies1 n) - (list (quote implies) - 0 n)))) - - (define (trans-of-implies1 n) - (cond ((equal? n 1) - (list (quote implies) - 0 1)) - (else (list (quote and) - (list (quote implies) - (- n 1) - n) - (trans-of-implies1 (- n 1)))))) - - ; Translated terms can be circular structures, which can't be - ; compared using Scheme's equal? and member procedures, so we - ; use these instead. - - (define (term-equal? x y) - (cond ((pair? x) - (and (pair? y) - (symbol-record-equal? (car x) (car y)) - (term-args-equal? (cdr x) (cdr y)))) - (else (equal? x y)))) - - (define (term-args-equal? lst1 lst2) - (cond ((null? lst1) - (null? lst2)) - ((null? lst2) - #f) - ((term-equal? (car lst1) (car lst2)) - (term-args-equal? (cdr lst1) (cdr lst2))) - (else #f))) - - (define (term-member? x lst) - (cond ((null? lst) - #f) - ((term-equal? x (car lst)) - #t) - (else (term-member? x (cdr lst))))) - - (set! setup-boyer - (lambda () - (set! *symbol-records-alist* '()) - (set! if-constructor (symbol->symbol-record 'if)) - (set! false-term (translate-term '(f))) - (set! true-term (translate-term '(t))) - (setup))) - - (set! test-boyer - (lambda (alist term n) - (set! rewrite-count 0) - (let ((answer (test alist term n))) -; (write rewrite-count) -; (display " rewrites") -; (newline) - (if answer - rewrite-count - #f))))) - -;;; The following code is appended to all benchmarks. - -;;; Given an integer and an object, returns the object -;;; without making it too easy for compilers to tell -;;; the object will be returned. - -(define (hide r x) - (call-with-values - (lambda () - (values (vector values (lambda (x) x)) - (if (< r 100) 0 1))) - (lambda (v i) - ((vector-ref v i) x)))) - -;;; Given the name of a benchmark, -;;; the number of times it should be executed, -;;; a thunk that runs the benchmark once, -;;; and a unary predicate that is true of the -;;; correct results the thunk may return, -;;; runs the benchmark for the number of specified iterations. - -(define (run-r7rs-benchmark name count thunk ok?) - - ;; Rounds to thousandths. - (define (rounded x) - (/ (round (* 1000 x)) 1000)) - - (display "Running ") - (display name) - (newline) - (flush-output-port) - (let* ((j/s (jiffies-per-second)) - (t0 (current-second)) - (j0 (current-jiffy))) - (let loop ((i 0) - (result (if #f #f))) - (cond ((< i count) - (loop (+ i 1) (thunk))) - ((ok? result) - (let* ((j1 (current-jiffy)) - (t1 (current-second)) - (jifs (- j1 j0)) - (secs (inexact (/ jifs j/s))) - (secs2 (rounded (- t1 t0)))) - (display "Elapsed time: ") - (write secs) - (display " seconds (") - (write secs2) - (display ") for ") - (display name) - (newline)) - result) - (else - (display "ERROR: returned incorrect result: ") - (write result) - (newline) - result))))) - -(main) diff --git a/debug/compilation/boyer/sboyer-cps.scm b/debug/compilation/boyer/sboyer-cps.scm deleted file mode 100644 index 491c76ba..00000000 --- a/debug/compilation/boyer/sboyer-cps.scm +++ /dev/null @@ -1,1357 +0,0 @@ -;; sboyer cps conversion -((define main - (lambda (k$645) - (read (lambda (r$646) - ((lambda (count$258) - (read (lambda (r$647) - ((lambda (input$259) - (read (lambda (r$648) - ((lambda (output$260) - ((lambda (r$649) - ((lambda (s2$261) - ((lambda (r$650) - ((lambda (s1$262) - ((lambda (name$263) - ((lambda () - ((lambda (r$651) - ((lambda (r$652) - ((lambda (r$653) - (run-r7rs-benchmark - k$645 - r$651 - count$258 - r$652 - r$653)) - (lambda (k$654 rewrites$264) - ((lambda (r$655) - (if r$655 - (k$654 (= rewrites$264 output$260)) - (k$654 #f))) - (number? rewrites$264))))) - (lambda (k$656) - (setup-boyer - (lambda (r$657) - (hide (lambda (r$658) - (test-boyer k$656 alist term r$658)) - count$258 - input$259)))))) - (string-append name$263 ":" s1$262 ":" s2$261))))) - "sboyer")) - r$650)) - (number->string input$259))) - r$649)) - (number->string count$258))) - r$648)))) - r$647)))) - r$646))))) - (define alist #f) - (define term #f) - (define setup-boyer (lambda (k$638) (k$638 #t))) - (define test-boyer (lambda (k$635) (k$635 #t))) - (define hide - (lambda (k$621 r$254 x$253) - ((lambda (r$622) - ((lambda (r$623) (call-with-values k$621 r$622 r$623)) - (lambda (k$624 v$256 i$255) - ((lambda (r$625) (r$625 k$624 x$253)) (vector-ref v$256 i$255))))) - (lambda (k$626) - ((lambda (r$631) - (vector - (lambda (r$627) - ((lambda (k$629) - ((lambda (r$630) (if r$630 (k$629 0) (k$629 1))) - (< r$254 100))) - (lambda (r$628) (values k$626 r$627 r$628)))) - values - r$631)) - (lambda (k$632 x$257) (k$632 x$257))))))) - (define run-r7rs-benchmark - (lambda (k$580 name$235 count$234 thunk$233 ok?$232) - ((lambda (rounded$237) - ((lambda (rounded$238) - ((lambda (r$615) - ((lambda (r$581) - (display - (lambda (r$582) - (display - (lambda (r$583) - (newline - (lambda (r$584) - (flush-output-port - (lambda (r$585) - (jiffies-per-second - (lambda (r$586) - ((lambda (j/s$239) - (current-second - (lambda (r$587) - ((lambda (t0$240) - (current-jiffy - (lambda (r$588) - ((lambda (j0$241) - ((lambda () - ((lambda (k$614) (if #f (k$614 #f) (k$614 #f))) - (lambda (r$589) - ((lambda (i$243 result$242) - ((lambda (loop$244) - ((lambda (r$591) - ((lambda (r$590) - (loop$244 k$580 i$243 result$242)) - (set! loop$244 r$591))) - (lambda (k$592 i$246 result$245) - ((lambda (r$593) - (if r$593 - ((lambda () - ((lambda (r$594) - (thunk$233 - (lambda (r$595) (loop$244 k$592 r$594 r$595)))) - (+ i$246 1)))) - (ok?$232 - (lambda (r$596) - (if r$596 - ((lambda () - (current-jiffy - (lambda (r$598) - ((lambda (j1$247) - (current-second - (lambda (r$599) - ((lambda (t1$248) - ((lambda (r$600) - ((lambda (jifs$249) - ((lambda (r$610) - (inexact - (lambda (r$601) - ((lambda (secs$250) - ((lambda (r$609) - (rounded$237 - (lambda (r$602) - ((lambda (secs2$251) - ((lambda () - (display - (lambda (r$603) - (write (lambda (r$604) - (display - (lambda (r$605) - (write (lambda (r$606) - (display - (lambda (r$607) - (display - (lambda (r$608) - (newline (lambda (r$597) (k$592 result$245)))) - name$235)) - ") for ")) - secs2$251)) - " seconds (")) - secs$250)) - "Elapsed time: ")))) - r$602)) - r$609)) - (- t1$248 t0$240))) - r$601)) - r$610)) - (/ jifs$249 j/s$239))) - r$600)) - (- j1$247 j0$241))) - r$599)))) - r$598))))) - ((lambda () - (display - (lambda (r$611) - (write (lambda (r$612) - (newline (lambda (r$613) (k$592 result$245)))) - result$245)) - "ERROR: returned incorrect result: "))))) - result$245))) - (< i$246 count$234))))) - #f)) - 0 - r$589)))))) - r$588)))) - r$587)))) - r$586)))))))) - name$235)) - "Running ")) - (set! rounded$237 r$615))) - (lambda (k$616 x$252) - ((lambda (r$618) - (round (lambda (r$617) (k$616 (/ r$617 1000))) r$618)) - (* 1000 x$252))))) - #f)) - #f))) - ((lambda (*symbol-records-alist*$120 - add-lemma$119 - add-lemma-lst$118 - apply-subst$117 - apply-subst-lst$116 - false-term$115 - falsep$114 - get$113 - get-lemmas$112 - get-name$111 - if-constructor$110 - make-symbol-record$109 - one-way-unify$108 - one-way-unify1$107 - one-way-unify1-lst$106 - put$105 - put-lemmas!$104 - rewrite$103 - rewrite-args$102 - rewrite-count$101 - rewrite-with-lemmas$100 - scons$99 - setup$98 - symbol->symbol-record$97 - symbol-record-equal?$96 - tautologyp$95 - tautp$94 - term-args-equal?$93 - term-equal?$92 - term-member?$91 - test$90 - trans-of-implies$89 - trans-of-implies1$88 - translate-alist$87 - translate-args$86 - translate-term$85 - true-term$84 - truep$83 - unify-subst$82 - untranslate-term$81) - ((lambda () - ((lambda (r$265) - ((lambda (r$577) - ((lambda (r$266) - ((lambda (r$576) - ((lambda (r$267) - ((lambda () - ((lambda (setup$160 - add-lemma-lst$159 - add-lemma$158 - translate-term$157 - translate-args$156 - untranslate-term$155 - put$154 - get$153 - symbol->symbol-record$152 - *symbol-records-alist*$151 - make-symbol-record$150 - put-lemmas!$149 - get-lemmas$148 - get-name$147 - symbol-record-equal?$146 - test$145 - translate-alist$144 - apply-subst$143 - apply-subst-lst$142 - tautp$141 - tautologyp$140 - if-constructor$139 - rewrite-count$138 - scons$137 - rewrite$136 - rewrite-args$135 - rewrite-with-lemmas$134 - unify-subst$133 - one-way-unify$132 - one-way-unify1$131 - one-way-unify1-lst$130 - falsep$129 - truep$128 - false-term$127 - true-term$126 - trans-of-implies$125 - trans-of-implies1$124 - term-equal?$123 - term-args-equal?$122 - term-member?$121) - ((lambda (r$573) - ((lambda (r$269) - ((lambda (r$567) - ((lambda (r$270) - ((lambda (r$549) - ((lambda (r$271) - ((lambda (r$542) - ((lambda (r$272) - ((lambda (r$535) - ((lambda (r$273) - ((lambda (r$528) - ((lambda (r$274) - ((lambda (r$525) - ((lambda (r$275) - ((lambda (r$522) - ((lambda (r$276) - ((lambda (r$515) - ((lambda (r$277) - ((lambda (r$514) - ((lambda (r$278) - ((lambda (r$511) - ((lambda (r$279) - ((lambda (r$509) - ((lambda (r$280) - ((lambda (r$507) - ((lambda (r$281) - ((lambda (r$505) - ((lambda (r$282) - ((lambda (r$503) - ((lambda (r$283) - ((lambda (r$489) - ((lambda (r$284) - ((lambda (r$480) - ((lambda (r$285) - ((lambda (r$473) - ((lambda (r$286) - ((lambda (r$466) - ((lambda (r$287) - ((lambda (r$461) - ((lambda (r$288) - ((lambda (r$441) - ((lambda (r$289) - ((lambda (r$440) - ((lambda (r$290) - ((lambda (r$291) - ((lambda (r$433) - ((lambda (r$292) - ((lambda (r$422) - ((lambda (r$293) - ((lambda (r$415) - ((lambda (r$294) - ((lambda (r$405) - ((lambda (r$295) - ((lambda (r$404) - ((lambda (r$296) - ((lambda (r$400) - ((lambda (r$297) - ((lambda (r$385) - ((lambda (r$298) - ((lambda (r$376) - ((lambda (r$299) - ((lambda (r$373) - ((lambda (r$300) - ((lambda (r$370) - ((lambda (r$301) - ((lambda (r$369) - ((lambda (r$302) - ((lambda (r$368) - ((lambda (r$303) - ((lambda (r$361) - ((lambda (r$304) - ((lambda (r$351) - ((lambda (r$305) - ((lambda (r$342) - ((lambda (r$306) - ((lambda (r$333) - ((lambda (r$307) - ((lambda (r$327) - ((lambda (r$308) - ((lambda (r$314) - ((lambda (r$309) - ((lambda (r$310) - ((lambda (r$268) (main %halt)) - (set! test-boyer r$310))) - (lambda (k$311 alist$163 term$162 n$161) - ((lambda (r$312) - (test$145 - (lambda (r$313) - ((lambda (answer$164) - (if answer$164 - (k$311 rewrite-count$138) - (k$311 #f))) - r$313)) - alist$163 - term$162 - n$161)) - (set! rewrite-count$138 0))))) - (set! setup-boyer r$314))) - (lambda (k$315) - ((lambda (r$326) - ((lambda (r$316) - ((lambda (r$325) - (symbol->symbol-record$152 - (lambda (r$324) - ((lambda (r$317) - ((lambda (r$323) - (translate-term$157 - (lambda (r$322) - ((lambda (r$318) - ((lambda (r$321) - (translate-term$157 - (lambda (r$320) - ((lambda (r$319) (setup$160 k$315)) - (set! true-term$126 r$320))) - r$321)) - '(t))) - (set! false-term$127 r$322))) - r$323)) - '(f))) - (set! if-constructor$139 r$324))) - r$325)) - 'if)) - (set! *symbol-records-alist*$151 r$326))) - '())))) - (set! term-member?$121 r$327))) - (lambda (k$328 x$166 lst$165) - ((lambda (r$329) - (if r$329 - ((lambda () (k$328 #f))) - ((lambda (r$332) - (term-equal?$123 - (lambda (r$330) - (if r$330 - ((lambda () (k$328 #t))) - ((lambda () - ((lambda (r$331) - (term-member?$121 k$328 x$166 r$331)) - (cdr lst$165)))))) - x$166 - r$332)) - (car lst$165)))) - (null? lst$165))))) - (set! term-args-equal?$122 r$333))) - (lambda (k$334 lst1$168 lst2$167) - ((lambda (r$335) - (if r$335 - ((lambda () (k$334 (null? lst2$167)))) - ((lambda (r$336) - (if r$336 - ((lambda () (k$334 #f))) - ((lambda (r$340) - ((lambda (r$341) - (term-equal?$123 - (lambda (r$337) - (if r$337 - ((lambda () - ((lambda (r$338) - ((lambda (r$339) - (term-args-equal?$122 k$334 r$338 r$339)) - (cdr lst2$167))) - (cdr lst1$168)))) - ((lambda () (k$334 #f))))) - r$340 - r$341)) - (car lst2$167))) - (car lst1$168)))) - (null? lst2$167)))) - (null? lst1$168))))) - (set! term-equal?$123 r$342))) - (lambda (k$343 x$170 y$169) - ((lambda (r$344) - (if r$344 - ((lambda () - ((lambda (r$345) - (if r$345 - ((lambda (r$349) - ((lambda (r$350) - (symbol-record-equal?$146 - (lambda (r$346) - (if r$346 - ((lambda (r$347) - ((lambda (r$348) - (term-args-equal?$122 k$343 r$347 r$348)) - (cdr y$169))) - (cdr x$170)) - (k$343 #f))) - r$349 - r$350)) - (car y$169))) - (car x$170)) - (k$343 #f))) - (pair? y$169)))) - ((lambda () (k$343 (equal? x$170 y$169)))))) - (pair? x$170))))) - (set! trans-of-implies1$124 r$351))) - (lambda (k$352 n$171) - ((lambda (r$353) - (if r$353 - ((lambda () - ((lambda (r$354) (list k$352 r$354 0 1)) - 'implies))) - ((lambda () - ((lambda (r$355) - ((lambda (r$359) - ((lambda (r$360) - (list (lambda (r$356) - ((lambda (r$358) - (trans-of-implies1$124 - (lambda (r$357) (list k$352 r$355 r$356 r$357)) - r$358)) - (- n$171 1))) - r$359 - r$360 - n$171)) - (- n$171 1))) - 'implies)) - 'and))))) - (equal? n$171 1))))) - (set! trans-of-implies$125 r$361))) - (lambda (k$362 n$172) - ((lambda (r$364) - (trans-of-implies1$124 - (lambda (r$365) - ((lambda (r$367) - (list (lambda (r$366) - (list (lambda (r$363) (translate-term$157 k$362 r$363)) - r$364 - r$365 - r$366)) - r$367 - 0 - n$172)) - 'implies)) - n$172)) - 'implies)))) - (set! true-term$126 r$368))) - '*)) - (set! false-term$127 r$369))) - '*)) - (set! truep$128 r$370))) - (lambda (k$371 x$174 lst$173) - (term-equal?$123 - (lambda (r$372) - ((lambda (tmp$175) - (if tmp$175 - (k$371 tmp$175) - (term-member?$121 k$371 x$174 lst$173))) - r$372)) - x$174 - true-term$126)))) - (set! falsep$129 r$373))) - (lambda (k$374 x$177 lst$176) - (term-equal?$123 - (lambda (r$375) - ((lambda (tmp$178) - (if tmp$178 - (k$374 tmp$178) - (term-member?$121 k$374 x$177 lst$176))) - r$375)) - x$177 - false-term$127)))) - (set! one-way-unify1-lst$130 r$376))) - (lambda (k$377 lst1$180 lst2$179) - ((lambda (r$378) - (if r$378 - ((lambda () (k$377 (null? lst2$179)))) - ((lambda (r$379) - (if r$379 - ((lambda () (k$377 #f))) - ((lambda (r$383) - ((lambda (r$384) - (one-way-unify1$131 - (lambda (r$380) - (if r$380 - ((lambda () - ((lambda (r$381) - ((lambda (r$382) - (one-way-unify1-lst$130 k$377 r$381 r$382)) - (cdr lst2$179))) - (cdr lst1$180)))) - ((lambda () (k$377 #f))))) - r$383 - r$384)) - (car lst2$179))) - (car lst1$180)))) - (null? lst2$179)))) - (null? lst1$180))))) - (set! one-way-unify1$131 r$385))) - (lambda (k$386 term1$182 term2$181) - ((lambda (r$387) - (if r$387 - ((lambda (r$388) - (if r$388 - ((lambda (r$392) - ((lambda (r$393) - ((lambda (r$389) - (if r$389 - ((lambda () - ((lambda (r$390) - ((lambda (r$391) - (one-way-unify1-lst$130 k$386 r$390 r$391)) - (cdr term2$181))) - (cdr term1$182)))) - ((lambda () (k$386 #f))))) - (eq? r$392 r$393))) - (car term2$181))) - (car term1$182)) - ((lambda () (k$386 #f))))) - (pair? term1$182)) - ((lambda () - ((lambda (r$394) - ((lambda (temp-temp$183) - (if temp-temp$183 - ((lambda () - ((lambda (r$395) - (term-equal?$123 k$386 term1$182 r$395)) - (cdr temp-temp$183)))) - ((lambda (r$396) - (if r$396 - ((lambda () (k$386 (equal? term1$182 term2$181)))) - ((lambda () - ((lambda (r$399) - ((lambda (r$398) - ((lambda (r$397) (k$386 #t)) - (set! unify-subst$133 r$398))) - (cons r$399 unify-subst$133))) - (cons term2$181 term1$182)))))) - (number? term2$181)))) - r$394)) - (assq term2$181 unify-subst$133)))))) - (pair? term2$181))))) - (set! one-way-unify$132 r$400))) - (lambda (k$401 term1$185 term2$184) - ((lambda (r$403) - ((lambda (r$402) - (one-way-unify1$131 k$401 term1$185 term2$184)) - (set! unify-subst$133 r$403))) - '())))) - (set! unify-subst$133 r$404))) - '*)) - (set! rewrite-with-lemmas$134 r$405))) - (lambda (k$406 term$187 lst$186) - ((lambda (r$407) - (if r$407 - ((lambda () (k$406 term$187))) - ((lambda (r$414) - ((lambda (r$413) - (one-way-unify$132 - (lambda (r$408) - (if r$408 - ((lambda () - ((lambda (r$411) - ((lambda (r$410) - (apply-subst$143 - (lambda (r$409) (rewrite$136 k$406 r$409)) - unify-subst$133 - r$410)) - (caddr r$411))) - (car lst$186)))) - ((lambda () - ((lambda (r$412) - (rewrite-with-lemmas$134 k$406 term$187 r$412)) - (cdr lst$186)))))) - term$187 - r$413)) - (cadr r$414))) - (car lst$186)))) - (null? lst$186))))) - (set! rewrite-args$135 r$415))) - (lambda (k$416 lst$188) - ((lambda (r$417) - (if r$417 - ((lambda () (k$416 '()))) - ((lambda () - ((lambda (r$421) - (rewrite$136 - (lambda (r$418) - ((lambda (r$420) - (rewrite-args$135 - (lambda (r$419) - (scons$137 k$416 r$418 r$419 lst$188)) - r$420)) - (cdr lst$188))) - r$421)) - (car lst$188)))))) - (null? lst$188))))) - (set! rewrite$136 r$422))) - (lambda (k$423 term$189) - ((lambda (r$432) - ((lambda (r$424) - ((lambda (r$425) - (if r$425 - ((lambda () - ((lambda (r$429) - ((lambda (r$431) - (rewrite-args$135 - (lambda (r$430) - (scons$137 - (lambda (r$426) - ((lambda (r$428) - (get-lemmas$148 - (lambda (r$427) - (rewrite-with-lemmas$134 k$423 r$426 r$427)) - r$428)) - (car term$189))) - r$429 - r$430 - term$189)) - r$431)) - (cdr term$189))) - (car term$189)))) - ((lambda () (k$423 term$189))))) - (pair? term$189))) - (set! rewrite-count$138 r$432))) - (+ rewrite-count$138 1))))) - (set! scons$137 r$433))) - (lambda (k$434 x$192 y$191 original$190) - ((lambda (k$436) - ((lambda (r$439) - ((lambda (r$437) - (if r$437 - ((lambda (r$438) (k$436 (eq? y$191 r$438))) - (cdr original$190)) - (k$436 #f))) - (eq? x$192 r$439))) - (car original$190))) - (lambda (r$435) - (if r$435 - (k$434 original$190) - (k$434 (cons x$192 y$191)))))))) - (set! rewrite-count$138 0))) - (set! if-constructor$139 r$440))) - '*)) - (set! tautologyp$140 r$441))) - (lambda (k$442 x$195 true-lst$194 false-lst$193) - (truep$128 - (lambda (r$443) - (if r$443 - ((lambda () (k$442 #t))) - (falsep$129 - (lambda (r$444) - (if r$444 - ((lambda () (k$442 #f))) - ((lambda (r$445) - (if r$445 - ((lambda (r$460) - ((lambda (r$446) - (if r$446 - ((lambda () - ((lambda (r$459) - (truep$128 - (lambda (r$447) - (if r$447 - ((lambda () - ((lambda (r$448) - (tautologyp$140 - k$442 - r$448 - true-lst$194 - false-lst$193)) - (caddr x$195)))) - ((lambda (r$458) - (falsep$129 - (lambda (r$449) - (if r$449 - ((lambda () - ((lambda (r$450) - (tautologyp$140 - k$442 - r$450 - true-lst$194 - false-lst$193)) - (cadddr x$195)))) - ((lambda () - ((lambda (r$455) - ((lambda (r$457) - ((lambda (r$456) - (tautologyp$140 - (lambda (r$451) - (if r$451 - ((lambda (r$452) - ((lambda (r$454) - ((lambda (r$453) - (tautologyp$140 k$442 r$452 true-lst$194 r$453)) - (cons r$454 false-lst$193))) - (cadr x$195))) - (cadddr x$195)) - (k$442 #f))) - r$455 - r$456 - false-lst$193)) - (cons r$457 true-lst$194))) - (cadr x$195))) - (caddr x$195)))))) - r$458 - false-lst$193)) - (cadr x$195)))) - r$459 - true-lst$194)) - (cadr x$195)))) - ((lambda () (k$442 #f))))) - (eq? r$460 if-constructor$139))) - (car x$195)) - ((lambda () (k$442 #f))))) - (pair? x$195)))) - x$195 - false-lst$193))) - x$195 - true-lst$194)))) - (set! tautp$141 r$461))) - (lambda (k$462 x$196) - (rewrite$136 - (lambda (r$463) - ((lambda (r$464) - ((lambda (r$465) - (tautologyp$140 k$462 r$463 r$464 r$465)) - '())) - '())) - x$196)))) - (set! apply-subst-lst$142 r$466))) - (lambda (k$467 alist$198 lst$197) - ((lambda (r$468) - (if r$468 - ((lambda () (k$467 '()))) - ((lambda () - ((lambda (r$472) - (apply-subst$143 - (lambda (r$469) - ((lambda (r$471) - (apply-subst-lst$142 - (lambda (r$470) (k$467 (cons r$469 r$470))) - alist$198 - r$471)) - (cdr lst$197))) - alist$198 - r$472)) - (car lst$197)))))) - (null? lst$197))))) - (set! apply-subst$143 r$473))) - (lambda (k$474 alist$200 term$199) - ((lambda (r$475) - (if r$475 - ((lambda () - ((lambda (r$476) - ((lambda (r$478) - (apply-subst-lst$142 - (lambda (r$477) (k$474 (cons r$476 r$477))) - alist$200 - r$478)) - (cdr term$199))) - (car term$199)))) - ((lambda () - ((lambda (r$479) - ((lambda (temp-temp$201) - (if temp-temp$201 - (k$474 (cdr temp-temp$201)) - (k$474 term$199))) - r$479)) - (assq term$199 alist$200)))))) - (pair? term$199))))) - (set! translate-alist$144 r$480))) - (lambda (k$481 alist$202) - ((lambda (r$482) - (if r$482 - ((lambda () (k$481 '()))) - ((lambda () - ((lambda (r$486) - ((lambda (r$488) - (translate-term$157 - (lambda (r$487) - ((lambda (r$483) - ((lambda (r$485) - (translate-alist$144 - (lambda (r$484) (k$481 (cons r$483 r$484))) - r$485)) - (cdr alist$202))) - (cons r$486 r$487))) - r$488)) - (cdar alist$202))) - (caar alist$202)))))) - (null? alist$202))))) - (set! test$145 r$489))) - (lambda (k$490 alist$205 term$204 n$203) - (translate-alist$144 - (lambda (r$492) - ((lambda (term$207 n$206) - ((lambda (lp$208) - ((lambda (r$496) - ((lambda (r$495) - (lp$208 - (lambda (r$494) - (translate-term$157 - (lambda (r$493) - (apply-subst$143 - (lambda (r$491) - ((lambda (term$211) (tautp$141 k$490 term$211)) - r$491)) - r$492 - r$493)) - r$494)) - term$207 - n$206)) - (set! lp$208 r$496))) - (lambda (k$497 term$210 n$209) - (zero? (lambda (r$498) - (if r$498 - (k$497 term$210) - ((lambda (r$501) - ((lambda (r$502) - (list (lambda (r$499) - ((lambda (r$500) (lp$208 k$497 r$499 r$500)) - (- n$209 1))) - r$501 - term$210 - r$502)) - '(f))) - 'or))) - n$209)))) - #f)) - term$204 - n$203)) - alist$205)))) - (set! symbol-record-equal?$146 r$503))) - (lambda (k$504 r1$213 r2$212) - (k$504 (eq? r1$213 r2$212))))) - (set! get-name$147 r$505))) - (lambda (k$506 symbol-record$214) - (k$506 (vector-ref symbol-record$214 0))))) - (set! get-lemmas$148 r$507))) - (lambda (k$508 symbol-record$215) - (k$508 (vector-ref symbol-record$215 1))))) - (set! put-lemmas!$149 r$509))) - (lambda (k$510 symbol-record$217 lemmas$216) - (k$510 (vector-set! symbol-record$217 1 lemmas$216))))) - (set! make-symbol-record$150 r$511))) - (lambda (k$512 sym$218) - ((lambda (r$513) (vector k$512 sym$218 r$513)) - '())))) - (set! *symbol-records-alist*$151 r$514))) - '())) - (set! symbol->symbol-record$152 r$515))) - (lambda (k$516 sym$219) - ((lambda (r$517) - ((lambda (x$220) - (if x$220 - (k$516 (cdr x$220)) - (make-symbol-record$150 - (lambda (r$518) - ((lambda (r$221) - ((lambda (r$521) - ((lambda (r$520) - ((lambda (r$519) (k$516 r$221)) - (set! *symbol-records-alist*$151 r$520))) - (cons r$521 *symbol-records-alist*$151))) - (cons sym$219 r$221))) - r$518)) - sym$219))) - r$517)) - (assq sym$219 *symbol-records-alist*$151))))) - (set! get$153 r$522))) - (lambda (k$523 sym$223 property$222) - (symbol->symbol-record$152 - (lambda (r$524) (get-lemmas$148 k$523 r$524)) - sym$223)))) - (set! put$154 r$525))) - (lambda (k$526 sym$226 property$225 value$224) - (symbol->symbol-record$152 - (lambda (r$527) - (put-lemmas!$149 k$526 r$527 value$224)) - sym$226)))) - (set! untranslate-term$155 r$528))) - (lambda (k$529 term$227) - ((lambda (r$530) - (if r$530 - ((lambda () - ((lambda (r$534) - (get-name$147 - (lambda (r$531) - ((lambda (r$533) - (map (lambda (r$532) (k$529 (cons r$531 r$532))) - untranslate-term$155 - r$533)) - (cdr term$227))) - r$534)) - (car term$227)))) - ((lambda () (k$529 term$227))))) - (pair? term$227))))) - (set! translate-args$156 r$535))) - (lambda (k$536 lst$228) - ((lambda (r$537) - (if r$537 - ((lambda () (k$536 '()))) - ((lambda () - ((lambda (r$541) - (translate-term$157 - (lambda (r$538) - ((lambda (r$540) - (translate-args$156 - (lambda (r$539) (k$536 (cons r$538 r$539))) - r$540)) - (cdr lst$228))) - r$541)) - (car lst$228)))))) - (null? lst$228))))) - (set! translate-term$157 r$542))) - (lambda (k$543 term$229) - ((lambda (r$544) - (if r$544 - ((lambda () - ((lambda (r$548) - (symbol->symbol-record$152 - (lambda (r$545) - ((lambda (r$547) - (translate-args$156 - (lambda (r$546) (k$543 (cons r$545 r$546))) - r$547)) - (cdr term$229))) - r$548)) - (car term$229)))) - ((lambda () (k$543 term$229))))) - (pair? term$229))))) - (set! add-lemma$158 r$549))) - (lambda (k$550 term$230) - ((lambda (k$561) - ((lambda (r$562) - (if r$562 - ((lambda (r$565) - ((lambda (r$566) - ((lambda (r$563) - (if r$563 - ((lambda (r$564) (k$561 (pair? r$564))) - (cadr term$230)) - (k$561 #f))) - (eq? r$565 r$566))) - 'equal)) - (car term$230)) - (k$561 #f))) - (pair? term$230))) - (lambda (r$551) - (if r$551 - ((lambda () - ((lambda (r$560) - ((lambda (r$552) - ((lambda (r$553) - (translate-term$157 - (lambda (r$555) - ((lambda (r$559) - ((lambda (r$557) - ((lambda (r$558) - (get$153 - (lambda (r$556) - ((lambda (r$554) - (put$154 k$550 r$552 r$553 r$554)) - (cons r$555 r$556))) - r$557 - r$558)) - 'lemmas)) - (car r$559))) - (cadr term$230))) - term$230)) - 'lemmas)) - (car r$560))) - (cadr term$230)))) - ((lambda () - (error k$550 - #f - "ADD-LEMMA did not like term: " - term$230))))))))) - (set! add-lemma-lst$159 r$567))) - (lambda (k$568 lst$231) - ((lambda (r$569) - (if r$569 - ((lambda () (k$568 #t))) - ((lambda () - ((lambda (r$572) - (add-lemma$158 - (lambda (r$570) - ((lambda (r$571) (add-lemma-lst$159 k$568 r$571)) - (cdr lst$231))) - r$572)) - (car lst$231)))))) - (null? lst$231))))) - (set! setup$160 r$573))) - (lambda (k$574) - ((lambda (r$575) (add-lemma-lst$159 k$574 r$575)) - '((equal (compile form) - (reverse (codegen (optimize form) (nil)))) - (equal (eqp x y) (equal (fix x) (fix y))) - (equal (greaterp x y) (lessp y x)) - (equal (lesseqp x y) (not (lessp y x))) - (equal (greatereqp x y) (not (lessp x y))) - (equal (boolean x) - (or (equal x (t)) (equal x (f)))) - (equal (iff x y) - (and (implies x y) (implies y x))) - (equal (even1 x) - (if (zerop x) (t) (odd (_1- x)))) - (equal (countps- l pred) - (countps-loop l pred (zero))) - (equal (fact- i) (fact-loop i 1)) - (equal (reverse- x) (reverse-loop x (nil))) - (equal (divides x y) (zerop (remainder y x))) - (equal (assume-true var alist) - (cons (cons var (t)) alist)) - (equal (assume-false var alist) - (cons (cons var (f)) alist)) - (equal (tautology-checker x) - (tautologyp (normalize x) (nil))) - (equal (falsify x) - (falsify1 (normalize x) (nil))) - (equal (prime x) - (and (not (zerop x)) - (not (equal x (add1 (zero)))) - (prime1 x (_1- x)))) - (equal (and p q) (if p (if q (t) (f)) (f))) - (equal (or p q) (if p (t) (if q (t) (f)))) - (equal (not p) (if p (f) (t))) - (equal (implies p q) (if p (if q (t) (f)) (t))) - (equal (fix x) (if (numberp x) x (zero))) - (equal (if (if a b c) d e) - (if a (if b d e) (if c d e))) - (equal (zerop x) - (or (equal x (zero)) (not (numberp x)))) - (equal (plus (plus x y) z) (plus x (plus y z))) - (equal (equal (plus a b) (zero)) - (and (zerop a) (zerop b))) - (equal (difference x x) (zero)) - (equal (equal (plus a b) (plus a c)) - (equal (fix b) (fix c))) - (equal (equal (zero) (difference x y)) - (not (lessp y x))) - (equal (equal x (difference x y)) - (and (numberp x) (or (equal x (zero)) (zerop y)))) - (equal (meaning (plus-tree (append x y)) a) - (plus (meaning (plus-tree x) a) - (meaning (plus-tree y) a))) - (equal (meaning (plus-tree (plus-fringe x)) a) - (fix (meaning x a))) - (equal (append (append x y) z) - (append x (append y z))) - (equal (reverse (append a b)) - (append (reverse b) (reverse a))) - (equal (times x (plus y z)) - (plus (times x y) (times x z))) - (equal (times (times x y) z) - (times x (times y z))) - (equal (equal (times x y) (zero)) - (or (zerop x) (zerop y))) - (equal (exec (append x y) pds envrn) - (exec y (exec x pds envrn) envrn)) - (equal (mc-flatten x y) (append (flatten x) y)) - (equal (member x (append a b)) - (or (member x a) (member x b))) - (equal (member x (reverse y)) (member x y)) - (equal (length (reverse x)) (length x)) - (equal (member a (intersect b c)) - (and (member a b) (member a c))) - (equal (nth (zero) i) (zero)) - (equal (exp i (plus j k)) - (times (exp i j) (exp i k))) - (equal (exp i (times j k)) (exp (exp i j) k)) - (equal (reverse-loop x y) (append (reverse x) y)) - (equal (reverse-loop x (nil)) (reverse x)) - (equal (count-list z (sort-lp x y)) - (plus (count-list z x) (count-list z y))) - (equal (equal (append a b) (append a c)) - (equal b c)) - (equal (plus (remainder x y) (times y (quotient x y))) - (fix x)) - (equal (power-eval (big-plus1 l i base) base) - (plus (power-eval l base) i)) - (equal (power-eval (big-plus x y i base) base) - (plus i - (plus (power-eval x base) (power-eval y base)))) - (equal (remainder y 1) (zero)) - (equal (lessp (remainder x y) y) (not (zerop y))) - (equal (remainder x x) (zero)) - (equal (lessp (quotient i j) i) - (and (not (zerop i)) - (or (zerop j) (not (equal j 1))))) - (equal (lessp (remainder x y) x) - (and (not (zerop y)) - (not (zerop x)) - (not (lessp x y)))) - (equal (power-eval (power-rep i base) base) - (fix i)) - (equal (power-eval - (big-plus - (power-rep i base) - (power-rep j base) - (zero) - base) - base) - (plus i j)) - (equal (gcd x y) (gcd y x)) - (equal (nth (append a b) i) - (append - (nth a i) - (nth b (difference i (length a))))) - (equal (difference (plus x y) x) (fix y)) - (equal (difference (plus y x) x) (fix y)) - (equal (difference (plus x y) (plus x z)) - (difference y z)) - (equal (times x (difference c w)) - (difference (times c x) (times w x))) - (equal (remainder (times x z) z) (zero)) - (equal (difference (plus b (plus a c)) a) - (plus b c)) - (equal (difference (add1 (plus y z)) z) (add1 y)) - (equal (lessp (plus x y) (plus x z)) (lessp y z)) - (equal (lessp (times x z) (times y z)) - (and (not (zerop z)) (lessp x y))) - (equal (lessp y (plus x y)) (not (zerop x))) - (equal (gcd (times x z) (times y z)) - (times z (gcd x y))) - (equal (value (normalize x) a) (value x a)) - (equal (equal (flatten x) (cons y (nil))) - (and (nlistp x) (equal x y))) - (equal (listp (gopher x)) (listp x)) - (equal (samefringe x y) - (equal (flatten x) (flatten y))) - (equal (equal (greatest-factor x y) (zero)) - (and (or (zerop y) (equal y 1)) (equal x (zero)))) - (equal (equal (greatest-factor x y) 1) - (equal x 1)) - (equal (numberp (greatest-factor x y)) - (not (and (or (zerop y) (equal y 1)) - (not (numberp x))))) - (equal (times-list (append x y)) - (times (times-list x) (times-list y))) - (equal (prime-list (append x y)) - (and (prime-list x) (prime-list y))) - (equal (equal z (times w z)) - (and (numberp z) - (or (equal z (zero)) (equal w 1)))) - (equal (greatereqp x y) (not (lessp x y))) - (equal (equal x (times x y)) - (or (equal x (zero)) - (and (numberp x) (equal y 1)))) - (equal (remainder (times y x) y) (zero)) - (equal (equal (times a b) 1) - (and (not (equal a (zero))) - (not (equal b (zero))) - (numberp a) - (numberp b) - (equal (_1- a) (zero)) - (equal (_1- b) (zero)))) - (equal (lessp (length (delete x l)) (length l)) - (member x l)) - (equal (sort2 (delete x l)) (delete x (sort2 l))) - (equal (dsort x) (sort2 x)) - (equal (length - (cons x1 - (cons x2 - (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) - (plus 6 (length x7))) - (equal (difference (add1 (add1 x)) 2) (fix x)) - (equal (quotient (plus x (plus x y)) 2) - (plus x (quotient y 2))) - (equal (sigma (zero) i) - (quotient (times i (add1 i)) 2)) - (equal (plus x (add1 y)) - (if (numberp y) (add1 (plus x y)) (add1 x))) - (equal (equal (difference x y) (difference z y)) - (if (lessp x y) - (not (lessp y z)) - (if (lessp z y) - (not (lessp y x)) - (equal (fix x) (fix z))))) - (equal (meaning (plus-tree (delete x y)) a) - (if (member x y) - (difference - (meaning (plus-tree y) a) - (meaning x a)) - (meaning (plus-tree y) a))) - (equal (times x (add1 y)) - (if (numberp y) (plus x (times x y)) (fix x))) - (equal (nth (nil) i) (if (zerop i) (nil) (zero))) - (equal (last (append a b)) - (if (listp b) - (last b) - (if (listp a) (cons (car (last a)) b) b))) - (equal (equal (lessp x y) z) - (if (lessp x y) (equal (t) z) (equal (f) z))) - (equal (assignment x (append a b)) - (if (assignedp x a) - (assignment x a) - (assignment x b))) - (equal (car (gopher x)) - (if (listp x) (car (flatten x)) (zero))) - (equal (flatten (cdr (gopher x))) - (if (listp x) - (cdr (flatten x)) - (cons (zero) (nil)))) - (equal (quotient (times y x) y) - (if (zerop y) (zero) (fix x))) - (equal (get j (set i val mem)) - (if (eqp j i) val (get j mem)))))))) - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f)))) - (set! term r$576))) - '(implies - (and (implies x y) - (and (implies y z) (and (implies z u) (implies u w)))) - (implies x w)))) - (set! alist r$577))) - '((x f (plus (plus a b) (plus c (zero)))) - (y f (times (times a b) (plus c d))) - (z f (reverse (append (append a b) (nil)))) - (u equal (plus a b) (difference x y)) - (w lessp (remainder a b) (member a (length b)))))) - 0)))) - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f - #f)) -#;1> diff --git a/debug/compilation/boyer/sboyer.c b/debug/compilation/boyer/sboyer.c deleted file mode 100644 index d448f422..00000000 --- a/debug/compilation/boyer/sboyer.c +++ /dev/null @@ -1,17115 +0,0 @@ -/** - ** This file was automatically generated by the Cyclone scheme compiler - ** - ** (c) 2014-2016 Justin Ethier - ** Version 0.0.5 (Pre-release) - ** - **/ - -/* -"---------------- input program:" */ -/* -((import (scheme base) (scheme cxr) (scheme read) (scheme write) (scheme time)) (define (main) (let* ((count (read)) (input (read)) (output (read)) (s2 (number->string count)) (s1 (number->string input)) (name "sboyer")) (run-r7rs-benchmark (string-append name ":" s1 ":" s2) count (lambda () (setup-boyer) (test-boyer alist term (hide count input))) (lambda (rewrites) (and (number? rewrites) (= rewrites output)))))) (define alist (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b)))))) (define term (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w)))) (define (setup-boyer) #t) (define (test-boyer) #t) (let () (define (setup) (add-lemma-lst (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem))))))) (define (add-lemma-lst lst) (cond ((null? lst) #t) (else (add-lemma (car lst)) (add-lemma-lst (cdr lst))))) (define (add-lemma term) (cond ((and (pair? term) (eq? (car term) (quote equal)) (pair? (cadr term))) (put (car (cadr term)) (quote lemmas) (cons (translate-term term) (get (car (cadr term)) (quote lemmas))))) (else (error #f "ADD-LEMMA did not like term: " term)))) (define (translate-term term) (cond ((not (pair? term)) term) (else (cons (symbol->symbol-record (car term)) (translate-args (cdr term)))))) (define (translate-args lst) (cond ((null? lst) (quote ())) (else (cons (translate-term (car lst)) (translate-args (cdr lst)))))) (define (untranslate-term term) (cond ((not (pair? term)) term) (else (cons (get-name (car term)) (map untranslate-term (cdr term)))))) (define (put sym property value) (put-lemmas! (symbol->symbol-record sym) value)) (define (get sym property) (get-lemmas (symbol->symbol-record sym))) (define (symbol->symbol-record sym) (let ((x (assq sym *symbol-records-alist*))) (if x (cdr x) (let ((r (make-symbol-record sym))) (set! *symbol-records-alist* (cons (cons sym r) *symbol-records-alist*)) r)))) (define *symbol-records-alist* (quote ())) (define (make-symbol-record sym) (vector sym (quote ()))) (define (put-lemmas! symbol-record lemmas) (vector-set! symbol-record 1 lemmas)) (define (get-lemmas symbol-record) (vector-ref symbol-record 1)) (define (get-name symbol-record) (vector-ref symbol-record 0)) (define (symbol-record-equal? r1 r2) (eq? r1 r2)) (define (test alist term n) (let ((term (apply-subst (translate-alist alist) (translate-term (do ((term term (list (quote or) term (quote (f))) ...) (n n (- n 1) ...)) ((zero? n) term)))))) (tautp term))) (define (translate-alist alist) (cond ((null? alist) (quote ())) (else (cons (cons (caar alist) (translate-term (cdar alist))) (translate-alist (cdr alist)))))) (define (apply-subst alist term) (cond ((not (pair? term)) (let ((temp-temp (assq term alist))) (if temp-temp (cdr temp-temp) term))) (else (cons (car term) (apply-subst-lst alist (cdr term)))))) (define (apply-subst-lst alist lst) (cond ((null? lst) (quote ())) (else (cons (apply-subst alist (car lst)) (apply-subst-lst alist (cdr lst)))))) (define (tautp x) (tautologyp (rewrite x) (quote ()) (quote ()))) (define (tautologyp x true-lst false-lst) (cond ((truep x true-lst) #t) ((falsep x false-lst) #f) ((not (pair? x)) #f) ((eq? (car x) if-constructor) (cond ((truep (cadr x) true-lst) (tautologyp (caddr x) true-lst false-lst)) ((falsep (cadr x) false-lst) (tautologyp (cadddr x) true-lst false-lst)) (else (and (tautologyp (caddr x) (cons (cadr x) true-lst) false-lst) (tautologyp (cadddr x) true-lst (cons (cadr x) false-lst)))))) (else #f))) (define if-constructor (quote *)) (define rewrite-count 0) (define (scons x y original) (if (and (eq? x (car original)) (eq? y (cdr original))) original (cons x y))) (define (rewrite term) (set! rewrite-count (+ rewrite-count 1)) (cond ((not (pair? term)) term) (else (rewrite-with-lemmas (scons (car term) (rewrite-args (cdr term)) term) (get-lemmas (car term)))))) (define (rewrite-args lst) (cond ((null? lst) (quote ())) (else (scons (rewrite (car lst)) (rewrite-args (cdr lst)) lst)))) (define (rewrite-with-lemmas term lst) (cond ((null? lst) term) ((one-way-unify term (cadr (car lst))) (rewrite (apply-subst unify-subst (caddr (car lst))))) (else (rewrite-with-lemmas term (cdr lst))))) (define unify-subst (quote *)) (define (one-way-unify term1 term2) (begin (set! unify-subst (quote ())) (one-way-unify1 term1 term2))) (define (one-way-unify1 term1 term2) (cond ((not (pair? term2)) (let ((temp-temp (assq term2 unify-subst))) (cond (temp-temp (term-equal? term1 (cdr temp-temp))) ((number? term2) (equal? term1 term2)) (else (set! unify-subst (cons (cons term2 term1) unify-subst)) #t)))) ((not (pair? term1)) #f) ((eq? (car term1) (car term2)) (one-way-unify1-lst (cdr term1) (cdr term2))) (else #f))) (define (one-way-unify1-lst lst1 lst2) (cond ((null? lst1) (null? lst2)) ((null? lst2) #f) ((one-way-unify1 (car lst1) (car lst2)) (one-way-unify1-lst (cdr lst1) (cdr lst2))) (else #f))) (define (falsep x lst) (or (term-equal? x false-term) (term-member? x lst))) (define (truep x lst) (or (term-equal? x true-term) (term-member? x lst))) (define false-term (quote *)) (define true-term (quote *)) (define (trans-of-implies n) (translate-term (list (quote implies) (trans-of-implies1 n) (list (quote implies) 0 n)))) (define (trans-of-implies1 n) (cond ((equal? n 1) (list (quote implies) 0 1)) (else (list (quote and) (list (quote implies) (- n 1) n) (trans-of-implies1 (- n 1)))))) (define (term-equal? x y) (cond ((pair? x) (and (pair? y) (symbol-record-equal? (car x) (car y)) (term-args-equal? (cdr x) (cdr y)))) (else (equal? x y)))) (define (term-args-equal? lst1 lst2) (cond ((null? lst1) (null? lst2)) ((null? lst2) #f) ((term-equal? (car lst1) (car lst2)) (term-args-equal? (cdr lst1) (cdr lst2))) (else #f))) (define (term-member? x lst) (cond ((null? lst) #f) ((term-equal? x (car lst)) #t) (else (term-member? x (cdr lst))))) (set! setup-boyer (lambda () (set! *symbol-records-alist* (quote ())) (set! if-constructor (symbol->symbol-record (quote if))) (set! false-term (translate-term (quote (f)))) (set! true-term (translate-term (quote (t)))) (setup))) (set! test-boyer (lambda (alist term n) (set! rewrite-count 0) (let ((answer (test alist term n))) (if answer rewrite-count #f))))) (define (hide r x) (call-with-values (lambda () (values (vector values (lambda (x) x)) (if (< r 100) 0 1))) (lambda (v i) ((vector-ref v i) x)))) (define (run-r7rs-benchmark name count thunk ok?) (define (rounded x) (/ (round (* 1000 x)) 1000)) (display "Running ") (display name) (newline) (flush-output-port) (let* ((j/s (jiffies-per-second)) (t0 (current-second)) (j0 (current-jiffy))) (let loop ((i 0) (result (if #f #f))) (cond ((< i count) (loop (+ i 1) (thunk))) ((ok? result) (let* ((j1 (current-jiffy)) (t1 (current-second)) (jifs (- j1 j0)) (secs (inexact (/ jifs j/s))) (secs2 (rounded (- t1 t0)))) (display "Elapsed time: ") (write secs) (display " seconds (") (write secs2) (display ") for ") (display name) (newline)) result) (else (display "ERROR: returned incorrect result: ") (write result) (newline) result))))) (main)) */ -/* -"imports:" */ -/* -((scheme base) (scheme cxr) (scheme read) (scheme write) (scheme time)) */ -/* -"resolved imports:" */ -/* -((cons-source scheme base) (syntax-rules scheme base) (letrec* scheme base) (guard scheme base) (guard-aux scheme base) (receive scheme base) (abs scheme base) (max scheme base) (min scheme base) (modulo scheme base) (floor-remainder scheme base) (even? scheme base) (exact-integer? scheme base) (exact? scheme base) (inexact? scheme base) (odd? scheme base) (complex? scheme base) (rational? scheme base) (gcd scheme base) (lcm scheme base) (quotient scheme base) (remainder scheme base) (truncate-quotient scheme base) (truncate-remainder scheme base) (truncate/ scheme base) (floor-quotient scheme base) (floor-remainder scheme base) (floor/ scheme base) (square scheme base) (expt scheme base) (call-with-current-continuation scheme base) (call/cc scheme base) (call-with-values scheme base) (dynamic-wind scheme base) (values scheme base) (char=? scheme base) (char? scheme base) (char<=? scheme base) (char>=? scheme base) (string=? scheme base) (string? scheme base) (string>=? scheme base) (foldl scheme base) (foldr scheme base) (not scheme base) (list? scheme base) (zero? scheme base) (positive? scheme base) (negative? scheme base) (append scheme base) (list scheme base) (make-list scheme base) (list-copy scheme base) (map scheme base) (for-each scheme base) (list-tail scheme base) (list-ref scheme base) (list-set! scheme base) (reverse scheme base) (boolean=? scheme base) (symbol=? scheme base) (Cyc-obj=? scheme base) (vector scheme base) (vector-append scheme base) (vector-copy scheme base) (vector-copy! scheme base) (vector-fill! scheme base) (vector->list scheme base) (vector->string scheme base) (vector-map scheme base) (vector-for-each scheme base) (make-string scheme base) (string scheme base) (string-copy scheme base) (string-copy! scheme base) (string-fill! scheme base) (string->list scheme base) (string->vector scheme base) (string-map scheme base) (string-for-each scheme base) (make-parameter scheme base) (current-output-port scheme base) (current-input-port scheme base) (current-error-port scheme base) (call-with-port scheme base) (error scheme base) (raise scheme base) (raise-continuable scheme base) (with-exception-handler scheme base) (Cyc-add-exception-handler scheme base) (Cyc-remove-exception-handler scheme base) (newline scheme base) (write-char scheme base) (write-string scheme base) (flush-output-port scheme base) (read-line scheme base) (read-string scheme base) (input-port? scheme base) (output-port? scheme base) (input-port-open? scheme base) (output-port-open? scheme base) (features scheme base) (any scheme base) (every scheme base) (and scheme base) (or scheme base) (let scheme base) (let* scheme base) (letrec scheme base) (begin scheme base) (case scheme base) (cond scheme base) (cond-expand scheme base) (do scheme base) (when scheme base) (unless scheme base) (quasiquote scheme base) (floor scheme base) (ceiling scheme base) (truncate scheme base) (round scheme base) (exact scheme base) (inexact scheme base) (eof-object scheme base) (syntax-error scheme base) (bytevector-copy scheme base) (utf8->string scheme base) (string->utf8 scheme base) (denominator scheme base) (numerator scheme base) (caaaaar scheme cxr) (read scheme read) (read-all scheme read) (display scheme write) (write scheme write) (current-second scheme time) (current-jiffy scheme time) (jiffies-per-second scheme time)) */ -/* -"resolved macros:" */ -/* -() */ -/* -"---------------- after macro expansion:" */ -/* -((define main (lambda () ((lambda (count) ((lambda (input) ((lambda (output) ((lambda (s2) ((lambda (s1) ((lambda (name) ((lambda () (run-r7rs-benchmark (string-append name ":" s1 ":" s2) count (lambda () (setup-boyer) (test-boyer alist term (hide count input))) (lambda (rewrites) (if (number? rewrites) (= rewrites output) #f)))))) "sboyer")) (number->string input))) (number->string count))) (read))) (read))) (read)))) (define alist (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b)))))) (define term (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w)))) (define setup-boyer (lambda () #t)) (define test-boyer (lambda () #t)) ((lambda () (define setup (lambda () (add-lemma-lst (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem)))))))) (define add-lemma-lst (lambda (lst) (if (null? lst) ((lambda () #t)) ((lambda () (add-lemma (car lst)) (add-lemma-lst (cdr lst))))))) (define add-lemma (lambda (term) (if (if (pair? term) (if (eq? (car term) (quote equal)) (pair? (cadr term)) #f) #f) ((lambda () (put (car (cadr term)) (quote lemmas) (cons (translate-term term) (get (car (cadr term)) (quote lemmas)))))) ((lambda () (error #f "ADD-LEMMA did not like term: " term)))))) (define translate-term (lambda (term) (if (not (pair? term)) ((lambda () term)) ((lambda () (cons (symbol->symbol-record (car term)) (translate-args (cdr term)))))))) (define translate-args (lambda (lst) (if (null? lst) ((lambda () (quote ()))) ((lambda () (cons (translate-term (car lst)) (translate-args (cdr lst)))))))) (define untranslate-term (lambda (term) (if (not (pair? term)) ((lambda () term)) ((lambda () (cons (get-name (car term)) (map untranslate-term (cdr term)))))))) (define put (lambda (sym property value) (put-lemmas! (symbol->symbol-record sym) value))) (define get (lambda (sym property) (get-lemmas (symbol->symbol-record sym)))) (define symbol->symbol-record (lambda (sym) ((lambda (x) (if x (cdr x) ((lambda (r) (set! *symbol-records-alist* (cons (cons sym r) *symbol-records-alist*)) r) (make-symbol-record sym)))) (assq sym *symbol-records-alist*)))) (define *symbol-records-alist* (quote ())) (define make-symbol-record (lambda (sym) (vector sym (quote ())))) (define put-lemmas! (lambda (symbol-record lemmas) (vector-set! symbol-record 1 lemmas))) (define get-lemmas (lambda (symbol-record) (vector-ref symbol-record 1))) (define get-name (lambda (symbol-record) (vector-ref symbol-record 0))) (define symbol-record-equal? (lambda (r1 r2) (eq? r1 r2))) (define test (lambda (alist term n) ((lambda (term) (tautp term)) (apply-subst (translate-alist alist) (translate-term ((lambda (term n) ((lambda (lp) (set! lp (lambda (term n) (if (zero? n) term (lp (list (quote or) term (quote (f))) (- n 1))))) (lp term n)) #f)) term n)))))) (define translate-alist (lambda (alist) (if (null? alist) ((lambda () (quote ()))) ((lambda () (cons (cons (caar alist) (translate-term (cdar alist))) (translate-alist (cdr alist)))))))) (define apply-subst (lambda (alist term) (if (not (pair? term)) ((lambda () ((lambda (temp-temp) (if temp-temp (cdr temp-temp) term)) (assq term alist)))) ((lambda () (cons (car term) (apply-subst-lst alist (cdr term)))))))) (define apply-subst-lst (lambda (alist lst) (if (null? lst) ((lambda () (quote ()))) ((lambda () (cons (apply-subst alist (car lst)) (apply-subst-lst alist (cdr lst)))))))) (define tautp (lambda (x) (tautologyp (rewrite x) (quote ()) (quote ())))) (define tautologyp (lambda (x true-lst false-lst) (if (truep x true-lst) ((lambda () #t)) (if (falsep x false-lst) ((lambda () #f)) (if (not (pair? x)) ((lambda () #f)) (if (eq? (car x) if-constructor) ((lambda () (if (truep (cadr x) true-lst) ((lambda () (tautologyp (caddr x) true-lst false-lst))) (if (falsep (cadr x) false-lst) ((lambda () (tautologyp (cadddr x) true-lst false-lst))) ((lambda () (if (tautologyp (caddr x) (cons (cadr x) true-lst) false-lst) (tautologyp (cadddr x) true-lst (cons (cadr x) false-lst)) #f))))))) ((lambda () #f)))))))) (define if-constructor (quote *)) (define rewrite-count 0) (define scons (lambda (x y original) (if (if (eq? x (car original)) (eq? y (cdr original)) #f) original (cons x y)))) (define rewrite (lambda (term) (set! rewrite-count (+ rewrite-count 1)) (if (not (pair? term)) ((lambda () term)) ((lambda () (rewrite-with-lemmas (scons (car term) (rewrite-args (cdr term)) term) (get-lemmas (car term)))))))) (define rewrite-args (lambda (lst) (if (null? lst) ((lambda () (quote ()))) ((lambda () (scons (rewrite (car lst)) (rewrite-args (cdr lst)) lst)))))) (define rewrite-with-lemmas (lambda (term lst) (if (null? lst) ((lambda () term)) (if (one-way-unify term (cadr (car lst))) ((lambda () (rewrite (apply-subst unify-subst (caddr (car lst)))))) ((lambda () (rewrite-with-lemmas term (cdr lst)))))))) (define unify-subst (quote *)) (define one-way-unify (lambda (term1 term2) (set! unify-subst (quote ())) (one-way-unify1 term1 term2))) (define one-way-unify1 (lambda (term1 term2) (if (not (pair? term2)) ((lambda () ((lambda (temp-temp) (if temp-temp ((lambda () (term-equal? term1 (cdr temp-temp)))) (if (number? term2) ((lambda () (equal? term1 term2))) ((lambda () (set! unify-subst (cons (cons term2 term1) unify-subst)) #t))))) (assq term2 unify-subst)))) (if (not (pair? term1)) ((lambda () #f)) (if (eq? (car term1) (car term2)) ((lambda () (one-way-unify1-lst (cdr term1) (cdr term2)))) ((lambda () #f))))))) (define one-way-unify1-lst (lambda (lst1 lst2) (if (null? lst1) ((lambda () (null? lst2))) (if (null? lst2) ((lambda () #f)) (if (one-way-unify1 (car lst1) (car lst2)) ((lambda () (one-way-unify1-lst (cdr lst1) (cdr lst2)))) ((lambda () #f))))))) (define falsep (lambda (x lst) ((lambda (tmp) (if tmp tmp (term-member? x lst))) (term-equal? x false-term)))) (define truep (lambda (x lst) ((lambda (tmp) (if tmp tmp (term-member? x lst))) (term-equal? x true-term)))) (define false-term (quote *)) (define true-term (quote *)) (define trans-of-implies (lambda (n) (translate-term (list (quote implies) (trans-of-implies1 n) (list (quote implies) 0 n))))) (define trans-of-implies1 (lambda (n) (if (equal? n 1) ((lambda () (list (quote implies) 0 1))) ((lambda () (list (quote and) (list (quote implies) (- n 1) n) (trans-of-implies1 (- n 1)))))))) (define term-equal? (lambda (x y) (if (pair? x) ((lambda () (if (pair? y) (if (symbol-record-equal? (car x) (car y)) (term-args-equal? (cdr x) (cdr y)) #f) #f))) ((lambda () (equal? x y)))))) (define term-args-equal? (lambda (lst1 lst2) (if (null? lst1) ((lambda () (null? lst2))) (if (null? lst2) ((lambda () #f)) (if (term-equal? (car lst1) (car lst2)) ((lambda () (term-args-equal? (cdr lst1) (cdr lst2)))) ((lambda () #f))))))) (define term-member? (lambda (x lst) (if (null? lst) ((lambda () #f)) (if (term-equal? x (car lst)) ((lambda () #t)) ((lambda () (term-member? x (cdr lst)))))))) (set! setup-boyer (lambda () (set! *symbol-records-alist* (quote ())) (set! if-constructor (symbol->symbol-record (quote if))) (set! false-term (translate-term (quote (f)))) (set! true-term (translate-term (quote (t)))) (setup))) (set! test-boyer (lambda (alist term n) (set! rewrite-count 0) ((lambda (answer) (if answer rewrite-count #f)) (test alist term n)))))) (define hide (lambda (r x) (call-with-values (lambda () (values (vector values (lambda (x) x)) (if (< r 100) 0 1))) (lambda (v i) ((vector-ref v i) x))))) (define run-r7rs-benchmark (lambda (name count thunk ok?) (define rounded (lambda (x) (/ (round (* 1000 x)) 1000))) (display "Running ") (display name) (newline) (flush-output-port) ((lambda (j/s) ((lambda (t0) ((lambda (j0) ((lambda () ((lambda (i result) ((lambda (loop) (set! loop (lambda (i result) (if (< i count) ((lambda () (loop (+ i 1) (thunk)))) (if (ok? result) ((lambda () ((lambda (j1) ((lambda (t1) ((lambda (jifs) ((lambda (secs) ((lambda (secs2) ((lambda () (display "Elapsed time: ") (write secs) (display " seconds (") (write secs2) (display ") for ") (display name) (newline)))) (rounded (- t1 t0)))) (inexact (/ jifs j/s)))) (- j1 j0))) (current-second))) (current-jiffy)) result)) ((lambda () (display "ERROR: returned incorrect result: ") (write result) (newline) result)))))) (loop i result)) #f)) 0 (if #f #f #f))))) (current-jiffy))) (current-second))) (jiffies-per-second)))) (main)) */ -/* -"---------------- after processing globals" */ -/* -((define main (lambda () ((lambda (count) ((lambda (input) ((lambda (output) ((lambda (s2) ((lambda (s1) ((lambda (name) ((lambda () (run-r7rs-benchmark (string-append name ":" s1 ":" s2) count (lambda () (setup-boyer) (test-boyer alist term (hide count input))) (lambda (rewrites) (if (number? rewrites) (= rewrites output) #f)))))) "sboyer")) (number->string input))) (number->string count))) (read))) (read))) (read)))) (define alist #f) (define term #f) (define setup-boyer (lambda () #t)) (define test-boyer (lambda () #t)) (define hide (lambda (r x) (call-with-values (lambda () (values (vector values (lambda (x) x)) (if (< r 100) 0 1))) (lambda (v i) ((vector-ref v i) x))))) (define run-r7rs-benchmark (lambda (name count thunk ok?) (define rounded (lambda (x) (/ (round (* 1000 x)) 1000))) (display "Running ") (display name) (newline) (flush-output-port) ((lambda (j/s) ((lambda (t0) ((lambda (j0) ((lambda () ((lambda (i result) ((lambda (loop) (set! loop (lambda (i result) (if (< i count) ((lambda () (loop (+ i 1) (thunk)))) (if (ok? result) ((lambda () ((lambda (j1) ((lambda (t1) ((lambda (jifs) ((lambda (secs) ((lambda (secs2) ((lambda () (display "Elapsed time: ") (write secs) (display " seconds (") (write secs2) (display ") for ") (display name) (newline)))) (rounded (- t1 t0)))) (inexact (/ jifs j/s)))) (- j1 j0))) (current-second))) (current-jiffy)) result)) ((lambda () (display "ERROR: returned incorrect result: ") (write result) (newline) result)))))) (loop i result)) #f)) 0 (if #f #f #f))))) (current-jiffy))) (current-second))) (jiffies-per-second)))) ((lambda () 0 (set! alist (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b)))))) (set! term (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w)))) ((lambda () (define setup (lambda () (add-lemma-lst (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem)))))))) (define add-lemma-lst (lambda (lst) (if (null? lst) ((lambda () #t)) ((lambda () (add-lemma (car lst)) (add-lemma-lst (cdr lst))))))) (define add-lemma (lambda (term) (if (if (pair? term) (if (eq? (car term) (quote equal)) (pair? (cadr term)) #f) #f) ((lambda () (put (car (cadr term)) (quote lemmas) (cons (translate-term term) (get (car (cadr term)) (quote lemmas)))))) ((lambda () (error #f "ADD-LEMMA did not like term: " term)))))) (define translate-term (lambda (term) (if (not (pair? term)) ((lambda () term)) ((lambda () (cons (symbol->symbol-record (car term)) (translate-args (cdr term)))))))) (define translate-args (lambda (lst) (if (null? lst) ((lambda () (quote ()))) ((lambda () (cons (translate-term (car lst)) (translate-args (cdr lst)))))))) (define untranslate-term (lambda (term) (if (not (pair? term)) ((lambda () term)) ((lambda () (cons (get-name (car term)) (map untranslate-term (cdr term)))))))) (define put (lambda (sym property value) (put-lemmas! (symbol->symbol-record sym) value))) (define get (lambda (sym property) (get-lemmas (symbol->symbol-record sym)))) (define symbol->symbol-record (lambda (sym) ((lambda (x) (if x (cdr x) ((lambda (r) (set! *symbol-records-alist* (cons (cons sym r) *symbol-records-alist*)) r) (make-symbol-record sym)))) (assq sym *symbol-records-alist*)))) (define *symbol-records-alist* (quote ())) (define make-symbol-record (lambda (sym) (vector sym (quote ())))) (define put-lemmas! (lambda (symbol-record lemmas) (vector-set! symbol-record 1 lemmas))) (define get-lemmas (lambda (symbol-record) (vector-ref symbol-record 1))) (define get-name (lambda (symbol-record) (vector-ref symbol-record 0))) (define symbol-record-equal? (lambda (r1 r2) (eq? r1 r2))) (define test (lambda (alist term n) ((lambda (term) (tautp term)) (apply-subst (translate-alist alist) (translate-term ((lambda (term n) ((lambda (lp) (set! lp (lambda (term n) (if (zero? n) term (lp (list (quote or) term (quote (f))) (- n 1))))) (lp term n)) #f)) term n)))))) (define translate-alist (lambda (alist) (if (null? alist) ((lambda () (quote ()))) ((lambda () (cons (cons (caar alist) (translate-term (cdar alist))) (translate-alist (cdr alist)))))))) (define apply-subst (lambda (alist term) (if (not (pair? term)) ((lambda () ((lambda (temp-temp) (if temp-temp (cdr temp-temp) term)) (assq term alist)))) ((lambda () (cons (car term) (apply-subst-lst alist (cdr term)))))))) (define apply-subst-lst (lambda (alist lst) (if (null? lst) ((lambda () (quote ()))) ((lambda () (cons (apply-subst alist (car lst)) (apply-subst-lst alist (cdr lst)))))))) (define tautp (lambda (x) (tautologyp (rewrite x) (quote ()) (quote ())))) (define tautologyp (lambda (x true-lst false-lst) (if (truep x true-lst) ((lambda () #t)) (if (falsep x false-lst) ((lambda () #f)) (if (not (pair? x)) ((lambda () #f)) (if (eq? (car x) if-constructor) ((lambda () (if (truep (cadr x) true-lst) ((lambda () (tautologyp (caddr x) true-lst false-lst))) (if (falsep (cadr x) false-lst) ((lambda () (tautologyp (cadddr x) true-lst false-lst))) ((lambda () (if (tautologyp (caddr x) (cons (cadr x) true-lst) false-lst) (tautologyp (cadddr x) true-lst (cons (cadr x) false-lst)) #f))))))) ((lambda () #f)))))))) (define if-constructor (quote *)) (define rewrite-count 0) (define scons (lambda (x y original) (if (if (eq? x (car original)) (eq? y (cdr original)) #f) original (cons x y)))) (define rewrite (lambda (term) (set! rewrite-count (+ rewrite-count 1)) (if (not (pair? term)) ((lambda () term)) ((lambda () (rewrite-with-lemmas (scons (car term) (rewrite-args (cdr term)) term) (get-lemmas (car term)))))))) (define rewrite-args (lambda (lst) (if (null? lst) ((lambda () (quote ()))) ((lambda () (scons (rewrite (car lst)) (rewrite-args (cdr lst)) lst)))))) (define rewrite-with-lemmas (lambda (term lst) (if (null? lst) ((lambda () term)) (if (one-way-unify term (cadr (car lst))) ((lambda () (rewrite (apply-subst unify-subst (caddr (car lst)))))) ((lambda () (rewrite-with-lemmas term (cdr lst)))))))) (define unify-subst (quote *)) (define one-way-unify (lambda (term1 term2) (set! unify-subst (quote ())) (one-way-unify1 term1 term2))) (define one-way-unify1 (lambda (term1 term2) (if (not (pair? term2)) ((lambda () ((lambda (temp-temp) (if temp-temp ((lambda () (term-equal? term1 (cdr temp-temp)))) (if (number? term2) ((lambda () (equal? term1 term2))) ((lambda () (set! unify-subst (cons (cons term2 term1) unify-subst)) #t))))) (assq term2 unify-subst)))) (if (not (pair? term1)) ((lambda () #f)) (if (eq? (car term1) (car term2)) ((lambda () (one-way-unify1-lst (cdr term1) (cdr term2)))) ((lambda () #f))))))) (define one-way-unify1-lst (lambda (lst1 lst2) (if (null? lst1) ((lambda () (null? lst2))) (if (null? lst2) ((lambda () #f)) (if (one-way-unify1 (car lst1) (car lst2)) ((lambda () (one-way-unify1-lst (cdr lst1) (cdr lst2)))) ((lambda () #f))))))) (define falsep (lambda (x lst) ((lambda (tmp) (if tmp tmp (term-member? x lst))) (term-equal? x false-term)))) (define truep (lambda (x lst) ((lambda (tmp) (if tmp tmp (term-member? x lst))) (term-equal? x true-term)))) (define false-term (quote *)) (define true-term (quote *)) (define trans-of-implies (lambda (n) (translate-term (list (quote implies) (trans-of-implies1 n) (list (quote implies) 0 n))))) (define trans-of-implies1 (lambda (n) (if (equal? n 1) ((lambda () (list (quote implies) 0 1))) ((lambda () (list (quote and) (list (quote implies) (- n 1) n) (trans-of-implies1 (- n 1)))))))) (define term-equal? (lambda (x y) (if (pair? x) ((lambda () (if (pair? y) (if (symbol-record-equal? (car x) (car y)) (term-args-equal? (cdr x) (cdr y)) #f) #f))) ((lambda () (equal? x y)))))) (define term-args-equal? (lambda (lst1 lst2) (if (null? lst1) ((lambda () (null? lst2))) (if (null? lst2) ((lambda () #f)) (if (term-equal? (car lst1) (car lst2)) ((lambda () (term-args-equal? (cdr lst1) (cdr lst2)))) ((lambda () #f))))))) (define term-member? (lambda (x lst) (if (null? lst) ((lambda () #f)) (if (term-equal? x (car lst)) ((lambda () #t)) ((lambda () (term-member? x (cdr lst)))))))) (set! setup-boyer (lambda () (set! *symbol-records-alist* (quote ())) (set! if-constructor (symbol->symbol-record (quote if))) (set! false-term (translate-term (quote (f)))) (set! true-term (translate-term (quote (t)))) (setup))) (set! test-boyer (lambda (alist term n) (set! rewrite-count 0) ((lambda (answer) (if answer rewrite-count #f)) (test alist term n)))))) (main)))) */ -/* -"---------------- after alpha conversion:" */ -/* -((define main (lambda () ((lambda (count$258) ((lambda (input$259) ((lambda (output$260) ((lambda (s2$261) ((lambda (s1$262) ((lambda (name$263) ((lambda () (run-r7rs-benchmark (string-append name$263 ":" s1$262 ":" s2$261) count$258 (lambda () (setup-boyer) (test-boyer alist term (hide count$258 input$259))) (lambda (rewrites$264) (if (number? rewrites$264) (= rewrites$264 output$260) #f)))))) "sboyer")) (number->string input$259))) (number->string count$258))) (read))) (read))) (read)))) (define alist #f) (define term #f) (define setup-boyer (lambda () #t)) (define test-boyer (lambda () #t)) (define hide (lambda (r$254 x$253) (call-with-values (lambda () (values (vector values (lambda (x$257) x$257)) (if (< r$254 100) 0 1))) (lambda (v$256 i$255) ((vector-ref v$256 i$255) x$253))))) (define run-r7rs-benchmark (lambda (name$235 count$234 thunk$233 ok?$232) ((lambda (rounded$237) ((lambda (rounded$238) (set! rounded$237 (lambda (x$252) (/ (round (* 1000 x$252)) 1000))) (display "Running ") (display name$235) (newline) (flush-output-port) ((lambda (j/s$239) ((lambda (t0$240) ((lambda (j0$241) ((lambda () ((lambda (i$243 result$242) ((lambda (loop$244) (set! loop$244 (lambda (i$246 result$245) (if (< i$246 count$234) ((lambda () (loop$244 (+ i$246 1) (thunk$233)))) (if (ok?$232 result$245) ((lambda () ((lambda (j1$247) ((lambda (t1$248) ((lambda (jifs$249) ((lambda (secs$250) ((lambda (secs2$251) ((lambda () (display "Elapsed time: ") (write secs$250) (display " seconds (") (write secs2$251) (display ") for ") (display name$235) (newline)))) (rounded$237 (- t1$248 t0$240)))) (inexact (/ jifs$249 j/s$239)))) (- j1$247 j0$241))) (current-second))) (current-jiffy)) result$245)) ((lambda () (display "ERROR: returned incorrect result: ") (write result$245) (newline) result$245)))))) (loop$244 i$243 result$242)) #f)) 0 (if #f #f #f))))) (current-jiffy))) (current-second))) (jiffies-per-second))) #f)) #f))) ((lambda (*symbol-records-alist*$120 add-lemma$119 add-lemma-lst$118 apply-subst$117 apply-subst-lst$116 false-term$115 falsep$114 get$113 get-lemmas$112 get-name$111 if-constructor$110 make-symbol-record$109 one-way-unify$108 one-way-unify1$107 one-way-unify1-lst$106 put$105 put-lemmas!$104 rewrite$103 rewrite-args$102 rewrite-count$101 rewrite-with-lemmas$100 scons$99 setup$98 symbol->symbol-record$97 symbol-record-equal?$96 tautologyp$95 tautp$94 term-args-equal?$93 term-equal?$92 term-member?$91 test$90 trans-of-implies$89 trans-of-implies1$88 translate-alist$87 translate-args$86 translate-term$85 true-term$84 truep$83 unify-subst$82 untranslate-term$81) ((lambda () 0 (set! alist (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b)))))) (set! term (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w)))) ((lambda () ((lambda (setup$160 add-lemma-lst$159 add-lemma$158 translate-term$157 translate-args$156 untranslate-term$155 put$154 get$153 symbol->symbol-record$152 *symbol-records-alist*$151 make-symbol-record$150 put-lemmas!$149 get-lemmas$148 get-name$147 symbol-record-equal?$146 test$145 translate-alist$144 apply-subst$143 apply-subst-lst$142 tautp$141 tautologyp$140 if-constructor$139 rewrite-count$138 scons$137 rewrite$136 rewrite-args$135 rewrite-with-lemmas$134 unify-subst$133 one-way-unify$132 one-way-unify1$131 one-way-unify1-lst$130 falsep$129 truep$128 false-term$127 true-term$126 trans-of-implies$125 trans-of-implies1$124 term-equal?$123 term-args-equal?$122 term-member?$121) (set! setup$160 (lambda () (add-lemma-lst$159 (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem)))))))) (set! add-lemma-lst$159 (lambda (lst$231) (if (null? lst$231) ((lambda () #t)) ((lambda () (add-lemma$158 (car lst$231)) (add-lemma-lst$159 (cdr lst$231))))))) (set! add-lemma$158 (lambda (term$230) (if (if (pair? term$230) (if (eq? (car term$230) (quote equal)) (pair? (cadr term$230)) #f) #f) ((lambda () (put$154 (car (cadr term$230)) (quote lemmas) (cons (translate-term$157 term$230) (get$153 (car (cadr term$230)) (quote lemmas)))))) ((lambda () (error #f "ADD-LEMMA did not like term: " term$230)))))) (set! translate-term$157 (lambda (term$229) (if (pair? term$229) ((lambda () (cons (symbol->symbol-record$152 (car term$229)) (translate-args$156 (cdr term$229))))) ((lambda () term$229))))) (set! translate-args$156 (lambda (lst$228) (if (null? lst$228) ((lambda () (quote ()))) ((lambda () (cons (translate-term$157 (car lst$228)) (translate-args$156 (cdr lst$228)))))))) (set! untranslate-term$155 (lambda (term$227) (if (pair? term$227) ((lambda () (cons (get-name$147 (car term$227)) (map untranslate-term$155 (cdr term$227))))) ((lambda () term$227))))) (set! put$154 (lambda (sym$226 property$225 value$224) (put-lemmas!$149 (symbol->symbol-record$152 sym$226) value$224))) (set! get$153 (lambda (sym$223 property$222) (get-lemmas$148 (symbol->symbol-record$152 sym$223)))) (set! symbol->symbol-record$152 (lambda (sym$219) ((lambda (x$220) (if x$220 (cdr x$220) ((lambda (r$221) (set! *symbol-records-alist*$151 (cons (cons sym$219 r$221) *symbol-records-alist*$151)) r$221) (make-symbol-record$150 sym$219)))) (assq sym$219 *symbol-records-alist*$151)))) (set! *symbol-records-alist*$151 (quote ())) (set! make-symbol-record$150 (lambda (sym$218) (vector sym$218 (quote ())))) (set! put-lemmas!$149 (lambda (symbol-record$217 lemmas$216) (vector-set! symbol-record$217 1 lemmas$216))) (set! get-lemmas$148 (lambda (symbol-record$215) (vector-ref symbol-record$215 1))) (set! get-name$147 (lambda (symbol-record$214) (vector-ref symbol-record$214 0))) (set! symbol-record-equal?$146 (lambda (r1$213 r2$212) (eq? r1$213 r2$212))) (set! test$145 (lambda (alist$205 term$204 n$203) ((lambda (term$211) (tautp$141 term$211)) (apply-subst$143 (translate-alist$144 alist$205) (translate-term$157 ((lambda (term$207 n$206) ((lambda (lp$208) (set! lp$208 (lambda (term$210 n$209) (if (zero? n$209) term$210 (lp$208 (list (quote or) term$210 (quote (f))) (- n$209 1))))) (lp$208 term$207 n$206)) #f)) term$204 n$203)))))) (set! translate-alist$144 (lambda (alist$202) (if (null? alist$202) ((lambda () (quote ()))) ((lambda () (cons (cons (caar alist$202) (translate-term$157 (cdar alist$202))) (translate-alist$144 (cdr alist$202)))))))) (set! apply-subst$143 (lambda (alist$200 term$199) (if (pair? term$199) ((lambda () (cons (car term$199) (apply-subst-lst$142 alist$200 (cdr term$199))))) ((lambda () ((lambda (temp-temp$201) (if temp-temp$201 (cdr temp-temp$201) term$199)) (assq term$199 alist$200))))))) (set! apply-subst-lst$142 (lambda (alist$198 lst$197) (if (null? lst$197) ((lambda () (quote ()))) ((lambda () (cons (apply-subst$143 alist$198 (car lst$197)) (apply-subst-lst$142 alist$198 (cdr lst$197)))))))) (set! tautp$141 (lambda (x$196) (tautologyp$140 (rewrite$136 x$196) (quote ()) (quote ())))) (set! tautologyp$140 (lambda (x$195 true-lst$194 false-lst$193) (if (truep$128 x$195 true-lst$194) ((lambda () #t)) (if (falsep$129 x$195 false-lst$193) ((lambda () #f)) (if (pair? x$195) (if (eq? (car x$195) if-constructor$139) ((lambda () (if (truep$128 (cadr x$195) true-lst$194) ((lambda () (tautologyp$140 (caddr x$195) true-lst$194 false-lst$193))) (if (falsep$129 (cadr x$195) false-lst$193) ((lambda () (tautologyp$140 (cadddr x$195) true-lst$194 false-lst$193))) ((lambda () (if (tautologyp$140 (caddr x$195) (cons (cadr x$195) true-lst$194) false-lst$193) (tautologyp$140 (cadddr x$195) true-lst$194 (cons (cadr x$195) false-lst$193)) #f))))))) ((lambda () #f))) ((lambda () #f))))))) (set! if-constructor$139 (quote *)) (set! rewrite-count$138 0) (set! scons$137 (lambda (x$192 y$191 original$190) (if (if (eq? x$192 (car original$190)) (eq? y$191 (cdr original$190)) #f) original$190 (cons x$192 y$191)))) (set! rewrite$136 (lambda (term$189) (set! rewrite-count$138 (+ rewrite-count$138 1)) (if (pair? term$189) ((lambda () (rewrite-with-lemmas$134 (scons$137 (car term$189) (rewrite-args$135 (cdr term$189)) term$189) (get-lemmas$148 (car term$189))))) ((lambda () term$189))))) (set! rewrite-args$135 (lambda (lst$188) (if (null? lst$188) ((lambda () (quote ()))) ((lambda () (scons$137 (rewrite$136 (car lst$188)) (rewrite-args$135 (cdr lst$188)) lst$188)))))) (set! rewrite-with-lemmas$134 (lambda (term$187 lst$186) (if (null? lst$186) ((lambda () term$187)) (if (one-way-unify$132 term$187 (cadr (car lst$186))) ((lambda () (rewrite$136 (apply-subst$143 unify-subst$133 (caddr (car lst$186)))))) ((lambda () (rewrite-with-lemmas$134 term$187 (cdr lst$186)))))))) (set! unify-subst$133 (quote *)) (set! one-way-unify$132 (lambda (term1$185 term2$184) (set! unify-subst$133 (quote ())) (one-way-unify1$131 term1$185 term2$184))) (set! one-way-unify1$131 (lambda (term1$182 term2$181) (if (pair? term2$181) (if (pair? term1$182) (if (eq? (car term1$182) (car term2$181)) ((lambda () (one-way-unify1-lst$130 (cdr term1$182) (cdr term2$181)))) ((lambda () #f))) ((lambda () #f))) ((lambda () ((lambda (temp-temp$183) (if temp-temp$183 ((lambda () (term-equal?$123 term1$182 (cdr temp-temp$183)))) (if (number? term2$181) ((lambda () (equal? term1$182 term2$181))) ((lambda () (set! unify-subst$133 (cons (cons term2$181 term1$182) unify-subst$133)) #t))))) (assq term2$181 unify-subst$133))))))) (set! one-way-unify1-lst$130 (lambda (lst1$180 lst2$179) (if (null? lst1$180) ((lambda () (null? lst2$179))) (if (null? lst2$179) ((lambda () #f)) (if (one-way-unify1$131 (car lst1$180) (car lst2$179)) ((lambda () (one-way-unify1-lst$130 (cdr lst1$180) (cdr lst2$179)))) ((lambda () #f))))))) (set! falsep$129 (lambda (x$177 lst$176) ((lambda (tmp$178) (if tmp$178 tmp$178 (term-member?$121 x$177 lst$176))) (term-equal?$123 x$177 false-term$127)))) (set! truep$128 (lambda (x$174 lst$173) ((lambda (tmp$175) (if tmp$175 tmp$175 (term-member?$121 x$174 lst$173))) (term-equal?$123 x$174 true-term$126)))) (set! false-term$127 (quote *)) (set! true-term$126 (quote *)) (set! trans-of-implies$125 (lambda (n$172) (translate-term$157 (list (quote implies) (trans-of-implies1$124 n$172) (list (quote implies) 0 n$172))))) (set! trans-of-implies1$124 (lambda (n$171) (if (equal? n$171 1) ((lambda () (list (quote implies) 0 1))) ((lambda () (list (quote and) (list (quote implies) (- n$171 1) n$171) (trans-of-implies1$124 (- n$171 1)))))))) (set! term-equal?$123 (lambda (x$170 y$169) (if (pair? x$170) ((lambda () (if (pair? y$169) (if (symbol-record-equal?$146 (car x$170) (car y$169)) (term-args-equal?$122 (cdr x$170) (cdr y$169)) #f) #f))) ((lambda () (equal? x$170 y$169)))))) (set! term-args-equal?$122 (lambda (lst1$168 lst2$167) (if (null? lst1$168) ((lambda () (null? lst2$167))) (if (null? lst2$167) ((lambda () #f)) (if (term-equal?$123 (car lst1$168) (car lst2$167)) ((lambda () (term-args-equal?$122 (cdr lst1$168) (cdr lst2$167)))) ((lambda () #f))))))) (set! term-member?$121 (lambda (x$166 lst$165) (if (null? lst$165) ((lambda () #f)) (if (term-equal?$123 x$166 (car lst$165)) ((lambda () #t)) ((lambda () (term-member?$121 x$166 (cdr lst$165)))))))) (set! setup-boyer (lambda () (set! *symbol-records-alist*$151 (quote ())) (set! if-constructor$139 (symbol->symbol-record$152 (quote if))) (set! false-term$127 (translate-term$157 (quote (f)))) (set! true-term$126 (translate-term$157 (quote (t)))) (setup$160))) (set! test-boyer (lambda (alist$163 term$162 n$161) (set! rewrite-count$138 0) ((lambda (answer$164) (if answer$164 rewrite-count$138 #f)) (test$145 alist$163 term$162 n$161))))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f))) (main)))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)) */ -/* -"---------------- after CPS:" */ -/* -((define main (lambda (k$645) (read (lambda (r$646) ((lambda (count$258) (read (lambda (r$647) ((lambda (input$259) (read (lambda (r$648) ((lambda (output$260) ((lambda (r$649) ((lambda (s2$261) ((lambda (r$650) ((lambda (s1$262) ((lambda (name$263) ((lambda () ((lambda (r$651) ((lambda (r$652) ((lambda (r$653) (run-r7rs-benchmark k$645 r$651 count$258 r$652 r$653)) (lambda (k$654 rewrites$264) ((lambda (r$655) (if r$655 (k$654 (= rewrites$264 output$260)) (k$654 #f))) (number? rewrites$264))))) (lambda (k$656) (setup-boyer (lambda (r$657) (hide (lambda (r$658) (test-boyer k$656 alist term r$658)) count$258 input$259)))))) (string-append name$263 ":" s1$262 ":" s2$261))))) "sboyer")) r$650)) (number->string input$259))) r$649)) (number->string count$258))) r$648)))) r$647)))) r$646))))) (define alist #f) (define term #f) (define setup-boyer (lambda (k$638) (k$638 #t))) (define test-boyer (lambda (k$635) (k$635 #t))) (define hide (lambda (k$621 r$254 x$253) ((lambda (r$622) ((lambda (r$623) (call-with-values k$621 r$622 r$623)) (lambda (k$624 v$256 i$255) ((lambda (r$625) (r$625 k$624 x$253)) (vector-ref v$256 i$255))))) (lambda (k$626) ((lambda (r$631) (vector (lambda (r$627) ((lambda (k$629) ((lambda (r$630) (if r$630 (k$629 0) (k$629 1))) (< r$254 100))) (lambda (r$628) (values k$626 r$627 r$628)))) values r$631)) (lambda (k$632 x$257) (k$632 x$257))))))) (define run-r7rs-benchmark (lambda (k$580 name$235 count$234 thunk$233 ok?$232) ((lambda (rounded$237) ((lambda (rounded$238) ((lambda (r$615) ((lambda (r$581) (display (lambda (r$582) (display (lambda (r$583) (newline (lambda (r$584) (flush-output-port (lambda (r$585) (jiffies-per-second (lambda (r$586) ((lambda (j/s$239) (current-second (lambda (r$587) ((lambda (t0$240) (current-jiffy (lambda (r$588) ((lambda (j0$241) ((lambda () ((lambda (k$614) (if #f (k$614 #f) (k$614 #f))) (lambda (r$589) ((lambda (i$243 result$242) ((lambda (loop$244) ((lambda (r$591) ((lambda (r$590) (loop$244 k$580 i$243 result$242)) (set! loop$244 r$591))) (lambda (k$592 i$246 result$245) ((lambda (r$593) (if r$593 ((lambda () ((lambda (r$594) (thunk$233 (lambda (r$595) (loop$244 k$592 r$594 r$595)))) (+ i$246 1)))) (ok?$232 (lambda (r$596) (if r$596 ((lambda () (current-jiffy (lambda (r$598) ((lambda (j1$247) (current-second (lambda (r$599) ((lambda (t1$248) ((lambda (r$600) ((lambda (jifs$249) ((lambda (r$610) (inexact (lambda (r$601) ((lambda (secs$250) ((lambda (r$609) (rounded$237 (lambda (r$602) ((lambda (secs2$251) ((lambda () (display (lambda (r$603) (write (lambda (r$604) (display (lambda (r$605) (write (lambda (r$606) (display (lambda (r$607) (display (lambda (r$608) (newline (lambda (r$597) (k$592 result$245)))) name$235)) ") for ")) secs2$251)) " seconds (")) secs$250)) "Elapsed time: ")))) r$602)) r$609)) (- t1$248 t0$240))) r$601)) r$610)) (/ jifs$249 j/s$239))) r$600)) (- j1$247 j0$241))) r$599)))) r$598))))) ((lambda () (display (lambda (r$611) (write (lambda (r$612) (newline (lambda (r$613) (k$592 result$245)))) result$245)) "ERROR: returned incorrect result: "))))) result$245))) (< i$246 count$234))))) #f)) 0 r$589)))))) r$588)))) r$587)))) r$586)))))))) name$235)) "Running ")) (set! rounded$237 r$615))) (lambda (k$616 x$252) ((lambda (r$618) (round (lambda (r$617) (k$616 (/ r$617 1000))) r$618)) (* 1000 x$252))))) #f)) #f))) ((lambda (*symbol-records-alist*$120 add-lemma$119 add-lemma-lst$118 apply-subst$117 apply-subst-lst$116 false-term$115 falsep$114 get$113 get-lemmas$112 get-name$111 if-constructor$110 make-symbol-record$109 one-way-unify$108 one-way-unify1$107 one-way-unify1-lst$106 put$105 put-lemmas!$104 rewrite$103 rewrite-args$102 rewrite-count$101 rewrite-with-lemmas$100 scons$99 setup$98 symbol->symbol-record$97 symbol-record-equal?$96 tautologyp$95 tautp$94 term-args-equal?$93 term-equal?$92 term-member?$91 test$90 trans-of-implies$89 trans-of-implies1$88 translate-alist$87 translate-args$86 translate-term$85 true-term$84 truep$83 unify-subst$82 untranslate-term$81) ((lambda () ((lambda (r$265) ((lambda (r$577) ((lambda (r$266) ((lambda (r$576) ((lambda (r$267) ((lambda () ((lambda (setup$160 add-lemma-lst$159 add-lemma$158 translate-term$157 translate-args$156 untranslate-term$155 put$154 get$153 symbol->symbol-record$152 *symbol-records-alist*$151 make-symbol-record$150 put-lemmas!$149 get-lemmas$148 get-name$147 symbol-record-equal?$146 test$145 translate-alist$144 apply-subst$143 apply-subst-lst$142 tautp$141 tautologyp$140 if-constructor$139 rewrite-count$138 scons$137 rewrite$136 rewrite-args$135 rewrite-with-lemmas$134 unify-subst$133 one-way-unify$132 one-way-unify1$131 one-way-unify1-lst$130 falsep$129 truep$128 false-term$127 true-term$126 trans-of-implies$125 trans-of-implies1$124 term-equal?$123 term-args-equal?$122 term-member?$121) ((lambda (r$573) ((lambda (r$269) ((lambda (r$567) ((lambda (r$270) ((lambda (r$549) ((lambda (r$271) ((lambda (r$542) ((lambda (r$272) ((lambda (r$535) ((lambda (r$273) ((lambda (r$528) ((lambda (r$274) ((lambda (r$525) ((lambda (r$275) ((lambda (r$522) ((lambda (r$276) ((lambda (r$515) ((lambda (r$277) ((lambda (r$514) ((lambda (r$278) ((lambda (r$511) ((lambda (r$279) ((lambda (r$509) ((lambda (r$280) ((lambda (r$507) ((lambda (r$281) ((lambda (r$505) ((lambda (r$282) ((lambda (r$503) ((lambda (r$283) ((lambda (r$489) ((lambda (r$284) ((lambda (r$480) ((lambda (r$285) ((lambda (r$473) ((lambda (r$286) ((lambda (r$466) ((lambda (r$287) ((lambda (r$461) ((lambda (r$288) ((lambda (r$441) ((lambda (r$289) ((lambda (r$440) ((lambda (r$290) ((lambda (r$291) ((lambda (r$433) ((lambda (r$292) ((lambda (r$422) ((lambda (r$293) ((lambda (r$415) ((lambda (r$294) ((lambda (r$405) ((lambda (r$295) ((lambda (r$404) ((lambda (r$296) ((lambda (r$400) ((lambda (r$297) ((lambda (r$385) ((lambda (r$298) ((lambda (r$376) ((lambda (r$299) ((lambda (r$373) ((lambda (r$300) ((lambda (r$370) ((lambda (r$301) ((lambda (r$369) ((lambda (r$302) ((lambda (r$368) ((lambda (r$303) ((lambda (r$361) ((lambda (r$304) ((lambda (r$351) ((lambda (r$305) ((lambda (r$342) ((lambda (r$306) ((lambda (r$333) ((lambda (r$307) ((lambda (r$327) ((lambda (r$308) ((lambda (r$314) ((lambda (r$309) ((lambda (r$310) ((lambda (r$268) (main %halt)) (set! test-boyer r$310))) (lambda (k$311 alist$163 term$162 n$161) ((lambda (r$312) (test$145 (lambda (r$313) ((lambda (answer$164) (if answer$164 (k$311 rewrite-count$138) (k$311 #f))) r$313)) alist$163 term$162 n$161)) (set! rewrite-count$138 0))))) (set! setup-boyer r$314))) (lambda (k$315) ((lambda (r$326) ((lambda (r$316) ((lambda (r$325) (symbol->symbol-record$152 (lambda (r$324) ((lambda (r$317) ((lambda (r$323) (translate-term$157 (lambda (r$322) ((lambda (r$318) ((lambda (r$321) (translate-term$157 (lambda (r$320) ((lambda (r$319) (setup$160 k$315)) (set! true-term$126 r$320))) r$321)) (quote (t)))) (set! false-term$127 r$322))) r$323)) (quote (f)))) (set! if-constructor$139 r$324))) r$325)) (quote if))) (set! *symbol-records-alist*$151 r$326))) (quote ()))))) (set! term-member?$121 r$327))) (lambda (k$328 x$166 lst$165) ((lambda (r$329) (if r$329 ((lambda () (k$328 #f))) ((lambda (r$332) (term-equal?$123 (lambda (r$330) (if r$330 ((lambda () (k$328 #t))) ((lambda () ((lambda (r$331) (term-member?$121 k$328 x$166 r$331)) (cdr lst$165)))))) x$166 r$332)) (car lst$165)))) (null? lst$165))))) (set! term-args-equal?$122 r$333))) (lambda (k$334 lst1$168 lst2$167) ((lambda (r$335) (if r$335 ((lambda () (k$334 (null? lst2$167)))) ((lambda (r$336) (if r$336 ((lambda () (k$334 #f))) ((lambda (r$340) ((lambda (r$341) (term-equal?$123 (lambda (r$337) (if r$337 ((lambda () ((lambda (r$338) ((lambda (r$339) (term-args-equal?$122 k$334 r$338 r$339)) (cdr lst2$167))) (cdr lst1$168)))) ((lambda () (k$334 #f))))) r$340 r$341)) (car lst2$167))) (car lst1$168)))) (null? lst2$167)))) (null? lst1$168))))) (set! term-equal?$123 r$342))) (lambda (k$343 x$170 y$169) ((lambda (r$344) (if r$344 ((lambda () ((lambda (r$345) (if r$345 ((lambda (r$349) ((lambda (r$350) (symbol-record-equal?$146 (lambda (r$346) (if r$346 ((lambda (r$347) ((lambda (r$348) (term-args-equal?$122 k$343 r$347 r$348)) (cdr y$169))) (cdr x$170)) (k$343 #f))) r$349 r$350)) (car y$169))) (car x$170)) (k$343 #f))) (pair? y$169)))) ((lambda () (k$343 (equal? x$170 y$169)))))) (pair? x$170))))) (set! trans-of-implies1$124 r$351))) (lambda (k$352 n$171) ((lambda (r$353) (if r$353 ((lambda () ((lambda (r$354) (list k$352 r$354 0 1)) (quote implies)))) ((lambda () ((lambda (r$355) ((lambda (r$359) ((lambda (r$360) (list (lambda (r$356) ((lambda (r$358) (trans-of-implies1$124 (lambda (r$357) (list k$352 r$355 r$356 r$357)) r$358)) (- n$171 1))) r$359 r$360 n$171)) (- n$171 1))) (quote implies))) (quote and)))))) (equal? n$171 1))))) (set! trans-of-implies$125 r$361))) (lambda (k$362 n$172) ((lambda (r$364) (trans-of-implies1$124 (lambda (r$365) ((lambda (r$367) (list (lambda (r$366) (list (lambda (r$363) (translate-term$157 k$362 r$363)) r$364 r$365 r$366)) r$367 0 n$172)) (quote implies))) n$172)) (quote implies))))) (set! true-term$126 r$368))) (quote *))) (set! false-term$127 r$369))) (quote *))) (set! truep$128 r$370))) (lambda (k$371 x$174 lst$173) (term-equal?$123 (lambda (r$372) ((lambda (tmp$175) (if tmp$175 (k$371 tmp$175) (term-member?$121 k$371 x$174 lst$173))) r$372)) x$174 true-term$126)))) (set! falsep$129 r$373))) (lambda (k$374 x$177 lst$176) (term-equal?$123 (lambda (r$375) ((lambda (tmp$178) (if tmp$178 (k$374 tmp$178) (term-member?$121 k$374 x$177 lst$176))) r$375)) x$177 false-term$127)))) (set! one-way-unify1-lst$130 r$376))) (lambda (k$377 lst1$180 lst2$179) ((lambda (r$378) (if r$378 ((lambda () (k$377 (null? lst2$179)))) ((lambda (r$379) (if r$379 ((lambda () (k$377 #f))) ((lambda (r$383) ((lambda (r$384) (one-way-unify1$131 (lambda (r$380) (if r$380 ((lambda () ((lambda (r$381) ((lambda (r$382) (one-way-unify1-lst$130 k$377 r$381 r$382)) (cdr lst2$179))) (cdr lst1$180)))) ((lambda () (k$377 #f))))) r$383 r$384)) (car lst2$179))) (car lst1$180)))) (null? lst2$179)))) (null? lst1$180))))) (set! one-way-unify1$131 r$385))) (lambda (k$386 term1$182 term2$181) ((lambda (r$387) (if r$387 ((lambda (r$388) (if r$388 ((lambda (r$392) ((lambda (r$393) ((lambda (r$389) (if r$389 ((lambda () ((lambda (r$390) ((lambda (r$391) (one-way-unify1-lst$130 k$386 r$390 r$391)) (cdr term2$181))) (cdr term1$182)))) ((lambda () (k$386 #f))))) (eq? r$392 r$393))) (car term2$181))) (car term1$182)) ((lambda () (k$386 #f))))) (pair? term1$182)) ((lambda () ((lambda (r$394) ((lambda (temp-temp$183) (if temp-temp$183 ((lambda () ((lambda (r$395) (term-equal?$123 k$386 term1$182 r$395)) (cdr temp-temp$183)))) ((lambda (r$396) (if r$396 ((lambda () (k$386 (equal? term1$182 term2$181)))) ((lambda () ((lambda (r$399) ((lambda (r$398) ((lambda (r$397) (k$386 #t)) (set! unify-subst$133 r$398))) (cons r$399 unify-subst$133))) (cons term2$181 term1$182)))))) (number? term2$181)))) r$394)) (assq term2$181 unify-subst$133)))))) (pair? term2$181))))) (set! one-way-unify$132 r$400))) (lambda (k$401 term1$185 term2$184) ((lambda (r$403) ((lambda (r$402) (one-way-unify1$131 k$401 term1$185 term2$184)) (set! unify-subst$133 r$403))) (quote ()))))) (set! unify-subst$133 r$404))) (quote *))) (set! rewrite-with-lemmas$134 r$405))) (lambda (k$406 term$187 lst$186) ((lambda (r$407) (if r$407 ((lambda () (k$406 term$187))) ((lambda (r$414) ((lambda (r$413) (one-way-unify$132 (lambda (r$408) (if r$408 ((lambda () ((lambda (r$411) ((lambda (r$410) (apply-subst$143 (lambda (r$409) (rewrite$136 k$406 r$409)) unify-subst$133 r$410)) (caddr r$411))) (car lst$186)))) ((lambda () ((lambda (r$412) (rewrite-with-lemmas$134 k$406 term$187 r$412)) (cdr lst$186)))))) term$187 r$413)) (cadr r$414))) (car lst$186)))) (null? lst$186))))) (set! rewrite-args$135 r$415))) (lambda (k$416 lst$188) ((lambda (r$417) (if r$417 ((lambda () (k$416 (quote ())))) ((lambda () ((lambda (r$421) (rewrite$136 (lambda (r$418) ((lambda (r$420) (rewrite-args$135 (lambda (r$419) (scons$137 k$416 r$418 r$419 lst$188)) r$420)) (cdr lst$188))) r$421)) (car lst$188)))))) (null? lst$188))))) (set! rewrite$136 r$422))) (lambda (k$423 term$189) ((lambda (r$432) ((lambda (r$424) ((lambda (r$425) (if r$425 ((lambda () ((lambda (r$429) ((lambda (r$431) (rewrite-args$135 (lambda (r$430) (scons$137 (lambda (r$426) ((lambda (r$428) (get-lemmas$148 (lambda (r$427) (rewrite-with-lemmas$134 k$423 r$426 r$427)) r$428)) (car term$189))) r$429 r$430 term$189)) r$431)) (cdr term$189))) (car term$189)))) ((lambda () (k$423 term$189))))) (pair? term$189))) (set! rewrite-count$138 r$432))) (+ rewrite-count$138 1))))) (set! scons$137 r$433))) (lambda (k$434 x$192 y$191 original$190) ((lambda (k$436) ((lambda (r$439) ((lambda (r$437) (if r$437 ((lambda (r$438) (k$436 (eq? y$191 r$438))) (cdr original$190)) (k$436 #f))) (eq? x$192 r$439))) (car original$190))) (lambda (r$435) (if r$435 (k$434 original$190) (k$434 (cons x$192 y$191)))))))) (set! rewrite-count$138 0))) (set! if-constructor$139 r$440))) (quote *))) (set! tautologyp$140 r$441))) (lambda (k$442 x$195 true-lst$194 false-lst$193) (truep$128 (lambda (r$443) (if r$443 ((lambda () (k$442 #t))) (falsep$129 (lambda (r$444) (if r$444 ((lambda () (k$442 #f))) ((lambda (r$445) (if r$445 ((lambda (r$460) ((lambda (r$446) (if r$446 ((lambda () ((lambda (r$459) (truep$128 (lambda (r$447) (if r$447 ((lambda () ((lambda (r$448) (tautologyp$140 k$442 r$448 true-lst$194 false-lst$193)) (caddr x$195)))) ((lambda (r$458) (falsep$129 (lambda (r$449) (if r$449 ((lambda () ((lambda (r$450) (tautologyp$140 k$442 r$450 true-lst$194 false-lst$193)) (cadddr x$195)))) ((lambda () ((lambda (r$455) ((lambda (r$457) ((lambda (r$456) (tautologyp$140 (lambda (r$451) (if r$451 ((lambda (r$452) ((lambda (r$454) ((lambda (r$453) (tautologyp$140 k$442 r$452 true-lst$194 r$453)) (cons r$454 false-lst$193))) (cadr x$195))) (cadddr x$195)) (k$442 #f))) r$455 r$456 false-lst$193)) (cons r$457 true-lst$194))) (cadr x$195))) (caddr x$195)))))) r$458 false-lst$193)) (cadr x$195)))) r$459 true-lst$194)) (cadr x$195)))) ((lambda () (k$442 #f))))) (eq? r$460 if-constructor$139))) (car x$195)) ((lambda () (k$442 #f))))) (pair? x$195)))) x$195 false-lst$193))) x$195 true-lst$194)))) (set! tautp$141 r$461))) (lambda (k$462 x$196) (rewrite$136 (lambda (r$463) ((lambda (r$464) ((lambda (r$465) (tautologyp$140 k$462 r$463 r$464 r$465)) (quote ()))) (quote ()))) x$196)))) (set! apply-subst-lst$142 r$466))) (lambda (k$467 alist$198 lst$197) ((lambda (r$468) (if r$468 ((lambda () (k$467 (quote ())))) ((lambda () ((lambda (r$472) (apply-subst$143 (lambda (r$469) ((lambda (r$471) (apply-subst-lst$142 (lambda (r$470) (k$467 (cons r$469 r$470))) alist$198 r$471)) (cdr lst$197))) alist$198 r$472)) (car lst$197)))))) (null? lst$197))))) (set! apply-subst$143 r$473))) (lambda (k$474 alist$200 term$199) ((lambda (r$475) (if r$475 ((lambda () ((lambda (r$476) ((lambda (r$478) (apply-subst-lst$142 (lambda (r$477) (k$474 (cons r$476 r$477))) alist$200 r$478)) (cdr term$199))) (car term$199)))) ((lambda () ((lambda (r$479) ((lambda (temp-temp$201) (if temp-temp$201 (k$474 (cdr temp-temp$201)) (k$474 term$199))) r$479)) (assq term$199 alist$200)))))) (pair? term$199))))) (set! translate-alist$144 r$480))) (lambda (k$481 alist$202) ((lambda (r$482) (if r$482 ((lambda () (k$481 (quote ())))) ((lambda () ((lambda (r$486) ((lambda (r$488) (translate-term$157 (lambda (r$487) ((lambda (r$483) ((lambda (r$485) (translate-alist$144 (lambda (r$484) (k$481 (cons r$483 r$484))) r$485)) (cdr alist$202))) (cons r$486 r$487))) r$488)) (cdar alist$202))) (caar alist$202)))))) (null? alist$202))))) (set! test$145 r$489))) (lambda (k$490 alist$205 term$204 n$203) (translate-alist$144 (lambda (r$492) ((lambda (term$207 n$206) ((lambda (lp$208) ((lambda (r$496) ((lambda (r$495) (lp$208 (lambda (r$494) (translate-term$157 (lambda (r$493) (apply-subst$143 (lambda (r$491) ((lambda (term$211) (tautp$141 k$490 term$211)) r$491)) r$492 r$493)) r$494)) term$207 n$206)) (set! lp$208 r$496))) (lambda (k$497 term$210 n$209) (zero? (lambda (r$498) (if r$498 (k$497 term$210) ((lambda (r$501) ((lambda (r$502) (list (lambda (r$499) ((lambda (r$500) (lp$208 k$497 r$499 r$500)) (- n$209 1))) r$501 term$210 r$502)) (quote (f)))) (quote or)))) n$209)))) #f)) term$204 n$203)) alist$205)))) (set! symbol-record-equal?$146 r$503))) (lambda (k$504 r1$213 r2$212) (k$504 (eq? r1$213 r2$212))))) (set! get-name$147 r$505))) (lambda (k$506 symbol-record$214) (k$506 (vector-ref symbol-record$214 0))))) (set! get-lemmas$148 r$507))) (lambda (k$508 symbol-record$215) (k$508 (vector-ref symbol-record$215 1))))) (set! put-lemmas!$149 r$509))) (lambda (k$510 symbol-record$217 lemmas$216) (k$510 (vector-set! symbol-record$217 1 lemmas$216))))) (set! make-symbol-record$150 r$511))) (lambda (k$512 sym$218) ((lambda (r$513) (vector k$512 sym$218 r$513)) (quote ()))))) (set! *symbol-records-alist*$151 r$514))) (quote ()))) (set! symbol->symbol-record$152 r$515))) (lambda (k$516 sym$219) ((lambda (r$517) ((lambda (x$220) (if x$220 (k$516 (cdr x$220)) (make-symbol-record$150 (lambda (r$518) ((lambda (r$221) ((lambda (r$521) ((lambda (r$520) ((lambda (r$519) (k$516 r$221)) (set! *symbol-records-alist*$151 r$520))) (cons r$521 *symbol-records-alist*$151))) (cons sym$219 r$221))) r$518)) sym$219))) r$517)) (assq sym$219 *symbol-records-alist*$151))))) (set! get$153 r$522))) (lambda (k$523 sym$223 property$222) (symbol->symbol-record$152 (lambda (r$524) (get-lemmas$148 k$523 r$524)) sym$223)))) (set! put$154 r$525))) (lambda (k$526 sym$226 property$225 value$224) (symbol->symbol-record$152 (lambda (r$527) (put-lemmas!$149 k$526 r$527 value$224)) sym$226)))) (set! untranslate-term$155 r$528))) (lambda (k$529 term$227) ((lambda (r$530) (if r$530 ((lambda () ((lambda (r$534) (get-name$147 (lambda (r$531) ((lambda (r$533) (map (lambda (r$532) (k$529 (cons r$531 r$532))) untranslate-term$155 r$533)) (cdr term$227))) r$534)) (car term$227)))) ((lambda () (k$529 term$227))))) (pair? term$227))))) (set! translate-args$156 r$535))) (lambda (k$536 lst$228) ((lambda (r$537) (if r$537 ((lambda () (k$536 (quote ())))) ((lambda () ((lambda (r$541) (translate-term$157 (lambda (r$538) ((lambda (r$540) (translate-args$156 (lambda (r$539) (k$536 (cons r$538 r$539))) r$540)) (cdr lst$228))) r$541)) (car lst$228)))))) (null? lst$228))))) (set! translate-term$157 r$542))) (lambda (k$543 term$229) ((lambda (r$544) (if r$544 ((lambda () ((lambda (r$548) (symbol->symbol-record$152 (lambda (r$545) ((lambda (r$547) (translate-args$156 (lambda (r$546) (k$543 (cons r$545 r$546))) r$547)) (cdr term$229))) r$548)) (car term$229)))) ((lambda () (k$543 term$229))))) (pair? term$229))))) (set! add-lemma$158 r$549))) (lambda (k$550 term$230) ((lambda (k$561) ((lambda (r$562) (if r$562 ((lambda (r$565) ((lambda (r$566) ((lambda (r$563) (if r$563 ((lambda (r$564) (k$561 (pair? r$564))) (cadr term$230)) (k$561 #f))) (eq? r$565 r$566))) (quote equal))) (car term$230)) (k$561 #f))) (pair? term$230))) (lambda (r$551) (if r$551 ((lambda () ((lambda (r$560) ((lambda (r$552) ((lambda (r$553) (translate-term$157 (lambda (r$555) ((lambda (r$559) ((lambda (r$557) ((lambda (r$558) (get$153 (lambda (r$556) ((lambda (r$554) (put$154 k$550 r$552 r$553 r$554)) (cons r$555 r$556))) r$557 r$558)) (quote lemmas))) (car r$559))) (cadr term$230))) term$230)) (quote lemmas))) (car r$560))) (cadr term$230)))) ((lambda () (error k$550 #f "ADD-LEMMA did not like term: " term$230))))))))) (set! add-lemma-lst$159 r$567))) (lambda (k$568 lst$231) ((lambda (r$569) (if r$569 ((lambda () (k$568 #t))) ((lambda () ((lambda (r$572) (add-lemma$158 (lambda (r$570) ((lambda (r$571) (add-lemma-lst$159 k$568 r$571)) (cdr lst$231))) r$572)) (car lst$231)))))) (null? lst$231))))) (set! setup$160 r$573))) (lambda (k$574) ((lambda (r$575) (add-lemma-lst$159 k$574 r$575)) (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem))))))))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)))) (set! term r$576))) (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w))))) (set! alist r$577))) (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b))))))) 0)))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)) */ -/* -"---------------- after cps optimizations:" */ -/* -((define main (lambda (k$645) (read (lambda (count$258) (read (lambda (input$259) (read (lambda (output$260) ((lambda (s2$261) ((lambda (s1$262) ((lambda (name$263) ((lambda () ((lambda (r$651) ((lambda (r$652) ((lambda (r$653) (run-r7rs-benchmark k$645 r$651 count$258 r$652 r$653)) (lambda (k$654 rewrites$264) ((lambda (r$655) (if r$655 (k$654 (= rewrites$264 output$260)) (k$654 #f))) (number? rewrites$264))))) (lambda (k$656) (setup-boyer (lambda (r$657) (hide (lambda (r$658) (test-boyer k$656 alist term r$658)) count$258 input$259)))))) (string-append name$263 ":" s1$262 ":" s2$261))))) "sboyer")) (number->string input$259))) (number->string count$258)))))))))) (define alist #f) (define term #f) (define setup-boyer (lambda (k$638) (k$638 #t))) (define test-boyer (lambda (k$635) (k$635 #t))) (define hide (lambda (k$621 r$254 x$253) ((lambda (r$622) ((lambda (r$623) (call-with-values k$621 r$622 r$623)) (lambda (k$624 v$256 i$255) ((lambda (r$625) (r$625 k$624 x$253)) (vector-ref v$256 i$255))))) (lambda (k$626) ((lambda (r$631) (vector (lambda (r$627) ((lambda (k$629) ((lambda (r$630) (if r$630 (k$629 0) (k$629 1))) (< r$254 100))) (lambda (r$628) (values k$626 r$627 r$628)))) values r$631)) (lambda (k$632 x$257) (k$632 x$257))))))) (define run-r7rs-benchmark (lambda (k$580 name$235 count$234 thunk$233 ok?$232) ((lambda (rounded$237) ((lambda (rounded$238) ((lambda (r$615) ((lambda (r$581) (display (lambda (r$582) (display (lambda (r$583) (newline (lambda (r$584) (flush-output-port (lambda (r$585) (jiffies-per-second (lambda (j/s$239) (current-second (lambda (t0$240) (current-jiffy (lambda (j0$241) ((lambda () ((lambda (k$614) (if #f (k$614 #f) (k$614 #f))) (lambda (r$589) ((lambda (i$243 result$242) ((lambda (loop$244) ((lambda (r$591) ((lambda (r$590) (loop$244 k$580 i$243 result$242)) (set! loop$244 r$591))) (lambda (k$592 i$246 result$245) ((lambda (r$593) (if r$593 ((lambda () ((lambda (r$594) (thunk$233 (lambda (r$595) (loop$244 k$592 r$594 r$595)))) (+ i$246 1)))) (ok?$232 (lambda (r$596) (if r$596 ((lambda () (current-jiffy (lambda (j1$247) (current-second (lambda (t1$248) ((lambda (jifs$249) ((lambda (r$610) (inexact (lambda (secs$250) ((lambda (r$609) (rounded$237 (lambda (secs2$251) ((lambda () (display (lambda (r$603) (write (lambda (r$604) (display (lambda (r$605) (write (lambda (r$606) (display (lambda (r$607) (display (lambda (r$608) (newline (lambda (r$597) (k$592 result$245)))) name$235)) ") for ")) secs2$251)) " seconds (")) secs$250)) "Elapsed time: ")))) r$609)) (- t1$248 t0$240))) r$610)) (/ jifs$249 j/s$239))) (- j1$247 j0$241)))))))) ((lambda () (display (lambda (r$611) (write (lambda (r$612) (newline (lambda (r$613) (k$592 result$245)))) result$245)) "ERROR: returned incorrect result: "))))) result$245))) (< i$246 count$234))))) #f)) 0 r$589)))))))))))))))) name$235)) "Running ")) (set! rounded$237 r$615))) (lambda (k$616 x$252) ((lambda (r$618) (round (lambda (r$617) (k$616 (/ r$617 1000))) r$618)) (* 1000 x$252))))) #f)) #f))) ((lambda (*symbol-records-alist*$120 add-lemma$119 add-lemma-lst$118 apply-subst$117 apply-subst-lst$116 false-term$115 falsep$114 get$113 get-lemmas$112 get-name$111 if-constructor$110 make-symbol-record$109 one-way-unify$108 one-way-unify1$107 one-way-unify1-lst$106 put$105 put-lemmas!$104 rewrite$103 rewrite-args$102 rewrite-count$101 rewrite-with-lemmas$100 scons$99 setup$98 symbol->symbol-record$97 symbol-record-equal?$96 tautologyp$95 tautp$94 term-args-equal?$93 term-equal?$92 term-member?$91 test$90 trans-of-implies$89 trans-of-implies1$88 translate-alist$87 translate-args$86 translate-term$85 true-term$84 truep$83 unify-subst$82 untranslate-term$81) ((lambda () ((lambda (r$265) ((lambda (r$577) ((lambda (r$266) ((lambda (r$576) ((lambda (r$267) ((lambda () ((lambda (setup$160 add-lemma-lst$159 add-lemma$158 translate-term$157 translate-args$156 untranslate-term$155 put$154 get$153 symbol->symbol-record$152 *symbol-records-alist*$151 make-symbol-record$150 put-lemmas!$149 get-lemmas$148 get-name$147 symbol-record-equal?$146 test$145 translate-alist$144 apply-subst$143 apply-subst-lst$142 tautp$141 tautologyp$140 if-constructor$139 rewrite-count$138 scons$137 rewrite$136 rewrite-args$135 rewrite-with-lemmas$134 unify-subst$133 one-way-unify$132 one-way-unify1$131 one-way-unify1-lst$130 falsep$129 truep$128 false-term$127 true-term$126 trans-of-implies$125 trans-of-implies1$124 term-equal?$123 term-args-equal?$122 term-member?$121) ((lambda (r$573) ((lambda (r$269) ((lambda (r$567) ((lambda (r$270) ((lambda (r$549) ((lambda (r$271) ((lambda (r$542) ((lambda (r$272) ((lambda (r$535) ((lambda (r$273) ((lambda (r$528) ((lambda (r$274) ((lambda (r$525) ((lambda (r$275) ((lambda (r$522) ((lambda (r$276) ((lambda (r$515) ((lambda (r$277) ((lambda (r$514) ((lambda (r$278) ((lambda (r$511) ((lambda (r$279) ((lambda (r$509) ((lambda (r$280) ((lambda (r$507) ((lambda (r$281) ((lambda (r$505) ((lambda (r$282) ((lambda (r$503) ((lambda (r$283) ((lambda (r$489) ((lambda (r$284) ((lambda (r$480) ((lambda (r$285) ((lambda (r$473) ((lambda (r$286) ((lambda (r$466) ((lambda (r$287) ((lambda (r$461) ((lambda (r$288) ((lambda (r$441) ((lambda (r$289) ((lambda (r$440) ((lambda (r$290) ((lambda (r$291) ((lambda (r$433) ((lambda (r$292) ((lambda (r$422) ((lambda (r$293) ((lambda (r$415) ((lambda (r$294) ((lambda (r$405) ((lambda (r$295) ((lambda (r$404) ((lambda (r$296) ((lambda (r$400) ((lambda (r$297) ((lambda (r$385) ((lambda (r$298) ((lambda (r$376) ((lambda (r$299) ((lambda (r$373) ((lambda (r$300) ((lambda (r$370) ((lambda (r$301) ((lambda (r$369) ((lambda (r$302) ((lambda (r$368) ((lambda (r$303) ((lambda (r$361) ((lambda (r$304) ((lambda (r$351) ((lambda (r$305) ((lambda (r$342) ((lambda (r$306) ((lambda (r$333) ((lambda (r$307) ((lambda (r$327) ((lambda (r$308) ((lambda (r$314) ((lambda (r$309) ((lambda (r$310) ((lambda (r$268) (main %halt)) (set! test-boyer r$310))) (lambda (k$311 alist$163 term$162 n$161) ((lambda (r$312) (test$145 (lambda (answer$164) (if answer$164 (k$311 rewrite-count$138) (k$311 #f))) alist$163 term$162 n$161)) (set! rewrite-count$138 0))))) (set! setup-boyer r$314))) (lambda (k$315) ((lambda (r$326) ((lambda (r$316) ((lambda (r$325) (symbol->symbol-record$152 (lambda (r$324) ((lambda (r$317) ((lambda (r$323) (translate-term$157 (lambda (r$322) ((lambda (r$318) ((lambda (r$321) (translate-term$157 (lambda (r$320) ((lambda (r$319) (setup$160 k$315)) (set! true-term$126 r$320))) r$321)) (quote (t)))) (set! false-term$127 r$322))) r$323)) (quote (f)))) (set! if-constructor$139 r$324))) r$325)) (quote if))) (set! *symbol-records-alist*$151 r$326))) (quote ()))))) (set! term-member?$121 r$327))) (lambda (k$328 x$166 lst$165) ((lambda (r$329) (if r$329 ((lambda () (k$328 #f))) ((lambda (r$332) (term-equal?$123 (lambda (r$330) (if r$330 ((lambda () (k$328 #t))) ((lambda () ((lambda (r$331) (term-member?$121 k$328 x$166 r$331)) (cdr lst$165)))))) x$166 r$332)) (car lst$165)))) (null? lst$165))))) (set! term-args-equal?$122 r$333))) (lambda (k$334 lst1$168 lst2$167) ((lambda (r$335) (if r$335 ((lambda () (k$334 (null? lst2$167)))) ((lambda (r$336) (if r$336 ((lambda () (k$334 #f))) ((lambda (r$340) ((lambda (r$341) (term-equal?$123 (lambda (r$337) (if r$337 ((lambda () ((lambda (r$338) ((lambda (r$339) (term-args-equal?$122 k$334 r$338 r$339)) (cdr lst2$167))) (cdr lst1$168)))) ((lambda () (k$334 #f))))) r$340 r$341)) (car lst2$167))) (car lst1$168)))) (null? lst2$167)))) (null? lst1$168))))) (set! term-equal?$123 r$342))) (lambda (k$343 x$170 y$169) ((lambda (r$344) (if r$344 ((lambda () ((lambda (r$345) (if r$345 ((lambda (r$349) ((lambda (r$350) (symbol-record-equal?$146 (lambda (r$346) (if r$346 ((lambda (r$347) ((lambda (r$348) (term-args-equal?$122 k$343 r$347 r$348)) (cdr y$169))) (cdr x$170)) (k$343 #f))) r$349 r$350)) (car y$169))) (car x$170)) (k$343 #f))) (pair? y$169)))) ((lambda () (k$343 (equal? x$170 y$169)))))) (pair? x$170))))) (set! trans-of-implies1$124 r$351))) (lambda (k$352 n$171) ((lambda (r$353) (if r$353 ((lambda () ((lambda (r$354) (list k$352 r$354 0 1)) (quote implies)))) ((lambda () ((lambda (r$355) ((lambda (r$359) ((lambda (r$360) (list (lambda (r$356) ((lambda (r$358) (trans-of-implies1$124 (lambda (r$357) (list k$352 r$355 r$356 r$357)) r$358)) (- n$171 1))) r$359 r$360 n$171)) (- n$171 1))) (quote implies))) (quote and)))))) (equal? n$171 1))))) (set! trans-of-implies$125 r$361))) (lambda (k$362 n$172) ((lambda (r$364) (trans-of-implies1$124 (lambda (r$365) ((lambda (r$367) (list (lambda (r$366) (list (lambda (r$363) (translate-term$157 k$362 r$363)) r$364 r$365 r$366)) r$367 0 n$172)) (quote implies))) n$172)) (quote implies))))) (set! true-term$126 r$368))) (quote *))) (set! false-term$127 r$369))) (quote *))) (set! truep$128 r$370))) (lambda (k$371 x$174 lst$173) (term-equal?$123 (lambda (tmp$175) (if tmp$175 (k$371 tmp$175) (term-member?$121 k$371 x$174 lst$173))) x$174 true-term$126)))) (set! falsep$129 r$373))) (lambda (k$374 x$177 lst$176) (term-equal?$123 (lambda (tmp$178) (if tmp$178 (k$374 tmp$178) (term-member?$121 k$374 x$177 lst$176))) x$177 false-term$127)))) (set! one-way-unify1-lst$130 r$376))) (lambda (k$377 lst1$180 lst2$179) ((lambda (r$378) (if r$378 ((lambda () (k$377 (null? lst2$179)))) ((lambda (r$379) (if r$379 ((lambda () (k$377 #f))) ((lambda (r$383) ((lambda (r$384) (one-way-unify1$131 (lambda (r$380) (if r$380 ((lambda () ((lambda (r$381) ((lambda (r$382) (one-way-unify1-lst$130 k$377 r$381 r$382)) (cdr lst2$179))) (cdr lst1$180)))) ((lambda () (k$377 #f))))) r$383 r$384)) (car lst2$179))) (car lst1$180)))) (null? lst2$179)))) (null? lst1$180))))) (set! one-way-unify1$131 r$385))) (lambda (k$386 term1$182 term2$181) ((lambda (r$387) (if r$387 ((lambda (r$388) (if r$388 ((lambda (r$392) ((lambda (r$393) ((lambda (r$389) (if r$389 ((lambda () ((lambda (r$390) ((lambda (r$391) (one-way-unify1-lst$130 k$386 r$390 r$391)) (cdr term2$181))) (cdr term1$182)))) ((lambda () (k$386 #f))))) (eq? r$392 r$393))) (car term2$181))) (car term1$182)) ((lambda () (k$386 #f))))) (pair? term1$182)) ((lambda () ((lambda (temp-temp$183) (if temp-temp$183 ((lambda () ((lambda (r$395) (term-equal?$123 k$386 term1$182 r$395)) (cdr temp-temp$183)))) ((lambda (r$396) (if r$396 ((lambda () (k$386 (equal? term1$182 term2$181)))) ((lambda () ((lambda (r$399) ((lambda (r$398) ((lambda (r$397) (k$386 #t)) (set! unify-subst$133 r$398))) (cons r$399 unify-subst$133))) (cons term2$181 term1$182)))))) (number? term2$181)))) (assq term2$181 unify-subst$133)))))) (pair? term2$181))))) (set! one-way-unify$132 r$400))) (lambda (k$401 term1$185 term2$184) ((lambda (r$403) ((lambda (r$402) (one-way-unify1$131 k$401 term1$185 term2$184)) (set! unify-subst$133 r$403))) (quote ()))))) (set! unify-subst$133 r$404))) (quote *))) (set! rewrite-with-lemmas$134 r$405))) (lambda (k$406 term$187 lst$186) ((lambda (r$407) (if r$407 ((lambda () (k$406 term$187))) ((lambda (r$414) ((lambda (r$413) (one-way-unify$132 (lambda (r$408) (if r$408 ((lambda () ((lambda (r$411) ((lambda (r$410) (apply-subst$143 (lambda (r$409) (rewrite$136 k$406 r$409)) unify-subst$133 r$410)) (caddr r$411))) (car lst$186)))) ((lambda () ((lambda (r$412) (rewrite-with-lemmas$134 k$406 term$187 r$412)) (cdr lst$186)))))) term$187 r$413)) (cadr r$414))) (car lst$186)))) (null? lst$186))))) (set! rewrite-args$135 r$415))) (lambda (k$416 lst$188) ((lambda (r$417) (if r$417 ((lambda () (k$416 (quote ())))) ((lambda () ((lambda (r$421) (rewrite$136 (lambda (r$418) ((lambda (r$420) (rewrite-args$135 (lambda (r$419) (scons$137 k$416 r$418 r$419 lst$188)) r$420)) (cdr lst$188))) r$421)) (car lst$188)))))) (null? lst$188))))) (set! rewrite$136 r$422))) (lambda (k$423 term$189) ((lambda (r$432) ((lambda (r$424) ((lambda (r$425) (if r$425 ((lambda () ((lambda (r$429) ((lambda (r$431) (rewrite-args$135 (lambda (r$430) (scons$137 (lambda (r$426) ((lambda (r$428) (get-lemmas$148 (lambda (r$427) (rewrite-with-lemmas$134 k$423 r$426 r$427)) r$428)) (car term$189))) r$429 r$430 term$189)) r$431)) (cdr term$189))) (car term$189)))) ((lambda () (k$423 term$189))))) (pair? term$189))) (set! rewrite-count$138 r$432))) (+ rewrite-count$138 1))))) (set! scons$137 r$433))) (lambda (k$434 x$192 y$191 original$190) ((lambda (k$436) ((lambda (r$439) ((lambda (r$437) (if r$437 ((lambda (r$438) (k$436 (eq? y$191 r$438))) (cdr original$190)) (k$436 #f))) (eq? x$192 r$439))) (car original$190))) (lambda (r$435) (if r$435 (k$434 original$190) (k$434 (cons x$192 y$191)))))))) (set! rewrite-count$138 0))) (set! if-constructor$139 r$440))) (quote *))) (set! tautologyp$140 r$441))) (lambda (k$442 x$195 true-lst$194 false-lst$193) (truep$128 (lambda (r$443) (if r$443 ((lambda () (k$442 #t))) (falsep$129 (lambda (r$444) (if r$444 ((lambda () (k$442 #f))) ((lambda (r$445) (if r$445 ((lambda (r$460) ((lambda (r$446) (if r$446 ((lambda () ((lambda (r$459) (truep$128 (lambda (r$447) (if r$447 ((lambda () ((lambda (r$448) (tautologyp$140 k$442 r$448 true-lst$194 false-lst$193)) (caddr x$195)))) ((lambda (r$458) (falsep$129 (lambda (r$449) (if r$449 ((lambda () ((lambda (r$450) (tautologyp$140 k$442 r$450 true-lst$194 false-lst$193)) (cadddr x$195)))) ((lambda () ((lambda (r$455) ((lambda (r$457) ((lambda (r$456) (tautologyp$140 (lambda (r$451) (if r$451 ((lambda (r$452) ((lambda (r$454) ((lambda (r$453) (tautologyp$140 k$442 r$452 true-lst$194 r$453)) (cons r$454 false-lst$193))) (cadr x$195))) (cadddr x$195)) (k$442 #f))) r$455 r$456 false-lst$193)) (cons r$457 true-lst$194))) (cadr x$195))) (caddr x$195)))))) r$458 false-lst$193)) (cadr x$195)))) r$459 true-lst$194)) (cadr x$195)))) ((lambda () (k$442 #f))))) (eq? r$460 if-constructor$139))) (car x$195)) ((lambda () (k$442 #f))))) (pair? x$195)))) x$195 false-lst$193))) x$195 true-lst$194)))) (set! tautp$141 r$461))) (lambda (k$462 x$196) (rewrite$136 (lambda (r$463) ((lambda (r$464) ((lambda (r$465) (tautologyp$140 k$462 r$463 r$464 r$465)) (quote ()))) (quote ()))) x$196)))) (set! apply-subst-lst$142 r$466))) (lambda (k$467 alist$198 lst$197) ((lambda (r$468) (if r$468 ((lambda () (k$467 (quote ())))) ((lambda () ((lambda (r$472) (apply-subst$143 (lambda (r$469) ((lambda (r$471) (apply-subst-lst$142 (lambda (r$470) (k$467 (cons r$469 r$470))) alist$198 r$471)) (cdr lst$197))) alist$198 r$472)) (car lst$197)))))) (null? lst$197))))) (set! apply-subst$143 r$473))) (lambda (k$474 alist$200 term$199) ((lambda (r$475) (if r$475 ((lambda () ((lambda (r$476) ((lambda (r$478) (apply-subst-lst$142 (lambda (r$477) (k$474 (cons r$476 r$477))) alist$200 r$478)) (cdr term$199))) (car term$199)))) ((lambda () ((lambda (temp-temp$201) (if temp-temp$201 (k$474 (cdr temp-temp$201)) (k$474 term$199))) (assq term$199 alist$200)))))) (pair? term$199))))) (set! translate-alist$144 r$480))) (lambda (k$481 alist$202) ((lambda (r$482) (if r$482 ((lambda () (k$481 (quote ())))) ((lambda () ((lambda (r$486) ((lambda (r$488) (translate-term$157 (lambda (r$487) ((lambda (r$483) ((lambda (r$485) (translate-alist$144 (lambda (r$484) (k$481 (cons r$483 r$484))) r$485)) (cdr alist$202))) (cons r$486 r$487))) r$488)) (cdar alist$202))) (caar alist$202)))))) (null? alist$202))))) (set! test$145 r$489))) (lambda (k$490 alist$205 term$204 n$203) (translate-alist$144 (lambda (r$492) ((lambda (term$207 n$206) ((lambda (lp$208) ((lambda (r$496) ((lambda (r$495) (lp$208 (lambda (r$494) (translate-term$157 (lambda (r$493) (apply-subst$143 (lambda (term$211) (tautp$141 k$490 term$211)) r$492 r$493)) r$494)) term$207 n$206)) (set! lp$208 r$496))) (lambda (k$497 term$210 n$209) (zero? (lambda (r$498) (if r$498 (k$497 term$210) ((lambda (r$501) ((lambda (r$502) (list (lambda (r$499) ((lambda (r$500) (lp$208 k$497 r$499 r$500)) (- n$209 1))) r$501 term$210 r$502)) (quote (f)))) (quote or)))) n$209)))) #f)) term$204 n$203)) alist$205)))) (set! symbol-record-equal?$146 r$503))) (lambda (k$504 r1$213 r2$212) (k$504 (eq? r1$213 r2$212))))) (set! get-name$147 r$505))) (lambda (k$506 symbol-record$214) (k$506 (vector-ref symbol-record$214 0))))) (set! get-lemmas$148 r$507))) (lambda (k$508 symbol-record$215) (k$508 (vector-ref symbol-record$215 1))))) (set! put-lemmas!$149 r$509))) (lambda (k$510 symbol-record$217 lemmas$216) (k$510 (vector-set! symbol-record$217 1 lemmas$216))))) (set! make-symbol-record$150 r$511))) (lambda (k$512 sym$218) ((lambda (r$513) (vector k$512 sym$218 r$513)) (quote ()))))) (set! *symbol-records-alist*$151 r$514))) (quote ()))) (set! symbol->symbol-record$152 r$515))) (lambda (k$516 sym$219) ((lambda (x$220) (if x$220 (k$516 (cdr x$220)) (make-symbol-record$150 (lambda (r$221) ((lambda (r$521) ((lambda (r$520) ((lambda (r$519) (k$516 r$221)) (set! *symbol-records-alist*$151 r$520))) (cons r$521 *symbol-records-alist*$151))) (cons sym$219 r$221))) sym$219))) (assq sym$219 *symbol-records-alist*$151))))) (set! get$153 r$522))) (lambda (k$523 sym$223 property$222) (symbol->symbol-record$152 (lambda (r$524) (get-lemmas$148 k$523 r$524)) sym$223)))) (set! put$154 r$525))) (lambda (k$526 sym$226 property$225 value$224) (symbol->symbol-record$152 (lambda (r$527) (put-lemmas!$149 k$526 r$527 value$224)) sym$226)))) (set! untranslate-term$155 r$528))) (lambda (k$529 term$227) ((lambda (r$530) (if r$530 ((lambda () ((lambda (r$534) (get-name$147 (lambda (r$531) ((lambda (r$533) (map (lambda (r$532) (k$529 (cons r$531 r$532))) untranslate-term$155 r$533)) (cdr term$227))) r$534)) (car term$227)))) ((lambda () (k$529 term$227))))) (pair? term$227))))) (set! translate-args$156 r$535))) (lambda (k$536 lst$228) ((lambda (r$537) (if r$537 ((lambda () (k$536 (quote ())))) ((lambda () ((lambda (r$541) (translate-term$157 (lambda (r$538) ((lambda (r$540) (translate-args$156 (lambda (r$539) (k$536 (cons r$538 r$539))) r$540)) (cdr lst$228))) r$541)) (car lst$228)))))) (null? lst$228))))) (set! translate-term$157 r$542))) (lambda (k$543 term$229) ((lambda (r$544) (if r$544 ((lambda () ((lambda (r$548) (symbol->symbol-record$152 (lambda (r$545) ((lambda (r$547) (translate-args$156 (lambda (r$546) (k$543 (cons r$545 r$546))) r$547)) (cdr term$229))) r$548)) (car term$229)))) ((lambda () (k$543 term$229))))) (pair? term$229))))) (set! add-lemma$158 r$549))) (lambda (k$550 term$230) ((lambda (k$561) ((lambda (r$562) (if r$562 ((lambda (r$565) ((lambda (r$566) ((lambda (r$563) (if r$563 ((lambda (r$564) (k$561 (pair? r$564))) (cadr term$230)) (k$561 #f))) (eq? r$565 r$566))) (quote equal))) (car term$230)) (k$561 #f))) (pair? term$230))) (lambda (r$551) (if r$551 ((lambda () ((lambda (r$560) ((lambda (r$552) ((lambda (r$553) (translate-term$157 (lambda (r$555) ((lambda (r$559) ((lambda (r$557) ((lambda (r$558) (get$153 (lambda (r$556) ((lambda (r$554) (put$154 k$550 r$552 r$553 r$554)) (cons r$555 r$556))) r$557 r$558)) (quote lemmas))) (car r$559))) (cadr term$230))) term$230)) (quote lemmas))) (car r$560))) (cadr term$230)))) ((lambda () (error k$550 #f "ADD-LEMMA did not like term: " term$230))))))))) (set! add-lemma-lst$159 r$567))) (lambda (k$568 lst$231) ((lambda (r$569) (if r$569 ((lambda () (k$568 #t))) ((lambda () ((lambda (r$572) (add-lemma$158 (lambda (r$570) ((lambda (r$571) (add-lemma-lst$159 k$568 r$571)) (cdr lst$231))) r$572)) (car lst$231)))))) (null? lst$231))))) (set! setup$160 r$573))) (lambda (k$574) ((lambda (r$575) (add-lemma-lst$159 k$574 r$575)) (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem))))))))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)))) (set! term r$576))) (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w))))) (set! alist r$577))) (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b))))))) 0)))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)) */ -/* -"---------------- after wrap-mutables:" */ -/* -((define main (lambda (k$645) (read (lambda (count$258) (read (lambda (input$259) (read (lambda (output$260) ((lambda (s2$261) ((lambda (s1$262) ((lambda (name$263) ((lambda () ((lambda (r$651) ((lambda (r$652) ((lambda (r$653) (run-r7rs-benchmark k$645 r$651 count$258 r$652 r$653)) (lambda (k$654 rewrites$264) ((lambda (r$655) (if r$655 (k$654 (= rewrites$264 output$260)) (k$654 #f))) (number? rewrites$264))))) (lambda (k$656) (setup-boyer (lambda (r$657) (hide (lambda (r$658) (test-boyer k$656 alist term r$658)) count$258 input$259)))))) (string-append name$263 ":" s1$262 ":" s2$261))))) "sboyer")) (number->string input$259))) (number->string count$258)))))))))) (define alist #f) (define term #f) (define setup-boyer (lambda (k$638) (k$638 #t))) (define test-boyer (lambda (k$635) (k$635 #t))) (define hide (lambda (k$621 r$254 x$253) ((lambda (r$622) ((lambda (r$623) (call-with-values k$621 r$622 r$623)) (lambda (k$624 v$256 i$255) ((lambda (r$625) (r$625 k$624 x$253)) (vector-ref v$256 i$255))))) (lambda (k$626) ((lambda (r$631) (vector (lambda (r$627) ((lambda (k$629) ((lambda (r$630) (if r$630 (k$629 0) (k$629 1))) (< r$254 100))) (lambda (r$628) (values k$626 r$627 r$628)))) values r$631)) (lambda (k$632 x$257) (k$632 x$257))))))) (define run-r7rs-benchmark (lambda (k$580 name$235 count$234 thunk$233 ok?$232) ((lambda (rounded$237) ((lambda (rounded$237) ((lambda (rounded$238) ((lambda (r$615) ((lambda (r$581) (display (lambda (r$582) (display (lambda (r$583) (newline (lambda (r$584) (flush-output-port (lambda (r$585) (jiffies-per-second (lambda (j/s$239) (current-second (lambda (t0$240) (current-jiffy (lambda (j0$241) ((lambda () ((lambda (k$614) (if #f (k$614 #f) (k$614 #f))) (lambda (r$589) ((lambda (i$243 result$242) ((lambda (loop$244) ((lambda (loop$244) ((lambda (r$591) ((lambda (r$590) ((cell-get loop$244) k$580 i$243 result$242)) (set-cell! loop$244 r$591))) (lambda (k$592 i$246 result$245) ((lambda (r$593) (if r$593 ((lambda () ((lambda (r$594) (thunk$233 (lambda (r$595) ((cell-get loop$244) k$592 r$594 r$595)))) (+ i$246 1)))) (ok?$232 (lambda (r$596) (if r$596 ((lambda () (current-jiffy (lambda (j1$247) (current-second (lambda (t1$248) ((lambda (jifs$249) ((lambda (r$610) (inexact (lambda (secs$250) ((lambda (r$609) ((cell-get rounded$237) (lambda (secs2$251) ((lambda () (display (lambda (r$603) (write (lambda (r$604) (display (lambda (r$605) (write (lambda (r$606) (display (lambda (r$607) (display (lambda (r$608) (newline (lambda (r$597) (k$592 result$245)))) name$235)) ") for ")) secs2$251)) " seconds (")) secs$250)) "Elapsed time: ")))) r$609)) (- t1$248 t0$240))) r$610)) (/ jifs$249 j/s$239))) (- j1$247 j0$241)))))))) ((lambda () (display (lambda (r$611) (write (lambda (r$612) (newline (lambda (r$613) (k$592 result$245)))) result$245)) "ERROR: returned incorrect result: "))))) result$245))) (< i$246 count$234))))) (cell loop$244))) #f)) 0 r$589)))))))))))))))) name$235)) "Running ")) (set-cell! rounded$237 r$615))) (lambda (k$616 x$252) ((lambda (r$618) (round (lambda (r$617) (k$616 (/ r$617 1000))) r$618)) (* 1000 x$252))))) #f)) (cell rounded$237))) #f))) ((lambda (*symbol-records-alist*$120 add-lemma$119 add-lemma-lst$118 apply-subst$117 apply-subst-lst$116 false-term$115 falsep$114 get$113 get-lemmas$112 get-name$111 if-constructor$110 make-symbol-record$109 one-way-unify$108 one-way-unify1$107 one-way-unify1-lst$106 put$105 put-lemmas!$104 rewrite$103 rewrite-args$102 rewrite-count$101 rewrite-with-lemmas$100 scons$99 setup$98 symbol->symbol-record$97 symbol-record-equal?$96 tautologyp$95 tautp$94 term-args-equal?$93 term-equal?$92 term-member?$91 test$90 trans-of-implies$89 trans-of-implies1$88 translate-alist$87 translate-args$86 translate-term$85 true-term$84 truep$83 unify-subst$82 untranslate-term$81) ((lambda () ((lambda (r$265) ((lambda (r$577) ((lambda (r$266) ((lambda (r$576) ((lambda (r$267) ((lambda () ((lambda (setup$160 add-lemma-lst$159 add-lemma$158 translate-term$157 translate-args$156 untranslate-term$155 put$154 get$153 symbol->symbol-record$152 *symbol-records-alist*$151 make-symbol-record$150 put-lemmas!$149 get-lemmas$148 get-name$147 symbol-record-equal?$146 test$145 translate-alist$144 apply-subst$143 apply-subst-lst$142 tautp$141 tautologyp$140 if-constructor$139 rewrite-count$138 scons$137 rewrite$136 rewrite-args$135 rewrite-with-lemmas$134 unify-subst$133 one-way-unify$132 one-way-unify1$131 one-way-unify1-lst$130 falsep$129 truep$128 false-term$127 true-term$126 trans-of-implies$125 trans-of-implies1$124 term-equal?$123 term-args-equal?$122 term-member?$121) ((lambda (setup$160) ((lambda (add-lemma-lst$159) ((lambda (add-lemma$158) ((lambda (translate-term$157) ((lambda (translate-args$156) ((lambda (untranslate-term$155) ((lambda (put$154) ((lambda (get$153) ((lambda (symbol->symbol-record$152) ((lambda (*symbol-records-alist*$151) ((lambda (make-symbol-record$150) ((lambda (put-lemmas!$149) ((lambda (get-lemmas$148) ((lambda (get-name$147) ((lambda (symbol-record-equal?$146) ((lambda (test$145) ((lambda (translate-alist$144) ((lambda (apply-subst$143) ((lambda (apply-subst-lst$142) ((lambda (tautp$141) ((lambda (tautologyp$140) ((lambda (if-constructor$139) ((lambda (rewrite-count$138) ((lambda (scons$137) ((lambda (rewrite$136) ((lambda (rewrite-args$135) ((lambda (rewrite-with-lemmas$134) ((lambda (unify-subst$133) ((lambda (one-way-unify$132) ((lambda (one-way-unify1$131) ((lambda (one-way-unify1-lst$130) ((lambda (falsep$129) ((lambda (truep$128) ((lambda (false-term$127) ((lambda (true-term$126) ((lambda (trans-of-implies$125) ((lambda (trans-of-implies1$124) ((lambda (term-equal?$123) ((lambda (term-args-equal?$122) ((lambda (term-member?$121) ((lambda (r$573) ((lambda (r$269) ((lambda (r$567) ((lambda (r$270) ((lambda (r$549) ((lambda (r$271) ((lambda (r$542) ((lambda (r$272) ((lambda (r$535) ((lambda (r$273) ((lambda (r$528) ((lambda (r$274) ((lambda (r$525) ((lambda (r$275) ((lambda (r$522) ((lambda (r$276) ((lambda (r$515) ((lambda (r$277) ((lambda (r$514) ((lambda (r$278) ((lambda (r$511) ((lambda (r$279) ((lambda (r$509) ((lambda (r$280) ((lambda (r$507) ((lambda (r$281) ((lambda (r$505) ((lambda (r$282) ((lambda (r$503) ((lambda (r$283) ((lambda (r$489) ((lambda (r$284) ((lambda (r$480) ((lambda (r$285) ((lambda (r$473) ((lambda (r$286) ((lambda (r$466) ((lambda (r$287) ((lambda (r$461) ((lambda (r$288) ((lambda (r$441) ((lambda (r$289) ((lambda (r$440) ((lambda (r$290) ((lambda (r$291) ((lambda (r$433) ((lambda (r$292) ((lambda (r$422) ((lambda (r$293) ((lambda (r$415) ((lambda (r$294) ((lambda (r$405) ((lambda (r$295) ((lambda (r$404) ((lambda (r$296) ((lambda (r$400) ((lambda (r$297) ((lambda (r$385) ((lambda (r$298) ((lambda (r$376) ((lambda (r$299) ((lambda (r$373) ((lambda (r$300) ((lambda (r$370) ((lambda (r$301) ((lambda (r$369) ((lambda (r$302) ((lambda (r$368) ((lambda (r$303) ((lambda (r$361) ((lambda (r$304) ((lambda (r$351) ((lambda (r$305) ((lambda (r$342) ((lambda (r$306) ((lambda (r$333) ((lambda (r$307) ((lambda (r$327) ((lambda (r$308) ((lambda (r$314) ((lambda (r$309) ((lambda (r$310) ((lambda (r$268) (main %halt)) (set-global! test-boyer r$310))) (lambda (k$311 alist$163 term$162 n$161) ((lambda (r$312) ((cell-get test$145) (lambda (answer$164) (if answer$164 (k$311 (cell-get rewrite-count$138)) (k$311 #f))) alist$163 term$162 n$161)) (set-cell! rewrite-count$138 0))))) (set-global! setup-boyer r$314))) (lambda (k$315) ((lambda (r$326) ((lambda (r$316) ((lambda (r$325) ((cell-get symbol->symbol-record$152) (lambda (r$324) ((lambda (r$317) ((lambda (r$323) ((cell-get translate-term$157) (lambda (r$322) ((lambda (r$318) ((lambda (r$321) ((cell-get translate-term$157) (lambda (r$320) ((lambda (r$319) ((cell-get setup$160) k$315)) (set-cell! true-term$126 r$320))) r$321)) (quote (t)))) (set-cell! false-term$127 r$322))) r$323)) (quote (f)))) (set-cell! if-constructor$139 r$324))) r$325)) (quote if))) (set-cell! *symbol-records-alist*$151 r$326))) (quote ()))))) (set-cell! term-member?$121 r$327))) (lambda (k$328 x$166 lst$165) ((lambda (r$329) (if r$329 ((lambda () (k$328 #f))) ((lambda (r$332) ((cell-get term-equal?$123) (lambda (r$330) (if r$330 ((lambda () (k$328 #t))) ((lambda () ((lambda (r$331) ((cell-get term-member?$121) k$328 x$166 r$331)) (cdr lst$165)))))) x$166 r$332)) (car lst$165)))) (null? lst$165))))) (set-cell! term-args-equal?$122 r$333))) (lambda (k$334 lst1$168 lst2$167) ((lambda (r$335) (if r$335 ((lambda () (k$334 (null? lst2$167)))) ((lambda (r$336) (if r$336 ((lambda () (k$334 #f))) ((lambda (r$340) ((lambda (r$341) ((cell-get term-equal?$123) (lambda (r$337) (if r$337 ((lambda () ((lambda (r$338) ((lambda (r$339) ((cell-get term-args-equal?$122) k$334 r$338 r$339)) (cdr lst2$167))) (cdr lst1$168)))) ((lambda () (k$334 #f))))) r$340 r$341)) (car lst2$167))) (car lst1$168)))) (null? lst2$167)))) (null? lst1$168))))) (set-cell! term-equal?$123 r$342))) (lambda (k$343 x$170 y$169) ((lambda (r$344) (if r$344 ((lambda () ((lambda (r$345) (if r$345 ((lambda (r$349) ((lambda (r$350) ((cell-get symbol-record-equal?$146) (lambda (r$346) (if r$346 ((lambda (r$347) ((lambda (r$348) ((cell-get term-args-equal?$122) k$343 r$347 r$348)) (cdr y$169))) (cdr x$170)) (k$343 #f))) r$349 r$350)) (car y$169))) (car x$170)) (k$343 #f))) (pair? y$169)))) ((lambda () (k$343 (equal? x$170 y$169)))))) (pair? x$170))))) (set-cell! trans-of-implies1$124 r$351))) (lambda (k$352 n$171) ((lambda (r$353) (if r$353 ((lambda () ((lambda (r$354) (list k$352 r$354 0 1)) (quote implies)))) ((lambda () ((lambda (r$355) ((lambda (r$359) ((lambda (r$360) (list (lambda (r$356) ((lambda (r$358) ((cell-get trans-of-implies1$124) (lambda (r$357) (list k$352 r$355 r$356 r$357)) r$358)) (- n$171 1))) r$359 r$360 n$171)) (- n$171 1))) (quote implies))) (quote and)))))) (equal? n$171 1))))) (set-cell! trans-of-implies$125 r$361))) (lambda (k$362 n$172) ((lambda (r$364) ((cell-get trans-of-implies1$124) (lambda (r$365) ((lambda (r$367) (list (lambda (r$366) (list (lambda (r$363) ((cell-get translate-term$157) k$362 r$363)) r$364 r$365 r$366)) r$367 0 n$172)) (quote implies))) n$172)) (quote implies))))) (set-cell! true-term$126 r$368))) (quote *))) (set-cell! false-term$127 r$369))) (quote *))) (set-cell! truep$128 r$370))) (lambda (k$371 x$174 lst$173) ((cell-get term-equal?$123) (lambda (tmp$175) (if tmp$175 (k$371 tmp$175) ((cell-get term-member?$121) k$371 x$174 lst$173))) x$174 (cell-get true-term$126))))) (set-cell! falsep$129 r$373))) (lambda (k$374 x$177 lst$176) ((cell-get term-equal?$123) (lambda (tmp$178) (if tmp$178 (k$374 tmp$178) ((cell-get term-member?$121) k$374 x$177 lst$176))) x$177 (cell-get false-term$127))))) (set-cell! one-way-unify1-lst$130 r$376))) (lambda (k$377 lst1$180 lst2$179) ((lambda (r$378) (if r$378 ((lambda () (k$377 (null? lst2$179)))) ((lambda (r$379) (if r$379 ((lambda () (k$377 #f))) ((lambda (r$383) ((lambda (r$384) ((cell-get one-way-unify1$131) (lambda (r$380) (if r$380 ((lambda () ((lambda (r$381) ((lambda (r$382) ((cell-get one-way-unify1-lst$130) k$377 r$381 r$382)) (cdr lst2$179))) (cdr lst1$180)))) ((lambda () (k$377 #f))))) r$383 r$384)) (car lst2$179))) (car lst1$180)))) (null? lst2$179)))) (null? lst1$180))))) (set-cell! one-way-unify1$131 r$385))) (lambda (k$386 term1$182 term2$181) ((lambda (r$387) (if r$387 ((lambda (r$388) (if r$388 ((lambda (r$392) ((lambda (r$393) ((lambda (r$389) (if r$389 ((lambda () ((lambda (r$390) ((lambda (r$391) ((cell-get one-way-unify1-lst$130) k$386 r$390 r$391)) (cdr term2$181))) (cdr term1$182)))) ((lambda () (k$386 #f))))) (eq? r$392 r$393))) (car term2$181))) (car term1$182)) ((lambda () (k$386 #f))))) (pair? term1$182)) ((lambda () ((lambda (temp-temp$183) (if temp-temp$183 ((lambda () ((lambda (r$395) ((cell-get term-equal?$123) k$386 term1$182 r$395)) (cdr temp-temp$183)))) ((lambda (r$396) (if r$396 ((lambda () (k$386 (equal? term1$182 term2$181)))) ((lambda () ((lambda (r$399) ((lambda (r$398) ((lambda (r$397) (k$386 #t)) (set-cell! unify-subst$133 r$398))) (cons r$399 (cell-get unify-subst$133)))) (cons term2$181 term1$182)))))) (number? term2$181)))) (assq term2$181 (cell-get unify-subst$133))))))) (pair? term2$181))))) (set-cell! one-way-unify$132 r$400))) (lambda (k$401 term1$185 term2$184) ((lambda (r$403) ((lambda (r$402) ((cell-get one-way-unify1$131) k$401 term1$185 term2$184)) (set-cell! unify-subst$133 r$403))) (quote ()))))) (set-cell! unify-subst$133 r$404))) (quote *))) (set-cell! rewrite-with-lemmas$134 r$405))) (lambda (k$406 term$187 lst$186) ((lambda (r$407) (if r$407 ((lambda () (k$406 term$187))) ((lambda (r$414) ((lambda (r$413) ((cell-get one-way-unify$132) (lambda (r$408) (if r$408 ((lambda () ((lambda (r$411) ((lambda (r$410) ((cell-get apply-subst$143) (lambda (r$409) ((cell-get rewrite$136) k$406 r$409)) (cell-get unify-subst$133) r$410)) (caddr r$411))) (car lst$186)))) ((lambda () ((lambda (r$412) ((cell-get rewrite-with-lemmas$134) k$406 term$187 r$412)) (cdr lst$186)))))) term$187 r$413)) (cadr r$414))) (car lst$186)))) (null? lst$186))))) (set-cell! rewrite-args$135 r$415))) (lambda (k$416 lst$188) ((lambda (r$417) (if r$417 ((lambda () (k$416 (quote ())))) ((lambda () ((lambda (r$421) ((cell-get rewrite$136) (lambda (r$418) ((lambda (r$420) ((cell-get rewrite-args$135) (lambda (r$419) ((cell-get scons$137) k$416 r$418 r$419 lst$188)) r$420)) (cdr lst$188))) r$421)) (car lst$188)))))) (null? lst$188))))) (set-cell! rewrite$136 r$422))) (lambda (k$423 term$189) ((lambda (r$432) ((lambda (r$424) ((lambda (r$425) (if r$425 ((lambda () ((lambda (r$429) ((lambda (r$431) ((cell-get rewrite-args$135) (lambda (r$430) ((cell-get scons$137) (lambda (r$426) ((lambda (r$428) ((cell-get get-lemmas$148) (lambda (r$427) ((cell-get rewrite-with-lemmas$134) k$423 r$426 r$427)) r$428)) (car term$189))) r$429 r$430 term$189)) r$431)) (cdr term$189))) (car term$189)))) ((lambda () (k$423 term$189))))) (pair? term$189))) (set-cell! rewrite-count$138 r$432))) (+ (cell-get rewrite-count$138) 1))))) (set-cell! scons$137 r$433))) (lambda (k$434 x$192 y$191 original$190) ((lambda (k$436) ((lambda (r$439) ((lambda (r$437) (if r$437 ((lambda (r$438) (k$436 (eq? y$191 r$438))) (cdr original$190)) (k$436 #f))) (eq? x$192 r$439))) (car original$190))) (lambda (r$435) (if r$435 (k$434 original$190) (k$434 (cons x$192 y$191)))))))) (set-cell! rewrite-count$138 0))) (set-cell! if-constructor$139 r$440))) (quote *))) (set-cell! tautologyp$140 r$441))) (lambda (k$442 x$195 true-lst$194 false-lst$193) ((cell-get truep$128) (lambda (r$443) (if r$443 ((lambda () (k$442 #t))) ((cell-get falsep$129) (lambda (r$444) (if r$444 ((lambda () (k$442 #f))) ((lambda (r$445) (if r$445 ((lambda (r$460) ((lambda (r$446) (if r$446 ((lambda () ((lambda (r$459) ((cell-get truep$128) (lambda (r$447) (if r$447 ((lambda () ((lambda (r$448) ((cell-get tautologyp$140) k$442 r$448 true-lst$194 false-lst$193)) (caddr x$195)))) ((lambda (r$458) ((cell-get falsep$129) (lambda (r$449) (if r$449 ((lambda () ((lambda (r$450) ((cell-get tautologyp$140) k$442 r$450 true-lst$194 false-lst$193)) (cadddr x$195)))) ((lambda () ((lambda (r$455) ((lambda (r$457) ((lambda (r$456) ((cell-get tautologyp$140) (lambda (r$451) (if r$451 ((lambda (r$452) ((lambda (r$454) ((lambda (r$453) ((cell-get tautologyp$140) k$442 r$452 true-lst$194 r$453)) (cons r$454 false-lst$193))) (cadr x$195))) (cadddr x$195)) (k$442 #f))) r$455 r$456 false-lst$193)) (cons r$457 true-lst$194))) (cadr x$195))) (caddr x$195)))))) r$458 false-lst$193)) (cadr x$195)))) r$459 true-lst$194)) (cadr x$195)))) ((lambda () (k$442 #f))))) (eq? r$460 (cell-get if-constructor$139)))) (car x$195)) ((lambda () (k$442 #f))))) (pair? x$195)))) x$195 false-lst$193))) x$195 true-lst$194)))) (set-cell! tautp$141 r$461))) (lambda (k$462 x$196) ((cell-get rewrite$136) (lambda (r$463) ((lambda (r$464) ((lambda (r$465) ((cell-get tautologyp$140) k$462 r$463 r$464 r$465)) (quote ()))) (quote ()))) x$196)))) (set-cell! apply-subst-lst$142 r$466))) (lambda (k$467 alist$198 lst$197) ((lambda (r$468) (if r$468 ((lambda () (k$467 (quote ())))) ((lambda () ((lambda (r$472) ((cell-get apply-subst$143) (lambda (r$469) ((lambda (r$471) ((cell-get apply-subst-lst$142) (lambda (r$470) (k$467 (cons r$469 r$470))) alist$198 r$471)) (cdr lst$197))) alist$198 r$472)) (car lst$197)))))) (null? lst$197))))) (set-cell! apply-subst$143 r$473))) (lambda (k$474 alist$200 term$199) ((lambda (r$475) (if r$475 ((lambda () ((lambda (r$476) ((lambda (r$478) ((cell-get apply-subst-lst$142) (lambda (r$477) (k$474 (cons r$476 r$477))) alist$200 r$478)) (cdr term$199))) (car term$199)))) ((lambda () ((lambda (temp-temp$201) (if temp-temp$201 (k$474 (cdr temp-temp$201)) (k$474 term$199))) (assq term$199 alist$200)))))) (pair? term$199))))) (set-cell! translate-alist$144 r$480))) (lambda (k$481 alist$202) ((lambda (r$482) (if r$482 ((lambda () (k$481 (quote ())))) ((lambda () ((lambda (r$486) ((lambda (r$488) ((cell-get translate-term$157) (lambda (r$487) ((lambda (r$483) ((lambda (r$485) ((cell-get translate-alist$144) (lambda (r$484) (k$481 (cons r$483 r$484))) r$485)) (cdr alist$202))) (cons r$486 r$487))) r$488)) (cdar alist$202))) (caar alist$202)))))) (null? alist$202))))) (set-cell! test$145 r$489))) (lambda (k$490 alist$205 term$204 n$203) ((cell-get translate-alist$144) (lambda (r$492) ((lambda (term$207 n$206) ((lambda (lp$208) ((lambda (lp$208) ((lambda (r$496) ((lambda (r$495) ((cell-get lp$208) (lambda (r$494) ((cell-get translate-term$157) (lambda (r$493) ((cell-get apply-subst$143) (lambda (term$211) ((cell-get tautp$141) k$490 term$211)) r$492 r$493)) r$494)) term$207 n$206)) (set-cell! lp$208 r$496))) (lambda (k$497 term$210 n$209) (zero? (lambda (r$498) (if r$498 (k$497 term$210) ((lambda (r$501) ((lambda (r$502) (list (lambda (r$499) ((lambda (r$500) ((cell-get lp$208) k$497 r$499 r$500)) (- n$209 1))) r$501 term$210 r$502)) (quote (f)))) (quote or)))) n$209)))) (cell lp$208))) #f)) term$204 n$203)) alist$205)))) (set-cell! symbol-record-equal?$146 r$503))) (lambda (k$504 r1$213 r2$212) (k$504 (eq? r1$213 r2$212))))) (set-cell! get-name$147 r$505))) (lambda (k$506 symbol-record$214) (k$506 (vector-ref symbol-record$214 0))))) (set-cell! get-lemmas$148 r$507))) (lambda (k$508 symbol-record$215) (k$508 (vector-ref symbol-record$215 1))))) (set-cell! put-lemmas!$149 r$509))) (lambda (k$510 symbol-record$217 lemmas$216) (k$510 (vector-set! symbol-record$217 1 lemmas$216))))) (set-cell! make-symbol-record$150 r$511))) (lambda (k$512 sym$218) ((lambda (r$513) (vector k$512 sym$218 r$513)) (quote ()))))) (set-cell! *symbol-records-alist*$151 r$514))) (quote ()))) (set-cell! symbol->symbol-record$152 r$515))) (lambda (k$516 sym$219) ((lambda (x$220) (if x$220 (k$516 (cdr x$220)) ((cell-get make-symbol-record$150) (lambda (r$221) ((lambda (r$521) ((lambda (r$520) ((lambda (r$519) (k$516 r$221)) (set-cell! *symbol-records-alist*$151 r$520))) (cons r$521 (cell-get *symbol-records-alist*$151)))) (cons sym$219 r$221))) sym$219))) (assq sym$219 (cell-get *symbol-records-alist*$151)))))) (set-cell! get$153 r$522))) (lambda (k$523 sym$223 property$222) ((cell-get symbol->symbol-record$152) (lambda (r$524) ((cell-get get-lemmas$148) k$523 r$524)) sym$223)))) (set-cell! put$154 r$525))) (lambda (k$526 sym$226 property$225 value$224) ((cell-get symbol->symbol-record$152) (lambda (r$527) ((cell-get put-lemmas!$149) k$526 r$527 value$224)) sym$226)))) (set-cell! untranslate-term$155 r$528))) (lambda (k$529 term$227) ((lambda (r$530) (if r$530 ((lambda () ((lambda (r$534) ((cell-get get-name$147) (lambda (r$531) ((lambda (r$533) (map (lambda (r$532) (k$529 (cons r$531 r$532))) (cell-get untranslate-term$155) r$533)) (cdr term$227))) r$534)) (car term$227)))) ((lambda () (k$529 term$227))))) (pair? term$227))))) (set-cell! translate-args$156 r$535))) (lambda (k$536 lst$228) ((lambda (r$537) (if r$537 ((lambda () (k$536 (quote ())))) ((lambda () ((lambda (r$541) ((cell-get translate-term$157) (lambda (r$538) ((lambda (r$540) ((cell-get translate-args$156) (lambda (r$539) (k$536 (cons r$538 r$539))) r$540)) (cdr lst$228))) r$541)) (car lst$228)))))) (null? lst$228))))) (set-cell! translate-term$157 r$542))) (lambda (k$543 term$229) ((lambda (r$544) (if r$544 ((lambda () ((lambda (r$548) ((cell-get symbol->symbol-record$152) (lambda (r$545) ((lambda (r$547) ((cell-get translate-args$156) (lambda (r$546) (k$543 (cons r$545 r$546))) r$547)) (cdr term$229))) r$548)) (car term$229)))) ((lambda () (k$543 term$229))))) (pair? term$229))))) (set-cell! add-lemma$158 r$549))) (lambda (k$550 term$230) ((lambda (k$561) ((lambda (r$562) (if r$562 ((lambda (r$565) ((lambda (r$566) ((lambda (r$563) (if r$563 ((lambda (r$564) (k$561 (pair? r$564))) (cadr term$230)) (k$561 #f))) (eq? r$565 r$566))) (quote equal))) (car term$230)) (k$561 #f))) (pair? term$230))) (lambda (r$551) (if r$551 ((lambda () ((lambda (r$560) ((lambda (r$552) ((lambda (r$553) ((cell-get translate-term$157) (lambda (r$555) ((lambda (r$559) ((lambda (r$557) ((lambda (r$558) ((cell-get get$153) (lambda (r$556) ((lambda (r$554) ((cell-get put$154) k$550 r$552 r$553 r$554)) (cons r$555 r$556))) r$557 r$558)) (quote lemmas))) (car r$559))) (cadr term$230))) term$230)) (quote lemmas))) (car r$560))) (cadr term$230)))) ((lambda () (error k$550 #f "ADD-LEMMA did not like term: " term$230))))))))) (set-cell! add-lemma-lst$159 r$567))) (lambda (k$568 lst$231) ((lambda (r$569) (if r$569 ((lambda () (k$568 #t))) ((lambda () ((lambda (r$572) ((cell-get add-lemma$158) (lambda (r$570) ((lambda (r$571) ((cell-get add-lemma-lst$159) k$568 r$571)) (cdr lst$231))) r$572)) (car lst$231)))))) (null? lst$231))))) (set-cell! setup$160 r$573))) (lambda (k$574) ((lambda (r$575) ((cell-get add-lemma-lst$159) k$574 r$575)) (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem))))))))) (cell term-member?$121))) (cell term-args-equal?$122))) (cell term-equal?$123))) (cell trans-of-implies1$124))) (cell trans-of-implies$125))) (cell true-term$126))) (cell false-term$127))) (cell truep$128))) (cell falsep$129))) (cell one-way-unify1-lst$130))) (cell one-way-unify1$131))) (cell one-way-unify$132))) (cell unify-subst$133))) (cell rewrite-with-lemmas$134))) (cell rewrite-args$135))) (cell rewrite$136))) (cell scons$137))) (cell rewrite-count$138))) (cell if-constructor$139))) (cell tautologyp$140))) (cell tautp$141))) (cell apply-subst-lst$142))) (cell apply-subst$143))) (cell translate-alist$144))) (cell test$145))) (cell symbol-record-equal?$146))) (cell get-name$147))) (cell get-lemmas$148))) (cell put-lemmas!$149))) (cell make-symbol-record$150))) (cell *symbol-records-alist*$151))) (cell symbol->symbol-record$152))) (cell get$153))) (cell put$154))) (cell untranslate-term$155))) (cell translate-args$156))) (cell translate-term$157))) (cell add-lemma$158))) (cell add-lemma-lst$159))) (cell setup$160))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)))) (set-global! term r$576))) (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w))))) (set-global! alist r$577))) (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b))))))) 0)))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)) */ -/* -"---------------- after closure-convert:" */ -/* -((define main (lambda (k$645) ((%closure-ref read 0) read (%closure (lambda (self$1120 count$258) ((%closure-ref read 0) read (%closure (lambda (self$1121 input$259) ((%closure-ref read 0) read (%closure (lambda (self$1122 output$260) ((%closure (lambda (self$1123 s2$261) ((%closure (lambda (self$1124 s1$262) ((%closure (lambda (self$1125 name$263) ((%closure (lambda (self$1126) ((%closure (lambda (self$1127 r$651) ((%closure (lambda (self$1131 r$652) ((%closure (lambda (self$1134 r$653) ((%closure-ref run-r7rs-benchmark 0) run-r7rs-benchmark (%closure-ref self$1134 2) (%closure-ref self$1134 3) (%closure-ref self$1134 1) (%closure-ref self$1134 4) r$653)) (%closure-ref self$1131 1) (%closure-ref self$1131 2) (%closure-ref self$1131 4) r$652) (%closure (lambda (self$1132 k$654 rewrites$264) ((%closure (lambda (self$1133 r$655) (if r$655 ((%closure-ref (%closure-ref self$1133 1) 0) (%closure-ref self$1133 1) (= (%closure-ref self$1133 3) (%closure-ref self$1133 2))) ((%closure-ref (%closure-ref self$1133 1) 0) (%closure-ref self$1133 1) #f))) k$654 (%closure-ref self$1132 1) rewrites$264) (number? rewrites$264))) (%closure-ref self$1131 3)))) (%closure-ref self$1127 1) (%closure-ref self$1127 3) (%closure-ref self$1127 4) r$651) (%closure (lambda (self$1128 k$656) ((%closure-ref setup-boyer 0) setup-boyer (%closure (lambda (self$1129 r$657) ((%closure-ref hide 0) hide (%closure (lambda (self$1130 r$658) ((%closure-ref test-boyer 0) test-boyer (%closure-ref self$1130 1) alist term r$658)) (%closure-ref self$1129 3)) (%closure-ref self$1129 1) (%closure-ref self$1129 2))) (%closure-ref self$1128 1) (%closure-ref self$1128 2) k$656))) (%closure-ref self$1127 1) (%closure-ref self$1127 2)))) (%closure-ref self$1126 1) (%closure-ref self$1126 2) (%closure-ref self$1126 3) (%closure-ref self$1126 5)) (string-append (%closure-ref self$1126 4) ":" (%closure-ref self$1126 6) ":" (%closure-ref self$1126 7)))) (%closure-ref self$1125 1) (%closure-ref self$1125 2) (%closure-ref self$1125 3) name$263 (%closure-ref self$1125 4) (%closure-ref self$1125 5) (%closure-ref self$1125 6)))) (%closure-ref self$1124 1) (%closure-ref self$1124 2) (%closure-ref self$1124 3) (%closure-ref self$1124 4) s1$262 (%closure-ref self$1124 5)) "sboyer")) (%closure-ref self$1123 1) (%closure-ref self$1123 2) (%closure-ref self$1123 3) (%closure-ref self$1123 4) s2$261) (number->string (%closure-ref self$1123 2)))) (%closure-ref self$1122 1) (%closure-ref self$1122 2) (%closure-ref self$1122 3) output$260) (number->string (%closure-ref self$1122 1)))) (%closure-ref self$1121 1) input$259 (%closure-ref self$1121 2)))) count$258 (%closure-ref self$1120 1)))) k$645)))) (define alist (%closure-ref #f 0) #f) (define term (%closure-ref #f 0) #f) (define setup-boyer (lambda (k$638) ((%closure-ref k$638 0) k$638 #t))) (define test-boyer (lambda (k$635) ((%closure-ref k$635 0) k$635 #t))) (define hide (lambda (k$621 r$254 x$253) ((%closure (lambda (self$1116 r$622) ((%closure (lambda (self$1119 r$623) ((%closure-ref call-with-values 0) call-with-values (%closure-ref self$1119 1) (%closure-ref self$1119 2) r$623)) (%closure-ref self$1116 1) r$622) (%closure (lambda (self$1117 k$624 v$256 i$255) ((%closure (lambda (self$1118 r$625) ((%closure-ref r$625 0) r$625 (%closure-ref self$1118 1) (%closure-ref self$1118 2))) k$624 (%closure-ref self$1117 1)) (vector-ref v$256 i$255))) (%closure-ref self$1116 2)))) k$621 x$253) (%closure (lambda (self$1109 k$626) ((%closure (lambda (self$1111 r$631) ((%closure-ref vector 0) vector (%closure (lambda (self$1112 r$627) ((%closure (lambda (self$1114 k$629) ((%closure (lambda (self$1115 r$630) (if r$630 ((%closure-ref (%closure-ref self$1115 1) 0) (%closure-ref self$1115 1) 0) ((%closure-ref (%closure-ref self$1115 1) 0) (%closure-ref self$1115 1) 1))) k$629) (< (%closure-ref self$1114 1) 100))) (%closure-ref self$1112 2)) (%closure (lambda (self$1113 r$628) ((%closure-ref values 0) values (%closure-ref self$1113 1) (%closure-ref self$1113 2) r$628)) (%closure-ref self$1112 1) r$627))) (%closure-ref self$1111 1) (%closure-ref self$1111 2)) values r$631)) k$626 (%closure-ref self$1109 1)) (%closure (lambda (self$1110 k$632 x$257) ((%closure-ref k$632 0) k$632 x$257))))) r$254)))) (define run-r7rs-benchmark (lambda (k$580 name$235 count$234 thunk$233 ok?$232) ((%closure (lambda (self$1061 rounded$237) ((%closure (lambda (self$1062 rounded$237) ((%closure (lambda (self$1063 rounded$238) ((%closure (lambda (self$1067 r$615) ((%closure (lambda (self$1068 r$581) ((%closure-ref display 0) display (%closure (lambda (self$1069 r$582) ((%closure-ref display 0) display (%closure (lambda (self$1070 r$583) ((%closure-ref newline 0) newline (%closure (lambda (self$1071 r$584) ((%closure-ref flush-output-port 0) flush-output-port (%closure (lambda (self$1072 r$585) ((%closure-ref jiffies-per-second 0) jiffies-per-second (%closure (lambda (self$1073 j/s$239) ((%closure-ref current-second 0) current-second (%closure (lambda (self$1074 t0$240) ((%closure-ref current-jiffy 0) current-jiffy (%closure (lambda (self$1075 j0$241) ((%closure (lambda (self$1076) ((lambda (k$614) (if #f ((%closure-ref k$614 0) k$614 #f) ((%closure-ref k$614 0) k$614 #f))) (%closure (lambda (self$1077 r$589) ((%closure (lambda (self$1078 i$243 result$242) ((%closure (lambda (self$1079 loop$244) ((%closure (lambda (self$1080 loop$244) ((%closure (lambda (self$1107 r$591) ((%closure (lambda (self$1108 r$590) ((%closure-ref (cell-get (%closure-ref self$1108 3)) 0) (cell-get (%closure-ref self$1108 3)) (%closure-ref self$1108 2) (%closure-ref self$1108 1) (%closure-ref self$1108 4))) (%closure-ref self$1107 1) (%closure-ref self$1107 2) (%closure-ref self$1107 3) (%closure-ref self$1107 4)) (set-cell! (%closure-ref self$1107 3) r$591))) (%closure-ref self$1080 2) (%closure-ref self$1080 5) loop$244 (%closure-ref self$1080 8)) (%closure (lambda (self$1081 k$592 i$246 result$245) ((%closure (lambda (self$1082 r$593) (if r$593 ((%closure (lambda (self$1104) ((%closure (lambda (self$1105 r$594) ((%closure-ref (%closure-ref self$1105 3) 0) (%closure-ref self$1105 3) (%closure (lambda (self$1106 r$595) ((%closure-ref (cell-get (%closure-ref self$1106 2)) 0) (cell-get (%closure-ref self$1106 2)) (%closure-ref self$1106 1) (%closure-ref self$1106 3) r$595)) (%closure-ref self$1105 1) (%closure-ref self$1105 2) r$594))) (%closure-ref self$1104 2) (%closure-ref self$1104 3) (%closure-ref self$1104 4)) (+ (%closure-ref self$1104 1) 1))) (%closure-ref self$1082 1) (%closure-ref self$1082 4) (%closure-ref self$1082 5) (%closure-ref self$1082 11))) ((%closure-ref (%closure-ref self$1082 7) 0) (%closure-ref self$1082 7) (%closure (lambda (self$1083 r$596) (if r$596 ((%closure (lambda (self$1088) ((%closure-ref current-jiffy 0) current-jiffy (%closure (lambda (self$1089 j1$247) ((%closure-ref current-second 0) current-second (%closure (lambda (self$1090 t1$248) ((%closure (lambda (self$1091 jifs$249) ((%closure (lambda (self$1092 r$610) ((%closure-ref inexact 0) inexact (%closure (lambda (self$1093 secs$250) ((%closure (lambda (self$1094 r$609) ((%closure-ref (cell-get (%closure-ref self$1094 4)) 0) (cell-get (%closure-ref self$1094 4)) (%closure (lambda (self$1095 secs2$251) ((%closure (lambda (self$1096) ((%closure-ref display 0) display (%closure (lambda (self$1097 r$603) ((%closure-ref write 0) write (%closure (lambda (self$1098 r$604) ((%closure-ref display 0) display (%closure (lambda (self$1099 r$605) ((%closure-ref write 0) write (%closure (lambda (self$1100 r$606) ((%closure-ref display 0) display (%closure (lambda (self$1101 r$607) ((%closure-ref display 0) display (%closure (lambda (self$1102 r$608) ((%closure-ref newline 0) newline (%closure (lambda (self$1103 r$597) ((%closure-ref (%closure-ref self$1103 1) 0) (%closure-ref self$1103 1) (%closure-ref self$1103 2))) (%closure-ref self$1102 1) (%closure-ref self$1102 2)))) (%closure-ref self$1101 1) (%closure-ref self$1101 3)) (%closure-ref self$1101 2))) (%closure-ref self$1100 1) (%closure-ref self$1100 2) (%closure-ref self$1100 3)) ") for ")) (%closure-ref self$1099 1) (%closure-ref self$1099 2) (%closure-ref self$1099 3)) (%closure-ref self$1099 4))) (%closure-ref self$1098 1) (%closure-ref self$1098 2) (%closure-ref self$1098 3) (%closure-ref self$1098 4)) " seconds (")) (%closure-ref self$1097 1) (%closure-ref self$1097 2) (%closure-ref self$1097 3) (%closure-ref self$1097 5)) (%closure-ref self$1097 4))) (%closure-ref self$1096 1) (%closure-ref self$1096 2) (%closure-ref self$1096 3) (%closure-ref self$1096 4) (%closure-ref self$1096 5)) "Elapsed time: ")) (%closure-ref self$1095 1) (%closure-ref self$1095 2) (%closure-ref self$1095 3) (%closure-ref self$1095 4) secs2$251))) (%closure-ref self$1094 1) (%closure-ref self$1094 2) (%closure-ref self$1094 3) (%closure-ref self$1094 5)) r$609)) (%closure-ref self$1093 1) (%closure-ref self$1093 2) (%closure-ref self$1093 3) (%closure-ref self$1093 4) secs$250) (- (%closure-ref self$1093 6) (%closure-ref self$1093 5)))) (%closure-ref self$1092 1) (%closure-ref self$1092 2) (%closure-ref self$1092 3) (%closure-ref self$1092 4) (%closure-ref self$1092 5) (%closure-ref self$1092 6)) r$610)) (%closure-ref self$1091 2) (%closure-ref self$1091 3) (%closure-ref self$1091 4) (%closure-ref self$1091 5) (%closure-ref self$1091 6) (%closure-ref self$1091 7)) (/ jifs$249 (%closure-ref self$1091 1)))) (%closure-ref self$1090 1) (%closure-ref self$1090 4) (%closure-ref self$1090 5) (%closure-ref self$1090 6) (%closure-ref self$1090 7) (%closure-ref self$1090 8) t1$248) (- (%closure-ref self$1090 3) (%closure-ref self$1090 2)))) (%closure-ref self$1089 1) (%closure-ref self$1089 2) j1$247 (%closure-ref self$1089 3) (%closure-ref self$1089 4) (%closure-ref self$1089 5) (%closure-ref self$1089 6) (%closure-ref self$1089 7)))) (%closure-ref self$1088 1) (%closure-ref self$1088 2) (%closure-ref self$1088 3) (%closure-ref self$1088 4) (%closure-ref self$1088 5) (%closure-ref self$1088 6) (%closure-ref self$1088 7)))) (%closure-ref self$1083 1) (%closure-ref self$1083 2) (%closure-ref self$1083 3) (%closure-ref self$1083 4) (%closure-ref self$1083 5) (%closure-ref self$1083 6) (%closure-ref self$1083 7))) ((%closure (lambda (self$1084) ((%closure-ref display 0) display (%closure (lambda (self$1085 r$611) ((%closure-ref write 0) write (%closure (lambda (self$1086 r$612) ((%closure-ref newline 0) newline (%closure (lambda (self$1087 r$613) ((%closure-ref (%closure-ref self$1087 1) 0) (%closure-ref self$1087 1) (%closure-ref self$1087 2))) (%closure-ref self$1086 1) (%closure-ref self$1086 2)))) (%closure-ref self$1085 1) (%closure-ref self$1085 2)) (%closure-ref self$1085 2))) (%closure-ref self$1084 1) (%closure-ref self$1084 2)) "ERROR: returned incorrect result: ")) (%closure-ref self$1083 3) (%closure-ref self$1083 5))))) (%closure-ref self$1082 2) (%closure-ref self$1082 3) (%closure-ref self$1082 4) (%closure-ref self$1082 6) (%closure-ref self$1082 8) (%closure-ref self$1082 9) (%closure-ref self$1082 10)) (%closure-ref self$1082 8)))) i$246 (%closure-ref self$1081 2) (%closure-ref self$1081 3) k$592 (%closure-ref self$1081 4) (%closure-ref self$1081 5) (%closure-ref self$1081 6) result$245 (%closure-ref self$1081 7) (%closure-ref self$1081 8) (%closure-ref self$1081 9)) (< i$246 (%closure-ref self$1081 1)))) (%closure-ref self$1080 1) (%closure-ref self$1080 3) (%closure-ref self$1080 4) loop$244 (%closure-ref self$1080 6) (%closure-ref self$1080 7) (%closure-ref self$1080 9) (%closure-ref self$1080 10) (%closure-ref self$1080 11)))) (%closure-ref self$1079 1) (%closure-ref self$1079 2) (%closure-ref self$1079 3) (%closure-ref self$1079 4) (%closure-ref self$1079 5) (%closure-ref self$1079 6) (%closure-ref self$1079 7) (%closure-ref self$1079 8) (%closure-ref self$1079 9) (%closure-ref self$1079 10) (%closure-ref self$1079 11)) (cell loop$244))) (%closure-ref self$1078 1) i$243 (%closure-ref self$1078 2) (%closure-ref self$1078 3) (%closure-ref self$1078 4) (%closure-ref self$1078 5) (%closure-ref self$1078 6) result$242 (%closure-ref self$1078 7) (%closure-ref self$1078 8) (%closure-ref self$1078 9)) #f)) (%closure-ref self$1077 1) (%closure-ref self$1077 2) (%closure-ref self$1077 3) (%closure-ref self$1077 4) (%closure-ref self$1077 5) (%closure-ref self$1077 6) (%closure-ref self$1077 7) (%closure-ref self$1077 8) (%closure-ref self$1077 9)) 0 r$589)) (%closure-ref self$1076 1) (%closure-ref self$1076 2) (%closure-ref self$1076 3) (%closure-ref self$1076 4) (%closure-ref self$1076 5) (%closure-ref self$1076 6) (%closure-ref self$1076 7) (%closure-ref self$1076 8) (%closure-ref self$1076 9)))) (%closure-ref self$1075 1) (%closure-ref self$1075 2) j0$241 (%closure-ref self$1075 3) (%closure-ref self$1075 4) (%closure-ref self$1075 5) (%closure-ref self$1075 6) (%closure-ref self$1075 7) (%closure-ref self$1075 8)))) (%closure-ref self$1074 1) (%closure-ref self$1074 2) (%closure-ref self$1074 3) (%closure-ref self$1074 4) (%closure-ref self$1074 5) (%closure-ref self$1074 6) t0$240 (%closure-ref self$1074 7)))) (%closure-ref self$1073 1) j/s$239 (%closure-ref self$1073 2) (%closure-ref self$1073 3) (%closure-ref self$1073 4) (%closure-ref self$1073 5) (%closure-ref self$1073 6)))) (%closure-ref self$1072 1) (%closure-ref self$1072 2) (%closure-ref self$1072 3) (%closure-ref self$1072 4) (%closure-ref self$1072 5) (%closure-ref self$1072 6)))) (%closure-ref self$1071 1) (%closure-ref self$1071 2) (%closure-ref self$1071 3) (%closure-ref self$1071 4) (%closure-ref self$1071 5) (%closure-ref self$1071 6)))) (%closure-ref self$1070 1) (%closure-ref self$1070 2) (%closure-ref self$1070 3) (%closure-ref self$1070 4) (%closure-ref self$1070 5) (%closure-ref self$1070 6)))) (%closure-ref self$1069 1) (%closure-ref self$1069 2) (%closure-ref self$1069 3) (%closure-ref self$1069 4) (%closure-ref self$1069 5) (%closure-ref self$1069 6)) (%closure-ref self$1069 3))) (%closure-ref self$1068 1) (%closure-ref self$1068 2) (%closure-ref self$1068 3) (%closure-ref self$1068 4) (%closure-ref self$1068 5) (%closure-ref self$1068 6)) "Running ")) (%closure-ref self$1067 1) (%closure-ref self$1067 2) (%closure-ref self$1067 3) (%closure-ref self$1067 4) (%closure-ref self$1067 5) (%closure-ref self$1067 6)) (set-cell! (%closure-ref self$1067 5) r$615))) (%closure-ref self$1063 1) (%closure-ref self$1063 2) (%closure-ref self$1063 3) (%closure-ref self$1063 4) (%closure-ref self$1063 5) (%closure-ref self$1063 6)) (%closure (lambda (self$1064 k$616 x$252) ((%closure (lambda (self$1065 r$618) ((%closure-ref round 0) round (%closure (lambda (self$1066 r$617) ((%closure-ref (%closure-ref self$1066 1) 0) (%closure-ref self$1066 1) (/ r$617 1000))) (%closure-ref self$1065 1)) r$618)) k$616) (* 1000 x$252)))))) (%closure-ref self$1062 1) (%closure-ref self$1062 2) (%closure-ref self$1062 3) (%closure-ref self$1062 4) rounded$237 (%closure-ref self$1062 5)) #f)) (%closure-ref self$1061 1) (%closure-ref self$1061 2) (%closure-ref self$1061 3) (%closure-ref self$1061 4) (%closure-ref self$1061 5)) (cell rounded$237))) count$234 k$580 name$235 ok?$232 thunk$233) #f))) ((lambda (*symbol-records-alist*$120 add-lemma$119 add-lemma-lst$118 apply-subst$117 apply-subst-lst$116 false-term$115 falsep$114 get$113 get-lemmas$112 get-name$111 if-constructor$110 make-symbol-record$109 one-way-unify$108 one-way-unify1$107 one-way-unify1-lst$106 put$105 put-lemmas!$104 rewrite$103 rewrite-args$102 rewrite-count$101 rewrite-with-lemmas$100 scons$99 setup$98 symbol->symbol-record$97 symbol-record-equal?$96 tautologyp$95 tautp$94 term-args-equal?$93 term-equal?$92 term-member?$91 test$90 trans-of-implies$89 trans-of-implies1$88 translate-alist$87 translate-args$86 translate-term$85 true-term$84 truep$83 unify-subst$82 untranslate-term$81) ((lambda () ((lambda (r$265) ((lambda (r$577) ((lambda (r$266) ((lambda (r$576) ((lambda (r$267) ((lambda () ((lambda (setup$160 add-lemma-lst$159 add-lemma$158 translate-term$157 translate-args$156 untranslate-term$155 put$154 get$153 symbol->symbol-record$152 *symbol-records-alist*$151 make-symbol-record$150 put-lemmas!$149 get-lemmas$148 get-name$147 symbol-record-equal?$146 test$145 translate-alist$144 apply-subst$143 apply-subst-lst$142 tautp$141 tautologyp$140 if-constructor$139 rewrite-count$138 scons$137 rewrite$136 rewrite-args$135 rewrite-with-lemmas$134 unify-subst$133 one-way-unify$132 one-way-unify1$131 one-way-unify1-lst$130 falsep$129 truep$128 false-term$127 true-term$126 trans-of-implies$125 trans-of-implies1$124 term-equal?$123 term-args-equal?$122 term-member?$121) ((%closure (lambda (self$659 setup$160) ((%closure (lambda (self$660 add-lemma-lst$159) ((%closure (lambda (self$661 add-lemma$158) ((%closure (lambda (self$662 translate-term$157) ((%closure (lambda (self$663 translate-args$156) ((%closure (lambda (self$664 untranslate-term$155) ((%closure (lambda (self$665 put$154) ((%closure (lambda (self$666 get$153) ((%closure (lambda (self$667 symbol->symbol-record$152) ((%closure (lambda (self$668 *symbol-records-alist*$151) ((%closure (lambda (self$669 make-symbol-record$150) ((%closure (lambda (self$670 put-lemmas!$149) ((%closure (lambda (self$671 get-lemmas$148) ((%closure (lambda (self$672 get-name$147) ((%closure (lambda (self$673 symbol-record-equal?$146) ((%closure (lambda (self$674 test$145) ((%closure (lambda (self$675 translate-alist$144) ((%closure (lambda (self$676 apply-subst$143) ((%closure (lambda (self$677 apply-subst-lst$142) ((%closure (lambda (self$678 tautp$141) ((%closure (lambda (self$679 tautologyp$140) ((%closure (lambda (self$680 if-constructor$139) ((%closure (lambda (self$681 rewrite-count$138) ((%closure (lambda (self$682 scons$137) ((%closure (lambda (self$683 rewrite$136) ((%closure (lambda (self$684 rewrite-args$135) ((%closure (lambda (self$685 rewrite-with-lemmas$134) ((%closure (lambda (self$686 unify-subst$133) ((%closure (lambda (self$687 one-way-unify$132) ((%closure (lambda (self$688 one-way-unify1$131) ((%closure (lambda (self$689 one-way-unify1-lst$130) ((%closure (lambda (self$690 falsep$129) ((%closure (lambda (self$691 truep$128) ((%closure (lambda (self$692 false-term$127) ((%closure (lambda (self$693 true-term$126) ((%closure (lambda (self$694 trans-of-implies$125) ((%closure (lambda (self$695 trans-of-implies1$124) ((%closure (lambda (self$696 term-equal?$123) ((%closure (lambda (self$697 term-args-equal?$122) ((%closure (lambda (self$698 term-member?$121) ((%closure (lambda (self$701 r$573) ((%closure (lambda (self$702 r$269) ((%closure (lambda (self$710 r$567) ((%closure (lambda (self$711 r$270) ((%closure (lambda (self$731 r$549) ((%closure (lambda (self$732 r$271) ((%closure (lambda (self$741 r$542) ((%closure (lambda (self$742 r$272) ((%closure (lambda (self$751 r$535) ((%closure (lambda (self$752 r$273) ((%closure (lambda (self$761 r$528) ((%closure (lambda (self$762 r$274) ((%closure (lambda (self$765 r$525) ((%closure (lambda (self$766 r$275) ((%closure (lambda (self$769 r$522) ((%closure (lambda (self$770 r$276) ((%closure (lambda (self$777 r$515) ((%closure (lambda (self$778 r$277) ((%closure (lambda (self$779 r$514) ((%closure (lambda (self$780 r$278) ((%closure (lambda (self$783 r$511) ((%closure (lambda (self$784 r$279) ((%closure (lambda (self$786 r$509) ((%closure (lambda (self$787 r$280) ((%closure (lambda (self$789 r$507) ((%closure (lambda (self$790 r$281) ((%closure (lambda (self$792 r$505) ((%closure (lambda (self$793 r$282) ((%closure (lambda (self$795 r$503) ((%closure (lambda (self$796 r$283) ((%closure (lambda (self$813 r$489) ((%closure (lambda (self$814 r$284) ((%closure (lambda (self$825 r$480) ((%closure (lambda (self$826 r$285) ((%closure (lambda (self$835 r$473) ((%closure (lambda (self$836 r$286) ((%closure (lambda (self$845 r$466) ((%closure (lambda (self$846 r$287) ((%closure (lambda (self$851 r$461) ((%closure (lambda (self$852 r$288) ((%closure (lambda (self$880 r$441) ((%closure (lambda (self$881 r$289) ((%closure (lambda (self$882 r$440) ((%closure (lambda (self$883 r$290) ((%closure (lambda (self$884 r$291) ((%closure (lambda (self$891 r$433) ((%closure (lambda (self$892 r$292) ((%closure (lambda (self$905 r$422) ((%closure (lambda (self$906 r$293) ((%closure (lambda (self$915 r$415) ((%closure (lambda (self$916 r$294) ((%closure (lambda (self$929 r$405) ((%closure (lambda (self$930 r$295) ((%closure (lambda (self$931 r$404) ((%closure (lambda (self$932 r$296) ((%closure (lambda (self$936 r$400) ((%closure (lambda (self$937 r$297) ((%closure (lambda (self$959 r$385) ((%closure (lambda (self$960 r$298) ((%closure (lambda (self$973 r$376) ((%closure (lambda (self$974 r$299) ((%closure (lambda (self$977 r$373) ((%closure (lambda (self$978 r$300) ((%closure (lambda (self$981 r$370) ((%closure (lambda (self$982 r$301) ((%closure (lambda (self$983 r$369) ((%closure (lambda (self$984 r$302) ((%closure (lambda (self$985 r$368) ((%closure (lambda (self$986 r$303) ((%closure (lambda (self$993 r$361) ((%closure (lambda (self$994 r$304) ((%closure (lambda (self$1006 r$351) ((%closure (lambda (self$1007 r$305) ((%closure (lambda (self$1018 r$342) ((%closure (lambda (self$1019 r$306) ((%closure (lambda (self$1032 r$333) ((%closure (lambda (self$1033 r$307) ((%closure (lambda (self$1042 r$327) ((%closure (lambda (self$1043 r$308) ((%closure (lambda (self$1056 r$314) ((%closure (lambda (self$1057 r$309) ((lambda (r$310) ((lambda (r$268) ((%closure-ref main 0) main %halt)) (set-global! test-boyer r$310))) (%closure (lambda (self$1058 k$311 alist$163 term$162 n$161) ((%closure (lambda (self$1059 r$312) ((%closure-ref (cell-get (%closure-ref self$1059 6)) 0) (cell-get (%closure-ref self$1059 6)) (%closure (lambda (self$1060 answer$164) (if answer$164 ((%closure-ref (%closure-ref self$1060 1) 0) (%closure-ref self$1060 1) (cell-get (%closure-ref self$1060 2))) ((%closure-ref (%closure-ref self$1060 1) 0) (%closure-ref self$1060 1) #f))) (%closure-ref self$1059 2) (%closure-ref self$1059 4)) (%closure-ref self$1059 1) (%closure-ref self$1059 5) (%closure-ref self$1059 3))) alist$163 k$311 n$161 (%closure-ref self$1058 1) term$162 (%closure-ref self$1058 2)) (set-cell! (%closure-ref self$1058 1) 0))) (%closure-ref self$1057 1) (%closure-ref self$1057 2)))) (%closure-ref self$1056 1) (%closure-ref self$1056 2)) (set-global! setup-boyer r$314))) (%closure-ref self$1043 4) (%closure-ref self$1043 7)) (%closure (lambda (self$1044 k$315) ((%closure (lambda (self$1045 r$326) ((%closure (lambda (self$1046 r$316) ((%closure (lambda (self$1047 r$325) ((%closure-ref (cell-get (%closure-ref self$1047 5)) 0) (cell-get (%closure-ref self$1047 5)) (%closure (lambda (self$1048 r$324) ((%closure (lambda (self$1049 r$317) ((%closure (lambda (self$1050 r$323) ((%closure-ref (cell-get (%closure-ref self$1050 4)) 0) (cell-get (%closure-ref self$1050 4)) (%closure (lambda (self$1051 r$322) ((%closure (lambda (self$1052 r$318) ((%closure (lambda (self$1053 r$321) ((%closure-ref (cell-get (%closure-ref self$1053 3)) 0) (cell-get (%closure-ref self$1053 3)) (%closure (lambda (self$1054 r$320) ((%closure (lambda (self$1055 r$319) ((%closure-ref (cell-get (%closure-ref self$1055 2)) 0) (cell-get (%closure-ref self$1055 2)) (%closure-ref self$1055 1))) (%closure-ref self$1054 1) (%closure-ref self$1054 2)) (set-cell! (%closure-ref self$1054 3) r$320))) (%closure-ref self$1053 1) (%closure-ref self$1053 2) (%closure-ref self$1053 4)) r$321)) (%closure-ref self$1052 1) (%closure-ref self$1052 2) (%closure-ref self$1052 3) (%closure-ref self$1052 4)) (quote (t)))) (%closure-ref self$1051 2) (%closure-ref self$1051 3) (%closure-ref self$1051 4) (%closure-ref self$1051 5)) (set-cell! (%closure-ref self$1051 1) r$322))) (%closure-ref self$1050 1) (%closure-ref self$1050 2) (%closure-ref self$1050 3) (%closure-ref self$1050 4) (%closure-ref self$1050 5)) r$323)) (%closure-ref self$1049 1) (%closure-ref self$1049 2) (%closure-ref self$1049 3) (%closure-ref self$1049 4) (%closure-ref self$1049 5)) (quote (f)))) (%closure-ref self$1048 1) (%closure-ref self$1048 3) (%closure-ref self$1048 4) (%closure-ref self$1048 5) (%closure-ref self$1048 6)) (set-cell! (%closure-ref self$1048 2) r$324))) (%closure-ref self$1047 1) (%closure-ref self$1047 2) (%closure-ref self$1047 3) (%closure-ref self$1047 4) (%closure-ref self$1047 6) (%closure-ref self$1047 7)) r$325)) (%closure-ref self$1046 1) (%closure-ref self$1046 2) (%closure-ref self$1046 3) (%closure-ref self$1046 4) (%closure-ref self$1046 5) (%closure-ref self$1046 6) (%closure-ref self$1046 7)) (quote if))) (%closure-ref self$1045 2) (%closure-ref self$1045 3) (%closure-ref self$1045 4) (%closure-ref self$1045 5) (%closure-ref self$1045 6) (%closure-ref self$1045 7) (%closure-ref self$1045 8)) (set-cell! (%closure-ref self$1045 1) r$326))) (%closure-ref self$1044 1) (%closure-ref self$1044 2) (%closure-ref self$1044 3) k$315 (%closure-ref self$1044 4) (%closure-ref self$1044 5) (%closure-ref self$1044 6) (%closure-ref self$1044 7)) (quote ()))) (%closure-ref self$1043 1) (%closure-ref self$1043 2) (%closure-ref self$1043 3) (%closure-ref self$1043 5) (%closure-ref self$1043 6) (%closure-ref self$1043 8) (%closure-ref self$1043 9)))) (%closure-ref self$1042 1) (%closure-ref self$1042 2) (%closure-ref self$1042 3) (%closure-ref self$1042 4) (%closure-ref self$1042 5) (%closure-ref self$1042 6) (%closure-ref self$1042 8) (%closure-ref self$1042 9) (%closure-ref self$1042 10)) (set-cell! (%closure-ref self$1042 7) r$327))) (%closure-ref self$1033 1) (%closure-ref self$1033 2) (%closure-ref self$1033 3) (%closure-ref self$1033 4) (%closure-ref self$1033 5) (%closure-ref self$1033 6) (%closure-ref self$1033 8) (%closure-ref self$1033 9) (%closure-ref self$1033 10) (%closure-ref self$1033 11)) (%closure (lambda (self$1034 k$328 x$166 lst$165) ((%closure (lambda (self$1035 r$329) (if r$329 ((%closure (lambda (self$1041) ((%closure-ref (%closure-ref self$1041 1) 0) (%closure-ref self$1041 1) #f)) (%closure-ref self$1035 1))) ((%closure (lambda (self$1036 r$332) ((%closure-ref (cell-get (%closure-ref self$1036 3)) 0) (cell-get (%closure-ref self$1036 3)) (%closure (lambda (self$1037 r$330) (if r$330 ((%closure (lambda (self$1040) ((%closure-ref (%closure-ref self$1040 1) 0) (%closure-ref self$1040 1) #t)) (%closure-ref self$1037 1))) ((%closure (lambda (self$1038) ((%closure (lambda (self$1039 r$331) ((%closure-ref (cell-get (%closure-ref self$1039 2)) 0) (cell-get (%closure-ref self$1039 2)) (%closure-ref self$1039 1) (%closure-ref self$1039 3) r$331)) (%closure-ref self$1038 1) (%closure-ref self$1038 3) (%closure-ref self$1038 4)) (cdr (%closure-ref self$1038 2)))) (%closure-ref self$1037 1) (%closure-ref self$1037 2) (%closure-ref self$1037 3) (%closure-ref self$1037 4))))) (%closure-ref self$1036 1) (%closure-ref self$1036 2) (%closure-ref self$1036 4) (%closure-ref self$1036 5)) (%closure-ref self$1036 5) r$332)) (%closure-ref self$1035 1) (%closure-ref self$1035 2) (%closure-ref self$1035 3) (%closure-ref self$1035 4) (%closure-ref self$1035 5)) (car (%closure-ref self$1035 2))))) k$328 lst$165 (%closure-ref self$1034 1) (%closure-ref self$1034 2) x$166) (null? lst$165))) (%closure-ref self$1033 7) (%closure-ref self$1033 8)))) (%closure-ref self$1032 1) (%closure-ref self$1032 2) (%closure-ref self$1032 3) (%closure-ref self$1032 4) (%closure-ref self$1032 5) (%closure-ref self$1032 6) (%closure-ref self$1032 8) (%closure-ref self$1032 9) (%closure-ref self$1032 10) (%closure-ref self$1032 11) (%closure-ref self$1032 12)) (set-cell! (%closure-ref self$1032 7) r$333))) (%closure-ref self$1019 1) (%closure-ref self$1019 2) (%closure-ref self$1019 3) (%closure-ref self$1019 4) (%closure-ref self$1019 5) (%closure-ref self$1019 6) (%closure-ref self$1019 7) (%closure-ref self$1019 8) (%closure-ref self$1019 9) (%closure-ref self$1019 10) (%closure-ref self$1019 11) (%closure-ref self$1019 12)) (%closure (lambda (self$1020 k$334 lst1$168 lst2$167) ((%closure (lambda (self$1021 r$335) (if r$335 ((%closure (lambda (self$1031) ((%closure-ref (%closure-ref self$1031 1) 0) (%closure-ref self$1031 1) (null? (%closure-ref self$1031 2)))) (%closure-ref self$1021 1) (%closure-ref self$1021 3))) ((%closure (lambda (self$1022 r$336) (if r$336 ((%closure (lambda (self$1030) ((%closure-ref (%closure-ref self$1030 1) 0) (%closure-ref self$1030 1) #f)) (%closure-ref self$1022 1))) ((%closure (lambda (self$1023 r$340) ((%closure (lambda (self$1024 r$341) ((%closure-ref (cell-get (%closure-ref self$1024 6)) 0) (cell-get (%closure-ref self$1024 6)) (%closure (lambda (self$1025 r$337) (if r$337 ((%closure (lambda (self$1027) ((%closure (lambda (self$1028 r$338) ((%closure (lambda (self$1029 r$339) ((%closure-ref (cell-get (%closure-ref self$1029 3)) 0) (cell-get (%closure-ref self$1029 3)) (%closure-ref self$1029 1) (%closure-ref self$1029 2) r$339)) (%closure-ref self$1028 1) r$338 (%closure-ref self$1028 3)) (cdr (%closure-ref self$1028 2)))) (%closure-ref self$1027 1) (%closure-ref self$1027 3) (%closure-ref self$1027 4)) (cdr (%closure-ref self$1027 2)))) (%closure-ref self$1025 1) (%closure-ref self$1025 2) (%closure-ref self$1025 3) (%closure-ref self$1025 4))) ((%closure (lambda (self$1026) ((%closure-ref (%closure-ref self$1026 1) 0) (%closure-ref self$1026 1) #f)) (%closure-ref self$1025 1))))) (%closure-ref self$1024 1) (%closure-ref self$1024 2) (%closure-ref self$1024 3) (%closure-ref self$1024 5)) (%closure-ref self$1024 4) r$341)) (%closure-ref self$1023 1) (%closure-ref self$1023 2) (%closure-ref self$1023 3) r$340 (%closure-ref self$1023 4) (%closure-ref self$1023 5)) (car (%closure-ref self$1023 3)))) (%closure-ref self$1022 1) (%closure-ref self$1022 2) (%closure-ref self$1022 3) (%closure-ref self$1022 4) (%closure-ref self$1022 5)) (car (%closure-ref self$1022 2))))) (%closure-ref self$1021 1) (%closure-ref self$1021 2) (%closure-ref self$1021 3) (%closure-ref self$1021 4) (%closure-ref self$1021 5)) (null? (%closure-ref self$1021 3))))) k$334 lst1$168 lst2$167 (%closure-ref self$1020 1) (%closure-ref self$1020 2)) (null? lst1$168))) (%closure-ref self$1019 7) (%closure-ref self$1019 8)))) (%closure-ref self$1018 1) (%closure-ref self$1018 2) (%closure-ref self$1018 3) (%closure-ref self$1018 4) (%closure-ref self$1018 5) (%closure-ref self$1018 6) (%closure-ref self$1018 7) (%closure-ref self$1018 8) (%closure-ref self$1018 9) (%closure-ref self$1018 10) (%closure-ref self$1018 11) (%closure-ref self$1018 12)) (set-cell! (%closure-ref self$1018 8) r$342))) (%closure-ref self$1007 1) (%closure-ref self$1007 2) (%closure-ref self$1007 3) (%closure-ref self$1007 4) (%closure-ref self$1007 5) (%closure-ref self$1007 6) (%closure-ref self$1007 8) (%closure-ref self$1007 9) (%closure-ref self$1007 10) (%closure-ref self$1007 11) (%closure-ref self$1007 12) (%closure-ref self$1007 13)) (%closure (lambda (self$1008 k$343 x$170 y$169) ((%closure (lambda (self$1009 r$344) (if r$344 ((%closure (lambda (self$1011) ((%closure (lambda (self$1012 r$345) (if r$345 ((%closure (lambda (self$1013 r$349) ((%closure (lambda (self$1014 r$350) ((%closure-ref (cell-get (%closure-ref self$1014 3)) 0) (cell-get (%closure-ref self$1014 3)) (%closure (lambda (self$1015 r$346) (if r$346 ((%closure (lambda (self$1016 r$347) ((%closure (lambda (self$1017 r$348) ((%closure-ref (cell-get (%closure-ref self$1017 3)) 0) (cell-get (%closure-ref self$1017 3)) (%closure-ref self$1017 1) (%closure-ref self$1017 2) r$348)) (%closure-ref self$1016 1) r$347 (%closure-ref self$1016 2)) (cdr (%closure-ref self$1016 3)))) (%closure-ref self$1015 1) (%closure-ref self$1015 2) (%closure-ref self$1015 4)) (cdr (%closure-ref self$1015 3))) ((%closure-ref (%closure-ref self$1015 1) 0) (%closure-ref self$1015 1) #f))) (%closure-ref self$1014 1) (%closure-ref self$1014 4) (%closure-ref self$1014 5) (%closure-ref self$1014 6)) (%closure-ref self$1014 2) r$350)) (%closure-ref self$1013 1) r$349 (%closure-ref self$1013 2) (%closure-ref self$1013 3) (%closure-ref self$1013 4) (%closure-ref self$1013 5)) (car (%closure-ref self$1013 5)))) (%closure-ref self$1012 1) (%closure-ref self$1012 2) (%closure-ref self$1012 3) (%closure-ref self$1012 4) (%closure-ref self$1012 5)) (car (%closure-ref self$1012 4))) ((%closure-ref (%closure-ref self$1012 1) 0) (%closure-ref self$1012 1) #f))) (%closure-ref self$1011 1) (%closure-ref self$1011 2) (%closure-ref self$1011 3) (%closure-ref self$1011 4) (%closure-ref self$1011 5)) (pair? (%closure-ref self$1011 5)))) (%closure-ref self$1009 1) (%closure-ref self$1009 2) (%closure-ref self$1009 3) (%closure-ref self$1009 4) (%closure-ref self$1009 5))) ((%closure (lambda (self$1010) ((%closure-ref (%closure-ref self$1010 1) 0) (%closure-ref self$1010 1) (equal? (%closure-ref self$1010 2) (%closure-ref self$1010 3)))) (%closure-ref self$1009 1) (%closure-ref self$1009 4) (%closure-ref self$1009 5))))) k$343 (%closure-ref self$1008 1) (%closure-ref self$1008 2) x$170 y$169) (pair? x$170))) (%closure-ref self$1007 7) (%closure-ref self$1007 8)))) (%closure-ref self$1006 1) (%closure-ref self$1006 2) (%closure-ref self$1006 3) (%closure-ref self$1006 4) (%closure-ref self$1006 5) (%closure-ref self$1006 6) (%closure-ref self$1006 7) (%closure-ref self$1006 8) (%closure-ref self$1006 9) (%closure-ref self$1006 10) (%closure-ref self$1006 11) (%closure-ref self$1006 13) (%closure-ref self$1006 14)) (set-cell! (%closure-ref self$1006 12) r$351))) (%closure-ref self$994 1) (%closure-ref self$994 2) (%closure-ref self$994 3) (%closure-ref self$994 4) (%closure-ref self$994 5) (%closure-ref self$994 6) (%closure-ref self$994 7) (%closure-ref self$994 8) (%closure-ref self$994 9) (%closure-ref self$994 10) (%closure-ref self$994 11) (%closure-ref self$994 12) (%closure-ref self$994 13) (%closure-ref self$994 14)) (%closure (lambda (self$995 k$352 n$171) ((%closure (lambda (self$996 r$353) (if r$353 ((%closure (lambda (self$1004) ((%closure (lambda (self$1005 r$354) ((%closure-ref list 0) list (%closure-ref self$1005 1) r$354 0 1)) (%closure-ref self$1004 1)) (quote implies))) (%closure-ref self$996 1))) ((%closure (lambda (self$997) ((%closure (lambda (self$998 r$355) ((%closure (lambda (self$999 r$359) ((%closure (lambda (self$1000 r$360) ((%closure-ref list 0) list (%closure (lambda (self$1001 r$356) ((%closure (lambda (self$1002 r$358) ((%closure-ref (cell-get (%closure-ref self$1002 4)) 0) (cell-get (%closure-ref self$1002 4)) (%closure (lambda (self$1003 r$357) ((%closure-ref list 0) list (%closure-ref self$1003 1) (%closure-ref self$1003 2) (%closure-ref self$1003 3) r$357)) (%closure-ref self$1002 1) (%closure-ref self$1002 2) (%closure-ref self$1002 3)) r$358)) (%closure-ref self$1001 1) (%closure-ref self$1001 3) r$356 (%closure-ref self$1001 4)) (- (%closure-ref self$1001 2) 1))) (%closure-ref self$1000 1) (%closure-ref self$1000 2) (%closure-ref self$1000 3) (%closure-ref self$1000 5)) (%closure-ref self$1000 4) r$360 (%closure-ref self$1000 2))) (%closure-ref self$999 1) (%closure-ref self$999 2) (%closure-ref self$999 3) r$359 (%closure-ref self$999 4)) (- (%closure-ref self$999 2) 1))) (%closure-ref self$998 1) (%closure-ref self$998 2) r$355 (%closure-ref self$998 3)) (quote implies))) (%closure-ref self$997 1) (%closure-ref self$997 2) (%closure-ref self$997 3)) (quote and))) (%closure-ref self$996 1) (%closure-ref self$996 2) (%closure-ref self$996 3))))) k$352 n$171 (%closure-ref self$995 1)) (equal? n$171 1))) (%closure-ref self$994 12)))) (%closure-ref self$993 1) (%closure-ref self$993 2) (%closure-ref self$993 3) (%closure-ref self$993 4) (%closure-ref self$993 5) (%closure-ref self$993 6) (%closure-ref self$993 7) (%closure-ref self$993 8) (%closure-ref self$993 9) (%closure-ref self$993 10) (%closure-ref self$993 11) (%closure-ref self$993 13) (%closure-ref self$993 14) (%closure-ref self$993 15)) (set-cell! (%closure-ref self$993 12) r$361))) (%closure-ref self$986 1) (%closure-ref self$986 2) (%closure-ref self$986 3) (%closure-ref self$986 4) (%closure-ref self$986 5) (%closure-ref self$986 6) (%closure-ref self$986 7) (%closure-ref self$986 8) (%closure-ref self$986 9) (%closure-ref self$986 10) (%closure-ref self$986 11) (%closure-ref self$986 12) (%closure-ref self$986 13) (%closure-ref self$986 14) (%closure-ref self$986 15)) (%closure (lambda (self$987 k$362 n$172) ((%closure (lambda (self$988 r$364) ((%closure-ref (cell-get (%closure-ref self$988 3)) 0) (cell-get (%closure-ref self$988 3)) (%closure (lambda (self$989 r$365) ((%closure (lambda (self$990 r$367) ((%closure-ref list 0) list (%closure (lambda (self$991 r$366) ((%closure-ref list 0) list (%closure (lambda (self$992 r$363) ((%closure-ref (cell-get (%closure-ref self$992 2)) 0) (cell-get (%closure-ref self$992 2)) (%closure-ref self$992 1) r$363)) (%closure-ref self$991 1) (%closure-ref self$991 4)) (%closure-ref self$991 2) (%closure-ref self$991 3) r$366)) (%closure-ref self$990 1) (%closure-ref self$990 3) (%closure-ref self$990 4) (%closure-ref self$990 5)) r$367 0 (%closure-ref self$990 2))) (%closure-ref self$989 1) (%closure-ref self$989 2) (%closure-ref self$989 3) r$365 (%closure-ref self$989 4)) (quote implies))) (%closure-ref self$988 1) (%closure-ref self$988 2) r$364 (%closure-ref self$988 4)) (%closure-ref self$988 2))) k$362 n$172 (%closure-ref self$987 1) (%closure-ref self$987 2)) (quote implies))) (%closure-ref self$986 13) (%closure-ref self$986 14)))) (%closure-ref self$985 1) (%closure-ref self$985 2) (%closure-ref self$985 3) (%closure-ref self$985 4) (%closure-ref self$985 5) (%closure-ref self$985 6) (%closure-ref self$985 7) (%closure-ref self$985 8) (%closure-ref self$985 9) (%closure-ref self$985 10) (%closure-ref self$985 11) (%closure-ref self$985 12) (%closure-ref self$985 13) (%closure-ref self$985 14) (%closure-ref self$985 15)) (set-cell! (%closure-ref self$985 15) r$368))) (%closure-ref self$984 1) (%closure-ref self$984 2) (%closure-ref self$984 3) (%closure-ref self$984 4) (%closure-ref self$984 5) (%closure-ref self$984 6) (%closure-ref self$984 7) (%closure-ref self$984 8) (%closure-ref self$984 9) (%closure-ref self$984 10) (%closure-ref self$984 11) (%closure-ref self$984 12) (%closure-ref self$984 13) (%closure-ref self$984 14) (%closure-ref self$984 15)) (quote *))) (%closure-ref self$983 1) (%closure-ref self$983 2) (%closure-ref self$983 3) (%closure-ref self$983 4) (%closure-ref self$983 5) (%closure-ref self$983 6) (%closure-ref self$983 7) (%closure-ref self$983 8) (%closure-ref self$983 9) (%closure-ref self$983 10) (%closure-ref self$983 11) (%closure-ref self$983 12) (%closure-ref self$983 13) (%closure-ref self$983 14) (%closure-ref self$983 15)) (set-cell! (%closure-ref self$983 2) r$369))) (%closure-ref self$982 1) (%closure-ref self$982 2) (%closure-ref self$982 3) (%closure-ref self$982 4) (%closure-ref self$982 5) (%closure-ref self$982 6) (%closure-ref self$982 7) (%closure-ref self$982 8) (%closure-ref self$982 9) (%closure-ref self$982 10) (%closure-ref self$982 11) (%closure-ref self$982 12) (%closure-ref self$982 13) (%closure-ref self$982 14) (%closure-ref self$982 15)) (quote *))) (%closure-ref self$981 1) (%closure-ref self$981 2) (%closure-ref self$981 3) (%closure-ref self$981 4) (%closure-ref self$981 5) (%closure-ref self$981 6) (%closure-ref self$981 7) (%closure-ref self$981 8) (%closure-ref self$981 9) (%closure-ref self$981 10) (%closure-ref self$981 11) (%closure-ref self$981 12) (%closure-ref self$981 13) (%closure-ref self$981 14) (%closure-ref self$981 15)) (set-cell! (%closure-ref self$981 16) r$370))) (%closure-ref self$978 1) (%closure-ref self$978 2) (%closure-ref self$978 3) (%closure-ref self$978 4) (%closure-ref self$978 5) (%closure-ref self$978 6) (%closure-ref self$978 7) (%closure-ref self$978 8) (%closure-ref self$978 9) (%closure-ref self$978 10) (%closure-ref self$978 11) (%closure-ref self$978 12) (%closure-ref self$978 13) (%closure-ref self$978 14) (%closure-ref self$978 15) (%closure-ref self$978 16)) (%closure (lambda (self$979 k$371 x$174 lst$173) ((%closure-ref (cell-get (%closure-ref self$979 1)) 0) (cell-get (%closure-ref self$979 1)) (%closure (lambda (self$980 tmp$175) (if tmp$175 ((%closure-ref (%closure-ref self$980 1) 0) (%closure-ref self$980 1) tmp$175) ((%closure-ref (cell-get (%closure-ref self$980 3)) 0) (cell-get (%closure-ref self$980 3)) (%closure-ref self$980 1) (%closure-ref self$980 4) (%closure-ref self$980 2)))) k$371 lst$173 (%closure-ref self$979 2) x$174) x$174 (cell-get (%closure-ref self$979 3)))) (%closure-ref self$978 9) (%closure-ref self$978 10) (%closure-ref self$978 15)))) (%closure-ref self$977 1) (%closure-ref self$977 2) (%closure-ref self$977 4) (%closure-ref self$977 5) (%closure-ref self$977 6) (%closure-ref self$977 7) (%closure-ref self$977 8) (%closure-ref self$977 9) (%closure-ref self$977 10) (%closure-ref self$977 11) (%closure-ref self$977 12) (%closure-ref self$977 13) (%closure-ref self$977 14) (%closure-ref self$977 15) (%closure-ref self$977 16) (%closure-ref self$977 17)) (set-cell! (%closure-ref self$977 3) r$373))) (%closure-ref self$974 1) (%closure-ref self$974 2) (%closure-ref self$974 3) (%closure-ref self$974 4) (%closure-ref self$974 5) (%closure-ref self$974 6) (%closure-ref self$974 7) (%closure-ref self$974 8) (%closure-ref self$974 9) (%closure-ref self$974 10) (%closure-ref self$974 11) (%closure-ref self$974 12) (%closure-ref self$974 13) (%closure-ref self$974 14) (%closure-ref self$974 15) (%closure-ref self$974 16) (%closure-ref self$974 17)) (%closure (lambda (self$975 k$374 x$177 lst$176) ((%closure-ref (cell-get (%closure-ref self$975 2)) 0) (cell-get (%closure-ref self$975 2)) (%closure (lambda (self$976 tmp$178) (if tmp$178 ((%closure-ref (%closure-ref self$976 1) 0) (%closure-ref self$976 1) tmp$178) ((%closure-ref (cell-get (%closure-ref self$976 3)) 0) (cell-get (%closure-ref self$976 3)) (%closure-ref self$976 1) (%closure-ref self$976 4) (%closure-ref self$976 2)))) k$374 lst$176 (%closure-ref self$975 3) x$177) x$177 (cell-get (%closure-ref self$975 1)))) (%closure-ref self$974 2) (%closure-ref self$974 10) (%closure-ref self$974 11)))) (%closure-ref self$973 1) (%closure-ref self$973 2) (%closure-ref self$973 3) (%closure-ref self$973 4) (%closure-ref self$973 6) (%closure-ref self$973 7) (%closure-ref self$973 8) (%closure-ref self$973 9) (%closure-ref self$973 10) (%closure-ref self$973 11) (%closure-ref self$973 12) (%closure-ref self$973 13) (%closure-ref self$973 14) (%closure-ref self$973 15) (%closure-ref self$973 16) (%closure-ref self$973 17) (%closure-ref self$973 18)) (set-cell! (%closure-ref self$973 5) r$376))) (%closure-ref self$960 1) (%closure-ref self$960 2) (%closure-ref self$960 3) (%closure-ref self$960 4) (%closure-ref self$960 6) (%closure-ref self$960 7) (%closure-ref self$960 8) (%closure-ref self$960 9) (%closure-ref self$960 10) (%closure-ref self$960 11) (%closure-ref self$960 12) (%closure-ref self$960 13) (%closure-ref self$960 14) (%closure-ref self$960 15) (%closure-ref self$960 16) (%closure-ref self$960 17) (%closure-ref self$960 18) (%closure-ref self$960 19)) (%closure (lambda (self$961 k$377 lst1$180 lst2$179) ((%closure (lambda (self$962 r$378) (if r$378 ((%closure (lambda (self$972) ((%closure-ref (%closure-ref self$972 1) 0) (%closure-ref self$972 1) (null? (%closure-ref self$972 2)))) (%closure-ref self$962 1) (%closure-ref self$962 3))) ((%closure (lambda (self$963 r$379) (if r$379 ((%closure (lambda (self$971) ((%closure-ref (%closure-ref self$971 1) 0) (%closure-ref self$971 1) #f)) (%closure-ref self$963 1))) ((%closure (lambda (self$964 r$383) ((%closure (lambda (self$965 r$384) ((%closure-ref (cell-get (%closure-ref self$965 4)) 0) (cell-get (%closure-ref self$965 4)) (%closure (lambda (self$966 r$380) (if r$380 ((%closure (lambda (self$968) ((%closure (lambda (self$969 r$381) ((%closure (lambda (self$970 r$382) ((%closure-ref (cell-get (%closure-ref self$970 2)) 0) (cell-get (%closure-ref self$970 2)) (%closure-ref self$970 1) (%closure-ref self$970 3) r$382)) (%closure-ref self$969 1) (%closure-ref self$969 3) r$381) (cdr (%closure-ref self$969 2)))) (%closure-ref self$968 1) (%closure-ref self$968 3) (%closure-ref self$968 4)) (cdr (%closure-ref self$968 2)))) (%closure-ref self$966 1) (%closure-ref self$966 2) (%closure-ref self$966 3) (%closure-ref self$966 4))) ((%closure (lambda (self$967) ((%closure-ref (%closure-ref self$967 1) 0) (%closure-ref self$967 1) #f)) (%closure-ref self$966 1))))) (%closure-ref self$965 1) (%closure-ref self$965 2) (%closure-ref self$965 3) (%closure-ref self$965 5)) (%closure-ref self$965 6) r$384)) (%closure-ref self$964 1) (%closure-ref self$964 2) (%closure-ref self$964 3) (%closure-ref self$964 4) (%closure-ref self$964 5) r$383) (car (%closure-ref self$964 3)))) (%closure-ref self$963 1) (%closure-ref self$963 2) (%closure-ref self$963 3) (%closure-ref self$963 4) (%closure-ref self$963 5)) (car (%closure-ref self$963 2))))) (%closure-ref self$962 1) (%closure-ref self$962 2) (%closure-ref self$962 3) (%closure-ref self$962 4) (%closure-ref self$962 5)) (null? (%closure-ref self$962 3))))) k$377 lst1$180 lst2$179 (%closure-ref self$961 1) (%closure-ref self$961 2)) (null? lst1$180))) (%closure-ref self$960 5) (%closure-ref self$960 6)))) (%closure-ref self$959 1) (%closure-ref self$959 2) (%closure-ref self$959 3) (%closure-ref self$959 4) (%closure-ref self$959 5) (%closure-ref self$959 6) (%closure-ref self$959 7) (%closure-ref self$959 8) (%closure-ref self$959 9) (%closure-ref self$959 10) (%closure-ref self$959 11) (%closure-ref self$959 12) (%closure-ref self$959 13) (%closure-ref self$959 14) (%closure-ref self$959 15) (%closure-ref self$959 16) (%closure-ref self$959 17) (%closure-ref self$959 18) (%closure-ref self$959 19)) (set-cell! (%closure-ref self$959 5) r$385))) (%closure-ref self$937 1) (%closure-ref self$937 2) (%closure-ref self$937 3) (%closure-ref self$937 4) (%closure-ref self$937 5) (%closure-ref self$937 6) (%closure-ref self$937 7) (%closure-ref self$937 8) (%closure-ref self$937 9) (%closure-ref self$937 10) (%closure-ref self$937 11) (%closure-ref self$937 12) (%closure-ref self$937 13) (%closure-ref self$937 14) (%closure-ref self$937 15) (%closure-ref self$937 16) (%closure-ref self$937 17) (%closure-ref self$937 18) (%closure-ref self$937 19)) (%closure (lambda (self$938 k$386 term1$182 term2$181) ((%closure (lambda (self$939 r$387) (if r$387 ((%closure (lambda (self$950 r$388) (if r$388 ((%closure (lambda (self$952 r$392) ((%closure (lambda (self$953 r$393) ((%closure (lambda (self$954 r$389) (if r$389 ((%closure (lambda (self$956) ((%closure (lambda (self$957 r$390) ((%closure (lambda (self$958 r$391) ((%closure-ref (cell-get (%closure-ref self$958 2)) 0) (cell-get (%closure-ref self$958 2)) (%closure-ref self$958 1) (%closure-ref self$958 3) r$391)) (%closure-ref self$957 1) (%closure-ref self$957 2) r$390) (cdr (%closure-ref self$957 3)))) (%closure-ref self$956 1) (%closure-ref self$956 2) (%closure-ref self$956 4)) (cdr (%closure-ref self$956 3)))) (%closure-ref self$954 1) (%closure-ref self$954 2) (%closure-ref self$954 3) (%closure-ref self$954 4))) ((%closure (lambda (self$955) ((%closure-ref (%closure-ref self$955 1) 0) (%closure-ref self$955 1) #f)) (%closure-ref self$954 1))))) (%closure-ref self$953 1) (%closure-ref self$953 2) (%closure-ref self$953 4) (%closure-ref self$953 5)) (eq? (%closure-ref self$953 3) r$393))) (%closure-ref self$952 1) (%closure-ref self$952 2) r$392 (%closure-ref self$952 3) (%closure-ref self$952 4)) (car (%closure-ref self$952 4)))) (%closure-ref self$950 1) (%closure-ref self$950 2) (%closure-ref self$950 3) (%closure-ref self$950 4)) (car (%closure-ref self$950 3))) ((%closure (lambda (self$951) ((%closure-ref (%closure-ref self$951 1) 0) (%closure-ref self$951 1) #f)) (%closure-ref self$950 1))))) (%closure-ref self$939 1) (%closure-ref self$939 2) (%closure-ref self$939 4) (%closure-ref self$939 5)) (pair? (%closure-ref self$939 4))) ((%closure (lambda (self$940) ((%closure (lambda (self$941 temp-temp$183) (if temp-temp$183 ((%closure (lambda (self$948) ((%closure (lambda (self$949 r$395) ((%closure-ref (cell-get (%closure-ref self$949 2)) 0) (cell-get (%closure-ref self$949 2)) (%closure-ref self$949 1) (%closure-ref self$949 3) r$395)) (%closure-ref self$948 1) (%closure-ref self$948 3) (%closure-ref self$948 4)) (cdr (%closure-ref self$948 2)))) (%closure-ref self$941 1) temp-temp$183 (%closure-ref self$941 2) (%closure-ref self$941 3))) ((%closure (lambda (self$942 r$396) (if r$396 ((%closure (lambda (self$947) ((%closure-ref (%closure-ref self$947 1) 0) (%closure-ref self$947 1) (equal? (%closure-ref self$947 2) (%closure-ref self$947 3)))) (%closure-ref self$942 1) (%closure-ref self$942 2) (%closure-ref self$942 3))) ((%closure (lambda (self$943) ((%closure (lambda (self$944 r$399) ((%closure (lambda (self$945 r$398) ((%closure (lambda (self$946 r$397) ((%closure-ref (%closure-ref self$946 1) 0) (%closure-ref self$946 1) #t)) (%closure-ref self$945 1)) (set-cell! (%closure-ref self$945 2) r$398))) (%closure-ref self$944 1) (%closure-ref self$944 2)) (cons r$399 (cell-get (%closure-ref self$944 2))))) (%closure-ref self$943 1) (%closure-ref self$943 4)) (cons (%closure-ref self$943 3) (%closure-ref self$943 2)))) (%closure-ref self$942 1) (%closure-ref self$942 2) (%closure-ref self$942 3) (%closure-ref self$942 4))))) (%closure-ref self$941 1) (%closure-ref self$941 3) (%closure-ref self$941 4) (%closure-ref self$941 5)) (number? (%closure-ref self$941 4))))) (%closure-ref self$940 1) (%closure-ref self$940 2) (%closure-ref self$940 3) (%closure-ref self$940 4) (%closure-ref self$940 5)) (assq (%closure-ref self$940 4) (cell-get (%closure-ref self$940 5))))) (%closure-ref self$939 1) (%closure-ref self$939 3) (%closure-ref self$939 4) (%closure-ref self$939 5) (%closure-ref self$939 6))))) k$386 (%closure-ref self$938 1) (%closure-ref self$938 2) term1$182 term2$181 (%closure-ref self$938 3)) (pair? term2$181))) (%closure-ref self$937 6) (%closure-ref self$937 12) (%closure-ref self$937 20)))) (%closure-ref self$936 1) (%closure-ref self$936 2) (%closure-ref self$936 3) (%closure-ref self$936 4) (%closure-ref self$936 6) (%closure-ref self$936 7) (%closure-ref self$936 8) (%closure-ref self$936 9) (%closure-ref self$936 10) (%closure-ref self$936 11) (%closure-ref self$936 12) (%closure-ref self$936 13) (%closure-ref self$936 14) (%closure-ref self$936 15) (%closure-ref self$936 16) (%closure-ref self$936 17) (%closure-ref self$936 18) (%closure-ref self$936 19) (%closure-ref self$936 20) (%closure-ref self$936 21)) (set-cell! (%closure-ref self$936 5) r$400))) (%closure-ref self$932 1) (%closure-ref self$932 2) (%closure-ref self$932 3) (%closure-ref self$932 4) (%closure-ref self$932 5) (%closure-ref self$932 6) (%closure-ref self$932 7) (%closure-ref self$932 8) (%closure-ref self$932 9) (%closure-ref self$932 10) (%closure-ref self$932 11) (%closure-ref self$932 12) (%closure-ref self$932 13) (%closure-ref self$932 14) (%closure-ref self$932 15) (%closure-ref self$932 16) (%closure-ref self$932 17) (%closure-ref self$932 18) (%closure-ref self$932 19) (%closure-ref self$932 20) (%closure-ref self$932 21)) (%closure (lambda (self$933 k$401 term1$185 term2$184) ((%closure (lambda (self$934 r$403) ((%closure (lambda (self$935 r$402) ((%closure-ref (cell-get (%closure-ref self$935 2)) 0) (cell-get (%closure-ref self$935 2)) (%closure-ref self$935 1) (%closure-ref self$935 3) (%closure-ref self$935 4))) (%closure-ref self$934 1) (%closure-ref self$934 2) (%closure-ref self$934 3) (%closure-ref self$934 4)) (set-cell! (%closure-ref self$934 5) r$403))) k$401 (%closure-ref self$933 1) term1$185 term2$184 (%closure-ref self$933 2)) (quote ()))) (%closure-ref self$932 6) (%closure-ref self$932 21)))) (%closure-ref self$931 1) (%closure-ref self$931 2) (%closure-ref self$931 3) (%closure-ref self$931 4) (%closure-ref self$931 5) (%closure-ref self$931 6) (%closure-ref self$931 7) (%closure-ref self$931 8) (%closure-ref self$931 9) (%closure-ref self$931 10) (%closure-ref self$931 11) (%closure-ref self$931 12) (%closure-ref self$931 13) (%closure-ref self$931 14) (%closure-ref self$931 15) (%closure-ref self$931 16) (%closure-ref self$931 17) (%closure-ref self$931 18) (%closure-ref self$931 19) (%closure-ref self$931 20) (%closure-ref self$931 21)) (set-cell! (%closure-ref self$931 21) r$404))) (%closure-ref self$930 1) (%closure-ref self$930 2) (%closure-ref self$930 3) (%closure-ref self$930 4) (%closure-ref self$930 5) (%closure-ref self$930 6) (%closure-ref self$930 7) (%closure-ref self$930 8) (%closure-ref self$930 9) (%closure-ref self$930 10) (%closure-ref self$930 11) (%closure-ref self$930 12) (%closure-ref self$930 13) (%closure-ref self$930 14) (%closure-ref self$930 15) (%closure-ref self$930 16) (%closure-ref self$930 17) (%closure-ref self$930 18) (%closure-ref self$930 19) (%closure-ref self$930 20) (%closure-ref self$930 21)) (quote *))) (%closure-ref self$929 1) (%closure-ref self$929 2) (%closure-ref self$929 3) (%closure-ref self$929 4) (%closure-ref self$929 5) (%closure-ref self$929 6) (%closure-ref self$929 7) (%closure-ref self$929 8) (%closure-ref self$929 10) (%closure-ref self$929 11) (%closure-ref self$929 12) (%closure-ref self$929 13) (%closure-ref self$929 14) (%closure-ref self$929 15) (%closure-ref self$929 16) (%closure-ref self$929 17) (%closure-ref self$929 18) (%closure-ref self$929 19) (%closure-ref self$929 20) (%closure-ref self$929 21) (%closure-ref self$929 22)) (set-cell! (%closure-ref self$929 9) r$405))) (%closure-ref self$916 1) (%closure-ref self$916 3) (%closure-ref self$916 4) (%closure-ref self$916 5) (%closure-ref self$916 6) (%closure-ref self$916 7) (%closure-ref self$916 8) (%closure-ref self$916 10) (%closure-ref self$916 11) (%closure-ref self$916 12) (%closure-ref self$916 13) (%closure-ref self$916 14) (%closure-ref self$916 15) (%closure-ref self$916 16) (%closure-ref self$916 17) (%closure-ref self$916 18) (%closure-ref self$916 19) (%closure-ref self$916 20) (%closure-ref self$916 21) (%closure-ref self$916 22) (%closure-ref self$916 23) (%closure-ref self$916 24)) (%closure (lambda (self$917 k$406 term$187 lst$186) ((%closure (lambda (self$918 r$407) (if r$407 ((%closure (lambda (self$928) ((%closure-ref (%closure-ref self$928 1) 0) (%closure-ref self$928 1) (%closure-ref self$928 2))) (%closure-ref self$918 2) (%closure-ref self$918 7))) ((%closure (lambda (self$919 r$414) ((%closure (lambda (self$920 r$413) ((%closure-ref (cell-get (%closure-ref self$920 4)) 0) (cell-get (%closure-ref self$920 4)) (%closure (lambda (self$921 r$408) (if r$408 ((%closure (lambda (self$924) ((%closure (lambda (self$925 r$411) ((%closure (lambda (self$926 r$410) ((%closure-ref (cell-get (%closure-ref self$926 1)) 0) (cell-get (%closure-ref self$926 1)) (%closure (lambda (self$927 r$409) ((%closure-ref (cell-get (%closure-ref self$927 2)) 0) (cell-get (%closure-ref self$927 2)) (%closure-ref self$927 1) r$409)) (%closure-ref self$926 2) (%closure-ref self$926 3)) (cell-get (%closure-ref self$926 4)) r$410)) (%closure-ref self$925 1) (%closure-ref self$925 2) (%closure-ref self$925 3) (%closure-ref self$925 4)) (caddr r$411))) (%closure-ref self$924 1) (%closure-ref self$924 2) (%closure-ref self$924 4) (%closure-ref self$924 5)) (car (%closure-ref self$924 3)))) (%closure-ref self$921 1) (%closure-ref self$921 2) (%closure-ref self$921 3) (%closure-ref self$921 4) (%closure-ref self$921 7))) ((%closure (lambda (self$922) ((%closure (lambda (self$923 r$412) ((%closure-ref (cell-get (%closure-ref self$923 2)) 0) (cell-get (%closure-ref self$923 2)) (%closure-ref self$923 1) (%closure-ref self$923 3) r$412)) (%closure-ref self$922 1) (%closure-ref self$922 3) (%closure-ref self$922 4)) (cdr (%closure-ref self$922 2)))) (%closure-ref self$921 2) (%closure-ref self$921 3) (%closure-ref self$921 5) (%closure-ref self$921 6))))) (%closure-ref self$920 1) (%closure-ref self$920 2) (%closure-ref self$920 3) (%closure-ref self$920 5) (%closure-ref self$920 6) (%closure-ref self$920 7) (%closure-ref self$920 8)) (%closure-ref self$920 7) r$413)) (%closure-ref self$919 1) (%closure-ref self$919 2) (%closure-ref self$919 3) (%closure-ref self$919 4) (%closure-ref self$919 5) (%closure-ref self$919 6) (%closure-ref self$919 7) (%closure-ref self$919 8)) (cadr r$414))) (%closure-ref self$918 1) (%closure-ref self$918 2) (%closure-ref self$918 3) (%closure-ref self$918 4) (%closure-ref self$918 5) (%closure-ref self$918 6) (%closure-ref self$918 7) (%closure-ref self$918 8)) (car (%closure-ref self$918 3))))) (%closure-ref self$917 1) k$406 lst$186 (%closure-ref self$917 2) (%closure-ref self$917 3) (%closure-ref self$917 4) term$187 (%closure-ref self$917 5)) (null? lst$186))) (%closure-ref self$916 2) (%closure-ref self$916 6) (%closure-ref self$916 9) (%closure-ref self$916 11) (%closure-ref self$916 24)))) (%closure-ref self$915 1) (%closure-ref self$915 2) (%closure-ref self$915 3) (%closure-ref self$915 4) (%closure-ref self$915 5) (%closure-ref self$915 6) (%closure-ref self$915 7) (%closure-ref self$915 8) (%closure-ref self$915 9) (%closure-ref self$915 11) (%closure-ref self$915 12) (%closure-ref self$915 13) (%closure-ref self$915 14) (%closure-ref self$915 15) (%closure-ref self$915 16) (%closure-ref self$915 17) (%closure-ref self$915 18) (%closure-ref self$915 19) (%closure-ref self$915 20) (%closure-ref self$915 21) (%closure-ref self$915 22) (%closure-ref self$915 23) (%closure-ref self$915 24) (%closure-ref self$915 25)) (set-cell! (%closure-ref self$915 10) r$415))) (%closure-ref self$906 1) (%closure-ref self$906 2) (%closure-ref self$906 3) (%closure-ref self$906 4) (%closure-ref self$906 5) (%closure-ref self$906 6) (%closure-ref self$906 7) (%closure-ref self$906 8) (%closure-ref self$906 9) (%closure-ref self$906 10) (%closure-ref self$906 11) (%closure-ref self$906 12) (%closure-ref self$906 14) (%closure-ref self$906 15) (%closure-ref self$906 16) (%closure-ref self$906 17) (%closure-ref self$906 18) (%closure-ref self$906 19) (%closure-ref self$906 20) (%closure-ref self$906 21) (%closure-ref self$906 22) (%closure-ref self$906 23) (%closure-ref self$906 24) (%closure-ref self$906 25) (%closure-ref self$906 26)) (%closure (lambda (self$907 k$416 lst$188) ((%closure (lambda (self$908 r$417) (if r$417 ((%closure (lambda (self$914) ((%closure-ref (%closure-ref self$914 1) 0) (%closure-ref self$914 1) (quote ()))) (%closure-ref self$908 1))) ((%closure (lambda (self$909) ((%closure (lambda (self$910 r$421) ((%closure-ref (cell-get (%closure-ref self$910 3)) 0) (cell-get (%closure-ref self$910 3)) (%closure (lambda (self$911 r$418) ((%closure (lambda (self$912 r$420) ((%closure-ref (cell-get (%closure-ref self$912 4)) 0) (cell-get (%closure-ref self$912 4)) (%closure (lambda (self$913 r$419) ((%closure-ref (cell-get (%closure-ref self$913 4)) 0) (cell-get (%closure-ref self$913 4)) (%closure-ref self$913 1) (%closure-ref self$913 3) r$419 (%closure-ref self$913 2))) (%closure-ref self$912 1) (%closure-ref self$912 2) (%closure-ref self$912 3) (%closure-ref self$912 5)) r$420)) (%closure-ref self$911 1) (%closure-ref self$911 2) r$418 (%closure-ref self$911 3) (%closure-ref self$911 4)) (cdr (%closure-ref self$911 2)))) (%closure-ref self$910 1) (%closure-ref self$910 2) (%closure-ref self$910 4) (%closure-ref self$910 5)) r$421)) (%closure-ref self$909 1) (%closure-ref self$909 2) (%closure-ref self$909 3) (%closure-ref self$909 4) (%closure-ref self$909 5)) (car (%closure-ref self$909 2)))) (%closure-ref self$908 1) (%closure-ref self$908 2) (%closure-ref self$908 3) (%closure-ref self$908 4) (%closure-ref self$908 5))))) k$416 lst$188 (%closure-ref self$907 1) (%closure-ref self$907 2) (%closure-ref self$907 3)) (null? lst$188))) (%closure-ref self$906 9) (%closure-ref self$906 10) (%closure-ref self$906 13)))) (%closure-ref self$905 1) (%closure-ref self$905 2) (%closure-ref self$905 3) (%closure-ref self$905 4) (%closure-ref self$905 5) (%closure-ref self$905 6) (%closure-ref self$905 7) (%closure-ref self$905 8) (%closure-ref self$905 9) (%closure-ref self$905 10) (%closure-ref self$905 11) (%closure-ref self$905 12) (%closure-ref self$905 13) (%closure-ref self$905 14) (%closure-ref self$905 15) (%closure-ref self$905 16) (%closure-ref self$905 17) (%closure-ref self$905 18) (%closure-ref self$905 19) (%closure-ref self$905 20) (%closure-ref self$905 21) (%closure-ref self$905 22) (%closure-ref self$905 23) (%closure-ref self$905 24) (%closure-ref self$905 25) (%closure-ref self$905 26)) (set-cell! (%closure-ref self$905 9) r$422))) (%closure-ref self$892 1) (%closure-ref self$892 2) (%closure-ref self$892 3) (%closure-ref self$892 4) (%closure-ref self$892 6) (%closure-ref self$892 7) (%closure-ref self$892 8) (%closure-ref self$892 9) (%closure-ref self$892 10) (%closure-ref self$892 11) (%closure-ref self$892 12) (%closure-ref self$892 13) (%closure-ref self$892 14) (%closure-ref self$892 15) (%closure-ref self$892 16) (%closure-ref self$892 17) (%closure-ref self$892 18) (%closure-ref self$892 19) (%closure-ref self$892 20) (%closure-ref self$892 21) (%closure-ref self$892 22) (%closure-ref self$892 23) (%closure-ref self$892 24) (%closure-ref self$892 25) (%closure-ref self$892 26) (%closure-ref self$892 27)) (%closure (lambda (self$893 k$423 term$189) ((%closure (lambda (self$894 r$432) ((%closure (lambda (self$895 r$424) ((%closure (lambda (self$896 r$425) (if r$425 ((%closure (lambda (self$898) ((%closure (lambda (self$899 r$429) ((%closure (lambda (self$900 r$431) ((%closure-ref (cell-get (%closure-ref self$900 4)) 0) (cell-get (%closure-ref self$900 4)) (%closure (lambda (self$901 r$430) ((%closure-ref (cell-get (%closure-ref self$901 5)) 0) (cell-get (%closure-ref self$901 5)) (%closure (lambda (self$902 r$426) ((%closure (lambda (self$903 r$428) ((%closure-ref (cell-get (%closure-ref self$903 1)) 0) (cell-get (%closure-ref self$903 1)) (%closure (lambda (self$904 r$427) ((%closure-ref (cell-get (%closure-ref self$904 3)) 0) (cell-get (%closure-ref self$904 3)) (%closure-ref self$904 1) (%closure-ref self$904 2) r$427)) (%closure-ref self$903 2) (%closure-ref self$903 3) (%closure-ref self$903 4)) r$428)) (%closure-ref self$902 1) (%closure-ref self$902 2) r$426 (%closure-ref self$902 3)) (car (%closure-ref self$902 4)))) (%closure-ref self$901 1) (%closure-ref self$901 2) (%closure-ref self$901 4) (%closure-ref self$901 6)) (%closure-ref self$901 3) r$430 (%closure-ref self$901 6))) (%closure-ref self$900 1) (%closure-ref self$900 2) (%closure-ref self$900 3) (%closure-ref self$900 5) (%closure-ref self$900 6) (%closure-ref self$900 7)) r$431)) (%closure-ref self$899 1) (%closure-ref self$899 2) r$429 (%closure-ref self$899 3) (%closure-ref self$899 4) (%closure-ref self$899 5) (%closure-ref self$899 6)) (cdr (%closure-ref self$899 6)))) (%closure-ref self$898 1) (%closure-ref self$898 2) (%closure-ref self$898 3) (%closure-ref self$898 4) (%closure-ref self$898 5) (%closure-ref self$898 6)) (car (%closure-ref self$898 6)))) (%closure-ref self$896 1) (%closure-ref self$896 2) (%closure-ref self$896 3) (%closure-ref self$896 4) (%closure-ref self$896 5) (%closure-ref self$896 6))) ((%closure (lambda (self$897) ((%closure-ref (%closure-ref self$897 1) 0) (%closure-ref self$897 1) (%closure-ref self$897 2))) (%closure-ref self$896 2) (%closure-ref self$896 6))))) (%closure-ref self$895 1) (%closure-ref self$895 2) (%closure-ref self$895 3) (%closure-ref self$895 4) (%closure-ref self$895 5) (%closure-ref self$895 6)) (pair? (%closure-ref self$895 6)))) (%closure-ref self$894 1) (%closure-ref self$894 2) (%closure-ref self$894 3) (%closure-ref self$894 5) (%closure-ref self$894 6) (%closure-ref self$894 7)) (set-cell! (%closure-ref self$894 4) r$432))) (%closure-ref self$893 1) k$423 (%closure-ref self$893 2) (%closure-ref self$893 3) (%closure-ref self$893 4) (%closure-ref self$893 5) term$189) (+ (cell-get (%closure-ref self$893 3)) 1))) (%closure-ref self$892 5) (%closure-ref self$892 11) (%closure-ref self$892 12) (%closure-ref self$892 13) (%closure-ref self$892 14)))) (%closure-ref self$891 1) (%closure-ref self$891 2) (%closure-ref self$891 3) (%closure-ref self$891 4) (%closure-ref self$891 5) (%closure-ref self$891 6) (%closure-ref self$891 7) (%closure-ref self$891 8) (%closure-ref self$891 9) (%closure-ref self$891 10) (%closure-ref self$891 11) (%closure-ref self$891 12) (%closure-ref self$891 13) (%closure-ref self$891 14) (%closure-ref self$891 15) (%closure-ref self$891 16) (%closure-ref self$891 17) (%closure-ref self$891 18) (%closure-ref self$891 19) (%closure-ref self$891 20) (%closure-ref self$891 21) (%closure-ref self$891 22) (%closure-ref self$891 23) (%closure-ref self$891 24) (%closure-ref self$891 25) (%closure-ref self$891 26) (%closure-ref self$891 27)) (set-cell! (%closure-ref self$891 14) r$433))) (%closure-ref self$884 1) (%closure-ref self$884 2) (%closure-ref self$884 3) (%closure-ref self$884 4) (%closure-ref self$884 5) (%closure-ref self$884 6) (%closure-ref self$884 7) (%closure-ref self$884 8) (%closure-ref self$884 9) (%closure-ref self$884 10) (%closure-ref self$884 11) (%closure-ref self$884 12) (%closure-ref self$884 13) (%closure-ref self$884 14) (%closure-ref self$884 15) (%closure-ref self$884 16) (%closure-ref self$884 17) (%closure-ref self$884 18) (%closure-ref self$884 19) (%closure-ref self$884 20) (%closure-ref self$884 21) (%closure-ref self$884 22) (%closure-ref self$884 23) (%closure-ref self$884 24) (%closure-ref self$884 25) (%closure-ref self$884 26) (%closure-ref self$884 27)) (%closure (lambda (self$885 k$434 x$192 y$191 original$190) ((%closure (lambda (self$887 k$436) ((%closure (lambda (self$888 r$439) ((%closure (lambda (self$889 r$437) (if r$437 ((%closure (lambda (self$890 r$438) ((%closure-ref (%closure-ref self$890 1) 0) (%closure-ref self$890 1) (eq? (%closure-ref self$890 2) r$438))) (%closure-ref self$889 1) (%closure-ref self$889 3)) (cdr (%closure-ref self$889 2))) ((%closure-ref (%closure-ref self$889 1) 0) (%closure-ref self$889 1) #f))) (%closure-ref self$888 1) (%closure-ref self$888 2) (%closure-ref self$888 4)) (eq? (%closure-ref self$888 3) r$439))) k$436 (%closure-ref self$887 1) (%closure-ref self$887 2) (%closure-ref self$887 3)) (car (%closure-ref self$887 1)))) original$190 x$192 y$191) (%closure (lambda (self$886 r$435) (if r$435 ((%closure-ref (%closure-ref self$886 1) 0) (%closure-ref self$886 1) (%closure-ref self$886 2)) ((%closure-ref (%closure-ref self$886 1) 0) (%closure-ref self$886 1) (cons (%closure-ref self$886 3) (%closure-ref self$886 4))))) k$434 original$190 x$192 y$191)))))) (%closure-ref self$883 1) (%closure-ref self$883 2) (%closure-ref self$883 3) (%closure-ref self$883 4) (%closure-ref self$883 5) (%closure-ref self$883 6) (%closure-ref self$883 7) (%closure-ref self$883 8) (%closure-ref self$883 9) (%closure-ref self$883 10) (%closure-ref self$883 11) (%closure-ref self$883 12) (%closure-ref self$883 13) (%closure-ref self$883 14) (%closure-ref self$883 15) (%closure-ref self$883 16) (%closure-ref self$883 17) (%closure-ref self$883 18) (%closure-ref self$883 19) (%closure-ref self$883 20) (%closure-ref self$883 21) (%closure-ref self$883 22) (%closure-ref self$883 23) (%closure-ref self$883 24) (%closure-ref self$883 25) (%closure-ref self$883 26) (%closure-ref self$883 27)) (set-cell! (%closure-ref self$883 12) 0))) (%closure-ref self$882 1) (%closure-ref self$882 2) (%closure-ref self$882 3) (%closure-ref self$882 4) (%closure-ref self$882 5) (%closure-ref self$882 6) (%closure-ref self$882 7) (%closure-ref self$882 8) (%closure-ref self$882 9) (%closure-ref self$882 10) (%closure-ref self$882 11) (%closure-ref self$882 12) (%closure-ref self$882 13) (%closure-ref self$882 14) (%closure-ref self$882 15) (%closure-ref self$882 16) (%closure-ref self$882 17) (%closure-ref self$882 18) (%closure-ref self$882 19) (%closure-ref self$882 20) (%closure-ref self$882 21) (%closure-ref self$882 22) (%closure-ref self$882 23) (%closure-ref self$882 24) (%closure-ref self$882 25) (%closure-ref self$882 26) (%closure-ref self$882 27)) (set-cell! (%closure-ref self$882 6) r$440))) (%closure-ref self$881 1) (%closure-ref self$881 2) (%closure-ref self$881 3) (%closure-ref self$881 4) (%closure-ref self$881 5) (%closure-ref self$881 6) (%closure-ref self$881 7) (%closure-ref self$881 8) (%closure-ref self$881 9) (%closure-ref self$881 10) (%closure-ref self$881 11) (%closure-ref self$881 12) (%closure-ref self$881 13) (%closure-ref self$881 14) (%closure-ref self$881 15) (%closure-ref self$881 16) (%closure-ref self$881 17) (%closure-ref self$881 18) (%closure-ref self$881 19) (%closure-ref self$881 20) (%closure-ref self$881 21) (%closure-ref self$881 22) (%closure-ref self$881 23) (%closure-ref self$881 24) (%closure-ref self$881 25) (%closure-ref self$881 26) (%closure-ref self$881 27)) (quote *))) (%closure-ref self$880 1) (%closure-ref self$880 2) (%closure-ref self$880 3) (%closure-ref self$880 4) (%closure-ref self$880 5) (%closure-ref self$880 6) (%closure-ref self$880 7) (%closure-ref self$880 8) (%closure-ref self$880 9) (%closure-ref self$880 10) (%closure-ref self$880 11) (%closure-ref self$880 12) (%closure-ref self$880 13) (%closure-ref self$880 14) (%closure-ref self$880 15) (%closure-ref self$880 16) (%closure-ref self$880 17) (%closure-ref self$880 19) (%closure-ref self$880 20) (%closure-ref self$880 21) (%closure-ref self$880 22) (%closure-ref self$880 23) (%closure-ref self$880 24) (%closure-ref self$880 25) (%closure-ref self$880 26) (%closure-ref self$880 27) (%closure-ref self$880 28)) (set-cell! (%closure-ref self$880 18) r$441))) (%closure-ref self$852 1) (%closure-ref self$852 2) (%closure-ref self$852 3) (%closure-ref self$852 4) (%closure-ref self$852 5) (%closure-ref self$852 6) (%closure-ref self$852 7) (%closure-ref self$852 8) (%closure-ref self$852 9) (%closure-ref self$852 10) (%closure-ref self$852 11) (%closure-ref self$852 12) (%closure-ref self$852 13) (%closure-ref self$852 14) (%closure-ref self$852 15) (%closure-ref self$852 16) (%closure-ref self$852 17) (%closure-ref self$852 18) (%closure-ref self$852 19) (%closure-ref self$852 20) (%closure-ref self$852 21) (%closure-ref self$852 22) (%closure-ref self$852 23) (%closure-ref self$852 24) (%closure-ref self$852 25) (%closure-ref self$852 26) (%closure-ref self$852 27) (%closure-ref self$852 28)) (%closure (lambda (self$853 k$442 x$195 true-lst$194 false-lst$193) ((%closure-ref (cell-get (%closure-ref self$853 4)) 0) (cell-get (%closure-ref self$853 4)) (%closure (lambda (self$854 r$443) (if r$443 ((%closure (lambda (self$879) ((%closure-ref (%closure-ref self$879 1) 0) (%closure-ref self$879 1) #t)) (%closure-ref self$854 4))) ((%closure-ref (cell-get (%closure-ref self$854 2)) 0) (cell-get (%closure-ref self$854 2)) (%closure (lambda (self$855 r$444) (if r$444 ((%closure (lambda (self$878) ((%closure-ref (%closure-ref self$878 1) 0) (%closure-ref self$878 1) #f)) (%closure-ref self$855 4))) ((%closure (lambda (self$856 r$445) (if r$445 ((%closure (lambda (self$858 r$460) ((%closure (lambda (self$859 r$446) (if r$446 ((%closure (lambda (self$861) ((%closure (lambda (self$862 r$459) ((%closure-ref (cell-get (%closure-ref self$862 6)) 0) (cell-get (%closure-ref self$862 6)) (%closure (lambda (self$863 r$447) (if r$447 ((%closure (lambda (self$876) ((%closure (lambda (self$877 r$448) ((%closure-ref (cell-get (%closure-ref self$877 3)) 0) (cell-get (%closure-ref self$877 3)) (%closure-ref self$877 2) r$448 (%closure-ref self$877 4) (%closure-ref self$877 1))) (%closure-ref self$876 1) (%closure-ref self$876 2) (%closure-ref self$876 3) (%closure-ref self$876 4)) (caddr (%closure-ref self$876 5)))) (%closure-ref self$863 1) (%closure-ref self$863 3) (%closure-ref self$863 4) (%closure-ref self$863 5) (%closure-ref self$863 6))) ((%closure (lambda (self$864 r$458) ((%closure-ref (cell-get (%closure-ref self$864 2)) 0) (cell-get (%closure-ref self$864 2)) (%closure (lambda (self$865 r$449) (if r$449 ((%closure (lambda (self$874) ((%closure (lambda (self$875 r$450) ((%closure-ref (cell-get (%closure-ref self$875 3)) 0) (cell-get (%closure-ref self$875 3)) (%closure-ref self$875 2) r$450 (%closure-ref self$875 4) (%closure-ref self$875 1))) (%closure-ref self$874 1) (%closure-ref self$874 2) (%closure-ref self$874 3) (%closure-ref self$874 4)) (cadddr (%closure-ref self$874 5)))) (%closure-ref self$865 1) (%closure-ref self$865 2) (%closure-ref self$865 3) (%closure-ref self$865 4) (%closure-ref self$865 5))) ((%closure (lambda (self$866) ((%closure (lambda (self$867 r$455) ((%closure (lambda (self$868 r$457) ((%closure (lambda (self$869 r$456) ((%closure-ref (cell-get (%closure-ref self$869 4)) 0) (cell-get (%closure-ref self$869 4)) (%closure (lambda (self$870 r$451) (if r$451 ((%closure (lambda (self$871 r$452) ((%closure (lambda (self$872 r$454) ((%closure (lambda (self$873 r$453) ((%closure-ref (cell-get (%closure-ref self$873 3)) 0) (cell-get (%closure-ref self$873 3)) (%closure-ref self$873 1) (%closure-ref self$873 2) (%closure-ref self$873 4) r$453)) (%closure-ref self$872 2) (%closure-ref self$872 3) (%closure-ref self$872 4) (%closure-ref self$872 5)) (cons r$454 (%closure-ref self$872 1)))) (%closure-ref self$871 1) (%closure-ref self$871 2) r$452 (%closure-ref self$871 3) (%closure-ref self$871 4)) (cadr (%closure-ref self$871 5)))) (%closure-ref self$870 1) (%closure-ref self$870 2) (%closure-ref self$870 3) (%closure-ref self$870 4) (%closure-ref self$870 5)) (cadddr (%closure-ref self$870 5))) ((%closure-ref (%closure-ref self$870 2) 0) (%closure-ref self$870 2) #f))) (%closure-ref self$869 1) (%closure-ref self$869 2) (%closure-ref self$869 4) (%closure-ref self$869 5) (%closure-ref self$869 6)) (%closure-ref self$869 3) r$456 (%closure-ref self$869 1))) (%closure-ref self$868 1) (%closure-ref self$868 2) (%closure-ref self$868 3) (%closure-ref self$868 4) (%closure-ref self$868 5) (%closure-ref self$868 6)) (cons r$457 (%closure-ref self$868 5)))) (%closure-ref self$867 1) (%closure-ref self$867 2) r$455 (%closure-ref self$867 3) (%closure-ref self$867 4) (%closure-ref self$867 5)) (cadr (%closure-ref self$867 5)))) (%closure-ref self$866 1) (%closure-ref self$866 2) (%closure-ref self$866 3) (%closure-ref self$866 4) (%closure-ref self$866 5)) (caddr (%closure-ref self$866 5)))) (%closure-ref self$865 1) (%closure-ref self$865 2) (%closure-ref self$865 3) (%closure-ref self$865 4) (%closure-ref self$865 5))))) (%closure-ref self$864 1) (%closure-ref self$864 3) (%closure-ref self$864 4) (%closure-ref self$864 5) (%closure-ref self$864 6)) r$458 (%closure-ref self$864 1))) (%closure-ref self$863 1) (%closure-ref self$863 2) (%closure-ref self$863 3) (%closure-ref self$863 4) (%closure-ref self$863 5) (%closure-ref self$863 6)) (cadr (%closure-ref self$863 6))))) (%closure-ref self$862 1) (%closure-ref self$862 2) (%closure-ref self$862 3) (%closure-ref self$862 4) (%closure-ref self$862 5) (%closure-ref self$862 7)) r$459 (%closure-ref self$862 5))) (%closure-ref self$861 1) (%closure-ref self$861 2) (%closure-ref self$861 3) (%closure-ref self$861 4) (%closure-ref self$861 5) (%closure-ref self$861 6) (%closure-ref self$861 7)) (cadr (%closure-ref self$861 7)))) (%closure-ref self$859 1) (%closure-ref self$859 2) (%closure-ref self$859 3) (%closure-ref self$859 4) (%closure-ref self$859 5) (%closure-ref self$859 6) (%closure-ref self$859 7))) ((%closure (lambda (self$860) ((%closure-ref (%closure-ref self$860 1) 0) (%closure-ref self$860 1) #f)) (%closure-ref self$859 3))))) (%closure-ref self$858 1) (%closure-ref self$858 2) (%closure-ref self$858 4) (%closure-ref self$858 5) (%closure-ref self$858 6) (%closure-ref self$858 7) (%closure-ref self$858 8)) (eq? r$460 (cell-get (%closure-ref self$858 3))))) (%closure-ref self$856 1) (%closure-ref self$856 2) (%closure-ref self$856 3) (%closure-ref self$856 4) (%closure-ref self$856 5) (%closure-ref self$856 6) (%closure-ref self$856 7) (%closure-ref self$856 8)) (car (%closure-ref self$856 8))) ((%closure (lambda (self$857) ((%closure-ref (%closure-ref self$857 1) 0) (%closure-ref self$857 1) #f)) (%closure-ref self$856 4))))) (%closure-ref self$855 1) (%closure-ref self$855 2) (%closure-ref self$855 3) (%closure-ref self$855 4) (%closure-ref self$855 5) (%closure-ref self$855 6) (%closure-ref self$855 7) (%closure-ref self$855 8)) (pair? (%closure-ref self$855 8))))) (%closure-ref self$854 1) (%closure-ref self$854 2) (%closure-ref self$854 3) (%closure-ref self$854 4) (%closure-ref self$854 5) (%closure-ref self$854 6) (%closure-ref self$854 7) (%closure-ref self$854 8)) (%closure-ref self$854 8) (%closure-ref self$854 1)))) false-lst$193 (%closure-ref self$853 1) (%closure-ref self$853 2) k$442 (%closure-ref self$853 3) true-lst$194 (%closure-ref self$853 4) x$195) x$195 true-lst$194)) (%closure-ref self$852 4) (%closure-ref self$852 6) (%closure-ref self$852 18) (%closure-ref self$852 27)))) (%closure-ref self$851 1) (%closure-ref self$851 2) (%closure-ref self$851 3) (%closure-ref self$851 4) (%closure-ref self$851 5) (%closure-ref self$851 6) (%closure-ref self$851 7) (%closure-ref self$851 8) (%closure-ref self$851 9) (%closure-ref self$851 10) (%closure-ref self$851 11) (%closure-ref self$851 12) (%closure-ref self$851 13) (%closure-ref self$851 14) (%closure-ref self$851 15) (%closure-ref self$851 16) (%closure-ref self$851 17) (%closure-ref self$851 18) (%closure-ref self$851 20) (%closure-ref self$851 21) (%closure-ref self$851 22) (%closure-ref self$851 23) (%closure-ref self$851 24) (%closure-ref self$851 25) (%closure-ref self$851 26) (%closure-ref self$851 27) (%closure-ref self$851 28) (%closure-ref self$851 29)) (set-cell! (%closure-ref self$851 19) r$461))) (%closure-ref self$846 1) (%closure-ref self$846 2) (%closure-ref self$846 3) (%closure-ref self$846 4) (%closure-ref self$846 5) (%closure-ref self$846 6) (%closure-ref self$846 7) (%closure-ref self$846 8) (%closure-ref self$846 9) (%closure-ref self$846 10) (%closure-ref self$846 11) (%closure-ref self$846 12) (%closure-ref self$846 13) (%closure-ref self$846 14) (%closure-ref self$846 15) (%closure-ref self$846 16) (%closure-ref self$846 17) (%closure-ref self$846 18) (%closure-ref self$846 19) (%closure-ref self$846 20) (%closure-ref self$846 21) (%closure-ref self$846 22) (%closure-ref self$846 23) (%closure-ref self$846 24) (%closure-ref self$846 25) (%closure-ref self$846 26) (%closure-ref self$846 27) (%closure-ref self$846 28) (%closure-ref self$846 29)) (%closure (lambda (self$847 k$462 x$196) ((%closure-ref (cell-get (%closure-ref self$847 1)) 0) (cell-get (%closure-ref self$847 1)) (%closure (lambda (self$848 r$463) ((%closure (lambda (self$849 r$464) ((%closure (lambda (self$850 r$465) ((%closure-ref (cell-get (%closure-ref self$850 4)) 0) (cell-get (%closure-ref self$850 4)) (%closure-ref self$850 1) (%closure-ref self$850 2) (%closure-ref self$850 3) r$465)) (%closure-ref self$849 1) (%closure-ref self$849 2) r$464 (%closure-ref self$849 3)) (quote ()))) (%closure-ref self$848 1) r$463 (%closure-ref self$848 2)) (quote ()))) k$462 (%closure-ref self$847 2)) x$196)) (%closure-ref self$846 10) (%closure-ref self$846 18)))) (%closure-ref self$845 1) (%closure-ref self$845 2) (%closure-ref self$845 4) (%closure-ref self$845 5) (%closure-ref self$845 6) (%closure-ref self$845 7) (%closure-ref self$845 8) (%closure-ref self$845 9) (%closure-ref self$845 10) (%closure-ref self$845 11) (%closure-ref self$845 12) (%closure-ref self$845 13) (%closure-ref self$845 14) (%closure-ref self$845 15) (%closure-ref self$845 16) (%closure-ref self$845 17) (%closure-ref self$845 18) (%closure-ref self$845 19) (%closure-ref self$845 20) (%closure-ref self$845 21) (%closure-ref self$845 22) (%closure-ref self$845 23) (%closure-ref self$845 24) (%closure-ref self$845 25) (%closure-ref self$845 26) (%closure-ref self$845 27) (%closure-ref self$845 28) (%closure-ref self$845 29) (%closure-ref self$845 30)) (set-cell! (%closure-ref self$845 3) r$466))) (%closure-ref self$836 1) (%closure-ref self$836 2) (%closure-ref self$836 3) (%closure-ref self$836 4) (%closure-ref self$836 5) (%closure-ref self$836 6) (%closure-ref self$836 7) (%closure-ref self$836 8) (%closure-ref self$836 9) (%closure-ref self$836 10) (%closure-ref self$836 11) (%closure-ref self$836 12) (%closure-ref self$836 13) (%closure-ref self$836 14) (%closure-ref self$836 15) (%closure-ref self$836 16) (%closure-ref self$836 17) (%closure-ref self$836 18) (%closure-ref self$836 19) (%closure-ref self$836 20) (%closure-ref self$836 21) (%closure-ref self$836 22) (%closure-ref self$836 23) (%closure-ref self$836 24) (%closure-ref self$836 25) (%closure-ref self$836 26) (%closure-ref self$836 27) (%closure-ref self$836 28) (%closure-ref self$836 29) (%closure-ref self$836 30)) (%closure (lambda (self$837 k$467 alist$198 lst$197) ((%closure (lambda (self$838 r$468) (if r$468 ((%closure (lambda (self$844) ((%closure-ref (%closure-ref self$844 1) 0) (%closure-ref self$844 1) (quote ()))) (%closure-ref self$838 4))) ((%closure (lambda (self$839) ((%closure (lambda (self$840 r$472) ((%closure-ref (cell-get (%closure-ref self$840 2)) 0) (cell-get (%closure-ref self$840 2)) (%closure (lambda (self$841 r$469) ((%closure (lambda (self$842 r$471) ((%closure-ref (cell-get (%closure-ref self$842 2)) 0) (cell-get (%closure-ref self$842 2)) (%closure (lambda (self$843 r$470) ((%closure-ref (%closure-ref self$843 1) 0) (%closure-ref self$843 1) (cons (%closure-ref self$843 2) r$470))) (%closure-ref self$842 3) (%closure-ref self$842 4)) (%closure-ref self$842 1) r$471)) (%closure-ref self$841 1) (%closure-ref self$841 2) (%closure-ref self$841 3) r$469) (cdr (%closure-ref self$841 4)))) (%closure-ref self$840 1) (%closure-ref self$840 3) (%closure-ref self$840 4) (%closure-ref self$840 5)) (%closure-ref self$840 1) r$472)) (%closure-ref self$839 1) (%closure-ref self$839 2) (%closure-ref self$839 3) (%closure-ref self$839 4) (%closure-ref self$839 5)) (car (%closure-ref self$839 5)))) (%closure-ref self$838 1) (%closure-ref self$838 2) (%closure-ref self$838 3) (%closure-ref self$838 4) (%closure-ref self$838 5))))) alist$198 (%closure-ref self$837 1) (%closure-ref self$837 2) k$467 lst$197) (null? lst$197))) (%closure-ref self$836 2) (%closure-ref self$836 3)))) (%closure-ref self$835 1) (%closure-ref self$835 2) (%closure-ref self$835 3) (%closure-ref self$835 4) (%closure-ref self$835 5) (%closure-ref self$835 6) (%closure-ref self$835 7) (%closure-ref self$835 8) (%closure-ref self$835 9) (%closure-ref self$835 10) (%closure-ref self$835 11) (%closure-ref self$835 12) (%closure-ref self$835 13) (%closure-ref self$835 14) (%closure-ref self$835 15) (%closure-ref self$835 16) (%closure-ref self$835 17) (%closure-ref self$835 18) (%closure-ref self$835 19) (%closure-ref self$835 20) (%closure-ref self$835 21) (%closure-ref self$835 22) (%closure-ref self$835 23) (%closure-ref self$835 24) (%closure-ref self$835 25) (%closure-ref self$835 26) (%closure-ref self$835 27) (%closure-ref self$835 28) (%closure-ref self$835 29) (%closure-ref self$835 30)) (set-cell! (%closure-ref self$835 2) r$473))) (%closure-ref self$826 1) (%closure-ref self$826 2) (%closure-ref self$826 3) (%closure-ref self$826 4) (%closure-ref self$826 5) (%closure-ref self$826 6) (%closure-ref self$826 7) (%closure-ref self$826 8) (%closure-ref self$826 9) (%closure-ref self$826 10) (%closure-ref self$826 11) (%closure-ref self$826 12) (%closure-ref self$826 13) (%closure-ref self$826 14) (%closure-ref self$826 15) (%closure-ref self$826 16) (%closure-ref self$826 17) (%closure-ref self$826 18) (%closure-ref self$826 19) (%closure-ref self$826 20) (%closure-ref self$826 21) (%closure-ref self$826 22) (%closure-ref self$826 23) (%closure-ref self$826 24) (%closure-ref self$826 25) (%closure-ref self$826 26) (%closure-ref self$826 27) (%closure-ref self$826 28) (%closure-ref self$826 29) (%closure-ref self$826 30)) (%closure (lambda (self$827 k$474 alist$200 term$199) ((%closure (lambda (self$828 r$475) (if r$475 ((%closure (lambda (self$831) ((%closure (lambda (self$832 r$476) ((%closure (lambda (self$833 r$478) ((%closure-ref (cell-get (%closure-ref self$833 2)) 0) (cell-get (%closure-ref self$833 2)) (%closure (lambda (self$834 r$477) ((%closure-ref (%closure-ref self$834 1) 0) (%closure-ref self$834 1) (cons (%closure-ref self$834 2) r$477))) (%closure-ref self$833 3) (%closure-ref self$833 4)) (%closure-ref self$833 1) r$478)) (%closure-ref self$832 1) (%closure-ref self$832 2) (%closure-ref self$832 3) r$476) (cdr (%closure-ref self$832 4)))) (%closure-ref self$831 1) (%closure-ref self$831 2) (%closure-ref self$831 3) (%closure-ref self$831 4)) (car (%closure-ref self$831 4)))) (%closure-ref self$828 1) (%closure-ref self$828 2) (%closure-ref self$828 3) (%closure-ref self$828 4))) ((%closure (lambda (self$829) ((%closure (lambda (self$830 temp-temp$201) (if temp-temp$201 ((%closure-ref (%closure-ref self$830 1) 0) (%closure-ref self$830 1) (cdr temp-temp$201)) ((%closure-ref (%closure-ref self$830 1) 0) (%closure-ref self$830 1) (%closure-ref self$830 2)))) (%closure-ref self$829 2) (%closure-ref self$829 3)) (assq (%closure-ref self$829 3) (%closure-ref self$829 1)))) (%closure-ref self$828 1) (%closure-ref self$828 3) (%closure-ref self$828 4))))) alist$200 (%closure-ref self$827 1) k$474 term$199) (pair? term$199))) (%closure-ref self$826 3)))) (%closure-ref self$825 1) (%closure-ref self$825 2) (%closure-ref self$825 3) (%closure-ref self$825 4) (%closure-ref self$825 5) (%closure-ref self$825 6) (%closure-ref self$825 7) (%closure-ref self$825 8) (%closure-ref self$825 9) (%closure-ref self$825 10) (%closure-ref self$825 11) (%closure-ref self$825 12) (%closure-ref self$825 13) (%closure-ref self$825 14) (%closure-ref self$825 15) (%closure-ref self$825 16) (%closure-ref self$825 17) (%closure-ref self$825 18) (%closure-ref self$825 19) (%closure-ref self$825 20) (%closure-ref self$825 21) (%closure-ref self$825 22) (%closure-ref self$825 23) (%closure-ref self$825 24) (%closure-ref self$825 25) (%closure-ref self$825 26) (%closure-ref self$825 28) (%closure-ref self$825 29) (%closure-ref self$825 30) (%closure-ref self$825 31)) (set-cell! (%closure-ref self$825 27) r$480))) (%closure-ref self$814 1) (%closure-ref self$814 2) (%closure-ref self$814 3) (%closure-ref self$814 4) (%closure-ref self$814 5) (%closure-ref self$814 6) (%closure-ref self$814 7) (%closure-ref self$814 8) (%closure-ref self$814 9) (%closure-ref self$814 10) (%closure-ref self$814 11) (%closure-ref self$814 12) (%closure-ref self$814 13) (%closure-ref self$814 14) (%closure-ref self$814 15) (%closure-ref self$814 16) (%closure-ref self$814 17) (%closure-ref self$814 18) (%closure-ref self$814 19) (%closure-ref self$814 20) (%closure-ref self$814 21) (%closure-ref self$814 22) (%closure-ref self$814 23) (%closure-ref self$814 24) (%closure-ref self$814 25) (%closure-ref self$814 26) (%closure-ref self$814 27) (%closure-ref self$814 28) (%closure-ref self$814 29) (%closure-ref self$814 30) (%closure-ref self$814 31)) (%closure (lambda (self$815 k$481 alist$202) ((%closure (lambda (self$816 r$482) (if r$482 ((%closure (lambda (self$824) ((%closure-ref (%closure-ref self$824 1) 0) (%closure-ref self$824 1) (quote ()))) (%closure-ref self$816 2))) ((%closure (lambda (self$817) ((%closure (lambda (self$818 r$486) ((%closure (lambda (self$819 r$488) ((%closure-ref (cell-get (%closure-ref self$819 5)) 0) (cell-get (%closure-ref self$819 5)) (%closure (lambda (self$820 r$487) ((%closure (lambda (self$821 r$483) ((%closure (lambda (self$822 r$485) ((%closure-ref (cell-get (%closure-ref self$822 3)) 0) (cell-get (%closure-ref self$822 3)) (%closure (lambda (self$823 r$484) ((%closure-ref (%closure-ref self$823 1) 0) (%closure-ref self$823 1) (cons (%closure-ref self$823 2) r$484))) (%closure-ref self$822 1) (%closure-ref self$822 2)) r$485)) (%closure-ref self$821 2) r$483 (%closure-ref self$821 3)) (cdr (%closure-ref self$821 1)))) (%closure-ref self$820 1) (%closure-ref self$820 2) (%closure-ref self$820 4)) (cons (%closure-ref self$820 3) r$487))) (%closure-ref self$819 1) (%closure-ref self$819 2) (%closure-ref self$819 3) (%closure-ref self$819 4)) r$488)) (%closure-ref self$818 1) (%closure-ref self$818 2) r$486 (%closure-ref self$818 3) (%closure-ref self$818 4)) (cdar (%closure-ref self$818 1)))) (%closure-ref self$817 1) (%closure-ref self$817 2) (%closure-ref self$817 3) (%closure-ref self$817 4)) (caar (%closure-ref self$817 1)))) (%closure-ref self$816 1) (%closure-ref self$816 2) (%closure-ref self$816 3) (%closure-ref self$816 4))))) alist$202 k$481 (%closure-ref self$815 1) (%closure-ref self$815 2)) (null? alist$202))) (%closure-ref self$814 27) (%closure-ref self$814 28)))) (%closure-ref self$813 1) (%closure-ref self$813 2) (%closure-ref self$813 3) (%closure-ref self$813 4) (%closure-ref self$813 5) (%closure-ref self$813 6) (%closure-ref self$813 7) (%closure-ref self$813 8) (%closure-ref self$813 9) (%closure-ref self$813 10) (%closure-ref self$813 11) (%closure-ref self$813 12) (%closure-ref self$813 13) (%closure-ref self$813 14) (%closure-ref self$813 15) (%closure-ref self$813 16) (%closure-ref self$813 17) (%closure-ref self$813 18) (%closure-ref self$813 19) (%closure-ref self$813 20) (%closure-ref self$813 21) (%closure-ref self$813 22) (%closure-ref self$813 23) (%closure-ref self$813 24) (%closure-ref self$813 25) (%closure-ref self$813 26) (%closure-ref self$813 27) (%closure-ref self$813 28) (%closure-ref self$813 29) (%closure-ref self$813 30) (%closure-ref self$813 31)) (set-cell! (%closure-ref self$813 24) r$489))) (%closure-ref self$796 1) (%closure-ref self$796 2) (%closure-ref self$796 3) (%closure-ref self$796 4) (%closure-ref self$796 5) (%closure-ref self$796 6) (%closure-ref self$796 7) (%closure-ref self$796 8) (%closure-ref self$796 9) (%closure-ref self$796 10) (%closure-ref self$796 11) (%closure-ref self$796 12) (%closure-ref self$796 13) (%closure-ref self$796 14) (%closure-ref self$796 15) (%closure-ref self$796 16) (%closure-ref self$796 17) (%closure-ref self$796 18) (%closure-ref self$796 19) (%closure-ref self$796 20) (%closure-ref self$796 21) (%closure-ref self$796 22) (%closure-ref self$796 23) (%closure-ref self$796 24) (%closure-ref self$796 25) (%closure-ref self$796 26) (%closure-ref self$796 27) (%closure-ref self$796 28) (%closure-ref self$796 29) (%closure-ref self$796 30) (%closure-ref self$796 31)) (%closure (lambda (self$797 k$490 alist$205 term$204 n$203) ((%closure-ref (cell-get (%closure-ref self$797 3)) 0) (cell-get (%closure-ref self$797 3)) (%closure (lambda (self$798 r$492) ((%closure (lambda (self$799 term$207 n$206) ((%closure (lambda (self$800 lp$208) ((%closure (lambda (self$801 lp$208) ((%closure (lambda (self$808 r$496) ((%closure (lambda (self$809 r$495) ((%closure-ref (cell-get (%closure-ref self$809 3)) 0) (cell-get (%closure-ref self$809 3)) (%closure (lambda (self$810 r$494) ((%closure-ref (cell-get (%closure-ref self$810 5)) 0) (cell-get (%closure-ref self$810 5)) (%closure (lambda (self$811 r$493) ((%closure-ref (cell-get (%closure-ref self$811 1)) 0) (cell-get (%closure-ref self$811 1)) (%closure (lambda (self$812 term$211) ((%closure-ref (cell-get (%closure-ref self$812 2)) 0) (cell-get (%closure-ref self$812 2)) (%closure-ref self$812 1) term$211)) (%closure-ref self$811 2) (%closure-ref self$811 4)) (%closure-ref self$811 3) r$493)) (%closure-ref self$810 1) (%closure-ref self$810 2) (%closure-ref self$810 3) (%closure-ref self$810 4)) r$494)) (%closure-ref self$809 1) (%closure-ref self$809 2) (%closure-ref self$809 5) (%closure-ref self$809 6) (%closure-ref self$809 8)) (%closure-ref self$809 7) (%closure-ref self$809 4))) (%closure-ref self$808 1) (%closure-ref self$808 2) (%closure-ref self$808 3) (%closure-ref self$808 4) (%closure-ref self$808 5) (%closure-ref self$808 6) (%closure-ref self$808 7) (%closure-ref self$808 8)) (set-cell! (%closure-ref self$808 3) r$496))) (%closure-ref self$801 1) (%closure-ref self$801 2) lp$208 (%closure-ref self$801 3) (%closure-ref self$801 4) (%closure-ref self$801 5) (%closure-ref self$801 6) (%closure-ref self$801 7)) (%closure (lambda (self$802 k$497 term$210 n$209) ((%closure-ref zero? 0) zero? (%closure (lambda (self$803 r$498) (if r$498 ((%closure-ref (%closure-ref self$803 1) 0) (%closure-ref self$803 1) (%closure-ref self$803 4)) ((%closure (lambda (self$804 r$501) ((%closure (lambda (self$805 r$502) ((%closure-ref list 0) list (%closure (lambda (self$806 r$499) ((%closure (lambda (self$807 r$500) ((%closure-ref (cell-get (%closure-ref self$807 2)) 0) (cell-get (%closure-ref self$807 2)) (%closure-ref self$807 1) (%closure-ref self$807 3) r$500)) (%closure-ref self$806 1) (%closure-ref self$806 2) r$499) (- (%closure-ref self$806 3) 1))) (%closure-ref self$805 1) (%closure-ref self$805 2) (%closure-ref self$805 3)) (%closure-ref self$805 4) (%closure-ref self$805 5) r$502)) (%closure-ref self$804 1) (%closure-ref self$804 2) (%closure-ref self$804 3) r$501 (%closure-ref self$804 4)) (quote (f)))) (%closure-ref self$803 1) (%closure-ref self$803 2) (%closure-ref self$803 3) (%closure-ref self$803 4)) (quote or)))) k$497 (%closure-ref self$802 1) n$209 term$210) n$209)) lp$208))) (%closure-ref self$800 1) (%closure-ref self$800 2) (%closure-ref self$800 3) (%closure-ref self$800 4) (%closure-ref self$800 5) (%closure-ref self$800 6) (%closure-ref self$800 7)) (cell lp$208))) (%closure-ref self$799 1) (%closure-ref self$799 2) n$206 (%closure-ref self$799 3) (%closure-ref self$799 4) term$207 (%closure-ref self$799 5)) #f)) (%closure-ref self$798 1) (%closure-ref self$798 2) r$492 (%closure-ref self$798 4) (%closure-ref self$798 6)) (%closure-ref self$798 5) (%closure-ref self$798 3))) (%closure-ref self$797 1) k$490 n$203 (%closure-ref self$797 2) term$204 (%closure-ref self$797 4)) alist$205)) (%closure-ref self$796 2) (%closure-ref self$796 20) (%closure-ref self$796 27) (%closure-ref self$796 28)))) (%closure-ref self$795 1) (%closure-ref self$795 2) (%closure-ref self$795 3) (%closure-ref self$795 4) (%closure-ref self$795 5) (%closure-ref self$795 6) (%closure-ref self$795 7) (%closure-ref self$795 8) (%closure-ref self$795 9) (%closure-ref self$795 10) (%closure-ref self$795 11) (%closure-ref self$795 12) (%closure-ref self$795 13) (%closure-ref self$795 14) (%closure-ref self$795 15) (%closure-ref self$795 16) (%closure-ref self$795 17) (%closure-ref self$795 18) (%closure-ref self$795 19) (%closure-ref self$795 20) (%closure-ref self$795 21) (%closure-ref self$795 22) (%closure-ref self$795 23) (%closure-ref self$795 24) (%closure-ref self$795 25) (%closure-ref self$795 26) (%closure-ref self$795 27) (%closure-ref self$795 28) (%closure-ref self$795 29) (%closure-ref self$795 30) (%closure-ref self$795 31)) (set-cell! (%closure-ref self$795 18) r$503))) (%closure-ref self$793 1) (%closure-ref self$793 2) (%closure-ref self$793 3) (%closure-ref self$793 4) (%closure-ref self$793 5) (%closure-ref self$793 6) (%closure-ref self$793 7) (%closure-ref self$793 8) (%closure-ref self$793 9) (%closure-ref self$793 10) (%closure-ref self$793 11) (%closure-ref self$793 12) (%closure-ref self$793 13) (%closure-ref self$793 14) (%closure-ref self$793 15) (%closure-ref self$793 16) (%closure-ref self$793 17) (%closure-ref self$793 18) (%closure-ref self$793 19) (%closure-ref self$793 20) (%closure-ref self$793 21) (%closure-ref self$793 22) (%closure-ref self$793 23) (%closure-ref self$793 24) (%closure-ref self$793 25) (%closure-ref self$793 26) (%closure-ref self$793 27) (%closure-ref self$793 28) (%closure-ref self$793 29) (%closure-ref self$793 30) (%closure-ref self$793 31)) (%closure (lambda (self$794 k$504 r1$213 r2$212) ((%closure-ref k$504 0) k$504 (eq? r1$213 r2$212)))))) (%closure-ref self$792 1) (%closure-ref self$792 2) (%closure-ref self$792 3) (%closure-ref self$792 4) (%closure-ref self$792 5) (%closure-ref self$792 6) (%closure-ref self$792 8) (%closure-ref self$792 9) (%closure-ref self$792 10) (%closure-ref self$792 11) (%closure-ref self$792 12) (%closure-ref self$792 13) (%closure-ref self$792 14) (%closure-ref self$792 15) (%closure-ref self$792 16) (%closure-ref self$792 17) (%closure-ref self$792 18) (%closure-ref self$792 19) (%closure-ref self$792 20) (%closure-ref self$792 21) (%closure-ref self$792 22) (%closure-ref self$792 23) (%closure-ref self$792 24) (%closure-ref self$792 25) (%closure-ref self$792 26) (%closure-ref self$792 27) (%closure-ref self$792 28) (%closure-ref self$792 29) (%closure-ref self$792 30) (%closure-ref self$792 31) (%closure-ref self$792 32)) (set-cell! (%closure-ref self$792 7) r$505))) (%closure-ref self$790 1) (%closure-ref self$790 2) (%closure-ref self$790 3) (%closure-ref self$790 4) (%closure-ref self$790 5) (%closure-ref self$790 6) (%closure-ref self$790 7) (%closure-ref self$790 8) (%closure-ref self$790 9) (%closure-ref self$790 10) (%closure-ref self$790 11) (%closure-ref self$790 12) (%closure-ref self$790 13) (%closure-ref self$790 14) (%closure-ref self$790 15) (%closure-ref self$790 16) (%closure-ref self$790 17) (%closure-ref self$790 18) (%closure-ref self$790 19) (%closure-ref self$790 20) (%closure-ref self$790 21) (%closure-ref self$790 22) (%closure-ref self$790 23) (%closure-ref self$790 24) (%closure-ref self$790 25) (%closure-ref self$790 26) (%closure-ref self$790 27) (%closure-ref self$790 28) (%closure-ref self$790 29) (%closure-ref self$790 30) (%closure-ref self$790 31) (%closure-ref self$790 32)) (%closure (lambda (self$791 k$506 symbol-record$214) ((%closure-ref k$506 0) k$506 (vector-ref symbol-record$214 0)))))) (%closure-ref self$789 1) (%closure-ref self$789 2) (%closure-ref self$789 3) (%closure-ref self$789 4) (%closure-ref self$789 5) (%closure-ref self$789 6) (%closure-ref self$789 7) (%closure-ref self$789 8) (%closure-ref self$789 9) (%closure-ref self$789 10) (%closure-ref self$789 11) (%closure-ref self$789 12) (%closure-ref self$789 13) (%closure-ref self$789 14) (%closure-ref self$789 15) (%closure-ref self$789 16) (%closure-ref self$789 17) (%closure-ref self$789 18) (%closure-ref self$789 19) (%closure-ref self$789 20) (%closure-ref self$789 21) (%closure-ref self$789 22) (%closure-ref self$789 23) (%closure-ref self$789 24) (%closure-ref self$789 25) (%closure-ref self$789 26) (%closure-ref self$789 27) (%closure-ref self$789 28) (%closure-ref self$789 29) (%closure-ref self$789 30) (%closure-ref self$789 31) (%closure-ref self$789 32)) (set-cell! (%closure-ref self$789 6) r$507))) (%closure-ref self$787 1) (%closure-ref self$787 2) (%closure-ref self$787 3) (%closure-ref self$787 4) (%closure-ref self$787 5) (%closure-ref self$787 6) (%closure-ref self$787 7) (%closure-ref self$787 8) (%closure-ref self$787 9) (%closure-ref self$787 10) (%closure-ref self$787 11) (%closure-ref self$787 12) (%closure-ref self$787 13) (%closure-ref self$787 14) (%closure-ref self$787 15) (%closure-ref self$787 16) (%closure-ref self$787 17) (%closure-ref self$787 18) (%closure-ref self$787 19) (%closure-ref self$787 20) (%closure-ref self$787 21) (%closure-ref self$787 22) (%closure-ref self$787 23) (%closure-ref self$787 24) (%closure-ref self$787 25) (%closure-ref self$787 26) (%closure-ref self$787 27) (%closure-ref self$787 28) (%closure-ref self$787 29) (%closure-ref self$787 30) (%closure-ref self$787 31) (%closure-ref self$787 32)) (%closure (lambda (self$788 k$508 symbol-record$215) ((%closure-ref k$508 0) k$508 (vector-ref symbol-record$215 1)))))) (%closure-ref self$786 1) (%closure-ref self$786 2) (%closure-ref self$786 3) (%closure-ref self$786 4) (%closure-ref self$786 5) (%closure-ref self$786 6) (%closure-ref self$786 7) (%closure-ref self$786 8) (%closure-ref self$786 9) (%closure-ref self$786 10) (%closure-ref self$786 11) (%closure-ref self$786 13) (%closure-ref self$786 14) (%closure-ref self$786 15) (%closure-ref self$786 16) (%closure-ref self$786 17) (%closure-ref self$786 18) (%closure-ref self$786 19) (%closure-ref self$786 20) (%closure-ref self$786 21) (%closure-ref self$786 22) (%closure-ref self$786 23) (%closure-ref self$786 24) (%closure-ref self$786 25) (%closure-ref self$786 26) (%closure-ref self$786 27) (%closure-ref self$786 28) (%closure-ref self$786 29) (%closure-ref self$786 30) (%closure-ref self$786 31) (%closure-ref self$786 32) (%closure-ref self$786 33)) (set-cell! (%closure-ref self$786 12) r$509))) (%closure-ref self$784 1) (%closure-ref self$784 2) (%closure-ref self$784 3) (%closure-ref self$784 4) (%closure-ref self$784 5) (%closure-ref self$784 6) (%closure-ref self$784 7) (%closure-ref self$784 8) (%closure-ref self$784 9) (%closure-ref self$784 10) (%closure-ref self$784 11) (%closure-ref self$784 12) (%closure-ref self$784 13) (%closure-ref self$784 14) (%closure-ref self$784 15) (%closure-ref self$784 16) (%closure-ref self$784 17) (%closure-ref self$784 18) (%closure-ref self$784 19) (%closure-ref self$784 20) (%closure-ref self$784 21) (%closure-ref self$784 22) (%closure-ref self$784 23) (%closure-ref self$784 24) (%closure-ref self$784 25) (%closure-ref self$784 26) (%closure-ref self$784 27) (%closure-ref self$784 28) (%closure-ref self$784 29) (%closure-ref self$784 30) (%closure-ref self$784 31) (%closure-ref self$784 32) (%closure-ref self$784 33)) (%closure (lambda (self$785 k$510 symbol-record$217 lemmas$216) ((%closure-ref k$510 0) k$510 (vector-set! symbol-record$217 1 lemmas$216)))))) (%closure-ref self$783 1) (%closure-ref self$783 2) (%closure-ref self$783 3) (%closure-ref self$783 4) (%closure-ref self$783 5) (%closure-ref self$783 6) (%closure-ref self$783 7) (%closure-ref self$783 8) (%closure-ref self$783 10) (%closure-ref self$783 11) (%closure-ref self$783 12) (%closure-ref self$783 13) (%closure-ref self$783 14) (%closure-ref self$783 15) (%closure-ref self$783 16) (%closure-ref self$783 17) (%closure-ref self$783 18) (%closure-ref self$783 19) (%closure-ref self$783 20) (%closure-ref self$783 21) (%closure-ref self$783 22) (%closure-ref self$783 23) (%closure-ref self$783 24) (%closure-ref self$783 25) (%closure-ref self$783 26) (%closure-ref self$783 27) (%closure-ref self$783 28) (%closure-ref self$783 29) (%closure-ref self$783 30) (%closure-ref self$783 31) (%closure-ref self$783 32) (%closure-ref self$783 33) (%closure-ref self$783 34)) (set-cell! (%closure-ref self$783 9) r$511))) (%closure-ref self$780 1) (%closure-ref self$780 2) (%closure-ref self$780 3) (%closure-ref self$780 4) (%closure-ref self$780 5) (%closure-ref self$780 6) (%closure-ref self$780 7) (%closure-ref self$780 8) (%closure-ref self$780 9) (%closure-ref self$780 10) (%closure-ref self$780 11) (%closure-ref self$780 12) (%closure-ref self$780 13) (%closure-ref self$780 14) (%closure-ref self$780 15) (%closure-ref self$780 16) (%closure-ref self$780 17) (%closure-ref self$780 18) (%closure-ref self$780 19) (%closure-ref self$780 20) (%closure-ref self$780 21) (%closure-ref self$780 22) (%closure-ref self$780 23) (%closure-ref self$780 24) (%closure-ref self$780 25) (%closure-ref self$780 26) (%closure-ref self$780 27) (%closure-ref self$780 28) (%closure-ref self$780 29) (%closure-ref self$780 30) (%closure-ref self$780 31) (%closure-ref self$780 32) (%closure-ref self$780 33) (%closure-ref self$780 34)) (%closure (lambda (self$781 k$512 sym$218) ((%closure (lambda (self$782 r$513) ((%closure-ref vector 0) vector (%closure-ref self$782 1) (%closure-ref self$782 2) r$513)) k$512 sym$218) (quote ())))))) (%closure-ref self$779 1) (%closure-ref self$779 2) (%closure-ref self$779 3) (%closure-ref self$779 4) (%closure-ref self$779 5) (%closure-ref self$779 6) (%closure-ref self$779 7) (%closure-ref self$779 8) (%closure-ref self$779 9) (%closure-ref self$779 10) (%closure-ref self$779 11) (%closure-ref self$779 12) (%closure-ref self$779 13) (%closure-ref self$779 14) (%closure-ref self$779 15) (%closure-ref self$779 16) (%closure-ref self$779 17) (%closure-ref self$779 18) (%closure-ref self$779 19) (%closure-ref self$779 20) (%closure-ref self$779 21) (%closure-ref self$779 22) (%closure-ref self$779 23) (%closure-ref self$779 24) (%closure-ref self$779 25) (%closure-ref self$779 26) (%closure-ref self$779 27) (%closure-ref self$779 28) (%closure-ref self$779 29) (%closure-ref self$779 30) (%closure-ref self$779 31) (%closure-ref self$779 32) (%closure-ref self$779 33) (%closure-ref self$779 34)) (set-cell! (%closure-ref self$779 1) r$514))) (%closure-ref self$778 1) (%closure-ref self$778 2) (%closure-ref self$778 3) (%closure-ref self$778 4) (%closure-ref self$778 5) (%closure-ref self$778 6) (%closure-ref self$778 7) (%closure-ref self$778 8) (%closure-ref self$778 9) (%closure-ref self$778 10) (%closure-ref self$778 11) (%closure-ref self$778 12) (%closure-ref self$778 13) (%closure-ref self$778 14) (%closure-ref self$778 15) (%closure-ref self$778 16) (%closure-ref self$778 17) (%closure-ref self$778 18) (%closure-ref self$778 19) (%closure-ref self$778 20) (%closure-ref self$778 21) (%closure-ref self$778 22) (%closure-ref self$778 23) (%closure-ref self$778 24) (%closure-ref self$778 25) (%closure-ref self$778 26) (%closure-ref self$778 27) (%closure-ref self$778 28) (%closure-ref self$778 29) (%closure-ref self$778 30) (%closure-ref self$778 31) (%closure-ref self$778 32) (%closure-ref self$778 33) (%closure-ref self$778 34)) (quote ()))) (%closure-ref self$777 1) (%closure-ref self$777 2) (%closure-ref self$777 3) (%closure-ref self$777 4) (%closure-ref self$777 5) (%closure-ref self$777 6) (%closure-ref self$777 7) (%closure-ref self$777 8) (%closure-ref self$777 9) (%closure-ref self$777 10) (%closure-ref self$777 11) (%closure-ref self$777 12) (%closure-ref self$777 13) (%closure-ref self$777 14) (%closure-ref self$777 15) (%closure-ref self$777 16) (%closure-ref self$777 17) (%closure-ref self$777 18) (%closure-ref self$777 19) (%closure-ref self$777 20) (%closure-ref self$777 21) (%closure-ref self$777 22) (%closure-ref self$777 23) (%closure-ref self$777 24) (%closure-ref self$777 25) (%closure-ref self$777 26) (%closure-ref self$777 27) (%closure-ref self$777 28) (%closure-ref self$777 29) (%closure-ref self$777 30) (%closure-ref self$777 31) (%closure-ref self$777 32) (%closure-ref self$777 33) (%closure-ref self$777 34)) (set-cell! (%closure-ref self$777 20) r$515))) (%closure-ref self$770 1) (%closure-ref self$770 2) (%closure-ref self$770 3) (%closure-ref self$770 4) (%closure-ref self$770 5) (%closure-ref self$770 6) (%closure-ref self$770 7) (%closure-ref self$770 8) (%closure-ref self$770 9) (%closure-ref self$770 10) (%closure-ref self$770 11) (%closure-ref self$770 12) (%closure-ref self$770 13) (%closure-ref self$770 14) (%closure-ref self$770 15) (%closure-ref self$770 16) (%closure-ref self$770 17) (%closure-ref self$770 18) (%closure-ref self$770 19) (%closure-ref self$770 20) (%closure-ref self$770 21) (%closure-ref self$770 22) (%closure-ref self$770 23) (%closure-ref self$770 24) (%closure-ref self$770 25) (%closure-ref self$770 26) (%closure-ref self$770 27) (%closure-ref self$770 28) (%closure-ref self$770 29) (%closure-ref self$770 30) (%closure-ref self$770 31) (%closure-ref self$770 32) (%closure-ref self$770 33) (%closure-ref self$770 34)) (%closure (lambda (self$771 k$516 sym$219) ((%closure (lambda (self$772 x$220) (if x$220 ((%closure-ref (%closure-ref self$772 2) 0) (%closure-ref self$772 2) (cdr x$220)) ((%closure-ref (cell-get (%closure-ref self$772 3)) 0) (cell-get (%closure-ref self$772 3)) (%closure (lambda (self$773 r$221) ((%closure (lambda (self$774 r$521) ((%closure (lambda (self$775 r$520) ((%closure (lambda (self$776 r$519) ((%closure-ref (%closure-ref self$776 1) 0) (%closure-ref self$776 1) (%closure-ref self$776 2))) (%closure-ref self$775 2) (%closure-ref self$775 3)) (set-cell! (%closure-ref self$775 1) r$520))) (%closure-ref self$774 1) (%closure-ref self$774 2) (%closure-ref self$774 3)) (cons r$521 (cell-get (%closure-ref self$774 1))))) (%closure-ref self$773 1) (%closure-ref self$773 2) r$221) (cons (%closure-ref self$773 3) r$221))) (%closure-ref self$772 1) (%closure-ref self$772 2) (%closure-ref self$772 4)) (%closure-ref self$772 4)))) (%closure-ref self$771 1) k$516 (%closure-ref self$771 2) sym$219) (assq sym$219 (cell-get (%closure-ref self$771 1))))) (%closure-ref self$770 1) (%closure-ref self$770 9)))) (%closure-ref self$769 1) (%closure-ref self$769 2) (%closure-ref self$769 3) (%closure-ref self$769 4) (%closure-ref self$769 5) (%closure-ref self$769 7) (%closure-ref self$769 8) (%closure-ref self$769 9) (%closure-ref self$769 10) (%closure-ref self$769 11) (%closure-ref self$769 12) (%closure-ref self$769 13) (%closure-ref self$769 14) (%closure-ref self$769 15) (%closure-ref self$769 16) (%closure-ref self$769 17) (%closure-ref self$769 18) (%closure-ref self$769 19) (%closure-ref self$769 20) (%closure-ref self$769 21) (%closure-ref self$769 22) (%closure-ref self$769 23) (%closure-ref self$769 24) (%closure-ref self$769 25) (%closure-ref self$769 26) (%closure-ref self$769 27) (%closure-ref self$769 28) (%closure-ref self$769 29) (%closure-ref self$769 30) (%closure-ref self$769 31) (%closure-ref self$769 32) (%closure-ref self$769 33) (%closure-ref self$769 34) (%closure-ref self$769 35)) (set-cell! (%closure-ref self$769 6) r$522))) (%closure-ref self$766 1) (%closure-ref self$766 2) (%closure-ref self$766 3) (%closure-ref self$766 4) (%closure-ref self$766 5) (%closure-ref self$766 6) (%closure-ref self$766 7) (%closure-ref self$766 8) (%closure-ref self$766 9) (%closure-ref self$766 10) (%closure-ref self$766 11) (%closure-ref self$766 12) (%closure-ref self$766 13) (%closure-ref self$766 14) (%closure-ref self$766 15) (%closure-ref self$766 16) (%closure-ref self$766 17) (%closure-ref self$766 18) (%closure-ref self$766 19) (%closure-ref self$766 20) (%closure-ref self$766 21) (%closure-ref self$766 22) (%closure-ref self$766 23) (%closure-ref self$766 24) (%closure-ref self$766 25) (%closure-ref self$766 26) (%closure-ref self$766 27) (%closure-ref self$766 28) (%closure-ref self$766 29) (%closure-ref self$766 30) (%closure-ref self$766 31) (%closure-ref self$766 32) (%closure-ref self$766 33) (%closure-ref self$766 34) (%closure-ref self$766 35)) (%closure (lambda (self$767 k$523 sym$223 property$222) ((%closure-ref (cell-get (%closure-ref self$767 2)) 0) (cell-get (%closure-ref self$767 2)) (%closure (lambda (self$768 r$524) ((%closure-ref (cell-get (%closure-ref self$768 1)) 0) (cell-get (%closure-ref self$768 1)) (%closure-ref self$768 2) r$524)) (%closure-ref self$767 1) k$523) sym$223)) (%closure-ref self$766 7) (%closure-ref self$766 21)))) (%closure-ref self$765 1) (%closure-ref self$765 2) (%closure-ref self$765 3) (%closure-ref self$765 4) (%closure-ref self$765 5) (%closure-ref self$765 6) (%closure-ref self$765 7) (%closure-ref self$765 8) (%closure-ref self$765 9) (%closure-ref self$765 10) (%closure-ref self$765 11) (%closure-ref self$765 12) (%closure-ref self$765 13) (%closure-ref self$765 15) (%closure-ref self$765 16) (%closure-ref self$765 17) (%closure-ref self$765 18) (%closure-ref self$765 19) (%closure-ref self$765 20) (%closure-ref self$765 21) (%closure-ref self$765 22) (%closure-ref self$765 23) (%closure-ref self$765 24) (%closure-ref self$765 25) (%closure-ref self$765 26) (%closure-ref self$765 27) (%closure-ref self$765 28) (%closure-ref self$765 29) (%closure-ref self$765 30) (%closure-ref self$765 31) (%closure-ref self$765 32) (%closure-ref self$765 33) (%closure-ref self$765 34) (%closure-ref self$765 35) (%closure-ref self$765 36)) (set-cell! (%closure-ref self$765 14) r$525))) (%closure-ref self$762 1) (%closure-ref self$762 2) (%closure-ref self$762 3) (%closure-ref self$762 4) (%closure-ref self$762 5) (%closure-ref self$762 6) (%closure-ref self$762 7) (%closure-ref self$762 8) (%closure-ref self$762 9) (%closure-ref self$762 10) (%closure-ref self$762 11) (%closure-ref self$762 12) (%closure-ref self$762 13) (%closure-ref self$762 14) (%closure-ref self$762 15) (%closure-ref self$762 16) (%closure-ref self$762 17) (%closure-ref self$762 18) (%closure-ref self$762 19) (%closure-ref self$762 20) (%closure-ref self$762 21) (%closure-ref self$762 22) (%closure-ref self$762 23) (%closure-ref self$762 24) (%closure-ref self$762 25) (%closure-ref self$762 26) (%closure-ref self$762 27) (%closure-ref self$762 28) (%closure-ref self$762 29) (%closure-ref self$762 30) (%closure-ref self$762 31) (%closure-ref self$762 32) (%closure-ref self$762 33) (%closure-ref self$762 34) (%closure-ref self$762 35) (%closure-ref self$762 36)) (%closure (lambda (self$763 k$526 sym$226 property$225 value$224) ((%closure-ref (cell-get (%closure-ref self$763 2)) 0) (cell-get (%closure-ref self$763 2)) (%closure (lambda (self$764 r$527) ((%closure-ref (cell-get (%closure-ref self$764 2)) 0) (cell-get (%closure-ref self$764 2)) (%closure-ref self$764 1) r$527 (%closure-ref self$764 3))) k$526 (%closure-ref self$763 1) value$224) sym$226)) (%closure-ref self$762 15) (%closure-ref self$762 22)))) (%closure-ref self$761 1) (%closure-ref self$761 2) (%closure-ref self$761 3) (%closure-ref self$761 4) (%closure-ref self$761 5) (%closure-ref self$761 6) (%closure-ref self$761 7) (%closure-ref self$761 8) (%closure-ref self$761 9) (%closure-ref self$761 10) (%closure-ref self$761 11) (%closure-ref self$761 12) (%closure-ref self$761 13) (%closure-ref self$761 14) (%closure-ref self$761 15) (%closure-ref self$761 16) (%closure-ref self$761 17) (%closure-ref self$761 18) (%closure-ref self$761 19) (%closure-ref self$761 20) (%closure-ref self$761 21) (%closure-ref self$761 22) (%closure-ref self$761 23) (%closure-ref self$761 24) (%closure-ref self$761 25) (%closure-ref self$761 26) (%closure-ref self$761 27) (%closure-ref self$761 28) (%closure-ref self$761 29) (%closure-ref self$761 30) (%closure-ref self$761 31) (%closure-ref self$761 32) (%closure-ref self$761 33) (%closure-ref self$761 34) (%closure-ref self$761 35) (%closure-ref self$761 36)) (set-cell! (%closure-ref self$761 37) r$528))) (%closure-ref self$752 1) (%closure-ref self$752 2) (%closure-ref self$752 3) (%closure-ref self$752 4) (%closure-ref self$752 5) (%closure-ref self$752 6) (%closure-ref self$752 7) (%closure-ref self$752 8) (%closure-ref self$752 9) (%closure-ref self$752 10) (%closure-ref self$752 11) (%closure-ref self$752 12) (%closure-ref self$752 13) (%closure-ref self$752 14) (%closure-ref self$752 15) (%closure-ref self$752 16) (%closure-ref self$752 17) (%closure-ref self$752 18) (%closure-ref self$752 19) (%closure-ref self$752 20) (%closure-ref self$752 21) (%closure-ref self$752 22) (%closure-ref self$752 23) (%closure-ref self$752 24) (%closure-ref self$752 25) (%closure-ref self$752 26) (%closure-ref self$752 27) (%closure-ref self$752 28) (%closure-ref self$752 29) (%closure-ref self$752 30) (%closure-ref self$752 31) (%closure-ref self$752 32) (%closure-ref self$752 33) (%closure-ref self$752 34) (%closure-ref self$752 35) (%closure-ref self$752 36) (%closure-ref self$752 37)) (%closure (lambda (self$753 k$529 term$227) ((%closure (lambda (self$754 r$530) (if r$530 ((%closure (lambda (self$756) ((%closure (lambda (self$757 r$534) ((%closure-ref (cell-get (%closure-ref self$757 1)) 0) (cell-get (%closure-ref self$757 1)) (%closure (lambda (self$758 r$531) ((%closure (lambda (self$759 r$533) ((%closure-ref map 0) map (%closure (lambda (self$760 r$532) ((%closure-ref (%closure-ref self$760 1) 0) (%closure-ref self$760 1) (cons (%closure-ref self$760 2) r$532))) (%closure-ref self$759 1) (%closure-ref self$759 2)) (cell-get (%closure-ref self$759 3)) r$533)) (%closure-ref self$758 1) r$531 (%closure-ref self$758 3)) (cdr (%closure-ref self$758 2)))) (%closure-ref self$757 2) (%closure-ref self$757 3) (%closure-ref self$757 4)) r$534)) (%closure-ref self$756 1) (%closure-ref self$756 2) (%closure-ref self$756 3) (%closure-ref self$756 4)) (car (%closure-ref self$756 3)))) (%closure-ref self$754 1) (%closure-ref self$754 2) (%closure-ref self$754 3) (%closure-ref self$754 4))) ((%closure (lambda (self$755) ((%closure-ref (%closure-ref self$755 1) 0) (%closure-ref self$755 1) (%closure-ref self$755 2))) (%closure-ref self$754 2) (%closure-ref self$754 3))))) (%closure-ref self$753 1) k$529 term$227 (%closure-ref self$753 2)) (pair? term$227))) (%closure-ref self$752 8) (%closure-ref self$752 37)))) (%closure-ref self$751 1) (%closure-ref self$751 2) (%closure-ref self$751 3) (%closure-ref self$751 4) (%closure-ref self$751 5) (%closure-ref self$751 6) (%closure-ref self$751 7) (%closure-ref self$751 8) (%closure-ref self$751 9) (%closure-ref self$751 10) (%closure-ref self$751 11) (%closure-ref self$751 12) (%closure-ref self$751 13) (%closure-ref self$751 14) (%closure-ref self$751 15) (%closure-ref self$751 16) (%closure-ref self$751 17) (%closure-ref self$751 18) (%closure-ref self$751 19) (%closure-ref self$751 20) (%closure-ref self$751 21) (%closure-ref self$751 22) (%closure-ref self$751 23) (%closure-ref self$751 24) (%closure-ref self$751 25) (%closure-ref self$751 26) (%closure-ref self$751 27) (%closure-ref self$751 28) (%closure-ref self$751 29) (%closure-ref self$751 30) (%closure-ref self$751 31) (%closure-ref self$751 32) (%closure-ref self$751 34) (%closure-ref self$751 35) (%closure-ref self$751 36) (%closure-ref self$751 37) (%closure-ref self$751 38)) (set-cell! (%closure-ref self$751 33) r$535))) (%closure-ref self$742 1) (%closure-ref self$742 2) (%closure-ref self$742 3) (%closure-ref self$742 4) (%closure-ref self$742 5) (%closure-ref self$742 6) (%closure-ref self$742 7) (%closure-ref self$742 8) (%closure-ref self$742 9) (%closure-ref self$742 10) (%closure-ref self$742 11) (%closure-ref self$742 12) (%closure-ref self$742 13) (%closure-ref self$742 14) (%closure-ref self$742 15) (%closure-ref self$742 16) (%closure-ref self$742 17) (%closure-ref self$742 18) (%closure-ref self$742 19) (%closure-ref self$742 20) (%closure-ref self$742 21) (%closure-ref self$742 22) (%closure-ref self$742 23) (%closure-ref self$742 24) (%closure-ref self$742 25) (%closure-ref self$742 26) (%closure-ref self$742 27) (%closure-ref self$742 28) (%closure-ref self$742 29) (%closure-ref self$742 30) (%closure-ref self$742 31) (%closure-ref self$742 32) (%closure-ref self$742 33) (%closure-ref self$742 34) (%closure-ref self$742 35) (%closure-ref self$742 36) (%closure-ref self$742 37) (%closure-ref self$742 38)) (%closure (lambda (self$743 k$536 lst$228) ((%closure (lambda (self$744 r$537) (if r$537 ((%closure (lambda (self$750) ((%closure-ref (%closure-ref self$750 1) 0) (%closure-ref self$750 1) (quote ()))) (%closure-ref self$744 1))) ((%closure (lambda (self$745) ((%closure (lambda (self$746 r$541) ((%closure-ref (cell-get (%closure-ref self$746 4)) 0) (cell-get (%closure-ref self$746 4)) (%closure (lambda (self$747 r$538) ((%closure (lambda (self$748 r$540) ((%closure-ref (cell-get (%closure-ref self$748 3)) 0) (cell-get (%closure-ref self$748 3)) (%closure (lambda (self$749 r$539) ((%closure-ref (%closure-ref self$749 1) 0) (%closure-ref self$749 1) (cons (%closure-ref self$749 2) r$539))) (%closure-ref self$748 1) (%closure-ref self$748 2)) r$540)) (%closure-ref self$747 1) r$538 (%closure-ref self$747 3)) (cdr (%closure-ref self$747 2)))) (%closure-ref self$746 1) (%closure-ref self$746 2) (%closure-ref self$746 3)) r$541)) (%closure-ref self$745 1) (%closure-ref self$745 2) (%closure-ref self$745 3) (%closure-ref self$745 4)) (car (%closure-ref self$745 2)))) (%closure-ref self$744 1) (%closure-ref self$744 2) (%closure-ref self$744 3) (%closure-ref self$744 4))))) k$536 lst$228 (%closure-ref self$743 1) (%closure-ref self$743 2)) (null? lst$228))) (%closure-ref self$742 33) (%closure-ref self$742 34)))) (%closure-ref self$741 1) (%closure-ref self$741 2) (%closure-ref self$741 3) (%closure-ref self$741 4) (%closure-ref self$741 5) (%closure-ref self$741 6) (%closure-ref self$741 7) (%closure-ref self$741 8) (%closure-ref self$741 9) (%closure-ref self$741 10) (%closure-ref self$741 11) (%closure-ref self$741 12) (%closure-ref self$741 13) (%closure-ref self$741 14) (%closure-ref self$741 15) (%closure-ref self$741 16) (%closure-ref self$741 17) (%closure-ref self$741 18) (%closure-ref self$741 19) (%closure-ref self$741 20) (%closure-ref self$741 21) (%closure-ref self$741 22) (%closure-ref self$741 23) (%closure-ref self$741 24) (%closure-ref self$741 25) (%closure-ref self$741 26) (%closure-ref self$741 27) (%closure-ref self$741 28) (%closure-ref self$741 29) (%closure-ref self$741 30) (%closure-ref self$741 31) (%closure-ref self$741 32) (%closure-ref self$741 33) (%closure-ref self$741 34) (%closure-ref self$741 35) (%closure-ref self$741 36) (%closure-ref self$741 37) (%closure-ref self$741 38)) (set-cell! (%closure-ref self$741 34) r$542))) (%closure-ref self$732 1) (%closure-ref self$732 2) (%closure-ref self$732 3) (%closure-ref self$732 4) (%closure-ref self$732 5) (%closure-ref self$732 6) (%closure-ref self$732 7) (%closure-ref self$732 8) (%closure-ref self$732 9) (%closure-ref self$732 10) (%closure-ref self$732 11) (%closure-ref self$732 12) (%closure-ref self$732 13) (%closure-ref self$732 14) (%closure-ref self$732 15) (%closure-ref self$732 16) (%closure-ref self$732 17) (%closure-ref self$732 18) (%closure-ref self$732 19) (%closure-ref self$732 20) (%closure-ref self$732 21) (%closure-ref self$732 22) (%closure-ref self$732 23) (%closure-ref self$732 24) (%closure-ref self$732 25) (%closure-ref self$732 26) (%closure-ref self$732 27) (%closure-ref self$732 28) (%closure-ref self$732 29) (%closure-ref self$732 30) (%closure-ref self$732 31) (%closure-ref self$732 32) (%closure-ref self$732 33) (%closure-ref self$732 34) (%closure-ref self$732 35) (%closure-ref self$732 36) (%closure-ref self$732 37) (%closure-ref self$732 38)) (%closure (lambda (self$733 k$543 term$229) ((%closure (lambda (self$734 r$544) (if r$544 ((%closure (lambda (self$736) ((%closure (lambda (self$737 r$548) ((%closure-ref (cell-get (%closure-ref self$737 2)) 0) (cell-get (%closure-ref self$737 2)) (%closure (lambda (self$738 r$545) ((%closure (lambda (self$739 r$547) ((%closure-ref (cell-get (%closure-ref self$739 3)) 0) (cell-get (%closure-ref self$739 3)) (%closure (lambda (self$740 r$546) ((%closure-ref (%closure-ref self$740 1) 0) (%closure-ref self$740 1) (cons (%closure-ref self$740 2) r$546))) (%closure-ref self$739 1) (%closure-ref self$739 2)) r$547)) (%closure-ref self$738 1) r$545 (%closure-ref self$738 3)) (cdr (%closure-ref self$738 2)))) (%closure-ref self$737 1) (%closure-ref self$737 3) (%closure-ref self$737 4)) r$548)) (%closure-ref self$736 1) (%closure-ref self$736 2) (%closure-ref self$736 3) (%closure-ref self$736 4)) (car (%closure-ref self$736 3)))) (%closure-ref self$734 1) (%closure-ref self$734 2) (%closure-ref self$734 3) (%closure-ref self$734 4))) ((%closure (lambda (self$735) ((%closure-ref (%closure-ref self$735 1) 0) (%closure-ref self$735 1) (%closure-ref self$735 2))) (%closure-ref self$734 1) (%closure-ref self$734 3))))) k$543 (%closure-ref self$733 1) term$229 (%closure-ref self$733 2)) (pair? term$229))) (%closure-ref self$732 22) (%closure-ref self$732 33)))) (%closure-ref self$731 1) (%closure-ref self$731 3) (%closure-ref self$731 4) (%closure-ref self$731 5) (%closure-ref self$731 6) (%closure-ref self$731 7) (%closure-ref self$731 8) (%closure-ref self$731 9) (%closure-ref self$731 10) (%closure-ref self$731 11) (%closure-ref self$731 12) (%closure-ref self$731 13) (%closure-ref self$731 14) (%closure-ref self$731 15) (%closure-ref self$731 16) (%closure-ref self$731 17) (%closure-ref self$731 18) (%closure-ref self$731 19) (%closure-ref self$731 20) (%closure-ref self$731 21) (%closure-ref self$731 22) (%closure-ref self$731 23) (%closure-ref self$731 24) (%closure-ref self$731 25) (%closure-ref self$731 26) (%closure-ref self$731 27) (%closure-ref self$731 28) (%closure-ref self$731 29) (%closure-ref self$731 30) (%closure-ref self$731 31) (%closure-ref self$731 32) (%closure-ref self$731 33) (%closure-ref self$731 34) (%closure-ref self$731 35) (%closure-ref self$731 36) (%closure-ref self$731 37) (%closure-ref self$731 38) (%closure-ref self$731 39)) (set-cell! (%closure-ref self$731 2) r$549))) (%closure-ref self$711 1) (%closure-ref self$711 2) (%closure-ref self$711 3) (%closure-ref self$711 4) (%closure-ref self$711 5) (%closure-ref self$711 6) (%closure-ref self$711 7) (%closure-ref self$711 8) (%closure-ref self$711 9) (%closure-ref self$711 10) (%closure-ref self$711 11) (%closure-ref self$711 12) (%closure-ref self$711 13) (%closure-ref self$711 14) (%closure-ref self$711 15) (%closure-ref self$711 16) (%closure-ref self$711 17) (%closure-ref self$711 18) (%closure-ref self$711 19) (%closure-ref self$711 20) (%closure-ref self$711 21) (%closure-ref self$711 22) (%closure-ref self$711 23) (%closure-ref self$711 24) (%closure-ref self$711 25) (%closure-ref self$711 26) (%closure-ref self$711 27) (%closure-ref self$711 28) (%closure-ref self$711 29) (%closure-ref self$711 30) (%closure-ref self$711 31) (%closure-ref self$711 32) (%closure-ref self$711 33) (%closure-ref self$711 34) (%closure-ref self$711 35) (%closure-ref self$711 36) (%closure-ref self$711 37) (%closure-ref self$711 38) (%closure-ref self$711 39)) (%closure (lambda (self$712 k$550 term$230) ((%closure (lambda (self$725 k$561) ((%closure (lambda (self$726 r$562) (if r$562 ((%closure (lambda (self$727 r$565) ((%closure (lambda (self$728 r$566) ((%closure (lambda (self$729 r$563) (if r$563 ((%closure (lambda (self$730 r$564) ((%closure-ref (%closure-ref self$730 1) 0) (%closure-ref self$730 1) (pair? r$564))) (%closure-ref self$729 1)) (cadr (%closure-ref self$729 2))) ((%closure-ref (%closure-ref self$729 1) 0) (%closure-ref self$729 1) #f))) (%closure-ref self$728 1) (%closure-ref self$728 3)) (eq? (%closure-ref self$728 2) r$566))) (%closure-ref self$727 1) r$565 (%closure-ref self$727 2)) (quote equal))) (%closure-ref self$726 1) (%closure-ref self$726 2)) (car (%closure-ref self$726 2))) ((%closure-ref (%closure-ref self$726 1) 0) (%closure-ref self$726 1) #f))) k$561 (%closure-ref self$725 1)) (pair? (%closure-ref self$725 1)))) term$230) (%closure (lambda (self$713 r$551) (if r$551 ((%closure (lambda (self$715) ((%closure (lambda (self$716 r$560) ((%closure (lambda (self$717 r$552) ((%closure (lambda (self$718 r$553) ((%closure-ref (cell-get (%closure-ref self$718 6)) 0) (cell-get (%closure-ref self$718 6)) (%closure (lambda (self$719 r$555) ((%closure (lambda (self$720 r$559) ((%closure (lambda (self$721 r$557) ((%closure (lambda (self$722 r$558) ((%closure-ref (cell-get (%closure-ref self$722 1)) 0) (cell-get (%closure-ref self$722 1)) (%closure (lambda (self$723 r$556) ((%closure (lambda (self$724 r$554) ((%closure-ref (cell-get (%closure-ref self$724 2)) 0) (cell-get (%closure-ref self$724 2)) (%closure-ref self$724 1) (%closure-ref self$724 3) (%closure-ref self$724 4) r$554)) (%closure-ref self$723 1) (%closure-ref self$723 2) (%closure-ref self$723 3) (%closure-ref self$723 4)) (cons (%closure-ref self$723 5) r$556))) (%closure-ref self$722 2) (%closure-ref self$722 3) (%closure-ref self$722 4) (%closure-ref self$722 5) (%closure-ref self$722 6)) (%closure-ref self$722 7) r$558)) (%closure-ref self$721 1) (%closure-ref self$721 2) (%closure-ref self$721 3) (%closure-ref self$721 4) (%closure-ref self$721 5) (%closure-ref self$721 6) r$557) (quote lemmas))) (%closure-ref self$720 1) (%closure-ref self$720 2) (%closure-ref self$720 3) (%closure-ref self$720 4) (%closure-ref self$720 5) (%closure-ref self$720 6)) (car r$559))) (%closure-ref self$719 1) (%closure-ref self$719 2) (%closure-ref self$719 3) (%closure-ref self$719 4) (%closure-ref self$719 5) r$555) (cadr (%closure-ref self$719 6)))) (%closure-ref self$718 1) (%closure-ref self$718 2) (%closure-ref self$718 3) (%closure-ref self$718 4) r$553 (%closure-ref self$718 5)) (%closure-ref self$718 5))) (%closure-ref self$717 1) (%closure-ref self$717 2) (%closure-ref self$717 3) r$552 (%closure-ref self$717 4) (%closure-ref self$717 5)) (quote lemmas))) (%closure-ref self$716 1) (%closure-ref self$716 2) (%closure-ref self$716 3) (%closure-ref self$716 4) (%closure-ref self$716 5)) (car r$560))) (%closure-ref self$715 1) (%closure-ref self$715 2) (%closure-ref self$715 3) (%closure-ref self$715 4) (%closure-ref self$715 5)) (cadr (%closure-ref self$715 4)))) (%closure-ref self$713 1) (%closure-ref self$713 2) (%closure-ref self$713 3) (%closure-ref self$713 4) (%closure-ref self$713 5))) ((%closure (lambda (self$714) ((%closure-ref error 0) error (%closure-ref self$714 1) #f "ADD-LEMMA did not like term: " (%closure-ref self$714 2))) (%closure-ref self$713 2) (%closure-ref self$713 4))))) (%closure-ref self$712 1) k$550 (%closure-ref self$712 2) term$230 (%closure-ref self$712 3)))) (%closure-ref self$711 7) (%closure-ref self$711 15) (%closure-ref self$711 35)))) (%closure-ref self$710 1) (%closure-ref self$710 2) (%closure-ref self$710 4) (%closure-ref self$710 5) (%closure-ref self$710 6) (%closure-ref self$710 7) (%closure-ref self$710 8) (%closure-ref self$710 9) (%closure-ref self$710 10) (%closure-ref self$710 11) (%closure-ref self$710 12) (%closure-ref self$710 13) (%closure-ref self$710 14) (%closure-ref self$710 15) (%closure-ref self$710 16) (%closure-ref self$710 17) (%closure-ref self$710 18) (%closure-ref self$710 19) (%closure-ref self$710 20) (%closure-ref self$710 21) (%closure-ref self$710 22) (%closure-ref self$710 23) (%closure-ref self$710 24) (%closure-ref self$710 25) (%closure-ref self$710 26) (%closure-ref self$710 27) (%closure-ref self$710 28) (%closure-ref self$710 29) (%closure-ref self$710 30) (%closure-ref self$710 31) (%closure-ref self$710 32) (%closure-ref self$710 33) (%closure-ref self$710 34) (%closure-ref self$710 35) (%closure-ref self$710 36) (%closure-ref self$710 37) (%closure-ref self$710 38) (%closure-ref self$710 39) (%closure-ref self$710 40)) (set-cell! (%closure-ref self$710 3) r$567))) (%closure-ref self$702 1) (%closure-ref self$702 2) (%closure-ref self$702 3) (%closure-ref self$702 4) (%closure-ref self$702 5) (%closure-ref self$702 6) (%closure-ref self$702 7) (%closure-ref self$702 8) (%closure-ref self$702 9) (%closure-ref self$702 10) (%closure-ref self$702 11) (%closure-ref self$702 12) (%closure-ref self$702 13) (%closure-ref self$702 14) (%closure-ref self$702 15) (%closure-ref self$702 16) (%closure-ref self$702 17) (%closure-ref self$702 18) (%closure-ref self$702 19) (%closure-ref self$702 20) (%closure-ref self$702 21) (%closure-ref self$702 22) (%closure-ref self$702 23) (%closure-ref self$702 24) (%closure-ref self$702 25) (%closure-ref self$702 26) (%closure-ref self$702 27) (%closure-ref self$702 28) (%closure-ref self$702 29) (%closure-ref self$702 30) (%closure-ref self$702 31) (%closure-ref self$702 32) (%closure-ref self$702 33) (%closure-ref self$702 34) (%closure-ref self$702 35) (%closure-ref self$702 36) (%closure-ref self$702 37) (%closure-ref self$702 38) (%closure-ref self$702 39) (%closure-ref self$702 40)) (%closure (lambda (self$703 k$568 lst$231) ((%closure (lambda (self$704 r$569) (if r$569 ((%closure (lambda (self$709) ((%closure-ref (%closure-ref self$709 1) 0) (%closure-ref self$709 1) #t)) (%closure-ref self$704 3))) ((%closure (lambda (self$705) ((%closure (lambda (self$706 r$572) ((%closure-ref (cell-get (%closure-ref self$706 1)) 0) (cell-get (%closure-ref self$706 1)) (%closure (lambda (self$707 r$570) ((%closure (lambda (self$708 r$571) ((%closure-ref (cell-get (%closure-ref self$708 1)) 0) (cell-get (%closure-ref self$708 1)) (%closure-ref self$708 2) r$571)) (%closure-ref self$707 1) (%closure-ref self$707 2)) (cdr (%closure-ref self$707 3)))) (%closure-ref self$706 2) (%closure-ref self$706 3) (%closure-ref self$706 4)) r$572)) (%closure-ref self$705 1) (%closure-ref self$705 2) (%closure-ref self$705 3) (%closure-ref self$705 4)) (car (%closure-ref self$705 4)))) (%closure-ref self$704 1) (%closure-ref self$704 2) (%closure-ref self$704 3) (%closure-ref self$704 4))))) (%closure-ref self$703 1) (%closure-ref self$703 2) k$568 lst$231) (null? lst$231))) (%closure-ref self$702 2) (%closure-ref self$702 3)))) (%closure-ref self$701 1) (%closure-ref self$701 2) (%closure-ref self$701 3) (%closure-ref self$701 4) (%closure-ref self$701 5) (%closure-ref self$701 6) (%closure-ref self$701 7) (%closure-ref self$701 8) (%closure-ref self$701 9) (%closure-ref self$701 10) (%closure-ref self$701 11) (%closure-ref self$701 12) (%closure-ref self$701 13) (%closure-ref self$701 14) (%closure-ref self$701 15) (%closure-ref self$701 16) (%closure-ref self$701 17) (%closure-ref self$701 18) (%closure-ref self$701 19) (%closure-ref self$701 20) (%closure-ref self$701 21) (%closure-ref self$701 22) (%closure-ref self$701 23) (%closure-ref self$701 24) (%closure-ref self$701 25) (%closure-ref self$701 26) (%closure-ref self$701 27) (%closure-ref self$701 28) (%closure-ref self$701 29) (%closure-ref self$701 30) (%closure-ref self$701 31) (%closure-ref self$701 32) (%closure-ref self$701 33) (%closure-ref self$701 34) (%closure-ref self$701 35) (%closure-ref self$701 36) (%closure-ref self$701 37) (%closure-ref self$701 38) (%closure-ref self$701 39) (%closure-ref self$701 40)) (set-cell! (%closure-ref self$701 23) r$573))) (%closure-ref self$698 1) (%closure-ref self$698 2) (%closure-ref self$698 3) (%closure-ref self$698 4) (%closure-ref self$698 5) (%closure-ref self$698 6) (%closure-ref self$698 7) (%closure-ref self$698 8) (%closure-ref self$698 9) (%closure-ref self$698 10) (%closure-ref self$698 11) (%closure-ref self$698 12) (%closure-ref self$698 13) (%closure-ref self$698 14) (%closure-ref self$698 15) (%closure-ref self$698 16) (%closure-ref self$698 17) (%closure-ref self$698 18) (%closure-ref self$698 19) (%closure-ref self$698 20) (%closure-ref self$698 21) (%closure-ref self$698 22) (%closure-ref self$698 23) (%closure-ref self$698 24) (%closure-ref self$698 25) (%closure-ref self$698 26) (%closure-ref self$698 27) (%closure-ref self$698 28) (%closure-ref self$698 29) term-member?$121 (%closure-ref self$698 30) (%closure-ref self$698 31) (%closure-ref self$698 32) (%closure-ref self$698 33) (%closure-ref self$698 34) (%closure-ref self$698 35) (%closure-ref self$698 36) (%closure-ref self$698 37) (%closure-ref self$698 38) (%closure-ref self$698 39)) (%closure (lambda (self$699 k$574) ((%closure (lambda (self$700 r$575) ((%closure-ref (cell-get (%closure-ref self$700 1)) 0) (cell-get (%closure-ref self$700 1)) (%closure-ref self$700 2) r$575)) (%closure-ref self$699 1) k$574) (quote ((equal (compile form) (reverse (codegen (optimize form) (nil)))) (equal (eqp x y) (equal (fix x) (fix y))) (equal (greaterp x y) (lessp y x)) (equal (lesseqp x y) (not (lessp y x))) (equal (greatereqp x y) (not (lessp x y))) (equal (boolean x) (or (equal x (t)) (equal x (f)))) (equal (iff x y) (and (implies x y) (implies y x))) (equal (even1 x) (if (zerop x) (t) (odd (_1- x)))) (equal (countps- l pred) (countps-loop l pred (zero))) (equal (fact- i) (fact-loop i 1)) (equal (reverse- x) (reverse-loop x (nil))) (equal (divides x y) (zerop (remainder y x))) (equal (assume-true var alist) (cons (cons var (t)) alist)) (equal (assume-false var alist) (cons (cons var (f)) alist)) (equal (tautology-checker x) (tautologyp (normalize x) (nil))) (equal (falsify x) (falsify1 (normalize x) (nil))) (equal (prime x) (and (not (zerop x)) (not (equal x (add1 (zero)))) (prime1 x (_1- x)))) (equal (and p q) (if p (if q (t) (f)) (f))) (equal (or p q) (if p (t) (if q (t) (f)))) (equal (not p) (if p (f) (t))) (equal (implies p q) (if p (if q (t) (f)) (t))) (equal (fix x) (if (numberp x) x (zero))) (equal (if (if a b c) d e) (if a (if b d e) (if c d e))) (equal (zerop x) (or (equal x (zero)) (not (numberp x)))) (equal (plus (plus x y) z) (plus x (plus y z))) (equal (equal (plus a b) (zero)) (and (zerop a) (zerop b))) (equal (difference x x) (zero)) (equal (equal (plus a b) (plus a c)) (equal (fix b) (fix c))) (equal (equal (zero) (difference x y)) (not (lessp y x))) (equal (equal x (difference x y)) (and (numberp x) (or (equal x (zero)) (zerop y)))) (equal (meaning (plus-tree (append x y)) a) (plus (meaning (plus-tree x) a) (meaning (plus-tree y) a))) (equal (meaning (plus-tree (plus-fringe x)) a) (fix (meaning x a))) (equal (append (append x y) z) (append x (append y z))) (equal (reverse (append a b)) (append (reverse b) (reverse a))) (equal (times x (plus y z)) (plus (times x y) (times x z))) (equal (times (times x y) z) (times x (times y z))) (equal (equal (times x y) (zero)) (or (zerop x) (zerop y))) (equal (exec (append x y) pds envrn) (exec y (exec x pds envrn) envrn)) (equal (mc-flatten x y) (append (flatten x) y)) (equal (member x (append a b)) (or (member x a) (member x b))) (equal (member x (reverse y)) (member x y)) (equal (length (reverse x)) (length x)) (equal (member a (intersect b c)) (and (member a b) (member a c))) (equal (nth (zero) i) (zero)) (equal (exp i (plus j k)) (times (exp i j) (exp i k))) (equal (exp i (times j k)) (exp (exp i j) k)) (equal (reverse-loop x y) (append (reverse x) y)) (equal (reverse-loop x (nil)) (reverse x)) (equal (count-list z (sort-lp x y)) (plus (count-list z x) (count-list z y))) (equal (equal (append a b) (append a c)) (equal b c)) (equal (plus (remainder x y) (times y (quotient x y))) (fix x)) (equal (power-eval (big-plus1 l i base) base) (plus (power-eval l base) i)) (equal (power-eval (big-plus x y i base) base) (plus i (plus (power-eval x base) (power-eval y base)))) (equal (remainder y 1) (zero)) (equal (lessp (remainder x y) y) (not (zerop y))) (equal (remainder x x) (zero)) (equal (lessp (quotient i j) i) (and (not (zerop i)) (or (zerop j) (not (equal j 1))))) (equal (lessp (remainder x y) x) (and (not (zerop y)) (not (zerop x)) (not (lessp x y)))) (equal (power-eval (power-rep i base) base) (fix i)) (equal (power-eval (big-plus (power-rep i base) (power-rep j base) (zero) base) base) (plus i j)) (equal (gcd x y) (gcd y x)) (equal (nth (append a b) i) (append (nth a i) (nth b (difference i (length a))))) (equal (difference (plus x y) x) (fix y)) (equal (difference (plus y x) x) (fix y)) (equal (difference (plus x y) (plus x z)) (difference y z)) (equal (times x (difference c w)) (difference (times c x) (times w x))) (equal (remainder (times x z) z) (zero)) (equal (difference (plus b (plus a c)) a) (plus b c)) (equal (difference (add1 (plus y z)) z) (add1 y)) (equal (lessp (plus x y) (plus x z)) (lessp y z)) (equal (lessp (times x z) (times y z)) (and (not (zerop z)) (lessp x y))) (equal (lessp y (plus x y)) (not (zerop x))) (equal (gcd (times x z) (times y z)) (times z (gcd x y))) (equal (value (normalize x) a) (value x a)) (equal (equal (flatten x) (cons y (nil))) (and (nlistp x) (equal x y))) (equal (listp (gopher x)) (listp x)) (equal (samefringe x y) (equal (flatten x) (flatten y))) (equal (equal (greatest-factor x y) (zero)) (and (or (zerop y) (equal y 1)) (equal x (zero)))) (equal (equal (greatest-factor x y) 1) (equal x 1)) (equal (numberp (greatest-factor x y)) (not (and (or (zerop y) (equal y 1)) (not (numberp x))))) (equal (times-list (append x y)) (times (times-list x) (times-list y))) (equal (prime-list (append x y)) (and (prime-list x) (prime-list y))) (equal (equal z (times w z)) (and (numberp z) (or (equal z (zero)) (equal w 1)))) (equal (greatereqp x y) (not (lessp x y))) (equal (equal x (times x y)) (or (equal x (zero)) (and (numberp x) (equal y 1)))) (equal (remainder (times y x) y) (zero)) (equal (equal (times a b) 1) (and (not (equal a (zero))) (not (equal b (zero))) (numberp a) (numberp b) (equal (_1- a) (zero)) (equal (_1- b) (zero)))) (equal (lessp (length (delete x l)) (length l)) (member x l)) (equal (sort2 (delete x l)) (delete x (sort2 l))) (equal (dsort x) (sort2 x)) (equal (length (cons x1 (cons x2 (cons x3 (cons x4 (cons x5 (cons x6 x7))))))) (plus 6 (length x7))) (equal (difference (add1 (add1 x)) 2) (fix x)) (equal (quotient (plus x (plus x y)) 2) (plus x (quotient y 2))) (equal (sigma (zero) i) (quotient (times i (add1 i)) 2)) (equal (plus x (add1 y)) (if (numberp y) (add1 (plus x y)) (add1 x))) (equal (equal (difference x y) (difference z y)) (if (lessp x y) (not (lessp y z)) (if (lessp z y) (not (lessp y x)) (equal (fix x) (fix z))))) (equal (meaning (plus-tree (delete x y)) a) (if (member x y) (difference (meaning (plus-tree y) a) (meaning x a)) (meaning (plus-tree y) a))) (equal (times x (add1 y)) (if (numberp y) (plus x (times x y)) (fix x))) (equal (nth (nil) i) (if (zerop i) (nil) (zero))) (equal (last (append a b)) (if (listp b) (last b) (if (listp a) (cons (car (last a)) b) b))) (equal (equal (lessp x y) z) (if (lessp x y) (equal (t) z) (equal (f) z))) (equal (assignment x (append a b)) (if (assignedp x a) (assignment x a) (assignment x b))) (equal (car (gopher x)) (if (listp x) (car (flatten x)) (zero))) (equal (flatten (cdr (gopher x))) (if (listp x) (cdr (flatten x)) (cons (zero) (nil)))) (equal (quotient (times y x) y) (if (zerop y) (zero) (fix x))) (equal (get j (set i val mem)) (if (eqp j i) val (get j mem))))))) (%closure-ref self$698 3)))) (%closure-ref self$697 1) (%closure-ref self$697 2) (%closure-ref self$697 3) (%closure-ref self$697 4) (%closure-ref self$697 5) (%closure-ref self$697 6) (%closure-ref self$697 7) (%closure-ref self$697 8) (%closure-ref self$697 9) (%closure-ref self$697 10) (%closure-ref self$697 11) (%closure-ref self$697 12) (%closure-ref self$697 13) (%closure-ref self$697 14) (%closure-ref self$697 15) (%closure-ref self$697 16) (%closure-ref self$697 17) (%closure-ref self$697 18) (%closure-ref self$697 19) (%closure-ref self$697 20) (%closure-ref self$697 21) (%closure-ref self$697 22) (%closure-ref self$697 23) (%closure-ref self$697 24) (%closure-ref self$697 25) (%closure-ref self$697 26) (%closure-ref self$697 27) term-args-equal?$122 (%closure-ref self$697 28) (%closure-ref self$697 30) (%closure-ref self$697 31) (%closure-ref self$697 32) (%closure-ref self$697 33) (%closure-ref self$697 34) (%closure-ref self$697 35) (%closure-ref self$697 36) (%closure-ref self$697 37) (%closure-ref self$697 38) (%closure-ref self$697 39)) (cell (%closure-ref self$697 29)))) (%closure-ref self$696 1) (%closure-ref self$696 2) (%closure-ref self$696 3) (%closure-ref self$696 4) (%closure-ref self$696 5) (%closure-ref self$696 6) (%closure-ref self$696 7) (%closure-ref self$696 8) (%closure-ref self$696 9) (%closure-ref self$696 10) (%closure-ref self$696 11) (%closure-ref self$696 12) (%closure-ref self$696 13) (%closure-ref self$696 14) (%closure-ref self$696 15) (%closure-ref self$696 16) (%closure-ref self$696 17) (%closure-ref self$696 18) (%closure-ref self$696 19) (%closure-ref self$696 20) (%closure-ref self$696 21) (%closure-ref self$696 22) (%closure-ref self$696 23) (%closure-ref self$696 24) (%closure-ref self$696 25) (%closure-ref self$696 26) (%closure-ref self$696 27) term-equal?$123 (%closure-ref self$696 29) (%closure-ref self$696 30) (%closure-ref self$696 31) (%closure-ref self$696 32) (%closure-ref self$696 33) (%closure-ref self$696 34) (%closure-ref self$696 35) (%closure-ref self$696 36) (%closure-ref self$696 37) (%closure-ref self$696 38) (%closure-ref self$696 39)) (cell (%closure-ref self$696 28)))) (%closure-ref self$695 1) (%closure-ref self$695 2) (%closure-ref self$695 3) (%closure-ref self$695 4) (%closure-ref self$695 5) (%closure-ref self$695 6) (%closure-ref self$695 7) (%closure-ref self$695 8) (%closure-ref self$695 9) (%closure-ref self$695 10) (%closure-ref self$695 11) (%closure-ref self$695 12) (%closure-ref self$695 13) (%closure-ref self$695 14) (%closure-ref self$695 15) (%closure-ref self$695 16) (%closure-ref self$695 17) (%closure-ref self$695 18) (%closure-ref self$695 19) (%closure-ref self$695 20) (%closure-ref self$695 21) (%closure-ref self$695 22) (%closure-ref self$695 23) (%closure-ref self$695 24) (%closure-ref self$695 25) (%closure-ref self$695 26) (%closure-ref self$695 27) (%closure-ref self$695 28) (%closure-ref self$695 30) (%closure-ref self$695 31) (%closure-ref self$695 32) trans-of-implies1$124 (%closure-ref self$695 33) (%closure-ref self$695 34) (%closure-ref self$695 35) (%closure-ref self$695 36) (%closure-ref self$695 37) (%closure-ref self$695 38) (%closure-ref self$695 39)) (cell (%closure-ref self$695 29)))) (%closure-ref self$694 1) (%closure-ref self$694 2) (%closure-ref self$694 3) (%closure-ref self$694 4) (%closure-ref self$694 5) (%closure-ref self$694 6) (%closure-ref self$694 7) (%closure-ref self$694 8) (%closure-ref self$694 9) (%closure-ref self$694 10) (%closure-ref self$694 11) (%closure-ref self$694 12) (%closure-ref self$694 13) (%closure-ref self$694 14) (%closure-ref self$694 15) (%closure-ref self$694 16) (%closure-ref self$694 17) (%closure-ref self$694 18) (%closure-ref self$694 19) (%closure-ref self$694 20) (%closure-ref self$694 21) (%closure-ref self$694 22) (%closure-ref self$694 23) (%closure-ref self$694 24) (%closure-ref self$694 25) (%closure-ref self$694 26) (%closure-ref self$694 27) (%closure-ref self$694 28) (%closure-ref self$694 29) (%closure-ref self$694 30) (%closure-ref self$694 31) trans-of-implies$125 (%closure-ref self$694 33) (%closure-ref self$694 34) (%closure-ref self$694 35) (%closure-ref self$694 36) (%closure-ref self$694 37) (%closure-ref self$694 38) (%closure-ref self$694 39)) (cell (%closure-ref self$694 32)))) (%closure-ref self$693 1) (%closure-ref self$693 2) (%closure-ref self$693 3) (%closure-ref self$693 4) (%closure-ref self$693 5) (%closure-ref self$693 6) (%closure-ref self$693 7) (%closure-ref self$693 8) (%closure-ref self$693 9) (%closure-ref self$693 10) (%closure-ref self$693 11) (%closure-ref self$693 12) (%closure-ref self$693 13) (%closure-ref self$693 14) (%closure-ref self$693 15) (%closure-ref self$693 16) (%closure-ref self$693 17) (%closure-ref self$693 18) (%closure-ref self$693 19) (%closure-ref self$693 20) (%closure-ref self$693 21) (%closure-ref self$693 22) (%closure-ref self$693 23) (%closure-ref self$693 24) (%closure-ref self$693 25) (%closure-ref self$693 26) (%closure-ref self$693 27) (%closure-ref self$693 28) (%closure-ref self$693 29) (%closure-ref self$693 30) (%closure-ref self$693 31) (%closure-ref self$693 33) (%closure-ref self$693 34) (%closure-ref self$693 35) (%closure-ref self$693 36) true-term$126 (%closure-ref self$693 37) (%closure-ref self$693 38) (%closure-ref self$693 39)) (cell (%closure-ref self$693 32)))) (%closure-ref self$692 1) (%closure-ref self$692 2) (%closure-ref self$692 3) (%closure-ref self$692 4) (%closure-ref self$692 5) false-term$127 (%closure-ref self$692 6) (%closure-ref self$692 7) (%closure-ref self$692 8) (%closure-ref self$692 9) (%closure-ref self$692 10) (%closure-ref self$692 11) (%closure-ref self$692 12) (%closure-ref self$692 13) (%closure-ref self$692 14) (%closure-ref self$692 15) (%closure-ref self$692 16) (%closure-ref self$692 17) (%closure-ref self$692 18) (%closure-ref self$692 19) (%closure-ref self$692 20) (%closure-ref self$692 21) (%closure-ref self$692 22) (%closure-ref self$692 23) (%closure-ref self$692 24) (%closure-ref self$692 25) (%closure-ref self$692 26) (%closure-ref self$692 27) (%closure-ref self$692 28) (%closure-ref self$692 29) (%closure-ref self$692 30) (%closure-ref self$692 31) (%closure-ref self$692 32) (%closure-ref self$692 33) (%closure-ref self$692 34) (%closure-ref self$692 35) (%closure-ref self$692 37) (%closure-ref self$692 38) (%closure-ref self$692 39)) (cell (%closure-ref self$692 36)))) (%closure-ref self$691 1) (%closure-ref self$691 2) (%closure-ref self$691 3) (%closure-ref self$691 4) (%closure-ref self$691 5) (%closure-ref self$691 7) (%closure-ref self$691 8) (%closure-ref self$691 9) (%closure-ref self$691 10) (%closure-ref self$691 11) (%closure-ref self$691 12) (%closure-ref self$691 13) (%closure-ref self$691 14) (%closure-ref self$691 15) (%closure-ref self$691 16) (%closure-ref self$691 17) (%closure-ref self$691 18) (%closure-ref self$691 19) (%closure-ref self$691 20) (%closure-ref self$691 21) (%closure-ref self$691 22) (%closure-ref self$691 23) (%closure-ref self$691 24) (%closure-ref self$691 25) (%closure-ref self$691 26) (%closure-ref self$691 27) (%closure-ref self$691 28) (%closure-ref self$691 29) (%closure-ref self$691 30) (%closure-ref self$691 31) (%closure-ref self$691 32) (%closure-ref self$691 33) (%closure-ref self$691 34) (%closure-ref self$691 35) (%closure-ref self$691 36) (%closure-ref self$691 37) truep$128 (%closure-ref self$691 38) (%closure-ref self$691 39)) (cell (%closure-ref self$691 6)))) (%closure-ref self$690 1) (%closure-ref self$690 2) (%closure-ref self$690 3) (%closure-ref self$690 4) (%closure-ref self$690 5) (%closure-ref self$690 6) falsep$129 (%closure-ref self$690 7) (%closure-ref self$690 8) (%closure-ref self$690 9) (%closure-ref self$690 10) (%closure-ref self$690 11) (%closure-ref self$690 12) (%closure-ref self$690 13) (%closure-ref self$690 14) (%closure-ref self$690 15) (%closure-ref self$690 16) (%closure-ref self$690 17) (%closure-ref self$690 18) (%closure-ref self$690 19) (%closure-ref self$690 20) (%closure-ref self$690 21) (%closure-ref self$690 22) (%closure-ref self$690 23) (%closure-ref self$690 24) (%closure-ref self$690 25) (%closure-ref self$690 26) (%closure-ref self$690 27) (%closure-ref self$690 28) (%closure-ref self$690 29) (%closure-ref self$690 30) (%closure-ref self$690 31) (%closure-ref self$690 32) (%closure-ref self$690 33) (%closure-ref self$690 34) (%closure-ref self$690 35) (%closure-ref self$690 36) (%closure-ref self$690 38) (%closure-ref self$690 39)) (cell (%closure-ref self$690 37)))) (%closure-ref self$689 1) (%closure-ref self$689 2) (%closure-ref self$689 3) (%closure-ref self$689 4) (%closure-ref self$689 5) (%closure-ref self$689 6) (%closure-ref self$689 8) (%closure-ref self$689 9) (%closure-ref self$689 10) (%closure-ref self$689 11) (%closure-ref self$689 12) (%closure-ref self$689 13) (%closure-ref self$689 14) one-way-unify1-lst$130 (%closure-ref self$689 15) (%closure-ref self$689 16) (%closure-ref self$689 17) (%closure-ref self$689 18) (%closure-ref self$689 19) (%closure-ref self$689 20) (%closure-ref self$689 21) (%closure-ref self$689 22) (%closure-ref self$689 23) (%closure-ref self$689 24) (%closure-ref self$689 25) (%closure-ref self$689 26) (%closure-ref self$689 27) (%closure-ref self$689 28) (%closure-ref self$689 29) (%closure-ref self$689 30) (%closure-ref self$689 31) (%closure-ref self$689 32) (%closure-ref self$689 33) (%closure-ref self$689 34) (%closure-ref self$689 35) (%closure-ref self$689 36) (%closure-ref self$689 37) (%closure-ref self$689 38) (%closure-ref self$689 39)) (cell (%closure-ref self$689 7)))) (%closure-ref self$688 1) (%closure-ref self$688 2) (%closure-ref self$688 3) (%closure-ref self$688 4) (%closure-ref self$688 5) (%closure-ref self$688 6) (%closure-ref self$688 7) (%closure-ref self$688 8) (%closure-ref self$688 9) (%closure-ref self$688 10) (%closure-ref self$688 11) (%closure-ref self$688 12) (%closure-ref self$688 13) one-way-unify1$131 (%closure-ref self$688 15) (%closure-ref self$688 16) (%closure-ref self$688 17) (%closure-ref self$688 18) (%closure-ref self$688 19) (%closure-ref self$688 20) (%closure-ref self$688 21) (%closure-ref self$688 22) (%closure-ref self$688 23) (%closure-ref self$688 24) (%closure-ref self$688 25) (%closure-ref self$688 26) (%closure-ref self$688 27) (%closure-ref self$688 28) (%closure-ref self$688 29) (%closure-ref self$688 30) (%closure-ref self$688 31) (%closure-ref self$688 32) (%closure-ref self$688 33) (%closure-ref self$688 34) (%closure-ref self$688 35) (%closure-ref self$688 36) (%closure-ref self$688 37) (%closure-ref self$688 38) (%closure-ref self$688 39)) (cell (%closure-ref self$688 14)))) (%closure-ref self$687 1) (%closure-ref self$687 2) (%closure-ref self$687 3) (%closure-ref self$687 4) (%closure-ref self$687 5) (%closure-ref self$687 6) (%closure-ref self$687 7) (%closure-ref self$687 8) (%closure-ref self$687 9) (%closure-ref self$687 10) (%closure-ref self$687 11) (%closure-ref self$687 12) one-way-unify$132 (%closure-ref self$687 14) (%closure-ref self$687 15) (%closure-ref self$687 16) (%closure-ref self$687 17) (%closure-ref self$687 18) (%closure-ref self$687 19) (%closure-ref self$687 20) (%closure-ref self$687 21) (%closure-ref self$687 22) (%closure-ref self$687 23) (%closure-ref self$687 24) (%closure-ref self$687 25) (%closure-ref self$687 26) (%closure-ref self$687 27) (%closure-ref self$687 28) (%closure-ref self$687 29) (%closure-ref self$687 30) (%closure-ref self$687 31) (%closure-ref self$687 32) (%closure-ref self$687 33) (%closure-ref self$687 34) (%closure-ref self$687 35) (%closure-ref self$687 36) (%closure-ref self$687 37) (%closure-ref self$687 38) (%closure-ref self$687 39)) (cell (%closure-ref self$687 13)))) (%closure-ref self$686 1) (%closure-ref self$686 2) (%closure-ref self$686 3) (%closure-ref self$686 4) (%closure-ref self$686 5) (%closure-ref self$686 6) (%closure-ref self$686 7) (%closure-ref self$686 8) (%closure-ref self$686 9) (%closure-ref self$686 10) (%closure-ref self$686 11) (%closure-ref self$686 12) (%closure-ref self$686 14) (%closure-ref self$686 15) (%closure-ref self$686 16) (%closure-ref self$686 17) (%closure-ref self$686 18) (%closure-ref self$686 19) (%closure-ref self$686 20) (%closure-ref self$686 21) (%closure-ref self$686 22) (%closure-ref self$686 23) (%closure-ref self$686 24) (%closure-ref self$686 25) (%closure-ref self$686 26) (%closure-ref self$686 27) (%closure-ref self$686 28) (%closure-ref self$686 29) (%closure-ref self$686 30) (%closure-ref self$686 31) (%closure-ref self$686 32) (%closure-ref self$686 33) (%closure-ref self$686 34) (%closure-ref self$686 35) (%closure-ref self$686 36) (%closure-ref self$686 37) (%closure-ref self$686 38) unify-subst$133 (%closure-ref self$686 39)) (cell (%closure-ref self$686 13)))) (%closure-ref self$685 1) (%closure-ref self$685 2) (%closure-ref self$685 3) (%closure-ref self$685 4) (%closure-ref self$685 5) (%closure-ref self$685 6) (%closure-ref self$685 7) (%closure-ref self$685 8) (%closure-ref self$685 9) (%closure-ref self$685 10) (%closure-ref self$685 11) (%closure-ref self$685 12) (%closure-ref self$685 13) (%closure-ref self$685 14) (%closure-ref self$685 15) (%closure-ref self$685 16) (%closure-ref self$685 17) (%closure-ref self$685 18) (%closure-ref self$685 19) (%closure-ref self$685 20) rewrite-with-lemmas$134 (%closure-ref self$685 21) (%closure-ref self$685 22) (%closure-ref self$685 23) (%closure-ref self$685 24) (%closure-ref self$685 25) (%closure-ref self$685 26) (%closure-ref self$685 27) (%closure-ref self$685 28) (%closure-ref self$685 29) (%closure-ref self$685 30) (%closure-ref self$685 31) (%closure-ref self$685 32) (%closure-ref self$685 33) (%closure-ref self$685 34) (%closure-ref self$685 35) (%closure-ref self$685 36) (%closure-ref self$685 37) (%closure-ref self$685 39)) (cell (%closure-ref self$685 38)))) (%closure-ref self$684 1) (%closure-ref self$684 2) (%closure-ref self$684 3) (%closure-ref self$684 4) (%closure-ref self$684 5) (%closure-ref self$684 6) (%closure-ref self$684 7) (%closure-ref self$684 8) (%closure-ref self$684 9) (%closure-ref self$684 10) (%closure-ref self$684 11) (%closure-ref self$684 12) (%closure-ref self$684 13) (%closure-ref self$684 14) (%closure-ref self$684 15) (%closure-ref self$684 16) (%closure-ref self$684 17) (%closure-ref self$684 18) rewrite-args$135 (%closure-ref self$684 19) (%closure-ref self$684 21) (%closure-ref self$684 22) (%closure-ref self$684 23) (%closure-ref self$684 24) (%closure-ref self$684 25) (%closure-ref self$684 26) (%closure-ref self$684 27) (%closure-ref self$684 28) (%closure-ref self$684 29) (%closure-ref self$684 30) (%closure-ref self$684 31) (%closure-ref self$684 32) (%closure-ref self$684 33) (%closure-ref self$684 34) (%closure-ref self$684 35) (%closure-ref self$684 36) (%closure-ref self$684 37) (%closure-ref self$684 38) (%closure-ref self$684 39)) (cell (%closure-ref self$684 20)))) (%closure-ref self$683 1) (%closure-ref self$683 2) (%closure-ref self$683 3) (%closure-ref self$683 4) (%closure-ref self$683 5) (%closure-ref self$683 6) (%closure-ref self$683 7) (%closure-ref self$683 8) (%closure-ref self$683 9) (%closure-ref self$683 10) (%closure-ref self$683 11) (%closure-ref self$683 12) (%closure-ref self$683 13) (%closure-ref self$683 14) (%closure-ref self$683 15) (%closure-ref self$683 16) (%closure-ref self$683 17) rewrite$136 (%closure-ref self$683 19) (%closure-ref self$683 20) (%closure-ref self$683 21) (%closure-ref self$683 22) (%closure-ref self$683 23) (%closure-ref self$683 24) (%closure-ref self$683 25) (%closure-ref self$683 26) (%closure-ref self$683 27) (%closure-ref self$683 28) (%closure-ref self$683 29) (%closure-ref self$683 30) (%closure-ref self$683 31) (%closure-ref self$683 32) (%closure-ref self$683 33) (%closure-ref self$683 34) (%closure-ref self$683 35) (%closure-ref self$683 36) (%closure-ref self$683 37) (%closure-ref self$683 38) (%closure-ref self$683 39)) (cell (%closure-ref self$683 18)))) (%closure-ref self$682 1) (%closure-ref self$682 2) (%closure-ref self$682 3) (%closure-ref self$682 4) (%closure-ref self$682 5) (%closure-ref self$682 6) (%closure-ref self$682 7) (%closure-ref self$682 8) (%closure-ref self$682 9) (%closure-ref self$682 10) (%closure-ref self$682 11) (%closure-ref self$682 12) (%closure-ref self$682 13) (%closure-ref self$682 14) (%closure-ref self$682 15) (%closure-ref self$682 16) (%closure-ref self$682 17) (%closure-ref self$682 19) (%closure-ref self$682 20) (%closure-ref self$682 21) scons$137 (%closure-ref self$682 22) (%closure-ref self$682 23) (%closure-ref self$682 24) (%closure-ref self$682 25) (%closure-ref self$682 26) (%closure-ref self$682 27) (%closure-ref self$682 28) (%closure-ref self$682 29) (%closure-ref self$682 30) (%closure-ref self$682 31) (%closure-ref self$682 32) (%closure-ref self$682 33) (%closure-ref self$682 34) (%closure-ref self$682 35) (%closure-ref self$682 36) (%closure-ref self$682 37) (%closure-ref self$682 38) (%closure-ref self$682 39)) (cell (%closure-ref self$682 18)))) (%closure-ref self$681 1) (%closure-ref self$681 2) (%closure-ref self$681 3) (%closure-ref self$681 4) (%closure-ref self$681 5) (%closure-ref self$681 6) (%closure-ref self$681 7) (%closure-ref self$681 8) (%closure-ref self$681 9) (%closure-ref self$681 10) (%closure-ref self$681 11) (%closure-ref self$681 12) (%closure-ref self$681 13) (%closure-ref self$681 14) (%closure-ref self$681 15) (%closure-ref self$681 16) (%closure-ref self$681 17) (%closure-ref self$681 18) (%closure-ref self$681 19) rewrite-count$138 (%closure-ref self$681 20) (%closure-ref self$681 22) (%closure-ref self$681 23) (%closure-ref self$681 24) (%closure-ref self$681 25) (%closure-ref self$681 26) (%closure-ref self$681 27) (%closure-ref self$681 28) (%closure-ref self$681 29) (%closure-ref self$681 30) (%closure-ref self$681 31) (%closure-ref self$681 32) (%closure-ref self$681 33) (%closure-ref self$681 34) (%closure-ref self$681 35) (%closure-ref self$681 36) (%closure-ref self$681 37) (%closure-ref self$681 38) (%closure-ref self$681 39)) (cell (%closure-ref self$681 21)))) (%closure-ref self$680 1) (%closure-ref self$680 2) (%closure-ref self$680 3) (%closure-ref self$680 4) (%closure-ref self$680 5) (%closure-ref self$680 6) (%closure-ref self$680 7) (%closure-ref self$680 8) (%closure-ref self$680 9) (%closure-ref self$680 10) if-constructor$139 (%closure-ref self$680 11) (%closure-ref self$680 12) (%closure-ref self$680 13) (%closure-ref self$680 14) (%closure-ref self$680 15) (%closure-ref self$680 16) (%closure-ref self$680 17) (%closure-ref self$680 18) (%closure-ref self$680 20) (%closure-ref self$680 21) (%closure-ref self$680 22) (%closure-ref self$680 23) (%closure-ref self$680 24) (%closure-ref self$680 25) (%closure-ref self$680 26) (%closure-ref self$680 27) (%closure-ref self$680 28) (%closure-ref self$680 29) (%closure-ref self$680 30) (%closure-ref self$680 31) (%closure-ref self$680 32) (%closure-ref self$680 33) (%closure-ref self$680 34) (%closure-ref self$680 35) (%closure-ref self$680 36) (%closure-ref self$680 37) (%closure-ref self$680 38) (%closure-ref self$680 39)) (cell (%closure-ref self$680 19)))) (%closure-ref self$679 1) (%closure-ref self$679 2) (%closure-ref self$679 3) (%closure-ref self$679 4) (%closure-ref self$679 5) (%closure-ref self$679 6) (%closure-ref self$679 7) (%closure-ref self$679 8) (%closure-ref self$679 9) (%closure-ref self$679 10) (%closure-ref self$679 12) (%closure-ref self$679 13) (%closure-ref self$679 14) (%closure-ref self$679 15) (%closure-ref self$679 16) (%closure-ref self$679 17) (%closure-ref self$679 18) (%closure-ref self$679 19) (%closure-ref self$679 20) (%closure-ref self$679 21) (%closure-ref self$679 22) (%closure-ref self$679 23) (%closure-ref self$679 24) (%closure-ref self$679 25) tautologyp$140 (%closure-ref self$679 26) (%closure-ref self$679 27) (%closure-ref self$679 28) (%closure-ref self$679 29) (%closure-ref self$679 30) (%closure-ref self$679 31) (%closure-ref self$679 32) (%closure-ref self$679 33) (%closure-ref self$679 34) (%closure-ref self$679 35) (%closure-ref self$679 36) (%closure-ref self$679 37) (%closure-ref self$679 38) (%closure-ref self$679 39)) (cell (%closure-ref self$679 11)))) (%closure-ref self$678 1) (%closure-ref self$678 2) (%closure-ref self$678 3) (%closure-ref self$678 4) (%closure-ref self$678 5) (%closure-ref self$678 6) (%closure-ref self$678 7) (%closure-ref self$678 8) (%closure-ref self$678 9) (%closure-ref self$678 10) (%closure-ref self$678 11) (%closure-ref self$678 12) (%closure-ref self$678 13) (%closure-ref self$678 14) (%closure-ref self$678 15) (%closure-ref self$678 16) (%closure-ref self$678 17) (%closure-ref self$678 18) (%closure-ref self$678 19) (%closure-ref self$678 20) (%closure-ref self$678 21) (%closure-ref self$678 22) (%closure-ref self$678 23) (%closure-ref self$678 24) (%closure-ref self$678 25) tautp$141 (%closure-ref self$678 27) (%closure-ref self$678 28) (%closure-ref self$678 29) (%closure-ref self$678 30) (%closure-ref self$678 31) (%closure-ref self$678 32) (%closure-ref self$678 33) (%closure-ref self$678 34) (%closure-ref self$678 35) (%closure-ref self$678 36) (%closure-ref self$678 37) (%closure-ref self$678 38) (%closure-ref self$678 39)) (cell (%closure-ref self$678 26)))) (%closure-ref self$677 1) (%closure-ref self$677 2) (%closure-ref self$677 3) (%closure-ref self$677 4) apply-subst-lst$142 (%closure-ref self$677 5) (%closure-ref self$677 6) (%closure-ref self$677 7) (%closure-ref self$677 8) (%closure-ref self$677 9) (%closure-ref self$677 10) (%closure-ref self$677 11) (%closure-ref self$677 12) (%closure-ref self$677 13) (%closure-ref self$677 14) (%closure-ref self$677 15) (%closure-ref self$677 16) (%closure-ref self$677 17) (%closure-ref self$677 18) (%closure-ref self$677 19) (%closure-ref self$677 20) (%closure-ref self$677 21) (%closure-ref self$677 22) (%closure-ref self$677 23) (%closure-ref self$677 24) (%closure-ref self$677 25) (%closure-ref self$677 27) (%closure-ref self$677 28) (%closure-ref self$677 29) (%closure-ref self$677 30) (%closure-ref self$677 31) (%closure-ref self$677 32) (%closure-ref self$677 33) (%closure-ref self$677 34) (%closure-ref self$677 35) (%closure-ref self$677 36) (%closure-ref self$677 37) (%closure-ref self$677 38) (%closure-ref self$677 39)) (cell (%closure-ref self$677 26)))) (%closure-ref self$676 1) (%closure-ref self$676 2) (%closure-ref self$676 3) apply-subst$143 (%closure-ref self$676 5) (%closure-ref self$676 6) (%closure-ref self$676 7) (%closure-ref self$676 8) (%closure-ref self$676 9) (%closure-ref self$676 10) (%closure-ref self$676 11) (%closure-ref self$676 12) (%closure-ref self$676 13) (%closure-ref self$676 14) (%closure-ref self$676 15) (%closure-ref self$676 16) (%closure-ref self$676 17) (%closure-ref self$676 18) (%closure-ref self$676 19) (%closure-ref self$676 20) (%closure-ref self$676 21) (%closure-ref self$676 22) (%closure-ref self$676 23) (%closure-ref self$676 24) (%closure-ref self$676 25) (%closure-ref self$676 26) (%closure-ref self$676 27) (%closure-ref self$676 28) (%closure-ref self$676 29) (%closure-ref self$676 30) (%closure-ref self$676 31) (%closure-ref self$676 32) (%closure-ref self$676 33) (%closure-ref self$676 34) (%closure-ref self$676 35) (%closure-ref self$676 36) (%closure-ref self$676 37) (%closure-ref self$676 38) (%closure-ref self$676 39)) (cell (%closure-ref self$676 4)))) (%closure-ref self$675 1) (%closure-ref self$675 2) (%closure-ref self$675 3) (%closure-ref self$675 5) (%closure-ref self$675 6) (%closure-ref self$675 7) (%closure-ref self$675 8) (%closure-ref self$675 9) (%closure-ref self$675 10) (%closure-ref self$675 11) (%closure-ref self$675 12) (%closure-ref self$675 13) (%closure-ref self$675 14) (%closure-ref self$675 15) (%closure-ref self$675 16) (%closure-ref self$675 17) (%closure-ref self$675 18) (%closure-ref self$675 19) (%closure-ref self$675 20) (%closure-ref self$675 21) (%closure-ref self$675 22) (%closure-ref self$675 23) (%closure-ref self$675 24) (%closure-ref self$675 25) (%closure-ref self$675 26) (%closure-ref self$675 27) (%closure-ref self$675 28) (%closure-ref self$675 29) (%closure-ref self$675 30) (%closure-ref self$675 31) (%closure-ref self$675 32) (%closure-ref self$675 33) translate-alist$144 (%closure-ref self$675 34) (%closure-ref self$675 35) (%closure-ref self$675 36) (%closure-ref self$675 37) (%closure-ref self$675 38) (%closure-ref self$675 39)) (cell (%closure-ref self$675 4)))) (%closure-ref self$674 1) (%closure-ref self$674 2) (%closure-ref self$674 3) (%closure-ref self$674 4) (%closure-ref self$674 5) (%closure-ref self$674 6) (%closure-ref self$674 7) (%closure-ref self$674 8) (%closure-ref self$674 9) (%closure-ref self$674 10) (%closure-ref self$674 11) (%closure-ref self$674 12) (%closure-ref self$674 13) (%closure-ref self$674 14) (%closure-ref self$674 15) (%closure-ref self$674 16) (%closure-ref self$674 17) (%closure-ref self$674 18) (%closure-ref self$674 19) (%closure-ref self$674 20) (%closure-ref self$674 21) (%closure-ref self$674 22) (%closure-ref self$674 23) (%closure-ref self$674 24) (%closure-ref self$674 25) (%closure-ref self$674 26) (%closure-ref self$674 27) (%closure-ref self$674 28) (%closure-ref self$674 29) (%closure-ref self$674 30) test$145 (%closure-ref self$674 31) (%closure-ref self$674 32) (%closure-ref self$674 34) (%closure-ref self$674 35) (%closure-ref self$674 36) (%closure-ref self$674 37) (%closure-ref self$674 38) (%closure-ref self$674 39)) (cell (%closure-ref self$674 33)))) (%closure-ref self$673 1) (%closure-ref self$673 2) (%closure-ref self$673 3) (%closure-ref self$673 4) (%closure-ref self$673 5) (%closure-ref self$673 6) (%closure-ref self$673 7) (%closure-ref self$673 8) (%closure-ref self$673 9) (%closure-ref self$673 10) (%closure-ref self$673 11) (%closure-ref self$673 12) (%closure-ref self$673 13) (%closure-ref self$673 14) (%closure-ref self$673 15) (%closure-ref self$673 16) (%closure-ref self$673 17) (%closure-ref self$673 18) (%closure-ref self$673 19) (%closure-ref self$673 20) (%closure-ref self$673 21) (%closure-ref self$673 22) (%closure-ref self$673 23) (%closure-ref self$673 24) symbol-record-equal?$146 (%closure-ref self$673 25) (%closure-ref self$673 26) (%closure-ref self$673 27) (%closure-ref self$673 28) (%closure-ref self$673 29) (%closure-ref self$673 31) (%closure-ref self$673 32) (%closure-ref self$673 33) (%closure-ref self$673 34) (%closure-ref self$673 35) (%closure-ref self$673 36) (%closure-ref self$673 37) (%closure-ref self$673 38) (%closure-ref self$673 39)) (cell (%closure-ref self$673 30)))) (%closure-ref self$672 1) (%closure-ref self$672 2) (%closure-ref self$672 3) (%closure-ref self$672 4) (%closure-ref self$672 5) (%closure-ref self$672 6) (%closure-ref self$672 7) (%closure-ref self$672 8) (%closure-ref self$672 9) get-name$147 (%closure-ref self$672 10) (%closure-ref self$672 11) (%closure-ref self$672 12) (%closure-ref self$672 13) (%closure-ref self$672 14) (%closure-ref self$672 15) (%closure-ref self$672 16) (%closure-ref self$672 17) (%closure-ref self$672 18) (%closure-ref self$672 19) (%closure-ref self$672 20) (%closure-ref self$672 21) (%closure-ref self$672 22) (%closure-ref self$672 23) (%closure-ref self$672 25) (%closure-ref self$672 26) (%closure-ref self$672 27) (%closure-ref self$672 28) (%closure-ref self$672 29) (%closure-ref self$672 30) (%closure-ref self$672 31) (%closure-ref self$672 32) (%closure-ref self$672 33) (%closure-ref self$672 34) (%closure-ref self$672 35) (%closure-ref self$672 36) (%closure-ref self$672 37) (%closure-ref self$672 38) (%closure-ref self$672 39)) (cell (%closure-ref self$672 24)))) (%closure-ref self$671 1) (%closure-ref self$671 2) (%closure-ref self$671 3) (%closure-ref self$671 4) (%closure-ref self$671 5) (%closure-ref self$671 6) (%closure-ref self$671 7) (%closure-ref self$671 8) get-lemmas$148 (%closure-ref self$671 10) (%closure-ref self$671 11) (%closure-ref self$671 12) (%closure-ref self$671 13) (%closure-ref self$671 14) (%closure-ref self$671 15) (%closure-ref self$671 16) (%closure-ref self$671 17) (%closure-ref self$671 18) (%closure-ref self$671 19) (%closure-ref self$671 20) (%closure-ref self$671 21) (%closure-ref self$671 22) (%closure-ref self$671 23) (%closure-ref self$671 24) (%closure-ref self$671 25) (%closure-ref self$671 26) (%closure-ref self$671 27) (%closure-ref self$671 28) (%closure-ref self$671 29) (%closure-ref self$671 30) (%closure-ref self$671 31) (%closure-ref self$671 32) (%closure-ref self$671 33) (%closure-ref self$671 34) (%closure-ref self$671 35) (%closure-ref self$671 36) (%closure-ref self$671 37) (%closure-ref self$671 38) (%closure-ref self$671 39)) (cell (%closure-ref self$671 9)))) (%closure-ref self$670 1) (%closure-ref self$670 2) (%closure-ref self$670 3) (%closure-ref self$670 4) (%closure-ref self$670 5) (%closure-ref self$670 6) (%closure-ref self$670 7) (%closure-ref self$670 8) (%closure-ref self$670 10) (%closure-ref self$670 11) (%closure-ref self$670 12) (%closure-ref self$670 13) (%closure-ref self$670 14) (%closure-ref self$670 15) (%closure-ref self$670 16) put-lemmas!$149 (%closure-ref self$670 17) (%closure-ref self$670 18) (%closure-ref self$670 19) (%closure-ref self$670 20) (%closure-ref self$670 21) (%closure-ref self$670 22) (%closure-ref self$670 23) (%closure-ref self$670 24) (%closure-ref self$670 25) (%closure-ref self$670 26) (%closure-ref self$670 27) (%closure-ref self$670 28) (%closure-ref self$670 29) (%closure-ref self$670 30) (%closure-ref self$670 31) (%closure-ref self$670 32) (%closure-ref self$670 33) (%closure-ref self$670 34) (%closure-ref self$670 35) (%closure-ref self$670 36) (%closure-ref self$670 37) (%closure-ref self$670 38) (%closure-ref self$670 39)) (cell (%closure-ref self$670 9)))) (%closure-ref self$669 1) (%closure-ref self$669 2) (%closure-ref self$669 3) (%closure-ref self$669 4) (%closure-ref self$669 5) (%closure-ref self$669 6) (%closure-ref self$669 7) (%closure-ref self$669 8) (%closure-ref self$669 9) (%closure-ref self$669 10) (%closure-ref self$669 11) make-symbol-record$150 (%closure-ref self$669 12) (%closure-ref self$669 13) (%closure-ref self$669 14) (%closure-ref self$669 15) (%closure-ref self$669 17) (%closure-ref self$669 18) (%closure-ref self$669 19) (%closure-ref self$669 20) (%closure-ref self$669 21) (%closure-ref self$669 22) (%closure-ref self$669 23) (%closure-ref self$669 24) (%closure-ref self$669 25) (%closure-ref self$669 26) (%closure-ref self$669 27) (%closure-ref self$669 28) (%closure-ref self$669 29) (%closure-ref self$669 30) (%closure-ref self$669 31) (%closure-ref self$669 32) (%closure-ref self$669 33) (%closure-ref self$669 34) (%closure-ref self$669 35) (%closure-ref self$669 36) (%closure-ref self$669 37) (%closure-ref self$669 38) (%closure-ref self$669 39)) (cell (%closure-ref self$669 16)))) *symbol-records-alist*$151 (%closure-ref self$668 1) (%closure-ref self$668 2) (%closure-ref self$668 3) (%closure-ref self$668 4) (%closure-ref self$668 5) (%closure-ref self$668 6) (%closure-ref self$668 7) (%closure-ref self$668 8) (%closure-ref self$668 9) (%closure-ref self$668 10) (%closure-ref self$668 12) (%closure-ref self$668 13) (%closure-ref self$668 14) (%closure-ref self$668 15) (%closure-ref self$668 16) (%closure-ref self$668 17) (%closure-ref self$668 18) (%closure-ref self$668 19) (%closure-ref self$668 20) (%closure-ref self$668 21) (%closure-ref self$668 22) (%closure-ref self$668 23) (%closure-ref self$668 24) (%closure-ref self$668 25) (%closure-ref self$668 26) (%closure-ref self$668 27) (%closure-ref self$668 28) (%closure-ref self$668 29) (%closure-ref self$668 30) (%closure-ref self$668 31) (%closure-ref self$668 32) (%closure-ref self$668 33) (%closure-ref self$668 34) (%closure-ref self$668 35) (%closure-ref self$668 36) (%closure-ref self$668 37) (%closure-ref self$668 38) (%closure-ref self$668 39)) (cell (%closure-ref self$668 11)))) (%closure-ref self$667 2) (%closure-ref self$667 3) (%closure-ref self$667 4) (%closure-ref self$667 5) (%closure-ref self$667 6) (%closure-ref self$667 7) (%closure-ref self$667 8) (%closure-ref self$667 9) (%closure-ref self$667 10) (%closure-ref self$667 11) (%closure-ref self$667 12) (%closure-ref self$667 13) (%closure-ref self$667 14) (%closure-ref self$667 15) (%closure-ref self$667 16) (%closure-ref self$667 17) (%closure-ref self$667 18) (%closure-ref self$667 19) (%closure-ref self$667 20) (%closure-ref self$667 21) (%closure-ref self$667 22) (%closure-ref self$667 23) symbol->symbol-record$152 (%closure-ref self$667 24) (%closure-ref self$667 25) (%closure-ref self$667 26) (%closure-ref self$667 27) (%closure-ref self$667 28) (%closure-ref self$667 29) (%closure-ref self$667 30) (%closure-ref self$667 31) (%closure-ref self$667 32) (%closure-ref self$667 33) (%closure-ref self$667 34) (%closure-ref self$667 35) (%closure-ref self$667 36) (%closure-ref self$667 37) (%closure-ref self$667 38) (%closure-ref self$667 39)) (cell (%closure-ref self$667 1)))) (%closure-ref self$666 1) (%closure-ref self$666 2) (%closure-ref self$666 3) (%closure-ref self$666 4) (%closure-ref self$666 5) (%closure-ref self$666 6) (%closure-ref self$666 7) get$153 (%closure-ref self$666 8) (%closure-ref self$666 9) (%closure-ref self$666 10) (%closure-ref self$666 11) (%closure-ref self$666 12) (%closure-ref self$666 13) (%closure-ref self$666 14) (%closure-ref self$666 15) (%closure-ref self$666 16) (%closure-ref self$666 17) (%closure-ref self$666 18) (%closure-ref self$666 19) (%closure-ref self$666 20) (%closure-ref self$666 21) (%closure-ref self$666 22) (%closure-ref self$666 24) (%closure-ref self$666 25) (%closure-ref self$666 26) (%closure-ref self$666 27) (%closure-ref self$666 28) (%closure-ref self$666 29) (%closure-ref self$666 30) (%closure-ref self$666 31) (%closure-ref self$666 32) (%closure-ref self$666 33) (%closure-ref self$666 34) (%closure-ref self$666 35) (%closure-ref self$666 36) (%closure-ref self$666 37) (%closure-ref self$666 38) (%closure-ref self$666 39)) (cell (%closure-ref self$666 23)))) (%closure-ref self$665 1) (%closure-ref self$665 2) (%closure-ref self$665 3) (%closure-ref self$665 4) (%closure-ref self$665 5) (%closure-ref self$665 6) (%closure-ref self$665 7) (%closure-ref self$665 9) (%closure-ref self$665 10) (%closure-ref self$665 11) (%closure-ref self$665 12) (%closure-ref self$665 13) (%closure-ref self$665 14) (%closure-ref self$665 15) put$154 (%closure-ref self$665 16) (%closure-ref self$665 17) (%closure-ref self$665 18) (%closure-ref self$665 19) (%closure-ref self$665 20) (%closure-ref self$665 21) (%closure-ref self$665 22) (%closure-ref self$665 23) (%closure-ref self$665 24) (%closure-ref self$665 25) (%closure-ref self$665 26) (%closure-ref self$665 27) (%closure-ref self$665 28) (%closure-ref self$665 29) (%closure-ref self$665 30) (%closure-ref self$665 31) (%closure-ref self$665 32) (%closure-ref self$665 33) (%closure-ref self$665 34) (%closure-ref self$665 35) (%closure-ref self$665 36) (%closure-ref self$665 37) (%closure-ref self$665 38) (%closure-ref self$665 39)) (cell (%closure-ref self$665 8)))) (%closure-ref self$664 1) (%closure-ref self$664 2) (%closure-ref self$664 3) (%closure-ref self$664 4) (%closure-ref self$664 5) (%closure-ref self$664 6) (%closure-ref self$664 7) (%closure-ref self$664 8) (%closure-ref self$664 9) (%closure-ref self$664 10) (%closure-ref self$664 11) (%closure-ref self$664 12) (%closure-ref self$664 13) (%closure-ref self$664 14) (%closure-ref self$664 15) (%closure-ref self$664 17) (%closure-ref self$664 18) (%closure-ref self$664 19) (%closure-ref self$664 20) (%closure-ref self$664 21) (%closure-ref self$664 22) (%closure-ref self$664 23) (%closure-ref self$664 24) (%closure-ref self$664 25) (%closure-ref self$664 26) (%closure-ref self$664 27) (%closure-ref self$664 28) (%closure-ref self$664 29) (%closure-ref self$664 30) (%closure-ref self$664 31) (%closure-ref self$664 32) (%closure-ref self$664 33) (%closure-ref self$664 34) (%closure-ref self$664 35) (%closure-ref self$664 36) (%closure-ref self$664 37) (%closure-ref self$664 38) (%closure-ref self$664 39) untranslate-term$155) (cell (%closure-ref self$664 16)))) (%closure-ref self$663 1) (%closure-ref self$663 2) (%closure-ref self$663 3) (%closure-ref self$663 4) (%closure-ref self$663 5) (%closure-ref self$663 6) (%closure-ref self$663 7) (%closure-ref self$663 8) (%closure-ref self$663 9) (%closure-ref self$663 10) (%closure-ref self$663 11) (%closure-ref self$663 12) (%closure-ref self$663 13) (%closure-ref self$663 14) (%closure-ref self$663 15) (%closure-ref self$663 16) (%closure-ref self$663 17) (%closure-ref self$663 18) (%closure-ref self$663 19) (%closure-ref self$663 20) (%closure-ref self$663 21) (%closure-ref self$663 22) (%closure-ref self$663 23) (%closure-ref self$663 24) (%closure-ref self$663 25) (%closure-ref self$663 26) (%closure-ref self$663 27) (%closure-ref self$663 28) (%closure-ref self$663 29) (%closure-ref self$663 30) (%closure-ref self$663 31) (%closure-ref self$663 32) (%closure-ref self$663 33) (%closure-ref self$663 34) translate-args$156 (%closure-ref self$663 35) (%closure-ref self$663 36) (%closure-ref self$663 37) (%closure-ref self$663 38)) (cell (%closure-ref self$663 39)))) (%closure-ref self$662 1) (%closure-ref self$662 2) (%closure-ref self$662 3) (%closure-ref self$662 4) (%closure-ref self$662 5) (%closure-ref self$662 6) (%closure-ref self$662 7) (%closure-ref self$662 8) (%closure-ref self$662 9) (%closure-ref self$662 10) (%closure-ref self$662 11) (%closure-ref self$662 12) (%closure-ref self$662 13) (%closure-ref self$662 14) (%closure-ref self$662 15) (%closure-ref self$662 16) (%closure-ref self$662 17) (%closure-ref self$662 18) (%closure-ref self$662 19) (%closure-ref self$662 20) (%closure-ref self$662 21) (%closure-ref self$662 22) (%closure-ref self$662 23) (%closure-ref self$662 24) (%closure-ref self$662 25) (%closure-ref self$662 26) (%closure-ref self$662 27) (%closure-ref self$662 28) (%closure-ref self$662 29) (%closure-ref self$662 30) (%closure-ref self$662 31) (%closure-ref self$662 32) (%closure-ref self$662 33) (%closure-ref self$662 34) translate-term$157 (%closure-ref self$662 36) (%closure-ref self$662 37) (%closure-ref self$662 38) (%closure-ref self$662 39)) (cell (%closure-ref self$662 35)))) (%closure-ref self$661 1) add-lemma$158 (%closure-ref self$661 2) (%closure-ref self$661 3) (%closure-ref self$661 4) (%closure-ref self$661 5) (%closure-ref self$661 6) (%closure-ref self$661 7) (%closure-ref self$661 8) (%closure-ref self$661 9) (%closure-ref self$661 10) (%closure-ref self$661 11) (%closure-ref self$661 12) (%closure-ref self$661 13) (%closure-ref self$661 14) (%closure-ref self$661 15) (%closure-ref self$661 16) (%closure-ref self$661 17) (%closure-ref self$661 18) (%closure-ref self$661 19) (%closure-ref self$661 20) (%closure-ref self$661 21) (%closure-ref self$661 22) (%closure-ref self$661 23) (%closure-ref self$661 24) (%closure-ref self$661 25) (%closure-ref self$661 26) (%closure-ref self$661 27) (%closure-ref self$661 28) (%closure-ref self$661 29) (%closure-ref self$661 30) (%closure-ref self$661 31) (%closure-ref self$661 32) (%closure-ref self$661 33) (%closure-ref self$661 34) (%closure-ref self$661 36) (%closure-ref self$661 37) (%closure-ref self$661 38) (%closure-ref self$661 39)) (cell (%closure-ref self$661 35)))) (%closure-ref self$660 1) add-lemma-lst$159 (%closure-ref self$660 3) (%closure-ref self$660 4) (%closure-ref self$660 5) (%closure-ref self$660 6) (%closure-ref self$660 7) (%closure-ref self$660 8) (%closure-ref self$660 9) (%closure-ref self$660 10) (%closure-ref self$660 11) (%closure-ref self$660 12) (%closure-ref self$660 13) (%closure-ref self$660 14) (%closure-ref self$660 15) (%closure-ref self$660 16) (%closure-ref self$660 17) (%closure-ref self$660 18) (%closure-ref self$660 19) (%closure-ref self$660 20) (%closure-ref self$660 21) (%closure-ref self$660 22) (%closure-ref self$660 23) (%closure-ref self$660 24) (%closure-ref self$660 25) (%closure-ref self$660 26) (%closure-ref self$660 27) (%closure-ref self$660 28) (%closure-ref self$660 29) (%closure-ref self$660 30) (%closure-ref self$660 31) (%closure-ref self$660 32) (%closure-ref self$660 33) (%closure-ref self$660 34) (%closure-ref self$660 35) (%closure-ref self$660 36) (%closure-ref self$660 37) (%closure-ref self$660 38) (%closure-ref self$660 39)) (cell (%closure-ref self$660 2)))) (%closure-ref self$659 1) (%closure-ref self$659 2) (%closure-ref self$659 4) (%closure-ref self$659 5) (%closure-ref self$659 6) (%closure-ref self$659 7) (%closure-ref self$659 8) (%closure-ref self$659 9) (%closure-ref self$659 10) (%closure-ref self$659 11) (%closure-ref self$659 12) (%closure-ref self$659 13) (%closure-ref self$659 14) (%closure-ref self$659 15) (%closure-ref self$659 16) (%closure-ref self$659 17) (%closure-ref self$659 18) (%closure-ref self$659 19) (%closure-ref self$659 20) (%closure-ref self$659 21) (%closure-ref self$659 22) setup$160 (%closure-ref self$659 23) (%closure-ref self$659 24) (%closure-ref self$659 25) (%closure-ref self$659 26) (%closure-ref self$659 27) (%closure-ref self$659 28) (%closure-ref self$659 29) (%closure-ref self$659 30) (%closure-ref self$659 31) (%closure-ref self$659 32) (%closure-ref self$659 33) (%closure-ref self$659 34) (%closure-ref self$659 35) (%closure-ref self$659 36) (%closure-ref self$659 37) (%closure-ref self$659 38) (%closure-ref self$659 39)) (cell (%closure-ref self$659 3)))) *symbol-records-alist*$151 add-lemma$158 add-lemma-lst$159 apply-subst$143 apply-subst-lst$142 false-term$127 falsep$129 get$153 get-lemmas$148 get-name$147 if-constructor$139 make-symbol-record$150 one-way-unify$132 one-way-unify1$131 one-way-unify1-lst$130 put$154 put-lemmas!$149 rewrite$136 rewrite-args$135 rewrite-count$138 rewrite-with-lemmas$134 scons$137 symbol->symbol-record$152 symbol-record-equal?$146 tautologyp$140 tautp$141 term-args-equal?$122 term-equal?$123 term-member?$121 test$145 trans-of-implies$125 trans-of-implies1$124 translate-alist$144 translate-args$156 translate-term$157 true-term$126 truep$128 unify-subst$133 untranslate-term$155) (cell setup$160))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)))) (set-global! term r$576))) (quote (implies (and (implies x y) (and (implies y z) (and (implies z u) (implies u w)))) (implies x w))))) (set-global! alist r$577))) (quote ((x f (plus (plus a b) (plus c (zero)))) (y f (times (times a b) (plus c d))) (z f (reverse (append (append a b) (nil)))) (u equal (plus a b) (difference x y)) (w lessp (remainder a b) (member a (length b))))))) 0)))) #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f #f)) */ -/* -"---------------- C code:" */ -#define closcall0(td,clo) ((clo)->fn)(td,0,clo) -#define return_closcall0(td, clo) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[0]; \ - GC(td,clo,buf,0); return; \ - } else {closcall0(td,(closure) (clo)); return;}} - -#define return_direct0(td, _fn) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[0]; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 0); return; \ - } else { (_fn)(td,0,(closure)_fn); }} - -#define closcall1(td,clo,a1) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,0, (closure)(a1), clo); } else { ((clo)->fn)(td,1,clo,a1);} -#define return_closcall1(td, clo,a1) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[1]; buf[0] = a1;\ - GC(td,clo,buf,1); return; \ - } else {closcall1(td,(closure) (clo),a1); return;}} - -#define return_direct1(td, _fn,a1) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[1]; buf[0] = a1; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 1); return; \ - } else { (_fn)(td,1,(closure)_fn,a1); }} - -#define closcall2(td,clo,a1,a2) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,1, (closure)(a1), clo,a2); } else { ((clo)->fn)(td,2,clo,a1,a2);} -#define return_closcall2(td, clo,a1,a2) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[2]; buf[0] = a1;buf[1] = a2;\ - GC(td,clo,buf,2); return; \ - } else {closcall2(td,(closure) (clo),a1,a2); return;}} - -#define return_direct2(td, _fn,a1,a2) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[2]; buf[0] = a1;buf[1] = a2; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 2); return; \ - } else { (_fn)(td,2,(closure)_fn,a1,a2); }} - -#define closcall3(td,clo,a1,a2,a3) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,2, (closure)(a1), clo,a2,a3); } else { ((clo)->fn)(td,3,clo,a1,a2,a3);} -#define return_closcall3(td, clo,a1,a2,a3) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[3]; buf[0] = a1;buf[1] = a2;buf[2] = a3;\ - GC(td,clo,buf,3); return; \ - } else {closcall3(td,(closure) (clo),a1,a2,a3); return;}} - -#define return_direct3(td, _fn,a1,a2,a3) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[3]; buf[0] = a1;buf[1] = a2;buf[2] = a3; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 3); return; \ - } else { (_fn)(td,3,(closure)_fn,a1,a2,a3); }} - -#define closcall4(td,clo,a1,a2,a3,a4) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,3, (closure)(a1), clo,a2,a3,a4); } else { ((clo)->fn)(td,4,clo,a1,a2,a3,a4);} -#define return_closcall4(td, clo,a1,a2,a3,a4) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[4]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;\ - GC(td,clo,buf,4); return; \ - } else {closcall4(td,(closure) (clo),a1,a2,a3,a4); return;}} - -#define return_direct4(td, _fn,a1,a2,a3,a4) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[4]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 4); return; \ - } else { (_fn)(td,4,(closure)_fn,a1,a2,a3,a4); }} - -#define closcall5(td,clo,a1,a2,a3,a4,a5) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,4, (closure)(a1), clo,a2,a3,a4,a5); } else { ((clo)->fn)(td,5,clo,a1,a2,a3,a4,a5);} -#define return_closcall5(td, clo,a1,a2,a3,a4,a5) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[5]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;buf[4] = a5;\ - GC(td,clo,buf,5); return; \ - } else {closcall5(td,(closure) (clo),a1,a2,a3,a4,a5); return;}} - -#define return_direct5(td, _fn,a1,a2,a3,a4,a5) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[5]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;buf[4] = a5; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 5); return; \ - } else { (_fn)(td,5,(closure)_fn,a1,a2,a3,a4,a5); }} - -#define closcall40(td,clo,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39,a40) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,39, (closure)(a1), clo,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39,a40); } else { ((clo)->fn)(td,40,clo,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39,a40);} -#define return_closcall40(td, clo,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39,a40) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[40]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;buf[4] = a5;buf[5] = a6;buf[6] = a7;buf[7] = a8;buf[8] = a9;buf[9] = a10;buf[10] = a11;buf[11] = a12;buf[12] = a13;buf[13] = a14;buf[14] = a15;buf[15] = a16;buf[16] = a17;buf[17] = a18;buf[18] = a19;buf[19] = a20;buf[20] = a21;buf[21] = a22;buf[22] = a23;buf[23] = a24;buf[24] = a25;buf[25] = a26;buf[26] = a27;buf[27] = a28;buf[28] = a29;buf[29] = a30;buf[30] = a31;buf[31] = a32;buf[32] = a33;buf[33] = a34;buf[34] = a35;buf[35] = a36;buf[36] = a37;buf[37] = a38;buf[38] = a39;buf[39] = a40;\ - GC(td,clo,buf,40); return; \ - } else {closcall40(td,(closure) (clo),a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39,a40); return;}} - -#define return_direct40(td, _fn,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39,a40) { \ - char top; \ - if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ - object buf[40]; buf[0] = a1;buf[1] = a2;buf[2] = a3;buf[3] = a4;buf[4] = a5;buf[5] = a6;buf[6] = a7;buf[7] = a8;buf[8] = a9;buf[9] = a10;buf[10] = a11;buf[11] = a12;buf[12] = a13;buf[13] = a14;buf[14] = a15;buf[15] = a16;buf[16] = a17;buf[17] = a18;buf[18] = a19;buf[19] = a20;buf[20] = a21;buf[21] = a22;buf[22] = a23;buf[23] = a24;buf[24] = a25;buf[25] = a26;buf[26] = a27;buf[27] = a28;buf[28] = a29;buf[29] = a30;buf[30] = a31;buf[31] = a32;buf[32] = a33;buf[33] = a34;buf[34] = a35;buf[35] = a36;buf[36] = a37;buf[37] = a38;buf[38] = a39;buf[39] = a40; \ - mclosure0(c1, _fn); \ - GC(td, &c1, buf, 40); return; \ - } else { (_fn)(td,40,(closure)_fn,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39,a40); }} - -#include "cyclone/types.h" -object __glo_run_91r7rs_91benchmark = nil; -object __glo_hide = nil; -object __glo_test_91boyer = nil; -object __glo_setup_91boyer = nil; -object __glo_term = nil; -object __glo_alist = nil; -object __glo_main = nil; -extern object __glo_cons_91source_scheme_base; -extern object __glo_syntax_91rules_scheme_base; -extern object __glo_letrec_85_scheme_base; -extern object __glo_guard_scheme_base; -extern object __glo_guard_91aux_scheme_base; -extern object __glo_receive_scheme_base; -extern object __glo_abs_scheme_base; -extern object __glo_max_scheme_base; -extern object __glo_min_scheme_base; -extern object __glo_modulo_scheme_base; -extern object __glo_floor_91remainder_scheme_base; -extern object __glo_even_127_scheme_base; -extern object __glo_exact_91integer_127_scheme_base; -extern object __glo_exact_127_scheme_base; -extern object __glo_inexact_127_scheme_base; -extern object __glo_odd_127_scheme_base; -extern object __glo_complex_127_scheme_base; -extern object __glo_rational_127_scheme_base; -extern object __glo_gcd_scheme_base; -extern object __glo_lcm_scheme_base; -extern object __glo_quotient_scheme_base; -extern object __glo_remainder_scheme_base; -extern object __glo_truncate_91quotient_scheme_base; -extern object __glo_truncate_91remainder_scheme_base; -extern object __glo_truncate_95_scheme_base; -extern object __glo_floor_91quotient_scheme_base; -extern object __glo_floor_91remainder_scheme_base; -extern object __glo_floor_95_scheme_base; -extern object __glo_square_scheme_base; -extern object __glo_expt_scheme_base; -extern object __glo_call_91with_91current_91continuation_scheme_base; -extern object __glo_call_95cc_scheme_base; -extern object __glo_call_91with_91values_scheme_base; -extern object __glo_dynamic_91wind_scheme_base; -extern object __glo_values_scheme_base; -extern object __glo_char_123_127_scheme_base; -extern object __glo_char_121_127_scheme_base; -extern object __glo_char_125_127_scheme_base; -extern object __glo_char_121_123_127_scheme_base; -extern object __glo_char_125_123_127_scheme_base; -extern object __glo_string_123_127_scheme_base; -extern object __glo_string_121_127_scheme_base; -extern object __glo_string_121_123_127_scheme_base; -extern object __glo_string_125_127_scheme_base; -extern object __glo_string_125_123_127_scheme_base; -extern object __glo_foldl_scheme_base; -extern object __glo_foldr_scheme_base; -extern object __glo_not_scheme_base; -extern object __glo_list_127_scheme_base; -extern object __glo_zero_127_scheme_base; -extern object __glo_positive_127_scheme_base; -extern object __glo_negative_127_scheme_base; -extern object __glo_append_scheme_base; -extern object __glo__list_scheme_base; -extern object __glo_make_91list_scheme_base; -extern object __glo_list_91copy_scheme_base; -extern object __glo_map_scheme_base; -extern object __glo_for_91each_scheme_base; -extern object __glo_list_91tail_scheme_base; -extern object __glo_list_91ref_scheme_base; -extern object __glo_list_91set_67_scheme_base; -extern object __glo_reverse_scheme_base; -extern object __glo_boolean_123_127_scheme_base; -extern object __glo_symbol_123_127_scheme_base; -extern object __glo_Cyc_91obj_123_127_scheme_base; -extern object __glo_vector_scheme_base; -extern object __glo_vector_91append_scheme_base; -extern object __glo_vector_91copy_scheme_base; -extern object __glo_vector_91copy_67_scheme_base; -extern object __glo_vector_91fill_67_scheme_base; -extern object __glo_vector_91_125list_scheme_base; -extern object __glo_vector_91_125string_scheme_base; -extern object __glo_vector_91map_scheme_base; -extern object __glo_vector_91for_91each_scheme_base; -extern object __glo_make_91string_scheme_base; -extern object __glo_string_scheme_base; -extern object __glo_string_91copy_scheme_base; -extern object __glo_string_91copy_67_scheme_base; -extern object __glo_string_91fill_67_scheme_base; -extern object __glo_string_91_125list_scheme_base; -extern object __glo_string_91_125vector_scheme_base; -extern object __glo_string_91map_scheme_base; -extern object __glo_string_91for_91each_scheme_base; -extern object __glo_make_91parameter_scheme_base; -extern object __glo_current_91output_91port_scheme_base; -extern object __glo_current_91input_91port_scheme_base; -extern object __glo_current_91error_91port_scheme_base; -extern object __glo_call_91with_91port_scheme_base; -extern object __glo_error_scheme_base; -extern object __glo_raise_scheme_base; -extern object __glo_raise_91continuable_scheme_base; -extern object __glo_with_91exception_91handler_scheme_base; -extern object __glo_Cyc_91add_91exception_91handler_scheme_base; -extern object __glo_Cyc_91remove_91exception_91handler_scheme_base; -extern object __glo_newline_scheme_base; -extern object __glo_write_91char_scheme_base; -extern object __glo_write_91string_scheme_base; -extern object __glo_flush_91output_91port_scheme_base; -extern object __glo_read_91line_scheme_base; -extern object __glo_read_91string_scheme_base; -extern object __glo_input_91port_127_scheme_base; -extern object __glo_output_91port_127_scheme_base; -extern object __glo_input_91port_91open_127_scheme_base; -extern object __glo_output_91port_91open_127_scheme_base; -extern object __glo_features_scheme_base; -extern object __glo_any_scheme_base; -extern object __glo_every_scheme_base; -extern object __glo_and_scheme_base; -extern object __glo_or_scheme_base; -extern object __glo_let_scheme_base; -extern object __glo_let_85_scheme_base; -extern object __glo_letrec_scheme_base; -extern object __glo_begin_scheme_base; -extern object __glo__case_scheme_base; -extern object __glo_cond_scheme_base; -extern object __glo_cond_91expand_scheme_base; -extern object __glo__do_scheme_base; -extern object __glo_when_scheme_base; -extern object __glo_unless_scheme_base; -extern object __glo_quasiquote_scheme_base; -extern object __glo_floor_scheme_base; -extern object __glo_ceiling_scheme_base; -extern object __glo_truncate_scheme_base; -extern object __glo_round_scheme_base; -extern object __glo_exact_scheme_base; -extern object __glo_inexact_scheme_base; -extern object __glo_eof_91object_scheme_base; -extern object __glo_syntax_91error_scheme_base; -extern object __glo_bytevector_91copy_scheme_base; -extern object __glo_utf8_91_125string_scheme_base; -extern object __glo_string_91_125utf8_scheme_base; -extern object __glo_denominator_scheme_base; -extern object __glo_numerator_scheme_base; -extern object __glo_caaaaar_scheme_cxr; -extern object __glo_read_scheme_read; -extern object __glo_read_91all_scheme_read; -extern object __glo_display_scheme_write; -extern object __glo_write_scheme_write; -extern object __glo_current_91second_scheme_time; -extern object __glo_current_91jiffy_scheme_time; -extern object __glo_jiffies_91per_91second_scheme_time; -#include "cyclone/runtime.h" -#include "cyclone/runtime-main.h" -defsymbol(u); -defsymbol(mem); -defsymbol(val); -defsymbol(set); -defsymbol(get); -defsymbol(cdr); -defsymbol(assignedp); -defsymbol(assignment); -defsymbol(car); -defsymbol(last); -defsymbol(sigma); -defsymbol(x7); -defsymbol(x6); -defsymbol(x5); -defsymbol(x4); -defsymbol(x3); -defsymbol(x2); -defsymbol(x1); -defsymbol(dsort); -defsymbol(sort2); -defsymbol(delete); -defsymbol(prime_91list); -defsymbol(times_91list); -defsymbol(greatest_91factor); -defsymbol(samefringe); -defsymbol(gopher); -defsymbol(listp); -defsymbol(nlistp); -defsymbol(value); -defsymbol(w); -defsymbol(gcd); -defsymbol(power_91rep); -defsymbol(big_91plus); -defsymbol(base); -defsymbol(big_91plus1); -defsymbol(power_91eval); -defsymbol(quotient); -defsymbol(sort_91lp); -defsymbol(count_91list); -defsymbol(k); -defsymbol(j); -defsymbol(exp); -defsymbol(nth); -defsymbol(intersect); -defsymbol(length); -defsymbol(member); -defsymbol(flatten); -defsymbol(mc_91flatten); -defsymbol(envrn); -defsymbol(pds); -defsymbol(exec); -defsymbol(times); -defsymbol(plus_91fringe); -defsymbol(append); -defsymbol(plus_91tree); -defsymbol(meaning); -defsymbol(difference); -defsymbol(z); -defsymbol(plus); -defsymbol(e); -defsymbol(d); -defsymbol(c); -defsymbol(b); -defsymbol(a); -defsymbol(numberp); -defsymbol(q); -defsymbol(p); -defsymbol(prime1); -defsymbol(add1); -defsymbol(prime); -defsymbol(falsify1); -defsymbol(falsify); -defsymbol(normalize); -defsymbol(tautologyp); -defsymbol(tautology_91checker); -defsymbol(assume_91false); -defsymbol(cons); -defsymbol(alist); -defsymbol(var); -defsymbol(assume_91true); -defsymbol(remainder); -defsymbol(divides); -defsymbol(reverse_91loop); -defsymbol(reverse_91); -defsymbol(fact_91loop); -defsymbol(i); -defsymbol(fact_91); -defsymbol(zero); -defsymbol(countps_91loop); -defsymbol(pred); -defsymbol(l); -defsymbol(countps_91); -defsymbol(_1911_91); -defsymbol(odd); -defsymbol(zerop); -defsymbol(even1); -defsymbol(iff); -defsymbol(boolean); -defsymbol(greatereqp); -defsymbol(not); -defsymbol(lesseqp); -defsymbol(lessp); -defsymbol(greaterp); -defsymbol(fix); -defsymbol(y); -defsymbol(x); -defsymbol(eqp); -defsymbol(nil); -defsymbol(optimize); -defsymbol(codegen); -defsymbol(reverse); -defsymbol(form); -defsymbol(compile); -defsymbol(lemmas); -defsymbol(equal); -defsymbol(or); -defsymbol(_85); -defsymbol(and); -defsymbol(implies); -defsymbol(_if); -defsymbol(f); -defsymbol(t); -static void __lambda_492(void *data, int argc, closure _,object _85symbol_91records_91alist_85_73120, object add_91lemma_73119, object add_91lemma_91lst_73118, object apply_91subst_73117, object apply_91subst_91lst_73116, object false_91term_73115, object falsep_73114, object get_73113, object get_91lemmas_73112, object get_91name_73111, object if_91constructor_73110, object make_91symbol_91record_73109, object one_91way_91unify_73108, object one_91way_91unify1_73107, object one_91way_91unify1_91lst_73106, object put_73105, object put_91lemmas_67_73104, object rewrite_73103, object rewrite_91args_73102, object rewrite_91count_73101, object rewrite_91with_91lemmas_73100, object scons_7399, object setup_7398, object symbol_91_125symbol_91record_7397, object symbol_91record_91equal_127_7396, object tautologyp_7395, object tautp_7394, object term_91args_91equal_127_7393, object term_91equal_127_7392, object term_91member_127_7391, object test_7390, object trans_91of_91implies_7389, object trans_91of_91implies1_7388, object translate_91alist_7387, object translate_91args_7386, object translate_91term_7385, object true_91term_7384, object truep_7383, object unify_91subst_7382, object untranslate_91term_7381) ; -static void __lambda_491(void *data, int argc, closure _) ; -static void __lambda_490(void *data, int argc, closure _,object r_73265) ; -static void __lambda_489(void *data, int argc, closure _,object r_73577) ; -static void __lambda_488(void *data, int argc, closure _,object r_73266) ; -static void __lambda_487(void *data, int argc, closure _,object r_73576) ; -static void __lambda_486(void *data, int argc, closure _,object r_73267) ; -static void __lambda_485(void *data, int argc, closure _) ; -static void __lambda_484(void *data, int argc, closure _,object setup_73160, object add_91lemma_91lst_73159, object add_91lemma_73158, object translate_91term_73157, object translate_91args_73156, object untranslate_91term_73155, object put_73154, object get_73153, object symbol_91_125symbol_91record_73152, object _85symbol_91records_91alist_85_73151, object make_91symbol_91record_73150, object put_91lemmas_67_73149, object get_91lemmas_73148, object get_91name_73147, object symbol_91record_91equal_127_73146, object test_73145, object translate_91alist_73144, object apply_91subst_73143, object apply_91subst_91lst_73142, object tautp_73141, object tautologyp_73140, object if_91constructor_73139, object rewrite_91count_73138, object scons_73137, object rewrite_73136, object rewrite_91args_73135, object rewrite_91with_91lemmas_73134, object unify_91subst_73133, object one_91way_91unify_73132, object one_91way_91unify1_73131, object one_91way_91unify1_91lst_73130, object falsep_73129, object truep_73128, object false_91term_73127, object true_91term_73126, object trans_91of_91implies_73125, object trans_91of_91implies1_73124, object term_91equal_127_73123, object term_91args_91equal_127_73122, object term_91member_127_73121) ; -static void __lambda_483(void *data, int argc, object self_73659, object setup_73160) ; -static void __lambda_482(void *data, int argc, object self_73660, object add_91lemma_91lst_73159) ; -static void __lambda_481(void *data, int argc, object self_73661, object add_91lemma_73158) ; -static void __lambda_480(void *data, int argc, object self_73662, object translate_91term_73157) ; -static void __lambda_479(void *data, int argc, object self_73663, object translate_91args_73156) ; -static void __lambda_478(void *data, int argc, object self_73664, object untranslate_91term_73155) ; -static void __lambda_477(void *data, int argc, object self_73665, object put_73154) ; -static void __lambda_476(void *data, int argc, object self_73666, object get_73153) ; -static void __lambda_475(void *data, int argc, object self_73667, object symbol_91_125symbol_91record_73152) ; -static void __lambda_474(void *data, int argc, object self_73668, object _85symbol_91records_91alist_85_73151) ; -static void __lambda_473(void *data, int argc, object self_73669, object make_91symbol_91record_73150) ; -static void __lambda_472(void *data, int argc, object self_73670, object put_91lemmas_67_73149) ; -static void __lambda_471(void *data, int argc, object self_73671, object get_91lemmas_73148) ; -static void __lambda_470(void *data, int argc, object self_73672, object get_91name_73147) ; -static void __lambda_469(void *data, int argc, object self_73673, object symbol_91record_91equal_127_73146) ; -static void __lambda_468(void *data, int argc, object self_73674, object test_73145) ; -static void __lambda_467(void *data, int argc, object self_73675, object translate_91alist_73144) ; -static void __lambda_466(void *data, int argc, object self_73676, object apply_91subst_73143) ; -static void __lambda_465(void *data, int argc, object self_73677, object apply_91subst_91lst_73142) ; -static void __lambda_464(void *data, int argc, object self_73678, object tautp_73141) ; -static void __lambda_463(void *data, int argc, object self_73679, object tautologyp_73140) ; -static void __lambda_462(void *data, int argc, object self_73680, object if_91constructor_73139) ; -static void __lambda_461(void *data, int argc, object self_73681, object rewrite_91count_73138) ; -static void __lambda_460(void *data, int argc, object self_73682, object scons_73137) ; -static void __lambda_459(void *data, int argc, object self_73683, object rewrite_73136) ; -static void __lambda_458(void *data, int argc, object self_73684, object rewrite_91args_73135) ; -static void __lambda_457(void *data, int argc, object self_73685, object rewrite_91with_91lemmas_73134) ; -static void __lambda_456(void *data, int argc, object self_73686, object unify_91subst_73133) ; -static void __lambda_455(void *data, int argc, object self_73687, object one_91way_91unify_73132) ; -static void __lambda_454(void *data, int argc, object self_73688, object one_91way_91unify1_73131) ; -static void __lambda_453(void *data, int argc, object self_73689, object one_91way_91unify1_91lst_73130) ; -static void __lambda_452(void *data, int argc, object self_73690, object falsep_73129) ; -static void __lambda_451(void *data, int argc, object self_73691, object truep_73128) ; -static void __lambda_450(void *data, int argc, object self_73692, object false_91term_73127) ; -static void __lambda_449(void *data, int argc, object self_73693, object true_91term_73126) ; -static void __lambda_448(void *data, int argc, object self_73694, object trans_91of_91implies_73125) ; -static void __lambda_447(void *data, int argc, object self_73695, object trans_91of_91implies1_73124) ; -static void __lambda_446(void *data, int argc, object self_73696, object term_91equal_127_73123) ; -static void __lambda_445(void *data, int argc, object self_73697, object term_91args_91equal_127_73122) ; -static void __lambda_444(void *data, int argc, object self_73698, object term_91member_127_73121) ; -static void __lambda_443(void *data, int argc, object self_73699, object k_73574) ; -static void __lambda_442(void *data, int argc, object self_73700, object r_73575) ; -static void __lambda_441(void *data, int argc, object self_73701, object r_73573) ; -static void __lambda_440(void *data, int argc, object self_73702, object r_73269) ; -static void __lambda_439(void *data, int argc, object self_73703, object k_73568, object lst_73231) ; -static void __lambda_438(void *data, int argc, object self_73704, object r_73569) ; -static void __lambda_437(void *data, int argc, object self_73705) ; -static void __lambda_436(void *data, int argc, object self_73706, object r_73572) ; -static void __lambda_435(void *data, int argc, object self_73707, object r_73570) ; -static void __lambda_434(void *data, int argc, object self_73708, object r_73571) ; -static void __lambda_433(void *data, int argc, object self_73709) ; -static void __lambda_432(void *data, int argc, object self_73710, object r_73567) ; -static void __lambda_431(void *data, int argc, object self_73711, object r_73270) ; -static void __lambda_430(void *data, int argc, object self_73712, object k_73550, object term_73230) ; -static void __lambda_429(void *data, int argc, object self_73713, object r_73551) ; -static void __lambda_428(void *data, int argc, object self_73714) ; -static void __lambda_427(void *data, int argc, object self_73715) ; -static void __lambda_426(void *data, int argc, object self_73716, object r_73560) ; -static void __lambda_425(void *data, int argc, object self_73717, object r_73552) ; -static void __lambda_424(void *data, int argc, object self_73718, object r_73553) ; -static void __lambda_423(void *data, int argc, object self_73719, object r_73555) ; -static void __lambda_422(void *data, int argc, object self_73720, object r_73559) ; -static void __lambda_421(void *data, int argc, object self_73721, object r_73557) ; -static void __lambda_420(void *data, int argc, object self_73722, object r_73558) ; -static void __lambda_419(void *data, int argc, object self_73723, object r_73556) ; -static void __lambda_418(void *data, int argc, object self_73724, object r_73554) ; -static void __lambda_417(void *data, int argc, object self_73725, object k_73561) ; -static void __lambda_416(void *data, int argc, object self_73726, object r_73562) ; -static void __lambda_415(void *data, int argc, object self_73727, object r_73565) ; -static void __lambda_414(void *data, int argc, object self_73728, object r_73566) ; -static void __lambda_413(void *data, int argc, object self_73729, object r_73563) ; -static void __lambda_412(void *data, int argc, object self_73730, object r_73564) ; -static void __lambda_411(void *data, int argc, object self_73731, object r_73549) ; -static void __lambda_410(void *data, int argc, object self_73732, object r_73271) ; -static void __lambda_409(void *data, int argc, object self_73733, object k_73543, object term_73229) ; -static void __lambda_408(void *data, int argc, object self_73734, object r_73544) ; -static void __lambda_407(void *data, int argc, object self_73735) ; -static void __lambda_406(void *data, int argc, object self_73736) ; -static void __lambda_405(void *data, int argc, object self_73737, object r_73548) ; -static void __lambda_404(void *data, int argc, object self_73738, object r_73545) ; -static void __lambda_403(void *data, int argc, object self_73739, object r_73547) ; -static void __lambda_402(void *data, int argc, object self_73740, object r_73546) ; -static void __lambda_401(void *data, int argc, object self_73741, object r_73542) ; -static void __lambda_400(void *data, int argc, object self_73742, object r_73272) ; -static void __lambda_399(void *data, int argc, object self_73743, object k_73536, object lst_73228) ; -static void __lambda_398(void *data, int argc, object self_73744, object r_73537) ; -static void __lambda_397(void *data, int argc, object self_73745) ; -static void __lambda_396(void *data, int argc, object self_73746, object r_73541) ; -static void __lambda_395(void *data, int argc, object self_73747, object r_73538) ; -static void __lambda_394(void *data, int argc, object self_73748, object r_73540) ; -static void __lambda_393(void *data, int argc, object self_73749, object r_73539) ; -static void __lambda_392(void *data, int argc, object self_73750) ; -static void __lambda_391(void *data, int argc, object self_73751, object r_73535) ; -static void __lambda_390(void *data, int argc, object self_73752, object r_73273) ; -static void __lambda_389(void *data, int argc, object self_73753, object k_73529, object term_73227) ; -static void __lambda_388(void *data, int argc, object self_73754, object r_73530) ; -static void __lambda_387(void *data, int argc, object self_73755) ; -static void __lambda_386(void *data, int argc, object self_73756) ; -static void __lambda_385(void *data, int argc, object self_73757, object r_73534) ; -static void __lambda_384(void *data, int argc, object self_73758, object r_73531) ; -static void __lambda_383(void *data, int argc, object self_73759, object r_73533) ; -static void __lambda_382(void *data, int argc, object self_73760, object r_73532) ; -static void __lambda_381(void *data, int argc, object self_73761, object r_73528) ; -static void __lambda_380(void *data, int argc, object self_73762, object r_73274) ; -static void __lambda_379(void *data, int argc, object self_73763, object k_73526, object sym_73226, object property_73225, object value_73224) ; -static void __lambda_378(void *data, int argc, object self_73764, object r_73527) ; -static void __lambda_377(void *data, int argc, object self_73765, object r_73525) ; -static void __lambda_376(void *data, int argc, object self_73766, object r_73275) ; -static void __lambda_375(void *data, int argc, object self_73767, object k_73523, object sym_73223, object property_73222) ; -static void __lambda_374(void *data, int argc, object self_73768, object r_73524) ; -static void __lambda_373(void *data, int argc, object self_73769, object r_73522) ; -static void __lambda_372(void *data, int argc, object self_73770, object r_73276) ; -static void __lambda_371(void *data, int argc, object self_73771, object k_73516, object sym_73219) ; -static void __lambda_370(void *data, int argc, object self_73772, object x_73220) ; -static void __lambda_369(void *data, int argc, object self_73773, object r_73221) ; -static void __lambda_368(void *data, int argc, object self_73774, object r_73521) ; -static void __lambda_367(void *data, int argc, object self_73775, object r_73520) ; -static void __lambda_366(void *data, int argc, object self_73776, object r_73519) ; -static void __lambda_365(void *data, int argc, object self_73777, object r_73515) ; -static void __lambda_364(void *data, int argc, object self_73778, object r_73277) ; -static void __lambda_363(void *data, int argc, object self_73779, object r_73514) ; -static void __lambda_362(void *data, int argc, object self_73780, object r_73278) ; -static void __lambda_361(void *data, int argc, object self_73781, object k_73512, object sym_73218) ; -static void __lambda_360(void *data, int argc, object self_73782, object r_73513) ; -static void __lambda_359(void *data, int argc, object self_73783, object r_73511) ; -static void __lambda_358(void *data, int argc, object self_73784, object r_73279) ; -static void __lambda_357(void *data, int argc, object self_73785, object k_73510, object symbol_91record_73217, object lemmas_73216) ; -static void __lambda_356(void *data, int argc, object self_73786, object r_73509) ; -static void __lambda_355(void *data, int argc, object self_73787, object r_73280) ; -static void __lambda_354(void *data, int argc, object self_73788, object k_73508, object symbol_91record_73215) ; -static void __lambda_353(void *data, int argc, object self_73789, object r_73507) ; -static void __lambda_352(void *data, int argc, object self_73790, object r_73281) ; -static void __lambda_351(void *data, int argc, object self_73791, object k_73506, object symbol_91record_73214) ; -static void __lambda_350(void *data, int argc, object self_73792, object r_73505) ; -static void __lambda_349(void *data, int argc, object self_73793, object r_73282) ; -static void __lambda_348(void *data, int argc, object self_73794, object k_73504, object r1_73213, object r2_73212) ; -static void __lambda_347(void *data, int argc, object self_73795, object r_73503) ; -static void __lambda_346(void *data, int argc, object self_73796, object r_73283) ; -static void __lambda_345(void *data, int argc, object self_73797, object k_73490, object alist_73205, object term_73204, object n_73203) ; -static void __lambda_344(void *data, int argc, object self_73798, object r_73492) ; -static void __lambda_343(void *data, int argc, object self_73799, object term_73207, object n_73206) ; -static void __lambda_342(void *data, int argc, object self_73800, object lp_73208) ; -static void __lambda_341(void *data, int argc, object self_73801, object lp_73208) ; -static void __lambda_340(void *data, int argc, object self_73802, object k_73497, object term_73210, object n_73209) ; -static void __lambda_339(void *data, int argc, object self_73803, object r_73498) ; -static void __lambda_338(void *data, int argc, object self_73804, object r_73501) ; -static void __lambda_337(void *data, int argc, object self_73805, object r_73502) ; -static void __lambda_336(void *data, int argc, object self_73806, object r_73499) ; -static void __lambda_335(void *data, int argc, object self_73807, object r_73500) ; -static void __lambda_334(void *data, int argc, object self_73808, object r_73496) ; -static void __lambda_333(void *data, int argc, object self_73809, object r_73495) ; -static void __lambda_332(void *data, int argc, object self_73810, object r_73494) ; -static void __lambda_331(void *data, int argc, object self_73811, object r_73493) ; -static void __lambda_330(void *data, int argc, object self_73812, object term_73211) ; -static void __lambda_329(void *data, int argc, object self_73813, object r_73489) ; -static void __lambda_328(void *data, int argc, object self_73814, object r_73284) ; -static void __lambda_327(void *data, int argc, object self_73815, object k_73481, object alist_73202) ; -static void __lambda_326(void *data, int argc, object self_73816, object r_73482) ; -static void __lambda_325(void *data, int argc, object self_73817) ; -static void __lambda_324(void *data, int argc, object self_73818, object r_73486) ; -static void __lambda_323(void *data, int argc, object self_73819, object r_73488) ; -static void __lambda_322(void *data, int argc, object self_73820, object r_73487) ; -static void __lambda_321(void *data, int argc, object self_73821, object r_73483) ; -static void __lambda_320(void *data, int argc, object self_73822, object r_73485) ; -static void __lambda_319(void *data, int argc, object self_73823, object r_73484) ; -static void __lambda_318(void *data, int argc, object self_73824) ; -static void __lambda_317(void *data, int argc, object self_73825, object r_73480) ; -static void __lambda_316(void *data, int argc, object self_73826, object r_73285) ; -static void __lambda_315(void *data, int argc, object self_73827, object k_73474, object alist_73200, object term_73199) ; -static void __lambda_314(void *data, int argc, object self_73828, object r_73475) ; -static void __lambda_313(void *data, int argc, object self_73829) ; -static void __lambda_312(void *data, int argc, object self_73830, object temp_91temp_73201) ; -static void __lambda_311(void *data, int argc, object self_73831) ; -static void __lambda_310(void *data, int argc, object self_73832, object r_73476) ; -static void __lambda_309(void *data, int argc, object self_73833, object r_73478) ; -static void __lambda_308(void *data, int argc, object self_73834, object r_73477) ; -static void __lambda_307(void *data, int argc, object self_73835, object r_73473) ; -static void __lambda_306(void *data, int argc, object self_73836, object r_73286) ; -static void __lambda_305(void *data, int argc, object self_73837, object k_73467, object alist_73198, object lst_73197) ; -static void __lambda_304(void *data, int argc, object self_73838, object r_73468) ; -static void __lambda_303(void *data, int argc, object self_73839) ; -static void __lambda_302(void *data, int argc, object self_73840, object r_73472) ; -static void __lambda_301(void *data, int argc, object self_73841, object r_73469) ; -static void __lambda_300(void *data, int argc, object self_73842, object r_73471) ; -static void __lambda_299(void *data, int argc, object self_73843, object r_73470) ; -static void __lambda_298(void *data, int argc, object self_73844) ; -static void __lambda_297(void *data, int argc, object self_73845, object r_73466) ; -static void __lambda_296(void *data, int argc, object self_73846, object r_73287) ; -static void __lambda_295(void *data, int argc, object self_73847, object k_73462, object x_73196) ; -static void __lambda_294(void *data, int argc, object self_73848, object r_73463) ; -static void __lambda_293(void *data, int argc, object self_73849, object r_73464) ; -static void __lambda_292(void *data, int argc, object self_73850, object r_73465) ; -static void __lambda_291(void *data, int argc, object self_73851, object r_73461) ; -static void __lambda_290(void *data, int argc, object self_73852, object r_73288) ; -static void __lambda_289(void *data, int argc, object self_73853, object k_73442, object x_73195, object true_91lst_73194, object false_91lst_73193) ; -static void __lambda_288(void *data, int argc, object self_73854, object r_73443) ; -static void __lambda_287(void *data, int argc, object self_73855, object r_73444) ; -static void __lambda_286(void *data, int argc, object self_73856, object r_73445) ; -static void __lambda_285(void *data, int argc, object self_73857) ; -static void __lambda_284(void *data, int argc, object self_73858, object r_73460) ; -static void __lambda_283(void *data, int argc, object self_73859, object r_73446) ; -static void __lambda_282(void *data, int argc, object self_73860) ; -static void __lambda_281(void *data, int argc, object self_73861) ; -static void __lambda_280(void *data, int argc, object self_73862, object r_73459) ; -static void __lambda_279(void *data, int argc, object self_73863, object r_73447) ; -static void __lambda_278(void *data, int argc, object self_73864, object r_73458) ; -static void __lambda_277(void *data, int argc, object self_73865, object r_73449) ; -static void __lambda_276(void *data, int argc, object self_73866) ; -static void __lambda_275(void *data, int argc, object self_73867, object r_73455) ; -static void __lambda_274(void *data, int argc, object self_73868, object r_73457) ; -static void __lambda_273(void *data, int argc, object self_73869, object r_73456) ; -static void __lambda_272(void *data, int argc, object self_73870, object r_73451) ; -static void __lambda_271(void *data, int argc, object self_73871, object r_73452) ; -static void __lambda_270(void *data, int argc, object self_73872, object r_73454) ; -static void __lambda_269(void *data, int argc, object self_73873, object r_73453) ; -static void __lambda_268(void *data, int argc, object self_73874) ; -static void __lambda_267(void *data, int argc, object self_73875, object r_73450) ; -static void __lambda_266(void *data, int argc, object self_73876) ; -static void __lambda_265(void *data, int argc, object self_73877, object r_73448) ; -static void __lambda_264(void *data, int argc, object self_73878) ; -static void __lambda_263(void *data, int argc, object self_73879) ; -static void __lambda_262(void *data, int argc, object self_73880, object r_73441) ; -static void __lambda_261(void *data, int argc, object self_73881, object r_73289) ; -static void __lambda_260(void *data, int argc, object self_73882, object r_73440) ; -static void __lambda_259(void *data, int argc, object self_73883, object r_73290) ; -static void __lambda_258(void *data, int argc, object self_73884, object r_73291) ; -static void __lambda_257(void *data, int argc, object self_73885, object k_73434, object x_73192, object y_73191, object original_73190) ; -static void __lambda_256(void *data, int argc, object self_73886, object r_73435) ; -static void __lambda_255(void *data, int argc, object self_73887, object k_73436) ; -static void __lambda_254(void *data, int argc, object self_73888, object r_73439) ; -static void __lambda_253(void *data, int argc, object self_73889, object r_73437) ; -static void __lambda_252(void *data, int argc, object self_73890, object r_73438) ; -static void __lambda_251(void *data, int argc, object self_73891, object r_73433) ; -static void __lambda_250(void *data, int argc, object self_73892, object r_73292) ; -static void __lambda_249(void *data, int argc, object self_73893, object k_73423, object term_73189) ; -static void __lambda_248(void *data, int argc, object self_73894, object r_73432) ; -static void __lambda_247(void *data, int argc, object self_73895, object r_73424) ; -static void __lambda_246(void *data, int argc, object self_73896, object r_73425) ; -static void __lambda_245(void *data, int argc, object self_73897) ; -static void __lambda_244(void *data, int argc, object self_73898) ; -static void __lambda_243(void *data, int argc, object self_73899, object r_73429) ; -static void __lambda_242(void *data, int argc, object self_73900, object r_73431) ; -static void __lambda_241(void *data, int argc, object self_73901, object r_73430) ; -static void __lambda_240(void *data, int argc, object self_73902, object r_73426) ; -static void __lambda_239(void *data, int argc, object self_73903, object r_73428) ; -static void __lambda_238(void *data, int argc, object self_73904, object r_73427) ; -static void __lambda_237(void *data, int argc, object self_73905, object r_73422) ; -static void __lambda_236(void *data, int argc, object self_73906, object r_73293) ; -static void __lambda_235(void *data, int argc, object self_73907, object k_73416, object lst_73188) ; -static void __lambda_234(void *data, int argc, object self_73908, object r_73417) ; -static void __lambda_233(void *data, int argc, object self_73909) ; -static void __lambda_232(void *data, int argc, object self_73910, object r_73421) ; -static void __lambda_231(void *data, int argc, object self_73911, object r_73418) ; -static void __lambda_230(void *data, int argc, object self_73912, object r_73420) ; -static void __lambda_229(void *data, int argc, object self_73913, object r_73419) ; -static void __lambda_228(void *data, int argc, object self_73914) ; -static void __lambda_227(void *data, int argc, object self_73915, object r_73415) ; -static void __lambda_226(void *data, int argc, object self_73916, object r_73294) ; -static void __lambda_225(void *data, int argc, object self_73917, object k_73406, object term_73187, object lst_73186) ; -static void __lambda_224(void *data, int argc, object self_73918, object r_73407) ; -static void __lambda_223(void *data, int argc, object self_73919, object r_73414) ; -static void __lambda_222(void *data, int argc, object self_73920, object r_73413) ; -static void __lambda_221(void *data, int argc, object self_73921, object r_73408) ; -static void __lambda_220(void *data, int argc, object self_73922) ; -static void __lambda_219(void *data, int argc, object self_73923, object r_73412) ; -static void __lambda_218(void *data, int argc, object self_73924) ; -static void __lambda_217(void *data, int argc, object self_73925, object r_73411) ; -static void __lambda_216(void *data, int argc, object self_73926, object r_73410) ; -static void __lambda_215(void *data, int argc, object self_73927, object r_73409) ; -static void __lambda_214(void *data, int argc, object self_73928) ; -static void __lambda_213(void *data, int argc, object self_73929, object r_73405) ; -static void __lambda_212(void *data, int argc, object self_73930, object r_73295) ; -static void __lambda_211(void *data, int argc, object self_73931, object r_73404) ; -static void __lambda_210(void *data, int argc, object self_73932, object r_73296) ; -static void __lambda_209(void *data, int argc, object self_73933, object k_73401, object term1_73185, object term2_73184) ; -static void __lambda_208(void *data, int argc, object self_73934, object r_73403) ; -static void __lambda_207(void *data, int argc, object self_73935, object r_73402) ; -static void __lambda_206(void *data, int argc, object self_73936, object r_73400) ; -static void __lambda_205(void *data, int argc, object self_73937, object r_73297) ; -static void __lambda_204(void *data, int argc, object self_73938, object k_73386, object term1_73182, object term2_73181) ; -static void __lambda_203(void *data, int argc, object self_73939, object r_73387) ; -static void __lambda_202(void *data, int argc, object self_73940) ; -static void __lambda_201(void *data, int argc, object self_73941, object temp_91temp_73183) ; -static void __lambda_200(void *data, int argc, object self_73942, object r_73396) ; -static void __lambda_199(void *data, int argc, object self_73943) ; -static void __lambda_198(void *data, int argc, object self_73944, object r_73399) ; -static void __lambda_197(void *data, int argc, object self_73945, object r_73398) ; -static void __lambda_196(void *data, int argc, object self_73946, object r_73397) ; -static void __lambda_195(void *data, int argc, object self_73947) ; -static void __lambda_194(void *data, int argc, object self_73948) ; -static void __lambda_193(void *data, int argc, object self_73949, object r_73395) ; -static void __lambda_192(void *data, int argc, object self_73950, object r_73388) ; -static void __lambda_191(void *data, int argc, object self_73951) ; -static void __lambda_190(void *data, int argc, object self_73952, object r_73392) ; -static void __lambda_189(void *data, int argc, object self_73953, object r_73393) ; -static void __lambda_188(void *data, int argc, object self_73954, object r_73389) ; -static void __lambda_187(void *data, int argc, object self_73955) ; -static void __lambda_186(void *data, int argc, object self_73956) ; -static void __lambda_185(void *data, int argc, object self_73957, object r_73390) ; -static void __lambda_184(void *data, int argc, object self_73958, object r_73391) ; -static void __lambda_183(void *data, int argc, object self_73959, object r_73385) ; -static void __lambda_182(void *data, int argc, object self_73960, object r_73298) ; -static void __lambda_181(void *data, int argc, object self_73961, object k_73377, object lst1_73180, object lst2_73179) ; -static void __lambda_180(void *data, int argc, object self_73962, object r_73378) ; -static void __lambda_179(void *data, int argc, object self_73963, object r_73379) ; -static void __lambda_178(void *data, int argc, object self_73964, object r_73383) ; -static void __lambda_177(void *data, int argc, object self_73965, object r_73384) ; -static void __lambda_176(void *data, int argc, object self_73966, object r_73380) ; -static void __lambda_175(void *data, int argc, object self_73967) ; -static void __lambda_174(void *data, int argc, object self_73968) ; -static void __lambda_173(void *data, int argc, object self_73969, object r_73381) ; -static void __lambda_172(void *data, int argc, object self_73970, object r_73382) ; -static void __lambda_171(void *data, int argc, object self_73971) ; -static void __lambda_170(void *data, int argc, object self_73972) ; -static void __lambda_169(void *data, int argc, object self_73973, object r_73376) ; -static void __lambda_168(void *data, int argc, object self_73974, object r_73299) ; -static void __lambda_167(void *data, int argc, object self_73975, object k_73374, object x_73177, object lst_73176) ; -static void __lambda_166(void *data, int argc, object self_73976, object tmp_73178) ; -static void __lambda_165(void *data, int argc, object self_73977, object r_73373) ; -static void __lambda_164(void *data, int argc, object self_73978, object r_73300) ; -static void __lambda_163(void *data, int argc, object self_73979, object k_73371, object x_73174, object lst_73173) ; -static void __lambda_162(void *data, int argc, object self_73980, object tmp_73175) ; -static void __lambda_161(void *data, int argc, object self_73981, object r_73370) ; -static void __lambda_160(void *data, int argc, object self_73982, object r_73301) ; -static void __lambda_159(void *data, int argc, object self_73983, object r_73369) ; -static void __lambda_158(void *data, int argc, object self_73984, object r_73302) ; -static void __lambda_157(void *data, int argc, object self_73985, object r_73368) ; -static void __lambda_156(void *data, int argc, object self_73986, object r_73303) ; -static void __lambda_155(void *data, int argc, object self_73987, object k_73362, object n_73172) ; -static void __lambda_154(void *data, int argc, object self_73988, object r_73364) ; -static void __lambda_153(void *data, int argc, object self_73989, object r_73365) ; -static void __lambda_152(void *data, int argc, object self_73990, object r_73367) ; -static void __lambda_151(void *data, int argc, object self_73991, object r_73366) ; -static void __lambda_150(void *data, int argc, object self_73992, object r_73363) ; -static void __lambda_149(void *data, int argc, object self_73993, object r_73361) ; -static void __lambda_148(void *data, int argc, object self_73994, object r_73304) ; -static void __lambda_147(void *data, int argc, object self_73995, object k_73352, object n_73171) ; -static void __lambda_146(void *data, int argc, object self_73996, object r_73353) ; -static void __lambda_145(void *data, int argc, object self_73997) ; -static void __lambda_144(void *data, int argc, object self_73998, object r_73355) ; -static void __lambda_143(void *data, int argc, object self_73999, object r_73359) ; -static void __lambda_142(void *data, int argc, object self_731000, object r_73360) ; -static void __lambda_141(void *data, int argc, object self_731001, object r_73356) ; -static void __lambda_140(void *data, int argc, object self_731002, object r_73358) ; -static void __lambda_139(void *data, int argc, object self_731003, object r_73357) ; -static void __lambda_138(void *data, int argc, object self_731004) ; -static void __lambda_137(void *data, int argc, object self_731005, object r_73354) ; -static void __lambda_136(void *data, int argc, object self_731006, object r_73351) ; -static void __lambda_135(void *data, int argc, object self_731007, object r_73305) ; -static void __lambda_134(void *data, int argc, object self_731008, object k_73343, object x_73170, object y_73169) ; -static void __lambda_133(void *data, int argc, object self_731009, object r_73344) ; -static void __lambda_132(void *data, int argc, object self_731010) ; -static void __lambda_131(void *data, int argc, object self_731011) ; -static void __lambda_130(void *data, int argc, object self_731012, object r_73345) ; -static void __lambda_129(void *data, int argc, object self_731013, object r_73349) ; -static void __lambda_128(void *data, int argc, object self_731014, object r_73350) ; -static void __lambda_127(void *data, int argc, object self_731015, object r_73346) ; -static void __lambda_126(void *data, int argc, object self_731016, object r_73347) ; -static void __lambda_125(void *data, int argc, object self_731017, object r_73348) ; -static void __lambda_124(void *data, int argc, object self_731018, object r_73342) ; -static void __lambda_123(void *data, int argc, object self_731019, object r_73306) ; -static void __lambda_122(void *data, int argc, object self_731020, object k_73334, object lst1_73168, object lst2_73167) ; -static void __lambda_121(void *data, int argc, object self_731021, object r_73335) ; -static void __lambda_120(void *data, int argc, object self_731022, object r_73336) ; -static void __lambda_119(void *data, int argc, object self_731023, object r_73340) ; -static void __lambda_118(void *data, int argc, object self_731024, object r_73341) ; -static void __lambda_117(void *data, int argc, object self_731025, object r_73337) ; -static void __lambda_116(void *data, int argc, object self_731026) ; -static void __lambda_115(void *data, int argc, object self_731027) ; -static void __lambda_114(void *data, int argc, object self_731028, object r_73338) ; -static void __lambda_113(void *data, int argc, object self_731029, object r_73339) ; -static void __lambda_112(void *data, int argc, object self_731030) ; -static void __lambda_111(void *data, int argc, object self_731031) ; -static void __lambda_110(void *data, int argc, object self_731032, object r_73333) ; -static void __lambda_109(void *data, int argc, object self_731033, object r_73307) ; -static void __lambda_108(void *data, int argc, object self_731034, object k_73328, object x_73166, object lst_73165) ; -static void __lambda_107(void *data, int argc, object self_731035, object r_73329) ; -static void __lambda_106(void *data, int argc, object self_731036, object r_73332) ; -static void __lambda_105(void *data, int argc, object self_731037, object r_73330) ; -static void __lambda_104(void *data, int argc, object self_731038) ; -static void __lambda_103(void *data, int argc, object self_731039, object r_73331) ; -static void __lambda_102(void *data, int argc, object self_731040) ; -static void __lambda_101(void *data, int argc, object self_731041) ; -static void __lambda_100(void *data, int argc, object self_731042, object r_73327) ; -static void __lambda_99(void *data, int argc, object self_731043, object r_73308) ; -static void __lambda_98(void *data, int argc, object self_731044, object k_73315) ; -static void __lambda_97(void *data, int argc, object self_731045, object r_73326) ; -static void __lambda_96(void *data, int argc, object self_731046, object r_73316) ; -static void __lambda_95(void *data, int argc, object self_731047, object r_73325) ; -static void __lambda_94(void *data, int argc, object self_731048, object r_73324) ; -static void __lambda_93(void *data, int argc, object self_731049, object r_73317) ; -static void __lambda_92(void *data, int argc, object self_731050, object r_73323) ; -static void __lambda_91(void *data, int argc, object self_731051, object r_73322) ; -static void __lambda_90(void *data, int argc, object self_731052, object r_73318) ; -static void __lambda_89(void *data, int argc, object self_731053, object r_73321) ; -static void __lambda_88(void *data, int argc, object self_731054, object r_73320) ; -static void __lambda_87(void *data, int argc, object self_731055, object r_73319) ; -static void __lambda_86(void *data, int argc, object self_731056, object r_73314) ; -static void __lambda_85(void *data, int argc, object self_731057, object r_73309) ; -static void __lambda_84(void *data, int argc, object self_731058, object k_73311, object alist_73163, object term_73162, object n_73161) ; -static void __lambda_83(void *data, int argc, object self_731059, object r_73312) ; -static void __lambda_82(void *data, int argc, object self_731060, object answer_73164) ; -static void __lambda_81(void *data, int argc, closure _,object r_73310) ; -static void __lambda_80(void *data, int argc, closure _,object r_73268) ; -static void __lambda_79(void *data, int argc, closure _,object k_73580, object name_73235, object count_73234, object thunk_73233, object ok_127_73232) ; -static void __lambda_78(void *data, int argc, object self_731061, object rounded_73237) ; -static void __lambda_77(void *data, int argc, object self_731062, object rounded_73237) ; -static void __lambda_76(void *data, int argc, object self_731063, object rounded_73238) ; -static void __lambda_75(void *data, int argc, object self_731064, object k_73616, object x_73252) ; -static void __lambda_74(void *data, int argc, object self_731065, object r_73618) ; -static void __lambda_73(void *data, int argc, object self_731066, object r_73617) ; -static void __lambda_72(void *data, int argc, object self_731067, object r_73615) ; -static void __lambda_71(void *data, int argc, object self_731068, object r_73581) ; -static void __lambda_70(void *data, int argc, object self_731069, object r_73582) ; -static void __lambda_69(void *data, int argc, object self_731070, object r_73583) ; -static void __lambda_68(void *data, int argc, object self_731071, object r_73584) ; -static void __lambda_67(void *data, int argc, object self_731072, object r_73585) ; -static void __lambda_66(void *data, int argc, object self_731073, object j_95s_73239) ; -static void __lambda_65(void *data, int argc, object self_731074, object t0_73240) ; -static void __lambda_64(void *data, int argc, object self_731075, object j0_73241) ; -static void __lambda_63(void *data, int argc, object self_731076) ; -static void __lambda_62(void *data, int argc, object self_731077, object r_73589) ; -static void __lambda_61(void *data, int argc, object self_731078, object i_73243, object result_73242) ; -static void __lambda_60(void *data, int argc, object self_731079, object loop_73244) ; -static void __lambda_59(void *data, int argc, object self_731080, object loop_73244) ; -static void __lambda_58(void *data, int argc, object self_731081, object k_73592, object i_73246, object result_73245) ; -static void __lambda_57(void *data, int argc, object self_731082, object r_73593) ; -static void __lambda_56(void *data, int argc, object self_731083, object r_73596) ; -static void __lambda_55(void *data, int argc, object self_731084) ; -static void __lambda_54(void *data, int argc, object self_731085, object r_73611) ; -static void __lambda_53(void *data, int argc, object self_731086, object r_73612) ; -static void __lambda_52(void *data, int argc, object self_731087, object r_73613) ; -static void __lambda_51(void *data, int argc, object self_731088) ; -static void __lambda_50(void *data, int argc, object self_731089, object j1_73247) ; -static void __lambda_49(void *data, int argc, object self_731090, object t1_73248) ; -static void __lambda_48(void *data, int argc, object self_731091, object jifs_73249) ; -static void __lambda_47(void *data, int argc, object self_731092, object r_73610) ; -static void __lambda_46(void *data, int argc, object self_731093, object secs_73250) ; -static void __lambda_45(void *data, int argc, object self_731094, object r_73609) ; -static void __lambda_44(void *data, int argc, object self_731095, object secs2_73251) ; -static void __lambda_43(void *data, int argc, object self_731096) ; -static void __lambda_42(void *data, int argc, object self_731097, object r_73603) ; -static void __lambda_41(void *data, int argc, object self_731098, object r_73604) ; -static void __lambda_40(void *data, int argc, object self_731099, object r_73605) ; -static void __lambda_39(void *data, int argc, object self_731100, object r_73606) ; -static void __lambda_38(void *data, int argc, object self_731101, object r_73607) ; -static void __lambda_37(void *data, int argc, object self_731102, object r_73608) ; -static void __lambda_36(void *data, int argc, object self_731103, object r_73597) ; -static void __lambda_35(void *data, int argc, object self_731104) ; -static void __lambda_34(void *data, int argc, object self_731105, object r_73594) ; -static void __lambda_33(void *data, int argc, object self_731106, object r_73595) ; -static void __lambda_32(void *data, int argc, object self_731107, object r_73591) ; -static void __lambda_31(void *data, int argc, object self_731108, object r_73590) ; -static void __lambda_30(void *data, int argc, closure _,object k_73614) ; -static void __lambda_29(void *data, int argc, closure _,object k_73621, object r_73254, object x_73253) ; -static void __lambda_28(void *data, int argc, object self_731109, object k_73626) ; -static void __lambda_27(void *data, int argc, object self_731110, object k_73632, object x_73257) ; -static void __lambda_26(void *data, int argc, object self_731111, object r_73631) ; -static void __lambda_25(void *data, int argc, object self_731112, object r_73627) ; -static void __lambda_24(void *data, int argc, object self_731113, object r_73628) ; -static void __lambda_23(void *data, int argc, object self_731114, object k_73629) ; -static void __lambda_22(void *data, int argc, object self_731115, object r_73630) ; -static void __lambda_21(void *data, int argc, object self_731116, object r_73622) ; -static void __lambda_20(void *data, int argc, object self_731117, object k_73624, object v_73256, object i_73255) ; -static void __lambda_19(void *data, int argc, object self_731118, object r_73625) ; -static void __lambda_18(void *data, int argc, object self_731119, object r_73623) ; -static void __lambda_17(void *data, int argc, closure _,object k_73635) ; -static void __lambda_16(void *data, int argc, closure _,object k_73638) ; -static void __lambda_15(void *data, int argc, closure _,object k_73645) ; -static void __lambda_14(void *data, int argc, object self_731120, object count_73258) ; -static void __lambda_13(void *data, int argc, object self_731121, object input_73259) ; -static void __lambda_12(void *data, int argc, object self_731122, object output_73260) ; -static void __lambda_11(void *data, int argc, object self_731123, object s2_73261) ; -static void __lambda_10(void *data, int argc, object self_731124, object s1_73262) ; -static void __lambda_9(void *data, int argc, object self_731125, object name_73263) ; -static void __lambda_8(void *data, int argc, object self_731126) ; -static void __lambda_7(void *data, int argc, object self_731127, object r_73651) ; -static void __lambda_6(void *data, int argc, object self_731128, object k_73656) ; -static void __lambda_5(void *data, int argc, object self_731129, object r_73657) ; -static void __lambda_4(void *data, int argc, object self_731130, object r_73658) ; -static void __lambda_3(void *data, int argc, object self_731131, object r_73652) ; -static void __lambda_2(void *data, int argc, object self_731132, object k_73654, object rewrites_73264) ; -static void __lambda_1(void *data, int argc, object self_731133, object r_73655) ; -static void __lambda_0(void *data, int argc, object self_731134, object r_73653) ; - -static void __lambda_492(void *data, int argc, closure _,object _85symbol_91records_91alist_85_73120, object add_91lemma_73119, object add_91lemma_91lst_73118, object apply_91subst_73117, object apply_91subst_91lst_73116, object false_91term_73115, object falsep_73114, object get_73113, object get_91lemmas_73112, object get_91name_73111, object if_91constructor_73110, object make_91symbol_91record_73109, object one_91way_91unify_73108, object one_91way_91unify1_73107, object one_91way_91unify1_91lst_73106, object put_73105, object put_91lemmas_67_73104, object rewrite_73103, object rewrite_91args_73102, object rewrite_91count_73101, object rewrite_91with_91lemmas_73100, object scons_7399, object setup_7398, object symbol_91_125symbol_91record_7397, object symbol_91record_91equal_127_7396, object tautologyp_7395, object tautp_7394, object term_91args_91equal_127_7393, object term_91equal_127_7392, object term_91member_127_7391, object test_7390, object trans_91of_91implies_7389, object trans_91of_91implies1_7388, object translate_91alist_7387, object translate_91args_7386, object translate_91term_7385, object true_91term_7384, object truep_7383, object unify_91subst_7382, object untranslate_91term_7381) { - return_direct0(data,__lambda_491);; -} - -static void __lambda_491(void *data, int argc, closure _) { - return_direct1(data,__lambda_490,obj_int2obj(0));; -} - -static void __lambda_490(void *data, int argc, closure _,object r_73265) { - make_cons(c_735247,quote_b,nil); -make_cons(c_735246,quote_a,&c_735247); -make_cons(c_735245,quote_plus,&c_735246); -make_cons(c_735252,quote_zero,nil); -make_cons(c_735251,&c_735252,nil); -make_cons(c_735250,quote_c,&c_735251); -make_cons(c_735249,quote_plus,&c_735250); -make_cons(c_735248,&c_735249,nil); -make_cons(c_735244,&c_735245,&c_735248); -make_cons(c_735243,quote_plus,&c_735244); -make_cons(c_735242,&c_735243,nil); -make_cons(c_735241,quote_f,&c_735242); -make_cons(c_735240,quote_x,&c_735241); -make_cons(c_735261,quote_b,nil); -make_cons(c_735260,quote_a,&c_735261); -make_cons(c_735259,quote_times,&c_735260); -make_cons(c_735265,quote_d,nil); -make_cons(c_735264,quote_c,&c_735265); -make_cons(c_735263,quote_plus,&c_735264); -make_cons(c_735262,&c_735263,nil); -make_cons(c_735258,&c_735259,&c_735262); -make_cons(c_735257,quote_times,&c_735258); -make_cons(c_735256,&c_735257,nil); -make_cons(c_735255,quote_f,&c_735256); -make_cons(c_735254,quote_y,&c_735255); -make_cons(c_735276,quote_b,nil); -make_cons(c_735275,quote_a,&c_735276); -make_cons(c_735274,quote_append,&c_735275); -make_cons(c_735278,quote_nil,nil); -make_cons(c_735277,&c_735278,nil); -make_cons(c_735273,&c_735274,&c_735277); -make_cons(c_735272,quote_append,&c_735273); -make_cons(c_735271,&c_735272,nil); -make_cons(c_735270,quote_reverse,&c_735271); -make_cons(c_735269,&c_735270,nil); -make_cons(c_735268,quote_f,&c_735269); -make_cons(c_735267,quote_z,&c_735268); -make_cons(c_735285,quote_b,nil); -make_cons(c_735284,quote_a,&c_735285); -make_cons(c_735283,quote_plus,&c_735284); -make_cons(c_735289,quote_y,nil); -make_cons(c_735288,quote_x,&c_735289); -make_cons(c_735287,quote_difference,&c_735288); -make_cons(c_735286,&c_735287,nil); -make_cons(c_735282,&c_735283,&c_735286); -make_cons(c_735281,quote_equal,&c_735282); -make_cons(c_735280,quote_u,&c_735281); -make_cons(c_735296,quote_b,nil); -make_cons(c_735295,quote_a,&c_735296); -make_cons(c_735294,quote_remainder,&c_735295); -make_cons(c_735302,quote_b,nil); -make_cons(c_735301,quote_length,&c_735302); -make_cons(c_735300,&c_735301,nil); -make_cons(c_735299,quote_a,&c_735300); -make_cons(c_735298,quote_member,&c_735299); -make_cons(c_735297,&c_735298,nil); -make_cons(c_735293,&c_735294,&c_735297); -make_cons(c_735292,quote_lessp,&c_735293); -make_cons(c_735291,quote_w,&c_735292); -make_cons(c_735290,&c_735291,nil); -make_cons(c_735279,&c_735280,&c_735290); -make_cons(c_735266,&c_735267,&c_735279); -make_cons(c_735253,&c_735254,&c_735266); -make_cons(c_735239,&c_735240,&c_735253); -return_direct1(data,__lambda_489,&c_735239);; -} - -static void __lambda_489(void *data, int argc, closure _,object r_73577) { - return_direct1(data,__lambda_488,global_set(__glo_alist, r_73577));; -} - -static void __lambda_488(void *data, int argc, closure _,object r_73266) { - make_cons(c_735216,quote_y,nil); -make_cons(c_735215,quote_x,&c_735216); -make_cons(c_735214,quote_implies,&c_735215); -make_cons(c_735222,quote_z,nil); -make_cons(c_735221,quote_y,&c_735222); -make_cons(c_735220,quote_implies,&c_735221); -make_cons(c_735228,quote_u,nil); -make_cons(c_735227,quote_z,&c_735228); -make_cons(c_735226,quote_implies,&c_735227); -make_cons(c_735232,quote_w,nil); -make_cons(c_735231,quote_u,&c_735232); -make_cons(c_735230,quote_implies,&c_735231); -make_cons(c_735229,&c_735230,nil); -make_cons(c_735225,&c_735226,&c_735229); -make_cons(c_735224,quote_and,&c_735225); -make_cons(c_735223,&c_735224,nil); -make_cons(c_735219,&c_735220,&c_735223); -make_cons(c_735218,quote_and,&c_735219); -make_cons(c_735217,&c_735218,nil); -make_cons(c_735213,&c_735214,&c_735217); -make_cons(c_735212,quote_and,&c_735213); -make_cons(c_735236,quote_w,nil); -make_cons(c_735235,quote_x,&c_735236); -make_cons(c_735234,quote_implies,&c_735235); -make_cons(c_735233,&c_735234,nil); -make_cons(c_735211,&c_735212,&c_735233); -make_cons(c_735210,quote_implies,&c_735211); -return_direct1(data,__lambda_487,&c_735210);; -} - -static void __lambda_487(void *data, int argc, closure _,object r_73576) { - return_direct1(data,__lambda_486,global_set(__glo_term, r_73576));; -} - -static void __lambda_486(void *data, int argc, closure _,object r_73267) { - return_direct0(data,__lambda_485);; -} - -static void __lambda_485(void *data, int argc, closure _) { - return_direct40(data,__lambda_484,boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f);; -} - -static void __lambda_484(void *data, int argc, closure _,object setup_73160, object add_91lemma_91lst_73159, object add_91lemma_73158, object translate_91term_73157, object translate_91args_73156, object untranslate_91term_73155, object put_73154, object get_73153, object symbol_91_125symbol_91record_73152, object _85symbol_91records_91alist_85_73151, object make_91symbol_91record_73150, object put_91lemmas_67_73149, object get_91lemmas_73148, object get_91name_73147, object symbol_91record_91equal_127_73146, object test_73145, object translate_91alist_73144, object apply_91subst_73143, object apply_91subst_91lst_73142, object tautp_73141, object tautologyp_73140, object if_91constructor_73139, object rewrite_91count_73138, object scons_73137, object rewrite_73136, object rewrite_91args_73135, object rewrite_91with_91lemmas_73134, object unify_91subst_73133, object one_91way_91unify_73132, object one_91way_91unify1_73131, object one_91way_91unify1_91lst_73130, object falsep_73129, object truep_73128, object false_91term_73127, object true_91term_73126, object trans_91of_91implies_73125, object trans_91of_91implies1_73124, object term_91equal_127_73123, object term_91args_91equal_127_73122, object term_91member_127_73121) { - -closureN_type c_731428; -c_731428.hdr.mark = gc_color_red; - c_731428.hdr.grayed = 0; -c_731428.tag = closureN_tag; - c_731428.fn = (function_type)__lambda_483; -c_731428.num_args = 1; -c_731428.num_elt = 39; -c_731428.elts = (object *)alloca(sizeof(object) * 39); -c_731428.elts[0] = _85symbol_91records_91alist_85_73151; -c_731428.elts[1] = add_91lemma_73158; -c_731428.elts[2] = add_91lemma_91lst_73159; -c_731428.elts[3] = apply_91subst_73143; -c_731428.elts[4] = apply_91subst_91lst_73142; -c_731428.elts[5] = false_91term_73127; -c_731428.elts[6] = falsep_73129; -c_731428.elts[7] = get_73153; -c_731428.elts[8] = get_91lemmas_73148; -c_731428.elts[9] = get_91name_73147; -c_731428.elts[10] = if_91constructor_73139; -c_731428.elts[11] = make_91symbol_91record_73150; -c_731428.elts[12] = one_91way_91unify_73132; -c_731428.elts[13] = one_91way_91unify1_73131; -c_731428.elts[14] = one_91way_91unify1_91lst_73130; -c_731428.elts[15] = put_73154; -c_731428.elts[16] = put_91lemmas_67_73149; -c_731428.elts[17] = rewrite_73136; -c_731428.elts[18] = rewrite_91args_73135; -c_731428.elts[19] = rewrite_91count_73138; -c_731428.elts[20] = rewrite_91with_91lemmas_73134; -c_731428.elts[21] = scons_73137; -c_731428.elts[22] = symbol_91_125symbol_91record_73152; -c_731428.elts[23] = symbol_91record_91equal_127_73146; -c_731428.elts[24] = tautologyp_73140; -c_731428.elts[25] = tautp_73141; -c_731428.elts[26] = term_91args_91equal_127_73122; -c_731428.elts[27] = term_91equal_127_73123; -c_731428.elts[28] = term_91member_127_73121; -c_731428.elts[29] = test_73145; -c_731428.elts[30] = trans_91of_91implies_73125; -c_731428.elts[31] = trans_91of_91implies1_73124; -c_731428.elts[32] = translate_91alist_73144; -c_731428.elts[33] = translate_91args_73156; -c_731428.elts[34] = translate_91term_73157; -c_731428.elts[35] = true_91term_73126; -c_731428.elts[36] = truep_73128; -c_731428.elts[37] = unify_91subst_73133; -c_731428.elts[38] = untranslate_91term_73155; - - -make_cell(c_735207,setup_73160); -return_closcall1(data,(closure)&c_731428, &c_735207);; -} - -static void __lambda_483(void *data, int argc, object self_73659, object setup_73160) { - -closureN_type c_731430; -c_731430.hdr.mark = gc_color_red; - c_731430.hdr.grayed = 0; -c_731430.tag = closureN_tag; - c_731430.fn = (function_type)__lambda_482; -c_731430.num_args = 1; -c_731430.num_elt = 39; -c_731430.elts = (object *)alloca(sizeof(object) * 39); -c_731430.elts[0] = ((closureN)self_73659)->elts[0]; -c_731430.elts[1] = ((closureN)self_73659)->elts[1]; -c_731430.elts[2] = ((closureN)self_73659)->elts[3]; -c_731430.elts[3] = ((closureN)self_73659)->elts[4]; -c_731430.elts[4] = ((closureN)self_73659)->elts[5]; -c_731430.elts[5] = ((closureN)self_73659)->elts[6]; -c_731430.elts[6] = ((closureN)self_73659)->elts[7]; -c_731430.elts[7] = ((closureN)self_73659)->elts[8]; -c_731430.elts[8] = ((closureN)self_73659)->elts[9]; -c_731430.elts[9] = ((closureN)self_73659)->elts[10]; -c_731430.elts[10] = ((closureN)self_73659)->elts[11]; -c_731430.elts[11] = ((closureN)self_73659)->elts[12]; -c_731430.elts[12] = ((closureN)self_73659)->elts[13]; -c_731430.elts[13] = ((closureN)self_73659)->elts[14]; -c_731430.elts[14] = ((closureN)self_73659)->elts[15]; -c_731430.elts[15] = ((closureN)self_73659)->elts[16]; -c_731430.elts[16] = ((closureN)self_73659)->elts[17]; -c_731430.elts[17] = ((closureN)self_73659)->elts[18]; -c_731430.elts[18] = ((closureN)self_73659)->elts[19]; -c_731430.elts[19] = ((closureN)self_73659)->elts[20]; -c_731430.elts[20] = ((closureN)self_73659)->elts[21]; -c_731430.elts[21] = setup_73160; -c_731430.elts[22] = ((closureN)self_73659)->elts[22]; -c_731430.elts[23] = ((closureN)self_73659)->elts[23]; -c_731430.elts[24] = ((closureN)self_73659)->elts[24]; -c_731430.elts[25] = ((closureN)self_73659)->elts[25]; -c_731430.elts[26] = ((closureN)self_73659)->elts[26]; -c_731430.elts[27] = ((closureN)self_73659)->elts[27]; -c_731430.elts[28] = ((closureN)self_73659)->elts[28]; -c_731430.elts[29] = ((closureN)self_73659)->elts[29]; -c_731430.elts[30] = ((closureN)self_73659)->elts[30]; -c_731430.elts[31] = ((closureN)self_73659)->elts[31]; -c_731430.elts[32] = ((closureN)self_73659)->elts[32]; -c_731430.elts[33] = ((closureN)self_73659)->elts[33]; -c_731430.elts[34] = ((closureN)self_73659)->elts[34]; -c_731430.elts[35] = ((closureN)self_73659)->elts[35]; -c_731430.elts[36] = ((closureN)self_73659)->elts[36]; -c_731430.elts[37] = ((closureN)self_73659)->elts[37]; -c_731430.elts[38] = ((closureN)self_73659)->elts[38]; - - -make_cell(c_735203,((closureN)self_73659)->elts[2]); -return_closcall1(data,(closure)&c_731430, &c_735203);; -} - -static void __lambda_482(void *data, int argc, object self_73660, object add_91lemma_91lst_73159) { - -closureN_type c_731432; -c_731432.hdr.mark = gc_color_red; - c_731432.hdr.grayed = 0; -c_731432.tag = closureN_tag; - c_731432.fn = (function_type)__lambda_481; -c_731432.num_args = 1; -c_731432.num_elt = 39; -c_731432.elts = (object *)alloca(sizeof(object) * 39); -c_731432.elts[0] = ((closureN)self_73660)->elts[0]; -c_731432.elts[1] = add_91lemma_91lst_73159; -c_731432.elts[2] = ((closureN)self_73660)->elts[2]; -c_731432.elts[3] = ((closureN)self_73660)->elts[3]; -c_731432.elts[4] = ((closureN)self_73660)->elts[4]; -c_731432.elts[5] = ((closureN)self_73660)->elts[5]; -c_731432.elts[6] = ((closureN)self_73660)->elts[6]; -c_731432.elts[7] = ((closureN)self_73660)->elts[7]; -c_731432.elts[8] = ((closureN)self_73660)->elts[8]; -c_731432.elts[9] = ((closureN)self_73660)->elts[9]; -c_731432.elts[10] = ((closureN)self_73660)->elts[10]; -c_731432.elts[11] = ((closureN)self_73660)->elts[11]; -c_731432.elts[12] = ((closureN)self_73660)->elts[12]; -c_731432.elts[13] = ((closureN)self_73660)->elts[13]; -c_731432.elts[14] = ((closureN)self_73660)->elts[14]; -c_731432.elts[15] = ((closureN)self_73660)->elts[15]; -c_731432.elts[16] = ((closureN)self_73660)->elts[16]; -c_731432.elts[17] = ((closureN)self_73660)->elts[17]; -c_731432.elts[18] = ((closureN)self_73660)->elts[18]; -c_731432.elts[19] = ((closureN)self_73660)->elts[19]; -c_731432.elts[20] = ((closureN)self_73660)->elts[20]; -c_731432.elts[21] = ((closureN)self_73660)->elts[21]; -c_731432.elts[22] = ((closureN)self_73660)->elts[22]; -c_731432.elts[23] = ((closureN)self_73660)->elts[23]; -c_731432.elts[24] = ((closureN)self_73660)->elts[24]; -c_731432.elts[25] = ((closureN)self_73660)->elts[25]; -c_731432.elts[26] = ((closureN)self_73660)->elts[26]; -c_731432.elts[27] = ((closureN)self_73660)->elts[27]; -c_731432.elts[28] = ((closureN)self_73660)->elts[28]; -c_731432.elts[29] = ((closureN)self_73660)->elts[29]; -c_731432.elts[30] = ((closureN)self_73660)->elts[30]; -c_731432.elts[31] = ((closureN)self_73660)->elts[31]; -c_731432.elts[32] = ((closureN)self_73660)->elts[32]; -c_731432.elts[33] = ((closureN)self_73660)->elts[33]; -c_731432.elts[34] = ((closureN)self_73660)->elts[34]; -c_731432.elts[35] = ((closureN)self_73660)->elts[35]; -c_731432.elts[36] = ((closureN)self_73660)->elts[36]; -c_731432.elts[37] = ((closureN)self_73660)->elts[37]; -c_731432.elts[38] = ((closureN)self_73660)->elts[38]; - - -make_cell(c_735199,((closureN)self_73660)->elts[1]); -return_closcall1(data,(closure)&c_731432, &c_735199);; -} - -static void __lambda_481(void *data, int argc, object self_73661, object add_91lemma_73158) { - -closureN_type c_731434; -c_731434.hdr.mark = gc_color_red; - c_731434.hdr.grayed = 0; -c_731434.tag = closureN_tag; - c_731434.fn = (function_type)__lambda_480; -c_731434.num_args = 1; -c_731434.num_elt = 39; -c_731434.elts = (object *)alloca(sizeof(object) * 39); -c_731434.elts[0] = ((closureN)self_73661)->elts[0]; -c_731434.elts[1] = add_91lemma_73158; -c_731434.elts[2] = ((closureN)self_73661)->elts[1]; -c_731434.elts[3] = ((closureN)self_73661)->elts[2]; -c_731434.elts[4] = ((closureN)self_73661)->elts[3]; -c_731434.elts[5] = ((closureN)self_73661)->elts[4]; -c_731434.elts[6] = ((closureN)self_73661)->elts[5]; -c_731434.elts[7] = ((closureN)self_73661)->elts[6]; -c_731434.elts[8] = ((closureN)self_73661)->elts[7]; -c_731434.elts[9] = ((closureN)self_73661)->elts[8]; -c_731434.elts[10] = ((closureN)self_73661)->elts[9]; -c_731434.elts[11] = ((closureN)self_73661)->elts[10]; -c_731434.elts[12] = ((closureN)self_73661)->elts[11]; -c_731434.elts[13] = ((closureN)self_73661)->elts[12]; -c_731434.elts[14] = ((closureN)self_73661)->elts[13]; -c_731434.elts[15] = ((closureN)self_73661)->elts[14]; -c_731434.elts[16] = ((closureN)self_73661)->elts[15]; -c_731434.elts[17] = ((closureN)self_73661)->elts[16]; -c_731434.elts[18] = ((closureN)self_73661)->elts[17]; -c_731434.elts[19] = ((closureN)self_73661)->elts[18]; -c_731434.elts[20] = ((closureN)self_73661)->elts[19]; -c_731434.elts[21] = ((closureN)self_73661)->elts[20]; -c_731434.elts[22] = ((closureN)self_73661)->elts[21]; -c_731434.elts[23] = ((closureN)self_73661)->elts[22]; -c_731434.elts[24] = ((closureN)self_73661)->elts[23]; -c_731434.elts[25] = ((closureN)self_73661)->elts[24]; -c_731434.elts[26] = ((closureN)self_73661)->elts[25]; -c_731434.elts[27] = ((closureN)self_73661)->elts[26]; -c_731434.elts[28] = ((closureN)self_73661)->elts[27]; -c_731434.elts[29] = ((closureN)self_73661)->elts[28]; -c_731434.elts[30] = ((closureN)self_73661)->elts[29]; -c_731434.elts[31] = ((closureN)self_73661)->elts[30]; -c_731434.elts[32] = ((closureN)self_73661)->elts[31]; -c_731434.elts[33] = ((closureN)self_73661)->elts[32]; -c_731434.elts[34] = ((closureN)self_73661)->elts[33]; -c_731434.elts[35] = ((closureN)self_73661)->elts[35]; -c_731434.elts[36] = ((closureN)self_73661)->elts[36]; -c_731434.elts[37] = ((closureN)self_73661)->elts[37]; -c_731434.elts[38] = ((closureN)self_73661)->elts[38]; - - -make_cell(c_735195,((closureN)self_73661)->elts[34]); -return_closcall1(data,(closure)&c_731434, &c_735195);; -} - -static void __lambda_480(void *data, int argc, object self_73662, object translate_91term_73157) { - -closureN_type c_731436; -c_731436.hdr.mark = gc_color_red; - c_731436.hdr.grayed = 0; -c_731436.tag = closureN_tag; - c_731436.fn = (function_type)__lambda_479; -c_731436.num_args = 1; -c_731436.num_elt = 39; -c_731436.elts = (object *)alloca(sizeof(object) * 39); -c_731436.elts[0] = ((closureN)self_73662)->elts[0]; -c_731436.elts[1] = ((closureN)self_73662)->elts[1]; -c_731436.elts[2] = ((closureN)self_73662)->elts[2]; -c_731436.elts[3] = ((closureN)self_73662)->elts[3]; -c_731436.elts[4] = ((closureN)self_73662)->elts[4]; -c_731436.elts[5] = ((closureN)self_73662)->elts[5]; -c_731436.elts[6] = ((closureN)self_73662)->elts[6]; -c_731436.elts[7] = ((closureN)self_73662)->elts[7]; -c_731436.elts[8] = ((closureN)self_73662)->elts[8]; -c_731436.elts[9] = ((closureN)self_73662)->elts[9]; -c_731436.elts[10] = ((closureN)self_73662)->elts[10]; -c_731436.elts[11] = ((closureN)self_73662)->elts[11]; -c_731436.elts[12] = ((closureN)self_73662)->elts[12]; -c_731436.elts[13] = ((closureN)self_73662)->elts[13]; -c_731436.elts[14] = ((closureN)self_73662)->elts[14]; -c_731436.elts[15] = ((closureN)self_73662)->elts[15]; -c_731436.elts[16] = ((closureN)self_73662)->elts[16]; -c_731436.elts[17] = ((closureN)self_73662)->elts[17]; -c_731436.elts[18] = ((closureN)self_73662)->elts[18]; -c_731436.elts[19] = ((closureN)self_73662)->elts[19]; -c_731436.elts[20] = ((closureN)self_73662)->elts[20]; -c_731436.elts[21] = ((closureN)self_73662)->elts[21]; -c_731436.elts[22] = ((closureN)self_73662)->elts[22]; -c_731436.elts[23] = ((closureN)self_73662)->elts[23]; -c_731436.elts[24] = ((closureN)self_73662)->elts[24]; -c_731436.elts[25] = ((closureN)self_73662)->elts[25]; -c_731436.elts[26] = ((closureN)self_73662)->elts[26]; -c_731436.elts[27] = ((closureN)self_73662)->elts[27]; -c_731436.elts[28] = ((closureN)self_73662)->elts[28]; -c_731436.elts[29] = ((closureN)self_73662)->elts[29]; -c_731436.elts[30] = ((closureN)self_73662)->elts[30]; -c_731436.elts[31] = ((closureN)self_73662)->elts[31]; -c_731436.elts[32] = ((closureN)self_73662)->elts[32]; -c_731436.elts[33] = ((closureN)self_73662)->elts[33]; -c_731436.elts[34] = translate_91term_73157; -c_731436.elts[35] = ((closureN)self_73662)->elts[35]; -c_731436.elts[36] = ((closureN)self_73662)->elts[36]; -c_731436.elts[37] = ((closureN)self_73662)->elts[37]; -c_731436.elts[38] = ((closureN)self_73662)->elts[38]; - - -make_cell(c_735191,((closureN)self_73662)->elts[34]); -return_closcall1(data,(closure)&c_731436, &c_735191);; -} - -static void __lambda_479(void *data, int argc, object self_73663, object translate_91args_73156) { - -closureN_type c_731438; -c_731438.hdr.mark = gc_color_red; - c_731438.hdr.grayed = 0; -c_731438.tag = closureN_tag; - c_731438.fn = (function_type)__lambda_478; -c_731438.num_args = 1; -c_731438.num_elt = 39; -c_731438.elts = (object *)alloca(sizeof(object) * 39); -c_731438.elts[0] = ((closureN)self_73663)->elts[0]; -c_731438.elts[1] = ((closureN)self_73663)->elts[1]; -c_731438.elts[2] = ((closureN)self_73663)->elts[2]; -c_731438.elts[3] = ((closureN)self_73663)->elts[3]; -c_731438.elts[4] = ((closureN)self_73663)->elts[4]; -c_731438.elts[5] = ((closureN)self_73663)->elts[5]; -c_731438.elts[6] = ((closureN)self_73663)->elts[6]; -c_731438.elts[7] = ((closureN)self_73663)->elts[7]; -c_731438.elts[8] = ((closureN)self_73663)->elts[8]; -c_731438.elts[9] = ((closureN)self_73663)->elts[9]; -c_731438.elts[10] = ((closureN)self_73663)->elts[10]; -c_731438.elts[11] = ((closureN)self_73663)->elts[11]; -c_731438.elts[12] = ((closureN)self_73663)->elts[12]; -c_731438.elts[13] = ((closureN)self_73663)->elts[13]; -c_731438.elts[14] = ((closureN)self_73663)->elts[14]; -c_731438.elts[15] = ((closureN)self_73663)->elts[15]; -c_731438.elts[16] = ((closureN)self_73663)->elts[16]; -c_731438.elts[17] = ((closureN)self_73663)->elts[17]; -c_731438.elts[18] = ((closureN)self_73663)->elts[18]; -c_731438.elts[19] = ((closureN)self_73663)->elts[19]; -c_731438.elts[20] = ((closureN)self_73663)->elts[20]; -c_731438.elts[21] = ((closureN)self_73663)->elts[21]; -c_731438.elts[22] = ((closureN)self_73663)->elts[22]; -c_731438.elts[23] = ((closureN)self_73663)->elts[23]; -c_731438.elts[24] = ((closureN)self_73663)->elts[24]; -c_731438.elts[25] = ((closureN)self_73663)->elts[25]; -c_731438.elts[26] = ((closureN)self_73663)->elts[26]; -c_731438.elts[27] = ((closureN)self_73663)->elts[27]; -c_731438.elts[28] = ((closureN)self_73663)->elts[28]; -c_731438.elts[29] = ((closureN)self_73663)->elts[29]; -c_731438.elts[30] = ((closureN)self_73663)->elts[30]; -c_731438.elts[31] = ((closureN)self_73663)->elts[31]; -c_731438.elts[32] = ((closureN)self_73663)->elts[32]; -c_731438.elts[33] = ((closureN)self_73663)->elts[33]; -c_731438.elts[34] = translate_91args_73156; -c_731438.elts[35] = ((closureN)self_73663)->elts[34]; -c_731438.elts[36] = ((closureN)self_73663)->elts[35]; -c_731438.elts[37] = ((closureN)self_73663)->elts[36]; -c_731438.elts[38] = ((closureN)self_73663)->elts[37]; - - -make_cell(c_735187,((closureN)self_73663)->elts[38]); -return_closcall1(data,(closure)&c_731438, &c_735187);; -} - -static void __lambda_478(void *data, int argc, object self_73664, object untranslate_91term_73155) { - -closureN_type c_731440; -c_731440.hdr.mark = gc_color_red; - c_731440.hdr.grayed = 0; -c_731440.tag = closureN_tag; - c_731440.fn = (function_type)__lambda_477; -c_731440.num_args = 1; -c_731440.num_elt = 39; -c_731440.elts = (object *)alloca(sizeof(object) * 39); -c_731440.elts[0] = ((closureN)self_73664)->elts[0]; -c_731440.elts[1] = ((closureN)self_73664)->elts[1]; -c_731440.elts[2] = ((closureN)self_73664)->elts[2]; -c_731440.elts[3] = ((closureN)self_73664)->elts[3]; -c_731440.elts[4] = ((closureN)self_73664)->elts[4]; -c_731440.elts[5] = ((closureN)self_73664)->elts[5]; -c_731440.elts[6] = ((closureN)self_73664)->elts[6]; -c_731440.elts[7] = ((closureN)self_73664)->elts[7]; -c_731440.elts[8] = ((closureN)self_73664)->elts[8]; -c_731440.elts[9] = ((closureN)self_73664)->elts[9]; -c_731440.elts[10] = ((closureN)self_73664)->elts[10]; -c_731440.elts[11] = ((closureN)self_73664)->elts[11]; -c_731440.elts[12] = ((closureN)self_73664)->elts[12]; -c_731440.elts[13] = ((closureN)self_73664)->elts[13]; -c_731440.elts[14] = ((closureN)self_73664)->elts[14]; -c_731440.elts[15] = ((closureN)self_73664)->elts[16]; -c_731440.elts[16] = ((closureN)self_73664)->elts[17]; -c_731440.elts[17] = ((closureN)self_73664)->elts[18]; -c_731440.elts[18] = ((closureN)self_73664)->elts[19]; -c_731440.elts[19] = ((closureN)self_73664)->elts[20]; -c_731440.elts[20] = ((closureN)self_73664)->elts[21]; -c_731440.elts[21] = ((closureN)self_73664)->elts[22]; -c_731440.elts[22] = ((closureN)self_73664)->elts[23]; -c_731440.elts[23] = ((closureN)self_73664)->elts[24]; -c_731440.elts[24] = ((closureN)self_73664)->elts[25]; -c_731440.elts[25] = ((closureN)self_73664)->elts[26]; -c_731440.elts[26] = ((closureN)self_73664)->elts[27]; -c_731440.elts[27] = ((closureN)self_73664)->elts[28]; -c_731440.elts[28] = ((closureN)self_73664)->elts[29]; -c_731440.elts[29] = ((closureN)self_73664)->elts[30]; -c_731440.elts[30] = ((closureN)self_73664)->elts[31]; -c_731440.elts[31] = ((closureN)self_73664)->elts[32]; -c_731440.elts[32] = ((closureN)self_73664)->elts[33]; -c_731440.elts[33] = ((closureN)self_73664)->elts[34]; -c_731440.elts[34] = ((closureN)self_73664)->elts[35]; -c_731440.elts[35] = ((closureN)self_73664)->elts[36]; -c_731440.elts[36] = ((closureN)self_73664)->elts[37]; -c_731440.elts[37] = ((closureN)self_73664)->elts[38]; -c_731440.elts[38] = untranslate_91term_73155; - - -make_cell(c_735183,((closureN)self_73664)->elts[15]); -return_closcall1(data,(closure)&c_731440, &c_735183);; -} - -static void __lambda_477(void *data, int argc, object self_73665, object put_73154) { - -closureN_type c_731442; -c_731442.hdr.mark = gc_color_red; - c_731442.hdr.grayed = 0; -c_731442.tag = closureN_tag; - c_731442.fn = (function_type)__lambda_476; -c_731442.num_args = 1; -c_731442.num_elt = 39; -c_731442.elts = (object *)alloca(sizeof(object) * 39); -c_731442.elts[0] = ((closureN)self_73665)->elts[0]; -c_731442.elts[1] = ((closureN)self_73665)->elts[1]; -c_731442.elts[2] = ((closureN)self_73665)->elts[2]; -c_731442.elts[3] = ((closureN)self_73665)->elts[3]; -c_731442.elts[4] = ((closureN)self_73665)->elts[4]; -c_731442.elts[5] = ((closureN)self_73665)->elts[5]; -c_731442.elts[6] = ((closureN)self_73665)->elts[6]; -c_731442.elts[7] = ((closureN)self_73665)->elts[8]; -c_731442.elts[8] = ((closureN)self_73665)->elts[9]; -c_731442.elts[9] = ((closureN)self_73665)->elts[10]; -c_731442.elts[10] = ((closureN)self_73665)->elts[11]; -c_731442.elts[11] = ((closureN)self_73665)->elts[12]; -c_731442.elts[12] = ((closureN)self_73665)->elts[13]; -c_731442.elts[13] = ((closureN)self_73665)->elts[14]; -c_731442.elts[14] = put_73154; -c_731442.elts[15] = ((closureN)self_73665)->elts[15]; -c_731442.elts[16] = ((closureN)self_73665)->elts[16]; -c_731442.elts[17] = ((closureN)self_73665)->elts[17]; -c_731442.elts[18] = ((closureN)self_73665)->elts[18]; -c_731442.elts[19] = ((closureN)self_73665)->elts[19]; -c_731442.elts[20] = ((closureN)self_73665)->elts[20]; -c_731442.elts[21] = ((closureN)self_73665)->elts[21]; -c_731442.elts[22] = ((closureN)self_73665)->elts[22]; -c_731442.elts[23] = ((closureN)self_73665)->elts[23]; -c_731442.elts[24] = ((closureN)self_73665)->elts[24]; -c_731442.elts[25] = ((closureN)self_73665)->elts[25]; -c_731442.elts[26] = ((closureN)self_73665)->elts[26]; -c_731442.elts[27] = ((closureN)self_73665)->elts[27]; -c_731442.elts[28] = ((closureN)self_73665)->elts[28]; -c_731442.elts[29] = ((closureN)self_73665)->elts[29]; -c_731442.elts[30] = ((closureN)self_73665)->elts[30]; -c_731442.elts[31] = ((closureN)self_73665)->elts[31]; -c_731442.elts[32] = ((closureN)self_73665)->elts[32]; -c_731442.elts[33] = ((closureN)self_73665)->elts[33]; -c_731442.elts[34] = ((closureN)self_73665)->elts[34]; -c_731442.elts[35] = ((closureN)self_73665)->elts[35]; -c_731442.elts[36] = ((closureN)self_73665)->elts[36]; -c_731442.elts[37] = ((closureN)self_73665)->elts[37]; -c_731442.elts[38] = ((closureN)self_73665)->elts[38]; - - -make_cell(c_735179,((closureN)self_73665)->elts[7]); -return_closcall1(data,(closure)&c_731442, &c_735179);; -} - -static void __lambda_476(void *data, int argc, object self_73666, object get_73153) { - -closureN_type c_731444; -c_731444.hdr.mark = gc_color_red; - c_731444.hdr.grayed = 0; -c_731444.tag = closureN_tag; - c_731444.fn = (function_type)__lambda_475; -c_731444.num_args = 1; -c_731444.num_elt = 39; -c_731444.elts = (object *)alloca(sizeof(object) * 39); -c_731444.elts[0] = ((closureN)self_73666)->elts[0]; -c_731444.elts[1] = ((closureN)self_73666)->elts[1]; -c_731444.elts[2] = ((closureN)self_73666)->elts[2]; -c_731444.elts[3] = ((closureN)self_73666)->elts[3]; -c_731444.elts[4] = ((closureN)self_73666)->elts[4]; -c_731444.elts[5] = ((closureN)self_73666)->elts[5]; -c_731444.elts[6] = ((closureN)self_73666)->elts[6]; -c_731444.elts[7] = get_73153; -c_731444.elts[8] = ((closureN)self_73666)->elts[7]; -c_731444.elts[9] = ((closureN)self_73666)->elts[8]; -c_731444.elts[10] = ((closureN)self_73666)->elts[9]; -c_731444.elts[11] = ((closureN)self_73666)->elts[10]; -c_731444.elts[12] = ((closureN)self_73666)->elts[11]; -c_731444.elts[13] = ((closureN)self_73666)->elts[12]; -c_731444.elts[14] = ((closureN)self_73666)->elts[13]; -c_731444.elts[15] = ((closureN)self_73666)->elts[14]; -c_731444.elts[16] = ((closureN)self_73666)->elts[15]; -c_731444.elts[17] = ((closureN)self_73666)->elts[16]; -c_731444.elts[18] = ((closureN)self_73666)->elts[17]; -c_731444.elts[19] = ((closureN)self_73666)->elts[18]; -c_731444.elts[20] = ((closureN)self_73666)->elts[19]; -c_731444.elts[21] = ((closureN)self_73666)->elts[20]; -c_731444.elts[22] = ((closureN)self_73666)->elts[21]; -c_731444.elts[23] = ((closureN)self_73666)->elts[23]; -c_731444.elts[24] = ((closureN)self_73666)->elts[24]; -c_731444.elts[25] = ((closureN)self_73666)->elts[25]; -c_731444.elts[26] = ((closureN)self_73666)->elts[26]; -c_731444.elts[27] = ((closureN)self_73666)->elts[27]; -c_731444.elts[28] = ((closureN)self_73666)->elts[28]; -c_731444.elts[29] = ((closureN)self_73666)->elts[29]; -c_731444.elts[30] = ((closureN)self_73666)->elts[30]; -c_731444.elts[31] = ((closureN)self_73666)->elts[31]; -c_731444.elts[32] = ((closureN)self_73666)->elts[32]; -c_731444.elts[33] = ((closureN)self_73666)->elts[33]; -c_731444.elts[34] = ((closureN)self_73666)->elts[34]; -c_731444.elts[35] = ((closureN)self_73666)->elts[35]; -c_731444.elts[36] = ((closureN)self_73666)->elts[36]; -c_731444.elts[37] = ((closureN)self_73666)->elts[37]; -c_731444.elts[38] = ((closureN)self_73666)->elts[38]; - - -make_cell(c_735175,((closureN)self_73666)->elts[22]); -return_closcall1(data,(closure)&c_731444, &c_735175);; -} - -static void __lambda_475(void *data, int argc, object self_73667, object symbol_91_125symbol_91record_73152) { - -closureN_type c_731446; -c_731446.hdr.mark = gc_color_red; - c_731446.hdr.grayed = 0; -c_731446.tag = closureN_tag; - c_731446.fn = (function_type)__lambda_474; -c_731446.num_args = 1; -c_731446.num_elt = 39; -c_731446.elts = (object *)alloca(sizeof(object) * 39); -c_731446.elts[0] = ((closureN)self_73667)->elts[1]; -c_731446.elts[1] = ((closureN)self_73667)->elts[2]; -c_731446.elts[2] = ((closureN)self_73667)->elts[3]; -c_731446.elts[3] = ((closureN)self_73667)->elts[4]; -c_731446.elts[4] = ((closureN)self_73667)->elts[5]; -c_731446.elts[5] = ((closureN)self_73667)->elts[6]; -c_731446.elts[6] = ((closureN)self_73667)->elts[7]; -c_731446.elts[7] = ((closureN)self_73667)->elts[8]; -c_731446.elts[8] = ((closureN)self_73667)->elts[9]; -c_731446.elts[9] = ((closureN)self_73667)->elts[10]; -c_731446.elts[10] = ((closureN)self_73667)->elts[11]; -c_731446.elts[11] = ((closureN)self_73667)->elts[12]; -c_731446.elts[12] = ((closureN)self_73667)->elts[13]; -c_731446.elts[13] = ((closureN)self_73667)->elts[14]; -c_731446.elts[14] = ((closureN)self_73667)->elts[15]; -c_731446.elts[15] = ((closureN)self_73667)->elts[16]; -c_731446.elts[16] = ((closureN)self_73667)->elts[17]; -c_731446.elts[17] = ((closureN)self_73667)->elts[18]; -c_731446.elts[18] = ((closureN)self_73667)->elts[19]; -c_731446.elts[19] = ((closureN)self_73667)->elts[20]; -c_731446.elts[20] = ((closureN)self_73667)->elts[21]; -c_731446.elts[21] = ((closureN)self_73667)->elts[22]; -c_731446.elts[22] = symbol_91_125symbol_91record_73152; -c_731446.elts[23] = ((closureN)self_73667)->elts[23]; -c_731446.elts[24] = ((closureN)self_73667)->elts[24]; -c_731446.elts[25] = ((closureN)self_73667)->elts[25]; -c_731446.elts[26] = ((closureN)self_73667)->elts[26]; -c_731446.elts[27] = ((closureN)self_73667)->elts[27]; -c_731446.elts[28] = ((closureN)self_73667)->elts[28]; -c_731446.elts[29] = ((closureN)self_73667)->elts[29]; -c_731446.elts[30] = ((closureN)self_73667)->elts[30]; -c_731446.elts[31] = ((closureN)self_73667)->elts[31]; -c_731446.elts[32] = ((closureN)self_73667)->elts[32]; -c_731446.elts[33] = ((closureN)self_73667)->elts[33]; -c_731446.elts[34] = ((closureN)self_73667)->elts[34]; -c_731446.elts[35] = ((closureN)self_73667)->elts[35]; -c_731446.elts[36] = ((closureN)self_73667)->elts[36]; -c_731446.elts[37] = ((closureN)self_73667)->elts[37]; -c_731446.elts[38] = ((closureN)self_73667)->elts[38]; - - -make_cell(c_735171,((closureN)self_73667)->elts[0]); -return_closcall1(data,(closure)&c_731446, &c_735171);; -} - -static void __lambda_474(void *data, int argc, object self_73668, object _85symbol_91records_91alist_85_73151) { - -closureN_type c_731448; -c_731448.hdr.mark = gc_color_red; - c_731448.hdr.grayed = 0; -c_731448.tag = closureN_tag; - c_731448.fn = (function_type)__lambda_473; -c_731448.num_args = 1; -c_731448.num_elt = 39; -c_731448.elts = (object *)alloca(sizeof(object) * 39); -c_731448.elts[0] = _85symbol_91records_91alist_85_73151; -c_731448.elts[1] = ((closureN)self_73668)->elts[0]; -c_731448.elts[2] = ((closureN)self_73668)->elts[1]; -c_731448.elts[3] = ((closureN)self_73668)->elts[2]; -c_731448.elts[4] = ((closureN)self_73668)->elts[3]; -c_731448.elts[5] = ((closureN)self_73668)->elts[4]; -c_731448.elts[6] = ((closureN)self_73668)->elts[5]; -c_731448.elts[7] = ((closureN)self_73668)->elts[6]; -c_731448.elts[8] = ((closureN)self_73668)->elts[7]; -c_731448.elts[9] = ((closureN)self_73668)->elts[8]; -c_731448.elts[10] = ((closureN)self_73668)->elts[9]; -c_731448.elts[11] = ((closureN)self_73668)->elts[11]; -c_731448.elts[12] = ((closureN)self_73668)->elts[12]; -c_731448.elts[13] = ((closureN)self_73668)->elts[13]; -c_731448.elts[14] = ((closureN)self_73668)->elts[14]; -c_731448.elts[15] = ((closureN)self_73668)->elts[15]; -c_731448.elts[16] = ((closureN)self_73668)->elts[16]; -c_731448.elts[17] = ((closureN)self_73668)->elts[17]; -c_731448.elts[18] = ((closureN)self_73668)->elts[18]; -c_731448.elts[19] = ((closureN)self_73668)->elts[19]; -c_731448.elts[20] = ((closureN)self_73668)->elts[20]; -c_731448.elts[21] = ((closureN)self_73668)->elts[21]; -c_731448.elts[22] = ((closureN)self_73668)->elts[22]; -c_731448.elts[23] = ((closureN)self_73668)->elts[23]; -c_731448.elts[24] = ((closureN)self_73668)->elts[24]; -c_731448.elts[25] = ((closureN)self_73668)->elts[25]; -c_731448.elts[26] = ((closureN)self_73668)->elts[26]; -c_731448.elts[27] = ((closureN)self_73668)->elts[27]; -c_731448.elts[28] = ((closureN)self_73668)->elts[28]; -c_731448.elts[29] = ((closureN)self_73668)->elts[29]; -c_731448.elts[30] = ((closureN)self_73668)->elts[30]; -c_731448.elts[31] = ((closureN)self_73668)->elts[31]; -c_731448.elts[32] = ((closureN)self_73668)->elts[32]; -c_731448.elts[33] = ((closureN)self_73668)->elts[33]; -c_731448.elts[34] = ((closureN)self_73668)->elts[34]; -c_731448.elts[35] = ((closureN)self_73668)->elts[35]; -c_731448.elts[36] = ((closureN)self_73668)->elts[36]; -c_731448.elts[37] = ((closureN)self_73668)->elts[37]; -c_731448.elts[38] = ((closureN)self_73668)->elts[38]; - - -make_cell(c_735167,((closureN)self_73668)->elts[10]); -return_closcall1(data,(closure)&c_731448, &c_735167);; -} - -static void __lambda_473(void *data, int argc, object self_73669, object make_91symbol_91record_73150) { - -closureN_type c_731450; -c_731450.hdr.mark = gc_color_red; - c_731450.hdr.grayed = 0; -c_731450.tag = closureN_tag; - c_731450.fn = (function_type)__lambda_472; -c_731450.num_args = 1; -c_731450.num_elt = 39; -c_731450.elts = (object *)alloca(sizeof(object) * 39); -c_731450.elts[0] = ((closureN)self_73669)->elts[0]; -c_731450.elts[1] = ((closureN)self_73669)->elts[1]; -c_731450.elts[2] = ((closureN)self_73669)->elts[2]; -c_731450.elts[3] = ((closureN)self_73669)->elts[3]; -c_731450.elts[4] = ((closureN)self_73669)->elts[4]; -c_731450.elts[5] = ((closureN)self_73669)->elts[5]; -c_731450.elts[6] = ((closureN)self_73669)->elts[6]; -c_731450.elts[7] = ((closureN)self_73669)->elts[7]; -c_731450.elts[8] = ((closureN)self_73669)->elts[8]; -c_731450.elts[9] = ((closureN)self_73669)->elts[9]; -c_731450.elts[10] = ((closureN)self_73669)->elts[10]; -c_731450.elts[11] = make_91symbol_91record_73150; -c_731450.elts[12] = ((closureN)self_73669)->elts[11]; -c_731450.elts[13] = ((closureN)self_73669)->elts[12]; -c_731450.elts[14] = ((closureN)self_73669)->elts[13]; -c_731450.elts[15] = ((closureN)self_73669)->elts[14]; -c_731450.elts[16] = ((closureN)self_73669)->elts[16]; -c_731450.elts[17] = ((closureN)self_73669)->elts[17]; -c_731450.elts[18] = ((closureN)self_73669)->elts[18]; -c_731450.elts[19] = ((closureN)self_73669)->elts[19]; -c_731450.elts[20] = ((closureN)self_73669)->elts[20]; -c_731450.elts[21] = ((closureN)self_73669)->elts[21]; -c_731450.elts[22] = ((closureN)self_73669)->elts[22]; -c_731450.elts[23] = ((closureN)self_73669)->elts[23]; -c_731450.elts[24] = ((closureN)self_73669)->elts[24]; -c_731450.elts[25] = ((closureN)self_73669)->elts[25]; -c_731450.elts[26] = ((closureN)self_73669)->elts[26]; -c_731450.elts[27] = ((closureN)self_73669)->elts[27]; -c_731450.elts[28] = ((closureN)self_73669)->elts[28]; -c_731450.elts[29] = ((closureN)self_73669)->elts[29]; -c_731450.elts[30] = ((closureN)self_73669)->elts[30]; -c_731450.elts[31] = ((closureN)self_73669)->elts[31]; -c_731450.elts[32] = ((closureN)self_73669)->elts[32]; -c_731450.elts[33] = ((closureN)self_73669)->elts[33]; -c_731450.elts[34] = ((closureN)self_73669)->elts[34]; -c_731450.elts[35] = ((closureN)self_73669)->elts[35]; -c_731450.elts[36] = ((closureN)self_73669)->elts[36]; -c_731450.elts[37] = ((closureN)self_73669)->elts[37]; -c_731450.elts[38] = ((closureN)self_73669)->elts[38]; - - -make_cell(c_735163,((closureN)self_73669)->elts[15]); -return_closcall1(data,(closure)&c_731450, &c_735163);; -} - -static void __lambda_472(void *data, int argc, object self_73670, object put_91lemmas_67_73149) { - -closureN_type c_731452; -c_731452.hdr.mark = gc_color_red; - c_731452.hdr.grayed = 0; -c_731452.tag = closureN_tag; - c_731452.fn = (function_type)__lambda_471; -c_731452.num_args = 1; -c_731452.num_elt = 39; -c_731452.elts = (object *)alloca(sizeof(object) * 39); -c_731452.elts[0] = ((closureN)self_73670)->elts[0]; -c_731452.elts[1] = ((closureN)self_73670)->elts[1]; -c_731452.elts[2] = ((closureN)self_73670)->elts[2]; -c_731452.elts[3] = ((closureN)self_73670)->elts[3]; -c_731452.elts[4] = ((closureN)self_73670)->elts[4]; -c_731452.elts[5] = ((closureN)self_73670)->elts[5]; -c_731452.elts[6] = ((closureN)self_73670)->elts[6]; -c_731452.elts[7] = ((closureN)self_73670)->elts[7]; -c_731452.elts[8] = ((closureN)self_73670)->elts[9]; -c_731452.elts[9] = ((closureN)self_73670)->elts[10]; -c_731452.elts[10] = ((closureN)self_73670)->elts[11]; -c_731452.elts[11] = ((closureN)self_73670)->elts[12]; -c_731452.elts[12] = ((closureN)self_73670)->elts[13]; -c_731452.elts[13] = ((closureN)self_73670)->elts[14]; -c_731452.elts[14] = ((closureN)self_73670)->elts[15]; -c_731452.elts[15] = put_91lemmas_67_73149; -c_731452.elts[16] = ((closureN)self_73670)->elts[16]; -c_731452.elts[17] = ((closureN)self_73670)->elts[17]; -c_731452.elts[18] = ((closureN)self_73670)->elts[18]; -c_731452.elts[19] = ((closureN)self_73670)->elts[19]; -c_731452.elts[20] = ((closureN)self_73670)->elts[20]; -c_731452.elts[21] = ((closureN)self_73670)->elts[21]; -c_731452.elts[22] = ((closureN)self_73670)->elts[22]; -c_731452.elts[23] = ((closureN)self_73670)->elts[23]; -c_731452.elts[24] = ((closureN)self_73670)->elts[24]; -c_731452.elts[25] = ((closureN)self_73670)->elts[25]; -c_731452.elts[26] = ((closureN)self_73670)->elts[26]; -c_731452.elts[27] = ((closureN)self_73670)->elts[27]; -c_731452.elts[28] = ((closureN)self_73670)->elts[28]; -c_731452.elts[29] = ((closureN)self_73670)->elts[29]; -c_731452.elts[30] = ((closureN)self_73670)->elts[30]; -c_731452.elts[31] = ((closureN)self_73670)->elts[31]; -c_731452.elts[32] = ((closureN)self_73670)->elts[32]; -c_731452.elts[33] = ((closureN)self_73670)->elts[33]; -c_731452.elts[34] = ((closureN)self_73670)->elts[34]; -c_731452.elts[35] = ((closureN)self_73670)->elts[35]; -c_731452.elts[36] = ((closureN)self_73670)->elts[36]; -c_731452.elts[37] = ((closureN)self_73670)->elts[37]; -c_731452.elts[38] = ((closureN)self_73670)->elts[38]; - - -make_cell(c_735159,((closureN)self_73670)->elts[8]); -return_closcall1(data,(closure)&c_731452, &c_735159);; -} - -static void __lambda_471(void *data, int argc, object self_73671, object get_91lemmas_73148) { - -closureN_type c_731454; -c_731454.hdr.mark = gc_color_red; - c_731454.hdr.grayed = 0; -c_731454.tag = closureN_tag; - c_731454.fn = (function_type)__lambda_470; -c_731454.num_args = 1; -c_731454.num_elt = 39; -c_731454.elts = (object *)alloca(sizeof(object) * 39); -c_731454.elts[0] = ((closureN)self_73671)->elts[0]; -c_731454.elts[1] = ((closureN)self_73671)->elts[1]; -c_731454.elts[2] = ((closureN)self_73671)->elts[2]; -c_731454.elts[3] = ((closureN)self_73671)->elts[3]; -c_731454.elts[4] = ((closureN)self_73671)->elts[4]; -c_731454.elts[5] = ((closureN)self_73671)->elts[5]; -c_731454.elts[6] = ((closureN)self_73671)->elts[6]; -c_731454.elts[7] = ((closureN)self_73671)->elts[7]; -c_731454.elts[8] = get_91lemmas_73148; -c_731454.elts[9] = ((closureN)self_73671)->elts[9]; -c_731454.elts[10] = ((closureN)self_73671)->elts[10]; -c_731454.elts[11] = ((closureN)self_73671)->elts[11]; -c_731454.elts[12] = ((closureN)self_73671)->elts[12]; -c_731454.elts[13] = ((closureN)self_73671)->elts[13]; -c_731454.elts[14] = ((closureN)self_73671)->elts[14]; -c_731454.elts[15] = ((closureN)self_73671)->elts[15]; -c_731454.elts[16] = ((closureN)self_73671)->elts[16]; -c_731454.elts[17] = ((closureN)self_73671)->elts[17]; -c_731454.elts[18] = ((closureN)self_73671)->elts[18]; -c_731454.elts[19] = ((closureN)self_73671)->elts[19]; -c_731454.elts[20] = ((closureN)self_73671)->elts[20]; -c_731454.elts[21] = ((closureN)self_73671)->elts[21]; -c_731454.elts[22] = ((closureN)self_73671)->elts[22]; -c_731454.elts[23] = ((closureN)self_73671)->elts[23]; -c_731454.elts[24] = ((closureN)self_73671)->elts[24]; -c_731454.elts[25] = ((closureN)self_73671)->elts[25]; -c_731454.elts[26] = ((closureN)self_73671)->elts[26]; -c_731454.elts[27] = ((closureN)self_73671)->elts[27]; -c_731454.elts[28] = ((closureN)self_73671)->elts[28]; -c_731454.elts[29] = ((closureN)self_73671)->elts[29]; -c_731454.elts[30] = ((closureN)self_73671)->elts[30]; -c_731454.elts[31] = ((closureN)self_73671)->elts[31]; -c_731454.elts[32] = ((closureN)self_73671)->elts[32]; -c_731454.elts[33] = ((closureN)self_73671)->elts[33]; -c_731454.elts[34] = ((closureN)self_73671)->elts[34]; -c_731454.elts[35] = ((closureN)self_73671)->elts[35]; -c_731454.elts[36] = ((closureN)self_73671)->elts[36]; -c_731454.elts[37] = ((closureN)self_73671)->elts[37]; -c_731454.elts[38] = ((closureN)self_73671)->elts[38]; - - -make_cell(c_735155,((closureN)self_73671)->elts[8]); -return_closcall1(data,(closure)&c_731454, &c_735155);; -} - -static void __lambda_470(void *data, int argc, object self_73672, object get_91name_73147) { - -closureN_type c_731456; -c_731456.hdr.mark = gc_color_red; - c_731456.hdr.grayed = 0; -c_731456.tag = closureN_tag; - c_731456.fn = (function_type)__lambda_469; -c_731456.num_args = 1; -c_731456.num_elt = 39; -c_731456.elts = (object *)alloca(sizeof(object) * 39); -c_731456.elts[0] = ((closureN)self_73672)->elts[0]; -c_731456.elts[1] = ((closureN)self_73672)->elts[1]; -c_731456.elts[2] = ((closureN)self_73672)->elts[2]; -c_731456.elts[3] = ((closureN)self_73672)->elts[3]; -c_731456.elts[4] = ((closureN)self_73672)->elts[4]; -c_731456.elts[5] = ((closureN)self_73672)->elts[5]; -c_731456.elts[6] = ((closureN)self_73672)->elts[6]; -c_731456.elts[7] = ((closureN)self_73672)->elts[7]; -c_731456.elts[8] = ((closureN)self_73672)->elts[8]; -c_731456.elts[9] = get_91name_73147; -c_731456.elts[10] = ((closureN)self_73672)->elts[9]; -c_731456.elts[11] = ((closureN)self_73672)->elts[10]; -c_731456.elts[12] = ((closureN)self_73672)->elts[11]; -c_731456.elts[13] = ((closureN)self_73672)->elts[12]; -c_731456.elts[14] = ((closureN)self_73672)->elts[13]; -c_731456.elts[15] = ((closureN)self_73672)->elts[14]; -c_731456.elts[16] = ((closureN)self_73672)->elts[15]; -c_731456.elts[17] = ((closureN)self_73672)->elts[16]; -c_731456.elts[18] = ((closureN)self_73672)->elts[17]; -c_731456.elts[19] = ((closureN)self_73672)->elts[18]; -c_731456.elts[20] = ((closureN)self_73672)->elts[19]; -c_731456.elts[21] = ((closureN)self_73672)->elts[20]; -c_731456.elts[22] = ((closureN)self_73672)->elts[21]; -c_731456.elts[23] = ((closureN)self_73672)->elts[22]; -c_731456.elts[24] = ((closureN)self_73672)->elts[24]; -c_731456.elts[25] = ((closureN)self_73672)->elts[25]; -c_731456.elts[26] = ((closureN)self_73672)->elts[26]; -c_731456.elts[27] = ((closureN)self_73672)->elts[27]; -c_731456.elts[28] = ((closureN)self_73672)->elts[28]; -c_731456.elts[29] = ((closureN)self_73672)->elts[29]; -c_731456.elts[30] = ((closureN)self_73672)->elts[30]; -c_731456.elts[31] = ((closureN)self_73672)->elts[31]; -c_731456.elts[32] = ((closureN)self_73672)->elts[32]; -c_731456.elts[33] = ((closureN)self_73672)->elts[33]; -c_731456.elts[34] = ((closureN)self_73672)->elts[34]; -c_731456.elts[35] = ((closureN)self_73672)->elts[35]; -c_731456.elts[36] = ((closureN)self_73672)->elts[36]; -c_731456.elts[37] = ((closureN)self_73672)->elts[37]; -c_731456.elts[38] = ((closureN)self_73672)->elts[38]; - - -make_cell(c_735151,((closureN)self_73672)->elts[23]); -return_closcall1(data,(closure)&c_731456, &c_735151);; -} - -static void __lambda_469(void *data, int argc, object self_73673, object symbol_91record_91equal_127_73146) { - -closureN_type c_731458; -c_731458.hdr.mark = gc_color_red; - c_731458.hdr.grayed = 0; -c_731458.tag = closureN_tag; - c_731458.fn = (function_type)__lambda_468; -c_731458.num_args = 1; -c_731458.num_elt = 39; -c_731458.elts = (object *)alloca(sizeof(object) * 39); -c_731458.elts[0] = ((closureN)self_73673)->elts[0]; -c_731458.elts[1] = ((closureN)self_73673)->elts[1]; -c_731458.elts[2] = ((closureN)self_73673)->elts[2]; -c_731458.elts[3] = ((closureN)self_73673)->elts[3]; -c_731458.elts[4] = ((closureN)self_73673)->elts[4]; -c_731458.elts[5] = ((closureN)self_73673)->elts[5]; -c_731458.elts[6] = ((closureN)self_73673)->elts[6]; -c_731458.elts[7] = ((closureN)self_73673)->elts[7]; -c_731458.elts[8] = ((closureN)self_73673)->elts[8]; -c_731458.elts[9] = ((closureN)self_73673)->elts[9]; -c_731458.elts[10] = ((closureN)self_73673)->elts[10]; -c_731458.elts[11] = ((closureN)self_73673)->elts[11]; -c_731458.elts[12] = ((closureN)self_73673)->elts[12]; -c_731458.elts[13] = ((closureN)self_73673)->elts[13]; -c_731458.elts[14] = ((closureN)self_73673)->elts[14]; -c_731458.elts[15] = ((closureN)self_73673)->elts[15]; -c_731458.elts[16] = ((closureN)self_73673)->elts[16]; -c_731458.elts[17] = ((closureN)self_73673)->elts[17]; -c_731458.elts[18] = ((closureN)self_73673)->elts[18]; -c_731458.elts[19] = ((closureN)self_73673)->elts[19]; -c_731458.elts[20] = ((closureN)self_73673)->elts[20]; -c_731458.elts[21] = ((closureN)self_73673)->elts[21]; -c_731458.elts[22] = ((closureN)self_73673)->elts[22]; -c_731458.elts[23] = ((closureN)self_73673)->elts[23]; -c_731458.elts[24] = symbol_91record_91equal_127_73146; -c_731458.elts[25] = ((closureN)self_73673)->elts[24]; -c_731458.elts[26] = ((closureN)self_73673)->elts[25]; -c_731458.elts[27] = ((closureN)self_73673)->elts[26]; -c_731458.elts[28] = ((closureN)self_73673)->elts[27]; -c_731458.elts[29] = ((closureN)self_73673)->elts[28]; -c_731458.elts[30] = ((closureN)self_73673)->elts[30]; -c_731458.elts[31] = ((closureN)self_73673)->elts[31]; -c_731458.elts[32] = ((closureN)self_73673)->elts[32]; -c_731458.elts[33] = ((closureN)self_73673)->elts[33]; -c_731458.elts[34] = ((closureN)self_73673)->elts[34]; -c_731458.elts[35] = ((closureN)self_73673)->elts[35]; -c_731458.elts[36] = ((closureN)self_73673)->elts[36]; -c_731458.elts[37] = ((closureN)self_73673)->elts[37]; -c_731458.elts[38] = ((closureN)self_73673)->elts[38]; - - -make_cell(c_735147,((closureN)self_73673)->elts[29]); -return_closcall1(data,(closure)&c_731458, &c_735147);; -} - -static void __lambda_468(void *data, int argc, object self_73674, object test_73145) { - -closureN_type c_731460; -c_731460.hdr.mark = gc_color_red; - c_731460.hdr.grayed = 0; -c_731460.tag = closureN_tag; - c_731460.fn = (function_type)__lambda_467; -c_731460.num_args = 1; -c_731460.num_elt = 39; -c_731460.elts = (object *)alloca(sizeof(object) * 39); -c_731460.elts[0] = ((closureN)self_73674)->elts[0]; -c_731460.elts[1] = ((closureN)self_73674)->elts[1]; -c_731460.elts[2] = ((closureN)self_73674)->elts[2]; -c_731460.elts[3] = ((closureN)self_73674)->elts[3]; -c_731460.elts[4] = ((closureN)self_73674)->elts[4]; -c_731460.elts[5] = ((closureN)self_73674)->elts[5]; -c_731460.elts[6] = ((closureN)self_73674)->elts[6]; -c_731460.elts[7] = ((closureN)self_73674)->elts[7]; -c_731460.elts[8] = ((closureN)self_73674)->elts[8]; -c_731460.elts[9] = ((closureN)self_73674)->elts[9]; -c_731460.elts[10] = ((closureN)self_73674)->elts[10]; -c_731460.elts[11] = ((closureN)self_73674)->elts[11]; -c_731460.elts[12] = ((closureN)self_73674)->elts[12]; -c_731460.elts[13] = ((closureN)self_73674)->elts[13]; -c_731460.elts[14] = ((closureN)self_73674)->elts[14]; -c_731460.elts[15] = ((closureN)self_73674)->elts[15]; -c_731460.elts[16] = ((closureN)self_73674)->elts[16]; -c_731460.elts[17] = ((closureN)self_73674)->elts[17]; -c_731460.elts[18] = ((closureN)self_73674)->elts[18]; -c_731460.elts[19] = ((closureN)self_73674)->elts[19]; -c_731460.elts[20] = ((closureN)self_73674)->elts[20]; -c_731460.elts[21] = ((closureN)self_73674)->elts[21]; -c_731460.elts[22] = ((closureN)self_73674)->elts[22]; -c_731460.elts[23] = ((closureN)self_73674)->elts[23]; -c_731460.elts[24] = ((closureN)self_73674)->elts[24]; -c_731460.elts[25] = ((closureN)self_73674)->elts[25]; -c_731460.elts[26] = ((closureN)self_73674)->elts[26]; -c_731460.elts[27] = ((closureN)self_73674)->elts[27]; -c_731460.elts[28] = ((closureN)self_73674)->elts[28]; -c_731460.elts[29] = ((closureN)self_73674)->elts[29]; -c_731460.elts[30] = test_73145; -c_731460.elts[31] = ((closureN)self_73674)->elts[30]; -c_731460.elts[32] = ((closureN)self_73674)->elts[31]; -c_731460.elts[33] = ((closureN)self_73674)->elts[33]; -c_731460.elts[34] = ((closureN)self_73674)->elts[34]; -c_731460.elts[35] = ((closureN)self_73674)->elts[35]; -c_731460.elts[36] = ((closureN)self_73674)->elts[36]; -c_731460.elts[37] = ((closureN)self_73674)->elts[37]; -c_731460.elts[38] = ((closureN)self_73674)->elts[38]; - - -make_cell(c_735143,((closureN)self_73674)->elts[32]); -return_closcall1(data,(closure)&c_731460, &c_735143);; -} - -static void __lambda_467(void *data, int argc, object self_73675, object translate_91alist_73144) { - -closureN_type c_731462; -c_731462.hdr.mark = gc_color_red; - c_731462.hdr.grayed = 0; -c_731462.tag = closureN_tag; - c_731462.fn = (function_type)__lambda_466; -c_731462.num_args = 1; -c_731462.num_elt = 39; -c_731462.elts = (object *)alloca(sizeof(object) * 39); -c_731462.elts[0] = ((closureN)self_73675)->elts[0]; -c_731462.elts[1] = ((closureN)self_73675)->elts[1]; -c_731462.elts[2] = ((closureN)self_73675)->elts[2]; -c_731462.elts[3] = ((closureN)self_73675)->elts[4]; -c_731462.elts[4] = ((closureN)self_73675)->elts[5]; -c_731462.elts[5] = ((closureN)self_73675)->elts[6]; -c_731462.elts[6] = ((closureN)self_73675)->elts[7]; -c_731462.elts[7] = ((closureN)self_73675)->elts[8]; -c_731462.elts[8] = ((closureN)self_73675)->elts[9]; -c_731462.elts[9] = ((closureN)self_73675)->elts[10]; -c_731462.elts[10] = ((closureN)self_73675)->elts[11]; -c_731462.elts[11] = ((closureN)self_73675)->elts[12]; -c_731462.elts[12] = ((closureN)self_73675)->elts[13]; -c_731462.elts[13] = ((closureN)self_73675)->elts[14]; -c_731462.elts[14] = ((closureN)self_73675)->elts[15]; -c_731462.elts[15] = ((closureN)self_73675)->elts[16]; -c_731462.elts[16] = ((closureN)self_73675)->elts[17]; -c_731462.elts[17] = ((closureN)self_73675)->elts[18]; -c_731462.elts[18] = ((closureN)self_73675)->elts[19]; -c_731462.elts[19] = ((closureN)self_73675)->elts[20]; -c_731462.elts[20] = ((closureN)self_73675)->elts[21]; -c_731462.elts[21] = ((closureN)self_73675)->elts[22]; -c_731462.elts[22] = ((closureN)self_73675)->elts[23]; -c_731462.elts[23] = ((closureN)self_73675)->elts[24]; -c_731462.elts[24] = ((closureN)self_73675)->elts[25]; -c_731462.elts[25] = ((closureN)self_73675)->elts[26]; -c_731462.elts[26] = ((closureN)self_73675)->elts[27]; -c_731462.elts[27] = ((closureN)self_73675)->elts[28]; -c_731462.elts[28] = ((closureN)self_73675)->elts[29]; -c_731462.elts[29] = ((closureN)self_73675)->elts[30]; -c_731462.elts[30] = ((closureN)self_73675)->elts[31]; -c_731462.elts[31] = ((closureN)self_73675)->elts[32]; -c_731462.elts[32] = translate_91alist_73144; -c_731462.elts[33] = ((closureN)self_73675)->elts[33]; -c_731462.elts[34] = ((closureN)self_73675)->elts[34]; -c_731462.elts[35] = ((closureN)self_73675)->elts[35]; -c_731462.elts[36] = ((closureN)self_73675)->elts[36]; -c_731462.elts[37] = ((closureN)self_73675)->elts[37]; -c_731462.elts[38] = ((closureN)self_73675)->elts[38]; - - -make_cell(c_735139,((closureN)self_73675)->elts[3]); -return_closcall1(data,(closure)&c_731462, &c_735139);; -} - -static void __lambda_466(void *data, int argc, object self_73676, object apply_91subst_73143) { - -closureN_type c_731464; -c_731464.hdr.mark = gc_color_red; - c_731464.hdr.grayed = 0; -c_731464.tag = closureN_tag; - c_731464.fn = (function_type)__lambda_465; -c_731464.num_args = 1; -c_731464.num_elt = 39; -c_731464.elts = (object *)alloca(sizeof(object) * 39); -c_731464.elts[0] = ((closureN)self_73676)->elts[0]; -c_731464.elts[1] = ((closureN)self_73676)->elts[1]; -c_731464.elts[2] = ((closureN)self_73676)->elts[2]; -c_731464.elts[3] = apply_91subst_73143; -c_731464.elts[4] = ((closureN)self_73676)->elts[4]; -c_731464.elts[5] = ((closureN)self_73676)->elts[5]; -c_731464.elts[6] = ((closureN)self_73676)->elts[6]; -c_731464.elts[7] = ((closureN)self_73676)->elts[7]; -c_731464.elts[8] = ((closureN)self_73676)->elts[8]; -c_731464.elts[9] = ((closureN)self_73676)->elts[9]; -c_731464.elts[10] = ((closureN)self_73676)->elts[10]; -c_731464.elts[11] = ((closureN)self_73676)->elts[11]; -c_731464.elts[12] = ((closureN)self_73676)->elts[12]; -c_731464.elts[13] = ((closureN)self_73676)->elts[13]; -c_731464.elts[14] = ((closureN)self_73676)->elts[14]; -c_731464.elts[15] = ((closureN)self_73676)->elts[15]; -c_731464.elts[16] = ((closureN)self_73676)->elts[16]; -c_731464.elts[17] = ((closureN)self_73676)->elts[17]; -c_731464.elts[18] = ((closureN)self_73676)->elts[18]; -c_731464.elts[19] = ((closureN)self_73676)->elts[19]; -c_731464.elts[20] = ((closureN)self_73676)->elts[20]; -c_731464.elts[21] = ((closureN)self_73676)->elts[21]; -c_731464.elts[22] = ((closureN)self_73676)->elts[22]; -c_731464.elts[23] = ((closureN)self_73676)->elts[23]; -c_731464.elts[24] = ((closureN)self_73676)->elts[24]; -c_731464.elts[25] = ((closureN)self_73676)->elts[25]; -c_731464.elts[26] = ((closureN)self_73676)->elts[26]; -c_731464.elts[27] = ((closureN)self_73676)->elts[27]; -c_731464.elts[28] = ((closureN)self_73676)->elts[28]; -c_731464.elts[29] = ((closureN)self_73676)->elts[29]; -c_731464.elts[30] = ((closureN)self_73676)->elts[30]; -c_731464.elts[31] = ((closureN)self_73676)->elts[31]; -c_731464.elts[32] = ((closureN)self_73676)->elts[32]; -c_731464.elts[33] = ((closureN)self_73676)->elts[33]; -c_731464.elts[34] = ((closureN)self_73676)->elts[34]; -c_731464.elts[35] = ((closureN)self_73676)->elts[35]; -c_731464.elts[36] = ((closureN)self_73676)->elts[36]; -c_731464.elts[37] = ((closureN)self_73676)->elts[37]; -c_731464.elts[38] = ((closureN)self_73676)->elts[38]; - - -make_cell(c_735135,((closureN)self_73676)->elts[3]); -return_closcall1(data,(closure)&c_731464, &c_735135);; -} - -static void __lambda_465(void *data, int argc, object self_73677, object apply_91subst_91lst_73142) { - -closureN_type c_731466; -c_731466.hdr.mark = gc_color_red; - c_731466.hdr.grayed = 0; -c_731466.tag = closureN_tag; - c_731466.fn = (function_type)__lambda_464; -c_731466.num_args = 1; -c_731466.num_elt = 39; -c_731466.elts = (object *)alloca(sizeof(object) * 39); -c_731466.elts[0] = ((closureN)self_73677)->elts[0]; -c_731466.elts[1] = ((closureN)self_73677)->elts[1]; -c_731466.elts[2] = ((closureN)self_73677)->elts[2]; -c_731466.elts[3] = ((closureN)self_73677)->elts[3]; -c_731466.elts[4] = apply_91subst_91lst_73142; -c_731466.elts[5] = ((closureN)self_73677)->elts[4]; -c_731466.elts[6] = ((closureN)self_73677)->elts[5]; -c_731466.elts[7] = ((closureN)self_73677)->elts[6]; -c_731466.elts[8] = ((closureN)self_73677)->elts[7]; -c_731466.elts[9] = ((closureN)self_73677)->elts[8]; -c_731466.elts[10] = ((closureN)self_73677)->elts[9]; -c_731466.elts[11] = ((closureN)self_73677)->elts[10]; -c_731466.elts[12] = ((closureN)self_73677)->elts[11]; -c_731466.elts[13] = ((closureN)self_73677)->elts[12]; -c_731466.elts[14] = ((closureN)self_73677)->elts[13]; -c_731466.elts[15] = ((closureN)self_73677)->elts[14]; -c_731466.elts[16] = ((closureN)self_73677)->elts[15]; -c_731466.elts[17] = ((closureN)self_73677)->elts[16]; -c_731466.elts[18] = ((closureN)self_73677)->elts[17]; -c_731466.elts[19] = ((closureN)self_73677)->elts[18]; -c_731466.elts[20] = ((closureN)self_73677)->elts[19]; -c_731466.elts[21] = ((closureN)self_73677)->elts[20]; -c_731466.elts[22] = ((closureN)self_73677)->elts[21]; -c_731466.elts[23] = ((closureN)self_73677)->elts[22]; -c_731466.elts[24] = ((closureN)self_73677)->elts[23]; -c_731466.elts[25] = ((closureN)self_73677)->elts[24]; -c_731466.elts[26] = ((closureN)self_73677)->elts[26]; -c_731466.elts[27] = ((closureN)self_73677)->elts[27]; -c_731466.elts[28] = ((closureN)self_73677)->elts[28]; -c_731466.elts[29] = ((closureN)self_73677)->elts[29]; -c_731466.elts[30] = ((closureN)self_73677)->elts[30]; -c_731466.elts[31] = ((closureN)self_73677)->elts[31]; -c_731466.elts[32] = ((closureN)self_73677)->elts[32]; -c_731466.elts[33] = ((closureN)self_73677)->elts[33]; -c_731466.elts[34] = ((closureN)self_73677)->elts[34]; -c_731466.elts[35] = ((closureN)self_73677)->elts[35]; -c_731466.elts[36] = ((closureN)self_73677)->elts[36]; -c_731466.elts[37] = ((closureN)self_73677)->elts[37]; -c_731466.elts[38] = ((closureN)self_73677)->elts[38]; - - -make_cell(c_735131,((closureN)self_73677)->elts[25]); -return_closcall1(data,(closure)&c_731466, &c_735131);; -} - -static void __lambda_464(void *data, int argc, object self_73678, object tautp_73141) { - -closureN_type c_731468; -c_731468.hdr.mark = gc_color_red; - c_731468.hdr.grayed = 0; -c_731468.tag = closureN_tag; - c_731468.fn = (function_type)__lambda_463; -c_731468.num_args = 1; -c_731468.num_elt = 39; -c_731468.elts = (object *)alloca(sizeof(object) * 39); -c_731468.elts[0] = ((closureN)self_73678)->elts[0]; -c_731468.elts[1] = ((closureN)self_73678)->elts[1]; -c_731468.elts[2] = ((closureN)self_73678)->elts[2]; -c_731468.elts[3] = ((closureN)self_73678)->elts[3]; -c_731468.elts[4] = ((closureN)self_73678)->elts[4]; -c_731468.elts[5] = ((closureN)self_73678)->elts[5]; -c_731468.elts[6] = ((closureN)self_73678)->elts[6]; -c_731468.elts[7] = ((closureN)self_73678)->elts[7]; -c_731468.elts[8] = ((closureN)self_73678)->elts[8]; -c_731468.elts[9] = ((closureN)self_73678)->elts[9]; -c_731468.elts[10] = ((closureN)self_73678)->elts[10]; -c_731468.elts[11] = ((closureN)self_73678)->elts[11]; -c_731468.elts[12] = ((closureN)self_73678)->elts[12]; -c_731468.elts[13] = ((closureN)self_73678)->elts[13]; -c_731468.elts[14] = ((closureN)self_73678)->elts[14]; -c_731468.elts[15] = ((closureN)self_73678)->elts[15]; -c_731468.elts[16] = ((closureN)self_73678)->elts[16]; -c_731468.elts[17] = ((closureN)self_73678)->elts[17]; -c_731468.elts[18] = ((closureN)self_73678)->elts[18]; -c_731468.elts[19] = ((closureN)self_73678)->elts[19]; -c_731468.elts[20] = ((closureN)self_73678)->elts[20]; -c_731468.elts[21] = ((closureN)self_73678)->elts[21]; -c_731468.elts[22] = ((closureN)self_73678)->elts[22]; -c_731468.elts[23] = ((closureN)self_73678)->elts[23]; -c_731468.elts[24] = ((closureN)self_73678)->elts[24]; -c_731468.elts[25] = tautp_73141; -c_731468.elts[26] = ((closureN)self_73678)->elts[26]; -c_731468.elts[27] = ((closureN)self_73678)->elts[27]; -c_731468.elts[28] = ((closureN)self_73678)->elts[28]; -c_731468.elts[29] = ((closureN)self_73678)->elts[29]; -c_731468.elts[30] = ((closureN)self_73678)->elts[30]; -c_731468.elts[31] = ((closureN)self_73678)->elts[31]; -c_731468.elts[32] = ((closureN)self_73678)->elts[32]; -c_731468.elts[33] = ((closureN)self_73678)->elts[33]; -c_731468.elts[34] = ((closureN)self_73678)->elts[34]; -c_731468.elts[35] = ((closureN)self_73678)->elts[35]; -c_731468.elts[36] = ((closureN)self_73678)->elts[36]; -c_731468.elts[37] = ((closureN)self_73678)->elts[37]; -c_731468.elts[38] = ((closureN)self_73678)->elts[38]; - - -make_cell(c_735127,((closureN)self_73678)->elts[25]); -return_closcall1(data,(closure)&c_731468, &c_735127);; -} - -static void __lambda_463(void *data, int argc, object self_73679, object tautologyp_73140) { - -closureN_type c_731470; -c_731470.hdr.mark = gc_color_red; - c_731470.hdr.grayed = 0; -c_731470.tag = closureN_tag; - c_731470.fn = (function_type)__lambda_462; -c_731470.num_args = 1; -c_731470.num_elt = 39; -c_731470.elts = (object *)alloca(sizeof(object) * 39); -c_731470.elts[0] = ((closureN)self_73679)->elts[0]; -c_731470.elts[1] = ((closureN)self_73679)->elts[1]; -c_731470.elts[2] = ((closureN)self_73679)->elts[2]; -c_731470.elts[3] = ((closureN)self_73679)->elts[3]; -c_731470.elts[4] = ((closureN)self_73679)->elts[4]; -c_731470.elts[5] = ((closureN)self_73679)->elts[5]; -c_731470.elts[6] = ((closureN)self_73679)->elts[6]; -c_731470.elts[7] = ((closureN)self_73679)->elts[7]; -c_731470.elts[8] = ((closureN)self_73679)->elts[8]; -c_731470.elts[9] = ((closureN)self_73679)->elts[9]; -c_731470.elts[10] = ((closureN)self_73679)->elts[11]; -c_731470.elts[11] = ((closureN)self_73679)->elts[12]; -c_731470.elts[12] = ((closureN)self_73679)->elts[13]; -c_731470.elts[13] = ((closureN)self_73679)->elts[14]; -c_731470.elts[14] = ((closureN)self_73679)->elts[15]; -c_731470.elts[15] = ((closureN)self_73679)->elts[16]; -c_731470.elts[16] = ((closureN)self_73679)->elts[17]; -c_731470.elts[17] = ((closureN)self_73679)->elts[18]; -c_731470.elts[18] = ((closureN)self_73679)->elts[19]; -c_731470.elts[19] = ((closureN)self_73679)->elts[20]; -c_731470.elts[20] = ((closureN)self_73679)->elts[21]; -c_731470.elts[21] = ((closureN)self_73679)->elts[22]; -c_731470.elts[22] = ((closureN)self_73679)->elts[23]; -c_731470.elts[23] = ((closureN)self_73679)->elts[24]; -c_731470.elts[24] = tautologyp_73140; -c_731470.elts[25] = ((closureN)self_73679)->elts[25]; -c_731470.elts[26] = ((closureN)self_73679)->elts[26]; -c_731470.elts[27] = ((closureN)self_73679)->elts[27]; -c_731470.elts[28] = ((closureN)self_73679)->elts[28]; -c_731470.elts[29] = ((closureN)self_73679)->elts[29]; -c_731470.elts[30] = ((closureN)self_73679)->elts[30]; -c_731470.elts[31] = ((closureN)self_73679)->elts[31]; -c_731470.elts[32] = ((closureN)self_73679)->elts[32]; -c_731470.elts[33] = ((closureN)self_73679)->elts[33]; -c_731470.elts[34] = ((closureN)self_73679)->elts[34]; -c_731470.elts[35] = ((closureN)self_73679)->elts[35]; -c_731470.elts[36] = ((closureN)self_73679)->elts[36]; -c_731470.elts[37] = ((closureN)self_73679)->elts[37]; -c_731470.elts[38] = ((closureN)self_73679)->elts[38]; - - -make_cell(c_735123,((closureN)self_73679)->elts[10]); -return_closcall1(data,(closure)&c_731470, &c_735123);; -} - -static void __lambda_462(void *data, int argc, object self_73680, object if_91constructor_73139) { - -closureN_type c_731472; -c_731472.hdr.mark = gc_color_red; - c_731472.hdr.grayed = 0; -c_731472.tag = closureN_tag; - c_731472.fn = (function_type)__lambda_461; -c_731472.num_args = 1; -c_731472.num_elt = 39; -c_731472.elts = (object *)alloca(sizeof(object) * 39); -c_731472.elts[0] = ((closureN)self_73680)->elts[0]; -c_731472.elts[1] = ((closureN)self_73680)->elts[1]; -c_731472.elts[2] = ((closureN)self_73680)->elts[2]; -c_731472.elts[3] = ((closureN)self_73680)->elts[3]; -c_731472.elts[4] = ((closureN)self_73680)->elts[4]; -c_731472.elts[5] = ((closureN)self_73680)->elts[5]; -c_731472.elts[6] = ((closureN)self_73680)->elts[6]; -c_731472.elts[7] = ((closureN)self_73680)->elts[7]; -c_731472.elts[8] = ((closureN)self_73680)->elts[8]; -c_731472.elts[9] = ((closureN)self_73680)->elts[9]; -c_731472.elts[10] = if_91constructor_73139; -c_731472.elts[11] = ((closureN)self_73680)->elts[10]; -c_731472.elts[12] = ((closureN)self_73680)->elts[11]; -c_731472.elts[13] = ((closureN)self_73680)->elts[12]; -c_731472.elts[14] = ((closureN)self_73680)->elts[13]; -c_731472.elts[15] = ((closureN)self_73680)->elts[14]; -c_731472.elts[16] = ((closureN)self_73680)->elts[15]; -c_731472.elts[17] = ((closureN)self_73680)->elts[16]; -c_731472.elts[18] = ((closureN)self_73680)->elts[17]; -c_731472.elts[19] = ((closureN)self_73680)->elts[19]; -c_731472.elts[20] = ((closureN)self_73680)->elts[20]; -c_731472.elts[21] = ((closureN)self_73680)->elts[21]; -c_731472.elts[22] = ((closureN)self_73680)->elts[22]; -c_731472.elts[23] = ((closureN)self_73680)->elts[23]; -c_731472.elts[24] = ((closureN)self_73680)->elts[24]; -c_731472.elts[25] = ((closureN)self_73680)->elts[25]; -c_731472.elts[26] = ((closureN)self_73680)->elts[26]; -c_731472.elts[27] = ((closureN)self_73680)->elts[27]; -c_731472.elts[28] = ((closureN)self_73680)->elts[28]; -c_731472.elts[29] = ((closureN)self_73680)->elts[29]; -c_731472.elts[30] = ((closureN)self_73680)->elts[30]; -c_731472.elts[31] = ((closureN)self_73680)->elts[31]; -c_731472.elts[32] = ((closureN)self_73680)->elts[32]; -c_731472.elts[33] = ((closureN)self_73680)->elts[33]; -c_731472.elts[34] = ((closureN)self_73680)->elts[34]; -c_731472.elts[35] = ((closureN)self_73680)->elts[35]; -c_731472.elts[36] = ((closureN)self_73680)->elts[36]; -c_731472.elts[37] = ((closureN)self_73680)->elts[37]; -c_731472.elts[38] = ((closureN)self_73680)->elts[38]; - - -make_cell(c_735119,((closureN)self_73680)->elts[18]); -return_closcall1(data,(closure)&c_731472, &c_735119);; -} - -static void __lambda_461(void *data, int argc, object self_73681, object rewrite_91count_73138) { - -closureN_type c_731474; -c_731474.hdr.mark = gc_color_red; - c_731474.hdr.grayed = 0; -c_731474.tag = closureN_tag; - c_731474.fn = (function_type)__lambda_460; -c_731474.num_args = 1; -c_731474.num_elt = 39; -c_731474.elts = (object *)alloca(sizeof(object) * 39); -c_731474.elts[0] = ((closureN)self_73681)->elts[0]; -c_731474.elts[1] = ((closureN)self_73681)->elts[1]; -c_731474.elts[2] = ((closureN)self_73681)->elts[2]; -c_731474.elts[3] = ((closureN)self_73681)->elts[3]; -c_731474.elts[4] = ((closureN)self_73681)->elts[4]; -c_731474.elts[5] = ((closureN)self_73681)->elts[5]; -c_731474.elts[6] = ((closureN)self_73681)->elts[6]; -c_731474.elts[7] = ((closureN)self_73681)->elts[7]; -c_731474.elts[8] = ((closureN)self_73681)->elts[8]; -c_731474.elts[9] = ((closureN)self_73681)->elts[9]; -c_731474.elts[10] = ((closureN)self_73681)->elts[10]; -c_731474.elts[11] = ((closureN)self_73681)->elts[11]; -c_731474.elts[12] = ((closureN)self_73681)->elts[12]; -c_731474.elts[13] = ((closureN)self_73681)->elts[13]; -c_731474.elts[14] = ((closureN)self_73681)->elts[14]; -c_731474.elts[15] = ((closureN)self_73681)->elts[15]; -c_731474.elts[16] = ((closureN)self_73681)->elts[16]; -c_731474.elts[17] = ((closureN)self_73681)->elts[17]; -c_731474.elts[18] = ((closureN)self_73681)->elts[18]; -c_731474.elts[19] = rewrite_91count_73138; -c_731474.elts[20] = ((closureN)self_73681)->elts[19]; -c_731474.elts[21] = ((closureN)self_73681)->elts[21]; -c_731474.elts[22] = ((closureN)self_73681)->elts[22]; -c_731474.elts[23] = ((closureN)self_73681)->elts[23]; -c_731474.elts[24] = ((closureN)self_73681)->elts[24]; -c_731474.elts[25] = ((closureN)self_73681)->elts[25]; -c_731474.elts[26] = ((closureN)self_73681)->elts[26]; -c_731474.elts[27] = ((closureN)self_73681)->elts[27]; -c_731474.elts[28] = ((closureN)self_73681)->elts[28]; -c_731474.elts[29] = ((closureN)self_73681)->elts[29]; -c_731474.elts[30] = ((closureN)self_73681)->elts[30]; -c_731474.elts[31] = ((closureN)self_73681)->elts[31]; -c_731474.elts[32] = ((closureN)self_73681)->elts[32]; -c_731474.elts[33] = ((closureN)self_73681)->elts[33]; -c_731474.elts[34] = ((closureN)self_73681)->elts[34]; -c_731474.elts[35] = ((closureN)self_73681)->elts[35]; -c_731474.elts[36] = ((closureN)self_73681)->elts[36]; -c_731474.elts[37] = ((closureN)self_73681)->elts[37]; -c_731474.elts[38] = ((closureN)self_73681)->elts[38]; - - -make_cell(c_735115,((closureN)self_73681)->elts[20]); -return_closcall1(data,(closure)&c_731474, &c_735115);; -} - -static void __lambda_460(void *data, int argc, object self_73682, object scons_73137) { - -closureN_type c_731476; -c_731476.hdr.mark = gc_color_red; - c_731476.hdr.grayed = 0; -c_731476.tag = closureN_tag; - c_731476.fn = (function_type)__lambda_459; -c_731476.num_args = 1; -c_731476.num_elt = 39; -c_731476.elts = (object *)alloca(sizeof(object) * 39); -c_731476.elts[0] = ((closureN)self_73682)->elts[0]; -c_731476.elts[1] = ((closureN)self_73682)->elts[1]; -c_731476.elts[2] = ((closureN)self_73682)->elts[2]; -c_731476.elts[3] = ((closureN)self_73682)->elts[3]; -c_731476.elts[4] = ((closureN)self_73682)->elts[4]; -c_731476.elts[5] = ((closureN)self_73682)->elts[5]; -c_731476.elts[6] = ((closureN)self_73682)->elts[6]; -c_731476.elts[7] = ((closureN)self_73682)->elts[7]; -c_731476.elts[8] = ((closureN)self_73682)->elts[8]; -c_731476.elts[9] = ((closureN)self_73682)->elts[9]; -c_731476.elts[10] = ((closureN)self_73682)->elts[10]; -c_731476.elts[11] = ((closureN)self_73682)->elts[11]; -c_731476.elts[12] = ((closureN)self_73682)->elts[12]; -c_731476.elts[13] = ((closureN)self_73682)->elts[13]; -c_731476.elts[14] = ((closureN)self_73682)->elts[14]; -c_731476.elts[15] = ((closureN)self_73682)->elts[15]; -c_731476.elts[16] = ((closureN)self_73682)->elts[16]; -c_731476.elts[17] = ((closureN)self_73682)->elts[18]; -c_731476.elts[18] = ((closureN)self_73682)->elts[19]; -c_731476.elts[19] = ((closureN)self_73682)->elts[20]; -c_731476.elts[20] = scons_73137; -c_731476.elts[21] = ((closureN)self_73682)->elts[21]; -c_731476.elts[22] = ((closureN)self_73682)->elts[22]; -c_731476.elts[23] = ((closureN)self_73682)->elts[23]; -c_731476.elts[24] = ((closureN)self_73682)->elts[24]; -c_731476.elts[25] = ((closureN)self_73682)->elts[25]; -c_731476.elts[26] = ((closureN)self_73682)->elts[26]; -c_731476.elts[27] = ((closureN)self_73682)->elts[27]; -c_731476.elts[28] = ((closureN)self_73682)->elts[28]; -c_731476.elts[29] = ((closureN)self_73682)->elts[29]; -c_731476.elts[30] = ((closureN)self_73682)->elts[30]; -c_731476.elts[31] = ((closureN)self_73682)->elts[31]; -c_731476.elts[32] = ((closureN)self_73682)->elts[32]; -c_731476.elts[33] = ((closureN)self_73682)->elts[33]; -c_731476.elts[34] = ((closureN)self_73682)->elts[34]; -c_731476.elts[35] = ((closureN)self_73682)->elts[35]; -c_731476.elts[36] = ((closureN)self_73682)->elts[36]; -c_731476.elts[37] = ((closureN)self_73682)->elts[37]; -c_731476.elts[38] = ((closureN)self_73682)->elts[38]; - - -make_cell(c_735111,((closureN)self_73682)->elts[17]); -return_closcall1(data,(closure)&c_731476, &c_735111);; -} - -static void __lambda_459(void *data, int argc, object self_73683, object rewrite_73136) { - -closureN_type c_731478; -c_731478.hdr.mark = gc_color_red; - c_731478.hdr.grayed = 0; -c_731478.tag = closureN_tag; - c_731478.fn = (function_type)__lambda_458; -c_731478.num_args = 1; -c_731478.num_elt = 39; -c_731478.elts = (object *)alloca(sizeof(object) * 39); -c_731478.elts[0] = ((closureN)self_73683)->elts[0]; -c_731478.elts[1] = ((closureN)self_73683)->elts[1]; -c_731478.elts[2] = ((closureN)self_73683)->elts[2]; -c_731478.elts[3] = ((closureN)self_73683)->elts[3]; -c_731478.elts[4] = ((closureN)self_73683)->elts[4]; -c_731478.elts[5] = ((closureN)self_73683)->elts[5]; -c_731478.elts[6] = ((closureN)self_73683)->elts[6]; -c_731478.elts[7] = ((closureN)self_73683)->elts[7]; -c_731478.elts[8] = ((closureN)self_73683)->elts[8]; -c_731478.elts[9] = ((closureN)self_73683)->elts[9]; -c_731478.elts[10] = ((closureN)self_73683)->elts[10]; -c_731478.elts[11] = ((closureN)self_73683)->elts[11]; -c_731478.elts[12] = ((closureN)self_73683)->elts[12]; -c_731478.elts[13] = ((closureN)self_73683)->elts[13]; -c_731478.elts[14] = ((closureN)self_73683)->elts[14]; -c_731478.elts[15] = ((closureN)self_73683)->elts[15]; -c_731478.elts[16] = ((closureN)self_73683)->elts[16]; -c_731478.elts[17] = rewrite_73136; -c_731478.elts[18] = ((closureN)self_73683)->elts[18]; -c_731478.elts[19] = ((closureN)self_73683)->elts[19]; -c_731478.elts[20] = ((closureN)self_73683)->elts[20]; -c_731478.elts[21] = ((closureN)self_73683)->elts[21]; -c_731478.elts[22] = ((closureN)self_73683)->elts[22]; -c_731478.elts[23] = ((closureN)self_73683)->elts[23]; -c_731478.elts[24] = ((closureN)self_73683)->elts[24]; -c_731478.elts[25] = ((closureN)self_73683)->elts[25]; -c_731478.elts[26] = ((closureN)self_73683)->elts[26]; -c_731478.elts[27] = ((closureN)self_73683)->elts[27]; -c_731478.elts[28] = ((closureN)self_73683)->elts[28]; -c_731478.elts[29] = ((closureN)self_73683)->elts[29]; -c_731478.elts[30] = ((closureN)self_73683)->elts[30]; -c_731478.elts[31] = ((closureN)self_73683)->elts[31]; -c_731478.elts[32] = ((closureN)self_73683)->elts[32]; -c_731478.elts[33] = ((closureN)self_73683)->elts[33]; -c_731478.elts[34] = ((closureN)self_73683)->elts[34]; -c_731478.elts[35] = ((closureN)self_73683)->elts[35]; -c_731478.elts[36] = ((closureN)self_73683)->elts[36]; -c_731478.elts[37] = ((closureN)self_73683)->elts[37]; -c_731478.elts[38] = ((closureN)self_73683)->elts[38]; - - -make_cell(c_735107,((closureN)self_73683)->elts[17]); -return_closcall1(data,(closure)&c_731478, &c_735107);; -} - -static void __lambda_458(void *data, int argc, object self_73684, object rewrite_91args_73135) { - -closureN_type c_731480; -c_731480.hdr.mark = gc_color_red; - c_731480.hdr.grayed = 0; -c_731480.tag = closureN_tag; - c_731480.fn = (function_type)__lambda_457; -c_731480.num_args = 1; -c_731480.num_elt = 39; -c_731480.elts = (object *)alloca(sizeof(object) * 39); -c_731480.elts[0] = ((closureN)self_73684)->elts[0]; -c_731480.elts[1] = ((closureN)self_73684)->elts[1]; -c_731480.elts[2] = ((closureN)self_73684)->elts[2]; -c_731480.elts[3] = ((closureN)self_73684)->elts[3]; -c_731480.elts[4] = ((closureN)self_73684)->elts[4]; -c_731480.elts[5] = ((closureN)self_73684)->elts[5]; -c_731480.elts[6] = ((closureN)self_73684)->elts[6]; -c_731480.elts[7] = ((closureN)self_73684)->elts[7]; -c_731480.elts[8] = ((closureN)self_73684)->elts[8]; -c_731480.elts[9] = ((closureN)self_73684)->elts[9]; -c_731480.elts[10] = ((closureN)self_73684)->elts[10]; -c_731480.elts[11] = ((closureN)self_73684)->elts[11]; -c_731480.elts[12] = ((closureN)self_73684)->elts[12]; -c_731480.elts[13] = ((closureN)self_73684)->elts[13]; -c_731480.elts[14] = ((closureN)self_73684)->elts[14]; -c_731480.elts[15] = ((closureN)self_73684)->elts[15]; -c_731480.elts[16] = ((closureN)self_73684)->elts[16]; -c_731480.elts[17] = ((closureN)self_73684)->elts[17]; -c_731480.elts[18] = rewrite_91args_73135; -c_731480.elts[19] = ((closureN)self_73684)->elts[18]; -c_731480.elts[20] = ((closureN)self_73684)->elts[20]; -c_731480.elts[21] = ((closureN)self_73684)->elts[21]; -c_731480.elts[22] = ((closureN)self_73684)->elts[22]; -c_731480.elts[23] = ((closureN)self_73684)->elts[23]; -c_731480.elts[24] = ((closureN)self_73684)->elts[24]; -c_731480.elts[25] = ((closureN)self_73684)->elts[25]; -c_731480.elts[26] = ((closureN)self_73684)->elts[26]; -c_731480.elts[27] = ((closureN)self_73684)->elts[27]; -c_731480.elts[28] = ((closureN)self_73684)->elts[28]; -c_731480.elts[29] = ((closureN)self_73684)->elts[29]; -c_731480.elts[30] = ((closureN)self_73684)->elts[30]; -c_731480.elts[31] = ((closureN)self_73684)->elts[31]; -c_731480.elts[32] = ((closureN)self_73684)->elts[32]; -c_731480.elts[33] = ((closureN)self_73684)->elts[33]; -c_731480.elts[34] = ((closureN)self_73684)->elts[34]; -c_731480.elts[35] = ((closureN)self_73684)->elts[35]; -c_731480.elts[36] = ((closureN)self_73684)->elts[36]; -c_731480.elts[37] = ((closureN)self_73684)->elts[37]; -c_731480.elts[38] = ((closureN)self_73684)->elts[38]; - - -make_cell(c_735103,((closureN)self_73684)->elts[19]); -return_closcall1(data,(closure)&c_731480, &c_735103);; -} - -static void __lambda_457(void *data, int argc, object self_73685, object rewrite_91with_91lemmas_73134) { - -closureN_type c_731482; -c_731482.hdr.mark = gc_color_red; - c_731482.hdr.grayed = 0; -c_731482.tag = closureN_tag; - c_731482.fn = (function_type)__lambda_456; -c_731482.num_args = 1; -c_731482.num_elt = 39; -c_731482.elts = (object *)alloca(sizeof(object) * 39); -c_731482.elts[0] = ((closureN)self_73685)->elts[0]; -c_731482.elts[1] = ((closureN)self_73685)->elts[1]; -c_731482.elts[2] = ((closureN)self_73685)->elts[2]; -c_731482.elts[3] = ((closureN)self_73685)->elts[3]; -c_731482.elts[4] = ((closureN)self_73685)->elts[4]; -c_731482.elts[5] = ((closureN)self_73685)->elts[5]; -c_731482.elts[6] = ((closureN)self_73685)->elts[6]; -c_731482.elts[7] = ((closureN)self_73685)->elts[7]; -c_731482.elts[8] = ((closureN)self_73685)->elts[8]; -c_731482.elts[9] = ((closureN)self_73685)->elts[9]; -c_731482.elts[10] = ((closureN)self_73685)->elts[10]; -c_731482.elts[11] = ((closureN)self_73685)->elts[11]; -c_731482.elts[12] = ((closureN)self_73685)->elts[12]; -c_731482.elts[13] = ((closureN)self_73685)->elts[13]; -c_731482.elts[14] = ((closureN)self_73685)->elts[14]; -c_731482.elts[15] = ((closureN)self_73685)->elts[15]; -c_731482.elts[16] = ((closureN)self_73685)->elts[16]; -c_731482.elts[17] = ((closureN)self_73685)->elts[17]; -c_731482.elts[18] = ((closureN)self_73685)->elts[18]; -c_731482.elts[19] = ((closureN)self_73685)->elts[19]; -c_731482.elts[20] = rewrite_91with_91lemmas_73134; -c_731482.elts[21] = ((closureN)self_73685)->elts[20]; -c_731482.elts[22] = ((closureN)self_73685)->elts[21]; -c_731482.elts[23] = ((closureN)self_73685)->elts[22]; -c_731482.elts[24] = ((closureN)self_73685)->elts[23]; -c_731482.elts[25] = ((closureN)self_73685)->elts[24]; -c_731482.elts[26] = ((closureN)self_73685)->elts[25]; -c_731482.elts[27] = ((closureN)self_73685)->elts[26]; -c_731482.elts[28] = ((closureN)self_73685)->elts[27]; -c_731482.elts[29] = ((closureN)self_73685)->elts[28]; -c_731482.elts[30] = ((closureN)self_73685)->elts[29]; -c_731482.elts[31] = ((closureN)self_73685)->elts[30]; -c_731482.elts[32] = ((closureN)self_73685)->elts[31]; -c_731482.elts[33] = ((closureN)self_73685)->elts[32]; -c_731482.elts[34] = ((closureN)self_73685)->elts[33]; -c_731482.elts[35] = ((closureN)self_73685)->elts[34]; -c_731482.elts[36] = ((closureN)self_73685)->elts[35]; -c_731482.elts[37] = ((closureN)self_73685)->elts[36]; -c_731482.elts[38] = ((closureN)self_73685)->elts[38]; - - -make_cell(c_735099,((closureN)self_73685)->elts[37]); -return_closcall1(data,(closure)&c_731482, &c_735099);; -} - -static void __lambda_456(void *data, int argc, object self_73686, object unify_91subst_73133) { - -closureN_type c_731484; -c_731484.hdr.mark = gc_color_red; - c_731484.hdr.grayed = 0; -c_731484.tag = closureN_tag; - c_731484.fn = (function_type)__lambda_455; -c_731484.num_args = 1; -c_731484.num_elt = 39; -c_731484.elts = (object *)alloca(sizeof(object) * 39); -c_731484.elts[0] = ((closureN)self_73686)->elts[0]; -c_731484.elts[1] = ((closureN)self_73686)->elts[1]; -c_731484.elts[2] = ((closureN)self_73686)->elts[2]; -c_731484.elts[3] = ((closureN)self_73686)->elts[3]; -c_731484.elts[4] = ((closureN)self_73686)->elts[4]; -c_731484.elts[5] = ((closureN)self_73686)->elts[5]; -c_731484.elts[6] = ((closureN)self_73686)->elts[6]; -c_731484.elts[7] = ((closureN)self_73686)->elts[7]; -c_731484.elts[8] = ((closureN)self_73686)->elts[8]; -c_731484.elts[9] = ((closureN)self_73686)->elts[9]; -c_731484.elts[10] = ((closureN)self_73686)->elts[10]; -c_731484.elts[11] = ((closureN)self_73686)->elts[11]; -c_731484.elts[12] = ((closureN)self_73686)->elts[13]; -c_731484.elts[13] = ((closureN)self_73686)->elts[14]; -c_731484.elts[14] = ((closureN)self_73686)->elts[15]; -c_731484.elts[15] = ((closureN)self_73686)->elts[16]; -c_731484.elts[16] = ((closureN)self_73686)->elts[17]; -c_731484.elts[17] = ((closureN)self_73686)->elts[18]; -c_731484.elts[18] = ((closureN)self_73686)->elts[19]; -c_731484.elts[19] = ((closureN)self_73686)->elts[20]; -c_731484.elts[20] = ((closureN)self_73686)->elts[21]; -c_731484.elts[21] = ((closureN)self_73686)->elts[22]; -c_731484.elts[22] = ((closureN)self_73686)->elts[23]; -c_731484.elts[23] = ((closureN)self_73686)->elts[24]; -c_731484.elts[24] = ((closureN)self_73686)->elts[25]; -c_731484.elts[25] = ((closureN)self_73686)->elts[26]; -c_731484.elts[26] = ((closureN)self_73686)->elts[27]; -c_731484.elts[27] = ((closureN)self_73686)->elts[28]; -c_731484.elts[28] = ((closureN)self_73686)->elts[29]; -c_731484.elts[29] = ((closureN)self_73686)->elts[30]; -c_731484.elts[30] = ((closureN)self_73686)->elts[31]; -c_731484.elts[31] = ((closureN)self_73686)->elts[32]; -c_731484.elts[32] = ((closureN)self_73686)->elts[33]; -c_731484.elts[33] = ((closureN)self_73686)->elts[34]; -c_731484.elts[34] = ((closureN)self_73686)->elts[35]; -c_731484.elts[35] = ((closureN)self_73686)->elts[36]; -c_731484.elts[36] = ((closureN)self_73686)->elts[37]; -c_731484.elts[37] = unify_91subst_73133; -c_731484.elts[38] = ((closureN)self_73686)->elts[38]; - - -make_cell(c_735095,((closureN)self_73686)->elts[12]); -return_closcall1(data,(closure)&c_731484, &c_735095);; -} - -static void __lambda_455(void *data, int argc, object self_73687, object one_91way_91unify_73132) { - -closureN_type c_731486; -c_731486.hdr.mark = gc_color_red; - c_731486.hdr.grayed = 0; -c_731486.tag = closureN_tag; - c_731486.fn = (function_type)__lambda_454; -c_731486.num_args = 1; -c_731486.num_elt = 39; -c_731486.elts = (object *)alloca(sizeof(object) * 39); -c_731486.elts[0] = ((closureN)self_73687)->elts[0]; -c_731486.elts[1] = ((closureN)self_73687)->elts[1]; -c_731486.elts[2] = ((closureN)self_73687)->elts[2]; -c_731486.elts[3] = ((closureN)self_73687)->elts[3]; -c_731486.elts[4] = ((closureN)self_73687)->elts[4]; -c_731486.elts[5] = ((closureN)self_73687)->elts[5]; -c_731486.elts[6] = ((closureN)self_73687)->elts[6]; -c_731486.elts[7] = ((closureN)self_73687)->elts[7]; -c_731486.elts[8] = ((closureN)self_73687)->elts[8]; -c_731486.elts[9] = ((closureN)self_73687)->elts[9]; -c_731486.elts[10] = ((closureN)self_73687)->elts[10]; -c_731486.elts[11] = ((closureN)self_73687)->elts[11]; -c_731486.elts[12] = one_91way_91unify_73132; -c_731486.elts[13] = ((closureN)self_73687)->elts[13]; -c_731486.elts[14] = ((closureN)self_73687)->elts[14]; -c_731486.elts[15] = ((closureN)self_73687)->elts[15]; -c_731486.elts[16] = ((closureN)self_73687)->elts[16]; -c_731486.elts[17] = ((closureN)self_73687)->elts[17]; -c_731486.elts[18] = ((closureN)self_73687)->elts[18]; -c_731486.elts[19] = ((closureN)self_73687)->elts[19]; -c_731486.elts[20] = ((closureN)self_73687)->elts[20]; -c_731486.elts[21] = ((closureN)self_73687)->elts[21]; -c_731486.elts[22] = ((closureN)self_73687)->elts[22]; -c_731486.elts[23] = ((closureN)self_73687)->elts[23]; -c_731486.elts[24] = ((closureN)self_73687)->elts[24]; -c_731486.elts[25] = ((closureN)self_73687)->elts[25]; -c_731486.elts[26] = ((closureN)self_73687)->elts[26]; -c_731486.elts[27] = ((closureN)self_73687)->elts[27]; -c_731486.elts[28] = ((closureN)self_73687)->elts[28]; -c_731486.elts[29] = ((closureN)self_73687)->elts[29]; -c_731486.elts[30] = ((closureN)self_73687)->elts[30]; -c_731486.elts[31] = ((closureN)self_73687)->elts[31]; -c_731486.elts[32] = ((closureN)self_73687)->elts[32]; -c_731486.elts[33] = ((closureN)self_73687)->elts[33]; -c_731486.elts[34] = ((closureN)self_73687)->elts[34]; -c_731486.elts[35] = ((closureN)self_73687)->elts[35]; -c_731486.elts[36] = ((closureN)self_73687)->elts[36]; -c_731486.elts[37] = ((closureN)self_73687)->elts[37]; -c_731486.elts[38] = ((closureN)self_73687)->elts[38]; - - -make_cell(c_735091,((closureN)self_73687)->elts[12]); -return_closcall1(data,(closure)&c_731486, &c_735091);; -} - -static void __lambda_454(void *data, int argc, object self_73688, object one_91way_91unify1_73131) { - -closureN_type c_731488; -c_731488.hdr.mark = gc_color_red; - c_731488.hdr.grayed = 0; -c_731488.tag = closureN_tag; - c_731488.fn = (function_type)__lambda_453; -c_731488.num_args = 1; -c_731488.num_elt = 39; -c_731488.elts = (object *)alloca(sizeof(object) * 39); -c_731488.elts[0] = ((closureN)self_73688)->elts[0]; -c_731488.elts[1] = ((closureN)self_73688)->elts[1]; -c_731488.elts[2] = ((closureN)self_73688)->elts[2]; -c_731488.elts[3] = ((closureN)self_73688)->elts[3]; -c_731488.elts[4] = ((closureN)self_73688)->elts[4]; -c_731488.elts[5] = ((closureN)self_73688)->elts[5]; -c_731488.elts[6] = ((closureN)self_73688)->elts[6]; -c_731488.elts[7] = ((closureN)self_73688)->elts[7]; -c_731488.elts[8] = ((closureN)self_73688)->elts[8]; -c_731488.elts[9] = ((closureN)self_73688)->elts[9]; -c_731488.elts[10] = ((closureN)self_73688)->elts[10]; -c_731488.elts[11] = ((closureN)self_73688)->elts[11]; -c_731488.elts[12] = ((closureN)self_73688)->elts[12]; -c_731488.elts[13] = one_91way_91unify1_73131; -c_731488.elts[14] = ((closureN)self_73688)->elts[14]; -c_731488.elts[15] = ((closureN)self_73688)->elts[15]; -c_731488.elts[16] = ((closureN)self_73688)->elts[16]; -c_731488.elts[17] = ((closureN)self_73688)->elts[17]; -c_731488.elts[18] = ((closureN)self_73688)->elts[18]; -c_731488.elts[19] = ((closureN)self_73688)->elts[19]; -c_731488.elts[20] = ((closureN)self_73688)->elts[20]; -c_731488.elts[21] = ((closureN)self_73688)->elts[21]; -c_731488.elts[22] = ((closureN)self_73688)->elts[22]; -c_731488.elts[23] = ((closureN)self_73688)->elts[23]; -c_731488.elts[24] = ((closureN)self_73688)->elts[24]; -c_731488.elts[25] = ((closureN)self_73688)->elts[25]; -c_731488.elts[26] = ((closureN)self_73688)->elts[26]; -c_731488.elts[27] = ((closureN)self_73688)->elts[27]; -c_731488.elts[28] = ((closureN)self_73688)->elts[28]; -c_731488.elts[29] = ((closureN)self_73688)->elts[29]; -c_731488.elts[30] = ((closureN)self_73688)->elts[30]; -c_731488.elts[31] = ((closureN)self_73688)->elts[31]; -c_731488.elts[32] = ((closureN)self_73688)->elts[32]; -c_731488.elts[33] = ((closureN)self_73688)->elts[33]; -c_731488.elts[34] = ((closureN)self_73688)->elts[34]; -c_731488.elts[35] = ((closureN)self_73688)->elts[35]; -c_731488.elts[36] = ((closureN)self_73688)->elts[36]; -c_731488.elts[37] = ((closureN)self_73688)->elts[37]; -c_731488.elts[38] = ((closureN)self_73688)->elts[38]; - - -make_cell(c_735087,((closureN)self_73688)->elts[13]); -return_closcall1(data,(closure)&c_731488, &c_735087);; -} - -static void __lambda_453(void *data, int argc, object self_73689, object one_91way_91unify1_91lst_73130) { - -closureN_type c_731490; -c_731490.hdr.mark = gc_color_red; - c_731490.hdr.grayed = 0; -c_731490.tag = closureN_tag; - c_731490.fn = (function_type)__lambda_452; -c_731490.num_args = 1; -c_731490.num_elt = 39; -c_731490.elts = (object *)alloca(sizeof(object) * 39); -c_731490.elts[0] = ((closureN)self_73689)->elts[0]; -c_731490.elts[1] = ((closureN)self_73689)->elts[1]; -c_731490.elts[2] = ((closureN)self_73689)->elts[2]; -c_731490.elts[3] = ((closureN)self_73689)->elts[3]; -c_731490.elts[4] = ((closureN)self_73689)->elts[4]; -c_731490.elts[5] = ((closureN)self_73689)->elts[5]; -c_731490.elts[6] = ((closureN)self_73689)->elts[7]; -c_731490.elts[7] = ((closureN)self_73689)->elts[8]; -c_731490.elts[8] = ((closureN)self_73689)->elts[9]; -c_731490.elts[9] = ((closureN)self_73689)->elts[10]; -c_731490.elts[10] = ((closureN)self_73689)->elts[11]; -c_731490.elts[11] = ((closureN)self_73689)->elts[12]; -c_731490.elts[12] = ((closureN)self_73689)->elts[13]; -c_731490.elts[13] = one_91way_91unify1_91lst_73130; -c_731490.elts[14] = ((closureN)self_73689)->elts[14]; -c_731490.elts[15] = ((closureN)self_73689)->elts[15]; -c_731490.elts[16] = ((closureN)self_73689)->elts[16]; -c_731490.elts[17] = ((closureN)self_73689)->elts[17]; -c_731490.elts[18] = ((closureN)self_73689)->elts[18]; -c_731490.elts[19] = ((closureN)self_73689)->elts[19]; -c_731490.elts[20] = ((closureN)self_73689)->elts[20]; -c_731490.elts[21] = ((closureN)self_73689)->elts[21]; -c_731490.elts[22] = ((closureN)self_73689)->elts[22]; -c_731490.elts[23] = ((closureN)self_73689)->elts[23]; -c_731490.elts[24] = ((closureN)self_73689)->elts[24]; -c_731490.elts[25] = ((closureN)self_73689)->elts[25]; -c_731490.elts[26] = ((closureN)self_73689)->elts[26]; -c_731490.elts[27] = ((closureN)self_73689)->elts[27]; -c_731490.elts[28] = ((closureN)self_73689)->elts[28]; -c_731490.elts[29] = ((closureN)self_73689)->elts[29]; -c_731490.elts[30] = ((closureN)self_73689)->elts[30]; -c_731490.elts[31] = ((closureN)self_73689)->elts[31]; -c_731490.elts[32] = ((closureN)self_73689)->elts[32]; -c_731490.elts[33] = ((closureN)self_73689)->elts[33]; -c_731490.elts[34] = ((closureN)self_73689)->elts[34]; -c_731490.elts[35] = ((closureN)self_73689)->elts[35]; -c_731490.elts[36] = ((closureN)self_73689)->elts[36]; -c_731490.elts[37] = ((closureN)self_73689)->elts[37]; -c_731490.elts[38] = ((closureN)self_73689)->elts[38]; - - -make_cell(c_735083,((closureN)self_73689)->elts[6]); -return_closcall1(data,(closure)&c_731490, &c_735083);; -} - -static void __lambda_452(void *data, int argc, object self_73690, object falsep_73129) { - -closureN_type c_731492; -c_731492.hdr.mark = gc_color_red; - c_731492.hdr.grayed = 0; -c_731492.tag = closureN_tag; - c_731492.fn = (function_type)__lambda_451; -c_731492.num_args = 1; -c_731492.num_elt = 39; -c_731492.elts = (object *)alloca(sizeof(object) * 39); -c_731492.elts[0] = ((closureN)self_73690)->elts[0]; -c_731492.elts[1] = ((closureN)self_73690)->elts[1]; -c_731492.elts[2] = ((closureN)self_73690)->elts[2]; -c_731492.elts[3] = ((closureN)self_73690)->elts[3]; -c_731492.elts[4] = ((closureN)self_73690)->elts[4]; -c_731492.elts[5] = ((closureN)self_73690)->elts[5]; -c_731492.elts[6] = falsep_73129; -c_731492.elts[7] = ((closureN)self_73690)->elts[6]; -c_731492.elts[8] = ((closureN)self_73690)->elts[7]; -c_731492.elts[9] = ((closureN)self_73690)->elts[8]; -c_731492.elts[10] = ((closureN)self_73690)->elts[9]; -c_731492.elts[11] = ((closureN)self_73690)->elts[10]; -c_731492.elts[12] = ((closureN)self_73690)->elts[11]; -c_731492.elts[13] = ((closureN)self_73690)->elts[12]; -c_731492.elts[14] = ((closureN)self_73690)->elts[13]; -c_731492.elts[15] = ((closureN)self_73690)->elts[14]; -c_731492.elts[16] = ((closureN)self_73690)->elts[15]; -c_731492.elts[17] = ((closureN)self_73690)->elts[16]; -c_731492.elts[18] = ((closureN)self_73690)->elts[17]; -c_731492.elts[19] = ((closureN)self_73690)->elts[18]; -c_731492.elts[20] = ((closureN)self_73690)->elts[19]; -c_731492.elts[21] = ((closureN)self_73690)->elts[20]; -c_731492.elts[22] = ((closureN)self_73690)->elts[21]; -c_731492.elts[23] = ((closureN)self_73690)->elts[22]; -c_731492.elts[24] = ((closureN)self_73690)->elts[23]; -c_731492.elts[25] = ((closureN)self_73690)->elts[24]; -c_731492.elts[26] = ((closureN)self_73690)->elts[25]; -c_731492.elts[27] = ((closureN)self_73690)->elts[26]; -c_731492.elts[28] = ((closureN)self_73690)->elts[27]; -c_731492.elts[29] = ((closureN)self_73690)->elts[28]; -c_731492.elts[30] = ((closureN)self_73690)->elts[29]; -c_731492.elts[31] = ((closureN)self_73690)->elts[30]; -c_731492.elts[32] = ((closureN)self_73690)->elts[31]; -c_731492.elts[33] = ((closureN)self_73690)->elts[32]; -c_731492.elts[34] = ((closureN)self_73690)->elts[33]; -c_731492.elts[35] = ((closureN)self_73690)->elts[34]; -c_731492.elts[36] = ((closureN)self_73690)->elts[35]; -c_731492.elts[37] = ((closureN)self_73690)->elts[37]; -c_731492.elts[38] = ((closureN)self_73690)->elts[38]; - - -make_cell(c_735079,((closureN)self_73690)->elts[36]); -return_closcall1(data,(closure)&c_731492, &c_735079);; -} - -static void __lambda_451(void *data, int argc, object self_73691, object truep_73128) { - -closureN_type c_731494; -c_731494.hdr.mark = gc_color_red; - c_731494.hdr.grayed = 0; -c_731494.tag = closureN_tag; - c_731494.fn = (function_type)__lambda_450; -c_731494.num_args = 1; -c_731494.num_elt = 39; -c_731494.elts = (object *)alloca(sizeof(object) * 39); -c_731494.elts[0] = ((closureN)self_73691)->elts[0]; -c_731494.elts[1] = ((closureN)self_73691)->elts[1]; -c_731494.elts[2] = ((closureN)self_73691)->elts[2]; -c_731494.elts[3] = ((closureN)self_73691)->elts[3]; -c_731494.elts[4] = ((closureN)self_73691)->elts[4]; -c_731494.elts[5] = ((closureN)self_73691)->elts[6]; -c_731494.elts[6] = ((closureN)self_73691)->elts[7]; -c_731494.elts[7] = ((closureN)self_73691)->elts[8]; -c_731494.elts[8] = ((closureN)self_73691)->elts[9]; -c_731494.elts[9] = ((closureN)self_73691)->elts[10]; -c_731494.elts[10] = ((closureN)self_73691)->elts[11]; -c_731494.elts[11] = ((closureN)self_73691)->elts[12]; -c_731494.elts[12] = ((closureN)self_73691)->elts[13]; -c_731494.elts[13] = ((closureN)self_73691)->elts[14]; -c_731494.elts[14] = ((closureN)self_73691)->elts[15]; -c_731494.elts[15] = ((closureN)self_73691)->elts[16]; -c_731494.elts[16] = ((closureN)self_73691)->elts[17]; -c_731494.elts[17] = ((closureN)self_73691)->elts[18]; -c_731494.elts[18] = ((closureN)self_73691)->elts[19]; -c_731494.elts[19] = ((closureN)self_73691)->elts[20]; -c_731494.elts[20] = ((closureN)self_73691)->elts[21]; -c_731494.elts[21] = ((closureN)self_73691)->elts[22]; -c_731494.elts[22] = ((closureN)self_73691)->elts[23]; -c_731494.elts[23] = ((closureN)self_73691)->elts[24]; -c_731494.elts[24] = ((closureN)self_73691)->elts[25]; -c_731494.elts[25] = ((closureN)self_73691)->elts[26]; -c_731494.elts[26] = ((closureN)self_73691)->elts[27]; -c_731494.elts[27] = ((closureN)self_73691)->elts[28]; -c_731494.elts[28] = ((closureN)self_73691)->elts[29]; -c_731494.elts[29] = ((closureN)self_73691)->elts[30]; -c_731494.elts[30] = ((closureN)self_73691)->elts[31]; -c_731494.elts[31] = ((closureN)self_73691)->elts[32]; -c_731494.elts[32] = ((closureN)self_73691)->elts[33]; -c_731494.elts[33] = ((closureN)self_73691)->elts[34]; -c_731494.elts[34] = ((closureN)self_73691)->elts[35]; -c_731494.elts[35] = ((closureN)self_73691)->elts[36]; -c_731494.elts[36] = truep_73128; -c_731494.elts[37] = ((closureN)self_73691)->elts[37]; -c_731494.elts[38] = ((closureN)self_73691)->elts[38]; - - -make_cell(c_735075,((closureN)self_73691)->elts[5]); -return_closcall1(data,(closure)&c_731494, &c_735075);; -} - -static void __lambda_450(void *data, int argc, object self_73692, object false_91term_73127) { - -closureN_type c_731496; -c_731496.hdr.mark = gc_color_red; - c_731496.hdr.grayed = 0; -c_731496.tag = closureN_tag; - c_731496.fn = (function_type)__lambda_449; -c_731496.num_args = 1; -c_731496.num_elt = 39; -c_731496.elts = (object *)alloca(sizeof(object) * 39); -c_731496.elts[0] = ((closureN)self_73692)->elts[0]; -c_731496.elts[1] = ((closureN)self_73692)->elts[1]; -c_731496.elts[2] = ((closureN)self_73692)->elts[2]; -c_731496.elts[3] = ((closureN)self_73692)->elts[3]; -c_731496.elts[4] = ((closureN)self_73692)->elts[4]; -c_731496.elts[5] = false_91term_73127; -c_731496.elts[6] = ((closureN)self_73692)->elts[5]; -c_731496.elts[7] = ((closureN)self_73692)->elts[6]; -c_731496.elts[8] = ((closureN)self_73692)->elts[7]; -c_731496.elts[9] = ((closureN)self_73692)->elts[8]; -c_731496.elts[10] = ((closureN)self_73692)->elts[9]; -c_731496.elts[11] = ((closureN)self_73692)->elts[10]; -c_731496.elts[12] = ((closureN)self_73692)->elts[11]; -c_731496.elts[13] = ((closureN)self_73692)->elts[12]; -c_731496.elts[14] = ((closureN)self_73692)->elts[13]; -c_731496.elts[15] = ((closureN)self_73692)->elts[14]; -c_731496.elts[16] = ((closureN)self_73692)->elts[15]; -c_731496.elts[17] = ((closureN)self_73692)->elts[16]; -c_731496.elts[18] = ((closureN)self_73692)->elts[17]; -c_731496.elts[19] = ((closureN)self_73692)->elts[18]; -c_731496.elts[20] = ((closureN)self_73692)->elts[19]; -c_731496.elts[21] = ((closureN)self_73692)->elts[20]; -c_731496.elts[22] = ((closureN)self_73692)->elts[21]; -c_731496.elts[23] = ((closureN)self_73692)->elts[22]; -c_731496.elts[24] = ((closureN)self_73692)->elts[23]; -c_731496.elts[25] = ((closureN)self_73692)->elts[24]; -c_731496.elts[26] = ((closureN)self_73692)->elts[25]; -c_731496.elts[27] = ((closureN)self_73692)->elts[26]; -c_731496.elts[28] = ((closureN)self_73692)->elts[27]; -c_731496.elts[29] = ((closureN)self_73692)->elts[28]; -c_731496.elts[30] = ((closureN)self_73692)->elts[29]; -c_731496.elts[31] = ((closureN)self_73692)->elts[30]; -c_731496.elts[32] = ((closureN)self_73692)->elts[31]; -c_731496.elts[33] = ((closureN)self_73692)->elts[32]; -c_731496.elts[34] = ((closureN)self_73692)->elts[33]; -c_731496.elts[35] = ((closureN)self_73692)->elts[34]; -c_731496.elts[36] = ((closureN)self_73692)->elts[36]; -c_731496.elts[37] = ((closureN)self_73692)->elts[37]; -c_731496.elts[38] = ((closureN)self_73692)->elts[38]; - - -make_cell(c_735071,((closureN)self_73692)->elts[35]); -return_closcall1(data,(closure)&c_731496, &c_735071);; -} - -static void __lambda_449(void *data, int argc, object self_73693, object true_91term_73126) { - -closureN_type c_731498; -c_731498.hdr.mark = gc_color_red; - c_731498.hdr.grayed = 0; -c_731498.tag = closureN_tag; - c_731498.fn = (function_type)__lambda_448; -c_731498.num_args = 1; -c_731498.num_elt = 39; -c_731498.elts = (object *)alloca(sizeof(object) * 39); -c_731498.elts[0] = ((closureN)self_73693)->elts[0]; -c_731498.elts[1] = ((closureN)self_73693)->elts[1]; -c_731498.elts[2] = ((closureN)self_73693)->elts[2]; -c_731498.elts[3] = ((closureN)self_73693)->elts[3]; -c_731498.elts[4] = ((closureN)self_73693)->elts[4]; -c_731498.elts[5] = ((closureN)self_73693)->elts[5]; -c_731498.elts[6] = ((closureN)self_73693)->elts[6]; -c_731498.elts[7] = ((closureN)self_73693)->elts[7]; -c_731498.elts[8] = ((closureN)self_73693)->elts[8]; -c_731498.elts[9] = ((closureN)self_73693)->elts[9]; -c_731498.elts[10] = ((closureN)self_73693)->elts[10]; -c_731498.elts[11] = ((closureN)self_73693)->elts[11]; -c_731498.elts[12] = ((closureN)self_73693)->elts[12]; -c_731498.elts[13] = ((closureN)self_73693)->elts[13]; -c_731498.elts[14] = ((closureN)self_73693)->elts[14]; -c_731498.elts[15] = ((closureN)self_73693)->elts[15]; -c_731498.elts[16] = ((closureN)self_73693)->elts[16]; -c_731498.elts[17] = ((closureN)self_73693)->elts[17]; -c_731498.elts[18] = ((closureN)self_73693)->elts[18]; -c_731498.elts[19] = ((closureN)self_73693)->elts[19]; -c_731498.elts[20] = ((closureN)self_73693)->elts[20]; -c_731498.elts[21] = ((closureN)self_73693)->elts[21]; -c_731498.elts[22] = ((closureN)self_73693)->elts[22]; -c_731498.elts[23] = ((closureN)self_73693)->elts[23]; -c_731498.elts[24] = ((closureN)self_73693)->elts[24]; -c_731498.elts[25] = ((closureN)self_73693)->elts[25]; -c_731498.elts[26] = ((closureN)self_73693)->elts[26]; -c_731498.elts[27] = ((closureN)self_73693)->elts[27]; -c_731498.elts[28] = ((closureN)self_73693)->elts[28]; -c_731498.elts[29] = ((closureN)self_73693)->elts[29]; -c_731498.elts[30] = ((closureN)self_73693)->elts[30]; -c_731498.elts[31] = ((closureN)self_73693)->elts[32]; -c_731498.elts[32] = ((closureN)self_73693)->elts[33]; -c_731498.elts[33] = ((closureN)self_73693)->elts[34]; -c_731498.elts[34] = ((closureN)self_73693)->elts[35]; -c_731498.elts[35] = true_91term_73126; -c_731498.elts[36] = ((closureN)self_73693)->elts[36]; -c_731498.elts[37] = ((closureN)self_73693)->elts[37]; -c_731498.elts[38] = ((closureN)self_73693)->elts[38]; - - -make_cell(c_735067,((closureN)self_73693)->elts[31]); -return_closcall1(data,(closure)&c_731498, &c_735067);; -} - -static void __lambda_448(void *data, int argc, object self_73694, object trans_91of_91implies_73125) { - -closureN_type c_731500; -c_731500.hdr.mark = gc_color_red; - c_731500.hdr.grayed = 0; -c_731500.tag = closureN_tag; - c_731500.fn = (function_type)__lambda_447; -c_731500.num_args = 1; -c_731500.num_elt = 39; -c_731500.elts = (object *)alloca(sizeof(object) * 39); -c_731500.elts[0] = ((closureN)self_73694)->elts[0]; -c_731500.elts[1] = ((closureN)self_73694)->elts[1]; -c_731500.elts[2] = ((closureN)self_73694)->elts[2]; -c_731500.elts[3] = ((closureN)self_73694)->elts[3]; -c_731500.elts[4] = ((closureN)self_73694)->elts[4]; -c_731500.elts[5] = ((closureN)self_73694)->elts[5]; -c_731500.elts[6] = ((closureN)self_73694)->elts[6]; -c_731500.elts[7] = ((closureN)self_73694)->elts[7]; -c_731500.elts[8] = ((closureN)self_73694)->elts[8]; -c_731500.elts[9] = ((closureN)self_73694)->elts[9]; -c_731500.elts[10] = ((closureN)self_73694)->elts[10]; -c_731500.elts[11] = ((closureN)self_73694)->elts[11]; -c_731500.elts[12] = ((closureN)self_73694)->elts[12]; -c_731500.elts[13] = ((closureN)self_73694)->elts[13]; -c_731500.elts[14] = ((closureN)self_73694)->elts[14]; -c_731500.elts[15] = ((closureN)self_73694)->elts[15]; -c_731500.elts[16] = ((closureN)self_73694)->elts[16]; -c_731500.elts[17] = ((closureN)self_73694)->elts[17]; -c_731500.elts[18] = ((closureN)self_73694)->elts[18]; -c_731500.elts[19] = ((closureN)self_73694)->elts[19]; -c_731500.elts[20] = ((closureN)self_73694)->elts[20]; -c_731500.elts[21] = ((closureN)self_73694)->elts[21]; -c_731500.elts[22] = ((closureN)self_73694)->elts[22]; -c_731500.elts[23] = ((closureN)self_73694)->elts[23]; -c_731500.elts[24] = ((closureN)self_73694)->elts[24]; -c_731500.elts[25] = ((closureN)self_73694)->elts[25]; -c_731500.elts[26] = ((closureN)self_73694)->elts[26]; -c_731500.elts[27] = ((closureN)self_73694)->elts[27]; -c_731500.elts[28] = ((closureN)self_73694)->elts[28]; -c_731500.elts[29] = ((closureN)self_73694)->elts[29]; -c_731500.elts[30] = ((closureN)self_73694)->elts[30]; -c_731500.elts[31] = trans_91of_91implies_73125; -c_731500.elts[32] = ((closureN)self_73694)->elts[32]; -c_731500.elts[33] = ((closureN)self_73694)->elts[33]; -c_731500.elts[34] = ((closureN)self_73694)->elts[34]; -c_731500.elts[35] = ((closureN)self_73694)->elts[35]; -c_731500.elts[36] = ((closureN)self_73694)->elts[36]; -c_731500.elts[37] = ((closureN)self_73694)->elts[37]; -c_731500.elts[38] = ((closureN)self_73694)->elts[38]; - - -make_cell(c_735063,((closureN)self_73694)->elts[31]); -return_closcall1(data,(closure)&c_731500, &c_735063);; -} - -static void __lambda_447(void *data, int argc, object self_73695, object trans_91of_91implies1_73124) { - -closureN_type c_731502; -c_731502.hdr.mark = gc_color_red; - c_731502.hdr.grayed = 0; -c_731502.tag = closureN_tag; - c_731502.fn = (function_type)__lambda_446; -c_731502.num_args = 1; -c_731502.num_elt = 39; -c_731502.elts = (object *)alloca(sizeof(object) * 39); -c_731502.elts[0] = ((closureN)self_73695)->elts[0]; -c_731502.elts[1] = ((closureN)self_73695)->elts[1]; -c_731502.elts[2] = ((closureN)self_73695)->elts[2]; -c_731502.elts[3] = ((closureN)self_73695)->elts[3]; -c_731502.elts[4] = ((closureN)self_73695)->elts[4]; -c_731502.elts[5] = ((closureN)self_73695)->elts[5]; -c_731502.elts[6] = ((closureN)self_73695)->elts[6]; -c_731502.elts[7] = ((closureN)self_73695)->elts[7]; -c_731502.elts[8] = ((closureN)self_73695)->elts[8]; -c_731502.elts[9] = ((closureN)self_73695)->elts[9]; -c_731502.elts[10] = ((closureN)self_73695)->elts[10]; -c_731502.elts[11] = ((closureN)self_73695)->elts[11]; -c_731502.elts[12] = ((closureN)self_73695)->elts[12]; -c_731502.elts[13] = ((closureN)self_73695)->elts[13]; -c_731502.elts[14] = ((closureN)self_73695)->elts[14]; -c_731502.elts[15] = ((closureN)self_73695)->elts[15]; -c_731502.elts[16] = ((closureN)self_73695)->elts[16]; -c_731502.elts[17] = ((closureN)self_73695)->elts[17]; -c_731502.elts[18] = ((closureN)self_73695)->elts[18]; -c_731502.elts[19] = ((closureN)self_73695)->elts[19]; -c_731502.elts[20] = ((closureN)self_73695)->elts[20]; -c_731502.elts[21] = ((closureN)self_73695)->elts[21]; -c_731502.elts[22] = ((closureN)self_73695)->elts[22]; -c_731502.elts[23] = ((closureN)self_73695)->elts[23]; -c_731502.elts[24] = ((closureN)self_73695)->elts[24]; -c_731502.elts[25] = ((closureN)self_73695)->elts[25]; -c_731502.elts[26] = ((closureN)self_73695)->elts[26]; -c_731502.elts[27] = ((closureN)self_73695)->elts[27]; -c_731502.elts[28] = ((closureN)self_73695)->elts[29]; -c_731502.elts[29] = ((closureN)self_73695)->elts[30]; -c_731502.elts[30] = ((closureN)self_73695)->elts[31]; -c_731502.elts[31] = trans_91of_91implies1_73124; -c_731502.elts[32] = ((closureN)self_73695)->elts[32]; -c_731502.elts[33] = ((closureN)self_73695)->elts[33]; -c_731502.elts[34] = ((closureN)self_73695)->elts[34]; -c_731502.elts[35] = ((closureN)self_73695)->elts[35]; -c_731502.elts[36] = ((closureN)self_73695)->elts[36]; -c_731502.elts[37] = ((closureN)self_73695)->elts[37]; -c_731502.elts[38] = ((closureN)self_73695)->elts[38]; - - -make_cell(c_735059,((closureN)self_73695)->elts[28]); -return_closcall1(data,(closure)&c_731502, &c_735059);; -} - -static void __lambda_446(void *data, int argc, object self_73696, object term_91equal_127_73123) { - -closureN_type c_731504; -c_731504.hdr.mark = gc_color_red; - c_731504.hdr.grayed = 0; -c_731504.tag = closureN_tag; - c_731504.fn = (function_type)__lambda_445; -c_731504.num_args = 1; -c_731504.num_elt = 39; -c_731504.elts = (object *)alloca(sizeof(object) * 39); -c_731504.elts[0] = ((closureN)self_73696)->elts[0]; -c_731504.elts[1] = ((closureN)self_73696)->elts[1]; -c_731504.elts[2] = ((closureN)self_73696)->elts[2]; -c_731504.elts[3] = ((closureN)self_73696)->elts[3]; -c_731504.elts[4] = ((closureN)self_73696)->elts[4]; -c_731504.elts[5] = ((closureN)self_73696)->elts[5]; -c_731504.elts[6] = ((closureN)self_73696)->elts[6]; -c_731504.elts[7] = ((closureN)self_73696)->elts[7]; -c_731504.elts[8] = ((closureN)self_73696)->elts[8]; -c_731504.elts[9] = ((closureN)self_73696)->elts[9]; -c_731504.elts[10] = ((closureN)self_73696)->elts[10]; -c_731504.elts[11] = ((closureN)self_73696)->elts[11]; -c_731504.elts[12] = ((closureN)self_73696)->elts[12]; -c_731504.elts[13] = ((closureN)self_73696)->elts[13]; -c_731504.elts[14] = ((closureN)self_73696)->elts[14]; -c_731504.elts[15] = ((closureN)self_73696)->elts[15]; -c_731504.elts[16] = ((closureN)self_73696)->elts[16]; -c_731504.elts[17] = ((closureN)self_73696)->elts[17]; -c_731504.elts[18] = ((closureN)self_73696)->elts[18]; -c_731504.elts[19] = ((closureN)self_73696)->elts[19]; -c_731504.elts[20] = ((closureN)self_73696)->elts[20]; -c_731504.elts[21] = ((closureN)self_73696)->elts[21]; -c_731504.elts[22] = ((closureN)self_73696)->elts[22]; -c_731504.elts[23] = ((closureN)self_73696)->elts[23]; -c_731504.elts[24] = ((closureN)self_73696)->elts[24]; -c_731504.elts[25] = ((closureN)self_73696)->elts[25]; -c_731504.elts[26] = ((closureN)self_73696)->elts[26]; -c_731504.elts[27] = term_91equal_127_73123; -c_731504.elts[28] = ((closureN)self_73696)->elts[28]; -c_731504.elts[29] = ((closureN)self_73696)->elts[29]; -c_731504.elts[30] = ((closureN)self_73696)->elts[30]; -c_731504.elts[31] = ((closureN)self_73696)->elts[31]; -c_731504.elts[32] = ((closureN)self_73696)->elts[32]; -c_731504.elts[33] = ((closureN)self_73696)->elts[33]; -c_731504.elts[34] = ((closureN)self_73696)->elts[34]; -c_731504.elts[35] = ((closureN)self_73696)->elts[35]; -c_731504.elts[36] = ((closureN)self_73696)->elts[36]; -c_731504.elts[37] = ((closureN)self_73696)->elts[37]; -c_731504.elts[38] = ((closureN)self_73696)->elts[38]; - - -make_cell(c_735055,((closureN)self_73696)->elts[27]); -return_closcall1(data,(closure)&c_731504, &c_735055);; -} - -static void __lambda_445(void *data, int argc, object self_73697, object term_91args_91equal_127_73122) { - -closureN_type c_731506; -c_731506.hdr.mark = gc_color_red; - c_731506.hdr.grayed = 0; -c_731506.tag = closureN_tag; - c_731506.fn = (function_type)__lambda_444; -c_731506.num_args = 1; -c_731506.num_elt = 39; -c_731506.elts = (object *)alloca(sizeof(object) * 39); -c_731506.elts[0] = ((closureN)self_73697)->elts[0]; -c_731506.elts[1] = ((closureN)self_73697)->elts[1]; -c_731506.elts[2] = ((closureN)self_73697)->elts[2]; -c_731506.elts[3] = ((closureN)self_73697)->elts[3]; -c_731506.elts[4] = ((closureN)self_73697)->elts[4]; -c_731506.elts[5] = ((closureN)self_73697)->elts[5]; -c_731506.elts[6] = ((closureN)self_73697)->elts[6]; -c_731506.elts[7] = ((closureN)self_73697)->elts[7]; -c_731506.elts[8] = ((closureN)self_73697)->elts[8]; -c_731506.elts[9] = ((closureN)self_73697)->elts[9]; -c_731506.elts[10] = ((closureN)self_73697)->elts[10]; -c_731506.elts[11] = ((closureN)self_73697)->elts[11]; -c_731506.elts[12] = ((closureN)self_73697)->elts[12]; -c_731506.elts[13] = ((closureN)self_73697)->elts[13]; -c_731506.elts[14] = ((closureN)self_73697)->elts[14]; -c_731506.elts[15] = ((closureN)self_73697)->elts[15]; -c_731506.elts[16] = ((closureN)self_73697)->elts[16]; -c_731506.elts[17] = ((closureN)self_73697)->elts[17]; -c_731506.elts[18] = ((closureN)self_73697)->elts[18]; -c_731506.elts[19] = ((closureN)self_73697)->elts[19]; -c_731506.elts[20] = ((closureN)self_73697)->elts[20]; -c_731506.elts[21] = ((closureN)self_73697)->elts[21]; -c_731506.elts[22] = ((closureN)self_73697)->elts[22]; -c_731506.elts[23] = ((closureN)self_73697)->elts[23]; -c_731506.elts[24] = ((closureN)self_73697)->elts[24]; -c_731506.elts[25] = ((closureN)self_73697)->elts[25]; -c_731506.elts[26] = ((closureN)self_73697)->elts[26]; -c_731506.elts[27] = term_91args_91equal_127_73122; -c_731506.elts[28] = ((closureN)self_73697)->elts[27]; -c_731506.elts[29] = ((closureN)self_73697)->elts[29]; -c_731506.elts[30] = ((closureN)self_73697)->elts[30]; -c_731506.elts[31] = ((closureN)self_73697)->elts[31]; -c_731506.elts[32] = ((closureN)self_73697)->elts[32]; -c_731506.elts[33] = ((closureN)self_73697)->elts[33]; -c_731506.elts[34] = ((closureN)self_73697)->elts[34]; -c_731506.elts[35] = ((closureN)self_73697)->elts[35]; -c_731506.elts[36] = ((closureN)self_73697)->elts[36]; -c_731506.elts[37] = ((closureN)self_73697)->elts[37]; -c_731506.elts[38] = ((closureN)self_73697)->elts[38]; - - -make_cell(c_735051,((closureN)self_73697)->elts[28]); -return_closcall1(data,(closure)&c_731506, &c_735051);; -} - -static void __lambda_444(void *data, int argc, object self_73698, object term_91member_127_73121) { - -closureN_type c_731508; -c_731508.hdr.mark = gc_color_red; - c_731508.hdr.grayed = 0; -c_731508.tag = closureN_tag; - c_731508.fn = (function_type)__lambda_441; -c_731508.num_args = 1; -c_731508.num_elt = 40; -c_731508.elts = (object *)alloca(sizeof(object) * 40); -c_731508.elts[0] = ((closureN)self_73698)->elts[0]; -c_731508.elts[1] = ((closureN)self_73698)->elts[1]; -c_731508.elts[2] = ((closureN)self_73698)->elts[2]; -c_731508.elts[3] = ((closureN)self_73698)->elts[3]; -c_731508.elts[4] = ((closureN)self_73698)->elts[4]; -c_731508.elts[5] = ((closureN)self_73698)->elts[5]; -c_731508.elts[6] = ((closureN)self_73698)->elts[6]; -c_731508.elts[7] = ((closureN)self_73698)->elts[7]; -c_731508.elts[8] = ((closureN)self_73698)->elts[8]; -c_731508.elts[9] = ((closureN)self_73698)->elts[9]; -c_731508.elts[10] = ((closureN)self_73698)->elts[10]; -c_731508.elts[11] = ((closureN)self_73698)->elts[11]; -c_731508.elts[12] = ((closureN)self_73698)->elts[12]; -c_731508.elts[13] = ((closureN)self_73698)->elts[13]; -c_731508.elts[14] = ((closureN)self_73698)->elts[14]; -c_731508.elts[15] = ((closureN)self_73698)->elts[15]; -c_731508.elts[16] = ((closureN)self_73698)->elts[16]; -c_731508.elts[17] = ((closureN)self_73698)->elts[17]; -c_731508.elts[18] = ((closureN)self_73698)->elts[18]; -c_731508.elts[19] = ((closureN)self_73698)->elts[19]; -c_731508.elts[20] = ((closureN)self_73698)->elts[20]; -c_731508.elts[21] = ((closureN)self_73698)->elts[21]; -c_731508.elts[22] = ((closureN)self_73698)->elts[22]; -c_731508.elts[23] = ((closureN)self_73698)->elts[23]; -c_731508.elts[24] = ((closureN)self_73698)->elts[24]; -c_731508.elts[25] = ((closureN)self_73698)->elts[25]; -c_731508.elts[26] = ((closureN)self_73698)->elts[26]; -c_731508.elts[27] = ((closureN)self_73698)->elts[27]; -c_731508.elts[28] = ((closureN)self_73698)->elts[28]; -c_731508.elts[29] = term_91member_127_73121; -c_731508.elts[30] = ((closureN)self_73698)->elts[29]; -c_731508.elts[31] = ((closureN)self_73698)->elts[30]; -c_731508.elts[32] = ((closureN)self_73698)->elts[31]; -c_731508.elts[33] = ((closureN)self_73698)->elts[32]; -c_731508.elts[34] = ((closureN)self_73698)->elts[33]; -c_731508.elts[35] = ((closureN)self_73698)->elts[34]; -c_731508.elts[36] = ((closureN)self_73698)->elts[35]; -c_731508.elts[37] = ((closureN)self_73698)->elts[36]; -c_731508.elts[38] = ((closureN)self_73698)->elts[37]; -c_731508.elts[39] = ((closureN)self_73698)->elts[38]; - - -closureN_type c_733194; -c_733194.hdr.mark = gc_color_red; - c_733194.hdr.grayed = 0; -c_733194.tag = closureN_tag; - c_733194.fn = (function_type)__lambda_443; -c_733194.num_args = 0; -c_733194.num_elt = 1; -c_733194.elts = (object *)alloca(sizeof(object) * 1); -c_733194.elts[0] = ((closureN)self_73698)->elts[2]; - -return_closcall1(data,(closure)&c_731508, &c_733194);; -} - -static void __lambda_443(void *data, int argc, object self_73699, object k_73574) { - -closureN_type c_733196; -c_733196.hdr.mark = gc_color_red; - c_733196.hdr.grayed = 0; -c_733196.tag = closureN_tag; - c_733196.fn = (function_type)__lambda_442; -c_733196.num_args = 1; -c_733196.num_elt = 2; -c_733196.elts = (object *)alloca(sizeof(object) * 2); -c_733196.elts[0] = ((closureN)self_73699)->elts[0]; -c_733196.elts[1] = k_73574; - - -make_cons(c_733206,quote_form,nil); - -make_cons(c_733205,quote_compile,&c_733206); - -make_cons(c_733213,quote_form,nil); - -make_cons(c_733212,quote_optimize,&c_733213); - -make_cons(c_733215,quote_nil,nil); - -make_cons(c_733214,&c_733215,nil); - -make_cons(c_733211,&c_733212,&c_733214); - -make_cons(c_733210,quote_codegen,&c_733211); - -make_cons(c_733209,&c_733210,nil); - -make_cons(c_733208,quote_reverse,&c_733209); - -make_cons(c_733207,&c_733208,nil); - -make_cons(c_733204,&c_733205,&c_733207); - -make_cons(c_733203,quote_equal,&c_733204); - -make_cons(c_733221,quote_y,nil); - -make_cons(c_733220,quote_x,&c_733221); - -make_cons(c_733219,quote_eqp,&c_733220); - -make_cons(c_733226,quote_x,nil); - -make_cons(c_733225,quote_fix,&c_733226); - -make_cons(c_733229,quote_y,nil); - -make_cons(c_733228,quote_fix,&c_733229); - -make_cons(c_733227,&c_733228,nil); - -make_cons(c_733224,&c_733225,&c_733227); - -make_cons(c_733223,quote_equal,&c_733224); - -make_cons(c_733222,&c_733223,nil); - -make_cons(c_733218,&c_733219,&c_733222); - -make_cons(c_733217,quote_equal,&c_733218); - -make_cons(c_733235,quote_y,nil); - -make_cons(c_733234,quote_x,&c_733235); - -make_cons(c_733233,quote_greaterp,&c_733234); - -make_cons(c_733239,quote_x,nil); - -make_cons(c_733238,quote_y,&c_733239); - -make_cons(c_733237,quote_lessp,&c_733238); - -make_cons(c_733236,&c_733237,nil); - -make_cons(c_733232,&c_733233,&c_733236); - -make_cons(c_733231,quote_equal,&c_733232); - -make_cons(c_733245,quote_y,nil); - -make_cons(c_733244,quote_x,&c_733245); - -make_cons(c_733243,quote_lesseqp,&c_733244); - -make_cons(c_733251,quote_x,nil); - -make_cons(c_733250,quote_y,&c_733251); - -make_cons(c_733249,quote_lessp,&c_733250); - -make_cons(c_733248,&c_733249,nil); - -make_cons(c_733247,quote_not,&c_733248); - -make_cons(c_733246,&c_733247,nil); - -make_cons(c_733242,&c_733243,&c_733246); - -make_cons(c_733241,quote_equal,&c_733242); - -make_cons(c_733257,quote_y,nil); - -make_cons(c_733256,quote_x,&c_733257); - -make_cons(c_733255,quote_greatereqp,&c_733256); - -make_cons(c_733263,quote_y,nil); - -make_cons(c_733262,quote_x,&c_733263); - -make_cons(c_733261,quote_lessp,&c_733262); - -make_cons(c_733260,&c_733261,nil); - -make_cons(c_733259,quote_not,&c_733260); - -make_cons(c_733258,&c_733259,nil); - -make_cons(c_733254,&c_733255,&c_733258); - -make_cons(c_733253,quote_equal,&c_733254); - -make_cons(c_733268,quote_x,nil); - -make_cons(c_733267,quote_boolean,&c_733268); - -make_cons(c_733275,quote_t,nil); - -make_cons(c_733274,&c_733275,nil); - -make_cons(c_733273,quote_x,&c_733274); - -make_cons(c_733272,quote_equal,&c_733273); - -make_cons(c_733280,quote_f,nil); - -make_cons(c_733279,&c_733280,nil); - -make_cons(c_733278,quote_x,&c_733279); - -make_cons(c_733277,quote_equal,&c_733278); - -make_cons(c_733276,&c_733277,nil); - -make_cons(c_733271,&c_733272,&c_733276); - -make_cons(c_733270,quote_or,&c_733271); - -make_cons(c_733269,&c_733270,nil); - -make_cons(c_733266,&c_733267,&c_733269); - -make_cons(c_733265,quote_equal,&c_733266); - -make_cons(c_733286,quote_y,nil); - -make_cons(c_733285,quote_x,&c_733286); - -make_cons(c_733284,quote_iff,&c_733285); - -make_cons(c_733292,quote_y,nil); - -make_cons(c_733291,quote_x,&c_733292); - -make_cons(c_733290,quote_implies,&c_733291); - -make_cons(c_733296,quote_x,nil); - -make_cons(c_733295,quote_y,&c_733296); - -make_cons(c_733294,quote_implies,&c_733295); - -make_cons(c_733293,&c_733294,nil); - -make_cons(c_733289,&c_733290,&c_733293); - -make_cons(c_733288,quote_and,&c_733289); - -make_cons(c_733287,&c_733288,nil); - -make_cons(c_733283,&c_733284,&c_733287); - -make_cons(c_733282,quote_equal,&c_733283); - -make_cons(c_733301,quote_x,nil); - -make_cons(c_733300,quote_even1,&c_733301); - -make_cons(c_733306,quote_x,nil); - -make_cons(c_733305,quote_zerop,&c_733306); - -make_cons(c_733308,quote_t,nil); - -make_cons(c_733313,quote_x,nil); - -make_cons(c_733312,quote__1911_91,&c_733313); - -make_cons(c_733311,&c_733312,nil); - -make_cons(c_733310,quote_odd,&c_733311); - -make_cons(c_733309,&c_733310,nil); - -make_cons(c_733307,&c_733308,&c_733309); - -make_cons(c_733304,&c_733305,&c_733307); - -make_cons(c_733303,quote__if,&c_733304); - -make_cons(c_733302,&c_733303,nil); - -make_cons(c_733299,&c_733300,&c_733302); - -make_cons(c_733298,quote_equal,&c_733299); - -make_cons(c_733319,quote_pred,nil); - -make_cons(c_733318,quote_l,&c_733319); - -make_cons(c_733317,quote_countps_91,&c_733318); - -make_cons(c_733325,quote_zero,nil); - -make_cons(c_733324,&c_733325,nil); - -make_cons(c_733323,quote_pred,&c_733324); - -make_cons(c_733322,quote_l,&c_733323); - -make_cons(c_733321,quote_countps_91loop,&c_733322); - -make_cons(c_733320,&c_733321,nil); - -make_cons(c_733316,&c_733317,&c_733320); - -make_cons(c_733315,quote_equal,&c_733316); - -make_cons(c_733330,quote_i,nil); - -make_cons(c_733329,quote_fact_91,&c_733330); - -make_cons(c_733334,obj_int2obj(1),nil); - -make_cons(c_733333,quote_i,&c_733334); - -make_cons(c_733332,quote_fact_91loop,&c_733333); - -make_cons(c_733331,&c_733332,nil); - -make_cons(c_733328,&c_733329,&c_733331); - -make_cons(c_733327,quote_equal,&c_733328); - -make_cons(c_733339,quote_x,nil); - -make_cons(c_733338,quote_reverse_91,&c_733339); - -make_cons(c_733344,quote_nil,nil); - -make_cons(c_733343,&c_733344,nil); - -make_cons(c_733342,quote_x,&c_733343); - -make_cons(c_733341,quote_reverse_91loop,&c_733342); - -make_cons(c_733340,&c_733341,nil); - -make_cons(c_733337,&c_733338,&c_733340); - -make_cons(c_733336,quote_equal,&c_733337); - -make_cons(c_733350,quote_y,nil); - -make_cons(c_733349,quote_x,&c_733350); - -make_cons(c_733348,quote_divides,&c_733349); - -make_cons(c_733356,quote_x,nil); - -make_cons(c_733355,quote_y,&c_733356); - -make_cons(c_733354,quote_remainder,&c_733355); - -make_cons(c_733353,&c_733354,nil); - -make_cons(c_733352,quote_zerop,&c_733353); - -make_cons(c_733351,&c_733352,nil); - -make_cons(c_733347,&c_733348,&c_733351); - -make_cons(c_733346,quote_equal,&c_733347); - -make_cons(c_733362,quote_alist,nil); - -make_cons(c_733361,quote_var,&c_733362); - -make_cons(c_733360,quote_assume_91true,&c_733361); - -make_cons(c_733369,quote_t,nil); - -make_cons(c_733368,&c_733369,nil); - -make_cons(c_733367,quote_var,&c_733368); - -make_cons(c_733366,quote_cons,&c_733367); - -make_cons(c_733370,quote_alist,nil); - -make_cons(c_733365,&c_733366,&c_733370); - -make_cons(c_733364,quote_cons,&c_733365); - -make_cons(c_733363,&c_733364,nil); - -make_cons(c_733359,&c_733360,&c_733363); - -make_cons(c_733358,quote_equal,&c_733359); - -make_cons(c_733376,quote_alist,nil); - -make_cons(c_733375,quote_var,&c_733376); - -make_cons(c_733374,quote_assume_91false,&c_733375); - -make_cons(c_733383,quote_f,nil); - -make_cons(c_733382,&c_733383,nil); - -make_cons(c_733381,quote_var,&c_733382); - -make_cons(c_733380,quote_cons,&c_733381); - -make_cons(c_733384,quote_alist,nil); - -make_cons(c_733379,&c_733380,&c_733384); - -make_cons(c_733378,quote_cons,&c_733379); - -make_cons(c_733377,&c_733378,nil); - -make_cons(c_733373,&c_733374,&c_733377); - -make_cons(c_733372,quote_equal,&c_733373); - -make_cons(c_733389,quote_x,nil); - -make_cons(c_733388,quote_tautology_91checker,&c_733389); - -make_cons(c_733394,quote_x,nil); - -make_cons(c_733393,quote_normalize,&c_733394); - -make_cons(c_733396,quote_nil,nil); - -make_cons(c_733395,&c_733396,nil); - -make_cons(c_733392,&c_733393,&c_733395); - -make_cons(c_733391,quote_tautologyp,&c_733392); - -make_cons(c_733390,&c_733391,nil); - -make_cons(c_733387,&c_733388,&c_733390); - -make_cons(c_733386,quote_equal,&c_733387); - -make_cons(c_733401,quote_x,nil); - -make_cons(c_733400,quote_falsify,&c_733401); - -make_cons(c_733406,quote_x,nil); - -make_cons(c_733405,quote_normalize,&c_733406); - -make_cons(c_733408,quote_nil,nil); - -make_cons(c_733407,&c_733408,nil); - -make_cons(c_733404,&c_733405,&c_733407); - -make_cons(c_733403,quote_falsify1,&c_733404); - -make_cons(c_733402,&c_733403,nil); - -make_cons(c_733399,&c_733400,&c_733402); - -make_cons(c_733398,quote_equal,&c_733399); - -make_cons(c_733413,quote_x,nil); - -make_cons(c_733412,quote_prime,&c_733413); - -make_cons(c_733420,quote_x,nil); - -make_cons(c_733419,quote_zerop,&c_733420); - -make_cons(c_733418,&c_733419,nil); - -make_cons(c_733417,quote_not,&c_733418); - -make_cons(c_733429,quote_zero,nil); - -make_cons(c_733428,&c_733429,nil); - -make_cons(c_733427,quote_add1,&c_733428); - -make_cons(c_733426,&c_733427,nil); - -make_cons(c_733425,quote_x,&c_733426); - -make_cons(c_733424,quote_equal,&c_733425); - -make_cons(c_733423,&c_733424,nil); - -make_cons(c_733422,quote_not,&c_733423); - -make_cons(c_733435,quote_x,nil); - -make_cons(c_733434,quote__1911_91,&c_733435); - -make_cons(c_733433,&c_733434,nil); - -make_cons(c_733432,quote_x,&c_733433); - -make_cons(c_733431,quote_prime1,&c_733432); - -make_cons(c_733430,&c_733431,nil); - -make_cons(c_733421,&c_733422,&c_733430); - -make_cons(c_733416,&c_733417,&c_733421); - -make_cons(c_733415,quote_and,&c_733416); - -make_cons(c_733414,&c_733415,nil); - -make_cons(c_733411,&c_733412,&c_733414); - -make_cons(c_733410,quote_equal,&c_733411); - -make_cons(c_733441,quote_q,nil); - -make_cons(c_733440,quote_p,&c_733441); - -make_cons(c_733439,quote_and,&c_733440); - -make_cons(c_733449,quote_t,nil); - -make_cons(c_733451,quote_f,nil); - -make_cons(c_733450,&c_733451,nil); - -make_cons(c_733448,&c_733449,&c_733450); - -make_cons(c_733447,quote_q,&c_733448); - -make_cons(c_733446,quote__if,&c_733447); - -make_cons(c_733453,quote_f,nil); - -make_cons(c_733452,&c_733453,nil); - -make_cons(c_733445,&c_733446,&c_733452); - -make_cons(c_733444,quote_p,&c_733445); - -make_cons(c_733443,quote__if,&c_733444); - -make_cons(c_733442,&c_733443,nil); - -make_cons(c_733438,&c_733439,&c_733442); - -make_cons(c_733437,quote_equal,&c_733438); - -make_cons(c_733459,quote_q,nil); - -make_cons(c_733458,quote_p,&c_733459); - -make_cons(c_733457,quote_or,&c_733458); - -make_cons(c_733464,quote_t,nil); - -make_cons(c_733469,quote_t,nil); - -make_cons(c_733471,quote_f,nil); - -make_cons(c_733470,&c_733471,nil); - -make_cons(c_733468,&c_733469,&c_733470); - -make_cons(c_733467,quote_q,&c_733468); - -make_cons(c_733466,quote__if,&c_733467); - -make_cons(c_733465,&c_733466,nil); - -make_cons(c_733463,&c_733464,&c_733465); - -make_cons(c_733462,quote_p,&c_733463); - -make_cons(c_733461,quote__if,&c_733462); - -make_cons(c_733460,&c_733461,nil); - -make_cons(c_733456,&c_733457,&c_733460); - -make_cons(c_733455,quote_equal,&c_733456); - -make_cons(c_733476,quote_p,nil); - -make_cons(c_733475,quote_not,&c_733476); - -make_cons(c_733481,quote_f,nil); - -make_cons(c_733483,quote_t,nil); - -make_cons(c_733482,&c_733483,nil); - -make_cons(c_733480,&c_733481,&c_733482); - -make_cons(c_733479,quote_p,&c_733480); - -make_cons(c_733478,quote__if,&c_733479); - -make_cons(c_733477,&c_733478,nil); - -make_cons(c_733474,&c_733475,&c_733477); - -make_cons(c_733473,quote_equal,&c_733474); - -make_cons(c_733489,quote_q,nil); - -make_cons(c_733488,quote_p,&c_733489); - -make_cons(c_733487,quote_implies,&c_733488); - -make_cons(c_733497,quote_t,nil); - -make_cons(c_733499,quote_f,nil); - -make_cons(c_733498,&c_733499,nil); - -make_cons(c_733496,&c_733497,&c_733498); - -make_cons(c_733495,quote_q,&c_733496); - -make_cons(c_733494,quote__if,&c_733495); - -make_cons(c_733501,quote_t,nil); - -make_cons(c_733500,&c_733501,nil); - -make_cons(c_733493,&c_733494,&c_733500); - -make_cons(c_733492,quote_p,&c_733493); - -make_cons(c_733491,quote__if,&c_733492); - -make_cons(c_733490,&c_733491,nil); - -make_cons(c_733486,&c_733487,&c_733490); - -make_cons(c_733485,quote_equal,&c_733486); - -make_cons(c_733506,quote_x,nil); - -make_cons(c_733505,quote_fix,&c_733506); - -make_cons(c_733511,quote_x,nil); - -make_cons(c_733510,quote_numberp,&c_733511); - -make_cons(c_733514,quote_zero,nil); - -make_cons(c_733513,&c_733514,nil); - -make_cons(c_733512,quote_x,&c_733513); - -make_cons(c_733509,&c_733510,&c_733512); - -make_cons(c_733508,quote__if,&c_733509); - -make_cons(c_733507,&c_733508,nil); - -make_cons(c_733504,&c_733505,&c_733507); - -make_cons(c_733503,quote_equal,&c_733504); - -make_cons(c_733523,quote_c,nil); - -make_cons(c_733522,quote_b,&c_733523); - -make_cons(c_733521,quote_a,&c_733522); - -make_cons(c_733520,quote__if,&c_733521); - -make_cons(c_733525,quote_e,nil); - -make_cons(c_733524,quote_d,&c_733525); - -make_cons(c_733519,&c_733520,&c_733524); - -make_cons(c_733518,quote__if,&c_733519); - -make_cons(c_733533,quote_e,nil); - -make_cons(c_733532,quote_d,&c_733533); - -make_cons(c_733531,quote_b,&c_733532); - -make_cons(c_733530,quote__if,&c_733531); - -make_cons(c_733538,quote_e,nil); - -make_cons(c_733537,quote_d,&c_733538); - -make_cons(c_733536,quote_c,&c_733537); - -make_cons(c_733535,quote__if,&c_733536); - -make_cons(c_733534,&c_733535,nil); - -make_cons(c_733529,&c_733530,&c_733534); - -make_cons(c_733528,quote_a,&c_733529); - -make_cons(c_733527,quote__if,&c_733528); - -make_cons(c_733526,&c_733527,nil); - -make_cons(c_733517,&c_733518,&c_733526); - -make_cons(c_733516,quote_equal,&c_733517); - -make_cons(c_733543,quote_x,nil); - -make_cons(c_733542,quote_zerop,&c_733543); - -make_cons(c_733550,quote_zero,nil); - -make_cons(c_733549,&c_733550,nil); - -make_cons(c_733548,quote_x,&c_733549); - -make_cons(c_733547,quote_equal,&c_733548); - -make_cons(c_733555,quote_x,nil); - -make_cons(c_733554,quote_numberp,&c_733555); - -make_cons(c_733553,&c_733554,nil); - -make_cons(c_733552,quote_not,&c_733553); - -make_cons(c_733551,&c_733552,nil); - -make_cons(c_733546,&c_733547,&c_733551); - -make_cons(c_733545,quote_or,&c_733546); - -make_cons(c_733544,&c_733545,nil); - -make_cons(c_733541,&c_733542,&c_733544); - -make_cons(c_733540,quote_equal,&c_733541); - -make_cons(c_733563,quote_y,nil); - -make_cons(c_733562,quote_x,&c_733563); - -make_cons(c_733561,quote_plus,&c_733562); - -make_cons(c_733564,quote_z,nil); - -make_cons(c_733560,&c_733561,&c_733564); - -make_cons(c_733559,quote_plus,&c_733560); - -make_cons(c_733571,quote_z,nil); - -make_cons(c_733570,quote_y,&c_733571); - -make_cons(c_733569,quote_plus,&c_733570); - -make_cons(c_733568,&c_733569,nil); - -make_cons(c_733567,quote_x,&c_733568); - -make_cons(c_733566,quote_plus,&c_733567); - -make_cons(c_733565,&c_733566,nil); - -make_cons(c_733558,&c_733559,&c_733565); - -make_cons(c_733557,quote_equal,&c_733558); - -make_cons(c_733579,quote_b,nil); - -make_cons(c_733578,quote_a,&c_733579); - -make_cons(c_733577,quote_plus,&c_733578); - -make_cons(c_733581,quote_zero,nil); - -make_cons(c_733580,&c_733581,nil); - -make_cons(c_733576,&c_733577,&c_733580); - -make_cons(c_733575,quote_equal,&c_733576); - -make_cons(c_733586,quote_a,nil); - -make_cons(c_733585,quote_zerop,&c_733586); - -make_cons(c_733589,quote_b,nil); - -make_cons(c_733588,quote_zerop,&c_733589); - -make_cons(c_733587,&c_733588,nil); - -make_cons(c_733584,&c_733585,&c_733587); - -make_cons(c_733583,quote_and,&c_733584); - -make_cons(c_733582,&c_733583,nil); - -make_cons(c_733574,&c_733575,&c_733582); - -make_cons(c_733573,quote_equal,&c_733574); - -make_cons(c_733595,quote_x,nil); - -make_cons(c_733594,quote_x,&c_733595); - -make_cons(c_733593,quote_difference,&c_733594); - -make_cons(c_733597,quote_zero,nil); - -make_cons(c_733596,&c_733597,nil); - -make_cons(c_733592,&c_733593,&c_733596); - -make_cons(c_733591,quote_equal,&c_733592); - -make_cons(c_733605,quote_b,nil); - -make_cons(c_733604,quote_a,&c_733605); - -make_cons(c_733603,quote_plus,&c_733604); - -make_cons(c_733609,quote_c,nil); - -make_cons(c_733608,quote_a,&c_733609); - -make_cons(c_733607,quote_plus,&c_733608); - -make_cons(c_733606,&c_733607,nil); - -make_cons(c_733602,&c_733603,&c_733606); - -make_cons(c_733601,quote_equal,&c_733602); - -make_cons(c_733614,quote_b,nil); - -make_cons(c_733613,quote_fix,&c_733614); - -make_cons(c_733617,quote_c,nil); - -make_cons(c_733616,quote_fix,&c_733617); - -make_cons(c_733615,&c_733616,nil); - -make_cons(c_733612,&c_733613,&c_733615); - -make_cons(c_733611,quote_equal,&c_733612); - -make_cons(c_733610,&c_733611,nil); - -make_cons(c_733600,&c_733601,&c_733610); - -make_cons(c_733599,quote_equal,&c_733600); - -make_cons(c_733623,quote_zero,nil); - -make_cons(c_733627,quote_y,nil); - -make_cons(c_733626,quote_x,&c_733627); - -make_cons(c_733625,quote_difference,&c_733626); - -make_cons(c_733624,&c_733625,nil); - -make_cons(c_733622,&c_733623,&c_733624); - -make_cons(c_733621,quote_equal,&c_733622); - -make_cons(c_733633,quote_x,nil); - -make_cons(c_733632,quote_y,&c_733633); - -make_cons(c_733631,quote_lessp,&c_733632); - -make_cons(c_733630,&c_733631,nil); - -make_cons(c_733629,quote_not,&c_733630); - -make_cons(c_733628,&c_733629,nil); - -make_cons(c_733620,&c_733621,&c_733628); - -make_cons(c_733619,quote_equal,&c_733620); - -make_cons(c_733642,quote_y,nil); - -make_cons(c_733641,quote_x,&c_733642); - -make_cons(c_733640,quote_difference,&c_733641); - -make_cons(c_733639,&c_733640,nil); - -make_cons(c_733638,quote_x,&c_733639); - -make_cons(c_733637,quote_equal,&c_733638); - -make_cons(c_733647,quote_x,nil); - -make_cons(c_733646,quote_numberp,&c_733647); - -make_cons(c_733654,quote_zero,nil); - -make_cons(c_733653,&c_733654,nil); - -make_cons(c_733652,quote_x,&c_733653); - -make_cons(c_733651,quote_equal,&c_733652); - -make_cons(c_733657,quote_y,nil); - -make_cons(c_733656,quote_zerop,&c_733657); - -make_cons(c_733655,&c_733656,nil); - -make_cons(c_733650,&c_733651,&c_733655); - -make_cons(c_733649,quote_or,&c_733650); - -make_cons(c_733648,&c_733649,nil); - -make_cons(c_733645,&c_733646,&c_733648); - -make_cons(c_733644,quote_and,&c_733645); - -make_cons(c_733643,&c_733644,nil); - -make_cons(c_733636,&c_733637,&c_733643); - -make_cons(c_733635,quote_equal,&c_733636); - -make_cons(c_733667,quote_y,nil); - -make_cons(c_733666,quote_x,&c_733667); - -make_cons(c_733665,quote_append,&c_733666); - -make_cons(c_733664,&c_733665,nil); - -make_cons(c_733663,quote_plus_91tree,&c_733664); - -make_cons(c_733668,quote_a,nil); - -make_cons(c_733662,&c_733663,&c_733668); - -make_cons(c_733661,quote_meaning,&c_733662); - -make_cons(c_733675,quote_x,nil); - -make_cons(c_733674,quote_plus_91tree,&c_733675); - -make_cons(c_733676,quote_a,nil); - -make_cons(c_733673,&c_733674,&c_733676); - -make_cons(c_733672,quote_meaning,&c_733673); - -make_cons(c_733681,quote_y,nil); - -make_cons(c_733680,quote_plus_91tree,&c_733681); - -make_cons(c_733682,quote_a,nil); - -make_cons(c_733679,&c_733680,&c_733682); - -make_cons(c_733678,quote_meaning,&c_733679); - -make_cons(c_733677,&c_733678,nil); - -make_cons(c_733671,&c_733672,&c_733677); - -make_cons(c_733670,quote_plus,&c_733671); - -make_cons(c_733669,&c_733670,nil); - -make_cons(c_733660,&c_733661,&c_733669); - -make_cons(c_733659,quote_equal,&c_733660); - -make_cons(c_733691,quote_x,nil); - -make_cons(c_733690,quote_plus_91fringe,&c_733691); - -make_cons(c_733689,&c_733690,nil); - -make_cons(c_733688,quote_plus_91tree,&c_733689); - -make_cons(c_733692,quote_a,nil); - -make_cons(c_733687,&c_733688,&c_733692); - -make_cons(c_733686,quote_meaning,&c_733687); - -make_cons(c_733698,quote_a,nil); - -make_cons(c_733697,quote_x,&c_733698); - -make_cons(c_733696,quote_meaning,&c_733697); - -make_cons(c_733695,&c_733696,nil); - -make_cons(c_733694,quote_fix,&c_733695); - -make_cons(c_733693,&c_733694,nil); - -make_cons(c_733685,&c_733686,&c_733693); - -make_cons(c_733684,quote_equal,&c_733685); - -make_cons(c_733706,quote_y,nil); - -make_cons(c_733705,quote_x,&c_733706); - -make_cons(c_733704,quote_append,&c_733705); - -make_cons(c_733707,quote_z,nil); - -make_cons(c_733703,&c_733704,&c_733707); - -make_cons(c_733702,quote_append,&c_733703); - -make_cons(c_733714,quote_z,nil); - -make_cons(c_733713,quote_y,&c_733714); - -make_cons(c_733712,quote_append,&c_733713); - -make_cons(c_733711,&c_733712,nil); - -make_cons(c_733710,quote_x,&c_733711); - -make_cons(c_733709,quote_append,&c_733710); - -make_cons(c_733708,&c_733709,nil); - -make_cons(c_733701,&c_733702,&c_733708); - -make_cons(c_733700,quote_equal,&c_733701); - -make_cons(c_733722,quote_b,nil); - -make_cons(c_733721,quote_a,&c_733722); - -make_cons(c_733720,quote_append,&c_733721); - -make_cons(c_733719,&c_733720,nil); - -make_cons(c_733718,quote_reverse,&c_733719); - -make_cons(c_733727,quote_b,nil); - -make_cons(c_733726,quote_reverse,&c_733727); - -make_cons(c_733730,quote_a,nil); - -make_cons(c_733729,quote_reverse,&c_733730); - -make_cons(c_733728,&c_733729,nil); - -make_cons(c_733725,&c_733726,&c_733728); - -make_cons(c_733724,quote_append,&c_733725); - -make_cons(c_733723,&c_733724,nil); - -make_cons(c_733717,&c_733718,&c_733723); - -make_cons(c_733716,quote_equal,&c_733717); - -make_cons(c_733739,quote_z,nil); - -make_cons(c_733738,quote_y,&c_733739); - -make_cons(c_733737,quote_plus,&c_733738); - -make_cons(c_733736,&c_733737,nil); - -make_cons(c_733735,quote_x,&c_733736); - -make_cons(c_733734,quote_times,&c_733735); - -make_cons(c_733745,quote_y,nil); - -make_cons(c_733744,quote_x,&c_733745); - -make_cons(c_733743,quote_times,&c_733744); - -make_cons(c_733749,quote_z,nil); - -make_cons(c_733748,quote_x,&c_733749); - -make_cons(c_733747,quote_times,&c_733748); - -make_cons(c_733746,&c_733747,nil); - -make_cons(c_733742,&c_733743,&c_733746); - -make_cons(c_733741,quote_plus,&c_733742); - -make_cons(c_733740,&c_733741,nil); - -make_cons(c_733733,&c_733734,&c_733740); - -make_cons(c_733732,quote_equal,&c_733733); - -make_cons(c_733757,quote_y,nil); - -make_cons(c_733756,quote_x,&c_733757); - -make_cons(c_733755,quote_times,&c_733756); - -make_cons(c_733758,quote_z,nil); - -make_cons(c_733754,&c_733755,&c_733758); - -make_cons(c_733753,quote_times,&c_733754); - -make_cons(c_733765,quote_z,nil); - -make_cons(c_733764,quote_y,&c_733765); - -make_cons(c_733763,quote_times,&c_733764); - -make_cons(c_733762,&c_733763,nil); - -make_cons(c_733761,quote_x,&c_733762); - -make_cons(c_733760,quote_times,&c_733761); - -make_cons(c_733759,&c_733760,nil); - -make_cons(c_733752,&c_733753,&c_733759); - -make_cons(c_733751,quote_equal,&c_733752); - -make_cons(c_733773,quote_y,nil); - -make_cons(c_733772,quote_x,&c_733773); - -make_cons(c_733771,quote_times,&c_733772); - -make_cons(c_733775,quote_zero,nil); - -make_cons(c_733774,&c_733775,nil); - -make_cons(c_733770,&c_733771,&c_733774); - -make_cons(c_733769,quote_equal,&c_733770); - -make_cons(c_733780,quote_x,nil); - -make_cons(c_733779,quote_zerop,&c_733780); - -make_cons(c_733783,quote_y,nil); - -make_cons(c_733782,quote_zerop,&c_733783); - -make_cons(c_733781,&c_733782,nil); - -make_cons(c_733778,&c_733779,&c_733781); - -make_cons(c_733777,quote_or,&c_733778); - -make_cons(c_733776,&c_733777,nil); - -make_cons(c_733768,&c_733769,&c_733776); - -make_cons(c_733767,quote_equal,&c_733768); - -make_cons(c_733791,quote_y,nil); - -make_cons(c_733790,quote_x,&c_733791); - -make_cons(c_733789,quote_append,&c_733790); - -make_cons(c_733793,quote_envrn,nil); - -make_cons(c_733792,quote_pds,&c_733793); - -make_cons(c_733788,&c_733789,&c_733792); - -make_cons(c_733787,quote_exec,&c_733788); - -make_cons(c_733801,quote_envrn,nil); - -make_cons(c_733800,quote_pds,&c_733801); - -make_cons(c_733799,quote_x,&c_733800); - -make_cons(c_733798,quote_exec,&c_733799); - -make_cons(c_733802,quote_envrn,nil); - -make_cons(c_733797,&c_733798,&c_733802); - -make_cons(c_733796,quote_y,&c_733797); - -make_cons(c_733795,quote_exec,&c_733796); - -make_cons(c_733794,&c_733795,nil); - -make_cons(c_733786,&c_733787,&c_733794); - -make_cons(c_733785,quote_equal,&c_733786); - -make_cons(c_733808,quote_y,nil); - -make_cons(c_733807,quote_x,&c_733808); - -make_cons(c_733806,quote_mc_91flatten,&c_733807); - -make_cons(c_733813,quote_x,nil); - -make_cons(c_733812,quote_flatten,&c_733813); - -make_cons(c_733814,quote_y,nil); - -make_cons(c_733811,&c_733812,&c_733814); - -make_cons(c_733810,quote_append,&c_733811); - -make_cons(c_733809,&c_733810,nil); - -make_cons(c_733805,&c_733806,&c_733809); - -make_cons(c_733804,quote_equal,&c_733805); - -make_cons(c_733823,quote_b,nil); - -make_cons(c_733822,quote_a,&c_733823); - -make_cons(c_733821,quote_append,&c_733822); - -make_cons(c_733820,&c_733821,nil); - -make_cons(c_733819,quote_x,&c_733820); - -make_cons(c_733818,quote_member,&c_733819); - -make_cons(c_733829,quote_a,nil); - -make_cons(c_733828,quote_x,&c_733829); - -make_cons(c_733827,quote_member,&c_733828); - -make_cons(c_733833,quote_b,nil); - -make_cons(c_733832,quote_x,&c_733833); - -make_cons(c_733831,quote_member,&c_733832); - -make_cons(c_733830,&c_733831,nil); - -make_cons(c_733826,&c_733827,&c_733830); - -make_cons(c_733825,quote_or,&c_733826); - -make_cons(c_733824,&c_733825,nil); - -make_cons(c_733817,&c_733818,&c_733824); - -make_cons(c_733816,quote_equal,&c_733817); - -make_cons(c_733841,quote_y,nil); - -make_cons(c_733840,quote_reverse,&c_733841); - -make_cons(c_733839,&c_733840,nil); - -make_cons(c_733838,quote_x,&c_733839); - -make_cons(c_733837,quote_member,&c_733838); - -make_cons(c_733845,quote_y,nil); - -make_cons(c_733844,quote_x,&c_733845); - -make_cons(c_733843,quote_member,&c_733844); - -make_cons(c_733842,&c_733843,nil); - -make_cons(c_733836,&c_733837,&c_733842); - -make_cons(c_733835,quote_equal,&c_733836); - -make_cons(c_733852,quote_x,nil); - -make_cons(c_733851,quote_reverse,&c_733852); - -make_cons(c_733850,&c_733851,nil); - -make_cons(c_733849,quote_length,&c_733850); - -make_cons(c_733855,quote_x,nil); - -make_cons(c_733854,quote_length,&c_733855); - -make_cons(c_733853,&c_733854,nil); - -make_cons(c_733848,&c_733849,&c_733853); - -make_cons(c_733847,quote_equal,&c_733848); - -make_cons(c_733864,quote_c,nil); - -make_cons(c_733863,quote_b,&c_733864); - -make_cons(c_733862,quote_intersect,&c_733863); - -make_cons(c_733861,&c_733862,nil); - -make_cons(c_733860,quote_a,&c_733861); - -make_cons(c_733859,quote_member,&c_733860); - -make_cons(c_733870,quote_b,nil); - -make_cons(c_733869,quote_a,&c_733870); - -make_cons(c_733868,quote_member,&c_733869); - -make_cons(c_733874,quote_c,nil); - -make_cons(c_733873,quote_a,&c_733874); - -make_cons(c_733872,quote_member,&c_733873); - -make_cons(c_733871,&c_733872,nil); - -make_cons(c_733867,&c_733868,&c_733871); - -make_cons(c_733866,quote_and,&c_733867); - -make_cons(c_733865,&c_733866,nil); - -make_cons(c_733858,&c_733859,&c_733865); - -make_cons(c_733857,quote_equal,&c_733858); - -make_cons(c_733880,quote_zero,nil); - -make_cons(c_733881,quote_i,nil); - -make_cons(c_733879,&c_733880,&c_733881); - -make_cons(c_733878,quote_nth,&c_733879); - -make_cons(c_733883,quote_zero,nil); - -make_cons(c_733882,&c_733883,nil); - -make_cons(c_733877,&c_733878,&c_733882); - -make_cons(c_733876,quote_equal,&c_733877); - -make_cons(c_733892,quote_k,nil); - -make_cons(c_733891,quote_j,&c_733892); - -make_cons(c_733890,quote_plus,&c_733891); - -make_cons(c_733889,&c_733890,nil); - -make_cons(c_733888,quote_i,&c_733889); - -make_cons(c_733887,quote_exp,&c_733888); - -make_cons(c_733898,quote_j,nil); - -make_cons(c_733897,quote_i,&c_733898); - -make_cons(c_733896,quote_exp,&c_733897); - -make_cons(c_733902,quote_k,nil); - -make_cons(c_733901,quote_i,&c_733902); - -make_cons(c_733900,quote_exp,&c_733901); - -make_cons(c_733899,&c_733900,nil); - -make_cons(c_733895,&c_733896,&c_733899); - -make_cons(c_733894,quote_times,&c_733895); - -make_cons(c_733893,&c_733894,nil); - -make_cons(c_733886,&c_733887,&c_733893); - -make_cons(c_733885,quote_equal,&c_733886); - -make_cons(c_733911,quote_k,nil); - -make_cons(c_733910,quote_j,&c_733911); - -make_cons(c_733909,quote_times,&c_733910); - -make_cons(c_733908,&c_733909,nil); - -make_cons(c_733907,quote_i,&c_733908); - -make_cons(c_733906,quote_exp,&c_733907); - -make_cons(c_733917,quote_j,nil); - -make_cons(c_733916,quote_i,&c_733917); - -make_cons(c_733915,quote_exp,&c_733916); - -make_cons(c_733918,quote_k,nil); - -make_cons(c_733914,&c_733915,&c_733918); - -make_cons(c_733913,quote_exp,&c_733914); - -make_cons(c_733912,&c_733913,nil); - -make_cons(c_733905,&c_733906,&c_733912); - -make_cons(c_733904,quote_equal,&c_733905); - -make_cons(c_733924,quote_y,nil); - -make_cons(c_733923,quote_x,&c_733924); - -make_cons(c_733922,quote_reverse_91loop,&c_733923); - -make_cons(c_733929,quote_x,nil); - -make_cons(c_733928,quote_reverse,&c_733929); - -make_cons(c_733930,quote_y,nil); - -make_cons(c_733927,&c_733928,&c_733930); - -make_cons(c_733926,quote_append,&c_733927); - -make_cons(c_733925,&c_733926,nil); - -make_cons(c_733921,&c_733922,&c_733925); - -make_cons(c_733920,quote_equal,&c_733921); - -make_cons(c_733937,quote_nil,nil); - -make_cons(c_733936,&c_733937,nil); - -make_cons(c_733935,quote_x,&c_733936); - -make_cons(c_733934,quote_reverse_91loop,&c_733935); - -make_cons(c_733940,quote_x,nil); - -make_cons(c_733939,quote_reverse,&c_733940); - -make_cons(c_733938,&c_733939,nil); - -make_cons(c_733933,&c_733934,&c_733938); - -make_cons(c_733932,quote_equal,&c_733933); - -make_cons(c_733949,quote_y,nil); - -make_cons(c_733948,quote_x,&c_733949); - -make_cons(c_733947,quote_sort_91lp,&c_733948); - -make_cons(c_733946,&c_733947,nil); - -make_cons(c_733945,quote_z,&c_733946); - -make_cons(c_733944,quote_count_91list,&c_733945); - -make_cons(c_733955,quote_x,nil); - -make_cons(c_733954,quote_z,&c_733955); - -make_cons(c_733953,quote_count_91list,&c_733954); - -make_cons(c_733959,quote_y,nil); - -make_cons(c_733958,quote_z,&c_733959); - -make_cons(c_733957,quote_count_91list,&c_733958); - -make_cons(c_733956,&c_733957,nil); - -make_cons(c_733952,&c_733953,&c_733956); - -make_cons(c_733951,quote_plus,&c_733952); - -make_cons(c_733950,&c_733951,nil); - -make_cons(c_733943,&c_733944,&c_733950); - -make_cons(c_733942,quote_equal,&c_733943); - -make_cons(c_733967,quote_b,nil); - -make_cons(c_733966,quote_a,&c_733967); - -make_cons(c_733965,quote_append,&c_733966); - -make_cons(c_733971,quote_c,nil); - -make_cons(c_733970,quote_a,&c_733971); - -make_cons(c_733969,quote_append,&c_733970); - -make_cons(c_733968,&c_733969,nil); - -make_cons(c_733964,&c_733965,&c_733968); - -make_cons(c_733963,quote_equal,&c_733964); - -make_cons(c_733975,quote_c,nil); - -make_cons(c_733974,quote_b,&c_733975); - -make_cons(c_733973,quote_equal,&c_733974); - -make_cons(c_733972,&c_733973,nil); - -make_cons(c_733962,&c_733963,&c_733972); - -make_cons(c_733961,quote_equal,&c_733962); - -make_cons(c_733983,quote_y,nil); - -make_cons(c_733982,quote_x,&c_733983); - -make_cons(c_733981,quote_remainder,&c_733982); - -make_cons(c_733990,quote_y,nil); - -make_cons(c_733989,quote_x,&c_733990); - -make_cons(c_733988,quote_quotient,&c_733989); - -make_cons(c_733987,&c_733988,nil); - -make_cons(c_733986,quote_y,&c_733987); - -make_cons(c_733985,quote_times,&c_733986); - -make_cons(c_733984,&c_733985,nil); - -make_cons(c_733980,&c_733981,&c_733984); - -make_cons(c_733979,quote_plus,&c_733980); - -make_cons(c_733993,quote_x,nil); - -make_cons(c_733992,quote_fix,&c_733993); - -make_cons(c_733991,&c_733992,nil); - -make_cons(c_733978,&c_733979,&c_733991); - -make_cons(c_733977,quote_equal,&c_733978); - -make_cons(c_734002,quote_base,nil); - -make_cons(c_734001,quote_i,&c_734002); - -make_cons(c_734000,quote_l,&c_734001); - -make_cons(c_733999,quote_big_91plus1,&c_734000); - -make_cons(c_734003,quote_base,nil); - -make_cons(c_733998,&c_733999,&c_734003); - -make_cons(c_733997,quote_power_91eval,&c_733998); - -make_cons(c_734009,quote_base,nil); - -make_cons(c_734008,quote_l,&c_734009); - -make_cons(c_734007,quote_power_91eval,&c_734008); - -make_cons(c_734010,quote_i,nil); - -make_cons(c_734006,&c_734007,&c_734010); - -make_cons(c_734005,quote_plus,&c_734006); - -make_cons(c_734004,&c_734005,nil); - -make_cons(c_733996,&c_733997,&c_734004); - -make_cons(c_733995,quote_equal,&c_733996); - -make_cons(c_734020,quote_base,nil); - -make_cons(c_734019,quote_i,&c_734020); - -make_cons(c_734018,quote_y,&c_734019); - -make_cons(c_734017,quote_x,&c_734018); - -make_cons(c_734016,quote_big_91plus,&c_734017); - -make_cons(c_734021,quote_base,nil); - -make_cons(c_734015,&c_734016,&c_734021); - -make_cons(c_734014,quote_power_91eval,&c_734015); - -make_cons(c_734030,quote_base,nil); - -make_cons(c_734029,quote_x,&c_734030); - -make_cons(c_734028,quote_power_91eval,&c_734029); - -make_cons(c_734034,quote_base,nil); - -make_cons(c_734033,quote_y,&c_734034); - -make_cons(c_734032,quote_power_91eval,&c_734033); - -make_cons(c_734031,&c_734032,nil); - -make_cons(c_734027,&c_734028,&c_734031); - -make_cons(c_734026,quote_plus,&c_734027); - -make_cons(c_734025,&c_734026,nil); - -make_cons(c_734024,quote_i,&c_734025); - -make_cons(c_734023,quote_plus,&c_734024); - -make_cons(c_734022,&c_734023,nil); - -make_cons(c_734013,&c_734014,&c_734022); - -make_cons(c_734012,quote_equal,&c_734013); - -make_cons(c_734040,obj_int2obj(1),nil); - -make_cons(c_734039,quote_y,&c_734040); - -make_cons(c_734038,quote_remainder,&c_734039); - -make_cons(c_734042,quote_zero,nil); - -make_cons(c_734041,&c_734042,nil); - -make_cons(c_734037,&c_734038,&c_734041); - -make_cons(c_734036,quote_equal,&c_734037); - -make_cons(c_734050,quote_y,nil); - -make_cons(c_734049,quote_x,&c_734050); - -make_cons(c_734048,quote_remainder,&c_734049); - -make_cons(c_734051,quote_y,nil); - -make_cons(c_734047,&c_734048,&c_734051); - -make_cons(c_734046,quote_lessp,&c_734047); - -make_cons(c_734056,quote_y,nil); - -make_cons(c_734055,quote_zerop,&c_734056); - -make_cons(c_734054,&c_734055,nil); - -make_cons(c_734053,quote_not,&c_734054); - -make_cons(c_734052,&c_734053,nil); - -make_cons(c_734045,&c_734046,&c_734052); - -make_cons(c_734044,quote_equal,&c_734045); - -make_cons(c_734062,quote_x,nil); - -make_cons(c_734061,quote_x,&c_734062); - -make_cons(c_734060,quote_remainder,&c_734061); - -make_cons(c_734064,quote_zero,nil); - -make_cons(c_734063,&c_734064,nil); - -make_cons(c_734059,&c_734060,&c_734063); - -make_cons(c_734058,quote_equal,&c_734059); - -make_cons(c_734072,quote_j,nil); - -make_cons(c_734071,quote_i,&c_734072); - -make_cons(c_734070,quote_quotient,&c_734071); - -make_cons(c_734073,quote_i,nil); - -make_cons(c_734069,&c_734070,&c_734073); - -make_cons(c_734068,quote_lessp,&c_734069); - -make_cons(c_734080,quote_i,nil); - -make_cons(c_734079,quote_zerop,&c_734080); - -make_cons(c_734078,&c_734079,nil); - -make_cons(c_734077,quote_not,&c_734078); - -make_cons(c_734085,quote_j,nil); - -make_cons(c_734084,quote_zerop,&c_734085); - -make_cons(c_734091,obj_int2obj(1),nil); - -make_cons(c_734090,quote_j,&c_734091); - -make_cons(c_734089,quote_equal,&c_734090); - -make_cons(c_734088,&c_734089,nil); - -make_cons(c_734087,quote_not,&c_734088); - -make_cons(c_734086,&c_734087,nil); - -make_cons(c_734083,&c_734084,&c_734086); - -make_cons(c_734082,quote_or,&c_734083); - -make_cons(c_734081,&c_734082,nil); - -make_cons(c_734076,&c_734077,&c_734081); - -make_cons(c_734075,quote_and,&c_734076); - -make_cons(c_734074,&c_734075,nil); - -make_cons(c_734067,&c_734068,&c_734074); - -make_cons(c_734066,quote_equal,&c_734067); - -make_cons(c_734099,quote_y,nil); - -make_cons(c_734098,quote_x,&c_734099); - -make_cons(c_734097,quote_remainder,&c_734098); - -make_cons(c_734100,quote_x,nil); - -make_cons(c_734096,&c_734097,&c_734100); - -make_cons(c_734095,quote_lessp,&c_734096); - -make_cons(c_734107,quote_y,nil); - -make_cons(c_734106,quote_zerop,&c_734107); - -make_cons(c_734105,&c_734106,nil); - -make_cons(c_734104,quote_not,&c_734105); - -make_cons(c_734112,quote_x,nil); - -make_cons(c_734111,quote_zerop,&c_734112); - -make_cons(c_734110,&c_734111,nil); - -make_cons(c_734109,quote_not,&c_734110); - -make_cons(c_734118,quote_y,nil); - -make_cons(c_734117,quote_x,&c_734118); - -make_cons(c_734116,quote_lessp,&c_734117); - -make_cons(c_734115,&c_734116,nil); - -make_cons(c_734114,quote_not,&c_734115); - -make_cons(c_734113,&c_734114,nil); - -make_cons(c_734108,&c_734109,&c_734113); - -make_cons(c_734103,&c_734104,&c_734108); - -make_cons(c_734102,quote_and,&c_734103); - -make_cons(c_734101,&c_734102,nil); - -make_cons(c_734094,&c_734095,&c_734101); - -make_cons(c_734093,quote_equal,&c_734094); - -make_cons(c_734126,quote_base,nil); - -make_cons(c_734125,quote_i,&c_734126); - -make_cons(c_734124,quote_power_91rep,&c_734125); - -make_cons(c_734127,quote_base,nil); - -make_cons(c_734123,&c_734124,&c_734127); - -make_cons(c_734122,quote_power_91eval,&c_734123); - -make_cons(c_734130,quote_i,nil); - -make_cons(c_734129,quote_fix,&c_734130); - -make_cons(c_734128,&c_734129,nil); - -make_cons(c_734121,&c_734122,&c_734128); - -make_cons(c_734120,quote_equal,&c_734121); - -make_cons(c_734140,quote_base,nil); - -make_cons(c_734139,quote_i,&c_734140); - -make_cons(c_734138,quote_power_91rep,&c_734139); - -make_cons(c_734144,quote_base,nil); - -make_cons(c_734143,quote_j,&c_734144); - -make_cons(c_734142,quote_power_91rep,&c_734143); - -make_cons(c_734146,quote_zero,nil); - -make_cons(c_734147,quote_base,nil); - -make_cons(c_734145,&c_734146,&c_734147); - -make_cons(c_734141,&c_734142,&c_734145); - -make_cons(c_734137,&c_734138,&c_734141); - -make_cons(c_734136,quote_big_91plus,&c_734137); - -make_cons(c_734148,quote_base,nil); - -make_cons(c_734135,&c_734136,&c_734148); - -make_cons(c_734134,quote_power_91eval,&c_734135); - -make_cons(c_734152,quote_j,nil); - -make_cons(c_734151,quote_i,&c_734152); - -make_cons(c_734150,quote_plus,&c_734151); - -make_cons(c_734149,&c_734150,nil); - -make_cons(c_734133,&c_734134,&c_734149); - -make_cons(c_734132,quote_equal,&c_734133); - -make_cons(c_734158,quote_y,nil); - -make_cons(c_734157,quote_x,&c_734158); - -make_cons(c_734156,quote_gcd,&c_734157); - -make_cons(c_734162,quote_x,nil); - -make_cons(c_734161,quote_y,&c_734162); - -make_cons(c_734160,quote_gcd,&c_734161); - -make_cons(c_734159,&c_734160,nil); - -make_cons(c_734155,&c_734156,&c_734159); - -make_cons(c_734154,quote_equal,&c_734155); - -make_cons(c_734170,quote_b,nil); - -make_cons(c_734169,quote_a,&c_734170); - -make_cons(c_734168,quote_append,&c_734169); - -make_cons(c_734171,quote_i,nil); - -make_cons(c_734167,&c_734168,&c_734171); - -make_cons(c_734166,quote_nth,&c_734167); - -make_cons(c_734177,quote_i,nil); - -make_cons(c_734176,quote_a,&c_734177); - -make_cons(c_734175,quote_nth,&c_734176); - -make_cons(c_734186,quote_a,nil); - -make_cons(c_734185,quote_length,&c_734186); - -make_cons(c_734184,&c_734185,nil); - -make_cons(c_734183,quote_i,&c_734184); - -make_cons(c_734182,quote_difference,&c_734183); - -make_cons(c_734181,&c_734182,nil); - -make_cons(c_734180,quote_b,&c_734181); - -make_cons(c_734179,quote_nth,&c_734180); - -make_cons(c_734178,&c_734179,nil); - -make_cons(c_734174,&c_734175,&c_734178); - -make_cons(c_734173,quote_append,&c_734174); - -make_cons(c_734172,&c_734173,nil); - -make_cons(c_734165,&c_734166,&c_734172); - -make_cons(c_734164,quote_equal,&c_734165); - -make_cons(c_734194,quote_y,nil); - -make_cons(c_734193,quote_x,&c_734194); - -make_cons(c_734192,quote_plus,&c_734193); - -make_cons(c_734195,quote_x,nil); - -make_cons(c_734191,&c_734192,&c_734195); - -make_cons(c_734190,quote_difference,&c_734191); - -make_cons(c_734198,quote_y,nil); - -make_cons(c_734197,quote_fix,&c_734198); - -make_cons(c_734196,&c_734197,nil); - -make_cons(c_734189,&c_734190,&c_734196); - -make_cons(c_734188,quote_equal,&c_734189); - -make_cons(c_734206,quote_x,nil); - -make_cons(c_734205,quote_y,&c_734206); - -make_cons(c_734204,quote_plus,&c_734205); - -make_cons(c_734207,quote_x,nil); - -make_cons(c_734203,&c_734204,&c_734207); - -make_cons(c_734202,quote_difference,&c_734203); - -make_cons(c_734210,quote_y,nil); - -make_cons(c_734209,quote_fix,&c_734210); - -make_cons(c_734208,&c_734209,nil); - -make_cons(c_734201,&c_734202,&c_734208); - -make_cons(c_734200,quote_equal,&c_734201); - -make_cons(c_734218,quote_y,nil); - -make_cons(c_734217,quote_x,&c_734218); - -make_cons(c_734216,quote_plus,&c_734217); - -make_cons(c_734222,quote_z,nil); - -make_cons(c_734221,quote_x,&c_734222); - -make_cons(c_734220,quote_plus,&c_734221); - -make_cons(c_734219,&c_734220,nil); - -make_cons(c_734215,&c_734216,&c_734219); - -make_cons(c_734214,quote_difference,&c_734215); - -make_cons(c_734226,quote_z,nil); - -make_cons(c_734225,quote_y,&c_734226); - -make_cons(c_734224,quote_difference,&c_734225); - -make_cons(c_734223,&c_734224,nil); - -make_cons(c_734213,&c_734214,&c_734223); - -make_cons(c_734212,quote_equal,&c_734213); - -make_cons(c_734235,quote_w,nil); - -make_cons(c_734234,quote_c,&c_734235); - -make_cons(c_734233,quote_difference,&c_734234); - -make_cons(c_734232,&c_734233,nil); - -make_cons(c_734231,quote_x,&c_734232); - -make_cons(c_734230,quote_times,&c_734231); - -make_cons(c_734241,quote_x,nil); - -make_cons(c_734240,quote_c,&c_734241); - -make_cons(c_734239,quote_times,&c_734240); - -make_cons(c_734245,quote_x,nil); - -make_cons(c_734244,quote_w,&c_734245); - -make_cons(c_734243,quote_times,&c_734244); - -make_cons(c_734242,&c_734243,nil); - -make_cons(c_734238,&c_734239,&c_734242); - -make_cons(c_734237,quote_difference,&c_734238); - -make_cons(c_734236,&c_734237,nil); - -make_cons(c_734229,&c_734230,&c_734236); - -make_cons(c_734228,quote_equal,&c_734229); - -make_cons(c_734253,quote_z,nil); - -make_cons(c_734252,quote_x,&c_734253); - -make_cons(c_734251,quote_times,&c_734252); - -make_cons(c_734254,quote_z,nil); - -make_cons(c_734250,&c_734251,&c_734254); - -make_cons(c_734249,quote_remainder,&c_734250); - -make_cons(c_734256,quote_zero,nil); - -make_cons(c_734255,&c_734256,nil); - -make_cons(c_734248,&c_734249,&c_734255); - -make_cons(c_734247,quote_equal,&c_734248); - -make_cons(c_734267,quote_c,nil); - -make_cons(c_734266,quote_a,&c_734267); - -make_cons(c_734265,quote_plus,&c_734266); - -make_cons(c_734264,&c_734265,nil); - -make_cons(c_734263,quote_b,&c_734264); - -make_cons(c_734262,quote_plus,&c_734263); - -make_cons(c_734268,quote_a,nil); - -make_cons(c_734261,&c_734262,&c_734268); - -make_cons(c_734260,quote_difference,&c_734261); - -make_cons(c_734272,quote_c,nil); - -make_cons(c_734271,quote_b,&c_734272); - -make_cons(c_734270,quote_plus,&c_734271); - -make_cons(c_734269,&c_734270,nil); - -make_cons(c_734259,&c_734260,&c_734269); - -make_cons(c_734258,quote_equal,&c_734259); - -make_cons(c_734282,quote_z,nil); - -make_cons(c_734281,quote_y,&c_734282); - -make_cons(c_734280,quote_plus,&c_734281); - -make_cons(c_734279,&c_734280,nil); - -make_cons(c_734278,quote_add1,&c_734279); - -make_cons(c_734283,quote_z,nil); - -make_cons(c_734277,&c_734278,&c_734283); - -make_cons(c_734276,quote_difference,&c_734277); - -make_cons(c_734286,quote_y,nil); - -make_cons(c_734285,quote_add1,&c_734286); - -make_cons(c_734284,&c_734285,nil); - -make_cons(c_734275,&c_734276,&c_734284); - -make_cons(c_734274,quote_equal,&c_734275); - -make_cons(c_734294,quote_y,nil); - -make_cons(c_734293,quote_x,&c_734294); - -make_cons(c_734292,quote_plus,&c_734293); - -make_cons(c_734298,quote_z,nil); - -make_cons(c_734297,quote_x,&c_734298); - -make_cons(c_734296,quote_plus,&c_734297); - -make_cons(c_734295,&c_734296,nil); - -make_cons(c_734291,&c_734292,&c_734295); - -make_cons(c_734290,quote_lessp,&c_734291); - -make_cons(c_734302,quote_z,nil); - -make_cons(c_734301,quote_y,&c_734302); - -make_cons(c_734300,quote_lessp,&c_734301); - -make_cons(c_734299,&c_734300,nil); - -make_cons(c_734289,&c_734290,&c_734299); - -make_cons(c_734288,quote_equal,&c_734289); - -make_cons(c_734310,quote_z,nil); - -make_cons(c_734309,quote_x,&c_734310); - -make_cons(c_734308,quote_times,&c_734309); - -make_cons(c_734314,quote_z,nil); - -make_cons(c_734313,quote_y,&c_734314); - -make_cons(c_734312,quote_times,&c_734313); - -make_cons(c_734311,&c_734312,nil); - -make_cons(c_734307,&c_734308,&c_734311); - -make_cons(c_734306,quote_lessp,&c_734307); - -make_cons(c_734321,quote_z,nil); - -make_cons(c_734320,quote_zerop,&c_734321); - -make_cons(c_734319,&c_734320,nil); - -make_cons(c_734318,quote_not,&c_734319); - -make_cons(c_734325,quote_y,nil); - -make_cons(c_734324,quote_x,&c_734325); - -make_cons(c_734323,quote_lessp,&c_734324); - -make_cons(c_734322,&c_734323,nil); - -make_cons(c_734317,&c_734318,&c_734322); - -make_cons(c_734316,quote_and,&c_734317); - -make_cons(c_734315,&c_734316,nil); - -make_cons(c_734305,&c_734306,&c_734315); - -make_cons(c_734304,quote_equal,&c_734305); - -make_cons(c_734334,quote_y,nil); - -make_cons(c_734333,quote_x,&c_734334); - -make_cons(c_734332,quote_plus,&c_734333); - -make_cons(c_734331,&c_734332,nil); - -make_cons(c_734330,quote_y,&c_734331); - -make_cons(c_734329,quote_lessp,&c_734330); - -make_cons(c_734339,quote_x,nil); - -make_cons(c_734338,quote_zerop,&c_734339); - -make_cons(c_734337,&c_734338,nil); - -make_cons(c_734336,quote_not,&c_734337); - -make_cons(c_734335,&c_734336,nil); - -make_cons(c_734328,&c_734329,&c_734335); - -make_cons(c_734327,quote_equal,&c_734328); - -make_cons(c_734347,quote_z,nil); - -make_cons(c_734346,quote_x,&c_734347); - -make_cons(c_734345,quote_times,&c_734346); - -make_cons(c_734351,quote_z,nil); - -make_cons(c_734350,quote_y,&c_734351); - -make_cons(c_734349,quote_times,&c_734350); - -make_cons(c_734348,&c_734349,nil); - -make_cons(c_734344,&c_734345,&c_734348); - -make_cons(c_734343,quote_gcd,&c_734344); - -make_cons(c_734358,quote_y,nil); - -make_cons(c_734357,quote_x,&c_734358); - -make_cons(c_734356,quote_gcd,&c_734357); - -make_cons(c_734355,&c_734356,nil); - -make_cons(c_734354,quote_z,&c_734355); - -make_cons(c_734353,quote_times,&c_734354); - -make_cons(c_734352,&c_734353,nil); - -make_cons(c_734342,&c_734343,&c_734352); - -make_cons(c_734341,quote_equal,&c_734342); - -make_cons(c_734365,quote_x,nil); - -make_cons(c_734364,quote_normalize,&c_734365); - -make_cons(c_734366,quote_a,nil); - -make_cons(c_734363,&c_734364,&c_734366); - -make_cons(c_734362,quote_value,&c_734363); - -make_cons(c_734370,quote_a,nil); - -make_cons(c_734369,quote_x,&c_734370); - -make_cons(c_734368,quote_value,&c_734369); - -make_cons(c_734367,&c_734368,nil); - -make_cons(c_734361,&c_734362,&c_734367); - -make_cons(c_734360,quote_equal,&c_734361); - -make_cons(c_734377,quote_x,nil); - -make_cons(c_734376,quote_flatten,&c_734377); - -make_cons(c_734382,quote_nil,nil); - -make_cons(c_734381,&c_734382,nil); - -make_cons(c_734380,quote_y,&c_734381); - -make_cons(c_734379,quote_cons,&c_734380); - -make_cons(c_734378,&c_734379,nil); - -make_cons(c_734375,&c_734376,&c_734378); - -make_cons(c_734374,quote_equal,&c_734375); - -make_cons(c_734387,quote_x,nil); - -make_cons(c_734386,quote_nlistp,&c_734387); - -make_cons(c_734391,quote_y,nil); - -make_cons(c_734390,quote_x,&c_734391); - -make_cons(c_734389,quote_equal,&c_734390); - -make_cons(c_734388,&c_734389,nil); - -make_cons(c_734385,&c_734386,&c_734388); - -make_cons(c_734384,quote_and,&c_734385); - -make_cons(c_734383,&c_734384,nil); - -make_cons(c_734373,&c_734374,&c_734383); - -make_cons(c_734372,quote_equal,&c_734373); - -make_cons(c_734398,quote_x,nil); - -make_cons(c_734397,quote_gopher,&c_734398); - -make_cons(c_734396,&c_734397,nil); - -make_cons(c_734395,quote_listp,&c_734396); - -make_cons(c_734401,quote_x,nil); - -make_cons(c_734400,quote_listp,&c_734401); - -make_cons(c_734399,&c_734400,nil); - -make_cons(c_734394,&c_734395,&c_734399); - -make_cons(c_734393,quote_equal,&c_734394); - -make_cons(c_734407,quote_y,nil); - -make_cons(c_734406,quote_x,&c_734407); - -make_cons(c_734405,quote_samefringe,&c_734406); - -make_cons(c_734412,quote_x,nil); - -make_cons(c_734411,quote_flatten,&c_734412); - -make_cons(c_734415,quote_y,nil); - -make_cons(c_734414,quote_flatten,&c_734415); - -make_cons(c_734413,&c_734414,nil); - -make_cons(c_734410,&c_734411,&c_734413); - -make_cons(c_734409,quote_equal,&c_734410); - -make_cons(c_734408,&c_734409,nil); - -make_cons(c_734404,&c_734405,&c_734408); - -make_cons(c_734403,quote_equal,&c_734404); - -make_cons(c_734423,quote_y,nil); - -make_cons(c_734422,quote_x,&c_734423); - -make_cons(c_734421,quote_greatest_91factor,&c_734422); - -make_cons(c_734425,quote_zero,nil); - -make_cons(c_734424,&c_734425,nil); - -make_cons(c_734420,&c_734421,&c_734424); - -make_cons(c_734419,quote_equal,&c_734420); - -make_cons(c_734432,quote_y,nil); - -make_cons(c_734431,quote_zerop,&c_734432); - -make_cons(c_734436,obj_int2obj(1),nil); - -make_cons(c_734435,quote_y,&c_734436); - -make_cons(c_734434,quote_equal,&c_734435); - -make_cons(c_734433,&c_734434,nil); - -make_cons(c_734430,&c_734431,&c_734433); - -make_cons(c_734429,quote_or,&c_734430); - -make_cons(c_734441,quote_zero,nil); - -make_cons(c_734440,&c_734441,nil); - -make_cons(c_734439,quote_x,&c_734440); - -make_cons(c_734438,quote_equal,&c_734439); - -make_cons(c_734437,&c_734438,nil); - -make_cons(c_734428,&c_734429,&c_734437); - -make_cons(c_734427,quote_and,&c_734428); - -make_cons(c_734426,&c_734427,nil); - -make_cons(c_734418,&c_734419,&c_734426); - -make_cons(c_734417,quote_equal,&c_734418); - -make_cons(c_734449,quote_y,nil); - -make_cons(c_734448,quote_x,&c_734449); - -make_cons(c_734447,quote_greatest_91factor,&c_734448); - -make_cons(c_734450,obj_int2obj(1),nil); - -make_cons(c_734446,&c_734447,&c_734450); - -make_cons(c_734445,quote_equal,&c_734446); - -make_cons(c_734454,obj_int2obj(1),nil); - -make_cons(c_734453,quote_x,&c_734454); - -make_cons(c_734452,quote_equal,&c_734453); - -make_cons(c_734451,&c_734452,nil); - -make_cons(c_734444,&c_734445,&c_734451); - -make_cons(c_734443,quote_equal,&c_734444); - -make_cons(c_734462,quote_y,nil); - -make_cons(c_734461,quote_x,&c_734462); - -make_cons(c_734460,quote_greatest_91factor,&c_734461); - -make_cons(c_734459,&c_734460,nil); - -make_cons(c_734458,quote_numberp,&c_734459); - -make_cons(c_734471,quote_y,nil); - -make_cons(c_734470,quote_zerop,&c_734471); - -make_cons(c_734475,obj_int2obj(1),nil); - -make_cons(c_734474,quote_y,&c_734475); - -make_cons(c_734473,quote_equal,&c_734474); - -make_cons(c_734472,&c_734473,nil); - -make_cons(c_734469,&c_734470,&c_734472); - -make_cons(c_734468,quote_or,&c_734469); - -make_cons(c_734480,quote_x,nil); - -make_cons(c_734479,quote_numberp,&c_734480); - -make_cons(c_734478,&c_734479,nil); - -make_cons(c_734477,quote_not,&c_734478); - -make_cons(c_734476,&c_734477,nil); - -make_cons(c_734467,&c_734468,&c_734476); - -make_cons(c_734466,quote_and,&c_734467); - -make_cons(c_734465,&c_734466,nil); - -make_cons(c_734464,quote_not,&c_734465); - -make_cons(c_734463,&c_734464,nil); - -make_cons(c_734457,&c_734458,&c_734463); - -make_cons(c_734456,quote_equal,&c_734457); - -make_cons(c_734488,quote_y,nil); - -make_cons(c_734487,quote_x,&c_734488); - -make_cons(c_734486,quote_append,&c_734487); - -make_cons(c_734485,&c_734486,nil); - -make_cons(c_734484,quote_times_91list,&c_734485); - -make_cons(c_734493,quote_x,nil); - -make_cons(c_734492,quote_times_91list,&c_734493); - -make_cons(c_734496,quote_y,nil); - -make_cons(c_734495,quote_times_91list,&c_734496); - -make_cons(c_734494,&c_734495,nil); - -make_cons(c_734491,&c_734492,&c_734494); - -make_cons(c_734490,quote_times,&c_734491); - -make_cons(c_734489,&c_734490,nil); - -make_cons(c_734483,&c_734484,&c_734489); - -make_cons(c_734482,quote_equal,&c_734483); - -make_cons(c_734504,quote_y,nil); - -make_cons(c_734503,quote_x,&c_734504); - -make_cons(c_734502,quote_append,&c_734503); - -make_cons(c_734501,&c_734502,nil); - -make_cons(c_734500,quote_prime_91list,&c_734501); - -make_cons(c_734509,quote_x,nil); - -make_cons(c_734508,quote_prime_91list,&c_734509); - -make_cons(c_734512,quote_y,nil); - -make_cons(c_734511,quote_prime_91list,&c_734512); - -make_cons(c_734510,&c_734511,nil); - -make_cons(c_734507,&c_734508,&c_734510); - -make_cons(c_734506,quote_and,&c_734507); - -make_cons(c_734505,&c_734506,nil); - -make_cons(c_734499,&c_734500,&c_734505); - -make_cons(c_734498,quote_equal,&c_734499); - -make_cons(c_734521,quote_z,nil); - -make_cons(c_734520,quote_w,&c_734521); - -make_cons(c_734519,quote_times,&c_734520); - -make_cons(c_734518,&c_734519,nil); - -make_cons(c_734517,quote_z,&c_734518); - -make_cons(c_734516,quote_equal,&c_734517); - -make_cons(c_734526,quote_z,nil); - -make_cons(c_734525,quote_numberp,&c_734526); - -make_cons(c_734533,quote_zero,nil); - -make_cons(c_734532,&c_734533,nil); - -make_cons(c_734531,quote_z,&c_734532); - -make_cons(c_734530,quote_equal,&c_734531); - -make_cons(c_734537,obj_int2obj(1),nil); - -make_cons(c_734536,quote_w,&c_734537); - -make_cons(c_734535,quote_equal,&c_734536); - -make_cons(c_734534,&c_734535,nil); - -make_cons(c_734529,&c_734530,&c_734534); - -make_cons(c_734528,quote_or,&c_734529); - -make_cons(c_734527,&c_734528,nil); - -make_cons(c_734524,&c_734525,&c_734527); - -make_cons(c_734523,quote_and,&c_734524); - -make_cons(c_734522,&c_734523,nil); - -make_cons(c_734515,&c_734516,&c_734522); - -make_cons(c_734514,quote_equal,&c_734515); - -make_cons(c_734543,quote_y,nil); - -make_cons(c_734542,quote_x,&c_734543); - -make_cons(c_734541,quote_greatereqp,&c_734542); - -make_cons(c_734549,quote_y,nil); - -make_cons(c_734548,quote_x,&c_734549); - -make_cons(c_734547,quote_lessp,&c_734548); - -make_cons(c_734546,&c_734547,nil); - -make_cons(c_734545,quote_not,&c_734546); - -make_cons(c_734544,&c_734545,nil); - -make_cons(c_734540,&c_734541,&c_734544); - -make_cons(c_734539,quote_equal,&c_734540); - -make_cons(c_734558,quote_y,nil); - -make_cons(c_734557,quote_x,&c_734558); - -make_cons(c_734556,quote_times,&c_734557); - -make_cons(c_734555,&c_734556,nil); - -make_cons(c_734554,quote_x,&c_734555); - -make_cons(c_734553,quote_equal,&c_734554); - -make_cons(c_734565,quote_zero,nil); - -make_cons(c_734564,&c_734565,nil); - -make_cons(c_734563,quote_x,&c_734564); - -make_cons(c_734562,quote_equal,&c_734563); - -make_cons(c_734570,quote_x,nil); - -make_cons(c_734569,quote_numberp,&c_734570); - -make_cons(c_734574,obj_int2obj(1),nil); - -make_cons(c_734573,quote_y,&c_734574); - -make_cons(c_734572,quote_equal,&c_734573); - -make_cons(c_734571,&c_734572,nil); - -make_cons(c_734568,&c_734569,&c_734571); - -make_cons(c_734567,quote_and,&c_734568); - -make_cons(c_734566,&c_734567,nil); - -make_cons(c_734561,&c_734562,&c_734566); - -make_cons(c_734560,quote_or,&c_734561); - -make_cons(c_734559,&c_734560,nil); - -make_cons(c_734552,&c_734553,&c_734559); - -make_cons(c_734551,quote_equal,&c_734552); - -make_cons(c_734582,quote_x,nil); - -make_cons(c_734581,quote_y,&c_734582); - -make_cons(c_734580,quote_times,&c_734581); - -make_cons(c_734583,quote_y,nil); - -make_cons(c_734579,&c_734580,&c_734583); - -make_cons(c_734578,quote_remainder,&c_734579); - -make_cons(c_734585,quote_zero,nil); - -make_cons(c_734584,&c_734585,nil); - -make_cons(c_734577,&c_734578,&c_734584); - -make_cons(c_734576,quote_equal,&c_734577); - -make_cons(c_734593,quote_b,nil); - -make_cons(c_734592,quote_a,&c_734593); - -make_cons(c_734591,quote_times,&c_734592); - -make_cons(c_734594,obj_int2obj(1),nil); - -make_cons(c_734590,&c_734591,&c_734594); - -make_cons(c_734589,quote_equal,&c_734590); - -make_cons(c_734603,quote_zero,nil); - -make_cons(c_734602,&c_734603,nil); - -make_cons(c_734601,quote_a,&c_734602); - -make_cons(c_734600,quote_equal,&c_734601); - -make_cons(c_734599,&c_734600,nil); - -make_cons(c_734598,quote_not,&c_734599); - -make_cons(c_734610,quote_zero,nil); - -make_cons(c_734609,&c_734610,nil); - -make_cons(c_734608,quote_b,&c_734609); - -make_cons(c_734607,quote_equal,&c_734608); - -make_cons(c_734606,&c_734607,nil); - -make_cons(c_734605,quote_not,&c_734606); - -make_cons(c_734613,quote_a,nil); - -make_cons(c_734612,quote_numberp,&c_734613); - -make_cons(c_734616,quote_b,nil); - -make_cons(c_734615,quote_numberp,&c_734616); - -make_cons(c_734621,quote_a,nil); - -make_cons(c_734620,quote__1911_91,&c_734621); - -make_cons(c_734623,quote_zero,nil); - -make_cons(c_734622,&c_734623,nil); - -make_cons(c_734619,&c_734620,&c_734622); - -make_cons(c_734618,quote_equal,&c_734619); - -make_cons(c_734628,quote_b,nil); - -make_cons(c_734627,quote__1911_91,&c_734628); - -make_cons(c_734630,quote_zero,nil); - -make_cons(c_734629,&c_734630,nil); - -make_cons(c_734626,&c_734627,&c_734629); - -make_cons(c_734625,quote_equal,&c_734626); - -make_cons(c_734624,&c_734625,nil); - -make_cons(c_734617,&c_734618,&c_734624); - -make_cons(c_734614,&c_734615,&c_734617); - -make_cons(c_734611,&c_734612,&c_734614); - -make_cons(c_734604,&c_734605,&c_734611); - -make_cons(c_734597,&c_734598,&c_734604); - -make_cons(c_734596,quote_and,&c_734597); - -make_cons(c_734595,&c_734596,nil); - -make_cons(c_734588,&c_734589,&c_734595); - -make_cons(c_734587,quote_equal,&c_734588); - -make_cons(c_734640,quote_l,nil); - -make_cons(c_734639,quote_x,&c_734640); - -make_cons(c_734638,quote_delete,&c_734639); - -make_cons(c_734637,&c_734638,nil); - -make_cons(c_734636,quote_length,&c_734637); - -make_cons(c_734643,quote_l,nil); - -make_cons(c_734642,quote_length,&c_734643); - -make_cons(c_734641,&c_734642,nil); - -make_cons(c_734635,&c_734636,&c_734641); - -make_cons(c_734634,quote_lessp,&c_734635); - -make_cons(c_734647,quote_l,nil); - -make_cons(c_734646,quote_x,&c_734647); - -make_cons(c_734645,quote_member,&c_734646); - -make_cons(c_734644,&c_734645,nil); - -make_cons(c_734633,&c_734634,&c_734644); - -make_cons(c_734632,quote_equal,&c_734633); - -make_cons(c_734655,quote_l,nil); - -make_cons(c_734654,quote_x,&c_734655); - -make_cons(c_734653,quote_delete,&c_734654); - -make_cons(c_734652,&c_734653,nil); - -make_cons(c_734651,quote_sort2,&c_734652); - -make_cons(c_734661,quote_l,nil); - -make_cons(c_734660,quote_sort2,&c_734661); - -make_cons(c_734659,&c_734660,nil); - -make_cons(c_734658,quote_x,&c_734659); - -make_cons(c_734657,quote_delete,&c_734658); - -make_cons(c_734656,&c_734657,nil); - -make_cons(c_734650,&c_734651,&c_734656); - -make_cons(c_734649,quote_equal,&c_734650); - -make_cons(c_734666,quote_x,nil); - -make_cons(c_734665,quote_dsort,&c_734666); - -make_cons(c_734669,quote_x,nil); - -make_cons(c_734668,quote_sort2,&c_734669); - -make_cons(c_734667,&c_734668,nil); - -make_cons(c_734664,&c_734665,&c_734667); - -make_cons(c_734663,quote_equal,&c_734664); - -make_cons(c_734692,quote_x7,nil); - -make_cons(c_734691,quote_x6,&c_734692); - -make_cons(c_734690,quote_cons,&c_734691); - -make_cons(c_734689,&c_734690,nil); - -make_cons(c_734688,quote_x5,&c_734689); - -make_cons(c_734687,quote_cons,&c_734688); - -make_cons(c_734686,&c_734687,nil); - -make_cons(c_734685,quote_x4,&c_734686); - -make_cons(c_734684,quote_cons,&c_734685); - -make_cons(c_734683,&c_734684,nil); - -make_cons(c_734682,quote_x3,&c_734683); - -make_cons(c_734681,quote_cons,&c_734682); - -make_cons(c_734680,&c_734681,nil); - -make_cons(c_734679,quote_x2,&c_734680); - -make_cons(c_734678,quote_cons,&c_734679); - -make_cons(c_734677,&c_734678,nil); - -make_cons(c_734676,quote_x1,&c_734677); - -make_cons(c_734675,quote_cons,&c_734676); - -make_cons(c_734674,&c_734675,nil); - -make_cons(c_734673,quote_length,&c_734674); - -make_cons(c_734698,quote_x7,nil); - -make_cons(c_734697,quote_length,&c_734698); - -make_cons(c_734696,&c_734697,nil); - -make_cons(c_734695,obj_int2obj(6),&c_734696); - -make_cons(c_734694,quote_plus,&c_734695); - -make_cons(c_734693,&c_734694,nil); - -make_cons(c_734672,&c_734673,&c_734693); - -make_cons(c_734671,quote_equal,&c_734672); - -make_cons(c_734707,quote_x,nil); - -make_cons(c_734706,quote_add1,&c_734707); - -make_cons(c_734705,&c_734706,nil); - -make_cons(c_734704,quote_add1,&c_734705); - -make_cons(c_734708,obj_int2obj(2),nil); - -make_cons(c_734703,&c_734704,&c_734708); - -make_cons(c_734702,quote_difference,&c_734703); - -make_cons(c_734711,quote_x,nil); - -make_cons(c_734710,quote_fix,&c_734711); - -make_cons(c_734709,&c_734710,nil); - -make_cons(c_734701,&c_734702,&c_734709); - -make_cons(c_734700,quote_equal,&c_734701); - -make_cons(c_734722,quote_y,nil); - -make_cons(c_734721,quote_x,&c_734722); - -make_cons(c_734720,quote_plus,&c_734721); - -make_cons(c_734719,&c_734720,nil); - -make_cons(c_734718,quote_x,&c_734719); - -make_cons(c_734717,quote_plus,&c_734718); - -make_cons(c_734723,obj_int2obj(2),nil); - -make_cons(c_734716,&c_734717,&c_734723); - -make_cons(c_734715,quote_quotient,&c_734716); - -make_cons(c_734730,obj_int2obj(2),nil); - -make_cons(c_734729,quote_y,&c_734730); - -make_cons(c_734728,quote_quotient,&c_734729); - -make_cons(c_734727,&c_734728,nil); - -make_cons(c_734726,quote_x,&c_734727); - -make_cons(c_734725,quote_plus,&c_734726); - -make_cons(c_734724,&c_734725,nil); - -make_cons(c_734714,&c_734715,&c_734724); - -make_cons(c_734713,quote_equal,&c_734714); - -make_cons(c_734736,quote_zero,nil); - -make_cons(c_734737,quote_i,nil); - -make_cons(c_734735,&c_734736,&c_734737); - -make_cons(c_734734,quote_sigma,&c_734735); - -make_cons(c_734745,quote_i,nil); - -make_cons(c_734744,quote_add1,&c_734745); - -make_cons(c_734743,&c_734744,nil); - -make_cons(c_734742,quote_i,&c_734743); - -make_cons(c_734741,quote_times,&c_734742); - -make_cons(c_734746,obj_int2obj(2),nil); - -make_cons(c_734740,&c_734741,&c_734746); - -make_cons(c_734739,quote_quotient,&c_734740); - -make_cons(c_734738,&c_734739,nil); - -make_cons(c_734733,&c_734734,&c_734738); - -make_cons(c_734732,quote_equal,&c_734733); - -make_cons(c_734754,quote_y,nil); - -make_cons(c_734753,quote_add1,&c_734754); - -make_cons(c_734752,&c_734753,nil); - -make_cons(c_734751,quote_x,&c_734752); - -make_cons(c_734750,quote_plus,&c_734751); - -make_cons(c_734759,quote_y,nil); - -make_cons(c_734758,quote_numberp,&c_734759); - -make_cons(c_734765,quote_y,nil); - -make_cons(c_734764,quote_x,&c_734765); - -make_cons(c_734763,quote_plus,&c_734764); - -make_cons(c_734762,&c_734763,nil); - -make_cons(c_734761,quote_add1,&c_734762); - -make_cons(c_734768,quote_x,nil); - -make_cons(c_734767,quote_add1,&c_734768); - -make_cons(c_734766,&c_734767,nil); - -make_cons(c_734760,&c_734761,&c_734766); - -make_cons(c_734757,&c_734758,&c_734760); - -make_cons(c_734756,quote__if,&c_734757); - -make_cons(c_734755,&c_734756,nil); - -make_cons(c_734749,&c_734750,&c_734755); - -make_cons(c_734748,quote_equal,&c_734749); - -make_cons(c_734776,quote_y,nil); - -make_cons(c_734775,quote_x,&c_734776); - -make_cons(c_734774,quote_difference,&c_734775); - -make_cons(c_734780,quote_y,nil); - -make_cons(c_734779,quote_z,&c_734780); - -make_cons(c_734778,quote_difference,&c_734779); - -make_cons(c_734777,&c_734778,nil); - -make_cons(c_734773,&c_734774,&c_734777); - -make_cons(c_734772,quote_equal,&c_734773); - -make_cons(c_734786,quote_y,nil); - -make_cons(c_734785,quote_x,&c_734786); - -make_cons(c_734784,quote_lessp,&c_734785); - -make_cons(c_734792,quote_z,nil); - -make_cons(c_734791,quote_y,&c_734792); - -make_cons(c_734790,quote_lessp,&c_734791); - -make_cons(c_734789,&c_734790,nil); - -make_cons(c_734788,quote_not,&c_734789); - -make_cons(c_734798,quote_y,nil); - -make_cons(c_734797,quote_z,&c_734798); - -make_cons(c_734796,quote_lessp,&c_734797); - -make_cons(c_734804,quote_x,nil); - -make_cons(c_734803,quote_y,&c_734804); - -make_cons(c_734802,quote_lessp,&c_734803); - -make_cons(c_734801,&c_734802,nil); - -make_cons(c_734800,quote_not,&c_734801); - -make_cons(c_734809,quote_x,nil); - -make_cons(c_734808,quote_fix,&c_734809); - -make_cons(c_734812,quote_z,nil); - -make_cons(c_734811,quote_fix,&c_734812); - -make_cons(c_734810,&c_734811,nil); - -make_cons(c_734807,&c_734808,&c_734810); - -make_cons(c_734806,quote_equal,&c_734807); - -make_cons(c_734805,&c_734806,nil); - -make_cons(c_734799,&c_734800,&c_734805); - -make_cons(c_734795,&c_734796,&c_734799); - -make_cons(c_734794,quote__if,&c_734795); - -make_cons(c_734793,&c_734794,nil); - -make_cons(c_734787,&c_734788,&c_734793); - -make_cons(c_734783,&c_734784,&c_734787); - -make_cons(c_734782,quote__if,&c_734783); - -make_cons(c_734781,&c_734782,nil); - -make_cons(c_734771,&c_734772,&c_734781); - -make_cons(c_734770,quote_equal,&c_734771); - -make_cons(c_734822,quote_y,nil); - -make_cons(c_734821,quote_x,&c_734822); - -make_cons(c_734820,quote_delete,&c_734821); - -make_cons(c_734819,&c_734820,nil); - -make_cons(c_734818,quote_plus_91tree,&c_734819); - -make_cons(c_734823,quote_a,nil); - -make_cons(c_734817,&c_734818,&c_734823); - -make_cons(c_734816,quote_meaning,&c_734817); - -make_cons(c_734829,quote_y,nil); - -make_cons(c_734828,quote_x,&c_734829); - -make_cons(c_734827,quote_member,&c_734828); - -make_cons(c_734836,quote_y,nil); - -make_cons(c_734835,quote_plus_91tree,&c_734836); - -make_cons(c_734837,quote_a,nil); - -make_cons(c_734834,&c_734835,&c_734837); - -make_cons(c_734833,quote_meaning,&c_734834); - -make_cons(c_734841,quote_a,nil); - -make_cons(c_734840,quote_x,&c_734841); - -make_cons(c_734839,quote_meaning,&c_734840); - -make_cons(c_734838,&c_734839,nil); - -make_cons(c_734832,&c_734833,&c_734838); - -make_cons(c_734831,quote_difference,&c_734832); - -make_cons(c_734846,quote_y,nil); - -make_cons(c_734845,quote_plus_91tree,&c_734846); - -make_cons(c_734847,quote_a,nil); - -make_cons(c_734844,&c_734845,&c_734847); - -make_cons(c_734843,quote_meaning,&c_734844); - -make_cons(c_734842,&c_734843,nil); - -make_cons(c_734830,&c_734831,&c_734842); - -make_cons(c_734826,&c_734827,&c_734830); - -make_cons(c_734825,quote__if,&c_734826); - -make_cons(c_734824,&c_734825,nil); - -make_cons(c_734815,&c_734816,&c_734824); - -make_cons(c_734814,quote_equal,&c_734815); - -make_cons(c_734855,quote_y,nil); - -make_cons(c_734854,quote_add1,&c_734855); - -make_cons(c_734853,&c_734854,nil); - -make_cons(c_734852,quote_x,&c_734853); - -make_cons(c_734851,quote_times,&c_734852); - -make_cons(c_734860,quote_y,nil); - -make_cons(c_734859,quote_numberp,&c_734860); - -make_cons(c_734867,quote_y,nil); - -make_cons(c_734866,quote_x,&c_734867); - -make_cons(c_734865,quote_times,&c_734866); - -make_cons(c_734864,&c_734865,nil); - -make_cons(c_734863,quote_x,&c_734864); - -make_cons(c_734862,quote_plus,&c_734863); - -make_cons(c_734870,quote_x,nil); - -make_cons(c_734869,quote_fix,&c_734870); - -make_cons(c_734868,&c_734869,nil); - -make_cons(c_734861,&c_734862,&c_734868); - -make_cons(c_734858,&c_734859,&c_734861); - -make_cons(c_734857,quote__if,&c_734858); - -make_cons(c_734856,&c_734857,nil); - -make_cons(c_734850,&c_734851,&c_734856); - -make_cons(c_734849,quote_equal,&c_734850); - -make_cons(c_734876,quote_nil,nil); - -make_cons(c_734877,quote_i,nil); - -make_cons(c_734875,&c_734876,&c_734877); - -make_cons(c_734874,quote_nth,&c_734875); - -make_cons(c_734882,quote_i,nil); - -make_cons(c_734881,quote_zerop,&c_734882); - -make_cons(c_734884,quote_nil,nil); - -make_cons(c_734886,quote_zero,nil); - -make_cons(c_734885,&c_734886,nil); - -make_cons(c_734883,&c_734884,&c_734885); - -make_cons(c_734880,&c_734881,&c_734883); - -make_cons(c_734879,quote__if,&c_734880); - -make_cons(c_734878,&c_734879,nil); - -make_cons(c_734873,&c_734874,&c_734878); - -make_cons(c_734872,quote_equal,&c_734873); - -make_cons(c_734894,quote_b,nil); - -make_cons(c_734893,quote_a,&c_734894); - -make_cons(c_734892,quote_append,&c_734893); - -make_cons(c_734891,&c_734892,nil); - -make_cons(c_734890,quote_last,&c_734891); - -make_cons(c_734899,quote_b,nil); - -make_cons(c_734898,quote_listp,&c_734899); - -make_cons(c_734902,quote_b,nil); - -make_cons(c_734901,quote_last,&c_734902); - -make_cons(c_734907,quote_a,nil); - -make_cons(c_734906,quote_listp,&c_734907); - -make_cons(c_734914,quote_a,nil); - -make_cons(c_734913,quote_last,&c_734914); - -make_cons(c_734912,&c_734913,nil); - -make_cons(c_734911,quote_car,&c_734912); - -make_cons(c_734915,quote_b,nil); - -make_cons(c_734910,&c_734911,&c_734915); - -make_cons(c_734909,quote_cons,&c_734910); - -make_cons(c_734916,quote_b,nil); - -make_cons(c_734908,&c_734909,&c_734916); - -make_cons(c_734905,&c_734906,&c_734908); - -make_cons(c_734904,quote__if,&c_734905); - -make_cons(c_734903,&c_734904,nil); - -make_cons(c_734900,&c_734901,&c_734903); - -make_cons(c_734897,&c_734898,&c_734900); - -make_cons(c_734896,quote__if,&c_734897); - -make_cons(c_734895,&c_734896,nil); - -make_cons(c_734889,&c_734890,&c_734895); - -make_cons(c_734888,quote_equal,&c_734889); - -make_cons(c_734924,quote_y,nil); - -make_cons(c_734923,quote_x,&c_734924); - -make_cons(c_734922,quote_lessp,&c_734923); - -make_cons(c_734925,quote_z,nil); - -make_cons(c_734921,&c_734922,&c_734925); - -make_cons(c_734920,quote_equal,&c_734921); - -make_cons(c_734931,quote_y,nil); - -make_cons(c_734930,quote_x,&c_734931); - -make_cons(c_734929,quote_lessp,&c_734930); - -make_cons(c_734935,quote_t,nil); - -make_cons(c_734936,quote_z,nil); - -make_cons(c_734934,&c_734935,&c_734936); - -make_cons(c_734933,quote_equal,&c_734934); - -make_cons(c_734940,quote_f,nil); - -make_cons(c_734941,quote_z,nil); - -make_cons(c_734939,&c_734940,&c_734941); - -make_cons(c_734938,quote_equal,&c_734939); - -make_cons(c_734937,&c_734938,nil); - -make_cons(c_734932,&c_734933,&c_734937); - -make_cons(c_734928,&c_734929,&c_734932); - -make_cons(c_734927,quote__if,&c_734928); - -make_cons(c_734926,&c_734927,nil); - -make_cons(c_734919,&c_734920,&c_734926); - -make_cons(c_734918,quote_equal,&c_734919); - -make_cons(c_734950,quote_b,nil); - -make_cons(c_734949,quote_a,&c_734950); - -make_cons(c_734948,quote_append,&c_734949); - -make_cons(c_734947,&c_734948,nil); - -make_cons(c_734946,quote_x,&c_734947); - -make_cons(c_734945,quote_assignment,&c_734946); - -make_cons(c_734956,quote_a,nil); - -make_cons(c_734955,quote_x,&c_734956); - -make_cons(c_734954,quote_assignedp,&c_734955); - -make_cons(c_734960,quote_a,nil); - -make_cons(c_734959,quote_x,&c_734960); - -make_cons(c_734958,quote_assignment,&c_734959); - -make_cons(c_734964,quote_b,nil); - -make_cons(c_734963,quote_x,&c_734964); - -make_cons(c_734962,quote_assignment,&c_734963); - -make_cons(c_734961,&c_734962,nil); - -make_cons(c_734957,&c_734958,&c_734961); - -make_cons(c_734953,&c_734954,&c_734957); - -make_cons(c_734952,quote__if,&c_734953); - -make_cons(c_734951,&c_734952,nil); - -make_cons(c_734944,&c_734945,&c_734951); - -make_cons(c_734943,quote_equal,&c_734944); - -make_cons(c_734971,quote_x,nil); - -make_cons(c_734970,quote_gopher,&c_734971); - -make_cons(c_734969,&c_734970,nil); - -make_cons(c_734968,quote_car,&c_734969); - -make_cons(c_734976,quote_x,nil); - -make_cons(c_734975,quote_listp,&c_734976); - -make_cons(c_734981,quote_x,nil); - -make_cons(c_734980,quote_flatten,&c_734981); - -make_cons(c_734979,&c_734980,nil); - -make_cons(c_734978,quote_car,&c_734979); - -make_cons(c_734983,quote_zero,nil); - -make_cons(c_734982,&c_734983,nil); - -make_cons(c_734977,&c_734978,&c_734982); - -make_cons(c_734974,&c_734975,&c_734977); - -make_cons(c_734973,quote__if,&c_734974); - -make_cons(c_734972,&c_734973,nil); - -make_cons(c_734967,&c_734968,&c_734972); - -make_cons(c_734966,quote_equal,&c_734967); - -make_cons(c_734992,quote_x,nil); - -make_cons(c_734991,quote_gopher,&c_734992); - -make_cons(c_734990,&c_734991,nil); - -make_cons(c_734989,quote_cdr,&c_734990); - -make_cons(c_734988,&c_734989,nil); - -make_cons(c_734987,quote_flatten,&c_734988); - -make_cons(c_734997,quote_x,nil); - -make_cons(c_734996,quote_listp,&c_734997); - -make_cons(c_735002,quote_x,nil); - -make_cons(c_735001,quote_flatten,&c_735002); - -make_cons(c_735000,&c_735001,nil); - -make_cons(c_734999,quote_cdr,&c_735000); - -make_cons(c_735006,quote_zero,nil); - -make_cons(c_735008,quote_nil,nil); - -make_cons(c_735007,&c_735008,nil); - -make_cons(c_735005,&c_735006,&c_735007); - -make_cons(c_735004,quote_cons,&c_735005); - -make_cons(c_735003,&c_735004,nil); - -make_cons(c_734998,&c_734999,&c_735003); - -make_cons(c_734995,&c_734996,&c_734998); - -make_cons(c_734994,quote__if,&c_734995); - -make_cons(c_734993,&c_734994,nil); - -make_cons(c_734986,&c_734987,&c_734993); - -make_cons(c_734985,quote_equal,&c_734986); - -make_cons(c_735016,quote_x,nil); - -make_cons(c_735015,quote_y,&c_735016); - -make_cons(c_735014,quote_times,&c_735015); - -make_cons(c_735017,quote_y,nil); - -make_cons(c_735013,&c_735014,&c_735017); - -make_cons(c_735012,quote_quotient,&c_735013); - -make_cons(c_735022,quote_y,nil); - -make_cons(c_735021,quote_zerop,&c_735022); - -make_cons(c_735024,quote_zero,nil); - -make_cons(c_735027,quote_x,nil); - -make_cons(c_735026,quote_fix,&c_735027); - -make_cons(c_735025,&c_735026,nil); - -make_cons(c_735023,&c_735024,&c_735025); - -make_cons(c_735020,&c_735021,&c_735023); - -make_cons(c_735019,quote__if,&c_735020); - -make_cons(c_735018,&c_735019,nil); - -make_cons(c_735011,&c_735012,&c_735018); - -make_cons(c_735010,quote_equal,&c_735011); - -make_cons(c_735037,quote_mem,nil); - -make_cons(c_735036,quote_val,&c_735037); - -make_cons(c_735035,quote_i,&c_735036); - -make_cons(c_735034,quote_set,&c_735035); - -make_cons(c_735033,&c_735034,nil); - -make_cons(c_735032,quote_j,&c_735033); - -make_cons(c_735031,quote_get,&c_735032); - -make_cons(c_735043,quote_i,nil); - -make_cons(c_735042,quote_j,&c_735043); - -make_cons(c_735041,quote_eqp,&c_735042); - -make_cons(c_735048,quote_mem,nil); - -make_cons(c_735047,quote_j,&c_735048); - -make_cons(c_735046,quote_get,&c_735047); - -make_cons(c_735045,&c_735046,nil); - -make_cons(c_735044,quote_val,&c_735045); - -make_cons(c_735040,&c_735041,&c_735044); - -make_cons(c_735039,quote__if,&c_735040); - -make_cons(c_735038,&c_735039,nil); - -make_cons(c_735030,&c_735031,&c_735038); - -make_cons(c_735029,quote_equal,&c_735030); - -make_cons(c_735028,&c_735029,nil); - -make_cons(c_735009,&c_735010,&c_735028); - -make_cons(c_734984,&c_734985,&c_735009); - -make_cons(c_734965,&c_734966,&c_734984); - -make_cons(c_734942,&c_734943,&c_734965); - -make_cons(c_734917,&c_734918,&c_734942); - -make_cons(c_734887,&c_734888,&c_734917); - -make_cons(c_734871,&c_734872,&c_734887); - -make_cons(c_734848,&c_734849,&c_734871); - -make_cons(c_734813,&c_734814,&c_734848); - -make_cons(c_734769,&c_734770,&c_734813); - -make_cons(c_734747,&c_734748,&c_734769); - -make_cons(c_734731,&c_734732,&c_734747); - -make_cons(c_734712,&c_734713,&c_734731); - -make_cons(c_734699,&c_734700,&c_734712); - -make_cons(c_734670,&c_734671,&c_734699); - -make_cons(c_734662,&c_734663,&c_734670); - -make_cons(c_734648,&c_734649,&c_734662); - -make_cons(c_734631,&c_734632,&c_734648); - -make_cons(c_734586,&c_734587,&c_734631); - -make_cons(c_734575,&c_734576,&c_734586); - -make_cons(c_734550,&c_734551,&c_734575); - -make_cons(c_734538,&c_734539,&c_734550); - -make_cons(c_734513,&c_734514,&c_734538); - -make_cons(c_734497,&c_734498,&c_734513); - -make_cons(c_734481,&c_734482,&c_734497); - -make_cons(c_734455,&c_734456,&c_734481); - -make_cons(c_734442,&c_734443,&c_734455); - -make_cons(c_734416,&c_734417,&c_734442); - -make_cons(c_734402,&c_734403,&c_734416); - -make_cons(c_734392,&c_734393,&c_734402); - -make_cons(c_734371,&c_734372,&c_734392); - -make_cons(c_734359,&c_734360,&c_734371); - -make_cons(c_734340,&c_734341,&c_734359); - -make_cons(c_734326,&c_734327,&c_734340); - -make_cons(c_734303,&c_734304,&c_734326); - -make_cons(c_734287,&c_734288,&c_734303); - -make_cons(c_734273,&c_734274,&c_734287); - -make_cons(c_734257,&c_734258,&c_734273); - -make_cons(c_734246,&c_734247,&c_734257); - -make_cons(c_734227,&c_734228,&c_734246); - -make_cons(c_734211,&c_734212,&c_734227); - -make_cons(c_734199,&c_734200,&c_734211); - -make_cons(c_734187,&c_734188,&c_734199); - -make_cons(c_734163,&c_734164,&c_734187); - -make_cons(c_734153,&c_734154,&c_734163); - -make_cons(c_734131,&c_734132,&c_734153); - -make_cons(c_734119,&c_734120,&c_734131); - -make_cons(c_734092,&c_734093,&c_734119); - -make_cons(c_734065,&c_734066,&c_734092); - -make_cons(c_734057,&c_734058,&c_734065); - -make_cons(c_734043,&c_734044,&c_734057); - -make_cons(c_734035,&c_734036,&c_734043); - -make_cons(c_734011,&c_734012,&c_734035); - -make_cons(c_733994,&c_733995,&c_734011); - -make_cons(c_733976,&c_733977,&c_733994); - -make_cons(c_733960,&c_733961,&c_733976); - -make_cons(c_733941,&c_733942,&c_733960); - -make_cons(c_733931,&c_733932,&c_733941); - -make_cons(c_733919,&c_733920,&c_733931); - -make_cons(c_733903,&c_733904,&c_733919); - -make_cons(c_733884,&c_733885,&c_733903); - -make_cons(c_733875,&c_733876,&c_733884); - -make_cons(c_733856,&c_733857,&c_733875); - -make_cons(c_733846,&c_733847,&c_733856); - -make_cons(c_733834,&c_733835,&c_733846); - -make_cons(c_733815,&c_733816,&c_733834); - -make_cons(c_733803,&c_733804,&c_733815); - -make_cons(c_733784,&c_733785,&c_733803); - -make_cons(c_733766,&c_733767,&c_733784); - -make_cons(c_733750,&c_733751,&c_733766); - -make_cons(c_733731,&c_733732,&c_733750); - -make_cons(c_733715,&c_733716,&c_733731); - -make_cons(c_733699,&c_733700,&c_733715); - -make_cons(c_733683,&c_733684,&c_733699); - -make_cons(c_733658,&c_733659,&c_733683); - -make_cons(c_733634,&c_733635,&c_733658); - -make_cons(c_733618,&c_733619,&c_733634); - -make_cons(c_733598,&c_733599,&c_733618); - -make_cons(c_733590,&c_733591,&c_733598); - -make_cons(c_733572,&c_733573,&c_733590); - -make_cons(c_733556,&c_733557,&c_733572); - -make_cons(c_733539,&c_733540,&c_733556); - -make_cons(c_733515,&c_733516,&c_733539); - -make_cons(c_733502,&c_733503,&c_733515); - -make_cons(c_733484,&c_733485,&c_733502); - -make_cons(c_733472,&c_733473,&c_733484); - -make_cons(c_733454,&c_733455,&c_733472); - -make_cons(c_733436,&c_733437,&c_733454); - -make_cons(c_733409,&c_733410,&c_733436); - -make_cons(c_733397,&c_733398,&c_733409); - -make_cons(c_733385,&c_733386,&c_733397); - -make_cons(c_733371,&c_733372,&c_733385); - -make_cons(c_733357,&c_733358,&c_733371); - -make_cons(c_733345,&c_733346,&c_733357); - -make_cons(c_733335,&c_733336,&c_733345); - -make_cons(c_733326,&c_733327,&c_733335); - -make_cons(c_733314,&c_733315,&c_733326); - -make_cons(c_733297,&c_733298,&c_733314); - -make_cons(c_733281,&c_733282,&c_733297); - -make_cons(c_733264,&c_733265,&c_733281); - -make_cons(c_733252,&c_733253,&c_733264); - -make_cons(c_733240,&c_733241,&c_733252); - -make_cons(c_733230,&c_733231,&c_733240); - -make_cons(c_733216,&c_733217,&c_733230); - -make_cons(c_733202,&c_733203,&c_733216); -return_closcall1(data,(closure)&c_733196, &c_733202);; -} - -static void __lambda_442(void *data, int argc, object self_73700, object r_73575) { - return_closcall2(data, cell_get(((closureN)self_73700)->elts[0]), ((closureN)self_73700)->elts[1], r_73575);; -} - -static void __lambda_441(void *data, int argc, object self_73701, object r_73573) { - -closureN_type c_731510; -c_731510.hdr.mark = gc_color_red; - c_731510.hdr.grayed = 0; -c_731510.tag = closureN_tag; - c_731510.fn = (function_type)__lambda_440; -c_731510.num_args = 1; -c_731510.num_elt = 40; -c_731510.elts = (object *)alloca(sizeof(object) * 40); -c_731510.elts[0] = ((closureN)self_73701)->elts[0]; -c_731510.elts[1] = ((closureN)self_73701)->elts[1]; -c_731510.elts[2] = ((closureN)self_73701)->elts[2]; -c_731510.elts[3] = ((closureN)self_73701)->elts[3]; -c_731510.elts[4] = ((closureN)self_73701)->elts[4]; -c_731510.elts[5] = ((closureN)self_73701)->elts[5]; -c_731510.elts[6] = ((closureN)self_73701)->elts[6]; -c_731510.elts[7] = ((closureN)self_73701)->elts[7]; -c_731510.elts[8] = ((closureN)self_73701)->elts[8]; -c_731510.elts[9] = ((closureN)self_73701)->elts[9]; -c_731510.elts[10] = ((closureN)self_73701)->elts[10]; -c_731510.elts[11] = ((closureN)self_73701)->elts[11]; -c_731510.elts[12] = ((closureN)self_73701)->elts[12]; -c_731510.elts[13] = ((closureN)self_73701)->elts[13]; -c_731510.elts[14] = ((closureN)self_73701)->elts[14]; -c_731510.elts[15] = ((closureN)self_73701)->elts[15]; -c_731510.elts[16] = ((closureN)self_73701)->elts[16]; -c_731510.elts[17] = ((closureN)self_73701)->elts[17]; -c_731510.elts[18] = ((closureN)self_73701)->elts[18]; -c_731510.elts[19] = ((closureN)self_73701)->elts[19]; -c_731510.elts[20] = ((closureN)self_73701)->elts[20]; -c_731510.elts[21] = ((closureN)self_73701)->elts[21]; -c_731510.elts[22] = ((closureN)self_73701)->elts[22]; -c_731510.elts[23] = ((closureN)self_73701)->elts[23]; -c_731510.elts[24] = ((closureN)self_73701)->elts[24]; -c_731510.elts[25] = ((closureN)self_73701)->elts[25]; -c_731510.elts[26] = ((closureN)self_73701)->elts[26]; -c_731510.elts[27] = ((closureN)self_73701)->elts[27]; -c_731510.elts[28] = ((closureN)self_73701)->elts[28]; -c_731510.elts[29] = ((closureN)self_73701)->elts[29]; -c_731510.elts[30] = ((closureN)self_73701)->elts[30]; -c_731510.elts[31] = ((closureN)self_73701)->elts[31]; -c_731510.elts[32] = ((closureN)self_73701)->elts[32]; -c_731510.elts[33] = ((closureN)self_73701)->elts[33]; -c_731510.elts[34] = ((closureN)self_73701)->elts[34]; -c_731510.elts[35] = ((closureN)self_73701)->elts[35]; -c_731510.elts[36] = ((closureN)self_73701)->elts[36]; -c_731510.elts[37] = ((closureN)self_73701)->elts[37]; -c_731510.elts[38] = ((closureN)self_73701)->elts[38]; -c_731510.elts[39] = ((closureN)self_73701)->elts[39]; - -return_closcall1(data,(closure)&c_731510, Cyc_set_car(data, ((closureN)self_73701)->elts[22], r_73573));; -} - -static void __lambda_440(void *data, int argc, object self_73702, object r_73269) { - -closureN_type c_731512; -c_731512.hdr.mark = gc_color_red; - c_731512.hdr.grayed = 0; -c_731512.tag = closureN_tag; - c_731512.fn = (function_type)__lambda_432; -c_731512.num_args = 1; -c_731512.num_elt = 40; -c_731512.elts = (object *)alloca(sizeof(object) * 40); -c_731512.elts[0] = ((closureN)self_73702)->elts[0]; -c_731512.elts[1] = ((closureN)self_73702)->elts[1]; -c_731512.elts[2] = ((closureN)self_73702)->elts[2]; -c_731512.elts[3] = ((closureN)self_73702)->elts[3]; -c_731512.elts[4] = ((closureN)self_73702)->elts[4]; -c_731512.elts[5] = ((closureN)self_73702)->elts[5]; -c_731512.elts[6] = ((closureN)self_73702)->elts[6]; -c_731512.elts[7] = ((closureN)self_73702)->elts[7]; -c_731512.elts[8] = ((closureN)self_73702)->elts[8]; -c_731512.elts[9] = ((closureN)self_73702)->elts[9]; -c_731512.elts[10] = ((closureN)self_73702)->elts[10]; -c_731512.elts[11] = ((closureN)self_73702)->elts[11]; -c_731512.elts[12] = ((closureN)self_73702)->elts[12]; -c_731512.elts[13] = ((closureN)self_73702)->elts[13]; -c_731512.elts[14] = ((closureN)self_73702)->elts[14]; -c_731512.elts[15] = ((closureN)self_73702)->elts[15]; -c_731512.elts[16] = ((closureN)self_73702)->elts[16]; -c_731512.elts[17] = ((closureN)self_73702)->elts[17]; -c_731512.elts[18] = ((closureN)self_73702)->elts[18]; -c_731512.elts[19] = ((closureN)self_73702)->elts[19]; -c_731512.elts[20] = ((closureN)self_73702)->elts[20]; -c_731512.elts[21] = ((closureN)self_73702)->elts[21]; -c_731512.elts[22] = ((closureN)self_73702)->elts[22]; -c_731512.elts[23] = ((closureN)self_73702)->elts[23]; -c_731512.elts[24] = ((closureN)self_73702)->elts[24]; -c_731512.elts[25] = ((closureN)self_73702)->elts[25]; -c_731512.elts[26] = ((closureN)self_73702)->elts[26]; -c_731512.elts[27] = ((closureN)self_73702)->elts[27]; -c_731512.elts[28] = ((closureN)self_73702)->elts[28]; -c_731512.elts[29] = ((closureN)self_73702)->elts[29]; -c_731512.elts[30] = ((closureN)self_73702)->elts[30]; -c_731512.elts[31] = ((closureN)self_73702)->elts[31]; -c_731512.elts[32] = ((closureN)self_73702)->elts[32]; -c_731512.elts[33] = ((closureN)self_73702)->elts[33]; -c_731512.elts[34] = ((closureN)self_73702)->elts[34]; -c_731512.elts[35] = ((closureN)self_73702)->elts[35]; -c_731512.elts[36] = ((closureN)self_73702)->elts[36]; -c_731512.elts[37] = ((closureN)self_73702)->elts[37]; -c_731512.elts[38] = ((closureN)self_73702)->elts[38]; -c_731512.elts[39] = ((closureN)self_73702)->elts[39]; - - -closureN_type c_733160; -c_733160.hdr.mark = gc_color_red; - c_733160.hdr.grayed = 0; -c_733160.tag = closureN_tag; - c_733160.fn = (function_type)__lambda_439; -c_733160.num_args = 1; -c_733160.num_elt = 2; -c_733160.elts = (object *)alloca(sizeof(object) * 2); -c_733160.elts[0] = ((closureN)self_73702)->elts[1]; -c_733160.elts[1] = ((closureN)self_73702)->elts[2]; - -return_closcall1(data,(closure)&c_731512, &c_733160);; -} - -static void __lambda_439(void *data, int argc, object self_73703, object k_73568, object lst_73231) { - -closureN_type c_733162; -c_733162.hdr.mark = gc_color_red; - c_733162.hdr.grayed = 0; -c_733162.tag = closureN_tag; - c_733162.fn = (function_type)__lambda_438; -c_733162.num_args = 1; -c_733162.num_elt = 4; -c_733162.elts = (object *)alloca(sizeof(object) * 4); -c_733162.elts[0] = ((closureN)self_73703)->elts[0]; -c_733162.elts[1] = ((closureN)self_73703)->elts[1]; -c_733162.elts[2] = k_73568; -c_733162.elts[3] = lst_73231; - -return_closcall1(data,(closure)&c_733162, Cyc_is_null(lst_73231));; -} - -static void __lambda_438(void *data, int argc, object self_73704, object r_73569) { - if( !eq(boolean_f, r_73569) ){ - -closureN_type c_733164; -c_733164.hdr.mark = gc_color_red; - c_733164.hdr.grayed = 0; -c_733164.tag = closureN_tag; - c_733164.fn = (function_type)__lambda_433; -c_733164.num_args = 0; -c_733164.num_elt = 1; -c_733164.elts = (object *)alloca(sizeof(object) * 1); -c_733164.elts[0] = ((closureN)self_73704)->elts[2]; - -return_closcall0(data,(closure)&c_733164); -} else { - -closureN_type c_733168; -c_733168.hdr.mark = gc_color_red; - c_733168.hdr.grayed = 0; -c_733168.tag = closureN_tag; - c_733168.fn = (function_type)__lambda_437; -c_733168.num_args = 0; -c_733168.num_elt = 4; -c_733168.elts = (object *)alloca(sizeof(object) * 4); -c_733168.elts[0] = ((closureN)self_73704)->elts[0]; -c_733168.elts[1] = ((closureN)self_73704)->elts[1]; -c_733168.elts[2] = ((closureN)self_73704)->elts[2]; -c_733168.elts[3] = ((closureN)self_73704)->elts[3]; - -return_closcall0(data,(closure)&c_733168);} -; -} - -static void __lambda_437(void *data, int argc, object self_73705) { - -closureN_type c_733170; -c_733170.hdr.mark = gc_color_red; - c_733170.hdr.grayed = 0; -c_733170.tag = closureN_tag; - c_733170.fn = (function_type)__lambda_436; -c_733170.num_args = 1; -c_733170.num_elt = 4; -c_733170.elts = (object *)alloca(sizeof(object) * 4); -c_733170.elts[0] = ((closureN)self_73705)->elts[0]; -c_733170.elts[1] = ((closureN)self_73705)->elts[1]; -c_733170.elts[2] = ((closureN)self_73705)->elts[2]; -c_733170.elts[3] = ((closureN)self_73705)->elts[3]; - -return_closcall1(data,(closure)&c_733170, car(((closureN)self_73705)->elts[3]));; -} - -static void __lambda_436(void *data, int argc, object self_73706, object r_73572) { - -closureN_type c_733175; -c_733175.hdr.mark = gc_color_red; - c_733175.hdr.grayed = 0; -c_733175.tag = closureN_tag; - c_733175.fn = (function_type)__lambda_435; -c_733175.num_args = 1; -c_733175.num_elt = 3; -c_733175.elts = (object *)alloca(sizeof(object) * 3); -c_733175.elts[0] = ((closureN)self_73706)->elts[1]; -c_733175.elts[1] = ((closureN)self_73706)->elts[2]; -c_733175.elts[2] = ((closureN)self_73706)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73706)->elts[0]), &c_733175, r_73572);; -} - -static void __lambda_435(void *data, int argc, object self_73707, object r_73570) { - -closureN_type c_733177; -c_733177.hdr.mark = gc_color_red; - c_733177.hdr.grayed = 0; -c_733177.tag = closureN_tag; - c_733177.fn = (function_type)__lambda_434; -c_733177.num_args = 1; -c_733177.num_elt = 2; -c_733177.elts = (object *)alloca(sizeof(object) * 2); -c_733177.elts[0] = ((closureN)self_73707)->elts[0]; -c_733177.elts[1] = ((closureN)self_73707)->elts[1]; - -return_closcall1(data,(closure)&c_733177, cdr(((closureN)self_73707)->elts[2]));; -} - -static void __lambda_434(void *data, int argc, object self_73708, object r_73571) { - return_closcall2(data, cell_get(((closureN)self_73708)->elts[0]), ((closureN)self_73708)->elts[1], r_73571);; -} - -static void __lambda_433(void *data, int argc, object self_73709) { - return_closcall1(data, ((closureN)self_73709)->elts[0], boolean_t);; -} - -static void __lambda_432(void *data, int argc, object self_73710, object r_73567) { - -closureN_type c_731514; -c_731514.hdr.mark = gc_color_red; - c_731514.hdr.grayed = 0; -c_731514.tag = closureN_tag; - c_731514.fn = (function_type)__lambda_431; -c_731514.num_args = 1; -c_731514.num_elt = 39; -c_731514.elts = (object *)alloca(sizeof(object) * 39); -c_731514.elts[0] = ((closureN)self_73710)->elts[0]; -c_731514.elts[1] = ((closureN)self_73710)->elts[1]; -c_731514.elts[2] = ((closureN)self_73710)->elts[3]; -c_731514.elts[3] = ((closureN)self_73710)->elts[4]; -c_731514.elts[4] = ((closureN)self_73710)->elts[5]; -c_731514.elts[5] = ((closureN)self_73710)->elts[6]; -c_731514.elts[6] = ((closureN)self_73710)->elts[7]; -c_731514.elts[7] = ((closureN)self_73710)->elts[8]; -c_731514.elts[8] = ((closureN)self_73710)->elts[9]; -c_731514.elts[9] = ((closureN)self_73710)->elts[10]; -c_731514.elts[10] = ((closureN)self_73710)->elts[11]; -c_731514.elts[11] = ((closureN)self_73710)->elts[12]; -c_731514.elts[12] = ((closureN)self_73710)->elts[13]; -c_731514.elts[13] = ((closureN)self_73710)->elts[14]; -c_731514.elts[14] = ((closureN)self_73710)->elts[15]; -c_731514.elts[15] = ((closureN)self_73710)->elts[16]; -c_731514.elts[16] = ((closureN)self_73710)->elts[17]; -c_731514.elts[17] = ((closureN)self_73710)->elts[18]; -c_731514.elts[18] = ((closureN)self_73710)->elts[19]; -c_731514.elts[19] = ((closureN)self_73710)->elts[20]; -c_731514.elts[20] = ((closureN)self_73710)->elts[21]; -c_731514.elts[21] = ((closureN)self_73710)->elts[22]; -c_731514.elts[22] = ((closureN)self_73710)->elts[23]; -c_731514.elts[23] = ((closureN)self_73710)->elts[24]; -c_731514.elts[24] = ((closureN)self_73710)->elts[25]; -c_731514.elts[25] = ((closureN)self_73710)->elts[26]; -c_731514.elts[26] = ((closureN)self_73710)->elts[27]; -c_731514.elts[27] = ((closureN)self_73710)->elts[28]; -c_731514.elts[28] = ((closureN)self_73710)->elts[29]; -c_731514.elts[29] = ((closureN)self_73710)->elts[30]; -c_731514.elts[30] = ((closureN)self_73710)->elts[31]; -c_731514.elts[31] = ((closureN)self_73710)->elts[32]; -c_731514.elts[32] = ((closureN)self_73710)->elts[33]; -c_731514.elts[33] = ((closureN)self_73710)->elts[34]; -c_731514.elts[34] = ((closureN)self_73710)->elts[35]; -c_731514.elts[35] = ((closureN)self_73710)->elts[36]; -c_731514.elts[36] = ((closureN)self_73710)->elts[37]; -c_731514.elts[37] = ((closureN)self_73710)->elts[38]; -c_731514.elts[38] = ((closureN)self_73710)->elts[39]; - -return_closcall1(data,(closure)&c_731514, Cyc_set_car(data, ((closureN)self_73710)->elts[2], r_73567));; -} - -static void __lambda_431(void *data, int argc, object self_73711, object r_73270) { - -closureN_type c_731516; -c_731516.hdr.mark = gc_color_red; - c_731516.hdr.grayed = 0; -c_731516.tag = closureN_tag; - c_731516.fn = (function_type)__lambda_411; -c_731516.num_args = 1; -c_731516.num_elt = 39; -c_731516.elts = (object *)alloca(sizeof(object) * 39); -c_731516.elts[0] = ((closureN)self_73711)->elts[0]; -c_731516.elts[1] = ((closureN)self_73711)->elts[1]; -c_731516.elts[2] = ((closureN)self_73711)->elts[2]; -c_731516.elts[3] = ((closureN)self_73711)->elts[3]; -c_731516.elts[4] = ((closureN)self_73711)->elts[4]; -c_731516.elts[5] = ((closureN)self_73711)->elts[5]; -c_731516.elts[6] = ((closureN)self_73711)->elts[6]; -c_731516.elts[7] = ((closureN)self_73711)->elts[7]; -c_731516.elts[8] = ((closureN)self_73711)->elts[8]; -c_731516.elts[9] = ((closureN)self_73711)->elts[9]; -c_731516.elts[10] = ((closureN)self_73711)->elts[10]; -c_731516.elts[11] = ((closureN)self_73711)->elts[11]; -c_731516.elts[12] = ((closureN)self_73711)->elts[12]; -c_731516.elts[13] = ((closureN)self_73711)->elts[13]; -c_731516.elts[14] = ((closureN)self_73711)->elts[14]; -c_731516.elts[15] = ((closureN)self_73711)->elts[15]; -c_731516.elts[16] = ((closureN)self_73711)->elts[16]; -c_731516.elts[17] = ((closureN)self_73711)->elts[17]; -c_731516.elts[18] = ((closureN)self_73711)->elts[18]; -c_731516.elts[19] = ((closureN)self_73711)->elts[19]; -c_731516.elts[20] = ((closureN)self_73711)->elts[20]; -c_731516.elts[21] = ((closureN)self_73711)->elts[21]; -c_731516.elts[22] = ((closureN)self_73711)->elts[22]; -c_731516.elts[23] = ((closureN)self_73711)->elts[23]; -c_731516.elts[24] = ((closureN)self_73711)->elts[24]; -c_731516.elts[25] = ((closureN)self_73711)->elts[25]; -c_731516.elts[26] = ((closureN)self_73711)->elts[26]; -c_731516.elts[27] = ((closureN)self_73711)->elts[27]; -c_731516.elts[28] = ((closureN)self_73711)->elts[28]; -c_731516.elts[29] = ((closureN)self_73711)->elts[29]; -c_731516.elts[30] = ((closureN)self_73711)->elts[30]; -c_731516.elts[31] = ((closureN)self_73711)->elts[31]; -c_731516.elts[32] = ((closureN)self_73711)->elts[32]; -c_731516.elts[33] = ((closureN)self_73711)->elts[33]; -c_731516.elts[34] = ((closureN)self_73711)->elts[34]; -c_731516.elts[35] = ((closureN)self_73711)->elts[35]; -c_731516.elts[36] = ((closureN)self_73711)->elts[36]; -c_731516.elts[37] = ((closureN)self_73711)->elts[37]; -c_731516.elts[38] = ((closureN)self_73711)->elts[38]; - - -closureN_type c_733068; -c_733068.hdr.mark = gc_color_red; - c_733068.hdr.grayed = 0; -c_733068.tag = closureN_tag; - c_733068.fn = (function_type)__lambda_430; -c_733068.num_args = 1; -c_733068.num_elt = 3; -c_733068.elts = (object *)alloca(sizeof(object) * 3); -c_733068.elts[0] = ((closureN)self_73711)->elts[6]; -c_733068.elts[1] = ((closureN)self_73711)->elts[14]; -c_733068.elts[2] = ((closureN)self_73711)->elts[34]; - -return_closcall1(data,(closure)&c_731516, &c_733068);; -} - -static void __lambda_430(void *data, int argc, object self_73712, object k_73550, object term_73230) { - -closureN_type c_733070; -c_733070.hdr.mark = gc_color_red; - c_733070.hdr.grayed = 0; -c_733070.tag = closureN_tag; - c_733070.fn = (function_type)__lambda_417; -c_733070.num_args = 0; -c_733070.num_elt = 1; -c_733070.elts = (object *)alloca(sizeof(object) * 1); -c_733070.elts[0] = term_73230; - - -closureN_type c_733101; -c_733101.hdr.mark = gc_color_red; - c_733101.hdr.grayed = 0; -c_733101.tag = closureN_tag; - c_733101.fn = (function_type)__lambda_429; -c_733101.num_args = 1; -c_733101.num_elt = 5; -c_733101.elts = (object *)alloca(sizeof(object) * 5); -c_733101.elts[0] = ((closureN)self_73712)->elts[0]; -c_733101.elts[1] = k_73550; -c_733101.elts[2] = ((closureN)self_73712)->elts[1]; -c_733101.elts[3] = term_73230; -c_733101.elts[4] = ((closureN)self_73712)->elts[2]; - -return_closcall1(data,(closure)&c_733070, &c_733101);; -} - -static void __lambda_429(void *data, int argc, object self_73713, object r_73551) { - if( !eq(boolean_f, r_73551) ){ - -closureN_type c_733103; -c_733103.hdr.mark = gc_color_red; - c_733103.hdr.grayed = 0; -c_733103.tag = closureN_tag; - c_733103.fn = (function_type)__lambda_427; -c_733103.num_args = 0; -c_733103.num_elt = 5; -c_733103.elts = (object *)alloca(sizeof(object) * 5); -c_733103.elts[0] = ((closureN)self_73713)->elts[0]; -c_733103.elts[1] = ((closureN)self_73713)->elts[1]; -c_733103.elts[2] = ((closureN)self_73713)->elts[2]; -c_733103.elts[3] = ((closureN)self_73713)->elts[3]; -c_733103.elts[4] = ((closureN)self_73713)->elts[4]; - -return_closcall0(data,(closure)&c_733103); -} else { - -closureN_type c_733152; -c_733152.hdr.mark = gc_color_red; - c_733152.hdr.grayed = 0; -c_733152.tag = closureN_tag; - c_733152.fn = (function_type)__lambda_428; -c_733152.num_args = 0; -c_733152.num_elt = 2; -c_733152.elts = (object *)alloca(sizeof(object) * 2); -c_733152.elts[0] = ((closureN)self_73713)->elts[1]; -c_733152.elts[1] = ((closureN)self_73713)->elts[3]; - -return_closcall0(data,(closure)&c_733152);} -; -} - -static void __lambda_428(void *data, int argc, object self_73714) { - -make_string(c_733155, "ADD-LEMMA did not like term: "); -return_closcall4(data, __glo_error_scheme_base, ((closureN)self_73714)->elts[0], boolean_f, &c_733155, ((closureN)self_73714)->elts[1]);; -} - -static void __lambda_427(void *data, int argc, object self_73715) { - -closureN_type c_733105; -c_733105.hdr.mark = gc_color_red; - c_733105.hdr.grayed = 0; -c_733105.tag = closureN_tag; - c_733105.fn = (function_type)__lambda_426; -c_733105.num_args = 1; -c_733105.num_elt = 5; -c_733105.elts = (object *)alloca(sizeof(object) * 5); -c_733105.elts[0] = ((closureN)self_73715)->elts[0]; -c_733105.elts[1] = ((closureN)self_73715)->elts[1]; -c_733105.elts[2] = ((closureN)self_73715)->elts[2]; -c_733105.elts[3] = ((closureN)self_73715)->elts[3]; -c_733105.elts[4] = ((closureN)self_73715)->elts[4]; - -return_closcall1(data,(closure)&c_733105, cadr(((closureN)self_73715)->elts[3]));; -} - -static void __lambda_426(void *data, int argc, object self_73716, object r_73560) { - -closureN_type c_733107; -c_733107.hdr.mark = gc_color_red; - c_733107.hdr.grayed = 0; -c_733107.tag = closureN_tag; - c_733107.fn = (function_type)__lambda_425; -c_733107.num_args = 1; -c_733107.num_elt = 5; -c_733107.elts = (object *)alloca(sizeof(object) * 5); -c_733107.elts[0] = ((closureN)self_73716)->elts[0]; -c_733107.elts[1] = ((closureN)self_73716)->elts[1]; -c_733107.elts[2] = ((closureN)self_73716)->elts[2]; -c_733107.elts[3] = ((closureN)self_73716)->elts[3]; -c_733107.elts[4] = ((closureN)self_73716)->elts[4]; - -return_closcall1(data,(closure)&c_733107, car(r_73560));; -} - -static void __lambda_425(void *data, int argc, object self_73717, object r_73552) { - -closureN_type c_733109; -c_733109.hdr.mark = gc_color_red; - c_733109.hdr.grayed = 0; -c_733109.tag = closureN_tag; - c_733109.fn = (function_type)__lambda_424; -c_733109.num_args = 1; -c_733109.num_elt = 6; -c_733109.elts = (object *)alloca(sizeof(object) * 6); -c_733109.elts[0] = ((closureN)self_73717)->elts[0]; -c_733109.elts[1] = ((closureN)self_73717)->elts[1]; -c_733109.elts[2] = ((closureN)self_73717)->elts[2]; -c_733109.elts[3] = r_73552; -c_733109.elts[4] = ((closureN)self_73717)->elts[3]; -c_733109.elts[5] = ((closureN)self_73717)->elts[4]; - -return_closcall1(data,(closure)&c_733109, quote_lemmas);; -} - -static void __lambda_424(void *data, int argc, object self_73718, object r_73553) { - -closureN_type c_733114; -c_733114.hdr.mark = gc_color_red; - c_733114.hdr.grayed = 0; -c_733114.tag = closureN_tag; - c_733114.fn = (function_type)__lambda_423; -c_733114.num_args = 1; -c_733114.num_elt = 6; -c_733114.elts = (object *)alloca(sizeof(object) * 6); -c_733114.elts[0] = ((closureN)self_73718)->elts[0]; -c_733114.elts[1] = ((closureN)self_73718)->elts[1]; -c_733114.elts[2] = ((closureN)self_73718)->elts[2]; -c_733114.elts[3] = ((closureN)self_73718)->elts[3]; -c_733114.elts[4] = r_73553; -c_733114.elts[5] = ((closureN)self_73718)->elts[4]; - -return_closcall2(data, cell_get(((closureN)self_73718)->elts[5]), &c_733114, ((closureN)self_73718)->elts[4]);; -} - -static void __lambda_423(void *data, int argc, object self_73719, object r_73555) { - -closureN_type c_733116; -c_733116.hdr.mark = gc_color_red; - c_733116.hdr.grayed = 0; -c_733116.tag = closureN_tag; - c_733116.fn = (function_type)__lambda_422; -c_733116.num_args = 1; -c_733116.num_elt = 6; -c_733116.elts = (object *)alloca(sizeof(object) * 6); -c_733116.elts[0] = ((closureN)self_73719)->elts[0]; -c_733116.elts[1] = ((closureN)self_73719)->elts[1]; -c_733116.elts[2] = ((closureN)self_73719)->elts[2]; -c_733116.elts[3] = ((closureN)self_73719)->elts[3]; -c_733116.elts[4] = ((closureN)self_73719)->elts[4]; -c_733116.elts[5] = r_73555; - -return_closcall1(data,(closure)&c_733116, cadr(((closureN)self_73719)->elts[5]));; -} - -static void __lambda_422(void *data, int argc, object self_73720, object r_73559) { - -closureN_type c_733118; -c_733118.hdr.mark = gc_color_red; - c_733118.hdr.grayed = 0; -c_733118.tag = closureN_tag; - c_733118.fn = (function_type)__lambda_421; -c_733118.num_args = 1; -c_733118.num_elt = 6; -c_733118.elts = (object *)alloca(sizeof(object) * 6); -c_733118.elts[0] = ((closureN)self_73720)->elts[0]; -c_733118.elts[1] = ((closureN)self_73720)->elts[1]; -c_733118.elts[2] = ((closureN)self_73720)->elts[2]; -c_733118.elts[3] = ((closureN)self_73720)->elts[3]; -c_733118.elts[4] = ((closureN)self_73720)->elts[4]; -c_733118.elts[5] = ((closureN)self_73720)->elts[5]; - -return_closcall1(data,(closure)&c_733118, car(r_73559));; -} - -static void __lambda_421(void *data, int argc, object self_73721, object r_73557) { - -closureN_type c_733120; -c_733120.hdr.mark = gc_color_red; - c_733120.hdr.grayed = 0; -c_733120.tag = closureN_tag; - c_733120.fn = (function_type)__lambda_420; -c_733120.num_args = 1; -c_733120.num_elt = 7; -c_733120.elts = (object *)alloca(sizeof(object) * 7); -c_733120.elts[0] = ((closureN)self_73721)->elts[0]; -c_733120.elts[1] = ((closureN)self_73721)->elts[1]; -c_733120.elts[2] = ((closureN)self_73721)->elts[2]; -c_733120.elts[3] = ((closureN)self_73721)->elts[3]; -c_733120.elts[4] = ((closureN)self_73721)->elts[4]; -c_733120.elts[5] = ((closureN)self_73721)->elts[5]; -c_733120.elts[6] = r_73557; - -return_closcall1(data,(closure)&c_733120, quote_lemmas);; -} - -static void __lambda_420(void *data, int argc, object self_73722, object r_73558) { - -closureN_type c_733125; -c_733125.hdr.mark = gc_color_red; - c_733125.hdr.grayed = 0; -c_733125.tag = closureN_tag; - c_733125.fn = (function_type)__lambda_419; -c_733125.num_args = 1; -c_733125.num_elt = 5; -c_733125.elts = (object *)alloca(sizeof(object) * 5); -c_733125.elts[0] = ((closureN)self_73722)->elts[1]; -c_733125.elts[1] = ((closureN)self_73722)->elts[2]; -c_733125.elts[2] = ((closureN)self_73722)->elts[3]; -c_733125.elts[3] = ((closureN)self_73722)->elts[4]; -c_733125.elts[4] = ((closureN)self_73722)->elts[5]; - -return_closcall3(data, cell_get(((closureN)self_73722)->elts[0]), &c_733125, ((closureN)self_73722)->elts[6], r_73558);; -} - -static void __lambda_419(void *data, int argc, object self_73723, object r_73556) { - -closureN_type c_733127; -c_733127.hdr.mark = gc_color_red; - c_733127.hdr.grayed = 0; -c_733127.tag = closureN_tag; - c_733127.fn = (function_type)__lambda_418; -c_733127.num_args = 1; -c_733127.num_elt = 4; -c_733127.elts = (object *)alloca(sizeof(object) * 4); -c_733127.elts[0] = ((closureN)self_73723)->elts[0]; -c_733127.elts[1] = ((closureN)self_73723)->elts[1]; -c_733127.elts[2] = ((closureN)self_73723)->elts[2]; -c_733127.elts[3] = ((closureN)self_73723)->elts[3]; - - -make_cons(c_733137,((closureN)self_73723)->elts[4], r_73556); -return_closcall1(data,(closure)&c_733127, &c_733137);; -} - -static void __lambda_418(void *data, int argc, object self_73724, object r_73554) { - return_closcall4(data, cell_get(((closureN)self_73724)->elts[1]), ((closureN)self_73724)->elts[0], ((closureN)self_73724)->elts[2], ((closureN)self_73724)->elts[3], r_73554);; -} - -static void __lambda_417(void *data, int argc, object self_73725, object k_73561) { - -closureN_type c_733072; -c_733072.hdr.mark = gc_color_red; - c_733072.hdr.grayed = 0; -c_733072.tag = closureN_tag; - c_733072.fn = (function_type)__lambda_416; -c_733072.num_args = 1; -c_733072.num_elt = 2; -c_733072.elts = (object *)alloca(sizeof(object) * 2); -c_733072.elts[0] = k_73561; -c_733072.elts[1] = ((closureN)self_73725)->elts[0]; - -return_closcall1(data,(closure)&c_733072, Cyc_is_cons(((closureN)self_73725)->elts[0]));; -} - -static void __lambda_416(void *data, int argc, object self_73726, object r_73562) { - if( !eq(boolean_f, r_73562) ){ - -closureN_type c_733074; -c_733074.hdr.mark = gc_color_red; - c_733074.hdr.grayed = 0; -c_733074.tag = closureN_tag; - c_733074.fn = (function_type)__lambda_415; -c_733074.num_args = 1; -c_733074.num_elt = 2; -c_733074.elts = (object *)alloca(sizeof(object) * 2); -c_733074.elts[0] = ((closureN)self_73726)->elts[0]; -c_733074.elts[1] = ((closureN)self_73726)->elts[1]; - -return_closcall1(data,(closure)&c_733074, car(((closureN)self_73726)->elts[1])); -} else { - return_closcall1(data, ((closureN)self_73726)->elts[0], boolean_f);} -; -} - -static void __lambda_415(void *data, int argc, object self_73727, object r_73565) { - -closureN_type c_733076; -c_733076.hdr.mark = gc_color_red; - c_733076.hdr.grayed = 0; -c_733076.tag = closureN_tag; - c_733076.fn = (function_type)__lambda_414; -c_733076.num_args = 1; -c_733076.num_elt = 3; -c_733076.elts = (object *)alloca(sizeof(object) * 3); -c_733076.elts[0] = ((closureN)self_73727)->elts[0]; -c_733076.elts[1] = r_73565; -c_733076.elts[2] = ((closureN)self_73727)->elts[1]; - -return_closcall1(data,(closure)&c_733076, quote_equal);; -} - -static void __lambda_414(void *data, int argc, object self_73728, object r_73566) { - -closureN_type c_733078; -c_733078.hdr.mark = gc_color_red; - c_733078.hdr.grayed = 0; -c_733078.tag = closureN_tag; - c_733078.fn = (function_type)__lambda_413; -c_733078.num_args = 1; -c_733078.num_elt = 2; -c_733078.elts = (object *)alloca(sizeof(object) * 2); -c_733078.elts[0] = ((closureN)self_73728)->elts[0]; -c_733078.elts[1] = ((closureN)self_73728)->elts[2]; - -return_closcall1(data,(closure)&c_733078, Cyc_eq(((closureN)self_73728)->elts[1], r_73566));; -} - -static void __lambda_413(void *data, int argc, object self_73729, object r_73563) { - if( !eq(boolean_f, r_73563) ){ - -closureN_type c_733080; -c_733080.hdr.mark = gc_color_red; - c_733080.hdr.grayed = 0; -c_733080.tag = closureN_tag; - c_733080.fn = (function_type)__lambda_412; -c_733080.num_args = 1; -c_733080.num_elt = 1; -c_733080.elts = (object *)alloca(sizeof(object) * 1); -c_733080.elts[0] = ((closureN)self_73729)->elts[0]; - -return_closcall1(data,(closure)&c_733080, cadr(((closureN)self_73729)->elts[1])); -} else { - return_closcall1(data, ((closureN)self_73729)->elts[0], boolean_f);} -; -} - -static void __lambda_412(void *data, int argc, object self_73730, object r_73564) { - return_closcall1(data, ((closureN)self_73730)->elts[0], Cyc_is_cons(r_73564));; -} - -static void __lambda_411(void *data, int argc, object self_73731, object r_73549) { - -closureN_type c_731518; -c_731518.hdr.mark = gc_color_red; - c_731518.hdr.grayed = 0; -c_731518.tag = closureN_tag; - c_731518.fn = (function_type)__lambda_410; -c_731518.num_args = 1; -c_731518.num_elt = 38; -c_731518.elts = (object *)alloca(sizeof(object) * 38); -c_731518.elts[0] = ((closureN)self_73731)->elts[0]; -c_731518.elts[1] = ((closureN)self_73731)->elts[2]; -c_731518.elts[2] = ((closureN)self_73731)->elts[3]; -c_731518.elts[3] = ((closureN)self_73731)->elts[4]; -c_731518.elts[4] = ((closureN)self_73731)->elts[5]; -c_731518.elts[5] = ((closureN)self_73731)->elts[6]; -c_731518.elts[6] = ((closureN)self_73731)->elts[7]; -c_731518.elts[7] = ((closureN)self_73731)->elts[8]; -c_731518.elts[8] = ((closureN)self_73731)->elts[9]; -c_731518.elts[9] = ((closureN)self_73731)->elts[10]; -c_731518.elts[10] = ((closureN)self_73731)->elts[11]; -c_731518.elts[11] = ((closureN)self_73731)->elts[12]; -c_731518.elts[12] = ((closureN)self_73731)->elts[13]; -c_731518.elts[13] = ((closureN)self_73731)->elts[14]; -c_731518.elts[14] = ((closureN)self_73731)->elts[15]; -c_731518.elts[15] = ((closureN)self_73731)->elts[16]; -c_731518.elts[16] = ((closureN)self_73731)->elts[17]; -c_731518.elts[17] = ((closureN)self_73731)->elts[18]; -c_731518.elts[18] = ((closureN)self_73731)->elts[19]; -c_731518.elts[19] = ((closureN)self_73731)->elts[20]; -c_731518.elts[20] = ((closureN)self_73731)->elts[21]; -c_731518.elts[21] = ((closureN)self_73731)->elts[22]; -c_731518.elts[22] = ((closureN)self_73731)->elts[23]; -c_731518.elts[23] = ((closureN)self_73731)->elts[24]; -c_731518.elts[24] = ((closureN)self_73731)->elts[25]; -c_731518.elts[25] = ((closureN)self_73731)->elts[26]; -c_731518.elts[26] = ((closureN)self_73731)->elts[27]; -c_731518.elts[27] = ((closureN)self_73731)->elts[28]; -c_731518.elts[28] = ((closureN)self_73731)->elts[29]; -c_731518.elts[29] = ((closureN)self_73731)->elts[30]; -c_731518.elts[30] = ((closureN)self_73731)->elts[31]; -c_731518.elts[31] = ((closureN)self_73731)->elts[32]; -c_731518.elts[32] = ((closureN)self_73731)->elts[33]; -c_731518.elts[33] = ((closureN)self_73731)->elts[34]; -c_731518.elts[34] = ((closureN)self_73731)->elts[35]; -c_731518.elts[35] = ((closureN)self_73731)->elts[36]; -c_731518.elts[36] = ((closureN)self_73731)->elts[37]; -c_731518.elts[37] = ((closureN)self_73731)->elts[38]; - -return_closcall1(data,(closure)&c_731518, Cyc_set_car(data, ((closureN)self_73731)->elts[1], r_73549));; -} - -static void __lambda_410(void *data, int argc, object self_73732, object r_73271) { - -closureN_type c_731520; -c_731520.hdr.mark = gc_color_red; - c_731520.hdr.grayed = 0; -c_731520.tag = closureN_tag; - c_731520.fn = (function_type)__lambda_401; -c_731520.num_args = 1; -c_731520.num_elt = 38; -c_731520.elts = (object *)alloca(sizeof(object) * 38); -c_731520.elts[0] = ((closureN)self_73732)->elts[0]; -c_731520.elts[1] = ((closureN)self_73732)->elts[1]; -c_731520.elts[2] = ((closureN)self_73732)->elts[2]; -c_731520.elts[3] = ((closureN)self_73732)->elts[3]; -c_731520.elts[4] = ((closureN)self_73732)->elts[4]; -c_731520.elts[5] = ((closureN)self_73732)->elts[5]; -c_731520.elts[6] = ((closureN)self_73732)->elts[6]; -c_731520.elts[7] = ((closureN)self_73732)->elts[7]; -c_731520.elts[8] = ((closureN)self_73732)->elts[8]; -c_731520.elts[9] = ((closureN)self_73732)->elts[9]; -c_731520.elts[10] = ((closureN)self_73732)->elts[10]; -c_731520.elts[11] = ((closureN)self_73732)->elts[11]; -c_731520.elts[12] = ((closureN)self_73732)->elts[12]; -c_731520.elts[13] = ((closureN)self_73732)->elts[13]; -c_731520.elts[14] = ((closureN)self_73732)->elts[14]; -c_731520.elts[15] = ((closureN)self_73732)->elts[15]; -c_731520.elts[16] = ((closureN)self_73732)->elts[16]; -c_731520.elts[17] = ((closureN)self_73732)->elts[17]; -c_731520.elts[18] = ((closureN)self_73732)->elts[18]; -c_731520.elts[19] = ((closureN)self_73732)->elts[19]; -c_731520.elts[20] = ((closureN)self_73732)->elts[20]; -c_731520.elts[21] = ((closureN)self_73732)->elts[21]; -c_731520.elts[22] = ((closureN)self_73732)->elts[22]; -c_731520.elts[23] = ((closureN)self_73732)->elts[23]; -c_731520.elts[24] = ((closureN)self_73732)->elts[24]; -c_731520.elts[25] = ((closureN)self_73732)->elts[25]; -c_731520.elts[26] = ((closureN)self_73732)->elts[26]; -c_731520.elts[27] = ((closureN)self_73732)->elts[27]; -c_731520.elts[28] = ((closureN)self_73732)->elts[28]; -c_731520.elts[29] = ((closureN)self_73732)->elts[29]; -c_731520.elts[30] = ((closureN)self_73732)->elts[30]; -c_731520.elts[31] = ((closureN)self_73732)->elts[31]; -c_731520.elts[32] = ((closureN)self_73732)->elts[32]; -c_731520.elts[33] = ((closureN)self_73732)->elts[33]; -c_731520.elts[34] = ((closureN)self_73732)->elts[34]; -c_731520.elts[35] = ((closureN)self_73732)->elts[35]; -c_731520.elts[36] = ((closureN)self_73732)->elts[36]; -c_731520.elts[37] = ((closureN)self_73732)->elts[37]; - - -closureN_type c_733027; -c_733027.hdr.mark = gc_color_red; - c_733027.hdr.grayed = 0; -c_733027.tag = closureN_tag; - c_733027.fn = (function_type)__lambda_409; -c_733027.num_args = 1; -c_733027.num_elt = 2; -c_733027.elts = (object *)alloca(sizeof(object) * 2); -c_733027.elts[0] = ((closureN)self_73732)->elts[21]; -c_733027.elts[1] = ((closureN)self_73732)->elts[32]; - -return_closcall1(data,(closure)&c_731520, &c_733027);; -} - -static void __lambda_409(void *data, int argc, object self_73733, object k_73543, object term_73229) { - -closureN_type c_733029; -c_733029.hdr.mark = gc_color_red; - c_733029.hdr.grayed = 0; -c_733029.tag = closureN_tag; - c_733029.fn = (function_type)__lambda_408; -c_733029.num_args = 1; -c_733029.num_elt = 4; -c_733029.elts = (object *)alloca(sizeof(object) * 4); -c_733029.elts[0] = k_73543; -c_733029.elts[1] = ((closureN)self_73733)->elts[0]; -c_733029.elts[2] = term_73229; -c_733029.elts[3] = ((closureN)self_73733)->elts[1]; - -return_closcall1(data,(closure)&c_733029, Cyc_is_cons(term_73229));; -} - -static void __lambda_408(void *data, int argc, object self_73734, object r_73544) { - if( !eq(boolean_f, r_73544) ){ - -closureN_type c_733031; -c_733031.hdr.mark = gc_color_red; - c_733031.hdr.grayed = 0; -c_733031.tag = closureN_tag; - c_733031.fn = (function_type)__lambda_406; -c_733031.num_args = 0; -c_733031.num_elt = 4; -c_733031.elts = (object *)alloca(sizeof(object) * 4); -c_733031.elts[0] = ((closureN)self_73734)->elts[0]; -c_733031.elts[1] = ((closureN)self_73734)->elts[1]; -c_733031.elts[2] = ((closureN)self_73734)->elts[2]; -c_733031.elts[3] = ((closureN)self_73734)->elts[3]; - -return_closcall0(data,(closure)&c_733031); -} else { - -closureN_type c_733059; -c_733059.hdr.mark = gc_color_red; - c_733059.hdr.grayed = 0; -c_733059.tag = closureN_tag; - c_733059.fn = (function_type)__lambda_407; -c_733059.num_args = 0; -c_733059.num_elt = 2; -c_733059.elts = (object *)alloca(sizeof(object) * 2); -c_733059.elts[0] = ((closureN)self_73734)->elts[0]; -c_733059.elts[1] = ((closureN)self_73734)->elts[2]; - -return_closcall0(data,(closure)&c_733059);} -; -} - -static void __lambda_407(void *data, int argc, object self_73735) { - return_closcall1(data, ((closureN)self_73735)->elts[0], ((closureN)self_73735)->elts[1]);; -} - -static void __lambda_406(void *data, int argc, object self_73736) { - -closureN_type c_733033; -c_733033.hdr.mark = gc_color_red; - c_733033.hdr.grayed = 0; -c_733033.tag = closureN_tag; - c_733033.fn = (function_type)__lambda_405; -c_733033.num_args = 1; -c_733033.num_elt = 4; -c_733033.elts = (object *)alloca(sizeof(object) * 4); -c_733033.elts[0] = ((closureN)self_73736)->elts[0]; -c_733033.elts[1] = ((closureN)self_73736)->elts[1]; -c_733033.elts[2] = ((closureN)self_73736)->elts[2]; -c_733033.elts[3] = ((closureN)self_73736)->elts[3]; - -return_closcall1(data,(closure)&c_733033, car(((closureN)self_73736)->elts[2]));; -} - -static void __lambda_405(void *data, int argc, object self_73737, object r_73548) { - -closureN_type c_733038; -c_733038.hdr.mark = gc_color_red; - c_733038.hdr.grayed = 0; -c_733038.tag = closureN_tag; - c_733038.fn = (function_type)__lambda_404; -c_733038.num_args = 1; -c_733038.num_elt = 3; -c_733038.elts = (object *)alloca(sizeof(object) * 3); -c_733038.elts[0] = ((closureN)self_73737)->elts[0]; -c_733038.elts[1] = ((closureN)self_73737)->elts[2]; -c_733038.elts[2] = ((closureN)self_73737)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73737)->elts[1]), &c_733038, r_73548);; -} - -static void __lambda_404(void *data, int argc, object self_73738, object r_73545) { - -closureN_type c_733040; -c_733040.hdr.mark = gc_color_red; - c_733040.hdr.grayed = 0; -c_733040.tag = closureN_tag; - c_733040.fn = (function_type)__lambda_403; -c_733040.num_args = 1; -c_733040.num_elt = 3; -c_733040.elts = (object *)alloca(sizeof(object) * 3); -c_733040.elts[0] = ((closureN)self_73738)->elts[0]; -c_733040.elts[1] = r_73545; -c_733040.elts[2] = ((closureN)self_73738)->elts[2]; - -return_closcall1(data,(closure)&c_733040, cdr(((closureN)self_73738)->elts[1]));; -} - -static void __lambda_403(void *data, int argc, object self_73739, object r_73547) { - -closureN_type c_733045; -c_733045.hdr.mark = gc_color_red; - c_733045.hdr.grayed = 0; -c_733045.tag = closureN_tag; - c_733045.fn = (function_type)__lambda_402; -c_733045.num_args = 1; -c_733045.num_elt = 2; -c_733045.elts = (object *)alloca(sizeof(object) * 2); -c_733045.elts[0] = ((closureN)self_73739)->elts[0]; -c_733045.elts[1] = ((closureN)self_73739)->elts[1]; - -return_closcall2(data, cell_get(((closureN)self_73739)->elts[2]), &c_733045, r_73547);; -} - -static void __lambda_402(void *data, int argc, object self_73740, object r_73546) { - -make_cons(c_733050,((closureN)self_73740)->elts[1], r_73546); -return_closcall1(data, ((closureN)self_73740)->elts[0], &c_733050);; -} - -static void __lambda_401(void *data, int argc, object self_73741, object r_73542) { - -closureN_type c_731522; -c_731522.hdr.mark = gc_color_red; - c_731522.hdr.grayed = 0; -c_731522.tag = closureN_tag; - c_731522.fn = (function_type)__lambda_400; -c_731522.num_args = 1; -c_731522.num_elt = 38; -c_731522.elts = (object *)alloca(sizeof(object) * 38); -c_731522.elts[0] = ((closureN)self_73741)->elts[0]; -c_731522.elts[1] = ((closureN)self_73741)->elts[1]; -c_731522.elts[2] = ((closureN)self_73741)->elts[2]; -c_731522.elts[3] = ((closureN)self_73741)->elts[3]; -c_731522.elts[4] = ((closureN)self_73741)->elts[4]; -c_731522.elts[5] = ((closureN)self_73741)->elts[5]; -c_731522.elts[6] = ((closureN)self_73741)->elts[6]; -c_731522.elts[7] = ((closureN)self_73741)->elts[7]; -c_731522.elts[8] = ((closureN)self_73741)->elts[8]; -c_731522.elts[9] = ((closureN)self_73741)->elts[9]; -c_731522.elts[10] = ((closureN)self_73741)->elts[10]; -c_731522.elts[11] = ((closureN)self_73741)->elts[11]; -c_731522.elts[12] = ((closureN)self_73741)->elts[12]; -c_731522.elts[13] = ((closureN)self_73741)->elts[13]; -c_731522.elts[14] = ((closureN)self_73741)->elts[14]; -c_731522.elts[15] = ((closureN)self_73741)->elts[15]; -c_731522.elts[16] = ((closureN)self_73741)->elts[16]; -c_731522.elts[17] = ((closureN)self_73741)->elts[17]; -c_731522.elts[18] = ((closureN)self_73741)->elts[18]; -c_731522.elts[19] = ((closureN)self_73741)->elts[19]; -c_731522.elts[20] = ((closureN)self_73741)->elts[20]; -c_731522.elts[21] = ((closureN)self_73741)->elts[21]; -c_731522.elts[22] = ((closureN)self_73741)->elts[22]; -c_731522.elts[23] = ((closureN)self_73741)->elts[23]; -c_731522.elts[24] = ((closureN)self_73741)->elts[24]; -c_731522.elts[25] = ((closureN)self_73741)->elts[25]; -c_731522.elts[26] = ((closureN)self_73741)->elts[26]; -c_731522.elts[27] = ((closureN)self_73741)->elts[27]; -c_731522.elts[28] = ((closureN)self_73741)->elts[28]; -c_731522.elts[29] = ((closureN)self_73741)->elts[29]; -c_731522.elts[30] = ((closureN)self_73741)->elts[30]; -c_731522.elts[31] = ((closureN)self_73741)->elts[31]; -c_731522.elts[32] = ((closureN)self_73741)->elts[32]; -c_731522.elts[33] = ((closureN)self_73741)->elts[33]; -c_731522.elts[34] = ((closureN)self_73741)->elts[34]; -c_731522.elts[35] = ((closureN)self_73741)->elts[35]; -c_731522.elts[36] = ((closureN)self_73741)->elts[36]; -c_731522.elts[37] = ((closureN)self_73741)->elts[37]; - -return_closcall1(data,(closure)&c_731522, Cyc_set_car(data, ((closureN)self_73741)->elts[33], r_73542));; -} - -static void __lambda_400(void *data, int argc, object self_73742, object r_73272) { - -closureN_type c_731524; -c_731524.hdr.mark = gc_color_red; - c_731524.hdr.grayed = 0; -c_731524.tag = closureN_tag; - c_731524.fn = (function_type)__lambda_391; -c_731524.num_args = 1; -c_731524.num_elt = 38; -c_731524.elts = (object *)alloca(sizeof(object) * 38); -c_731524.elts[0] = ((closureN)self_73742)->elts[0]; -c_731524.elts[1] = ((closureN)self_73742)->elts[1]; -c_731524.elts[2] = ((closureN)self_73742)->elts[2]; -c_731524.elts[3] = ((closureN)self_73742)->elts[3]; -c_731524.elts[4] = ((closureN)self_73742)->elts[4]; -c_731524.elts[5] = ((closureN)self_73742)->elts[5]; -c_731524.elts[6] = ((closureN)self_73742)->elts[6]; -c_731524.elts[7] = ((closureN)self_73742)->elts[7]; -c_731524.elts[8] = ((closureN)self_73742)->elts[8]; -c_731524.elts[9] = ((closureN)self_73742)->elts[9]; -c_731524.elts[10] = ((closureN)self_73742)->elts[10]; -c_731524.elts[11] = ((closureN)self_73742)->elts[11]; -c_731524.elts[12] = ((closureN)self_73742)->elts[12]; -c_731524.elts[13] = ((closureN)self_73742)->elts[13]; -c_731524.elts[14] = ((closureN)self_73742)->elts[14]; -c_731524.elts[15] = ((closureN)self_73742)->elts[15]; -c_731524.elts[16] = ((closureN)self_73742)->elts[16]; -c_731524.elts[17] = ((closureN)self_73742)->elts[17]; -c_731524.elts[18] = ((closureN)self_73742)->elts[18]; -c_731524.elts[19] = ((closureN)self_73742)->elts[19]; -c_731524.elts[20] = ((closureN)self_73742)->elts[20]; -c_731524.elts[21] = ((closureN)self_73742)->elts[21]; -c_731524.elts[22] = ((closureN)self_73742)->elts[22]; -c_731524.elts[23] = ((closureN)self_73742)->elts[23]; -c_731524.elts[24] = ((closureN)self_73742)->elts[24]; -c_731524.elts[25] = ((closureN)self_73742)->elts[25]; -c_731524.elts[26] = ((closureN)self_73742)->elts[26]; -c_731524.elts[27] = ((closureN)self_73742)->elts[27]; -c_731524.elts[28] = ((closureN)self_73742)->elts[28]; -c_731524.elts[29] = ((closureN)self_73742)->elts[29]; -c_731524.elts[30] = ((closureN)self_73742)->elts[30]; -c_731524.elts[31] = ((closureN)self_73742)->elts[31]; -c_731524.elts[32] = ((closureN)self_73742)->elts[32]; -c_731524.elts[33] = ((closureN)self_73742)->elts[33]; -c_731524.elts[34] = ((closureN)self_73742)->elts[34]; -c_731524.elts[35] = ((closureN)self_73742)->elts[35]; -c_731524.elts[36] = ((closureN)self_73742)->elts[36]; -c_731524.elts[37] = ((closureN)self_73742)->elts[37]; - - -closureN_type c_732987; -c_732987.hdr.mark = gc_color_red; - c_732987.hdr.grayed = 0; -c_732987.tag = closureN_tag; - c_732987.fn = (function_type)__lambda_399; -c_732987.num_args = 1; -c_732987.num_elt = 2; -c_732987.elts = (object *)alloca(sizeof(object) * 2); -c_732987.elts[0] = ((closureN)self_73742)->elts[32]; -c_732987.elts[1] = ((closureN)self_73742)->elts[33]; - -return_closcall1(data,(closure)&c_731524, &c_732987);; -} - -static void __lambda_399(void *data, int argc, object self_73743, object k_73536, object lst_73228) { - -closureN_type c_732989; -c_732989.hdr.mark = gc_color_red; - c_732989.hdr.grayed = 0; -c_732989.tag = closureN_tag; - c_732989.fn = (function_type)__lambda_398; -c_732989.num_args = 1; -c_732989.num_elt = 4; -c_732989.elts = (object *)alloca(sizeof(object) * 4); -c_732989.elts[0] = k_73536; -c_732989.elts[1] = lst_73228; -c_732989.elts[2] = ((closureN)self_73743)->elts[0]; -c_732989.elts[3] = ((closureN)self_73743)->elts[1]; - -return_closcall1(data,(closure)&c_732989, Cyc_is_null(lst_73228));; -} - -static void __lambda_398(void *data, int argc, object self_73744, object r_73537) { - if( !eq(boolean_f, r_73537) ){ - -closureN_type c_732991; -c_732991.hdr.mark = gc_color_red; - c_732991.hdr.grayed = 0; -c_732991.tag = closureN_tag; - c_732991.fn = (function_type)__lambda_392; -c_732991.num_args = 0; -c_732991.num_elt = 1; -c_732991.elts = (object *)alloca(sizeof(object) * 1); -c_732991.elts[0] = ((closureN)self_73744)->elts[0]; - -return_closcall0(data,(closure)&c_732991); -} else { - -closureN_type c_732995; -c_732995.hdr.mark = gc_color_red; - c_732995.hdr.grayed = 0; -c_732995.tag = closureN_tag; - c_732995.fn = (function_type)__lambda_397; -c_732995.num_args = 0; -c_732995.num_elt = 4; -c_732995.elts = (object *)alloca(sizeof(object) * 4); -c_732995.elts[0] = ((closureN)self_73744)->elts[0]; -c_732995.elts[1] = ((closureN)self_73744)->elts[1]; -c_732995.elts[2] = ((closureN)self_73744)->elts[2]; -c_732995.elts[3] = ((closureN)self_73744)->elts[3]; - -return_closcall0(data,(closure)&c_732995);} -; -} - -static void __lambda_397(void *data, int argc, object self_73745) { - -closureN_type c_732997; -c_732997.hdr.mark = gc_color_red; - c_732997.hdr.grayed = 0; -c_732997.tag = closureN_tag; - c_732997.fn = (function_type)__lambda_396; -c_732997.num_args = 1; -c_732997.num_elt = 4; -c_732997.elts = (object *)alloca(sizeof(object) * 4); -c_732997.elts[0] = ((closureN)self_73745)->elts[0]; -c_732997.elts[1] = ((closureN)self_73745)->elts[1]; -c_732997.elts[2] = ((closureN)self_73745)->elts[2]; -c_732997.elts[3] = ((closureN)self_73745)->elts[3]; - -return_closcall1(data,(closure)&c_732997, car(((closureN)self_73745)->elts[1]));; -} - -static void __lambda_396(void *data, int argc, object self_73746, object r_73541) { - -closureN_type c_733002; -c_733002.hdr.mark = gc_color_red; - c_733002.hdr.grayed = 0; -c_733002.tag = closureN_tag; - c_733002.fn = (function_type)__lambda_395; -c_733002.num_args = 1; -c_733002.num_elt = 3; -c_733002.elts = (object *)alloca(sizeof(object) * 3); -c_733002.elts[0] = ((closureN)self_73746)->elts[0]; -c_733002.elts[1] = ((closureN)self_73746)->elts[1]; -c_733002.elts[2] = ((closureN)self_73746)->elts[2]; - -return_closcall2(data, cell_get(((closureN)self_73746)->elts[3]), &c_733002, r_73541);; -} - -static void __lambda_395(void *data, int argc, object self_73747, object r_73538) { - -closureN_type c_733004; -c_733004.hdr.mark = gc_color_red; - c_733004.hdr.grayed = 0; -c_733004.tag = closureN_tag; - c_733004.fn = (function_type)__lambda_394; -c_733004.num_args = 1; -c_733004.num_elt = 3; -c_733004.elts = (object *)alloca(sizeof(object) * 3); -c_733004.elts[0] = ((closureN)self_73747)->elts[0]; -c_733004.elts[1] = r_73538; -c_733004.elts[2] = ((closureN)self_73747)->elts[2]; - -return_closcall1(data,(closure)&c_733004, cdr(((closureN)self_73747)->elts[1]));; -} - -static void __lambda_394(void *data, int argc, object self_73748, object r_73540) { - -closureN_type c_733009; -c_733009.hdr.mark = gc_color_red; - c_733009.hdr.grayed = 0; -c_733009.tag = closureN_tag; - c_733009.fn = (function_type)__lambda_393; -c_733009.num_args = 1; -c_733009.num_elt = 2; -c_733009.elts = (object *)alloca(sizeof(object) * 2); -c_733009.elts[0] = ((closureN)self_73748)->elts[0]; -c_733009.elts[1] = ((closureN)self_73748)->elts[1]; - -return_closcall2(data, cell_get(((closureN)self_73748)->elts[2]), &c_733009, r_73540);; -} - -static void __lambda_393(void *data, int argc, object self_73749, object r_73539) { - -make_cons(c_733014,((closureN)self_73749)->elts[1], r_73539); -return_closcall1(data, ((closureN)self_73749)->elts[0], &c_733014);; -} - -static void __lambda_392(void *data, int argc, object self_73750) { - return_closcall1(data, ((closureN)self_73750)->elts[0], nil);; -} - -static void __lambda_391(void *data, int argc, object self_73751, object r_73535) { - -closureN_type c_731526; -c_731526.hdr.mark = gc_color_red; - c_731526.hdr.grayed = 0; -c_731526.tag = closureN_tag; - c_731526.fn = (function_type)__lambda_390; -c_731526.num_args = 1; -c_731526.num_elt = 37; -c_731526.elts = (object *)alloca(sizeof(object) * 37); -c_731526.elts[0] = ((closureN)self_73751)->elts[0]; -c_731526.elts[1] = ((closureN)self_73751)->elts[1]; -c_731526.elts[2] = ((closureN)self_73751)->elts[2]; -c_731526.elts[3] = ((closureN)self_73751)->elts[3]; -c_731526.elts[4] = ((closureN)self_73751)->elts[4]; -c_731526.elts[5] = ((closureN)self_73751)->elts[5]; -c_731526.elts[6] = ((closureN)self_73751)->elts[6]; -c_731526.elts[7] = ((closureN)self_73751)->elts[7]; -c_731526.elts[8] = ((closureN)self_73751)->elts[8]; -c_731526.elts[9] = ((closureN)self_73751)->elts[9]; -c_731526.elts[10] = ((closureN)self_73751)->elts[10]; -c_731526.elts[11] = ((closureN)self_73751)->elts[11]; -c_731526.elts[12] = ((closureN)self_73751)->elts[12]; -c_731526.elts[13] = ((closureN)self_73751)->elts[13]; -c_731526.elts[14] = ((closureN)self_73751)->elts[14]; -c_731526.elts[15] = ((closureN)self_73751)->elts[15]; -c_731526.elts[16] = ((closureN)self_73751)->elts[16]; -c_731526.elts[17] = ((closureN)self_73751)->elts[17]; -c_731526.elts[18] = ((closureN)self_73751)->elts[18]; -c_731526.elts[19] = ((closureN)self_73751)->elts[19]; -c_731526.elts[20] = ((closureN)self_73751)->elts[20]; -c_731526.elts[21] = ((closureN)self_73751)->elts[21]; -c_731526.elts[22] = ((closureN)self_73751)->elts[22]; -c_731526.elts[23] = ((closureN)self_73751)->elts[23]; -c_731526.elts[24] = ((closureN)self_73751)->elts[24]; -c_731526.elts[25] = ((closureN)self_73751)->elts[25]; -c_731526.elts[26] = ((closureN)self_73751)->elts[26]; -c_731526.elts[27] = ((closureN)self_73751)->elts[27]; -c_731526.elts[28] = ((closureN)self_73751)->elts[28]; -c_731526.elts[29] = ((closureN)self_73751)->elts[29]; -c_731526.elts[30] = ((closureN)self_73751)->elts[30]; -c_731526.elts[31] = ((closureN)self_73751)->elts[31]; -c_731526.elts[32] = ((closureN)self_73751)->elts[33]; -c_731526.elts[33] = ((closureN)self_73751)->elts[34]; -c_731526.elts[34] = ((closureN)self_73751)->elts[35]; -c_731526.elts[35] = ((closureN)self_73751)->elts[36]; -c_731526.elts[36] = ((closureN)self_73751)->elts[37]; - -return_closcall1(data,(closure)&c_731526, Cyc_set_car(data, ((closureN)self_73751)->elts[32], r_73535));; -} - -static void __lambda_390(void *data, int argc, object self_73752, object r_73273) { - -closureN_type c_731528; -c_731528.hdr.mark = gc_color_red; - c_731528.hdr.grayed = 0; -c_731528.tag = closureN_tag; - c_731528.fn = (function_type)__lambda_381; -c_731528.num_args = 1; -c_731528.num_elt = 37; -c_731528.elts = (object *)alloca(sizeof(object) * 37); -c_731528.elts[0] = ((closureN)self_73752)->elts[0]; -c_731528.elts[1] = ((closureN)self_73752)->elts[1]; -c_731528.elts[2] = ((closureN)self_73752)->elts[2]; -c_731528.elts[3] = ((closureN)self_73752)->elts[3]; -c_731528.elts[4] = ((closureN)self_73752)->elts[4]; -c_731528.elts[5] = ((closureN)self_73752)->elts[5]; -c_731528.elts[6] = ((closureN)self_73752)->elts[6]; -c_731528.elts[7] = ((closureN)self_73752)->elts[7]; -c_731528.elts[8] = ((closureN)self_73752)->elts[8]; -c_731528.elts[9] = ((closureN)self_73752)->elts[9]; -c_731528.elts[10] = ((closureN)self_73752)->elts[10]; -c_731528.elts[11] = ((closureN)self_73752)->elts[11]; -c_731528.elts[12] = ((closureN)self_73752)->elts[12]; -c_731528.elts[13] = ((closureN)self_73752)->elts[13]; -c_731528.elts[14] = ((closureN)self_73752)->elts[14]; -c_731528.elts[15] = ((closureN)self_73752)->elts[15]; -c_731528.elts[16] = ((closureN)self_73752)->elts[16]; -c_731528.elts[17] = ((closureN)self_73752)->elts[17]; -c_731528.elts[18] = ((closureN)self_73752)->elts[18]; -c_731528.elts[19] = ((closureN)self_73752)->elts[19]; -c_731528.elts[20] = ((closureN)self_73752)->elts[20]; -c_731528.elts[21] = ((closureN)self_73752)->elts[21]; -c_731528.elts[22] = ((closureN)self_73752)->elts[22]; -c_731528.elts[23] = ((closureN)self_73752)->elts[23]; -c_731528.elts[24] = ((closureN)self_73752)->elts[24]; -c_731528.elts[25] = ((closureN)self_73752)->elts[25]; -c_731528.elts[26] = ((closureN)self_73752)->elts[26]; -c_731528.elts[27] = ((closureN)self_73752)->elts[27]; -c_731528.elts[28] = ((closureN)self_73752)->elts[28]; -c_731528.elts[29] = ((closureN)self_73752)->elts[29]; -c_731528.elts[30] = ((closureN)self_73752)->elts[30]; -c_731528.elts[31] = ((closureN)self_73752)->elts[31]; -c_731528.elts[32] = ((closureN)self_73752)->elts[32]; -c_731528.elts[33] = ((closureN)self_73752)->elts[33]; -c_731528.elts[34] = ((closureN)self_73752)->elts[34]; -c_731528.elts[35] = ((closureN)self_73752)->elts[35]; -c_731528.elts[36] = ((closureN)self_73752)->elts[36]; - - -closureN_type c_732946; -c_732946.hdr.mark = gc_color_red; - c_732946.hdr.grayed = 0; -c_732946.tag = closureN_tag; - c_732946.fn = (function_type)__lambda_389; -c_732946.num_args = 1; -c_732946.num_elt = 2; -c_732946.elts = (object *)alloca(sizeof(object) * 2); -c_732946.elts[0] = ((closureN)self_73752)->elts[7]; -c_732946.elts[1] = ((closureN)self_73752)->elts[36]; - -return_closcall1(data,(closure)&c_731528, &c_732946);; -} - -static void __lambda_389(void *data, int argc, object self_73753, object k_73529, object term_73227) { - -closureN_type c_732948; -c_732948.hdr.mark = gc_color_red; - c_732948.hdr.grayed = 0; -c_732948.tag = closureN_tag; - c_732948.fn = (function_type)__lambda_388; -c_732948.num_args = 1; -c_732948.num_elt = 4; -c_732948.elts = (object *)alloca(sizeof(object) * 4); -c_732948.elts[0] = ((closureN)self_73753)->elts[0]; -c_732948.elts[1] = k_73529; -c_732948.elts[2] = term_73227; -c_732948.elts[3] = ((closureN)self_73753)->elts[1]; - -return_closcall1(data,(closure)&c_732948, Cyc_is_cons(term_73227));; -} - -static void __lambda_388(void *data, int argc, object self_73754, object r_73530) { - if( !eq(boolean_f, r_73530) ){ - -closureN_type c_732950; -c_732950.hdr.mark = gc_color_red; - c_732950.hdr.grayed = 0; -c_732950.tag = closureN_tag; - c_732950.fn = (function_type)__lambda_386; -c_732950.num_args = 0; -c_732950.num_elt = 4; -c_732950.elts = (object *)alloca(sizeof(object) * 4); -c_732950.elts[0] = ((closureN)self_73754)->elts[0]; -c_732950.elts[1] = ((closureN)self_73754)->elts[1]; -c_732950.elts[2] = ((closureN)self_73754)->elts[2]; -c_732950.elts[3] = ((closureN)self_73754)->elts[3]; - -return_closcall0(data,(closure)&c_732950); -} else { - -closureN_type c_732978; -c_732978.hdr.mark = gc_color_red; - c_732978.hdr.grayed = 0; -c_732978.tag = closureN_tag; - c_732978.fn = (function_type)__lambda_387; -c_732978.num_args = 0; -c_732978.num_elt = 2; -c_732978.elts = (object *)alloca(sizeof(object) * 2); -c_732978.elts[0] = ((closureN)self_73754)->elts[1]; -c_732978.elts[1] = ((closureN)self_73754)->elts[2]; - -return_closcall0(data,(closure)&c_732978);} -; -} - -static void __lambda_387(void *data, int argc, object self_73755) { - return_closcall1(data, ((closureN)self_73755)->elts[0], ((closureN)self_73755)->elts[1]);; -} - -static void __lambda_386(void *data, int argc, object self_73756) { - -closureN_type c_732952; -c_732952.hdr.mark = gc_color_red; - c_732952.hdr.grayed = 0; -c_732952.tag = closureN_tag; - c_732952.fn = (function_type)__lambda_385; -c_732952.num_args = 1; -c_732952.num_elt = 4; -c_732952.elts = (object *)alloca(sizeof(object) * 4); -c_732952.elts[0] = ((closureN)self_73756)->elts[0]; -c_732952.elts[1] = ((closureN)self_73756)->elts[1]; -c_732952.elts[2] = ((closureN)self_73756)->elts[2]; -c_732952.elts[3] = ((closureN)self_73756)->elts[3]; - -return_closcall1(data,(closure)&c_732952, car(((closureN)self_73756)->elts[2]));; -} - -static void __lambda_385(void *data, int argc, object self_73757, object r_73534) { - -closureN_type c_732957; -c_732957.hdr.mark = gc_color_red; - c_732957.hdr.grayed = 0; -c_732957.tag = closureN_tag; - c_732957.fn = (function_type)__lambda_384; -c_732957.num_args = 1; -c_732957.num_elt = 3; -c_732957.elts = (object *)alloca(sizeof(object) * 3); -c_732957.elts[0] = ((closureN)self_73757)->elts[1]; -c_732957.elts[1] = ((closureN)self_73757)->elts[2]; -c_732957.elts[2] = ((closureN)self_73757)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73757)->elts[0]), &c_732957, r_73534);; -} - -static void __lambda_384(void *data, int argc, object self_73758, object r_73531) { - -closureN_type c_732959; -c_732959.hdr.mark = gc_color_red; - c_732959.hdr.grayed = 0; -c_732959.tag = closureN_tag; - c_732959.fn = (function_type)__lambda_383; -c_732959.num_args = 1; -c_732959.num_elt = 3; -c_732959.elts = (object *)alloca(sizeof(object) * 3); -c_732959.elts[0] = ((closureN)self_73758)->elts[0]; -c_732959.elts[1] = r_73531; -c_732959.elts[2] = ((closureN)self_73758)->elts[2]; - -return_closcall1(data,(closure)&c_732959, cdr(((closureN)self_73758)->elts[1]));; -} - -static void __lambda_383(void *data, int argc, object self_73759, object r_73533) { - -closureN_type c_732961; -c_732961.hdr.mark = gc_color_red; - c_732961.hdr.grayed = 0; -c_732961.tag = closureN_tag; - c_732961.fn = (function_type)__lambda_382; -c_732961.num_args = 1; -c_732961.num_elt = 2; -c_732961.elts = (object *)alloca(sizeof(object) * 2); -c_732961.elts[0] = ((closureN)self_73759)->elts[0]; -c_732961.elts[1] = ((closureN)self_73759)->elts[1]; - -return_closcall3(data, __glo_map_scheme_base, &c_732961, cell_get(((closureN)self_73759)->elts[2]), r_73533);; -} - -static void __lambda_382(void *data, int argc, object self_73760, object r_73532) { - -make_cons(c_732966,((closureN)self_73760)->elts[1], r_73532); -return_closcall1(data, ((closureN)self_73760)->elts[0], &c_732966);; -} - -static void __lambda_381(void *data, int argc, object self_73761, object r_73528) { - -closureN_type c_731530; -c_731530.hdr.mark = gc_color_red; - c_731530.hdr.grayed = 0; -c_731530.tag = closureN_tag; - c_731530.fn = (function_type)__lambda_380; -c_731530.num_args = 1; -c_731530.num_elt = 36; -c_731530.elts = (object *)alloca(sizeof(object) * 36); -c_731530.elts[0] = ((closureN)self_73761)->elts[0]; -c_731530.elts[1] = ((closureN)self_73761)->elts[1]; -c_731530.elts[2] = ((closureN)self_73761)->elts[2]; -c_731530.elts[3] = ((closureN)self_73761)->elts[3]; -c_731530.elts[4] = ((closureN)self_73761)->elts[4]; -c_731530.elts[5] = ((closureN)self_73761)->elts[5]; -c_731530.elts[6] = ((closureN)self_73761)->elts[6]; -c_731530.elts[7] = ((closureN)self_73761)->elts[7]; -c_731530.elts[8] = ((closureN)self_73761)->elts[8]; -c_731530.elts[9] = ((closureN)self_73761)->elts[9]; -c_731530.elts[10] = ((closureN)self_73761)->elts[10]; -c_731530.elts[11] = ((closureN)self_73761)->elts[11]; -c_731530.elts[12] = ((closureN)self_73761)->elts[12]; -c_731530.elts[13] = ((closureN)self_73761)->elts[13]; -c_731530.elts[14] = ((closureN)self_73761)->elts[14]; -c_731530.elts[15] = ((closureN)self_73761)->elts[15]; -c_731530.elts[16] = ((closureN)self_73761)->elts[16]; -c_731530.elts[17] = ((closureN)self_73761)->elts[17]; -c_731530.elts[18] = ((closureN)self_73761)->elts[18]; -c_731530.elts[19] = ((closureN)self_73761)->elts[19]; -c_731530.elts[20] = ((closureN)self_73761)->elts[20]; -c_731530.elts[21] = ((closureN)self_73761)->elts[21]; -c_731530.elts[22] = ((closureN)self_73761)->elts[22]; -c_731530.elts[23] = ((closureN)self_73761)->elts[23]; -c_731530.elts[24] = ((closureN)self_73761)->elts[24]; -c_731530.elts[25] = ((closureN)self_73761)->elts[25]; -c_731530.elts[26] = ((closureN)self_73761)->elts[26]; -c_731530.elts[27] = ((closureN)self_73761)->elts[27]; -c_731530.elts[28] = ((closureN)self_73761)->elts[28]; -c_731530.elts[29] = ((closureN)self_73761)->elts[29]; -c_731530.elts[30] = ((closureN)self_73761)->elts[30]; -c_731530.elts[31] = ((closureN)self_73761)->elts[31]; -c_731530.elts[32] = ((closureN)self_73761)->elts[32]; -c_731530.elts[33] = ((closureN)self_73761)->elts[33]; -c_731530.elts[34] = ((closureN)self_73761)->elts[34]; -c_731530.elts[35] = ((closureN)self_73761)->elts[35]; - -return_closcall1(data,(closure)&c_731530, Cyc_set_car(data, ((closureN)self_73761)->elts[36], r_73528));; -} - -static void __lambda_380(void *data, int argc, object self_73762, object r_73274) { - -closureN_type c_731532; -c_731532.hdr.mark = gc_color_red; - c_731532.hdr.grayed = 0; -c_731532.tag = closureN_tag; - c_731532.fn = (function_type)__lambda_377; -c_731532.num_args = 1; -c_731532.num_elt = 36; -c_731532.elts = (object *)alloca(sizeof(object) * 36); -c_731532.elts[0] = ((closureN)self_73762)->elts[0]; -c_731532.elts[1] = ((closureN)self_73762)->elts[1]; -c_731532.elts[2] = ((closureN)self_73762)->elts[2]; -c_731532.elts[3] = ((closureN)self_73762)->elts[3]; -c_731532.elts[4] = ((closureN)self_73762)->elts[4]; -c_731532.elts[5] = ((closureN)self_73762)->elts[5]; -c_731532.elts[6] = ((closureN)self_73762)->elts[6]; -c_731532.elts[7] = ((closureN)self_73762)->elts[7]; -c_731532.elts[8] = ((closureN)self_73762)->elts[8]; -c_731532.elts[9] = ((closureN)self_73762)->elts[9]; -c_731532.elts[10] = ((closureN)self_73762)->elts[10]; -c_731532.elts[11] = ((closureN)self_73762)->elts[11]; -c_731532.elts[12] = ((closureN)self_73762)->elts[12]; -c_731532.elts[13] = ((closureN)self_73762)->elts[13]; -c_731532.elts[14] = ((closureN)self_73762)->elts[14]; -c_731532.elts[15] = ((closureN)self_73762)->elts[15]; -c_731532.elts[16] = ((closureN)self_73762)->elts[16]; -c_731532.elts[17] = ((closureN)self_73762)->elts[17]; -c_731532.elts[18] = ((closureN)self_73762)->elts[18]; -c_731532.elts[19] = ((closureN)self_73762)->elts[19]; -c_731532.elts[20] = ((closureN)self_73762)->elts[20]; -c_731532.elts[21] = ((closureN)self_73762)->elts[21]; -c_731532.elts[22] = ((closureN)self_73762)->elts[22]; -c_731532.elts[23] = ((closureN)self_73762)->elts[23]; -c_731532.elts[24] = ((closureN)self_73762)->elts[24]; -c_731532.elts[25] = ((closureN)self_73762)->elts[25]; -c_731532.elts[26] = ((closureN)self_73762)->elts[26]; -c_731532.elts[27] = ((closureN)self_73762)->elts[27]; -c_731532.elts[28] = ((closureN)self_73762)->elts[28]; -c_731532.elts[29] = ((closureN)self_73762)->elts[29]; -c_731532.elts[30] = ((closureN)self_73762)->elts[30]; -c_731532.elts[31] = ((closureN)self_73762)->elts[31]; -c_731532.elts[32] = ((closureN)self_73762)->elts[32]; -c_731532.elts[33] = ((closureN)self_73762)->elts[33]; -c_731532.elts[34] = ((closureN)self_73762)->elts[34]; -c_731532.elts[35] = ((closureN)self_73762)->elts[35]; - - -closureN_type c_732931; -c_732931.hdr.mark = gc_color_red; - c_732931.hdr.grayed = 0; -c_732931.tag = closureN_tag; - c_732931.fn = (function_type)__lambda_379; -c_732931.num_args = 3; -c_732931.num_elt = 2; -c_732931.elts = (object *)alloca(sizeof(object) * 2); -c_732931.elts[0] = ((closureN)self_73762)->elts[14]; -c_732931.elts[1] = ((closureN)self_73762)->elts[21]; - -return_closcall1(data,(closure)&c_731532, &c_732931);; -} - -static void __lambda_379(void *data, int argc, object self_73763, object k_73526, object sym_73226, object property_73225, object value_73224) { - -closureN_type c_732936; -c_732936.hdr.mark = gc_color_red; - c_732936.hdr.grayed = 0; -c_732936.tag = closureN_tag; - c_732936.fn = (function_type)__lambda_378; -c_732936.num_args = 1; -c_732936.num_elt = 3; -c_732936.elts = (object *)alloca(sizeof(object) * 3); -c_732936.elts[0] = k_73526; -c_732936.elts[1] = ((closureN)self_73763)->elts[0]; -c_732936.elts[2] = value_73224; - -return_closcall2(data, cell_get(((closureN)self_73763)->elts[1]), &c_732936, sym_73226);; -} - -static void __lambda_378(void *data, int argc, object self_73764, object r_73527) { - return_closcall3(data, cell_get(((closureN)self_73764)->elts[1]), ((closureN)self_73764)->elts[0], r_73527, ((closureN)self_73764)->elts[2]);; -} - -static void __lambda_377(void *data, int argc, object self_73765, object r_73525) { - -closureN_type c_731534; -c_731534.hdr.mark = gc_color_red; - c_731534.hdr.grayed = 0; -c_731534.tag = closureN_tag; - c_731534.fn = (function_type)__lambda_376; -c_731534.num_args = 1; -c_731534.num_elt = 35; -c_731534.elts = (object *)alloca(sizeof(object) * 35); -c_731534.elts[0] = ((closureN)self_73765)->elts[0]; -c_731534.elts[1] = ((closureN)self_73765)->elts[1]; -c_731534.elts[2] = ((closureN)self_73765)->elts[2]; -c_731534.elts[3] = ((closureN)self_73765)->elts[3]; -c_731534.elts[4] = ((closureN)self_73765)->elts[4]; -c_731534.elts[5] = ((closureN)self_73765)->elts[5]; -c_731534.elts[6] = ((closureN)self_73765)->elts[6]; -c_731534.elts[7] = ((closureN)self_73765)->elts[7]; -c_731534.elts[8] = ((closureN)self_73765)->elts[8]; -c_731534.elts[9] = ((closureN)self_73765)->elts[9]; -c_731534.elts[10] = ((closureN)self_73765)->elts[10]; -c_731534.elts[11] = ((closureN)self_73765)->elts[11]; -c_731534.elts[12] = ((closureN)self_73765)->elts[12]; -c_731534.elts[13] = ((closureN)self_73765)->elts[14]; -c_731534.elts[14] = ((closureN)self_73765)->elts[15]; -c_731534.elts[15] = ((closureN)self_73765)->elts[16]; -c_731534.elts[16] = ((closureN)self_73765)->elts[17]; -c_731534.elts[17] = ((closureN)self_73765)->elts[18]; -c_731534.elts[18] = ((closureN)self_73765)->elts[19]; -c_731534.elts[19] = ((closureN)self_73765)->elts[20]; -c_731534.elts[20] = ((closureN)self_73765)->elts[21]; -c_731534.elts[21] = ((closureN)self_73765)->elts[22]; -c_731534.elts[22] = ((closureN)self_73765)->elts[23]; -c_731534.elts[23] = ((closureN)self_73765)->elts[24]; -c_731534.elts[24] = ((closureN)self_73765)->elts[25]; -c_731534.elts[25] = ((closureN)self_73765)->elts[26]; -c_731534.elts[26] = ((closureN)self_73765)->elts[27]; -c_731534.elts[27] = ((closureN)self_73765)->elts[28]; -c_731534.elts[28] = ((closureN)self_73765)->elts[29]; -c_731534.elts[29] = ((closureN)self_73765)->elts[30]; -c_731534.elts[30] = ((closureN)self_73765)->elts[31]; -c_731534.elts[31] = ((closureN)self_73765)->elts[32]; -c_731534.elts[32] = ((closureN)self_73765)->elts[33]; -c_731534.elts[33] = ((closureN)self_73765)->elts[34]; -c_731534.elts[34] = ((closureN)self_73765)->elts[35]; - -return_closcall1(data,(closure)&c_731534, Cyc_set_car(data, ((closureN)self_73765)->elts[13], r_73525));; -} - -static void __lambda_376(void *data, int argc, object self_73766, object r_73275) { - -closureN_type c_731536; -c_731536.hdr.mark = gc_color_red; - c_731536.hdr.grayed = 0; -c_731536.tag = closureN_tag; - c_731536.fn = (function_type)__lambda_373; -c_731536.num_args = 1; -c_731536.num_elt = 35; -c_731536.elts = (object *)alloca(sizeof(object) * 35); -c_731536.elts[0] = ((closureN)self_73766)->elts[0]; -c_731536.elts[1] = ((closureN)self_73766)->elts[1]; -c_731536.elts[2] = ((closureN)self_73766)->elts[2]; -c_731536.elts[3] = ((closureN)self_73766)->elts[3]; -c_731536.elts[4] = ((closureN)self_73766)->elts[4]; -c_731536.elts[5] = ((closureN)self_73766)->elts[5]; -c_731536.elts[6] = ((closureN)self_73766)->elts[6]; -c_731536.elts[7] = ((closureN)self_73766)->elts[7]; -c_731536.elts[8] = ((closureN)self_73766)->elts[8]; -c_731536.elts[9] = ((closureN)self_73766)->elts[9]; -c_731536.elts[10] = ((closureN)self_73766)->elts[10]; -c_731536.elts[11] = ((closureN)self_73766)->elts[11]; -c_731536.elts[12] = ((closureN)self_73766)->elts[12]; -c_731536.elts[13] = ((closureN)self_73766)->elts[13]; -c_731536.elts[14] = ((closureN)self_73766)->elts[14]; -c_731536.elts[15] = ((closureN)self_73766)->elts[15]; -c_731536.elts[16] = ((closureN)self_73766)->elts[16]; -c_731536.elts[17] = ((closureN)self_73766)->elts[17]; -c_731536.elts[18] = ((closureN)self_73766)->elts[18]; -c_731536.elts[19] = ((closureN)self_73766)->elts[19]; -c_731536.elts[20] = ((closureN)self_73766)->elts[20]; -c_731536.elts[21] = ((closureN)self_73766)->elts[21]; -c_731536.elts[22] = ((closureN)self_73766)->elts[22]; -c_731536.elts[23] = ((closureN)self_73766)->elts[23]; -c_731536.elts[24] = ((closureN)self_73766)->elts[24]; -c_731536.elts[25] = ((closureN)self_73766)->elts[25]; -c_731536.elts[26] = ((closureN)self_73766)->elts[26]; -c_731536.elts[27] = ((closureN)self_73766)->elts[27]; -c_731536.elts[28] = ((closureN)self_73766)->elts[28]; -c_731536.elts[29] = ((closureN)self_73766)->elts[29]; -c_731536.elts[30] = ((closureN)self_73766)->elts[30]; -c_731536.elts[31] = ((closureN)self_73766)->elts[31]; -c_731536.elts[32] = ((closureN)self_73766)->elts[32]; -c_731536.elts[33] = ((closureN)self_73766)->elts[33]; -c_731536.elts[34] = ((closureN)self_73766)->elts[34]; - - -closureN_type c_732917; -c_732917.hdr.mark = gc_color_red; - c_732917.hdr.grayed = 0; -c_732917.tag = closureN_tag; - c_732917.fn = (function_type)__lambda_375; -c_732917.num_args = 2; -c_732917.num_elt = 2; -c_732917.elts = (object *)alloca(sizeof(object) * 2); -c_732917.elts[0] = ((closureN)self_73766)->elts[6]; -c_732917.elts[1] = ((closureN)self_73766)->elts[20]; - -return_closcall1(data,(closure)&c_731536, &c_732917);; -} - -static void __lambda_375(void *data, int argc, object self_73767, object k_73523, object sym_73223, object property_73222) { - -closureN_type c_732922; -c_732922.hdr.mark = gc_color_red; - c_732922.hdr.grayed = 0; -c_732922.tag = closureN_tag; - c_732922.fn = (function_type)__lambda_374; -c_732922.num_args = 1; -c_732922.num_elt = 2; -c_732922.elts = (object *)alloca(sizeof(object) * 2); -c_732922.elts[0] = ((closureN)self_73767)->elts[0]; -c_732922.elts[1] = k_73523; - -return_closcall2(data, cell_get(((closureN)self_73767)->elts[1]), &c_732922, sym_73223);; -} - -static void __lambda_374(void *data, int argc, object self_73768, object r_73524) { - return_closcall2(data, cell_get(((closureN)self_73768)->elts[0]), ((closureN)self_73768)->elts[1], r_73524);; -} - -static void __lambda_373(void *data, int argc, object self_73769, object r_73522) { - -closureN_type c_731538; -c_731538.hdr.mark = gc_color_red; - c_731538.hdr.grayed = 0; -c_731538.tag = closureN_tag; - c_731538.fn = (function_type)__lambda_372; -c_731538.num_args = 1; -c_731538.num_elt = 34; -c_731538.elts = (object *)alloca(sizeof(object) * 34); -c_731538.elts[0] = ((closureN)self_73769)->elts[0]; -c_731538.elts[1] = ((closureN)self_73769)->elts[1]; -c_731538.elts[2] = ((closureN)self_73769)->elts[2]; -c_731538.elts[3] = ((closureN)self_73769)->elts[3]; -c_731538.elts[4] = ((closureN)self_73769)->elts[4]; -c_731538.elts[5] = ((closureN)self_73769)->elts[6]; -c_731538.elts[6] = ((closureN)self_73769)->elts[7]; -c_731538.elts[7] = ((closureN)self_73769)->elts[8]; -c_731538.elts[8] = ((closureN)self_73769)->elts[9]; -c_731538.elts[9] = ((closureN)self_73769)->elts[10]; -c_731538.elts[10] = ((closureN)self_73769)->elts[11]; -c_731538.elts[11] = ((closureN)self_73769)->elts[12]; -c_731538.elts[12] = ((closureN)self_73769)->elts[13]; -c_731538.elts[13] = ((closureN)self_73769)->elts[14]; -c_731538.elts[14] = ((closureN)self_73769)->elts[15]; -c_731538.elts[15] = ((closureN)self_73769)->elts[16]; -c_731538.elts[16] = ((closureN)self_73769)->elts[17]; -c_731538.elts[17] = ((closureN)self_73769)->elts[18]; -c_731538.elts[18] = ((closureN)self_73769)->elts[19]; -c_731538.elts[19] = ((closureN)self_73769)->elts[20]; -c_731538.elts[20] = ((closureN)self_73769)->elts[21]; -c_731538.elts[21] = ((closureN)self_73769)->elts[22]; -c_731538.elts[22] = ((closureN)self_73769)->elts[23]; -c_731538.elts[23] = ((closureN)self_73769)->elts[24]; -c_731538.elts[24] = ((closureN)self_73769)->elts[25]; -c_731538.elts[25] = ((closureN)self_73769)->elts[26]; -c_731538.elts[26] = ((closureN)self_73769)->elts[27]; -c_731538.elts[27] = ((closureN)self_73769)->elts[28]; -c_731538.elts[28] = ((closureN)self_73769)->elts[29]; -c_731538.elts[29] = ((closureN)self_73769)->elts[30]; -c_731538.elts[30] = ((closureN)self_73769)->elts[31]; -c_731538.elts[31] = ((closureN)self_73769)->elts[32]; -c_731538.elts[32] = ((closureN)self_73769)->elts[33]; -c_731538.elts[33] = ((closureN)self_73769)->elts[34]; - -return_closcall1(data,(closure)&c_731538, Cyc_set_car(data, ((closureN)self_73769)->elts[5], r_73522));; -} - -static void __lambda_372(void *data, int argc, object self_73770, object r_73276) { - -closureN_type c_731540; -c_731540.hdr.mark = gc_color_red; - c_731540.hdr.grayed = 0; -c_731540.tag = closureN_tag; - c_731540.fn = (function_type)__lambda_365; -c_731540.num_args = 1; -c_731540.num_elt = 34; -c_731540.elts = (object *)alloca(sizeof(object) * 34); -c_731540.elts[0] = ((closureN)self_73770)->elts[0]; -c_731540.elts[1] = ((closureN)self_73770)->elts[1]; -c_731540.elts[2] = ((closureN)self_73770)->elts[2]; -c_731540.elts[3] = ((closureN)self_73770)->elts[3]; -c_731540.elts[4] = ((closureN)self_73770)->elts[4]; -c_731540.elts[5] = ((closureN)self_73770)->elts[5]; -c_731540.elts[6] = ((closureN)self_73770)->elts[6]; -c_731540.elts[7] = ((closureN)self_73770)->elts[7]; -c_731540.elts[8] = ((closureN)self_73770)->elts[8]; -c_731540.elts[9] = ((closureN)self_73770)->elts[9]; -c_731540.elts[10] = ((closureN)self_73770)->elts[10]; -c_731540.elts[11] = ((closureN)self_73770)->elts[11]; -c_731540.elts[12] = ((closureN)self_73770)->elts[12]; -c_731540.elts[13] = ((closureN)self_73770)->elts[13]; -c_731540.elts[14] = ((closureN)self_73770)->elts[14]; -c_731540.elts[15] = ((closureN)self_73770)->elts[15]; -c_731540.elts[16] = ((closureN)self_73770)->elts[16]; -c_731540.elts[17] = ((closureN)self_73770)->elts[17]; -c_731540.elts[18] = ((closureN)self_73770)->elts[18]; -c_731540.elts[19] = ((closureN)self_73770)->elts[19]; -c_731540.elts[20] = ((closureN)self_73770)->elts[20]; -c_731540.elts[21] = ((closureN)self_73770)->elts[21]; -c_731540.elts[22] = ((closureN)self_73770)->elts[22]; -c_731540.elts[23] = ((closureN)self_73770)->elts[23]; -c_731540.elts[24] = ((closureN)self_73770)->elts[24]; -c_731540.elts[25] = ((closureN)self_73770)->elts[25]; -c_731540.elts[26] = ((closureN)self_73770)->elts[26]; -c_731540.elts[27] = ((closureN)self_73770)->elts[27]; -c_731540.elts[28] = ((closureN)self_73770)->elts[28]; -c_731540.elts[29] = ((closureN)self_73770)->elts[29]; -c_731540.elts[30] = ((closureN)self_73770)->elts[30]; -c_731540.elts[31] = ((closureN)self_73770)->elts[31]; -c_731540.elts[32] = ((closureN)self_73770)->elts[32]; -c_731540.elts[33] = ((closureN)self_73770)->elts[33]; - - -closureN_type c_732874; -c_732874.hdr.mark = gc_color_red; - c_732874.hdr.grayed = 0; -c_732874.tag = closureN_tag; - c_732874.fn = (function_type)__lambda_371; -c_732874.num_args = 1; -c_732874.num_elt = 2; -c_732874.elts = (object *)alloca(sizeof(object) * 2); -c_732874.elts[0] = ((closureN)self_73770)->elts[0]; -c_732874.elts[1] = ((closureN)self_73770)->elts[8]; - -return_closcall1(data,(closure)&c_731540, &c_732874);; -} - -static void __lambda_371(void *data, int argc, object self_73771, object k_73516, object sym_73219) { - -closureN_type c_732876; -c_732876.hdr.mark = gc_color_red; - c_732876.hdr.grayed = 0; -c_732876.tag = closureN_tag; - c_732876.fn = (function_type)__lambda_370; -c_732876.num_args = 1; -c_732876.num_elt = 4; -c_732876.elts = (object *)alloca(sizeof(object) * 4); -c_732876.elts[0] = ((closureN)self_73771)->elts[0]; -c_732876.elts[1] = k_73516; -c_732876.elts[2] = ((closureN)self_73771)->elts[1]; -c_732876.elts[3] = sym_73219; - -return_closcall1(data,(closure)&c_732876, assq(data, sym_73219, cell_get(((closureN)self_73771)->elts[0])));; -} - -static void __lambda_370(void *data, int argc, object self_73772, object x_73220) { - if( !eq(boolean_f, x_73220) ){ - return_closcall1(data, ((closureN)self_73772)->elts[1], cdr(x_73220)); -} else { - -closureN_type c_732885; -c_732885.hdr.mark = gc_color_red; - c_732885.hdr.grayed = 0; -c_732885.tag = closureN_tag; - c_732885.fn = (function_type)__lambda_369; -c_732885.num_args = 1; -c_732885.num_elt = 3; -c_732885.elts = (object *)alloca(sizeof(object) * 3); -c_732885.elts[0] = ((closureN)self_73772)->elts[0]; -c_732885.elts[1] = ((closureN)self_73772)->elts[1]; -c_732885.elts[2] = ((closureN)self_73772)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73772)->elts[2]), &c_732885, ((closureN)self_73772)->elts[3]);} -; -} - -static void __lambda_369(void *data, int argc, object self_73773, object r_73221) { - -closureN_type c_732887; -c_732887.hdr.mark = gc_color_red; - c_732887.hdr.grayed = 0; -c_732887.tag = closureN_tag; - c_732887.fn = (function_type)__lambda_368; -c_732887.num_args = 1; -c_732887.num_elt = 3; -c_732887.elts = (object *)alloca(sizeof(object) * 3); -c_732887.elts[0] = ((closureN)self_73773)->elts[0]; -c_732887.elts[1] = ((closureN)self_73773)->elts[1]; -c_732887.elts[2] = r_73221; - - -make_cons(c_732906,((closureN)self_73773)->elts[2], r_73221); -return_closcall1(data,(closure)&c_732887, &c_732906);; -} - -static void __lambda_368(void *data, int argc, object self_73774, object r_73521) { - -closureN_type c_732889; -c_732889.hdr.mark = gc_color_red; - c_732889.hdr.grayed = 0; -c_732889.tag = closureN_tag; - c_732889.fn = (function_type)__lambda_367; -c_732889.num_args = 1; -c_732889.num_elt = 3; -c_732889.elts = (object *)alloca(sizeof(object) * 3); -c_732889.elts[0] = ((closureN)self_73774)->elts[0]; -c_732889.elts[1] = ((closureN)self_73774)->elts[1]; -c_732889.elts[2] = ((closureN)self_73774)->elts[2]; - - -make_cons(c_732900,r_73521, cell_get(((closureN)self_73774)->elts[0])); -return_closcall1(data,(closure)&c_732889, &c_732900);; -} - -static void __lambda_367(void *data, int argc, object self_73775, object r_73520) { - -closureN_type c_732891; -c_732891.hdr.mark = gc_color_red; - c_732891.hdr.grayed = 0; -c_732891.tag = closureN_tag; - c_732891.fn = (function_type)__lambda_366; -c_732891.num_args = 1; -c_732891.num_elt = 2; -c_732891.elts = (object *)alloca(sizeof(object) * 2); -c_732891.elts[0] = ((closureN)self_73775)->elts[1]; -c_732891.elts[1] = ((closureN)self_73775)->elts[2]; - -return_closcall1(data,(closure)&c_732891, Cyc_set_car(data, ((closureN)self_73775)->elts[0], r_73520));; -} - -static void __lambda_366(void *data, int argc, object self_73776, object r_73519) { - return_closcall1(data, ((closureN)self_73776)->elts[0], ((closureN)self_73776)->elts[1]);; -} - -static void __lambda_365(void *data, int argc, object self_73777, object r_73515) { - -closureN_type c_731542; -c_731542.hdr.mark = gc_color_red; - c_731542.hdr.grayed = 0; -c_731542.tag = closureN_tag; - c_731542.fn = (function_type)__lambda_364; -c_731542.num_args = 1; -c_731542.num_elt = 34; -c_731542.elts = (object *)alloca(sizeof(object) * 34); -c_731542.elts[0] = ((closureN)self_73777)->elts[0]; -c_731542.elts[1] = ((closureN)self_73777)->elts[1]; -c_731542.elts[2] = ((closureN)self_73777)->elts[2]; -c_731542.elts[3] = ((closureN)self_73777)->elts[3]; -c_731542.elts[4] = ((closureN)self_73777)->elts[4]; -c_731542.elts[5] = ((closureN)self_73777)->elts[5]; -c_731542.elts[6] = ((closureN)self_73777)->elts[6]; -c_731542.elts[7] = ((closureN)self_73777)->elts[7]; -c_731542.elts[8] = ((closureN)self_73777)->elts[8]; -c_731542.elts[9] = ((closureN)self_73777)->elts[9]; -c_731542.elts[10] = ((closureN)self_73777)->elts[10]; -c_731542.elts[11] = ((closureN)self_73777)->elts[11]; -c_731542.elts[12] = ((closureN)self_73777)->elts[12]; -c_731542.elts[13] = ((closureN)self_73777)->elts[13]; -c_731542.elts[14] = ((closureN)self_73777)->elts[14]; -c_731542.elts[15] = ((closureN)self_73777)->elts[15]; -c_731542.elts[16] = ((closureN)self_73777)->elts[16]; -c_731542.elts[17] = ((closureN)self_73777)->elts[17]; -c_731542.elts[18] = ((closureN)self_73777)->elts[18]; -c_731542.elts[19] = ((closureN)self_73777)->elts[19]; -c_731542.elts[20] = ((closureN)self_73777)->elts[20]; -c_731542.elts[21] = ((closureN)self_73777)->elts[21]; -c_731542.elts[22] = ((closureN)self_73777)->elts[22]; -c_731542.elts[23] = ((closureN)self_73777)->elts[23]; -c_731542.elts[24] = ((closureN)self_73777)->elts[24]; -c_731542.elts[25] = ((closureN)self_73777)->elts[25]; -c_731542.elts[26] = ((closureN)self_73777)->elts[26]; -c_731542.elts[27] = ((closureN)self_73777)->elts[27]; -c_731542.elts[28] = ((closureN)self_73777)->elts[28]; -c_731542.elts[29] = ((closureN)self_73777)->elts[29]; -c_731542.elts[30] = ((closureN)self_73777)->elts[30]; -c_731542.elts[31] = ((closureN)self_73777)->elts[31]; -c_731542.elts[32] = ((closureN)self_73777)->elts[32]; -c_731542.elts[33] = ((closureN)self_73777)->elts[33]; - -return_closcall1(data,(closure)&c_731542, Cyc_set_car(data, ((closureN)self_73777)->elts[19], r_73515));; -} - -static void __lambda_364(void *data, int argc, object self_73778, object r_73277) { - -closureN_type c_731544; -c_731544.hdr.mark = gc_color_red; - c_731544.hdr.grayed = 0; -c_731544.tag = closureN_tag; - c_731544.fn = (function_type)__lambda_363; -c_731544.num_args = 1; -c_731544.num_elt = 34; -c_731544.elts = (object *)alloca(sizeof(object) * 34); -c_731544.elts[0] = ((closureN)self_73778)->elts[0]; -c_731544.elts[1] = ((closureN)self_73778)->elts[1]; -c_731544.elts[2] = ((closureN)self_73778)->elts[2]; -c_731544.elts[3] = ((closureN)self_73778)->elts[3]; -c_731544.elts[4] = ((closureN)self_73778)->elts[4]; -c_731544.elts[5] = ((closureN)self_73778)->elts[5]; -c_731544.elts[6] = ((closureN)self_73778)->elts[6]; -c_731544.elts[7] = ((closureN)self_73778)->elts[7]; -c_731544.elts[8] = ((closureN)self_73778)->elts[8]; -c_731544.elts[9] = ((closureN)self_73778)->elts[9]; -c_731544.elts[10] = ((closureN)self_73778)->elts[10]; -c_731544.elts[11] = ((closureN)self_73778)->elts[11]; -c_731544.elts[12] = ((closureN)self_73778)->elts[12]; -c_731544.elts[13] = ((closureN)self_73778)->elts[13]; -c_731544.elts[14] = ((closureN)self_73778)->elts[14]; -c_731544.elts[15] = ((closureN)self_73778)->elts[15]; -c_731544.elts[16] = ((closureN)self_73778)->elts[16]; -c_731544.elts[17] = ((closureN)self_73778)->elts[17]; -c_731544.elts[18] = ((closureN)self_73778)->elts[18]; -c_731544.elts[19] = ((closureN)self_73778)->elts[19]; -c_731544.elts[20] = ((closureN)self_73778)->elts[20]; -c_731544.elts[21] = ((closureN)self_73778)->elts[21]; -c_731544.elts[22] = ((closureN)self_73778)->elts[22]; -c_731544.elts[23] = ((closureN)self_73778)->elts[23]; -c_731544.elts[24] = ((closureN)self_73778)->elts[24]; -c_731544.elts[25] = ((closureN)self_73778)->elts[25]; -c_731544.elts[26] = ((closureN)self_73778)->elts[26]; -c_731544.elts[27] = ((closureN)self_73778)->elts[27]; -c_731544.elts[28] = ((closureN)self_73778)->elts[28]; -c_731544.elts[29] = ((closureN)self_73778)->elts[29]; -c_731544.elts[30] = ((closureN)self_73778)->elts[30]; -c_731544.elts[31] = ((closureN)self_73778)->elts[31]; -c_731544.elts[32] = ((closureN)self_73778)->elts[32]; -c_731544.elts[33] = ((closureN)self_73778)->elts[33]; - -return_closcall1(data,(closure)&c_731544, nil);; -} - -static void __lambda_363(void *data, int argc, object self_73779, object r_73514) { - -closureN_type c_731546; -c_731546.hdr.mark = gc_color_red; - c_731546.hdr.grayed = 0; -c_731546.tag = closureN_tag; - c_731546.fn = (function_type)__lambda_362; -c_731546.num_args = 1; -c_731546.num_elt = 34; -c_731546.elts = (object *)alloca(sizeof(object) * 34); -c_731546.elts[0] = ((closureN)self_73779)->elts[0]; -c_731546.elts[1] = ((closureN)self_73779)->elts[1]; -c_731546.elts[2] = ((closureN)self_73779)->elts[2]; -c_731546.elts[3] = ((closureN)self_73779)->elts[3]; -c_731546.elts[4] = ((closureN)self_73779)->elts[4]; -c_731546.elts[5] = ((closureN)self_73779)->elts[5]; -c_731546.elts[6] = ((closureN)self_73779)->elts[6]; -c_731546.elts[7] = ((closureN)self_73779)->elts[7]; -c_731546.elts[8] = ((closureN)self_73779)->elts[8]; -c_731546.elts[9] = ((closureN)self_73779)->elts[9]; -c_731546.elts[10] = ((closureN)self_73779)->elts[10]; -c_731546.elts[11] = ((closureN)self_73779)->elts[11]; -c_731546.elts[12] = ((closureN)self_73779)->elts[12]; -c_731546.elts[13] = ((closureN)self_73779)->elts[13]; -c_731546.elts[14] = ((closureN)self_73779)->elts[14]; -c_731546.elts[15] = ((closureN)self_73779)->elts[15]; -c_731546.elts[16] = ((closureN)self_73779)->elts[16]; -c_731546.elts[17] = ((closureN)self_73779)->elts[17]; -c_731546.elts[18] = ((closureN)self_73779)->elts[18]; -c_731546.elts[19] = ((closureN)self_73779)->elts[19]; -c_731546.elts[20] = ((closureN)self_73779)->elts[20]; -c_731546.elts[21] = ((closureN)self_73779)->elts[21]; -c_731546.elts[22] = ((closureN)self_73779)->elts[22]; -c_731546.elts[23] = ((closureN)self_73779)->elts[23]; -c_731546.elts[24] = ((closureN)self_73779)->elts[24]; -c_731546.elts[25] = ((closureN)self_73779)->elts[25]; -c_731546.elts[26] = ((closureN)self_73779)->elts[26]; -c_731546.elts[27] = ((closureN)self_73779)->elts[27]; -c_731546.elts[28] = ((closureN)self_73779)->elts[28]; -c_731546.elts[29] = ((closureN)self_73779)->elts[29]; -c_731546.elts[30] = ((closureN)self_73779)->elts[30]; -c_731546.elts[31] = ((closureN)self_73779)->elts[31]; -c_731546.elts[32] = ((closureN)self_73779)->elts[32]; -c_731546.elts[33] = ((closureN)self_73779)->elts[33]; - -return_closcall1(data,(closure)&c_731546, Cyc_set_car(data, ((closureN)self_73779)->elts[0], r_73514));; -} - -static void __lambda_362(void *data, int argc, object self_73780, object r_73278) { - -closureN_type c_731548; -c_731548.hdr.mark = gc_color_red; - c_731548.hdr.grayed = 0; -c_731548.tag = closureN_tag; - c_731548.fn = (function_type)__lambda_359; -c_731548.num_args = 1; -c_731548.num_elt = 34; -c_731548.elts = (object *)alloca(sizeof(object) * 34); -c_731548.elts[0] = ((closureN)self_73780)->elts[0]; -c_731548.elts[1] = ((closureN)self_73780)->elts[1]; -c_731548.elts[2] = ((closureN)self_73780)->elts[2]; -c_731548.elts[3] = ((closureN)self_73780)->elts[3]; -c_731548.elts[4] = ((closureN)self_73780)->elts[4]; -c_731548.elts[5] = ((closureN)self_73780)->elts[5]; -c_731548.elts[6] = ((closureN)self_73780)->elts[6]; -c_731548.elts[7] = ((closureN)self_73780)->elts[7]; -c_731548.elts[8] = ((closureN)self_73780)->elts[8]; -c_731548.elts[9] = ((closureN)self_73780)->elts[9]; -c_731548.elts[10] = ((closureN)self_73780)->elts[10]; -c_731548.elts[11] = ((closureN)self_73780)->elts[11]; -c_731548.elts[12] = ((closureN)self_73780)->elts[12]; -c_731548.elts[13] = ((closureN)self_73780)->elts[13]; -c_731548.elts[14] = ((closureN)self_73780)->elts[14]; -c_731548.elts[15] = ((closureN)self_73780)->elts[15]; -c_731548.elts[16] = ((closureN)self_73780)->elts[16]; -c_731548.elts[17] = ((closureN)self_73780)->elts[17]; -c_731548.elts[18] = ((closureN)self_73780)->elts[18]; -c_731548.elts[19] = ((closureN)self_73780)->elts[19]; -c_731548.elts[20] = ((closureN)self_73780)->elts[20]; -c_731548.elts[21] = ((closureN)self_73780)->elts[21]; -c_731548.elts[22] = ((closureN)self_73780)->elts[22]; -c_731548.elts[23] = ((closureN)self_73780)->elts[23]; -c_731548.elts[24] = ((closureN)self_73780)->elts[24]; -c_731548.elts[25] = ((closureN)self_73780)->elts[25]; -c_731548.elts[26] = ((closureN)self_73780)->elts[26]; -c_731548.elts[27] = ((closureN)self_73780)->elts[27]; -c_731548.elts[28] = ((closureN)self_73780)->elts[28]; -c_731548.elts[29] = ((closureN)self_73780)->elts[29]; -c_731548.elts[30] = ((closureN)self_73780)->elts[30]; -c_731548.elts[31] = ((closureN)self_73780)->elts[31]; -c_731548.elts[32] = ((closureN)self_73780)->elts[32]; -c_731548.elts[33] = ((closureN)self_73780)->elts[33]; - - -mclosure0(c_732862, (function_type)__lambda_361);c_732862.num_args = 1; -return_closcall1(data,(closure)&c_731548, &c_732862);; -} - -static void __lambda_361(void *data, int argc, object self_73781, object k_73512, object sym_73218) { - -closureN_type c_732864; -c_732864.hdr.mark = gc_color_red; - c_732864.hdr.grayed = 0; -c_732864.tag = closureN_tag; - c_732864.fn = (function_type)__lambda_360; -c_732864.num_args = 1; -c_732864.num_elt = 2; -c_732864.elts = (object *)alloca(sizeof(object) * 2); -c_732864.elts[0] = k_73512; -c_732864.elts[1] = sym_73218; - -return_closcall1(data,(closure)&c_732864, nil);; -} - -static void __lambda_360(void *data, int argc, object self_73782, object r_73513) { - return_closcall3(data, __glo_vector_scheme_base, ((closureN)self_73782)->elts[0], ((closureN)self_73782)->elts[1], r_73513);; -} - -static void __lambda_359(void *data, int argc, object self_73783, object r_73511) { - -closureN_type c_731550; -c_731550.hdr.mark = gc_color_red; - c_731550.hdr.grayed = 0; -c_731550.tag = closureN_tag; - c_731550.fn = (function_type)__lambda_358; -c_731550.num_args = 1; -c_731550.num_elt = 33; -c_731550.elts = (object *)alloca(sizeof(object) * 33); -c_731550.elts[0] = ((closureN)self_73783)->elts[0]; -c_731550.elts[1] = ((closureN)self_73783)->elts[1]; -c_731550.elts[2] = ((closureN)self_73783)->elts[2]; -c_731550.elts[3] = ((closureN)self_73783)->elts[3]; -c_731550.elts[4] = ((closureN)self_73783)->elts[4]; -c_731550.elts[5] = ((closureN)self_73783)->elts[5]; -c_731550.elts[6] = ((closureN)self_73783)->elts[6]; -c_731550.elts[7] = ((closureN)self_73783)->elts[7]; -c_731550.elts[8] = ((closureN)self_73783)->elts[9]; -c_731550.elts[9] = ((closureN)self_73783)->elts[10]; -c_731550.elts[10] = ((closureN)self_73783)->elts[11]; -c_731550.elts[11] = ((closureN)self_73783)->elts[12]; -c_731550.elts[12] = ((closureN)self_73783)->elts[13]; -c_731550.elts[13] = ((closureN)self_73783)->elts[14]; -c_731550.elts[14] = ((closureN)self_73783)->elts[15]; -c_731550.elts[15] = ((closureN)self_73783)->elts[16]; -c_731550.elts[16] = ((closureN)self_73783)->elts[17]; -c_731550.elts[17] = ((closureN)self_73783)->elts[18]; -c_731550.elts[18] = ((closureN)self_73783)->elts[19]; -c_731550.elts[19] = ((closureN)self_73783)->elts[20]; -c_731550.elts[20] = ((closureN)self_73783)->elts[21]; -c_731550.elts[21] = ((closureN)self_73783)->elts[22]; -c_731550.elts[22] = ((closureN)self_73783)->elts[23]; -c_731550.elts[23] = ((closureN)self_73783)->elts[24]; -c_731550.elts[24] = ((closureN)self_73783)->elts[25]; -c_731550.elts[25] = ((closureN)self_73783)->elts[26]; -c_731550.elts[26] = ((closureN)self_73783)->elts[27]; -c_731550.elts[27] = ((closureN)self_73783)->elts[28]; -c_731550.elts[28] = ((closureN)self_73783)->elts[29]; -c_731550.elts[29] = ((closureN)self_73783)->elts[30]; -c_731550.elts[30] = ((closureN)self_73783)->elts[31]; -c_731550.elts[31] = ((closureN)self_73783)->elts[32]; -c_731550.elts[32] = ((closureN)self_73783)->elts[33]; - -return_closcall1(data,(closure)&c_731550, Cyc_set_car(data, ((closureN)self_73783)->elts[8], r_73511));; -} - -static void __lambda_358(void *data, int argc, object self_73784, object r_73279) { - -closureN_type c_731552; -c_731552.hdr.mark = gc_color_red; - c_731552.hdr.grayed = 0; -c_731552.tag = closureN_tag; - c_731552.fn = (function_type)__lambda_356; -c_731552.num_args = 1; -c_731552.num_elt = 33; -c_731552.elts = (object *)alloca(sizeof(object) * 33); -c_731552.elts[0] = ((closureN)self_73784)->elts[0]; -c_731552.elts[1] = ((closureN)self_73784)->elts[1]; -c_731552.elts[2] = ((closureN)self_73784)->elts[2]; -c_731552.elts[3] = ((closureN)self_73784)->elts[3]; -c_731552.elts[4] = ((closureN)self_73784)->elts[4]; -c_731552.elts[5] = ((closureN)self_73784)->elts[5]; -c_731552.elts[6] = ((closureN)self_73784)->elts[6]; -c_731552.elts[7] = ((closureN)self_73784)->elts[7]; -c_731552.elts[8] = ((closureN)self_73784)->elts[8]; -c_731552.elts[9] = ((closureN)self_73784)->elts[9]; -c_731552.elts[10] = ((closureN)self_73784)->elts[10]; -c_731552.elts[11] = ((closureN)self_73784)->elts[11]; -c_731552.elts[12] = ((closureN)self_73784)->elts[12]; -c_731552.elts[13] = ((closureN)self_73784)->elts[13]; -c_731552.elts[14] = ((closureN)self_73784)->elts[14]; -c_731552.elts[15] = ((closureN)self_73784)->elts[15]; -c_731552.elts[16] = ((closureN)self_73784)->elts[16]; -c_731552.elts[17] = ((closureN)self_73784)->elts[17]; -c_731552.elts[18] = ((closureN)self_73784)->elts[18]; -c_731552.elts[19] = ((closureN)self_73784)->elts[19]; -c_731552.elts[20] = ((closureN)self_73784)->elts[20]; -c_731552.elts[21] = ((closureN)self_73784)->elts[21]; -c_731552.elts[22] = ((closureN)self_73784)->elts[22]; -c_731552.elts[23] = ((closureN)self_73784)->elts[23]; -c_731552.elts[24] = ((closureN)self_73784)->elts[24]; -c_731552.elts[25] = ((closureN)self_73784)->elts[25]; -c_731552.elts[26] = ((closureN)self_73784)->elts[26]; -c_731552.elts[27] = ((closureN)self_73784)->elts[27]; -c_731552.elts[28] = ((closureN)self_73784)->elts[28]; -c_731552.elts[29] = ((closureN)self_73784)->elts[29]; -c_731552.elts[30] = ((closureN)self_73784)->elts[30]; -c_731552.elts[31] = ((closureN)self_73784)->elts[31]; -c_731552.elts[32] = ((closureN)self_73784)->elts[32]; - - -mclosure0(c_732855, (function_type)__lambda_357);c_732855.num_args = 2; -return_closcall1(data,(closure)&c_731552, &c_732855);; -} - -static void __lambda_357(void *data, int argc, object self_73785, object k_73510, object symbol_91record_73217, object lemmas_73216) { - return_closcall1(data, k_73510, Cyc_vector_set(data, symbol_91record_73217, obj_int2obj(1), lemmas_73216));; -} - -static void __lambda_356(void *data, int argc, object self_73786, object r_73509) { - -closureN_type c_731554; -c_731554.hdr.mark = gc_color_red; - c_731554.hdr.grayed = 0; -c_731554.tag = closureN_tag; - c_731554.fn = (function_type)__lambda_355; -c_731554.num_args = 1; -c_731554.num_elt = 32; -c_731554.elts = (object *)alloca(sizeof(object) * 32); -c_731554.elts[0] = ((closureN)self_73786)->elts[0]; -c_731554.elts[1] = ((closureN)self_73786)->elts[1]; -c_731554.elts[2] = ((closureN)self_73786)->elts[2]; -c_731554.elts[3] = ((closureN)self_73786)->elts[3]; -c_731554.elts[4] = ((closureN)self_73786)->elts[4]; -c_731554.elts[5] = ((closureN)self_73786)->elts[5]; -c_731554.elts[6] = ((closureN)self_73786)->elts[6]; -c_731554.elts[7] = ((closureN)self_73786)->elts[7]; -c_731554.elts[8] = ((closureN)self_73786)->elts[8]; -c_731554.elts[9] = ((closureN)self_73786)->elts[9]; -c_731554.elts[10] = ((closureN)self_73786)->elts[10]; -c_731554.elts[11] = ((closureN)self_73786)->elts[12]; -c_731554.elts[12] = ((closureN)self_73786)->elts[13]; -c_731554.elts[13] = ((closureN)self_73786)->elts[14]; -c_731554.elts[14] = ((closureN)self_73786)->elts[15]; -c_731554.elts[15] = ((closureN)self_73786)->elts[16]; -c_731554.elts[16] = ((closureN)self_73786)->elts[17]; -c_731554.elts[17] = ((closureN)self_73786)->elts[18]; -c_731554.elts[18] = ((closureN)self_73786)->elts[19]; -c_731554.elts[19] = ((closureN)self_73786)->elts[20]; -c_731554.elts[20] = ((closureN)self_73786)->elts[21]; -c_731554.elts[21] = ((closureN)self_73786)->elts[22]; -c_731554.elts[22] = ((closureN)self_73786)->elts[23]; -c_731554.elts[23] = ((closureN)self_73786)->elts[24]; -c_731554.elts[24] = ((closureN)self_73786)->elts[25]; -c_731554.elts[25] = ((closureN)self_73786)->elts[26]; -c_731554.elts[26] = ((closureN)self_73786)->elts[27]; -c_731554.elts[27] = ((closureN)self_73786)->elts[28]; -c_731554.elts[28] = ((closureN)self_73786)->elts[29]; -c_731554.elts[29] = ((closureN)self_73786)->elts[30]; -c_731554.elts[30] = ((closureN)self_73786)->elts[31]; -c_731554.elts[31] = ((closureN)self_73786)->elts[32]; - -return_closcall1(data,(closure)&c_731554, Cyc_set_car(data, ((closureN)self_73786)->elts[11], r_73509));; -} - -static void __lambda_355(void *data, int argc, object self_73787, object r_73280) { - -closureN_type c_731556; -c_731556.hdr.mark = gc_color_red; - c_731556.hdr.grayed = 0; -c_731556.tag = closureN_tag; - c_731556.fn = (function_type)__lambda_353; -c_731556.num_args = 1; -c_731556.num_elt = 32; -c_731556.elts = (object *)alloca(sizeof(object) * 32); -c_731556.elts[0] = ((closureN)self_73787)->elts[0]; -c_731556.elts[1] = ((closureN)self_73787)->elts[1]; -c_731556.elts[2] = ((closureN)self_73787)->elts[2]; -c_731556.elts[3] = ((closureN)self_73787)->elts[3]; -c_731556.elts[4] = ((closureN)self_73787)->elts[4]; -c_731556.elts[5] = ((closureN)self_73787)->elts[5]; -c_731556.elts[6] = ((closureN)self_73787)->elts[6]; -c_731556.elts[7] = ((closureN)self_73787)->elts[7]; -c_731556.elts[8] = ((closureN)self_73787)->elts[8]; -c_731556.elts[9] = ((closureN)self_73787)->elts[9]; -c_731556.elts[10] = ((closureN)self_73787)->elts[10]; -c_731556.elts[11] = ((closureN)self_73787)->elts[11]; -c_731556.elts[12] = ((closureN)self_73787)->elts[12]; -c_731556.elts[13] = ((closureN)self_73787)->elts[13]; -c_731556.elts[14] = ((closureN)self_73787)->elts[14]; -c_731556.elts[15] = ((closureN)self_73787)->elts[15]; -c_731556.elts[16] = ((closureN)self_73787)->elts[16]; -c_731556.elts[17] = ((closureN)self_73787)->elts[17]; -c_731556.elts[18] = ((closureN)self_73787)->elts[18]; -c_731556.elts[19] = ((closureN)self_73787)->elts[19]; -c_731556.elts[20] = ((closureN)self_73787)->elts[20]; -c_731556.elts[21] = ((closureN)self_73787)->elts[21]; -c_731556.elts[22] = ((closureN)self_73787)->elts[22]; -c_731556.elts[23] = ((closureN)self_73787)->elts[23]; -c_731556.elts[24] = ((closureN)self_73787)->elts[24]; -c_731556.elts[25] = ((closureN)self_73787)->elts[25]; -c_731556.elts[26] = ((closureN)self_73787)->elts[26]; -c_731556.elts[27] = ((closureN)self_73787)->elts[27]; -c_731556.elts[28] = ((closureN)self_73787)->elts[28]; -c_731556.elts[29] = ((closureN)self_73787)->elts[29]; -c_731556.elts[30] = ((closureN)self_73787)->elts[30]; -c_731556.elts[31] = ((closureN)self_73787)->elts[31]; - - -mclosure0(c_732848, (function_type)__lambda_354);c_732848.num_args = 1; -return_closcall1(data,(closure)&c_731556, &c_732848);; -} - -static void __lambda_354(void *data, int argc, object self_73788, object k_73508, object symbol_91record_73215) { - return_closcall1(data, k_73508, Cyc_vector_ref(data, symbol_91record_73215, obj_int2obj(1)));; -} - -static void __lambda_353(void *data, int argc, object self_73789, object r_73507) { - -closureN_type c_731558; -c_731558.hdr.mark = gc_color_red; - c_731558.hdr.grayed = 0; -c_731558.tag = closureN_tag; - c_731558.fn = (function_type)__lambda_352; -c_731558.num_args = 1; -c_731558.num_elt = 32; -c_731558.elts = (object *)alloca(sizeof(object) * 32); -c_731558.elts[0] = ((closureN)self_73789)->elts[0]; -c_731558.elts[1] = ((closureN)self_73789)->elts[1]; -c_731558.elts[2] = ((closureN)self_73789)->elts[2]; -c_731558.elts[3] = ((closureN)self_73789)->elts[3]; -c_731558.elts[4] = ((closureN)self_73789)->elts[4]; -c_731558.elts[5] = ((closureN)self_73789)->elts[5]; -c_731558.elts[6] = ((closureN)self_73789)->elts[6]; -c_731558.elts[7] = ((closureN)self_73789)->elts[7]; -c_731558.elts[8] = ((closureN)self_73789)->elts[8]; -c_731558.elts[9] = ((closureN)self_73789)->elts[9]; -c_731558.elts[10] = ((closureN)self_73789)->elts[10]; -c_731558.elts[11] = ((closureN)self_73789)->elts[11]; -c_731558.elts[12] = ((closureN)self_73789)->elts[12]; -c_731558.elts[13] = ((closureN)self_73789)->elts[13]; -c_731558.elts[14] = ((closureN)self_73789)->elts[14]; -c_731558.elts[15] = ((closureN)self_73789)->elts[15]; -c_731558.elts[16] = ((closureN)self_73789)->elts[16]; -c_731558.elts[17] = ((closureN)self_73789)->elts[17]; -c_731558.elts[18] = ((closureN)self_73789)->elts[18]; -c_731558.elts[19] = ((closureN)self_73789)->elts[19]; -c_731558.elts[20] = ((closureN)self_73789)->elts[20]; -c_731558.elts[21] = ((closureN)self_73789)->elts[21]; -c_731558.elts[22] = ((closureN)self_73789)->elts[22]; -c_731558.elts[23] = ((closureN)self_73789)->elts[23]; -c_731558.elts[24] = ((closureN)self_73789)->elts[24]; -c_731558.elts[25] = ((closureN)self_73789)->elts[25]; -c_731558.elts[26] = ((closureN)self_73789)->elts[26]; -c_731558.elts[27] = ((closureN)self_73789)->elts[27]; -c_731558.elts[28] = ((closureN)self_73789)->elts[28]; -c_731558.elts[29] = ((closureN)self_73789)->elts[29]; -c_731558.elts[30] = ((closureN)self_73789)->elts[30]; -c_731558.elts[31] = ((closureN)self_73789)->elts[31]; - -return_closcall1(data,(closure)&c_731558, Cyc_set_car(data, ((closureN)self_73789)->elts[5], r_73507));; -} - -static void __lambda_352(void *data, int argc, object self_73790, object r_73281) { - -closureN_type c_731560; -c_731560.hdr.mark = gc_color_red; - c_731560.hdr.grayed = 0; -c_731560.tag = closureN_tag; - c_731560.fn = (function_type)__lambda_350; -c_731560.num_args = 1; -c_731560.num_elt = 32; -c_731560.elts = (object *)alloca(sizeof(object) * 32); -c_731560.elts[0] = ((closureN)self_73790)->elts[0]; -c_731560.elts[1] = ((closureN)self_73790)->elts[1]; -c_731560.elts[2] = ((closureN)self_73790)->elts[2]; -c_731560.elts[3] = ((closureN)self_73790)->elts[3]; -c_731560.elts[4] = ((closureN)self_73790)->elts[4]; -c_731560.elts[5] = ((closureN)self_73790)->elts[5]; -c_731560.elts[6] = ((closureN)self_73790)->elts[6]; -c_731560.elts[7] = ((closureN)self_73790)->elts[7]; -c_731560.elts[8] = ((closureN)self_73790)->elts[8]; -c_731560.elts[9] = ((closureN)self_73790)->elts[9]; -c_731560.elts[10] = ((closureN)self_73790)->elts[10]; -c_731560.elts[11] = ((closureN)self_73790)->elts[11]; -c_731560.elts[12] = ((closureN)self_73790)->elts[12]; -c_731560.elts[13] = ((closureN)self_73790)->elts[13]; -c_731560.elts[14] = ((closureN)self_73790)->elts[14]; -c_731560.elts[15] = ((closureN)self_73790)->elts[15]; -c_731560.elts[16] = ((closureN)self_73790)->elts[16]; -c_731560.elts[17] = ((closureN)self_73790)->elts[17]; -c_731560.elts[18] = ((closureN)self_73790)->elts[18]; -c_731560.elts[19] = ((closureN)self_73790)->elts[19]; -c_731560.elts[20] = ((closureN)self_73790)->elts[20]; -c_731560.elts[21] = ((closureN)self_73790)->elts[21]; -c_731560.elts[22] = ((closureN)self_73790)->elts[22]; -c_731560.elts[23] = ((closureN)self_73790)->elts[23]; -c_731560.elts[24] = ((closureN)self_73790)->elts[24]; -c_731560.elts[25] = ((closureN)self_73790)->elts[25]; -c_731560.elts[26] = ((closureN)self_73790)->elts[26]; -c_731560.elts[27] = ((closureN)self_73790)->elts[27]; -c_731560.elts[28] = ((closureN)self_73790)->elts[28]; -c_731560.elts[29] = ((closureN)self_73790)->elts[29]; -c_731560.elts[30] = ((closureN)self_73790)->elts[30]; -c_731560.elts[31] = ((closureN)self_73790)->elts[31]; - - -mclosure0(c_732841, (function_type)__lambda_351);c_732841.num_args = 1; -return_closcall1(data,(closure)&c_731560, &c_732841);; -} - -static void __lambda_351(void *data, int argc, object self_73791, object k_73506, object symbol_91record_73214) { - return_closcall1(data, k_73506, Cyc_vector_ref(data, symbol_91record_73214, obj_int2obj(0)));; -} - -static void __lambda_350(void *data, int argc, object self_73792, object r_73505) { - -closureN_type c_731562; -c_731562.hdr.mark = gc_color_red; - c_731562.hdr.grayed = 0; -c_731562.tag = closureN_tag; - c_731562.fn = (function_type)__lambda_349; -c_731562.num_args = 1; -c_731562.num_elt = 31; -c_731562.elts = (object *)alloca(sizeof(object) * 31); -c_731562.elts[0] = ((closureN)self_73792)->elts[0]; -c_731562.elts[1] = ((closureN)self_73792)->elts[1]; -c_731562.elts[2] = ((closureN)self_73792)->elts[2]; -c_731562.elts[3] = ((closureN)self_73792)->elts[3]; -c_731562.elts[4] = ((closureN)self_73792)->elts[4]; -c_731562.elts[5] = ((closureN)self_73792)->elts[5]; -c_731562.elts[6] = ((closureN)self_73792)->elts[7]; -c_731562.elts[7] = ((closureN)self_73792)->elts[8]; -c_731562.elts[8] = ((closureN)self_73792)->elts[9]; -c_731562.elts[9] = ((closureN)self_73792)->elts[10]; -c_731562.elts[10] = ((closureN)self_73792)->elts[11]; -c_731562.elts[11] = ((closureN)self_73792)->elts[12]; -c_731562.elts[12] = ((closureN)self_73792)->elts[13]; -c_731562.elts[13] = ((closureN)self_73792)->elts[14]; -c_731562.elts[14] = ((closureN)self_73792)->elts[15]; -c_731562.elts[15] = ((closureN)self_73792)->elts[16]; -c_731562.elts[16] = ((closureN)self_73792)->elts[17]; -c_731562.elts[17] = ((closureN)self_73792)->elts[18]; -c_731562.elts[18] = ((closureN)self_73792)->elts[19]; -c_731562.elts[19] = ((closureN)self_73792)->elts[20]; -c_731562.elts[20] = ((closureN)self_73792)->elts[21]; -c_731562.elts[21] = ((closureN)self_73792)->elts[22]; -c_731562.elts[22] = ((closureN)self_73792)->elts[23]; -c_731562.elts[23] = ((closureN)self_73792)->elts[24]; -c_731562.elts[24] = ((closureN)self_73792)->elts[25]; -c_731562.elts[25] = ((closureN)self_73792)->elts[26]; -c_731562.elts[26] = ((closureN)self_73792)->elts[27]; -c_731562.elts[27] = ((closureN)self_73792)->elts[28]; -c_731562.elts[28] = ((closureN)self_73792)->elts[29]; -c_731562.elts[29] = ((closureN)self_73792)->elts[30]; -c_731562.elts[30] = ((closureN)self_73792)->elts[31]; - -return_closcall1(data,(closure)&c_731562, Cyc_set_car(data, ((closureN)self_73792)->elts[6], r_73505));; -} - -static void __lambda_349(void *data, int argc, object self_73793, object r_73282) { - -closureN_type c_731564; -c_731564.hdr.mark = gc_color_red; - c_731564.hdr.grayed = 0; -c_731564.tag = closureN_tag; - c_731564.fn = (function_type)__lambda_347; -c_731564.num_args = 1; -c_731564.num_elt = 31; -c_731564.elts = (object *)alloca(sizeof(object) * 31); -c_731564.elts[0] = ((closureN)self_73793)->elts[0]; -c_731564.elts[1] = ((closureN)self_73793)->elts[1]; -c_731564.elts[2] = ((closureN)self_73793)->elts[2]; -c_731564.elts[3] = ((closureN)self_73793)->elts[3]; -c_731564.elts[4] = ((closureN)self_73793)->elts[4]; -c_731564.elts[5] = ((closureN)self_73793)->elts[5]; -c_731564.elts[6] = ((closureN)self_73793)->elts[6]; -c_731564.elts[7] = ((closureN)self_73793)->elts[7]; -c_731564.elts[8] = ((closureN)self_73793)->elts[8]; -c_731564.elts[9] = ((closureN)self_73793)->elts[9]; -c_731564.elts[10] = ((closureN)self_73793)->elts[10]; -c_731564.elts[11] = ((closureN)self_73793)->elts[11]; -c_731564.elts[12] = ((closureN)self_73793)->elts[12]; -c_731564.elts[13] = ((closureN)self_73793)->elts[13]; -c_731564.elts[14] = ((closureN)self_73793)->elts[14]; -c_731564.elts[15] = ((closureN)self_73793)->elts[15]; -c_731564.elts[16] = ((closureN)self_73793)->elts[16]; -c_731564.elts[17] = ((closureN)self_73793)->elts[17]; -c_731564.elts[18] = ((closureN)self_73793)->elts[18]; -c_731564.elts[19] = ((closureN)self_73793)->elts[19]; -c_731564.elts[20] = ((closureN)self_73793)->elts[20]; -c_731564.elts[21] = ((closureN)self_73793)->elts[21]; -c_731564.elts[22] = ((closureN)self_73793)->elts[22]; -c_731564.elts[23] = ((closureN)self_73793)->elts[23]; -c_731564.elts[24] = ((closureN)self_73793)->elts[24]; -c_731564.elts[25] = ((closureN)self_73793)->elts[25]; -c_731564.elts[26] = ((closureN)self_73793)->elts[26]; -c_731564.elts[27] = ((closureN)self_73793)->elts[27]; -c_731564.elts[28] = ((closureN)self_73793)->elts[28]; -c_731564.elts[29] = ((closureN)self_73793)->elts[29]; -c_731564.elts[30] = ((closureN)self_73793)->elts[30]; - - -mclosure0(c_732834, (function_type)__lambda_348);c_732834.num_args = 2; -return_closcall1(data,(closure)&c_731564, &c_732834);; -} - -static void __lambda_348(void *data, int argc, object self_73794, object k_73504, object r1_73213, object r2_73212) { - return_closcall1(data, k_73504, Cyc_eq(r1_73213, r2_73212));; -} - -static void __lambda_347(void *data, int argc, object self_73795, object r_73503) { - -closureN_type c_731566; -c_731566.hdr.mark = gc_color_red; - c_731566.hdr.grayed = 0; -c_731566.tag = closureN_tag; - c_731566.fn = (function_type)__lambda_346; -c_731566.num_args = 1; -c_731566.num_elt = 31; -c_731566.elts = (object *)alloca(sizeof(object) * 31); -c_731566.elts[0] = ((closureN)self_73795)->elts[0]; -c_731566.elts[1] = ((closureN)self_73795)->elts[1]; -c_731566.elts[2] = ((closureN)self_73795)->elts[2]; -c_731566.elts[3] = ((closureN)self_73795)->elts[3]; -c_731566.elts[4] = ((closureN)self_73795)->elts[4]; -c_731566.elts[5] = ((closureN)self_73795)->elts[5]; -c_731566.elts[6] = ((closureN)self_73795)->elts[6]; -c_731566.elts[7] = ((closureN)self_73795)->elts[7]; -c_731566.elts[8] = ((closureN)self_73795)->elts[8]; -c_731566.elts[9] = ((closureN)self_73795)->elts[9]; -c_731566.elts[10] = ((closureN)self_73795)->elts[10]; -c_731566.elts[11] = ((closureN)self_73795)->elts[11]; -c_731566.elts[12] = ((closureN)self_73795)->elts[12]; -c_731566.elts[13] = ((closureN)self_73795)->elts[13]; -c_731566.elts[14] = ((closureN)self_73795)->elts[14]; -c_731566.elts[15] = ((closureN)self_73795)->elts[15]; -c_731566.elts[16] = ((closureN)self_73795)->elts[16]; -c_731566.elts[17] = ((closureN)self_73795)->elts[17]; -c_731566.elts[18] = ((closureN)self_73795)->elts[18]; -c_731566.elts[19] = ((closureN)self_73795)->elts[19]; -c_731566.elts[20] = ((closureN)self_73795)->elts[20]; -c_731566.elts[21] = ((closureN)self_73795)->elts[21]; -c_731566.elts[22] = ((closureN)self_73795)->elts[22]; -c_731566.elts[23] = ((closureN)self_73795)->elts[23]; -c_731566.elts[24] = ((closureN)self_73795)->elts[24]; -c_731566.elts[25] = ((closureN)self_73795)->elts[25]; -c_731566.elts[26] = ((closureN)self_73795)->elts[26]; -c_731566.elts[27] = ((closureN)self_73795)->elts[27]; -c_731566.elts[28] = ((closureN)self_73795)->elts[28]; -c_731566.elts[29] = ((closureN)self_73795)->elts[29]; -c_731566.elts[30] = ((closureN)self_73795)->elts[30]; - -return_closcall1(data,(closure)&c_731566, Cyc_set_car(data, ((closureN)self_73795)->elts[17], r_73503));; -} - -static void __lambda_346(void *data, int argc, object self_73796, object r_73283) { - -closureN_type c_731568; -c_731568.hdr.mark = gc_color_red; - c_731568.hdr.grayed = 0; -c_731568.tag = closureN_tag; - c_731568.fn = (function_type)__lambda_329; -c_731568.num_args = 1; -c_731568.num_elt = 31; -c_731568.elts = (object *)alloca(sizeof(object) * 31); -c_731568.elts[0] = ((closureN)self_73796)->elts[0]; -c_731568.elts[1] = ((closureN)self_73796)->elts[1]; -c_731568.elts[2] = ((closureN)self_73796)->elts[2]; -c_731568.elts[3] = ((closureN)self_73796)->elts[3]; -c_731568.elts[4] = ((closureN)self_73796)->elts[4]; -c_731568.elts[5] = ((closureN)self_73796)->elts[5]; -c_731568.elts[6] = ((closureN)self_73796)->elts[6]; -c_731568.elts[7] = ((closureN)self_73796)->elts[7]; -c_731568.elts[8] = ((closureN)self_73796)->elts[8]; -c_731568.elts[9] = ((closureN)self_73796)->elts[9]; -c_731568.elts[10] = ((closureN)self_73796)->elts[10]; -c_731568.elts[11] = ((closureN)self_73796)->elts[11]; -c_731568.elts[12] = ((closureN)self_73796)->elts[12]; -c_731568.elts[13] = ((closureN)self_73796)->elts[13]; -c_731568.elts[14] = ((closureN)self_73796)->elts[14]; -c_731568.elts[15] = ((closureN)self_73796)->elts[15]; -c_731568.elts[16] = ((closureN)self_73796)->elts[16]; -c_731568.elts[17] = ((closureN)self_73796)->elts[17]; -c_731568.elts[18] = ((closureN)self_73796)->elts[18]; -c_731568.elts[19] = ((closureN)self_73796)->elts[19]; -c_731568.elts[20] = ((closureN)self_73796)->elts[20]; -c_731568.elts[21] = ((closureN)self_73796)->elts[21]; -c_731568.elts[22] = ((closureN)self_73796)->elts[22]; -c_731568.elts[23] = ((closureN)self_73796)->elts[23]; -c_731568.elts[24] = ((closureN)self_73796)->elts[24]; -c_731568.elts[25] = ((closureN)self_73796)->elts[25]; -c_731568.elts[26] = ((closureN)self_73796)->elts[26]; -c_731568.elts[27] = ((closureN)self_73796)->elts[27]; -c_731568.elts[28] = ((closureN)self_73796)->elts[28]; -c_731568.elts[29] = ((closureN)self_73796)->elts[29]; -c_731568.elts[30] = ((closureN)self_73796)->elts[30]; - - -closureN_type c_732757; -c_732757.hdr.mark = gc_color_red; - c_732757.hdr.grayed = 0; -c_732757.tag = closureN_tag; - c_732757.fn = (function_type)__lambda_345; -c_732757.num_args = 3; -c_732757.num_elt = 4; -c_732757.elts = (object *)alloca(sizeof(object) * 4); -c_732757.elts[0] = ((closureN)self_73796)->elts[1]; -c_732757.elts[1] = ((closureN)self_73796)->elts[19]; -c_732757.elts[2] = ((closureN)self_73796)->elts[26]; -c_732757.elts[3] = ((closureN)self_73796)->elts[27]; - -return_closcall1(data,(closure)&c_731568, &c_732757);; -} - -static void __lambda_345(void *data, int argc, object self_73797, object k_73490, object alist_73205, object term_73204, object n_73203) { - -closureN_type c_732762; -c_732762.hdr.mark = gc_color_red; - c_732762.hdr.grayed = 0; -c_732762.tag = closureN_tag; - c_732762.fn = (function_type)__lambda_344; -c_732762.num_args = 1; -c_732762.num_elt = 6; -c_732762.elts = (object *)alloca(sizeof(object) * 6); -c_732762.elts[0] = ((closureN)self_73797)->elts[0]; -c_732762.elts[1] = k_73490; -c_732762.elts[2] = n_73203; -c_732762.elts[3] = ((closureN)self_73797)->elts[1]; -c_732762.elts[4] = term_73204; -c_732762.elts[5] = ((closureN)self_73797)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73797)->elts[2]), &c_732762, alist_73205);; -} - -static void __lambda_344(void *data, int argc, object self_73798, object r_73492) { - -closureN_type c_732764; -c_732764.hdr.mark = gc_color_red; - c_732764.hdr.grayed = 0; -c_732764.tag = closureN_tag; - c_732764.fn = (function_type)__lambda_343; -c_732764.num_args = 2; -c_732764.num_elt = 5; -c_732764.elts = (object *)alloca(sizeof(object) * 5); -c_732764.elts[0] = ((closureN)self_73798)->elts[0]; -c_732764.elts[1] = ((closureN)self_73798)->elts[1]; -c_732764.elts[2] = r_73492; -c_732764.elts[3] = ((closureN)self_73798)->elts[3]; -c_732764.elts[4] = ((closureN)self_73798)->elts[5]; - -return_closcall2(data,(closure)&c_732764, ((closureN)self_73798)->elts[4], ((closureN)self_73798)->elts[2]);; -} - -static void __lambda_343(void *data, int argc, object self_73799, object term_73207, object n_73206) { - -closureN_type c_732766; -c_732766.hdr.mark = gc_color_red; - c_732766.hdr.grayed = 0; -c_732766.tag = closureN_tag; - c_732766.fn = (function_type)__lambda_342; -c_732766.num_args = 1; -c_732766.num_elt = 7; -c_732766.elts = (object *)alloca(sizeof(object) * 7); -c_732766.elts[0] = ((closureN)self_73799)->elts[0]; -c_732766.elts[1] = ((closureN)self_73799)->elts[1]; -c_732766.elts[2] = n_73206; -c_732766.elts[3] = ((closureN)self_73799)->elts[2]; -c_732766.elts[4] = ((closureN)self_73799)->elts[3]; -c_732766.elts[5] = term_73207; -c_732766.elts[6] = ((closureN)self_73799)->elts[4]; - -return_closcall1(data,(closure)&c_732766, boolean_f);; -} - -static void __lambda_342(void *data, int argc, object self_73800, object lp_73208) { - -closureN_type c_732768; -c_732768.hdr.mark = gc_color_red; - c_732768.hdr.grayed = 0; -c_732768.tag = closureN_tag; - c_732768.fn = (function_type)__lambda_341; -c_732768.num_args = 1; -c_732768.num_elt = 7; -c_732768.elts = (object *)alloca(sizeof(object) * 7); -c_732768.elts[0] = ((closureN)self_73800)->elts[0]; -c_732768.elts[1] = ((closureN)self_73800)->elts[1]; -c_732768.elts[2] = ((closureN)self_73800)->elts[2]; -c_732768.elts[3] = ((closureN)self_73800)->elts[3]; -c_732768.elts[4] = ((closureN)self_73800)->elts[4]; -c_732768.elts[5] = ((closureN)self_73800)->elts[5]; -c_732768.elts[6] = ((closureN)self_73800)->elts[6]; - - -make_cell(c_732828,lp_73208); -return_closcall1(data,(closure)&c_732768, &c_732828);; -} - -static void __lambda_341(void *data, int argc, object self_73801, object lp_73208) { - -closureN_type c_732770; -c_732770.hdr.mark = gc_color_red; - c_732770.hdr.grayed = 0; -c_732770.tag = closureN_tag; - c_732770.fn = (function_type)__lambda_334; -c_732770.num_args = 1; -c_732770.num_elt = 8; -c_732770.elts = (object *)alloca(sizeof(object) * 8); -c_732770.elts[0] = ((closureN)self_73801)->elts[0]; -c_732770.elts[1] = ((closureN)self_73801)->elts[1]; -c_732770.elts[2] = lp_73208; -c_732770.elts[3] = ((closureN)self_73801)->elts[2]; -c_732770.elts[4] = ((closureN)self_73801)->elts[3]; -c_732770.elts[5] = ((closureN)self_73801)->elts[4]; -c_732770.elts[6] = ((closureN)self_73801)->elts[5]; -c_732770.elts[7] = ((closureN)self_73801)->elts[6]; - - -closureN_type c_732799; -c_732799.hdr.mark = gc_color_red; - c_732799.hdr.grayed = 0; -c_732799.tag = closureN_tag; - c_732799.fn = (function_type)__lambda_340; -c_732799.num_args = 2; -c_732799.num_elt = 1; -c_732799.elts = (object *)alloca(sizeof(object) * 1); -c_732799.elts[0] = lp_73208; - -return_closcall1(data,(closure)&c_732770, &c_732799);; -} - -static void __lambda_340(void *data, int argc, object self_73802, object k_73497, object term_73210, object n_73209) { - -closureN_type c_732801; -c_732801.hdr.mark = gc_color_red; - c_732801.hdr.grayed = 0; -c_732801.tag = closureN_tag; - c_732801.fn = (function_type)__lambda_339; -c_732801.num_args = 1; -c_732801.num_elt = 4; -c_732801.elts = (object *)alloca(sizeof(object) * 4); -c_732801.elts[0] = k_73497; -c_732801.elts[1] = ((closureN)self_73802)->elts[0]; -c_732801.elts[2] = n_73209; -c_732801.elts[3] = term_73210; - -return_closcall2(data, __glo_zero_127_scheme_base, &c_732801, n_73209);; -} - -static void __lambda_339(void *data, int argc, object self_73803, object r_73498) { - if( !eq(boolean_f, r_73498) ){ - return_closcall1(data, ((closureN)self_73803)->elts[0], ((closureN)self_73803)->elts[3]); -} else { - -closureN_type c_732806; -c_732806.hdr.mark = gc_color_red; - c_732806.hdr.grayed = 0; -c_732806.tag = closureN_tag; - c_732806.fn = (function_type)__lambda_338; -c_732806.num_args = 1; -c_732806.num_elt = 4; -c_732806.elts = (object *)alloca(sizeof(object) * 4); -c_732806.elts[0] = ((closureN)self_73803)->elts[0]; -c_732806.elts[1] = ((closureN)self_73803)->elts[1]; -c_732806.elts[2] = ((closureN)self_73803)->elts[2]; -c_732806.elts[3] = ((closureN)self_73803)->elts[3]; - -return_closcall1(data,(closure)&c_732806, quote_or);} -; -} - -static void __lambda_338(void *data, int argc, object self_73804, object r_73501) { - -closureN_type c_732808; -c_732808.hdr.mark = gc_color_red; - c_732808.hdr.grayed = 0; -c_732808.tag = closureN_tag; - c_732808.fn = (function_type)__lambda_337; -c_732808.num_args = 1; -c_732808.num_elt = 5; -c_732808.elts = (object *)alloca(sizeof(object) * 5); -c_732808.elts[0] = ((closureN)self_73804)->elts[0]; -c_732808.elts[1] = ((closureN)self_73804)->elts[1]; -c_732808.elts[2] = ((closureN)self_73804)->elts[2]; -c_732808.elts[3] = r_73501; -c_732808.elts[4] = ((closureN)self_73804)->elts[3]; - - -make_cons(c_732825,quote_f,nil); -return_closcall1(data,(closure)&c_732808, &c_732825);; -} - -static void __lambda_337(void *data, int argc, object self_73805, object r_73502) { - -closureN_type c_732810; -c_732810.hdr.mark = gc_color_red; - c_732810.hdr.grayed = 0; -c_732810.tag = closureN_tag; - c_732810.fn = (function_type)__lambda_336; -c_732810.num_args = 1; -c_732810.num_elt = 3; -c_732810.elts = (object *)alloca(sizeof(object) * 3); -c_732810.elts[0] = ((closureN)self_73805)->elts[0]; -c_732810.elts[1] = ((closureN)self_73805)->elts[1]; -c_732810.elts[2] = ((closureN)self_73805)->elts[2]; - -return_closcall4(data, __glo__list_scheme_base, &c_732810, ((closureN)self_73805)->elts[3], ((closureN)self_73805)->elts[4], r_73502);; -} - -static void __lambda_336(void *data, int argc, object self_73806, object r_73499) { - -closureN_type c_732812; -c_732812.hdr.mark = gc_color_red; - c_732812.hdr.grayed = 0; -c_732812.tag = closureN_tag; - c_732812.fn = (function_type)__lambda_335; -c_732812.num_args = 1; -c_732812.num_elt = 3; -c_732812.elts = (object *)alloca(sizeof(object) * 3); -c_732812.elts[0] = ((closureN)self_73806)->elts[0]; -c_732812.elts[1] = ((closureN)self_73806)->elts[1]; -c_732812.elts[2] = r_73499; - - -object c_732821 = Cyc_sub(data,(closure)&c_732812,2,((closureN)self_73806)->elts[2], obj_int2obj(1)); -return_closcall1(data,(closure)&c_732812, c_732821);; -} - -static void __lambda_335(void *data, int argc, object self_73807, object r_73500) { - return_closcall3(data, cell_get(((closureN)self_73807)->elts[1]), ((closureN)self_73807)->elts[0], ((closureN)self_73807)->elts[2], r_73500);; -} - -static void __lambda_334(void *data, int argc, object self_73808, object r_73496) { - -closureN_type c_732772; -c_732772.hdr.mark = gc_color_red; - c_732772.hdr.grayed = 0; -c_732772.tag = closureN_tag; - c_732772.fn = (function_type)__lambda_333; -c_732772.num_args = 1; -c_732772.num_elt = 8; -c_732772.elts = (object *)alloca(sizeof(object) * 8); -c_732772.elts[0] = ((closureN)self_73808)->elts[0]; -c_732772.elts[1] = ((closureN)self_73808)->elts[1]; -c_732772.elts[2] = ((closureN)self_73808)->elts[2]; -c_732772.elts[3] = ((closureN)self_73808)->elts[3]; -c_732772.elts[4] = ((closureN)self_73808)->elts[4]; -c_732772.elts[5] = ((closureN)self_73808)->elts[5]; -c_732772.elts[6] = ((closureN)self_73808)->elts[6]; -c_732772.elts[7] = ((closureN)self_73808)->elts[7]; - -return_closcall1(data,(closure)&c_732772, Cyc_set_car(data, ((closureN)self_73808)->elts[2], r_73496));; -} - -static void __lambda_333(void *data, int argc, object self_73809, object r_73495) { - -closureN_type c_732777; -c_732777.hdr.mark = gc_color_red; - c_732777.hdr.grayed = 0; -c_732777.tag = closureN_tag; - c_732777.fn = (function_type)__lambda_332; -c_732777.num_args = 1; -c_732777.num_elt = 5; -c_732777.elts = (object *)alloca(sizeof(object) * 5); -c_732777.elts[0] = ((closureN)self_73809)->elts[0]; -c_732777.elts[1] = ((closureN)self_73809)->elts[1]; -c_732777.elts[2] = ((closureN)self_73809)->elts[4]; -c_732777.elts[3] = ((closureN)self_73809)->elts[5]; -c_732777.elts[4] = ((closureN)self_73809)->elts[7]; - -return_closcall3(data, cell_get(((closureN)self_73809)->elts[2]), &c_732777, ((closureN)self_73809)->elts[6], ((closureN)self_73809)->elts[3]);; -} - -static void __lambda_332(void *data, int argc, object self_73810, object r_73494) { - -closureN_type c_732782; -c_732782.hdr.mark = gc_color_red; - c_732782.hdr.grayed = 0; -c_732782.tag = closureN_tag; - c_732782.fn = (function_type)__lambda_331; -c_732782.num_args = 1; -c_732782.num_elt = 4; -c_732782.elts = (object *)alloca(sizeof(object) * 4); -c_732782.elts[0] = ((closureN)self_73810)->elts[0]; -c_732782.elts[1] = ((closureN)self_73810)->elts[1]; -c_732782.elts[2] = ((closureN)self_73810)->elts[2]; -c_732782.elts[3] = ((closureN)self_73810)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73810)->elts[4]), &c_732782, r_73494);; -} - -static void __lambda_331(void *data, int argc, object self_73811, object r_73493) { - -closureN_type c_732787; -c_732787.hdr.mark = gc_color_red; - c_732787.hdr.grayed = 0; -c_732787.tag = closureN_tag; - c_732787.fn = (function_type)__lambda_330; -c_732787.num_args = 1; -c_732787.num_elt = 2; -c_732787.elts = (object *)alloca(sizeof(object) * 2); -c_732787.elts[0] = ((closureN)self_73811)->elts[1]; -c_732787.elts[1] = ((closureN)self_73811)->elts[3]; - -return_closcall3(data, cell_get(((closureN)self_73811)->elts[0]), &c_732787, ((closureN)self_73811)->elts[2], r_73493);; -} - -static void __lambda_330(void *data, int argc, object self_73812, object term_73211) { - return_closcall2(data, cell_get(((closureN)self_73812)->elts[1]), ((closureN)self_73812)->elts[0], term_73211);; -} - -static void __lambda_329(void *data, int argc, object self_73813, object r_73489) { - -closureN_type c_731570; -c_731570.hdr.mark = gc_color_red; - c_731570.hdr.grayed = 0; -c_731570.tag = closureN_tag; - c_731570.fn = (function_type)__lambda_328; -c_731570.num_args = 1; -c_731570.num_elt = 31; -c_731570.elts = (object *)alloca(sizeof(object) * 31); -c_731570.elts[0] = ((closureN)self_73813)->elts[0]; -c_731570.elts[1] = ((closureN)self_73813)->elts[1]; -c_731570.elts[2] = ((closureN)self_73813)->elts[2]; -c_731570.elts[3] = ((closureN)self_73813)->elts[3]; -c_731570.elts[4] = ((closureN)self_73813)->elts[4]; -c_731570.elts[5] = ((closureN)self_73813)->elts[5]; -c_731570.elts[6] = ((closureN)self_73813)->elts[6]; -c_731570.elts[7] = ((closureN)self_73813)->elts[7]; -c_731570.elts[8] = ((closureN)self_73813)->elts[8]; -c_731570.elts[9] = ((closureN)self_73813)->elts[9]; -c_731570.elts[10] = ((closureN)self_73813)->elts[10]; -c_731570.elts[11] = ((closureN)self_73813)->elts[11]; -c_731570.elts[12] = ((closureN)self_73813)->elts[12]; -c_731570.elts[13] = ((closureN)self_73813)->elts[13]; -c_731570.elts[14] = ((closureN)self_73813)->elts[14]; -c_731570.elts[15] = ((closureN)self_73813)->elts[15]; -c_731570.elts[16] = ((closureN)self_73813)->elts[16]; -c_731570.elts[17] = ((closureN)self_73813)->elts[17]; -c_731570.elts[18] = ((closureN)self_73813)->elts[18]; -c_731570.elts[19] = ((closureN)self_73813)->elts[19]; -c_731570.elts[20] = ((closureN)self_73813)->elts[20]; -c_731570.elts[21] = ((closureN)self_73813)->elts[21]; -c_731570.elts[22] = ((closureN)self_73813)->elts[22]; -c_731570.elts[23] = ((closureN)self_73813)->elts[23]; -c_731570.elts[24] = ((closureN)self_73813)->elts[24]; -c_731570.elts[25] = ((closureN)self_73813)->elts[25]; -c_731570.elts[26] = ((closureN)self_73813)->elts[26]; -c_731570.elts[27] = ((closureN)self_73813)->elts[27]; -c_731570.elts[28] = ((closureN)self_73813)->elts[28]; -c_731570.elts[29] = ((closureN)self_73813)->elts[29]; -c_731570.elts[30] = ((closureN)self_73813)->elts[30]; - -return_closcall1(data,(closure)&c_731570, Cyc_set_car(data, ((closureN)self_73813)->elts[23], r_73489));; -} - -static void __lambda_328(void *data, int argc, object self_73814, object r_73284) { - -closureN_type c_731572; -c_731572.hdr.mark = gc_color_red; - c_731572.hdr.grayed = 0; -c_731572.tag = closureN_tag; - c_731572.fn = (function_type)__lambda_317; -c_731572.num_args = 1; -c_731572.num_elt = 31; -c_731572.elts = (object *)alloca(sizeof(object) * 31); -c_731572.elts[0] = ((closureN)self_73814)->elts[0]; -c_731572.elts[1] = ((closureN)self_73814)->elts[1]; -c_731572.elts[2] = ((closureN)self_73814)->elts[2]; -c_731572.elts[3] = ((closureN)self_73814)->elts[3]; -c_731572.elts[4] = ((closureN)self_73814)->elts[4]; -c_731572.elts[5] = ((closureN)self_73814)->elts[5]; -c_731572.elts[6] = ((closureN)self_73814)->elts[6]; -c_731572.elts[7] = ((closureN)self_73814)->elts[7]; -c_731572.elts[8] = ((closureN)self_73814)->elts[8]; -c_731572.elts[9] = ((closureN)self_73814)->elts[9]; -c_731572.elts[10] = ((closureN)self_73814)->elts[10]; -c_731572.elts[11] = ((closureN)self_73814)->elts[11]; -c_731572.elts[12] = ((closureN)self_73814)->elts[12]; -c_731572.elts[13] = ((closureN)self_73814)->elts[13]; -c_731572.elts[14] = ((closureN)self_73814)->elts[14]; -c_731572.elts[15] = ((closureN)self_73814)->elts[15]; -c_731572.elts[16] = ((closureN)self_73814)->elts[16]; -c_731572.elts[17] = ((closureN)self_73814)->elts[17]; -c_731572.elts[18] = ((closureN)self_73814)->elts[18]; -c_731572.elts[19] = ((closureN)self_73814)->elts[19]; -c_731572.elts[20] = ((closureN)self_73814)->elts[20]; -c_731572.elts[21] = ((closureN)self_73814)->elts[21]; -c_731572.elts[22] = ((closureN)self_73814)->elts[22]; -c_731572.elts[23] = ((closureN)self_73814)->elts[23]; -c_731572.elts[24] = ((closureN)self_73814)->elts[24]; -c_731572.elts[25] = ((closureN)self_73814)->elts[25]; -c_731572.elts[26] = ((closureN)self_73814)->elts[26]; -c_731572.elts[27] = ((closureN)self_73814)->elts[27]; -c_731572.elts[28] = ((closureN)self_73814)->elts[28]; -c_731572.elts[29] = ((closureN)self_73814)->elts[29]; -c_731572.elts[30] = ((closureN)self_73814)->elts[30]; - - -closureN_type c_732706; -c_732706.hdr.mark = gc_color_red; - c_732706.hdr.grayed = 0; -c_732706.tag = closureN_tag; - c_732706.fn = (function_type)__lambda_327; -c_732706.num_args = 1; -c_732706.num_elt = 2; -c_732706.elts = (object *)alloca(sizeof(object) * 2); -c_732706.elts[0] = ((closureN)self_73814)->elts[26]; -c_732706.elts[1] = ((closureN)self_73814)->elts[27]; - -return_closcall1(data,(closure)&c_731572, &c_732706);; -} - -static void __lambda_327(void *data, int argc, object self_73815, object k_73481, object alist_73202) { - -closureN_type c_732708; -c_732708.hdr.mark = gc_color_red; - c_732708.hdr.grayed = 0; -c_732708.tag = closureN_tag; - c_732708.fn = (function_type)__lambda_326; -c_732708.num_args = 1; -c_732708.num_elt = 4; -c_732708.elts = (object *)alloca(sizeof(object) * 4); -c_732708.elts[0] = alist_73202; -c_732708.elts[1] = k_73481; -c_732708.elts[2] = ((closureN)self_73815)->elts[0]; -c_732708.elts[3] = ((closureN)self_73815)->elts[1]; - -return_closcall1(data,(closure)&c_732708, Cyc_is_null(alist_73202));; -} - -static void __lambda_326(void *data, int argc, object self_73816, object r_73482) { - if( !eq(boolean_f, r_73482) ){ - -closureN_type c_732710; -c_732710.hdr.mark = gc_color_red; - c_732710.hdr.grayed = 0; -c_732710.tag = closureN_tag; - c_732710.fn = (function_type)__lambda_318; -c_732710.num_args = 0; -c_732710.num_elt = 1; -c_732710.elts = (object *)alloca(sizeof(object) * 1); -c_732710.elts[0] = ((closureN)self_73816)->elts[1]; - -return_closcall0(data,(closure)&c_732710); -} else { - -closureN_type c_732714; -c_732714.hdr.mark = gc_color_red; - c_732714.hdr.grayed = 0; -c_732714.tag = closureN_tag; - c_732714.fn = (function_type)__lambda_325; -c_732714.num_args = 0; -c_732714.num_elt = 4; -c_732714.elts = (object *)alloca(sizeof(object) * 4); -c_732714.elts[0] = ((closureN)self_73816)->elts[0]; -c_732714.elts[1] = ((closureN)self_73816)->elts[1]; -c_732714.elts[2] = ((closureN)self_73816)->elts[2]; -c_732714.elts[3] = ((closureN)self_73816)->elts[3]; - -return_closcall0(data,(closure)&c_732714);} -; -} - -static void __lambda_325(void *data, int argc, object self_73817) { - -closureN_type c_732716; -c_732716.hdr.mark = gc_color_red; - c_732716.hdr.grayed = 0; -c_732716.tag = closureN_tag; - c_732716.fn = (function_type)__lambda_324; -c_732716.num_args = 1; -c_732716.num_elt = 4; -c_732716.elts = (object *)alloca(sizeof(object) * 4); -c_732716.elts[0] = ((closureN)self_73817)->elts[0]; -c_732716.elts[1] = ((closureN)self_73817)->elts[1]; -c_732716.elts[2] = ((closureN)self_73817)->elts[2]; -c_732716.elts[3] = ((closureN)self_73817)->elts[3]; - -return_closcall1(data,(closure)&c_732716, caar(((closureN)self_73817)->elts[0]));; -} - -static void __lambda_324(void *data, int argc, object self_73818, object r_73486) { - -closureN_type c_732718; -c_732718.hdr.mark = gc_color_red; - c_732718.hdr.grayed = 0; -c_732718.tag = closureN_tag; - c_732718.fn = (function_type)__lambda_323; -c_732718.num_args = 1; -c_732718.num_elt = 5; -c_732718.elts = (object *)alloca(sizeof(object) * 5); -c_732718.elts[0] = ((closureN)self_73818)->elts[0]; -c_732718.elts[1] = ((closureN)self_73818)->elts[1]; -c_732718.elts[2] = r_73486; -c_732718.elts[3] = ((closureN)self_73818)->elts[2]; -c_732718.elts[4] = ((closureN)self_73818)->elts[3]; - -return_closcall1(data,(closure)&c_732718, cdar(((closureN)self_73818)->elts[0]));; -} - -static void __lambda_323(void *data, int argc, object self_73819, object r_73488) { - -closureN_type c_732723; -c_732723.hdr.mark = gc_color_red; - c_732723.hdr.grayed = 0; -c_732723.tag = closureN_tag; - c_732723.fn = (function_type)__lambda_322; -c_732723.num_args = 1; -c_732723.num_elt = 4; -c_732723.elts = (object *)alloca(sizeof(object) * 4); -c_732723.elts[0] = ((closureN)self_73819)->elts[0]; -c_732723.elts[1] = ((closureN)self_73819)->elts[1]; -c_732723.elts[2] = ((closureN)self_73819)->elts[2]; -c_732723.elts[3] = ((closureN)self_73819)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73819)->elts[4]), &c_732723, r_73488);; -} - -static void __lambda_322(void *data, int argc, object self_73820, object r_73487) { - -closureN_type c_732725; -c_732725.hdr.mark = gc_color_red; - c_732725.hdr.grayed = 0; -c_732725.tag = closureN_tag; - c_732725.fn = (function_type)__lambda_321; -c_732725.num_args = 1; -c_732725.num_elt = 3; -c_732725.elts = (object *)alloca(sizeof(object) * 3); -c_732725.elts[0] = ((closureN)self_73820)->elts[0]; -c_732725.elts[1] = ((closureN)self_73820)->elts[1]; -c_732725.elts[2] = ((closureN)self_73820)->elts[3]; - - -make_cons(c_732744,((closureN)self_73820)->elts[2], r_73487); -return_closcall1(data,(closure)&c_732725, &c_732744);; -} - -static void __lambda_321(void *data, int argc, object self_73821, object r_73483) { - -closureN_type c_732727; -c_732727.hdr.mark = gc_color_red; - c_732727.hdr.grayed = 0; -c_732727.tag = closureN_tag; - c_732727.fn = (function_type)__lambda_320; -c_732727.num_args = 1; -c_732727.num_elt = 3; -c_732727.elts = (object *)alloca(sizeof(object) * 3); -c_732727.elts[0] = ((closureN)self_73821)->elts[1]; -c_732727.elts[1] = r_73483; -c_732727.elts[2] = ((closureN)self_73821)->elts[2]; - -return_closcall1(data,(closure)&c_732727, cdr(((closureN)self_73821)->elts[0]));; -} - -static void __lambda_320(void *data, int argc, object self_73822, object r_73485) { - -closureN_type c_732732; -c_732732.hdr.mark = gc_color_red; - c_732732.hdr.grayed = 0; -c_732732.tag = closureN_tag; - c_732732.fn = (function_type)__lambda_319; -c_732732.num_args = 1; -c_732732.num_elt = 2; -c_732732.elts = (object *)alloca(sizeof(object) * 2); -c_732732.elts[0] = ((closureN)self_73822)->elts[0]; -c_732732.elts[1] = ((closureN)self_73822)->elts[1]; - -return_closcall2(data, cell_get(((closureN)self_73822)->elts[2]), &c_732732, r_73485);; -} - -static void __lambda_319(void *data, int argc, object self_73823, object r_73484) { - -make_cons(c_732737,((closureN)self_73823)->elts[1], r_73484); -return_closcall1(data, ((closureN)self_73823)->elts[0], &c_732737);; -} - -static void __lambda_318(void *data, int argc, object self_73824) { - return_closcall1(data, ((closureN)self_73824)->elts[0], nil);; -} - -static void __lambda_317(void *data, int argc, object self_73825, object r_73480) { - -closureN_type c_731574; -c_731574.hdr.mark = gc_color_red; - c_731574.hdr.grayed = 0; -c_731574.tag = closureN_tag; - c_731574.fn = (function_type)__lambda_316; -c_731574.num_args = 1; -c_731574.num_elt = 30; -c_731574.elts = (object *)alloca(sizeof(object) * 30); -c_731574.elts[0] = ((closureN)self_73825)->elts[0]; -c_731574.elts[1] = ((closureN)self_73825)->elts[1]; -c_731574.elts[2] = ((closureN)self_73825)->elts[2]; -c_731574.elts[3] = ((closureN)self_73825)->elts[3]; -c_731574.elts[4] = ((closureN)self_73825)->elts[4]; -c_731574.elts[5] = ((closureN)self_73825)->elts[5]; -c_731574.elts[6] = ((closureN)self_73825)->elts[6]; -c_731574.elts[7] = ((closureN)self_73825)->elts[7]; -c_731574.elts[8] = ((closureN)self_73825)->elts[8]; -c_731574.elts[9] = ((closureN)self_73825)->elts[9]; -c_731574.elts[10] = ((closureN)self_73825)->elts[10]; -c_731574.elts[11] = ((closureN)self_73825)->elts[11]; -c_731574.elts[12] = ((closureN)self_73825)->elts[12]; -c_731574.elts[13] = ((closureN)self_73825)->elts[13]; -c_731574.elts[14] = ((closureN)self_73825)->elts[14]; -c_731574.elts[15] = ((closureN)self_73825)->elts[15]; -c_731574.elts[16] = ((closureN)self_73825)->elts[16]; -c_731574.elts[17] = ((closureN)self_73825)->elts[17]; -c_731574.elts[18] = ((closureN)self_73825)->elts[18]; -c_731574.elts[19] = ((closureN)self_73825)->elts[19]; -c_731574.elts[20] = ((closureN)self_73825)->elts[20]; -c_731574.elts[21] = ((closureN)self_73825)->elts[21]; -c_731574.elts[22] = ((closureN)self_73825)->elts[22]; -c_731574.elts[23] = ((closureN)self_73825)->elts[23]; -c_731574.elts[24] = ((closureN)self_73825)->elts[24]; -c_731574.elts[25] = ((closureN)self_73825)->elts[25]; -c_731574.elts[26] = ((closureN)self_73825)->elts[27]; -c_731574.elts[27] = ((closureN)self_73825)->elts[28]; -c_731574.elts[28] = ((closureN)self_73825)->elts[29]; -c_731574.elts[29] = ((closureN)self_73825)->elts[30]; - -return_closcall1(data,(closure)&c_731574, Cyc_set_car(data, ((closureN)self_73825)->elts[26], r_73480));; -} - -static void __lambda_316(void *data, int argc, object self_73826, object r_73285) { - -closureN_type c_731576; -c_731576.hdr.mark = gc_color_red; - c_731576.hdr.grayed = 0; -c_731576.tag = closureN_tag; - c_731576.fn = (function_type)__lambda_307; -c_731576.num_args = 1; -c_731576.num_elt = 30; -c_731576.elts = (object *)alloca(sizeof(object) * 30); -c_731576.elts[0] = ((closureN)self_73826)->elts[0]; -c_731576.elts[1] = ((closureN)self_73826)->elts[1]; -c_731576.elts[2] = ((closureN)self_73826)->elts[2]; -c_731576.elts[3] = ((closureN)self_73826)->elts[3]; -c_731576.elts[4] = ((closureN)self_73826)->elts[4]; -c_731576.elts[5] = ((closureN)self_73826)->elts[5]; -c_731576.elts[6] = ((closureN)self_73826)->elts[6]; -c_731576.elts[7] = ((closureN)self_73826)->elts[7]; -c_731576.elts[8] = ((closureN)self_73826)->elts[8]; -c_731576.elts[9] = ((closureN)self_73826)->elts[9]; -c_731576.elts[10] = ((closureN)self_73826)->elts[10]; -c_731576.elts[11] = ((closureN)self_73826)->elts[11]; -c_731576.elts[12] = ((closureN)self_73826)->elts[12]; -c_731576.elts[13] = ((closureN)self_73826)->elts[13]; -c_731576.elts[14] = ((closureN)self_73826)->elts[14]; -c_731576.elts[15] = ((closureN)self_73826)->elts[15]; -c_731576.elts[16] = ((closureN)self_73826)->elts[16]; -c_731576.elts[17] = ((closureN)self_73826)->elts[17]; -c_731576.elts[18] = ((closureN)self_73826)->elts[18]; -c_731576.elts[19] = ((closureN)self_73826)->elts[19]; -c_731576.elts[20] = ((closureN)self_73826)->elts[20]; -c_731576.elts[21] = ((closureN)self_73826)->elts[21]; -c_731576.elts[22] = ((closureN)self_73826)->elts[22]; -c_731576.elts[23] = ((closureN)self_73826)->elts[23]; -c_731576.elts[24] = ((closureN)self_73826)->elts[24]; -c_731576.elts[25] = ((closureN)self_73826)->elts[25]; -c_731576.elts[26] = ((closureN)self_73826)->elts[26]; -c_731576.elts[27] = ((closureN)self_73826)->elts[27]; -c_731576.elts[28] = ((closureN)self_73826)->elts[28]; -c_731576.elts[29] = ((closureN)self_73826)->elts[29]; - - -closureN_type c_732659; -c_732659.hdr.mark = gc_color_red; - c_732659.hdr.grayed = 0; -c_732659.tag = closureN_tag; - c_732659.fn = (function_type)__lambda_315; -c_732659.num_args = 2; -c_732659.num_elt = 1; -c_732659.elts = (object *)alloca(sizeof(object) * 1); -c_732659.elts[0] = ((closureN)self_73826)->elts[2]; - -return_closcall1(data,(closure)&c_731576, &c_732659);; -} - -static void __lambda_315(void *data, int argc, object self_73827, object k_73474, object alist_73200, object term_73199) { - -closureN_type c_732661; -c_732661.hdr.mark = gc_color_red; - c_732661.hdr.grayed = 0; -c_732661.tag = closureN_tag; - c_732661.fn = (function_type)__lambda_314; -c_732661.num_args = 1; -c_732661.num_elt = 4; -c_732661.elts = (object *)alloca(sizeof(object) * 4); -c_732661.elts[0] = alist_73200; -c_732661.elts[1] = ((closureN)self_73827)->elts[0]; -c_732661.elts[2] = k_73474; -c_732661.elts[3] = term_73199; - -return_closcall1(data,(closure)&c_732661, Cyc_is_cons(term_73199));; -} - -static void __lambda_314(void *data, int argc, object self_73828, object r_73475) { - if( !eq(boolean_f, r_73475) ){ - -closureN_type c_732663; -c_732663.hdr.mark = gc_color_red; - c_732663.hdr.grayed = 0; -c_732663.tag = closureN_tag; - c_732663.fn = (function_type)__lambda_311; -c_732663.num_args = 0; -c_732663.num_elt = 4; -c_732663.elts = (object *)alloca(sizeof(object) * 4); -c_732663.elts[0] = ((closureN)self_73828)->elts[0]; -c_732663.elts[1] = ((closureN)self_73828)->elts[1]; -c_732663.elts[2] = ((closureN)self_73828)->elts[2]; -c_732663.elts[3] = ((closureN)self_73828)->elts[3]; - -return_closcall0(data,(closure)&c_732663); -} else { - -closureN_type c_732687; -c_732687.hdr.mark = gc_color_red; - c_732687.hdr.grayed = 0; -c_732687.tag = closureN_tag; - c_732687.fn = (function_type)__lambda_313; -c_732687.num_args = 0; -c_732687.num_elt = 3; -c_732687.elts = (object *)alloca(sizeof(object) * 3); -c_732687.elts[0] = ((closureN)self_73828)->elts[0]; -c_732687.elts[1] = ((closureN)self_73828)->elts[2]; -c_732687.elts[2] = ((closureN)self_73828)->elts[3]; - -return_closcall0(data,(closure)&c_732687);} -; -} - -static void __lambda_313(void *data, int argc, object self_73829) { - -closureN_type c_732689; -c_732689.hdr.mark = gc_color_red; - c_732689.hdr.grayed = 0; -c_732689.tag = closureN_tag; - c_732689.fn = (function_type)__lambda_312; -c_732689.num_args = 1; -c_732689.num_elt = 2; -c_732689.elts = (object *)alloca(sizeof(object) * 2); -c_732689.elts[0] = ((closureN)self_73829)->elts[1]; -c_732689.elts[1] = ((closureN)self_73829)->elts[2]; - -return_closcall1(data,(closure)&c_732689, assq(data, ((closureN)self_73829)->elts[2], ((closureN)self_73829)->elts[0]));; -} - -static void __lambda_312(void *data, int argc, object self_73830, object temp_91temp_73201) { - if( !eq(boolean_f, temp_91temp_73201) ){ - return_closcall1(data, ((closureN)self_73830)->elts[0], cdr(temp_91temp_73201)); -} else { - return_closcall1(data, ((closureN)self_73830)->elts[0], ((closureN)self_73830)->elts[1]);} -; -} - -static void __lambda_311(void *data, int argc, object self_73831) { - -closureN_type c_732665; -c_732665.hdr.mark = gc_color_red; - c_732665.hdr.grayed = 0; -c_732665.tag = closureN_tag; - c_732665.fn = (function_type)__lambda_310; -c_732665.num_args = 1; -c_732665.num_elt = 4; -c_732665.elts = (object *)alloca(sizeof(object) * 4); -c_732665.elts[0] = ((closureN)self_73831)->elts[0]; -c_732665.elts[1] = ((closureN)self_73831)->elts[1]; -c_732665.elts[2] = ((closureN)self_73831)->elts[2]; -c_732665.elts[3] = ((closureN)self_73831)->elts[3]; - -return_closcall1(data,(closure)&c_732665, car(((closureN)self_73831)->elts[3]));; -} - -static void __lambda_310(void *data, int argc, object self_73832, object r_73476) { - -closureN_type c_732667; -c_732667.hdr.mark = gc_color_red; - c_732667.hdr.grayed = 0; -c_732667.tag = closureN_tag; - c_732667.fn = (function_type)__lambda_309; -c_732667.num_args = 1; -c_732667.num_elt = 4; -c_732667.elts = (object *)alloca(sizeof(object) * 4); -c_732667.elts[0] = ((closureN)self_73832)->elts[0]; -c_732667.elts[1] = ((closureN)self_73832)->elts[1]; -c_732667.elts[2] = ((closureN)self_73832)->elts[2]; -c_732667.elts[3] = r_73476; - -return_closcall1(data,(closure)&c_732667, cdr(((closureN)self_73832)->elts[3]));; -} - -static void __lambda_309(void *data, int argc, object self_73833, object r_73478) { - -closureN_type c_732672; -c_732672.hdr.mark = gc_color_red; - c_732672.hdr.grayed = 0; -c_732672.tag = closureN_tag; - c_732672.fn = (function_type)__lambda_308; -c_732672.num_args = 1; -c_732672.num_elt = 2; -c_732672.elts = (object *)alloca(sizeof(object) * 2); -c_732672.elts[0] = ((closureN)self_73833)->elts[2]; -c_732672.elts[1] = ((closureN)self_73833)->elts[3]; - -return_closcall3(data, cell_get(((closureN)self_73833)->elts[1]), &c_732672, ((closureN)self_73833)->elts[0], r_73478);; -} - -static void __lambda_308(void *data, int argc, object self_73834, object r_73477) { - -make_cons(c_732677,((closureN)self_73834)->elts[1], r_73477); -return_closcall1(data, ((closureN)self_73834)->elts[0], &c_732677);; -} - -static void __lambda_307(void *data, int argc, object self_73835, object r_73473) { - -closureN_type c_731578; -c_731578.hdr.mark = gc_color_red; - c_731578.hdr.grayed = 0; -c_731578.tag = closureN_tag; - c_731578.fn = (function_type)__lambda_306; -c_731578.num_args = 1; -c_731578.num_elt = 30; -c_731578.elts = (object *)alloca(sizeof(object) * 30); -c_731578.elts[0] = ((closureN)self_73835)->elts[0]; -c_731578.elts[1] = ((closureN)self_73835)->elts[1]; -c_731578.elts[2] = ((closureN)self_73835)->elts[2]; -c_731578.elts[3] = ((closureN)self_73835)->elts[3]; -c_731578.elts[4] = ((closureN)self_73835)->elts[4]; -c_731578.elts[5] = ((closureN)self_73835)->elts[5]; -c_731578.elts[6] = ((closureN)self_73835)->elts[6]; -c_731578.elts[7] = ((closureN)self_73835)->elts[7]; -c_731578.elts[8] = ((closureN)self_73835)->elts[8]; -c_731578.elts[9] = ((closureN)self_73835)->elts[9]; -c_731578.elts[10] = ((closureN)self_73835)->elts[10]; -c_731578.elts[11] = ((closureN)self_73835)->elts[11]; -c_731578.elts[12] = ((closureN)self_73835)->elts[12]; -c_731578.elts[13] = ((closureN)self_73835)->elts[13]; -c_731578.elts[14] = ((closureN)self_73835)->elts[14]; -c_731578.elts[15] = ((closureN)self_73835)->elts[15]; -c_731578.elts[16] = ((closureN)self_73835)->elts[16]; -c_731578.elts[17] = ((closureN)self_73835)->elts[17]; -c_731578.elts[18] = ((closureN)self_73835)->elts[18]; -c_731578.elts[19] = ((closureN)self_73835)->elts[19]; -c_731578.elts[20] = ((closureN)self_73835)->elts[20]; -c_731578.elts[21] = ((closureN)self_73835)->elts[21]; -c_731578.elts[22] = ((closureN)self_73835)->elts[22]; -c_731578.elts[23] = ((closureN)self_73835)->elts[23]; -c_731578.elts[24] = ((closureN)self_73835)->elts[24]; -c_731578.elts[25] = ((closureN)self_73835)->elts[25]; -c_731578.elts[26] = ((closureN)self_73835)->elts[26]; -c_731578.elts[27] = ((closureN)self_73835)->elts[27]; -c_731578.elts[28] = ((closureN)self_73835)->elts[28]; -c_731578.elts[29] = ((closureN)self_73835)->elts[29]; - -return_closcall1(data,(closure)&c_731578, Cyc_set_car(data, ((closureN)self_73835)->elts[1], r_73473));; -} - -static void __lambda_306(void *data, int argc, object self_73836, object r_73286) { - -closureN_type c_731580; -c_731580.hdr.mark = gc_color_red; - c_731580.hdr.grayed = 0; -c_731580.tag = closureN_tag; - c_731580.fn = (function_type)__lambda_297; -c_731580.num_args = 1; -c_731580.num_elt = 30; -c_731580.elts = (object *)alloca(sizeof(object) * 30); -c_731580.elts[0] = ((closureN)self_73836)->elts[0]; -c_731580.elts[1] = ((closureN)self_73836)->elts[1]; -c_731580.elts[2] = ((closureN)self_73836)->elts[2]; -c_731580.elts[3] = ((closureN)self_73836)->elts[3]; -c_731580.elts[4] = ((closureN)self_73836)->elts[4]; -c_731580.elts[5] = ((closureN)self_73836)->elts[5]; -c_731580.elts[6] = ((closureN)self_73836)->elts[6]; -c_731580.elts[7] = ((closureN)self_73836)->elts[7]; -c_731580.elts[8] = ((closureN)self_73836)->elts[8]; -c_731580.elts[9] = ((closureN)self_73836)->elts[9]; -c_731580.elts[10] = ((closureN)self_73836)->elts[10]; -c_731580.elts[11] = ((closureN)self_73836)->elts[11]; -c_731580.elts[12] = ((closureN)self_73836)->elts[12]; -c_731580.elts[13] = ((closureN)self_73836)->elts[13]; -c_731580.elts[14] = ((closureN)self_73836)->elts[14]; -c_731580.elts[15] = ((closureN)self_73836)->elts[15]; -c_731580.elts[16] = ((closureN)self_73836)->elts[16]; -c_731580.elts[17] = ((closureN)self_73836)->elts[17]; -c_731580.elts[18] = ((closureN)self_73836)->elts[18]; -c_731580.elts[19] = ((closureN)self_73836)->elts[19]; -c_731580.elts[20] = ((closureN)self_73836)->elts[20]; -c_731580.elts[21] = ((closureN)self_73836)->elts[21]; -c_731580.elts[22] = ((closureN)self_73836)->elts[22]; -c_731580.elts[23] = ((closureN)self_73836)->elts[23]; -c_731580.elts[24] = ((closureN)self_73836)->elts[24]; -c_731580.elts[25] = ((closureN)self_73836)->elts[25]; -c_731580.elts[26] = ((closureN)self_73836)->elts[26]; -c_731580.elts[27] = ((closureN)self_73836)->elts[27]; -c_731580.elts[28] = ((closureN)self_73836)->elts[28]; -c_731580.elts[29] = ((closureN)self_73836)->elts[29]; - - -closureN_type c_732617; -c_732617.hdr.mark = gc_color_red; - c_732617.hdr.grayed = 0; -c_732617.tag = closureN_tag; - c_732617.fn = (function_type)__lambda_305; -c_732617.num_args = 2; -c_732617.num_elt = 2; -c_732617.elts = (object *)alloca(sizeof(object) * 2); -c_732617.elts[0] = ((closureN)self_73836)->elts[1]; -c_732617.elts[1] = ((closureN)self_73836)->elts[2]; - -return_closcall1(data,(closure)&c_731580, &c_732617);; -} - -static void __lambda_305(void *data, int argc, object self_73837, object k_73467, object alist_73198, object lst_73197) { - -closureN_type c_732619; -c_732619.hdr.mark = gc_color_red; - c_732619.hdr.grayed = 0; -c_732619.tag = closureN_tag; - c_732619.fn = (function_type)__lambda_304; -c_732619.num_args = 1; -c_732619.num_elt = 5; -c_732619.elts = (object *)alloca(sizeof(object) * 5); -c_732619.elts[0] = alist_73198; -c_732619.elts[1] = ((closureN)self_73837)->elts[0]; -c_732619.elts[2] = ((closureN)self_73837)->elts[1]; -c_732619.elts[3] = k_73467; -c_732619.elts[4] = lst_73197; - -return_closcall1(data,(closure)&c_732619, Cyc_is_null(lst_73197));; -} - -static void __lambda_304(void *data, int argc, object self_73838, object r_73468) { - if( !eq(boolean_f, r_73468) ){ - -closureN_type c_732621; -c_732621.hdr.mark = gc_color_red; - c_732621.hdr.grayed = 0; -c_732621.tag = closureN_tag; - c_732621.fn = (function_type)__lambda_298; -c_732621.num_args = 0; -c_732621.num_elt = 1; -c_732621.elts = (object *)alloca(sizeof(object) * 1); -c_732621.elts[0] = ((closureN)self_73838)->elts[3]; - -return_closcall0(data,(closure)&c_732621); -} else { - -closureN_type c_732625; -c_732625.hdr.mark = gc_color_red; - c_732625.hdr.grayed = 0; -c_732625.tag = closureN_tag; - c_732625.fn = (function_type)__lambda_303; -c_732625.num_args = 0; -c_732625.num_elt = 5; -c_732625.elts = (object *)alloca(sizeof(object) * 5); -c_732625.elts[0] = ((closureN)self_73838)->elts[0]; -c_732625.elts[1] = ((closureN)self_73838)->elts[1]; -c_732625.elts[2] = ((closureN)self_73838)->elts[2]; -c_732625.elts[3] = ((closureN)self_73838)->elts[3]; -c_732625.elts[4] = ((closureN)self_73838)->elts[4]; - -return_closcall0(data,(closure)&c_732625);} -; -} - -static void __lambda_303(void *data, int argc, object self_73839) { - -closureN_type c_732627; -c_732627.hdr.mark = gc_color_red; - c_732627.hdr.grayed = 0; -c_732627.tag = closureN_tag; - c_732627.fn = (function_type)__lambda_302; -c_732627.num_args = 1; -c_732627.num_elt = 5; -c_732627.elts = (object *)alloca(sizeof(object) * 5); -c_732627.elts[0] = ((closureN)self_73839)->elts[0]; -c_732627.elts[1] = ((closureN)self_73839)->elts[1]; -c_732627.elts[2] = ((closureN)self_73839)->elts[2]; -c_732627.elts[3] = ((closureN)self_73839)->elts[3]; -c_732627.elts[4] = ((closureN)self_73839)->elts[4]; - -return_closcall1(data,(closure)&c_732627, car(((closureN)self_73839)->elts[4]));; -} - -static void __lambda_302(void *data, int argc, object self_73840, object r_73472) { - -closureN_type c_732632; -c_732632.hdr.mark = gc_color_red; - c_732632.hdr.grayed = 0; -c_732632.tag = closureN_tag; - c_732632.fn = (function_type)__lambda_301; -c_732632.num_args = 1; -c_732632.num_elt = 4; -c_732632.elts = (object *)alloca(sizeof(object) * 4); -c_732632.elts[0] = ((closureN)self_73840)->elts[0]; -c_732632.elts[1] = ((closureN)self_73840)->elts[2]; -c_732632.elts[2] = ((closureN)self_73840)->elts[3]; -c_732632.elts[3] = ((closureN)self_73840)->elts[4]; - -return_closcall3(data, cell_get(((closureN)self_73840)->elts[1]), &c_732632, ((closureN)self_73840)->elts[0], r_73472);; -} - -static void __lambda_301(void *data, int argc, object self_73841, object r_73469) { - -closureN_type c_732634; -c_732634.hdr.mark = gc_color_red; - c_732634.hdr.grayed = 0; -c_732634.tag = closureN_tag; - c_732634.fn = (function_type)__lambda_300; -c_732634.num_args = 1; -c_732634.num_elt = 4; -c_732634.elts = (object *)alloca(sizeof(object) * 4); -c_732634.elts[0] = ((closureN)self_73841)->elts[0]; -c_732634.elts[1] = ((closureN)self_73841)->elts[1]; -c_732634.elts[2] = ((closureN)self_73841)->elts[2]; -c_732634.elts[3] = r_73469; - -return_closcall1(data,(closure)&c_732634, cdr(((closureN)self_73841)->elts[3]));; -} - -static void __lambda_300(void *data, int argc, object self_73842, object r_73471) { - -closureN_type c_732639; -c_732639.hdr.mark = gc_color_red; - c_732639.hdr.grayed = 0; -c_732639.tag = closureN_tag; - c_732639.fn = (function_type)__lambda_299; -c_732639.num_args = 1; -c_732639.num_elt = 2; -c_732639.elts = (object *)alloca(sizeof(object) * 2); -c_732639.elts[0] = ((closureN)self_73842)->elts[2]; -c_732639.elts[1] = ((closureN)self_73842)->elts[3]; - -return_closcall3(data, cell_get(((closureN)self_73842)->elts[1]), &c_732639, ((closureN)self_73842)->elts[0], r_73471);; -} - -static void __lambda_299(void *data, int argc, object self_73843, object r_73470) { - -make_cons(c_732644,((closureN)self_73843)->elts[1], r_73470); -return_closcall1(data, ((closureN)self_73843)->elts[0], &c_732644);; -} - -static void __lambda_298(void *data, int argc, object self_73844) { - return_closcall1(data, ((closureN)self_73844)->elts[0], nil);; -} - -static void __lambda_297(void *data, int argc, object self_73845, object r_73466) { - -closureN_type c_731582; -c_731582.hdr.mark = gc_color_red; - c_731582.hdr.grayed = 0; -c_731582.tag = closureN_tag; - c_731582.fn = (function_type)__lambda_296; -c_731582.num_args = 1; -c_731582.num_elt = 29; -c_731582.elts = (object *)alloca(sizeof(object) * 29); -c_731582.elts[0] = ((closureN)self_73845)->elts[0]; -c_731582.elts[1] = ((closureN)self_73845)->elts[1]; -c_731582.elts[2] = ((closureN)self_73845)->elts[3]; -c_731582.elts[3] = ((closureN)self_73845)->elts[4]; -c_731582.elts[4] = ((closureN)self_73845)->elts[5]; -c_731582.elts[5] = ((closureN)self_73845)->elts[6]; -c_731582.elts[6] = ((closureN)self_73845)->elts[7]; -c_731582.elts[7] = ((closureN)self_73845)->elts[8]; -c_731582.elts[8] = ((closureN)self_73845)->elts[9]; -c_731582.elts[9] = ((closureN)self_73845)->elts[10]; -c_731582.elts[10] = ((closureN)self_73845)->elts[11]; -c_731582.elts[11] = ((closureN)self_73845)->elts[12]; -c_731582.elts[12] = ((closureN)self_73845)->elts[13]; -c_731582.elts[13] = ((closureN)self_73845)->elts[14]; -c_731582.elts[14] = ((closureN)self_73845)->elts[15]; -c_731582.elts[15] = ((closureN)self_73845)->elts[16]; -c_731582.elts[16] = ((closureN)self_73845)->elts[17]; -c_731582.elts[17] = ((closureN)self_73845)->elts[18]; -c_731582.elts[18] = ((closureN)self_73845)->elts[19]; -c_731582.elts[19] = ((closureN)self_73845)->elts[20]; -c_731582.elts[20] = ((closureN)self_73845)->elts[21]; -c_731582.elts[21] = ((closureN)self_73845)->elts[22]; -c_731582.elts[22] = ((closureN)self_73845)->elts[23]; -c_731582.elts[23] = ((closureN)self_73845)->elts[24]; -c_731582.elts[24] = ((closureN)self_73845)->elts[25]; -c_731582.elts[25] = ((closureN)self_73845)->elts[26]; -c_731582.elts[26] = ((closureN)self_73845)->elts[27]; -c_731582.elts[27] = ((closureN)self_73845)->elts[28]; -c_731582.elts[28] = ((closureN)self_73845)->elts[29]; - -return_closcall1(data,(closure)&c_731582, Cyc_set_car(data, ((closureN)self_73845)->elts[2], r_73466));; -} - -static void __lambda_296(void *data, int argc, object self_73846, object r_73287) { - -closureN_type c_731584; -c_731584.hdr.mark = gc_color_red; - c_731584.hdr.grayed = 0; -c_731584.tag = closureN_tag; - c_731584.fn = (function_type)__lambda_291; -c_731584.num_args = 1; -c_731584.num_elt = 29; -c_731584.elts = (object *)alloca(sizeof(object) * 29); -c_731584.elts[0] = ((closureN)self_73846)->elts[0]; -c_731584.elts[1] = ((closureN)self_73846)->elts[1]; -c_731584.elts[2] = ((closureN)self_73846)->elts[2]; -c_731584.elts[3] = ((closureN)self_73846)->elts[3]; -c_731584.elts[4] = ((closureN)self_73846)->elts[4]; -c_731584.elts[5] = ((closureN)self_73846)->elts[5]; -c_731584.elts[6] = ((closureN)self_73846)->elts[6]; -c_731584.elts[7] = ((closureN)self_73846)->elts[7]; -c_731584.elts[8] = ((closureN)self_73846)->elts[8]; -c_731584.elts[9] = ((closureN)self_73846)->elts[9]; -c_731584.elts[10] = ((closureN)self_73846)->elts[10]; -c_731584.elts[11] = ((closureN)self_73846)->elts[11]; -c_731584.elts[12] = ((closureN)self_73846)->elts[12]; -c_731584.elts[13] = ((closureN)self_73846)->elts[13]; -c_731584.elts[14] = ((closureN)self_73846)->elts[14]; -c_731584.elts[15] = ((closureN)self_73846)->elts[15]; -c_731584.elts[16] = ((closureN)self_73846)->elts[16]; -c_731584.elts[17] = ((closureN)self_73846)->elts[17]; -c_731584.elts[18] = ((closureN)self_73846)->elts[18]; -c_731584.elts[19] = ((closureN)self_73846)->elts[19]; -c_731584.elts[20] = ((closureN)self_73846)->elts[20]; -c_731584.elts[21] = ((closureN)self_73846)->elts[21]; -c_731584.elts[22] = ((closureN)self_73846)->elts[22]; -c_731584.elts[23] = ((closureN)self_73846)->elts[23]; -c_731584.elts[24] = ((closureN)self_73846)->elts[24]; -c_731584.elts[25] = ((closureN)self_73846)->elts[25]; -c_731584.elts[26] = ((closureN)self_73846)->elts[26]; -c_731584.elts[27] = ((closureN)self_73846)->elts[27]; -c_731584.elts[28] = ((closureN)self_73846)->elts[28]; - - -closureN_type c_732597; -c_732597.hdr.mark = gc_color_red; - c_732597.hdr.grayed = 0; -c_732597.tag = closureN_tag; - c_732597.fn = (function_type)__lambda_295; -c_732597.num_args = 1; -c_732597.num_elt = 2; -c_732597.elts = (object *)alloca(sizeof(object) * 2); -c_732597.elts[0] = ((closureN)self_73846)->elts[9]; -c_732597.elts[1] = ((closureN)self_73846)->elts[17]; - -return_closcall1(data,(closure)&c_731584, &c_732597);; -} - -static void __lambda_295(void *data, int argc, object self_73847, object k_73462, object x_73196) { - -closureN_type c_732602; -c_732602.hdr.mark = gc_color_red; - c_732602.hdr.grayed = 0; -c_732602.tag = closureN_tag; - c_732602.fn = (function_type)__lambda_294; -c_732602.num_args = 1; -c_732602.num_elt = 2; -c_732602.elts = (object *)alloca(sizeof(object) * 2); -c_732602.elts[0] = k_73462; -c_732602.elts[1] = ((closureN)self_73847)->elts[1]; - -return_closcall2(data, cell_get(((closureN)self_73847)->elts[0]), &c_732602, x_73196);; -} - -static void __lambda_294(void *data, int argc, object self_73848, object r_73463) { - -closureN_type c_732604; -c_732604.hdr.mark = gc_color_red; - c_732604.hdr.grayed = 0; -c_732604.tag = closureN_tag; - c_732604.fn = (function_type)__lambda_293; -c_732604.num_args = 1; -c_732604.num_elt = 3; -c_732604.elts = (object *)alloca(sizeof(object) * 3); -c_732604.elts[0] = ((closureN)self_73848)->elts[0]; -c_732604.elts[1] = r_73463; -c_732604.elts[2] = ((closureN)self_73848)->elts[1]; - -return_closcall1(data,(closure)&c_732604, nil);; -} - -static void __lambda_293(void *data, int argc, object self_73849, object r_73464) { - -closureN_type c_732606; -c_732606.hdr.mark = gc_color_red; - c_732606.hdr.grayed = 0; -c_732606.tag = closureN_tag; - c_732606.fn = (function_type)__lambda_292; -c_732606.num_args = 1; -c_732606.num_elt = 4; -c_732606.elts = (object *)alloca(sizeof(object) * 4); -c_732606.elts[0] = ((closureN)self_73849)->elts[0]; -c_732606.elts[1] = ((closureN)self_73849)->elts[1]; -c_732606.elts[2] = r_73464; -c_732606.elts[3] = ((closureN)self_73849)->elts[2]; - -return_closcall1(data,(closure)&c_732606, nil);; -} - -static void __lambda_292(void *data, int argc, object self_73850, object r_73465) { - return_closcall4(data, cell_get(((closureN)self_73850)->elts[3]), ((closureN)self_73850)->elts[0], ((closureN)self_73850)->elts[1], ((closureN)self_73850)->elts[2], r_73465);; -} - -static void __lambda_291(void *data, int argc, object self_73851, object r_73461) { - -closureN_type c_731586; -c_731586.hdr.mark = gc_color_red; - c_731586.hdr.grayed = 0; -c_731586.tag = closureN_tag; - c_731586.fn = (function_type)__lambda_290; -c_731586.num_args = 1; -c_731586.num_elt = 28; -c_731586.elts = (object *)alloca(sizeof(object) * 28); -c_731586.elts[0] = ((closureN)self_73851)->elts[0]; -c_731586.elts[1] = ((closureN)self_73851)->elts[1]; -c_731586.elts[2] = ((closureN)self_73851)->elts[2]; -c_731586.elts[3] = ((closureN)self_73851)->elts[3]; -c_731586.elts[4] = ((closureN)self_73851)->elts[4]; -c_731586.elts[5] = ((closureN)self_73851)->elts[5]; -c_731586.elts[6] = ((closureN)self_73851)->elts[6]; -c_731586.elts[7] = ((closureN)self_73851)->elts[7]; -c_731586.elts[8] = ((closureN)self_73851)->elts[8]; -c_731586.elts[9] = ((closureN)self_73851)->elts[9]; -c_731586.elts[10] = ((closureN)self_73851)->elts[10]; -c_731586.elts[11] = ((closureN)self_73851)->elts[11]; -c_731586.elts[12] = ((closureN)self_73851)->elts[12]; -c_731586.elts[13] = ((closureN)self_73851)->elts[13]; -c_731586.elts[14] = ((closureN)self_73851)->elts[14]; -c_731586.elts[15] = ((closureN)self_73851)->elts[15]; -c_731586.elts[16] = ((closureN)self_73851)->elts[16]; -c_731586.elts[17] = ((closureN)self_73851)->elts[17]; -c_731586.elts[18] = ((closureN)self_73851)->elts[19]; -c_731586.elts[19] = ((closureN)self_73851)->elts[20]; -c_731586.elts[20] = ((closureN)self_73851)->elts[21]; -c_731586.elts[21] = ((closureN)self_73851)->elts[22]; -c_731586.elts[22] = ((closureN)self_73851)->elts[23]; -c_731586.elts[23] = ((closureN)self_73851)->elts[24]; -c_731586.elts[24] = ((closureN)self_73851)->elts[25]; -c_731586.elts[25] = ((closureN)self_73851)->elts[26]; -c_731586.elts[26] = ((closureN)self_73851)->elts[27]; -c_731586.elts[27] = ((closureN)self_73851)->elts[28]; - -return_closcall1(data,(closure)&c_731586, Cyc_set_car(data, ((closureN)self_73851)->elts[18], r_73461));; -} - -static void __lambda_290(void *data, int argc, object self_73852, object r_73288) { - -closureN_type c_731588; -c_731588.hdr.mark = gc_color_red; - c_731588.hdr.grayed = 0; -c_731588.tag = closureN_tag; - c_731588.fn = (function_type)__lambda_262; -c_731588.num_args = 1; -c_731588.num_elt = 28; -c_731588.elts = (object *)alloca(sizeof(object) * 28); -c_731588.elts[0] = ((closureN)self_73852)->elts[0]; -c_731588.elts[1] = ((closureN)self_73852)->elts[1]; -c_731588.elts[2] = ((closureN)self_73852)->elts[2]; -c_731588.elts[3] = ((closureN)self_73852)->elts[3]; -c_731588.elts[4] = ((closureN)self_73852)->elts[4]; -c_731588.elts[5] = ((closureN)self_73852)->elts[5]; -c_731588.elts[6] = ((closureN)self_73852)->elts[6]; -c_731588.elts[7] = ((closureN)self_73852)->elts[7]; -c_731588.elts[8] = ((closureN)self_73852)->elts[8]; -c_731588.elts[9] = ((closureN)self_73852)->elts[9]; -c_731588.elts[10] = ((closureN)self_73852)->elts[10]; -c_731588.elts[11] = ((closureN)self_73852)->elts[11]; -c_731588.elts[12] = ((closureN)self_73852)->elts[12]; -c_731588.elts[13] = ((closureN)self_73852)->elts[13]; -c_731588.elts[14] = ((closureN)self_73852)->elts[14]; -c_731588.elts[15] = ((closureN)self_73852)->elts[15]; -c_731588.elts[16] = ((closureN)self_73852)->elts[16]; -c_731588.elts[17] = ((closureN)self_73852)->elts[17]; -c_731588.elts[18] = ((closureN)self_73852)->elts[18]; -c_731588.elts[19] = ((closureN)self_73852)->elts[19]; -c_731588.elts[20] = ((closureN)self_73852)->elts[20]; -c_731588.elts[21] = ((closureN)self_73852)->elts[21]; -c_731588.elts[22] = ((closureN)self_73852)->elts[22]; -c_731588.elts[23] = ((closureN)self_73852)->elts[23]; -c_731588.elts[24] = ((closureN)self_73852)->elts[24]; -c_731588.elts[25] = ((closureN)self_73852)->elts[25]; -c_731588.elts[26] = ((closureN)self_73852)->elts[26]; -c_731588.elts[27] = ((closureN)self_73852)->elts[27]; - - -closureN_type c_732446; -c_732446.hdr.mark = gc_color_red; - c_732446.hdr.grayed = 0; -c_732446.tag = closureN_tag; - c_732446.fn = (function_type)__lambda_289; -c_732446.num_args = 3; -c_732446.num_elt = 4; -c_732446.elts = (object *)alloca(sizeof(object) * 4); -c_732446.elts[0] = ((closureN)self_73852)->elts[3]; -c_732446.elts[1] = ((closureN)self_73852)->elts[5]; -c_732446.elts[2] = ((closureN)self_73852)->elts[17]; -c_732446.elts[3] = ((closureN)self_73852)->elts[26]; - -return_closcall1(data,(closure)&c_731588, &c_732446);; -} - -static void __lambda_289(void *data, int argc, object self_73853, object k_73442, object x_73195, object true_91lst_73194, object false_91lst_73193) { - -closureN_type c_732451; -c_732451.hdr.mark = gc_color_red; - c_732451.hdr.grayed = 0; -c_732451.tag = closureN_tag; - c_732451.fn = (function_type)__lambda_288; -c_732451.num_args = 1; -c_732451.num_elt = 8; -c_732451.elts = (object *)alloca(sizeof(object) * 8); -c_732451.elts[0] = false_91lst_73193; -c_732451.elts[1] = ((closureN)self_73853)->elts[0]; -c_732451.elts[2] = ((closureN)self_73853)->elts[1]; -c_732451.elts[3] = k_73442; -c_732451.elts[4] = ((closureN)self_73853)->elts[2]; -c_732451.elts[5] = true_91lst_73194; -c_732451.elts[6] = ((closureN)self_73853)->elts[3]; -c_732451.elts[7] = x_73195; - -return_closcall3(data, cell_get(((closureN)self_73853)->elts[3]), &c_732451, x_73195, true_91lst_73194);; -} - -static void __lambda_288(void *data, int argc, object self_73854, object r_73443) { - if( !eq(boolean_f, r_73443) ){ - -closureN_type c_732453; -c_732453.hdr.mark = gc_color_red; - c_732453.hdr.grayed = 0; -c_732453.tag = closureN_tag; - c_732453.fn = (function_type)__lambda_263; -c_732453.num_args = 0; -c_732453.num_elt = 1; -c_732453.elts = (object *)alloca(sizeof(object) * 1); -c_732453.elts[0] = ((closureN)self_73854)->elts[3]; - -return_closcall0(data,(closure)&c_732453); -} else { - -closureN_type c_732460; -c_732460.hdr.mark = gc_color_red; - c_732460.hdr.grayed = 0; -c_732460.tag = closureN_tag; - c_732460.fn = (function_type)__lambda_287; -c_732460.num_args = 1; -c_732460.num_elt = 8; -c_732460.elts = (object *)alloca(sizeof(object) * 8); -c_732460.elts[0] = ((closureN)self_73854)->elts[0]; -c_732460.elts[1] = ((closureN)self_73854)->elts[1]; -c_732460.elts[2] = ((closureN)self_73854)->elts[2]; -c_732460.elts[3] = ((closureN)self_73854)->elts[3]; -c_732460.elts[4] = ((closureN)self_73854)->elts[4]; -c_732460.elts[5] = ((closureN)self_73854)->elts[5]; -c_732460.elts[6] = ((closureN)self_73854)->elts[6]; -c_732460.elts[7] = ((closureN)self_73854)->elts[7]; - -return_closcall3(data, cell_get(((closureN)self_73854)->elts[1]), &c_732460, ((closureN)self_73854)->elts[7], ((closureN)self_73854)->elts[0]);} -; -} - -static void __lambda_287(void *data, int argc, object self_73855, object r_73444) { - if( !eq(boolean_f, r_73444) ){ - -closureN_type c_732462; -c_732462.hdr.mark = gc_color_red; - c_732462.hdr.grayed = 0; -c_732462.tag = closureN_tag; - c_732462.fn = (function_type)__lambda_264; -c_732462.num_args = 0; -c_732462.num_elt = 1; -c_732462.elts = (object *)alloca(sizeof(object) * 1); -c_732462.elts[0] = ((closureN)self_73855)->elts[3]; - -return_closcall0(data,(closure)&c_732462); -} else { - -closureN_type c_732466; -c_732466.hdr.mark = gc_color_red; - c_732466.hdr.grayed = 0; -c_732466.tag = closureN_tag; - c_732466.fn = (function_type)__lambda_286; -c_732466.num_args = 1; -c_732466.num_elt = 8; -c_732466.elts = (object *)alloca(sizeof(object) * 8); -c_732466.elts[0] = ((closureN)self_73855)->elts[0]; -c_732466.elts[1] = ((closureN)self_73855)->elts[1]; -c_732466.elts[2] = ((closureN)self_73855)->elts[2]; -c_732466.elts[3] = ((closureN)self_73855)->elts[3]; -c_732466.elts[4] = ((closureN)self_73855)->elts[4]; -c_732466.elts[5] = ((closureN)self_73855)->elts[5]; -c_732466.elts[6] = ((closureN)self_73855)->elts[6]; -c_732466.elts[7] = ((closureN)self_73855)->elts[7]; - -return_closcall1(data,(closure)&c_732466, Cyc_is_cons(((closureN)self_73855)->elts[7]));} -; -} - -static void __lambda_286(void *data, int argc, object self_73856, object r_73445) { - if( !eq(boolean_f, r_73445) ){ - -closureN_type c_732468; -c_732468.hdr.mark = gc_color_red; - c_732468.hdr.grayed = 0; -c_732468.tag = closureN_tag; - c_732468.fn = (function_type)__lambda_284; -c_732468.num_args = 1; -c_732468.num_elt = 8; -c_732468.elts = (object *)alloca(sizeof(object) * 8); -c_732468.elts[0] = ((closureN)self_73856)->elts[0]; -c_732468.elts[1] = ((closureN)self_73856)->elts[1]; -c_732468.elts[2] = ((closureN)self_73856)->elts[2]; -c_732468.elts[3] = ((closureN)self_73856)->elts[3]; -c_732468.elts[4] = ((closureN)self_73856)->elts[4]; -c_732468.elts[5] = ((closureN)self_73856)->elts[5]; -c_732468.elts[6] = ((closureN)self_73856)->elts[6]; -c_732468.elts[7] = ((closureN)self_73856)->elts[7]; - -return_closcall1(data,(closure)&c_732468, car(((closureN)self_73856)->elts[7])); -} else { - -closureN_type c_732586; -c_732586.hdr.mark = gc_color_red; - c_732586.hdr.grayed = 0; -c_732586.tag = closureN_tag; - c_732586.fn = (function_type)__lambda_285; -c_732586.num_args = 0; -c_732586.num_elt = 1; -c_732586.elts = (object *)alloca(sizeof(object) * 1); -c_732586.elts[0] = ((closureN)self_73856)->elts[3]; - -return_closcall0(data,(closure)&c_732586);} -; -} - -static void __lambda_285(void *data, int argc, object self_73857) { - return_closcall1(data, ((closureN)self_73857)->elts[0], boolean_f);; -} - -static void __lambda_284(void *data, int argc, object self_73858, object r_73460) { - -closureN_type c_732470; -c_732470.hdr.mark = gc_color_red; - c_732470.hdr.grayed = 0; -c_732470.tag = closureN_tag; - c_732470.fn = (function_type)__lambda_283; -c_732470.num_args = 1; -c_732470.num_elt = 7; -c_732470.elts = (object *)alloca(sizeof(object) * 7); -c_732470.elts[0] = ((closureN)self_73858)->elts[0]; -c_732470.elts[1] = ((closureN)self_73858)->elts[1]; -c_732470.elts[2] = ((closureN)self_73858)->elts[3]; -c_732470.elts[3] = ((closureN)self_73858)->elts[4]; -c_732470.elts[4] = ((closureN)self_73858)->elts[5]; -c_732470.elts[5] = ((closureN)self_73858)->elts[6]; -c_732470.elts[6] = ((closureN)self_73858)->elts[7]; - -return_closcall1(data,(closure)&c_732470, Cyc_eq(r_73460, cell_get(((closureN)self_73858)->elts[2])));; -} - -static void __lambda_283(void *data, int argc, object self_73859, object r_73446) { - if( !eq(boolean_f, r_73446) ){ - -closureN_type c_732472; -c_732472.hdr.mark = gc_color_red; - c_732472.hdr.grayed = 0; -c_732472.tag = closureN_tag; - c_732472.fn = (function_type)__lambda_281; -c_732472.num_args = 0; -c_732472.num_elt = 7; -c_732472.elts = (object *)alloca(sizeof(object) * 7); -c_732472.elts[0] = ((closureN)self_73859)->elts[0]; -c_732472.elts[1] = ((closureN)self_73859)->elts[1]; -c_732472.elts[2] = ((closureN)self_73859)->elts[2]; -c_732472.elts[3] = ((closureN)self_73859)->elts[3]; -c_732472.elts[4] = ((closureN)self_73859)->elts[4]; -c_732472.elts[5] = ((closureN)self_73859)->elts[5]; -c_732472.elts[6] = ((closureN)self_73859)->elts[6]; - -return_closcall0(data,(closure)&c_732472); -} else { - -closureN_type c_732574; -c_732574.hdr.mark = gc_color_red; - c_732574.hdr.grayed = 0; -c_732574.tag = closureN_tag; - c_732574.fn = (function_type)__lambda_282; -c_732574.num_args = 0; -c_732574.num_elt = 1; -c_732574.elts = (object *)alloca(sizeof(object) * 1); -c_732574.elts[0] = ((closureN)self_73859)->elts[2]; - -return_closcall0(data,(closure)&c_732574);} -; -} - -static void __lambda_282(void *data, int argc, object self_73860) { - return_closcall1(data, ((closureN)self_73860)->elts[0], boolean_f);; -} - -static void __lambda_281(void *data, int argc, object self_73861) { - -closureN_type c_732474; -c_732474.hdr.mark = gc_color_red; - c_732474.hdr.grayed = 0; -c_732474.tag = closureN_tag; - c_732474.fn = (function_type)__lambda_280; -c_732474.num_args = 1; -c_732474.num_elt = 7; -c_732474.elts = (object *)alloca(sizeof(object) * 7); -c_732474.elts[0] = ((closureN)self_73861)->elts[0]; -c_732474.elts[1] = ((closureN)self_73861)->elts[1]; -c_732474.elts[2] = ((closureN)self_73861)->elts[2]; -c_732474.elts[3] = ((closureN)self_73861)->elts[3]; -c_732474.elts[4] = ((closureN)self_73861)->elts[4]; -c_732474.elts[5] = ((closureN)self_73861)->elts[5]; -c_732474.elts[6] = ((closureN)self_73861)->elts[6]; - -return_closcall1(data,(closure)&c_732474, cadr(((closureN)self_73861)->elts[6]));; -} - -static void __lambda_280(void *data, int argc, object self_73862, object r_73459) { - -closureN_type c_732479; -c_732479.hdr.mark = gc_color_red; - c_732479.hdr.grayed = 0; -c_732479.tag = closureN_tag; - c_732479.fn = (function_type)__lambda_279; -c_732479.num_args = 1; -c_732479.num_elt = 6; -c_732479.elts = (object *)alloca(sizeof(object) * 6); -c_732479.elts[0] = ((closureN)self_73862)->elts[0]; -c_732479.elts[1] = ((closureN)self_73862)->elts[1]; -c_732479.elts[2] = ((closureN)self_73862)->elts[2]; -c_732479.elts[3] = ((closureN)self_73862)->elts[3]; -c_732479.elts[4] = ((closureN)self_73862)->elts[4]; -c_732479.elts[5] = ((closureN)self_73862)->elts[6]; - -return_closcall3(data, cell_get(((closureN)self_73862)->elts[5]), &c_732479, r_73459, ((closureN)self_73862)->elts[4]);; -} - -static void __lambda_279(void *data, int argc, object self_73863, object r_73447) { - if( !eq(boolean_f, r_73447) ){ - -closureN_type c_732481; -c_732481.hdr.mark = gc_color_red; - c_732481.hdr.grayed = 0; -c_732481.tag = closureN_tag; - c_732481.fn = (function_type)__lambda_266; -c_732481.num_args = 0; -c_732481.num_elt = 5; -c_732481.elts = (object *)alloca(sizeof(object) * 5); -c_732481.elts[0] = ((closureN)self_73863)->elts[0]; -c_732481.elts[1] = ((closureN)self_73863)->elts[2]; -c_732481.elts[2] = ((closureN)self_73863)->elts[3]; -c_732481.elts[3] = ((closureN)self_73863)->elts[4]; -c_732481.elts[4] = ((closureN)self_73863)->elts[5]; - -return_closcall0(data,(closure)&c_732481); -} else { - -closureN_type c_732495; -c_732495.hdr.mark = gc_color_red; - c_732495.hdr.grayed = 0; -c_732495.tag = closureN_tag; - c_732495.fn = (function_type)__lambda_278; -c_732495.num_args = 1; -c_732495.num_elt = 6; -c_732495.elts = (object *)alloca(sizeof(object) * 6); -c_732495.elts[0] = ((closureN)self_73863)->elts[0]; -c_732495.elts[1] = ((closureN)self_73863)->elts[1]; -c_732495.elts[2] = ((closureN)self_73863)->elts[2]; -c_732495.elts[3] = ((closureN)self_73863)->elts[3]; -c_732495.elts[4] = ((closureN)self_73863)->elts[4]; -c_732495.elts[5] = ((closureN)self_73863)->elts[5]; - -return_closcall1(data,(closure)&c_732495, cadr(((closureN)self_73863)->elts[5]));} -; -} - -static void __lambda_278(void *data, int argc, object self_73864, object r_73458) { - -closureN_type c_732500; -c_732500.hdr.mark = gc_color_red; - c_732500.hdr.grayed = 0; -c_732500.tag = closureN_tag; - c_732500.fn = (function_type)__lambda_277; -c_732500.num_args = 1; -c_732500.num_elt = 5; -c_732500.elts = (object *)alloca(sizeof(object) * 5); -c_732500.elts[0] = ((closureN)self_73864)->elts[0]; -c_732500.elts[1] = ((closureN)self_73864)->elts[2]; -c_732500.elts[2] = ((closureN)self_73864)->elts[3]; -c_732500.elts[3] = ((closureN)self_73864)->elts[4]; -c_732500.elts[4] = ((closureN)self_73864)->elts[5]; - -return_closcall3(data, cell_get(((closureN)self_73864)->elts[1]), &c_732500, r_73458, ((closureN)self_73864)->elts[0]);; -} - -static void __lambda_277(void *data, int argc, object self_73865, object r_73449) { - if( !eq(boolean_f, r_73449) ){ - -closureN_type c_732502; -c_732502.hdr.mark = gc_color_red; - c_732502.hdr.grayed = 0; -c_732502.tag = closureN_tag; - c_732502.fn = (function_type)__lambda_268; -c_732502.num_args = 0; -c_732502.num_elt = 5; -c_732502.elts = (object *)alloca(sizeof(object) * 5); -c_732502.elts[0] = ((closureN)self_73865)->elts[0]; -c_732502.elts[1] = ((closureN)self_73865)->elts[1]; -c_732502.elts[2] = ((closureN)self_73865)->elts[2]; -c_732502.elts[3] = ((closureN)self_73865)->elts[3]; -c_732502.elts[4] = ((closureN)self_73865)->elts[4]; - -return_closcall0(data,(closure)&c_732502); -} else { - -closureN_type c_732516; -c_732516.hdr.mark = gc_color_red; - c_732516.hdr.grayed = 0; -c_732516.tag = closureN_tag; - c_732516.fn = (function_type)__lambda_276; -c_732516.num_args = 0; -c_732516.num_elt = 5; -c_732516.elts = (object *)alloca(sizeof(object) * 5); -c_732516.elts[0] = ((closureN)self_73865)->elts[0]; -c_732516.elts[1] = ((closureN)self_73865)->elts[1]; -c_732516.elts[2] = ((closureN)self_73865)->elts[2]; -c_732516.elts[3] = ((closureN)self_73865)->elts[3]; -c_732516.elts[4] = ((closureN)self_73865)->elts[4]; - -return_closcall0(data,(closure)&c_732516);} -; -} - -static void __lambda_276(void *data, int argc, object self_73866) { - -closureN_type c_732518; -c_732518.hdr.mark = gc_color_red; - c_732518.hdr.grayed = 0; -c_732518.tag = closureN_tag; - c_732518.fn = (function_type)__lambda_275; -c_732518.num_args = 1; -c_732518.num_elt = 5; -c_732518.elts = (object *)alloca(sizeof(object) * 5); -c_732518.elts[0] = ((closureN)self_73866)->elts[0]; -c_732518.elts[1] = ((closureN)self_73866)->elts[1]; -c_732518.elts[2] = ((closureN)self_73866)->elts[2]; -c_732518.elts[3] = ((closureN)self_73866)->elts[3]; -c_732518.elts[4] = ((closureN)self_73866)->elts[4]; - -return_closcall1(data,(closure)&c_732518, caddr(((closureN)self_73866)->elts[4]));; -} - -static void __lambda_275(void *data, int argc, object self_73867, object r_73455) { - -closureN_type c_732520; -c_732520.hdr.mark = gc_color_red; - c_732520.hdr.grayed = 0; -c_732520.tag = closureN_tag; - c_732520.fn = (function_type)__lambda_274; -c_732520.num_args = 1; -c_732520.num_elt = 6; -c_732520.elts = (object *)alloca(sizeof(object) * 6); -c_732520.elts[0] = ((closureN)self_73867)->elts[0]; -c_732520.elts[1] = ((closureN)self_73867)->elts[1]; -c_732520.elts[2] = r_73455; -c_732520.elts[3] = ((closureN)self_73867)->elts[2]; -c_732520.elts[4] = ((closureN)self_73867)->elts[3]; -c_732520.elts[5] = ((closureN)self_73867)->elts[4]; - -return_closcall1(data,(closure)&c_732520, cadr(((closureN)self_73867)->elts[4]));; -} - -static void __lambda_274(void *data, int argc, object self_73868, object r_73457) { - -closureN_type c_732522; -c_732522.hdr.mark = gc_color_red; - c_732522.hdr.grayed = 0; -c_732522.tag = closureN_tag; - c_732522.fn = (function_type)__lambda_273; -c_732522.num_args = 1; -c_732522.num_elt = 6; -c_732522.elts = (object *)alloca(sizeof(object) * 6); -c_732522.elts[0] = ((closureN)self_73868)->elts[0]; -c_732522.elts[1] = ((closureN)self_73868)->elts[1]; -c_732522.elts[2] = ((closureN)self_73868)->elts[2]; -c_732522.elts[3] = ((closureN)self_73868)->elts[3]; -c_732522.elts[4] = ((closureN)self_73868)->elts[4]; -c_732522.elts[5] = ((closureN)self_73868)->elts[5]; - - -make_cons(c_732557,r_73457, ((closureN)self_73868)->elts[4]); -return_closcall1(data,(closure)&c_732522, &c_732557);; -} - -static void __lambda_273(void *data, int argc, object self_73869, object r_73456) { - -closureN_type c_732527; -c_732527.hdr.mark = gc_color_red; - c_732527.hdr.grayed = 0; -c_732527.tag = closureN_tag; - c_732527.fn = (function_type)__lambda_272; -c_732527.num_args = 1; -c_732527.num_elt = 5; -c_732527.elts = (object *)alloca(sizeof(object) * 5); -c_732527.elts[0] = ((closureN)self_73869)->elts[0]; -c_732527.elts[1] = ((closureN)self_73869)->elts[1]; -c_732527.elts[2] = ((closureN)self_73869)->elts[3]; -c_732527.elts[3] = ((closureN)self_73869)->elts[4]; -c_732527.elts[4] = ((closureN)self_73869)->elts[5]; - -return_closcall4(data, cell_get(((closureN)self_73869)->elts[3]), &c_732527, ((closureN)self_73869)->elts[2], r_73456, ((closureN)self_73869)->elts[0]);; -} - -static void __lambda_272(void *data, int argc, object self_73870, object r_73451) { - if( !eq(boolean_f, r_73451) ){ - -closureN_type c_732529; -c_732529.hdr.mark = gc_color_red; - c_732529.hdr.grayed = 0; -c_732529.tag = closureN_tag; - c_732529.fn = (function_type)__lambda_271; -c_732529.num_args = 1; -c_732529.num_elt = 5; -c_732529.elts = (object *)alloca(sizeof(object) * 5); -c_732529.elts[0] = ((closureN)self_73870)->elts[0]; -c_732529.elts[1] = ((closureN)self_73870)->elts[1]; -c_732529.elts[2] = ((closureN)self_73870)->elts[2]; -c_732529.elts[3] = ((closureN)self_73870)->elts[3]; -c_732529.elts[4] = ((closureN)self_73870)->elts[4]; - -return_closcall1(data,(closure)&c_732529, cadddr(((closureN)self_73870)->elts[4])); -} else { - return_closcall1(data, ((closureN)self_73870)->elts[1], boolean_f);} -; -} - -static void __lambda_271(void *data, int argc, object self_73871, object r_73452) { - -closureN_type c_732531; -c_732531.hdr.mark = gc_color_red; - c_732531.hdr.grayed = 0; -c_732531.tag = closureN_tag; - c_732531.fn = (function_type)__lambda_270; -c_732531.num_args = 1; -c_732531.num_elt = 5; -c_732531.elts = (object *)alloca(sizeof(object) * 5); -c_732531.elts[0] = ((closureN)self_73871)->elts[0]; -c_732531.elts[1] = ((closureN)self_73871)->elts[1]; -c_732531.elts[2] = r_73452; -c_732531.elts[3] = ((closureN)self_73871)->elts[2]; -c_732531.elts[4] = ((closureN)self_73871)->elts[3]; - -return_closcall1(data,(closure)&c_732531, cadr(((closureN)self_73871)->elts[4]));; -} - -static void __lambda_270(void *data, int argc, object self_73872, object r_73454) { - -closureN_type c_732533; -c_732533.hdr.mark = gc_color_red; - c_732533.hdr.grayed = 0; -c_732533.tag = closureN_tag; - c_732533.fn = (function_type)__lambda_269; -c_732533.num_args = 1; -c_732533.num_elt = 4; -c_732533.elts = (object *)alloca(sizeof(object) * 4); -c_732533.elts[0] = ((closureN)self_73872)->elts[1]; -c_732533.elts[1] = ((closureN)self_73872)->elts[2]; -c_732533.elts[2] = ((closureN)self_73872)->elts[3]; -c_732533.elts[3] = ((closureN)self_73872)->elts[4]; - - -make_cons(c_732543,r_73454, ((closureN)self_73872)->elts[0]); -return_closcall1(data,(closure)&c_732533, &c_732543);; -} - -static void __lambda_269(void *data, int argc, object self_73873, object r_73453) { - return_closcall4(data, cell_get(((closureN)self_73873)->elts[2]), ((closureN)self_73873)->elts[0], ((closureN)self_73873)->elts[1], ((closureN)self_73873)->elts[3], r_73453);; -} - -static void __lambda_268(void *data, int argc, object self_73874) { - -closureN_type c_732504; -c_732504.hdr.mark = gc_color_red; - c_732504.hdr.grayed = 0; -c_732504.tag = closureN_tag; - c_732504.fn = (function_type)__lambda_267; -c_732504.num_args = 1; -c_732504.num_elt = 4; -c_732504.elts = (object *)alloca(sizeof(object) * 4); -c_732504.elts[0] = ((closureN)self_73874)->elts[0]; -c_732504.elts[1] = ((closureN)self_73874)->elts[1]; -c_732504.elts[2] = ((closureN)self_73874)->elts[2]; -c_732504.elts[3] = ((closureN)self_73874)->elts[3]; - -return_closcall1(data,(closure)&c_732504, cadddr(((closureN)self_73874)->elts[4]));; -} - -static void __lambda_267(void *data, int argc, object self_73875, object r_73450) { - return_closcall4(data, cell_get(((closureN)self_73875)->elts[2]), ((closureN)self_73875)->elts[1], r_73450, ((closureN)self_73875)->elts[3], ((closureN)self_73875)->elts[0]);; -} - -static void __lambda_266(void *data, int argc, object self_73876) { - -closureN_type c_732483; -c_732483.hdr.mark = gc_color_red; - c_732483.hdr.grayed = 0; -c_732483.tag = closureN_tag; - c_732483.fn = (function_type)__lambda_265; -c_732483.num_args = 1; -c_732483.num_elt = 4; -c_732483.elts = (object *)alloca(sizeof(object) * 4); -c_732483.elts[0] = ((closureN)self_73876)->elts[0]; -c_732483.elts[1] = ((closureN)self_73876)->elts[1]; -c_732483.elts[2] = ((closureN)self_73876)->elts[2]; -c_732483.elts[3] = ((closureN)self_73876)->elts[3]; - -return_closcall1(data,(closure)&c_732483, caddr(((closureN)self_73876)->elts[4]));; -} - -static void __lambda_265(void *data, int argc, object self_73877, object r_73448) { - return_closcall4(data, cell_get(((closureN)self_73877)->elts[2]), ((closureN)self_73877)->elts[1], r_73448, ((closureN)self_73877)->elts[3], ((closureN)self_73877)->elts[0]);; -} - -static void __lambda_264(void *data, int argc, object self_73878) { - return_closcall1(data, ((closureN)self_73878)->elts[0], boolean_f);; -} - -static void __lambda_263(void *data, int argc, object self_73879) { - return_closcall1(data, ((closureN)self_73879)->elts[0], boolean_t);; -} - -static void __lambda_262(void *data, int argc, object self_73880, object r_73441) { - -closureN_type c_731590; -c_731590.hdr.mark = gc_color_red; - c_731590.hdr.grayed = 0; -c_731590.tag = closureN_tag; - c_731590.fn = (function_type)__lambda_261; -c_731590.num_args = 1; -c_731590.num_elt = 27; -c_731590.elts = (object *)alloca(sizeof(object) * 27); -c_731590.elts[0] = ((closureN)self_73880)->elts[0]; -c_731590.elts[1] = ((closureN)self_73880)->elts[1]; -c_731590.elts[2] = ((closureN)self_73880)->elts[2]; -c_731590.elts[3] = ((closureN)self_73880)->elts[3]; -c_731590.elts[4] = ((closureN)self_73880)->elts[4]; -c_731590.elts[5] = ((closureN)self_73880)->elts[5]; -c_731590.elts[6] = ((closureN)self_73880)->elts[6]; -c_731590.elts[7] = ((closureN)self_73880)->elts[7]; -c_731590.elts[8] = ((closureN)self_73880)->elts[8]; -c_731590.elts[9] = ((closureN)self_73880)->elts[9]; -c_731590.elts[10] = ((closureN)self_73880)->elts[10]; -c_731590.elts[11] = ((closureN)self_73880)->elts[11]; -c_731590.elts[12] = ((closureN)self_73880)->elts[12]; -c_731590.elts[13] = ((closureN)self_73880)->elts[13]; -c_731590.elts[14] = ((closureN)self_73880)->elts[14]; -c_731590.elts[15] = ((closureN)self_73880)->elts[15]; -c_731590.elts[16] = ((closureN)self_73880)->elts[16]; -c_731590.elts[17] = ((closureN)self_73880)->elts[18]; -c_731590.elts[18] = ((closureN)self_73880)->elts[19]; -c_731590.elts[19] = ((closureN)self_73880)->elts[20]; -c_731590.elts[20] = ((closureN)self_73880)->elts[21]; -c_731590.elts[21] = ((closureN)self_73880)->elts[22]; -c_731590.elts[22] = ((closureN)self_73880)->elts[23]; -c_731590.elts[23] = ((closureN)self_73880)->elts[24]; -c_731590.elts[24] = ((closureN)self_73880)->elts[25]; -c_731590.elts[25] = ((closureN)self_73880)->elts[26]; -c_731590.elts[26] = ((closureN)self_73880)->elts[27]; - -return_closcall1(data,(closure)&c_731590, Cyc_set_car(data, ((closureN)self_73880)->elts[17], r_73441));; -} - -static void __lambda_261(void *data, int argc, object self_73881, object r_73289) { - -closureN_type c_731592; -c_731592.hdr.mark = gc_color_red; - c_731592.hdr.grayed = 0; -c_731592.tag = closureN_tag; - c_731592.fn = (function_type)__lambda_260; -c_731592.num_args = 1; -c_731592.num_elt = 27; -c_731592.elts = (object *)alloca(sizeof(object) * 27); -c_731592.elts[0] = ((closureN)self_73881)->elts[0]; -c_731592.elts[1] = ((closureN)self_73881)->elts[1]; -c_731592.elts[2] = ((closureN)self_73881)->elts[2]; -c_731592.elts[3] = ((closureN)self_73881)->elts[3]; -c_731592.elts[4] = ((closureN)self_73881)->elts[4]; -c_731592.elts[5] = ((closureN)self_73881)->elts[5]; -c_731592.elts[6] = ((closureN)self_73881)->elts[6]; -c_731592.elts[7] = ((closureN)self_73881)->elts[7]; -c_731592.elts[8] = ((closureN)self_73881)->elts[8]; -c_731592.elts[9] = ((closureN)self_73881)->elts[9]; -c_731592.elts[10] = ((closureN)self_73881)->elts[10]; -c_731592.elts[11] = ((closureN)self_73881)->elts[11]; -c_731592.elts[12] = ((closureN)self_73881)->elts[12]; -c_731592.elts[13] = ((closureN)self_73881)->elts[13]; -c_731592.elts[14] = ((closureN)self_73881)->elts[14]; -c_731592.elts[15] = ((closureN)self_73881)->elts[15]; -c_731592.elts[16] = ((closureN)self_73881)->elts[16]; -c_731592.elts[17] = ((closureN)self_73881)->elts[17]; -c_731592.elts[18] = ((closureN)self_73881)->elts[18]; -c_731592.elts[19] = ((closureN)self_73881)->elts[19]; -c_731592.elts[20] = ((closureN)self_73881)->elts[20]; -c_731592.elts[21] = ((closureN)self_73881)->elts[21]; -c_731592.elts[22] = ((closureN)self_73881)->elts[22]; -c_731592.elts[23] = ((closureN)self_73881)->elts[23]; -c_731592.elts[24] = ((closureN)self_73881)->elts[24]; -c_731592.elts[25] = ((closureN)self_73881)->elts[25]; -c_731592.elts[26] = ((closureN)self_73881)->elts[26]; - -return_closcall1(data,(closure)&c_731592, quote__85);; -} - -static void __lambda_260(void *data, int argc, object self_73882, object r_73440) { - -closureN_type c_731594; -c_731594.hdr.mark = gc_color_red; - c_731594.hdr.grayed = 0; -c_731594.tag = closureN_tag; - c_731594.fn = (function_type)__lambda_259; -c_731594.num_args = 1; -c_731594.num_elt = 27; -c_731594.elts = (object *)alloca(sizeof(object) * 27); -c_731594.elts[0] = ((closureN)self_73882)->elts[0]; -c_731594.elts[1] = ((closureN)self_73882)->elts[1]; -c_731594.elts[2] = ((closureN)self_73882)->elts[2]; -c_731594.elts[3] = ((closureN)self_73882)->elts[3]; -c_731594.elts[4] = ((closureN)self_73882)->elts[4]; -c_731594.elts[5] = ((closureN)self_73882)->elts[5]; -c_731594.elts[6] = ((closureN)self_73882)->elts[6]; -c_731594.elts[7] = ((closureN)self_73882)->elts[7]; -c_731594.elts[8] = ((closureN)self_73882)->elts[8]; -c_731594.elts[9] = ((closureN)self_73882)->elts[9]; -c_731594.elts[10] = ((closureN)self_73882)->elts[10]; -c_731594.elts[11] = ((closureN)self_73882)->elts[11]; -c_731594.elts[12] = ((closureN)self_73882)->elts[12]; -c_731594.elts[13] = ((closureN)self_73882)->elts[13]; -c_731594.elts[14] = ((closureN)self_73882)->elts[14]; -c_731594.elts[15] = ((closureN)self_73882)->elts[15]; -c_731594.elts[16] = ((closureN)self_73882)->elts[16]; -c_731594.elts[17] = ((closureN)self_73882)->elts[17]; -c_731594.elts[18] = ((closureN)self_73882)->elts[18]; -c_731594.elts[19] = ((closureN)self_73882)->elts[19]; -c_731594.elts[20] = ((closureN)self_73882)->elts[20]; -c_731594.elts[21] = ((closureN)self_73882)->elts[21]; -c_731594.elts[22] = ((closureN)self_73882)->elts[22]; -c_731594.elts[23] = ((closureN)self_73882)->elts[23]; -c_731594.elts[24] = ((closureN)self_73882)->elts[24]; -c_731594.elts[25] = ((closureN)self_73882)->elts[25]; -c_731594.elts[26] = ((closureN)self_73882)->elts[26]; - -return_closcall1(data,(closure)&c_731594, Cyc_set_car(data, ((closureN)self_73882)->elts[5], r_73440));; -} - -static void __lambda_259(void *data, int argc, object self_73883, object r_73290) { - -closureN_type c_731596; -c_731596.hdr.mark = gc_color_red; - c_731596.hdr.grayed = 0; -c_731596.tag = closureN_tag; - c_731596.fn = (function_type)__lambda_258; -c_731596.num_args = 1; -c_731596.num_elt = 27; -c_731596.elts = (object *)alloca(sizeof(object) * 27); -c_731596.elts[0] = ((closureN)self_73883)->elts[0]; -c_731596.elts[1] = ((closureN)self_73883)->elts[1]; -c_731596.elts[2] = ((closureN)self_73883)->elts[2]; -c_731596.elts[3] = ((closureN)self_73883)->elts[3]; -c_731596.elts[4] = ((closureN)self_73883)->elts[4]; -c_731596.elts[5] = ((closureN)self_73883)->elts[5]; -c_731596.elts[6] = ((closureN)self_73883)->elts[6]; -c_731596.elts[7] = ((closureN)self_73883)->elts[7]; -c_731596.elts[8] = ((closureN)self_73883)->elts[8]; -c_731596.elts[9] = ((closureN)self_73883)->elts[9]; -c_731596.elts[10] = ((closureN)self_73883)->elts[10]; -c_731596.elts[11] = ((closureN)self_73883)->elts[11]; -c_731596.elts[12] = ((closureN)self_73883)->elts[12]; -c_731596.elts[13] = ((closureN)self_73883)->elts[13]; -c_731596.elts[14] = ((closureN)self_73883)->elts[14]; -c_731596.elts[15] = ((closureN)self_73883)->elts[15]; -c_731596.elts[16] = ((closureN)self_73883)->elts[16]; -c_731596.elts[17] = ((closureN)self_73883)->elts[17]; -c_731596.elts[18] = ((closureN)self_73883)->elts[18]; -c_731596.elts[19] = ((closureN)self_73883)->elts[19]; -c_731596.elts[20] = ((closureN)self_73883)->elts[20]; -c_731596.elts[21] = ((closureN)self_73883)->elts[21]; -c_731596.elts[22] = ((closureN)self_73883)->elts[22]; -c_731596.elts[23] = ((closureN)self_73883)->elts[23]; -c_731596.elts[24] = ((closureN)self_73883)->elts[24]; -c_731596.elts[25] = ((closureN)self_73883)->elts[25]; -c_731596.elts[26] = ((closureN)self_73883)->elts[26]; - -return_closcall1(data,(closure)&c_731596, Cyc_set_car(data, ((closureN)self_73883)->elts[11], obj_int2obj(0)));; -} - -static void __lambda_258(void *data, int argc, object self_73884, object r_73291) { - -closureN_type c_731598; -c_731598.hdr.mark = gc_color_red; - c_731598.hdr.grayed = 0; -c_731598.tag = closureN_tag; - c_731598.fn = (function_type)__lambda_251; -c_731598.num_args = 1; -c_731598.num_elt = 27; -c_731598.elts = (object *)alloca(sizeof(object) * 27); -c_731598.elts[0] = ((closureN)self_73884)->elts[0]; -c_731598.elts[1] = ((closureN)self_73884)->elts[1]; -c_731598.elts[2] = ((closureN)self_73884)->elts[2]; -c_731598.elts[3] = ((closureN)self_73884)->elts[3]; -c_731598.elts[4] = ((closureN)self_73884)->elts[4]; -c_731598.elts[5] = ((closureN)self_73884)->elts[5]; -c_731598.elts[6] = ((closureN)self_73884)->elts[6]; -c_731598.elts[7] = ((closureN)self_73884)->elts[7]; -c_731598.elts[8] = ((closureN)self_73884)->elts[8]; -c_731598.elts[9] = ((closureN)self_73884)->elts[9]; -c_731598.elts[10] = ((closureN)self_73884)->elts[10]; -c_731598.elts[11] = ((closureN)self_73884)->elts[11]; -c_731598.elts[12] = ((closureN)self_73884)->elts[12]; -c_731598.elts[13] = ((closureN)self_73884)->elts[13]; -c_731598.elts[14] = ((closureN)self_73884)->elts[14]; -c_731598.elts[15] = ((closureN)self_73884)->elts[15]; -c_731598.elts[16] = ((closureN)self_73884)->elts[16]; -c_731598.elts[17] = ((closureN)self_73884)->elts[17]; -c_731598.elts[18] = ((closureN)self_73884)->elts[18]; -c_731598.elts[19] = ((closureN)self_73884)->elts[19]; -c_731598.elts[20] = ((closureN)self_73884)->elts[20]; -c_731598.elts[21] = ((closureN)self_73884)->elts[21]; -c_731598.elts[22] = ((closureN)self_73884)->elts[22]; -c_731598.elts[23] = ((closureN)self_73884)->elts[23]; -c_731598.elts[24] = ((closureN)self_73884)->elts[24]; -c_731598.elts[25] = ((closureN)self_73884)->elts[25]; -c_731598.elts[26] = ((closureN)self_73884)->elts[26]; - - -mclosure0(c_732401, (function_type)__lambda_257);c_732401.num_args = 3; -return_closcall1(data,(closure)&c_731598, &c_732401);; -} - -static void __lambda_257(void *data, int argc, object self_73885, object k_73434, object x_73192, object y_73191, object original_73190) { - -closureN_type c_732403; -c_732403.hdr.mark = gc_color_red; - c_732403.hdr.grayed = 0; -c_732403.tag = closureN_tag; - c_732403.fn = (function_type)__lambda_255; -c_732403.num_args = 0; -c_732403.num_elt = 3; -c_732403.elts = (object *)alloca(sizeof(object) * 3); -c_732403.elts[0] = original_73190; -c_732403.elts[1] = x_73192; -c_732403.elts[2] = y_73191; - - -closureN_type c_732426; -c_732426.hdr.mark = gc_color_red; - c_732426.hdr.grayed = 0; -c_732426.tag = closureN_tag; - c_732426.fn = (function_type)__lambda_256; -c_732426.num_args = 1; -c_732426.num_elt = 4; -c_732426.elts = (object *)alloca(sizeof(object) * 4); -c_732426.elts[0] = k_73434; -c_732426.elts[1] = original_73190; -c_732426.elts[2] = x_73192; -c_732426.elts[3] = y_73191; - -return_closcall1(data,(closure)&c_732403, &c_732426);; -} - -static void __lambda_256(void *data, int argc, object self_73886, object r_73435) { - if( !eq(boolean_f, r_73435) ){ - return_closcall1(data, ((closureN)self_73886)->elts[0], ((closureN)self_73886)->elts[1]); -} else { - -make_cons(c_732434,((closureN)self_73886)->elts[2], ((closureN)self_73886)->elts[3]); -return_closcall1(data, ((closureN)self_73886)->elts[0], &c_732434);} -; -} - -static void __lambda_255(void *data, int argc, object self_73887, object k_73436) { - -closureN_type c_732405; -c_732405.hdr.mark = gc_color_red; - c_732405.hdr.grayed = 0; -c_732405.tag = closureN_tag; - c_732405.fn = (function_type)__lambda_254; -c_732405.num_args = 1; -c_732405.num_elt = 4; -c_732405.elts = (object *)alloca(sizeof(object) * 4); -c_732405.elts[0] = k_73436; -c_732405.elts[1] = ((closureN)self_73887)->elts[0]; -c_732405.elts[2] = ((closureN)self_73887)->elts[1]; -c_732405.elts[3] = ((closureN)self_73887)->elts[2]; - -return_closcall1(data,(closure)&c_732405, car(((closureN)self_73887)->elts[0]));; -} - -static void __lambda_254(void *data, int argc, object self_73888, object r_73439) { - -closureN_type c_732407; -c_732407.hdr.mark = gc_color_red; - c_732407.hdr.grayed = 0; -c_732407.tag = closureN_tag; - c_732407.fn = (function_type)__lambda_253; -c_732407.num_args = 1; -c_732407.num_elt = 3; -c_732407.elts = (object *)alloca(sizeof(object) * 3); -c_732407.elts[0] = ((closureN)self_73888)->elts[0]; -c_732407.elts[1] = ((closureN)self_73888)->elts[1]; -c_732407.elts[2] = ((closureN)self_73888)->elts[3]; - -return_closcall1(data,(closure)&c_732407, Cyc_eq(((closureN)self_73888)->elts[2], r_73439));; -} - -static void __lambda_253(void *data, int argc, object self_73889, object r_73437) { - if( !eq(boolean_f, r_73437) ){ - -closureN_type c_732409; -c_732409.hdr.mark = gc_color_red; - c_732409.hdr.grayed = 0; -c_732409.tag = closureN_tag; - c_732409.fn = (function_type)__lambda_252; -c_732409.num_args = 1; -c_732409.num_elt = 2; -c_732409.elts = (object *)alloca(sizeof(object) * 2); -c_732409.elts[0] = ((closureN)self_73889)->elts[0]; -c_732409.elts[1] = ((closureN)self_73889)->elts[2]; - -return_closcall1(data,(closure)&c_732409, cdr(((closureN)self_73889)->elts[1])); -} else { - return_closcall1(data, ((closureN)self_73889)->elts[0], boolean_f);} -; -} - -static void __lambda_252(void *data, int argc, object self_73890, object r_73438) { - return_closcall1(data, ((closureN)self_73890)->elts[0], Cyc_eq(((closureN)self_73890)->elts[1], r_73438));; -} - -static void __lambda_251(void *data, int argc, object self_73891, object r_73433) { - -closureN_type c_731600; -c_731600.hdr.mark = gc_color_red; - c_731600.hdr.grayed = 0; -c_731600.tag = closureN_tag; - c_731600.fn = (function_type)__lambda_250; -c_731600.num_args = 1; -c_731600.num_elt = 27; -c_731600.elts = (object *)alloca(sizeof(object) * 27); -c_731600.elts[0] = ((closureN)self_73891)->elts[0]; -c_731600.elts[1] = ((closureN)self_73891)->elts[1]; -c_731600.elts[2] = ((closureN)self_73891)->elts[2]; -c_731600.elts[3] = ((closureN)self_73891)->elts[3]; -c_731600.elts[4] = ((closureN)self_73891)->elts[4]; -c_731600.elts[5] = ((closureN)self_73891)->elts[5]; -c_731600.elts[6] = ((closureN)self_73891)->elts[6]; -c_731600.elts[7] = ((closureN)self_73891)->elts[7]; -c_731600.elts[8] = ((closureN)self_73891)->elts[8]; -c_731600.elts[9] = ((closureN)self_73891)->elts[9]; -c_731600.elts[10] = ((closureN)self_73891)->elts[10]; -c_731600.elts[11] = ((closureN)self_73891)->elts[11]; -c_731600.elts[12] = ((closureN)self_73891)->elts[12]; -c_731600.elts[13] = ((closureN)self_73891)->elts[13]; -c_731600.elts[14] = ((closureN)self_73891)->elts[14]; -c_731600.elts[15] = ((closureN)self_73891)->elts[15]; -c_731600.elts[16] = ((closureN)self_73891)->elts[16]; -c_731600.elts[17] = ((closureN)self_73891)->elts[17]; -c_731600.elts[18] = ((closureN)self_73891)->elts[18]; -c_731600.elts[19] = ((closureN)self_73891)->elts[19]; -c_731600.elts[20] = ((closureN)self_73891)->elts[20]; -c_731600.elts[21] = ((closureN)self_73891)->elts[21]; -c_731600.elts[22] = ((closureN)self_73891)->elts[22]; -c_731600.elts[23] = ((closureN)self_73891)->elts[23]; -c_731600.elts[24] = ((closureN)self_73891)->elts[24]; -c_731600.elts[25] = ((closureN)self_73891)->elts[25]; -c_731600.elts[26] = ((closureN)self_73891)->elts[26]; - -return_closcall1(data,(closure)&c_731600, Cyc_set_car(data, ((closureN)self_73891)->elts[13], r_73433));; -} - -static void __lambda_250(void *data, int argc, object self_73892, object r_73292) { - -closureN_type c_731602; -c_731602.hdr.mark = gc_color_red; - c_731602.hdr.grayed = 0; -c_731602.tag = closureN_tag; - c_731602.fn = (function_type)__lambda_237; -c_731602.num_args = 1; -c_731602.num_elt = 26; -c_731602.elts = (object *)alloca(sizeof(object) * 26); -c_731602.elts[0] = ((closureN)self_73892)->elts[0]; -c_731602.elts[1] = ((closureN)self_73892)->elts[1]; -c_731602.elts[2] = ((closureN)self_73892)->elts[2]; -c_731602.elts[3] = ((closureN)self_73892)->elts[3]; -c_731602.elts[4] = ((closureN)self_73892)->elts[5]; -c_731602.elts[5] = ((closureN)self_73892)->elts[6]; -c_731602.elts[6] = ((closureN)self_73892)->elts[7]; -c_731602.elts[7] = ((closureN)self_73892)->elts[8]; -c_731602.elts[8] = ((closureN)self_73892)->elts[9]; -c_731602.elts[9] = ((closureN)self_73892)->elts[10]; -c_731602.elts[10] = ((closureN)self_73892)->elts[11]; -c_731602.elts[11] = ((closureN)self_73892)->elts[12]; -c_731602.elts[12] = ((closureN)self_73892)->elts[13]; -c_731602.elts[13] = ((closureN)self_73892)->elts[14]; -c_731602.elts[14] = ((closureN)self_73892)->elts[15]; -c_731602.elts[15] = ((closureN)self_73892)->elts[16]; -c_731602.elts[16] = ((closureN)self_73892)->elts[17]; -c_731602.elts[17] = ((closureN)self_73892)->elts[18]; -c_731602.elts[18] = ((closureN)self_73892)->elts[19]; -c_731602.elts[19] = ((closureN)self_73892)->elts[20]; -c_731602.elts[20] = ((closureN)self_73892)->elts[21]; -c_731602.elts[21] = ((closureN)self_73892)->elts[22]; -c_731602.elts[22] = ((closureN)self_73892)->elts[23]; -c_731602.elts[23] = ((closureN)self_73892)->elts[24]; -c_731602.elts[24] = ((closureN)self_73892)->elts[25]; -c_731602.elts[25] = ((closureN)self_73892)->elts[26]; - - -closureN_type c_732334; -c_732334.hdr.mark = gc_color_red; - c_732334.hdr.grayed = 0; -c_732334.tag = closureN_tag; - c_732334.fn = (function_type)__lambda_249; -c_732334.num_args = 1; -c_732334.num_elt = 5; -c_732334.elts = (object *)alloca(sizeof(object) * 5); -c_732334.elts[0] = ((closureN)self_73892)->elts[4]; -c_732334.elts[1] = ((closureN)self_73892)->elts[10]; -c_732334.elts[2] = ((closureN)self_73892)->elts[11]; -c_732334.elts[3] = ((closureN)self_73892)->elts[12]; -c_732334.elts[4] = ((closureN)self_73892)->elts[13]; - -return_closcall1(data,(closure)&c_731602, &c_732334);; -} - -static void __lambda_249(void *data, int argc, object self_73893, object k_73423, object term_73189) { - -closureN_type c_732336; -c_732336.hdr.mark = gc_color_red; - c_732336.hdr.grayed = 0; -c_732336.tag = closureN_tag; - c_732336.fn = (function_type)__lambda_248; -c_732336.num_args = 1; -c_732336.num_elt = 7; -c_732336.elts = (object *)alloca(sizeof(object) * 7); -c_732336.elts[0] = ((closureN)self_73893)->elts[0]; -c_732336.elts[1] = k_73423; -c_732336.elts[2] = ((closureN)self_73893)->elts[1]; -c_732336.elts[3] = ((closureN)self_73893)->elts[2]; -c_732336.elts[4] = ((closureN)self_73893)->elts[3]; -c_732336.elts[5] = ((closureN)self_73893)->elts[4]; -c_732336.elts[6] = term_73189; - - -object c_732394 = Cyc_sum(data,(closure)&c_732336,2,cell_get(((closureN)self_73893)->elts[2]), obj_int2obj(1)); -return_closcall1(data,(closure)&c_732336, c_732394);; -} - -static void __lambda_248(void *data, int argc, object self_73894, object r_73432) { - -closureN_type c_732338; -c_732338.hdr.mark = gc_color_red; - c_732338.hdr.grayed = 0; -c_732338.tag = closureN_tag; - c_732338.fn = (function_type)__lambda_247; -c_732338.num_args = 1; -c_732338.num_elt = 6; -c_732338.elts = (object *)alloca(sizeof(object) * 6); -c_732338.elts[0] = ((closureN)self_73894)->elts[0]; -c_732338.elts[1] = ((closureN)self_73894)->elts[1]; -c_732338.elts[2] = ((closureN)self_73894)->elts[2]; -c_732338.elts[3] = ((closureN)self_73894)->elts[4]; -c_732338.elts[4] = ((closureN)self_73894)->elts[5]; -c_732338.elts[5] = ((closureN)self_73894)->elts[6]; - -return_closcall1(data,(closure)&c_732338, Cyc_set_car(data, ((closureN)self_73894)->elts[3], r_73432));; -} - -static void __lambda_247(void *data, int argc, object self_73895, object r_73424) { - -closureN_type c_732340; -c_732340.hdr.mark = gc_color_red; - c_732340.hdr.grayed = 0; -c_732340.tag = closureN_tag; - c_732340.fn = (function_type)__lambda_246; -c_732340.num_args = 1; -c_732340.num_elt = 6; -c_732340.elts = (object *)alloca(sizeof(object) * 6); -c_732340.elts[0] = ((closureN)self_73895)->elts[0]; -c_732340.elts[1] = ((closureN)self_73895)->elts[1]; -c_732340.elts[2] = ((closureN)self_73895)->elts[2]; -c_732340.elts[3] = ((closureN)self_73895)->elts[3]; -c_732340.elts[4] = ((closureN)self_73895)->elts[4]; -c_732340.elts[5] = ((closureN)self_73895)->elts[5]; - -return_closcall1(data,(closure)&c_732340, Cyc_is_cons(((closureN)self_73895)->elts[5]));; -} - -static void __lambda_246(void *data, int argc, object self_73896, object r_73425) { - if( !eq(boolean_f, r_73425) ){ - -closureN_type c_732342; -c_732342.hdr.mark = gc_color_red; - c_732342.hdr.grayed = 0; -c_732342.tag = closureN_tag; - c_732342.fn = (function_type)__lambda_244; -c_732342.num_args = 0; -c_732342.num_elt = 6; -c_732342.elts = (object *)alloca(sizeof(object) * 6); -c_732342.elts[0] = ((closureN)self_73896)->elts[0]; -c_732342.elts[1] = ((closureN)self_73896)->elts[1]; -c_732342.elts[2] = ((closureN)self_73896)->elts[2]; -c_732342.elts[3] = ((closureN)self_73896)->elts[3]; -c_732342.elts[4] = ((closureN)self_73896)->elts[4]; -c_732342.elts[5] = ((closureN)self_73896)->elts[5]; - -return_closcall0(data,(closure)&c_732342); -} else { - -closureN_type c_732382; -c_732382.hdr.mark = gc_color_red; - c_732382.hdr.grayed = 0; -c_732382.tag = closureN_tag; - c_732382.fn = (function_type)__lambda_245; -c_732382.num_args = 0; -c_732382.num_elt = 2; -c_732382.elts = (object *)alloca(sizeof(object) * 2); -c_732382.elts[0] = ((closureN)self_73896)->elts[1]; -c_732382.elts[1] = ((closureN)self_73896)->elts[5]; - -return_closcall0(data,(closure)&c_732382);} -; -} - -static void __lambda_245(void *data, int argc, object self_73897) { - return_closcall1(data, ((closureN)self_73897)->elts[0], ((closureN)self_73897)->elts[1]);; -} - -static void __lambda_244(void *data, int argc, object self_73898) { - -closureN_type c_732344; -c_732344.hdr.mark = gc_color_red; - c_732344.hdr.grayed = 0; -c_732344.tag = closureN_tag; - c_732344.fn = (function_type)__lambda_243; -c_732344.num_args = 1; -c_732344.num_elt = 6; -c_732344.elts = (object *)alloca(sizeof(object) * 6); -c_732344.elts[0] = ((closureN)self_73898)->elts[0]; -c_732344.elts[1] = ((closureN)self_73898)->elts[1]; -c_732344.elts[2] = ((closureN)self_73898)->elts[2]; -c_732344.elts[3] = ((closureN)self_73898)->elts[3]; -c_732344.elts[4] = ((closureN)self_73898)->elts[4]; -c_732344.elts[5] = ((closureN)self_73898)->elts[5]; - -return_closcall1(data,(closure)&c_732344, car(((closureN)self_73898)->elts[5]));; -} - -static void __lambda_243(void *data, int argc, object self_73899, object r_73429) { - -closureN_type c_732346; -c_732346.hdr.mark = gc_color_red; - c_732346.hdr.grayed = 0; -c_732346.tag = closureN_tag; - c_732346.fn = (function_type)__lambda_242; -c_732346.num_args = 1; -c_732346.num_elt = 7; -c_732346.elts = (object *)alloca(sizeof(object) * 7); -c_732346.elts[0] = ((closureN)self_73899)->elts[0]; -c_732346.elts[1] = ((closureN)self_73899)->elts[1]; -c_732346.elts[2] = r_73429; -c_732346.elts[3] = ((closureN)self_73899)->elts[2]; -c_732346.elts[4] = ((closureN)self_73899)->elts[3]; -c_732346.elts[5] = ((closureN)self_73899)->elts[4]; -c_732346.elts[6] = ((closureN)self_73899)->elts[5]; - -return_closcall1(data,(closure)&c_732346, cdr(((closureN)self_73899)->elts[5]));; -} - -static void __lambda_242(void *data, int argc, object self_73900, object r_73431) { - -closureN_type c_732351; -c_732351.hdr.mark = gc_color_red; - c_732351.hdr.grayed = 0; -c_732351.tag = closureN_tag; - c_732351.fn = (function_type)__lambda_241; -c_732351.num_args = 1; -c_732351.num_elt = 6; -c_732351.elts = (object *)alloca(sizeof(object) * 6); -c_732351.elts[0] = ((closureN)self_73900)->elts[0]; -c_732351.elts[1] = ((closureN)self_73900)->elts[1]; -c_732351.elts[2] = ((closureN)self_73900)->elts[2]; -c_732351.elts[3] = ((closureN)self_73900)->elts[4]; -c_732351.elts[4] = ((closureN)self_73900)->elts[5]; -c_732351.elts[5] = ((closureN)self_73900)->elts[6]; - -return_closcall2(data, cell_get(((closureN)self_73900)->elts[3]), &c_732351, r_73431);; -} - -static void __lambda_241(void *data, int argc, object self_73901, object r_73430) { - -closureN_type c_732356; -c_732356.hdr.mark = gc_color_red; - c_732356.hdr.grayed = 0; -c_732356.tag = closureN_tag; - c_732356.fn = (function_type)__lambda_240; -c_732356.num_args = 1; -c_732356.num_elt = 4; -c_732356.elts = (object *)alloca(sizeof(object) * 4); -c_732356.elts[0] = ((closureN)self_73901)->elts[0]; -c_732356.elts[1] = ((closureN)self_73901)->elts[1]; -c_732356.elts[2] = ((closureN)self_73901)->elts[3]; -c_732356.elts[3] = ((closureN)self_73901)->elts[5]; - -return_closcall4(data, cell_get(((closureN)self_73901)->elts[4]), &c_732356, ((closureN)self_73901)->elts[2], r_73430, ((closureN)self_73901)->elts[5]);; -} - -static void __lambda_240(void *data, int argc, object self_73902, object r_73426) { - -closureN_type c_732358; -c_732358.hdr.mark = gc_color_red; - c_732358.hdr.grayed = 0; -c_732358.tag = closureN_tag; - c_732358.fn = (function_type)__lambda_239; -c_732358.num_args = 1; -c_732358.num_elt = 4; -c_732358.elts = (object *)alloca(sizeof(object) * 4); -c_732358.elts[0] = ((closureN)self_73902)->elts[0]; -c_732358.elts[1] = ((closureN)self_73902)->elts[1]; -c_732358.elts[2] = r_73426; -c_732358.elts[3] = ((closureN)self_73902)->elts[2]; - -return_closcall1(data,(closure)&c_732358, car(((closureN)self_73902)->elts[3]));; -} - -static void __lambda_239(void *data, int argc, object self_73903, object r_73428) { - -closureN_type c_732363; -c_732363.hdr.mark = gc_color_red; - c_732363.hdr.grayed = 0; -c_732363.tag = closureN_tag; - c_732363.fn = (function_type)__lambda_238; -c_732363.num_args = 1; -c_732363.num_elt = 3; -c_732363.elts = (object *)alloca(sizeof(object) * 3); -c_732363.elts[0] = ((closureN)self_73903)->elts[1]; -c_732363.elts[1] = ((closureN)self_73903)->elts[2]; -c_732363.elts[2] = ((closureN)self_73903)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73903)->elts[0]), &c_732363, r_73428);; -} - -static void __lambda_238(void *data, int argc, object self_73904, object r_73427) { - return_closcall3(data, cell_get(((closureN)self_73904)->elts[2]), ((closureN)self_73904)->elts[0], ((closureN)self_73904)->elts[1], r_73427);; -} - -static void __lambda_237(void *data, int argc, object self_73905, object r_73422) { - -closureN_type c_731604; -c_731604.hdr.mark = gc_color_red; - c_731604.hdr.grayed = 0; -c_731604.tag = closureN_tag; - c_731604.fn = (function_type)__lambda_236; -c_731604.num_args = 1; -c_731604.num_elt = 26; -c_731604.elts = (object *)alloca(sizeof(object) * 26); -c_731604.elts[0] = ((closureN)self_73905)->elts[0]; -c_731604.elts[1] = ((closureN)self_73905)->elts[1]; -c_731604.elts[2] = ((closureN)self_73905)->elts[2]; -c_731604.elts[3] = ((closureN)self_73905)->elts[3]; -c_731604.elts[4] = ((closureN)self_73905)->elts[4]; -c_731604.elts[5] = ((closureN)self_73905)->elts[5]; -c_731604.elts[6] = ((closureN)self_73905)->elts[6]; -c_731604.elts[7] = ((closureN)self_73905)->elts[7]; -c_731604.elts[8] = ((closureN)self_73905)->elts[8]; -c_731604.elts[9] = ((closureN)self_73905)->elts[9]; -c_731604.elts[10] = ((closureN)self_73905)->elts[10]; -c_731604.elts[11] = ((closureN)self_73905)->elts[11]; -c_731604.elts[12] = ((closureN)self_73905)->elts[12]; -c_731604.elts[13] = ((closureN)self_73905)->elts[13]; -c_731604.elts[14] = ((closureN)self_73905)->elts[14]; -c_731604.elts[15] = ((closureN)self_73905)->elts[15]; -c_731604.elts[16] = ((closureN)self_73905)->elts[16]; -c_731604.elts[17] = ((closureN)self_73905)->elts[17]; -c_731604.elts[18] = ((closureN)self_73905)->elts[18]; -c_731604.elts[19] = ((closureN)self_73905)->elts[19]; -c_731604.elts[20] = ((closureN)self_73905)->elts[20]; -c_731604.elts[21] = ((closureN)self_73905)->elts[21]; -c_731604.elts[22] = ((closureN)self_73905)->elts[22]; -c_731604.elts[23] = ((closureN)self_73905)->elts[23]; -c_731604.elts[24] = ((closureN)self_73905)->elts[24]; -c_731604.elts[25] = ((closureN)self_73905)->elts[25]; - -return_closcall1(data,(closure)&c_731604, Cyc_set_car(data, ((closureN)self_73905)->elts[8], r_73422));; -} - -static void __lambda_236(void *data, int argc, object self_73906, object r_73293) { - -closureN_type c_731606; -c_731606.hdr.mark = gc_color_red; - c_731606.hdr.grayed = 0; -c_731606.tag = closureN_tag; - c_731606.fn = (function_type)__lambda_227; -c_731606.num_args = 1; -c_731606.num_elt = 25; -c_731606.elts = (object *)alloca(sizeof(object) * 25); -c_731606.elts[0] = ((closureN)self_73906)->elts[0]; -c_731606.elts[1] = ((closureN)self_73906)->elts[1]; -c_731606.elts[2] = ((closureN)self_73906)->elts[2]; -c_731606.elts[3] = ((closureN)self_73906)->elts[3]; -c_731606.elts[4] = ((closureN)self_73906)->elts[4]; -c_731606.elts[5] = ((closureN)self_73906)->elts[5]; -c_731606.elts[6] = ((closureN)self_73906)->elts[6]; -c_731606.elts[7] = ((closureN)self_73906)->elts[7]; -c_731606.elts[8] = ((closureN)self_73906)->elts[8]; -c_731606.elts[9] = ((closureN)self_73906)->elts[9]; -c_731606.elts[10] = ((closureN)self_73906)->elts[10]; -c_731606.elts[11] = ((closureN)self_73906)->elts[11]; -c_731606.elts[12] = ((closureN)self_73906)->elts[13]; -c_731606.elts[13] = ((closureN)self_73906)->elts[14]; -c_731606.elts[14] = ((closureN)self_73906)->elts[15]; -c_731606.elts[15] = ((closureN)self_73906)->elts[16]; -c_731606.elts[16] = ((closureN)self_73906)->elts[17]; -c_731606.elts[17] = ((closureN)self_73906)->elts[18]; -c_731606.elts[18] = ((closureN)self_73906)->elts[19]; -c_731606.elts[19] = ((closureN)self_73906)->elts[20]; -c_731606.elts[20] = ((closureN)self_73906)->elts[21]; -c_731606.elts[21] = ((closureN)self_73906)->elts[22]; -c_731606.elts[22] = ((closureN)self_73906)->elts[23]; -c_731606.elts[23] = ((closureN)self_73906)->elts[24]; -c_731606.elts[24] = ((closureN)self_73906)->elts[25]; - - -closureN_type c_732293; -c_732293.hdr.mark = gc_color_red; - c_732293.hdr.grayed = 0; -c_732293.tag = closureN_tag; - c_732293.fn = (function_type)__lambda_235; -c_732293.num_args = 1; -c_732293.num_elt = 3; -c_732293.elts = (object *)alloca(sizeof(object) * 3); -c_732293.elts[0] = ((closureN)self_73906)->elts[8]; -c_732293.elts[1] = ((closureN)self_73906)->elts[9]; -c_732293.elts[2] = ((closureN)self_73906)->elts[12]; - -return_closcall1(data,(closure)&c_731606, &c_732293);; -} - -static void __lambda_235(void *data, int argc, object self_73907, object k_73416, object lst_73188) { - -closureN_type c_732295; -c_732295.hdr.mark = gc_color_red; - c_732295.hdr.grayed = 0; -c_732295.tag = closureN_tag; - c_732295.fn = (function_type)__lambda_234; -c_732295.num_args = 1; -c_732295.num_elt = 5; -c_732295.elts = (object *)alloca(sizeof(object) * 5); -c_732295.elts[0] = k_73416; -c_732295.elts[1] = lst_73188; -c_732295.elts[2] = ((closureN)self_73907)->elts[0]; -c_732295.elts[3] = ((closureN)self_73907)->elts[1]; -c_732295.elts[4] = ((closureN)self_73907)->elts[2]; - -return_closcall1(data,(closure)&c_732295, Cyc_is_null(lst_73188));; -} - -static void __lambda_234(void *data, int argc, object self_73908, object r_73417) { - if( !eq(boolean_f, r_73417) ){ - -closureN_type c_732297; -c_732297.hdr.mark = gc_color_red; - c_732297.hdr.grayed = 0; -c_732297.tag = closureN_tag; - c_732297.fn = (function_type)__lambda_228; -c_732297.num_args = 0; -c_732297.num_elt = 1; -c_732297.elts = (object *)alloca(sizeof(object) * 1); -c_732297.elts[0] = ((closureN)self_73908)->elts[0]; - -return_closcall0(data,(closure)&c_732297); -} else { - -closureN_type c_732301; -c_732301.hdr.mark = gc_color_red; - c_732301.hdr.grayed = 0; -c_732301.tag = closureN_tag; - c_732301.fn = (function_type)__lambda_233; -c_732301.num_args = 0; -c_732301.num_elt = 5; -c_732301.elts = (object *)alloca(sizeof(object) * 5); -c_732301.elts[0] = ((closureN)self_73908)->elts[0]; -c_732301.elts[1] = ((closureN)self_73908)->elts[1]; -c_732301.elts[2] = ((closureN)self_73908)->elts[2]; -c_732301.elts[3] = ((closureN)self_73908)->elts[3]; -c_732301.elts[4] = ((closureN)self_73908)->elts[4]; - -return_closcall0(data,(closure)&c_732301);} -; -} - -static void __lambda_233(void *data, int argc, object self_73909) { - -closureN_type c_732303; -c_732303.hdr.mark = gc_color_red; - c_732303.hdr.grayed = 0; -c_732303.tag = closureN_tag; - c_732303.fn = (function_type)__lambda_232; -c_732303.num_args = 1; -c_732303.num_elt = 5; -c_732303.elts = (object *)alloca(sizeof(object) * 5); -c_732303.elts[0] = ((closureN)self_73909)->elts[0]; -c_732303.elts[1] = ((closureN)self_73909)->elts[1]; -c_732303.elts[2] = ((closureN)self_73909)->elts[2]; -c_732303.elts[3] = ((closureN)self_73909)->elts[3]; -c_732303.elts[4] = ((closureN)self_73909)->elts[4]; - -return_closcall1(data,(closure)&c_732303, car(((closureN)self_73909)->elts[1]));; -} - -static void __lambda_232(void *data, int argc, object self_73910, object r_73421) { - -closureN_type c_732308; -c_732308.hdr.mark = gc_color_red; - c_732308.hdr.grayed = 0; -c_732308.tag = closureN_tag; - c_732308.fn = (function_type)__lambda_231; -c_732308.num_args = 1; -c_732308.num_elt = 4; -c_732308.elts = (object *)alloca(sizeof(object) * 4); -c_732308.elts[0] = ((closureN)self_73910)->elts[0]; -c_732308.elts[1] = ((closureN)self_73910)->elts[1]; -c_732308.elts[2] = ((closureN)self_73910)->elts[3]; -c_732308.elts[3] = ((closureN)self_73910)->elts[4]; - -return_closcall2(data, cell_get(((closureN)self_73910)->elts[2]), &c_732308, r_73421);; -} - -static void __lambda_231(void *data, int argc, object self_73911, object r_73418) { - -closureN_type c_732310; -c_732310.hdr.mark = gc_color_red; - c_732310.hdr.grayed = 0; -c_732310.tag = closureN_tag; - c_732310.fn = (function_type)__lambda_230; -c_732310.num_args = 1; -c_732310.num_elt = 5; -c_732310.elts = (object *)alloca(sizeof(object) * 5); -c_732310.elts[0] = ((closureN)self_73911)->elts[0]; -c_732310.elts[1] = ((closureN)self_73911)->elts[1]; -c_732310.elts[2] = r_73418; -c_732310.elts[3] = ((closureN)self_73911)->elts[2]; -c_732310.elts[4] = ((closureN)self_73911)->elts[3]; - -return_closcall1(data,(closure)&c_732310, cdr(((closureN)self_73911)->elts[1]));; -} - -static void __lambda_230(void *data, int argc, object self_73912, object r_73420) { - -closureN_type c_732315; -c_732315.hdr.mark = gc_color_red; - c_732315.hdr.grayed = 0; -c_732315.tag = closureN_tag; - c_732315.fn = (function_type)__lambda_229; -c_732315.num_args = 1; -c_732315.num_elt = 4; -c_732315.elts = (object *)alloca(sizeof(object) * 4); -c_732315.elts[0] = ((closureN)self_73912)->elts[0]; -c_732315.elts[1] = ((closureN)self_73912)->elts[1]; -c_732315.elts[2] = ((closureN)self_73912)->elts[2]; -c_732315.elts[3] = ((closureN)self_73912)->elts[4]; - -return_closcall2(data, cell_get(((closureN)self_73912)->elts[3]), &c_732315, r_73420);; -} - -static void __lambda_229(void *data, int argc, object self_73913, object r_73419) { - return_closcall4(data, cell_get(((closureN)self_73913)->elts[3]), ((closureN)self_73913)->elts[0], ((closureN)self_73913)->elts[2], r_73419, ((closureN)self_73913)->elts[1]);; -} - -static void __lambda_228(void *data, int argc, object self_73914) { - return_closcall1(data, ((closureN)self_73914)->elts[0], nil);; -} - -static void __lambda_227(void *data, int argc, object self_73915, object r_73415) { - -closureN_type c_731608; -c_731608.hdr.mark = gc_color_red; - c_731608.hdr.grayed = 0; -c_731608.tag = closureN_tag; - c_731608.fn = (function_type)__lambda_226; -c_731608.num_args = 1; -c_731608.num_elt = 24; -c_731608.elts = (object *)alloca(sizeof(object) * 24); -c_731608.elts[0] = ((closureN)self_73915)->elts[0]; -c_731608.elts[1] = ((closureN)self_73915)->elts[1]; -c_731608.elts[2] = ((closureN)self_73915)->elts[2]; -c_731608.elts[3] = ((closureN)self_73915)->elts[3]; -c_731608.elts[4] = ((closureN)self_73915)->elts[4]; -c_731608.elts[5] = ((closureN)self_73915)->elts[5]; -c_731608.elts[6] = ((closureN)self_73915)->elts[6]; -c_731608.elts[7] = ((closureN)self_73915)->elts[7]; -c_731608.elts[8] = ((closureN)self_73915)->elts[8]; -c_731608.elts[9] = ((closureN)self_73915)->elts[10]; -c_731608.elts[10] = ((closureN)self_73915)->elts[11]; -c_731608.elts[11] = ((closureN)self_73915)->elts[12]; -c_731608.elts[12] = ((closureN)self_73915)->elts[13]; -c_731608.elts[13] = ((closureN)self_73915)->elts[14]; -c_731608.elts[14] = ((closureN)self_73915)->elts[15]; -c_731608.elts[15] = ((closureN)self_73915)->elts[16]; -c_731608.elts[16] = ((closureN)self_73915)->elts[17]; -c_731608.elts[17] = ((closureN)self_73915)->elts[18]; -c_731608.elts[18] = ((closureN)self_73915)->elts[19]; -c_731608.elts[19] = ((closureN)self_73915)->elts[20]; -c_731608.elts[20] = ((closureN)self_73915)->elts[21]; -c_731608.elts[21] = ((closureN)self_73915)->elts[22]; -c_731608.elts[22] = ((closureN)self_73915)->elts[23]; -c_731608.elts[23] = ((closureN)self_73915)->elts[24]; - -return_closcall1(data,(closure)&c_731608, Cyc_set_car(data, ((closureN)self_73915)->elts[9], r_73415));; -} - -static void __lambda_226(void *data, int argc, object self_73916, object r_73294) { - -closureN_type c_731610; -c_731610.hdr.mark = gc_color_red; - c_731610.hdr.grayed = 0; -c_731610.tag = closureN_tag; - c_731610.fn = (function_type)__lambda_213; -c_731610.num_args = 1; -c_731610.num_elt = 22; -c_731610.elts = (object *)alloca(sizeof(object) * 22); -c_731610.elts[0] = ((closureN)self_73916)->elts[0]; -c_731610.elts[1] = ((closureN)self_73916)->elts[2]; -c_731610.elts[2] = ((closureN)self_73916)->elts[3]; -c_731610.elts[3] = ((closureN)self_73916)->elts[4]; -c_731610.elts[4] = ((closureN)self_73916)->elts[5]; -c_731610.elts[5] = ((closureN)self_73916)->elts[6]; -c_731610.elts[6] = ((closureN)self_73916)->elts[7]; -c_731610.elts[7] = ((closureN)self_73916)->elts[9]; -c_731610.elts[8] = ((closureN)self_73916)->elts[10]; -c_731610.elts[9] = ((closureN)self_73916)->elts[11]; -c_731610.elts[10] = ((closureN)self_73916)->elts[12]; -c_731610.elts[11] = ((closureN)self_73916)->elts[13]; -c_731610.elts[12] = ((closureN)self_73916)->elts[14]; -c_731610.elts[13] = ((closureN)self_73916)->elts[15]; -c_731610.elts[14] = ((closureN)self_73916)->elts[16]; -c_731610.elts[15] = ((closureN)self_73916)->elts[17]; -c_731610.elts[16] = ((closureN)self_73916)->elts[18]; -c_731610.elts[17] = ((closureN)self_73916)->elts[19]; -c_731610.elts[18] = ((closureN)self_73916)->elts[20]; -c_731610.elts[19] = ((closureN)self_73916)->elts[21]; -c_731610.elts[20] = ((closureN)self_73916)->elts[22]; -c_731610.elts[21] = ((closureN)self_73916)->elts[23]; - - -closureN_type c_732228; -c_732228.hdr.mark = gc_color_red; - c_732228.hdr.grayed = 0; -c_732228.tag = closureN_tag; - c_732228.fn = (function_type)__lambda_225; -c_732228.num_args = 2; -c_732228.num_elt = 5; -c_732228.elts = (object *)alloca(sizeof(object) * 5); -c_732228.elts[0] = ((closureN)self_73916)->elts[1]; -c_732228.elts[1] = ((closureN)self_73916)->elts[5]; -c_732228.elts[2] = ((closureN)self_73916)->elts[8]; -c_732228.elts[3] = ((closureN)self_73916)->elts[10]; -c_732228.elts[4] = ((closureN)self_73916)->elts[23]; - -return_closcall1(data,(closure)&c_731610, &c_732228);; -} - -static void __lambda_225(void *data, int argc, object self_73917, object k_73406, object term_73187, object lst_73186) { - -closureN_type c_732230; -c_732230.hdr.mark = gc_color_red; - c_732230.hdr.grayed = 0; -c_732230.tag = closureN_tag; - c_732230.fn = (function_type)__lambda_224; -c_732230.num_args = 1; -c_732230.num_elt = 8; -c_732230.elts = (object *)alloca(sizeof(object) * 8); -c_732230.elts[0] = ((closureN)self_73917)->elts[0]; -c_732230.elts[1] = k_73406; -c_732230.elts[2] = lst_73186; -c_732230.elts[3] = ((closureN)self_73917)->elts[1]; -c_732230.elts[4] = ((closureN)self_73917)->elts[2]; -c_732230.elts[5] = ((closureN)self_73917)->elts[3]; -c_732230.elts[6] = term_73187; -c_732230.elts[7] = ((closureN)self_73917)->elts[4]; - -return_closcall1(data,(closure)&c_732230, Cyc_is_null(lst_73186));; -} - -static void __lambda_224(void *data, int argc, object self_73918, object r_73407) { - if( !eq(boolean_f, r_73407) ){ - -closureN_type c_732232; -c_732232.hdr.mark = gc_color_red; - c_732232.hdr.grayed = 0; -c_732232.tag = closureN_tag; - c_732232.fn = (function_type)__lambda_214; -c_732232.num_args = 0; -c_732232.num_elt = 2; -c_732232.elts = (object *)alloca(sizeof(object) * 2); -c_732232.elts[0] = ((closureN)self_73918)->elts[1]; -c_732232.elts[1] = ((closureN)self_73918)->elts[6]; - -return_closcall0(data,(closure)&c_732232); -} else { - -closureN_type c_732237; -c_732237.hdr.mark = gc_color_red; - c_732237.hdr.grayed = 0; -c_732237.tag = closureN_tag; - c_732237.fn = (function_type)__lambda_223; -c_732237.num_args = 1; -c_732237.num_elt = 8; -c_732237.elts = (object *)alloca(sizeof(object) * 8); -c_732237.elts[0] = ((closureN)self_73918)->elts[0]; -c_732237.elts[1] = ((closureN)self_73918)->elts[1]; -c_732237.elts[2] = ((closureN)self_73918)->elts[2]; -c_732237.elts[3] = ((closureN)self_73918)->elts[3]; -c_732237.elts[4] = ((closureN)self_73918)->elts[4]; -c_732237.elts[5] = ((closureN)self_73918)->elts[5]; -c_732237.elts[6] = ((closureN)self_73918)->elts[6]; -c_732237.elts[7] = ((closureN)self_73918)->elts[7]; - -return_closcall1(data,(closure)&c_732237, car(((closureN)self_73918)->elts[2]));} -; -} - -static void __lambda_223(void *data, int argc, object self_73919, object r_73414) { - -closureN_type c_732239; -c_732239.hdr.mark = gc_color_red; - c_732239.hdr.grayed = 0; -c_732239.tag = closureN_tag; - c_732239.fn = (function_type)__lambda_222; -c_732239.num_args = 1; -c_732239.num_elt = 8; -c_732239.elts = (object *)alloca(sizeof(object) * 8); -c_732239.elts[0] = ((closureN)self_73919)->elts[0]; -c_732239.elts[1] = ((closureN)self_73919)->elts[1]; -c_732239.elts[2] = ((closureN)self_73919)->elts[2]; -c_732239.elts[3] = ((closureN)self_73919)->elts[3]; -c_732239.elts[4] = ((closureN)self_73919)->elts[4]; -c_732239.elts[5] = ((closureN)self_73919)->elts[5]; -c_732239.elts[6] = ((closureN)self_73919)->elts[6]; -c_732239.elts[7] = ((closureN)self_73919)->elts[7]; - -return_closcall1(data,(closure)&c_732239, cadr(r_73414));; -} - -static void __lambda_222(void *data, int argc, object self_73920, object r_73413) { - -closureN_type c_732244; -c_732244.hdr.mark = gc_color_red; - c_732244.hdr.grayed = 0; -c_732244.tag = closureN_tag; - c_732244.fn = (function_type)__lambda_221; -c_732244.num_args = 1; -c_732244.num_elt = 7; -c_732244.elts = (object *)alloca(sizeof(object) * 7); -c_732244.elts[0] = ((closureN)self_73920)->elts[0]; -c_732244.elts[1] = ((closureN)self_73920)->elts[1]; -c_732244.elts[2] = ((closureN)self_73920)->elts[2]; -c_732244.elts[3] = ((closureN)self_73920)->elts[4]; -c_732244.elts[4] = ((closureN)self_73920)->elts[5]; -c_732244.elts[5] = ((closureN)self_73920)->elts[6]; -c_732244.elts[6] = ((closureN)self_73920)->elts[7]; - -return_closcall3(data, cell_get(((closureN)self_73920)->elts[3]), &c_732244, ((closureN)self_73920)->elts[6], r_73413);; -} - -static void __lambda_221(void *data, int argc, object self_73921, object r_73408) { - if( !eq(boolean_f, r_73408) ){ - -closureN_type c_732246; -c_732246.hdr.mark = gc_color_red; - c_732246.hdr.grayed = 0; -c_732246.tag = closureN_tag; - c_732246.fn = (function_type)__lambda_218; -c_732246.num_args = 0; -c_732246.num_elt = 5; -c_732246.elts = (object *)alloca(sizeof(object) * 5); -c_732246.elts[0] = ((closureN)self_73921)->elts[0]; -c_732246.elts[1] = ((closureN)self_73921)->elts[1]; -c_732246.elts[2] = ((closureN)self_73921)->elts[2]; -c_732246.elts[3] = ((closureN)self_73921)->elts[3]; -c_732246.elts[4] = ((closureN)self_73921)->elts[6]; - -return_closcall0(data,(closure)&c_732246); -} else { - -closureN_type c_732270; -c_732270.hdr.mark = gc_color_red; - c_732270.hdr.grayed = 0; -c_732270.tag = closureN_tag; - c_732270.fn = (function_type)__lambda_220; -c_732270.num_args = 0; -c_732270.num_elt = 4; -c_732270.elts = (object *)alloca(sizeof(object) * 4); -c_732270.elts[0] = ((closureN)self_73921)->elts[1]; -c_732270.elts[1] = ((closureN)self_73921)->elts[2]; -c_732270.elts[2] = ((closureN)self_73921)->elts[4]; -c_732270.elts[3] = ((closureN)self_73921)->elts[5]; - -return_closcall0(data,(closure)&c_732270);} -; -} - -static void __lambda_220(void *data, int argc, object self_73922) { - -closureN_type c_732272; -c_732272.hdr.mark = gc_color_red; - c_732272.hdr.grayed = 0; -c_732272.tag = closureN_tag; - c_732272.fn = (function_type)__lambda_219; -c_732272.num_args = 1; -c_732272.num_elt = 3; -c_732272.elts = (object *)alloca(sizeof(object) * 3); -c_732272.elts[0] = ((closureN)self_73922)->elts[0]; -c_732272.elts[1] = ((closureN)self_73922)->elts[2]; -c_732272.elts[2] = ((closureN)self_73922)->elts[3]; - -return_closcall1(data,(closure)&c_732272, cdr(((closureN)self_73922)->elts[1]));; -} - -static void __lambda_219(void *data, int argc, object self_73923, object r_73412) { - return_closcall3(data, cell_get(((closureN)self_73923)->elts[1]), ((closureN)self_73923)->elts[0], ((closureN)self_73923)->elts[2], r_73412);; -} - -static void __lambda_218(void *data, int argc, object self_73924) { - -closureN_type c_732248; -c_732248.hdr.mark = gc_color_red; - c_732248.hdr.grayed = 0; -c_732248.tag = closureN_tag; - c_732248.fn = (function_type)__lambda_217; -c_732248.num_args = 1; -c_732248.num_elt = 4; -c_732248.elts = (object *)alloca(sizeof(object) * 4); -c_732248.elts[0] = ((closureN)self_73924)->elts[0]; -c_732248.elts[1] = ((closureN)self_73924)->elts[1]; -c_732248.elts[2] = ((closureN)self_73924)->elts[3]; -c_732248.elts[3] = ((closureN)self_73924)->elts[4]; - -return_closcall1(data,(closure)&c_732248, car(((closureN)self_73924)->elts[2]));; -} - -static void __lambda_217(void *data, int argc, object self_73925, object r_73411) { - -closureN_type c_732250; -c_732250.hdr.mark = gc_color_red; - c_732250.hdr.grayed = 0; -c_732250.tag = closureN_tag; - c_732250.fn = (function_type)__lambda_216; -c_732250.num_args = 1; -c_732250.num_elt = 4; -c_732250.elts = (object *)alloca(sizeof(object) * 4); -c_732250.elts[0] = ((closureN)self_73925)->elts[0]; -c_732250.elts[1] = ((closureN)self_73925)->elts[1]; -c_732250.elts[2] = ((closureN)self_73925)->elts[2]; -c_732250.elts[3] = ((closureN)self_73925)->elts[3]; - -return_closcall1(data,(closure)&c_732250, caddr(r_73411));; -} - -static void __lambda_216(void *data, int argc, object self_73926, object r_73410) { - -closureN_type c_732255; -c_732255.hdr.mark = gc_color_red; - c_732255.hdr.grayed = 0; -c_732255.tag = closureN_tag; - c_732255.fn = (function_type)__lambda_215; -c_732255.num_args = 1; -c_732255.num_elt = 2; -c_732255.elts = (object *)alloca(sizeof(object) * 2); -c_732255.elts[0] = ((closureN)self_73926)->elts[1]; -c_732255.elts[1] = ((closureN)self_73926)->elts[2]; - -return_closcall3(data, cell_get(((closureN)self_73926)->elts[0]), &c_732255, cell_get(((closureN)self_73926)->elts[3]), r_73410);; -} - -static void __lambda_215(void *data, int argc, object self_73927, object r_73409) { - return_closcall2(data, cell_get(((closureN)self_73927)->elts[1]), ((closureN)self_73927)->elts[0], r_73409);; -} - -static void __lambda_214(void *data, int argc, object self_73928) { - return_closcall1(data, ((closureN)self_73928)->elts[0], ((closureN)self_73928)->elts[1]);; -} - -static void __lambda_213(void *data, int argc, object self_73929, object r_73405) { - -closureN_type c_731612; -c_731612.hdr.mark = gc_color_red; - c_731612.hdr.grayed = 0; -c_731612.tag = closureN_tag; - c_731612.fn = (function_type)__lambda_212; -c_731612.num_args = 1; -c_731612.num_elt = 21; -c_731612.elts = (object *)alloca(sizeof(object) * 21); -c_731612.elts[0] = ((closureN)self_73929)->elts[0]; -c_731612.elts[1] = ((closureN)self_73929)->elts[1]; -c_731612.elts[2] = ((closureN)self_73929)->elts[2]; -c_731612.elts[3] = ((closureN)self_73929)->elts[3]; -c_731612.elts[4] = ((closureN)self_73929)->elts[4]; -c_731612.elts[5] = ((closureN)self_73929)->elts[5]; -c_731612.elts[6] = ((closureN)self_73929)->elts[6]; -c_731612.elts[7] = ((closureN)self_73929)->elts[7]; -c_731612.elts[8] = ((closureN)self_73929)->elts[9]; -c_731612.elts[9] = ((closureN)self_73929)->elts[10]; -c_731612.elts[10] = ((closureN)self_73929)->elts[11]; -c_731612.elts[11] = ((closureN)self_73929)->elts[12]; -c_731612.elts[12] = ((closureN)self_73929)->elts[13]; -c_731612.elts[13] = ((closureN)self_73929)->elts[14]; -c_731612.elts[14] = ((closureN)self_73929)->elts[15]; -c_731612.elts[15] = ((closureN)self_73929)->elts[16]; -c_731612.elts[16] = ((closureN)self_73929)->elts[17]; -c_731612.elts[17] = ((closureN)self_73929)->elts[18]; -c_731612.elts[18] = ((closureN)self_73929)->elts[19]; -c_731612.elts[19] = ((closureN)self_73929)->elts[20]; -c_731612.elts[20] = ((closureN)self_73929)->elts[21]; - -return_closcall1(data,(closure)&c_731612, Cyc_set_car(data, ((closureN)self_73929)->elts[8], r_73405));; -} - -static void __lambda_212(void *data, int argc, object self_73930, object r_73295) { - -closureN_type c_731614; -c_731614.hdr.mark = gc_color_red; - c_731614.hdr.grayed = 0; -c_731614.tag = closureN_tag; - c_731614.fn = (function_type)__lambda_211; -c_731614.num_args = 1; -c_731614.num_elt = 21; -c_731614.elts = (object *)alloca(sizeof(object) * 21); -c_731614.elts[0] = ((closureN)self_73930)->elts[0]; -c_731614.elts[1] = ((closureN)self_73930)->elts[1]; -c_731614.elts[2] = ((closureN)self_73930)->elts[2]; -c_731614.elts[3] = ((closureN)self_73930)->elts[3]; -c_731614.elts[4] = ((closureN)self_73930)->elts[4]; -c_731614.elts[5] = ((closureN)self_73930)->elts[5]; -c_731614.elts[6] = ((closureN)self_73930)->elts[6]; -c_731614.elts[7] = ((closureN)self_73930)->elts[7]; -c_731614.elts[8] = ((closureN)self_73930)->elts[8]; -c_731614.elts[9] = ((closureN)self_73930)->elts[9]; -c_731614.elts[10] = ((closureN)self_73930)->elts[10]; -c_731614.elts[11] = ((closureN)self_73930)->elts[11]; -c_731614.elts[12] = ((closureN)self_73930)->elts[12]; -c_731614.elts[13] = ((closureN)self_73930)->elts[13]; -c_731614.elts[14] = ((closureN)self_73930)->elts[14]; -c_731614.elts[15] = ((closureN)self_73930)->elts[15]; -c_731614.elts[16] = ((closureN)self_73930)->elts[16]; -c_731614.elts[17] = ((closureN)self_73930)->elts[17]; -c_731614.elts[18] = ((closureN)self_73930)->elts[18]; -c_731614.elts[19] = ((closureN)self_73930)->elts[19]; -c_731614.elts[20] = ((closureN)self_73930)->elts[20]; - -return_closcall1(data,(closure)&c_731614, quote__85);; -} - -static void __lambda_211(void *data, int argc, object self_73931, object r_73404) { - -closureN_type c_731616; -c_731616.hdr.mark = gc_color_red; - c_731616.hdr.grayed = 0; -c_731616.tag = closureN_tag; - c_731616.fn = (function_type)__lambda_210; -c_731616.num_args = 1; -c_731616.num_elt = 21; -c_731616.elts = (object *)alloca(sizeof(object) * 21); -c_731616.elts[0] = ((closureN)self_73931)->elts[0]; -c_731616.elts[1] = ((closureN)self_73931)->elts[1]; -c_731616.elts[2] = ((closureN)self_73931)->elts[2]; -c_731616.elts[3] = ((closureN)self_73931)->elts[3]; -c_731616.elts[4] = ((closureN)self_73931)->elts[4]; -c_731616.elts[5] = ((closureN)self_73931)->elts[5]; -c_731616.elts[6] = ((closureN)self_73931)->elts[6]; -c_731616.elts[7] = ((closureN)self_73931)->elts[7]; -c_731616.elts[8] = ((closureN)self_73931)->elts[8]; -c_731616.elts[9] = ((closureN)self_73931)->elts[9]; -c_731616.elts[10] = ((closureN)self_73931)->elts[10]; -c_731616.elts[11] = ((closureN)self_73931)->elts[11]; -c_731616.elts[12] = ((closureN)self_73931)->elts[12]; -c_731616.elts[13] = ((closureN)self_73931)->elts[13]; -c_731616.elts[14] = ((closureN)self_73931)->elts[14]; -c_731616.elts[15] = ((closureN)self_73931)->elts[15]; -c_731616.elts[16] = ((closureN)self_73931)->elts[16]; -c_731616.elts[17] = ((closureN)self_73931)->elts[17]; -c_731616.elts[18] = ((closureN)self_73931)->elts[18]; -c_731616.elts[19] = ((closureN)self_73931)->elts[19]; -c_731616.elts[20] = ((closureN)self_73931)->elts[20]; - -return_closcall1(data,(closure)&c_731616, Cyc_set_car(data, ((closureN)self_73931)->elts[20], r_73404));; -} - -static void __lambda_210(void *data, int argc, object self_73932, object r_73296) { - -closureN_type c_731618; -c_731618.hdr.mark = gc_color_red; - c_731618.hdr.grayed = 0; -c_731618.tag = closureN_tag; - c_731618.fn = (function_type)__lambda_206; -c_731618.num_args = 1; -c_731618.num_elt = 21; -c_731618.elts = (object *)alloca(sizeof(object) * 21); -c_731618.elts[0] = ((closureN)self_73932)->elts[0]; -c_731618.elts[1] = ((closureN)self_73932)->elts[1]; -c_731618.elts[2] = ((closureN)self_73932)->elts[2]; -c_731618.elts[3] = ((closureN)self_73932)->elts[3]; -c_731618.elts[4] = ((closureN)self_73932)->elts[4]; -c_731618.elts[5] = ((closureN)self_73932)->elts[5]; -c_731618.elts[6] = ((closureN)self_73932)->elts[6]; -c_731618.elts[7] = ((closureN)self_73932)->elts[7]; -c_731618.elts[8] = ((closureN)self_73932)->elts[8]; -c_731618.elts[9] = ((closureN)self_73932)->elts[9]; -c_731618.elts[10] = ((closureN)self_73932)->elts[10]; -c_731618.elts[11] = ((closureN)self_73932)->elts[11]; -c_731618.elts[12] = ((closureN)self_73932)->elts[12]; -c_731618.elts[13] = ((closureN)self_73932)->elts[13]; -c_731618.elts[14] = ((closureN)self_73932)->elts[14]; -c_731618.elts[15] = ((closureN)self_73932)->elts[15]; -c_731618.elts[16] = ((closureN)self_73932)->elts[16]; -c_731618.elts[17] = ((closureN)self_73932)->elts[17]; -c_731618.elts[18] = ((closureN)self_73932)->elts[18]; -c_731618.elts[19] = ((closureN)self_73932)->elts[19]; -c_731618.elts[20] = ((closureN)self_73932)->elts[20]; - - -closureN_type c_732207; -c_732207.hdr.mark = gc_color_red; - c_732207.hdr.grayed = 0; -c_732207.tag = closureN_tag; - c_732207.fn = (function_type)__lambda_209; -c_732207.num_args = 2; -c_732207.num_elt = 2; -c_732207.elts = (object *)alloca(sizeof(object) * 2); -c_732207.elts[0] = ((closureN)self_73932)->elts[5]; -c_732207.elts[1] = ((closureN)self_73932)->elts[20]; - -return_closcall1(data,(closure)&c_731618, &c_732207);; -} - -static void __lambda_209(void *data, int argc, object self_73933, object k_73401, object term1_73185, object term2_73184) { - -closureN_type c_732209; -c_732209.hdr.mark = gc_color_red; - c_732209.hdr.grayed = 0; -c_732209.tag = closureN_tag; - c_732209.fn = (function_type)__lambda_208; -c_732209.num_args = 1; -c_732209.num_elt = 5; -c_732209.elts = (object *)alloca(sizeof(object) * 5); -c_732209.elts[0] = k_73401; -c_732209.elts[1] = ((closureN)self_73933)->elts[0]; -c_732209.elts[2] = term1_73185; -c_732209.elts[3] = term2_73184; -c_732209.elts[4] = ((closureN)self_73933)->elts[1]; - -return_closcall1(data,(closure)&c_732209, nil);; -} - -static void __lambda_208(void *data, int argc, object self_73934, object r_73403) { - -closureN_type c_732211; -c_732211.hdr.mark = gc_color_red; - c_732211.hdr.grayed = 0; -c_732211.tag = closureN_tag; - c_732211.fn = (function_type)__lambda_207; -c_732211.num_args = 1; -c_732211.num_elt = 4; -c_732211.elts = (object *)alloca(sizeof(object) * 4); -c_732211.elts[0] = ((closureN)self_73934)->elts[0]; -c_732211.elts[1] = ((closureN)self_73934)->elts[1]; -c_732211.elts[2] = ((closureN)self_73934)->elts[2]; -c_732211.elts[3] = ((closureN)self_73934)->elts[3]; - -return_closcall1(data,(closure)&c_732211, Cyc_set_car(data, ((closureN)self_73934)->elts[4], r_73403));; -} - -static void __lambda_207(void *data, int argc, object self_73935, object r_73402) { - return_closcall3(data, cell_get(((closureN)self_73935)->elts[1]), ((closureN)self_73935)->elts[0], ((closureN)self_73935)->elts[2], ((closureN)self_73935)->elts[3]);; -} - -static void __lambda_206(void *data, int argc, object self_73936, object r_73400) { - -closureN_type c_731620; -c_731620.hdr.mark = gc_color_red; - c_731620.hdr.grayed = 0; -c_731620.tag = closureN_tag; - c_731620.fn = (function_type)__lambda_205; -c_731620.num_args = 1; -c_731620.num_elt = 20; -c_731620.elts = (object *)alloca(sizeof(object) * 20); -c_731620.elts[0] = ((closureN)self_73936)->elts[0]; -c_731620.elts[1] = ((closureN)self_73936)->elts[1]; -c_731620.elts[2] = ((closureN)self_73936)->elts[2]; -c_731620.elts[3] = ((closureN)self_73936)->elts[3]; -c_731620.elts[4] = ((closureN)self_73936)->elts[5]; -c_731620.elts[5] = ((closureN)self_73936)->elts[6]; -c_731620.elts[6] = ((closureN)self_73936)->elts[7]; -c_731620.elts[7] = ((closureN)self_73936)->elts[8]; -c_731620.elts[8] = ((closureN)self_73936)->elts[9]; -c_731620.elts[9] = ((closureN)self_73936)->elts[10]; -c_731620.elts[10] = ((closureN)self_73936)->elts[11]; -c_731620.elts[11] = ((closureN)self_73936)->elts[12]; -c_731620.elts[12] = ((closureN)self_73936)->elts[13]; -c_731620.elts[13] = ((closureN)self_73936)->elts[14]; -c_731620.elts[14] = ((closureN)self_73936)->elts[15]; -c_731620.elts[15] = ((closureN)self_73936)->elts[16]; -c_731620.elts[16] = ((closureN)self_73936)->elts[17]; -c_731620.elts[17] = ((closureN)self_73936)->elts[18]; -c_731620.elts[18] = ((closureN)self_73936)->elts[19]; -c_731620.elts[19] = ((closureN)self_73936)->elts[20]; - -return_closcall1(data,(closure)&c_731620, Cyc_set_car(data, ((closureN)self_73936)->elts[4], r_73400));; -} - -static void __lambda_205(void *data, int argc, object self_73937, object r_73297) { - -closureN_type c_731622; -c_731622.hdr.mark = gc_color_red; - c_731622.hdr.grayed = 0; -c_731622.tag = closureN_tag; - c_731622.fn = (function_type)__lambda_183; -c_731622.num_args = 1; -c_731622.num_elt = 19; -c_731622.elts = (object *)alloca(sizeof(object) * 19); -c_731622.elts[0] = ((closureN)self_73937)->elts[0]; -c_731622.elts[1] = ((closureN)self_73937)->elts[1]; -c_731622.elts[2] = ((closureN)self_73937)->elts[2]; -c_731622.elts[3] = ((closureN)self_73937)->elts[3]; -c_731622.elts[4] = ((closureN)self_73937)->elts[4]; -c_731622.elts[5] = ((closureN)self_73937)->elts[5]; -c_731622.elts[6] = ((closureN)self_73937)->elts[6]; -c_731622.elts[7] = ((closureN)self_73937)->elts[7]; -c_731622.elts[8] = ((closureN)self_73937)->elts[8]; -c_731622.elts[9] = ((closureN)self_73937)->elts[9]; -c_731622.elts[10] = ((closureN)self_73937)->elts[10]; -c_731622.elts[11] = ((closureN)self_73937)->elts[11]; -c_731622.elts[12] = ((closureN)self_73937)->elts[12]; -c_731622.elts[13] = ((closureN)self_73937)->elts[13]; -c_731622.elts[14] = ((closureN)self_73937)->elts[14]; -c_731622.elts[15] = ((closureN)self_73937)->elts[15]; -c_731622.elts[16] = ((closureN)self_73937)->elts[16]; -c_731622.elts[17] = ((closureN)self_73937)->elts[17]; -c_731622.elts[18] = ((closureN)self_73937)->elts[18]; - - -closureN_type c_732093; -c_732093.hdr.mark = gc_color_red; - c_732093.hdr.grayed = 0; -c_732093.tag = closureN_tag; - c_732093.fn = (function_type)__lambda_204; -c_732093.num_args = 2; -c_732093.num_elt = 3; -c_732093.elts = (object *)alloca(sizeof(object) * 3); -c_732093.elts[0] = ((closureN)self_73937)->elts[5]; -c_732093.elts[1] = ((closureN)self_73937)->elts[11]; -c_732093.elts[2] = ((closureN)self_73937)->elts[19]; - -return_closcall1(data,(closure)&c_731622, &c_732093);; -} - -static void __lambda_204(void *data, int argc, object self_73938, object k_73386, object term1_73182, object term2_73181) { - -closureN_type c_732095; -c_732095.hdr.mark = gc_color_red; - c_732095.hdr.grayed = 0; -c_732095.tag = closureN_tag; - c_732095.fn = (function_type)__lambda_203; -c_732095.num_args = 1; -c_732095.num_elt = 6; -c_732095.elts = (object *)alloca(sizeof(object) * 6); -c_732095.elts[0] = k_73386; -c_732095.elts[1] = ((closureN)self_73938)->elts[0]; -c_732095.elts[2] = ((closureN)self_73938)->elts[1]; -c_732095.elts[3] = term1_73182; -c_732095.elts[4] = term2_73181; -c_732095.elts[5] = ((closureN)self_73938)->elts[2]; - -return_closcall1(data,(closure)&c_732095, Cyc_is_cons(term2_73181));; -} - -static void __lambda_203(void *data, int argc, object self_73939, object r_73387) { - if( !eq(boolean_f, r_73387) ){ - -closureN_type c_732097; -c_732097.hdr.mark = gc_color_red; - c_732097.hdr.grayed = 0; -c_732097.tag = closureN_tag; - c_732097.fn = (function_type)__lambda_192; -c_732097.num_args = 1; -c_732097.num_elt = 4; -c_732097.elts = (object *)alloca(sizeof(object) * 4); -c_732097.elts[0] = ((closureN)self_73939)->elts[0]; -c_732097.elts[1] = ((closureN)self_73939)->elts[1]; -c_732097.elts[2] = ((closureN)self_73939)->elts[3]; -c_732097.elts[3] = ((closureN)self_73939)->elts[4]; - -return_closcall1(data,(closure)&c_732097, Cyc_is_cons(((closureN)self_73939)->elts[3])); -} else { - -closureN_type c_732143; -c_732143.hdr.mark = gc_color_red; - c_732143.hdr.grayed = 0; -c_732143.tag = closureN_tag; - c_732143.fn = (function_type)__lambda_202; -c_732143.num_args = 0; -c_732143.num_elt = 5; -c_732143.elts = (object *)alloca(sizeof(object) * 5); -c_732143.elts[0] = ((closureN)self_73939)->elts[0]; -c_732143.elts[1] = ((closureN)self_73939)->elts[2]; -c_732143.elts[2] = ((closureN)self_73939)->elts[3]; -c_732143.elts[3] = ((closureN)self_73939)->elts[4]; -c_732143.elts[4] = ((closureN)self_73939)->elts[5]; - -return_closcall0(data,(closure)&c_732143);} -; -} - -static void __lambda_202(void *data, int argc, object self_73940) { - -closureN_type c_732145; -c_732145.hdr.mark = gc_color_red; - c_732145.hdr.grayed = 0; -c_732145.tag = closureN_tag; - c_732145.fn = (function_type)__lambda_201; -c_732145.num_args = 1; -c_732145.num_elt = 5; -c_732145.elts = (object *)alloca(sizeof(object) * 5); -c_732145.elts[0] = ((closureN)self_73940)->elts[0]; -c_732145.elts[1] = ((closureN)self_73940)->elts[1]; -c_732145.elts[2] = ((closureN)self_73940)->elts[2]; -c_732145.elts[3] = ((closureN)self_73940)->elts[3]; -c_732145.elts[4] = ((closureN)self_73940)->elts[4]; - -return_closcall1(data,(closure)&c_732145, assq(data, ((closureN)self_73940)->elts[3], cell_get(((closureN)self_73940)->elts[4])));; -} - -static void __lambda_201(void *data, int argc, object self_73941, object temp_91temp_73183) { - if( !eq(boolean_f, temp_91temp_73183) ){ - -closureN_type c_732147; -c_732147.hdr.mark = gc_color_red; - c_732147.hdr.grayed = 0; -c_732147.tag = closureN_tag; - c_732147.fn = (function_type)__lambda_194; -c_732147.num_args = 0; -c_732147.num_elt = 4; -c_732147.elts = (object *)alloca(sizeof(object) * 4); -c_732147.elts[0] = ((closureN)self_73941)->elts[0]; -c_732147.elts[1] = temp_91temp_73183; -c_732147.elts[2] = ((closureN)self_73941)->elts[1]; -c_732147.elts[3] = ((closureN)self_73941)->elts[2]; - -return_closcall0(data,(closure)&c_732147); -} else { - -closureN_type c_732160; -c_732160.hdr.mark = gc_color_red; - c_732160.hdr.grayed = 0; -c_732160.tag = closureN_tag; - c_732160.fn = (function_type)__lambda_200; -c_732160.num_args = 1; -c_732160.num_elt = 4; -c_732160.elts = (object *)alloca(sizeof(object) * 4); -c_732160.elts[0] = ((closureN)self_73941)->elts[0]; -c_732160.elts[1] = ((closureN)self_73941)->elts[2]; -c_732160.elts[2] = ((closureN)self_73941)->elts[3]; -c_732160.elts[3] = ((closureN)self_73941)->elts[4]; - -return_closcall1(data,(closure)&c_732160, Cyc_is_number(((closureN)self_73941)->elts[3]));} -; -} - -static void __lambda_200(void *data, int argc, object self_73942, object r_73396) { - if( !eq(boolean_f, r_73396) ){ - -closureN_type c_732162; -c_732162.hdr.mark = gc_color_red; - c_732162.hdr.grayed = 0; -c_732162.tag = closureN_tag; - c_732162.fn = (function_type)__lambda_195; -c_732162.num_args = 0; -c_732162.num_elt = 3; -c_732162.elts = (object *)alloca(sizeof(object) * 3); -c_732162.elts[0] = ((closureN)self_73942)->elts[0]; -c_732162.elts[1] = ((closureN)self_73942)->elts[1]; -c_732162.elts[2] = ((closureN)self_73942)->elts[2]; - -return_closcall0(data,(closure)&c_732162); -} else { - -closureN_type c_732170; -c_732170.hdr.mark = gc_color_red; - c_732170.hdr.grayed = 0; -c_732170.tag = closureN_tag; - c_732170.fn = (function_type)__lambda_199; -c_732170.num_args = 0; -c_732170.num_elt = 4; -c_732170.elts = (object *)alloca(sizeof(object) * 4); -c_732170.elts[0] = ((closureN)self_73942)->elts[0]; -c_732170.elts[1] = ((closureN)self_73942)->elts[1]; -c_732170.elts[2] = ((closureN)self_73942)->elts[2]; -c_732170.elts[3] = ((closureN)self_73942)->elts[3]; - -return_closcall0(data,(closure)&c_732170);} -; -} - -static void __lambda_199(void *data, int argc, object self_73943) { - -closureN_type c_732172; -c_732172.hdr.mark = gc_color_red; - c_732172.hdr.grayed = 0; -c_732172.tag = closureN_tag; - c_732172.fn = (function_type)__lambda_198; -c_732172.num_args = 1; -c_732172.num_elt = 2; -c_732172.elts = (object *)alloca(sizeof(object) * 2); -c_732172.elts[0] = ((closureN)self_73943)->elts[0]; -c_732172.elts[1] = ((closureN)self_73943)->elts[3]; - - -make_cons(c_732190,((closureN)self_73943)->elts[2], ((closureN)self_73943)->elts[1]); -return_closcall1(data,(closure)&c_732172, &c_732190);; -} - -static void __lambda_198(void *data, int argc, object self_73944, object r_73399) { - -closureN_type c_732174; -c_732174.hdr.mark = gc_color_red; - c_732174.hdr.grayed = 0; -c_732174.tag = closureN_tag; - c_732174.fn = (function_type)__lambda_197; -c_732174.num_args = 1; -c_732174.num_elt = 2; -c_732174.elts = (object *)alloca(sizeof(object) * 2); -c_732174.elts[0] = ((closureN)self_73944)->elts[0]; -c_732174.elts[1] = ((closureN)self_73944)->elts[1]; - - -make_cons(c_732184,r_73399, cell_get(((closureN)self_73944)->elts[1])); -return_closcall1(data,(closure)&c_732174, &c_732184);; -} - -static void __lambda_197(void *data, int argc, object self_73945, object r_73398) { - -closureN_type c_732176; -c_732176.hdr.mark = gc_color_red; - c_732176.hdr.grayed = 0; -c_732176.tag = closureN_tag; - c_732176.fn = (function_type)__lambda_196; -c_732176.num_args = 1; -c_732176.num_elt = 1; -c_732176.elts = (object *)alloca(sizeof(object) * 1); -c_732176.elts[0] = ((closureN)self_73945)->elts[0]; - -return_closcall1(data,(closure)&c_732176, Cyc_set_car(data, ((closureN)self_73945)->elts[1], r_73398));; -} - -static void __lambda_196(void *data, int argc, object self_73946, object r_73397) { - return_closcall1(data, ((closureN)self_73946)->elts[0], boolean_t);; -} - -static void __lambda_195(void *data, int argc, object self_73947) { - return_closcall1(data, ((closureN)self_73947)->elts[0], equalp(((closureN)self_73947)->elts[1], ((closureN)self_73947)->elts[2]));; -} - -static void __lambda_194(void *data, int argc, object self_73948) { - -closureN_type c_732149; -c_732149.hdr.mark = gc_color_red; - c_732149.hdr.grayed = 0; -c_732149.tag = closureN_tag; - c_732149.fn = (function_type)__lambda_193; -c_732149.num_args = 1; -c_732149.num_elt = 3; -c_732149.elts = (object *)alloca(sizeof(object) * 3); -c_732149.elts[0] = ((closureN)self_73948)->elts[0]; -c_732149.elts[1] = ((closureN)self_73948)->elts[2]; -c_732149.elts[2] = ((closureN)self_73948)->elts[3]; - -return_closcall1(data,(closure)&c_732149, cdr(((closureN)self_73948)->elts[1]));; -} - -static void __lambda_193(void *data, int argc, object self_73949, object r_73395) { - return_closcall3(data, cell_get(((closureN)self_73949)->elts[1]), ((closureN)self_73949)->elts[0], ((closureN)self_73949)->elts[2], r_73395);; -} - -static void __lambda_192(void *data, int argc, object self_73950, object r_73388) { - if( !eq(boolean_f, r_73388) ){ - -closureN_type c_732099; -c_732099.hdr.mark = gc_color_red; - c_732099.hdr.grayed = 0; -c_732099.tag = closureN_tag; - c_732099.fn = (function_type)__lambda_190; -c_732099.num_args = 1; -c_732099.num_elt = 4; -c_732099.elts = (object *)alloca(sizeof(object) * 4); -c_732099.elts[0] = ((closureN)self_73950)->elts[0]; -c_732099.elts[1] = ((closureN)self_73950)->elts[1]; -c_732099.elts[2] = ((closureN)self_73950)->elts[2]; -c_732099.elts[3] = ((closureN)self_73950)->elts[3]; - -return_closcall1(data,(closure)&c_732099, car(((closureN)self_73950)->elts[2])); -} else { - -closureN_type c_732136; -c_732136.hdr.mark = gc_color_red; - c_732136.hdr.grayed = 0; -c_732136.tag = closureN_tag; - c_732136.fn = (function_type)__lambda_191; -c_732136.num_args = 0; -c_732136.num_elt = 1; -c_732136.elts = (object *)alloca(sizeof(object) * 1); -c_732136.elts[0] = ((closureN)self_73950)->elts[0]; - -return_closcall0(data,(closure)&c_732136);} -; -} - -static void __lambda_191(void *data, int argc, object self_73951) { - return_closcall1(data, ((closureN)self_73951)->elts[0], boolean_f);; -} - -static void __lambda_190(void *data, int argc, object self_73952, object r_73392) { - -closureN_type c_732101; -c_732101.hdr.mark = gc_color_red; - c_732101.hdr.grayed = 0; -c_732101.tag = closureN_tag; - c_732101.fn = (function_type)__lambda_189; -c_732101.num_args = 1; -c_732101.num_elt = 5; -c_732101.elts = (object *)alloca(sizeof(object) * 5); -c_732101.elts[0] = ((closureN)self_73952)->elts[0]; -c_732101.elts[1] = ((closureN)self_73952)->elts[1]; -c_732101.elts[2] = r_73392; -c_732101.elts[3] = ((closureN)self_73952)->elts[2]; -c_732101.elts[4] = ((closureN)self_73952)->elts[3]; - -return_closcall1(data,(closure)&c_732101, car(((closureN)self_73952)->elts[3]));; -} - -static void __lambda_189(void *data, int argc, object self_73953, object r_73393) { - -closureN_type c_732103; -c_732103.hdr.mark = gc_color_red; - c_732103.hdr.grayed = 0; -c_732103.tag = closureN_tag; - c_732103.fn = (function_type)__lambda_188; -c_732103.num_args = 1; -c_732103.num_elt = 4; -c_732103.elts = (object *)alloca(sizeof(object) * 4); -c_732103.elts[0] = ((closureN)self_73953)->elts[0]; -c_732103.elts[1] = ((closureN)self_73953)->elts[1]; -c_732103.elts[2] = ((closureN)self_73953)->elts[3]; -c_732103.elts[3] = ((closureN)self_73953)->elts[4]; - -return_closcall1(data,(closure)&c_732103, Cyc_eq(((closureN)self_73953)->elts[2], r_73393));; -} - -static void __lambda_188(void *data, int argc, object self_73954, object r_73389) { - if( !eq(boolean_f, r_73389) ){ - -closureN_type c_732105; -c_732105.hdr.mark = gc_color_red; - c_732105.hdr.grayed = 0; -c_732105.tag = closureN_tag; - c_732105.fn = (function_type)__lambda_186; -c_732105.num_args = 0; -c_732105.num_elt = 4; -c_732105.elts = (object *)alloca(sizeof(object) * 4); -c_732105.elts[0] = ((closureN)self_73954)->elts[0]; -c_732105.elts[1] = ((closureN)self_73954)->elts[1]; -c_732105.elts[2] = ((closureN)self_73954)->elts[2]; -c_732105.elts[3] = ((closureN)self_73954)->elts[3]; - -return_closcall0(data,(closure)&c_732105); -} else { - -closureN_type c_732123; -c_732123.hdr.mark = gc_color_red; - c_732123.hdr.grayed = 0; -c_732123.tag = closureN_tag; - c_732123.fn = (function_type)__lambda_187; -c_732123.num_args = 0; -c_732123.num_elt = 1; -c_732123.elts = (object *)alloca(sizeof(object) * 1); -c_732123.elts[0] = ((closureN)self_73954)->elts[0]; - -return_closcall0(data,(closure)&c_732123);} -; -} - -static void __lambda_187(void *data, int argc, object self_73955) { - return_closcall1(data, ((closureN)self_73955)->elts[0], boolean_f);; -} - -static void __lambda_186(void *data, int argc, object self_73956) { - -closureN_type c_732107; -c_732107.hdr.mark = gc_color_red; - c_732107.hdr.grayed = 0; -c_732107.tag = closureN_tag; - c_732107.fn = (function_type)__lambda_185; -c_732107.num_args = 1; -c_732107.num_elt = 3; -c_732107.elts = (object *)alloca(sizeof(object) * 3); -c_732107.elts[0] = ((closureN)self_73956)->elts[0]; -c_732107.elts[1] = ((closureN)self_73956)->elts[1]; -c_732107.elts[2] = ((closureN)self_73956)->elts[3]; - -return_closcall1(data,(closure)&c_732107, cdr(((closureN)self_73956)->elts[2]));; -} - -static void __lambda_185(void *data, int argc, object self_73957, object r_73390) { - -closureN_type c_732109; -c_732109.hdr.mark = gc_color_red; - c_732109.hdr.grayed = 0; -c_732109.tag = closureN_tag; - c_732109.fn = (function_type)__lambda_184; -c_732109.num_args = 1; -c_732109.num_elt = 3; -c_732109.elts = (object *)alloca(sizeof(object) * 3); -c_732109.elts[0] = ((closureN)self_73957)->elts[0]; -c_732109.elts[1] = ((closureN)self_73957)->elts[1]; -c_732109.elts[2] = r_73390; - -return_closcall1(data,(closure)&c_732109, cdr(((closureN)self_73957)->elts[2]));; -} - -static void __lambda_184(void *data, int argc, object self_73958, object r_73391) { - return_closcall3(data, cell_get(((closureN)self_73958)->elts[1]), ((closureN)self_73958)->elts[0], ((closureN)self_73958)->elts[2], r_73391);; -} - -static void __lambda_183(void *data, int argc, object self_73959, object r_73385) { - -closureN_type c_731624; -c_731624.hdr.mark = gc_color_red; - c_731624.hdr.grayed = 0; -c_731624.tag = closureN_tag; - c_731624.fn = (function_type)__lambda_182; -c_731624.num_args = 1; -c_731624.num_elt = 19; -c_731624.elts = (object *)alloca(sizeof(object) * 19); -c_731624.elts[0] = ((closureN)self_73959)->elts[0]; -c_731624.elts[1] = ((closureN)self_73959)->elts[1]; -c_731624.elts[2] = ((closureN)self_73959)->elts[2]; -c_731624.elts[3] = ((closureN)self_73959)->elts[3]; -c_731624.elts[4] = ((closureN)self_73959)->elts[4]; -c_731624.elts[5] = ((closureN)self_73959)->elts[5]; -c_731624.elts[6] = ((closureN)self_73959)->elts[6]; -c_731624.elts[7] = ((closureN)self_73959)->elts[7]; -c_731624.elts[8] = ((closureN)self_73959)->elts[8]; -c_731624.elts[9] = ((closureN)self_73959)->elts[9]; -c_731624.elts[10] = ((closureN)self_73959)->elts[10]; -c_731624.elts[11] = ((closureN)self_73959)->elts[11]; -c_731624.elts[12] = ((closureN)self_73959)->elts[12]; -c_731624.elts[13] = ((closureN)self_73959)->elts[13]; -c_731624.elts[14] = ((closureN)self_73959)->elts[14]; -c_731624.elts[15] = ((closureN)self_73959)->elts[15]; -c_731624.elts[16] = ((closureN)self_73959)->elts[16]; -c_731624.elts[17] = ((closureN)self_73959)->elts[17]; -c_731624.elts[18] = ((closureN)self_73959)->elts[18]; - -return_closcall1(data,(closure)&c_731624, Cyc_set_car(data, ((closureN)self_73959)->elts[4], r_73385));; -} - -static void __lambda_182(void *data, int argc, object self_73960, object r_73298) { - -closureN_type c_731626; -c_731626.hdr.mark = gc_color_red; - c_731626.hdr.grayed = 0; -c_731626.tag = closureN_tag; - c_731626.fn = (function_type)__lambda_169; -c_731626.num_args = 1; -c_731626.num_elt = 18; -c_731626.elts = (object *)alloca(sizeof(object) * 18); -c_731626.elts[0] = ((closureN)self_73960)->elts[0]; -c_731626.elts[1] = ((closureN)self_73960)->elts[1]; -c_731626.elts[2] = ((closureN)self_73960)->elts[2]; -c_731626.elts[3] = ((closureN)self_73960)->elts[3]; -c_731626.elts[4] = ((closureN)self_73960)->elts[5]; -c_731626.elts[5] = ((closureN)self_73960)->elts[6]; -c_731626.elts[6] = ((closureN)self_73960)->elts[7]; -c_731626.elts[7] = ((closureN)self_73960)->elts[8]; -c_731626.elts[8] = ((closureN)self_73960)->elts[9]; -c_731626.elts[9] = ((closureN)self_73960)->elts[10]; -c_731626.elts[10] = ((closureN)self_73960)->elts[11]; -c_731626.elts[11] = ((closureN)self_73960)->elts[12]; -c_731626.elts[12] = ((closureN)self_73960)->elts[13]; -c_731626.elts[13] = ((closureN)self_73960)->elts[14]; -c_731626.elts[14] = ((closureN)self_73960)->elts[15]; -c_731626.elts[15] = ((closureN)self_73960)->elts[16]; -c_731626.elts[16] = ((closureN)self_73960)->elts[17]; -c_731626.elts[17] = ((closureN)self_73960)->elts[18]; - - -closureN_type c_732031; -c_732031.hdr.mark = gc_color_red; - c_732031.hdr.grayed = 0; -c_732031.tag = closureN_tag; - c_732031.fn = (function_type)__lambda_181; -c_732031.num_args = 2; -c_732031.num_elt = 2; -c_732031.elts = (object *)alloca(sizeof(object) * 2); -c_732031.elts[0] = ((closureN)self_73960)->elts[4]; -c_732031.elts[1] = ((closureN)self_73960)->elts[5]; - -return_closcall1(data,(closure)&c_731626, &c_732031);; -} - -static void __lambda_181(void *data, int argc, object self_73961, object k_73377, object lst1_73180, object lst2_73179) { - -closureN_type c_732033; -c_732033.hdr.mark = gc_color_red; - c_732033.hdr.grayed = 0; -c_732033.tag = closureN_tag; - c_732033.fn = (function_type)__lambda_180; -c_732033.num_args = 1; -c_732033.num_elt = 5; -c_732033.elts = (object *)alloca(sizeof(object) * 5); -c_732033.elts[0] = k_73377; -c_732033.elts[1] = lst1_73180; -c_732033.elts[2] = lst2_73179; -c_732033.elts[3] = ((closureN)self_73961)->elts[0]; -c_732033.elts[4] = ((closureN)self_73961)->elts[1]; - -return_closcall1(data,(closure)&c_732033, Cyc_is_null(lst1_73180));; -} - -static void __lambda_180(void *data, int argc, object self_73962, object r_73378) { - if( !eq(boolean_f, r_73378) ){ - -closureN_type c_732035; -c_732035.hdr.mark = gc_color_red; - c_732035.hdr.grayed = 0; -c_732035.tag = closureN_tag; - c_732035.fn = (function_type)__lambda_170; -c_732035.num_args = 0; -c_732035.num_elt = 2; -c_732035.elts = (object *)alloca(sizeof(object) * 2); -c_732035.elts[0] = ((closureN)self_73962)->elts[0]; -c_732035.elts[1] = ((closureN)self_73962)->elts[2]; - -return_closcall0(data,(closure)&c_732035); -} else { - -closureN_type c_732042; -c_732042.hdr.mark = gc_color_red; - c_732042.hdr.grayed = 0; -c_732042.tag = closureN_tag; - c_732042.fn = (function_type)__lambda_179; -c_732042.num_args = 1; -c_732042.num_elt = 5; -c_732042.elts = (object *)alloca(sizeof(object) * 5); -c_732042.elts[0] = ((closureN)self_73962)->elts[0]; -c_732042.elts[1] = ((closureN)self_73962)->elts[1]; -c_732042.elts[2] = ((closureN)self_73962)->elts[2]; -c_732042.elts[3] = ((closureN)self_73962)->elts[3]; -c_732042.elts[4] = ((closureN)self_73962)->elts[4]; - -return_closcall1(data,(closure)&c_732042, Cyc_is_null(((closureN)self_73962)->elts[2]));} -; -} - -static void __lambda_179(void *data, int argc, object self_73963, object r_73379) { - if( !eq(boolean_f, r_73379) ){ - -closureN_type c_732044; -c_732044.hdr.mark = gc_color_red; - c_732044.hdr.grayed = 0; -c_732044.tag = closureN_tag; - c_732044.fn = (function_type)__lambda_171; -c_732044.num_args = 0; -c_732044.num_elt = 1; -c_732044.elts = (object *)alloca(sizeof(object) * 1); -c_732044.elts[0] = ((closureN)self_73963)->elts[0]; - -return_closcall0(data,(closure)&c_732044); -} else { - -closureN_type c_732048; -c_732048.hdr.mark = gc_color_red; - c_732048.hdr.grayed = 0; -c_732048.tag = closureN_tag; - c_732048.fn = (function_type)__lambda_178; -c_732048.num_args = 1; -c_732048.num_elt = 5; -c_732048.elts = (object *)alloca(sizeof(object) * 5); -c_732048.elts[0] = ((closureN)self_73963)->elts[0]; -c_732048.elts[1] = ((closureN)self_73963)->elts[1]; -c_732048.elts[2] = ((closureN)self_73963)->elts[2]; -c_732048.elts[3] = ((closureN)self_73963)->elts[3]; -c_732048.elts[4] = ((closureN)self_73963)->elts[4]; - -return_closcall1(data,(closure)&c_732048, car(((closureN)self_73963)->elts[1]));} -; -} - -static void __lambda_178(void *data, int argc, object self_73964, object r_73383) { - -closureN_type c_732050; -c_732050.hdr.mark = gc_color_red; - c_732050.hdr.grayed = 0; -c_732050.tag = closureN_tag; - c_732050.fn = (function_type)__lambda_177; -c_732050.num_args = 1; -c_732050.num_elt = 6; -c_732050.elts = (object *)alloca(sizeof(object) * 6); -c_732050.elts[0] = ((closureN)self_73964)->elts[0]; -c_732050.elts[1] = ((closureN)self_73964)->elts[1]; -c_732050.elts[2] = ((closureN)self_73964)->elts[2]; -c_732050.elts[3] = ((closureN)self_73964)->elts[3]; -c_732050.elts[4] = ((closureN)self_73964)->elts[4]; -c_732050.elts[5] = r_73383; - -return_closcall1(data,(closure)&c_732050, car(((closureN)self_73964)->elts[2]));; -} - -static void __lambda_177(void *data, int argc, object self_73965, object r_73384) { - -closureN_type c_732055; -c_732055.hdr.mark = gc_color_red; - c_732055.hdr.grayed = 0; -c_732055.tag = closureN_tag; - c_732055.fn = (function_type)__lambda_176; -c_732055.num_args = 1; -c_732055.num_elt = 4; -c_732055.elts = (object *)alloca(sizeof(object) * 4); -c_732055.elts[0] = ((closureN)self_73965)->elts[0]; -c_732055.elts[1] = ((closureN)self_73965)->elts[1]; -c_732055.elts[2] = ((closureN)self_73965)->elts[2]; -c_732055.elts[3] = ((closureN)self_73965)->elts[4]; - -return_closcall3(data, cell_get(((closureN)self_73965)->elts[3]), &c_732055, ((closureN)self_73965)->elts[5], r_73384);; -} - -static void __lambda_176(void *data, int argc, object self_73966, object r_73380) { - if( !eq(boolean_f, r_73380) ){ - -closureN_type c_732057; -c_732057.hdr.mark = gc_color_red; - c_732057.hdr.grayed = 0; -c_732057.tag = closureN_tag; - c_732057.fn = (function_type)__lambda_174; -c_732057.num_args = 0; -c_732057.num_elt = 4; -c_732057.elts = (object *)alloca(sizeof(object) * 4); -c_732057.elts[0] = ((closureN)self_73966)->elts[0]; -c_732057.elts[1] = ((closureN)self_73966)->elts[1]; -c_732057.elts[2] = ((closureN)self_73966)->elts[2]; -c_732057.elts[3] = ((closureN)self_73966)->elts[3]; - -return_closcall0(data,(closure)&c_732057); -} else { - -closureN_type c_732075; -c_732075.hdr.mark = gc_color_red; - c_732075.hdr.grayed = 0; -c_732075.tag = closureN_tag; - c_732075.fn = (function_type)__lambda_175; -c_732075.num_args = 0; -c_732075.num_elt = 1; -c_732075.elts = (object *)alloca(sizeof(object) * 1); -c_732075.elts[0] = ((closureN)self_73966)->elts[0]; - -return_closcall0(data,(closure)&c_732075);} -; -} - -static void __lambda_175(void *data, int argc, object self_73967) { - return_closcall1(data, ((closureN)self_73967)->elts[0], boolean_f);; -} - -static void __lambda_174(void *data, int argc, object self_73968) { - -closureN_type c_732059; -c_732059.hdr.mark = gc_color_red; - c_732059.hdr.grayed = 0; -c_732059.tag = closureN_tag; - c_732059.fn = (function_type)__lambda_173; -c_732059.num_args = 1; -c_732059.num_elt = 3; -c_732059.elts = (object *)alloca(sizeof(object) * 3); -c_732059.elts[0] = ((closureN)self_73968)->elts[0]; -c_732059.elts[1] = ((closureN)self_73968)->elts[2]; -c_732059.elts[2] = ((closureN)self_73968)->elts[3]; - -return_closcall1(data,(closure)&c_732059, cdr(((closureN)self_73968)->elts[1]));; -} - -static void __lambda_173(void *data, int argc, object self_73969, object r_73381) { - -closureN_type c_732061; -c_732061.hdr.mark = gc_color_red; - c_732061.hdr.grayed = 0; -c_732061.tag = closureN_tag; - c_732061.fn = (function_type)__lambda_172; -c_732061.num_args = 1; -c_732061.num_elt = 3; -c_732061.elts = (object *)alloca(sizeof(object) * 3); -c_732061.elts[0] = ((closureN)self_73969)->elts[0]; -c_732061.elts[1] = ((closureN)self_73969)->elts[2]; -c_732061.elts[2] = r_73381; - -return_closcall1(data,(closure)&c_732061, cdr(((closureN)self_73969)->elts[1]));; -} - -static void __lambda_172(void *data, int argc, object self_73970, object r_73382) { - return_closcall3(data, cell_get(((closureN)self_73970)->elts[1]), ((closureN)self_73970)->elts[0], ((closureN)self_73970)->elts[2], r_73382);; -} - -static void __lambda_171(void *data, int argc, object self_73971) { - return_closcall1(data, ((closureN)self_73971)->elts[0], boolean_f);; -} - -static void __lambda_170(void *data, int argc, object self_73972) { - return_closcall1(data, ((closureN)self_73972)->elts[0], Cyc_is_null(((closureN)self_73972)->elts[1]));; -} - -static void __lambda_169(void *data, int argc, object self_73973, object r_73376) { - -closureN_type c_731628; -c_731628.hdr.mark = gc_color_red; - c_731628.hdr.grayed = 0; -c_731628.tag = closureN_tag; - c_731628.fn = (function_type)__lambda_168; -c_731628.num_args = 1; -c_731628.num_elt = 17; -c_731628.elts = (object *)alloca(sizeof(object) * 17); -c_731628.elts[0] = ((closureN)self_73973)->elts[0]; -c_731628.elts[1] = ((closureN)self_73973)->elts[1]; -c_731628.elts[2] = ((closureN)self_73973)->elts[2]; -c_731628.elts[3] = ((closureN)self_73973)->elts[3]; -c_731628.elts[4] = ((closureN)self_73973)->elts[5]; -c_731628.elts[5] = ((closureN)self_73973)->elts[6]; -c_731628.elts[6] = ((closureN)self_73973)->elts[7]; -c_731628.elts[7] = ((closureN)self_73973)->elts[8]; -c_731628.elts[8] = ((closureN)self_73973)->elts[9]; -c_731628.elts[9] = ((closureN)self_73973)->elts[10]; -c_731628.elts[10] = ((closureN)self_73973)->elts[11]; -c_731628.elts[11] = ((closureN)self_73973)->elts[12]; -c_731628.elts[12] = ((closureN)self_73973)->elts[13]; -c_731628.elts[13] = ((closureN)self_73973)->elts[14]; -c_731628.elts[14] = ((closureN)self_73973)->elts[15]; -c_731628.elts[15] = ((closureN)self_73973)->elts[16]; -c_731628.elts[16] = ((closureN)self_73973)->elts[17]; - -return_closcall1(data,(closure)&c_731628, Cyc_set_car(data, ((closureN)self_73973)->elts[4], r_73376));; -} - -static void __lambda_168(void *data, int argc, object self_73974, object r_73299) { - -closureN_type c_731630; -c_731630.hdr.mark = gc_color_red; - c_731630.hdr.grayed = 0; -c_731630.tag = closureN_tag; - c_731630.fn = (function_type)__lambda_165; -c_731630.num_args = 1; -c_731630.num_elt = 17; -c_731630.elts = (object *)alloca(sizeof(object) * 17); -c_731630.elts[0] = ((closureN)self_73974)->elts[0]; -c_731630.elts[1] = ((closureN)self_73974)->elts[1]; -c_731630.elts[2] = ((closureN)self_73974)->elts[2]; -c_731630.elts[3] = ((closureN)self_73974)->elts[3]; -c_731630.elts[4] = ((closureN)self_73974)->elts[4]; -c_731630.elts[5] = ((closureN)self_73974)->elts[5]; -c_731630.elts[6] = ((closureN)self_73974)->elts[6]; -c_731630.elts[7] = ((closureN)self_73974)->elts[7]; -c_731630.elts[8] = ((closureN)self_73974)->elts[8]; -c_731630.elts[9] = ((closureN)self_73974)->elts[9]; -c_731630.elts[10] = ((closureN)self_73974)->elts[10]; -c_731630.elts[11] = ((closureN)self_73974)->elts[11]; -c_731630.elts[12] = ((closureN)self_73974)->elts[12]; -c_731630.elts[13] = ((closureN)self_73974)->elts[13]; -c_731630.elts[14] = ((closureN)self_73974)->elts[14]; -c_731630.elts[15] = ((closureN)self_73974)->elts[15]; -c_731630.elts[16] = ((closureN)self_73974)->elts[16]; - - -closureN_type c_732010; -c_732010.hdr.mark = gc_color_red; - c_732010.hdr.grayed = 0; -c_732010.tag = closureN_tag; - c_732010.fn = (function_type)__lambda_167; -c_732010.num_args = 2; -c_732010.num_elt = 3; -c_732010.elts = (object *)alloca(sizeof(object) * 3); -c_732010.elts[0] = ((closureN)self_73974)->elts[1]; -c_732010.elts[1] = ((closureN)self_73974)->elts[9]; -c_732010.elts[2] = ((closureN)self_73974)->elts[10]; - -return_closcall1(data,(closure)&c_731630, &c_732010);; -} - -static void __lambda_167(void *data, int argc, object self_73975, object k_73374, object x_73177, object lst_73176) { - -closureN_type c_732015; -c_732015.hdr.mark = gc_color_red; - c_732015.hdr.grayed = 0; -c_732015.tag = closureN_tag; - c_732015.fn = (function_type)__lambda_166; -c_732015.num_args = 1; -c_732015.num_elt = 4; -c_732015.elts = (object *)alloca(sizeof(object) * 4); -c_732015.elts[0] = k_73374; -c_732015.elts[1] = lst_73176; -c_732015.elts[2] = ((closureN)self_73975)->elts[2]; -c_732015.elts[3] = x_73177; - -return_closcall3(data, cell_get(((closureN)self_73975)->elts[1]), &c_732015, x_73177, cell_get(((closureN)self_73975)->elts[0]));; -} - -static void __lambda_166(void *data, int argc, object self_73976, object tmp_73178) { - if( !eq(boolean_f, tmp_73178) ){ - return_closcall1(data, ((closureN)self_73976)->elts[0], tmp_73178); -} else { - return_closcall3(data, cell_get(((closureN)self_73976)->elts[2]), ((closureN)self_73976)->elts[0], ((closureN)self_73976)->elts[3], ((closureN)self_73976)->elts[1]);} -; -} - -static void __lambda_165(void *data, int argc, object self_73977, object r_73373) { - -closureN_type c_731632; -c_731632.hdr.mark = gc_color_red; - c_731632.hdr.grayed = 0; -c_731632.tag = closureN_tag; - c_731632.fn = (function_type)__lambda_164; -c_731632.num_args = 1; -c_731632.num_elt = 16; -c_731632.elts = (object *)alloca(sizeof(object) * 16); -c_731632.elts[0] = ((closureN)self_73977)->elts[0]; -c_731632.elts[1] = ((closureN)self_73977)->elts[1]; -c_731632.elts[2] = ((closureN)self_73977)->elts[3]; -c_731632.elts[3] = ((closureN)self_73977)->elts[4]; -c_731632.elts[4] = ((closureN)self_73977)->elts[5]; -c_731632.elts[5] = ((closureN)self_73977)->elts[6]; -c_731632.elts[6] = ((closureN)self_73977)->elts[7]; -c_731632.elts[7] = ((closureN)self_73977)->elts[8]; -c_731632.elts[8] = ((closureN)self_73977)->elts[9]; -c_731632.elts[9] = ((closureN)self_73977)->elts[10]; -c_731632.elts[10] = ((closureN)self_73977)->elts[11]; -c_731632.elts[11] = ((closureN)self_73977)->elts[12]; -c_731632.elts[12] = ((closureN)self_73977)->elts[13]; -c_731632.elts[13] = ((closureN)self_73977)->elts[14]; -c_731632.elts[14] = ((closureN)self_73977)->elts[15]; -c_731632.elts[15] = ((closureN)self_73977)->elts[16]; - -return_closcall1(data,(closure)&c_731632, Cyc_set_car(data, ((closureN)self_73977)->elts[2], r_73373));; -} - -static void __lambda_164(void *data, int argc, object self_73978, object r_73300) { - -closureN_type c_731634; -c_731634.hdr.mark = gc_color_red; - c_731634.hdr.grayed = 0; -c_731634.tag = closureN_tag; - c_731634.fn = (function_type)__lambda_161; -c_731634.num_args = 1; -c_731634.num_elt = 16; -c_731634.elts = (object *)alloca(sizeof(object) * 16); -c_731634.elts[0] = ((closureN)self_73978)->elts[0]; -c_731634.elts[1] = ((closureN)self_73978)->elts[1]; -c_731634.elts[2] = ((closureN)self_73978)->elts[2]; -c_731634.elts[3] = ((closureN)self_73978)->elts[3]; -c_731634.elts[4] = ((closureN)self_73978)->elts[4]; -c_731634.elts[5] = ((closureN)self_73978)->elts[5]; -c_731634.elts[6] = ((closureN)self_73978)->elts[6]; -c_731634.elts[7] = ((closureN)self_73978)->elts[7]; -c_731634.elts[8] = ((closureN)self_73978)->elts[8]; -c_731634.elts[9] = ((closureN)self_73978)->elts[9]; -c_731634.elts[10] = ((closureN)self_73978)->elts[10]; -c_731634.elts[11] = ((closureN)self_73978)->elts[11]; -c_731634.elts[12] = ((closureN)self_73978)->elts[12]; -c_731634.elts[13] = ((closureN)self_73978)->elts[13]; -c_731634.elts[14] = ((closureN)self_73978)->elts[14]; -c_731634.elts[15] = ((closureN)self_73978)->elts[15]; - - -closureN_type c_731989; -c_731989.hdr.mark = gc_color_red; - c_731989.hdr.grayed = 0; -c_731989.tag = closureN_tag; - c_731989.fn = (function_type)__lambda_163; -c_731989.num_args = 2; -c_731989.num_elt = 3; -c_731989.elts = (object *)alloca(sizeof(object) * 3); -c_731989.elts[0] = ((closureN)self_73978)->elts[8]; -c_731989.elts[1] = ((closureN)self_73978)->elts[9]; -c_731989.elts[2] = ((closureN)self_73978)->elts[14]; - -return_closcall1(data,(closure)&c_731634, &c_731989);; -} - -static void __lambda_163(void *data, int argc, object self_73979, object k_73371, object x_73174, object lst_73173) { - -closureN_type c_731994; -c_731994.hdr.mark = gc_color_red; - c_731994.hdr.grayed = 0; -c_731994.tag = closureN_tag; - c_731994.fn = (function_type)__lambda_162; -c_731994.num_args = 1; -c_731994.num_elt = 4; -c_731994.elts = (object *)alloca(sizeof(object) * 4); -c_731994.elts[0] = k_73371; -c_731994.elts[1] = lst_73173; -c_731994.elts[2] = ((closureN)self_73979)->elts[1]; -c_731994.elts[3] = x_73174; - -return_closcall3(data, cell_get(((closureN)self_73979)->elts[0]), &c_731994, x_73174, cell_get(((closureN)self_73979)->elts[2]));; -} - -static void __lambda_162(void *data, int argc, object self_73980, object tmp_73175) { - if( !eq(boolean_f, tmp_73175) ){ - return_closcall1(data, ((closureN)self_73980)->elts[0], tmp_73175); -} else { - return_closcall3(data, cell_get(((closureN)self_73980)->elts[2]), ((closureN)self_73980)->elts[0], ((closureN)self_73980)->elts[3], ((closureN)self_73980)->elts[1]);} -; -} - -static void __lambda_161(void *data, int argc, object self_73981, object r_73370) { - -closureN_type c_731636; -c_731636.hdr.mark = gc_color_red; - c_731636.hdr.grayed = 0; -c_731636.tag = closureN_tag; - c_731636.fn = (function_type)__lambda_160; -c_731636.num_args = 1; -c_731636.num_elt = 15; -c_731636.elts = (object *)alloca(sizeof(object) * 15); -c_731636.elts[0] = ((closureN)self_73981)->elts[0]; -c_731636.elts[1] = ((closureN)self_73981)->elts[1]; -c_731636.elts[2] = ((closureN)self_73981)->elts[2]; -c_731636.elts[3] = ((closureN)self_73981)->elts[3]; -c_731636.elts[4] = ((closureN)self_73981)->elts[4]; -c_731636.elts[5] = ((closureN)self_73981)->elts[5]; -c_731636.elts[6] = ((closureN)self_73981)->elts[6]; -c_731636.elts[7] = ((closureN)self_73981)->elts[7]; -c_731636.elts[8] = ((closureN)self_73981)->elts[8]; -c_731636.elts[9] = ((closureN)self_73981)->elts[9]; -c_731636.elts[10] = ((closureN)self_73981)->elts[10]; -c_731636.elts[11] = ((closureN)self_73981)->elts[11]; -c_731636.elts[12] = ((closureN)self_73981)->elts[12]; -c_731636.elts[13] = ((closureN)self_73981)->elts[13]; -c_731636.elts[14] = ((closureN)self_73981)->elts[14]; - -return_closcall1(data,(closure)&c_731636, Cyc_set_car(data, ((closureN)self_73981)->elts[15], r_73370));; -} - -static void __lambda_160(void *data, int argc, object self_73982, object r_73301) { - -closureN_type c_731638; -c_731638.hdr.mark = gc_color_red; - c_731638.hdr.grayed = 0; -c_731638.tag = closureN_tag; - c_731638.fn = (function_type)__lambda_159; -c_731638.num_args = 1; -c_731638.num_elt = 15; -c_731638.elts = (object *)alloca(sizeof(object) * 15); -c_731638.elts[0] = ((closureN)self_73982)->elts[0]; -c_731638.elts[1] = ((closureN)self_73982)->elts[1]; -c_731638.elts[2] = ((closureN)self_73982)->elts[2]; -c_731638.elts[3] = ((closureN)self_73982)->elts[3]; -c_731638.elts[4] = ((closureN)self_73982)->elts[4]; -c_731638.elts[5] = ((closureN)self_73982)->elts[5]; -c_731638.elts[6] = ((closureN)self_73982)->elts[6]; -c_731638.elts[7] = ((closureN)self_73982)->elts[7]; -c_731638.elts[8] = ((closureN)self_73982)->elts[8]; -c_731638.elts[9] = ((closureN)self_73982)->elts[9]; -c_731638.elts[10] = ((closureN)self_73982)->elts[10]; -c_731638.elts[11] = ((closureN)self_73982)->elts[11]; -c_731638.elts[12] = ((closureN)self_73982)->elts[12]; -c_731638.elts[13] = ((closureN)self_73982)->elts[13]; -c_731638.elts[14] = ((closureN)self_73982)->elts[14]; - -return_closcall1(data,(closure)&c_731638, quote__85);; -} - -static void __lambda_159(void *data, int argc, object self_73983, object r_73369) { - -closureN_type c_731640; -c_731640.hdr.mark = gc_color_red; - c_731640.hdr.grayed = 0; -c_731640.tag = closureN_tag; - c_731640.fn = (function_type)__lambda_158; -c_731640.num_args = 1; -c_731640.num_elt = 15; -c_731640.elts = (object *)alloca(sizeof(object) * 15); -c_731640.elts[0] = ((closureN)self_73983)->elts[0]; -c_731640.elts[1] = ((closureN)self_73983)->elts[1]; -c_731640.elts[2] = ((closureN)self_73983)->elts[2]; -c_731640.elts[3] = ((closureN)self_73983)->elts[3]; -c_731640.elts[4] = ((closureN)self_73983)->elts[4]; -c_731640.elts[5] = ((closureN)self_73983)->elts[5]; -c_731640.elts[6] = ((closureN)self_73983)->elts[6]; -c_731640.elts[7] = ((closureN)self_73983)->elts[7]; -c_731640.elts[8] = ((closureN)self_73983)->elts[8]; -c_731640.elts[9] = ((closureN)self_73983)->elts[9]; -c_731640.elts[10] = ((closureN)self_73983)->elts[10]; -c_731640.elts[11] = ((closureN)self_73983)->elts[11]; -c_731640.elts[12] = ((closureN)self_73983)->elts[12]; -c_731640.elts[13] = ((closureN)self_73983)->elts[13]; -c_731640.elts[14] = ((closureN)self_73983)->elts[14]; - -return_closcall1(data,(closure)&c_731640, Cyc_set_car(data, ((closureN)self_73983)->elts[1], r_73369));; -} - -static void __lambda_158(void *data, int argc, object self_73984, object r_73302) { - -closureN_type c_731642; -c_731642.hdr.mark = gc_color_red; - c_731642.hdr.grayed = 0; -c_731642.tag = closureN_tag; - c_731642.fn = (function_type)__lambda_157; -c_731642.num_args = 1; -c_731642.num_elt = 15; -c_731642.elts = (object *)alloca(sizeof(object) * 15); -c_731642.elts[0] = ((closureN)self_73984)->elts[0]; -c_731642.elts[1] = ((closureN)self_73984)->elts[1]; -c_731642.elts[2] = ((closureN)self_73984)->elts[2]; -c_731642.elts[3] = ((closureN)self_73984)->elts[3]; -c_731642.elts[4] = ((closureN)self_73984)->elts[4]; -c_731642.elts[5] = ((closureN)self_73984)->elts[5]; -c_731642.elts[6] = ((closureN)self_73984)->elts[6]; -c_731642.elts[7] = ((closureN)self_73984)->elts[7]; -c_731642.elts[8] = ((closureN)self_73984)->elts[8]; -c_731642.elts[9] = ((closureN)self_73984)->elts[9]; -c_731642.elts[10] = ((closureN)self_73984)->elts[10]; -c_731642.elts[11] = ((closureN)self_73984)->elts[11]; -c_731642.elts[12] = ((closureN)self_73984)->elts[12]; -c_731642.elts[13] = ((closureN)self_73984)->elts[13]; -c_731642.elts[14] = ((closureN)self_73984)->elts[14]; - -return_closcall1(data,(closure)&c_731642, quote__85);; -} - -static void __lambda_157(void *data, int argc, object self_73985, object r_73368) { - -closureN_type c_731644; -c_731644.hdr.mark = gc_color_red; - c_731644.hdr.grayed = 0; -c_731644.tag = closureN_tag; - c_731644.fn = (function_type)__lambda_156; -c_731644.num_args = 1; -c_731644.num_elt = 15; -c_731644.elts = (object *)alloca(sizeof(object) * 15); -c_731644.elts[0] = ((closureN)self_73985)->elts[0]; -c_731644.elts[1] = ((closureN)self_73985)->elts[1]; -c_731644.elts[2] = ((closureN)self_73985)->elts[2]; -c_731644.elts[3] = ((closureN)self_73985)->elts[3]; -c_731644.elts[4] = ((closureN)self_73985)->elts[4]; -c_731644.elts[5] = ((closureN)self_73985)->elts[5]; -c_731644.elts[6] = ((closureN)self_73985)->elts[6]; -c_731644.elts[7] = ((closureN)self_73985)->elts[7]; -c_731644.elts[8] = ((closureN)self_73985)->elts[8]; -c_731644.elts[9] = ((closureN)self_73985)->elts[9]; -c_731644.elts[10] = ((closureN)self_73985)->elts[10]; -c_731644.elts[11] = ((closureN)self_73985)->elts[11]; -c_731644.elts[12] = ((closureN)self_73985)->elts[12]; -c_731644.elts[13] = ((closureN)self_73985)->elts[13]; -c_731644.elts[14] = ((closureN)self_73985)->elts[14]; - -return_closcall1(data,(closure)&c_731644, Cyc_set_car(data, ((closureN)self_73985)->elts[14], r_73368));; -} - -static void __lambda_156(void *data, int argc, object self_73986, object r_73303) { - -closureN_type c_731646; -c_731646.hdr.mark = gc_color_red; - c_731646.hdr.grayed = 0; -c_731646.tag = closureN_tag; - c_731646.fn = (function_type)__lambda_149; -c_731646.num_args = 1; -c_731646.num_elt = 15; -c_731646.elts = (object *)alloca(sizeof(object) * 15); -c_731646.elts[0] = ((closureN)self_73986)->elts[0]; -c_731646.elts[1] = ((closureN)self_73986)->elts[1]; -c_731646.elts[2] = ((closureN)self_73986)->elts[2]; -c_731646.elts[3] = ((closureN)self_73986)->elts[3]; -c_731646.elts[4] = ((closureN)self_73986)->elts[4]; -c_731646.elts[5] = ((closureN)self_73986)->elts[5]; -c_731646.elts[6] = ((closureN)self_73986)->elts[6]; -c_731646.elts[7] = ((closureN)self_73986)->elts[7]; -c_731646.elts[8] = ((closureN)self_73986)->elts[8]; -c_731646.elts[9] = ((closureN)self_73986)->elts[9]; -c_731646.elts[10] = ((closureN)self_73986)->elts[10]; -c_731646.elts[11] = ((closureN)self_73986)->elts[11]; -c_731646.elts[12] = ((closureN)self_73986)->elts[12]; -c_731646.elts[13] = ((closureN)self_73986)->elts[13]; -c_731646.elts[14] = ((closureN)self_73986)->elts[14]; - - -closureN_type c_731957; -c_731957.hdr.mark = gc_color_red; - c_731957.hdr.grayed = 0; -c_731957.tag = closureN_tag; - c_731957.fn = (function_type)__lambda_155; -c_731957.num_args = 1; -c_731957.num_elt = 2; -c_731957.elts = (object *)alloca(sizeof(object) * 2); -c_731957.elts[0] = ((closureN)self_73986)->elts[12]; -c_731957.elts[1] = ((closureN)self_73986)->elts[13]; - -return_closcall1(data,(closure)&c_731646, &c_731957);; -} - -static void __lambda_155(void *data, int argc, object self_73987, object k_73362, object n_73172) { - -closureN_type c_731959; -c_731959.hdr.mark = gc_color_red; - c_731959.hdr.grayed = 0; -c_731959.tag = closureN_tag; - c_731959.fn = (function_type)__lambda_154; -c_731959.num_args = 1; -c_731959.num_elt = 4; -c_731959.elts = (object *)alloca(sizeof(object) * 4); -c_731959.elts[0] = k_73362; -c_731959.elts[1] = n_73172; -c_731959.elts[2] = ((closureN)self_73987)->elts[0]; -c_731959.elts[3] = ((closureN)self_73987)->elts[1]; - -return_closcall1(data,(closure)&c_731959, quote_implies);; -} - -static void __lambda_154(void *data, int argc, object self_73988, object r_73364) { - -closureN_type c_731964; -c_731964.hdr.mark = gc_color_red; - c_731964.hdr.grayed = 0; -c_731964.tag = closureN_tag; - c_731964.fn = (function_type)__lambda_153; -c_731964.num_args = 1; -c_731964.num_elt = 4; -c_731964.elts = (object *)alloca(sizeof(object) * 4); -c_731964.elts[0] = ((closureN)self_73988)->elts[0]; -c_731964.elts[1] = ((closureN)self_73988)->elts[1]; -c_731964.elts[2] = r_73364; -c_731964.elts[3] = ((closureN)self_73988)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_73988)->elts[2]), &c_731964, ((closureN)self_73988)->elts[1]);; -} - -static void __lambda_153(void *data, int argc, object self_73989, object r_73365) { - -closureN_type c_731966; -c_731966.hdr.mark = gc_color_red; - c_731966.hdr.grayed = 0; -c_731966.tag = closureN_tag; - c_731966.fn = (function_type)__lambda_152; -c_731966.num_args = 1; -c_731966.num_elt = 5; -c_731966.elts = (object *)alloca(sizeof(object) * 5); -c_731966.elts[0] = ((closureN)self_73989)->elts[0]; -c_731966.elts[1] = ((closureN)self_73989)->elts[1]; -c_731966.elts[2] = ((closureN)self_73989)->elts[2]; -c_731966.elts[3] = r_73365; -c_731966.elts[4] = ((closureN)self_73989)->elts[3]; - -return_closcall1(data,(closure)&c_731966, quote_implies);; -} - -static void __lambda_152(void *data, int argc, object self_73990, object r_73367) { - -closureN_type c_731968; -c_731968.hdr.mark = gc_color_red; - c_731968.hdr.grayed = 0; -c_731968.tag = closureN_tag; - c_731968.fn = (function_type)__lambda_151; -c_731968.num_args = 1; -c_731968.num_elt = 4; -c_731968.elts = (object *)alloca(sizeof(object) * 4); -c_731968.elts[0] = ((closureN)self_73990)->elts[0]; -c_731968.elts[1] = ((closureN)self_73990)->elts[2]; -c_731968.elts[2] = ((closureN)self_73990)->elts[3]; -c_731968.elts[3] = ((closureN)self_73990)->elts[4]; - -return_closcall4(data, __glo__list_scheme_base, &c_731968, r_73367, obj_int2obj(0), ((closureN)self_73990)->elts[1]);; -} - -static void __lambda_151(void *data, int argc, object self_73991, object r_73366) { - -closureN_type c_731970; -c_731970.hdr.mark = gc_color_red; - c_731970.hdr.grayed = 0; -c_731970.tag = closureN_tag; - c_731970.fn = (function_type)__lambda_150; -c_731970.num_args = 1; -c_731970.num_elt = 2; -c_731970.elts = (object *)alloca(sizeof(object) * 2); -c_731970.elts[0] = ((closureN)self_73991)->elts[0]; -c_731970.elts[1] = ((closureN)self_73991)->elts[3]; - -return_closcall4(data, __glo__list_scheme_base, &c_731970, ((closureN)self_73991)->elts[1], ((closureN)self_73991)->elts[2], r_73366);; -} - -static void __lambda_150(void *data, int argc, object self_73992, object r_73363) { - return_closcall2(data, cell_get(((closureN)self_73992)->elts[1]), ((closureN)self_73992)->elts[0], r_73363);; -} - -static void __lambda_149(void *data, int argc, object self_73993, object r_73361) { - -closureN_type c_731648; -c_731648.hdr.mark = gc_color_red; - c_731648.hdr.grayed = 0; -c_731648.tag = closureN_tag; - c_731648.fn = (function_type)__lambda_148; -c_731648.num_args = 1; -c_731648.num_elt = 14; -c_731648.elts = (object *)alloca(sizeof(object) * 14); -c_731648.elts[0] = ((closureN)self_73993)->elts[0]; -c_731648.elts[1] = ((closureN)self_73993)->elts[1]; -c_731648.elts[2] = ((closureN)self_73993)->elts[2]; -c_731648.elts[3] = ((closureN)self_73993)->elts[3]; -c_731648.elts[4] = ((closureN)self_73993)->elts[4]; -c_731648.elts[5] = ((closureN)self_73993)->elts[5]; -c_731648.elts[6] = ((closureN)self_73993)->elts[6]; -c_731648.elts[7] = ((closureN)self_73993)->elts[7]; -c_731648.elts[8] = ((closureN)self_73993)->elts[8]; -c_731648.elts[9] = ((closureN)self_73993)->elts[9]; -c_731648.elts[10] = ((closureN)self_73993)->elts[10]; -c_731648.elts[11] = ((closureN)self_73993)->elts[12]; -c_731648.elts[12] = ((closureN)self_73993)->elts[13]; -c_731648.elts[13] = ((closureN)self_73993)->elts[14]; - -return_closcall1(data,(closure)&c_731648, Cyc_set_car(data, ((closureN)self_73993)->elts[11], r_73361));; -} - -static void __lambda_148(void *data, int argc, object self_73994, object r_73304) { - -closureN_type c_731650; -c_731650.hdr.mark = gc_color_red; - c_731650.hdr.grayed = 0; -c_731650.tag = closureN_tag; - c_731650.fn = (function_type)__lambda_136; -c_731650.num_args = 1; -c_731650.num_elt = 14; -c_731650.elts = (object *)alloca(sizeof(object) * 14); -c_731650.elts[0] = ((closureN)self_73994)->elts[0]; -c_731650.elts[1] = ((closureN)self_73994)->elts[1]; -c_731650.elts[2] = ((closureN)self_73994)->elts[2]; -c_731650.elts[3] = ((closureN)self_73994)->elts[3]; -c_731650.elts[4] = ((closureN)self_73994)->elts[4]; -c_731650.elts[5] = ((closureN)self_73994)->elts[5]; -c_731650.elts[6] = ((closureN)self_73994)->elts[6]; -c_731650.elts[7] = ((closureN)self_73994)->elts[7]; -c_731650.elts[8] = ((closureN)self_73994)->elts[8]; -c_731650.elts[9] = ((closureN)self_73994)->elts[9]; -c_731650.elts[10] = ((closureN)self_73994)->elts[10]; -c_731650.elts[11] = ((closureN)self_73994)->elts[11]; -c_731650.elts[12] = ((closureN)self_73994)->elts[12]; -c_731650.elts[13] = ((closureN)self_73994)->elts[13]; - - -closureN_type c_731912; -c_731912.hdr.mark = gc_color_red; - c_731912.hdr.grayed = 0; -c_731912.tag = closureN_tag; - c_731912.fn = (function_type)__lambda_147; -c_731912.num_args = 1; -c_731912.num_elt = 1; -c_731912.elts = (object *)alloca(sizeof(object) * 1); -c_731912.elts[0] = ((closureN)self_73994)->elts[11]; - -return_closcall1(data,(closure)&c_731650, &c_731912);; -} - -static void __lambda_147(void *data, int argc, object self_73995, object k_73352, object n_73171) { - -closureN_type c_731914; -c_731914.hdr.mark = gc_color_red; - c_731914.hdr.grayed = 0; -c_731914.tag = closureN_tag; - c_731914.fn = (function_type)__lambda_146; -c_731914.num_args = 1; -c_731914.num_elt = 3; -c_731914.elts = (object *)alloca(sizeof(object) * 3); -c_731914.elts[0] = k_73352; -c_731914.elts[1] = n_73171; -c_731914.elts[2] = ((closureN)self_73995)->elts[0]; - -return_closcall1(data,(closure)&c_731914, equalp(n_73171, obj_int2obj(1)));; -} - -static void __lambda_146(void *data, int argc, object self_73996, object r_73353) { - if( !eq(boolean_f, r_73353) ){ - -closureN_type c_731916; -c_731916.hdr.mark = gc_color_red; - c_731916.hdr.grayed = 0; -c_731916.tag = closureN_tag; - c_731916.fn = (function_type)__lambda_138; -c_731916.num_args = 0; -c_731916.num_elt = 1; -c_731916.elts = (object *)alloca(sizeof(object) * 1); -c_731916.elts[0] = ((closureN)self_73996)->elts[0]; - -return_closcall0(data,(closure)&c_731916); -} else { - -closureN_type c_731922; -c_731922.hdr.mark = gc_color_red; - c_731922.hdr.grayed = 0; -c_731922.tag = closureN_tag; - c_731922.fn = (function_type)__lambda_145; -c_731922.num_args = 0; -c_731922.num_elt = 3; -c_731922.elts = (object *)alloca(sizeof(object) * 3); -c_731922.elts[0] = ((closureN)self_73996)->elts[0]; -c_731922.elts[1] = ((closureN)self_73996)->elts[1]; -c_731922.elts[2] = ((closureN)self_73996)->elts[2]; - -return_closcall0(data,(closure)&c_731922);} -; -} - -static void __lambda_145(void *data, int argc, object self_73997) { - -closureN_type c_731924; -c_731924.hdr.mark = gc_color_red; - c_731924.hdr.grayed = 0; -c_731924.tag = closureN_tag; - c_731924.fn = (function_type)__lambda_144; -c_731924.num_args = 1; -c_731924.num_elt = 3; -c_731924.elts = (object *)alloca(sizeof(object) * 3); -c_731924.elts[0] = ((closureN)self_73997)->elts[0]; -c_731924.elts[1] = ((closureN)self_73997)->elts[1]; -c_731924.elts[2] = ((closureN)self_73997)->elts[2]; - -return_closcall1(data,(closure)&c_731924, quote_and);; -} - -static void __lambda_144(void *data, int argc, object self_73998, object r_73355) { - -closureN_type c_731926; -c_731926.hdr.mark = gc_color_red; - c_731926.hdr.grayed = 0; -c_731926.tag = closureN_tag; - c_731926.fn = (function_type)__lambda_143; -c_731926.num_args = 1; -c_731926.num_elt = 4; -c_731926.elts = (object *)alloca(sizeof(object) * 4); -c_731926.elts[0] = ((closureN)self_73998)->elts[0]; -c_731926.elts[1] = ((closureN)self_73998)->elts[1]; -c_731926.elts[2] = r_73355; -c_731926.elts[3] = ((closureN)self_73998)->elts[2]; - -return_closcall1(data,(closure)&c_731926, quote_implies);; -} - -static void __lambda_143(void *data, int argc, object self_73999, object r_73359) { - -closureN_type c_731928; -c_731928.hdr.mark = gc_color_red; - c_731928.hdr.grayed = 0; -c_731928.tag = closureN_tag; - c_731928.fn = (function_type)__lambda_142; -c_731928.num_args = 1; -c_731928.num_elt = 5; -c_731928.elts = (object *)alloca(sizeof(object) * 5); -c_731928.elts[0] = ((closureN)self_73999)->elts[0]; -c_731928.elts[1] = ((closureN)self_73999)->elts[1]; -c_731928.elts[2] = ((closureN)self_73999)->elts[2]; -c_731928.elts[3] = r_73359; -c_731928.elts[4] = ((closureN)self_73999)->elts[3]; - - -object c_731950 = Cyc_sub(data,(closure)&c_731928,2,((closureN)self_73999)->elts[1], obj_int2obj(1)); -return_closcall1(data,(closure)&c_731928, c_731950);; -} - -static void __lambda_142(void *data, int argc, object self_731000, object r_73360) { - -closureN_type c_731930; -c_731930.hdr.mark = gc_color_red; - c_731930.hdr.grayed = 0; -c_731930.tag = closureN_tag; - c_731930.fn = (function_type)__lambda_141; -c_731930.num_args = 1; -c_731930.num_elt = 4; -c_731930.elts = (object *)alloca(sizeof(object) * 4); -c_731930.elts[0] = ((closureN)self_731000)->elts[0]; -c_731930.elts[1] = ((closureN)self_731000)->elts[1]; -c_731930.elts[2] = ((closureN)self_731000)->elts[2]; -c_731930.elts[3] = ((closureN)self_731000)->elts[4]; - -return_closcall4(data, __glo__list_scheme_base, &c_731930, ((closureN)self_731000)->elts[3], r_73360, ((closureN)self_731000)->elts[1]);; -} - -static void __lambda_141(void *data, int argc, object self_731001, object r_73356) { - -closureN_type c_731932; -c_731932.hdr.mark = gc_color_red; - c_731932.hdr.grayed = 0; -c_731932.tag = closureN_tag; - c_731932.fn = (function_type)__lambda_140; -c_731932.num_args = 1; -c_731932.num_elt = 4; -c_731932.elts = (object *)alloca(sizeof(object) * 4); -c_731932.elts[0] = ((closureN)self_731001)->elts[0]; -c_731932.elts[1] = ((closureN)self_731001)->elts[2]; -c_731932.elts[2] = r_73356; -c_731932.elts[3] = ((closureN)self_731001)->elts[3]; - - -object c_731944 = Cyc_sub(data,(closure)&c_731932,2,((closureN)self_731001)->elts[1], obj_int2obj(1)); -return_closcall1(data,(closure)&c_731932, c_731944);; -} - -static void __lambda_140(void *data, int argc, object self_731002, object r_73358) { - -closureN_type c_731937; -c_731937.hdr.mark = gc_color_red; - c_731937.hdr.grayed = 0; -c_731937.tag = closureN_tag; - c_731937.fn = (function_type)__lambda_139; -c_731937.num_args = 1; -c_731937.num_elt = 3; -c_731937.elts = (object *)alloca(sizeof(object) * 3); -c_731937.elts[0] = ((closureN)self_731002)->elts[0]; -c_731937.elts[1] = ((closureN)self_731002)->elts[1]; -c_731937.elts[2] = ((closureN)self_731002)->elts[2]; - -return_closcall2(data, cell_get(((closureN)self_731002)->elts[3]), &c_731937, r_73358);; -} - -static void __lambda_139(void *data, int argc, object self_731003, object r_73357) { - return_closcall4(data, __glo__list_scheme_base, ((closureN)self_731003)->elts[0], ((closureN)self_731003)->elts[1], ((closureN)self_731003)->elts[2], r_73357);; -} - -static void __lambda_138(void *data, int argc, object self_731004) { - -closureN_type c_731918; -c_731918.hdr.mark = gc_color_red; - c_731918.hdr.grayed = 0; -c_731918.tag = closureN_tag; - c_731918.fn = (function_type)__lambda_137; -c_731918.num_args = 1; -c_731918.num_elt = 1; -c_731918.elts = (object *)alloca(sizeof(object) * 1); -c_731918.elts[0] = ((closureN)self_731004)->elts[0]; - -return_closcall1(data,(closure)&c_731918, quote_implies);; -} - -static void __lambda_137(void *data, int argc, object self_731005, object r_73354) { - return_closcall4(data, __glo__list_scheme_base, ((closureN)self_731005)->elts[0], r_73354, obj_int2obj(0), obj_int2obj(1));; -} - -static void __lambda_136(void *data, int argc, object self_731006, object r_73351) { - -closureN_type c_731652; -c_731652.hdr.mark = gc_color_red; - c_731652.hdr.grayed = 0; -c_731652.tag = closureN_tag; - c_731652.fn = (function_type)__lambda_135; -c_731652.num_args = 1; -c_731652.num_elt = 13; -c_731652.elts = (object *)alloca(sizeof(object) * 13); -c_731652.elts[0] = ((closureN)self_731006)->elts[0]; -c_731652.elts[1] = ((closureN)self_731006)->elts[1]; -c_731652.elts[2] = ((closureN)self_731006)->elts[2]; -c_731652.elts[3] = ((closureN)self_731006)->elts[3]; -c_731652.elts[4] = ((closureN)self_731006)->elts[4]; -c_731652.elts[5] = ((closureN)self_731006)->elts[5]; -c_731652.elts[6] = ((closureN)self_731006)->elts[6]; -c_731652.elts[7] = ((closureN)self_731006)->elts[7]; -c_731652.elts[8] = ((closureN)self_731006)->elts[8]; -c_731652.elts[9] = ((closureN)self_731006)->elts[9]; -c_731652.elts[10] = ((closureN)self_731006)->elts[10]; -c_731652.elts[11] = ((closureN)self_731006)->elts[12]; -c_731652.elts[12] = ((closureN)self_731006)->elts[13]; - -return_closcall1(data,(closure)&c_731652, Cyc_set_car(data, ((closureN)self_731006)->elts[11], r_73351));; -} - -static void __lambda_135(void *data, int argc, object self_731007, object r_73305) { - -closureN_type c_731654; -c_731654.hdr.mark = gc_color_red; - c_731654.hdr.grayed = 0; -c_731654.tag = closureN_tag; - c_731654.fn = (function_type)__lambda_124; -c_731654.num_args = 1; -c_731654.num_elt = 12; -c_731654.elts = (object *)alloca(sizeof(object) * 12); -c_731654.elts[0] = ((closureN)self_731007)->elts[0]; -c_731654.elts[1] = ((closureN)self_731007)->elts[1]; -c_731654.elts[2] = ((closureN)self_731007)->elts[2]; -c_731654.elts[3] = ((closureN)self_731007)->elts[3]; -c_731654.elts[4] = ((closureN)self_731007)->elts[4]; -c_731654.elts[5] = ((closureN)self_731007)->elts[5]; -c_731654.elts[6] = ((closureN)self_731007)->elts[7]; -c_731654.elts[7] = ((closureN)self_731007)->elts[8]; -c_731654.elts[8] = ((closureN)self_731007)->elts[9]; -c_731654.elts[9] = ((closureN)self_731007)->elts[10]; -c_731654.elts[10] = ((closureN)self_731007)->elts[11]; -c_731654.elts[11] = ((closureN)self_731007)->elts[12]; - - -closureN_type c_731853; -c_731853.hdr.mark = gc_color_red; - c_731853.hdr.grayed = 0; -c_731853.tag = closureN_tag; - c_731853.fn = (function_type)__lambda_134; -c_731853.num_args = 2; -c_731853.num_elt = 2; -c_731853.elts = (object *)alloca(sizeof(object) * 2); -c_731853.elts[0] = ((closureN)self_731007)->elts[6]; -c_731853.elts[1] = ((closureN)self_731007)->elts[7]; - -return_closcall1(data,(closure)&c_731654, &c_731853);; -} - -static void __lambda_134(void *data, int argc, object self_731008, object k_73343, object x_73170, object y_73169) { - -closureN_type c_731855; -c_731855.hdr.mark = gc_color_red; - c_731855.hdr.grayed = 0; -c_731855.tag = closureN_tag; - c_731855.fn = (function_type)__lambda_133; -c_731855.num_args = 1; -c_731855.num_elt = 5; -c_731855.elts = (object *)alloca(sizeof(object) * 5); -c_731855.elts[0] = k_73343; -c_731855.elts[1] = ((closureN)self_731008)->elts[0]; -c_731855.elts[2] = ((closureN)self_731008)->elts[1]; -c_731855.elts[3] = x_73170; -c_731855.elts[4] = y_73169; - -return_closcall1(data,(closure)&c_731855, Cyc_is_cons(x_73170));; -} - -static void __lambda_133(void *data, int argc, object self_731009, object r_73344) { - if( !eq(boolean_f, r_73344) ){ - -closureN_type c_731857; -c_731857.hdr.mark = gc_color_red; - c_731857.hdr.grayed = 0; -c_731857.tag = closureN_tag; - c_731857.fn = (function_type)__lambda_131; -c_731857.num_args = 0; -c_731857.num_elt = 5; -c_731857.elts = (object *)alloca(sizeof(object) * 5); -c_731857.elts[0] = ((closureN)self_731009)->elts[0]; -c_731857.elts[1] = ((closureN)self_731009)->elts[1]; -c_731857.elts[2] = ((closureN)self_731009)->elts[2]; -c_731857.elts[3] = ((closureN)self_731009)->elts[3]; -c_731857.elts[4] = ((closureN)self_731009)->elts[4]; - -return_closcall0(data,(closure)&c_731857); -} else { - -closureN_type c_731900; -c_731900.hdr.mark = gc_color_red; - c_731900.hdr.grayed = 0; -c_731900.tag = closureN_tag; - c_731900.fn = (function_type)__lambda_132; -c_731900.num_args = 0; -c_731900.num_elt = 3; -c_731900.elts = (object *)alloca(sizeof(object) * 3); -c_731900.elts[0] = ((closureN)self_731009)->elts[0]; -c_731900.elts[1] = ((closureN)self_731009)->elts[3]; -c_731900.elts[2] = ((closureN)self_731009)->elts[4]; - -return_closcall0(data,(closure)&c_731900);} -; -} - -static void __lambda_132(void *data, int argc, object self_731010) { - return_closcall1(data, ((closureN)self_731010)->elts[0], equalp(((closureN)self_731010)->elts[1], ((closureN)self_731010)->elts[2]));; -} - -static void __lambda_131(void *data, int argc, object self_731011) { - -closureN_type c_731859; -c_731859.hdr.mark = gc_color_red; - c_731859.hdr.grayed = 0; -c_731859.tag = closureN_tag; - c_731859.fn = (function_type)__lambda_130; -c_731859.num_args = 1; -c_731859.num_elt = 5; -c_731859.elts = (object *)alloca(sizeof(object) * 5); -c_731859.elts[0] = ((closureN)self_731011)->elts[0]; -c_731859.elts[1] = ((closureN)self_731011)->elts[1]; -c_731859.elts[2] = ((closureN)self_731011)->elts[2]; -c_731859.elts[3] = ((closureN)self_731011)->elts[3]; -c_731859.elts[4] = ((closureN)self_731011)->elts[4]; - -return_closcall1(data,(closure)&c_731859, Cyc_is_cons(((closureN)self_731011)->elts[4]));; -} - -static void __lambda_130(void *data, int argc, object self_731012, object r_73345) { - if( !eq(boolean_f, r_73345) ){ - -closureN_type c_731861; -c_731861.hdr.mark = gc_color_red; - c_731861.hdr.grayed = 0; -c_731861.tag = closureN_tag; - c_731861.fn = (function_type)__lambda_129; -c_731861.num_args = 1; -c_731861.num_elt = 5; -c_731861.elts = (object *)alloca(sizeof(object) * 5); -c_731861.elts[0] = ((closureN)self_731012)->elts[0]; -c_731861.elts[1] = ((closureN)self_731012)->elts[1]; -c_731861.elts[2] = ((closureN)self_731012)->elts[2]; -c_731861.elts[3] = ((closureN)self_731012)->elts[3]; -c_731861.elts[4] = ((closureN)self_731012)->elts[4]; - -return_closcall1(data,(closure)&c_731861, car(((closureN)self_731012)->elts[3])); -} else { - return_closcall1(data, ((closureN)self_731012)->elts[0], boolean_f);} -; -} - -static void __lambda_129(void *data, int argc, object self_731013, object r_73349) { - -closureN_type c_731863; -c_731863.hdr.mark = gc_color_red; - c_731863.hdr.grayed = 0; -c_731863.tag = closureN_tag; - c_731863.fn = (function_type)__lambda_128; -c_731863.num_args = 1; -c_731863.num_elt = 6; -c_731863.elts = (object *)alloca(sizeof(object) * 6); -c_731863.elts[0] = ((closureN)self_731013)->elts[0]; -c_731863.elts[1] = r_73349; -c_731863.elts[2] = ((closureN)self_731013)->elts[1]; -c_731863.elts[3] = ((closureN)self_731013)->elts[2]; -c_731863.elts[4] = ((closureN)self_731013)->elts[3]; -c_731863.elts[5] = ((closureN)self_731013)->elts[4]; - -return_closcall1(data,(closure)&c_731863, car(((closureN)self_731013)->elts[4]));; -} - -static void __lambda_128(void *data, int argc, object self_731014, object r_73350) { - -closureN_type c_731868; -c_731868.hdr.mark = gc_color_red; - c_731868.hdr.grayed = 0; -c_731868.tag = closureN_tag; - c_731868.fn = (function_type)__lambda_127; -c_731868.num_args = 1; -c_731868.num_elt = 4; -c_731868.elts = (object *)alloca(sizeof(object) * 4); -c_731868.elts[0] = ((closureN)self_731014)->elts[0]; -c_731868.elts[1] = ((closureN)self_731014)->elts[3]; -c_731868.elts[2] = ((closureN)self_731014)->elts[4]; -c_731868.elts[3] = ((closureN)self_731014)->elts[5]; - -return_closcall3(data, cell_get(((closureN)self_731014)->elts[2]), &c_731868, ((closureN)self_731014)->elts[1], r_73350);; -} - -static void __lambda_127(void *data, int argc, object self_731015, object r_73346) { - if( !eq(boolean_f, r_73346) ){ - -closureN_type c_731870; -c_731870.hdr.mark = gc_color_red; - c_731870.hdr.grayed = 0; -c_731870.tag = closureN_tag; - c_731870.fn = (function_type)__lambda_126; -c_731870.num_args = 1; -c_731870.num_elt = 3; -c_731870.elts = (object *)alloca(sizeof(object) * 3); -c_731870.elts[0] = ((closureN)self_731015)->elts[0]; -c_731870.elts[1] = ((closureN)self_731015)->elts[1]; -c_731870.elts[2] = ((closureN)self_731015)->elts[3]; - -return_closcall1(data,(closure)&c_731870, cdr(((closureN)self_731015)->elts[2])); -} else { - return_closcall1(data, ((closureN)self_731015)->elts[0], boolean_f);} -; -} - -static void __lambda_126(void *data, int argc, object self_731016, object r_73347) { - -closureN_type c_731872; -c_731872.hdr.mark = gc_color_red; - c_731872.hdr.grayed = 0; -c_731872.tag = closureN_tag; - c_731872.fn = (function_type)__lambda_125; -c_731872.num_args = 1; -c_731872.num_elt = 3; -c_731872.elts = (object *)alloca(sizeof(object) * 3); -c_731872.elts[0] = ((closureN)self_731016)->elts[0]; -c_731872.elts[1] = r_73347; -c_731872.elts[2] = ((closureN)self_731016)->elts[1]; - -return_closcall1(data,(closure)&c_731872, cdr(((closureN)self_731016)->elts[2]));; -} - -static void __lambda_125(void *data, int argc, object self_731017, object r_73348) { - return_closcall3(data, cell_get(((closureN)self_731017)->elts[2]), ((closureN)self_731017)->elts[0], ((closureN)self_731017)->elts[1], r_73348);; -} - -static void __lambda_124(void *data, int argc, object self_731018, object r_73342) { - -closureN_type c_731656; -c_731656.hdr.mark = gc_color_red; - c_731656.hdr.grayed = 0; -c_731656.tag = closureN_tag; - c_731656.fn = (function_type)__lambda_123; -c_731656.num_args = 1; -c_731656.num_elt = 12; -c_731656.elts = (object *)alloca(sizeof(object) * 12); -c_731656.elts[0] = ((closureN)self_731018)->elts[0]; -c_731656.elts[1] = ((closureN)self_731018)->elts[1]; -c_731656.elts[2] = ((closureN)self_731018)->elts[2]; -c_731656.elts[3] = ((closureN)self_731018)->elts[3]; -c_731656.elts[4] = ((closureN)self_731018)->elts[4]; -c_731656.elts[5] = ((closureN)self_731018)->elts[5]; -c_731656.elts[6] = ((closureN)self_731018)->elts[6]; -c_731656.elts[7] = ((closureN)self_731018)->elts[7]; -c_731656.elts[8] = ((closureN)self_731018)->elts[8]; -c_731656.elts[9] = ((closureN)self_731018)->elts[9]; -c_731656.elts[10] = ((closureN)self_731018)->elts[10]; -c_731656.elts[11] = ((closureN)self_731018)->elts[11]; - -return_closcall1(data,(closure)&c_731656, Cyc_set_car(data, ((closureN)self_731018)->elts[7], r_73342));; -} - -static void __lambda_123(void *data, int argc, object self_731019, object r_73306) { - -closureN_type c_731658; -c_731658.hdr.mark = gc_color_red; - c_731658.hdr.grayed = 0; -c_731658.tag = closureN_tag; - c_731658.fn = (function_type)__lambda_110; -c_731658.num_args = 1; -c_731658.num_elt = 12; -c_731658.elts = (object *)alloca(sizeof(object) * 12); -c_731658.elts[0] = ((closureN)self_731019)->elts[0]; -c_731658.elts[1] = ((closureN)self_731019)->elts[1]; -c_731658.elts[2] = ((closureN)self_731019)->elts[2]; -c_731658.elts[3] = ((closureN)self_731019)->elts[3]; -c_731658.elts[4] = ((closureN)self_731019)->elts[4]; -c_731658.elts[5] = ((closureN)self_731019)->elts[5]; -c_731658.elts[6] = ((closureN)self_731019)->elts[6]; -c_731658.elts[7] = ((closureN)self_731019)->elts[7]; -c_731658.elts[8] = ((closureN)self_731019)->elts[8]; -c_731658.elts[9] = ((closureN)self_731019)->elts[9]; -c_731658.elts[10] = ((closureN)self_731019)->elts[10]; -c_731658.elts[11] = ((closureN)self_731019)->elts[11]; - - -closureN_type c_731791; -c_731791.hdr.mark = gc_color_red; - c_731791.hdr.grayed = 0; -c_731791.tag = closureN_tag; - c_731791.fn = (function_type)__lambda_122; -c_731791.num_args = 2; -c_731791.num_elt = 2; -c_731791.elts = (object *)alloca(sizeof(object) * 2); -c_731791.elts[0] = ((closureN)self_731019)->elts[6]; -c_731791.elts[1] = ((closureN)self_731019)->elts[7]; - -return_closcall1(data,(closure)&c_731658, &c_731791);; -} - -static void __lambda_122(void *data, int argc, object self_731020, object k_73334, object lst1_73168, object lst2_73167) { - -closureN_type c_731793; -c_731793.hdr.mark = gc_color_red; - c_731793.hdr.grayed = 0; -c_731793.tag = closureN_tag; - c_731793.fn = (function_type)__lambda_121; -c_731793.num_args = 1; -c_731793.num_elt = 5; -c_731793.elts = (object *)alloca(sizeof(object) * 5); -c_731793.elts[0] = k_73334; -c_731793.elts[1] = lst1_73168; -c_731793.elts[2] = lst2_73167; -c_731793.elts[3] = ((closureN)self_731020)->elts[0]; -c_731793.elts[4] = ((closureN)self_731020)->elts[1]; - -return_closcall1(data,(closure)&c_731793, Cyc_is_null(lst1_73168));; -} - -static void __lambda_121(void *data, int argc, object self_731021, object r_73335) { - if( !eq(boolean_f, r_73335) ){ - -closureN_type c_731795; -c_731795.hdr.mark = gc_color_red; - c_731795.hdr.grayed = 0; -c_731795.tag = closureN_tag; - c_731795.fn = (function_type)__lambda_111; -c_731795.num_args = 0; -c_731795.num_elt = 2; -c_731795.elts = (object *)alloca(sizeof(object) * 2); -c_731795.elts[0] = ((closureN)self_731021)->elts[0]; -c_731795.elts[1] = ((closureN)self_731021)->elts[2]; - -return_closcall0(data,(closure)&c_731795); -} else { - -closureN_type c_731802; -c_731802.hdr.mark = gc_color_red; - c_731802.hdr.grayed = 0; -c_731802.tag = closureN_tag; - c_731802.fn = (function_type)__lambda_120; -c_731802.num_args = 1; -c_731802.num_elt = 5; -c_731802.elts = (object *)alloca(sizeof(object) * 5); -c_731802.elts[0] = ((closureN)self_731021)->elts[0]; -c_731802.elts[1] = ((closureN)self_731021)->elts[1]; -c_731802.elts[2] = ((closureN)self_731021)->elts[2]; -c_731802.elts[3] = ((closureN)self_731021)->elts[3]; -c_731802.elts[4] = ((closureN)self_731021)->elts[4]; - -return_closcall1(data,(closure)&c_731802, Cyc_is_null(((closureN)self_731021)->elts[2]));} -; -} - -static void __lambda_120(void *data, int argc, object self_731022, object r_73336) { - if( !eq(boolean_f, r_73336) ){ - -closureN_type c_731804; -c_731804.hdr.mark = gc_color_red; - c_731804.hdr.grayed = 0; -c_731804.tag = closureN_tag; - c_731804.fn = (function_type)__lambda_112; -c_731804.num_args = 0; -c_731804.num_elt = 1; -c_731804.elts = (object *)alloca(sizeof(object) * 1); -c_731804.elts[0] = ((closureN)self_731022)->elts[0]; - -return_closcall0(data,(closure)&c_731804); -} else { - -closureN_type c_731808; -c_731808.hdr.mark = gc_color_red; - c_731808.hdr.grayed = 0; -c_731808.tag = closureN_tag; - c_731808.fn = (function_type)__lambda_119; -c_731808.num_args = 1; -c_731808.num_elt = 5; -c_731808.elts = (object *)alloca(sizeof(object) * 5); -c_731808.elts[0] = ((closureN)self_731022)->elts[0]; -c_731808.elts[1] = ((closureN)self_731022)->elts[1]; -c_731808.elts[2] = ((closureN)self_731022)->elts[2]; -c_731808.elts[3] = ((closureN)self_731022)->elts[3]; -c_731808.elts[4] = ((closureN)self_731022)->elts[4]; - -return_closcall1(data,(closure)&c_731808, car(((closureN)self_731022)->elts[1]));} -; -} - -static void __lambda_119(void *data, int argc, object self_731023, object r_73340) { - -closureN_type c_731810; -c_731810.hdr.mark = gc_color_red; - c_731810.hdr.grayed = 0; -c_731810.tag = closureN_tag; - c_731810.fn = (function_type)__lambda_118; -c_731810.num_args = 1; -c_731810.num_elt = 6; -c_731810.elts = (object *)alloca(sizeof(object) * 6); -c_731810.elts[0] = ((closureN)self_731023)->elts[0]; -c_731810.elts[1] = ((closureN)self_731023)->elts[1]; -c_731810.elts[2] = ((closureN)self_731023)->elts[2]; -c_731810.elts[3] = r_73340; -c_731810.elts[4] = ((closureN)self_731023)->elts[3]; -c_731810.elts[5] = ((closureN)self_731023)->elts[4]; - -return_closcall1(data,(closure)&c_731810, car(((closureN)self_731023)->elts[2]));; -} - -static void __lambda_118(void *data, int argc, object self_731024, object r_73341) { - -closureN_type c_731815; -c_731815.hdr.mark = gc_color_red; - c_731815.hdr.grayed = 0; -c_731815.tag = closureN_tag; - c_731815.fn = (function_type)__lambda_117; -c_731815.num_args = 1; -c_731815.num_elt = 4; -c_731815.elts = (object *)alloca(sizeof(object) * 4); -c_731815.elts[0] = ((closureN)self_731024)->elts[0]; -c_731815.elts[1] = ((closureN)self_731024)->elts[1]; -c_731815.elts[2] = ((closureN)self_731024)->elts[2]; -c_731815.elts[3] = ((closureN)self_731024)->elts[4]; - -return_closcall3(data, cell_get(((closureN)self_731024)->elts[5]), &c_731815, ((closureN)self_731024)->elts[3], r_73341);; -} - -static void __lambda_117(void *data, int argc, object self_731025, object r_73337) { - if( !eq(boolean_f, r_73337) ){ - -closureN_type c_731817; -c_731817.hdr.mark = gc_color_red; - c_731817.hdr.grayed = 0; -c_731817.tag = closureN_tag; - c_731817.fn = (function_type)__lambda_115; -c_731817.num_args = 0; -c_731817.num_elt = 4; -c_731817.elts = (object *)alloca(sizeof(object) * 4); -c_731817.elts[0] = ((closureN)self_731025)->elts[0]; -c_731817.elts[1] = ((closureN)self_731025)->elts[1]; -c_731817.elts[2] = ((closureN)self_731025)->elts[2]; -c_731817.elts[3] = ((closureN)self_731025)->elts[3]; - -return_closcall0(data,(closure)&c_731817); -} else { - -closureN_type c_731835; -c_731835.hdr.mark = gc_color_red; - c_731835.hdr.grayed = 0; -c_731835.tag = closureN_tag; - c_731835.fn = (function_type)__lambda_116; -c_731835.num_args = 0; -c_731835.num_elt = 1; -c_731835.elts = (object *)alloca(sizeof(object) * 1); -c_731835.elts[0] = ((closureN)self_731025)->elts[0]; - -return_closcall0(data,(closure)&c_731835);} -; -} - -static void __lambda_116(void *data, int argc, object self_731026) { - return_closcall1(data, ((closureN)self_731026)->elts[0], boolean_f);; -} - -static void __lambda_115(void *data, int argc, object self_731027) { - -closureN_type c_731819; -c_731819.hdr.mark = gc_color_red; - c_731819.hdr.grayed = 0; -c_731819.tag = closureN_tag; - c_731819.fn = (function_type)__lambda_114; -c_731819.num_args = 1; -c_731819.num_elt = 3; -c_731819.elts = (object *)alloca(sizeof(object) * 3); -c_731819.elts[0] = ((closureN)self_731027)->elts[0]; -c_731819.elts[1] = ((closureN)self_731027)->elts[2]; -c_731819.elts[2] = ((closureN)self_731027)->elts[3]; - -return_closcall1(data,(closure)&c_731819, cdr(((closureN)self_731027)->elts[1]));; -} - -static void __lambda_114(void *data, int argc, object self_731028, object r_73338) { - -closureN_type c_731821; -c_731821.hdr.mark = gc_color_red; - c_731821.hdr.grayed = 0; -c_731821.tag = closureN_tag; - c_731821.fn = (function_type)__lambda_113; -c_731821.num_args = 1; -c_731821.num_elt = 3; -c_731821.elts = (object *)alloca(sizeof(object) * 3); -c_731821.elts[0] = ((closureN)self_731028)->elts[0]; -c_731821.elts[1] = r_73338; -c_731821.elts[2] = ((closureN)self_731028)->elts[2]; - -return_closcall1(data,(closure)&c_731821, cdr(((closureN)self_731028)->elts[1]));; -} - -static void __lambda_113(void *data, int argc, object self_731029, object r_73339) { - return_closcall3(data, cell_get(((closureN)self_731029)->elts[2]), ((closureN)self_731029)->elts[0], ((closureN)self_731029)->elts[1], r_73339);; -} - -static void __lambda_112(void *data, int argc, object self_731030) { - return_closcall1(data, ((closureN)self_731030)->elts[0], boolean_f);; -} - -static void __lambda_111(void *data, int argc, object self_731031) { - return_closcall1(data, ((closureN)self_731031)->elts[0], Cyc_is_null(((closureN)self_731031)->elts[1]));; -} - -static void __lambda_110(void *data, int argc, object self_731032, object r_73333) { - -closureN_type c_731660; -c_731660.hdr.mark = gc_color_red; - c_731660.hdr.grayed = 0; -c_731660.tag = closureN_tag; - c_731660.fn = (function_type)__lambda_109; -c_731660.num_args = 1; -c_731660.num_elt = 11; -c_731660.elts = (object *)alloca(sizeof(object) * 11); -c_731660.elts[0] = ((closureN)self_731032)->elts[0]; -c_731660.elts[1] = ((closureN)self_731032)->elts[1]; -c_731660.elts[2] = ((closureN)self_731032)->elts[2]; -c_731660.elts[3] = ((closureN)self_731032)->elts[3]; -c_731660.elts[4] = ((closureN)self_731032)->elts[4]; -c_731660.elts[5] = ((closureN)self_731032)->elts[5]; -c_731660.elts[6] = ((closureN)self_731032)->elts[7]; -c_731660.elts[7] = ((closureN)self_731032)->elts[8]; -c_731660.elts[8] = ((closureN)self_731032)->elts[9]; -c_731660.elts[9] = ((closureN)self_731032)->elts[10]; -c_731660.elts[10] = ((closureN)self_731032)->elts[11]; - -return_closcall1(data,(closure)&c_731660, Cyc_set_car(data, ((closureN)self_731032)->elts[6], r_73333));; -} - -static void __lambda_109(void *data, int argc, object self_731033, object r_73307) { - -closureN_type c_731662; -c_731662.hdr.mark = gc_color_red; - c_731662.hdr.grayed = 0; -c_731662.tag = closureN_tag; - c_731662.fn = (function_type)__lambda_100; -c_731662.num_args = 1; -c_731662.num_elt = 10; -c_731662.elts = (object *)alloca(sizeof(object) * 10); -c_731662.elts[0] = ((closureN)self_731033)->elts[0]; -c_731662.elts[1] = ((closureN)self_731033)->elts[1]; -c_731662.elts[2] = ((closureN)self_731033)->elts[2]; -c_731662.elts[3] = ((closureN)self_731033)->elts[3]; -c_731662.elts[4] = ((closureN)self_731033)->elts[4]; -c_731662.elts[5] = ((closureN)self_731033)->elts[5]; -c_731662.elts[6] = ((closureN)self_731033)->elts[7]; -c_731662.elts[7] = ((closureN)self_731033)->elts[8]; -c_731662.elts[8] = ((closureN)self_731033)->elts[9]; -c_731662.elts[9] = ((closureN)self_731033)->elts[10]; - - -closureN_type c_731751; -c_731751.hdr.mark = gc_color_red; - c_731751.hdr.grayed = 0; -c_731751.tag = closureN_tag; - c_731751.fn = (function_type)__lambda_108; -c_731751.num_args = 2; -c_731751.num_elt = 2; -c_731751.elts = (object *)alloca(sizeof(object) * 2); -c_731751.elts[0] = ((closureN)self_731033)->elts[6]; -c_731751.elts[1] = ((closureN)self_731033)->elts[7]; - -return_closcall1(data,(closure)&c_731662, &c_731751);; -} - -static void __lambda_108(void *data, int argc, object self_731034, object k_73328, object x_73166, object lst_73165) { - -closureN_type c_731753; -c_731753.hdr.mark = gc_color_red; - c_731753.hdr.grayed = 0; -c_731753.tag = closureN_tag; - c_731753.fn = (function_type)__lambda_107; -c_731753.num_args = 1; -c_731753.num_elt = 5; -c_731753.elts = (object *)alloca(sizeof(object) * 5); -c_731753.elts[0] = k_73328; -c_731753.elts[1] = lst_73165; -c_731753.elts[2] = ((closureN)self_731034)->elts[0]; -c_731753.elts[3] = ((closureN)self_731034)->elts[1]; -c_731753.elts[4] = x_73166; - -return_closcall1(data,(closure)&c_731753, Cyc_is_null(lst_73165));; -} - -static void __lambda_107(void *data, int argc, object self_731035, object r_73329) { - if( !eq(boolean_f, r_73329) ){ - -closureN_type c_731755; -c_731755.hdr.mark = gc_color_red; - c_731755.hdr.grayed = 0; -c_731755.tag = closureN_tag; - c_731755.fn = (function_type)__lambda_101; -c_731755.num_args = 0; -c_731755.num_elt = 1; -c_731755.elts = (object *)alloca(sizeof(object) * 1); -c_731755.elts[0] = ((closureN)self_731035)->elts[0]; - -return_closcall0(data,(closure)&c_731755); -} else { - -closureN_type c_731759; -c_731759.hdr.mark = gc_color_red; - c_731759.hdr.grayed = 0; -c_731759.tag = closureN_tag; - c_731759.fn = (function_type)__lambda_106; -c_731759.num_args = 1; -c_731759.num_elt = 5; -c_731759.elts = (object *)alloca(sizeof(object) * 5); -c_731759.elts[0] = ((closureN)self_731035)->elts[0]; -c_731759.elts[1] = ((closureN)self_731035)->elts[1]; -c_731759.elts[2] = ((closureN)self_731035)->elts[2]; -c_731759.elts[3] = ((closureN)self_731035)->elts[3]; -c_731759.elts[4] = ((closureN)self_731035)->elts[4]; - -return_closcall1(data,(closure)&c_731759, car(((closureN)self_731035)->elts[1]));} -; -} - -static void __lambda_106(void *data, int argc, object self_731036, object r_73332) { - -closureN_type c_731764; -c_731764.hdr.mark = gc_color_red; - c_731764.hdr.grayed = 0; -c_731764.tag = closureN_tag; - c_731764.fn = (function_type)__lambda_105; -c_731764.num_args = 1; -c_731764.num_elt = 4; -c_731764.elts = (object *)alloca(sizeof(object) * 4); -c_731764.elts[0] = ((closureN)self_731036)->elts[0]; -c_731764.elts[1] = ((closureN)self_731036)->elts[1]; -c_731764.elts[2] = ((closureN)self_731036)->elts[3]; -c_731764.elts[3] = ((closureN)self_731036)->elts[4]; - -return_closcall3(data, cell_get(((closureN)self_731036)->elts[2]), &c_731764, ((closureN)self_731036)->elts[4], r_73332);; -} - -static void __lambda_105(void *data, int argc, object self_731037, object r_73330) { - if( !eq(boolean_f, r_73330) ){ - -closureN_type c_731766; -c_731766.hdr.mark = gc_color_red; - c_731766.hdr.grayed = 0; -c_731766.tag = closureN_tag; - c_731766.fn = (function_type)__lambda_102; -c_731766.num_args = 0; -c_731766.num_elt = 1; -c_731766.elts = (object *)alloca(sizeof(object) * 1); -c_731766.elts[0] = ((closureN)self_731037)->elts[0]; - -return_closcall0(data,(closure)&c_731766); -} else { - -closureN_type c_731770; -c_731770.hdr.mark = gc_color_red; - c_731770.hdr.grayed = 0; -c_731770.tag = closureN_tag; - c_731770.fn = (function_type)__lambda_104; -c_731770.num_args = 0; -c_731770.num_elt = 4; -c_731770.elts = (object *)alloca(sizeof(object) * 4); -c_731770.elts[0] = ((closureN)self_731037)->elts[0]; -c_731770.elts[1] = ((closureN)self_731037)->elts[1]; -c_731770.elts[2] = ((closureN)self_731037)->elts[2]; -c_731770.elts[3] = ((closureN)self_731037)->elts[3]; - -return_closcall0(data,(closure)&c_731770);} -; -} - -static void __lambda_104(void *data, int argc, object self_731038) { - -closureN_type c_731772; -c_731772.hdr.mark = gc_color_red; - c_731772.hdr.grayed = 0; -c_731772.tag = closureN_tag; - c_731772.fn = (function_type)__lambda_103; -c_731772.num_args = 1; -c_731772.num_elt = 3; -c_731772.elts = (object *)alloca(sizeof(object) * 3); -c_731772.elts[0] = ((closureN)self_731038)->elts[0]; -c_731772.elts[1] = ((closureN)self_731038)->elts[2]; -c_731772.elts[2] = ((closureN)self_731038)->elts[3]; - -return_closcall1(data,(closure)&c_731772, cdr(((closureN)self_731038)->elts[1]));; -} - -static void __lambda_103(void *data, int argc, object self_731039, object r_73331) { - return_closcall3(data, cell_get(((closureN)self_731039)->elts[1]), ((closureN)self_731039)->elts[0], ((closureN)self_731039)->elts[2], r_73331);; -} - -static void __lambda_102(void *data, int argc, object self_731040) { - return_closcall1(data, ((closureN)self_731040)->elts[0], boolean_t);; -} - -static void __lambda_101(void *data, int argc, object self_731041) { - return_closcall1(data, ((closureN)self_731041)->elts[0], boolean_f);; -} - -static void __lambda_100(void *data, int argc, object self_731042, object r_73327) { - -closureN_type c_731664; -c_731664.hdr.mark = gc_color_red; - c_731664.hdr.grayed = 0; -c_731664.tag = closureN_tag; - c_731664.fn = (function_type)__lambda_99; -c_731664.num_args = 1; -c_731664.num_elt = 9; -c_731664.elts = (object *)alloca(sizeof(object) * 9); -c_731664.elts[0] = ((closureN)self_731042)->elts[0]; -c_731664.elts[1] = ((closureN)self_731042)->elts[1]; -c_731664.elts[2] = ((closureN)self_731042)->elts[2]; -c_731664.elts[3] = ((closureN)self_731042)->elts[3]; -c_731664.elts[4] = ((closureN)self_731042)->elts[4]; -c_731664.elts[5] = ((closureN)self_731042)->elts[5]; -c_731664.elts[6] = ((closureN)self_731042)->elts[7]; -c_731664.elts[7] = ((closureN)self_731042)->elts[8]; -c_731664.elts[8] = ((closureN)self_731042)->elts[9]; - -return_closcall1(data,(closure)&c_731664, Cyc_set_car(data, ((closureN)self_731042)->elts[6], r_73327));; -} - -static void __lambda_99(void *data, int argc, object self_731043, object r_73308) { - -closureN_type c_731666; -c_731666.hdr.mark = gc_color_red; - c_731666.hdr.grayed = 0; -c_731666.tag = closureN_tag; - c_731666.fn = (function_type)__lambda_86; -c_731666.num_args = 1; -c_731666.num_elt = 2; -c_731666.elts = (object *)alloca(sizeof(object) * 2); -c_731666.elts[0] = ((closureN)self_731043)->elts[3]; -c_731666.elts[1] = ((closureN)self_731043)->elts[6]; - - -closureN_type c_731697; -c_731697.hdr.mark = gc_color_red; - c_731697.hdr.grayed = 0; -c_731697.tag = closureN_tag; - c_731697.fn = (function_type)__lambda_98; -c_731697.num_args = 0; -c_731697.num_elt = 7; -c_731697.elts = (object *)alloca(sizeof(object) * 7); -c_731697.elts[0] = ((closureN)self_731043)->elts[0]; -c_731697.elts[1] = ((closureN)self_731043)->elts[1]; -c_731697.elts[2] = ((closureN)self_731043)->elts[2]; -c_731697.elts[3] = ((closureN)self_731043)->elts[4]; -c_731697.elts[4] = ((closureN)self_731043)->elts[5]; -c_731697.elts[5] = ((closureN)self_731043)->elts[7]; -c_731697.elts[6] = ((closureN)self_731043)->elts[8]; - -return_closcall1(data,(closure)&c_731666, &c_731697);; -} - -static void __lambda_98(void *data, int argc, object self_731044, object k_73315) { - -closureN_type c_731699; -c_731699.hdr.mark = gc_color_red; - c_731699.hdr.grayed = 0; -c_731699.tag = closureN_tag; - c_731699.fn = (function_type)__lambda_97; -c_731699.num_args = 1; -c_731699.num_elt = 8; -c_731699.elts = (object *)alloca(sizeof(object) * 8); -c_731699.elts[0] = ((closureN)self_731044)->elts[0]; -c_731699.elts[1] = ((closureN)self_731044)->elts[1]; -c_731699.elts[2] = ((closureN)self_731044)->elts[2]; -c_731699.elts[3] = k_73315; -c_731699.elts[4] = ((closureN)self_731044)->elts[3]; -c_731699.elts[5] = ((closureN)self_731044)->elts[4]; -c_731699.elts[6] = ((closureN)self_731044)->elts[5]; -c_731699.elts[7] = ((closureN)self_731044)->elts[6]; - -return_closcall1(data,(closure)&c_731699, nil);; -} - -static void __lambda_97(void *data, int argc, object self_731045, object r_73326) { - -closureN_type c_731701; -c_731701.hdr.mark = gc_color_red; - c_731701.hdr.grayed = 0; -c_731701.tag = closureN_tag; - c_731701.fn = (function_type)__lambda_96; -c_731701.num_args = 1; -c_731701.num_elt = 7; -c_731701.elts = (object *)alloca(sizeof(object) * 7); -c_731701.elts[0] = ((closureN)self_731045)->elts[1]; -c_731701.elts[1] = ((closureN)self_731045)->elts[2]; -c_731701.elts[2] = ((closureN)self_731045)->elts[3]; -c_731701.elts[3] = ((closureN)self_731045)->elts[4]; -c_731701.elts[4] = ((closureN)self_731045)->elts[5]; -c_731701.elts[5] = ((closureN)self_731045)->elts[6]; -c_731701.elts[6] = ((closureN)self_731045)->elts[7]; - -return_closcall1(data,(closure)&c_731701, Cyc_set_car(data, ((closureN)self_731045)->elts[0], r_73326));; -} - -static void __lambda_96(void *data, int argc, object self_731046, object r_73316) { - -closureN_type c_731703; -c_731703.hdr.mark = gc_color_red; - c_731703.hdr.grayed = 0; -c_731703.tag = closureN_tag; - c_731703.fn = (function_type)__lambda_95; -c_731703.num_args = 1; -c_731703.num_elt = 7; -c_731703.elts = (object *)alloca(sizeof(object) * 7); -c_731703.elts[0] = ((closureN)self_731046)->elts[0]; -c_731703.elts[1] = ((closureN)self_731046)->elts[1]; -c_731703.elts[2] = ((closureN)self_731046)->elts[2]; -c_731703.elts[3] = ((closureN)self_731046)->elts[3]; -c_731703.elts[4] = ((closureN)self_731046)->elts[4]; -c_731703.elts[5] = ((closureN)self_731046)->elts[5]; -c_731703.elts[6] = ((closureN)self_731046)->elts[6]; - -return_closcall1(data,(closure)&c_731703, quote__if);; -} - -static void __lambda_95(void *data, int argc, object self_731047, object r_73325) { - -closureN_type c_731708; -c_731708.hdr.mark = gc_color_red; - c_731708.hdr.grayed = 0; -c_731708.tag = closureN_tag; - c_731708.fn = (function_type)__lambda_94; -c_731708.num_args = 1; -c_731708.num_elt = 6; -c_731708.elts = (object *)alloca(sizeof(object) * 6); -c_731708.elts[0] = ((closureN)self_731047)->elts[0]; -c_731708.elts[1] = ((closureN)self_731047)->elts[1]; -c_731708.elts[2] = ((closureN)self_731047)->elts[2]; -c_731708.elts[3] = ((closureN)self_731047)->elts[3]; -c_731708.elts[4] = ((closureN)self_731047)->elts[5]; -c_731708.elts[5] = ((closureN)self_731047)->elts[6]; - -return_closcall2(data, cell_get(((closureN)self_731047)->elts[4]), &c_731708, r_73325);; -} - -static void __lambda_94(void *data, int argc, object self_731048, object r_73324) { - -closureN_type c_731710; -c_731710.hdr.mark = gc_color_red; - c_731710.hdr.grayed = 0; -c_731710.tag = closureN_tag; - c_731710.fn = (function_type)__lambda_93; -c_731710.num_args = 1; -c_731710.num_elt = 5; -c_731710.elts = (object *)alloca(sizeof(object) * 5); -c_731710.elts[0] = ((closureN)self_731048)->elts[0]; -c_731710.elts[1] = ((closureN)self_731048)->elts[2]; -c_731710.elts[2] = ((closureN)self_731048)->elts[3]; -c_731710.elts[3] = ((closureN)self_731048)->elts[4]; -c_731710.elts[4] = ((closureN)self_731048)->elts[5]; - -return_closcall1(data,(closure)&c_731710, Cyc_set_car(data, ((closureN)self_731048)->elts[1], r_73324));; -} - -static void __lambda_93(void *data, int argc, object self_731049, object r_73317) { - -closureN_type c_731712; -c_731712.hdr.mark = gc_color_red; - c_731712.hdr.grayed = 0; -c_731712.tag = closureN_tag; - c_731712.fn = (function_type)__lambda_92; -c_731712.num_args = 1; -c_731712.num_elt = 5; -c_731712.elts = (object *)alloca(sizeof(object) * 5); -c_731712.elts[0] = ((closureN)self_731049)->elts[0]; -c_731712.elts[1] = ((closureN)self_731049)->elts[1]; -c_731712.elts[2] = ((closureN)self_731049)->elts[2]; -c_731712.elts[3] = ((closureN)self_731049)->elts[3]; -c_731712.elts[4] = ((closureN)self_731049)->elts[4]; - - -make_cons(c_731741,quote_f,nil); -return_closcall1(data,(closure)&c_731712, &c_731741);; -} - -static void __lambda_92(void *data, int argc, object self_731050, object r_73323) { - -closureN_type c_731717; -c_731717.hdr.mark = gc_color_red; - c_731717.hdr.grayed = 0; -c_731717.tag = closureN_tag; - c_731717.fn = (function_type)__lambda_91; -c_731717.num_args = 1; -c_731717.num_elt = 5; -c_731717.elts = (object *)alloca(sizeof(object) * 5); -c_731717.elts[0] = ((closureN)self_731050)->elts[0]; -c_731717.elts[1] = ((closureN)self_731050)->elts[1]; -c_731717.elts[2] = ((closureN)self_731050)->elts[2]; -c_731717.elts[3] = ((closureN)self_731050)->elts[3]; -c_731717.elts[4] = ((closureN)self_731050)->elts[4]; - -return_closcall2(data, cell_get(((closureN)self_731050)->elts[3]), &c_731717, r_73323);; -} - -static void __lambda_91(void *data, int argc, object self_731051, object r_73322) { - -closureN_type c_731719; -c_731719.hdr.mark = gc_color_red; - c_731719.hdr.grayed = 0; -c_731719.tag = closureN_tag; - c_731719.fn = (function_type)__lambda_90; -c_731719.num_args = 1; -c_731719.num_elt = 4; -c_731719.elts = (object *)alloca(sizeof(object) * 4); -c_731719.elts[0] = ((closureN)self_731051)->elts[1]; -c_731719.elts[1] = ((closureN)self_731051)->elts[2]; -c_731719.elts[2] = ((closureN)self_731051)->elts[3]; -c_731719.elts[3] = ((closureN)self_731051)->elts[4]; - -return_closcall1(data,(closure)&c_731719, Cyc_set_car(data, ((closureN)self_731051)->elts[0], r_73322));; -} - -static void __lambda_90(void *data, int argc, object self_731052, object r_73318) { - -closureN_type c_731721; -c_731721.hdr.mark = gc_color_red; - c_731721.hdr.grayed = 0; -c_731721.tag = closureN_tag; - c_731721.fn = (function_type)__lambda_89; -c_731721.num_args = 1; -c_731721.num_elt = 4; -c_731721.elts = (object *)alloca(sizeof(object) * 4); -c_731721.elts[0] = ((closureN)self_731052)->elts[0]; -c_731721.elts[1] = ((closureN)self_731052)->elts[1]; -c_731721.elts[2] = ((closureN)self_731052)->elts[2]; -c_731721.elts[3] = ((closureN)self_731052)->elts[3]; - - -make_cons(c_731737,quote_t,nil); -return_closcall1(data,(closure)&c_731721, &c_731737);; -} - -static void __lambda_89(void *data, int argc, object self_731053, object r_73321) { - -closureN_type c_731726; -c_731726.hdr.mark = gc_color_red; - c_731726.hdr.grayed = 0; -c_731726.tag = closureN_tag; - c_731726.fn = (function_type)__lambda_88; -c_731726.num_args = 1; -c_731726.num_elt = 3; -c_731726.elts = (object *)alloca(sizeof(object) * 3); -c_731726.elts[0] = ((closureN)self_731053)->elts[0]; -c_731726.elts[1] = ((closureN)self_731053)->elts[1]; -c_731726.elts[2] = ((closureN)self_731053)->elts[3]; - -return_closcall2(data, cell_get(((closureN)self_731053)->elts[2]), &c_731726, r_73321);; -} - -static void __lambda_88(void *data, int argc, object self_731054, object r_73320) { - -closureN_type c_731728; -c_731728.hdr.mark = gc_color_red; - c_731728.hdr.grayed = 0; -c_731728.tag = closureN_tag; - c_731728.fn = (function_type)__lambda_87; -c_731728.num_args = 1; -c_731728.num_elt = 2; -c_731728.elts = (object *)alloca(sizeof(object) * 2); -c_731728.elts[0] = ((closureN)self_731054)->elts[0]; -c_731728.elts[1] = ((closureN)self_731054)->elts[1]; - -return_closcall1(data,(closure)&c_731728, Cyc_set_car(data, ((closureN)self_731054)->elts[2], r_73320));; -} - -static void __lambda_87(void *data, int argc, object self_731055, object r_73319) { - return_closcall1(data, cell_get(((closureN)self_731055)->elts[1]), ((closureN)self_731055)->elts[0]);; -} - -static void __lambda_86(void *data, int argc, object self_731056, object r_73314) { - -closureN_type c_731668; -c_731668.hdr.mark = gc_color_red; - c_731668.hdr.grayed = 0; -c_731668.tag = closureN_tag; - c_731668.fn = (function_type)__lambda_85; -c_731668.num_args = 1; -c_731668.num_elt = 2; -c_731668.elts = (object *)alloca(sizeof(object) * 2); -c_731668.elts[0] = ((closureN)self_731056)->elts[0]; -c_731668.elts[1] = ((closureN)self_731056)->elts[1]; - -return_closcall1(data,(closure)&c_731668, global_set(__glo_setup_91boyer, r_73314));; -} - -static void __lambda_85(void *data, int argc, object self_731057, object r_73309) { - closureN_type c_731674; -c_731674.hdr.mark = gc_color_red; - c_731674.hdr.grayed = 0; -c_731674.tag = closureN_tag; - c_731674.fn = (function_type)__lambda_84; -c_731674.num_args = 3; -c_731674.num_elt = 2; -c_731674.elts = (object *)alloca(sizeof(object) * 2); -c_731674.elts[0] = ((closureN)self_731057)->elts[0]; -c_731674.elts[1] = ((closureN)self_731057)->elts[1]; - -return_direct1(data,__lambda_81,&c_731674);; -} - -static void __lambda_84(void *data, int argc, object self_731058, object k_73311, object alist_73163, object term_73162, object n_73161) { - -closureN_type c_731676; -c_731676.hdr.mark = gc_color_red; - c_731676.hdr.grayed = 0; -c_731676.tag = closureN_tag; - c_731676.fn = (function_type)__lambda_83; -c_731676.num_args = 1; -c_731676.num_elt = 6; -c_731676.elts = (object *)alloca(sizeof(object) * 6); -c_731676.elts[0] = alist_73163; -c_731676.elts[1] = k_73311; -c_731676.elts[2] = n_73161; -c_731676.elts[3] = ((closureN)self_731058)->elts[0]; -c_731676.elts[4] = term_73162; -c_731676.elts[5] = ((closureN)self_731058)->elts[1]; - -return_closcall1(data,(closure)&c_731676, Cyc_set_car(data, ((closureN)self_731058)->elts[0], obj_int2obj(0)));; -} - -static void __lambda_83(void *data, int argc, object self_731059, object r_73312) { - -closureN_type c_731681; -c_731681.hdr.mark = gc_color_red; - c_731681.hdr.grayed = 0; -c_731681.tag = closureN_tag; - c_731681.fn = (function_type)__lambda_82; -c_731681.num_args = 1; -c_731681.num_elt = 2; -c_731681.elts = (object *)alloca(sizeof(object) * 2); -c_731681.elts[0] = ((closureN)self_731059)->elts[1]; -c_731681.elts[1] = ((closureN)self_731059)->elts[3]; - -return_closcall4(data, cell_get(((closureN)self_731059)->elts[5]), &c_731681, ((closureN)self_731059)->elts[0], ((closureN)self_731059)->elts[4], ((closureN)self_731059)->elts[2]);; -} - -static void __lambda_82(void *data, int argc, object self_731060, object answer_73164) { - if( !eq(boolean_f, answer_73164) ){ - return_closcall1(data, ((closureN)self_731060)->elts[0], cell_get(((closureN)self_731060)->elts[1])); -} else { - return_closcall1(data, ((closureN)self_731060)->elts[0], boolean_f);} -; -} - -static void __lambda_81(void *data, int argc, closure _,object r_73310) { - return_direct1(data,__lambda_80,global_set(__glo_test_91boyer, r_73310));; -} - -static void __lambda_80(void *data, int argc, closure _,object r_73268) { - return_closcall1(data, __glo_main, primitive__75halt);; -} - -static void __lambda_79(void *data, int argc, closure _,object k_73580, object name_73235, object count_73234, object thunk_73233, object ok_127_73232) { - Cyc_st_add(data, "sboyer.scm:run-r7rs-benchmark"); - -closureN_type c_731246; -c_731246.hdr.mark = gc_color_red; - c_731246.hdr.grayed = 0; -c_731246.tag = closureN_tag; - c_731246.fn = (function_type)__lambda_78; -c_731246.num_args = 1; -c_731246.num_elt = 5; -c_731246.elts = (object *)alloca(sizeof(object) * 5); -c_731246.elts[0] = count_73234; -c_731246.elts[1] = k_73580; -c_731246.elts[2] = name_73235; -c_731246.elts[3] = ok_127_73232; -c_731246.elts[4] = thunk_73233; - -return_closcall1(data,(closure)&c_731246, boolean_f);; -} - -static void __lambda_78(void *data, int argc, object self_731061, object rounded_73237) { - -closureN_type c_731248; -c_731248.hdr.mark = gc_color_red; - c_731248.hdr.grayed = 0; -c_731248.tag = closureN_tag; - c_731248.fn = (function_type)__lambda_77; -c_731248.num_args = 1; -c_731248.num_elt = 5; -c_731248.elts = (object *)alloca(sizeof(object) * 5); -c_731248.elts[0] = ((closureN)self_731061)->elts[0]; -c_731248.elts[1] = ((closureN)self_731061)->elts[1]; -c_731248.elts[2] = ((closureN)self_731061)->elts[2]; -c_731248.elts[3] = ((closureN)self_731061)->elts[3]; -c_731248.elts[4] = ((closureN)self_731061)->elts[4]; - - -make_cell(c_731417,rounded_73237); -return_closcall1(data,(closure)&c_731248, &c_731417);; -} - -static void __lambda_77(void *data, int argc, object self_731062, object rounded_73237) { - -closureN_type c_731250; -c_731250.hdr.mark = gc_color_red; - c_731250.hdr.grayed = 0; -c_731250.tag = closureN_tag; - c_731250.fn = (function_type)__lambda_76; -c_731250.num_args = 1; -c_731250.num_elt = 6; -c_731250.elts = (object *)alloca(sizeof(object) * 6); -c_731250.elts[0] = ((closureN)self_731062)->elts[0]; -c_731250.elts[1] = ((closureN)self_731062)->elts[1]; -c_731250.elts[2] = ((closureN)self_731062)->elts[2]; -c_731250.elts[3] = ((closureN)self_731062)->elts[3]; -c_731250.elts[4] = rounded_73237; -c_731250.elts[5] = ((closureN)self_731062)->elts[4]; - -return_closcall1(data,(closure)&c_731250, boolean_f);; -} - -static void __lambda_76(void *data, int argc, object self_731063, object rounded_73238) { - -closureN_type c_731252; -c_731252.hdr.mark = gc_color_red; - c_731252.hdr.grayed = 0; -c_731252.tag = closureN_tag; - c_731252.fn = (function_type)__lambda_72; -c_731252.num_args = 1; -c_731252.num_elt = 6; -c_731252.elts = (object *)alloca(sizeof(object) * 6); -c_731252.elts[0] = ((closureN)self_731063)->elts[0]; -c_731252.elts[1] = ((closureN)self_731063)->elts[1]; -c_731252.elts[2] = ((closureN)self_731063)->elts[2]; -c_731252.elts[3] = ((closureN)self_731063)->elts[3]; -c_731252.elts[4] = ((closureN)self_731063)->elts[4]; -c_731252.elts[5] = ((closureN)self_731063)->elts[5]; - - -mclosure0(c_731402, (function_type)__lambda_75);c_731402.num_args = 1; -return_closcall1(data,(closure)&c_731252, &c_731402);; -} - -static void __lambda_75(void *data, int argc, object self_731064, object k_73616, object x_73252) { - -closureN_type c_731404; -c_731404.hdr.mark = gc_color_red; - c_731404.hdr.grayed = 0; -c_731404.tag = closureN_tag; - c_731404.fn = (function_type)__lambda_74; -c_731404.num_args = 1; -c_731404.num_elt = 1; -c_731404.elts = (object *)alloca(sizeof(object) * 1); -c_731404.elts[0] = k_73616; - - -object c_731414 = Cyc_mul(data,(closure)&c_731404,2,obj_int2obj(1000), x_73252); -return_closcall1(data,(closure)&c_731404, c_731414);; -} - -static void __lambda_74(void *data, int argc, object self_731065, object r_73618) { - -closureN_type c_731406; -c_731406.hdr.mark = gc_color_red; - c_731406.hdr.grayed = 0; -c_731406.tag = closureN_tag; - c_731406.fn = (function_type)__lambda_73; -c_731406.num_args = 1; -c_731406.num_elt = 1; -c_731406.elts = (object *)alloca(sizeof(object) * 1); -c_731406.elts[0] = ((closureN)self_731065)->elts[0]; - -return_closcall2(data, __glo_round_scheme_base, &c_731406, r_73618);; -} - -static void __lambda_73(void *data, int argc, object self_731066, object r_73617) { - -object c_731411 = Cyc_div(data, ((closureN)self_731066)->elts[0],2,r_73617, obj_int2obj(1000)); -return_closcall1(data, ((closureN)self_731066)->elts[0], c_731411);; -} - -static void __lambda_72(void *data, int argc, object self_731067, object r_73615) { - -closureN_type c_731254; -c_731254.hdr.mark = gc_color_red; - c_731254.hdr.grayed = 0; -c_731254.tag = closureN_tag; - c_731254.fn = (function_type)__lambda_71; -c_731254.num_args = 1; -c_731254.num_elt = 6; -c_731254.elts = (object *)alloca(sizeof(object) * 6); -c_731254.elts[0] = ((closureN)self_731067)->elts[0]; -c_731254.elts[1] = ((closureN)self_731067)->elts[1]; -c_731254.elts[2] = ((closureN)self_731067)->elts[2]; -c_731254.elts[3] = ((closureN)self_731067)->elts[3]; -c_731254.elts[4] = ((closureN)self_731067)->elts[4]; -c_731254.elts[5] = ((closureN)self_731067)->elts[5]; - -return_closcall1(data,(closure)&c_731254, Cyc_set_car(data, ((closureN)self_731067)->elts[4], r_73615));; -} - -static void __lambda_71(void *data, int argc, object self_731068, object r_73581) { - -closureN_type c_731256; -c_731256.hdr.mark = gc_color_red; - c_731256.hdr.grayed = 0; -c_731256.tag = closureN_tag; - c_731256.fn = (function_type)__lambda_70; -c_731256.num_args = 1; -c_731256.num_elt = 6; -c_731256.elts = (object *)alloca(sizeof(object) * 6); -c_731256.elts[0] = ((closureN)self_731068)->elts[0]; -c_731256.elts[1] = ((closureN)self_731068)->elts[1]; -c_731256.elts[2] = ((closureN)self_731068)->elts[2]; -c_731256.elts[3] = ((closureN)self_731068)->elts[3]; -c_731256.elts[4] = ((closureN)self_731068)->elts[4]; -c_731256.elts[5] = ((closureN)self_731068)->elts[5]; - - -make_string(c_731398, "Running "); -return_closcall2(data, __glo_display_scheme_write, &c_731256, &c_731398);; -} - -static void __lambda_70(void *data, int argc, object self_731069, object r_73582) { - -closureN_type c_731258; -c_731258.hdr.mark = gc_color_red; - c_731258.hdr.grayed = 0; -c_731258.tag = closureN_tag; - c_731258.fn = (function_type)__lambda_69; -c_731258.num_args = 1; -c_731258.num_elt = 6; -c_731258.elts = (object *)alloca(sizeof(object) * 6); -c_731258.elts[0] = ((closureN)self_731069)->elts[0]; -c_731258.elts[1] = ((closureN)self_731069)->elts[1]; -c_731258.elts[2] = ((closureN)self_731069)->elts[2]; -c_731258.elts[3] = ((closureN)self_731069)->elts[3]; -c_731258.elts[4] = ((closureN)self_731069)->elts[4]; -c_731258.elts[5] = ((closureN)self_731069)->elts[5]; - -return_closcall2(data, __glo_display_scheme_write, &c_731258, ((closureN)self_731069)->elts[2]);; -} - -static void __lambda_69(void *data, int argc, object self_731070, object r_73583) { - -closureN_type c_731260; -c_731260.hdr.mark = gc_color_red; - c_731260.hdr.grayed = 0; -c_731260.tag = closureN_tag; - c_731260.fn = (function_type)__lambda_68; -c_731260.num_args = 1; -c_731260.num_elt = 6; -c_731260.elts = (object *)alloca(sizeof(object) * 6); -c_731260.elts[0] = ((closureN)self_731070)->elts[0]; -c_731260.elts[1] = ((closureN)self_731070)->elts[1]; -c_731260.elts[2] = ((closureN)self_731070)->elts[2]; -c_731260.elts[3] = ((closureN)self_731070)->elts[3]; -c_731260.elts[4] = ((closureN)self_731070)->elts[4]; -c_731260.elts[5] = ((closureN)self_731070)->elts[5]; - -return_closcall1(data, __glo_newline_scheme_base, &c_731260);; -} - -static void __lambda_68(void *data, int argc, object self_731071, object r_73584) { - -closureN_type c_731262; -c_731262.hdr.mark = gc_color_red; - c_731262.hdr.grayed = 0; -c_731262.tag = closureN_tag; - c_731262.fn = (function_type)__lambda_67; -c_731262.num_args = 1; -c_731262.num_elt = 6; -c_731262.elts = (object *)alloca(sizeof(object) * 6); -c_731262.elts[0] = ((closureN)self_731071)->elts[0]; -c_731262.elts[1] = ((closureN)self_731071)->elts[1]; -c_731262.elts[2] = ((closureN)self_731071)->elts[2]; -c_731262.elts[3] = ((closureN)self_731071)->elts[3]; -c_731262.elts[4] = ((closureN)self_731071)->elts[4]; -c_731262.elts[5] = ((closureN)self_731071)->elts[5]; - -return_closcall1(data, __glo_flush_91output_91port_scheme_base, &c_731262);; -} - -static void __lambda_67(void *data, int argc, object self_731072, object r_73585) { - -closureN_type c_731264; -c_731264.hdr.mark = gc_color_red; - c_731264.hdr.grayed = 0; -c_731264.tag = closureN_tag; - c_731264.fn = (function_type)__lambda_66; -c_731264.num_args = 1; -c_731264.num_elt = 6; -c_731264.elts = (object *)alloca(sizeof(object) * 6); -c_731264.elts[0] = ((closureN)self_731072)->elts[0]; -c_731264.elts[1] = ((closureN)self_731072)->elts[1]; -c_731264.elts[2] = ((closureN)self_731072)->elts[2]; -c_731264.elts[3] = ((closureN)self_731072)->elts[3]; -c_731264.elts[4] = ((closureN)self_731072)->elts[4]; -c_731264.elts[5] = ((closureN)self_731072)->elts[5]; - -return_closcall1(data, __glo_jiffies_91per_91second_scheme_time, &c_731264);; -} - -static void __lambda_66(void *data, int argc, object self_731073, object j_95s_73239) { - -closureN_type c_731266; -c_731266.hdr.mark = gc_color_red; - c_731266.hdr.grayed = 0; -c_731266.tag = closureN_tag; - c_731266.fn = (function_type)__lambda_65; -c_731266.num_args = 1; -c_731266.num_elt = 7; -c_731266.elts = (object *)alloca(sizeof(object) * 7); -c_731266.elts[0] = ((closureN)self_731073)->elts[0]; -c_731266.elts[1] = j_95s_73239; -c_731266.elts[2] = ((closureN)self_731073)->elts[1]; -c_731266.elts[3] = ((closureN)self_731073)->elts[2]; -c_731266.elts[4] = ((closureN)self_731073)->elts[3]; -c_731266.elts[5] = ((closureN)self_731073)->elts[4]; -c_731266.elts[6] = ((closureN)self_731073)->elts[5]; - -return_closcall1(data, __glo_current_91second_scheme_time, &c_731266);; -} - -static void __lambda_65(void *data, int argc, object self_731074, object t0_73240) { - -closureN_type c_731268; -c_731268.hdr.mark = gc_color_red; - c_731268.hdr.grayed = 0; -c_731268.tag = closureN_tag; - c_731268.fn = (function_type)__lambda_64; -c_731268.num_args = 1; -c_731268.num_elt = 8; -c_731268.elts = (object *)alloca(sizeof(object) * 8); -c_731268.elts[0] = ((closureN)self_731074)->elts[0]; -c_731268.elts[1] = ((closureN)self_731074)->elts[1]; -c_731268.elts[2] = ((closureN)self_731074)->elts[2]; -c_731268.elts[3] = ((closureN)self_731074)->elts[3]; -c_731268.elts[4] = ((closureN)self_731074)->elts[4]; -c_731268.elts[5] = ((closureN)self_731074)->elts[5]; -c_731268.elts[6] = t0_73240; -c_731268.elts[7] = ((closureN)self_731074)->elts[6]; - -return_closcall1(data, __glo_current_91jiffy_scheme_time, &c_731268);; -} - -static void __lambda_64(void *data, int argc, object self_731075, object j0_73241) { - -closureN_type c_731270; -c_731270.hdr.mark = gc_color_red; - c_731270.hdr.grayed = 0; -c_731270.tag = closureN_tag; - c_731270.fn = (function_type)__lambda_63; -c_731270.num_args = 0; -c_731270.num_elt = 9; -c_731270.elts = (object *)alloca(sizeof(object) * 9); -c_731270.elts[0] = ((closureN)self_731075)->elts[0]; -c_731270.elts[1] = ((closureN)self_731075)->elts[1]; -c_731270.elts[2] = j0_73241; -c_731270.elts[3] = ((closureN)self_731075)->elts[2]; -c_731270.elts[4] = ((closureN)self_731075)->elts[3]; -c_731270.elts[5] = ((closureN)self_731075)->elts[4]; -c_731270.elts[6] = ((closureN)self_731075)->elts[5]; -c_731270.elts[7] = ((closureN)self_731075)->elts[6]; -c_731270.elts[8] = ((closureN)self_731075)->elts[7]; - -return_closcall0(data,(closure)&c_731270);; -} - -static void __lambda_63(void *data, int argc, object self_731076) { - closureN_type c_731274; -c_731274.hdr.mark = gc_color_red; - c_731274.hdr.grayed = 0; -c_731274.tag = closureN_tag; - c_731274.fn = (function_type)__lambda_62; -c_731274.num_args = 1; -c_731274.num_elt = 9; -c_731274.elts = (object *)alloca(sizeof(object) * 9); -c_731274.elts[0] = ((closureN)self_731076)->elts[0]; -c_731274.elts[1] = ((closureN)self_731076)->elts[1]; -c_731274.elts[2] = ((closureN)self_731076)->elts[2]; -c_731274.elts[3] = ((closureN)self_731076)->elts[3]; -c_731274.elts[4] = ((closureN)self_731076)->elts[4]; -c_731274.elts[5] = ((closureN)self_731076)->elts[5]; -c_731274.elts[6] = ((closureN)self_731076)->elts[6]; -c_731274.elts[7] = ((closureN)self_731076)->elts[7]; -c_731274.elts[8] = ((closureN)self_731076)->elts[8]; - -return_direct1(data,__lambda_30,&c_731274);; -} - -static void __lambda_62(void *data, int argc, object self_731077, object r_73589) { - -closureN_type c_731276; -c_731276.hdr.mark = gc_color_red; - c_731276.hdr.grayed = 0; -c_731276.tag = closureN_tag; - c_731276.fn = (function_type)__lambda_61; -c_731276.num_args = 2; -c_731276.num_elt = 9; -c_731276.elts = (object *)alloca(sizeof(object) * 9); -c_731276.elts[0] = ((closureN)self_731077)->elts[0]; -c_731276.elts[1] = ((closureN)self_731077)->elts[1]; -c_731276.elts[2] = ((closureN)self_731077)->elts[2]; -c_731276.elts[3] = ((closureN)self_731077)->elts[3]; -c_731276.elts[4] = ((closureN)self_731077)->elts[4]; -c_731276.elts[5] = ((closureN)self_731077)->elts[5]; -c_731276.elts[6] = ((closureN)self_731077)->elts[6]; -c_731276.elts[7] = ((closureN)self_731077)->elts[7]; -c_731276.elts[8] = ((closureN)self_731077)->elts[8]; - -return_closcall2(data,(closure)&c_731276, obj_int2obj(0), r_73589);; -} - -static void __lambda_61(void *data, int argc, object self_731078, object i_73243, object result_73242) { - -closureN_type c_731278; -c_731278.hdr.mark = gc_color_red; - c_731278.hdr.grayed = 0; -c_731278.tag = closureN_tag; - c_731278.fn = (function_type)__lambda_60; -c_731278.num_args = 1; -c_731278.num_elt = 11; -c_731278.elts = (object *)alloca(sizeof(object) * 11); -c_731278.elts[0] = ((closureN)self_731078)->elts[0]; -c_731278.elts[1] = i_73243; -c_731278.elts[2] = ((closureN)self_731078)->elts[1]; -c_731278.elts[3] = ((closureN)self_731078)->elts[2]; -c_731278.elts[4] = ((closureN)self_731078)->elts[3]; -c_731278.elts[5] = ((closureN)self_731078)->elts[4]; -c_731278.elts[6] = ((closureN)self_731078)->elts[5]; -c_731278.elts[7] = result_73242; -c_731278.elts[8] = ((closureN)self_731078)->elts[6]; -c_731278.elts[9] = ((closureN)self_731078)->elts[7]; -c_731278.elts[10] = ((closureN)self_731078)->elts[8]; - -return_closcall1(data,(closure)&c_731278, boolean_f);; -} - -static void __lambda_60(void *data, int argc, object self_731079, object loop_73244) { - -closureN_type c_731280; -c_731280.hdr.mark = gc_color_red; - c_731280.hdr.grayed = 0; -c_731280.tag = closureN_tag; - c_731280.fn = (function_type)__lambda_59; -c_731280.num_args = 1; -c_731280.num_elt = 11; -c_731280.elts = (object *)alloca(sizeof(object) * 11); -c_731280.elts[0] = ((closureN)self_731079)->elts[0]; -c_731280.elts[1] = ((closureN)self_731079)->elts[1]; -c_731280.elts[2] = ((closureN)self_731079)->elts[2]; -c_731280.elts[3] = ((closureN)self_731079)->elts[3]; -c_731280.elts[4] = ((closureN)self_731079)->elts[4]; -c_731280.elts[5] = ((closureN)self_731079)->elts[5]; -c_731280.elts[6] = ((closureN)self_731079)->elts[6]; -c_731280.elts[7] = ((closureN)self_731079)->elts[7]; -c_731280.elts[8] = ((closureN)self_731079)->elts[8]; -c_731280.elts[9] = ((closureN)self_731079)->elts[9]; -c_731280.elts[10] = ((closureN)self_731079)->elts[10]; - - -make_cell(c_731396,loop_73244); -return_closcall1(data,(closure)&c_731280, &c_731396);; -} - -static void __lambda_59(void *data, int argc, object self_731080, object loop_73244) { - -closureN_type c_731282; -c_731282.hdr.mark = gc_color_red; - c_731282.hdr.grayed = 0; -c_731282.tag = closureN_tag; - c_731282.fn = (function_type)__lambda_32; -c_731282.num_args = 1; -c_731282.num_elt = 4; -c_731282.elts = (object *)alloca(sizeof(object) * 4); -c_731282.elts[0] = ((closureN)self_731080)->elts[1]; -c_731282.elts[1] = ((closureN)self_731080)->elts[4]; -c_731282.elts[2] = loop_73244; -c_731282.elts[3] = ((closureN)self_731080)->elts[7]; - - -closureN_type c_731295; -c_731295.hdr.mark = gc_color_red; - c_731295.hdr.grayed = 0; -c_731295.tag = closureN_tag; - c_731295.fn = (function_type)__lambda_58; -c_731295.num_args = 2; -c_731295.num_elt = 9; -c_731295.elts = (object *)alloca(sizeof(object) * 9); -c_731295.elts[0] = ((closureN)self_731080)->elts[0]; -c_731295.elts[1] = ((closureN)self_731080)->elts[2]; -c_731295.elts[2] = ((closureN)self_731080)->elts[3]; -c_731295.elts[3] = loop_73244; -c_731295.elts[4] = ((closureN)self_731080)->elts[5]; -c_731295.elts[5] = ((closureN)self_731080)->elts[6]; -c_731295.elts[6] = ((closureN)self_731080)->elts[8]; -c_731295.elts[7] = ((closureN)self_731080)->elts[9]; -c_731295.elts[8] = ((closureN)self_731080)->elts[10]; - -return_closcall1(data,(closure)&c_731282, &c_731295);; -} - -static void __lambda_58(void *data, int argc, object self_731081, object k_73592, object i_73246, object result_73245) { - -closureN_type c_731297; -c_731297.hdr.mark = gc_color_red; - c_731297.hdr.grayed = 0; -c_731297.tag = closureN_tag; - c_731297.fn = (function_type)__lambda_57; -c_731297.num_args = 1; -c_731297.num_elt = 11; -c_731297.elts = (object *)alloca(sizeof(object) * 11); -c_731297.elts[0] = i_73246; -c_731297.elts[1] = ((closureN)self_731081)->elts[1]; -c_731297.elts[2] = ((closureN)self_731081)->elts[2]; -c_731297.elts[3] = k_73592; -c_731297.elts[4] = ((closureN)self_731081)->elts[3]; -c_731297.elts[5] = ((closureN)self_731081)->elts[4]; -c_731297.elts[6] = ((closureN)self_731081)->elts[5]; -c_731297.elts[7] = result_73245; -c_731297.elts[8] = ((closureN)self_731081)->elts[6]; -c_731297.elts[9] = ((closureN)self_731081)->elts[7]; -c_731297.elts[10] = ((closureN)self_731081)->elts[8]; - - -object c_731392 = Cyc_num_lt(data,(closure)&c_731297,2,i_73246, ((closureN)self_731081)->elts[0]); -return_closcall1(data,(closure)&c_731297, c_731392);; -} - -static void __lambda_57(void *data, int argc, object self_731082, object r_73593) { - if( !eq(boolean_f, r_73593) ){ - -closureN_type c_731299; -c_731299.hdr.mark = gc_color_red; - c_731299.hdr.grayed = 0; -c_731299.tag = closureN_tag; - c_731299.fn = (function_type)__lambda_35; -c_731299.num_args = 0; -c_731299.num_elt = 4; -c_731299.elts = (object *)alloca(sizeof(object) * 4); -c_731299.elts[0] = ((closureN)self_731082)->elts[0]; -c_731299.elts[1] = ((closureN)self_731082)->elts[3]; -c_731299.elts[2] = ((closureN)self_731082)->elts[4]; -c_731299.elts[3] = ((closureN)self_731082)->elts[10]; - -return_closcall0(data,(closure)&c_731299); -} else { - -closureN_type c_731317; -c_731317.hdr.mark = gc_color_red; - c_731317.hdr.grayed = 0; -c_731317.tag = closureN_tag; - c_731317.fn = (function_type)__lambda_56; -c_731317.num_args = 1; -c_731317.num_elt = 7; -c_731317.elts = (object *)alloca(sizeof(object) * 7); -c_731317.elts[0] = ((closureN)self_731082)->elts[1]; -c_731317.elts[1] = ((closureN)self_731082)->elts[2]; -c_731317.elts[2] = ((closureN)self_731082)->elts[3]; -c_731317.elts[3] = ((closureN)self_731082)->elts[5]; -c_731317.elts[4] = ((closureN)self_731082)->elts[7]; -c_731317.elts[5] = ((closureN)self_731082)->elts[8]; -c_731317.elts[6] = ((closureN)self_731082)->elts[9]; - -return_closcall2(data, ((closureN)self_731082)->elts[6], &c_731317, ((closureN)self_731082)->elts[7]);} -; -} - -static void __lambda_56(void *data, int argc, object self_731083, object r_73596) { - if( !eq(boolean_f, r_73596) ){ - -closureN_type c_731319; -c_731319.hdr.mark = gc_color_red; - c_731319.hdr.grayed = 0; -c_731319.tag = closureN_tag; - c_731319.fn = (function_type)__lambda_51; -c_731319.num_args = 0; -c_731319.num_elt = 7; -c_731319.elts = (object *)alloca(sizeof(object) * 7); -c_731319.elts[0] = ((closureN)self_731083)->elts[0]; -c_731319.elts[1] = ((closureN)self_731083)->elts[1]; -c_731319.elts[2] = ((closureN)self_731083)->elts[2]; -c_731319.elts[3] = ((closureN)self_731083)->elts[3]; -c_731319.elts[4] = ((closureN)self_731083)->elts[4]; -c_731319.elts[5] = ((closureN)self_731083)->elts[5]; -c_731319.elts[6] = ((closureN)self_731083)->elts[6]; - -return_closcall0(data,(closure)&c_731319); -} else { - -closureN_type c_731377; -c_731377.hdr.mark = gc_color_red; - c_731377.hdr.grayed = 0; -c_731377.tag = closureN_tag; - c_731377.fn = (function_type)__lambda_55; -c_731377.num_args = 0; -c_731377.num_elt = 2; -c_731377.elts = (object *)alloca(sizeof(object) * 2); -c_731377.elts[0] = ((closureN)self_731083)->elts[2]; -c_731377.elts[1] = ((closureN)self_731083)->elts[4]; - -return_closcall0(data,(closure)&c_731377);} -; -} - -static void __lambda_55(void *data, int argc, object self_731084) { - -closureN_type c_731379; -c_731379.hdr.mark = gc_color_red; - c_731379.hdr.grayed = 0; -c_731379.tag = closureN_tag; - c_731379.fn = (function_type)__lambda_54; -c_731379.num_args = 1; -c_731379.num_elt = 2; -c_731379.elts = (object *)alloca(sizeof(object) * 2); -c_731379.elts[0] = ((closureN)self_731084)->elts[0]; -c_731379.elts[1] = ((closureN)self_731084)->elts[1]; - - -make_string(c_731388, "ERROR: returned incorrect result: "); -return_closcall2(data, __glo_display_scheme_write, &c_731379, &c_731388);; -} - -static void __lambda_54(void *data, int argc, object self_731085, object r_73611) { - -closureN_type c_731381; -c_731381.hdr.mark = gc_color_red; - c_731381.hdr.grayed = 0; -c_731381.tag = closureN_tag; - c_731381.fn = (function_type)__lambda_53; -c_731381.num_args = 1; -c_731381.num_elt = 2; -c_731381.elts = (object *)alloca(sizeof(object) * 2); -c_731381.elts[0] = ((closureN)self_731085)->elts[0]; -c_731381.elts[1] = ((closureN)self_731085)->elts[1]; - -return_closcall2(data, __glo_write_scheme_write, &c_731381, ((closureN)self_731085)->elts[1]);; -} - -static void __lambda_53(void *data, int argc, object self_731086, object r_73612) { - -closureN_type c_731383; -c_731383.hdr.mark = gc_color_red; - c_731383.hdr.grayed = 0; -c_731383.tag = closureN_tag; - c_731383.fn = (function_type)__lambda_52; -c_731383.num_args = 1; -c_731383.num_elt = 2; -c_731383.elts = (object *)alloca(sizeof(object) * 2); -c_731383.elts[0] = ((closureN)self_731086)->elts[0]; -c_731383.elts[1] = ((closureN)self_731086)->elts[1]; - -return_closcall1(data, __glo_newline_scheme_base, &c_731383);; -} - -static void __lambda_52(void *data, int argc, object self_731087, object r_73613) { - return_closcall1(data, ((closureN)self_731087)->elts[0], ((closureN)self_731087)->elts[1]);; -} - -static void __lambda_51(void *data, int argc, object self_731088) { - -closureN_type c_731321; -c_731321.hdr.mark = gc_color_red; - c_731321.hdr.grayed = 0; -c_731321.tag = closureN_tag; - c_731321.fn = (function_type)__lambda_50; -c_731321.num_args = 1; -c_731321.num_elt = 7; -c_731321.elts = (object *)alloca(sizeof(object) * 7); -c_731321.elts[0] = ((closureN)self_731088)->elts[0]; -c_731321.elts[1] = ((closureN)self_731088)->elts[1]; -c_731321.elts[2] = ((closureN)self_731088)->elts[2]; -c_731321.elts[3] = ((closureN)self_731088)->elts[3]; -c_731321.elts[4] = ((closureN)self_731088)->elts[4]; -c_731321.elts[5] = ((closureN)self_731088)->elts[5]; -c_731321.elts[6] = ((closureN)self_731088)->elts[6]; - -return_closcall1(data, __glo_current_91jiffy_scheme_time, &c_731321);; -} - -static void __lambda_50(void *data, int argc, object self_731089, object j1_73247) { - -closureN_type c_731323; -c_731323.hdr.mark = gc_color_red; - c_731323.hdr.grayed = 0; -c_731323.tag = closureN_tag; - c_731323.fn = (function_type)__lambda_49; -c_731323.num_args = 1; -c_731323.num_elt = 8; -c_731323.elts = (object *)alloca(sizeof(object) * 8); -c_731323.elts[0] = ((closureN)self_731089)->elts[0]; -c_731323.elts[1] = ((closureN)self_731089)->elts[1]; -c_731323.elts[2] = j1_73247; -c_731323.elts[3] = ((closureN)self_731089)->elts[2]; -c_731323.elts[4] = ((closureN)self_731089)->elts[3]; -c_731323.elts[5] = ((closureN)self_731089)->elts[4]; -c_731323.elts[6] = ((closureN)self_731089)->elts[5]; -c_731323.elts[7] = ((closureN)self_731089)->elts[6]; - -return_closcall1(data, __glo_current_91second_scheme_time, &c_731323);; -} - -static void __lambda_49(void *data, int argc, object self_731090, object t1_73248) { - -closureN_type c_731325; -c_731325.hdr.mark = gc_color_red; - c_731325.hdr.grayed = 0; -c_731325.tag = closureN_tag; - c_731325.fn = (function_type)__lambda_48; -c_731325.num_args = 1; -c_731325.num_elt = 7; -c_731325.elts = (object *)alloca(sizeof(object) * 7); -c_731325.elts[0] = ((closureN)self_731090)->elts[0]; -c_731325.elts[1] = ((closureN)self_731090)->elts[3]; -c_731325.elts[2] = ((closureN)self_731090)->elts[4]; -c_731325.elts[3] = ((closureN)self_731090)->elts[5]; -c_731325.elts[4] = ((closureN)self_731090)->elts[6]; -c_731325.elts[5] = ((closureN)self_731090)->elts[7]; -c_731325.elts[6] = t1_73248; - - -object c_731373 = Cyc_sub(data,(closure)&c_731325,2,((closureN)self_731090)->elts[2], ((closureN)self_731090)->elts[1]); -return_closcall1(data,(closure)&c_731325, c_731373);; -} - -static void __lambda_48(void *data, int argc, object self_731091, object jifs_73249) { - -closureN_type c_731327; -c_731327.hdr.mark = gc_color_red; - c_731327.hdr.grayed = 0; -c_731327.tag = closureN_tag; - c_731327.fn = (function_type)__lambda_47; -c_731327.num_args = 1; -c_731327.num_elt = 6; -c_731327.elts = (object *)alloca(sizeof(object) * 6); -c_731327.elts[0] = ((closureN)self_731091)->elts[1]; -c_731327.elts[1] = ((closureN)self_731091)->elts[2]; -c_731327.elts[2] = ((closureN)self_731091)->elts[3]; -c_731327.elts[3] = ((closureN)self_731091)->elts[4]; -c_731327.elts[4] = ((closureN)self_731091)->elts[5]; -c_731327.elts[5] = ((closureN)self_731091)->elts[6]; - - -object c_731369 = Cyc_div(data,(closure)&c_731327,2,jifs_73249, ((closureN)self_731091)->elts[0]); -return_closcall1(data,(closure)&c_731327, c_731369);; -} - -static void __lambda_47(void *data, int argc, object self_731092, object r_73610) { - -closureN_type c_731329; -c_731329.hdr.mark = gc_color_red; - c_731329.hdr.grayed = 0; -c_731329.tag = closureN_tag; - c_731329.fn = (function_type)__lambda_46; -c_731329.num_args = 1; -c_731329.num_elt = 6; -c_731329.elts = (object *)alloca(sizeof(object) * 6); -c_731329.elts[0] = ((closureN)self_731092)->elts[0]; -c_731329.elts[1] = ((closureN)self_731092)->elts[1]; -c_731329.elts[2] = ((closureN)self_731092)->elts[2]; -c_731329.elts[3] = ((closureN)self_731092)->elts[3]; -c_731329.elts[4] = ((closureN)self_731092)->elts[4]; -c_731329.elts[5] = ((closureN)self_731092)->elts[5]; - -return_closcall2(data, __glo_inexact_scheme_base, &c_731329, r_73610);; -} - -static void __lambda_46(void *data, int argc, object self_731093, object secs_73250) { - -closureN_type c_731331; -c_731331.hdr.mark = gc_color_red; - c_731331.hdr.grayed = 0; -c_731331.tag = closureN_tag; - c_731331.fn = (function_type)__lambda_45; -c_731331.num_args = 1; -c_731331.num_elt = 5; -c_731331.elts = (object *)alloca(sizeof(object) * 5); -c_731331.elts[0] = ((closureN)self_731093)->elts[0]; -c_731331.elts[1] = ((closureN)self_731093)->elts[1]; -c_731331.elts[2] = ((closureN)self_731093)->elts[2]; -c_731331.elts[3] = ((closureN)self_731093)->elts[3]; -c_731331.elts[4] = secs_73250; - - -object c_731364 = Cyc_sub(data,(closure)&c_731331,2,((closureN)self_731093)->elts[5], ((closureN)self_731093)->elts[4]); -return_closcall1(data,(closure)&c_731331, c_731364);; -} - -static void __lambda_45(void *data, int argc, object self_731094, object r_73609) { - -closureN_type c_731336; -c_731336.hdr.mark = gc_color_red; - c_731336.hdr.grayed = 0; -c_731336.tag = closureN_tag; - c_731336.fn = (function_type)__lambda_44; -c_731336.num_args = 1; -c_731336.num_elt = 4; -c_731336.elts = (object *)alloca(sizeof(object) * 4); -c_731336.elts[0] = ((closureN)self_731094)->elts[0]; -c_731336.elts[1] = ((closureN)self_731094)->elts[1]; -c_731336.elts[2] = ((closureN)self_731094)->elts[2]; -c_731336.elts[3] = ((closureN)self_731094)->elts[4]; - -return_closcall2(data, cell_get(((closureN)self_731094)->elts[3]), &c_731336, r_73609);; -} - -static void __lambda_44(void *data, int argc, object self_731095, object secs2_73251) { - -closureN_type c_731338; -c_731338.hdr.mark = gc_color_red; - c_731338.hdr.grayed = 0; -c_731338.tag = closureN_tag; - c_731338.fn = (function_type)__lambda_43; -c_731338.num_args = 0; -c_731338.num_elt = 5; -c_731338.elts = (object *)alloca(sizeof(object) * 5); -c_731338.elts[0] = ((closureN)self_731095)->elts[0]; -c_731338.elts[1] = ((closureN)self_731095)->elts[1]; -c_731338.elts[2] = ((closureN)self_731095)->elts[2]; -c_731338.elts[3] = ((closureN)self_731095)->elts[3]; -c_731338.elts[4] = secs2_73251; - -return_closcall0(data,(closure)&c_731338);; -} - -static void __lambda_43(void *data, int argc, object self_731096) { - -closureN_type c_731340; -c_731340.hdr.mark = gc_color_red; - c_731340.hdr.grayed = 0; -c_731340.tag = closureN_tag; - c_731340.fn = (function_type)__lambda_42; -c_731340.num_args = 1; -c_731340.num_elt = 5; -c_731340.elts = (object *)alloca(sizeof(object) * 5); -c_731340.elts[0] = ((closureN)self_731096)->elts[0]; -c_731340.elts[1] = ((closureN)self_731096)->elts[1]; -c_731340.elts[2] = ((closureN)self_731096)->elts[2]; -c_731340.elts[3] = ((closureN)self_731096)->elts[3]; -c_731340.elts[4] = ((closureN)self_731096)->elts[4]; - - -make_string(c_731361, "Elapsed time: "); -return_closcall2(data, __glo_display_scheme_write, &c_731340, &c_731361);; -} - -static void __lambda_42(void *data, int argc, object self_731097, object r_73603) { - -closureN_type c_731342; -c_731342.hdr.mark = gc_color_red; - c_731342.hdr.grayed = 0; -c_731342.tag = closureN_tag; - c_731342.fn = (function_type)__lambda_41; -c_731342.num_args = 1; -c_731342.num_elt = 4; -c_731342.elts = (object *)alloca(sizeof(object) * 4); -c_731342.elts[0] = ((closureN)self_731097)->elts[0]; -c_731342.elts[1] = ((closureN)self_731097)->elts[1]; -c_731342.elts[2] = ((closureN)self_731097)->elts[2]; -c_731342.elts[3] = ((closureN)self_731097)->elts[4]; - -return_closcall2(data, __glo_write_scheme_write, &c_731342, ((closureN)self_731097)->elts[3]);; -} - -static void __lambda_41(void *data, int argc, object self_731098, object r_73604) { - -closureN_type c_731344; -c_731344.hdr.mark = gc_color_red; - c_731344.hdr.grayed = 0; -c_731344.tag = closureN_tag; - c_731344.fn = (function_type)__lambda_40; -c_731344.num_args = 1; -c_731344.num_elt = 4; -c_731344.elts = (object *)alloca(sizeof(object) * 4); -c_731344.elts[0] = ((closureN)self_731098)->elts[0]; -c_731344.elts[1] = ((closureN)self_731098)->elts[1]; -c_731344.elts[2] = ((closureN)self_731098)->elts[2]; -c_731344.elts[3] = ((closureN)self_731098)->elts[3]; - - -make_string(c_731359, " seconds ("); -return_closcall2(data, __glo_display_scheme_write, &c_731344, &c_731359);; -} - -static void __lambda_40(void *data, int argc, object self_731099, object r_73605) { - -closureN_type c_731346; -c_731346.hdr.mark = gc_color_red; - c_731346.hdr.grayed = 0; -c_731346.tag = closureN_tag; - c_731346.fn = (function_type)__lambda_39; -c_731346.num_args = 1; -c_731346.num_elt = 3; -c_731346.elts = (object *)alloca(sizeof(object) * 3); -c_731346.elts[0] = ((closureN)self_731099)->elts[0]; -c_731346.elts[1] = ((closureN)self_731099)->elts[1]; -c_731346.elts[2] = ((closureN)self_731099)->elts[2]; - -return_closcall2(data, __glo_write_scheme_write, &c_731346, ((closureN)self_731099)->elts[3]);; -} - -static void __lambda_39(void *data, int argc, object self_731100, object r_73606) { - -closureN_type c_731348; -c_731348.hdr.mark = gc_color_red; - c_731348.hdr.grayed = 0; -c_731348.tag = closureN_tag; - c_731348.fn = (function_type)__lambda_38; -c_731348.num_args = 1; -c_731348.num_elt = 3; -c_731348.elts = (object *)alloca(sizeof(object) * 3); -c_731348.elts[0] = ((closureN)self_731100)->elts[0]; -c_731348.elts[1] = ((closureN)self_731100)->elts[1]; -c_731348.elts[2] = ((closureN)self_731100)->elts[2]; - - -make_string(c_731357, ") for "); -return_closcall2(data, __glo_display_scheme_write, &c_731348, &c_731357);; -} - -static void __lambda_38(void *data, int argc, object self_731101, object r_73607) { - -closureN_type c_731350; -c_731350.hdr.mark = gc_color_red; - c_731350.hdr.grayed = 0; -c_731350.tag = closureN_tag; - c_731350.fn = (function_type)__lambda_37; -c_731350.num_args = 1; -c_731350.num_elt = 2; -c_731350.elts = (object *)alloca(sizeof(object) * 2); -c_731350.elts[0] = ((closureN)self_731101)->elts[0]; -c_731350.elts[1] = ((closureN)self_731101)->elts[2]; - -return_closcall2(data, __glo_display_scheme_write, &c_731350, ((closureN)self_731101)->elts[1]);; -} - -static void __lambda_37(void *data, int argc, object self_731102, object r_73608) { - -closureN_type c_731352; -c_731352.hdr.mark = gc_color_red; - c_731352.hdr.grayed = 0; -c_731352.tag = closureN_tag; - c_731352.fn = (function_type)__lambda_36; -c_731352.num_args = 1; -c_731352.num_elt = 2; -c_731352.elts = (object *)alloca(sizeof(object) * 2); -c_731352.elts[0] = ((closureN)self_731102)->elts[0]; -c_731352.elts[1] = ((closureN)self_731102)->elts[1]; - -return_closcall1(data, __glo_newline_scheme_base, &c_731352);; -} - -static void __lambda_36(void *data, int argc, object self_731103, object r_73597) { - return_closcall1(data, ((closureN)self_731103)->elts[0], ((closureN)self_731103)->elts[1]);; -} - -static void __lambda_35(void *data, int argc, object self_731104) { - -closureN_type c_731301; -c_731301.hdr.mark = gc_color_red; - c_731301.hdr.grayed = 0; -c_731301.tag = closureN_tag; - c_731301.fn = (function_type)__lambda_34; -c_731301.num_args = 1; -c_731301.num_elt = 3; -c_731301.elts = (object *)alloca(sizeof(object) * 3); -c_731301.elts[0] = ((closureN)self_731104)->elts[1]; -c_731301.elts[1] = ((closureN)self_731104)->elts[2]; -c_731301.elts[2] = ((closureN)self_731104)->elts[3]; - - -object c_731313 = Cyc_sum(data,(closure)&c_731301,2,((closureN)self_731104)->elts[0], obj_int2obj(1)); -return_closcall1(data,(closure)&c_731301, c_731313);; -} - -static void __lambda_34(void *data, int argc, object self_731105, object r_73594) { - -closureN_type c_731304; -c_731304.hdr.mark = gc_color_red; - c_731304.hdr.grayed = 0; -c_731304.tag = closureN_tag; - c_731304.fn = (function_type)__lambda_33; -c_731304.num_args = 1; -c_731304.num_elt = 3; -c_731304.elts = (object *)alloca(sizeof(object) * 3); -c_731304.elts[0] = ((closureN)self_731105)->elts[0]; -c_731304.elts[1] = ((closureN)self_731105)->elts[1]; -c_731304.elts[2] = r_73594; - -return_closcall1(data, ((closureN)self_731105)->elts[2], &c_731304);; -} - -static void __lambda_33(void *data, int argc, object self_731106, object r_73595) { - return_closcall3(data, cell_get(((closureN)self_731106)->elts[1]), ((closureN)self_731106)->elts[0], ((closureN)self_731106)->elts[2], r_73595);; -} - -static void __lambda_32(void *data, int argc, object self_731107, object r_73591) { - -closureN_type c_731284; -c_731284.hdr.mark = gc_color_red; - c_731284.hdr.grayed = 0; -c_731284.tag = closureN_tag; - c_731284.fn = (function_type)__lambda_31; -c_731284.num_args = 1; -c_731284.num_elt = 4; -c_731284.elts = (object *)alloca(sizeof(object) * 4); -c_731284.elts[0] = ((closureN)self_731107)->elts[0]; -c_731284.elts[1] = ((closureN)self_731107)->elts[1]; -c_731284.elts[2] = ((closureN)self_731107)->elts[2]; -c_731284.elts[3] = ((closureN)self_731107)->elts[3]; - -return_closcall1(data,(closure)&c_731284, Cyc_set_car(data, ((closureN)self_731107)->elts[2], r_73591));; -} - -static void __lambda_31(void *data, int argc, object self_731108, object r_73590) { - return_closcall3(data, cell_get(((closureN)self_731108)->elts[2]), ((closureN)self_731108)->elts[1], ((closureN)self_731108)->elts[0], ((closureN)self_731108)->elts[3]);; -} - -static void __lambda_30(void *data, int argc, closure _,object k_73614) { - Cyc_st_add(data, "sboyer.scm:run-r7rs-benchmark"); -if( !eq(boolean_f, boolean_f) ){ - return_closcall1(data, k_73614, boolean_f); -} else { - return_closcall1(data, k_73614, boolean_f);} -; -} - -static void __lambda_29(void *data, int argc, closure _,object k_73621, object r_73254, object x_73253) { - Cyc_st_add(data, "sboyer.scm:hide"); - -closureN_type c_731207; -c_731207.hdr.mark = gc_color_red; - c_731207.hdr.grayed = 0; -c_731207.tag = closureN_tag; - c_731207.fn = (function_type)__lambda_21; -c_731207.num_args = 1; -c_731207.num_elt = 2; -c_731207.elts = (object *)alloca(sizeof(object) * 2); -c_731207.elts[0] = k_73621; -c_731207.elts[1] = x_73253; - - -closureN_type c_731221; -c_731221.hdr.mark = gc_color_red; - c_731221.hdr.grayed = 0; -c_731221.tag = closureN_tag; - c_731221.fn = (function_type)__lambda_28; -c_731221.num_args = 0; -c_731221.num_elt = 1; -c_731221.elts = (object *)alloca(sizeof(object) * 1); -c_731221.elts[0] = r_73254; - -return_closcall1(data,(closure)&c_731207, &c_731221);; -} - -static void __lambda_28(void *data, int argc, object self_731109, object k_73626) { - -closureN_type c_731223; -c_731223.hdr.mark = gc_color_red; - c_731223.hdr.grayed = 0; -c_731223.tag = closureN_tag; - c_731223.fn = (function_type)__lambda_26; -c_731223.num_args = 1; -c_731223.num_elt = 2; -c_731223.elts = (object *)alloca(sizeof(object) * 2); -c_731223.elts[0] = k_73626; -c_731223.elts[1] = ((closureN)self_731109)->elts[0]; - - -mclosure0(c_731242, (function_type)__lambda_27);c_731242.num_args = 1; -return_closcall1(data,(closure)&c_731223, &c_731242);; -} - -static void __lambda_27(void *data, int argc, object self_731110, object k_73632, object x_73257) { - return_closcall1(data, k_73632, x_73257);; -} - -static void __lambda_26(void *data, int argc, object self_731111, object r_73631) { - -closureN_type c_731225; -c_731225.hdr.mark = gc_color_red; - c_731225.hdr.grayed = 0; -c_731225.tag = closureN_tag; - c_731225.fn = (function_type)__lambda_25; -c_731225.num_args = 1; -c_731225.num_elt = 2; -c_731225.elts = (object *)alloca(sizeof(object) * 2); -c_731225.elts[0] = ((closureN)self_731111)->elts[0]; -c_731225.elts[1] = ((closureN)self_731111)->elts[1]; - -return_closcall3(data, __glo_vector_scheme_base, &c_731225, __glo_values_scheme_base, r_73631);; -} - -static void __lambda_25(void *data, int argc, object self_731112, object r_73627) { - -closureN_type c_731227; -c_731227.hdr.mark = gc_color_red; - c_731227.hdr.grayed = 0; -c_731227.tag = closureN_tag; - c_731227.fn = (function_type)__lambda_23; -c_731227.num_args = 0; -c_731227.num_elt = 1; -c_731227.elts = (object *)alloca(sizeof(object) * 1); -c_731227.elts[0] = ((closureN)self_731112)->elts[1]; - - -closureN_type c_731238; -c_731238.hdr.mark = gc_color_red; - c_731238.hdr.grayed = 0; -c_731238.tag = closureN_tag; - c_731238.fn = (function_type)__lambda_24; -c_731238.num_args = 1; -c_731238.num_elt = 2; -c_731238.elts = (object *)alloca(sizeof(object) * 2); -c_731238.elts[0] = ((closureN)self_731112)->elts[0]; -c_731238.elts[1] = r_73627; - -return_closcall1(data,(closure)&c_731227, &c_731238);; -} - -static void __lambda_24(void *data, int argc, object self_731113, object r_73628) { - return_closcall3(data, __glo_values_scheme_base, ((closureN)self_731113)->elts[0], ((closureN)self_731113)->elts[1], r_73628);; -} - -static void __lambda_23(void *data, int argc, object self_731114, object k_73629) { - -closureN_type c_731229; -c_731229.hdr.mark = gc_color_red; - c_731229.hdr.grayed = 0; -c_731229.tag = closureN_tag; - c_731229.fn = (function_type)__lambda_22; -c_731229.num_args = 1; -c_731229.num_elt = 1; -c_731229.elts = (object *)alloca(sizeof(object) * 1); -c_731229.elts[0] = k_73629; - - -object c_731236 = Cyc_num_lt(data,(closure)&c_731229,2,((closureN)self_731114)->elts[0], obj_int2obj(100)); -return_closcall1(data,(closure)&c_731229, c_731236);; -} - -static void __lambda_22(void *data, int argc, object self_731115, object r_73630) { - if( !eq(boolean_f, r_73630) ){ - return_closcall1(data, ((closureN)self_731115)->elts[0], obj_int2obj(0)); -} else { - return_closcall1(data, ((closureN)self_731115)->elts[0], obj_int2obj(1));} -; -} - -static void __lambda_21(void *data, int argc, object self_731116, object r_73622) { - -closureN_type c_731209; -c_731209.hdr.mark = gc_color_red; - c_731209.hdr.grayed = 0; -c_731209.tag = closureN_tag; - c_731209.fn = (function_type)__lambda_18; -c_731209.num_args = 1; -c_731209.num_elt = 2; -c_731209.elts = (object *)alloca(sizeof(object) * 2); -c_731209.elts[0] = ((closureN)self_731116)->elts[0]; -c_731209.elts[1] = r_73622; - - -closureN_type c_731213; -c_731213.hdr.mark = gc_color_red; - c_731213.hdr.grayed = 0; -c_731213.tag = closureN_tag; - c_731213.fn = (function_type)__lambda_20; -c_731213.num_args = 2; -c_731213.num_elt = 1; -c_731213.elts = (object *)alloca(sizeof(object) * 1); -c_731213.elts[0] = ((closureN)self_731116)->elts[1]; - -return_closcall1(data,(closure)&c_731209, &c_731213);; -} - -static void __lambda_20(void *data, int argc, object self_731117, object k_73624, object v_73256, object i_73255) { - -closureN_type c_731215; -c_731215.hdr.mark = gc_color_red; - c_731215.hdr.grayed = 0; -c_731215.tag = closureN_tag; - c_731215.fn = (function_type)__lambda_19; -c_731215.num_args = 1; -c_731215.num_elt = 2; -c_731215.elts = (object *)alloca(sizeof(object) * 2); -c_731215.elts[0] = k_73624; -c_731215.elts[1] = ((closureN)self_731117)->elts[0]; - -return_closcall1(data,(closure)&c_731215, Cyc_vector_ref(data, v_73256, i_73255));; -} - -static void __lambda_19(void *data, int argc, object self_731118, object r_73625) { - return_closcall2(data, r_73625, ((closureN)self_731118)->elts[0], ((closureN)self_731118)->elts[1]);; -} - -static void __lambda_18(void *data, int argc, object self_731119, object r_73623) { - return_closcall3(data, __glo_call_91with_91values_scheme_base, ((closureN)self_731119)->elts[0], ((closureN)self_731119)->elts[1], r_73623);; -} - -static void __lambda_17(void *data, int argc, closure _,object k_73635) { - Cyc_st_add(data, "sboyer.scm:test-boyer"); -return_closcall1(data, k_73635, boolean_t);; -} - -static void __lambda_16(void *data, int argc, closure _,object k_73638) { - Cyc_st_add(data, "sboyer.scm:setup-boyer"); -return_closcall1(data, k_73638, boolean_t);; -} - -static void __lambda_15(void *data, int argc, closure _,object k_73645) { - Cyc_st_add(data, "sboyer.scm:main"); - -closureN_type c_731137; -c_731137.hdr.mark = gc_color_red; - c_731137.hdr.grayed = 0; -c_731137.tag = closureN_tag; - c_731137.fn = (function_type)__lambda_14; -c_731137.num_args = 1; -c_731137.num_elt = 1; -c_731137.elts = (object *)alloca(sizeof(object) * 1); -c_731137.elts[0] = k_73645; - -return_closcall1(data, __glo_read_scheme_read, &c_731137);; -} - -static void __lambda_14(void *data, int argc, object self_731120, object count_73258) { - -closureN_type c_731139; -c_731139.hdr.mark = gc_color_red; - c_731139.hdr.grayed = 0; -c_731139.tag = closureN_tag; - c_731139.fn = (function_type)__lambda_13; -c_731139.num_args = 1; -c_731139.num_elt = 2; -c_731139.elts = (object *)alloca(sizeof(object) * 2); -c_731139.elts[0] = count_73258; -c_731139.elts[1] = ((closureN)self_731120)->elts[0]; - -return_closcall1(data, __glo_read_scheme_read, &c_731139);; -} - -static void __lambda_13(void *data, int argc, object self_731121, object input_73259) { - -closureN_type c_731141; -c_731141.hdr.mark = gc_color_red; - c_731141.hdr.grayed = 0; -c_731141.tag = closureN_tag; - c_731141.fn = (function_type)__lambda_12; -c_731141.num_args = 1; -c_731141.num_elt = 3; -c_731141.elts = (object *)alloca(sizeof(object) * 3); -c_731141.elts[0] = ((closureN)self_731121)->elts[0]; -c_731141.elts[1] = input_73259; -c_731141.elts[2] = ((closureN)self_731121)->elts[1]; - -return_closcall1(data, __glo_read_scheme_read, &c_731141);; -} - -static void __lambda_12(void *data, int argc, object self_731122, object output_73260) { - -closureN_type c_731143; -c_731143.hdr.mark = gc_color_red; - c_731143.hdr.grayed = 0; -c_731143.tag = closureN_tag; - c_731143.fn = (function_type)__lambda_11; -c_731143.num_args = 1; -c_731143.num_elt = 4; -c_731143.elts = (object *)alloca(sizeof(object) * 4); -c_731143.elts[0] = ((closureN)self_731122)->elts[0]; -c_731143.elts[1] = ((closureN)self_731122)->elts[1]; -c_731143.elts[2] = ((closureN)self_731122)->elts[2]; -c_731143.elts[3] = output_73260; - - -object c_731199 = Cyc_number2string2(data,(closure)&c_731143,1,((closureN)self_731122)->elts[0]); -return_closcall1(data,(closure)&c_731143, c_731199);; -} - -static void __lambda_11(void *data, int argc, object self_731123, object s2_73261) { - -closureN_type c_731145; -c_731145.hdr.mark = gc_color_red; - c_731145.hdr.grayed = 0; -c_731145.tag = closureN_tag; - c_731145.fn = (function_type)__lambda_10; -c_731145.num_args = 1; -c_731145.num_elt = 5; -c_731145.elts = (object *)alloca(sizeof(object) * 5); -c_731145.elts[0] = ((closureN)self_731123)->elts[0]; -c_731145.elts[1] = ((closureN)self_731123)->elts[1]; -c_731145.elts[2] = ((closureN)self_731123)->elts[2]; -c_731145.elts[3] = ((closureN)self_731123)->elts[3]; -c_731145.elts[4] = s2_73261; - - -object c_731195 = Cyc_number2string2(data,(closure)&c_731145,1,((closureN)self_731123)->elts[1]); -return_closcall1(data,(closure)&c_731145, c_731195);; -} - -static void __lambda_10(void *data, int argc, object self_731124, object s1_73262) { - -closureN_type c_731147; -c_731147.hdr.mark = gc_color_red; - c_731147.hdr.grayed = 0; -c_731147.tag = closureN_tag; - c_731147.fn = (function_type)__lambda_9; -c_731147.num_args = 1; -c_731147.num_elt = 6; -c_731147.elts = (object *)alloca(sizeof(object) * 6); -c_731147.elts[0] = ((closureN)self_731124)->elts[0]; -c_731147.elts[1] = ((closureN)self_731124)->elts[1]; -c_731147.elts[2] = ((closureN)self_731124)->elts[2]; -c_731147.elts[3] = ((closureN)self_731124)->elts[3]; -c_731147.elts[4] = s1_73262; -c_731147.elts[5] = ((closureN)self_731124)->elts[4]; - - -make_string(c_731192, "sboyer"); -return_closcall1(data,(closure)&c_731147, &c_731192);; -} - -static void __lambda_9(void *data, int argc, object self_731125, object name_73263) { - -closureN_type c_731149; -c_731149.hdr.mark = gc_color_red; - c_731149.hdr.grayed = 0; -c_731149.tag = closureN_tag; - c_731149.fn = (function_type)__lambda_8; -c_731149.num_args = 0; -c_731149.num_elt = 7; -c_731149.elts = (object *)alloca(sizeof(object) * 7); -c_731149.elts[0] = ((closureN)self_731125)->elts[0]; -c_731149.elts[1] = ((closureN)self_731125)->elts[1]; -c_731149.elts[2] = ((closureN)self_731125)->elts[2]; -c_731149.elts[3] = name_73263; -c_731149.elts[4] = ((closureN)self_731125)->elts[3]; -c_731149.elts[5] = ((closureN)self_731125)->elts[4]; -c_731149.elts[6] = ((closureN)self_731125)->elts[5]; - -return_closcall0(data,(closure)&c_731149);; -} - -static void __lambda_8(void *data, int argc, object self_731126) { - -closureN_type c_731151; -c_731151.hdr.mark = gc_color_red; - c_731151.hdr.grayed = 0; -c_731151.tag = closureN_tag; - c_731151.fn = (function_type)__lambda_7; -c_731151.num_args = 1; -c_731151.num_elt = 4; -c_731151.elts = (object *)alloca(sizeof(object) * 4); -c_731151.elts[0] = ((closureN)self_731126)->elts[0]; -c_731151.elts[1] = ((closureN)self_731126)->elts[1]; -c_731151.elts[2] = ((closureN)self_731126)->elts[2]; -c_731151.elts[3] = ((closureN)self_731126)->elts[4]; - - -make_string(c_731188, ":"); - -make_string(c_731190, ":"); - -object c_731186 = Cyc_string_append(data,(closure)&c_731151,5,((closureN)self_731126)->elts[3], &c_731188, ((closureN)self_731126)->elts[5], &c_731190, ((closureN)self_731126)->elts[6]); -return_closcall1(data,(closure)&c_731151, c_731186);; -} - -static void __lambda_7(void *data, int argc, object self_731127, object r_73651) { - -closureN_type c_731153; -c_731153.hdr.mark = gc_color_red; - c_731153.hdr.grayed = 0; -c_731153.tag = closureN_tag; - c_731153.fn = (function_type)__lambda_3; -c_731153.num_args = 1; -c_731153.num_elt = 4; -c_731153.elts = (object *)alloca(sizeof(object) * 4); -c_731153.elts[0] = ((closureN)self_731127)->elts[0]; -c_731153.elts[1] = ((closureN)self_731127)->elts[2]; -c_731153.elts[2] = ((closureN)self_731127)->elts[3]; -c_731153.elts[3] = r_73651; - - -closureN_type c_731175; -c_731175.hdr.mark = gc_color_red; - c_731175.hdr.grayed = 0; -c_731175.tag = closureN_tag; - c_731175.fn = (function_type)__lambda_6; -c_731175.num_args = 0; -c_731175.num_elt = 2; -c_731175.elts = (object *)alloca(sizeof(object) * 2); -c_731175.elts[0] = ((closureN)self_731127)->elts[0]; -c_731175.elts[1] = ((closureN)self_731127)->elts[1]; - -return_closcall1(data,(closure)&c_731153, &c_731175);; -} - -static void __lambda_6(void *data, int argc, object self_731128, object k_73656) { - -closureN_type c_731177; -c_731177.hdr.mark = gc_color_red; - c_731177.hdr.grayed = 0; -c_731177.tag = closureN_tag; - c_731177.fn = (function_type)__lambda_5; -c_731177.num_args = 1; -c_731177.num_elt = 3; -c_731177.elts = (object *)alloca(sizeof(object) * 3); -c_731177.elts[0] = ((closureN)self_731128)->elts[0]; -c_731177.elts[1] = ((closureN)self_731128)->elts[1]; -c_731177.elts[2] = k_73656; - -return_closcall1(data, __glo_setup_91boyer, &c_731177);; -} - -static void __lambda_5(void *data, int argc, object self_731129, object r_73657) { - -closureN_type c_731179; -c_731179.hdr.mark = gc_color_red; - c_731179.hdr.grayed = 0; -c_731179.tag = closureN_tag; - c_731179.fn = (function_type)__lambda_4; -c_731179.num_args = 1; -c_731179.num_elt = 1; -c_731179.elts = (object *)alloca(sizeof(object) * 1); -c_731179.elts[0] = ((closureN)self_731129)->elts[2]; - -return_closcall3(data, __glo_hide, &c_731179, ((closureN)self_731129)->elts[0], ((closureN)self_731129)->elts[1]);; -} - -static void __lambda_4(void *data, int argc, object self_731130, object r_73658) { - return_closcall4(data, __glo_test_91boyer, ((closureN)self_731130)->elts[0], __glo_alist, __glo_term, r_73658);; -} - -static void __lambda_3(void *data, int argc, object self_731131, object r_73652) { - -closureN_type c_731155; -c_731155.hdr.mark = gc_color_red; - c_731155.hdr.grayed = 0; -c_731155.tag = closureN_tag; - c_731155.fn = (function_type)__lambda_0; -c_731155.num_args = 1; -c_731155.num_elt = 4; -c_731155.elts = (object *)alloca(sizeof(object) * 4); -c_731155.elts[0] = ((closureN)self_731131)->elts[0]; -c_731155.elts[1] = ((closureN)self_731131)->elts[1]; -c_731155.elts[2] = ((closureN)self_731131)->elts[3]; -c_731155.elts[3] = r_73652; - - -closureN_type c_731161; -c_731161.hdr.mark = gc_color_red; - c_731161.hdr.grayed = 0; -c_731161.tag = closureN_tag; - c_731161.fn = (function_type)__lambda_2; -c_731161.num_args = 1; -c_731161.num_elt = 1; -c_731161.elts = (object *)alloca(sizeof(object) * 1); -c_731161.elts[0] = ((closureN)self_731131)->elts[2]; - -return_closcall1(data,(closure)&c_731155, &c_731161);; -} - -static void __lambda_2(void *data, int argc, object self_731132, object k_73654, object rewrites_73264) { - -closureN_type c_731163; -c_731163.hdr.mark = gc_color_red; - c_731163.hdr.grayed = 0; -c_731163.tag = closureN_tag; - c_731163.fn = (function_type)__lambda_1; -c_731163.num_args = 1; -c_731163.num_elt = 3; -c_731163.elts = (object *)alloca(sizeof(object) * 3); -c_731163.elts[0] = k_73654; -c_731163.elts[1] = ((closureN)self_731132)->elts[0]; -c_731163.elts[2] = rewrites_73264; - -return_closcall1(data,(closure)&c_731163, Cyc_is_number(rewrites_73264));; -} - -static void __lambda_1(void *data, int argc, object self_731133, object r_73655) { - if( !eq(boolean_f, r_73655) ){ - -object c_731168 = Cyc_num_eq(data, ((closureN)self_731133)->elts[0],2,((closureN)self_731133)->elts[2], ((closureN)self_731133)->elts[1]); -return_closcall1(data, ((closureN)self_731133)->elts[0], c_731168); -} else { - return_closcall1(data, ((closureN)self_731133)->elts[0], boolean_f);} -; -} - -static void __lambda_0(void *data, int argc, object self_731134, object r_73653) { - return_closcall5(data, __glo_run_91r7rs_91benchmark, ((closureN)self_731134)->elts[1], ((closureN)self_731134)->elts[2], ((closureN)self_731134)->elts[0], ((closureN)self_731134)->elts[3], r_73653);; -} - -static void c_entry_pt_first_lambda(void *data, int argc, closure cont, object value); -extern void c_schemebase_entry_pt(void *data, int argc, closure cont, object value); -extern void c_schemetime_entry_pt(void *data, int argc, closure cont, object value); -extern void c_schemecxr_entry_pt(void *data, int argc, closure cont, object value); -extern void c_scheme_char_entry_pt(void *data, int argc, closure cont, object value); -extern void c_schemeread_entry_pt(void *data, int argc, closure cont, object value); -extern void c_schemewrite_entry_pt(void *data, int argc, closure cont, object value); -static void c_entry_pt(data, argc, env,cont) void *data; int argc; closure env,cont; { - quote_u = find_or_add_symbol("u"); - quote_mem = find_or_add_symbol("mem"); - quote_val = find_or_add_symbol("val"); - quote_set = find_or_add_symbol("set"); - quote_get = find_or_add_symbol("get"); - quote_cdr = find_or_add_symbol("cdr"); - quote_assignedp = find_or_add_symbol("assignedp"); - quote_assignment = find_or_add_symbol("assignment"); - quote_car = find_or_add_symbol("car"); - quote_last = find_or_add_symbol("last"); - quote_sigma = find_or_add_symbol("sigma"); - quote_x7 = find_or_add_symbol("x7"); - quote_x6 = find_or_add_symbol("x6"); - quote_x5 = find_or_add_symbol("x5"); - quote_x4 = find_or_add_symbol("x4"); - quote_x3 = find_or_add_symbol("x3"); - quote_x2 = find_or_add_symbol("x2"); - quote_x1 = find_or_add_symbol("x1"); - quote_dsort = find_or_add_symbol("dsort"); - quote_sort2 = find_or_add_symbol("sort2"); - quote_delete = find_or_add_symbol("delete"); - quote_prime_91list = find_or_add_symbol("prime-list"); - quote_times_91list = find_or_add_symbol("times-list"); - quote_greatest_91factor = find_or_add_symbol("greatest-factor"); - quote_samefringe = find_or_add_symbol("samefringe"); - quote_gopher = find_or_add_symbol("gopher"); - quote_listp = find_or_add_symbol("listp"); - quote_nlistp = find_or_add_symbol("nlistp"); - quote_value = find_or_add_symbol("value"); - quote_w = find_or_add_symbol("w"); - quote_gcd = find_or_add_symbol("gcd"); - quote_power_91rep = find_or_add_symbol("power-rep"); - quote_big_91plus = find_or_add_symbol("big-plus"); - quote_base = find_or_add_symbol("base"); - quote_big_91plus1 = find_or_add_symbol("big-plus1"); - quote_power_91eval = find_or_add_symbol("power-eval"); - quote_quotient = find_or_add_symbol("quotient"); - quote_sort_91lp = find_or_add_symbol("sort-lp"); - quote_count_91list = find_or_add_symbol("count-list"); - quote_k = find_or_add_symbol("k"); - quote_j = find_or_add_symbol("j"); - quote_exp = find_or_add_symbol("exp"); - quote_nth = find_or_add_symbol("nth"); - quote_intersect = find_or_add_symbol("intersect"); - quote_length = find_or_add_symbol("length"); - quote_member = find_or_add_symbol("member"); - quote_flatten = find_or_add_symbol("flatten"); - quote_mc_91flatten = find_or_add_symbol("mc-flatten"); - quote_envrn = find_or_add_symbol("envrn"); - quote_pds = find_or_add_symbol("pds"); - quote_exec = find_or_add_symbol("exec"); - quote_times = find_or_add_symbol("times"); - quote_plus_91fringe = find_or_add_symbol("plus-fringe"); - quote_append = find_or_add_symbol("append"); - quote_plus_91tree = find_or_add_symbol("plus-tree"); - quote_meaning = find_or_add_symbol("meaning"); - quote_difference = find_or_add_symbol("difference"); - quote_z = find_or_add_symbol("z"); - quote_plus = find_or_add_symbol("plus"); - quote_e = find_or_add_symbol("e"); - quote_d = find_or_add_symbol("d"); - quote_c = find_or_add_symbol("c"); - quote_b = find_or_add_symbol("b"); - quote_a = find_or_add_symbol("a"); - quote_numberp = find_or_add_symbol("numberp"); - quote_q = find_or_add_symbol("q"); - quote_p = find_or_add_symbol("p"); - quote_prime1 = find_or_add_symbol("prime1"); - quote_add1 = find_or_add_symbol("add1"); - quote_prime = find_or_add_symbol("prime"); - quote_falsify1 = find_or_add_symbol("falsify1"); - quote_falsify = find_or_add_symbol("falsify"); - quote_normalize = find_or_add_symbol("normalize"); - quote_tautologyp = find_or_add_symbol("tautologyp"); - quote_tautology_91checker = find_or_add_symbol("tautology-checker"); - quote_assume_91false = find_or_add_symbol("assume-false"); - quote_cons = find_or_add_symbol("cons"); - quote_alist = find_or_add_symbol("alist"); - quote_var = find_or_add_symbol("var"); - quote_assume_91true = find_or_add_symbol("assume-true"); - quote_remainder = find_or_add_symbol("remainder"); - quote_divides = find_or_add_symbol("divides"); - quote_reverse_91loop = find_or_add_symbol("reverse-loop"); - quote_reverse_91 = find_or_add_symbol("reverse-"); - quote_fact_91loop = find_or_add_symbol("fact-loop"); - quote_i = find_or_add_symbol("i"); - quote_fact_91 = find_or_add_symbol("fact-"); - quote_zero = find_or_add_symbol("zero"); - quote_countps_91loop = find_or_add_symbol("countps-loop"); - quote_pred = find_or_add_symbol("pred"); - quote_l = find_or_add_symbol("l"); - quote_countps_91 = find_or_add_symbol("countps-"); - quote__1911_91 = find_or_add_symbol("_1-"); - quote_odd = find_or_add_symbol("odd"); - quote_zerop = find_or_add_symbol("zerop"); - quote_even1 = find_or_add_symbol("even1"); - quote_iff = find_or_add_symbol("iff"); - quote_boolean = find_or_add_symbol("boolean"); - quote_greatereqp = find_or_add_symbol("greatereqp"); - quote_not = find_or_add_symbol("not"); - quote_lesseqp = find_or_add_symbol("lesseqp"); - quote_lessp = find_or_add_symbol("lessp"); - quote_greaterp = find_or_add_symbol("greaterp"); - quote_fix = find_or_add_symbol("fix"); - quote_y = find_or_add_symbol("y"); - quote_x = find_or_add_symbol("x"); - quote_eqp = find_or_add_symbol("eqp"); - quote_nil = find_or_add_symbol("nil"); - quote_optimize = find_or_add_symbol("optimize"); - quote_codegen = find_or_add_symbol("codegen"); - quote_reverse = find_or_add_symbol("reverse"); - quote_form = find_or_add_symbol("form"); - quote_compile = find_or_add_symbol("compile"); - quote_lemmas = find_or_add_symbol("lemmas"); - quote_equal = find_or_add_symbol("equal"); - quote_or = find_or_add_symbol("or"); - quote__85 = find_or_add_symbol("*"); - quote_and = find_or_add_symbol("and"); - quote_implies = find_or_add_symbol("implies"); - quote__if = find_or_add_symbol("if"); - quote_f = find_or_add_symbol("f"); - quote_t = find_or_add_symbol("t"); - - add_global((object *) &__glo_run_91r7rs_91benchmark); - add_global((object *) &__glo_hide); - add_global((object *) &__glo_test_91boyer); - add_global((object *) &__glo_setup_91boyer); - add_global((object *) &__glo_term); - add_global((object *) &__glo_alist); - add_global((object *) &__glo_main); - add_symbol(quote_u); - add_symbol(quote_mem); - add_symbol(quote_val); - add_symbol(quote_set); - add_symbol(quote_get); - add_symbol(quote_cdr); - add_symbol(quote_assignedp); - add_symbol(quote_assignment); - add_symbol(quote_car); - add_symbol(quote_last); - add_symbol(quote_sigma); - add_symbol(quote_x7); - add_symbol(quote_x6); - add_symbol(quote_x5); - add_symbol(quote_x4); - add_symbol(quote_x3); - add_symbol(quote_x2); - add_symbol(quote_x1); - add_symbol(quote_dsort); - add_symbol(quote_sort2); - add_symbol(quote_delete); - add_symbol(quote_prime_91list); - add_symbol(quote_times_91list); - add_symbol(quote_greatest_91factor); - add_symbol(quote_samefringe); - add_symbol(quote_gopher); - add_symbol(quote_listp); - add_symbol(quote_nlistp); - add_symbol(quote_value); - add_symbol(quote_w); - add_symbol(quote_gcd); - add_symbol(quote_power_91rep); - add_symbol(quote_big_91plus); - add_symbol(quote_base); - add_symbol(quote_big_91plus1); - add_symbol(quote_power_91eval); - add_symbol(quote_quotient); - add_symbol(quote_sort_91lp); - add_symbol(quote_count_91list); - add_symbol(quote_k); - add_symbol(quote_j); - add_symbol(quote_exp); - add_symbol(quote_nth); - add_symbol(quote_intersect); - add_symbol(quote_length); - add_symbol(quote_member); - add_symbol(quote_flatten); - add_symbol(quote_mc_91flatten); - add_symbol(quote_envrn); - add_symbol(quote_pds); - add_symbol(quote_exec); - add_symbol(quote_times); - add_symbol(quote_plus_91fringe); - add_symbol(quote_append); - add_symbol(quote_plus_91tree); - add_symbol(quote_meaning); - add_symbol(quote_difference); - add_symbol(quote_z); - add_symbol(quote_plus); - add_symbol(quote_e); - add_symbol(quote_d); - add_symbol(quote_c); - add_symbol(quote_b); - add_symbol(quote_a); - add_symbol(quote_numberp); - add_symbol(quote_q); - add_symbol(quote_p); - add_symbol(quote_prime1); - add_symbol(quote_add1); - add_symbol(quote_prime); - add_symbol(quote_falsify1); - add_symbol(quote_falsify); - add_symbol(quote_normalize); - add_symbol(quote_tautologyp); - add_symbol(quote_tautology_91checker); - add_symbol(quote_assume_91false); - add_symbol(quote_cons); - add_symbol(quote_alist); - add_symbol(quote_var); - add_symbol(quote_assume_91true); - add_symbol(quote_remainder); - add_symbol(quote_divides); - add_symbol(quote_reverse_91loop); - add_symbol(quote_reverse_91); - add_symbol(quote_fact_91loop); - add_symbol(quote_i); - add_symbol(quote_fact_91); - add_symbol(quote_zero); - add_symbol(quote_countps_91loop); - add_symbol(quote_pred); - add_symbol(quote_l); - add_symbol(quote_countps_91); - add_symbol(quote__1911_91); - add_symbol(quote_odd); - add_symbol(quote_zerop); - add_symbol(quote_even1); - add_symbol(quote_iff); - add_symbol(quote_boolean); - add_symbol(quote_greatereqp); - add_symbol(quote_not); - add_symbol(quote_lesseqp); - add_symbol(quote_lessp); - add_symbol(quote_greaterp); - add_symbol(quote_fix); - add_symbol(quote_y); - add_symbol(quote_x); - add_symbol(quote_eqp); - add_symbol(quote_nil); - add_symbol(quote_optimize); - add_symbol(quote_codegen); - add_symbol(quote_reverse); - add_symbol(quote_form); - add_symbol(quote_compile); - add_symbol(quote_lemmas); - add_symbol(quote_equal); - add_symbol(quote_or); - add_symbol(quote__85); - add_symbol(quote_and); - add_symbol(quote_implies); - add_symbol(quote__if); - add_symbol(quote_f); - add_symbol(quote_t); - mclosure0(c_731244, (function_type)__lambda_79);c_731244.num_args = 4; - __glo_run_91r7rs_91benchmark = &c_731244; - mclosure0(c_731205, (function_type)__lambda_29);c_731205.num_args = 2; - __glo_hide = &c_731205; - mclosure0(c_731203, (function_type)__lambda_17);c_731203.num_args = 0; - __glo_test_91boyer = &c_731203; - mclosure0(c_731201, (function_type)__lambda_16);c_731201.num_args = 0; - __glo_setup_91boyer = &c_731201; - mclosure0(c_731135, (function_type)__lambda_15);c_731135.num_args = 0; - __glo_main = &c_731135; - __glo_term = boolean_f; - __glo_alist = boolean_f; - - make_cvar(cvar_735303, (object *)&__glo_run_91r7rs_91benchmark);make_cons(pair_735304, find_or_add_symbol("run-r7rs-benchmark"), &cvar_735303); - make_cvar(cvar_735305, (object *)&__glo_hide);make_cons(pair_735306, find_or_add_symbol("hide"), &cvar_735305); - make_cvar(cvar_735307, (object *)&__glo_test_91boyer);make_cons(pair_735308, find_or_add_symbol("test-boyer"), &cvar_735307); - make_cvar(cvar_735309, (object *)&__glo_setup_91boyer);make_cons(pair_735310, find_or_add_symbol("setup-boyer"), &cvar_735309); - make_cvar(cvar_735311, (object *)&__glo_term);make_cons(pair_735312, find_or_add_symbol("term"), &cvar_735311); - make_cvar(cvar_735313, (object *)&__glo_alist);make_cons(pair_735314, find_or_add_symbol("alist"), &cvar_735313); - make_cvar(cvar_735315, (object *)&__glo_main);make_cons(pair_735316, find_or_add_symbol("main"), &cvar_735315); -make_cons(c_735317, &pair_735304,Cyc_global_variables); -make_cons(c_735318, &pair_735306, &c_735317); -make_cons(c_735319, &pair_735308, &c_735318); -make_cons(c_735320, &pair_735310, &c_735319); -make_cons(c_735321, &pair_735312, &c_735320); -make_cons(c_735322, &pair_735314, &c_735321); -make_cons(c_735323, &pair_735316, &c_735322); -Cyc_global_variables = &c_735323; -mclosure1(c_done, c_entry_pt_first_lambda, &c_done); -mclosure1(c_735324, c_schemewrite_entry_pt, &c_done); -mclosure1(c_735325, c_schemeread_entry_pt, &c_735324); -mclosure1(c_735326, c_scheme_char_entry_pt, &c_735325); -mclosure1(c_735327, c_schemecxr_entry_pt, &c_735326); -mclosure1(c_735328, c_schemetime_entry_pt, &c_735327); -mclosure1(c_735329, c_schemebase_entry_pt, &c_735328); -(c_735329.fn)(data, 0, &c_735329, &c_735329); -} -static void c_entry_pt_first_lambda(void *data, int argc, closure cont, object value) { - - - - - - - - return_direct40(data,__lambda_492,boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f, boolean_f); -} -main(int argc,char **argv) -{gc_thread_data *thd; - long stack_size = global_stack_size = STACK_SIZE; - long heap_size = global_heap_size = HEAP_SIZE; - mclosure0(clos_halt,&Cyc_halt); // Halt if final closure is reached - mclosure0(entry_pt,&c_entry_pt); // First function to execute - _cyc_argc = argc; - _cyc_argv = argv; - gc_initialize(); - thd = malloc(sizeof(gc_thread_data)); - gc_thread_data_init(thd, 0, (char *) &stack_size, stack_size); - thd->gc_cont = &entry_pt; - thd->gc_args[0] = &clos_halt; - thd->gc_num_args = 1; - gc_add_mutator(thd); - Cyc_heap_init(heap_size); - thd->thread_state = CYC_THREAD_STATE_RUNNABLE; - Cyc_start_trampoline(thd); - return 0;} diff --git a/debug/compilation/boyer/sboyer.scm b/debug/compilation/boyer/sboyer.scm deleted file mode 100644 index e2ae6013..00000000 --- a/debug/compilation/boyer/sboyer.scm +++ /dev/null @@ -1,849 +0,0 @@ -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; File: sboyer.sch -; Description: The Boyer benchmark -; Author: Bob Boyer -; Created: 5-Apr-85 -; Modified: 10-Apr-85 14:52:20 (Bob Shaw) -; 22-Jul-87 (Will Clinger) -; 2-Jul-88 (Will Clinger -- distinguished #f and the empty list) -; 13-Feb-97 (Will Clinger -- fixed bugs in unifier and rules, -; rewrote to eliminate property lists, and added -; a scaling parameter suggested by Bob Boyer) -; 19-Mar-99 (Will Clinger -- cleaned up comments) -; Language: Scheme -; Status: Public Domain -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -;;; SBOYER -- Logic programming benchmark, originally written by Bob Boyer. -;;; Much less CONS-intensive than NBOYER because it uses Henry Baker's -;;; "sharing cons". - -; Note: The version of this benchmark that appears in Dick Gabriel's book -; contained several bugs that are corrected here. These bugs are discussed -; by Henry Baker, "The Boyer Benchmark Meets Linear Logic", ACM SIGPLAN Lisp -; Pointers 6(4), October-December 1993, pages 3-10. The fixed bugs are: -; -; The benchmark now returns a boolean result. -; FALSEP and TRUEP use TERM-MEMBER? rather than MEMV (which is called MEMBER -; in Common Lisp) -; ONE-WAY-UNIFY1 now treats numbers correctly -; ONE-WAY-UNIFY1-LST now treats empty lists correctly -; Rule 19 has been corrected (this rule was not touched by the original -; benchmark, but is used by this version) -; Rules 84 and 101 have been corrected (but these rules are never touched -; by the benchmark) -; -; According to Baker, these bug fixes make the benchmark 10-25% slower. -; Please do not compare the timings from this benchmark against those of -; the original benchmark. -; -; This version of the benchmark also prints the number of rewrites as a sanity -; check, because it is too easy for a buggy version to return the correct -; boolean result. The correct number of rewrites is -; -; n rewrites peak live storage (approximate, in bytes) -; 0 95024 -; 1 591777 -; 2 1813975 -; 3 5375678 -; 4 16445406 -; 5 51507739 - -; Sboyer is a 2-phase benchmark. -; The first phase attaches lemmas to symbols. This phase is not timed, -; but it accounts for very little of the runtime anyway. -; The second phase creates the test problem, and tests to see -; whether it is implied by the lemmas. - -(import (scheme base) - (scheme cxr) - (scheme read) - (scheme write) - (scheme time)) - -(define (main) - (let* ((count (read)) - (input (read)) - (output (read)) - (s2 (number->string count)) - (s1 (number->string input)) - (name "sboyer")) - (run-r7rs-benchmark - (string-append name ":" s1 ":" s2) - count - (lambda () - (setup-boyer) - (test-boyer alist term (hide count input))) - (lambda (rewrites) - (and (number? rewrites) (= rewrites output)))))) - -(define alist - (quote ((x f (plus (plus a b) - (plus c (zero)))) - (y f (times (times a b) - (plus c d))) - (z f (reverse (append (append a b) - (nil)))) - (u equal (plus a b) - (difference x y)) - (w lessp (remainder a b) - (member a (length b)))))) - -(define term - (quote (implies (and (implies x y) - (and (implies y z) - (and (implies z u) - (implies u w)))) - (implies x w)))) - -(define (setup-boyer) #t) ; assigned below -(define (test-boyer) #t) ; assigned below - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -; -; The first phase. -; -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -; In the original benchmark, it stored a list of lemmas on the -; property lists of symbols. -; In the new benchmark, it maintains an association list of -; symbols and symbol-records, and stores the list of lemmas -; within the symbol-records. - -(let () - - (define (setup) - (add-lemma-lst - (quote ((equal (compile form) - (reverse (codegen (optimize form) - (nil)))) - (equal (eqp x y) - (equal (fix x) - (fix y))) - (equal (greaterp x y) - (lessp y x)) - (equal (lesseqp x y) - (not (lessp y x))) - (equal (greatereqp x y) - (not (lessp x y))) - (equal (boolean x) - (or (equal x (t)) - (equal x (f)))) - (equal (iff x y) - (and (implies x y) - (implies y x))) - (equal (even1 x) - (if (zerop x) - (t) - (odd (_1- x)))) - (equal (countps- l pred) - (countps-loop l pred (zero))) - (equal (fact- i) - (fact-loop i 1)) - (equal (reverse- x) - (reverse-loop x (nil))) - (equal (divides x y) - (zerop (remainder y x))) - (equal (assume-true var alist) - (cons (cons var (t)) - alist)) - (equal (assume-false var alist) - (cons (cons var (f)) - alist)) - (equal (tautology-checker x) - (tautologyp (normalize x) - (nil))) - (equal (falsify x) - (falsify1 (normalize x) - (nil))) - (equal (prime x) - (and (not (zerop x)) - (not (equal x (add1 (zero)))) - (prime1 x (_1- x)))) - (equal (and p q) - (if p (if q (t) - (f)) - (f))) - (equal (or p q) - (if p (t) - (if q (t) - (f)))) - (equal (not p) - (if p (f) - (t))) - (equal (implies p q) - (if p (if q (t) - (f)) - (t))) - (equal (fix x) - (if (numberp x) - x - (zero))) - (equal (if (if a b c) - d e) - (if a (if b d e) - (if c d e))) - (equal (zerop x) - (or (equal x (zero)) - (not (numberp x)))) - (equal (plus (plus x y) - z) - (plus x (plus y z))) - (equal (equal (plus a b) - (zero)) - (and (zerop a) - (zerop b))) - (equal (difference x x) - (zero)) - (equal (equal (plus a b) - (plus a c)) - (equal (fix b) - (fix c))) - (equal (equal (zero) - (difference x y)) - (not (lessp y x))) - (equal (equal x (difference x y)) - (and (numberp x) - (or (equal x (zero)) - (zerop y)))) - (equal (meaning (plus-tree (append x y)) - a) - (plus (meaning (plus-tree x) - a) - (meaning (plus-tree y) - a))) - (equal (meaning (plus-tree (plus-fringe x)) - a) - (fix (meaning x a))) - (equal (append (append x y) - z) - (append x (append y z))) - (equal (reverse (append a b)) - (append (reverse b) - (reverse a))) - (equal (times x (plus y z)) - (plus (times x y) - (times x z))) - (equal (times (times x y) - z) - (times x (times y z))) - (equal (equal (times x y) - (zero)) - (or (zerop x) - (zerop y))) - (equal (exec (append x y) - pds envrn) - (exec y (exec x pds envrn) - envrn)) - (equal (mc-flatten x y) - (append (flatten x) - y)) - (equal (member x (append a b)) - (or (member x a) - (member x b))) - (equal (member x (reverse y)) - (member x y)) - (equal (length (reverse x)) - (length x)) - (equal (member a (intersect b c)) - (and (member a b) - (member a c))) - (equal (nth (zero) - i) - (zero)) - (equal (exp i (plus j k)) - (times (exp i j) - (exp i k))) - (equal (exp i (times j k)) - (exp (exp i j) - k)) - (equal (reverse-loop x y) - (append (reverse x) - y)) - (equal (reverse-loop x (nil)) - (reverse x)) - (equal (count-list z (sort-lp x y)) - (plus (count-list z x) - (count-list z y))) - (equal (equal (append a b) - (append a c)) - (equal b c)) - (equal (plus (remainder x y) - (times y (quotient x y))) - (fix x)) - (equal (power-eval (big-plus1 l i base) - base) - (plus (power-eval l base) - i)) - (equal (power-eval (big-plus x y i base) - base) - (plus i (plus (power-eval x base) - (power-eval y base)))) - (equal (remainder y 1) - (zero)) - (equal (lessp (remainder x y) - y) - (not (zerop y))) - (equal (remainder x x) - (zero)) - (equal (lessp (quotient i j) - i) - (and (not (zerop i)) - (or (zerop j) - (not (equal j 1))))) - (equal (lessp (remainder x y) - x) - (and (not (zerop y)) - (not (zerop x)) - (not (lessp x y)))) - (equal (power-eval (power-rep i base) - base) - (fix i)) - (equal (power-eval (big-plus (power-rep i base) - (power-rep j base) - (zero) - base) - base) - (plus i j)) - (equal (gcd x y) - (gcd y x)) - (equal (nth (append a b) - i) - (append (nth a i) - (nth b (difference i (length a))))) - (equal (difference (plus x y) - x) - (fix y)) - (equal (difference (plus y x) - x) - (fix y)) - (equal (difference (plus x y) - (plus x z)) - (difference y z)) - (equal (times x (difference c w)) - (difference (times c x) - (times w x))) - (equal (remainder (times x z) - z) - (zero)) - (equal (difference (plus b (plus a c)) - a) - (plus b c)) - (equal (difference (add1 (plus y z)) - z) - (add1 y)) - (equal (lessp (plus x y) - (plus x z)) - (lessp y z)) - (equal (lessp (times x z) - (times y z)) - (and (not (zerop z)) - (lessp x y))) - (equal (lessp y (plus x y)) - (not (zerop x))) - (equal (gcd (times x z) - (times y z)) - (times z (gcd x y))) - (equal (value (normalize x) - a) - (value x a)) - (equal (equal (flatten x) - (cons y (nil))) - (and (nlistp x) - (equal x y))) - (equal (listp (gopher x)) - (listp x)) - (equal (samefringe x y) - (equal (flatten x) - (flatten y))) - (equal (equal (greatest-factor x y) - (zero)) - (and (or (zerop y) - (equal y 1)) - (equal x (zero)))) - (equal (equal (greatest-factor x y) - 1) - (equal x 1)) - (equal (numberp (greatest-factor x y)) - (not (and (or (zerop y) - (equal y 1)) - (not (numberp x))))) - (equal (times-list (append x y)) - (times (times-list x) - (times-list y))) - (equal (prime-list (append x y)) - (and (prime-list x) - (prime-list y))) - (equal (equal z (times w z)) - (and (numberp z) - (or (equal z (zero)) - (equal w 1)))) - (equal (greatereqp x y) - (not (lessp x y))) - (equal (equal x (times x y)) - (or (equal x (zero)) - (and (numberp x) - (equal y 1)))) - (equal (remainder (times y x) - y) - (zero)) - (equal (equal (times a b) - 1) - (and (not (equal a (zero))) - (not (equal b (zero))) - (numberp a) - (numberp b) - (equal (_1- a) - (zero)) - (equal (_1- b) - (zero)))) - (equal (lessp (length (delete x l)) - (length l)) - (member x l)) - (equal (sort2 (delete x l)) - (delete x (sort2 l))) - (equal (dsort x) - (sort2 x)) - (equal (length (cons x1 - (cons x2 - (cons x3 (cons x4 - (cons x5 - (cons x6 x7))))))) - (plus 6 (length x7))) - (equal (difference (add1 (add1 x)) - 2) - (fix x)) - (equal (quotient (plus x (plus x y)) - 2) - (plus x (quotient y 2))) - (equal (sigma (zero) - i) - (quotient (times i (add1 i)) - 2)) - (equal (plus x (add1 y)) - (if (numberp y) - (add1 (plus x y)) - (add1 x))) - (equal (equal (difference x y) - (difference z y)) - (if (lessp x y) - (not (lessp y z)) - (if (lessp z y) - (not (lessp y x)) - (equal (fix x) - (fix z))))) - (equal (meaning (plus-tree (delete x y)) - a) - (if (member x y) - (difference (meaning (plus-tree y) - a) - (meaning x a)) - (meaning (plus-tree y) - a))) - (equal (times x (add1 y)) - (if (numberp y) - (plus x (times x y)) - (fix x))) - (equal (nth (nil) - i) - (if (zerop i) - (nil) - (zero))) - (equal (last (append a b)) - (if (listp b) - (last b) - (if (listp a) - (cons (car (last a)) - b) - b))) - (equal (equal (lessp x y) - z) - (if (lessp x y) - (equal (t) z) - (equal (f) z))) - (equal (assignment x (append a b)) - (if (assignedp x a) - (assignment x a) - (assignment x b))) - (equal (car (gopher x)) - (if (listp x) - (car (flatten x)) - (zero))) - (equal (flatten (cdr (gopher x))) - (if (listp x) - (cdr (flatten x)) - (cons (zero) - (nil)))) - (equal (quotient (times y x) - y) - (if (zerop y) - (zero) - (fix x))) - (equal (get j (set i val mem)) - (if (eqp j i) - val - (get j mem))))))) - - (define (add-lemma-lst lst) - (cond ((null? lst) - #t) - (else (add-lemma (car lst)) - (add-lemma-lst (cdr lst))))) - - (define (add-lemma term) - (cond ((and (pair? term) - (eq? (car term) - (quote equal)) - (pair? (cadr term))) - (put (car (cadr term)) - (quote lemmas) - (cons - (translate-term term) - (get (car (cadr term)) (quote lemmas))))) - (else (error #f "ADD-LEMMA did not like term: " term)))) - - ; Translates a term by replacing its constructor symbols by symbol-records. - - (define (translate-term term) - (cond ((not (pair? term)) - term) - (else (cons (symbol->symbol-record (car term)) - (translate-args (cdr term)))))) - - (define (translate-args lst) - (cond ((null? lst) - '()) - (else (cons (translate-term (car lst)) - (translate-args (cdr lst)))))) - - ; For debugging only, so the use of MAP does not change - ; the first-order character of the benchmark. - - (define (untranslate-term term) - (cond ((not (pair? term)) - term) - (else (cons (get-name (car term)) - (map untranslate-term (cdr term)))))) - - ; A symbol-record is represented as a vector with two fields: - ; the symbol (for debugging) and - ; the list of lemmas associated with the symbol. - - (define (put sym property value) - (put-lemmas! (symbol->symbol-record sym) value)) - - (define (get sym property) - (get-lemmas (symbol->symbol-record sym))) - - (define (symbol->symbol-record sym) - (let ((x (assq sym *symbol-records-alist*))) - (if x - (cdr x) - (let ((r (make-symbol-record sym))) - (set! *symbol-records-alist* - (cons (cons sym r) - *symbol-records-alist*)) - r)))) - - ; Association list of symbols and symbol-records. - - (define *symbol-records-alist* '()) - - ; A symbol-record is represented as a vector with two fields: - ; the symbol (for debugging) and - ; the list of lemmas associated with the symbol. - - (define (make-symbol-record sym) - (vector sym '())) - - (define (put-lemmas! symbol-record lemmas) - (vector-set! symbol-record 1 lemmas)) - - (define (get-lemmas symbol-record) - (vector-ref symbol-record 1)) - - (define (get-name symbol-record) - (vector-ref symbol-record 0)) - - (define (symbol-record-equal? r1 r2) - (eq? r1 r2)) - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - ; - ; The second phase. - ; - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (define (test alist term n) - (let ((term - (apply-subst - (translate-alist alist) - (translate-term - (do ((term term (list 'or term '(f))) - (n n (- n 1))) - ((zero? n) term)))))) - (tautp term))) - - (define (translate-alist alist) - (cond ((null? alist) - '()) - (else (cons (cons (caar alist) - (translate-term (cdar alist))) - (translate-alist (cdr alist)))))) - - (define (apply-subst alist term) - (cond ((not (pair? term)) - (let ((temp-temp (assq term alist))) - (if temp-temp - (cdr temp-temp) - term))) - (else (cons (car term) - (apply-subst-lst alist (cdr term)))))) - - (define (apply-subst-lst alist lst) - (cond ((null? lst) - '()) - (else (cons (apply-subst alist (car lst)) - (apply-subst-lst alist (cdr lst)))))) - - (define (tautp x) - (tautologyp (rewrite x) - '() '())) - - (define (tautologyp x true-lst false-lst) - (cond ((truep x true-lst) - #t) - ((falsep x false-lst) - #f) - ((not (pair? x)) - #f) - ((eq? (car x) if-constructor) - (cond ((truep (cadr x) - true-lst) - (tautologyp (caddr x) - true-lst false-lst)) - ((falsep (cadr x) - false-lst) - (tautologyp (cadddr x) - true-lst false-lst)) - (else (and (tautologyp (caddr x) - (cons (cadr x) - true-lst) - false-lst) - (tautologyp (cadddr x) - true-lst - (cons (cadr x) - false-lst)))))) - (else #f))) - - (define if-constructor '*) ; becomes (symbol->symbol-record 'if) - - (define rewrite-count 0) ; sanity check - - ; The next procedure is Henry Baker's sharing CONS, which avoids - ; allocation if the result is already in hand. - ; The REWRITE and REWRITE-ARGS procedures have been modified to - ; use SCONS instead of CONS. - - (define (scons x y original) - (if (and (eq? x (car original)) - (eq? y (cdr original))) - original - (cons x y))) - - (define (rewrite term) - (set! rewrite-count (+ rewrite-count 1)) - (cond ((not (pair? term)) - term) - (else (rewrite-with-lemmas (scons (car term) - (rewrite-args (cdr term)) - term) - (get-lemmas (car term)))))) - - (define (rewrite-args lst) - (cond ((null? lst) - '()) - (else (scons (rewrite (car lst)) - (rewrite-args (cdr lst)) - lst)))) - - (define (rewrite-with-lemmas term lst) - (cond ((null? lst) - term) - ((one-way-unify term (cadr (car lst))) - (rewrite (apply-subst unify-subst (caddr (car lst))))) - (else (rewrite-with-lemmas term (cdr lst))))) - - (define unify-subst '*) - - (define (one-way-unify term1 term2) - (begin (set! unify-subst '()) - (one-way-unify1 term1 term2))) - - (define (one-way-unify1 term1 term2) - (cond ((not (pair? term2)) - (let ((temp-temp (assq term2 unify-subst))) - (cond (temp-temp - (term-equal? term1 (cdr temp-temp))) - ((number? term2) ; This bug fix makes - (equal? term1 term2)) ; nboyer 10-25% slower! - (else - (set! unify-subst (cons (cons term2 term1) - unify-subst)) - #t)))) - ((not (pair? term1)) - #f) - ((eq? (car term1) - (car term2)) - (one-way-unify1-lst (cdr term1) - (cdr term2))) - (else #f))) - - (define (one-way-unify1-lst lst1 lst2) - (cond ((null? lst1) - (null? lst2)) - ((null? lst2) - #f) - ((one-way-unify1 (car lst1) - (car lst2)) - (one-way-unify1-lst (cdr lst1) - (cdr lst2))) - (else #f))) - - (define (falsep x lst) - (or (term-equal? x false-term) - (term-member? x lst))) - - (define (truep x lst) - (or (term-equal? x true-term) - (term-member? x lst))) - - (define false-term '*) ; becomes (translate-term '(f)) - (define true-term '*) ; becomes (translate-term '(t)) - - ; The next two procedures were in the original benchmark - ; but were never used. - - (define (trans-of-implies n) - (translate-term - (list (quote implies) - (trans-of-implies1 n) - (list (quote implies) - 0 n)))) - - (define (trans-of-implies1 n) - (cond ((equal? n 1) - (list (quote implies) - 0 1)) - (else (list (quote and) - (list (quote implies) - (- n 1) - n) - (trans-of-implies1 (- n 1)))))) - - ; Translated terms can be circular structures, which can't be - ; compared using Scheme's equal? and member procedures, so we - ; use these instead. - - (define (term-equal? x y) - (cond ((pair? x) - (and (pair? y) - (symbol-record-equal? (car x) (car y)) - (term-args-equal? (cdr x) (cdr y)))) - (else (equal? x y)))) - - (define (term-args-equal? lst1 lst2) - (cond ((null? lst1) - (null? lst2)) - ((null? lst2) - #f) - ((term-equal? (car lst1) (car lst2)) - (term-args-equal? (cdr lst1) (cdr lst2))) - (else #f))) - - (define (term-member? x lst) - (cond ((null? lst) - #f) - ((term-equal? x (car lst)) - #t) - (else (term-member? x (cdr lst))))) - - (set! setup-boyer - (lambda () - (set! *symbol-records-alist* '()) - (set! if-constructor (symbol->symbol-record 'if)) - (set! false-term (translate-term '(f))) - (set! true-term (translate-term '(t))) - (setup))) - - (set! test-boyer - (lambda (alist term n) - (set! rewrite-count 0) - (let ((answer (test alist term n))) -; (write rewrite-count) -; (display " rewrites") -; (newline) - (if answer - rewrite-count - #f))))) - -;;; The following code is appended to all benchmarks. - -;;; Given an integer and an object, returns the object -;;; without making it too easy for compilers to tell -;;; the object will be returned. - -(define (hide r x) - (call-with-values - (lambda () - (values (vector values (lambda (x) x)) - (if (< r 100) 0 1))) - (lambda (v i) - ((vector-ref v i) x)))) - -;;; Given the name of a benchmark, -;;; the number of times it should be executed, -;;; a thunk that runs the benchmark once, -;;; and a unary predicate that is true of the -;;; correct results the thunk may return, -;;; runs the benchmark for the number of specified iterations. - -(define (run-r7rs-benchmark name count thunk ok?) - - ;; Rounds to thousandths. - (define (rounded x) - (/ (round (* 1000 x)) 1000)) - - (display "Running ") - (display name) - (newline) - (flush-output-port) - (let* ((j/s (jiffies-per-second)) - (t0 (current-second)) - (j0 (current-jiffy))) - (let loop ((i 0) - (result (if #f #f))) - (cond ((< i count) - (loop (+ i 1) (thunk))) - ((ok? result) - (let* ((j1 (current-jiffy)) - (t1 (current-second)) - (jifs (- j1 j0)) - (secs (inexact (/ jifs j/s))) - (secs2 (rounded (- t1 t0)))) - (display "Elapsed time: ") - (write secs) - (display " seconds (") - (write secs2) - (display ") for ") - (display name) - (newline)) - result) - (else - (display "ERROR: returned incorrect result: ") - (write result) - (newline) - result))))) - -(main) From 1673fa9e50c9dcb7c44037ca25b88bf873e5bac6 Mon Sep 17 00:00:00 2001 From: justin Date: Sun, 17 Apr 2016 22:38:41 -0400 Subject: [PATCH 043/121] WIP on new example program --- TODO | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/TODO b/TODO index e49a9fda..f5603110 100644 --- a/TODO +++ b/TODO @@ -8,6 +8,11 @@ Tier 0: - FFI - want to create an example program (lib?) that does something interesting, like make a cURL request for that, will need to be able to include the appropriate C header(s), and link to the appropriate C libraries + - Program idea - it would be cool if we could interface with libpng. + then, extend game-of-life example with new libraries (as needed) and master + program that support output of each frame to a PNG file. then we can string + them all together as an animated gif and post that to the cyclone repo. + - Library support Import sets (importing libraries, section 5.2): From f3500b19620d3b9f3e6e9e6cc3afa7c6cba824aa Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 00:22:25 -0400 Subject: [PATCH 044/121] Initial file --- examples/game-of-life-png/Makefile | 5 + examples/game-of-life-png/write-png.c | 165 ++++++++++++++++++++++++++ 2 files changed, 170 insertions(+) create mode 100644 examples/game-of-life-png/Makefile create mode 100644 examples/game-of-life-png/write-png.c diff --git a/examples/game-of-life-png/Makefile b/examples/game-of-life-png/Makefile new file mode 100644 index 00000000..daf2df62 --- /dev/null +++ b/examples/game-of-life-png/Makefile @@ -0,0 +1,5 @@ +all: + gcc write-png.c -g -lpng + +clean: + rm -f a.out *.o *.png diff --git a/examples/game-of-life-png/write-png.c b/examples/game-of-life-png/write-png.c new file mode 100644 index 00000000..06fb2774 --- /dev/null +++ b/examples/game-of-life-png/write-png.c @@ -0,0 +1,165 @@ +// Based on example program from +// http://stackoverflow.com/q/1821806/101258 +#include +#include +#include +#include + +/* Pixels in this bitmap structure are stored as BGR. */ +typedef struct _RGBPixel { + uint8_t blue; + uint8_t green; + uint8_t red; +} RGBPixel; + +/* Structure for containing decompressed bitmaps. */ +typedef struct _RGBBitmap { + RGBPixel *pixels; + size_t width; + size_t height; + size_t bytewidth; + uint8_t bytes_per_pixel; +} RGBBitmap; + +/* Returns pixel of bitmap at given point. */ +//#define RGBPixelAtPoint(image, x, y) \ +// *(((image)->pixels) + (((image)->bytewidth * (y)) \ +// + ((x) * (image)->bytes_per_pixel))) +// +//#define RGBBufferAtPoint(image, x, y) \ +// (((image)->pixels) + (((image)->bytewidth * (y)) \ +// + ((x) * (image)->bytes_per_pixel))) +#define RGBPixelAtPoint(image, x, y) \ + *(((image)->pixels) + (((image)->width * (y)) \ + + ((x)))) + +#define RGBBufferAtPoint(image, x, y) \ + (((image)->pixels) + (((image)->width * (y)) \ + + ((x)))) + +/* Attempts to save PNG to file; returns 0 on success, non-zero on error. */ +int save_png_to_file(RGBBitmap *bitmap, const char *path) +{ + FILE *fp = fopen(path, "wb"); + png_structp png_ptr = NULL; + png_infop info_ptr = NULL; + size_t x, y; + png_uint_32 bytes_per_row; + png_byte **row_pointers = NULL; + + if (fp == NULL) return -1; + + /* Initialize the write struct. */ + png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); + if (png_ptr == NULL) { + fclose(fp); + return -1; + } + + /* Initialize the info struct. */ + info_ptr = png_create_info_struct(png_ptr); + if (info_ptr == NULL) { + png_destroy_write_struct(&png_ptr, NULL); + fclose(fp); + return -1; + } + + /* Set up error handling. */ + if (setjmp(png_jmpbuf(png_ptr))) { + png_destroy_write_struct(&png_ptr, &info_ptr); + fclose(fp); + return -1; + } + + /* Set image attributes. */ + png_set_IHDR(png_ptr, + info_ptr, + bitmap->width, + bitmap->height, + 8, + PNG_COLOR_TYPE_RGB, + PNG_INTERLACE_NONE, + PNG_COMPRESSION_TYPE_DEFAULT, + PNG_FILTER_TYPE_DEFAULT); + + /* Initialize rows of PNG. */ + bytes_per_row = bitmap->width * bitmap->bytes_per_pixel; + row_pointers = png_malloc(png_ptr, bitmap->height * sizeof(png_byte *)); + for (y = 0; y < bitmap->height; ++y) { + uint8_t *row = png_malloc(png_ptr, sizeof(uint8_t) * bytes_per_row); //bitmap->bytes_per_pixel * bitmap->width); + row_pointers[y] = (png_byte *)row; + for (x = 0; x < bitmap->width; ++x) { + RGBPixel color = RGBPixelAtPoint(bitmap, x, y); + *row++ = color.red; + *row++ = color.green; + *row++ = color.blue; + } + } + + /* Actually write the image data. */ + png_init_io(png_ptr, fp); + png_set_rows(png_ptr, info_ptr, row_pointers); + png_write_png(png_ptr, info_ptr, PNG_TRANSFORM_IDENTITY, NULL); + + /* Cleanup. */ + for (y = 0; y < bitmap->height; y++) { + png_free(png_ptr, row_pointers[y]); + } + png_free(png_ptr, row_pointers); + + /* Finish writing. */ + png_destroy_write_struct(&png_ptr, &info_ptr); + fclose(fp); + return 0; +} + +int main() +{ + const char path[] = "test.png"; + int status = 0, x, y; + RGBBitmap img; + RGBPixel *pixel; + + img.width = 100; + img.height = 100; + img.bytewidth = img.width; // ???? + img.bytes_per_pixel = 3; + img.pixels = calloc(1, sizeof(RGBPixel) * img.width * img.height); + + for (y = 0; y < img.height; y++) { + for (x = 0; x < img.height; x++) { + pixel = RGBBufferAtPoint(&img, x, y); + pixel->red = 255; + pixel->green = 255; + pixel->blue = 255; + } + } + pixel = RGBBufferAtPoint(&img, 50, 50); + pixel->red = 0; + pixel->green = 0; + pixel->blue = 255; + pixel = RGBBufferAtPoint(&img, 0, 0); + pixel->red = 0; + pixel->green = 0; + pixel->blue = 255; + pixel = RGBBufferAtPoint(&img, 99, 0); + pixel->red = 0; + pixel->green = 0; + pixel->blue = 255; + pixel = RGBBufferAtPoint(&img, 0, 99); + pixel->red = 0; + pixel->green = 0; + pixel->blue = 255; + pixel = RGBBufferAtPoint(&img, 99, 99); + pixel->red = 0; + pixel->green = 0; + pixel->blue = 255; + + status = save_png_to_file(&img, path); + if (!status){ + printf("Successfully saved %s\n", path); + } else { + printf("Unable to save %s\n", path); + } + return status; +} From e78eecbd50c2a5135da1cfc833ecb85bb0d90f29 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 03:23:51 -0400 Subject: [PATCH 045/121] Added helper functions --- examples/game-of-life-png/write-png.c | 65 +++++++++++---------------- 1 file changed, 25 insertions(+), 40 deletions(-) diff --git a/examples/game-of-life-png/write-png.c b/examples/game-of-life-png/write-png.c index 06fb2774..1ae5b746 100644 --- a/examples/game-of-life-png/write-png.c +++ b/examples/game-of-life-png/write-png.c @@ -17,18 +17,10 @@ typedef struct _RGBBitmap { RGBPixel *pixels; size_t width; size_t height; - size_t bytewidth; uint8_t bytes_per_pixel; } RGBBitmap; /* Returns pixel of bitmap at given point. */ -//#define RGBPixelAtPoint(image, x, y) \ -// *(((image)->pixels) + (((image)->bytewidth * (y)) \ -// + ((x) * (image)->bytes_per_pixel))) -// -//#define RGBBufferAtPoint(image, x, y) \ -// (((image)->pixels) + (((image)->bytewidth * (y)) \ -// + ((x) * (image)->bytes_per_pixel))) #define RGBPixelAtPoint(image, x, y) \ *(((image)->pixels) + (((image)->width * (y)) \ + ((x)))) @@ -86,7 +78,7 @@ int save_png_to_file(RGBBitmap *bitmap, const char *path) bytes_per_row = bitmap->width * bitmap->bytes_per_pixel; row_pointers = png_malloc(png_ptr, bitmap->height * sizeof(png_byte *)); for (y = 0; y < bitmap->height; ++y) { - uint8_t *row = png_malloc(png_ptr, sizeof(uint8_t) * bytes_per_row); //bitmap->bytes_per_pixel * bitmap->width); + uint8_t *row = png_malloc(png_ptr, sizeof(uint8_t) * bytes_per_row); row_pointers[y] = (png_byte *)row; for (x = 0; x < bitmap->width; ++x) { RGBPixel color = RGBPixelAtPoint(bitmap, x, y); @@ -113,47 +105,40 @@ int save_png_to_file(RGBBitmap *bitmap, const char *path) return 0; } +int bitmap_init(RGBBitmap *img, int width, int height) +{ + img->width = width; + img->height = height; + img->bytes_per_pixel = 3; + img->pixels = calloc(1, sizeof(RGBPixel) * img->width * img->height); + return 0; +} + +void bitmap_set(RGBBitmap *img, int x, int y, int r, int g, int b) +{ + RGBPixel *pixel = RGBBufferAtPoint(img, x, y); + pixel->red = r; + pixel->green = g; + pixel->blue = b; +} + int main() { const char path[] = "test.png"; int status = 0, x, y; RGBBitmap img; - RGBPixel *pixel; - - img.width = 100; - img.height = 100; - img.bytewidth = img.width; // ???? - img.bytes_per_pixel = 3; - img.pixels = calloc(1, sizeof(RGBPixel) * img.width * img.height); + bitmap_init(&img, 100, 100); for (y = 0; y < img.height; y++) { for (x = 0; x < img.height; x++) { - pixel = RGBBufferAtPoint(&img, x, y); - pixel->red = 255; - pixel->green = 255; - pixel->blue = 255; + bitmap_set(&img, x, y, 255, 255, 255); } } - pixel = RGBBufferAtPoint(&img, 50, 50); - pixel->red = 0; - pixel->green = 0; - pixel->blue = 255; - pixel = RGBBufferAtPoint(&img, 0, 0); - pixel->red = 0; - pixel->green = 0; - pixel->blue = 255; - pixel = RGBBufferAtPoint(&img, 99, 0); - pixel->red = 0; - pixel->green = 0; - pixel->blue = 255; - pixel = RGBBufferAtPoint(&img, 0, 99); - pixel->red = 0; - pixel->green = 0; - pixel->blue = 255; - pixel = RGBBufferAtPoint(&img, 99, 99); - pixel->red = 0; - pixel->green = 0; - pixel->blue = 255; + bitmap_set(&img, 50, 50, 0, 0, 255); + bitmap_set(&img, 0, 0, 0, 0, 255); + bitmap_set(&img, 99, 0, 0, 0, 255); + bitmap_set(&img, 0, 99, 0, 0, 255); + bitmap_set(&img, 99, 99, 0, 0, 255); status = save_png_to_file(&img, path); if (!status){ From 1910c435f59d4f183c1bcb8cf73f66d00c5d0a13 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 03:28:08 -0400 Subject: [PATCH 046/121] Added convert --- examples/game-of-life-png/Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/examples/game-of-life-png/Makefile b/examples/game-of-life-png/Makefile index daf2df62..9dafce6a 100644 --- a/examples/game-of-life-png/Makefile +++ b/examples/game-of-life-png/Makefile @@ -3,3 +3,7 @@ all: clean: rm -f a.out *.o *.png + +convert: + convert -resize 400x test.png out.png +# convert -delay 120 -loop 0 *.png animated.gif From 150c5d962eae9601c5cb18369046efa136e9e73c Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 03:47:29 -0400 Subject: [PATCH 047/121] Added header file --- examples/game-of-life-png/write-png.c | 36 ++++----------------------- examples/game-of-life-png/write-png.h | 36 +++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 31 deletions(-) create mode 100644 examples/game-of-life-png/write-png.h diff --git a/examples/game-of-life-png/write-png.c b/examples/game-of-life-png/write-png.c index 1ae5b746..c17bf9b4 100644 --- a/examples/game-of-life-png/write-png.c +++ b/examples/game-of-life-png/write-png.c @@ -1,36 +1,9 @@ // Based on example program from // http://stackoverflow.com/q/1821806/101258 -#include -#include -#include -#include - -/* Pixels in this bitmap structure are stored as BGR. */ -typedef struct _RGBPixel { - uint8_t blue; - uint8_t green; - uint8_t red; -} RGBPixel; - -/* Structure for containing decompressed bitmaps. */ -typedef struct _RGBBitmap { - RGBPixel *pixels; - size_t width; - size_t height; - uint8_t bytes_per_pixel; -} RGBBitmap; - -/* Returns pixel of bitmap at given point. */ -#define RGBPixelAtPoint(image, x, y) \ - *(((image)->pixels) + (((image)->width * (y)) \ - + ((x)))) - -#define RGBBufferAtPoint(image, x, y) \ - (((image)->pixels) + (((image)->width * (y)) \ - + ((x)))) +#include "write-png.h" /* Attempts to save PNG to file; returns 0 on success, non-zero on error. */ -int save_png_to_file(RGBBitmap *bitmap, const char *path) +int bitmap_save_to_png(RGBBitmap *bitmap, const char *path) { FILE *fp = fopen(path, "wb"); png_structp png_ptr = NULL; @@ -114,12 +87,13 @@ int bitmap_init(RGBBitmap *img, int width, int height) return 0; } -void bitmap_set(RGBBitmap *img, int x, int y, int r, int g, int b) +int bitmap_set(RGBBitmap *img, int x, int y, int r, int g, int b) { RGBPixel *pixel = RGBBufferAtPoint(img, x, y); pixel->red = r; pixel->green = g; pixel->blue = b; + return 0; } int main() @@ -140,7 +114,7 @@ int main() bitmap_set(&img, 0, 99, 0, 0, 255); bitmap_set(&img, 99, 99, 0, 0, 255); - status = save_png_to_file(&img, path); + status = bitmap_save_to_png(&img, path); if (!status){ printf("Successfully saved %s\n", path); } else { diff --git a/examples/game-of-life-png/write-png.h b/examples/game-of-life-png/write-png.h new file mode 100644 index 00000000..36879ee3 --- /dev/null +++ b/examples/game-of-life-png/write-png.h @@ -0,0 +1,36 @@ +#ifndef WRITE_PNG_H +#define WRITE_PNG_H + +#include +#include +#include +#include + +/* Pixels in this bitmap structure are stored as BGR. */ +typedef struct _RGBPixel { + uint8_t blue; + uint8_t green; + uint8_t red; +} RGBPixel; + +/* Structure for containing decompressed bitmaps. */ +typedef struct _RGBBitmap { + RGBPixel *pixels; + size_t width; + size_t height; + uint8_t bytes_per_pixel; +} RGBBitmap; + +/* Returns pixel of bitmap at given point. */ +#define RGBPixelAtPoint(image, x, y) \ + *(((image)->pixels) + (((image)->width * (y)) \ + + ((x)))) + +#define RGBBufferAtPoint(image, x, y) \ + (((image)->pixels) + (((image)->width * (y)) \ + + ((x)))) +int bitmap_init(RGBBitmap *img, int width, int height); +int bitmap_set(RGBBitmap *img, int x, int y, int r, int g, int b); +int bitmap_save_to_png(RGBBitmap *bitmap, const char *path); + +#endif /* WRITE_PNG_H */ From 7418ec72be49f8b9d6432bcba651597a7a1cc6f9 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 04:04:54 -0400 Subject: [PATCH 048/121] initial file --- examples/game-of-life-png/example/grid.sld | 35 +++++++++++++++ examples/game-of-life-png/example/life.sld | 51 ++++++++++++++++++++++ examples/game-of-life-png/life.scm | 35 +++++++++++++++ 3 files changed, 121 insertions(+) create mode 100644 examples/game-of-life-png/example/grid.sld create mode 100644 examples/game-of-life-png/example/life.sld create mode 100644 examples/game-of-life-png/life.scm diff --git a/examples/game-of-life-png/example/grid.sld b/examples/game-of-life-png/example/grid.sld new file mode 100644 index 00000000..cfefb242 --- /dev/null +++ b/examples/game-of-life-png/example/grid.sld @@ -0,0 +1,35 @@ +; Example from draft 6 of R7RS +(define-library (example grid) + (export make rows cols ref each + put!) ;(rename put! set!)) + (import (scheme base)) + (begin + ;; Create an NxM grid. + (define (make n m) + (let ((grid (make-vector n))) + (do ((i 0 (+ i 1))) + ((= i n) grid) + (let ((v (make-vector m #f))) + (vector-set! grid i v))))) + (define (rows grid) + (vector-length grid)) + (define (cols grid) + (vector-length (vector-ref grid 0))) + ;; Return #false if out of range. + (define (ref grid n m) + (and (< -1 n (rows grid)) + (< -1 m (cols grid)) + (vector-ref (vector-ref grid n) m))) + (define (put! grid n m v) + (define tmp (vector-ref grid n)) + (vector-set! + grid + n + (vector-set! tmp m v))) + ;(vector-set! (vector-ref grid n) m v)) + (define (each grid proc) + (do ((j 0 (+ j 1))) + ((= j (rows grid))) + (do ((k 0 (+ k 1))) + ((= k (cols grid))) + (proc j k (ref grid j k))))))) diff --git a/examples/game-of-life-png/example/life.sld b/examples/game-of-life-png/example/life.sld new file mode 100644 index 00000000..6df7a0c1 --- /dev/null +++ b/examples/game-of-life-png/example/life.sld @@ -0,0 +1,51 @@ +(define-library (example life) + (export life) + (import (scheme base) ;TODO: (except (scheme base) set!) + (scheme write) + (example grid)) + (begin + (define (life-count grid i j) + (define (count i j) + (if (ref grid i j) 1 0)) + (+ (count (- i 1) (- j 1)) + (count (- i 1) j) + (count (- i 1) (+ j 1)) + (count i (- j 1)) + (count i (+ j 1)) + (count (+ i 1) (- j 1)) + (count (+ i 1) j) + (count (+ i 1) (+ j 1)))) + (define (life-alive? grid i j) + (case (life-count grid i j) + ((3) #t) + ((2) (ref grid i j)) + (else #f))) + (define (clear-vt100) + (display + (string + (integer->char #x1B) + #\[ + #\H + (integer->char #x1B) + #\[ + #\J))) + (define (life-print grid) + (clear-vt100) + (each grid + (lambda (i j v) + (display (if v "*" " ")) + (if (= j (- (cols grid) 1)) + ;(when (= j (- (cols grid) 1)) + (newline))))) + (define (life grid iterations) + (do ((i 0 (+ i 1)) + (grid0 grid grid1) + (grid1 (make (rows grid) (cols grid)) + grid0)) + ((= i iterations)) + (each grid0 + (lambda (j k v) + (let ((a (life-alive? grid0 j k))) + (put! grid1 j k a)))) + ;(set! grid1 j k a)))) + (life-print grid1))))) diff --git a/examples/game-of-life-png/life.scm b/examples/game-of-life-png/life.scm new file mode 100644 index 00000000..93b8171b --- /dev/null +++ b/examples/game-of-life-png/life.scm @@ -0,0 +1,35 @@ +;;; +;;; Justin Ethier +;;; husk scheme +;;; +;;; The game of life example from r7rs. +;;; Main program +;;; +;;; To execute from the husk directory: +;;; +;;; > cd examples/game-of-life +;;; > huski life.scm +;;; +(import (scheme base) + (example life) + (example grid)) +;; TODO: +; (only (example life) life) +; (rename (prefix (example grid) grid-) +; (grid-make make-grid))) + +;; Initialize a grid with a glider. +;(define grid (make-grid 24 24)) +;(grid-put! grid 1 1 #t) +;(grid-put! grid 2 2 #t) +;(grid-put! grid 3 0 #t) +;(grid-put! grid 3 1 #t) +;(grid-put! grid 3 2 #t) +(define grid (make 24 24)) +(put! grid 1 1 #t) +(put! grid 2 2 #t) +(put! grid 3 0 #t) +(put! grid 3 1 #t) +(put! grid 3 2 #t) +;; Run for x iterations. +(life grid 80) From 45d87b6cb025731e9eaeb82855467fb587b520b7 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 04:05:02 -0400 Subject: [PATCH 049/121] Added scm files --- examples/game-of-life-png/Makefile | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/examples/game-of-life-png/Makefile b/examples/game-of-life-png/Makefile index 9dafce6a..d6554b52 100644 --- a/examples/game-of-life-png/Makefile +++ b/examples/game-of-life-png/Makefile @@ -1,8 +1,28 @@ -all: - gcc write-png.c -g -lpng +SCM_PROGRAM = life +SCM_LIBS = example/grid example/life + +SLD_FILES = $(addsuffix .sld, $(SCM_LIBS)) +SCM_FILE = $(addsuffix .scm, $(SCM_PROGRAM)) +META_FILES = $(addsuffix .meta, $(SCM_LIBS)) +GENC_FILES = $(addsuffix .c, $(SCM_LIBS)) +COBJECTS=$(SLD_FILES:.sld=.o) + +all: $(SCM_PROGRAM) write-png + +%.o: %.sld + cyclone $< + +$(SCM_PROGRAM): $(SCM_FILE) $(COBJECTS) + cyclone $< + +write-png: write-png.o + gcc -o write-png write-png.o -lpng + +write-png.o: write-png.c write-png.h + gcc -c write-png.c clean: - rm -f a.out *.o *.png + rm -f *.o $(SCM_PROGRAM).c $(SCM_PROGRAM) $(META_FILES) $(GENC_FILES) $(COBJECTS) write-png *.png convert: convert -resize 400x test.png out.png From baa2be0bcf86c435c999bbdcff2a6aa40d5ed12c Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Mon, 18 Apr 2016 22:07:57 -0400 Subject: [PATCH 050/121] Added opaque types --- include/cyclone/types.h | 10 ++++++++++ runtime.c | 6 +++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 70c2461b..808c45b5 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -197,6 +197,7 @@ typedef long tag_type; #define mutex_tag 19 #define cond_var_tag 20 #define bytevector_tag 21 +#define c_opaque_tag 22 #define nil NULL #define eq(x,y) (x == y) @@ -239,6 +240,15 @@ typedef struct {gc_header_type hdr; tag_type tag; object *pvar;} cvar_type; typedef cvar_type *cvar; #define make_cvar(n,v) cvar_type n; n.hdr.mark = gc_color_red; n.hdr.grayed = 0; n.tag = cvar_tag; n.pvar = v; +/* C Opaque type - a wrapper around a pointer of any type. + Note this requires application code to free any memory + before an object is collected by GC. */ +typedef struct {gc_header_type hdr; tag_type tag; void *ptr;} c_opaque_type; +typedef c_opaque_type *c_opaque; +#define make_c_opaque(var, ptr) c_opaque_type var; var.hdr.mark = gc_color_red; n.ndr.grayed = 0; n.tag = c_opaque_type; n.ptr = ptr; + +#define opaque_ptr(x) (((c_opaque)x)->ptr) + /* Define mutex type */ typedef struct {gc_header_type hdr; tag_type tag; pthread_mutex_t lock;} mutex_type; typedef mutex_type *mutex; diff --git a/runtime.c b/runtime.c index 80da55d5..9bbfe4b8 100644 --- a/runtime.c +++ b/runtime.c @@ -27,7 +27,7 @@ object Cyc_global_set(void *thd, object *glo, object value) /* Error checking section - type mismatch, num args, etc */ /* Type names to use for error messages */ -const char *tag_names[23] = { \ +const char *tag_names[24] = { \ "pair" \ , "symbol" \ , "" \ @@ -50,6 +50,7 @@ const char *tag_names[23] = { \ , "mutex" \ , "condition variable" \ , "bytevector" \ + , "opaque" \ , "Reserved for future use" }; void Cyc_invalid_type_error(void *data, int tag, object found) { @@ -565,6 +566,9 @@ object Cyc_display(object x, FILE *port) case cvar_tag: Cyc_display(Cyc_get_cvar(x), port); break; + case c_opaque_tag: + fprintf(port, "", opaque_ptr(x)); + break; case mutex_tag: fprintf(port, "", x); break; From 07eb9e7e2db259a976e9ab491286669fca9b1622 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Mon, 18 Apr 2016 22:52:44 -0400 Subject: [PATCH 051/121] WIP - c integration for png output --- examples/game-of-life-png/Makefile | 8 +-- examples/game-of-life-png/example/life.sld | 74 ++++++++++++++++------ examples/game-of-life-png/write-png.c | 52 +++++++-------- 3 files changed, 86 insertions(+), 48 deletions(-) diff --git a/examples/game-of-life-png/Makefile b/examples/game-of-life-png/Makefile index d6554b52..ac2e5160 100644 --- a/examples/game-of-life-png/Makefile +++ b/examples/game-of-life-png/Makefile @@ -7,16 +7,16 @@ META_FILES = $(addsuffix .meta, $(SCM_LIBS)) GENC_FILES = $(addsuffix .c, $(SCM_LIBS)) COBJECTS=$(SLD_FILES:.sld=.o) -all: $(SCM_PROGRAM) write-png +all: $(SCM_PROGRAM) #write-png %.o: %.sld cyclone $< -$(SCM_PROGRAM): $(SCM_FILE) $(COBJECTS) +$(SCM_PROGRAM): $(SCM_FILE) $(COBJECTS) write-png.o cyclone $< -write-png: write-png.o - gcc -o write-png write-png.o -lpng +#write-png: write-png.o +# gcc -o write-png write-png.o -lpng write-png.o: write-png.c write-png.h gcc -c write-png.c diff --git a/examples/game-of-life-png/example/life.sld b/examples/game-of-life-png/example/life.sld index 6df7a0c1..1a43dc80 100644 --- a/examples/game-of-life-png/example/life.sld +++ b/examples/game-of-life-png/example/life.sld @@ -20,23 +20,30 @@ ((3) #t) ((2) (ref grid i j)) (else #f))) - (define (clear-vt100) - (display - (string - (integer->char #x1B) - #\[ - #\H - (integer->char #x1B) - #\[ - #\J))) - (define (life-print grid) - (clear-vt100) - (each grid - (lambda (i j v) - (display (if v "*" " ")) - (if (= j (- (cols grid) 1)) - ;(when (= j (- (cols grid) 1)) - (newline))))) +; (define (clear-vt100) +; (display +; (string +; (integer->char #x1B) +; #\[ +; #\H +; (integer->char #x1B) +; #\[ +; #\J))) + (define (life-print grid iteration) + ;(clear-vt100) + (let ((img (png:init 100 100)) + (path (string-append "life-" (number->string iteration) ".png"))) + (each grid + (lambda (i j v) + ;(display (if v "*" " ")) + ;(when (= j (- (cols grid) 1)) + ; (newline)) + (if v + (png:set! i j 0 250 0)) + )) + (png:save img path) + (png:free img) + )) (define (life grid iterations) (do ((i 0 (+ i 1)) (grid0 grid grid1) @@ -48,4 +55,35 @@ (let ((a (life-alive? grid0 j k))) (put! grid1 j k a)))) ;(set! grid1 j k a)))) - (life-print grid1))))) + (life-print grid1 i))) + (define-c png:init + "(void *data, int argc, closure _, object width, object height)" + " RGBBitmap *img = malloc(sizeof(RGBBitmap)); + make_c_opaque(opq, (void *)img); + bitmap_init(img, (int)(unbox_number(width)), (int)(unbox_number(height))); + return_closcall1(data, k, &opq); + ") + (define-c png:free + "(void *data, int argc, closure _, object opq)" + " RGBBitmap *img = opaque_ptr(opq); + free(img->pixels); + free(img); + return_closcall1(data, k, boolean_t); + ") + (define-c png:set! + "(void *data, int argc, closure _, object opq, object x, object y, object r, object g, object b)" + " RGBBitmap *img = opaque_ptr(opq); + bitmap_set(img, + ((int)(unbox_number(x))), + ((int)(unbox_number(y))), + ((int)(unbox_number(r))), + ((int)(unbox_number(g))), + ((int)(unbox_number(b)))); + return_closcall1(data, k, boolean_t); ") + (define-c png:save + "(void *data, int argc, closure _, object opq, object path)" + " RGBBitmap *img = opaque_ptr(opq); + bitmap_save_to_png(img, string_str(path)); + return_closcall1(data, k, boolean_t); + ") +)) diff --git a/examples/game-of-life-png/write-png.c b/examples/game-of-life-png/write-png.c index c17bf9b4..59dadf99 100644 --- a/examples/game-of-life-png/write-png.c +++ b/examples/game-of-life-png/write-png.c @@ -96,29 +96,29 @@ int bitmap_set(RGBBitmap *img, int x, int y, int r, int g, int b) return 0; } -int main() -{ - const char path[] = "test.png"; - int status = 0, x, y; - RGBBitmap img; - - bitmap_init(&img, 100, 100); - for (y = 0; y < img.height; y++) { - for (x = 0; x < img.height; x++) { - bitmap_set(&img, x, y, 255, 255, 255); - } - } - bitmap_set(&img, 50, 50, 0, 0, 255); - bitmap_set(&img, 0, 0, 0, 0, 255); - bitmap_set(&img, 99, 0, 0, 0, 255); - bitmap_set(&img, 0, 99, 0, 0, 255); - bitmap_set(&img, 99, 99, 0, 0, 255); - - status = bitmap_save_to_png(&img, path); - if (!status){ - printf("Successfully saved %s\n", path); - } else { - printf("Unable to save %s\n", path); - } - return status; -} +//int main() +//{ +// const char path[] = "test.png"; +// int status = 0, x, y; +// RGBBitmap img; +// +// bitmap_init(&img, 100, 100); +// for (y = 0; y < img.height; y++) { +// for (x = 0; x < img.height; x++) { +// bitmap_set(&img, x, y, 255, 255, 255); +// } +// } +// bitmap_set(&img, 50, 50, 0, 0, 255); +// bitmap_set(&img, 0, 0, 0, 0, 255); +// bitmap_set(&img, 99, 0, 0, 0, 255); +// bitmap_set(&img, 0, 99, 0, 0, 255); +// bitmap_set(&img, 99, 99, 0, 0, 255); +// +// status = bitmap_save_to_png(&img, path); +// if (!status){ +// printf("Successfully saved %s\n", path); +// } else { +// printf("Unable to save %s\n", path); +// } +// return status; +//} From 224c81191305af30175a20826c1f6c5877371252 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 20:51:06 -0400 Subject: [PATCH 052/121] Fix macro --- include/cyclone/types.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 808c45b5..4159cdc6 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -245,7 +245,7 @@ typedef cvar_type *cvar; before an object is collected by GC. */ typedef struct {gc_header_type hdr; tag_type tag; void *ptr;} c_opaque_type; typedef c_opaque_type *c_opaque; -#define make_c_opaque(var, ptr) c_opaque_type var; var.hdr.mark = gc_color_red; n.ndr.grayed = 0; n.tag = c_opaque_type; n.ptr = ptr; +#define make_c_opaque(var, ptr) c_opaque_type var; var.hdr.mark = gc_color_red; var.ndr.grayed = 0; var.tag = c_opaque_type; var.ptr = ptr; #define opaque_ptr(x) (((c_opaque)x)->ptr) From 6714f0eb84cf48a8ab1a54fd49922cb409316075 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 20:59:10 -0400 Subject: [PATCH 053/121] Fixed typo --- include/cyclone/types.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 4159cdc6..c600c4aa 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -245,7 +245,7 @@ typedef cvar_type *cvar; before an object is collected by GC. */ typedef struct {gc_header_type hdr; tag_type tag; void *ptr;} c_opaque_type; typedef c_opaque_type *c_opaque; -#define make_c_opaque(var, ptr) c_opaque_type var; var.hdr.mark = gc_color_red; var.ndr.grayed = 0; var.tag = c_opaque_type; var.ptr = ptr; +#define make_c_opaque(var, ptr) c_opaque_type var; var.hdr.mark = gc_color_red; var.hdr.grayed = 0; var.tag = c_opaque_type; var.ptr = ptr; #define opaque_ptr(x) (((c_opaque)x)->ptr) From 40f9da2f2295f19fff646782e1f083795e706c1a Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 21:01:37 -0400 Subject: [PATCH 054/121] Fixed type/tag --- include/cyclone/types.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index c600c4aa..b5986226 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -245,7 +245,7 @@ typedef cvar_type *cvar; before an object is collected by GC. */ typedef struct {gc_header_type hdr; tag_type tag; void *ptr;} c_opaque_type; typedef c_opaque_type *c_opaque; -#define make_c_opaque(var, ptr) c_opaque_type var; var.hdr.mark = gc_color_red; var.hdr.grayed = 0; var.tag = c_opaque_type; var.ptr = ptr; +#define make_c_opaque(var, ptr) c_opaque_type var; var.hdr.mark = gc_color_red; var.hdr.grayed = 0; var.tag = c_opaque_tag; var.ptr = ptr; #define opaque_ptr(x) (((c_opaque)x)->ptr) From 0a189792f6e7b1eacf4f0c17d3cb409abfec8c29 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 21:14:11 -0400 Subject: [PATCH 055/121] Fix macro expansion issue --- include/cyclone/types.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index b5986226..19ed33e5 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -245,7 +245,7 @@ typedef cvar_type *cvar; before an object is collected by GC. */ typedef struct {gc_header_type hdr; tag_type tag; void *ptr;} c_opaque_type; typedef c_opaque_type *c_opaque; -#define make_c_opaque(var, ptr) c_opaque_type var; var.hdr.mark = gc_color_red; var.hdr.grayed = 0; var.tag = c_opaque_tag; var.ptr = ptr; +#define make_c_opaque(var, p) c_opaque_type var; var.hdr.mark = gc_color_red; var.hdr.grayed = 0; var.tag = c_opaque_tag; var.ptr = p; #define opaque_ptr(x) (((c_opaque)x)->ptr) From 56851b612901f4213043c0a5f1bba08a97695b2e Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 21:19:54 -0400 Subject: [PATCH 056/121] Bug fixes --- examples/game-of-life-png/example/life.sld | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/examples/game-of-life-png/example/life.sld b/examples/game-of-life-png/example/life.sld index 1a43dc80..518206dc 100644 --- a/examples/game-of-life-png/example/life.sld +++ b/examples/game-of-life-png/example/life.sld @@ -39,7 +39,7 @@ ;(when (= j (- (cols grid) 1)) ; (newline)) (if v - (png:set! i j 0 250 0)) + (png:set! img i j 0 250 0)) )) (png:save img path) (png:free img) @@ -57,22 +57,22 @@ ;(set! grid1 j k a)))) (life-print grid1 i))) (define-c png:init - "(void *data, int argc, closure _, object width, object height)" + "(void *data, int argc, closure _, object k, object width, object height)" " RGBBitmap *img = malloc(sizeof(RGBBitmap)); make_c_opaque(opq, (void *)img); bitmap_init(img, (int)(unbox_number(width)), (int)(unbox_number(height))); return_closcall1(data, k, &opq); ") (define-c png:free - "(void *data, int argc, closure _, object opq)" - " RGBBitmap *img = opaque_ptr(opq); + "(void *data, int argc, closure _, object k, object opq)" + " RGBBitmap *img = (RGBBitmap *)opaque_ptr(opq); free(img->pixels); free(img); return_closcall1(data, k, boolean_t); ") (define-c png:set! - "(void *data, int argc, closure _, object opq, object x, object y, object r, object g, object b)" - " RGBBitmap *img = opaque_ptr(opq); + "(void *data, int argc, closure _, object k, object opq, object x, object y, object r, object g, object b)" + " RGBBitmap *img = (RGBBitmap *)opaque_ptr(opq); bitmap_set(img, ((int)(unbox_number(x))), ((int)(unbox_number(y))), @@ -81,8 +81,8 @@ ((int)(unbox_number(b)))); return_closcall1(data, k, boolean_t); ") (define-c png:save - "(void *data, int argc, closure _, object opq, object path)" - " RGBBitmap *img = opaque_ptr(opq); + "(void *data, int argc, closure _, object k, object opq, object path)" + " RGBBitmap *img = (RGBBitmap *)opaque_ptr(opq); bitmap_save_to_png(img, string_str(path)); return_closcall1(data, k, boolean_t); ") From c90db3e683fcd185684b88f9599bfad2cf369275 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 21:59:00 -0400 Subject: [PATCH 057/121] Added debug directive --- examples/game-of-life-png/Makefile | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/examples/game-of-life-png/Makefile b/examples/game-of-life-png/Makefile index ac2e5160..cb1a38e6 100644 --- a/examples/game-of-life-png/Makefile +++ b/examples/game-of-life-png/Makefile @@ -27,3 +27,10 @@ clean: convert: convert -resize 400x test.png out.png # convert -delay 120 -loop 0 *.png animated.gif + +# A temporary directive to build the life program using GCC directly +# For now, need to manually add "#include "../write-png.h"" to example/life.c to get it to build +debug: + gcc example/life.c -g -c -o example/life.o + gcc life.c -g -c -o life.o + gcc life.o /usr/local/share/cyclone/scheme/base.o example/grid.o /usr/local/share/cyclone/scheme/write.o example/life.o write-png.o -pthread -lcyclone -lck -lm -lpng -g -o life From af76a131168e33804f42059585145952267408ea Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 22:00:39 -0400 Subject: [PATCH 058/121] Add opaque types to minor GC --- runtime.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/runtime.c b/runtime.c index 9bbfe4b8..ed238a24 100644 --- a/runtime.c +++ b/runtime.c @@ -2833,6 +2833,7 @@ char *gc_move(char *obj, gc_thread_data *thd, int *alloci, int *heap_grown) { } case forward_tag: return (char *)forward(obj); + case c_opaque_tag: break; case eof_tag: break; case primitive_tag: break; case boolean_tag: break; @@ -2966,6 +2967,7 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje case cvar_tag: break; // These types are not heap-allocated + case c_opaque_tag: case eof_tag: case primitive_tag: case symbol_tag: From 7815cebd5ad63720b3c9b3b29d3164066349d5a5 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 22:11:31 -0400 Subject: [PATCH 059/121] GC for opaques --- gc.c | 8 ++++++++ runtime.c | 7 +++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/gc.c b/gc.c index 6f58fdd6..170c6438 100644 --- a/gc.c +++ b/gc.c @@ -347,6 +347,13 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) hp->pvar = ((cvar_type *) obj)->pvar; return (char *)hp; } + case c_opaque_tag: { + c_opaque_type *hp = dest; + mark(hp) = thd->gc_alloc_color; + type_of(hp) = c_opaque_tag; + hp->ptr = ((c_opaque_type *) obj)->ptr; + return (char *)hp; + } case mutex_tag: { mutex_type *hp = dest; mark(hp) = thd->gc_alloc_color; @@ -527,6 +534,7 @@ size_t gc_allocated_bytes(object obj, gc_free_list *q, gc_free_list *r) if (t == double_tag) return gc_heap_align(sizeof(double_type)); if (t == port_tag) return gc_heap_align(sizeof(port_type)); if (t == cvar_tag) return gc_heap_align(sizeof(cvar_type)); + if (t == c_opaque_tag) return gc_heap_align(sizeof(c_opaque_type)); if (t == mutex_tag) return gc_heap_align(sizeof(mutex_type)); if (t == cond_var_tag) return gc_heap_align(sizeof(cond_var_type)); diff --git a/runtime.c b/runtime.c index ed238a24..2375e799 100644 --- a/runtime.c +++ b/runtime.c @@ -2831,9 +2831,12 @@ char *gc_move(char *obj, gc_thread_data *thd, int *alloci, int *heap_grown) { cvar_type *hp = gc_alloc(Cyc_heap, sizeof(cvar_type), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } + case c_opaque_tag: { + c_opaque_type *hp = gc_alloc(Cyc_heap, sizeof(c_opaque_type), obj, thd, heap_grown); + return gc_fixup_moved_obj(thd, alloci, obj, hp); + } case forward_tag: return (char *)forward(obj); - case c_opaque_tag: break; case eof_tag: break; case primitive_tag: break; case boolean_tag: break; @@ -2965,9 +2968,9 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje case double_tag: case port_tag: case cvar_tag: + case c_opaque_tag: break; // These types are not heap-allocated - case c_opaque_tag: case eof_tag: case primitive_tag: case symbol_tag: From 41bd27ca1b2bb9b139fcbf9560d307695259cf59 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 22:23:23 -0400 Subject: [PATCH 060/121] Add conversion --- examples/game-of-life-png/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/game-of-life-png/Makefile b/examples/game-of-life-png/Makefile index cb1a38e6..d134cc8e 100644 --- a/examples/game-of-life-png/Makefile +++ b/examples/game-of-life-png/Makefile @@ -25,8 +25,8 @@ clean: rm -f *.o $(SCM_PROGRAM).c $(SCM_PROGRAM) $(META_FILES) $(GENC_FILES) $(COBJECTS) write-png *.png convert: - convert -resize 400x test.png out.png -# convert -delay 120 -loop 0 *.png animated.gif + convert -resize 400x *.png + convert -delay 10 -loop 0 *.png animated.gif # A temporary directive to build the life program using GCC directly # For now, need to manually add "#include "../write-png.h"" to example/life.c to get it to build From 4edf38aa25fc7ca83510013e4c47ab56478a7671 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 22:23:33 -0400 Subject: [PATCH 061/121] Cleanup image output --- examples/game-of-life-png/example/life.sld | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/examples/game-of-life-png/example/life.sld b/examples/game-of-life-png/example/life.sld index 518206dc..d1a0f84f 100644 --- a/examples/game-of-life-png/example/life.sld +++ b/examples/game-of-life-png/example/life.sld @@ -31,8 +31,12 @@ ; #\J))) (define (life-print grid iteration) ;(clear-vt100) - (let ((img (png:init 100 100)) - (path (string-append "life-" (number->string iteration) ".png"))) + (let ((img (png:init (cols grid) (rows grid))) + (path (string-append + "life-" + (if (< iteration 10) "0" "") + (number->string iteration) + ".png"))) (each grid (lambda (i j v) ;(display (if v "*" " ")) From da7baa0fbfa68a04a11d89b60eb9ad37b23e1cdd Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 22:33:05 -0400 Subject: [PATCH 062/121] Added convert util --- examples/game-of-life-png/Makefile | 6 +++--- examples/game-of-life-png/convert.sh | 10 ++++++++++ 2 files changed, 13 insertions(+), 3 deletions(-) create mode 100755 examples/game-of-life-png/convert.sh diff --git a/examples/game-of-life-png/Makefile b/examples/game-of-life-png/Makefile index d134cc8e..01dda57e 100644 --- a/examples/game-of-life-png/Makefile +++ b/examples/game-of-life-png/Makefile @@ -22,11 +22,11 @@ write-png.o: write-png.c write-png.h gcc -c write-png.c clean: - rm -f *.o $(SCM_PROGRAM).c $(SCM_PROGRAM) $(META_FILES) $(GENC_FILES) $(COBJECTS) write-png *.png + rm -f *.o $(SCM_PROGRAM).c $(SCM_PROGRAM) $(META_FILES) $(GENC_FILES) $(COBJECTS) write-png *.png *.gif + rm -rf tmp convert: - convert -resize 400x *.png - convert -delay 10 -loop 0 *.png animated.gif + ./convert.sh # A temporary directive to build the life program using GCC directly # For now, need to manually add "#include "../write-png.h"" to example/life.c to get it to build diff --git a/examples/game-of-life-png/convert.sh b/examples/game-of-life-png/convert.sh new file mode 100755 index 00000000..95533fae --- /dev/null +++ b/examples/game-of-life-png/convert.sh @@ -0,0 +1,10 @@ +#!/bin/bash +rm -rf tmp +mkdir tmp +for f in `find . -name "*.png"` +do + convert -resize 100x $f tmp/$f.resize.png +done +cd tmp +convert -delay 10 -loop 0 *.png animated.gif + From f0e45111e435db110ac6ff3c273b439c85bd323c Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 22:37:13 -0400 Subject: [PATCH 063/121] Added bitmap_fill --- examples/game-of-life-png/write-png.c | 12 ++++++++++++ examples/game-of-life-png/write-png.h | 1 + 2 files changed, 13 insertions(+) diff --git a/examples/game-of-life-png/write-png.c b/examples/game-of-life-png/write-png.c index 59dadf99..cc24c21e 100644 --- a/examples/game-of-life-png/write-png.c +++ b/examples/game-of-life-png/write-png.c @@ -96,6 +96,18 @@ int bitmap_set(RGBBitmap *img, int x, int y, int r, int g, int b) return 0; } +void bitmap_fill(RGBBitmap *img, int r, int g, int b) +{ + int x, y; + // TODO: could use pointers directly or even memcpy + // to make this faster + for (y = 0; y < img->height; y++) { + for (x = 0; x < img->height; x++) { + bitmap_set(img, x, y, r, g, b); + } + } +} + //int main() //{ // const char path[] = "test.png"; diff --git a/examples/game-of-life-png/write-png.h b/examples/game-of-life-png/write-png.h index 36879ee3..4bc53859 100644 --- a/examples/game-of-life-png/write-png.h +++ b/examples/game-of-life-png/write-png.h @@ -32,5 +32,6 @@ typedef struct _RGBBitmap { int bitmap_init(RGBBitmap *img, int width, int height); int bitmap_set(RGBBitmap *img, int x, int y, int r, int g, int b); int bitmap_save_to_png(RGBBitmap *bitmap, const char *path); +void bitmap_fill(RGBBitmap *img, int r, int g, int b); #endif /* WRITE_PNG_H */ From c594cdadbed70bc64274a84b804579412be4a06b Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 23:28:40 -0400 Subject: [PATCH 064/121] Added include-c-header --- examples/game-of-life-png/example/life.sld | 1 + scheme/cyclone/libraries.sld | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/examples/game-of-life-png/example/life.sld b/examples/game-of-life-png/example/life.sld index d1a0f84f..85b58c38 100644 --- a/examples/game-of-life-png/example/life.sld +++ b/examples/game-of-life-png/example/life.sld @@ -1,4 +1,5 @@ (define-library (example life) + (include-c-header "../write-png.h") (export life) (import (scheme base) ;TODO: (except (scheme base) set!) (scheme write) diff --git a/scheme/cyclone/libraries.sld b/scheme/cyclone/libraries.sld index a642026d..93d192e8 100644 --- a/scheme/cyclone/libraries.sld +++ b/scheme/cyclone/libraries.sld @@ -30,6 +30,7 @@ lib:imports lib:body lib:includes + lib:include-c-headers lib:import->filename lib:import->metalist lib:import->path @@ -115,6 +116,15 @@ (tagged-list? 'include code)) (cddr ast)))) +(define (lib:include-c-headers ast) + (map + (lambda (inc-lst) + (cadr inc-lst)) + (filter + (lambda (code) + (tagged-list? 'include-c-header code)) + (cddr ast)))) + ;; TODO: include-ci, cond-expand (define (lib:atom->string atom) From ea37de65f72068cacd4647ff0e031cf11bd1f626 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 23:38:48 -0400 Subject: [PATCH 065/121] Read c headers included by a library --- cyclone.scm | 6 ++++++ scheme/cyclone/cgen.sld | 1 + 2 files changed, 7 insertions(+) diff --git a/cyclone.scm b/cyclone.scm index 62257d65..afe68920 100644 --- a/cyclone.scm +++ b/cyclone.scm @@ -52,6 +52,7 @@ (define lib-name '()) (define lib-exports '()) (define lib-renamed-exports '()) + (define c-headers '()) (emit *c-file-header-comment*) ; Guarantee placement at top of C file @@ -63,6 +64,7 @@ (let ((includes (lib:includes (car input-program)))) (set! program? #f) (set! lib-name (lib:name (car input-program))) + (set! c-headers (lib:include-c-headers (car input-program))) (set! lib-exports (cons (lib:name->symbol lib-name) @@ -262,6 +264,9 @@ (trace:error "DEBUG, existing program") (exit 0)) + (trace:info "---------------- C headers: ") + (trace:info c-headers) + (trace:info "---------------- C code:") (mta:code-gen input-program program? @@ -269,6 +274,7 @@ lib-exports imported-vars module-globals + c-headers lib-deps src-file) (return '())))) ;; No codes to return diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index bbe577c2..b3e9be5e 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -1370,6 +1370,7 @@ lib-exports imported-globals globals + c-headers required-libs src-file) (set! *global-syms* (append globals (lib:idb:ids imported-globals))) From 61f42ef849734af44ff51463df2556489e5486ee Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 00:04:00 -0400 Subject: [PATCH 066/121] Output C headers --- examples/game-of-life-png/example/life.sld | 1 + scheme/cyclone/cgen.sld | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/examples/game-of-life-png/example/life.sld b/examples/game-of-life-png/example/life.sld index 85b58c38..1ea9b98d 100644 --- a/examples/game-of-life-png/example/life.sld +++ b/examples/game-of-life-png/example/life.sld @@ -1,5 +1,6 @@ (define-library (example life) (include-c-header "../write-png.h") + ;Or, if you want angle brackets: (include-c-header "") (export life) (import (scheme base) ;TODO: (except (scheme base) set!) (scheme write) diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index b3e9be5e..ac3c8f10 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -1412,6 +1412,16 @@ (foldr string-append "" (reverse compiled-program-lst))) (emit-c-arity-macros 0) + (for-each + (lambda (h) + (cond + ((and (string? h) + (> (string-length h) 0) + (equal? (string-ref h 0) #\<)) + (emit* "#include " h "")) + (else + (emit* "#include \"" h "\"")))) + c-headers) (emit "#include \"cyclone/types.h\"") ;; Globals defined in this module From 9f163aa8b373e87dc7631a19c9cf84ced610f7ac Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 00:05:44 -0400 Subject: [PATCH 067/121] Removed obsolete lines --- examples/game-of-life-png/Makefile | 2 -- 1 file changed, 2 deletions(-) diff --git a/examples/game-of-life-png/Makefile b/examples/game-of-life-png/Makefile index 01dda57e..a47467ea 100644 --- a/examples/game-of-life-png/Makefile +++ b/examples/game-of-life-png/Makefile @@ -29,8 +29,6 @@ convert: ./convert.sh # A temporary directive to build the life program using GCC directly -# For now, need to manually add "#include "../write-png.h"" to example/life.c to get it to build debug: - gcc example/life.c -g -c -o example/life.o gcc life.c -g -c -o life.o gcc life.o /usr/local/share/cyclone/scheme/base.o example/grid.o /usr/local/share/cyclone/scheme/write.o example/life.o write-png.o -pthread -lcyclone -lck -lm -lpng -g -o life From dbcac2640292ad8e04c88aba48a9e6e5f6014e59 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 00:06:43 -0400 Subject: [PATCH 068/121] Removed dead code --- examples/game-of-life-png/example/life.sld | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/examples/game-of-life-png/example/life.sld b/examples/game-of-life-png/example/life.sld index 1ea9b98d..acedcf7f 100644 --- a/examples/game-of-life-png/example/life.sld +++ b/examples/game-of-life-png/example/life.sld @@ -22,17 +22,7 @@ ((3) #t) ((2) (ref grid i j)) (else #f))) -; (define (clear-vt100) -; (display -; (string -; (integer->char #x1B) -; #\[ -; #\H -; (integer->char #x1B) -; #\[ -; #\J))) (define (life-print grid iteration) - ;(clear-vt100) (let ((img (png:init (cols grid) (rows grid))) (path (string-append "life-" @@ -41,9 +31,6 @@ ".png"))) (each grid (lambda (i j v) - ;(display (if v "*" " ")) - ;(when (= j (- (cols grid) 1)) - ; (newline)) (if v (png:set! img i j 0 250 0)) )) From d2c8224444f5167071c0b730c803313f326b8701 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 02:47:05 -0400 Subject: [PATCH 069/121] Refactoring --- docs/Writing-the-Cyclone-Scheme-Compiler.md | 2 +- include/cyclone/runtime.h | 6 +- include/cyclone/types.h | 4 +- runtime.c | 90 ++++++++++----------- scheme/cyclone/cgen.sld | 8 +- scheme/cyclone/transforms.sld | 4 +- scheme/process-context.sld | 2 +- 7 files changed, 58 insertions(+), 58 deletions(-) diff --git a/docs/Writing-the-Cyclone-Scheme-Compiler.md b/docs/Writing-the-Cyclone-Scheme-Compiler.md index 60458de8..07ec3b7f 100644 --- a/docs/Writing-the-Cyclone-Scheme-Compiler.md +++ b/docs/Writing-the-Cyclone-Scheme-Compiler.md @@ -85,7 +85,7 @@ After GC is finished, the C stack pointer is reset using [`longjmp`](http://man7 Here is a snippet demonstrating how C functions may be written using Baker's approach: object Cyc_make_vector(object cont, object len, object fill) { - object v = nil; + object v = NULL; int i; Cyc_check_int(len); diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index 9b8106ae..ae80e1b8 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -22,7 +22,7 @@ #define Cyc_check_type(data, fnc_test, tag, obj) { \ if (eq(boolean_f, fnc_test(obj))) Cyc_invalid_type_error(data, tag, obj); } -#define Cyc_check_cons_or_nil(d,obj) { if (!nullp(obj)) { Cyc_check_cons(d,obj); }} +#define Cyc_check_cons_or_null(d,obj) { if (obj != NULL) { Cyc_check_cons(d,obj); }} #define Cyc_check_cons(d,obj) Cyc_check_type(d,Cyc_is_cons, cons_tag, obj); #define Cyc_check_num(d,obj) Cyc_check_type(d,Cyc_is_number, integer_tag, obj); #define Cyc_check_int(d,obj) Cyc_check_type(d,Cyc_is_integer, integer_tag, obj); @@ -62,7 +62,7 @@ object Cyc_global_set(void *thd, object *glo, object value); args and the number of provided ones, and pass the difference as 'count' */ #define load_varargs(var, arg_var, count) \ - list var = (count > 0) ? alloca(sizeof(cons_type)*count) : nil; \ + list var = (count > 0) ? alloca(sizeof(cons_type)*count) : NULL; \ { \ int i; \ object tmp; \ @@ -79,7 +79,7 @@ object Cyc_global_set(void *thd, object *glo, object value); var[i].hdr.grayed = 0; \ var[i].tag = cons_tag; \ var[i].cons_car = tmp; \ - var[i].cons_cdr = (i == (count-1)) ? nil : &var[i + 1]; \ + var[i].cons_cdr = (i == (count-1)) ? NULL : &var[i + 1]; \ } \ va_end(va); \ } \ diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 19ed33e5..c23bff79 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -272,7 +272,7 @@ typedef symbol_type *symbol; #define symbol_plist(x) (((symbol_type *) x)->plist) #define defsymbol(name) \ -static object quote_##name = nil; +static object quote_##name = NULL; /* Define numeric types */ typedef struct {gc_header_type hdr; tag_type tag; int value; int padding;} integer_type; @@ -382,7 +382,7 @@ typedef closure0_type *macro; #define mclosure1(c,f,a) closure1_type c; c.hdr.mark = gc_color_red; c.hdr.grayed = 0; c.tag = closure1_tag; \ c.fn = f; c.num_args = -1; c.elt1 = a; -#define make_cell(n,a) make_cons(n,a,nil); +#define make_cell(n,a) make_cons(n,a,NULL); /* Primitive types */ typedef struct {gc_header_type hdr; tag_type tag; const char *pname; function_type fn;} primitive_type; diff --git a/runtime.c b/runtime.c index 2375e799..d364143c 100644 --- a/runtime.c +++ b/runtime.c @@ -100,11 +100,11 @@ static gc_heap_root *Cyc_heap; long no_gcs = 0; /* Count the number of GC's. */ long no_major_gcs = 0; /* Count the number of GC's. */ -object Cyc_global_variables = nil; +object Cyc_global_variables = NULL; int _cyc_argc = 0; char **_cyc_argv = NULL; -static symbol_type __EOF = {{0}, eof_tag, "", nil}; // symbol_type in lieu of custom type +static symbol_type __EOF = {{0}, eof_tag, "", NULL}; // symbol_type in lieu of custom type const object Cyc_EOF = &__EOF; static ck_hs_t symbol_table; static int symbol_table_size = 65536; @@ -200,7 +200,7 @@ static boolean_type f_boolean = {{0}, boolean_tag, "f"}; const object boolean_t = &t_boolean; const object boolean_f = &f_boolean; -static symbol_type Cyc_void_symbol = {{0}, symbol_tag, "", nil}; +static symbol_type Cyc_void_symbol = {{0}, symbol_tag, "", NULL}; const object quote_void = &Cyc_void_symbol; /* Stack Traces */ @@ -251,7 +251,7 @@ char *_strdup (const char *s) { } object find_symbol_by_name(const char *name) { - symbol_type tmp = {{0}, symbol_tag, name, nil}; + symbol_type tmp = {{0}, symbol_tag, name, NULL}; object result = set_get(&symbol_table, &tmp); //if (result) { // printf("found symbol %s\n", symbol_pname(result)); @@ -273,7 +273,7 @@ object add_symbol(symbol_type *psym) { } object add_symbol_by_name(const char *name) { - symbol_type sym = {{0}, symbol_tag, _strdup(name), nil}; + symbol_type sym = {{0}, symbol_tag, _strdup(name), NULL}; symbol_type *psym = malloc(sizeof(symbol_type)); memcpy(psym, &sym, sizeof(symbol_type)); return add_symbol(psym); @@ -291,7 +291,7 @@ object find_or_add_symbol(const char *name){ /* END symbol table */ /* Global table */ -list global_table = nil; +list global_table = NULL; void add_global(object *glo) { // It would probably be more efficient to allocate @@ -353,13 +353,13 @@ void clear_mutations(void *data) { free(l); l = next; } - thd->mutations = nil; + thd->mutations = NULL; } /* END mutation table */ /* Runtime globals */ -object Cyc_glo_call_cc = nil; -object Cyc_glo_eval_from_c = nil; +object Cyc_glo_call_cc = NULL; +object Cyc_glo_eval_from_c = NULL; /* Exception handler */ object Cyc_default_exception_handler(void *data, int argc, closure _, object err) { @@ -381,7 +381,7 @@ object Cyc_default_exception_handler(void *data, int argc, closure _, object err fprintf(stderr, "\n"); //raise(SIGINT); // break into debugger, unix only exit(1); - return nil; + return NULL; } object Cyc_current_exception_handler(void *data) { @@ -395,21 +395,21 @@ object Cyc_current_exception_handler(void *data) { /* Raise an exception from the runtime code */ void Cyc_rt_raise(void *data, object err) { - make_cons(c2, err, nil); + make_cons(c2, err, NULL); make_cons(c1, boolean_f, &c2); - make_cons(c0, &c1, nil); - apply(data, nil, Cyc_current_exception_handler(data), &c0); + make_cons(c0, &c1, NULL); + apply(data, NULL, Cyc_current_exception_handler(data), &c0); // Should never get here fprintf(stderr, "Internal error in Cyc_rt_raise\n"); exit(1); } void Cyc_rt_raise2(void *data, const char *msg, object err) { make_string(s, msg); - make_cons(c3, err, nil); + make_cons(c3, err, NULL); make_cons(c2, &s, &c3); make_cons(c1, boolean_f, &c2); - make_cons(c0, &c1, nil); - apply(data, nil, Cyc_current_exception_handler(data), &c0); + make_cons(c0, &c1, NULL); + apply(data, NULL, Cyc_current_exception_handler(data), &c0); // Should never get here fprintf(stderr, "Internal error in Cyc_rt_raise2\n"); exit(1); @@ -539,7 +539,7 @@ object Cyc_display_va_list(int argc, object x, va_list ap) { return Cyc_display(x, fp);} object Cyc_display(object x, FILE *port) -{object tmp = nil; +{object tmp = NULL; object has_cycle = boolean_f; int i = 0; if (nullp(x)) {fprintf(port, "()"); return quote_void;} @@ -676,7 +676,7 @@ object Cyc_write_va_list(int argc, object x, va_list ap) { return Cyc_write(x, fp);} static object _Cyc_write(object x, FILE *port) -{object tmp = nil; +{object tmp = NULL; object has_cycle = boolean_f; int i = 0; if (nullp(x)) {fprintf(port, "()"); return quote_void;} @@ -739,12 +739,12 @@ object Cyc_write_char(void *data, object c, object port) // TODO: should not be a predicate, may end up moving these to Scheme code object memberp(void *data, object x, list l) -{Cyc_check_cons_or_nil(data, l); +{Cyc_check_cons_or_null(data, l); for (; !nullp(l); l = cdr(l)) if (boolean_f != equalp(x,car(l))) return boolean_t; return boolean_f;} object memqp(void *data, object x, list l) -{Cyc_check_cons_or_nil(data, l); +{Cyc_check_cons_or_null(data, l); for (; !nullp(l); l = cdr(l)) if (eq(x,car(l))) return boolean_t; return boolean_f;} @@ -757,7 +757,7 @@ object get(object x, object i) for (; !nullp(plist); plist = cdr(plistd)) {plistd = cdr(plist); if (eq(car(plist),i)) return car(plistd);} - return nil; + return NULL; } object equalp(object x, object y) @@ -839,7 +839,7 @@ int FUNC_OP(void *data, object x, object y) { \ result = (double_value(x)) OP (double_value(y)); \ } else { \ make_string(s, "Bad argument type"); \ - make_cons(c1, y, nil); \ + make_cons(c1, y, NULL); \ make_cons(c0, &s, &c1); \ Cyc_rt_raise(data, &c0); \ } \ @@ -1083,7 +1083,7 @@ char *int_to_binary(char *b, int x) } object Cyc_number2string2(void *data, object cont, int argc, object n, ...) { - object base = nil; + object base = NULL; int base_num = 10, val; char buffer[1024]; va_list ap; @@ -1155,7 +1155,7 @@ object Cyc_list2string(void *data, object cont, object lst){ int i = 0; object len; - Cyc_check_cons_or_nil(data, lst); + Cyc_check_cons_or_null(data, lst); len = Cyc_length(data, lst); // Inefficient, walks whole list buf = alloca(sizeof(char) * (obj_obj2int(len) + 1)); @@ -1172,7 +1172,7 @@ object Cyc_list2string(void *data, object cont, object lst){ object Cyc_string2number2_(void *data, object cont, int argc, object str, ...) { - object base = nil; + object base = NULL; int base_num, result; va_list ap; va_start(ap, str); @@ -1421,7 +1421,7 @@ object Cyc_installation_dir(void *data, object cont, object type) { */ object Cyc_command_line_arguments(void *data, object cont) { int i; - object lis = nil; + object lis = NULL; for (i = _cyc_argc; i > 1; i--) { // skip program name object ps = alloca(sizeof(string_type)); object pl = alloca(sizeof(cons_type)); @@ -1439,7 +1439,7 @@ object Cyc_command_line_arguments(void *data, object cont) { object Cyc_make_vector(void *data, object cont, int argc, object len, ...) { - object v = nil; + object v = NULL; object fill = boolean_f; int i, ulen; va_list ap; @@ -1484,7 +1484,7 @@ object Cyc_make_vector(void *data, object cont, int argc, object len, ...) { } object Cyc_make_bytevector(void *data, object cont, int argc, object len, ...) { - object bv = nil; + object bv = NULL; object fill; int i, length, fill_val; va_list ap; @@ -1719,12 +1719,12 @@ object Cyc_bytevector_length(void *data, object bv) { Cyc_rt_raise_msg(data, "bytevector-length - invalid parameter, expected bytevector\n"); } object Cyc_list2vector(void *data, object cont, object l) { - object v = nil; + object v = NULL; object len; object lst = l; int i = 0; - Cyc_check_cons_or_nil(data, l); + Cyc_check_cons_or_null(data, l); len = Cyc_length(data, l); v = alloca(sizeof(vector_type)); ((vector)v)->hdr.mark = gc_color_red; @@ -1770,7 +1770,7 @@ void Cyc_halt(env) closure env; { object __halt(object obj) { Cyc_halt(obj); - return nil; + return NULL; } #define declare_num_op(FUNC, FUNC_OP, FUNC_APPLY, OP, NO_ARG, ONE_ARG, DIV) \ @@ -1799,7 +1799,7 @@ object FUNC_OP(void *data, common_type *x, object y) { \ x->double_t.value = x->double_t.value OP ((double_type *)y)->value; \ } else { \ make_string(s, "Bad argument type"); \ - make_cons(c1, y, nil); \ + make_cons(c1, y, NULL); \ make_cons(c0, &s, &c1); \ Cyc_rt_raise(data, &c0); \ } \ @@ -1851,7 +1851,7 @@ object Cyc_div_op(void *data, common_type *x, object y) { x->double_t.value = x->double_t.value / ((double_type *)y)->value; } else { make_string(s, "Bad argument type"); - make_cons(c1, y, nil); + make_cons(c1, y, NULL); make_cons(c0, &s, &c1); Cyc_rt_raise(data, &c0); } @@ -1910,7 +1910,7 @@ object Cyc_num_op_va_list(void *data, int argc, object (fn_op(void *, common_typ buf->double_t.value = ((double_type *)n)->value; } else { make_string(s, "Bad argument type"); - make_cons(c1, n, nil); + make_cons(c1, n, NULL); make_cons(c0, &s, &c1); Cyc_rt_raise(data, &c0); } @@ -2064,7 +2064,7 @@ object Cyc_io_read_line(void *data, object cont, object port) { buf[i++] = c; } - return nil; + return NULL; } object Cyc_io_peek_char(void *data, object cont, object port) { @@ -2364,7 +2364,7 @@ void _Cyc_91set_91cvar_67(void *data, object cont, object args) { /* Note we cannot use _exit (per convention) because it is reserved by C */ void _cyc_exit(void *data, object cont, object args) { if(nullp(args)) - __halt(nil); + __halt(NULL); __halt(car(args)); } void __75halt(void *data, object cont, object args) { @@ -2585,7 +2585,7 @@ object apply(void *data, object cont, object func, object args){ } // Causes problems... - //Cyc_check_cons_or_nil(args); + //Cyc_check_cons_or_null(args); switch(type_of(func)) { case primitive_tag: @@ -2622,17 +2622,17 @@ object apply(void *data, object cont, object func, object args){ make_cons(c, func, args); //printf("JAE DEBUG, sending to eval: "); //Cyc_display(&c, stderr); - ((closure)Cyc_glo_eval_from_c)->fn(data, 2, Cyc_glo_eval_from_c, cont, &c, nil); + ((closure)Cyc_glo_eval_from_c)->fn(data, 2, Cyc_glo_eval_from_c, cont, &c, NULL); // TODO: would be better to compare directly against symbols here, // but need a way of looking them up ahead of time. // maybe a libinit() or such is required. } else if (strncmp(((symbol)fobj)->pname, "primitive", 10) == 0) { make_cons(c, cadr(func), args); - ((closure)Cyc_glo_eval_from_c)->fn(data, 3, Cyc_glo_eval_from_c, cont, &c, nil); + ((closure)Cyc_glo_eval_from_c)->fn(data, 3, Cyc_glo_eval_from_c, cont, &c, NULL); } else if (strncmp(((symbol)fobj)->pname, "procedure", 10) == 0) { make_cons(c, func, args); - ((closure)Cyc_glo_eval_from_c)->fn(data, 3, Cyc_glo_eval_from_c, cont, &c, nil); + ((closure)Cyc_glo_eval_from_c)->fn(data, 3, Cyc_glo_eval_from_c, cont, &c, NULL); } else { make_cons(c, func, args); Cyc_rt_raise2(data, "Unable to evaluate: ", &c); @@ -2643,7 +2643,7 @@ object apply(void *data, object cont, object func, object args){ printf("Invalid object type %ld\n", type_of(func)); exit(1); } - return nil; // Never reached + return NULL; // Never reached } // Version of apply meant to be called from within compiled code @@ -2661,7 +2661,7 @@ void Cyc_apply(void *data, int argc, closure cont, object prim, ...){ args[i].hdr.grayed = 0; args[i].tag = cons_tag; args[i].cons_car = tmp; - args[i].cons_cdr = (i == (argc-1)) ? nil : &args[i + 1]; + args[i].cons_cdr = (i == (argc-1)) ? NULL : &args[i + 1]; } //printf("DEBUG applying primitive to "); //Cyc_display((object)&args[0]); @@ -2671,7 +2671,7 @@ void Cyc_apply(void *data, int argc, closure cont, object prim, ...){ apply(data, cont, prim, (argc > 0) ? (object)&args[0] - : nil); + : NULL); } // END apply @@ -2694,7 +2694,7 @@ void Cyc_apply_from_buf(void *data, int argc, object prim, object *buf) { args[i - 1].hdr.grayed = 0; args[i - 1].tag = cons_tag; args[i - 1].cons_car = buf[i]; - args[i - 1].cons_cdr = (i == (argc-1)) ? nil : &args[i]; + args[i - 1].cons_cdr = (i == (argc-1)) ? NULL : &args[i]; } apply(data, cont, prim, (object)&args[0]); @@ -2860,7 +2860,7 @@ object Cyc_trigger_minor_gc(void *data, object cont) { gc_thread_data* thd = (gc_thread_data *)data; thd->gc_args[0] = boolean_t; GC(data, cont, thd->gc_args, 1); - return nil; + return NULL; } // Do a minor GC diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index ac3c8f10..6f57231a 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -282,7 +282,7 @@ ;; this is experimental and probably needs refinement ;; trace - trace information. presently a pair containing: ;; * source file -;; * function name (or nil if none) +;; * function name (or NULL if none) (define (c-compile-exp exp append-preamble cont trace) (cond ; Core forms: @@ -329,7 +329,7 @@ (lambda (args) (cond ((null? args) - (c-code "nil")) + (c-code "NULL")) ((not (pair? args)) (c-compile-const args)) (else @@ -443,7 +443,7 @@ (define (c-compile-const exp) (cond ((null? exp) - (c-code "nil")) + (c-code "NULL")) ((pair? exp) (c-compile-scalars exp)) ((vector? exp) @@ -1429,7 +1429,7 @@ (lambda (global) (emits "object ") (emits (cgen:mangle-global (car global))) - (emits " = nil;\n")) + (emits " = NULL;\n")) *globals*) ;; Globals defined by another module (for-each diff --git a/scheme/cyclone/transforms.sld b/scheme/cyclone/transforms.sld index 304cd611..71cbab1d 100644 --- a/scheme/cyclone/transforms.sld +++ b/scheme/cyclone/transforms.sld @@ -786,7 +786,7 @@ (cond ;; TODO: could check for a define-syntax here and load into memory ;; if found. would then want to continue expanding. may need to -;; return some value such as #t or nil as a placeholder, since the +;; return some value such as #t or NULL as a placeholder, since the ;; define-syntax form would not be carried forward in the compiled code ((define-syntax? exp) ;; TODO: not good enough, should do error checking, and make sure list is big enough for cadr ;(trace:info `(define-syntax ,exp)) @@ -917,7 +917,7 @@ ;; handled by the existing CPS conversion. ((or ;; TODO: the following line may not be good enough, a global assigned to another - ;; global may still be init'd to nil if the order is incorrect in the "top level" + ;; global may still be init'd to NULL if the order is incorrect in the "top level" ;; initialization code. (symbol? (car (define->exp (car top-lvl)))) ;; TODO: put these at the end of top-lvl??? (and (list? (car (define->exp (car top-lvl)))) diff --git a/scheme/process-context.sld b/scheme/process-context.sld index f838dbe9..49d0dbef 100644 --- a/scheme/process-context.sld +++ b/scheme/process-context.sld @@ -20,7 +20,7 @@ "(void *data, int argc, closure _, object k)" ;; TODO: consolidate with Cyc_command_line_arguments from runtime.c " int i; - object lis = nil; + object lis = NULL; for (i = _cyc_argc; i > 0; i--) { object ps = alloca(sizeof(string_type)); object pl = alloca(sizeof(cons_type)); From 79c7cbed97394d8da82efc6b8054bdd2249f94f4 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 03:02:03 -0400 Subject: [PATCH 070/121] Refactoring --- include/cyclone/runtime.h | 2 +- runtime.c | 116 +++++++++++++++++++------------------- 2 files changed, 59 insertions(+), 59 deletions(-) diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index ae80e1b8..bf5ec239 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -237,7 +237,7 @@ object Cyc_num_op_va_list(void *data, int argc, object (fn_op(void *, common_typ int equal(object,object); list assq(void *,object,list); list assoc(void *,object x, list l); -object get(object,object); +//object get(object,object); object equalp(object,object); object memberp(void *,object,list); object memqp(void *,object,list); diff --git a/runtime.c b/runtime.c index d364143c..833a62e5 100644 --- a/runtime.c +++ b/runtime.c @@ -303,7 +303,7 @@ void add_global(object *glo) { void debug_dump_globals() { list l = global_table; - for(; !nullp(l); l = cdr(l)){ + for(; l != NULL; l = cdr(l)){ cvar_type *c = (cvar_type *)car(l); //gc_mark(h, *(c->pvar)); // Mark actual object the global points to printf("DEBUG %p ", c->pvar); @@ -348,7 +348,7 @@ void add_mutation(void *data, object var, int index, object value){ void clear_mutations(void *data) { gc_thread_data *thd = (gc_thread_data *)data; list l = thd->mutations, next; - while (!nullp(l)) { + while (l != NULL) { next = cdr(l); free(l); l = next; @@ -365,12 +365,12 @@ object Cyc_glo_eval_from_c = NULL; object Cyc_default_exception_handler(void *data, int argc, closure _, object err) { fprintf(stderr, "Error: "); - if (nullp(err) || is_value_type(err) || type_of(err) != cons_tag) { + if ((err == NULL) || is_value_type(err) || type_of(err) != cons_tag) { Cyc_display(err, stderr); } else { // Error is list of form (type arg1 ... argn) err = cdr(err); // skip type field - for (; !nullp(err); err = cdr(err)){ // output with no enclosing parens + for (; (err != NULL); err = cdr(err)){ // output with no enclosing parens Cyc_display(car(err), stderr); fprintf(stderr, " "); } @@ -386,7 +386,7 @@ object Cyc_default_exception_handler(void *data, int argc, closure _, object err object Cyc_current_exception_handler(void *data) { gc_thread_data *thd = (gc_thread_data *)data; - if (nullp(thd->exception_handler_stack)) { + if (thd->exception_handler_stack == NULL) { return primitive_Cyc_91default_91exception_91handler; } else { return car(thd->exception_handler_stack); @@ -422,8 +422,8 @@ void Cyc_rt_raise_msg(void *data, const char *err) { int equal(x, y) object x, y; { - if (nullp(x)) return nullp(y); - if (nullp(y)) return nullp(x); + if (x == NULL) return (y == NULL); + if (y == NULL) return (x == NULL); if (obj_is_char(x)) return obj_is_char(y) && x == y; if (obj_is_int(x)) return (obj_is_int(y) && x == y) || (is_object_type(y) && @@ -480,16 +480,16 @@ object Cyc_set_cvar(object var, object value) { object Cyc_has_cycle(object lst) { object slow_lst, fast_lst; - if (nullp(lst) || is_value_type(lst) || + if ((lst == NULL) || is_value_type(lst) || (is_object_type(lst) && type_of(lst) != cons_tag)) { return (boolean_f); } slow_lst = lst; fast_lst = cdr(lst); while(1) { - if (nullp(fast_lst)) return boolean_f; + if ((fast_lst == NULL)) return boolean_f; if (Cyc_is_cons(fast_lst) == boolean_f) return boolean_f; - if (nullp(cdr(fast_lst))) return boolean_f; + if ((cdr(fast_lst)) == NULL) return boolean_f; if (Cyc_is_cons(cdr(fast_lst)) == boolean_f) return boolean_f; if (is_object_type(car(slow_lst)) && boolean_f == Cyc_is_boolean(car(slow_lst)) && // Avoid expected dupes @@ -542,7 +542,7 @@ object Cyc_display(object x, FILE *port) {object tmp = NULL; object has_cycle = boolean_f; int i = 0; - if (nullp(x)) {fprintf(port, "()"); return quote_void;} + if (x == NULL) {fprintf(port, "()"); return quote_void;} if (obj_is_char(x)) {fprintf(port, "%c", obj_obj2char(x)); return quote_void;} if (obj_is_int(x)) { fprintf(port, "%ld", obj_obj2int(x)); return quote_void; } switch (type_of(x)) @@ -679,7 +679,7 @@ static object _Cyc_write(object x, FILE *port) {object tmp = NULL; object has_cycle = boolean_f; int i = 0; - if (nullp(x)) {fprintf(port, "()"); return quote_void;} + if (x == NULL) {fprintf(port, "()"); return quote_void;} if (obj_is_char(x)) {fprintf(port, "#\\%c", obj_obj2char(x)); return quote_void;} if (obj_is_int(x)) {Cyc_display(x, port); return quote_void;} switch (type_of(x)) @@ -740,32 +740,32 @@ object Cyc_write_char(void *data, object c, object port) // TODO: should not be a predicate, may end up moving these to Scheme code object memberp(void *data, object x, list l) {Cyc_check_cons_or_null(data, l); - for (; !nullp(l); l = cdr(l)) if (boolean_f != equalp(x,car(l))) return boolean_t; + for (; l != NULL; l = cdr(l)) if (boolean_f != equalp(x,car(l))) return boolean_t; return boolean_f;} object memqp(void *data, object x, list l) {Cyc_check_cons_or_null(data, l); - for (; !nullp(l); l = cdr(l)) if (eq(x,car(l))) return boolean_t; + for (; l != NULL; l = cdr(l)) if (eq(x,car(l))) return boolean_t; return boolean_f;} -object get(object x, object i) -{ - object plist, plistd; - if (nullp(x)) return x; - if (type_of(x)!=symbol_tag) {printf("get: bad x=%ld\n",((closure)x)->tag); exit(0);} - plist = symbol_plist(x); - for (; !nullp(plist); plist = cdr(plistd)) - {plistd = cdr(plist); - if (eq(car(plist),i)) return car(plistd);} - return NULL; -} +//object get(object x, object i) +//{ +// object plist, plistd; +// if (x == NULL) return x; +// if (type_of(x)!=symbol_tag) {printf("get: bad x=%ld\n",((closure)x)->tag); exit(0);} +// plist = symbol_plist(x); +// for (; (plist != NULL); plist = cdr(plistd)) +// {plistd = cdr(plist); +// if (eq(car(plist),i)) return car(plistd);} +// return NULL; +//} object equalp(object x, object y) { for (; ; x = cdr(x), y = cdr(y)) { if (equal(x,y)) return boolean_t; if (is_value_type(x) || is_value_type(y) || - nullp(x) || nullp(y) || + (x == NULL) || (y == NULL) || type_of(x)!=cons_tag || type_of(y)!=cons_tag) return boolean_f; if (boolean_f == equalp(car(x),car(y))) return boolean_f; } @@ -773,8 +773,8 @@ object equalp(object x, object y) list assq(void *data, object x, list l) { - if (nullp(l) || is_value_type(l) || type_of(l) != cons_tag) return boolean_f; - for (; !nullp(l); l = cdr(l)) { + if ((l == NULL) || is_value_type(l) || type_of(l) != cons_tag) return boolean_f; + for (; (l != NULL); l = cdr(l)) { list la = car(l); Cyc_check_cons(data, la); if (eq(x,car(la))) return la; @@ -784,8 +784,8 @@ list assq(void *data, object x, list l) list assoc(void *data, object x, list l) { - if (nullp(l) || is_value_type(l) || type_of(l) != cons_tag) return boolean_f; - for (; !nullp(l); l = cdr(l)){ + if ((l == NULL) || is_value_type(l) || type_of(l) != cons_tag) return boolean_f; + for (; (l != NULL); l = cdr(l)){ list la = car(l); Cyc_check_cons(data, la); if (boolean_f != equalp(x,car(la))) return la; @@ -869,7 +869,7 @@ declare_num_cmp(Cyc_num_gte, Cyc_num_gte_op, dispatch_num_gte, >=); declare_num_cmp(Cyc_num_lte, Cyc_num_lte_op, dispatch_num_lte, <=); object Cyc_is_boolean(object o){ - if (!nullp(o) && + if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == boolean_tag && (eq(boolean_f, o) || eq(boolean_t, o))) @@ -877,17 +877,17 @@ object Cyc_is_boolean(object o){ return boolean_f;} object Cyc_is_cons(object o){ - if (!nullp(o) && !is_value_type(o) && ((list)o)->tag == cons_tag) + if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == cons_tag) return boolean_t; return boolean_f;} object Cyc_is_null(object o){ - if (nullp(o)) + if (o == NULL) return boolean_t; return boolean_f;} object Cyc_is_number(object o){ - if (!nullp(o) && (obj_is_int(o) || + if ((o != NULL) && (obj_is_int(o) || (!is_value_type(o) && (type_of(o) == integer_tag || type_of(o) == double_tag)))) return boolean_t; return boolean_f;} @@ -896,43 +896,43 @@ object Cyc_is_real(object o){ return Cyc_is_number(o);} object Cyc_is_integer(object o){ - if (!nullp(o) && (obj_is_int(o) || + if ((o != NULL) && (obj_is_int(o) || (!is_value_type(o) && type_of(o) == integer_tag))) return boolean_t; return boolean_f;} object Cyc_is_symbol(object o){ - if (!nullp(o) && !is_value_type(o) && ((list)o)->tag == symbol_tag) + if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == symbol_tag) return boolean_t; return boolean_f;} object Cyc_is_vector(object o){ - if (!nullp(o) && !is_value_type(o) && ((list)o)->tag == vector_tag) + if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == vector_tag) return boolean_t; return boolean_f;} object Cyc_is_bytevector(object o){ - if (!nullp(o) && !is_value_type(o) && ((list)o)->tag == bytevector_tag) + if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == bytevector_tag) return boolean_t; return boolean_f;} object Cyc_is_port(object o){ - if (!nullp(o) && !is_value_type(o) && ((list)o)->tag == port_tag) + if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == port_tag) return boolean_t; return boolean_f;} object Cyc_is_mutex(object o){ - if (!nullp(o) && !is_value_type(o) && ((list)o)->tag == mutex_tag) + if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == mutex_tag) return boolean_t; return boolean_f;} object Cyc_is_cond_var(object o){ - if (!nullp(o) && !is_value_type(o) && ((list)o)->tag == cond_var_tag) + if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == cond_var_tag) return boolean_t; return boolean_f;} object Cyc_is_string(object o){ - if (!nullp(o) && !is_value_type(o) && ((list)o)->tag == string_tag) + if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == string_tag) return boolean_t; return boolean_f;} @@ -943,7 +943,7 @@ object Cyc_is_char(object o){ object Cyc_is_procedure(void *data, object o) { int tag; - if (!nullp(o) && !is_value_type(o)) { + if ((o != NULL) && !is_value_type(o)) { tag = type_of(o); if (tag == closure0_tag || tag == closure1_tag || @@ -965,7 +965,7 @@ object Cyc_is_procedure(void *data, object o) { object Cyc_is_macro(object o) { int tag; - if (!nullp(o) && !is_value_type(o)) { + if ((o != NULL) && !is_value_type(o)) { tag = type_of(o); if (tag == macro_tag) { return boolean_t; @@ -975,12 +975,12 @@ object Cyc_is_macro(object o) { } object Cyc_is_eof_object(object o) { - if (!nullp(o) && !is_value_type(o) && type_of(o) == eof_tag) + if ((o != NULL) && !is_value_type(o) && type_of(o) == eof_tag) return boolean_t; return boolean_f;} object Cyc_is_cvar(object o) { - if (!nullp(o) && !is_value_type(o) && type_of(o) == cvar_tag) + if ((o != NULL) && !is_value_type(o) && type_of(o) == cvar_tag) return boolean_t; return boolean_f;} @@ -1040,7 +1040,7 @@ object Cyc_vector_ref(void *data, object v, object k) { integer_type Cyc_length_as_object(void *data, object l){ make_int(len, 0); - while(!nullp(l)){ + while((l != NULL)){ if (is_value_type(l) || ((list)l)->tag != cons_tag){ Cyc_rt_raise_msg(data, "length - invalid parameter, expected list\n"); } @@ -1051,7 +1051,7 @@ integer_type Cyc_length_as_object(void *data, object l){ } object Cyc_vector_length(void *data, object v) { - if (!nullp(v) && !is_value_type(v) && ((list)v)->tag == vector_tag) { + if ((v != NULL) && !is_value_type(v) && ((list)v)->tag == vector_tag) { return obj_int2obj(((vector)v)->num_elt); } Cyc_rt_raise_msg(data, "vector-length - invalid parameter, expected vector\n"); } @@ -1059,7 +1059,7 @@ object Cyc_vector_length(void *data, object v) { object Cyc_length(void *data, object l){ int len = 0; - while(!nullp(l)){ + while((l != NULL)){ if (is_value_type(l) || ((list)l)->tag != cons_tag){ Cyc_rt_raise_msg(data, "length - invalid parameter, expected list\n"); } @@ -1159,7 +1159,7 @@ object Cyc_list2string(void *data, object cont, object lst){ len = Cyc_length(data, lst); // Inefficient, walks whole list buf = alloca(sizeof(char) * (obj_obj2int(len) + 1)); - while(!nullp(lst)){ + while((lst != NULL)){ buf[i++] = obj_obj2char(car(lst)); lst = cdr(lst); } @@ -1713,7 +1713,7 @@ object Cyc_bytevector_u8_set(void *data, object bv, object k, object b) { } object Cyc_bytevector_length(void *data, object bv) { - if (!nullp(bv) && !is_value_type(bv) && ((list)bv)->tag == bytevector_tag) { + if ((bv != NULL) && !is_value_type(bv) && ((list)bv)->tag == bytevector_tag) { return obj_int2obj(((bytevector)bv)->len); } Cyc_rt_raise_msg(data, "bytevector-length - invalid parameter, expected bytevector\n"); } @@ -1735,7 +1735,7 @@ object Cyc_list2vector(void *data, object cont, object l) { (((vector)v)->num_elt > 0) ? (object *)alloca(sizeof(object) * ((vector)v)->num_elt) : NULL; - while(!nullp(lst)) { + while((lst != NULL)) { ((vector)v)->elts[i++] = car(lst); lst = cdr(lst); } @@ -1743,7 +1743,7 @@ object Cyc_list2vector(void *data, object cont, object l) { } object Cyc_system(object cmd) { - if (nullp(cmd) || is_value_type(cmd) || type_of(cmd) != string_tag) { + if ((cmd == NULL) || is_value_type(cmd) || type_of(cmd) != string_tag) { return obj_int2obj(-1); } return obj_int2obj(system(((string_type *)cmd)->str)); @@ -2363,7 +2363,7 @@ void _Cyc_91set_91cvar_67(void *data, object cont, object args) { printf("not implemented\n"); exit(1); } /* Note we cannot use _exit (per convention) because it is reserved by C */ void _cyc_exit(void *data, object cont, object args) { - if(nullp(args)) + if(args == NULL) __halt(NULL); __halt(car(args)); } @@ -2735,10 +2735,10 @@ void gc_mark_globals() // Marking it ensures all glos are marked { list l = global_table; - for(; !nullp(l); l = cdr(l)){ + for(; l != NULL; l = cdr(l)){ cvar_type *c = (cvar_type *)car(l); object glo = *(c->pvar); - if (!nullp(glo)) { + if (glo != NULL) { #if GC_DEBUG_VERBOSE fprintf(stderr, "global pvar %p\n", glo); #endif @@ -2897,7 +2897,7 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje // Transport mutations { list l; - for (l = ((gc_thread_data *)data)->mutations; !nullp(l); l = cdr(l)) { + for (l = ((gc_thread_data *)data)->mutations; l != NULL; l = cdr(l)) { object o = car(l); if (is_value_type(o)) { // Can happen if a vector element was already @@ -2927,7 +2927,7 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje gc_move2heap(Cyc_global_variables); // Internal global used by the runtime { list l = global_table; - for(; !nullp(l); l = cdr(l)){ + for(; l != NULL; l = cdr(l)){ cvar_type *c = (cvar_type *)car(l); gc_move2heap(*(c->pvar)); // Transport underlying global, not the pvar } From 2ee4cd05b27fabea8b5476f27fb6243a6210a60d Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 03:18:51 -0400 Subject: [PATCH 071/121] Refactoring --- include/cyclone/types.h | 49 ++++++++++++++++++++--------------------- runtime.c | 5 +---- 2 files changed, 25 insertions(+), 29 deletions(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index c23bff79..71ffe4bd 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -176,33 +176,32 @@ typedef long tag_type; #define stack_overflow(x,y) ((x) > (y)) #endif -/* Define object tag values. Could be an enum... - Remember to update tag_names in runtime.c when adding new tags */ -#define cons_tag 0 -#define symbol_tag 1 -#define forward_tag 2 -#define closure0_tag 3 -#define closure1_tag 4 -#define closureN_tag 8 -#define integer_tag 9 -#define double_tag 10 -#define string_tag 11 -#define primitive_tag 12 -#define eof_tag 13 -#define port_tag 14 -#define boolean_tag 15 -#define cvar_tag 16 -#define vector_tag 17 -#define macro_tag 18 -#define mutex_tag 19 -#define cond_var_tag 20 -#define bytevector_tag 21 -#define c_opaque_tag 22 +// Types of objects +// Remember to update tag_names in runtime.c when adding new tags +enum object_type + { cons_tag = 0 + , symbol_tag // 1 + , forward_tag // 2 + , closure0_tag // 3 + , closure1_tag // 4 + , closureN_tag // 5 + , integer_tag // 6 + , double_tag // 7 + , string_tag // 8 + , primitive_tag // 9 + , eof_tag // 10 + , port_tag // 11 + , boolean_tag // 12 + , cvar_tag // 13 + , vector_tag // 14 + , macro_tag // 15 + , mutex_tag // 16 + , cond_var_tag // 17 + , bytevector_tag // 18 + , c_opaque_tag // 19 +}; -#define nil NULL #define eq(x,y) (x == y) -#define nullp(x) (x == NULL) - #define type_of(x) (((list) x)->tag) #define forward(x) (((list) x)->cons_car) diff --git a/runtime.c b/runtime.c index 833a62e5..1a5bd6d0 100644 --- a/runtime.c +++ b/runtime.c @@ -27,15 +27,12 @@ object Cyc_global_set(void *thd, object *glo, object value) /* Error checking section - type mismatch, num args, etc */ /* Type names to use for error messages */ -const char *tag_names[24] = { \ +const char *tag_names[] = { \ "pair" \ , "symbol" \ , "" \ , "procedure" \ , "procedure" \ - , "" \ - , "" \ - , "" \ , "procedure" \ , "number" \ , "number" \ From dc33c2fd7ee11ccc24b4723ecdca9564488ad2bf Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 03:22:12 -0400 Subject: [PATCH 072/121] Refactoring --- include/cyclone/runtime.h | 1 - include/cyclone/types.h | 8 ++++---- runtime.c | 12 ------------ 3 files changed, 4 insertions(+), 17 deletions(-) diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index bf5ec239..1c32f0b5 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -237,7 +237,6 @@ object Cyc_num_op_va_list(void *data, int argc, object (fn_op(void *, common_typ int equal(object,object); list assq(void *,object,list); list assoc(void *,object x, list l); -//object get(object,object); object equalp(object,object); object memberp(void *,object,list); object memqp(void *,object,list); diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 71ffe4bd..76ecf388 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -9,13 +9,13 @@ #ifndef CYCLONE_TYPES_H #define CYCLONE_TYPES_H -#include -#include -#include +#include #include #include +#include +#include #include -#include +#include #include // Maximum number of args that GC will accept diff --git a/runtime.c b/runtime.c index 1a5bd6d0..840ce455 100644 --- a/runtime.c +++ b/runtime.c @@ -745,18 +745,6 @@ object memqp(void *data, object x, list l) for (; l != NULL; l = cdr(l)) if (eq(x,car(l))) return boolean_t; return boolean_f;} -//object get(object x, object i) -//{ -// object plist, plistd; -// if (x == NULL) return x; -// if (type_of(x)!=symbol_tag) {printf("get: bad x=%ld\n",((closure)x)->tag); exit(0);} -// plist = symbol_plist(x); -// for (; (plist != NULL); plist = cdr(plistd)) -// {plistd = cdr(plist); -// if (eq(car(plist),i)) return car(plistd);} -// return NULL; -//} - object equalp(object x, object y) { for (; ; x = cdr(x), y = cdr(y)) { From 884f26c72d8769d86d6e410020a89adf477ec362 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 03:26:54 -0400 Subject: [PATCH 073/121] Refactoring --- include/cyclone/types.h | 60 ++++++++++++++++++++--------------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 76ecf388..7271d262 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -60,9 +60,37 @@ // General constants #define NANOSECONDS_PER_MILLISECOND 1000000 -/* Define general object type. */ +// Generic object type typedef void *object; +// Define a tag for each possible type of object. +// Remember to update tag_names in runtime.c when adding new tags +enum object_tag + { cons_tag = 0 + , symbol_tag // 1 + , forward_tag // 2 + , closure0_tag // 3 + , closure1_tag // 4 + , closureN_tag // 5 + , integer_tag // 6 + , double_tag // 7 + , string_tag // 8 + , primitive_tag // 9 + , eof_tag // 10 + , port_tag // 11 + , boolean_tag // 12 + , cvar_tag // 13 + , vector_tag // 14 + , macro_tag // 15 + , mutex_tag // 16 + , cond_var_tag // 17 + , bytevector_tag // 18 + , c_opaque_tag // 19 +}; + +// Define the size of object tags +typedef long tag_type; + /* Threading */ typedef enum { CYC_THREAD_STATE_NEW , CYC_THREAD_STATE_RUNNABLE @@ -166,41 +194,13 @@ typedef enum { STAGE_CLEAR_OR_MARKING #define gc_color_red 0 // Memory not to be GC'd, such as on the stack #define gc_color_blue 2 // Unallocated memory -/* Define size of object tags */ -typedef long tag_type; - -/* Determine if stack has overflowed */ +// Determine if stack has overflowed #if STACK_GROWTH_IS_DOWNWARD #define stack_overflow(x,y) ((x) < (y)) #else #define stack_overflow(x,y) ((x) > (y)) #endif -// Types of objects -// Remember to update tag_names in runtime.c when adding new tags -enum object_type - { cons_tag = 0 - , symbol_tag // 1 - , forward_tag // 2 - , closure0_tag // 3 - , closure1_tag // 4 - , closureN_tag // 5 - , integer_tag // 6 - , double_tag // 7 - , string_tag // 8 - , primitive_tag // 9 - , eof_tag // 10 - , port_tag // 11 - , boolean_tag // 12 - , cvar_tag // 13 - , vector_tag // 14 - , macro_tag // 15 - , mutex_tag // 16 - , cond_var_tag // 17 - , bytevector_tag // 18 - , c_opaque_tag // 19 -}; - #define eq(x,y) (x == y) #define type_of(x) (((list) x)->tag) #define forward(x) (((list) x)->cons_car) From 3553d0773c74ef5631691b0e04a241370770e88a Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 03:39:58 -0400 Subject: [PATCH 074/121] Refactoring --- include/cyclone/runtime.h | 2 +- runtime.c | 12 ++++++------ scheme/cyclone/cgen.sld | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index 1c32f0b5..40733e57 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -20,7 +20,7 @@ } #define Cyc_check_type(data, fnc_test, tag, obj) { \ - if (eq(boolean_f, fnc_test(obj))) Cyc_invalid_type_error(data, tag, obj); } + if ((boolean_f == fnc_test(obj))) Cyc_invalid_type_error(data, tag, obj); } #define Cyc_check_cons_or_null(d,obj) { if (obj != NULL) { Cyc_check_cons(d,obj); }} #define Cyc_check_cons(d,obj) Cyc_check_type(d,Cyc_is_cons, cons_tag, obj); diff --git a/runtime.c b/runtime.c index 840ce455..668eecad 100644 --- a/runtime.c +++ b/runtime.c @@ -491,7 +491,7 @@ object Cyc_has_cycle(object lst) { if (is_object_type(car(slow_lst)) && boolean_f == Cyc_is_boolean(car(slow_lst)) && // Avoid expected dupes //boolean_f == Cyc_is_symbol(car(slow_lst)) && // - eq(car(slow_lst), car(fast_lst))) return boolean_t; + (car(slow_lst) == car(fast_lst))) return boolean_t; slow_lst = cdr(slow_lst); fast_lst = cddr(fast_lst); @@ -742,7 +742,7 @@ object memberp(void *data, object x, list l) object memqp(void *data, object x, list l) {Cyc_check_cons_or_null(data, l); - for (; l != NULL; l = cdr(l)) if (eq(x,car(l))) return boolean_t; + for (; l != NULL; l = cdr(l)) if ((x == car(l))) return boolean_t; return boolean_f;} object equalp(object x, object y) @@ -762,7 +762,7 @@ list assq(void *data, object x, list l) for (; (l != NULL); l = cdr(l)) { list la = car(l); Cyc_check_cons(data, la); - if (eq(x,car(la))) return la; + if ((x == car(la))) return la; } return boolean_f; } @@ -857,7 +857,7 @@ object Cyc_is_boolean(object o){ if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == boolean_tag && - (eq(boolean_f, o) || eq(boolean_t, o))) + ((boolean_f == o) || (boolean_t == o))) return boolean_t; return boolean_f;} @@ -970,7 +970,7 @@ object Cyc_is_cvar(object o) { return boolean_f;} object Cyc_eq(object x, object y) { - if (eq(x, y)) + if (x == y) return boolean_t; return boolean_f; } @@ -1306,7 +1306,7 @@ object Cyc_string_set(void *data, object str, object k, object chr) { Cyc_check_str(data, str); Cyc_check_num(data, k); - if (!eq(boolean_t, Cyc_is_char(chr))) { + if (boolean_t != Cyc_is_char(chr)) { Cyc_rt_raise2(data, "Expected char but received", chr); } diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index 6f57231a..5ffda0bb 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -1044,7 +1044,7 @@ (els (compile (if->else exp)))) (c-code (string-append (c:allocs->str (c:allocs test) " ") - "if( !eq(boolean_f, " + "if( (boolean_f != " (c:body test) ") ){ \n" (c:serialize then " ") From 8d34ce909be1dfbe9188e0b6a207b4910b691851 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 03:42:10 -0400 Subject: [PATCH 075/121] Refactoring --- include/cyclone/runtime.h | 5 ----- runtime.c | 3 --- 2 files changed, 8 deletions(-) diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index 40733e57..6469d7cf 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -266,11 +266,6 @@ void dispatch(void *data, int argc, function_type func, object clo, object cont, void dispatch_va(void *data, int argc, function_type_va func, object clo, object cont, object args); void do_dispatch(void *data, int argc, function_type func, object clo, object *buffer); -/* Global variables. */ -extern long no_gcs; /* Count the number of GC's. */ -extern long no_major_gcs; /* Count the number of GC's. */ - -/* Define Lisp constants we need. */ extern const object boolean_t; extern const object boolean_f; extern const object quote_void; diff --git a/runtime.c b/runtime.c index 668eecad..7e79201f 100644 --- a/runtime.c +++ b/runtime.c @@ -94,9 +94,6 @@ void Cyc_check_bounds(void *data, const char *label, int len, int index) { /* Global variables. */ static gc_heap_root *Cyc_heap; -long no_gcs = 0; /* Count the number of GC's. */ -long no_major_gcs = 0; /* Count the number of GC's. */ - object Cyc_global_variables = NULL; int _cyc_argc = 0; char **_cyc_argv = NULL; From 56c9a3340fec15a747d17da397cf0b2ccb9509b6 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 03:49:36 -0400 Subject: [PATCH 076/121] Refactoring --- runtime.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime.c b/runtime.c index 7e79201f..8a0f0ac9 100644 --- a/runtime.c +++ b/runtime.c @@ -2545,7 +2545,7 @@ void _display(void *data, object cont, object args) { dispatch(data, obj_obj2int(argc), (function_type)dispatch_display_va, cont, cont, args); }} void _call_95cc(void *data, object cont, object args){ Cyc_check_num_args(data, "call/cc", 1, args); - if (eq(boolean_f, Cyc_is_procedure(data, car(args)))) { + if ((boolean_f == Cyc_is_procedure(data, car(args)))) { Cyc_invalid_type_error(data, closure1_tag, car(args)); } return_closcall2(data, __glo_call_95cc_scheme_base, cont, car(args)); From b734d1aef23257c29db2f48da172e955a5db53b2 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 03:57:30 -0400 Subject: [PATCH 077/121] Refactoring --- include/cyclone/types.h | 13 +++++++------ runtime.c | 26 ++++++++++++++++++-------- 2 files changed, 25 insertions(+), 14 deletions(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 7271d262..53eb7a8b 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -201,9 +201,8 @@ typedef enum { STAGE_CLEAR_OR_MARKING #define stack_overflow(x,y) ((x) > (y)) #endif -#define eq(x,y) (x == y) -#define type_of(x) (((list) x)->tag) -#define forward(x) (((list) x)->cons_car) +#define type_of(obj) (((pair_type *) obj)->tag) +#define forward(obj) (((pair_type *) obj)->cons_car) /** Define value types. * Depending on the underlying architecture, compiler, etc these types @@ -326,11 +325,13 @@ typedef bytevector_type *bytevector; /* Pair (cons) type */ -typedef struct {gc_header_type hdr; tag_type tag; object cons_car,cons_cdr;} cons_type; +typedef struct {gc_header_type hdr; tag_type tag; object cons_car; object cons_cdr;} cons_type; typedef cons_type *list; +typedef cons_type pair_type; +typedef pair_type *pair; -#define car(x) (((list) x)->cons_car) -#define cdr(x) (((list) x)->cons_cdr) +#define car(x) (((pair_type *) x)->cons_car) +#define cdr(x) (((pair_type *) x)->cons_cdr) #define caar(x) (car(car(x))) #define cadr(x) (car(cdr(x))) #define cdar(x) (cdr(car(x))) diff --git a/runtime.c b/runtime.c index 8a0f0ac9..6259dc52 100644 --- a/runtime.c +++ b/runtime.c @@ -732,15 +732,25 @@ object Cyc_write_char(void *data, object c, object port) } // TODO: should not be a predicate, may end up moving these to Scheme code -object memberp(void *data, object x, list l) -{Cyc_check_cons_or_null(data, l); - for (; l != NULL; l = cdr(l)) if (boolean_f != equalp(x,car(l))) return boolean_t; - return boolean_f;} +object memberp(void *data, object x, list l) +{ + Cyc_check_cons_or_null(data, l); + for (; l != NULL; l = cdr(l)) { + if (boolean_f != equalp(x,car(l))) + return boolean_t; + } + return boolean_f; +} -object memqp(void *data, object x, list l) -{Cyc_check_cons_or_null(data, l); - for (; l != NULL; l = cdr(l)) if ((x == car(l))) return boolean_t; - return boolean_f;} +object memqp(void *data, object x, list l) +{ + Cyc_check_cons_or_null(data, l); + for (; l != NULL; l = cdr(l)){ + if ((x == car(l))) + return boolean_t; + } + return boolean_f; +} object equalp(object x, object y) { From 997d6ca25ca379bbfd8a60a37f88a059383cfe7d Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 04:08:42 -0400 Subject: [PATCH 078/121] Allow full compilation using normal program directive --- examples/game-of-life-png/Makefile | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/examples/game-of-life-png/Makefile b/examples/game-of-life-png/Makefile index a47467ea..87518744 100644 --- a/examples/game-of-life-png/Makefile +++ b/examples/game-of-life-png/Makefile @@ -13,7 +13,11 @@ all: $(SCM_PROGRAM) #write-png cyclone $< $(SCM_PROGRAM): $(SCM_FILE) $(COBJECTS) write-png.o - cyclone $< +# cyclone $< + cyclone -d $< +# For now, modify -d output manually to compile-in necessary objects/libs for PNG + gcc life.c -g -c -o life.o + gcc life.o /usr/local/share/cyclone/scheme/base.o example/grid.o /usr/local/share/cyclone/scheme/write.o example/life.o write-png.o -pthread -lcyclone -lck -lm -lpng -g -o life #write-png: write-png.o # gcc -o write-png write-png.o -lpng @@ -27,8 +31,3 @@ clean: convert: ./convert.sh - -# A temporary directive to build the life program using GCC directly -debug: - gcc life.c -g -c -o life.o - gcc life.o /usr/local/share/cyclone/scheme/base.o example/grid.o /usr/local/share/cyclone/scheme/write.o example/life.o write-png.o -pthread -lcyclone -lck -lm -lpng -g -o life From a50663fc69dae0b3840512815bf4f20b09a803cb Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 21:46:40 -0400 Subject: [PATCH 079/121] Make the automata more interesting --- examples/game-of-life-png/Makefile | 4 +++ examples/game-of-life-png/example/life.sld | 11 +++++++- examples/game-of-life-png/life.scm | 29 +++++++++++++++++++++- 3 files changed, 42 insertions(+), 2 deletions(-) diff --git a/examples/game-of-life-png/Makefile b/examples/game-of-life-png/Makefile index 87518744..2edad597 100644 --- a/examples/game-of-life-png/Makefile +++ b/examples/game-of-life-png/Makefile @@ -1,3 +1,7 @@ +# +# Need to install ImageMagick, libpng, and libpng headers to build this project. +# To install these packages on Ubuntu: sudo apt-get install imagemagick libpng-dev +# SCM_PROGRAM = life SCM_LIBS = example/grid example/life diff --git a/examples/game-of-life-png/example/life.sld b/examples/game-of-life-png/example/life.sld index acedcf7f..ecbb28d2 100644 --- a/examples/game-of-life-png/example/life.sld +++ b/examples/game-of-life-png/example/life.sld @@ -29,10 +29,11 @@ (if (< iteration 10) "0" "") (number->string iteration) ".png"))) + (png:fill! img 255 255 255) (each grid (lambda (i j v) (if v - (png:set! img i j 0 250 0)) + (png:set! img i j 0 250 (* 3 iteration))) ; 250 0)) )) (png:save img path) (png:free img) @@ -73,6 +74,14 @@ ((int)(unbox_number(g))), ((int)(unbox_number(b)))); return_closcall1(data, k, boolean_t); ") + (define-c png:fill! + "(void *data, int argc, closure _, object k, object opq, object r, object g, object b)" + " RGBBitmap *img = (RGBBitmap *)opaque_ptr(opq); + bitmap_fill(img, + ((int)(unbox_number(r))), + ((int)(unbox_number(g))), + ((int)(unbox_number(b)))); + return_closcall1(data, k, boolean_t); ") (define-c png:save "(void *data, int argc, closure _, object k, object opq, object path)" " RGBBitmap *img = (RGBBitmap *)opaque_ptr(opq); diff --git a/examples/game-of-life-png/life.scm b/examples/game-of-life-png/life.scm index 93b8171b..ea6f25bd 100644 --- a/examples/game-of-life-png/life.scm +++ b/examples/game-of-life-png/life.scm @@ -31,5 +31,32 @@ (put! grid 3 0 #t) (put! grid 3 1 #t) (put! grid 3 2 #t) + +(put! grid 11 11 #t) +(put! grid 12 12 #t) +(put! grid 13 10 #t) +(put! grid 13 11 #t) +(put! grid 13 12 #t) + +(put! grid 6 6 #t) +(put! grid 7 7 #t) +(put! grid 8 5 #t) +(put! grid 8 6 #t) +(put! grid 8 7 #t) + +(put! grid 1 11 #t) +(put! grid 2 12 #t) +(put! grid 3 10 #t) +(put! grid 3 11 #t) +(put! grid 3 12 #t) + +(put! grid 15 0 #t) +(put! grid 15 1 #t) +(put! grid 16 1 #t) +(put! grid 16 2 #t) +(put! grid 17 2 #t) +(put! grid 17 3 #t) +(put! grid 18 2 #t) +(put! grid 18 3 #t) ;; Run for x iterations. -(life grid 80) +(life grid 100) From 32e31a038876d2cd542235c3ec52c943dc14142a Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 22:10:25 -0400 Subject: [PATCH 080/121] Added content from web site --- README.md | 6 +++++- docs/images/game-of-life-gliders.gif | Bin 0 -> 198427 bytes 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 docs/images/game-of-life-gliders.gif diff --git a/README.md b/README.md index fe6b9db2..b51650d9 100644 --- a/README.md +++ b/README.md @@ -58,7 +58,11 @@ Example Programs Cyclone provides several example programs, including: -- [Game of Life](examples/game-of-life) - The game of life example program and libraries from R7RS. +- [Game of Life](examples/game-of-life) - The [game of life](https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life) example program and libraries from R7RS. + +- [Game of Life - PNG Image Generator](examples/game-of-life-png) - An modified version of game of life that uses libpng to create an image of each iteration instead of writing it to console. This example also demonstrates basic usage of the C Foreign Function Interface (FFI): + + - [Threading](examples/threading) - Various examples of multi-threaded programs. diff --git a/docs/images/game-of-life-gliders.gif b/docs/images/game-of-life-gliders.gif new file mode 100644 index 0000000000000000000000000000000000000000..da7b7091996d8dabb33debaaf712e89e8695bcf3 GIT binary patch literal 198427 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�=qKt^R$?udxD?6nse`P>&#UG@veSLq4GCN8OY1 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 EckuH)=l}o! literal 0 HcmV?d00001 From 74d3d3dc205dd298c7050eaa1fe914c9d6afe760 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 22:28:05 -0400 Subject: [PATCH 081/121] Fix copy-and-paste error --- examples/game-of-life-png/write-png.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/game-of-life-png/write-png.c b/examples/game-of-life-png/write-png.c index cc24c21e..7b762bd6 100644 --- a/examples/game-of-life-png/write-png.c +++ b/examples/game-of-life-png/write-png.c @@ -102,7 +102,7 @@ void bitmap_fill(RGBBitmap *img, int r, int g, int b) // TODO: could use pointers directly or even memcpy // to make this faster for (y = 0; y < img->height; y++) { - for (x = 0; x < img->height; x++) { + for (x = 0; x < img->width; x++) { bitmap_set(img, x, y, r, g, b); } } From 4f4c12186138c822842ca8db23c36fd2b8c99028 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 22:31:30 -0400 Subject: [PATCH 082/121] Added run info --- examples/game-of-life-png/Makefile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/examples/game-of-life-png/Makefile b/examples/game-of-life-png/Makefile index 2edad597..8a1b43a6 100644 --- a/examples/game-of-life-png/Makefile +++ b/examples/game-of-life-png/Makefile @@ -2,6 +2,9 @@ # Need to install ImageMagick, libpng, and libpng headers to build this project. # To install these packages on Ubuntu: sudo apt-get install imagemagick libpng-dev # +# To create PNG outputs and convert to an animation, run: +# make && ./life && ./convert.sh +# SCM_PROGRAM = life SCM_LIBS = example/grid example/life From a36f7b0282fa8fe2ca59ec688d747429a8ada4dd Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 19 Apr 2016 22:32:09 -0400 Subject: [PATCH 083/121] Grammar --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b51650d9..2b419ca5 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,7 @@ Cyclone provides several example programs, including: - [Game of Life](examples/game-of-life) - The [game of life](https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life) example program and libraries from R7RS. -- [Game of Life - PNG Image Generator](examples/game-of-life-png) - An modified version of game of life that uses libpng to create an image of each iteration instead of writing it to console. This example also demonstrates basic usage of the C Foreign Function Interface (FFI): +- [Game of Life - PNG Image Generator](examples/game-of-life-png) - A modified version of game of life that uses libpng to create an image of each iteration instead of writing it to console. This example also demonstrates basic usage of the C Foreign Function Interface (FFI): From 55c884ef4e9cb7218ba43a76cc9c0ccc54e6adcd Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 21:01:29 -0400 Subject: [PATCH 084/121] indent -linux -l80 -i2 -nut types.h --- include/cyclone/types.h | 270 ++++++++++++++++++++++++++-------------- 1 file changed, 179 insertions(+), 91 deletions(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 53eb7a8b..d4293054 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -65,39 +65,37 @@ typedef void *object; // Define a tag for each possible type of object. // Remember to update tag_names in runtime.c when adding new tags -enum object_tag - { cons_tag = 0 - , symbol_tag // 1 - , forward_tag // 2 - , closure0_tag // 3 - , closure1_tag // 4 - , closureN_tag // 5 - , integer_tag // 6 - , double_tag // 7 - , string_tag // 8 - , primitive_tag // 9 - , eof_tag // 10 - , port_tag // 11 - , boolean_tag // 12 - , cvar_tag // 13 - , vector_tag // 14 - , macro_tag // 15 - , mutex_tag // 16 - , cond_var_tag // 17 - , bytevector_tag // 18 - , c_opaque_tag // 19 +enum object_tag { + cons_tag = 0 + , symbol_tag // 1 + , forward_tag // 2 + , closure0_tag // 3 + , closure1_tag // 4 + , closureN_tag // 5 + , integer_tag // 6 + , double_tag // 7 + , string_tag // 8 + , primitive_tag // 9 + , eof_tag // 10 + , port_tag // 11 + , boolean_tag // 12 + , cvar_tag // 13 + , vector_tag // 14 + , macro_tag // 15 + , mutex_tag // 16 + , cond_var_tag // 17 + , bytevector_tag // 18 + , c_opaque_tag // 19 }; // Define the size of object tags typedef long tag_type; /* Threading */ -typedef enum { CYC_THREAD_STATE_NEW - , CYC_THREAD_STATE_RUNNABLE - , CYC_THREAD_STATE_BLOCKED - , CYC_THREAD_STATE_BLOCKED_COOPERATING - , CYC_THREAD_STATE_TERMINATED - } cyc_thread_state_type; +typedef enum { CYC_THREAD_STATE_NEW, CYC_THREAD_STATE_RUNNABLE, + CYC_THREAD_STATE_BLOCKED, CYC_THREAD_STATE_BLOCKED_COOPERATING, + CYC_THREAD_STATE_TERMINATED +} cyc_thread_state_type; /* Thread data structures */ typedef struct gc_thread_data_t gc_thread_data; @@ -139,9 +137,8 @@ struct gc_thread_data_t { /* GC data structures */ -typedef enum { HEAP_SM = 0 - , HEAP_MED - , HEAP_REST } cached_heap_type; +typedef enum { HEAP_SM = 0, HEAP_MED, HEAP_REST +} cached_heap_type; typedef struct gc_free_list_t gc_free_list; struct gc_free_list_t { @@ -152,11 +149,11 @@ struct gc_free_list_t { typedef struct gc_heap_t gc_heap; struct gc_heap_t { unsigned int size; - unsigned int chunk_size; // 0 for any size, other and heap will only alloc chunks of that size + unsigned int chunk_size; // 0 for any size, other and heap will only alloc chunks of that size unsigned int max_size; //unsigned int free_size; gc_free_list *free_list; - gc_heap *next; // TBD, linked list is not very efficient, but easy to work with as a start + gc_heap *next; // TBD, linked list is not very efficient, but easy to work with as a start char *data; }; @@ -169,30 +166,26 @@ struct gc_heap_root_t { typedef struct gc_header_type_t gc_header_type; struct gc_header_type_t { - unsigned int mark; // mark bits (TODO: only need 2, reduce size of type?) - unsigned char grayed; // stack object to be grayed when moved to heap + unsigned int mark; // mark bits (TODO: only need 2, reduce size of type?) + unsigned char grayed; // stack object to be grayed when moved to heap }; #define mark(x) (((list) x)->hdr.mark) #define grayed(x) (((list) x)->hdr.grayed) /* Enums for tri-color marking */ -typedef enum { STATUS_ASYNC - , STATUS_SYNC1 - , STATUS_SYNC2 - } gc_status_type; +typedef enum { STATUS_ASYNC, STATUS_SYNC1, STATUS_SYNC2 +} gc_status_type; -typedef enum { STAGE_CLEAR_OR_MARKING - , STAGE_TRACING - //, STAGE_REF_PROCESSING - , STAGE_SWEEPING - , STAGE_RESTING - } gc_stage_type; +typedef enum { STAGE_CLEAR_OR_MARKING, STAGE_TRACING + //, STAGE_REF_PROCESSING + , STAGE_SWEEPING, STAGE_RESTING +} gc_stage_type; // Constant colors are defined here. // The mark/clear colors are defined in the gc module because // the collector swaps their values as an optimization. -#define gc_color_red 0 // Memory not to be GC'd, such as on the stack -#define gc_color_blue 2 // Unallocated memory +#define gc_color_red 0 // Memory not to be GC'd, such as on the stack +#define gc_color_blue 2 // Unallocated memory // Determine if stack has overflowed #if STACK_GROWTH_IS_DOWNWARD @@ -230,40 +223,65 @@ typedef enum { STAGE_CLEAR_OR_MARKING /* Function type */ -typedef void (*function_type)(); -typedef void (*function_type_va)(int, object, object, object, ...); +typedef void (*function_type) (); +typedef void (*function_type_va) (int, object, object, object, ...); /* Define C-variable integration type */ -typedef struct {gc_header_type hdr; tag_type tag; object *pvar;} cvar_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + object *pvar; +} cvar_type; typedef cvar_type *cvar; #define make_cvar(n,v) cvar_type n; n.hdr.mark = gc_color_red; n.hdr.grayed = 0; n.tag = cvar_tag; n.pvar = v; /* C Opaque type - a wrapper around a pointer of any type. Note this requires application code to free any memory before an object is collected by GC. */ -typedef struct {gc_header_type hdr; tag_type tag; void *ptr;} c_opaque_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + void *ptr; +} c_opaque_type; typedef c_opaque_type *c_opaque; #define make_c_opaque(var, p) c_opaque_type var; var.hdr.mark = gc_color_red; var.hdr.grayed = 0; var.tag = c_opaque_tag; var.ptr = p; #define opaque_ptr(x) (((c_opaque)x)->ptr) /* Define mutex type */ -typedef struct {gc_header_type hdr; tag_type tag; pthread_mutex_t lock;} mutex_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + pthread_mutex_t lock; +} mutex_type; typedef mutex_type *mutex; /* Define condition variable type */ -typedef struct {gc_header_type hdr; tag_type tag; pthread_cond_t cond;} cond_var_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + pthread_cond_t cond; +} cond_var_type; typedef cond_var_type *cond_var; /* Define boolean type. */ -typedef struct {gc_header_type hdr; const tag_type tag; const char *pname;} boolean_type; +typedef struct { + gc_header_type hdr; + const tag_type tag; + const char *pname; +} boolean_type; typedef boolean_type *boolean; #define boolean_pname(x) (((boolean_type *) x)->pname) /* Define symbol type. */ -typedef struct {gc_header_type hdr; const tag_type tag; const char *pname; object plist;} symbol_type; +typedef struct { + gc_header_type hdr; + const tag_type tag; + const char *pname; + object plist; +} symbol_type; typedef symbol_type *symbol; #define symbol_pname(x) (((symbol_type *) x)->pname) @@ -273,16 +291,33 @@ typedef symbol_type *symbol; static object quote_##name = NULL; /* Define numeric types */ -typedef struct {gc_header_type hdr; tag_type tag; int value; int padding;} integer_type; + +// Integer object type is still included for now, but ints +// should be stored using value types instead. +typedef struct { + gc_header_type hdr; + tag_type tag; + int value; + int padding; // Prevent mem corruption if sizeof(int) < sizeof(ptr) +} integer_type; #define make_int(n,v) integer_type n; n.hdr.mark = gc_color_red; n.hdr.grayed = 0; n.tag = integer_tag; n.value = v; -typedef struct {gc_header_type hdr; tag_type tag; double value;} double_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + double value; +} double_type; #define make_double(n,v) double_type n; n.hdr.mark = gc_color_red; n.hdr.grayed = 0; n.tag = double_tag; n.value = v; #define integer_value(x) (((integer_type *) x)->value) #define double_value(x) (((double_type *) x)->value) /* Define string type */ -typedef struct {gc_header_type hdr; tag_type tag; int len; char *str;} string_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + int len; + char *str; +} string_type; #define make_string(cs, s) string_type cs; \ { int len = strlen(s); cs.tag = string_tag; cs.len = len; cs.hdr.mark = gc_color_red; cs.hdr.grayed = 0; \ cs.str = alloca(sizeof(char) * (len + 1)); \ @@ -306,26 +341,46 @@ typedef struct {gc_header_type hdr; tag_type tag; int len; char *str;} string_ty // consider http://stackoverflow.com/questions/6206893/how-to-implement-char-ready-in-c // TODO: a simple wrapper around FILE may not be good enough long-term // TODO: how exactly mode will be used. need to know r/w, bin/txt -typedef struct {gc_header_type hdr; tag_type tag; FILE *fp; int mode;} port_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + FILE *fp; + int mode; +} port_type; #define make_port(p,f,m) port_type p; p.hdr.mark = gc_color_red; p.hdr.grayed = 0; p.tag = port_tag; p.fp = f; p.mode = m; /* Vector type */ -typedef struct {gc_header_type hdr; tag_type tag; int num_elt; object *elts;} vector_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + int num_elt; + object *elts; +} vector_type; typedef vector_type *vector; #define make_empty_vector(v) vector_type v; v.hdr.mark = gc_color_red; v.hdr.grayed = 0; v.tag = vector_tag; v.num_elt = 0; v.elts = NULL; /* Bytevector type */ -typedef struct {gc_header_type hdr; tag_type tag; int len; char *data;} bytevector_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + int len; + char *data; +} bytevector_type; typedef bytevector_type *bytevector; #define make_empty_bytevector(v) bytevector_type v; v.hdr.mark = gc_color_red; v.hdr.grayed = 0; v.tag = bytevector_tag; v.len = 0; v.data = NULL; /* Pair (cons) type */ -typedef struct {gc_header_type hdr; tag_type tag; object cons_car; object cons_cdr;} cons_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + object cons_car; + object cons_cdr; +} cons_type; typedef cons_type *list; typedef cons_type pair_type; typedef pair_type *pair; @@ -366,10 +421,33 @@ cons_type n; n.hdr.mark = gc_color_red; n.hdr.grayed = 0; n.tag = cons_tag; n.co /* Closure types */ -typedef struct {gc_header_type hdr; tag_type tag; function_type fn; int num_args; } macro_type; -typedef struct {gc_header_type hdr; tag_type tag; function_type fn; int num_args; } closure0_type; -typedef struct {gc_header_type hdr; tag_type tag; function_type fn; int num_args; object elt1;} closure1_type; -typedef struct {gc_header_type hdr; tag_type tag; function_type fn; int num_args; int num_elt; object *elts;} closureN_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + function_type fn; + int num_args; +} macro_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + function_type fn; + int num_args; +} closure0_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + function_type fn; + int num_args; + object elt1; +} closure1_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + function_type fn; + int num_args; + int num_elt; + object *elts; +} closureN_type; typedef closure0_type *closure0; typedef closure1_type *closure1; @@ -385,7 +463,12 @@ typedef closure0_type *macro; #define make_cell(n,a) make_cons(n,a,NULL); /* Primitive types */ -typedef struct {gc_header_type hdr; tag_type tag; const char *pname; function_type fn;} primitive_type; +typedef struct { + gc_header_type hdr; + tag_type tag; + const char *pname; + function_type fn; +} primitive_type; typedef primitive_type *primitive; #define defprimitive(name, pname, fnc) \ @@ -412,32 +495,36 @@ void vpbuffer_free(void **buf); /* GC prototypes */ void gc_initialize(); -void gc_add_mutator(gc_thread_data *thd); -void gc_remove_mutator(gc_thread_data *thd); -gc_heap *gc_heap_create(int heap_type, size_t size, size_t max_size, size_t chunk_size); -void gc_print_stats(gc_heap *h); -int gc_grow_heap(gc_heap *h, int heap_type, size_t size, size_t chunk_size); -char *gc_copy_obj(object hp, char *obj, gc_thread_data *thd); -void *gc_try_alloc(gc_heap *h, int heap_type, size_t size, char *obj, gc_thread_data *thd); -void *gc_alloc(gc_heap_root *h, size_t size, char *obj, gc_thread_data *thd, int *heap_grown); -size_t gc_allocated_bytes(object obj, gc_free_list *q, gc_free_list *r); -gc_heap *gc_heap_last(gc_heap *h); -size_t gc_heap_total_size(gc_heap *h); +void gc_add_mutator(gc_thread_data * thd); +void gc_remove_mutator(gc_thread_data * thd); +gc_heap *gc_heap_create(int heap_type, size_t size, size_t max_size, + size_t chunk_size); +void gc_print_stats(gc_heap * h); +int gc_grow_heap(gc_heap * h, int heap_type, size_t size, size_t chunk_size); +char *gc_copy_obj(object hp, char *obj, gc_thread_data * thd); +void *gc_try_alloc(gc_heap * h, int heap_type, size_t size, char *obj, + gc_thread_data * thd); +void *gc_alloc(gc_heap_root * h, size_t size, char *obj, gc_thread_data * thd, + int *heap_grown); +size_t gc_allocated_bytes(object obj, gc_free_list * q, gc_free_list * r); +gc_heap *gc_heap_last(gc_heap * h); +size_t gc_heap_total_size(gc_heap * h); //size_t gc_heap_total_free_size(gc_heap *h); //size_t gc_collect(gc_heap *h, size_t *sum_freed); //void gc_mark(gc_heap *h, object obj); void gc_mark_globals(void); -size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr); -void gc_thr_grow_move_buffer(gc_thread_data *d); -void gc_thr_add_to_move_buffer(gc_thread_data *d, int *alloci, object obj); -void gc_thread_data_init(gc_thread_data *thd, int mut_num, char *stack_base, long stack_size); -void gc_thread_data_free(gc_thread_data *thd); +size_t gc_sweep(gc_heap * h, int heap_type, size_t * sum_freed_ptr); +void gc_thr_grow_move_buffer(gc_thread_data * d); +void gc_thr_add_to_move_buffer(gc_thread_data * d, int *alloci, object obj); +void gc_thread_data_init(gc_thread_data * thd, int mut_num, char *stack_base, + long stack_size); +void gc_thread_data_free(gc_thread_data * thd); // Prototypes for mutator/collector: -int gc_is_stack_obj(gc_thread_data *thd, object obj); -void gc_mut_update(gc_thread_data *thd, object old_obj, object value); -void gc_mut_cooperate(gc_thread_data *thd, int buf_len); -void gc_mark_gray(gc_thread_data *thd, object obj); -void gc_mark_gray2(gc_thread_data *thd, object obj); +int gc_is_stack_obj(gc_thread_data * thd, object obj); +void gc_mut_update(gc_thread_data * thd, object old_obj, object value); +void gc_mut_cooperate(gc_thread_data * thd, int buf_len); +void gc_mark_gray(gc_thread_data * thd, object obj); +void gc_mark_gray2(gc_thread_data * thd, object obj); void gc_collector_trace(); void gc_mark_black(object obj); void gc_collector_mark_gray(object parent, object obj); @@ -446,8 +533,8 @@ void gc_handshake(gc_status_type s); void gc_post_handshake(gc_status_type s); void gc_wait_handshake(); void gc_start_collector(); -void gc_mutator_thread_blocked(gc_thread_data *thd, object cont); -void gc_mutator_thread_runnable(gc_thread_data *thd, object result); +void gc_mutator_thread_blocked(gc_thread_data * thd, object cont); +void gc_mutator_thread_runnable(gc_thread_data * thd, object result); #define set_thread_blocked(d, c) \ gc_mutator_thread_blocked(((gc_thread_data *)d), (c)) #define return_thread_runnable(d, r) \ @@ -457,9 +544,10 @@ void gc_mutator_thread_runnable(gc_thread_data *thd, object result); // body \ // return_thread_runnable((data), (result)); gc_heap_root *gc_get_heap(); -int gc_minor(void *data, object low_limit, object high_limit, closure cont, object *args, int num_args); +int gc_minor(void *data, object low_limit, object high_limit, closure cont, + object * args, int num_args); /* Mutation table to support minor GC write barrier */ void add_mutation(void *data, object var, int index, object value); void clear_mutations(void *data); -#endif /* CYCLONE_TYPES_H */ +#endif /* CYCLONE_TYPES_H */ From b14d25afc9d648376b2773910e8ddd2dca63f2c1 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 21:46:28 -0400 Subject: [PATCH 085/121] Decrease memory usage of object header --- gc.c | 10 +++++----- include/cyclone/types.h | 4 ++-- runtime.c | 10 +++++----- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/gc.c b/gc.c index 170c6438..777eadc2 100644 --- a/gc.c +++ b/gc.c @@ -376,7 +376,7 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) case symbol_tag: break; default: - fprintf(stderr, "gc_copy_obj: bad tag obj=%p obj.tag=%ld\n",(object) obj, type_of(obj)); + fprintf(stderr, "gc_copy_obj: bad tag obj=%p obj.tag=%d\n",(object) obj, type_of(obj)); exit(1); } return (char *)obj; @@ -493,7 +493,7 @@ void *gc_alloc(gc_heap_root *hrt, size_t size, char *obj, gc_thread_data *thd, i } } #if GC_DEBUG_VERBOSE - fprintf(stderr, "alloc %p size = %zu, obj=%p, tag=%ld, mark=%d\n", result, size, obj, type_of(obj), mark(((object)result))); + fprintf(stderr, "alloc %p size = %zu, obj=%p, tag=%d, mark=%d\n", result, size, obj, type_of(obj), mark(((object)result))); // Debug check, should no longer be necessary //if (is_value_type(result)) { // printf("Invalid allocated address - is a value type %p\n", result); @@ -538,7 +538,7 @@ size_t gc_allocated_bytes(object obj, gc_free_list *q, gc_free_list *r) if (t == mutex_tag) return gc_heap_align(sizeof(mutex_type)); if (t == cond_var_tag) return gc_heap_align(sizeof(cond_var_type)); - fprintf(stderr, "gc_allocated_bytes: unexpected object %p of type %ld\n", obj, t); + fprintf(stderr, "gc_allocated_bytes: unexpected object %p of type %d\n", obj, t); exit(1); return 0; } @@ -626,7 +626,7 @@ size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr) if (mark(p) == gc_color_clear) { #if GC_DEBUG_VERBOSE - fprintf(stderr, "sweep is freeing unmarked obj: %p with tag %ld\n", p, type_of(p)); + fprintf(stderr, "sweep is freeing unmarked obj: %p with tag %d\n", p, type_of(p)); #endif mark(p) = gc_color_blue; // Needed? if (type_of(p) == mutex_tag) { @@ -1086,7 +1086,7 @@ void gc_collector_mark_gray(object parent, object obj) if (is_object_type(obj) && mark(obj) == gc_color_clear) { mark_stack = vpbuffer_add(mark_stack, &mark_stack_len, mark_stack_i++, obj); #if GC_DEBUG_VERBOSE - fprintf(stderr, "mark gray parent = %p (%ld) obj = %p\n", parent, type_of(parent), obj); + fprintf(stderr, "mark gray parent = %p (%d) obj = %p\n", parent, type_of(parent), obj); #endif } } diff --git a/include/cyclone/types.h b/include/cyclone/types.h index d4293054..219cf424 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -89,7 +89,7 @@ enum object_tag { }; // Define the size of object tags -typedef long tag_type; +typedef unsigned char tag_type; /* Threading */ typedef enum { CYC_THREAD_STATE_NEW, CYC_THREAD_STATE_RUNNABLE, @@ -166,7 +166,7 @@ struct gc_heap_root_t { typedef struct gc_header_type_t gc_header_type; struct gc_header_type_t { - unsigned int mark; // mark bits (TODO: only need 2, reduce size of type?) + unsigned char mark; // mark bits (only need 2) unsigned char grayed; // stack object to be grayed when moved to heap }; #define mark(x) (((list) x)->hdr.mark) diff --git a/runtime.c b/runtime.c index 6259dc52..a104424f 100644 --- a/runtime.c +++ b/runtime.c @@ -636,7 +636,7 @@ object Cyc_display(object x, FILE *port) fprintf(port, ")"); break; default: - fprintf(port, "Cyc_display: bad tag x=%ld\n", ((closure)x)->tag); + fprintf(port, "Cyc_display: bad tag x=%d\n", ((closure)x)->tag); exit(1); } return quote_void;} @@ -2632,7 +2632,7 @@ object apply(void *data, object cont, object func, object args){ } default: - printf("Invalid object type %ld\n", type_of(func)); + printf("Invalid object type %d\n", type_of(func)); exit(1); } return NULL; // Never reached @@ -2834,7 +2834,7 @@ char *gc_move(char *obj, gc_thread_data *thd, int *alloci, int *heap_grown) { case boolean_tag: break; case symbol_tag: break; // JAE TODO: raise an error here? Should not be possible in real code, though (IE, without GC DEBUG flag) default: - fprintf(stderr, "gc_move: bad tag obj=%p obj.tag=%ld\n",(object) obj, type_of(obj)); + fprintf(stderr, "gc_move: bad tag obj=%p obj.tag=%d\n",(object) obj, type_of(obj)); exit(1); } return (char *)obj; @@ -2908,7 +2908,7 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje } else if (type_of(o) == forward_tag) { // Already transported, skip } else { - printf("Unexpected type %ld transporting mutation\n", type_of(o)); + printf("Unexpected type %d transporting mutation\n", type_of(o)); exit(1); } } @@ -2969,7 +2969,7 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje case boolean_tag: default: fprintf(stderr, - "GC: unexpected object type %ld for object %p\n", type_of(obj), obj); + "GC: unexpected object type %d for object %p\n", type_of(obj), obj); exit(1); } scani++; From dfe9b477c21dece8c6582b67ab1d54347ded1f64 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 21:54:03 -0400 Subject: [PATCH 086/121] Refactoring --- include/cyclone/types.h | 68 +++++++++++++++++++++++++++++++++-------- 1 file changed, 56 insertions(+), 12 deletions(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 219cf424..e6a8e994 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -233,7 +233,12 @@ typedef struct { object *pvar; } cvar_type; typedef cvar_type *cvar; -#define make_cvar(n,v) cvar_type n; n.hdr.mark = gc_color_red; n.hdr.grayed = 0; n.tag = cvar_tag; n.pvar = v; +#define make_cvar(n,v) \ + cvar_type n; \ + n.hdr.mark = gc_color_red; \ + n.hdr.grayed = 0; \ + n.tag = cvar_tag; \ + n.pvar = v; /* C Opaque type - a wrapper around a pointer of any type. Note this requires application code to free any memory @@ -244,7 +249,12 @@ typedef struct { void *ptr; } c_opaque_type; typedef c_opaque_type *c_opaque; -#define make_c_opaque(var, p) c_opaque_type var; var.hdr.mark = gc_color_red; var.hdr.grayed = 0; var.tag = c_opaque_tag; var.ptr = p; +#define make_c_opaque(var, p) \ + c_opaque_type var; \ + var.hdr.mark = gc_color_red; \ + var.hdr.grayed = 0; \ + var.tag = c_opaque_tag; \ + var.ptr = p; #define opaque_ptr(x) (((c_opaque)x)->ptr) @@ -300,13 +310,24 @@ typedef struct { int value; int padding; // Prevent mem corruption if sizeof(int) < sizeof(ptr) } integer_type; -#define make_int(n,v) integer_type n; n.hdr.mark = gc_color_red; n.hdr.grayed = 0; n.tag = integer_tag; n.value = v; +#define make_int(n,v) \ + integer_type n; \ + n.hdr.mark = gc_color_red; \ + n.hdr.grayed = 0; \ + n.tag = integer_tag; \ + n.value = v; + typedef struct { gc_header_type hdr; tag_type tag; double value; } double_type; -#define make_double(n,v) double_type n; n.hdr.mark = gc_color_red; n.hdr.grayed = 0; n.tag = double_tag; n.value = v; +#define make_double(n,v) \ + double_type n; \ + n.hdr.mark = gc_color_red; \ + n.hdr.grayed = 0; \ + n.tag = double_tag; \ + n.value = v; #define integer_value(x) (((integer_type *) x)->value) #define double_value(x) (((double_type *) x)->value) @@ -347,7 +368,13 @@ typedef struct { FILE *fp; int mode; } port_type; -#define make_port(p,f,m) port_type p; p.hdr.mark = gc_color_red; p.hdr.grayed = 0; p.tag = port_tag; p.fp = f; p.mode = m; +#define make_port(p,f,m) \ + port_type p; \ + p.hdr.mark = gc_color_red; \ + p.hdr.grayed = 0; \ + p.tag = port_tag; \ + p.fp = f; \ + p.mode = m; /* Vector type */ @@ -359,7 +386,13 @@ typedef struct { } vector_type; typedef vector_type *vector; -#define make_empty_vector(v) vector_type v; v.hdr.mark = gc_color_red; v.hdr.grayed = 0; v.tag = vector_tag; v.num_elt = 0; v.elts = NULL; +#define make_empty_vector(v) \ + vector_type v; \ + v.hdr.mark = gc_color_red; \ + v.hdr.grayed = 0; \ + v.tag = vector_tag; \ + v.num_elt = 0; \ + v.elts = NULL; /* Bytevector type */ @@ -371,7 +404,13 @@ typedef struct { } bytevector_type; typedef bytevector_type *bytevector; -#define make_empty_bytevector(v) bytevector_type v; v.hdr.mark = gc_color_red; v.hdr.grayed = 0; v.tag = bytevector_tag; v.len = 0; v.data = NULL; +#define make_empty_bytevector(v) \ + bytevector_type v; \ + v.hdr.mark = gc_color_red; \ + v.hdr.grayed = 0; \ + v.tag = bytevector_tag; \ + v.len = 0; \ + v.data = NULL; /* Pair (cons) type */ @@ -385,6 +424,16 @@ typedef cons_type *list; typedef cons_type pair_type; typedef pair_type *pair; +#define make_cons(n,a,d) \ + cons_type n; \ + n.hdr.mark = gc_color_red; \ + n.hdr.grayed = 0; \ + n.tag = cons_tag; \ + n.cons_car = a; \ + n.cons_cdr = d; + +#define make_cell(n,a) make_cons(n,a,NULL); + #define car(x) (((pair_type *) x)->cons_car) #define cdr(x) (((pair_type *) x)->cons_cdr) #define caar(x) (car(car(x))) @@ -416,9 +465,6 @@ typedef pair_type *pair; #define cdddar(x) (cdr(cdr(cdr(car(x))))) #define cddddr(x) (cdr(cdr(cdr(cdr(x))))) -#define make_cons(n,a,d) \ -cons_type n; n.hdr.mark = gc_color_red; n.hdr.grayed = 0; n.tag = cons_tag; n.cons_car = a; n.cons_cdr = d; - /* Closure types */ typedef struct { @@ -460,8 +506,6 @@ typedef closure0_type *macro; #define mclosure1(c,f,a) closure1_type c; c.hdr.mark = gc_color_red; c.hdr.grayed = 0; c.tag = closure1_tag; \ c.fn = f; c.num_args = -1; c.elt1 = a; -#define make_cell(n,a) make_cons(n,a,NULL); - /* Primitive types */ typedef struct { gc_header_type hdr; From f5c258e76d0146e98fecb7a6d7187eb15e48b895 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 21:57:40 -0400 Subject: [PATCH 087/121] Added comments --- include/cyclone/types.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index e6a8e994..0caf313e 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -230,7 +230,7 @@ typedef void (*function_type_va) (int, object, object, object, ...); typedef struct { gc_header_type hdr; tag_type tag; - object *pvar; + object *pvar; /* GC assumes this is a Cyclone object! */ } cvar_type; typedef cvar_type *cvar; #define make_cvar(n,v) \ @@ -246,7 +246,7 @@ typedef cvar_type *cvar; typedef struct { gc_header_type hdr; tag_type tag; - void *ptr; + void *ptr; /* Can be anything, GC will not collect it */ } c_opaque_type; typedef c_opaque_type *c_opaque; #define make_c_opaque(var, p) \ From 63a2204efc360b937b49a5383be0b96616371100 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 22:20:02 -0400 Subject: [PATCH 088/121] Refactoring --- docs/User-Manual.md | 2 +- gc.c | 10 ++-- include/cyclone/runtime.h | 4 +- include/cyclone/types.h | 17 +++++-- runtime.c | 94 +++++++++++++++++++------------------- scheme/base.sld | 2 +- scheme/cyclone/cgen.sld | 12 ++--- scheme/eval.sld | 2 +- scheme/process-context.sld | 2 +- 9 files changed, 78 insertions(+), 67 deletions(-) diff --git a/docs/User-Manual.md b/docs/User-Manual.md index c405db3b..2b1c801c 100644 --- a/docs/User-Manual.md +++ b/docs/User-Manual.md @@ -151,7 +151,7 @@ The `define-c` special form can be used to define a function containing user-def (define-c Cyc-add-exception-handler "(void *data, int argc, closure _, object k, object h)" " gc_thread_data *thd = (gc_thread_data *)data; - make_cons(c, h, thd->exception_handler_stack); + make_pair(c, h, thd->exception_handler_stack); thd->exception_handler_stack = &c; return_closcall1(data, k, &c); ") diff --git a/gc.c b/gc.c index 777eadc2..fb3ed863 100644 --- a/gc.c +++ b/gc.c @@ -238,10 +238,10 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) // which already does that switch(type_of(obj)){ - case cons_tag: { + case pair_tag: { list hp = dest; hp->hdr.mark = thd->gc_alloc_color; - type_of(hp) = cons_tag; + type_of(hp) = pair_tag; car(hp) = car(obj); cdr(hp) = cdr(obj); return (char *)hp; @@ -514,7 +514,7 @@ size_t gc_allocated_bytes(object obj, gc_free_list *q, gc_free_list *r) } #endif t = type_of(obj); - if (t == cons_tag) return gc_heap_align(sizeof(cons_type)); + if (t == pair_tag) return gc_heap_align(sizeof(cons_type)); if (t == macro_tag) return gc_heap_align(sizeof(macro_type)); if (t == closure0_tag) return gc_heap_align(sizeof(closure0_type)); if (t == closure1_tag) return gc_heap_align(sizeof(closure1_type)); @@ -1029,7 +1029,7 @@ void gc_mark_black(object obj) // Note we probably should use some form of atomics/synchronization // for cons and vector types, as these pointers could change. switch(type_of(obj)) { - case cons_tag: { + case pair_tag: { gc_collector_mark_gray(obj, car(obj)); gc_collector_mark_gray(obj, cdr(obj)); break; @@ -1441,7 +1441,7 @@ void gc_mutator_thread_runnable(gc_thread_data *thd, object result) longjmp(*(thd->jmp_start), 1); } else { // Collector didn't do anything; make a normal continuation call - if (type_of(thd->gc_cont) == cons_tag || prim(thd->gc_cont)) { + if (type_of(thd->gc_cont) == pair_tag || prim(thd->gc_cont)) { thd->gc_args[0] = result; Cyc_apply_from_buf(thd, 1, thd->gc_cont, thd->gc_args); } else { diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index 6469d7cf..e4575443 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -23,7 +23,7 @@ if ((boolean_f == fnc_test(obj))) Cyc_invalid_type_error(data, tag, obj); } #define Cyc_check_cons_or_null(d,obj) { if (obj != NULL) { Cyc_check_cons(d,obj); }} -#define Cyc_check_cons(d,obj) Cyc_check_type(d,Cyc_is_cons, cons_tag, obj); +#define Cyc_check_cons(d,obj) Cyc_check_type(d,Cyc_is_cons, pair_tag, obj); #define Cyc_check_num(d,obj) Cyc_check_type(d,Cyc_is_number, integer_tag, obj); #define Cyc_check_int(d,obj) Cyc_check_type(d,Cyc_is_integer, integer_tag, obj); #define Cyc_check_str(d,obj) Cyc_check_type(d,Cyc_is_string, string_tag, obj); @@ -77,7 +77,7 @@ object Cyc_global_set(void *thd, object *glo, object value); } \ var[i].hdr.mark = gc_color_red; \ var[i].hdr.grayed = 0; \ - var[i].tag = cons_tag; \ + var[i].tag = pair_tag; \ var[i].cons_car = tmp; \ var[i].cons_cdr = (i == (count-1)) ? NULL : &var[i + 1]; \ } \ diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 0caf313e..fd1b80ab 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -66,7 +66,7 @@ typedef void *object; // Define a tag for each possible type of object. // Remember to update tag_names in runtime.c when adding new tags enum object_tag { - cons_tag = 0 + pair_tag = 0 , symbol_tag // 1 , forward_tag // 2 , closure0_tag // 3 @@ -91,6 +91,10 @@ enum object_tag { // Define the size of object tags typedef unsigned char tag_type; +// Temporary defines! +#define cons_tag 0 +// END + /* Threading */ typedef enum { CYC_THREAD_STATE_NEW, CYC_THREAD_STATE_RUNNABLE, CYC_THREAD_STATE_BLOCKED, CYC_THREAD_STATE_BLOCKED_COOPERATING, @@ -424,15 +428,22 @@ typedef cons_type *list; typedef cons_type pair_type; typedef pair_type *pair; +#define make_pair(n,a,d) \ + cons_type n; \ + n.hdr.mark = gc_color_red; \ + n.hdr.grayed = 0; \ + n.tag = pair_tag; \ + n.cons_car = a; \ + n.cons_cdr = d; #define make_cons(n,a,d) \ cons_type n; \ n.hdr.mark = gc_color_red; \ n.hdr.grayed = 0; \ - n.tag = cons_tag; \ + n.tag = pair_tag; \ n.cons_car = a; \ n.cons_cdr = d; -#define make_cell(n,a) make_cons(n,a,NULL); +#define make_cell(n,a) make_pair(n,a,NULL); #define car(x) (((pair_type *) x)->cons_car) #define cdr(x) (((pair_type *) x)->cons_cdr) diff --git a/runtime.c b/runtime.c index a104424f..9b90883f 100644 --- a/runtime.c +++ b/runtime.c @@ -74,7 +74,7 @@ void Cyc_check_bounds(void *data, const char *label, int len, int index) { /* END error checking */ /* These macros are hardcoded here to support functions in this module. */ -#define closcall1(td,clo,a1) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,0, (closure)(a1), clo); } else { ((clo)->fn)(td,1,clo,a1);} +#define closcall1(td,clo,a1) if (type_of(clo) == pair_tag || prim(clo)) { Cyc_apply(td,0, (closure)(a1), clo); } else { ((clo)->fn)(td,1,clo,a1);} /* Return to continuation after checking for stack overflow. */ #define return_closcall1(td,clo,a1) { \ char top; \ @@ -82,7 +82,7 @@ void Cyc_check_bounds(void *data, const char *label, int len, int index) { object buf[1]; buf[0] = a1;\ GC(td,clo,buf,1); return; \ } else {closcall1(td,(closure) (clo),a1); return;}} -#define closcall2(td,clo,a1,a2) if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td,1, (closure)(a1), clo,a2); } else { ((clo)->fn)(td,2,clo,a1,a2);} +#define closcall2(td,clo,a1,a2) if (type_of(clo) == pair_tag || prim(clo)) { Cyc_apply(td,1, (closure)(a1), clo,a2); } else { ((clo)->fn)(td,2,clo,a1,a2);} /* Return to continuation after checking for stack overflow. */ #define return_closcall2(td,clo,a1,a2) { \ char top; \ @@ -359,7 +359,7 @@ object Cyc_glo_eval_from_c = NULL; object Cyc_default_exception_handler(void *data, int argc, closure _, object err) { fprintf(stderr, "Error: "); - if ((err == NULL) || is_value_type(err) || type_of(err) != cons_tag) { + if ((err == NULL) || is_value_type(err) || type_of(err) != pair_tag) { Cyc_display(err, stderr); } else { // Error is list of form (type arg1 ... argn) @@ -389,9 +389,9 @@ object Cyc_current_exception_handler(void *data) { /* Raise an exception from the runtime code */ void Cyc_rt_raise(void *data, object err) { - make_cons(c2, err, NULL); - make_cons(c1, boolean_f, &c2); - make_cons(c0, &c1, NULL); + make_pair(c2, err, NULL); + make_pair(c1, boolean_f, &c2); + make_pair(c0, &c1, NULL); apply(data, NULL, Cyc_current_exception_handler(data), &c0); // Should never get here fprintf(stderr, "Internal error in Cyc_rt_raise\n"); @@ -399,10 +399,10 @@ void Cyc_rt_raise(void *data, object err) { } void Cyc_rt_raise2(void *data, const char *msg, object err) { make_string(s, msg); - make_cons(c3, err, NULL); - make_cons(c2, &s, &c3); - make_cons(c1, boolean_f, &c2); - make_cons(c0, &c1, NULL); + make_pair(c3, err, NULL); + make_pair(c2, &s, &c3); + make_pair(c1, boolean_f, &c2); + make_pair(c0, &c1, NULL); apply(data, NULL, Cyc_current_exception_handler(data), &c0); // Should never get here fprintf(stderr, "Internal error in Cyc_rt_raise2\n"); @@ -475,7 +475,7 @@ object Cyc_set_cvar(object var, object value) { object Cyc_has_cycle(object lst) { object slow_lst, fast_lst; if ((lst == NULL) || is_value_type(lst) || - (is_object_type(lst) && type_of(lst) != cons_tag)) { + (is_object_type(lst) && type_of(lst) != pair_tag)) { return (boolean_f); } slow_lst = lst; @@ -604,7 +604,7 @@ object Cyc_display(object x, FILE *port) } fprintf(port, ")"); break; - case cons_tag: + case pair_tag: has_cycle = Cyc_has_cycle(x); fprintf(port, "("); Cyc_display(car(x), port); @@ -620,7 +620,7 @@ object Cyc_display(object x, FILE *port) break; } - for (tmp = cdr(x); tmp && ((closure) tmp)->tag == cons_tag; tmp = cdr(tmp)) { + for (tmp = cdr(x); tmp && ((closure) tmp)->tag == pair_tag; tmp = cdr(tmp)) { if (has_cycle == boolean_t) { if (i++ > 20) break; /* arbitrary number, for now */ } @@ -681,7 +681,7 @@ static object _Cyc_write(object x, FILE *port) fprintf(port, "\"%s\"", ((string_type *) x)->str); break; // TODO: what about a list? contents should be displayed per (write) - case cons_tag: + case pair_tag: has_cycle = Cyc_has_cycle(x); fprintf(port, "("); _Cyc_write(car(x), port); @@ -697,7 +697,7 @@ static object _Cyc_write(object x, FILE *port) break; } - for (tmp = cdr(x); tmp && ((closure) tmp)->tag == cons_tag; tmp = cdr(tmp)) { + for (tmp = cdr(x); tmp && ((closure) tmp)->tag == pair_tag; tmp = cdr(tmp)) { if (has_cycle == boolean_t) { if (i++ > 20) break; /* arbitrary number, for now */ } @@ -758,14 +758,14 @@ object equalp(object x, object y) if (equal(x,y)) return boolean_t; if (is_value_type(x) || is_value_type(y) || (x == NULL) || (y == NULL) || - type_of(x)!=cons_tag || type_of(y)!=cons_tag) return boolean_f; + type_of(x)!=pair_tag || type_of(y)!=pair_tag) return boolean_f; if (boolean_f == equalp(car(x),car(y))) return boolean_f; } } list assq(void *data, object x, list l) { - if ((l == NULL) || is_value_type(l) || type_of(l) != cons_tag) return boolean_f; + if ((l == NULL) || is_value_type(l) || type_of(l) != pair_tag) return boolean_f; for (; (l != NULL); l = cdr(l)) { list la = car(l); Cyc_check_cons(data, la); @@ -776,7 +776,7 @@ list assq(void *data, object x, list l) list assoc(void *data, object x, list l) { - if ((l == NULL) || is_value_type(l) || type_of(l) != cons_tag) return boolean_f; + if ((l == NULL) || is_value_type(l) || type_of(l) != pair_tag) return boolean_f; for (; (l != NULL); l = cdr(l)){ list la = car(l); Cyc_check_cons(data, la); @@ -831,8 +831,8 @@ int FUNC_OP(void *data, object x, object y) { \ result = (double_value(x)) OP (double_value(y)); \ } else { \ make_string(s, "Bad argument type"); \ - make_cons(c1, y, NULL); \ - make_cons(c0, &s, &c1); \ + make_pair(c1, y, NULL); \ + make_pair(c0, &s, &c1); \ Cyc_rt_raise(data, &c0); \ } \ return result; \ @@ -869,7 +869,7 @@ object Cyc_is_boolean(object o){ return boolean_f;} object Cyc_is_cons(object o){ - if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == cons_tag) + if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == pair_tag) return boolean_t; return boolean_f;} @@ -942,7 +942,7 @@ object Cyc_is_procedure(void *data, object o) { tag == closureN_tag || tag == primitive_tag) { return boolean_t; - } else if (tag == cons_tag) { + } else if (tag == pair_tag) { integer_type l = Cyc_length_as_object(data, o); if (l.value > 0 && Cyc_is_symbol(car(o)) == boolean_t) { if (strncmp(((symbol)car(o))->pname, "primitive", 10) == 0 || @@ -983,7 +983,7 @@ object Cyc_eq(object x, object y) { } object Cyc_set_car(void *data, object l, object val) { - if (Cyc_is_cons(l) == boolean_f) Cyc_invalid_type_error(data, cons_tag, l); + if (Cyc_is_cons(l) == boolean_f) Cyc_invalid_type_error(data, pair_tag, l); gc_mut_update((gc_thread_data *)data, car(l), val); car(l) = val; add_mutation(data, l, -1, val); @@ -991,7 +991,7 @@ object Cyc_set_car(void *data, object l, object val) { } object Cyc_set_cdr(void *data, object l, object val) { - if (Cyc_is_cons(l) == boolean_f) Cyc_invalid_type_error(data, cons_tag, l); + if (Cyc_is_cons(l) == boolean_f) Cyc_invalid_type_error(data, pair_tag, l); gc_mut_update((gc_thread_data *)data, cdr(l), val); cdr(l) = val; add_mutation(data, l, -1, val); @@ -1033,7 +1033,7 @@ object Cyc_vector_ref(void *data, object v, object k) { integer_type Cyc_length_as_object(void *data, object l){ make_int(len, 0); while((l != NULL)){ - if (is_value_type(l) || ((list)l)->tag != cons_tag){ + if (is_value_type(l) || ((list)l)->tag != pair_tag){ Cyc_rt_raise_msg(data, "length - invalid parameter, expected list\n"); } l = cdr(l); @@ -1052,7 +1052,7 @@ object Cyc_vector_length(void *data, object v) { object Cyc_length(void *data, object l){ int len = 0; while((l != NULL)){ - if (is_value_type(l) || ((list)l)->tag != cons_tag){ + if (is_value_type(l) || ((list)l)->tag != pair_tag){ Cyc_rt_raise_msg(data, "length - invalid parameter, expected list\n"); } l = cdr(l); @@ -1421,7 +1421,7 @@ object Cyc_command_line_arguments(void *data, object cont) { memcpy(ps, &s, sizeof(string_type)); ((list)pl)->hdr.mark = gc_color_red; ((list)pl)->hdr.grayed = 0; - ((list)pl)->tag = cons_tag; + ((list)pl)->tag = pair_tag; ((list)pl)->cons_car = ps; ((list)pl)->cons_cdr = lis; lis = pl; @@ -1791,8 +1791,8 @@ object FUNC_OP(void *data, common_type *x, object y) { \ x->double_t.value = x->double_t.value OP ((double_type *)y)->value; \ } else { \ make_string(s, "Bad argument type"); \ - make_cons(c1, y, NULL); \ - make_cons(c0, &s, &c1); \ + make_pair(c1, y, NULL); \ + make_pair(c0, &s, &c1); \ Cyc_rt_raise(data, &c0); \ } \ return x; \ @@ -1843,8 +1843,8 @@ object Cyc_div_op(void *data, common_type *x, object y) { x->double_t.value = x->double_t.value / ((double_type *)y)->value; } else { make_string(s, "Bad argument type"); - make_cons(c1, y, NULL); - make_cons(c0, &s, &c1); + make_pair(c1, y, NULL); + make_pair(c0, &s, &c1); Cyc_rt_raise(data, &c0); } return x; @@ -1902,8 +1902,8 @@ object Cyc_num_op_va_list(void *data, int argc, object (fn_op(void *, common_typ buf->double_t.value = ((double_type *)n)->value; } else { make_string(s, "Bad argument type"); - make_cons(c1, n, NULL); - make_cons(c0, &s, &c1); + make_pair(c1, n, NULL); + make_pair(c0, &s, &c1); Cyc_rt_raise(data, &c0); } @@ -2080,7 +2080,7 @@ list mcons(object a, object d) cons_type *c = malloc(sizeof(cons_type)); c->hdr.mark = gc_color_red; c->hdr.grayed = 0; - c->tag = cons_tag; + c->tag = pair_tag; c->cons_car = a; c->cons_cdr = d; return c; @@ -2221,7 +2221,7 @@ void _cddddr(void *data, object cont, object args) { return_closcall1(data, cont, cddddr(car(args))); } void _cons(void *data, object cont, object args) { Cyc_check_num_args(data, "cons", 2, args); - { make_cons(c, car(args), cadr(args)); + { make_pair(c, car(args), cadr(args)); return_closcall1(data, cont, &c); }} void _eq_127(void *data, object cont, object args){ Cyc_check_num_args(data, "eq?", 2, args); @@ -2589,7 +2589,7 @@ object apply(void *data, object cont, object func, object args){ case closure1_tag: case closureN_tag: if (func == Cyc_glo_call_cc) { - make_cons(c, cont, args); + make_pair(c, cont, args); //Cyc_display(args, stderr); // args = &c; //Cyc_display(&c, stderr); @@ -2603,7 +2603,7 @@ object apply(void *data, object cont, object func, object args){ dispatch(data, obj_obj2int(count), ((closure)func)->fn, func, cont, args); break; - case cons_tag: + case pair_tag: { // TODO: should add more error checking here, make sure car(func) is a symbol object fobj = car(func); @@ -2611,7 +2611,7 @@ object apply(void *data, object cont, object func, object args){ if (!is_object_type(fobj) || type_of(fobj) != symbol_tag) { Cyc_rt_raise2(data, "Call of non-procedure: ", func); } else if (strncmp(((symbol)fobj)->pname, "lambda", 7) == 0) { - make_cons(c, func, args); + make_pair(c, func, args); //printf("JAE DEBUG, sending to eval: "); //Cyc_display(&c, stderr); ((closure)Cyc_glo_eval_from_c)->fn(data, 2, Cyc_glo_eval_from_c, cont, &c, NULL); @@ -2620,13 +2620,13 @@ object apply(void *data, object cont, object func, object args){ // but need a way of looking them up ahead of time. // maybe a libinit() or such is required. } else if (strncmp(((symbol)fobj)->pname, "primitive", 10) == 0) { - make_cons(c, cadr(func), args); + make_pair(c, cadr(func), args); ((closure)Cyc_glo_eval_from_c)->fn(data, 3, Cyc_glo_eval_from_c, cont, &c, NULL); } else if (strncmp(((symbol)fobj)->pname, "procedure", 10) == 0) { - make_cons(c, func, args); + make_pair(c, func, args); ((closure)Cyc_glo_eval_from_c)->fn(data, 3, Cyc_glo_eval_from_c, cont, &c, NULL); } else { - make_cons(c, func, args); + make_pair(c, func, args); Cyc_rt_raise2(data, "Unable to evaluate: ", &c); } } @@ -2651,7 +2651,7 @@ void Cyc_apply(void *data, int argc, closure cont, object prim, ...){ tmp = va_arg(ap, object); args[i].hdr.mark = gc_color_red; args[i].hdr.grayed = 0; - args[i].tag = cons_tag; + args[i].tag = pair_tag; args[i].cons_car = tmp; args[i].cons_cdr = (i == (argc-1)) ? NULL : &args[i + 1]; } @@ -2684,7 +2684,7 @@ void Cyc_apply_from_buf(void *data, int argc, object prim, object *buf) { for (i = 1; i < argc; i++) { args[i - 1].hdr.mark = gc_color_red; args[i - 1].hdr.grayed = 0; - args[i - 1].tag = cons_tag; + args[i - 1].tag = pair_tag; args[i - 1].cons_car = buf[i]; args[i - 1].cons_cdr = (i == (argc-1)) ? NULL : &args[i]; } @@ -2704,7 +2704,7 @@ void Cyc_start_trampoline(gc_thread_data *thd) printf("Done with GC\n"); #endif - if (type_of(thd->gc_cont) == cons_tag || prim(thd->gc_cont)) { + if (type_of(thd->gc_cont) == pair_tag || prim(thd->gc_cont)) { Cyc_apply_from_buf(thd, thd->gc_num_args, thd->gc_cont, thd->gc_args); } else { do_dispatch(thd, thd->gc_num_args, ((closure)(thd->gc_cont))->fn, thd->gc_cont, thd->gc_args); @@ -2767,7 +2767,7 @@ char *gc_fixup_moved_obj(gc_thread_data *thd, int *alloci, char *obj, object hp) char *gc_move(char *obj, gc_thread_data *thd, int *alloci, int *heap_grown) { if (!is_object_type(obj)) return obj; switch(type_of(obj)){ - case cons_tag: { + case pair_tag: { list hp = gc_alloc(Cyc_heap, sizeof(cons_type), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } @@ -2894,7 +2894,7 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje if (is_value_type(o)) { // Can happen if a vector element was already // moved and we found an index. Just ignore it - } else if (type_of(o) == cons_tag) { + } else if (type_of(o) == pair_tag) { gc_move2heap(car(o)); gc_move2heap(cdr(o)); } else if (type_of(o) == vector_tag) { @@ -2929,7 +2929,7 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje while (scani < alloci) { object obj = ((gc_thread_data *)data)->moveBuf[scani]; switch(type_of(obj)) { - case cons_tag: { + case pair_tag: { gc_move2heap(car(obj)); gc_move2heap(cdr(obj)); break; diff --git a/scheme/base.sld b/scheme/base.sld index 36b506da..9643b628 100644 --- a/scheme/base.sld +++ b/scheme/base.sld @@ -877,7 +877,7 @@ (define-c Cyc-add-exception-handler "(void *data, int argc, closure _, object k, object h)" " gc_thread_data *thd = (gc_thread_data *)data; - make_cons(c, h, thd->exception_handler_stack); + make_pair(c, h, thd->exception_handler_stack); thd->exception_handler_stack = &c; return_closcall1(data, k, &c); ") (define-c Cyc-remove-exception-handler diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index 5ffda0bb..5c8fab3b 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -151,7 +151,7 @@ (wrap (lambda (s) (if (> num-args 0) s "")))) (string-append "#define closcall" n "(td,clo" args ") " - (wrap (string-append "if (type_of(clo) == cons_tag || prim(clo)) { Cyc_apply(td," n-1 ", (closure)(a1), clo" (if (> num-args 1) (substring args 3 (string-length args)) "") "); }")) + (wrap (string-append "if (type_of(clo) == pair_tag || prim(clo)) { Cyc_apply(td," n-1 ", (closure)(a1), clo" (if (> num-args 1) (substring args 3 (string-length args)) "") "); }")) (wrap " else { ") "((clo)->fn)(td," n ",clo" args ")" (wrap ";}") @@ -322,7 +322,7 @@ (create-cons (lambda (cvar a b) (c-code/vars - (string-append "make_cons(" cvar "," (c:body a) "," (c:body b) ");") + (string-append "make_pair(" cvar "," (c:body a) "," (c:body b) ");") (append (c:allocs a) (c:allocs b)))) ) (_c-compile-scalars @@ -623,7 +623,7 @@ ((eq? p 'string?) "Cyc_is_string") ((eq? p 'eof-object?) "Cyc_is_eof_object") ((eq? p 'symbol?) "Cyc_is_symbol") - ((eq? p 'cons) "make_cons") + ((eq? p 'cons) "make_pair") ((eq? p 'cell) "make_cell") ((eq? p 'cell-get) "cell_get") ((eq? p 'set-cell!) "Cyc_set_car") @@ -1550,7 +1550,7 @@ " make_cvar(" cvar-sym ", (object *)&" (cgen:mangle-global (car g)) ");") (emits* - "make_cons(" pair-sym ", find_or_add_symbol(\"" (symbol->string (car g)) + "make_pair(" pair-sym ", find_or_add_symbol(\"" (symbol->string (car g)) "\"), &" cvar-sym ");\n") (set! pairs (cons pair-sym pairs)) )) @@ -1567,13 +1567,13 @@ ((null? (cdr ps)) (if (not head-pair) (set! head-pair (car cs))) - (loop (cons (string-append "make_cons(" (car cs) ", &" (car ps) ",Cyc_global_variables);\n") code) + (loop (cons (string-append "make_pair(" (car cs) ", &" (car ps) ",Cyc_global_variables);\n") code) (cdr ps) (cdr cs))) (else (if (not head-pair) (set! head-pair (car cs))) - (loop (cons (string-append "make_cons(" (car cs) ", &" (car ps) ", &" (cadr cs) ");\n") code) + (loop (cons (string-append "make_pair(" (car cs) ", &" (car ps) ", &" (cadr cs) ");\n") code) (cdr ps) (cdr cs))))) (if head-pair diff --git a/scheme/eval.sld b/scheme/eval.sld index ba0f430e..63ddce53 100644 --- a/scheme/eval.sld +++ b/scheme/eval.sld @@ -311,7 +311,7 @@ ;; TODO: temporary testing ;; also, it would be nice to pass around something other than ;; symbols for primitives. could the runtime inject something into the env? -;; of course that is a problem for stuff like make_cons, that is just a +;; of course that is a problem for stuff like make_pair, that is just a ;; C macro... ;; (define (primitive-procedure? proc) ;; (equal? proc 'cons)) diff --git a/scheme/process-context.sld b/scheme/process-context.sld index 49d0dbef..efdde3c3 100644 --- a/scheme/process-context.sld +++ b/scheme/process-context.sld @@ -28,7 +28,7 @@ memcpy(ps, &s, sizeof(string_type)); ((list)pl)->hdr.mark = gc_color_red; ((list)pl)->hdr.grayed = 0; - ((list)pl)->tag = cons_tag; + ((list)pl)->tag = pair_tag; ((list)pl)->cons_car = ps; ((list)pl)->cons_cdr = lis; lis = pl; From 40416364f87b2816d8e9d5bfc8cafff32c627d27 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 23:00:04 -0400 Subject: [PATCH 089/121] Refactoring --- gc.c | 2 +- include/cyclone/runtime.h | 2 +- include/cyclone/types.h | 12 ++++++------ runtime.c | 10 +++++----- scheme/process-context.sld | 2 +- 5 files changed, 14 insertions(+), 14 deletions(-) diff --git a/gc.c b/gc.c index fb3ed863..d5cddfc4 100644 --- a/gc.c +++ b/gc.c @@ -514,7 +514,7 @@ size_t gc_allocated_bytes(object obj, gc_free_list *q, gc_free_list *r) } #endif t = type_of(obj); - if (t == pair_tag) return gc_heap_align(sizeof(cons_type)); + if (t == pair_tag) return gc_heap_align(sizeof(pair_type)); if (t == macro_tag) return gc_heap_align(sizeof(macro_type)); if (t == closure0_tag) return gc_heap_align(sizeof(closure0_type)); if (t == closure1_tag) return gc_heap_align(sizeof(closure1_type)); diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index e4575443..e0d6919e 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -62,7 +62,7 @@ object Cyc_global_set(void *thd, object *glo, object value); args and the number of provided ones, and pass the difference as 'count' */ #define load_varargs(var, arg_var, count) \ - list var = (count > 0) ? alloca(sizeof(cons_type)*count) : NULL; \ + list var = (count > 0) ? alloca(sizeof(pair_type)*count) : NULL; \ { \ int i; \ object tmp; \ diff --git a/include/cyclone/types.h b/include/cyclone/types.h index fd1b80ab..1eee9822 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -423,20 +423,20 @@ typedef struct { tag_type tag; object cons_car; object cons_cdr; -} cons_type; -typedef cons_type *list; -typedef cons_type pair_type; +} pair_type; +typedef pair_type *list; +typedef pair_type cons_type; typedef pair_type *pair; #define make_pair(n,a,d) \ - cons_type n; \ + pair_type n; \ n.hdr.mark = gc_color_red; \ n.hdr.grayed = 0; \ n.tag = pair_tag; \ n.cons_car = a; \ n.cons_cdr = d; #define make_cons(n,a,d) \ - cons_type n; \ + pair_type n; \ n.hdr.mark = gc_color_red; \ n.hdr.grayed = 0; \ n.tag = pair_tag; \ @@ -536,7 +536,7 @@ static const object primitive_##name = &name##_primitive /* All constant-size objects */ typedef union { boolean_type boolean_t; - cons_type cons_t; + pair_type cons_t; symbol_type symbol_t; primitive_type primitive_t; integer_type integer_t; diff --git a/runtime.c b/runtime.c index 9b90883f..e85b39e3 100644 --- a/runtime.c +++ b/runtime.c @@ -1416,7 +1416,7 @@ object Cyc_command_line_arguments(void *data, object cont) { object lis = NULL; for (i = _cyc_argc; i > 1; i--) { // skip program name object ps = alloca(sizeof(string_type)); - object pl = alloca(sizeof(cons_type)); + object pl = alloca(sizeof(pair_type)); make_string(s, _cyc_argv[i - 1]); memcpy(ps, &s, sizeof(string_type)); ((list)pl)->hdr.mark = gc_color_red; @@ -2077,7 +2077,7 @@ object Cyc_io_peek_char(void *data, object cont, object port) { // Functions internal to the runtime that use malloc list mcons(object a, object d) { - cons_type *c = malloc(sizeof(cons_type)); + pair_type *c = malloc(sizeof(pair_type)); c->hdr.mark = gc_color_red; c->hdr.grayed = 0; c->tag = pair_tag; @@ -2643,7 +2643,7 @@ void Cyc_apply(void *data, int argc, closure cont, object prim, ...){ va_list ap; object tmp; int i; - list args = alloca(sizeof(cons_type) * argc); + list args = alloca(sizeof(pair_type) * argc); va_start(ap, prim); @@ -2678,7 +2678,7 @@ void Cyc_apply_from_buf(void *data, int argc, object prim, object *buf) { exit(1); } - args = alloca(sizeof(cons_type) * (argc - 1)); + args = alloca(sizeof(pair_type) * (argc - 1)); cont = buf[0]; for (i = 1; i < argc; i++) { @@ -2768,7 +2768,7 @@ char *gc_move(char *obj, gc_thread_data *thd, int *alloci, int *heap_grown) { if (!is_object_type(obj)) return obj; switch(type_of(obj)){ case pair_tag: { - list hp = gc_alloc(Cyc_heap, sizeof(cons_type), obj, thd, heap_grown); + list hp = gc_alloc(Cyc_heap, sizeof(pair_type), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } case macro_tag: { diff --git a/scheme/process-context.sld b/scheme/process-context.sld index efdde3c3..5b0fe115 100644 --- a/scheme/process-context.sld +++ b/scheme/process-context.sld @@ -23,7 +23,7 @@ object lis = NULL; for (i = _cyc_argc; i > 0; i--) { object ps = alloca(sizeof(string_type)); - object pl = alloca(sizeof(cons_type)); + object pl = alloca(sizeof(pair_type)); make_string(s, _cyc_argv[i - 1]); memcpy(ps, &s, sizeof(string_type)); ((list)pl)->hdr.mark = gc_color_red; From 6a5713da369d2a80226c5ab4e12bd7140c14ad9b Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 23:21:15 -0400 Subject: [PATCH 090/121] Refactoring --- include/cyclone/types.h | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 1eee9822..5f03200d 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -91,10 +91,6 @@ enum object_tag { // Define the size of object tags typedef unsigned char tag_type; -// Temporary defines! -#define cons_tag 0 -// END - /* Threading */ typedef enum { CYC_THREAD_STATE_NEW, CYC_THREAD_STATE_RUNNABLE, CYC_THREAD_STATE_BLOCKED, CYC_THREAD_STATE_BLOCKED_COOPERATING, @@ -425,7 +421,6 @@ typedef struct { object cons_cdr; } pair_type; typedef pair_type *list; -typedef pair_type cons_type; typedef pair_type *pair; #define make_pair(n,a,d) \ @@ -435,13 +430,6 @@ typedef pair_type *pair; n.tag = pair_tag; \ n.cons_car = a; \ n.cons_cdr = d; -#define make_cons(n,a,d) \ - pair_type n; \ - n.hdr.mark = gc_color_red; \ - n.hdr.grayed = 0; \ - n.tag = pair_tag; \ - n.cons_car = a; \ - n.cons_cdr = d; #define make_cell(n,a) make_pair(n,a,NULL); @@ -536,7 +524,7 @@ static const object primitive_##name = &name##_primitive /* All constant-size objects */ typedef union { boolean_type boolean_t; - pair_type cons_t; + pair_type pair_t; symbol_type symbol_t; primitive_type primitive_t; integer_type integer_t; From aa85e34002f3d0c2f6dd80079c51361c6e787e8d Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 23:45:35 -0400 Subject: [PATCH 091/121] Refactoring --- include/cyclone/runtime.h | 4 ++-- include/cyclone/types.h | 14 +++++++------- runtime.c | 16 ++++++++-------- scheme/process-context.sld | 4 ++-- 4 files changed, 19 insertions(+), 19 deletions(-) diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index e0d6919e..b70be9c2 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -78,8 +78,8 @@ object Cyc_global_set(void *thd, object *glo, object value); var[i].hdr.mark = gc_color_red; \ var[i].hdr.grayed = 0; \ var[i].tag = pair_tag; \ - var[i].cons_car = tmp; \ - var[i].cons_cdr = (i == (count-1)) ? NULL : &var[i + 1]; \ + var[i].pair_car = tmp; \ + var[i].pair_cdr = (i == (count-1)) ? NULL : &var[i + 1]; \ } \ va_end(va); \ } \ diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 5f03200d..6cf46c5e 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -195,7 +195,7 @@ typedef enum { STAGE_CLEAR_OR_MARKING, STAGE_TRACING #endif #define type_of(obj) (((pair_type *) obj)->tag) -#define forward(obj) (((pair_type *) obj)->cons_car) +#define forward(obj) (((pair_type *) obj)->pair_car) /** Define value types. * Depending on the underlying architecture, compiler, etc these types @@ -417,8 +417,8 @@ typedef bytevector_type *bytevector; typedef struct { gc_header_type hdr; tag_type tag; - object cons_car; - object cons_cdr; + object pair_car; + object pair_cdr; } pair_type; typedef pair_type *list; typedef pair_type *pair; @@ -428,13 +428,13 @@ typedef pair_type *pair; n.hdr.mark = gc_color_red; \ n.hdr.grayed = 0; \ n.tag = pair_tag; \ - n.cons_car = a; \ - n.cons_cdr = d; + n.pair_car = a; \ + n.pair_cdr = d; #define make_cell(n,a) make_pair(n,a,NULL); -#define car(x) (((pair_type *) x)->cons_car) -#define cdr(x) (((pair_type *) x)->cons_cdr) +#define car(x) (((pair_type *) x)->pair_car) +#define cdr(x) (((pair_type *) x)->pair_cdr) #define caar(x) (car(car(x))) #define cadr(x) (car(cdr(x))) #define cdar(x) (cdr(car(x))) diff --git a/runtime.c b/runtime.c index e85b39e3..b4ecfcf4 100644 --- a/runtime.c +++ b/runtime.c @@ -1422,8 +1422,8 @@ object Cyc_command_line_arguments(void *data, object cont) { ((list)pl)->hdr.mark = gc_color_red; ((list)pl)->hdr.grayed = 0; ((list)pl)->tag = pair_tag; - ((list)pl)->cons_car = ps; - ((list)pl)->cons_cdr = lis; + ((list)pl)->pair_car = ps; + ((list)pl)->pair_cdr = lis; lis = pl; } return_closcall1(data, cont, lis); @@ -2081,8 +2081,8 @@ list mcons(object a, object d) c->hdr.mark = gc_color_red; c->hdr.grayed = 0; c->tag = pair_tag; - c->cons_car = a; - c->cons_cdr = d; + c->pair_car = a; + c->pair_cdr = d; return c; } @@ -2652,8 +2652,8 @@ void Cyc_apply(void *data, int argc, closure cont, object prim, ...){ args[i].hdr.mark = gc_color_red; args[i].hdr.grayed = 0; args[i].tag = pair_tag; - args[i].cons_car = tmp; - args[i].cons_cdr = (i == (argc-1)) ? NULL : &args[i + 1]; + args[i].pair_car = tmp; + args[i].pair_cdr = (i == (argc-1)) ? NULL : &args[i + 1]; } //printf("DEBUG applying primitive to "); //Cyc_display((object)&args[0]); @@ -2685,8 +2685,8 @@ void Cyc_apply_from_buf(void *data, int argc, object prim, object *buf) { args[i - 1].hdr.mark = gc_color_red; args[i - 1].hdr.grayed = 0; args[i - 1].tag = pair_tag; - args[i - 1].cons_car = buf[i]; - args[i - 1].cons_cdr = (i == (argc-1)) ? NULL : &args[i]; + args[i - 1].pair_car = buf[i]; + args[i - 1].pair_cdr = (i == (argc-1)) ? NULL : &args[i]; } apply(data, cont, prim, (object)&args[0]); diff --git a/scheme/process-context.sld b/scheme/process-context.sld index 5b0fe115..ec579955 100644 --- a/scheme/process-context.sld +++ b/scheme/process-context.sld @@ -29,8 +29,8 @@ ((list)pl)->hdr.mark = gc_color_red; ((list)pl)->hdr.grayed = 0; ((list)pl)->tag = pair_tag; - ((list)pl)->cons_car = ps; - ((list)pl)->cons_cdr = lis; + ((list)pl)->pair_car = ps; + ((list)pl)->pair_cdr = lis; lis = pl; } return_closcall1(data, k, lis); ") From 28261f2fb68833626052f39d5c97b3e4b2e841cc Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 23:51:24 -0400 Subject: [PATCH 092/121] Revised example section --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 2b419ca5..f926d820 100644 --- a/README.md +++ b/README.md @@ -58,16 +58,16 @@ Example Programs Cyclone provides several example programs, including: -- [Game of Life](examples/game-of-life) - The [game of life](https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life) example program and libraries from R7RS. +- [Tail Call Optimization](examples/tail-call-optimization.scm) - A simple example of Scheme tail call optimization; this program runs forever, calling into two mutually recursive functions. + +- [Threading](examples/threading) - Various examples of multi-threaded programs. + +- [Game of Life](examples/game-of-life) - The [Conway's game of life](https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life) example program and libraries from R7RS. - [Game of Life - PNG Image Generator](examples/game-of-life-png) - A modified version of game of life that uses libpng to create an image of each iteration instead of writing it to console. This example also demonstrates basic usage of the C Foreign Function Interface (FFI): -- [Threading](examples/threading) - Various examples of multi-threaded programs. - -- [Tail Call Optimization](examples/tail-call-optimization.scm) - A simple example of Scheme tail call optimization; this program runs forever, calling into two mutually recursive functions. - - Finally, the largest program is the compiler itself. Most of the code is contained in a series of libraries which are used by [`cyclone.scm`](cyclone.scm) and [`icyc.scm`](icyc.scm) to create executables for Cyclone's compiler and interpreter. License From 672f6e449c0c497f6c9a17bff4f6703d2a23dc03 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 23:53:24 -0400 Subject: [PATCH 093/121] Rev --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f926d820..8c3fd39a 100644 --- a/README.md +++ b/README.md @@ -64,7 +64,7 @@ Cyclone provides several example programs, including: - [Game of Life](examples/game-of-life) - The [Conway's game of life](https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life) example program and libraries from R7RS. -- [Game of Life - PNG Image Generator](examples/game-of-life-png) - A modified version of game of life that uses libpng to create an image of each iteration instead of writing it to console. This example also demonstrates basic usage of the C Foreign Function Interface (FFI): +- [Game of Life PNG Image Generator](examples/game-of-life-png) - A modified version of game of life that uses libpng to create an image of each iteration instead of writing it to console. This example also demonstrates basic usage of the C Foreign Function Interface (FFI): From 16667d92189e2ee0e6760641f4e12f812bb7d99f Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 23:57:15 -0400 Subject: [PATCH 094/121] Relocated animation --- README.md | 4 +--- examples/game-of-life-png/README.md | 1 + 2 files changed, 2 insertions(+), 3 deletions(-) create mode 100644 examples/game-of-life-png/README.md diff --git a/README.md b/README.md index 8c3fd39a..b0beb4b2 100644 --- a/README.md +++ b/README.md @@ -64,9 +64,7 @@ Cyclone provides several example programs, including: - [Game of Life](examples/game-of-life) - The [Conway's game of life](https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life) example program and libraries from R7RS. -- [Game of Life PNG Image Generator](examples/game-of-life-png) - A modified version of game of life that uses libpng to create an image of each iteration instead of writing it to console. This example also demonstrates basic usage of the C Foreign Function Interface (FFI): - - +- [Game of Life PNG Image Generator](examples/game-of-life-png) - A modified version of game of life that uses libpng to create an image of each iteration instead of writing it to console. This example also demonstrates basic usage of the C Foreign Function Interface (FFI). - Finally, the largest program is the compiler itself. Most of the code is contained in a series of libraries which are used by [`cyclone.scm`](cyclone.scm) and [`icyc.scm`](icyc.scm) to create executables for Cyclone's compiler and interpreter. diff --git a/examples/game-of-life-png/README.md b/examples/game-of-life-png/README.md new file mode 100644 index 00000000..6b9a5389 --- /dev/null +++ b/examples/game-of-life-png/README.md @@ -0,0 +1 @@ + From eb2b162feb38b055811ddad0b0e5ad459c79d5e9 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 23:57:51 -0400 Subject: [PATCH 095/121] Fixed URL --- examples/game-of-life-png/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/game-of-life-png/README.md b/examples/game-of-life-png/README.md index 6b9a5389..07606480 100644 --- a/examples/game-of-life-png/README.md +++ b/examples/game-of-life-png/README.md @@ -1 +1 @@ - + From 4d8a45bd65804e2aad48219499d928fb7445ad4e Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 23:59:44 -0400 Subject: [PATCH 096/121] Moved text --- examples/game-of-life-png/Makefile | 7 ------- examples/game-of-life-png/README.md | 11 +++++++++++ 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/examples/game-of-life-png/Makefile b/examples/game-of-life-png/Makefile index 8a1b43a6..87518744 100644 --- a/examples/game-of-life-png/Makefile +++ b/examples/game-of-life-png/Makefile @@ -1,10 +1,3 @@ -# -# Need to install ImageMagick, libpng, and libpng headers to build this project. -# To install these packages on Ubuntu: sudo apt-get install imagemagick libpng-dev -# -# To create PNG outputs and convert to an animation, run: -# make && ./life && ./convert.sh -# SCM_PROGRAM = life SCM_LIBS = example/grid example/life diff --git a/examples/game-of-life-png/README.md b/examples/game-of-life-png/README.md index 07606480..dbe60fb1 100644 --- a/examples/game-of-life-png/README.md +++ b/examples/game-of-life-png/README.md @@ -1 +1,12 @@ +# Game of Life - PNG Image Generator + +ImageMagick, libpng, and libpng headers must be installed to build this project. +To install these packages on Ubuntu: + + sudo apt-get install imagemagick libpng-dev + +To create PNG outputs and convert to an animation, run: + + make && ./life && ./convert.sh + From f2c4196c822dccb8ba1d8ae0c36bf93e42f98dc1 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 21 Apr 2016 00:01:23 -0400 Subject: [PATCH 097/121] Initial file --- examples/game-of-life/README.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 examples/game-of-life/README.md diff --git a/examples/game-of-life/README.md b/examples/game-of-life/README.md new file mode 100644 index 00000000..58ad38e0 --- /dev/null +++ b/examples/game-of-life/README.md @@ -0,0 +1 @@ +This is the game of life example program from R7RS. From f3476da8a780159c2a7c944eb93dea49d20e402d Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 21 Apr 2016 00:16:33 -0400 Subject: [PATCH 098/121] Refactoring --- include/cyclone/types.h | 43 +++++++++++++++++++++++++++++++++-------- 1 file changed, 35 insertions(+), 8 deletions(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 6cf46c5e..b1788854 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -340,17 +340,24 @@ typedef struct { char *str; } string_type; #define make_string(cs, s) string_type cs; \ -{ int len = strlen(s); cs.tag = string_tag; cs.len = len; cs.hdr.mark = gc_color_red; cs.hdr.grayed = 0; \ +{ int len = strlen(s); \ + cs.hdr.mark = gc_color_red; \ + cs.hdr.grayed = 0; \ + cs.tag = string_tag; \ + cs.len = len; \ cs.str = alloca(sizeof(char) * (len + 1)); \ memcpy(cs.str, s, len + 1);} -#define make_string_with_len(cs, s, length) string_type cs; cs.hdr.mark = gc_color_red; cs.hdr.grayed = 0; \ +#define make_string_with_len(cs, s, length) string_type cs; \ { int len = length; \ + cs.hdr.mark = gc_color_red; \ + cs.hdr.grayed = 0; \ cs.tag = string_tag; cs.len = len; \ cs.str = alloca(sizeof(char) * (len + 1)); \ memcpy(cs.str, s, len); \ cs.str[len] = '\0';} -#define make_string_noalloc(cs, s, length) string_type cs; cs.hdr.mark = gc_color_red; cs.hdr.grayed = 0; \ -{ cs.tag = string_tag; cs.len = length; \ +#define make_string_noalloc(cs, s, length) string_type cs; \ +{ cs.hdr.mark = gc_color_red; cs.hdr.grayed = 0; \ + cs.tag = string_tag; cs.len = length; \ cs.str = s; } #define string_len(x) (((string_type *) x)->len) @@ -500,10 +507,30 @@ typedef closureN_type *closureN; typedef closure0_type *closure; typedef closure0_type *macro; -#define mmacro(c,f) macro_type c; c.hdr.mark = gc_color_red; c.hdr.grayed = 0; c.tag = macro_tag; c.fn = f; c.num_args = -1; -#define mclosure0(c,f) closure0_type c; c.hdr.mark = gc_color_red; c.hdr.grayed = 0; c.tag = closure0_tag; c.fn = f; c.num_args = -1; -#define mclosure1(c,f,a) closure1_type c; c.hdr.mark = gc_color_red; c.hdr.grayed = 0; c.tag = closure1_tag; \ - c.fn = f; c.num_args = -1; c.elt1 = a; +#define mmacro(c,f) \ + macro_type c; \ + c.hdr.mark = gc_color_red; \ + c.hdr.grayed = 0; \ + c.tag = macro_tag; \ + c.fn = f; \ + c.num_args = -1; + +#define mclosure0(c,f) \ + closure0_type c; \ + c.hdr.mark = gc_color_red; \ + c.hdr.grayed = 0; \ + c.tag = closure0_tag; \ + c.fn = f; \ + c.num_args = -1; + +#define mclosure1(c,f,a) \ + closure1_type c; \ + c.hdr.mark = gc_color_red; \ + c.hdr.grayed = 0; \ + c.tag = closure1_tag; \ + c.fn = f; \ + c.num_args = -1; \ + c.elt1 = a; /* Primitive types */ typedef struct { From ea225a3ab77b72c76a3218427fea2fd919edaac3 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 21 Apr 2016 00:36:51 -0400 Subject: [PATCH 099/121] Refactoring --- include/cyclone/runtime.h | 3 ++ runtime.c | 89 +++++++++++++++++++++------------------ scheme/cyclone/cgen.sld | 2 +- 3 files changed, 51 insertions(+), 43 deletions(-) diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index b70be9c2..742e0815 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -24,6 +24,8 @@ #define Cyc_check_cons_or_null(d,obj) { if (obj != NULL) { Cyc_check_cons(d,obj); }} #define Cyc_check_cons(d,obj) Cyc_check_type(d,Cyc_is_cons, pair_tag, obj); +#define Cyc_check_pair_or_null(d,obj) { if (obj != NULL) { Cyc_check_pair(d,obj); }} +#define Cyc_check_pair(d,obj) Cyc_check_type(d,Cyc_is_pair, pair_tag, obj); #define Cyc_check_num(d,obj) Cyc_check_type(d,Cyc_is_number, integer_tag, obj); #define Cyc_check_int(d,obj) Cyc_check_type(d,Cyc_is_integer, integer_tag, obj); #define Cyc_check_str(d,obj) Cyc_check_type(d,Cyc_is_string, string_tag, obj); @@ -209,6 +211,7 @@ object Cyc_io_read_line(void *data, object cont, object port); object Cyc_is_boolean(object o); object Cyc_is_cons(object o); +object Cyc_is_pair(object o); object Cyc_is_null(object o); object Cyc_is_number(object o); object Cyc_is_real(object o); diff --git a/runtime.c b/runtime.c index b4ecfcf4..ea9bd4a1 100644 --- a/runtime.c +++ b/runtime.c @@ -482,9 +482,9 @@ object Cyc_has_cycle(object lst) { fast_lst = cdr(lst); while(1) { if ((fast_lst == NULL)) return boolean_f; - if (Cyc_is_cons(fast_lst) == boolean_f) return boolean_f; + if (Cyc_is_pair(fast_lst) == boolean_f) return boolean_f; if ((cdr(fast_lst)) == NULL) return boolean_f; - if (Cyc_is_cons(cdr(fast_lst)) == boolean_f) return boolean_f; + if (Cyc_is_pair(cdr(fast_lst)) == boolean_f) return boolean_f; if (is_object_type(car(slow_lst)) && boolean_f == Cyc_is_boolean(car(slow_lst)) && // Avoid expected dupes //boolean_f == Cyc_is_symbol(car(slow_lst)) && // @@ -734,7 +734,7 @@ object Cyc_write_char(void *data, object c, object port) // TODO: should not be a predicate, may end up moving these to Scheme code object memberp(void *data, object x, list l) { - Cyc_check_cons_or_null(data, l); + Cyc_check_pair_or_null(data, l); for (; l != NULL; l = cdr(l)) { if (boolean_f != equalp(x,car(l))) return boolean_t; @@ -744,7 +744,7 @@ object memberp(void *data, object x, list l) object memqp(void *data, object x, list l) { - Cyc_check_cons_or_null(data, l); + Cyc_check_pair_or_null(data, l); for (; l != NULL; l = cdr(l)){ if ((x == car(l))) return boolean_t; @@ -768,7 +768,7 @@ list assq(void *data, object x, list l) if ((l == NULL) || is_value_type(l) || type_of(l) != pair_tag) return boolean_f; for (; (l != NULL); l = cdr(l)) { list la = car(l); - Cyc_check_cons(data, la); + Cyc_check_pair(data, la); if ((x == car(la))) return la; } return boolean_f; @@ -779,7 +779,7 @@ list assoc(void *data, object x, list l) if ((l == NULL) || is_value_type(l) || type_of(l) != pair_tag) return boolean_f; for (; (l != NULL); l = cdr(l)){ list la = car(l); - Cyc_check_cons(data, la); + Cyc_check_pair(data, la); if (boolean_f != equalp(x,car(la))) return la; } return boolean_f; @@ -873,6 +873,11 @@ object Cyc_is_cons(object o){ return boolean_t; return boolean_f;} +object Cyc_is_pair(object o){ + if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == pair_tag) + return boolean_t; + return boolean_f;} + object Cyc_is_null(object o){ if (o == NULL) return boolean_t; @@ -983,7 +988,7 @@ object Cyc_eq(object x, object y) { } object Cyc_set_car(void *data, object l, object val) { - if (Cyc_is_cons(l) == boolean_f) Cyc_invalid_type_error(data, pair_tag, l); + if (Cyc_is_pair(l) == boolean_f) Cyc_invalid_type_error(data, pair_tag, l); gc_mut_update((gc_thread_data *)data, car(l), val); car(l) = val; add_mutation(data, l, -1, val); @@ -991,7 +996,7 @@ object Cyc_set_car(void *data, object l, object val) { } object Cyc_set_cdr(void *data, object l, object val) { - if (Cyc_is_cons(l) == boolean_f) Cyc_invalid_type_error(data, pair_tag, l); + if (Cyc_is_pair(l) == boolean_f) Cyc_invalid_type_error(data, pair_tag, l); gc_mut_update((gc_thread_data *)data, cdr(l), val); cdr(l) = val; add_mutation(data, l, -1, val); @@ -1147,7 +1152,7 @@ object Cyc_list2string(void *data, object cont, object lst){ int i = 0; object len; - Cyc_check_cons_or_null(data, lst); + Cyc_check_pair_or_null(data, lst); len = Cyc_length(data, lst); // Inefficient, walks whole list buf = alloca(sizeof(char) * (obj_obj2int(len) + 1)); @@ -1716,7 +1721,7 @@ object Cyc_list2vector(void *data, object cont, object l) { object lst = l; int i = 0; - Cyc_check_cons_or_null(data, l); + Cyc_check_pair_or_null(data, l); len = Cyc_length(data, l); v = alloca(sizeof(vector_type)); ((vector)v)->hdr.mark = gc_color_red; @@ -2101,123 +2106,123 @@ void _Cyc_91global_91vars(void *data, object cont, object args){ void _car(void *data, object cont, object args) { Cyc_check_num_args(data, "car", 1, args); { object var = car(args); - Cyc_check_cons(data, var); + Cyc_check_pair(data, var); return_closcall1(data, cont, car(var)); }} void _cdr(void *data, object cont, object args) { Cyc_check_num_args(data, "cdr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cdr(car(args))); } void _caar(void *data, object cont, object args) { Cyc_check_num_args(data, "caar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, caar(car(args))); } void _cadr(void *data, object cont, object args) { Cyc_check_num_args(data, "cadr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cadr(car(args))); } void _cdar(void *data, object cont, object args) { Cyc_check_num_args(data, "cdar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cdar(car(args))); } void _cddr(void *data, object cont, object args) { Cyc_check_num_args(data, "cddr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cddr(car(args))); } void _caaar(void *data, object cont, object args) { Cyc_check_num_args(data, "caaar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, caaar(car(args))); } void _caadr(void *data, object cont, object args) { Cyc_check_num_args(data, "caadr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, caadr(car(args))); } void _cadar(void *data, object cont, object args) { Cyc_check_num_args(data, "cadar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cadar(car(args))); } void _caddr(void *data, object cont, object args) { Cyc_check_num_args(data, "caddr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, caddr(car(args))); } void _cdaar(void *data, object cont, object args) { Cyc_check_num_args(data, "cdaar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cdaar(car(args))); } void _cdadr(void *data, object cont, object args) { Cyc_check_num_args(data, "cdadr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cdadr(car(args))); } void _cddar(void *data, object cont, object args) { Cyc_check_num_args(data, "cddar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cddar(car(args))); } void _cdddr(void *data, object cont, object args) { Cyc_check_num_args(data, "cdddr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cdddr(car(args))); } void _caaaar(void *data, object cont, object args) { Cyc_check_num_args(data, "caaaar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, caaaar(car(args))); } void _caaadr(void *data, object cont, object args) { Cyc_check_num_args(data, "caaadr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, caaadr(car(args))); } void _caadar(void *data, object cont, object args) { Cyc_check_num_args(data, "caadar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, caadar(car(args))); } void _caaddr(void *data, object cont, object args) { Cyc_check_num_args(data, "caaddr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, caaddr(car(args))); } void _cadaar(void *data, object cont, object args) { Cyc_check_num_args(data, "cadaar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cadaar(car(args))); } void _cadadr(void *data, object cont, object args) { Cyc_check_num_args(data, "cadadr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cadadr(car(args))); } void _caddar(void *data, object cont, object args) { Cyc_check_num_args(data, "caddar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, caddar(car(args))); } void _cadddr(void *data, object cont, object args) { Cyc_check_num_args(data, "cadddr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cadddr(car(args))); } void _cdaaar(void *data, object cont, object args) { Cyc_check_num_args(data, "cdaaar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cdaaar(car(args))); } void _cdaadr(void *data, object cont, object args) { Cyc_check_num_args(data, "cdaadr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cdaadr(car(args))); } void _cdadar(void *data, object cont, object args) { Cyc_check_num_args(data, "cdadar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cdadar(car(args))); } void _cdaddr(void *data, object cont, object args) { Cyc_check_num_args(data, "cdaddr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cdaddr(car(args))); } void _cddaar(void *data, object cont, object args) { Cyc_check_num_args(data, "cddaar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cddaar(car(args))); } void _cddadr(void *data, object cont, object args) { Cyc_check_num_args(data, "cddadr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cddadr(car(args))); } void _cdddar(void *data, object cont, object args) { Cyc_check_num_args(data, "cdddar", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cdddar(car(args))); } void _cddddr(void *data, object cont, object args) { Cyc_check_num_args(data, "cddddr", 1, args); - Cyc_check_cons(data, car(args)); + Cyc_check_pair(data, car(args)); return_closcall1(data, cont, cddddr(car(args))); } void _cons(void *data, object cont, object args) { Cyc_check_num_args(data, "cons", 2, args); @@ -2326,7 +2331,7 @@ void _integer_127(void *data, object cont, object args) { return_closcall1(data, cont, Cyc_is_integer(car(args))); } void _pair_127(void *data, object cont, object args) { Cyc_check_num_args(data, "pair?", 1, args); - return_closcall1(data, cont, Cyc_is_cons(car(args))); } + return_closcall1(data, cont, Cyc_is_pair(car(args))); } void _procedure_127(void *data, object cont, object args) { Cyc_check_num_args(data, "procedure?", 1, args); return_closcall1(data, cont, Cyc_is_procedure(data, car(args))); } @@ -2577,7 +2582,7 @@ object apply(void *data, object cont, object func, object args){ } // Causes problems... - //Cyc_check_cons_or_null(args); + //Cyc_check_pair_or_null(args); switch(type_of(func)) { case primitive_tag: diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index 5c8fab3b..7b1598bf 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -614,7 +614,7 @@ ((eq? p 'number?) "Cyc_is_number") ((eq? p 'real?) "Cyc_is_real") ((eq? p 'integer?) "Cyc_is_integer") - ((eq? p 'pair?) "Cyc_is_cons") + ((eq? p 'pair?) "Cyc_is_pair") ((eq? p 'procedure?) "Cyc_is_procedure") ((eq? p 'macro?) "Cyc_is_macro") ((eq? p 'port?) "Cyc_is_port") From f89d35bb09e2c2c85fe28575054d80645b20575a Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 21 Apr 2016 00:48:56 -0400 Subject: [PATCH 100/121] Removed unused functions --- include/cyclone/runtime.h | 3 --- runtime.c | 5 ----- 2 files changed, 8 deletions(-) diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index 742e0815..bac2e485 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -22,8 +22,6 @@ #define Cyc_check_type(data, fnc_test, tag, obj) { \ if ((boolean_f == fnc_test(obj))) Cyc_invalid_type_error(data, tag, obj); } -#define Cyc_check_cons_or_null(d,obj) { if (obj != NULL) { Cyc_check_cons(d,obj); }} -#define Cyc_check_cons(d,obj) Cyc_check_type(d,Cyc_is_cons, pair_tag, obj); #define Cyc_check_pair_or_null(d,obj) { if (obj != NULL) { Cyc_check_pair(d,obj); }} #define Cyc_check_pair(d,obj) Cyc_check_type(d,Cyc_is_pair, pair_tag, obj); #define Cyc_check_num(d,obj) Cyc_check_type(d,Cyc_is_number, integer_tag, obj); @@ -210,7 +208,6 @@ object Cyc_io_peek_char(void *data, object cont, object port); object Cyc_io_read_line(void *data, object cont, object port); object Cyc_is_boolean(object o); -object Cyc_is_cons(object o); object Cyc_is_pair(object o); object Cyc_is_null(object o); object Cyc_is_number(object o); diff --git a/runtime.c b/runtime.c index ea9bd4a1..91fdc905 100644 --- a/runtime.c +++ b/runtime.c @@ -868,11 +868,6 @@ object Cyc_is_boolean(object o){ return boolean_t; return boolean_f;} -object Cyc_is_cons(object o){ - if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == pair_tag) - return boolean_t; - return boolean_f;} - object Cyc_is_pair(object o){ if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == pair_tag) return boolean_t; From b4d67004fe20ccfaa48d371ae0edf9714c6113d4 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Thu, 21 Apr 2016 03:37:20 -0400 Subject: [PATCH 101/121] Cleaned up list of tags --- include/cyclone/types.h | 34 +++++++++++++++++----------------- runtime.c | 40 ++++++++++++++++++++-------------------- 2 files changed, 37 insertions(+), 37 deletions(-) diff --git a/include/cyclone/types.h b/include/cyclone/types.h index b1788854..5a7dff31 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -66,26 +66,26 @@ typedef void *object; // Define a tag for each possible type of object. // Remember to update tag_names in runtime.c when adding new tags enum object_tag { - pair_tag = 0 - , symbol_tag // 1 - , forward_tag // 2 + boolean_tag = 0 // 0 + , bytevector_tag // 1 + , c_opaque_tag // 2 , closure0_tag // 3 , closure1_tag // 4 , closureN_tag // 5 - , integer_tag // 6 - , double_tag // 7 - , string_tag // 8 - , primitive_tag // 9 - , eof_tag // 10 - , port_tag // 11 - , boolean_tag // 12 - , cvar_tag // 13 - , vector_tag // 14 - , macro_tag // 15 - , mutex_tag // 16 - , cond_var_tag // 17 - , bytevector_tag // 18 - , c_opaque_tag // 19 + , cond_var_tag // 6 + , cvar_tag // 7 + , double_tag // 8 + , eof_tag // 9 + , forward_tag // 10 + , integer_tag // 11 + , macro_tag // 12 + , mutex_tag // 13 + , pair_tag // 14 + , port_tag // 15 + , primitive_tag // 16 + , string_tag // 17 + , symbol_tag // 18 + , vector_tag // 19 }; // Define the size of object tags diff --git a/runtime.c b/runtime.c index 91fdc905..099f8928 100644 --- a/runtime.c +++ b/runtime.c @@ -28,26 +28,26 @@ object Cyc_global_set(void *thd, object *glo, object value) /* Error checking section - type mismatch, num args, etc */ /* Type names to use for error messages */ const char *tag_names[] = { \ - "pair" \ - , "symbol" \ - , "" \ - , "procedure" \ - , "procedure" \ - , "procedure" \ - , "number" \ - , "number" \ - , "string" \ - , "primitive" \ - , "eof" \ - , "port" \ - , "boolean" \ - , "C primitive" \ - , "vector" \ - , "macro" \ - , "mutex" \ - , "condition variable" \ - , "bytevector" \ - , "opaque" \ + /*boolean_tag */ "boolean" \ + /*bytevector_tag*/ , "bytevector" \ + /*c_opaque_tag */ , "opaque" \ + /*closure0_tag */ , "procedure" \ + /*closure1_tag */ , "procedure" \ + /*closureN_tag */ , "procedure" \ + /*cond_var_tag */ , "condition variable" \ + /*cvar_tag */ , "C primitive" \ + /*double_tag */ , "number" \ + /*eof_tag */ , "eof" \ + /*forward_tag */ , "" \ + /*integer_tag */ , "number" \ + /*macro_tag */ , "macro" \ + /*mutex_tag */ , "mutex" \ + /*pair_tag */ , "pair" \ + /*port_tag */ , "port" \ + /*primitive_tag */ , "primitive" \ + /*string_tag */ , "string" \ + /*symbol_tag */ , "symbol" \ + /*vector_tag */ , "vector" \ , "Reserved for future use" }; void Cyc_invalid_type_error(void *data, int tag, object found) { From 9bcdd3537092c06a1d7f7afe0fd91f72f2c4c4e0 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 22:07:14 -0400 Subject: [PATCH 102/121] Added more GC constants --- gc.c | 2 +- include/cyclone/types.h | 6 ++++-- runtime.c | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/gc.c b/gc.c index d5cddfc4..bbfd90f9 100644 --- a/gc.c +++ b/gc.c @@ -393,7 +393,7 @@ int gc_grow_heap(gc_heap *h, int heap_type, size_t size, size_t chunk_size) // so for now it is not used. If it is used again, the initial heaps will // need to start at a lower size (EG 1 MB). { - size_t prev_size = 2 * 1024 * 1024; + size_t prev_size = GROW_HEAP_BY_SIZE; new_size = 0; h_last = h; while (h_last->next) { diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 5a7dff31..b6b943ce 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -28,8 +28,10 @@ // This is used as the first generation of the GC. #define STACK_SIZE 500000 -// Size of a "page" on the heap (the second generation), in bytes. -#define HEAP_SIZE (16 * 1024 * 1024) +// Parameters for size of a "page" on the heap (the second generation GC), in bytes. +#define GROW_HEAP_BY_SIZE (2 * 1024 * 1024) // Grow first page by adding this amount to it +#define INITIAL_HEAP_SIZE (3 * 1024 * 1024) // Size of the first page +#define HEAP_SIZE (16 * 1024 * 1024) // Normal size of a page ///////////////////////////// // Major GC tuning parameters diff --git a/runtime.c b/runtime.c index 099f8928..c7706e17 100644 --- a/runtime.c +++ b/runtime.c @@ -159,7 +159,7 @@ static bool set_insert(ck_hs_t *hs, const void *value) void gc_init_heap(long heap_size) { - size_t initial_heap_size = 3 * 1024 * 1024; + size_t initial_heap_size = INITIAL_HEAP_SIZE; Cyc_heap = malloc(sizeof(gc_heap_root)); Cyc_heap->heap = gc_heap_create(HEAP_REST, initial_heap_size, 0, 0); Cyc_heap->small_obj_heap = gc_heap_create(HEAP_SM, initial_heap_size, 0, 0); From ef1db96f2a22409676b0853a9264a50d5e844889 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 23:10:46 -0400 Subject: [PATCH 103/121] Refactoring --- gc.c | 14 +++++----- include/cyclone/types.h | 8 +++--- runtime.c | 58 ++++++++++++++++++++--------------------- scheme/cyclone/cgen.sld | 6 ++--- 4 files changed, 43 insertions(+), 43 deletions(-) diff --git a/gc.c b/gc.c index bbfd90f9..13ab828a 100644 --- a/gc.c +++ b/gc.c @@ -290,10 +290,10 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) vector_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = vector_tag; - hp->num_elt = ((vector) obj)-> num_elt; - hp->elts = (object *)(((char *)hp) + sizeof(vector_type)); - for (i = 0; i < hp->num_elt; i++) { - hp->elts[i] = ((vector) obj)->elts[i]; + hp->num_elements = ((vector) obj)-> num_elements; + hp->elements = (object *)(((char *)hp) + sizeof(vector_type)); + for (i = 0; i < hp->num_elements; i++) { + hp->elements[i] = ((vector) obj)->elements[i]; } return (char *)hp; } @@ -522,7 +522,7 @@ size_t gc_allocated_bytes(object obj, gc_free_list *q, gc_free_list *r) return gc_heap_align(sizeof(closureN_type) + sizeof(object) * ((closureN_type *)obj)->num_elt); } if (t == vector_tag){ - return gc_heap_align(sizeof(vector_type) + sizeof(object) * ((vector_type *)obj)->num_elt); + return gc_heap_align(sizeof(vector_type) + sizeof(object) * ((vector_type *)obj)->num_elements); } if (t == bytevector_tag) { return gc_heap_align(sizeof(bytevector_type) + sizeof(char) * ((bytevector)obj)->len); @@ -1045,9 +1045,9 @@ void gc_mark_black(object obj) break; } case vector_tag: { - int i, n = ((vector) obj)->num_elt; + int i, n = ((vector) obj)->num_elements; for (i = 0; i < n; i++) { - gc_collector_mark_gray(obj, ((vector) obj)->elts[i]); + gc_collector_mark_gray(obj, ((vector) obj)->elements[i]); } break; } diff --git a/include/cyclone/types.h b/include/cyclone/types.h index b6b943ce..e9915333 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -390,8 +390,8 @@ typedef struct { typedef struct { gc_header_type hdr; tag_type tag; - int num_elt; - object *elts; + int num_elements; + object *elements; } vector_type; typedef vector_type *vector; @@ -400,8 +400,8 @@ typedef vector_type *vector; v.hdr.mark = gc_color_red; \ v.hdr.grayed = 0; \ v.tag = vector_tag; \ - v.num_elt = 0; \ - v.elts = NULL; + v.num_elements = 0; \ + v.elements = NULL; /* Bytevector type */ diff --git a/runtime.c b/runtime.c index c7706e17..cbdc11d1 100644 --- a/runtime.c +++ b/runtime.c @@ -441,10 +441,10 @@ int equal(x, y) object x, y; case vector_tag: if (is_object_type(y) && type_of(y) == vector_tag && - ((vector)x)->num_elt == ((vector)y)->num_elt) { + ((vector)x)->num_elements == ((vector)y)->num_elements) { int i; - for (i = 0; i < ((vector)x)->num_elt; i++) { - if (equalp(((vector)x)->elts[i], ((vector)y)->elts[i]) == boolean_f) + for (i = 0; i < ((vector)x)->num_elements; i++) { + if (equalp(((vector)x)->elements[i], ((vector)y)->elements[i]) == boolean_f) return 0; } return 1; @@ -586,11 +586,11 @@ object Cyc_display(object x, FILE *port) break; case vector_tag: fprintf(port, "#("); - for (i = 0; i < ((vector) x)->num_elt; i++) { + for (i = 0; i < ((vector) x)->num_elements; i++) { if (i > 0) { fprintf(port, " "); } - Cyc_display(((vector)x)->elts[i], port); + Cyc_display(((vector)x)->elements[i], port); } fprintf(port, ")"); break; @@ -1004,15 +1004,15 @@ object Cyc_vector_set(void *data, object v, object k, object obj) { Cyc_check_num(data, k); idx = unbox_number(k); - if (idx < 0 || idx >= ((vector)v)->num_elt) { + if (idx < 0 || idx >= ((vector)v)->num_elements) { Cyc_rt_raise2(data, "vector-set! - invalid index", k); } gc_mut_update((gc_thread_data *)data, - ((vector)v)->elts[idx], + ((vector)v)->elements[idx], obj); - ((vector)v)->elts[idx] = obj; + ((vector)v)->elements[idx] = obj; add_mutation(data, v, idx, obj); return v; } @@ -1023,11 +1023,11 @@ object Cyc_vector_ref(void *data, object v, object k) { Cyc_check_num(data, k); idx = unbox_number(k); - if (idx < 0 || idx >= ((vector)v)->num_elt) { + if (idx < 0 || idx >= ((vector)v)->num_elements) { Cyc_rt_raise2(data, "vector-ref - invalid index", obj_int2obj(idx)); } - return ((vector)v)->elts[idx]; + return ((vector)v)->elements[idx]; } integer_type Cyc_length_as_object(void *data, object l){ @@ -1044,7 +1044,7 @@ integer_type Cyc_length_as_object(void *data, object l){ object Cyc_vector_length(void *data, object v) { if ((v != NULL) && !is_value_type(v) && ((list)v)->tag == vector_tag) { - return obj_int2obj(((vector)v)->num_elt); + return obj_int2obj(((vector)v)->num_elements); } Cyc_rt_raise_msg(data, "vector-length - invalid parameter, expected vector\n"); } @@ -1449,13 +1449,13 @@ object Cyc_make_vector(void *data, object cont, int argc, object len, ...) { ((vector)v)->hdr.mark = gc_color_red; ((vector)v)->hdr.grayed = 0; ((vector)v)->tag = vector_tag; - ((vector)v)->num_elt = ulen; - ((vector)v)->elts = - (((vector)v)->num_elt > 0) ? - (object *)alloca(sizeof(object) * ((vector)v)->num_elt) : + ((vector)v)->num_elements = ulen; + ((vector)v)->elements = + (((vector)v)->num_elements > 0) ? + (object *)alloca(sizeof(object) * ((vector)v)->num_elements) : NULL; - for (i = 0; i < ((vector)v)->num_elt; i++) { - ((vector)v)->elts[i] = fill; + for (i = 0; i < ((vector)v)->num_elements; i++) { + ((vector)v)->elements[i] = fill; } // } else { // // Experimenting with heap allocation if vector is too large @@ -1465,10 +1465,10 @@ object Cyc_make_vector(void *data, object cont, int argc, object len, ...) { // boolean_f, (gc_thread_data *)data, &heap_grown); // mark(vt) = ((gc_thread_data *)data)->gc_alloc_color; // type_of(vt) = vector_tag; -// vt->num_elt = ulen; -// vt->elts = (object *)((char *)vt) + sizeof(vector_type); +// vt->num_elements = ulen; +// vt->elements = (object *)((char *)vt) + sizeof(vector_type); // for (i = 0; i < ulen; i++) { -// vt->elts[i] = fill; +// vt->elements[i] = fill; // } // v = vt; // } @@ -1722,13 +1722,13 @@ object Cyc_list2vector(void *data, object cont, object l) { ((vector)v)->hdr.mark = gc_color_red; ((vector)v)->hdr.grayed = 0; ((vector)v)->tag = vector_tag; - ((vector)v)->num_elt = obj_obj2int(len); - ((vector)v)->elts = - (((vector)v)->num_elt > 0) ? - (object *)alloca(sizeof(object) * ((vector)v)->num_elt) : + ((vector)v)->num_elements = obj_obj2int(len); + ((vector)v)->elements = + (((vector)v)->num_elements > 0) ? + (object *)alloca(sizeof(object) * ((vector)v)->num_elements) : NULL; while((lst != NULL)) { - ((vector)v)->elts[i++] = car(lst); + ((vector)v)->elements[i++] = car(lst); lst = cdr(lst); } return_closcall1(data, cont, v); @@ -2791,7 +2791,7 @@ char *gc_move(char *obj, gc_thread_data *thd, int *alloci, int *heap_grown) { } case vector_tag: { vector_type *hp = gc_alloc(Cyc_heap, - sizeof(vector_type) + sizeof(object) * (((vector) obj)->num_elt), + sizeof(vector_type) + sizeof(object) * (((vector) obj)->num_elements), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } @@ -2904,7 +2904,7 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje l = cdr(l); idx = car(l); i = obj_obj2int(idx); - gc_move2heap(((vector)o)->elts[i]); + gc_move2heap(((vector)o)->elements[i]); } else if (type_of(o) == forward_tag) { // Already transported, skip } else { @@ -2945,9 +2945,9 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje break; } case vector_tag: { - int i, n = ((vector) obj)->num_elt; + int i, n = ((vector) obj)->num_elements; for (i = 0; i < n; i++) { - gc_move2heap(((vector) obj)->elts[i]); + gc_move2heap(((vector) obj)->elements[i]); } break; } diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index 7b1598bf..32aef406 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -368,7 +368,7 @@ (c:allocs idx-code) ;; Member alloc at index i (list ;; Assign this member to vector (string-append - cvar-name ".elts[" (number->string i) "] = " + cvar-name ".elements[" (number->string i) "] = " (c:body idx-code) ";"))))))))) ) @@ -386,8 +386,8 @@ (list ; Allocate the vector (string-append "make_empty_vector(" cvar-name ");" - cvar-name ".num_elt = " (number->string len) ";" - cvar-name ".elts = (object *)alloca(sizeof(object) * " + cvar-name ".num_elements = " (number->string len) ";" + cvar-name ".elements = (object *)alloca(sizeof(object) * " (number->string len) ");"))))) (loop 0 code)))))) From df20aaa6d3143b9258c7777944c210ecb4367853 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 20 Apr 2016 23:42:21 -0400 Subject: [PATCH 104/121] Refactoring --- gc.c | 4 ++-- include/cyclone/types.h | 4 ++-- runtime.c | 2 +- scheme/cyclone/cgen.sld | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/gc.c b/gc.c index 13ab828a..5936e3f5 100644 --- a/gc.c +++ b/gc.c @@ -268,7 +268,7 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) type_of(hp) = closure1_tag; hp->fn = ((closure1) obj)->fn; hp->num_args = ((closure1) obj)->num_args; - hp->elt1 = ((closure1) obj)->elt1; + hp->element = ((closure1) obj)->element; return (char *)hp; } case closureN_tag: { @@ -1035,7 +1035,7 @@ void gc_mark_black(object obj) break; } case closure1_tag: - gc_collector_mark_gray(obj, ((closure1) obj)->elt1); + gc_collector_mark_gray(obj, ((closure1) obj)->element); break; case closureN_tag: { int i, n = ((closureN) obj)->num_elt; diff --git a/include/cyclone/types.h b/include/cyclone/types.h index e9915333..22b8771f 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -492,7 +492,7 @@ typedef struct { tag_type tag; function_type fn; int num_args; - object elt1; + object element; } closure1_type; typedef struct { gc_header_type hdr; @@ -532,7 +532,7 @@ typedef closure0_type *macro; c.tag = closure1_tag; \ c.fn = f; \ c.num_args = -1; \ - c.elt1 = a; + c.element = a; /* Primitive types */ typedef struct { diff --git a/runtime.c b/runtime.c index cbdc11d1..7a32cfb0 100644 --- a/runtime.c +++ b/runtime.c @@ -2935,7 +2935,7 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje break; } case closure1_tag: - gc_move2heap(((closure1) obj)->elt1); + gc_move2heap(((closure1) obj)->element); break; case closureN_tag: { int i, n = ((closureN) obj)->num_elt; diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index 32aef406..678bada1 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -1607,7 +1607,7 @@ (emit compiled-program))) (else ;; Do not use closcall1 macro as it might not have been defined - (emit "cont = ((closure1_type *)cont)->elt1;") + (emit "cont = ((closure1_type *)cont)->element;") ;(emit "((cont)->fn)(1, cont, cont);") (emit* "(((closure)" From 008c85775523f8db6cf59d181d79e04b2bb7b09e Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 26 Apr 2016 23:33:36 -0400 Subject: [PATCH 105/121] Refactoring --- gc.c | 14 +++++++------- include/cyclone/types.h | 4 ++-- runtime.c | 6 +++--- scheme/cyclone/cgen.sld | 12 ++++++------ 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/gc.c b/gc.c index 5936e3f5..cc891d6a 100644 --- a/gc.c +++ b/gc.c @@ -278,10 +278,10 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) type_of(hp) = closureN_tag; hp->fn = ((closureN) obj)->fn; hp->num_args = ((closureN) obj)->num_args; - hp->num_elt = ((closureN) obj)-> num_elt; - hp->elts = (object *)(((char *)hp) + sizeof(closureN_type)); - for (i = 0; i < hp->num_elt; i++) { - hp->elts[i] = ((closureN) obj)->elts[i]; + hp->num_elements = ((closureN) obj)-> num_elements; + hp->elements = (object *)(((char *)hp) + sizeof(closureN_type)); + for (i = 0; i < hp->num_elements; i++) { + hp->elements[i] = ((closureN) obj)->elements[i]; } return (char *)hp; } @@ -519,7 +519,7 @@ size_t gc_allocated_bytes(object obj, gc_free_list *q, gc_free_list *r) if (t == closure0_tag) return gc_heap_align(sizeof(closure0_type)); if (t == closure1_tag) return gc_heap_align(sizeof(closure1_type)); if (t == closureN_tag){ - return gc_heap_align(sizeof(closureN_type) + sizeof(object) * ((closureN_type *)obj)->num_elt); + return gc_heap_align(sizeof(closureN_type) + sizeof(object) * ((closureN_type *)obj)->num_elements); } if (t == vector_tag){ return gc_heap_align(sizeof(vector_type) + sizeof(object) * ((vector_type *)obj)->num_elements); @@ -1038,9 +1038,9 @@ void gc_mark_black(object obj) gc_collector_mark_gray(obj, ((closure1) obj)->element); break; case closureN_tag: { - int i, n = ((closureN) obj)->num_elt; + int i, n = ((closureN) obj)->num_elements; for (i = 0; i < n; i++) { - gc_collector_mark_gray(obj, ((closureN) obj)->elts[i]); + gc_collector_mark_gray(obj, ((closureN) obj)->elements[i]); } break; } diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 22b8771f..a71998a2 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -499,8 +499,8 @@ typedef struct { tag_type tag; function_type fn; int num_args; - int num_elt; - object *elts; + int num_elements; + object *elements; } closureN_type; typedef closure0_type *closure0; diff --git a/runtime.c b/runtime.c index 7a32cfb0..033c2c28 100644 --- a/runtime.c +++ b/runtime.c @@ -2785,7 +2785,7 @@ char *gc_move(char *obj, gc_thread_data *thd, int *alloci, int *heap_grown) { } case closureN_tag: { closureN_type *hp = gc_alloc(Cyc_heap, - sizeof(closureN_type) + sizeof(object) * (((closureN) obj)->num_elt), + sizeof(closureN_type) + sizeof(object) * (((closureN) obj)->num_elements), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } @@ -2938,9 +2938,9 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje gc_move2heap(((closure1) obj)->element); break; case closureN_tag: { - int i, n = ((closureN) obj)->num_elt; + int i, n = ((closureN) obj)->num_elements; for (i = 0; i < n; i++) { - gc_move2heap(((closureN) obj)->elts[i]); + gc_move2heap(((closureN) obj)->elements[i]); } break; } diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index 678bada1..024d515c 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -993,10 +993,10 @@ ;; TODO: probably not the ideal solution, but works for now "(closureN)" (mangle (car args)) - ")->elts[" + ")->elements[" (number->string (- (cadr args) 1))"]")))) - ;; TODO: may not be good enough, closure app could be from an elt + ;; TODO: may not be good enough, closure app could be from an element ((tagged-list? '%closure-ref fun) (let* ((cfun (c-compile-args (list (car args)) append-preamble " " cont trace)) (this-cont (c:body cfun)) @@ -1221,7 +1221,7 @@ (let ((var (cadr free-var)) (idx (number->string (- (caddr free-var) 1)))) (string-append - "((closureN)" (mangle var) ")->elts[" idx "]")) + "((closureN)" (mangle var) ")->elements[" idx "]")) (mangle free-var))) (closure->fv exp))) ; Note these are not necessarily symbols, but in cc form (cv-name (mangle (gensym 'c))) @@ -1235,15 +1235,15 @@ cv-name ".tag = closureN_tag;\n " cv-name ".fn = (function_type)__lambda_" (number->string lid) ";\n" cv-name ".num_args = " (number->string (compute-num-args lam)) ";\n" - cv-name ".num_elt = " (number->string (length free-vars)) ";\n" - cv-name ".elts = (object *)alloca(sizeof(object) * " + cv-name ".num_elements = " (number->string (length free-vars)) ";\n" + cv-name ".elements = (object *)alloca(sizeof(object) * " (number->string (length free-vars)) ");\n" (let loop ((i 0) (vars free-vars)) (if (null? vars) "" (string-append - cv-name ".elts[" (number->string i) "] = " + cv-name ".elements[" (number->string i) "] = " (car vars) ";\n" (loop (+ i 1) (cdr vars)))))))) (create-mclosure (lambda () From a2acde6f9cdf9fb2e5f47157e495f41837f2790e Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 26 Apr 2016 23:54:19 -0400 Subject: [PATCH 106/121] Allow using include-c-header in a program (.scm) --- examples/game-of-life-png/life.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/examples/game-of-life-png/life.scm b/examples/game-of-life-png/life.scm index ea6f25bd..a73e45e9 100644 --- a/examples/game-of-life-png/life.scm +++ b/examples/game-of-life-png/life.scm @@ -17,6 +17,8 @@ ; (only (example life) life) ; (rename (prefix (example grid) grid-) ; (grid-make make-grid))) +(include-c-header "stdlib.h") +(include-c-header "") ;; Initialize a grid with a glider. ;(define grid (make-grid 24 24)) From c9fa2410cf40353c78d73a11099d7b925728f73f Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 26 Apr 2016 23:54:37 -0400 Subject: [PATCH 107/121] Done --- TODO | 4 ---- 1 file changed, 4 deletions(-) diff --git a/TODO b/TODO index f5603110..e31f6d84 100644 --- a/TODO +++ b/TODO @@ -8,10 +8,6 @@ Tier 0: - FFI - want to create an example program (lib?) that does something interesting, like make a cURL request for that, will need to be able to include the appropriate C header(s), and link to the appropriate C libraries - - Program idea - it would be cool if we could interface with libpng. - then, extend game-of-life example with new libraries (as needed) and master - program that support output of each frame to a PNG file. then we can string - them all together as an animated gif and post that to the cyclone repo. - Library support From 1fddf8272acef0be8125ca8fd5fd7a7741368e9f Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 00:18:09 -0400 Subject: [PATCH 108/121] Allow including C headers in a program --- cyclone.scm | 22 ++++++++++++++++++---- examples/game-of-life-png/life.scm | 5 +++++ 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/cyclone.scm b/cyclone.scm index afe68920..7d7c8681 100644 --- a/cyclone.scm +++ b/cyclone.scm @@ -91,10 +91,24 @@ include)) input-program))) includes)))) - ((tagged-list? 'import (car input-program)) - (set! imports (cdar input-program)) - (set! input-program (cdr input-program)) - ;(error (list 'imports (cdar input-program))) + (else + ;; Handle import, if present + (cond + ((tagged-list? 'import (car input-program)) + (set! imports (cdar input-program)) + (set! input-program (cdr input-program)) + ;(error (list 'imports (cdar input-program))) + )) + ;; Handle any C headers + (let ((headers (lib:include-c-headers `(dummy dummy ,@input-program)))) + (cond + ((not (null? headers)) + (set! c-headers headers) + (set! input-program + (filter + (lambda (expr) + (not (tagged-list? 'include-c-header expr))) + input-program))))) )) ;; Process library imports diff --git a/examples/game-of-life-png/life.scm b/examples/game-of-life-png/life.scm index a73e45e9..ee941e35 100644 --- a/examples/game-of-life-png/life.scm +++ b/examples/game-of-life-png/life.scm @@ -17,8 +17,13 @@ ; (only (example life) life) ; (rename (prefix (example grid) grid-) ; (grid-make make-grid))) + +;; Simple example of including headers in a program. +;; Just place them here in the top-level, after +;; the (import) expression, if any. (include-c-header "stdlib.h") (include-c-header "") +;; END C headers ;; Initialize a grid with a glider. ;(define grid (make-grid 24 24)) From 245688329ce19a0bc2493cb4f85860fd283ad4b1 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 00:26:20 -0400 Subject: [PATCH 109/121] Added a section for C header includes --- docs/User-Manual.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/docs/User-Manual.md b/docs/User-Manual.md index 2b1c801c..1ea1f14e 100644 --- a/docs/User-Manual.md +++ b/docs/User-Manual.md @@ -146,6 +146,8 @@ Finally, note there are some objects that are not relocated so the above does no # Foreign Function Interface +## Writing a Scheme function in C + The `define-c` special form can be used to define a function containing user-defined C code. This code will be carried through from the Scheme file all the way to the compiled C file. For example: (define-c Cyc-add-exception-handler @@ -180,6 +182,25 @@ Functions that may block must call the `set_thread_blocked` macro to let the sys The Cyclone runtime can be used as a reference for how to write your own C functions. A good starting point would be [`runtime.c`](../runtime.c) and [`types.h`](../include/cyclone/types.h). +## Including a C header + +A C header may be included using the `include-c-header` special form. This special form may be used either as part of a library definition: + + (define-library (example life) + (include-c-header "../write-png.h") + (export life) + ... ) + +Or as part of a program (add any includes immediately after the `import` expression, if one is present): + + (import (scheme base) + (example life) + (example grid)) + (include-c-header "stdlib.h") + (include-c-header "") + +By default this will generate an `#include` preprocessor directive with the name of the header file in double quotes. However, if `include-c-header` is passed a text string with angle brackets (EG: `""`), the generated C code will use angle brackets instead. + # Licensing Cyclone is available under the [MIT license](http://www.opensource.org/licenses/mit-license.php). From 2dec0665525e7d785a475040dcc7ef04a5a96c3b Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 00:29:02 -0400 Subject: [PATCH 110/121] Rev --- docs/User-Manual.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/User-Manual.md b/docs/User-Manual.md index 1ea1f14e..56186736 100644 --- a/docs/User-Manual.md +++ b/docs/User-Manual.md @@ -14,6 +14,8 @@ - [Language Details](#language-details) - [Multithreaded Programming](#multithreaded-programming) - [Foreign Function Interface](#foreign-function-interface) + - [Writing a Scheme Function in C](#writing-a-scheme-function-in-c) + - [Including a C Header File](#including-a-c-header-file) - [Licensing](#licensing) - [References and Further Reading](#references-and-further-reading) @@ -146,7 +148,7 @@ Finally, note there are some objects that are not relocated so the above does no # Foreign Function Interface -## Writing a Scheme function in C +## Writing a Scheme Function in C The `define-c` special form can be used to define a function containing user-defined C code. This code will be carried through from the Scheme file all the way to the compiled C file. For example: @@ -182,7 +184,7 @@ Functions that may block must call the `set_thread_blocked` macro to let the sys The Cyclone runtime can be used as a reference for how to write your own C functions. A good starting point would be [`runtime.c`](../runtime.c) and [`types.h`](../include/cyclone/types.h). -## Including a C header +## Including a C Header File A C header may be included using the `include-c-header` special form. This special form may be used either as part of a library definition: From 11319808bc23285ff329ebd3057335667830cf30 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 01:22:35 -0400 Subject: [PATCH 111/121] Removed completed items --- TODO | 8 -------- 1 file changed, 8 deletions(-) diff --git a/TODO b/TODO index e31f6d84..aef8b815 100644 --- a/TODO +++ b/TODO @@ -1,14 +1,6 @@ Initiatives: -add rename support to library syntax, start by looking at lib:exports. -will need a way of compiling this into the library, and for progs/libs importing the library (although -those may just be able to simply each rename to refer to the renamed identifier) - Tier 0: -- FFI - - want to create an example program (lib?) that does something interesting, like make a cURL request - for that, will need to be able to include the appropriate C header(s), and link to the appropriate C libraries - - Library support Import sets (importing libraries, section 5.2): From 5d1a605b66baac7312f30e642f867bfdd70ee155 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 02:24:05 -0400 Subject: [PATCH 112/121] Refactoring --- gc.c | 2 +- include/cyclone/types.h | 2 +- runtime.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/gc.c b/gc.c index cc891d6a..0364a079 100644 --- a/gc.c +++ b/gc.c @@ -1345,7 +1345,7 @@ void gc_thread_data_init(gc_thread_data *thd, int mut_num, char *stack_base, lon thd->thread_state = CYC_THREAD_STATE_NEW; //thd->mutator_num = mut_num; thd->jmp_start = malloc(sizeof(jmp_buf)); - thd->gc_args = malloc(sizeof(object) * NUM_GC_ANS); + thd->gc_args = malloc(sizeof(object) * NUM_GC_ARGS); thd->gc_num_args = 0; thd->moveBufLen = 0; gc_thr_grow_move_buffer(thd); diff --git a/include/cyclone/types.h b/include/cyclone/types.h index a71998a2..7f55ed4d 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -19,7 +19,7 @@ #include // Maximum number of args that GC will accept -#define NUM_GC_ANS 128 +#define NUM_GC_ARGS 128 // Which way does the CPU grow its stack? #define STACK_GROWTH_IS_DOWNWARD 1 diff --git a/runtime.c b/runtime.c index 033c2c28..9f8b06dd 100644 --- a/runtime.c +++ b/runtime.c @@ -2869,7 +2869,7 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje //fprintf(stdout, "DEBUG, started minor GC\n"); // JAE DEBUG // Prevent overrunning buffer - if (num_args > NUM_GC_ANS) { + if (num_args > NUM_GC_ARGS) { printf("Fatal error - too many arguments (%d) to GC\n", num_args); exit(1); } From e892ed2270f77dc79300f6dbee60e7fa170ee54c Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 03:18:47 -0400 Subject: [PATCH 113/121] Refactoring --- runtime.c | 42 +++++++++++++++++++++++++++++------------ scheme/cyclone/cgen.sld | 28 ++++++++++++++++++--------- 2 files changed, 49 insertions(+), 21 deletions(-) diff --git a/runtime.c b/runtime.c index 9f8b06dd..b8c88163 100644 --- a/runtime.c +++ b/runtime.c @@ -74,22 +74,40 @@ void Cyc_check_bounds(void *data, const char *label, int len, int index) { /* END error checking */ /* These macros are hardcoded here to support functions in this module. */ -#define closcall1(td,clo,a1) if (type_of(clo) == pair_tag || prim(clo)) { Cyc_apply(td,0, (closure)(a1), clo); } else { ((clo)->fn)(td,1,clo,a1);} -/* Return to continuation after checking for stack overflow. */ -#define return_closcall1(td,clo,a1) { \ +#define closcall1(td, clo,a1) \ +if (type_of(clo) == pair_tag || prim(clo)) { \ + Cyc_apply(td, 0, (closure)(a1), clo); \ +} else { \ + ((clo)->fn)(td, 1, clo,a1);\ +} +#define return_closcall1(td, clo,a1) { \ char top; \ - if (stack_overflow(&top,(((gc_thread_data *)data)->stack_limit))) { \ + if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[1]; buf[0] = a1;\ - GC(td,clo,buf,1); return; \ - } else {closcall1(td,(closure) (clo),a1); return;}} -#define closcall2(td,clo,a1,a2) if (type_of(clo) == pair_tag || prim(clo)) { Cyc_apply(td,1, (closure)(a1), clo,a2); } else { ((clo)->fn)(td,2,clo,a1,a2);} -/* Return to continuation after checking for stack overflow. */ -#define return_closcall2(td,clo,a1,a2) { \ + GC(td, clo, buf, 1); \ + return; \ + } else {\ + closcall1(td, (closure) (clo),a1); \ + return;\ + } \ +} +#define closcall2(td, clo,a1,a2) \ +if (type_of(clo) == pair_tag || prim(clo)) { \ + Cyc_apply(td, 1, (closure)(a1), clo,a2); \ +} else { \ + ((clo)->fn)(td, 2, clo,a1,a2);\ +} +#define return_closcall2(td, clo,a1,a2) { \ char top; \ - if (stack_overflow(&top,(((gc_thread_data *)data)->stack_limit))) { \ + if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[2]; buf[0] = a1;buf[1] = a2;\ - GC(td,clo,buf,2); return; \ - } else {closcall2(td,(closure) (clo),a1,a2); return;}} + GC(td, clo, buf, 2); \ + return; \ + } else {\ + closcall2(td, (closure) (clo),a1,a2); \ + return;\ + } \ +} /*END closcall section */ /* Global variables. */ diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index 024d515c..3232de6d 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -127,8 +127,13 @@ " char top; \\\n" " if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \\\n" " object buf[" n "]; " arry-assign "\\\n" - " GC(td,clo,buf," n "); return; \\\n" - " } else {closcall" n "(td,(closure) (clo)" args "); return;}}\n"))) + " GC(td, clo, buf, " n "); \\\n" + " return; \\\n" + " } else {\\\n" + " closcall" n "(td, (closure) (clo)" args "); \\\n" + " return;\\\n" + " } \\\n" + "}\n"))) (define (c-macro-return-direct num-args) (let ((args (c-macro-n-prefix num-args ",a")) @@ -141,8 +146,11 @@ " if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \\\n" " object buf[" n "]; " arry-assign " \\\n" " mclosure0(c1, _fn); \\\n" - " GC(td, &c1, buf, " n "); return; \\\n" - " } else { (_fn)(td," n ",(closure)_fn" args "); }}\n"))) + " GC(td, &c1, buf, " n "); \\\n" + " return; \\\n" + " } else { \\\n" + " (_fn)(td, " n ", (closure)_fn" args "); \\\n" + " }}\n"))) (define (c-macro-closcall num-args) (let ((args (c-macro-n-prefix num-args ",a")) @@ -150,11 +158,13 @@ (n-1 (number->string (if (> num-args 0) (- num-args 1) 0))) (wrap (lambda (s) (if (> num-args 0) s "")))) (string-append - "#define closcall" n "(td,clo" args ") " - (wrap (string-append "if (type_of(clo) == pair_tag || prim(clo)) { Cyc_apply(td," n-1 ", (closure)(a1), clo" (if (> num-args 1) (substring args 3 (string-length args)) "") "); }")) - (wrap " else { ") - "((clo)->fn)(td," n ",clo" args ")" - (wrap ";}") + "#define closcall" n "(td, clo" args ") \\\n" + (wrap (string-append "if (type_of(clo) == pair_tag || prim(clo)) { \\\n" + " Cyc_apply(td, " n-1 ", (closure)(a1), clo" (if (> num-args 1) (substring args 3 (string-length args)) "") "); \\\n" + "}")) + (wrap " else { \\\n") + " ((clo)->fn)(td, " n ", clo" args ")" + (wrap ";\\\n}") ))) (define (c-macro-n-prefix n prefix) From ef4ad299696135bc875cc59adabbc1a07acf99ad Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 03:30:29 -0400 Subject: [PATCH 114/121] Refactoring --- runtime.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/runtime.c b/runtime.c index b8c88163..d0daa3bc 100644 --- a/runtime.c +++ b/runtime.c @@ -74,37 +74,37 @@ void Cyc_check_bounds(void *data, const char *label, int len, int index) { /* END error checking */ /* These macros are hardcoded here to support functions in this module. */ -#define closcall1(td, clo,a1) \ +#define closcall1(td, clo, a1) \ if (type_of(clo) == pair_tag || prim(clo)) { \ Cyc_apply(td, 0, (closure)(a1), clo); \ } else { \ - ((clo)->fn)(td, 1, clo,a1);\ + ((clo)->fn)(td, 1, clo, a1);\ } -#define return_closcall1(td, clo,a1) { \ +#define return_closcall1(td, clo, a1) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[1]; buf[0] = a1;\ GC(td, clo, buf, 1); \ return; \ } else {\ - closcall1(td, (closure) (clo),a1); \ + closcall1(td, (closure) (clo), a1); \ return;\ } \ } -#define closcall2(td, clo,a1,a2) \ +#define closcall2(td, clo, a1, a2) \ if (type_of(clo) == pair_tag || prim(clo)) { \ Cyc_apply(td, 1, (closure)(a1), clo,a2); \ } else { \ - ((clo)->fn)(td, 2, clo,a1,a2);\ + ((clo)->fn)(td, 2, clo, a1, a2);\ } -#define return_closcall2(td, clo,a1,a2) { \ +#define return_closcall2(td, clo, a1, a2) { \ char top; \ if (stack_overflow(&top, (((gc_thread_data *)data)->stack_limit))) { \ object buf[2]; buf[0] = a1;buf[1] = a2;\ GC(td, clo, buf, 2); \ return; \ } else {\ - closcall2(td, (closure) (clo),a1,a2); \ + closcall2(td, (closure) (clo), a1, a2); \ return;\ } \ } From 80edfa4f8aeacc3a966cac2c0b6d2777c48a8503 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 03:41:04 -0400 Subject: [PATCH 115/121] Added indent --- Makefile | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Makefile b/Makefile index 2002d7ff..16de4515 100644 --- a/Makefile +++ b/Makefile @@ -122,6 +122,12 @@ test: $(TESTFILES) $(CYCLONE) tags: ctags -R * +.PHONY: indent +indent: + indent -linux -l80 -i2 -nut gc.c + indent -linux -l80 -i2 -nut runtime.c + indent -linux -l80 -i2 -nut include/cyclone/*.h + .PHONY: clean clean: rm -rf a.out *.o *.so *.a *.out tags cyclone icyc scheme/*.o scheme/*.c scheme/*.meta srfi/*.c srfi/*.meta srfi/*.o scheme/cyclone/*.o scheme/cyclone/*.c scheme/cyclone/*.meta cyclone.c dispatch.c icyc.c generate-c.c generate-c From 7181268d6b29624b5df28d76cd06757dd95a2c33 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 03:49:41 -0400 Subject: [PATCH 116/121] Ran 'make indent' --- gc.c | 544 +++-- include/cyclone/ck_ht_hash.h | 161 +- include/cyclone/runtime-main.h | 4 +- include/cyclone/runtime.h | 109 +- include/cyclone/types.h | 18 +- runtime.c | 4185 +++++++++++++++++++------------- 6 files changed, 2946 insertions(+), 2075 deletions(-) diff --git a/gc.c b/gc.c index 0364a079..a46c6b8e 100644 --- a/gc.c +++ b/gc.c @@ -23,7 +23,7 @@ #include //#define DEBUG_THREADS // Debugging!!! #ifdef DEBUG_THREADS -#include /* Linux-only? */ +#include /* Linux-only? */ #endif /* HEAP definitions, based off heap from Chibi scheme */ @@ -43,8 +43,8 @@ // Note: will need to use atomics and/or locking to access any // variables shared between threads -static int gc_color_mark = 1; // Black, is swapped during GC -static int gc_color_clear = 3; // White, is swapped during GC +static int gc_color_mark = 1; // Black, is swapped during GC +static int gc_color_clear = 3; // White, is swapped during GC // unfortunately this had to be split up; const colors are located in types.h static int gc_status_col = STATUS_SYNC1; @@ -59,8 +59,8 @@ static int mark_stack_i = 0; static pthread_mutex_t heap_lock; // Cached heap statistics -static int cached_heap_free_sizes[3] = {0, 0, 0}; -static int cached_heap_total_sizes[3] = {0, 0, 0}; +static int cached_heap_free_sizes[3] = { 0, 0, 0 }; +static int cached_heap_total_sizes[3] = { 0, 0, 0 }; // Data for each individual mutator thread ck_array_t Cyc_mutators, old_mutators; @@ -83,9 +83,9 @@ static void *my_realloc(void *r, size_t a, size_t b, bool d) } static struct ck_malloc my_allocator = { - .malloc = my_malloc, - .free = my_free, - .realloc = my_realloc + .malloc = my_malloc, + .free = my_free, + .realloc = my_realloc }; ///////////// @@ -94,16 +94,15 @@ static struct ck_malloc my_allocator = { // Perform one-time initialization before mutators can be executed void gc_initialize() { - if (ck_array_init(&Cyc_mutators, CK_ARRAY_MODE_SPMC, &my_allocator, 10) == 0){ + if (ck_array_init(&Cyc_mutators, CK_ARRAY_MODE_SPMC, &my_allocator, 10) == 0) { fprintf(stderr, "Unable to initialize mutator array\n"); exit(1); } - if (ck_array_init(&old_mutators, CK_ARRAY_MODE_SPMC, &my_allocator, 10) == 0){ + if (ck_array_init(&old_mutators, CK_ARRAY_MODE_SPMC, &my_allocator, 10) == 0) { fprintf(stderr, "Unable to initialize mutator array\n"); exit(1); } - // Initialize collector's mark stack mark_stack_len = 128; mark_stack = vpbuffer_realloc(mark_stack, &(mark_stack_len)); @@ -120,7 +119,7 @@ void gc_initialize() } // Add data for a new mutator -void gc_add_mutator(gc_thread_data *thd) +void gc_add_mutator(gc_thread_data * thd) { pthread_mutex_lock(&mutators_lock); if (ck_array_put_unique(&Cyc_mutators, (void *)thd) < 0) { @@ -135,7 +134,7 @@ void gc_add_mutator(gc_thread_data *thd) // This is done for terminated threads. Note data is queued to be // freed, to prevent accidentally freeing it while the collector // thread is potentially accessing it. -void gc_remove_mutator(gc_thread_data *thd) +void gc_remove_mutator(gc_thread_data * thd) { pthread_mutex_lock(&mutators_lock); if (!ck_array_remove(&Cyc_mutators, (void *)thd)) { @@ -159,7 +158,7 @@ void gc_free_old_thread_data() int freed = 0; pthread_mutex_lock(&mutators_lock); - CK_ARRAY_FOREACH(&old_mutators, &iterator, &m){ + CK_ARRAY_FOREACH(&old_mutators, &iterator, &m) { //printf("JAE DEBUG - freeing old thread data..."); gc_thread_data_free(m); if (!ck_array_remove(&old_mutators, (void *)m)) { @@ -176,24 +175,26 @@ void gc_free_old_thread_data() pthread_mutex_unlock(&mutators_lock); } -gc_heap *gc_heap_create(int heap_type, size_t size, size_t max_size, size_t chunk_size) +gc_heap *gc_heap_create(int heap_type, size_t size, size_t max_size, + size_t chunk_size) { gc_free_list *free, *next; gc_heap *h; - size_t padded_size = gc_heap_pad_size(size); - h = malloc(padded_size); // TODO: mmap? - if (!h) return NULL; + size_t padded_size = gc_heap_pad_size(size); + h = malloc(padded_size); // TODO: mmap? + if (!h) + return NULL; h->size = size; //h->free_size = size; cached_heap_total_sizes[heap_type] += size; cached_heap_free_sizes[heap_type] += size; h->chunk_size = chunk_size; h->max_size = max_size; - h->data = (char *) gc_heap_align(sizeof(h->data) + (uintptr_t)&(h->data)); + h->data = (char *)gc_heap_align(sizeof(h->data) + (uintptr_t) & (h->data)); h->next = NULL; - free = h->free_list = (gc_free_list *)h->data; - next = (gc_free_list *)(((char *) free) + gc_heap_align(gc_free_chunk_size)); - free->size = 0; // First one is just a dummy record + free = h->free_list = (gc_free_list *) h->data; + next = (gc_free_list *) (((char *)free) + gc_heap_align(gc_free_chunk_size)); + free->size = 0; // First one is just a dummy record free->next = next; next->size = size - gc_heap_align(gc_free_chunk_size); next->next = NULL; @@ -201,16 +202,17 @@ gc_heap *gc_heap_create(int heap_type, size_t size, size_t max_size, size_t chun fprintf(stderr, "DEBUG h->data addr: %p\n", &(h->data)); fprintf(stderr, "DEBUG h->data addr: %p\n", h->data); fprintf(stderr, ("heap: %p-%p data: %p-%p size: %zu\n"), - h, ((char*)h)+gc_heap_pad_size(size), h->data, h->data + size, size); - fprintf(stderr, ("first: %p end: %p\n"), - (object)gc_heap_first_block(h), (object)gc_heap_end(h)); - fprintf(stderr, ("free1: %p-%p free2: %p-%p\n"), - free, ((char*)free)+free->size, next, ((char*)next)+next->size); + h, ((char *)h) + gc_heap_pad_size(size), h->data, h->data + size, + size); + fprintf(stderr, ("first: %p end: %p\n"), (object) gc_heap_first_block(h), + (object) gc_heap_end(h)); + fprintf(stderr, ("free1: %p-%p free2: %p-%p\n"), free, + ((char *)free) + free->size, next, ((char *)next) + next->size); #endif return h; } -void gc_print_stats(gc_heap *h) +void gc_print_stats(gc_heap * h) { gc_free_list *f; unsigned int free, free_chunks, free_min, free_max; @@ -222,23 +224,25 @@ void gc_print_stats(gc_heap *h) for (f = h->free_list; f; f = f->next) { free += f->size; free_chunks++; - if (f->size < free_min && f->size > 0) free_min = f->size; - if (f->size > free_max) free_max = f->size; - } - fprintf(stdout, - "Heap page size=%u, used=%u, free=%u, free chunks=%u, min=%u, max=%u\n", - h->size, h->size - free, free, free_chunks, free_min, free_max); + if (f->size < free_min && f->size > 0) + free_min = f->size; + if (f->size > free_max) + free_max = f->size; + } + fprintf(stdout, + "Heap page size=%u, used=%u, free=%u, free chunks=%u, min=%u, max=%u\n", + h->size, h->size - free, free, free_chunks, free_min, free_max); } } // Copy given object into given heap object -char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) +char *gc_copy_obj(object dest, char *obj, gc_thread_data * thd) { // NOTE: no additional type checking because this is called from gc_move // which already does that - switch(type_of(obj)){ - case pair_tag: { + switch (type_of(obj)) { + case pair_tag:{ list hp = dest; hp->hdr.mark = thd->gc_alloc_color; type_of(hp) = pair_tag; @@ -246,7 +250,7 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) cdr(hp) = cdr(obj); return (char *)hp; } - case macro_tag: { + case macro_tag:{ macro_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = macro_tag; @@ -254,7 +258,7 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) hp->num_args = ((macro) obj)->num_args; return (char *)hp; } - case closure0_tag: { + case closure0_tag:{ closure0_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = closure0_tag; @@ -262,7 +266,7 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) hp->num_args = ((closure0) obj)->num_args; return (char *)hp; } - case closure1_tag: { + case closure1_tag:{ closure1_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = closure1_tag; @@ -271,33 +275,33 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) hp->element = ((closure1) obj)->element; return (char *)hp; } - case closureN_tag: { + case closureN_tag:{ int i; closureN_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = closureN_tag; hp->fn = ((closureN) obj)->fn; hp->num_args = ((closureN) obj)->num_args; - hp->num_elements = ((closureN) obj)-> num_elements; - hp->elements = (object *)(((char *)hp) + sizeof(closureN_type)); + hp->num_elements = ((closureN) obj)->num_elements; + hp->elements = (object *) (((char *)hp) + sizeof(closureN_type)); for (i = 0; i < hp->num_elements; i++) { hp->elements[i] = ((closureN) obj)->elements[i]; } return (char *)hp; } - case vector_tag: { + case vector_tag:{ int i; vector_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = vector_tag; - hp->num_elements = ((vector) obj)-> num_elements; - hp->elements = (object *)(((char *)hp) + sizeof(vector_type)); + hp->num_elements = ((vector) obj)->num_elements; + hp->elements = (object *) (((char *)hp) + sizeof(vector_type)); for (i = 0; i < hp->num_elements; i++) { hp->elements[i] = ((vector) obj)->elements[i]; } return (char *)hp; } - case bytevector_tag: { + case bytevector_tag:{ int i; bytevector_type *hp = dest; mark(hp) = thd->gc_alloc_color; @@ -307,7 +311,7 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) memcpy(hp->data, ((bytevector) obj)->data, hp->len); return (char *)hp; } - case string_tag: { + case string_tag:{ char *s; string_type *hp = dest; s = ((char *)hp) + sizeof(string_type); @@ -318,21 +322,21 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) string_str(hp) = s; return (char *)hp; } - case integer_tag: { - integer_type *hp = dest; + case integer_tag:{ + integer_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = integer_tag; hp->value = ((integer_type *) obj)->value; return (char *)hp; } - case double_tag: { + case double_tag:{ double_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = double_tag; hp->value = ((double_type *) obj)->value; return (char *)hp; } - case port_tag: { + case port_tag:{ port_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = port_tag; @@ -340,49 +344,50 @@ char *gc_copy_obj(object dest, char *obj, gc_thread_data *thd) hp->mode = ((port_type *) obj)->mode; return (char *)hp; } - case cvar_tag: { + case cvar_tag:{ cvar_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = cvar_tag; hp->pvar = ((cvar_type *) obj)->pvar; return (char *)hp; } - case c_opaque_tag: { + case c_opaque_tag:{ c_opaque_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = c_opaque_tag; hp->ptr = ((c_opaque_type *) obj)->ptr; return (char *)hp; } - case mutex_tag: { + case mutex_tag:{ mutex_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = mutex_tag; // NOTE: don't copy mutex itself, caller will do that (this is a special case) return (char *)hp; } - case cond_var_tag: { + case cond_var_tag:{ cond_var_type *hp = dest; mark(hp) = thd->gc_alloc_color; type_of(hp) = cond_var_tag; // NOTE: don't copy cond_var itself, caller will do that (this is a special case) return (char *)hp; } - case forward_tag: - return (char *)forward(obj); - case eof_tag: - case primitive_tag: - case boolean_tag: - case symbol_tag: - break; - default: - fprintf(stderr, "gc_copy_obj: bad tag obj=%p obj.tag=%d\n",(object) obj, type_of(obj)); - exit(1); + case forward_tag: + return (char *)forward(obj); + case eof_tag: + case primitive_tag: + case boolean_tag: + case symbol_tag: + break; + default: + fprintf(stderr, "gc_copy_obj: bad tag obj=%p obj.tag=%d\n", (object) obj, + type_of(obj)); + exit(1); } return (char *)obj; } -int gc_grow_heap(gc_heap *h, int heap_type, size_t size, size_t chunk_size) +int gc_grow_heap(gc_heap * h, int heap_type, size_t size, size_t chunk_size) { size_t cur_size, new_size; gc_heap *h_last, *h_new; @@ -397,7 +402,7 @@ int gc_grow_heap(gc_heap *h, int heap_type, size_t size, size_t chunk_size) new_size = 0; h_last = h; while (h_last->next) { - if (new_size < HEAP_SIZE){ + if (new_size < HEAP_SIZE) { new_size = prev_size + h_last->size; prev_size = h_last->size; } else { @@ -405,10 +410,11 @@ int gc_grow_heap(gc_heap *h, int heap_type, size_t size, size_t chunk_size) } h_last = h_last->next; } - if (new_size == 0) + if (new_size == 0) new_size = prev_size + h_last->size; #if GC_DEBUG_TRACE - fprintf(stderr, "Growing heap %d new page size = %zu\n", heap_type, new_size); + fprintf(stderr, "Growing heap %d new page size = %zu\n", heap_type, + new_size); #endif } // h_last = gc_heap_last(h); @@ -426,38 +432,41 @@ int gc_grow_heap(gc_heap *h, int heap_type, size_t size, size_t chunk_size) return (h_new != NULL); } -void *gc_try_alloc(gc_heap *h, int heap_type, size_t size, char *obj, gc_thread_data *thd) +void *gc_try_alloc(gc_heap * h, int heap_type, size_t size, char *obj, + gc_thread_data * thd) { gc_free_list *f1, *f2, *f3; pthread_mutex_lock(&heap_lock); - for (; h; h = h->next) { // All heaps + for (; h; h = h->next) { // All heaps // TODO: chunk size (ignoring for now) - for (f1 = h->free_list, f2 = f1->next; f2; f1 = f2, f2 = f2->next) { // all free in this heap - if (f2->size >= size) { // Big enough for request + for (f1 = h->free_list, f2 = f1->next; f2; f1 = f2, f2 = f2->next) { // all free in this heap + if (f2->size >= size) { // Big enough for request // TODO: take whole chunk or divide up f2 (using f3)? - if (f2->size >= (size + gc_heap_align(1) /* min obj size */)) { + if (f2->size >= (size + gc_heap_align(1) /* min obj size */ )) { f3 = (gc_free_list *) (((char *)f2) + size); f3->size = f2->size - size; f3->next = f2->next; f1->next = f3; - } else { /* Take the whole chunk */ + } else { /* Take the whole chunk */ f1->next = f2->next; } // Copy object into heap now to avoid any uninitialized memory issues gc_copy_obj(f2, obj, thd); //h->free_size -= gc_allocated_bytes(obj, NULL, NULL); - cached_heap_free_sizes[heap_type] -= gc_allocated_bytes(obj, NULL, NULL); + cached_heap_free_sizes[heap_type] -= + gc_allocated_bytes(obj, NULL, NULL); pthread_mutex_unlock(&heap_lock); return f2; } } } pthread_mutex_unlock(&heap_lock); - return NULL; + return NULL; } -void *gc_alloc(gc_heap_root *hrt, size_t size, char *obj, gc_thread_data *thd, int *heap_grown) +void *gc_alloc(gc_heap_root * hrt, size_t size, char *obj, gc_thread_data * thd, + int *heap_grown) { void *result = NULL; gc_heap *h = NULL; @@ -468,7 +477,7 @@ void *gc_alloc(gc_heap_root *hrt, size_t size, char *obj, gc_thread_data *thd, i // the allowed ratio, try growing heap. // then try realloc. if cannot alloc now, then throw out of memory error size = gc_heap_align(size); - if (size <= 32){ + if (size <= 32) { h = hrt->small_obj_heap; heap_type = HEAP_SM; } else if (size <= 64) { @@ -489,11 +498,12 @@ void *gc_alloc(gc_heap_root *hrt, size_t size, char *obj, gc_thread_data *thd, i result = gc_try_alloc(h, heap_type, size, obj, thd); if (!result) { fprintf(stderr, "out of memory error allocating %zu bytes\n", size); - exit(1); // could throw error, but OOM is a major issue, so... + exit(1); // could throw error, but OOM is a major issue, so... } } #if GC_DEBUG_VERBOSE - fprintf(stderr, "alloc %p size = %zu, obj=%p, tag=%d, mark=%d\n", result, size, obj, type_of(obj), mark(((object)result))); + fprintf(stderr, "alloc %p size = %zu, obj=%p, tag=%d, mark=%d\n", result, + size, obj, type_of(obj), mark(((object) result))); // Debug check, should no longer be necessary //if (is_value_type(result)) { // printf("Invalid allocated address - is a value type %p\n", result); @@ -502,59 +512,75 @@ void *gc_alloc(gc_heap_root *hrt, size_t size, char *obj, gc_thread_data *thd, i return result; } -size_t gc_allocated_bytes(object obj, gc_free_list *q, gc_free_list *r) +size_t gc_allocated_bytes(object obj, gc_free_list * q, gc_free_list * r) { tag_type t; #if GC_SAFETY_CHECKS if (is_value_type(obj)) { - fprintf(stderr, - "gc_allocated_bytes - passed value type %p q=[%p, %d] r=[%p, %d]\n", - obj, q, q->size, r, r->size); + fprintf(stderr, + "gc_allocated_bytes - passed value type %p q=[%p, %d] r=[%p, %d]\n", + obj, q, q->size, r, r->size); exit(1); } #endif - t = type_of(obj); - if (t == pair_tag) return gc_heap_align(sizeof(pair_type)); - if (t == macro_tag) return gc_heap_align(sizeof(macro_type)); - if (t == closure0_tag) return gc_heap_align(sizeof(closure0_type)); - if (t == closure1_tag) return gc_heap_align(sizeof(closure1_type)); - if (t == closureN_tag){ - return gc_heap_align(sizeof(closureN_type) + sizeof(object) * ((closureN_type *)obj)->num_elements); + t = type_of(obj); + if (t == pair_tag) + return gc_heap_align(sizeof(pair_type)); + if (t == macro_tag) + return gc_heap_align(sizeof(macro_type)); + if (t == closure0_tag) + return gc_heap_align(sizeof(closure0_type)); + if (t == closure1_tag) + return gc_heap_align(sizeof(closure1_type)); + if (t == closureN_tag) { + return gc_heap_align(sizeof(closureN_type) + + sizeof(object) * + ((closureN_type *) obj)->num_elements); } - if (t == vector_tag){ - return gc_heap_align(sizeof(vector_type) + sizeof(object) * ((vector_type *)obj)->num_elements); + if (t == vector_tag) { + return gc_heap_align(sizeof(vector_type) + + sizeof(object) * ((vector_type *) obj)->num_elements); } if (t == bytevector_tag) { - return gc_heap_align(sizeof(bytevector_type) + sizeof(char) * ((bytevector)obj)->len); + return gc_heap_align(sizeof(bytevector_type) + + sizeof(char) * ((bytevector) obj)->len); } - if (t == string_tag){ + if (t == string_tag) { return gc_heap_align(sizeof(string_type) + string_len(obj) + 1); } - if (t == integer_tag) return gc_heap_align(sizeof(integer_type)); - if (t == double_tag) return gc_heap_align(sizeof(double_type)); - if (t == port_tag) return gc_heap_align(sizeof(port_type)); - if (t == cvar_tag) return gc_heap_align(sizeof(cvar_type)); - if (t == c_opaque_tag) return gc_heap_align(sizeof(c_opaque_type)); - if (t == mutex_tag) return gc_heap_align(sizeof(mutex_type)); - if (t == cond_var_tag) return gc_heap_align(sizeof(cond_var_type)); - - fprintf(stderr, "gc_allocated_bytes: unexpected object %p of type %d\n", obj, t); + if (t == integer_tag) + return gc_heap_align(sizeof(integer_type)); + if (t == double_tag) + return gc_heap_align(sizeof(double_type)); + if (t == port_tag) + return gc_heap_align(sizeof(port_type)); + if (t == cvar_tag) + return gc_heap_align(sizeof(cvar_type)); + if (t == c_opaque_tag) + return gc_heap_align(sizeof(c_opaque_type)); + if (t == mutex_tag) + return gc_heap_align(sizeof(mutex_type)); + if (t == cond_var_tag) + return gc_heap_align(sizeof(cond_var_type)); + + fprintf(stderr, "gc_allocated_bytes: unexpected object %p of type %d\n", obj, + t); exit(1); return 0; } -gc_heap *gc_heap_last(gc_heap *h) +gc_heap *gc_heap_last(gc_heap * h) { while (h->next) h = h->next; return h; } -size_t gc_heap_total_size(gc_heap *h) +size_t gc_heap_total_size(gc_heap * h) { size_t total_size = 0; pthread_mutex_lock(&heap_lock); - while(h) { + while (h) { total_size += h->size; h = h->next; } @@ -574,9 +600,9 @@ size_t gc_heap_total_size(gc_heap *h) // return total_size; //} -size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr) +size_t gc_sweep(gc_heap * h, int heap_type, size_t * sum_freed_ptr) { - size_t freed, max_freed=0, heap_freed = 0, sum_freed=0, size; + size_t freed, max_freed = 0, heap_freed = 0, sum_freed = 0, size; object p, end; gc_free_list *q, *r, *s; @@ -589,18 +615,18 @@ size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr) // how much time is even spent sweeping // pthread_mutex_lock(&heap_lock); - for (; h; h = h->next) { // All heaps + for (; h; h = h->next) { // All heaps #if GC_DEBUG_TRACE - fprintf(stderr, "sweep heap %p, size = %zu\n", h, (size_t)h->size); + fprintf(stderr, "sweep heap %p, size = %zu\n", h, (size_t) h->size); #endif p = gc_heap_first_block(h); q = h->free_list; end = gc_heap_end(h); while (p < end) { // find preceding/succeeding free list pointers for p - for (r = q->next; r && ((char *)r < (char *)p); q=r, r=r->next); + for (r = q->next; r && ((char *)r < (char *)p); q = r, r = r->next) ; - if ((char *)r == (char *)p) { // this is a free block, skip it + if ((char *)r == (char *)p) { // this is a free block, skip it p = (object) (((char *)p) + r->size); #if GC_DEBUG_VERBOSE fprintf(stderr, "skip free block %p size = %zu\n", p, r->size); @@ -608,7 +634,7 @@ size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr) continue; } size = gc_heap_align(gc_allocated_bytes(p, q, r)); - + #if GC_SAFETY_CHECKS if (!is_object_type(p)) { fprintf(stderr, "sweep: invalid object at %p", p); @@ -626,14 +652,15 @@ size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr) if (mark(p) == gc_color_clear) { #if GC_DEBUG_VERBOSE - fprintf(stderr, "sweep is freeing unmarked obj: %p with tag %d\n", p, type_of(p)); + fprintf(stderr, "sweep is freeing unmarked obj: %p with tag %d\n", p, + type_of(p)); #endif - mark(p) = gc_color_blue; // Needed? + mark(p) = gc_color_blue; // Needed? if (type_of(p) == mutex_tag) { #if GC_DEBUG_VERBOSE fprintf(stderr, "pthread_mutex_destroy from sweep\n"); #endif - if (pthread_mutex_destroy(&(((mutex)p)->lock)) != 0) { + if (pthread_mutex_destroy(&(((mutex) p)->lock)) != 0) { fprintf(stderr, "Error destroying mutex\n"); exit(1); } @@ -641,7 +668,7 @@ size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr) #if GC_DEBUG_VERBOSE fprintf(stderr, "pthread_cond_destroy from sweep\n"); #endif - if (pthread_cond_destroy(&(((cond_var)p)->cond)) != 0) { + if (pthread_cond_destroy(&(((cond_var) p)->cond)) != 0) { fprintf(stderr, "Error destroying condition variable\n"); exit(1); } @@ -650,7 +677,7 @@ size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr) heap_freed += size; if (((((char *)q) + q->size) == (char *)p) && (q != h->free_list)) { /* merge q with p */ - if (r && r->size && ((((char *)p)+size) == (char *)r)) { + if (r && r->size && ((((char *)p) + size) == (char *)r)) { // ... and with r q->next = r->next; freed = q->size + size + r->size; @@ -661,7 +688,7 @@ size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr) } q->size = freed; } else { - s = (gc_free_list *)p; + s = (gc_free_list *) p; if (r && r->size && ((((char *)p) + size) == (char *)r)) { // merge p with r s->size = size + r->size; @@ -682,7 +709,7 @@ size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr) //#if GC_DEBUG_VERBOSE // fprintf(stderr, "sweep: object is marked %p\n", p); //#endif - p = (object)(((char *)p) + size); + p = (object) (((char *)p) + size); } } //h->free_size += heap_freed; @@ -691,15 +718,17 @@ size_t gc_sweep(gc_heap *h, int heap_type, size_t *sum_freed_ptr) heap_freed = 0; } pthread_mutex_unlock(&heap_lock); - if (sum_freed_ptr) *sum_freed_ptr = sum_freed; + if (sum_freed_ptr) + *sum_freed_ptr = sum_freed; return max_freed; } -void gc_thr_grow_move_buffer(gc_thread_data *d) +void gc_thr_grow_move_buffer(gc_thread_data * d) { - if (!d) return; + if (!d) + return; - if (d->moveBufLen == 0) { // Special case + if (d->moveBufLen == 0) { // Special case d->moveBufLen = 128; d->moveBuf = NULL; } else { @@ -712,7 +741,7 @@ void gc_thr_grow_move_buffer(gc_thread_data *d) #endif } -void gc_thr_add_to_move_buffer(gc_thread_data *d, int *alloci, object obj) +void gc_thr_add_to_move_buffer(gc_thread_data * d, int *alloci, object obj) { if (*alloci == d->moveBufLen) { gc_thr_grow_move_buffer(d); @@ -742,6 +771,7 @@ void vpbuffer_free(void **buf) { free(buf); } + // END heap definitions // Tri-color GC section @@ -752,20 +782,18 @@ void vpbuffer_free(void **buf) /** * Clear thread data read/write fields */ -void gc_zero_read_write_counts(gc_thread_data *thd) +void gc_zero_read_write_counts(gc_thread_data * thd) { pthread_mutex_lock(&(thd->lock)); #if GC_SAFETY_CHECKS if (thd->last_read < thd->last_write) { - fprintf(stderr, - "gc_zero_read_write_counts - last_read (%d) < last_write (%d)\n", - thd->last_read, - thd->last_write); - } - else if (thd->pending_writes) { - fprintf(stderr, - "gc_zero_read_write_counts - pending_writes (%d) is not zero\n", - thd->pending_writes); + fprintf(stderr, + "gc_zero_read_write_counts - last_read (%d) < last_write (%d)\n", + thd->last_read, thd->last_write); + } else if (thd->pending_writes) { + fprintf(stderr, + "gc_zero_read_write_counts - pending_writes (%d) is not zero\n", + thd->pending_writes); } #endif thd->last_write = 0; @@ -777,34 +805,33 @@ void gc_zero_read_write_counts(gc_thread_data *thd) /** * Move pending writes to last_write */ -void gc_sum_pending_writes(gc_thread_data *thd, int locked) +void gc_sum_pending_writes(gc_thread_data * thd, int locked) { - if (!locked){ - pthread_mutex_lock(&(thd->lock)); + if (!locked) { + pthread_mutex_lock(&(thd->lock)); } thd->last_write += thd->pending_writes; thd->pending_writes = 0; - if (!locked) { - pthread_mutex_unlock(&(thd->lock)); + if (!locked) { + pthread_mutex_unlock(&(thd->lock)); } } /** * Determine if object lives on the thread's stack */ -int gc_is_stack_obj(gc_thread_data *thd, object obj) +int gc_is_stack_obj(gc_thread_data * thd, object obj) { char tmp; object low_limit = &tmp; object high_limit = thd->stack_start; - return (stack_overflow(low_limit, obj) && - stack_overflow(obj, high_limit)); + return (stack_overflow(low_limit, obj) && stack_overflow(obj, high_limit)); } /** * Helper function for gc_mut_update */ -static void mark_stack_or_heap_obj(gc_thread_data *thd, object obj) +static void mark_stack_or_heap_obj(gc_thread_data * thd, object obj) { if (gc_is_stack_obj(thd, obj)) { // Set object to be marked after moved to heap by next GC. @@ -822,7 +849,7 @@ static void mark_stack_or_heap_obj(gc_thread_data *thd, object obj) * The key for this barrier is to identify stack objects that contain * heap references, so they can be marked to avoid collection. */ -void gc_mut_update(gc_thread_data *thd, object old_obj, object value) +void gc_mut_update(gc_thread_data * thd, object old_obj, object value) { int status = ck_pr_load_int(&gc_status_col), stage = ck_pr_load_int(&gc_stage); @@ -840,7 +867,9 @@ void gc_mut_update(gc_thread_data *thd, object old_obj, object value) pthread_mutex_unlock(&(thd->lock)); #if GC_DEBUG_VERBOSE if (is_object_type(old_obj) && mark(old_obj) == gc_color_clear) { - fprintf(stderr, "added to mark buffer (trace) from write barrier %p:mark %d:", old_obj, mark(old_obj)); + fprintf(stderr, + "added to mark buffer (trace) from write barrier %p:mark %d:", + old_obj, mark(old_obj)); Cyc_display(old_obj, stderr); fprintf(stderr, "\n"); } @@ -848,7 +877,7 @@ void gc_mut_update(gc_thread_data *thd, object old_obj, object value) } } -void gc_mut_cooperate(gc_thread_data *thd, int buf_len) +void gc_mut_cooperate(gc_thread_data * thd, int buf_len) { int i, status_c, status_m; #if GC_DEBUG_VERBOSE @@ -866,12 +895,11 @@ void gc_mut_cooperate(gc_thread_data *thd, int buf_len) status_c = ck_pr_load_int(&gc_status_col); status_m = ck_pr_load_int(&(thd->gc_status)); if (status_m != status_c) { - ck_pr_cas_int(&(thd->gc_status), status_m, status_c); + ck_pr_cas_int(&(thd->gc_status), status_m, status_c); if (status_m == STATUS_ASYNC) { // Async is done, so clean up old mark data from the last collection gc_zero_read_write_counts(thd); - } - else if (status_m == STATUS_SYNC2) { + } else if (status_m == STATUS_SYNC2) { #if GC_DEBUG_VERBOSE debug_print = 1; #endif @@ -907,14 +935,16 @@ void gc_mut_cooperate(gc_thread_data *thd, int buf_len) // Threshold is intentially low because we have to go through an // entire handshake/trace/sweep cycle, ideally without growing heap. if (ck_pr_load_int(&gc_stage) == STAGE_RESTING && - ((cached_heap_free_sizes[HEAP_SM] < + ((cached_heap_free_sizes[HEAP_SM] < cached_heap_total_sizes[HEAP_SM] * GC_COLLECTION_THRESHOLD) || - (cached_heap_free_sizes[HEAP_MED] < + (cached_heap_free_sizes[HEAP_MED] < cached_heap_total_sizes[HEAP_MED] * GC_COLLECTION_THRESHOLD) || - (cached_heap_free_sizes[HEAP_REST] < - cached_heap_total_sizes[HEAP_REST] * GC_COLLECTION_THRESHOLD))){ + (cached_heap_free_sizes[HEAP_REST] < + cached_heap_total_sizes[HEAP_REST] * GC_COLLECTION_THRESHOLD))) { #if GC_DEBUG_TRACE - fprintf(stdout, "Less than %f%% of the heap is free, initiating collector\n", 100.0 * GC_COLLECTION_THRESHOLD); + fprintf(stdout, + "Less than %f%% of the heap is free, initiating collector\n", + 100.0 * GC_COLLECTION_THRESHOLD); #endif ck_pr_cas_int(&gc_stage, STAGE_RESTING, STAGE_CLEAR_OR_MARKING); @@ -931,22 +961,21 @@ void gc_mut_cooperate(gc_thread_data *thd, int buf_len) * * This function must be executed once the thread lock has been acquired. */ -void gc_mark_gray(gc_thread_data *thd, object obj) +void gc_mark_gray(gc_thread_data * thd, object obj) { // From what I can tell, no other thread would be modifying // either object type or mark. Both should be stable once the object is placed // into the heap, with the collector being the only thread that changes marks. - if (is_object_type(obj) && mark(obj) == gc_color_clear) { // TODO: sync?? + if (is_object_type(obj) && mark(obj) == gc_color_clear) { // TODO: sync?? // Place marked object in a buffer to avoid repeated scans of the heap. // TODO: // Note that ideally this should be a lock-free data structure to make the // algorithm more efficient. So this code (and the corresponding collector // trace code) should be converted at some point. - thd->mark_buffer = vpbuffer_add(thd->mark_buffer, + thd->mark_buffer = vpbuffer_add(thd->mark_buffer, &(thd->mark_buffer_len), - thd->last_write, - obj); - (thd->last_write)++; // Already locked, just do it... + thd->last_write, obj); + (thd->last_write)++; // Already locked, just do it... } } @@ -958,10 +987,10 @@ void gc_mark_gray(gc_thread_data *thd, object obj) * * TODO: figure out a new name for this function. */ -void gc_mark_gray2(gc_thread_data *thd, object obj) +void gc_mark_gray2(gc_thread_data * thd, object obj) { if (is_object_type(obj) && mark(obj) == gc_color_clear) { - thd->mark_buffer = vpbuffer_add(thd->mark_buffer, + thd->mark_buffer = vpbuffer_add(thd->mark_buffer, &(thd->mark_buffer_len), (thd->last_write + thd->pending_writes), obj); @@ -977,20 +1006,20 @@ void gc_collector_trace() while (!clean) { clean = 1; - CK_ARRAY_FOREACH(&Cyc_mutators, &iterator, &m){ + CK_ARRAY_FOREACH(&Cyc_mutators, &iterator, &m) { // TODO: ideally, want to use a lock-free data structure to prevent // having to use a mutex here. see corresponding code in gc_mark_gray pthread_mutex_lock(&(m->lock)); while (m->last_read < m->last_write) { clean = 0; #if GC_DEBUG_VERBOSE - fprintf(stderr, "gc_mark_black mark buffer %p, last_read = %d last_write = %d\n", - (m->mark_buffer)[m->last_read], - m->last_read, m->last_write); + fprintf(stderr, + "gc_mark_black mark buffer %p, last_read = %d last_write = %d\n", + (m->mark_buffer)[m->last_read], m->last_read, m->last_write); #endif gc_mark_black((m->mark_buffer)[m->last_read]); gc_empty_collector_stack(); - (m->last_read)++; // Inc here to prevent off-by-one error + (m->last_read)++; // Inc here to prevent off-by-one error } pthread_mutex_unlock(&(m->lock)); @@ -1001,11 +1030,11 @@ void gc_collector_trace() pthread_mutex_lock(&(m->lock)); if (m->last_read < m->last_write) { #if GC_SAFETY_CHECKS - fprintf(stderr, "gc_collector_trace - might have exited trace early\n"); + fprintf(stderr, + "gc_collector_trace - might have exited trace early\n"); #endif clean = 0; - } - else if (m->pending_writes) { + } else if (m->pending_writes) { clean = 0; } pthread_mutex_unlock(&(m->lock)); @@ -1018,7 +1047,7 @@ void gc_collector_trace() // and sync up the header variable. that would make all of this code // bit clearer... -void gc_mark_black(object obj) +void gc_mark_black(object obj) { // TODO: is sync required to get colors? probably not on the collector // thread (at least) since colors are only changed once during the clear @@ -1028,38 +1057,38 @@ void gc_mark_black(object obj) // Gray any child objects // Note we probably should use some form of atomics/synchronization // for cons and vector types, as these pointers could change. - switch(type_of(obj)) { - case pair_tag: { + switch (type_of(obj)) { + case pair_tag:{ gc_collector_mark_gray(obj, car(obj)); gc_collector_mark_gray(obj, cdr(obj)); break; } - case closure1_tag: - gc_collector_mark_gray(obj, ((closure1) obj)->element); - break; - case closureN_tag: { + case closure1_tag: + gc_collector_mark_gray(obj, ((closure1) obj)->element); + break; + case closureN_tag:{ int i, n = ((closureN) obj)->num_elements; for (i = 0; i < n; i++) { gc_collector_mark_gray(obj, ((closureN) obj)->elements[i]); } break; } - case vector_tag: { + case vector_tag:{ int i, n = ((vector) obj)->num_elements; for (i = 0; i < n; i++) { gc_collector_mark_gray(obj, ((vector) obj)->elements[i]); } break; } - case cvar_tag: { - cvar_type *c = (cvar_type *)obj; + case cvar_tag:{ + cvar_type *c = (cvar_type *) obj; object pvar = *(c->pvar); if (pvar) { gc_collector_mark_gray(obj, pvar); } break; } - default: + default: break; } if (mark(obj) != gc_color_red) { @@ -1086,7 +1115,8 @@ void gc_collector_mark_gray(object parent, object obj) if (is_object_type(obj) && mark(obj) == gc_color_clear) { mark_stack = vpbuffer_add(mark_stack, &mark_stack_len, mark_stack_i++, obj); #if GC_DEBUG_VERBOSE - fprintf(stderr, "mark gray parent = %p (%d) obj = %p\n", parent, type_of(parent), obj); + fprintf(stderr, "mark gray parent = %p (%d) obj = %p\n", parent, + type_of(parent), obj); #endif } } @@ -1094,7 +1124,7 @@ void gc_collector_mark_gray(object parent, object obj) void gc_empty_collector_stack() { // Mark stack is only used by the collector thread, so no sync needed - while (mark_stack_i > 0) { // not empty + while (mark_stack_i > 0) { // not empty mark_stack_i--; //#if GC_DEBUG_VERBOSE // fprintf(stderr, "gc_mark_black mark stack %p \n", @@ -1113,7 +1143,8 @@ void gc_handshake(gc_status_type s) void gc_post_handshake(gc_status_type s) { int status = ck_pr_load_int(&gc_status_col); - while (!ck_pr_cas_int(&gc_status_col, status, s)){} + while (!ck_pr_cas_int(&gc_status_col, status, s)) { + } } void gc_wait_handshake() @@ -1123,7 +1154,7 @@ void gc_wait_handshake() int statusm, statusc, thread_status, i, buf_len; struct timespec tim; tim.tv_sec = 0; - tim.tv_nsec = 1000000; // 1 millisecond + tim.tv_nsec = 1000000; // 1 millisecond CK_ARRAY_FOREACH(&Cyc_mutators, &iterator, &m) { while (1) { @@ -1138,28 +1169,30 @@ void gc_wait_handshake() thread_status = ck_pr_load_int((int *)&(m->thread_state)); if (thread_status == CYC_THREAD_STATE_BLOCKED || thread_status == CYC_THREAD_STATE_BLOCKED_COOPERATING) { - if (statusm == STATUS_ASYNC) { // Prev state + if (statusm == STATUS_ASYNC) { // Prev state ck_pr_cas_int(&(m->gc_status), statusm, statusc); // Async is done, so clean up old mark data from the last collection gc_zero_read_write_counts(m); - }else if (statusm == STATUS_SYNC1) { + } else if (statusm == STATUS_SYNC1) { ck_pr_cas_int(&(m->gc_status), statusm, statusc); } else if (statusm == STATUS_SYNC2) { //printf("DEBUG - is mutator still blocked?\n"); pthread_mutex_lock(&(m->lock)); // Check again, if thread is still blocked we need to cooperate - if (ck_pr_cas_int((int *)&(m->thread_state), - CYC_THREAD_STATE_BLOCKED, - CYC_THREAD_STATE_BLOCKED_COOPERATING) - || - ck_pr_cas_int((int *)&(m->thread_state), - CYC_THREAD_STATE_BLOCKED_COOPERATING, - CYC_THREAD_STATE_BLOCKED_COOPERATING) + if (ck_pr_cas_int((int *)&(m->thread_state), + CYC_THREAD_STATE_BLOCKED, + CYC_THREAD_STATE_BLOCKED_COOPERATING) + || + ck_pr_cas_int((int *)&(m->thread_state), + CYC_THREAD_STATE_BLOCKED_COOPERATING, + CYC_THREAD_STATE_BLOCKED_COOPERATING) ) { //printf("DEBUG - update mutator GC status\n"); ck_pr_cas_int(&(m->gc_status), statusm, statusc); //printf("DEBUG - collector is cooperating for blocked mutator\n"); - buf_len = gc_minor(m, m->stack_limit, m->stack_start, m->gc_cont, NULL, 0); + buf_len = + gc_minor(m, m->stack_limit, m->stack_start, m->gc_cont, NULL, + 0); // Handle any pending marks from write barrier gc_sum_pending_writes(m, 1); // Mark thread "roots", based on code from mutator's cooperator @@ -1179,11 +1212,10 @@ void gc_wait_handshake() // Thread is no longer running break; } - // At least for now, just give up quantum and come back to // this quickly to test again. This probably could be more // efficient. - nanosleep(&tim, NULL); + nanosleep(&tim, NULL); } } } @@ -1206,29 +1238,32 @@ void gc_collector() // exchange values of markColor and clearColor old_clear = ck_pr_load_int(&gc_color_clear); old_mark = ck_pr_load_int(&gc_color_mark); - while(!ck_pr_cas_int(&gc_color_clear, old_clear, old_mark)){} - while(!ck_pr_cas_int(&gc_color_mark, old_mark, old_clear)){} + while (!ck_pr_cas_int(&gc_color_clear, old_clear, old_mark)) { + } + while (!ck_pr_cas_int(&gc_color_mark, old_mark, old_clear)) { + } #if GC_DEBUG_TRACE - fprintf(stderr, "DEBUG - swap clear %d / mark %d\n", gc_color_clear, gc_color_mark); + fprintf(stderr, "DEBUG - swap clear %d / mark %d\n", gc_color_clear, + gc_color_mark); #endif gc_handshake(STATUS_SYNC1); #if GC_DEBUG_TRACE -fprintf(stderr, "DEBUG - after handshake sync 1\n"); + fprintf(stderr, "DEBUG - after handshake sync 1\n"); #endif //mark : gc_handshake(STATUS_SYNC2); #if GC_DEBUG_TRACE -fprintf(stderr, "DEBUG - after handshake sync 2\n"); + fprintf(stderr, "DEBUG - after handshake sync 2\n"); #endif ck_pr_cas_int(&gc_stage, STAGE_CLEAR_OR_MARKING, STAGE_TRACING); gc_post_handshake(STATUS_ASYNC); #if GC_DEBUG_TRACE -fprintf(stderr, "DEBUG - after post_handshake async\n"); + fprintf(stderr, "DEBUG - after post_handshake async\n"); #endif gc_mark_globals(); gc_wait_handshake(); #if GC_DEBUG_TRACE -fprintf(stderr, "DEBUG - after wait_handshake async\n"); + fprintf(stderr, "DEBUG - after wait_handshake async\n"); #endif //trace : gc_collector_trace(); @@ -1244,10 +1279,11 @@ fprintf(stderr, "DEBUG - after wait_handshake async\n"); max_freed = gc_sweep(gc_get_heap()->medium_obj_heap, HEAP_MED, &freed); for (heap_type = 0; heap_type < 2; heap_type++) { - while (cached_heap_free_sizes[heap_type] < (cached_heap_total_sizes[heap_type] * GC_FREE_THRESHOLD)) { + while (cached_heap_free_sizes[heap_type] < + (cached_heap_total_sizes[heap_type] * GC_FREE_THRESHOLD)) { #if GC_DEBUG_TRACE - fprintf(stdout, "Less than %f%% of the heap %d is free, growing it\n", - 100.0 * GC_FREE_THRESHOLD, heap_type); + fprintf(stdout, "Less than %f%% of the heap %d is free, growing it\n", + 100.0 * GC_FREE_THRESHOLD, heap_type); #endif if (heap_type == HEAP_SM) { gc_grow_heap(gc_get_heap()->small_obj_heap, heap_type, 0, 0); @@ -1259,15 +1295,14 @@ fprintf(stderr, "DEBUG - after wait_handshake async\n"); } } #if GC_DEBUG_TRACE - total_size = cached_heap_total_sizes[HEAP_SM] + - cached_heap_total_sizes[HEAP_MED] + - cached_heap_total_sizes[HEAP_REST]; - total_free = cached_heap_free_sizes[HEAP_SM] + - cached_heap_free_sizes[HEAP_MED] + - cached_heap_free_sizes[HEAP_REST]; - fprintf(stderr, "sweep done, total_size = %zu, total_free = %zu, freed = %zu, max_freed = %zu, elapsed = %zu\n", - total_size, total_free, - freed, max_freed, time(NULL) - gc_collector_start); + total_size = cached_heap_total_sizes[HEAP_SM] + + cached_heap_total_sizes[HEAP_MED] + cached_heap_total_sizes[HEAP_REST]; + total_free = cached_heap_free_sizes[HEAP_SM] + + cached_heap_free_sizes[HEAP_MED] + cached_heap_free_sizes[HEAP_REST]; + fprintf(stderr, + "sweep done, total_size = %zu, total_free = %zu, freed = %zu, max_freed = %zu, elapsed = %zu\n", + total_size, total_free, freed, max_freed, + time(NULL) - gc_collector_start); #endif #if GC_DEBUG_TRACE fprintf(stderr, "cleaning up any old thread data\n"); @@ -1307,7 +1342,8 @@ static pthread_t collector_thread; void gc_start_collector() { - if (pthread_create(&collector_thread, NULL, collector_main, &collector_thread)) { + if (pthread_create + (&collector_thread, NULL, collector_main, &collector_thread)) { fprintf(stderr, "Error creating collector thread\n"); exit(1); } @@ -1317,11 +1353,11 @@ void gc_start_collector() // END tri-color marking section ///////////////////////////////////////////// - // Initialize runtime data structures for a thread. // Must be called on the target thread itself during startup, // to verify stack limits are setup correctly. -void gc_thread_data_init(gc_thread_data *thd, int mut_num, char *stack_base, long stack_size) +void gc_thread_data_init(gc_thread_data * thd, int mut_num, char *stack_base, + long stack_size) { char stack_ref; thd->stack_start = stack_base; @@ -1330,10 +1366,10 @@ void gc_thread_data_init(gc_thread_data *thd, int mut_num, char *stack_base, lon #else thd->stack_limit = stack_base + stack_size; #endif - if (stack_overflow(stack_base, &stack_ref)){ - fprintf(stderr, - "Error: Stack is growing in the wrong direction! Rebuild with STACK_GROWTH_IS_DOWNWARD changed to %d\n", - (1 - STACK_GROWTH_IS_DOWNWARD)); + if (stack_overflow(stack_base, &stack_ref)) { + fprintf(stderr, + "Error: Stack is growing in the wrong direction! Rebuild with STACK_GROWTH_IS_DOWNWARD changed to %d\n", + (1 - STACK_GROWTH_IS_DOWNWARD)); exit(1); } thd->stack_traces = calloc(MAX_STACK_TRACES, sizeof(char *)); @@ -1356,14 +1392,15 @@ void gc_thread_data_init(gc_thread_data *thd, int mut_num, char *stack_base, lon thd->last_read = 0; thd->mark_buffer = NULL; thd->mark_buffer_len = 128; - thd->mark_buffer = vpbuffer_realloc(thd->mark_buffer, &(thd->mark_buffer_len)); + thd->mark_buffer = + vpbuffer_realloc(thd->mark_buffer, &(thd->mark_buffer_len)); if (pthread_mutex_init(&(thd->lock), NULL) != 0) { fprintf(stderr, "Unable to initialize thread mutex\n"); exit(1); } } -void gc_thread_data_free(gc_thread_data *thd) +void gc_thread_data_free(gc_thread_data * thd) { if (thd) { if (pthread_mutex_destroy(&thd->lock) != 0) { @@ -1373,11 +1410,16 @@ void gc_thread_data_free(gc_thread_data *thd) fprintf(stderr, "Thread mutex is locked, unable to free\n"); exit(1); } - if (thd->jmp_start) free(thd->jmp_start); - if (thd->gc_args) free(thd->gc_args); - if (thd->moveBuf) free(thd->moveBuf); - if (thd->mark_buffer) free(thd->mark_buffer); - if (thd->stack_traces) free(thd->stack_traces); + if (thd->jmp_start) + free(thd->jmp_start); + if (thd->gc_args) + free(thd->gc_args); + if (thd->moveBuf) + free(thd->moveBuf); + if (thd->mark_buffer) + free(thd->mark_buffer); + if (thd->stack_traces) + free(thd->stack_traces); if (thd->mutations) { clear_mutations(thd); } @@ -1392,19 +1434,20 @@ void gc_thread_data_free(gc_thread_data *thd) * The current continuation is required so that we can trace over it * in case the collector has to cooperate for the mutator. */ -void gc_mutator_thread_blocked(gc_thread_data *thd, object cont) +void gc_mutator_thread_blocked(gc_thread_data * thd, object cont) { - if(!ck_pr_cas_int((int *)&(thd->thread_state), - CYC_THREAD_STATE_RUNNABLE, - CYC_THREAD_STATE_BLOCKED)){ - fprintf(stderr, "Unable to change thread from runnable to blocked. status = %d\n", thd->thread_state); + if (!ck_pr_cas_int((int *)&(thd->thread_state), + CYC_THREAD_STATE_RUNNABLE, CYC_THREAD_STATE_BLOCKED)) { + fprintf(stderr, + "Unable to change thread from runnable to blocked. status = %d\n", + thd->thread_state); exit(1); } thd->gc_cont = cont; - thd->gc_num_args = 0; // Will be set later, after collection + thd->gc_num_args = 0; // Will be set later, after collection } -void Cyc_apply_from_buf(void *data, int argc, object prim, object *buf); +void Cyc_apply_from_buf(void *data, int argc, object prim, object * buf); /** * Called explicitly from a mutator thread to let the collector know @@ -1412,28 +1455,29 @@ void Cyc_apply_from_buf(void *data, int argc, object prim, object *buf); * cooperated on behalf of the mutator while it was blocking, the mutator * will move any remaining stack objects to the heap and longjmp. */ -void gc_mutator_thread_runnable(gc_thread_data *thd, object result) +void gc_mutator_thread_runnable(gc_thread_data * thd, object result) { char stack_limit; // Transition from blocked back to runnable using CAS. // If we are unable to transition back, assume collector // has cooperated on behalf of this mutator thread. - if (!ck_pr_cas_int((int *)&(thd->thread_state), - CYC_THREAD_STATE_BLOCKED, - CYC_THREAD_STATE_RUNNABLE)){ + if (!ck_pr_cas_int((int *)&(thd->thread_state), + CYC_THREAD_STATE_BLOCKED, CYC_THREAD_STATE_RUNNABLE)) { //printf("DEBUG - Collector cooperated, wait for it to finish. status is %d\n", thd->thread_state); // wait for the collector to finish pthread_mutex_lock(&(thd->lock)); pthread_mutex_unlock(&(thd->lock)); // update thread status - while(!ck_pr_cas_int((int *)&(thd->thread_state), - CYC_THREAD_STATE_BLOCKED_COOPERATING, - CYC_THREAD_STATE_RUNNABLE)){} + while (!ck_pr_cas_int((int *)&(thd->thread_state), + CYC_THREAD_STATE_BLOCKED_COOPERATING, + CYC_THREAD_STATE_RUNNABLE)) { + } // Setup value to send to continuation thd->gc_args[0] = result; thd->gc_num_args = 1; // Move any remaining stack objects (should only be the result?) to heap - gc_minor(thd, &stack_limit, thd->stack_start, thd->gc_cont, thd->gc_args, thd->gc_num_args); + gc_minor(thd, &stack_limit, thd->stack_start, thd->gc_cont, thd->gc_args, + thd->gc_num_args); // Handle any pending marks from write barrier gc_sum_pending_writes(thd, 0); //printf("DEBUG - Call into gc_cont after collector coop\n"); @@ -1445,7 +1489,7 @@ void gc_mutator_thread_runnable(gc_thread_data *thd, object result) thd->gc_args[0] = result; Cyc_apply_from_buf(thd, 1, thd->gc_cont, thd->gc_args); } else { - (((closure)(thd->gc_cont))->fn)(thd, 1, thd->gc_cont, result); + (((closure) (thd->gc_cont))->fn) (thd, 1, thd->gc_cont, result); } } } diff --git a/include/cyclone/ck_ht_hash.h b/include/cyclone/ck_ht_hash.h index cd3d7a53..be4f08e6 100644 --- a/include/cyclone/ck_ht_hash.h +++ b/include/cyclone/ck_ht_hash.h @@ -61,16 +61,16 @@ // Other compilers -#else // defined(_MSC_VER) +#else // defined(_MSC_VER) #define FORCE_INLINE inline __attribute__((always_inline)) -static inline uint32_t rotl32 ( uint32_t x, int8_t r ) +static inline uint32_t rotl32(uint32_t x, int8_t r) { return (x << r) | (x >> (32 - r)); } -static inline uint64_t rotl64 ( uint64_t x, int8_t r ) +static inline uint64_t rotl64(uint64_t x, int8_t r) { return (x << r) | (x >> (64 - r)); } @@ -80,13 +80,13 @@ static inline uint64_t rotl64 ( uint64_t x, int8_t r ) #define BIG_CONSTANT(x) (x##LLU) -#endif // !defined(_MSC_VER) +#endif // !defined(_MSC_VER) //----------------------------------------------------------------------------- // Block read - if your platform needs to do endian-swapping or can only // handle aligned reads, do the conversion here -FORCE_INLINE static uint32_t getblock ( const uint32_t * p, int i ) +FORCE_INLINE static uint32_t getblock(const uint32_t * p, int i) { return p[i]; } @@ -94,7 +94,7 @@ FORCE_INLINE static uint32_t getblock ( const uint32_t * p, int i ) //----------------------------------------------------------------------------- // Finalization mix - force all bits of a hash block to avalanche -FORCE_INLINE static uint32_t fmix ( uint32_t h ) +FORCE_INLINE static uint32_t fmix(uint32_t h) { h ^= h >> 16; h *= 0x85ebca6b; @@ -107,10 +107,10 @@ FORCE_INLINE static uint32_t fmix ( uint32_t h ) //----------------------------------------------------------------------------- -static inline void MurmurHash3_x86_32 ( const void * key, int len, - uint32_t seed, uint32_t * out ) +static inline void MurmurHash3_x86_32(const void *key, int len, + uint32_t seed, uint32_t * out) { - const uint8_t * data = (const uint8_t*)key; + const uint8_t *data = (const uint8_t *)key; const int nblocks = len / 4; int i; @@ -122,34 +122,38 @@ static inline void MurmurHash3_x86_32 ( const void * key, int len, //---------- // body - const uint32_t * blocks = (const uint32_t *)(const void *)(data + nblocks*4); + const uint32_t *blocks = (const uint32_t *)(const void *)(data + nblocks * 4); - for(i = -nblocks; i; i++) - { - uint32_t k1 = getblock(blocks,i); + for (i = -nblocks; i; i++) { + uint32_t k1 = getblock(blocks, i); k1 *= c1; - k1 = ROTL32(k1,15); + k1 = ROTL32(k1, 15); k1 *= c2; h1 ^= k1; - h1 = ROTL32(h1,13); - h1 = h1*5+0xe6546b64; + h1 = ROTL32(h1, 13); + h1 = h1 * 5 + 0xe6546b64; } //---------- // tail - const uint8_t * tail = (const uint8_t*)(data + nblocks*4); + const uint8_t *tail = (const uint8_t *)(data + nblocks * 4); uint32_t k1 = 0; - switch(len & 3) - { - case 3: k1 ^= tail[2] << 16; - case 2: k1 ^= tail[1] << 8; - case 1: k1 ^= tail[0]; - k1 *= c1; k1 = ROTL32(k1,15); k1 *= c2; h1 ^= k1; + switch (len & 3) { + case 3: + k1 ^= tail[2] << 16; + case 2: + k1 ^= tail[1] << 8; + case 1: + k1 ^= tail[0]; + k1 *= c1; + k1 = ROTL32(k1, 15); + k1 *= c2; + h1 ^= k1; }; //---------- @@ -159,28 +163,27 @@ static inline void MurmurHash3_x86_32 ( const void * key, int len, h1 = fmix(h1); - *(uint32_t *)out = h1; + *(uint32_t *) out = h1; } -static inline uint64_t MurmurHash64A ( const void * key, int len, uint64_t seed ) +static inline uint64_t MurmurHash64A(const void *key, int len, uint64_t seed) { const uint64_t m = BIG_CONSTANT(0xc6a4a7935bd1e995); const int r = 47; uint64_t h = seed ^ (len * m); - const uint64_t * data = (const uint64_t *)key; - const uint64_t * end = data + (len/8); + const uint64_t *data = (const uint64_t *)key; + const uint64_t *end = data + (len / 8); - while(data != end) - { + while (data != end) { uint64_t k; - if (!((uintptr_t)data & 0x7)) - k = *data++; + if (!((uintptr_t) data & 0x7)) + k = *data++; else { - memcpy(&k, data, sizeof(k)); - data++; + memcpy(&k, data, sizeof(k)); + data++; } k *= m; @@ -191,18 +194,24 @@ static inline uint64_t MurmurHash64A ( const void * key, int len, uint64_t seed h *= m; } - const unsigned char * data2 = (const unsigned char*)data; + const unsigned char *data2 = (const unsigned char *)data; - switch(len & 7) - { - case 7: h ^= (uint64_t)(data2[6]) << 48; - case 6: h ^= (uint64_t)(data2[5]) << 40; - case 5: h ^= (uint64_t)(data2[4]) << 32; - case 4: h ^= (uint64_t)(data2[3]) << 24; - case 3: h ^= (uint64_t)(data2[2]) << 16; - case 2: h ^= (uint64_t)(data2[1]) << 8; - case 1: h ^= (uint64_t)(data2[0]); - h *= m; + switch (len & 7) { + case 7: + h ^= (uint64_t) (data2[6]) << 48; + case 6: + h ^= (uint64_t) (data2[5]) << 40; + case 5: + h ^= (uint64_t) (data2[4]) << 32; + case 4: + h ^= (uint64_t) (data2[3]) << 24; + case 3: + h ^= (uint64_t) (data2[2]) << 16; + case 2: + h ^= (uint64_t) (data2[1]) << 8; + case 1: + h ^= (uint64_t) (data2[0]); + h *= m; }; h ^= h >> r; @@ -212,52 +221,64 @@ static inline uint64_t MurmurHash64A ( const void * key, int len, uint64_t seed return h; } - // 64-bit hash for 32-bit platforms -static inline uint64_t MurmurHash64B ( const void * key, int len, uint64_t seed ) +static inline uint64_t MurmurHash64B(const void *key, int len, uint64_t seed) { const uint32_t m = 0x5bd1e995; const int r = 24; - uint32_t h1 = (uint32_t)(seed) ^ len; - uint32_t h2 = (uint32_t)(seed >> 32); + uint32_t h1 = (uint32_t) (seed) ^ len; + uint32_t h2 = (uint32_t) (seed >> 32); - const uint32_t * data = (const uint32_t *)key; + const uint32_t *data = (const uint32_t *)key; - while(len >= 8) - { + while (len >= 8) { uint32_t k1 = *data++; - k1 *= m; k1 ^= k1 >> r; k1 *= m; - h1 *= m; h1 ^= k1; + k1 *= m; + k1 ^= k1 >> r; + k1 *= m; + h1 *= m; + h1 ^= k1; len -= 4; uint32_t k2 = *data++; - k2 *= m; k2 ^= k2 >> r; k2 *= m; - h2 *= m; h2 ^= k2; + k2 *= m; + k2 ^= k2 >> r; + k2 *= m; + h2 *= m; + h2 ^= k2; len -= 4; } - if(len >= 4) - { + if (len >= 4) { uint32_t k1 = *data++; - k1 *= m; k1 ^= k1 >> r; k1 *= m; - h1 *= m; h1 ^= k1; + k1 *= m; + k1 ^= k1 >> r; + k1 *= m; + h1 *= m; + h1 ^= k1; len -= 4; } - switch(len) - { - case 3: h2 ^= ((const unsigned char*)data)[2] << 16; - case 2: h2 ^= ((const unsigned char*)data)[1] << 8; - case 1: h2 ^= ((const unsigned char*)data)[0]; - h2 *= m; + switch (len) { + case 3: + h2 ^= ((const unsigned char *)data)[2] << 16; + case 2: + h2 ^= ((const unsigned char *)data)[1] << 8; + case 1: + h2 ^= ((const unsigned char *)data)[0]; + h2 *= m; }; - h1 ^= h2 >> 18; h1 *= m; - h2 ^= h1 >> 22; h2 *= m; - h1 ^= h2 >> 17; h1 *= m; - h2 ^= h1 >> 19; h2 *= m; + h1 ^= h2 >> 18; + h1 *= m; + h2 ^= h1 >> 22; + h2 *= m; + h1 ^= h2 >> 17; + h1 *= m; + h2 ^= h1 >> 19; + h2 *= m; uint64_t h = h1; @@ -266,4 +287,4 @@ static inline uint64_t MurmurHash64B ( const void * key, int len, uint64_t seed return h; } -#endif /* CK_HT_HASH_H */ +#endif /* CK_HT_HASH_H */ diff --git a/include/cyclone/runtime-main.h b/include/cyclone/runtime-main.h index 3d1890e8..259072be 100644 --- a/include/cyclone/runtime-main.h +++ b/include/cyclone/runtime-main.h @@ -14,7 +14,7 @@ long global_stack_size = 0; long global_heap_size = 0; -static void c_entry_pt(void *,int,closure,closure); +static void c_entry_pt(void *, int, closure, closure); static void Cyc_heap_init(long heap_size); static void Cyc_heap_init(long heap_size) @@ -27,4 +27,4 @@ static void Cyc_heap_init(long heap_size) gc_start_collector(); } -#endif /* CYCLONE_RUNTIME_MAIN_H */ +#endif /* CYCLONE_RUNTIME_MAIN_H */ diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index bac2e485..be43abf7 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -45,7 +45,7 @@ extern const object Cyc_EOF; object cell_get(object cell); #define global_set(glo,value) Cyc_global_set(data, (object *)&glo, value) -object Cyc_global_set(void *thd, object *glo, object value); +object Cyc_global_set(void *thd, object * glo, object value); /* Variable argument count support @@ -127,16 +127,19 @@ object Cyc_set_cvar(object var, object value); object apply(void *data, object cont, object func, object args); void Cyc_apply(void *data, int argc, closure cont, object prim, ...); object Cyc_string_cmp(void *data, object str1, object str2); -void dispatch_string_91append(void *data, int argc, object clo, object cont, object str1, ...); -list mcons(object,object); -cvar_type *mcvar(object *var); -object Cyc_display(object, FILE *port); -object dispatch_display_va(void *data, int argc, object clo, object cont, object x, ...); +void dispatch_string_91append(void *data, int argc, object clo, object cont, + object str1, ...); +list mcons(object, object); +cvar_type *mcvar(object * var); +object Cyc_display(object, FILE * port); +object dispatch_display_va(void *data, int argc, object clo, object cont, + object x, ...); object Cyc_display_va(int argc, object x, ...); object Cyc_display_va_list(int argc, object x, va_list ap); -object Cyc_write_char(void *data, object c, object port); -object Cyc_write(object, FILE *port); -object dispatch_write_va(void *data, int argc, object clo, object cont, object x, ...); +object Cyc_write_char(void *data, object c, object port); +object Cyc_write(object, FILE * port); +object dispatch_write_va(void *data, int argc, object clo, object cont, + object x, ...); object Cyc_write_va(int argc, object x, ...); object Cyc_write_va_list(int argc, object x, va_list ap); @@ -144,17 +147,19 @@ object Cyc_has_cycle(object lst); object Cyc_num_eq(void *, object cont, int argc, object n, ...); object Cyc_num_gt(void *, object cont, int argc, object n, ...); object Cyc_num_lt(void *, object cont, int argc, object n, ...); -object Cyc_num_gte(void *,object cont, int argc, object n, ...); -object Cyc_num_lte(void *,object cont, int argc, object n, ...); +object Cyc_num_gte(void *, object cont, int argc, object n, ...); +object Cyc_num_lte(void *, object cont, int argc, object n, ...); int Cyc_num_eq_op(void *, object x, object y); int Cyc_num_gt_op(void *, object x, object y); int Cyc_num_lt_op(void *, object x, object y); -int Cyc_num_gte_op(void *,object x, object y); -int Cyc_num_lte_op(void *,object x, object y); -object Cyc_num_cmp_va_list(void *data, int argc, int (fn_op(void *, object, object)), object n, va_list ns); +int Cyc_num_gte_op(void *, object x, object y); +int Cyc_num_lte_op(void *, object x, object y); +object Cyc_num_cmp_va_list(void *data, int argc, + int (fn_op(void *, object, object)), object n, + va_list ns); object Cyc_eq(object x, object y); -object Cyc_set_car(void *, object l, object val) ; -object Cyc_set_cdr(void *, object l, object val) ; +object Cyc_set_car(void *, object l, object val); +object Cyc_set_cdr(void *, object l, object val); object Cyc_length(void *d, object l); integer_type Cyc_length_as_object(void *d, object l); object Cyc_vector_length(void *data, object v); @@ -164,15 +169,19 @@ object Cyc_make_vector(void *data, object cont, int argc, object len, ...); object Cyc_make_bytevector(void *data, object cont, int argc, object len, ...); object Cyc_bytevector(void *data, object cont, int argc, object bval, ...); object Cyc_bytevector_length(void *data, object bv); -object Cyc_bytevector_append(void *data, object cont, int _argc, object bv, ...); -object Cyc_bytevector_copy(void *data, object cont, object bv, object start, object end); +object Cyc_bytevector_append(void *data, object cont, int _argc, object bv, + ...); +object Cyc_bytevector_copy(void *data, object cont, object bv, object start, + object end); object Cyc_bytevector_u8_ref(void *data, object bv, object k); object Cyc_bytevector_u8_set(void *data, object bv, object k, object b); -object Cyc_utf82string(void *data, object cont, object bv, object start, object end); -object Cyc_string2utf8(void *data, object cont, object str, object start, object end); +object Cyc_utf82string(void *data, object cont, object bv, object start, + object end); +object Cyc_string2utf8(void *data, object cont, object str, object start, + object end); object Cyc_list2vector(void *data, object cont, object l); object Cyc_number2string2(void *data, object cont, int argc, object n, ...); -object Cyc_symbol2string(void *d, object cont, object sym) ; +object Cyc_symbol2string(void *d, object cont, object sym); object Cyc_string2symbol(void *d, object str); object Cyc_list2string(void *d, object cont, object lst); object Cyc_string2number_(void *d, object cont, object str); @@ -182,7 +191,8 @@ int octstr2int(const char *str); int hexstr2int(const char *str); object Cyc_string_append(void *data, object cont, int argc, object str1, ...); object Cyc_string_length(void *data, object str); -object Cyc_substring(void *data, object cont, object str, object start, object end); +object Cyc_substring(void *data, object cont, object str, object start, + object end); object Cyc_string_ref(void *data, object str, object k); object Cyc_string_set(void *data, object str, object k, object chr); object Cyc_installation_dir(void *data, object cont, object type); @@ -225,46 +235,52 @@ object Cyc_is_procedure(void *data, object o); object Cyc_is_macro(object o); object Cyc_is_eof_object(object o); object Cyc_is_cvar(object o); -object Cyc_sum_op(void *data, common_type *x, object y); -object Cyc_sub_op(void *data, common_type *x, object y); -object Cyc_mul_op(void *data, common_type *x, object y); -object Cyc_div_op(void *data, common_type *x, object y); +object Cyc_sum_op(void *data, common_type * x, object y); +object Cyc_sub_op(void *data, common_type * x, object y); +object Cyc_mul_op(void *data, common_type * x, object y); +object Cyc_div_op(void *data, common_type * x, object y); object Cyc_sum(void *data, object cont, int argc, object n, ...); object Cyc_sub(void *data, object cont, int argc, object n, ...); object Cyc_mul(void *data, object cont, int argc, object n, ...); object Cyc_div(void *data, object cont, int argc, object n, ...); -object Cyc_num_op_va_list(void *data, int argc, object (fn_op(void *, common_type *, object)), int default_no_args, int default_one_arg, object n, va_list ns, common_type *buf); -int equal(object,object); -list assq(void *,object,list); -list assoc(void *,object x, list l); -object equalp(object,object); -object memberp(void *,object,list); -object memqp(void *,object,list); +object Cyc_num_op_va_list(void *data, int argc, + object(fn_op(void *, common_type *, object)), + int default_no_args, int default_one_arg, object n, + va_list ns, common_type * buf); +int equal(object, object); +list assq(void *, object, list); +list assoc(void *, object x, list l); +object equalp(object, object); +object memberp(void *, object, list); +object memqp(void *, object, list); object Cyc_spawn_thread(object thunk); -void Cyc_start_trampoline(gc_thread_data *thd); -void Cyc_end_thread(gc_thread_data *thd); -void Cyc_exit_thread(gc_thread_data *thd); +void Cyc_start_trampoline(gc_thread_data * thd); +void Cyc_end_thread(gc_thread_data * thd); +void Cyc_exit_thread(gc_thread_data * thd); object Cyc_thread_sleep(void *data, object timeout); -void GC(void *,closure,object*,int); +void GC(void *, closure, object *, int); object Cyc_trigger_minor_gc(void *data, object cont); object copy2heap(void *data, object obj); void Cyc_st_add(void *data, char *frame); -void Cyc_st_print(void *data, FILE *out); +void Cyc_st_print(void *data, FILE * out); -char *_strdup (const char *s); -object add_symbol(symbol_type *psym); +char *_strdup(const char *s); +object add_symbol(symbol_type * psym); object add_symbol_by_name(const char *name); object find_symbol_by_name(const char *name); object find_or_add_symbol(const char *name); extern list global_table; -void add_global(object *glo); +void add_global(object * glo); -void dispatch(void *data, int argc, function_type func, object clo, object cont, object args); -void dispatch_va(void *data, int argc, function_type_va func, object clo, object cont, object args); -void do_dispatch(void *data, int argc, function_type func, object clo, object *buffer); +void dispatch(void *data, int argc, function_type func, object clo, object cont, + object args); +void dispatch_va(void *data, int argc, function_type_va func, object clo, + object cont, object args); +void do_dispatch(void *data, int argc, function_type func, object clo, + object * buffer); extern const object boolean_t; extern const object boolean_f; @@ -416,10 +432,11 @@ extern object Cyc_glo_call_cc; #define __glo_call_95cc_scheme_base Cyc_glo_call_cc /* Exception handling */ -object Cyc_default_exception_handler(void *data, int argc, closure _, object err); +object Cyc_default_exception_handler(void *data, int argc, closure _, + object err); object Cyc_current_exception_handler(void *data); void Cyc_rt_raise(void *data, object err); void Cyc_rt_raise2(void *data, const char *msg, object err); void Cyc_rt_raise_msg(void *data, const char *err); -#endif /* CYCLONE_RUNTIME_H */ +#endif /* CYCLONE_RUNTIME_H */ diff --git a/include/cyclone/types.h b/include/cyclone/types.h index 7f55ed4d..ab0bbee7 100644 --- a/include/cyclone/types.h +++ b/include/cyclone/types.h @@ -29,9 +29,9 @@ #define STACK_SIZE 500000 // Parameters for size of a "page" on the heap (the second generation GC), in bytes. -#define GROW_HEAP_BY_SIZE (2 * 1024 * 1024) // Grow first page by adding this amount to it -#define INITIAL_HEAP_SIZE (3 * 1024 * 1024) // Size of the first page -#define HEAP_SIZE (16 * 1024 * 1024) // Normal size of a page +#define GROW_HEAP_BY_SIZE (2 * 1024 * 1024) // Grow first page by adding this amount to it +#define INITIAL_HEAP_SIZE (3 * 1024 * 1024) // Size of the first page +#define HEAP_SIZE (16 * 1024 * 1024) // Normal size of a page ///////////////////////////// // Major GC tuning parameters @@ -67,8 +67,8 @@ typedef void *object; // Define a tag for each possible type of object. // Remember to update tag_names in runtime.c when adding new tags -enum object_tag { - boolean_tag = 0 // 0 +enum object_tag { + boolean_tag = 0 // 0 , bytevector_tag // 1 , c_opaque_tag // 2 , closure0_tag // 3 @@ -95,8 +95,8 @@ typedef unsigned char tag_type; /* Threading */ typedef enum { CYC_THREAD_STATE_NEW, CYC_THREAD_STATE_RUNNABLE, - CYC_THREAD_STATE_BLOCKED, CYC_THREAD_STATE_BLOCKED_COOPERATING, - CYC_THREAD_STATE_TERMINATED + CYC_THREAD_STATE_BLOCKED, CYC_THREAD_STATE_BLOCKED_COOPERATING, + CYC_THREAD_STATE_TERMINATED } cyc_thread_state_type; /* Thread data structures */ @@ -232,7 +232,7 @@ typedef void (*function_type_va) (int, object, object, object, ...); typedef struct { gc_header_type hdr; tag_type tag; - object *pvar; /* GC assumes this is a Cyclone object! */ + object *pvar; /* GC assumes this is a Cyclone object! */ } cvar_type; typedef cvar_type *cvar; #define make_cvar(n,v) \ @@ -248,7 +248,7 @@ typedef cvar_type *cvar; typedef struct { gc_header_type hdr; tag_type tag; - void *ptr; /* Can be anything, GC will not collect it */ + void *ptr; /* Can be anything, GC will not collect it */ } c_opaque_type; typedef c_opaque_type *c_opaque; #define make_c_opaque(var, p) \ diff --git a/runtime.c b/runtime.c index d0daa3bc..cddee462 100644 --- a/runtime.c +++ b/runtime.c @@ -18,52 +18,56 @@ //int JAE_DEBUG = 0; //int gcMoveCountsDEBUG[20] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; -object Cyc_global_set(void *thd, object *glo, object value) +object Cyc_global_set(void *thd, object * glo, object value) { - gc_mut_update((gc_thread_data *)thd, *glo, value); + gc_mut_update((gc_thread_data *) thd, *glo, value); *(glo) = value; return value; } /* Error checking section - type mismatch, num args, etc */ /* Type names to use for error messages */ -const char *tag_names[] = { \ - /*boolean_tag */ "boolean" \ - /*bytevector_tag*/ , "bytevector" \ - /*c_opaque_tag */ , "opaque" \ - /*closure0_tag */ , "procedure" \ - /*closure1_tag */ , "procedure" \ - /*closureN_tag */ , "procedure" \ - /*cond_var_tag */ , "condition variable" \ - /*cvar_tag */ , "C primitive" \ - /*double_tag */ , "number" \ - /*eof_tag */ , "eof" \ - /*forward_tag */ , "" \ - /*integer_tag */ , "number" \ - /*macro_tag */ , "macro" \ - /*mutex_tag */ , "mutex" \ - /*pair_tag */ , "pair" \ - /*port_tag */ , "port" \ - /*primitive_tag */ , "primitive" \ - /*string_tag */ , "string" \ - /*symbol_tag */ , "symbol" \ - /*vector_tag */ , "vector" \ - , "Reserved for future use" }; +const char *tag_names[] = { + /*boolean_tag */ "boolean" + /*bytevector_tag */ , "bytevector" + /*c_opaque_tag */ , "opaque" + /*closure0_tag */ , "procedure" + /*closure1_tag */ , "procedure" + /*closureN_tag */ , "procedure" + /*cond_var_tag */ , "condition variable" + /*cvar_tag */ , "C primitive" + /*double_tag */ , "number" + /*eof_tag */ , "eof" + /*forward_tag */ , "" + /*integer_tag */ , "number" + /*macro_tag */ , "macro" + /*mutex_tag */ , "mutex" + /*pair_tag */ , "pair" + /*port_tag */ , "port" + /*primitive_tag */ , "primitive" + /*string_tag */ , "string" + /*symbol_tag */ , "symbol" + /*vector_tag */ , "vector" + , "Reserved for future use" +}; -void Cyc_invalid_type_error(void *data, int tag, object found) { +void Cyc_invalid_type_error(void *data, int tag, object found) +{ char buf[256]; snprintf(buf, 255, "Invalid type: expected %s, found ", tag_names[tag]); //snprintf(buf, 255, "Invalid type: expected %s, found (%p) ", tag_names[tag], found); Cyc_rt_raise2(data, buf, found); } -void Cyc_check_obj(void *data, int tag, object obj) { +void Cyc_check_obj(void *data, int tag, object obj) +{ if (!is_object_type(obj)) { Cyc_invalid_type_error(data, tag, obj); } } -void Cyc_check_bounds(void *data, const char *label, int len, int index) { +void Cyc_check_bounds(void *data, const char *label, int len, int index) +{ if (index < 0 || index >= len) { char buf[128]; snprintf(buf, 127, "%s - invalid index %d", label, index); @@ -116,7 +120,8 @@ object Cyc_global_variables = NULL; int _cyc_argc = 0; char **_cyc_argv = NULL; -static symbol_type __EOF = {{0}, eof_tag, "", NULL}; // symbol_type in lieu of custom type +static symbol_type __EOF = { {0}, eof_tag, "", NULL }; // symbol_type in lieu of custom type + const object Cyc_EOF = &__EOF; static ck_hs_t symbol_table; static int symbol_table_size = 65536; @@ -126,20 +131,20 @@ static pthread_mutex_t symbol_table_lock; // These are specifically for a table of symbols static void *hs_malloc(size_t r) { - return malloc(r); + return malloc(r); } static void hs_free(void *p, size_t b, bool r) { // (void)b; // (void)r; - free(p); + free(p); // return; } static struct ck_malloc my_allocator = { - .malloc = hs_malloc, - .free = hs_free + .malloc = hs_malloc, + .free = hs_free }; static unsigned long hs_hash(const void *object, unsigned long seed) @@ -156,7 +161,7 @@ static bool hs_compare(const void *previous, const void *compare) return strcmp(symbol_pname(previous), symbol_pname(compare)) == 0; } -static void *set_get(ck_hs_t *hs, const void *value) +static void *set_get(ck_hs_t * hs, const void *value) { unsigned long h; void *v; @@ -166,13 +171,14 @@ static void *set_get(ck_hs_t *hs, const void *value) return v; } -static bool set_insert(ck_hs_t *hs, const void *value) +static bool set_insert(ck_hs_t * hs, const void *value) { unsigned long h; h = CK_HS_HASH(hs, hs_hash, value); return ck_hs_put(hs, h, value); } + // End supporting functions void gc_init_heap(long heap_size) @@ -183,12 +189,10 @@ void gc_init_heap(long heap_size) Cyc_heap->small_obj_heap = gc_heap_create(HEAP_SM, initial_heap_size, 0, 0); Cyc_heap->medium_obj_heap = gc_heap_create(HEAP_MED, initial_heap_size, 0, 0); - if (!ck_hs_init(&symbol_table, + if (!ck_hs_init(&symbol_table, CK_HS_MODE_OBJECT | CK_HS_MODE_SPMC, hs_hash, hs_compare, - &my_allocator, - symbol_table_size, - 43423)){ + &my_allocator, symbol_table_size, 43423)) { fprintf(stderr, "Unable to initialize symbol table\n"); exit(1); } @@ -203,38 +207,43 @@ gc_heap_root *gc_get_heap() return Cyc_heap; } -object cell_get(object cell){ - return car(cell); +object cell_get(object cell) +{ + return car(cell); } -static boolean_type t_boolean = {{0}, boolean_tag, "t"}; -static boolean_type f_boolean = {{0}, boolean_tag, "f"}; +static boolean_type t_boolean = { {0}, boolean_tag, "t" }; +static boolean_type f_boolean = { {0}, boolean_tag, "f" }; + const object boolean_t = &t_boolean; const object boolean_f = &f_boolean; -static symbol_type Cyc_void_symbol = {{0}, symbol_tag, "", NULL}; +static symbol_type Cyc_void_symbol = { {0}, symbol_tag, "", NULL }; + const object quote_void = &Cyc_void_symbol; /* Stack Traces */ -void Cyc_st_add(void *data, char *frame) { - gc_thread_data *thd = (gc_thread_data *)data; +void Cyc_st_add(void *data, char *frame) +{ + gc_thread_data *thd = (gc_thread_data *) data; // Do not allow recursion to remove older frames - if (frame != thd->stack_prev_frame) { + if (frame != thd->stack_prev_frame) { thd->stack_prev_frame = frame; thd->stack_traces[thd->stack_trace_idx] = frame; thd->stack_trace_idx = (thd->stack_trace_idx + 1) % MAX_STACK_TRACES; } } -void Cyc_st_print(void *data, FILE *out) { +void Cyc_st_print(void *data, FILE * out) +{ /* print to stream, note it is possible that some traces could be on the stack after a GC. not sure what to do about it, may need to detect that case and stop printing. or, with the tbl being so small, maybe it will not be an issue in practice? a bit risky to ignore though - */ - gc_thread_data *thd = (gc_thread_data *)data; + */ + gc_thread_data *thd = (gc_thread_data *) data; int i = (thd->stack_trace_idx + 1) % MAX_STACK_TRACES; while (i != thd->stack_trace_idx) { if (thd->stack_traces[i]) { @@ -243,6 +252,7 @@ void Cyc_st_print(void *data, FILE *out) { i = (i + 1) % MAX_STACK_TRACES; } } + /* END Stack Traces section */ /* Symbol Table */ @@ -256,14 +266,18 @@ void Cyc_st_print(void *data, FILE *out) { For now, GC of symbols is missing. long-term it probably would be desirable */ -char *_strdup (const char *s) { - char *d = malloc (strlen (s) + 1); - if (d) { strcpy (d,s); } - return d; +char *_strdup(const char *s) +{ + char *d = malloc(strlen(s) + 1); + if (d) { + strcpy(d, s); + } + return d; } -object find_symbol_by_name(const char *name) { - symbol_type tmp = {{0}, symbol_tag, name, NULL}; +object find_symbol_by_name(const char *name) +{ + symbol_type tmp = { {0}, symbol_tag, name, NULL }; object result = set_get(&symbol_table, &tmp); //if (result) { // printf("found symbol %s\n", symbol_pname(result)); @@ -271,9 +285,10 @@ object find_symbol_by_name(const char *name) { return result; } -object add_symbol(symbol_type *psym) { +object add_symbol(symbol_type * psym) +{ //printf("Adding symbol %s, table size = %ld\n", symbol_pname(psym), ck_hs_count(&symbol_table)); - pthread_mutex_lock(&symbol_table_lock); // Only 1 "writer" allowed + pthread_mutex_lock(&symbol_table_lock); // Only 1 "writer" allowed if (ck_hs_count(&symbol_table) == symbol_table_size) { // TODO: grow table if it is not big enough fprintf(stderr, "Ran out of symbol table entries\n"); @@ -284,16 +299,18 @@ object add_symbol(symbol_type *psym) { return psym; } -object add_symbol_by_name(const char *name) { - symbol_type sym = {{0}, symbol_tag, _strdup(name), NULL}; +object add_symbol_by_name(const char *name) +{ + symbol_type sym = { {0}, symbol_tag, _strdup(name), NULL }; symbol_type *psym = malloc(sizeof(symbol_type)); memcpy(psym, &sym, sizeof(symbol_type)); return add_symbol(psym); } -object find_or_add_symbol(const char *name){ +object find_or_add_symbol(const char *name) +{ object sym = find_symbol_by_name(name); - if (sym){ + if (sym) { return sym; } else { return add_symbol_by_name(name); @@ -305,7 +322,8 @@ object find_or_add_symbol(const char *name){ /* Global table */ list global_table = NULL; -void add_global(object *glo) { +void add_global(object * glo) +{ // It would probably be more efficient to allocate // a contiguous block of memory for this... for now // this is more expedient @@ -315,20 +333,20 @@ void add_global(object *glo) { void debug_dump_globals() { list l = global_table; - for(; l != NULL; l = cdr(l)){ - cvar_type *c = (cvar_type *)car(l); - //gc_mark(h, *(c->pvar)); // Mark actual object the global points to - printf("DEBUG %p ", c->pvar); - if (*c->pvar){ - printf("mark = %d ", mark(*c->pvar)); - if (mark(*c->pvar) == gc_color_red) { - printf("obj = "); - Cyc_display(*c->pvar, stdout); - } - printf("\n"); - } else { - printf(" is NULL\n"); - } + for (; l != NULL; l = cdr(l)) { + cvar_type *c = (cvar_type *) car(l); + //gc_mark(h, *(c->pvar)); // Mark actual object the global points to + printf("DEBUG %p ", c->pvar); + if (*c->pvar) { + printf("mark = %d ", mark(*c->pvar)); + if (mark(*c->pvar) == gc_color_red) { + printf("obj = "); + Cyc_display(*c->pvar, stdout); + } + printf("\n"); + } else { + printf(" is NULL\n"); + } } } @@ -342,8 +360,9 @@ void debug_dump_globals() * the calling thread, so locking is not required. */ -void add_mutation(void *data, object var, int index, object value){ - gc_thread_data *thd = (gc_thread_data *)data; +void add_mutation(void *data, object var, int index, object value) +{ + gc_thread_data *thd = (gc_thread_data *) data; if (is_object_type(value)) { if (index >= 0) { // For vectors only, mcons index as another var. That way @@ -357,8 +376,9 @@ void add_mutation(void *data, object var, int index, object value){ /* TODO: consider a more efficient implementation, such as reusing old nodes instead of reclaiming them each time */ -void clear_mutations(void *data) { - gc_thread_data *thd = (gc_thread_data *)data; +void clear_mutations(void *data) +{ + gc_thread_data *thd = (gc_thread_data *) data; list l = thd->mutations, next; while (l != NULL) { next = cdr(l); @@ -367,6 +387,7 @@ void clear_mutations(void *data) { } thd->mutations = NULL; } + /* END mutation table */ /* Runtime globals */ @@ -374,30 +395,33 @@ object Cyc_glo_call_cc = NULL; object Cyc_glo_eval_from_c = NULL; /* Exception handler */ -object Cyc_default_exception_handler(void *data, int argc, closure _, object err) { - fprintf(stderr, "Error: "); +object Cyc_default_exception_handler(void *data, int argc, closure _, + object err) +{ + fprintf(stderr, "Error: "); - if ((err == NULL) || is_value_type(err) || type_of(err) != pair_tag) { - Cyc_display(err, stderr); - } else { - // Error is list of form (type arg1 ... argn) - err = cdr(err); // skip type field - for (; (err != NULL); err = cdr(err)){ // output with no enclosing parens - Cyc_display(car(err), stderr); - fprintf(stderr, " "); - } + if ((err == NULL) || is_value_type(err) || type_of(err) != pair_tag) { + Cyc_display(err, stderr); + } else { + // Error is list of form (type arg1 ... argn) + err = cdr(err); // skip type field + for (; (err != NULL); err = cdr(err)) { // output with no enclosing parens + Cyc_display(car(err), stderr); + fprintf(stderr, " "); } + } - fprintf(stderr, "\nCall history:\n"); - Cyc_st_print(data, stderr); - fprintf(stderr, "\n"); - //raise(SIGINT); // break into debugger, unix only - exit(1); - return NULL; + fprintf(stderr, "\nCall history:\n"); + Cyc_st_print(data, stderr); + fprintf(stderr, "\n"); + //raise(SIGINT); // break into debugger, unix only + exit(1); + return NULL; } -object Cyc_current_exception_handler(void *data) { - gc_thread_data *thd = (gc_thread_data *)data; +object Cyc_current_exception_handler(void *data) +{ + gc_thread_data *thd = (gc_thread_data *) data; if (thd->exception_handler_stack == NULL) { return primitive_Cyc_91default_91exception_91handler; } else { @@ -406,111 +430,130 @@ object Cyc_current_exception_handler(void *data) { } /* Raise an exception from the runtime code */ -void Cyc_rt_raise(void *data, object err) { - make_pair(c2, err, NULL); - make_pair(c1, boolean_f, &c2); - make_pair(c0, &c1, NULL); - apply(data, NULL, Cyc_current_exception_handler(data), &c0); - // Should never get here - fprintf(stderr, "Internal error in Cyc_rt_raise\n"); - exit(1); +void Cyc_rt_raise(void *data, object err) +{ + make_pair(c2, err, NULL); + make_pair(c1, boolean_f, &c2); + make_pair(c0, &c1, NULL); + apply(data, NULL, Cyc_current_exception_handler(data), &c0); + // Should never get here + fprintf(stderr, "Internal error in Cyc_rt_raise\n"); + exit(1); } -void Cyc_rt_raise2(void *data, const char *msg, object err) { - make_string(s, msg); - make_pair(c3, err, NULL); - make_pair(c2, &s, &c3); - make_pair(c1, boolean_f, &c2); - make_pair(c0, &c1, NULL); - apply(data, NULL, Cyc_current_exception_handler(data), &c0); - // Should never get here - fprintf(stderr, "Internal error in Cyc_rt_raise2\n"); - exit(1); + +void Cyc_rt_raise2(void *data, const char *msg, object err) +{ + make_string(s, msg); + make_pair(c3, err, NULL); + make_pair(c2, &s, &c3); + make_pair(c1, boolean_f, &c2); + make_pair(c0, &c1, NULL); + apply(data, NULL, Cyc_current_exception_handler(data), &c0); + // Should never get here + fprintf(stderr, "Internal error in Cyc_rt_raise2\n"); + exit(1); } -void Cyc_rt_raise_msg(void *data, const char *err) { - make_string(s, err); - Cyc_rt_raise(data, &s); + +void Cyc_rt_raise_msg(void *data, const char *err) +{ + make_string(s, err); + Cyc_rt_raise(data, &s); } + /* END exception handler */ -int equal(x, y) object x, y; +int equal(x, y) +object x, y; { - if (x == NULL) return (y == NULL); - if (y == NULL) return (x == NULL); - if (obj_is_char(x)) return obj_is_char(y) && x == y; - if (obj_is_int(x)) return (obj_is_int(y) && x == y) || - (is_object_type(y) && - type_of(y) == integer_tag && - integer_value(y) == obj_obj2int(x)); - switch(type_of(x)) { - case integer_tag: - return (obj_is_int(y) && obj_obj2int(y) == integer_value(x)) || - (is_object_type(y) && - type_of(y) == integer_tag && - ((integer_type *) x)->value == ((integer_type *) y)->value); - case double_tag: - return (is_object_type(y) && - type_of(y) == double_tag && - ((double_type *) x)->value == ((double_type *) y)->value); - case string_tag: - return (is_object_type(y) && - type_of(y) == string_tag && - strcmp(((string_type *) x)->str, - ((string_type *) y)->str) == 0); - case vector_tag: - if (is_object_type(y) && - type_of(y) == vector_tag && - ((vector)x)->num_elements == ((vector)y)->num_elements) { - int i; - for (i = 0; i < ((vector)x)->num_elements; i++) { - if (equalp(((vector)x)->elements[i], ((vector)y)->elements[i]) == boolean_f) - return 0; - } - return 1; + if (x == NULL) + return (y == NULL); + if (y == NULL) + return (x == NULL); + if (obj_is_char(x)) + return obj_is_char(y) && x == y; + if (obj_is_int(x)) + return (obj_is_int(y) && x == y) || + (is_object_type(y) && + type_of(y) == integer_tag && integer_value(y) == obj_obj2int(x)); + switch (type_of(x)) { + case integer_tag: + return (obj_is_int(y) && obj_obj2int(y) == integer_value(x)) || + (is_object_type(y) && + type_of(y) == integer_tag && + ((integer_type *) x)->value == ((integer_type *) y)->value); + case double_tag: + return (is_object_type(y) && + type_of(y) == double_tag && + ((double_type *) x)->value == ((double_type *) y)->value); + case string_tag: + return (is_object_type(y) && + type_of(y) == string_tag && + strcmp(((string_type *) x)->str, ((string_type *) y)->str) == 0); + case vector_tag: + if (is_object_type(y) && + type_of(y) == vector_tag && + ((vector) x)->num_elements == ((vector) y)->num_elements) { + int i; + for (i = 0; i < ((vector) x)->num_elements; i++) { + if (equalp(((vector) x)->elements[i], ((vector) y)->elements[i]) == + boolean_f) + return 0; } - return 0; - default: - return x == y; + return 1; } + return 0; + default: + return x == y; + } } -object Cyc_get_global_variables(){ - return Cyc_global_variables; +object Cyc_get_global_variables() +{ + return Cyc_global_variables; } -object Cyc_get_cvar(object var) { - if (is_object_type(var) && type_of(var) == cvar_tag) { - return *(((cvar_type *)var)->pvar); - } - return var; +object Cyc_get_cvar(object var) +{ + if (is_object_type(var) && type_of(var) == cvar_tag) { + return *(((cvar_type *) var)->pvar); + } + return var; } -object Cyc_set_cvar(object var, object value) { - if (is_object_type(var) && type_of(var) == cvar_tag) { - *(((cvar_type *)var)->pvar) = value; - } - return var;} +object Cyc_set_cvar(object var, object value) +{ + if (is_object_type(var) && type_of(var) == cvar_tag) { + *(((cvar_type *) var)->pvar) = value; + } + return var; +} -object Cyc_has_cycle(object lst) { - object slow_lst, fast_lst; - if ((lst == NULL) || is_value_type(lst) || - (is_object_type(lst) && type_of(lst) != pair_tag)) { - return (boolean_f); - } - slow_lst = lst; - fast_lst = cdr(lst); - while(1) { - if ((fast_lst == NULL)) return boolean_f; - if (Cyc_is_pair(fast_lst) == boolean_f) return boolean_f; - if ((cdr(fast_lst)) == NULL) return boolean_f; - if (Cyc_is_pair(cdr(fast_lst)) == boolean_f) return boolean_f; - if (is_object_type(car(slow_lst)) && - boolean_f == Cyc_is_boolean(car(slow_lst)) && // Avoid expected dupes - //boolean_f == Cyc_is_symbol(car(slow_lst)) && // - (car(slow_lst) == car(fast_lst))) return boolean_t; +object Cyc_has_cycle(object lst) +{ + object slow_lst, fast_lst; + if ((lst == NULL) || is_value_type(lst) || + (is_object_type(lst) && type_of(lst) != pair_tag)) { + return (boolean_f); + } + slow_lst = lst; + fast_lst = cdr(lst); + while (1) { + if ((fast_lst == NULL)) + return boolean_f; + if (Cyc_is_pair(fast_lst) == boolean_f) + return boolean_f; + if ((cdr(fast_lst)) == NULL) + return boolean_f; + if (Cyc_is_pair(cdr(fast_lst)) == boolean_f) + return boolean_f; + if (is_object_type(car(slow_lst)) && boolean_f == Cyc_is_boolean(car(slow_lst)) && // Avoid expected dupes + //boolean_f == Cyc_is_symbol(car(slow_lst)) && // + (car(slow_lst) == car(fast_lst))) + return boolean_t; - slow_lst = cdr(slow_lst); - fast_lst = cddr(fast_lst); - } + slow_lst = cdr(slow_lst); + fast_lst = cddr(fast_lst); + } } // TODO: need to change I/O functions (including display/write below) @@ -523,7 +566,9 @@ object Cyc_has_cycle(object lst) { // to the value returned by (current-output-port). It is an // error to attempt an output operation on a closed port // -object dispatch_display_va(void *data, int argc, object clo, object cont, object x, ...) { +object dispatch_display_va(void *data, int argc, object clo, object cont, + object x, ...) +{ object result; va_list ap; va_start(ap, x); @@ -532,7 +577,8 @@ object dispatch_display_va(void *data, int argc, object clo, object cont, object return_closcall1(data, cont, result); } -object Cyc_display_va(int argc, object x, ...) { +object Cyc_display_va(int argc, object x, ...) +{ object result; va_list ap; va_start(ap, x); @@ -541,125 +587,141 @@ object Cyc_display_va(int argc, object x, ...) { return result; } -object Cyc_display_va_list(int argc, object x, va_list ap) { - FILE *fp = stdout; // TODO: just a placeholder, should use current-output-port +object Cyc_display_va_list(int argc, object x, va_list ap) +{ + FILE *fp = stdout; // TODO: just a placeholder, should use current-output-port if (argc > 1) { object tmp; tmp = va_arg(ap, object); - fp = ((port_type *)tmp)->fp; + fp = ((port_type *) tmp)->fp; } - return Cyc_display(x, fp);} + return Cyc_display(x, fp); +} -object Cyc_display(object x, FILE *port) -{object tmp = NULL; - object has_cycle = boolean_f; - int i = 0; - if (x == NULL) {fprintf(port, "()"); return quote_void;} - if (obj_is_char(x)) {fprintf(port, "%c", obj_obj2char(x)); return quote_void;} - if (obj_is_int(x)) { fprintf(port, "%ld", obj_obj2int(x)); return quote_void; } - switch (type_of(x)) - {case macro_tag: - fprintf(port, "",(void *)((closure) x)->fn); - break; - case closure0_tag: - case closure1_tag: - case closureN_tag: - fprintf(port, "",(void *)((closure) x)->fn); - break; - case eof_tag: - fprintf(port, ""); - break; - case port_tag: - fprintf(port, "", ((port_type *)x)->fp); - break; - case primitive_tag: - fprintf(port, "", prim_name(x)); - break; - case cvar_tag: - Cyc_display(Cyc_get_cvar(x), port); - break; - case c_opaque_tag: - fprintf(port, "", opaque_ptr(x)); - break; - case mutex_tag: - fprintf(port, "", x); - break; - case cond_var_tag: - fprintf(port, "", x); - break; - case boolean_tag: - fprintf(port, "#%s",((boolean_type *) x)->pname); - break; - case symbol_tag: - fprintf(port, "%s",((symbol_type *) x)->pname); - break; - case integer_tag: - fprintf(port, "%d", ((integer_type *) x)->value); - break; - case double_tag: - fprintf(port, "%.16g", ((double_type *) x)->value); - break; - case string_tag: - fprintf(port, "%s", ((string_type *) x)->str); - break; - case vector_tag: - fprintf(port, "#("); - for (i = 0; i < ((vector) x)->num_elements; i++) { - if (i > 0) { - fprintf(port, " "); - } - Cyc_display(((vector)x)->elements[i], port); +object Cyc_display(object x, FILE * port) +{ + object tmp = NULL; + object has_cycle = boolean_f; + int i = 0; + if (x == NULL) { + fprintf(port, "()"); + return quote_void; + } + if (obj_is_char(x)) { + fprintf(port, "%c", obj_obj2char(x)); + return quote_void; + } + if (obj_is_int(x)) { + fprintf(port, "%ld", obj_obj2int(x)); + return quote_void; + } + switch (type_of(x)) { + case macro_tag: + fprintf(port, "", (void *)((closure) x)->fn); + break; + case closure0_tag: + case closure1_tag: + case closureN_tag: + fprintf(port, "", (void *)((closure) x)->fn); + break; + case eof_tag: + fprintf(port, ""); + break; + case port_tag: + fprintf(port, "", ((port_type *) x)->fp); + break; + case primitive_tag: + fprintf(port, "", prim_name(x)); + break; + case cvar_tag: + Cyc_display(Cyc_get_cvar(x), port); + break; + case c_opaque_tag: + fprintf(port, "", opaque_ptr(x)); + break; + case mutex_tag: + fprintf(port, "", x); + break; + case cond_var_tag: + fprintf(port, "", x); + break; + case boolean_tag: + fprintf(port, "#%s", ((boolean_type *) x)->pname); + break; + case symbol_tag: + fprintf(port, "%s", ((symbol_type *) x)->pname); + break; + case integer_tag: + fprintf(port, "%d", ((integer_type *) x)->value); + break; + case double_tag: + fprintf(port, "%.16g", ((double_type *) x)->value); + break; + case string_tag: + fprintf(port, "%s", ((string_type *) x)->str); + break; + case vector_tag: + fprintf(port, "#("); + for (i = 0; i < ((vector) x)->num_elements; i++) { + if (i > 0) { + fprintf(port, " "); } - fprintf(port, ")"); - break; - case bytevector_tag: - fprintf(port, "#u8("); - for (i = 0; i < ((bytevector) x)->len; i++) { - if (i > 0) { - fprintf(port, " "); - } - fprintf(port, "%u", (unsigned char)(((bytevector)x)->data[i])); + Cyc_display(((vector) x)->elements[i], port); + } + fprintf(port, ")"); + break; + case bytevector_tag: + fprintf(port, "#u8("); + for (i = 0; i < ((bytevector) x)->len; i++) { + if (i > 0) { + fprintf(port, " "); } - fprintf(port, ")"); - break; - case pair_tag: - has_cycle = Cyc_has_cycle(x); - fprintf(port, "("); - Cyc_display(car(x), port); + fprintf(port, "%u", (unsigned char)(((bytevector) x)->data[i])); + } + fprintf(port, ")"); + break; + case pair_tag: + has_cycle = Cyc_has_cycle(x); + fprintf(port, "("); + Cyc_display(car(x), port); - // Experimenting with displaying lambda defs in REPL - // not good enough but this is a start. would probably need - // the same code in write() - if (Cyc_is_symbol(car(x)) == boolean_t && - strncmp(((symbol)car(x))->pname, "procedure", 10) == 0) { - fprintf(port, " "); - Cyc_display(cadr(x), port); - fprintf(port, " ...)"); /* skip body and env for now */ - break; - } + // Experimenting with displaying lambda defs in REPL + // not good enough but this is a start. would probably need + // the same code in write() + if (Cyc_is_symbol(car(x)) == boolean_t && + strncmp(((symbol) car(x))->pname, "procedure", 10) == 0) { + fprintf(port, " "); + Cyc_display(cadr(x), port); + fprintf(port, " ...)"); /* skip body and env for now */ + break; + } - for (tmp = cdr(x); tmp && ((closure) tmp)->tag == pair_tag; tmp = cdr(tmp)) { - if (has_cycle == boolean_t) { - if (i++ > 20) break; /* arbitrary number, for now */ - } - fprintf(port, " "); - Cyc_display(car(tmp), port); - } + for (tmp = cdr(x); tmp && ((closure) tmp)->tag == pair_tag; tmp = cdr(tmp)) { if (has_cycle == boolean_t) { - fprintf(port, " ..."); - } else if (tmp) { - fprintf(port, " . "); - Cyc_display(tmp, port); + if (i++ > 20) + break; /* arbitrary number, for now */ } - fprintf(port, ")"); - break; - default: - fprintf(port, "Cyc_display: bad tag x=%d\n", ((closure)x)->tag); - exit(1); - } - return quote_void;} + fprintf(port, " "); + Cyc_display(car(tmp), port); + } + if (has_cycle == boolean_t) { + fprintf(port, " ..."); + } else if (tmp) { + fprintf(port, " . "); + Cyc_display(tmp, port); + } + fprintf(port, ")"); + break; + default: + fprintf(port, "Cyc_display: bad tag x=%d\n", ((closure) x)->tag); + exit(1); + } + return quote_void; +} -object dispatch_write_va(void *data, int argc, object clo, object cont, object x, ...) { +object dispatch_write_va(void *data, int argc, object clo, object cont, + object x, ...) +{ object result; va_list ap; va_start(ap, x); @@ -668,7 +730,8 @@ object dispatch_write_va(void *data, int argc, object clo, object cont, object x return_closcall1(data, cont, result); } -object Cyc_write_va(int argc, object x, ...) { +object Cyc_write_va(int argc, object x, ...) +{ object result; va_list ap; va_start(ap, x); @@ -677,72 +740,89 @@ object Cyc_write_va(int argc, object x, ...) { return result; } -object Cyc_write_va_list(int argc, object x, va_list ap) { - FILE *fp = stdout; // OK since this is the internal version of write - // Longer-term maybe we get rid of varargs for this one +object Cyc_write_va_list(int argc, object x, va_list ap) +{ + FILE *fp = stdout; // OK since this is the internal version of write + // Longer-term maybe we get rid of varargs for this one if (argc > 1) { object tmp; tmp = va_arg(ap, object); - fp = ((port_type *)tmp)->fp; + fp = ((port_type *) tmp)->fp; } - return Cyc_write(x, fp);} + return Cyc_write(x, fp); +} -static object _Cyc_write(object x, FILE *port) -{object tmp = NULL; - object has_cycle = boolean_f; - int i = 0; - if (x == NULL) {fprintf(port, "()"); return quote_void;} - if (obj_is_char(x)) {fprintf(port, "#\\%c", obj_obj2char(x)); return quote_void;} - if (obj_is_int(x)) {Cyc_display(x, port); return quote_void;} - switch (type_of(x)) - {case string_tag: - fprintf(port, "\"%s\"", ((string_type *) x)->str); - break; +static object _Cyc_write(object x, FILE * port) +{ + object tmp = NULL; + object has_cycle = boolean_f; + int i = 0; + if (x == NULL) { + fprintf(port, "()"); + return quote_void; + } + if (obj_is_char(x)) { + fprintf(port, "#\\%c", obj_obj2char(x)); + return quote_void; + } + if (obj_is_int(x)) { + Cyc_display(x, port); + return quote_void; + } + switch (type_of(x)) { + case string_tag: + fprintf(port, "\"%s\"", ((string_type *) x)->str); + break; // TODO: what about a list? contents should be displayed per (write) - case pair_tag: - has_cycle = Cyc_has_cycle(x); - fprintf(port, "("); - _Cyc_write(car(x), port); + case pair_tag: + has_cycle = Cyc_has_cycle(x); + fprintf(port, "("); + _Cyc_write(car(x), port); - // Experimenting with displaying lambda defs in REPL - // not good enough but this is a start. would probably need - // the same code in write() - if (Cyc_is_symbol(car(x)) == boolean_t && - strncmp(((symbol)car(x))->pname, "procedure", 10) == 0) { - fprintf(port, " "); - _Cyc_write(cadr(x), port); - fprintf(port, " ...)"); /* skip body and env for now */ - break; - } - - for (tmp = cdr(x); tmp && ((closure) tmp)->tag == pair_tag; tmp = cdr(tmp)) { - if (has_cycle == boolean_t) { - if (i++ > 20) break; /* arbitrary number, for now */ - } - fprintf(port, " "); - _Cyc_write(car(tmp), port); - } - if (has_cycle == boolean_t) { - fprintf(port, " ..."); - } else if (tmp) { - fprintf(port, " . "); - _Cyc_write(tmp, port); - } - fprintf(port, ")"); + // Experimenting with displaying lambda defs in REPL + // not good enough but this is a start. would probably need + // the same code in write() + if (Cyc_is_symbol(car(x)) == boolean_t && + strncmp(((symbol) car(x))->pname, "procedure", 10) == 0) { + fprintf(port, " "); + _Cyc_write(cadr(x), port); + fprintf(port, " ...)"); /* skip body and env for now */ break; - default: - Cyc_display(x, port);} - return quote_void;} + } -object Cyc_write(object x, FILE *port) -{object y = _Cyc_write(x, port); - //fprintf(port, "\n"); - return y;} + for (tmp = cdr(x); tmp && ((closure) tmp)->tag == pair_tag; tmp = cdr(tmp)) { + if (has_cycle == boolean_t) { + if (i++ > 20) + break; /* arbitrary number, for now */ + } + fprintf(port, " "); + _Cyc_write(car(tmp), port); + } + if (has_cycle == boolean_t) { + fprintf(port, " ..."); + } else if (tmp) { + fprintf(port, " . "); + _Cyc_write(tmp, port); + } + fprintf(port, ")"); + break; + default: + Cyc_display(x, port); + } + return quote_void; +} -object Cyc_write_char(void *data, object c, object port) +object Cyc_write(object x, FILE * port) +{ + object y = _Cyc_write(x, port); + //fprintf(port, "\n"); + return y; +} + +object Cyc_write_char(void *data, object c, object port) { if (obj_is_char(c)) { - fprintf(((port_type *)port)->fp, "%c", obj_obj2char(c)); + fprintf(((port_type *) port)->fp, "%c", obj_obj2char(c)); } else { Cyc_rt_raise2(data, "Argument is not a character", c); } @@ -750,62 +830,72 @@ object Cyc_write_char(void *data, object c, object port) } // TODO: should not be a predicate, may end up moving these to Scheme code -object memberp(void *data, object x, list l) +object memberp(void *data, object x, list l) { Cyc_check_pair_or_null(data, l); for (; l != NULL; l = cdr(l)) { - if (boolean_f != equalp(x,car(l))) - return boolean_t; + if (boolean_f != equalp(x, car(l))) + return boolean_t; } return boolean_f; } -object memqp(void *data, object x, list l) +object memqp(void *data, object x, list l) { Cyc_check_pair_or_null(data, l); - for (; l != NULL; l = cdr(l)){ - if ((x == car(l))) - return boolean_t; + for (; l != NULL; l = cdr(l)) { + if ((x == car(l))) + return boolean_t; } return boolean_f; } object equalp(object x, object y) { - for (; ; x = cdr(x), y = cdr(y)) { - if (equal(x,y)) return boolean_t; + for (;; x = cdr(x), y = cdr(y)) { + if (equal(x, y)) + return boolean_t; if (is_value_type(x) || is_value_type(y) || (x == NULL) || (y == NULL) || - type_of(x)!=pair_tag || type_of(y)!=pair_tag) return boolean_f; - if (boolean_f == equalp(car(x),car(y))) return boolean_f; + type_of(x) != pair_tag || type_of(y) != pair_tag) + return boolean_f; + if (boolean_f == equalp(car(x), car(y))) + return boolean_f; } } list assq(void *data, object x, list l) { - if ((l == NULL) || is_value_type(l) || type_of(l) != pair_tag) return boolean_f; + if ((l == NULL) || is_value_type(l) || type_of(l) != pair_tag) + return boolean_f; for (; (l != NULL); l = cdr(l)) { - list la = car(l); - Cyc_check_pair(data, la); - if ((x == car(la))) return la; + list la = car(l); + Cyc_check_pair(data, la); + if ((x == car(la))) + return la; } return boolean_f; } list assoc(void *data, object x, list l) { - if ((l == NULL) || is_value_type(l) || type_of(l) != pair_tag) return boolean_f; - for (; (l != NULL); l = cdr(l)){ - list la = car(l); - Cyc_check_pair(data, la); - if (boolean_f != equalp(x,car(la))) return la; + if ((l == NULL) || is_value_type(l) || type_of(l) != pair_tag) + return boolean_f; + for (; (l != NULL); l = cdr(l)) { + list la = car(l); + Cyc_check_pair(data, la); + if (boolean_f != equalp(x, car(la))) + return la; } return boolean_f; } -object Cyc_num_cmp_va_list(void *data, int argc, int (fn_op(void *, object, object)), object n, va_list ns) { +object Cyc_num_cmp_va_list(void *data, int argc, + int (fn_op(void *, object, object)), object n, + va_list ns) +{ int i; - object next; + object next; if (argc < 2) { Cyc_rt_raise_msg(data, "Not enough arguments for boolean operator\n"); @@ -872,315 +962,357 @@ void FUNC_APPLY(void *data, int argc, object clo, object cont, object n, ...) { return_closcall1(data, cont, result); \ } -declare_num_cmp(Cyc_num_eq, Cyc_num_eq_op, dispatch_num_eq, ==); -declare_num_cmp(Cyc_num_gt, Cyc_num_gt_op, dispatch_num_gt, >); -declare_num_cmp(Cyc_num_lt, Cyc_num_lt_op, dispatch_num_lt, <); +declare_num_cmp(Cyc_num_eq, Cyc_num_eq_op, dispatch_num_eq, ==); +declare_num_cmp(Cyc_num_gt, Cyc_num_gt_op, dispatch_num_gt, >); +declare_num_cmp(Cyc_num_lt, Cyc_num_lt_op, dispatch_num_lt, <); declare_num_cmp(Cyc_num_gte, Cyc_num_gte_op, dispatch_num_gte, >=); declare_num_cmp(Cyc_num_lte, Cyc_num_lte_op, dispatch_num_lte, <=); -object Cyc_is_boolean(object o){ - if ((o != NULL) && - !is_value_type(o) && - ((list)o)->tag == boolean_tag && - ((boolean_f == o) || (boolean_t == o))) - return boolean_t; - return boolean_f;} - -object Cyc_is_pair(object o){ - if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == pair_tag) - return boolean_t; - return boolean_f;} - -object Cyc_is_null(object o){ - if (o == NULL) - return boolean_t; - return boolean_f;} - -object Cyc_is_number(object o){ - if ((o != NULL) && (obj_is_int(o) || - (!is_value_type(o) && (type_of(o) == integer_tag || type_of(o) == double_tag)))) - return boolean_t; - return boolean_f;} - -object Cyc_is_real(object o){ - return Cyc_is_number(o);} - -object Cyc_is_integer(object o){ - if ((o != NULL) && (obj_is_int(o) || - (!is_value_type(o) && type_of(o) == integer_tag))) - return boolean_t; - return boolean_f;} - -object Cyc_is_symbol(object o){ - if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == symbol_tag) - return boolean_t; - return boolean_f;} - -object Cyc_is_vector(object o){ - if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == vector_tag) - return boolean_t; - return boolean_f;} - -object Cyc_is_bytevector(object o){ - if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == bytevector_tag) - return boolean_t; - return boolean_f;} - -object Cyc_is_port(object o){ - if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == port_tag) - return boolean_t; - return boolean_f;} - -object Cyc_is_mutex(object o){ - if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == mutex_tag) - return boolean_t; - return boolean_f;} - -object Cyc_is_cond_var(object o){ - if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == cond_var_tag) - return boolean_t; - return boolean_f;} - -object Cyc_is_string(object o){ - if ((o != NULL) && !is_value_type(o) && ((list)o)->tag == string_tag) - return boolean_t; - return boolean_f;} - -object Cyc_is_char(object o){ - if (obj_is_char(o)) - return boolean_t; - return boolean_f;} - -object Cyc_is_procedure(void *data, object o) { - int tag; - if ((o != NULL) && !is_value_type(o)) { - tag = type_of(o); - if (tag == closure0_tag || - tag == closure1_tag || - tag == closureN_tag || - tag == primitive_tag) { - return boolean_t; - } else if (tag == pair_tag) { - integer_type l = Cyc_length_as_object(data, o); - if (l.value > 0 && Cyc_is_symbol(car(o)) == boolean_t) { - if (strncmp(((symbol)car(o))->pname, "primitive", 10) == 0 || - strncmp(((symbol)car(o))->pname, "procedure", 10) == 0 ) { - return boolean_t; - } - } - } - } - return boolean_f; +object Cyc_is_boolean(object o) +{ + if ((o != NULL) && + !is_value_type(o) && + ((list) o)->tag == boolean_tag && ((boolean_f == o) || (boolean_t == o))) + return boolean_t; + return boolean_f; } -object Cyc_is_macro(object o) { - int tag; - if ((o != NULL) && !is_value_type(o)) { - tag = type_of(o); - if (tag == macro_tag) { +object Cyc_is_pair(object o) +{ + if ((o != NULL) && !is_value_type(o) && ((list) o)->tag == pair_tag) + return boolean_t; + return boolean_f; +} + +object Cyc_is_null(object o) +{ + if (o == NULL) + return boolean_t; + return boolean_f; +} + +object Cyc_is_number(object o) +{ + if ((o != NULL) && (obj_is_int(o) || (!is_value_type(o) + && (type_of(o) == integer_tag + || type_of(o) == double_tag)))) + return boolean_t; + return boolean_f; +} + +object Cyc_is_real(object o) +{ + return Cyc_is_number(o); +} + +object Cyc_is_integer(object o) +{ + if ((o != NULL) && (obj_is_int(o) || + (!is_value_type(o) && type_of(o) == integer_tag))) + return boolean_t; + return boolean_f; +} + +object Cyc_is_symbol(object o) +{ + if ((o != NULL) && !is_value_type(o) && ((list) o)->tag == symbol_tag) + return boolean_t; + return boolean_f; +} + +object Cyc_is_vector(object o) +{ + if ((o != NULL) && !is_value_type(o) && ((list) o)->tag == vector_tag) + return boolean_t; + return boolean_f; +} + +object Cyc_is_bytevector(object o) +{ + if ((o != NULL) && !is_value_type(o) && ((list) o)->tag == bytevector_tag) + return boolean_t; + return boolean_f; +} + +object Cyc_is_port(object o) +{ + if ((o != NULL) && !is_value_type(o) && ((list) o)->tag == port_tag) + return boolean_t; + return boolean_f; +} + +object Cyc_is_mutex(object o) +{ + if ((o != NULL) && !is_value_type(o) && ((list) o)->tag == mutex_tag) + return boolean_t; + return boolean_f; +} + +object Cyc_is_cond_var(object o) +{ + if ((o != NULL) && !is_value_type(o) && ((list) o)->tag == cond_var_tag) + return boolean_t; + return boolean_f; +} + +object Cyc_is_string(object o) +{ + if ((o != NULL) && !is_value_type(o) && ((list) o)->tag == string_tag) + return boolean_t; + return boolean_f; +} + +object Cyc_is_char(object o) +{ + if (obj_is_char(o)) + return boolean_t; + return boolean_f; +} + +object Cyc_is_procedure(void *data, object o) +{ + int tag; + if ((o != NULL) && !is_value_type(o)) { + tag = type_of(o); + if (tag == closure0_tag || + tag == closure1_tag || tag == closureN_tag || tag == primitive_tag) { + return boolean_t; + } else if (tag == pair_tag) { + integer_type l = Cyc_length_as_object(data, o); + if (l.value > 0 && Cyc_is_symbol(car(o)) == boolean_t) { + if (strncmp(((symbol) car(o))->pname, "primitive", 10) == 0 || + strncmp(((symbol) car(o))->pname, "procedure", 10) == 0) { return boolean_t; } + } } - return boolean_f; + } + return boolean_f; } -object Cyc_is_eof_object(object o) { - if ((o != NULL) && !is_value_type(o) && type_of(o) == eof_tag) - return boolean_t; - return boolean_f;} - -object Cyc_is_cvar(object o) { - if ((o != NULL) && !is_value_type(o) && type_of(o) == cvar_tag) - return boolean_t; - return boolean_f;} - -object Cyc_eq(object x, object y) { - if (x == y) - return boolean_t; - return boolean_f; +object Cyc_is_macro(object o) +{ + int tag; + if ((o != NULL) && !is_value_type(o)) { + tag = type_of(o); + if (tag == macro_tag) { + return boolean_t; + } + } + return boolean_f; } -object Cyc_set_car(void *data, object l, object val) { - if (Cyc_is_pair(l) == boolean_f) Cyc_invalid_type_error(data, pair_tag, l); - gc_mut_update((gc_thread_data *)data, car(l), val); - car(l) = val; - add_mutation(data, l, -1, val); - return l; +object Cyc_is_eof_object(object o) +{ + if ((o != NULL) && !is_value_type(o) && type_of(o) == eof_tag) + return boolean_t; + return boolean_f; } -object Cyc_set_cdr(void *data, object l, object val) { - if (Cyc_is_pair(l) == boolean_f) Cyc_invalid_type_error(data, pair_tag, l); - gc_mut_update((gc_thread_data *)data, cdr(l), val); - cdr(l) = val; - add_mutation(data, l, -1, val); - return l; +object Cyc_is_cvar(object o) +{ + if ((o != NULL) && !is_value_type(o) && type_of(o) == cvar_tag) + return boolean_t; + return boolean_f; } -object Cyc_vector_set(void *data, object v, object k, object obj) { +object Cyc_eq(object x, object y) +{ + if (x == y) + return boolean_t; + return boolean_f; +} + +object Cyc_set_car(void *data, object l, object val) +{ + if (Cyc_is_pair(l) == boolean_f) + Cyc_invalid_type_error(data, pair_tag, l); + gc_mut_update((gc_thread_data *) data, car(l), val); + car(l) = val; + add_mutation(data, l, -1, val); + return l; +} + +object Cyc_set_cdr(void *data, object l, object val) +{ + if (Cyc_is_pair(l) == boolean_f) + Cyc_invalid_type_error(data, pair_tag, l); + gc_mut_update((gc_thread_data *) data, cdr(l), val); + cdr(l) = val; + add_mutation(data, l, -1, val); + return l; +} + +object Cyc_vector_set(void *data, object v, object k, object obj) +{ int idx; Cyc_check_vec(data, v); Cyc_check_num(data, k); idx = unbox_number(k); - if (idx < 0 || idx >= ((vector)v)->num_elements) { + if (idx < 0 || idx >= ((vector) v)->num_elements) { Cyc_rt_raise2(data, "vector-set! - invalid index", k); } - gc_mut_update((gc_thread_data *)data, - ((vector)v)->elements[idx], - obj); + gc_mut_update((gc_thread_data *) data, ((vector) v)->elements[idx], obj); - ((vector)v)->elements[idx] = obj; + ((vector) v)->elements[idx] = obj; add_mutation(data, v, idx, obj); return v; } -object Cyc_vector_ref(void *data, object v, object k) { +object Cyc_vector_ref(void *data, object v, object k) +{ int idx; Cyc_check_vec(data, v); Cyc_check_num(data, k); idx = unbox_number(k); - if (idx < 0 || idx >= ((vector)v)->num_elements) { + if (idx < 0 || idx >= ((vector) v)->num_elements) { Cyc_rt_raise2(data, "vector-ref - invalid index", obj_int2obj(idx)); } - return ((vector)v)->elements[idx]; + return ((vector) v)->elements[idx]; } -integer_type Cyc_length_as_object(void *data, object l){ - make_int(len, 0); - while((l != NULL)){ - if (is_value_type(l) || ((list)l)->tag != pair_tag){ - Cyc_rt_raise_msg(data, "length - invalid parameter, expected list\n"); - } - l = cdr(l); - len.value++; +integer_type Cyc_length_as_object(void *data, object l) +{ + make_int(len, 0); + while ((l != NULL)) { + if (is_value_type(l) || ((list) l)->tag != pair_tag) { + Cyc_rt_raise_msg(data, "length - invalid parameter, expected list\n"); } - return len; + l = cdr(l); + len.value++; + } + return len; } -object Cyc_vector_length(void *data, object v) { - if ((v != NULL) && !is_value_type(v) && ((list)v)->tag == vector_tag) { - return obj_int2obj(((vector)v)->num_elements); - } - Cyc_rt_raise_msg(data, "vector-length - invalid parameter, expected vector\n"); } +object Cyc_vector_length(void *data, object v) +{ + if ((v != NULL) && !is_value_type(v) && ((list) v)->tag == vector_tag) { + return obj_int2obj(((vector) v)->num_elements); + } + Cyc_rt_raise_msg(data, + "vector-length - invalid parameter, expected vector\n"); +} - -object Cyc_length(void *data, object l){ - int len = 0; - while((l != NULL)){ - if (is_value_type(l) || ((list)l)->tag != pair_tag){ - Cyc_rt_raise_msg(data, "length - invalid parameter, expected list\n"); - } - l = cdr(l); - len++; +object Cyc_length(void *data, object l) +{ + int len = 0; + while ((l != NULL)) { + if (is_value_type(l) || ((list) l)->tag != pair_tag) { + Cyc_rt_raise_msg(data, "length - invalid parameter, expected list\n"); } - return obj_int2obj(len); + l = cdr(l); + len++; + } + return obj_int2obj(len); } char *int_to_binary(char *b, int x) { - b[0] = '\0'; + b[0] = '\0'; - int z; - for (z = 65536; z > 0; z >>= 1) - { - strcat(b, ((x & z) == z) ? "1" : "0"); - } + int z; + for (z = 65536; z > 0; z >>= 1) { + strcat(b, ((x & z) == z) ? "1" : "0"); + } - return b; + return b; } -object Cyc_number2string2(void *data, object cont, int argc, object n, ...) { - object base = NULL; - int base_num = 10, val; - char buffer[1024]; - va_list ap; - va_start(ap, n); - if (argc > 1) { - base = va_arg(ap, object); - Cyc_check_num(data, base); - } - va_end(ap); - Cyc_check_num(data, n); - if (base) { - base_num = unbox_number(base); - } +object Cyc_number2string2(void *data, object cont, int argc, object n, ...) +{ + object base = NULL; + int base_num = 10, val; + char buffer[1024]; + va_list ap; + va_start(ap, n); + if (argc > 1) { + base = va_arg(ap, object); + Cyc_check_num(data, base); + } + va_end(ap); + Cyc_check_num(data, n); + if (base) { + base_num = unbox_number(base); + } - if (base_num == 2) { - val = obj_is_int(n) ? - obj_obj2int(n) : - type_of(n) == integer_tag ? - integer_value(n) : - ((int)double_value(n)); - int_to_binary(buffer, val); - } else if (base_num == 8) { - val = obj_is_int(n) ? - obj_obj2int(n) : - type_of(n) == integer_tag ? - integer_value(n) : - ((int)double_value(n)); - snprintf(buffer, 1024, "%o", val); - } else if (base_num == 16) { - val = obj_is_int(n) ? - obj_obj2int(n) : - type_of(n) == integer_tag ? - integer_value(n) : - ((int)double_value(n)); - snprintf(buffer, 1024, "%X", val); + if (base_num == 2) { + val = obj_is_int(n) ? + obj_obj2int(n) : + type_of(n) == integer_tag ? integer_value(n) : ((int)double_value(n)); + int_to_binary(buffer, val); + } else if (base_num == 8) { + val = obj_is_int(n) ? + obj_obj2int(n) : + type_of(n) == integer_tag ? integer_value(n) : ((int)double_value(n)); + snprintf(buffer, 1024, "%o", val); + } else if (base_num == 16) { + val = obj_is_int(n) ? + obj_obj2int(n) : + type_of(n) == integer_tag ? integer_value(n) : ((int)double_value(n)); + snprintf(buffer, 1024, "%X", val); + } else { + if (obj_is_int(n)) { + snprintf(buffer, 1024, "%ld", obj_obj2int(n)); + } else if (type_of(n) == integer_tag) { + snprintf(buffer, 1024, "%d", ((integer_type *) n)->value); + } else if (type_of(n) == double_tag) { + snprintf(buffer, 1024, "%.16g", ((double_type *) n)->value); } else { - if (obj_is_int(n)) { - snprintf(buffer, 1024, "%ld", obj_obj2int(n)); - }else if (type_of(n) == integer_tag) { - snprintf(buffer, 1024, "%d", ((integer_type *)n)->value); - } else if (type_of(n) == double_tag) { - snprintf(buffer, 1024, "%.16g", ((double_type *)n)->value); - } else { - Cyc_rt_raise2(data, "number->string - Unexpected object", n); - } + Cyc_rt_raise2(data, "number->string - Unexpected object", n); } - make_string(str, buffer); - return_closcall1(data, cont, &str); + } + make_string(str, buffer); + return_closcall1(data, cont, &str); } -object Cyc_symbol2string(void *data, object cont, object sym) { +object Cyc_symbol2string(void *data, object cont, object sym) +{ Cyc_check_sym(data, sym); - { const char *pname = symbol_pname(sym); + { + const char *pname = symbol_pname(sym); make_string(str, pname); - return_closcall1(data, cont, &str); }} + return_closcall1(data, cont, &str); +}} -object Cyc_string2symbol(void *data, object str) { - object sym; - Cyc_check_str(data, str); - sym = find_symbol_by_name(string_str(str)); - if (!sym) { - sym = add_symbol_by_name(string_str(str)); - } - return sym; +object Cyc_string2symbol(void *data, object str) +{ + object sym; + Cyc_check_str(data, str); + sym = find_symbol_by_name(string_str(str)); + if (!sym) { + sym = add_symbol_by_name(string_str(str)); + } + return sym; } -object Cyc_list2string(void *data, object cont, object lst){ - char *buf; - int i = 0; - object len; +object Cyc_list2string(void *data, object cont, object lst) +{ + char *buf; + int i = 0; + object len; - Cyc_check_pair_or_null(data, lst); - - len = Cyc_length(data, lst); // Inefficient, walks whole list - buf = alloca(sizeof(char) * (obj_obj2int(len) + 1)); - while((lst != NULL)){ - buf[i++] = obj_obj2char(car(lst)); - lst = cdr(lst); - } - buf[i] = '\0'; + Cyc_check_pair_or_null(data, lst); - //{ make_string_noalloc(str, buf, i); - { make_string(str, buf); - return_closcall1(data, cont, &str);} + len = Cyc_length(data, lst); // Inefficient, walks whole list + buf = alloca(sizeof(char) * (obj_obj2int(len) + 1)); + while ((lst != NULL)) { + buf[i++] = obj_obj2char(car(lst)); + lst = cdr(lst); + } + buf[i] = '\0'; + + //{ make_string_noalloc(str, buf, i); + { + make_string(str, buf); + return_closcall1(data, cont, &str); + } } -object Cyc_string2number2_(void *data, object cont, int argc, object str, ...) +object Cyc_string2number2_(void *data, object cont, int argc, object str, ...) { object base = NULL; int base_num, result; @@ -1197,10 +1329,10 @@ object Cyc_string2number2_(void *data, object cont, int argc, object str, ...) if (base_num == 2) { result = binstr2int(string_str(str)); return_closcall1(data, cont, obj_int2obj(result)); - }else if (base_num == 8) { + } else if (base_num == 8) { result = octstr2int(string_str(str)); return_closcall1(data, cont, obj_int2obj(result)); - }else if (base_num == 16) { + } else if (base_num == 16) { result = hexstr2int(string_str(str)); return_closcall1(data, cont, obj_int2obj(result)); } @@ -1208,29 +1340,28 @@ object Cyc_string2number2_(void *data, object cont, int argc, object str, ...) Cyc_string2number_(data, cont, str); } -object Cyc_string2number_(void *data, object cont, object str){ - int result; - double n; - Cyc_check_obj(data, string_tag, str); - Cyc_check_str(data, str); - if (type_of(str) == string_tag && - ((string_type *) str)->str){ - n = atof(((string_type *) str)->str); +object Cyc_string2number_(void *data, object cont, object str) +{ + int result; + double n; + Cyc_check_obj(data, string_tag, str); + Cyc_check_str(data, str); + if (type_of(str) == string_tag && ((string_type *) str)->str) { + n = atof(((string_type *) str)->str); - if (ceilf(n) == n) { - result = (int)n; - return_closcall1(data, cont, obj_int2obj(result)); - } - else { - make_double(result, n); - return_closcall1(data, cont, &result); - } + if (ceilf(n) == n) { + result = (int)n; + return_closcall1(data, cont, obj_int2obj(result)); } else { - // TODO: not good enough because we do pointer comparisons to #f - //result.boolean_t = boolean_f; + make_double(result, n); + return_closcall1(data, cont, &result); } + } else { + // TODO: not good enough because we do pointer comparisons to #f + //result.boolean_t = boolean_f; + } - Cyc_rt_raise2(data, "Expected string but received", str); + Cyc_rt_raise2(data, "Expected string but received", str); } int binstr2int(const char *str) @@ -1238,7 +1369,8 @@ int binstr2int(const char *str) int num = 0; while (*str) { num <<= 1; - if (*str++ == '1') num++; + if (*str++ == '1') + num++; } return num; } @@ -1258,9 +1390,9 @@ int hexstr2int(const char *str) int num = 0; while (*str) { num <<= 4; - if (*str >= 'A' && *str <= 'F'){ + if (*str >= 'A' && *str <= 'F') { num += (((*str) - 'A') + 10); - } else if (*str >= 'a' && *str <= 'f'){ + } else if (*str >= 'a' && *str <= 'f') { num += (((*str) - 'a') + 10); } else { num += ((*str) - '0'); @@ -1270,14 +1402,14 @@ int hexstr2int(const char *str) return num; } -object Cyc_string_cmp(void *data, object str1, object str2) { +object Cyc_string_cmp(void *data, object str1, object str2) +{ Cyc_check_str(data, str1); Cyc_check_str(data, str2); - return obj_int2obj( strcmp(((string_type *)str1)->str, - ((string_type *)str2)->str) ); + return obj_int2obj(strcmp(((string_type *) str1)->str, + ((string_type *) str2)->str)); } - #define Cyc_string_append_va_list(data, argc) { \ int i = 0, total_len = 1; \ int *len = alloca(sizeof(int) * argc); \ @@ -1307,24 +1439,30 @@ object Cyc_string_cmp(void *data, object str1, object str2) { return_closcall1(data, cont, &result); \ } -void dispatch_string_91append(void *data, int _argc, object clo, object cont, object str1, ...) { - va_list ap; - va_start(ap, str1); - Cyc_string_append_va_list(data, _argc - 1); +void dispatch_string_91append(void *data, int _argc, object clo, object cont, + object str1, ...) +{ + va_list ap; + va_start(ap, str1); + Cyc_string_append_va_list(data, _argc - 1); } -object Cyc_string_append(void *data, object cont, int _argc, object str1, ...) { - va_list ap; - va_start(ap, str1); - Cyc_string_append_va_list(data, _argc); +object Cyc_string_append(void *data, object cont, int _argc, object str1, ...) +{ + va_list ap; + va_start(ap, str1); + Cyc_string_append_va_list(data, _argc); } -object Cyc_string_length(void *data, object str) { +object Cyc_string_length(void *data, object str) +{ Cyc_check_obj(data, string_tag, str); Cyc_check_str(data, str); - return obj_int2obj(strlen(string_str(str))); } + return obj_int2obj(strlen(string_str(str))); +} -object Cyc_string_set(void *data, object str, object k, object chr) { +object Cyc_string_set(void *data, object str, object k, object chr) +{ char *raw; int idx, len; @@ -1344,7 +1482,8 @@ object Cyc_string_set(void *data, object str, object k, object chr) { return str; } -object Cyc_string_ref(void *data, object str, object k) { +object Cyc_string_ref(void *data, object str, object k) +{ const char *raw; int idx, len; @@ -1362,7 +1501,9 @@ object Cyc_string_ref(void *data, object str, object k) { return obj_char2obj(raw[idx]); } -object Cyc_substring(void *data, object cont, object str, object start, object end) { +object Cyc_substring(void *data, object cont, object str, object start, + object end) +{ const char *raw; int s, e, len; @@ -1379,7 +1520,9 @@ object Cyc_substring(void *data, object cont, object str, object start, object e Cyc_rt_raise2(data, "substring - start cannot be greater than end", start); } if (s > len) { - Cyc_rt_raise2(data, "substring - start cannot be greater than string length", start); + Cyc_rt_raise2(data, + "substring - start cannot be greater than string length", + start); } if (e > len) { e = len; @@ -1395,21 +1538,22 @@ object Cyc_substring(void *data, object cont, object str, object start, object e * Return directory where cyclone is installed. * This is configured via the makefile during a build. */ -object Cyc_installation_dir(void *data, object cont, object type) { +object Cyc_installation_dir(void *data, object cont, object type) +{ if (Cyc_is_symbol(type) == boolean_t && - strncmp(((symbol)type)->pname, "sld", 5) == 0) { + strncmp(((symbol) type)->pname, "sld", 5) == 0) { char buf[1024]; snprintf(buf, sizeof(buf), "%s", CYC_INSTALL_SLD); make_string(str, buf); return_closcall1(data, cont, &str); } else if (Cyc_is_symbol(type) == boolean_t && - strncmp(((symbol)type)->pname, "lib", 5) == 0) { + strncmp(((symbol) type)->pname, "lib", 5) == 0) { char buf[1024]; snprintf(buf, sizeof(buf), "%s", CYC_INSTALL_LIB); make_string(str, buf); return_closcall1(data, cont, &str); } else if (Cyc_is_symbol(type) == boolean_t && - strncmp(((symbol)type)->pname, "inc", 5) == 0) { + strncmp(((symbol) type)->pname, "inc", 5) == 0) { char buf[1024]; snprintf(buf, sizeof(buf), "%s", CYC_INSTALL_INC); make_string(str, buf); @@ -1429,26 +1573,27 @@ object Cyc_installation_dir(void *data, object cont, object type) { * * For now, runtime options are not removed. */ -object Cyc_command_line_arguments(void *data, object cont) { +object Cyc_command_line_arguments(void *data, object cont) +{ int i; object lis = NULL; - for (i = _cyc_argc; i > 1; i--) { // skip program name + for (i = _cyc_argc; i > 1; i--) { // skip program name object ps = alloca(sizeof(string_type)); object pl = alloca(sizeof(pair_type)); make_string(s, _cyc_argv[i - 1]); memcpy(ps, &s, sizeof(string_type)); - ((list)pl)->hdr.mark = gc_color_red; - ((list)pl)->hdr.grayed = 0; - ((list)pl)->tag = pair_tag; - ((list)pl)->pair_car = ps; - ((list)pl)->pair_cdr = lis; + ((list) pl)->hdr.mark = gc_color_red; + ((list) pl)->hdr.grayed = 0; + ((list) pl)->tag = pair_tag; + ((list) pl)->pair_car = ps; + ((list) pl)->pair_cdr = lis; lis = pl; } return_closcall1(data, cont, lis); } - -object Cyc_make_vector(void *data, object cont, int argc, object len, ...) { +object Cyc_make_vector(void *data, object cont, int argc, object len, ...) +{ object v = NULL; object fill = boolean_f; int i, ulen; @@ -1463,18 +1608,17 @@ object Cyc_make_vector(void *data, object cont, int argc, object len, ...) { // TODO: if vector is too big, would need to alloc directly on the heap // if (ulen < 10000) { - v = alloca(sizeof(vector_type)); - ((vector)v)->hdr.mark = gc_color_red; - ((vector)v)->hdr.grayed = 0; - ((vector)v)->tag = vector_tag; - ((vector)v)->num_elements = ulen; - ((vector)v)->elements = - (((vector)v)->num_elements > 0) ? - (object *)alloca(sizeof(object) * ((vector)v)->num_elements) : - NULL; - for (i = 0; i < ((vector)v)->num_elements; i++) { - ((vector)v)->elements[i] = fill; - } + v = alloca(sizeof(vector_type)); + ((vector) v)->hdr.mark = gc_color_red; + ((vector) v)->hdr.grayed = 0; + ((vector) v)->tag = vector_tag; + ((vector) v)->num_elements = ulen; + ((vector) v)->elements = + (((vector) v)->num_elements > 0) ? + (object *) alloca(sizeof(object) * ((vector) v)->num_elements) : NULL; + for (i = 0; i < ((vector) v)->num_elements; i++) { + ((vector) v)->elements[i] = fill; + } // } else { // // Experimenting with heap allocation if vector is too large // int heap_grown; @@ -1493,7 +1637,8 @@ object Cyc_make_vector(void *data, object cont, int argc, object len, ...) { return_closcall1(data, cont, v); } -object Cyc_make_bytevector(void *data, object cont, int argc, object len, ...) { +object Cyc_make_bytevector(void *data, object cont, int argc, object len, ...) +{ object bv = NULL; object fill; int i, length, fill_val; @@ -1507,15 +1652,15 @@ object Cyc_make_bytevector(void *data, object cont, int argc, object len, ...) { length = unbox_number(len); bv = alloca(sizeof(bytevector_type)); - ((bytevector)bv)->hdr.mark = gc_color_red; - ((bytevector)bv)->hdr.grayed = 0; - ((bytevector)bv)->tag = bytevector_tag; - ((bytevector)bv)->len = length; - ((bytevector)bv)->data = alloca(sizeof(char) * length); + ((bytevector) bv)->hdr.mark = gc_color_red; + ((bytevector) bv)->hdr.grayed = 0; + ((bytevector) bv)->tag = bytevector_tag; + ((bytevector) bv)->len = length; + ((bytevector) bv)->data = alloca(sizeof(char) * length); if (argc > 1) { Cyc_check_num(data, fill); fill_val = unbox_number(fill); - memset(((bytevector)bv)->data, (unsigned char)fill_val, length); + memset(((bytevector) bv)->data, (unsigned char)fill_val, length); } return_closcall1(data, cont, bv); } @@ -1545,11 +1690,14 @@ object Cyc_make_bytevector(void *data, object cont, int argc, object len, ...) { return_closcall1(data, cont, &bv); \ } -void dispatch_bytevector(void *data, int _argc, object clo, object cont, object bval, ...) { +void dispatch_bytevector(void *data, int _argc, object clo, object cont, + object bval, ...) +{ Cyc_bytevector_va_list((_argc - 1)); } -object Cyc_bytevector(void *data, object cont, int _argc, object bval, ...) { +object Cyc_bytevector(void *data, object cont, int _argc, object bval, ...) +{ Cyc_bytevector_va_list(_argc); } @@ -1588,15 +1736,20 @@ object Cyc_bytevector(void *data, object cont, int _argc, object bval, ...) { return_closcall1(data, cont, &result); \ } -void dispatch_bytevector_91append(void *data, int _argc, object clo, object cont, object bv, ...) { +void dispatch_bytevector_91append(void *data, int _argc, object clo, + object cont, object bv, ...) +{ Cyc_bytevector_append_va_list((_argc - 1)); } -object Cyc_bytevector_append(void *data, object cont, int _argc, object bv, ...) { +object Cyc_bytevector_append(void *data, object cont, int _argc, object bv, ...) +{ Cyc_bytevector_append_va_list(_argc); } -object Cyc_bytevector_copy(void *data, object cont, object bv, object start, object end) { +object Cyc_bytevector_copy(void *data, object cont, object bv, object start, + object end) +{ const char *buf; int s, e; int len; @@ -1606,26 +1759,28 @@ object Cyc_bytevector_copy(void *data, object cont, object bv, object start, obj Cyc_check_num(data, start); Cyc_check_num(data, end); - buf = ((bytevector)bv)->data; + buf = ((bytevector) bv)->data; s = unbox_number(start); e = unbox_number(end); len = e - s; - if (s < 0 || s >= ((bytevector)bv)->len) { + if (s < 0 || s >= ((bytevector) bv)->len) { Cyc_rt_raise2(data, "bytevector-copy - invalid start", start); } - if (e < 0 || e < s || e > ((bytevector)bv)->len) { + if (e < 0 || e < s || e > ((bytevector) bv)->len) { Cyc_rt_raise2(data, "bytevector-copy - invalid end", end); } result.len = len; result.data = alloca(sizeof(char) * len); - memcpy(&result.data[0], &(((bytevector)bv)->data)[s], len); + memcpy(&result.data[0], &(((bytevector) bv)->data)[s], len); return_closcall1(data, cont, &result); } -object Cyc_utf82string(void *data, object cont, object bv, object start, object end) { +object Cyc_utf82string(void *data, object cont, object bv, object start, + object end) +{ const char *buf; int s, e; int len; @@ -1634,16 +1789,16 @@ object Cyc_utf82string(void *data, object cont, object bv, object start, object Cyc_check_num(data, start); Cyc_check_num(data, end); - buf = ((bytevector)bv)->data; + buf = ((bytevector) bv)->data; s = unbox_number(start); e = unbox_number(end); len = e - s; - if (s < 0 || (s >= ((bytevector)bv)->len && len > 0)) { + if (s < 0 || (s >= ((bytevector) bv)->len && len > 0)) { Cyc_rt_raise2(data, "utf8->string - invalid start", start); } - if (e < 0 || e < s || e > ((bytevector)bv)->len) { + if (e < 0 || e < s || e > ((bytevector) bv)->len) { Cyc_rt_raise2(data, "utf8->string - invalid end", end); } @@ -1656,7 +1811,9 @@ object Cyc_utf82string(void *data, object cont, object bv, object start, object } } -object Cyc_string2utf8(void *data, object cont, object str, object start, object end) { +object Cyc_string2utf8(void *data, object cont, object str, object start, + object end) +{ const char *buf; int s, e; int len; @@ -1685,7 +1842,8 @@ object Cyc_string2utf8(void *data, object cont, object str, object start, object return_closcall1(data, cont, &result); } -object Cyc_bytevector_u8_ref(void *data, object bv, object k) { +object Cyc_bytevector_u8_ref(void *data, object bv, object k) +{ const char *buf; int idx; int val; @@ -1693,10 +1851,10 @@ object Cyc_bytevector_u8_ref(void *data, object bv, object k) { Cyc_check_bvec(data, bv); Cyc_check_num(data, k); - buf = ((bytevector)bv)->data; + buf = ((bytevector) bv)->data; idx = unbox_number(k); - if (idx < 0 || idx >= ((bytevector)bv)->len) { + if (idx < 0 || idx >= ((bytevector) bv)->len) { Cyc_rt_raise2(data, "bytevector-u8-ref - invalid index", k); } @@ -1704,7 +1862,8 @@ object Cyc_bytevector_u8_ref(void *data, object bv, object k) { return obj_int2obj(val); } -object Cyc_bytevector_u8_set(void *data, object bv, object k, object b) { +object Cyc_bytevector_u8_set(void *data, object bv, object k, object b) +{ char *buf; int idx, len, val; @@ -1712,75 +1871,85 @@ object Cyc_bytevector_u8_set(void *data, object bv, object k, object b) { Cyc_check_num(data, k); Cyc_check_num(data, b); - buf = ((bytevector)bv)->data; + buf = ((bytevector) bv)->data; idx = unbox_number(k); val = unbox_number(b); - len = ((bytevector)bv)->len; + len = ((bytevector) bv)->len; Cyc_check_bounds(data, "bytevector-u8-set!", len, idx); buf[idx] = (unsigned char)val; return bv; } -object Cyc_bytevector_length(void *data, object bv) { - if ((bv != NULL) && !is_value_type(bv) && ((list)bv)->tag == bytevector_tag) { - return obj_int2obj(((bytevector)bv)->len); - } - Cyc_rt_raise_msg(data, "bytevector-length - invalid parameter, expected bytevector\n"); } +object Cyc_bytevector_length(void *data, object bv) +{ + if ((bv != NULL) && !is_value_type(bv) && ((list) bv)->tag == bytevector_tag) { + return obj_int2obj(((bytevector) bv)->len); + } + Cyc_rt_raise_msg(data, + "bytevector-length - invalid parameter, expected bytevector\n"); +} -object Cyc_list2vector(void *data, object cont, object l) { - object v = NULL; +object Cyc_list2vector(void *data, object cont, object l) +{ + object v = NULL; object len; - object lst = l; - int i = 0; + object lst = l; + int i = 0; - Cyc_check_pair_or_null(data, l); - len = Cyc_length(data, l); - v = alloca(sizeof(vector_type)); - ((vector)v)->hdr.mark = gc_color_red; - ((vector)v)->hdr.grayed = 0; - ((vector)v)->tag = vector_tag; - ((vector)v)->num_elements = obj_obj2int(len); - ((vector)v)->elements = - (((vector)v)->num_elements > 0) ? - (object *)alloca(sizeof(object) * ((vector)v)->num_elements) : - NULL; - while((lst != NULL)) { - ((vector)v)->elements[i++] = car(lst); + Cyc_check_pair_or_null(data, l); + len = Cyc_length(data, l); + v = alloca(sizeof(vector_type)); + ((vector) v)->hdr.mark = gc_color_red; + ((vector) v)->hdr.grayed = 0; + ((vector) v)->tag = vector_tag; + ((vector) v)->num_elements = obj_obj2int(len); + ((vector) v)->elements = + (((vector) v)->num_elements > 0) ? + (object *) alloca(sizeof(object) * ((vector) v)->num_elements) : NULL; + while ((lst != NULL)) { + ((vector) v)->elements[i++] = car(lst); lst = cdr(lst); } return_closcall1(data, cont, v); } -object Cyc_system(object cmd) { +object Cyc_system(object cmd) +{ if ((cmd == NULL) || is_value_type(cmd) || type_of(cmd) != string_tag) { return obj_int2obj(-1); } - return obj_int2obj(system(((string_type *)cmd)->str)); + return obj_int2obj(system(((string_type *) cmd)->str)); } -object Cyc_char2integer(object chr){ - return obj_int2obj(obj_obj2char(chr)); +object Cyc_char2integer(object chr) +{ + return obj_int2obj(obj_obj2char(chr)); } -object Cyc_integer2char(void *data, object n){ - int val = 0; +object Cyc_integer2char(void *data, object n) +{ + int val = 0; - Cyc_check_num(data, n); - val = unbox_number(n); - return obj_char2obj(val); + Cyc_check_num(data, n); + val = unbox_number(n); + return obj_char2obj(val); } void Cyc_halt(closure); -void Cyc_halt(env) closure env; { +void Cyc_halt(env) +closure env; +{ #if DEBUG_SHOW_DIAG - gc_print_stats(Cyc_heap); + gc_print_stats(Cyc_heap); #endif - exit(0);} + exit(0); +} -object __halt(object obj) { - Cyc_halt(obj); - return NULL; +object __halt(object obj) +{ + Cyc_halt(obj); + return NULL; } #define declare_num_op(FUNC, FUNC_OP, FUNC_APPLY, OP, NO_ARG, ONE_ARG, DIV) \ @@ -1834,63 +2003,75 @@ void FUNC_APPLY(void *data, int argc, object clo, object cont, object n, ...) { return_closcall1(data, cont, result); \ } -object Cyc_div_op(void *data, common_type *x, object y) { - int tx = type_of(x), ty = (obj_is_int(y) ? -1 : type_of(y)); - if (1 && - ((ty == -1 && (obj_obj2int(y) == 0)) || - (ty == integer_tag && integer_value(y) == 0) || - (ty == double_tag && double_value(y) == 0.0))) { - Cyc_rt_raise_msg(data, "Divide by zero"); - } - if (tx == integer_tag && ty == -1) { - x->double_t.tag = double_tag; - x->double_t.value = ((double)x->integer_t.value) / (obj_obj2int(y)); - } else if (tx == double_tag && ty == -1) { - x->double_t.value = x->double_t.value / (obj_obj2int(y)); - } else if (tx == integer_tag && ty == integer_tag) { - x->double_t.tag = double_tag; - x->double_t.value = ((double)x->integer_t.value) / ((integer_type *)y)->value; - } else if (tx == double_tag && ty == integer_tag) { - x->double_t.value = x->double_t.value / ((integer_type *)y)->value; - } else if (tx == integer_tag && ty == double_tag) { - x->double_t.hdr.mark = gc_color_red; - x->double_t.hdr.grayed = 0; - x->double_t.tag = double_tag; - x->double_t.value = x->integer_t.value / ((double_type *)y)->value; - } else if (tx == double_tag && ty == double_tag) { - x->double_t.value = x->double_t.value / ((double_type *)y)->value; - } else { - make_string(s, "Bad argument type"); - make_pair(c1, y, NULL); - make_pair(c0, &s, &c1); - Cyc_rt_raise(data, &c0); - } - return x; +object Cyc_div_op(void *data, common_type * x, object y) +{ + int tx = type_of(x), ty = (obj_is_int(y) ? -1 : type_of(y)); + if (1 && + ((ty == -1 && (obj_obj2int(y) == 0)) || + (ty == integer_tag && integer_value(y) == 0) || + (ty == double_tag && double_value(y) == 0.0))) { + Cyc_rt_raise_msg(data, "Divide by zero"); + } + if (tx == integer_tag && ty == -1) { + x->double_t.tag = double_tag; + x->double_t.value = ((double)x->integer_t.value) / (obj_obj2int(y)); + } else if (tx == double_tag && ty == -1) { + x->double_t.value = x->double_t.value / (obj_obj2int(y)); + } else if (tx == integer_tag && ty == integer_tag) { + x->double_t.tag = double_tag; + x->double_t.value = + ((double)x->integer_t.value) / ((integer_type *) y)->value; + } else if (tx == double_tag && ty == integer_tag) { + x->double_t.value = x->double_t.value / ((integer_type *) y)->value; + } else if (tx == integer_tag && ty == double_tag) { + x->double_t.hdr.mark = gc_color_red; + x->double_t.hdr.grayed = 0; + x->double_t.tag = double_tag; + x->double_t.value = x->integer_t.value / ((double_type *) y)->value; + } else if (tx == double_tag && ty == double_tag) { + x->double_t.value = x->double_t.value / ((double_type *) y)->value; + } else { + make_string(s, "Bad argument type"); + make_pair(c1, y, NULL); + make_pair(c0, &s, &c1); + Cyc_rt_raise(data, &c0); + } + return x; } -object Cyc_div(void *data, object cont, int argc, object n, ...) { - common_type buffer; - object result; - va_list ap; - va_start(ap, n); - result = Cyc_num_op_va_list(data, argc, Cyc_div_op, -1, 1, n, ap, &buffer); - va_end(ap); - return_closcall1(data, cont, result); + +object Cyc_div(void *data, object cont, int argc, object n, ...) +{ + common_type buffer; + object result; + va_list ap; + va_start(ap, n); + result = Cyc_num_op_va_list(data, argc, Cyc_div_op, -1, 1, n, ap, &buffer); + va_end(ap); + return_closcall1(data, cont, result); } -void dispatch_div(void *data, int argc, object clo, object cont, object n, ...) { - common_type buffer; - object result; - va_list ap; - va_start(ap, n); - result = Cyc_num_op_va_list(data, argc - 1, Cyc_div_op, -1, 1, n, ap, &buffer); - va_end(ap); - return_closcall1(data, cont, result); + +void dispatch_div(void *data, int argc, object clo, object cont, object n, ...) +{ + common_type buffer; + object result; + va_list ap; + va_start(ap, n); + result = + Cyc_num_op_va_list(data, argc - 1, Cyc_div_op, -1, 1, n, ap, &buffer); + va_end(ap); + return_closcall1(data, cont, result); } + declare_num_op(Cyc_sum, Cyc_sum_op, dispatch_sum, +, 0, 0, 0); declare_num_op(Cyc_sub, Cyc_sub_op, dispatch_sub, -, -1, 0, 0); declare_num_op(Cyc_mul, Cyc_mul_op, dispatch_mul, *, 1, 1, 0); //declare_num_op(Cyc_div, Cyc_div_op2, dispatch_div, /, -1, 1, 1); -object Cyc_num_op_va_list(void *data, int argc, object (fn_op(void *, common_type *, object)), int default_no_args, int default_one_arg, object n, va_list ns, common_type *buf) { +object Cyc_num_op_va_list(void *data, int argc, + object(fn_op(void *, common_type *, object)), + int default_no_args, int default_one_arg, object n, + va_list ns, common_type * buf) +{ int i; if (argc == 0) { if (default_no_args < 0) { @@ -1905,24 +2086,24 @@ object Cyc_num_op_va_list(void *data, int argc, object (fn_op(void *, common_typ if (obj_is_int(n)) { buf->integer_t.hdr.mark = gc_color_red; - buf->integer_t.hdr.grayed = 0; + buf->integer_t.hdr.grayed = 0; buf->integer_t.tag = integer_tag; buf->integer_t.value = obj_obj2int(n); } else if (type_of(n) == integer_tag) { buf->integer_t.hdr.mark = gc_color_red; - buf->integer_t.hdr.grayed = 0; + buf->integer_t.hdr.grayed = 0; buf->integer_t.tag = integer_tag; - buf->integer_t.value = ((integer_type *)n)->value; + buf->integer_t.value = ((integer_type *) n)->value; } else if (type_of(n) == double_tag) { buf->double_t.hdr.mark = gc_color_red; buf->double_t.hdr.grayed = 0; buf->double_t.tag = double_tag; - buf->double_t.value = ((double_type *)n)->value; + buf->double_t.value = ((double_type *) n)->value; } else { - make_string(s, "Bad argument type"); - make_pair(c1, n, NULL); - make_pair(c0, &s, &c1); - Cyc_rt_raise(data, &c0); + make_string(s, "Bad argument type"); + make_pair(c1, n, NULL); + make_pair(c0, &s, &c1); + Cyc_rt_raise(data, &c0); } if (argc == 1) { @@ -1932,7 +2113,7 @@ object Cyc_num_op_va_list(void *data, int argc, object (fn_op(void *, common_typ tmp.integer_t.tag = integer_tag; tmp.integer_t.value = default_one_arg; - fn_op(data, &tmp, (object)buf); + fn_op(data, &tmp, (object) buf); if (type_of(&tmp) == integer_tag) { buf->integer_t.tag = integer_tag; buf->integer_t.value = integer_value(&tmp); @@ -1956,62 +2137,78 @@ object Cyc_num_op_va_list(void *data, int argc, object (fn_op(void *, common_typ /* I/O functions */ -port_type Cyc_stdout() { +port_type Cyc_stdout() +{ make_port(_stdout, stdout, 0); return _stdout; } -port_type Cyc_stdin() { - make_port(p, stdin, 1); - return p; +port_type Cyc_stdin() +{ + make_port(p, stdin, 1); + return p; } -port_type Cyc_stderr() { - make_port(p, stderr, 0); - return p; +port_type Cyc_stderr() +{ + make_port(p, stderr, 0); + return p; } -port_type Cyc_io_open_input_file(void *data, object str) { - const char *fname; - Cyc_check_str(data, str); - fname = ((string_type *)str)->str; - make_port(p, NULL, 1); - p.fp = fopen(fname, "r"); - if (p.fp == NULL) { Cyc_rt_raise2(data, "Unable to open file", str); } - return p; +port_type Cyc_io_open_input_file(void *data, object str) +{ + const char *fname; + Cyc_check_str(data, str); + fname = ((string_type *) str)->str; + make_port(p, NULL, 1); + p.fp = fopen(fname, "r"); + if (p.fp == NULL) { + Cyc_rt_raise2(data, "Unable to open file", str); + } + return p; } -port_type Cyc_io_open_output_file(void *data, object str) { - const char *fname; - Cyc_check_str(data, str); - fname = ((string_type *)str)->str; - make_port(p, NULL, 0); - p.fp = fopen(fname, "w"); - if (p.fp == NULL) { Cyc_rt_raise2(data, "Unable to open file", str); } - return p; +port_type Cyc_io_open_output_file(void *data, object str) +{ + const char *fname; + Cyc_check_str(data, str); + fname = ((string_type *) str)->str; + make_port(p, NULL, 0); + p.fp = fopen(fname, "w"); + if (p.fp == NULL) { + Cyc_rt_raise2(data, "Unable to open file", str); + } + return p; } -object Cyc_io_close_input_port(void *data, object port) { - return Cyc_io_close_port(data, port); } +object Cyc_io_close_input_port(void *data, object port) +{ + return Cyc_io_close_port(data, port); +} -object Cyc_io_close_output_port(void *data, object port) { - return Cyc_io_close_port(data, port); } +object Cyc_io_close_output_port(void *data, object port) +{ + return Cyc_io_close_port(data, port); +} -object Cyc_io_close_port(void *data, object port) { +object Cyc_io_close_port(void *data, object port) +{ Cyc_check_port(data, port); { - FILE *stream = ((port_type *)port)->fp; - if (stream) fclose(stream); - ((port_type *)port)->fp = NULL; + FILE *stream = ((port_type *) port)->fp; + if (stream) + fclose(stream); + ((port_type *) port)->fp = NULL; } return port; } -object Cyc_io_flush_output_port(void *data, object port) { +object Cyc_io_flush_output_port(void *data, object port) +{ Cyc_check_port(data, port); { - FILE *stream = ((port_type *)port)->fp; - if (stream) { + FILE *stream = ((port_type *) port)->fp; + if (stream) { int rv = fflush(stream); // TODO: handle error if non-zero value returned } @@ -2019,19 +2216,21 @@ object Cyc_io_flush_output_port(void *data, object port) { return port; } -object Cyc_io_delete_file(void *data, object filename) { +object Cyc_io_delete_file(void *data, object filename) +{ const char *fname; Cyc_check_str(data, filename); - fname = ((string_type *)filename)->str; + fname = ((string_type *) filename)->str; if (remove(fname) == 0) - return boolean_t; // Success + return boolean_t; // Success return boolean_f; } -object Cyc_io_file_exists(void *data, object filename) { +object Cyc_io_file_exists(void *data, object filename) +{ const char *fname; Cyc_check_str(data, filename); - fname = ((string_type *)filename)->str; + fname = ((string_type *) filename)->str; FILE *file; // Possibly overkill, but portable if (file = fopen(fname, "r")) { @@ -2042,23 +2241,25 @@ object Cyc_io_file_exists(void *data, object filename) { } // TODO: port arg is optional! (maybe handle that in expansion section??) -object Cyc_io_read_char(void *data, object cont, object port) { - int c; - Cyc_check_port(data, port); - { - set_thread_blocked(data, cont); - c = fgetc(((port_type *) port)->fp); - return_thread_runnable(data, (c != EOF) ? obj_char2obj(c) : Cyc_EOF); - } - return Cyc_EOF; +object Cyc_io_read_char(void *data, object cont, object port) +{ + int c; + Cyc_check_port(data, port); + { + set_thread_blocked(data, cont); + c = fgetc(((port_type *) port)->fp); + return_thread_runnable(data, (c != EOF) ? obj_char2obj(c) : Cyc_EOF); + } + return Cyc_EOF; } /* TODO: this function needs some work, but approximates what is needed */ -object Cyc_io_read_line(void *data, object cont, object port) { - FILE *stream = ((port_type *)port)->fp; +object Cyc_io_read_line(void *data, object cont, object port) +{ + FILE *stream = ((port_type *) port)->fp; char buf[1024]; int i = 0, c; - + set_thread_blocked(data, cont); while (1) { c = fgetc(stream); @@ -2077,19 +2278,20 @@ object Cyc_io_read_line(void *data, object cont, object port) { return NULL; } -object Cyc_io_peek_char(void *data, object cont, object port) { - FILE *stream; - int c; +object Cyc_io_peek_char(void *data, object cont, object port) +{ + FILE *stream; + int c; - Cyc_check_port(data, port); - { - stream = ((port_type *) port)->fp; - set_thread_blocked(data, cont); - c = fgetc(stream); - ungetc(c, stream); - return_thread_runnable(data, (c != EOF) ? obj_char2obj(c) : Cyc_EOF); - } - return Cyc_EOF; + Cyc_check_port(data, port); + { + stream = ((port_type *) port)->fp; + set_thread_blocked(data, cont); + c = fgetc(stream); + ungetc(c, stream); + return_thread_runnable(data, (c != EOF) ? obj_char2obj(c) : Cyc_EOF); + } + return Cyc_EOF; } // Functions internal to the runtime that use malloc @@ -2098,485 +2300,908 @@ list mcons(object a, object d) pair_type *c = malloc(sizeof(pair_type)); c->hdr.mark = gc_color_red; c->hdr.grayed = 0; - c->tag = pair_tag; - c->pair_car = a; + c->tag = pair_tag; + c->pair_car = a; c->pair_cdr = d; return c; } -cvar_type *mcvar(object *var) +cvar_type *mcvar(object * var) { cvar_type *c = malloc(sizeof(cvar_type)); c->hdr.mark = gc_color_red; c->hdr.grayed = 0; - c->tag = cvar_tag; + c->tag = cvar_tag; c->pvar = var; return c; } -void _Cyc_91global_91vars(void *data, object cont, object args){ - return_closcall1(data, cont, Cyc_global_variables); } -void _car(void *data, object cont, object args) { - Cyc_check_num_args(data, "car", 1, args); - { object var = car(args); - Cyc_check_pair(data, var); - return_closcall1(data, cont, car(var)); }} -void _cdr(void *data, object cont, object args) { - Cyc_check_num_args(data, "cdr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cdr(car(args))); } -void _caar(void *data, object cont, object args) { - Cyc_check_num_args(data, "caar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, caar(car(args))); } -void _cadr(void *data, object cont, object args) { - Cyc_check_num_args(data, "cadr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cadr(car(args))); } -void _cdar(void *data, object cont, object args) { - Cyc_check_num_args(data, "cdar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cdar(car(args))); } -void _cddr(void *data, object cont, object args) { - Cyc_check_num_args(data, "cddr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cddr(car(args))); } -void _caaar(void *data, object cont, object args) { - Cyc_check_num_args(data, "caaar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, caaar(car(args))); } -void _caadr(void *data, object cont, object args) { - Cyc_check_num_args(data, "caadr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, caadr(car(args))); } -void _cadar(void *data, object cont, object args) { - Cyc_check_num_args(data, "cadar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cadar(car(args))); } -void _caddr(void *data, object cont, object args) { - Cyc_check_num_args(data, "caddr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, caddr(car(args))); } -void _cdaar(void *data, object cont, object args) { - Cyc_check_num_args(data, "cdaar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cdaar(car(args))); } -void _cdadr(void *data, object cont, object args) { - Cyc_check_num_args(data, "cdadr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cdadr(car(args))); } -void _cddar(void *data, object cont, object args) { - Cyc_check_num_args(data, "cddar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cddar(car(args))); } -void _cdddr(void *data, object cont, object args) { - Cyc_check_num_args(data, "cdddr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cdddr(car(args))); } -void _caaaar(void *data, object cont, object args) { - Cyc_check_num_args(data, "caaaar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, caaaar(car(args))); } -void _caaadr(void *data, object cont, object args) { - Cyc_check_num_args(data, "caaadr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, caaadr(car(args))); } -void _caadar(void *data, object cont, object args) { - Cyc_check_num_args(data, "caadar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, caadar(car(args))); } -void _caaddr(void *data, object cont, object args) { - Cyc_check_num_args(data, "caaddr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, caaddr(car(args))); } -void _cadaar(void *data, object cont, object args) { - Cyc_check_num_args(data, "cadaar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cadaar(car(args))); } -void _cadadr(void *data, object cont, object args) { - Cyc_check_num_args(data, "cadadr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cadadr(car(args))); } -void _caddar(void *data, object cont, object args) { - Cyc_check_num_args(data, "caddar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, caddar(car(args))); } -void _cadddr(void *data, object cont, object args) { - Cyc_check_num_args(data, "cadddr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cadddr(car(args))); } -void _cdaaar(void *data, object cont, object args) { - Cyc_check_num_args(data, "cdaaar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cdaaar(car(args))); } -void _cdaadr(void *data, object cont, object args) { - Cyc_check_num_args(data, "cdaadr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cdaadr(car(args))); } -void _cdadar(void *data, object cont, object args) { - Cyc_check_num_args(data, "cdadar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cdadar(car(args))); } -void _cdaddr(void *data, object cont, object args) { - Cyc_check_num_args(data, "cdaddr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cdaddr(car(args))); } -void _cddaar(void *data, object cont, object args) { - Cyc_check_num_args(data, "cddaar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cddaar(car(args))); } -void _cddadr(void *data, object cont, object args) { - Cyc_check_num_args(data, "cddadr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cddadr(car(args))); } -void _cdddar(void *data, object cont, object args) { - Cyc_check_num_args(data, "cdddar", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cdddar(car(args))); } -void _cddddr(void *data, object cont, object args) { - Cyc_check_num_args(data, "cddddr", 1, args); - Cyc_check_pair(data, car(args)); - return_closcall1(data, cont, cddddr(car(args))); } -void _cons(void *data, object cont, object args) { - Cyc_check_num_args(data, "cons", 2, args); - { make_pair(c, car(args), cadr(args)); - return_closcall1(data, cont, &c); }} -void _eq_127(void *data, object cont, object args){ - Cyc_check_num_args(data, "eq?", 2, args); - return_closcall1(data, cont, Cyc_eq(car(args), cadr(args))); } -void _eqv_127(void *data, object cont, object args){ - Cyc_check_num_args(data, "eqv?", 2, args); - _eq_127(data, cont, args); } -void _equal_127(void *data, object cont, object args){ - Cyc_check_num_args(data, "equal?", 2, args); - return_closcall1(data, cont, equalp(car(args), cadr(args))); } -void _length(void *data, object cont, object args){ - Cyc_check_num_args(data, "length", 1, args); - { object obj = Cyc_length(data, car(args)); - return_closcall1(data, cont, obj); }} -void _bytevector_91length(void *data, object cont, object args){ - Cyc_check_num_args(data, "bytevector_91length", 1, args); - { object obj = Cyc_bytevector_length(data, car(args)); - return_closcall1(data, cont, obj); }} -void _bytevector_91u8_91ref(void *data, object cont, object args) { - Cyc_check_num_args(data, "bytevector-u8-ref", 2, args); - { object c = Cyc_bytevector_u8_ref(data, car(args), cadr(args)); - return_closcall1(data, cont, c); }} -void _bytevector_91u8_91set_67(void *data, object cont, object args) { - Cyc_check_num_args(data, "bytevector-u8-set!", 3, args); - { object bv = Cyc_bytevector_u8_set(data, car(args), cadr(args), caddr(args)); - return_closcall1(data, cont, bv); }} -void _bytevector(void *data, object cont, object args) { - object argc = Cyc_length(data, args); - dispatch(data, obj_obj2int(argc), (function_type)dispatch_bytevector, cont, cont, args); } -void _bytevector_91append(void *data, object cont, object args) { - object argc = Cyc_length(data, args); - dispatch(data, obj_obj2int(argc), (function_type)dispatch_bytevector_91append, cont, cont, args); } -void _Cyc_91bytevector_91copy(void *data, object cont, object args) { - object argc = Cyc_length(data, args); - Cyc_check_num_args(data, "Cyc-bytevector-copy", 3, args); - Cyc_bytevector_copy(data, cont, car(args), cadr(args), caddr(args)); } -void _Cyc_91string_91_125utf8(void *data, object cont, object args) { - object argc = Cyc_length(data, args); - Cyc_check_num_args(data, "Cyc-string->utf8", 3, args); - Cyc_string2utf8(data, cont, car(args), cadr(args), caddr(args)); } -void _Cyc_91utf8_91_125string(void *data, object cont, object args) { - object argc = Cyc_length(data, args); - Cyc_check_num_args(data, "Cyc-utf8->string", 3, args); - Cyc_utf82string(data, cont, car(args), cadr(args), caddr(args)); } -void _vector_91length(void *data, object cont, object args){ - Cyc_check_num_args(data, "vector_91length", 1, args); - { object obj = Cyc_vector_length(data, car(args)); - return_closcall1(data, cont, obj); }} -void _null_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "null?", 1, args); - return_closcall1(data, cont, Cyc_is_null(car(args))); } -void _set_91car_67(void *data, object cont, object args) { - Cyc_check_num_args(data, "set-car!", 2, args); - return_closcall1(data, cont, Cyc_set_car(data, car(args), cadr(args))); } -void _set_91cdr_67(void *data, object cont, object args) { - Cyc_check_num_args(data, "set-cdr!", 2, args); - return_closcall1(data, cont, Cyc_set_cdr(data, car(args), cadr(args))); } -void _Cyc_91has_91cycle_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "Cyc-has-cycle?", 1, args); - return_closcall1(data, cont, Cyc_has_cycle(car(args))); } -void _Cyc_91spawn_91thread_67(void *data, object cont, object args) { - Cyc_check_num_args(data, "Cyc-spawn-thread!", 1, args); - // TODO: validate argument type? - return_closcall1(data, cont, Cyc_spawn_thread(car(args))); } -void _Cyc_91end_91thread_67(void *data, object cont, object args) { - Cyc_end_thread((gc_thread_data *)data); - return_closcall1(data, cont, boolean_f); } -void __87(void *data, object cont, object args) { - integer_type argc = Cyc_length_as_object(data, args); - dispatch(data, argc.value, (function_type)dispatch_sum, cont, cont, args); } -void __91(void *data, object cont, object args) { - Cyc_check_num_args(data, "-", 1, args); - { integer_type argc = Cyc_length_as_object(data, args); - dispatch(data, argc.value, (function_type)dispatch_sub, cont, cont, args); }} -void __85(void *data, object cont, object args) { - integer_type argc = Cyc_length_as_object(data, args); - dispatch(data, argc.value, (function_type)dispatch_mul, cont, cont, args); } -void __95(void *data, object cont, object args) { - Cyc_check_num_args(data, "/", 1, args); - { integer_type argc = Cyc_length_as_object(data, args); - dispatch(data, argc.value, (function_type)dispatch_div, cont, cont, args); }} -void _Cyc_91cvar_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "Cyc-cvar?", 1, args); - return_closcall1(data, cont, Cyc_is_cvar(car(args))); } -void _boolean_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "boolean?", 1, args); - return_closcall1(data, cont, Cyc_is_boolean(car(args))); } -void _char_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "char?", 1, args); - return_closcall1(data, cont, Cyc_is_char(car(args))); } -void _eof_91object_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "eof_91object?", 1, args); - return_closcall1(data, cont, Cyc_is_eof_object(car(args))); } -void _number_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "number?", 1, args); - return_closcall1(data, cont, Cyc_is_number(car(args))); } -void _real_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "real?", 1, args); - return_closcall1(data, cont, Cyc_is_real(car(args))); } -void _integer_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "integer?", 1, args); - return_closcall1(data, cont, Cyc_is_integer(car(args))); } -void _pair_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "pair?", 1, args); - return_closcall1(data, cont, Cyc_is_pair(car(args))); } -void _procedure_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "procedure?", 1, args); - return_closcall1(data, cont, Cyc_is_procedure(data, car(args))); } -void _macro_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "macro?", 1, args); - return_closcall1(data, cont, Cyc_is_macro(car(args))); } -void _port_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "port?", 1, args); - return_closcall1(data, cont, Cyc_is_port(car(args))); } -void _bytevector_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "bytevector?", 1, args); - return_closcall1(data, cont, Cyc_is_bytevector(car(args))); } -void _vector_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "vector?", 1, args); - return_closcall1(data, cont, Cyc_is_vector(car(args))); } -void _string_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "string?", 1, args); - return_closcall1(data, cont, Cyc_is_string(car(args))); } -void _symbol_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "symbol?", 1, args); - return_closcall1(data, cont, Cyc_is_symbol(car(args))); } - -void _Cyc_91get_91cvar(void *data, object cont, object args) { - printf("not implemented\n"); exit(1); } -void _Cyc_91set_91cvar_67(void *data, object cont, object args) { - printf("not implemented\n"); exit(1); } -/* Note we cannot use _exit (per convention) because it is reserved by C */ -void _cyc_exit(void *data, object cont, object args) { - if(args == NULL) - __halt(NULL); - __halt(car(args)); +void _Cyc_91global_91vars(void *data, object cont, object args) +{ + return_closcall1(data, cont, Cyc_global_variables); } -void __75halt(void *data, object cont, object args) { + +void _car(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "car", 1, args); + { + object var = car(args); + Cyc_check_pair(data, var); + return_closcall1(data, cont, car(var)); +}} + +void _cdr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cdr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cdr(car(args))); +} + +void _caar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "caar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, caar(car(args))); +} + +void _cadr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cadr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cadr(car(args))); +} + +void _cdar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cdar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cdar(car(args))); +} + +void _cddr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cddr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cddr(car(args))); +} + +void _caaar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "caaar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, caaar(car(args))); +} + +void _caadr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "caadr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, caadr(car(args))); +} + +void _cadar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cadar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cadar(car(args))); +} + +void _caddr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "caddr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, caddr(car(args))); +} + +void _cdaar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cdaar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cdaar(car(args))); +} + +void _cdadr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cdadr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cdadr(car(args))); +} + +void _cddar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cddar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cddar(car(args))); +} + +void _cdddr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cdddr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cdddr(car(args))); +} + +void _caaaar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "caaaar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, caaaar(car(args))); +} + +void _caaadr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "caaadr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, caaadr(car(args))); +} + +void _caadar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "caadar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, caadar(car(args))); +} + +void _caaddr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "caaddr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, caaddr(car(args))); +} + +void _cadaar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cadaar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cadaar(car(args))); +} + +void _cadadr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cadadr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cadadr(car(args))); +} + +void _caddar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "caddar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, caddar(car(args))); +} + +void _cadddr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cadddr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cadddr(car(args))); +} + +void _cdaaar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cdaaar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cdaaar(car(args))); +} + +void _cdaadr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cdaadr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cdaadr(car(args))); +} + +void _cdadar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cdadar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cdadar(car(args))); +} + +void _cdaddr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cdaddr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cdaddr(car(args))); +} + +void _cddaar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cddaar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cddaar(car(args))); +} + +void _cddadr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cddadr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cddadr(car(args))); +} + +void _cdddar(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cdddar", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cdddar(car(args))); +} + +void _cddddr(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cddddr", 1, args); + Cyc_check_pair(data, car(args)); + return_closcall1(data, cont, cddddr(car(args))); +} + +void _cons(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "cons", 2, args); + { + make_pair(c, car(args), cadr(args)); + return_closcall1(data, cont, &c); +}} + +void _eq_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "eq?", 2, args); + return_closcall1(data, cont, Cyc_eq(car(args), cadr(args))); +} + +void _eqv_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "eqv?", 2, args); + _eq_127(data, cont, args); +} + +void _equal_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "equal?", 2, args); + return_closcall1(data, cont, equalp(car(args), cadr(args))); +} + +void _length(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "length", 1, args); + { + object obj = Cyc_length(data, car(args)); + return_closcall1(data, cont, obj); +}} + +void _bytevector_91length(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "bytevector_91length", 1, args); + { + object obj = Cyc_bytevector_length(data, car(args)); + return_closcall1(data, cont, obj); +}} + +void _bytevector_91u8_91ref(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "bytevector-u8-ref", 2, args); + { + object c = Cyc_bytevector_u8_ref(data, car(args), cadr(args)); + return_closcall1(data, cont, c); +}} + +void _bytevector_91u8_91set_67(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "bytevector-u8-set!", 3, args); + { + object bv = Cyc_bytevector_u8_set(data, car(args), cadr(args), caddr(args)); + return_closcall1(data, cont, bv); +}} + +void _bytevector(void *data, object cont, object args) +{ + object argc = Cyc_length(data, args); + dispatch(data, obj_obj2int(argc), (function_type) dispatch_bytevector, cont, + cont, args); +} + +void _bytevector_91append(void *data, object cont, object args) +{ + object argc = Cyc_length(data, args); + dispatch(data, obj_obj2int(argc), + (function_type) dispatch_bytevector_91append, cont, cont, args); +} + +void _Cyc_91bytevector_91copy(void *data, object cont, object args) +{ + object argc = Cyc_length(data, args); + Cyc_check_num_args(data, "Cyc-bytevector-copy", 3, args); + Cyc_bytevector_copy(data, cont, car(args), cadr(args), caddr(args)); +} + +void _Cyc_91string_91_125utf8(void *data, object cont, object args) +{ + object argc = Cyc_length(data, args); + Cyc_check_num_args(data, "Cyc-string->utf8", 3, args); + Cyc_string2utf8(data, cont, car(args), cadr(args), caddr(args)); +} + +void _Cyc_91utf8_91_125string(void *data, object cont, object args) +{ + object argc = Cyc_length(data, args); + Cyc_check_num_args(data, "Cyc-utf8->string", 3, args); + Cyc_utf82string(data, cont, car(args), cadr(args), caddr(args)); +} + +void _vector_91length(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "vector_91length", 1, args); + { + object obj = Cyc_vector_length(data, car(args)); + return_closcall1(data, cont, obj); +}} + +void _null_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "null?", 1, args); + return_closcall1(data, cont, Cyc_is_null(car(args))); +} + +void _set_91car_67(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "set-car!", 2, args); + return_closcall1(data, cont, Cyc_set_car(data, car(args), cadr(args))); +} + +void _set_91cdr_67(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "set-cdr!", 2, args); + return_closcall1(data, cont, Cyc_set_cdr(data, car(args), cadr(args))); +} + +void _Cyc_91has_91cycle_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "Cyc-has-cycle?", 1, args); + return_closcall1(data, cont, Cyc_has_cycle(car(args))); +} + +void _Cyc_91spawn_91thread_67(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "Cyc-spawn-thread!", 1, args); + // TODO: validate argument type? + return_closcall1(data, cont, Cyc_spawn_thread(car(args))); +} + +void _Cyc_91end_91thread_67(void *data, object cont, object args) +{ + Cyc_end_thread((gc_thread_data *) data); + return_closcall1(data, cont, boolean_f); +} + +void __87(void *data, object cont, object args) +{ + integer_type argc = Cyc_length_as_object(data, args); + dispatch(data, argc.value, (function_type) dispatch_sum, cont, cont, args); +} + +void __91(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "-", 1, args); + { + integer_type argc = Cyc_length_as_object(data, args); + dispatch(data, argc.value, (function_type) dispatch_sub, cont, cont, args); +}} + +void __85(void *data, object cont, object args) +{ + integer_type argc = Cyc_length_as_object(data, args); + dispatch(data, argc.value, (function_type) dispatch_mul, cont, cont, args); +} + +void __95(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "/", 1, args); + { + integer_type argc = Cyc_length_as_object(data, args); + dispatch(data, argc.value, (function_type) dispatch_div, cont, cont, args); +}} + +void _Cyc_91cvar_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "Cyc-cvar?", 1, args); + return_closcall1(data, cont, Cyc_is_cvar(car(args))); +} + +void _boolean_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "boolean?", 1, args); + return_closcall1(data, cont, Cyc_is_boolean(car(args))); +} + +void _char_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "char?", 1, args); + return_closcall1(data, cont, Cyc_is_char(car(args))); +} + +void _eof_91object_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "eof_91object?", 1, args); + return_closcall1(data, cont, Cyc_is_eof_object(car(args))); +} + +void _number_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "number?", 1, args); + return_closcall1(data, cont, Cyc_is_number(car(args))); +} + +void _real_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "real?", 1, args); + return_closcall1(data, cont, Cyc_is_real(car(args))); +} + +void _integer_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "integer?", 1, args); + return_closcall1(data, cont, Cyc_is_integer(car(args))); +} + +void _pair_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "pair?", 1, args); + return_closcall1(data, cont, Cyc_is_pair(car(args))); +} + +void _procedure_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "procedure?", 1, args); + return_closcall1(data, cont, Cyc_is_procedure(data, car(args))); +} + +void _macro_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "macro?", 1, args); + return_closcall1(data, cont, Cyc_is_macro(car(args))); +} + +void _port_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "port?", 1, args); + return_closcall1(data, cont, Cyc_is_port(car(args))); +} + +void _bytevector_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "bytevector?", 1, args); + return_closcall1(data, cont, Cyc_is_bytevector(car(args))); +} + +void _vector_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "vector?", 1, args); + return_closcall1(data, cont, Cyc_is_vector(car(args))); +} + +void _string_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "string?", 1, args); + return_closcall1(data, cont, Cyc_is_string(car(args))); +} + +void _symbol_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "symbol?", 1, args); + return_closcall1(data, cont, Cyc_is_symbol(car(args))); +} + +void _Cyc_91get_91cvar(void *data, object cont, object args) +{ + printf("not implemented\n"); + exit(1); +} + +void _Cyc_91set_91cvar_67(void *data, object cont, object args) +{ + printf("not implemented\n"); + exit(1); +} + +/* Note we cannot use _exit (per convention) because it is reserved by C */ +void _cyc_exit(void *data, object cont, object args) +{ + if (args == NULL) + __halt(NULL); + __halt(car(args)); +} + +void __75halt(void *data, object cont, object args) +{ #if DEBUG_SHOW_DIAG - gc_print_stats(Cyc_heap); + gc_print_stats(Cyc_heap); #endif - exit(0); } -void _cell_91get(void *data, object cont, object args) { - printf("not implemented\n"); exit(1); } -void _set_91global_67(void *data, object cont, object args) { - printf("not implemented\n"); exit(1); } -void _set_91cell_67(void *data, object cont, object args) { - printf("not implemented\n"); exit(1); } -void _cell(void *data, object cont, object args) { - printf("not implemented\n"); exit(1); } + exit(0); +} -void __123(void *data, object cont, object args) { - integer_type argc = Cyc_length_as_object(data, args); - dispatch(data, argc.value, (function_type)dispatch_num_eq, cont, cont, args); } -void __125(void *data, object cont, object args) { - integer_type argc = Cyc_length_as_object(data, args); - dispatch(data, argc.value, (function_type)dispatch_num_gt, cont, cont, args); } -void __121(void *data, object cont, object args) { - integer_type argc = Cyc_length_as_object(data, args); - dispatch(data, argc.value, (function_type)dispatch_num_lt, cont, cont, args); } -void __125_123(void *data, object cont, object args) { - integer_type argc = Cyc_length_as_object(data, args); - dispatch(data, argc.value, (function_type)dispatch_num_gte, cont, cont, args); } -void __121_123(void *data, object cont, object args) { - integer_type argc = Cyc_length_as_object(data, args); - dispatch(data, argc.value, (function_type)dispatch_num_lte, cont, cont, args); } +void _cell_91get(void *data, object cont, object args) +{ + printf("not implemented\n"); + exit(1); +} + +void _set_91global_67(void *data, object cont, object args) +{ + printf("not implemented\n"); + exit(1); +} + +void _set_91cell_67(void *data, object cont, object args) +{ + printf("not implemented\n"); + exit(1); +} + +void _cell(void *data, object cont, object args) +{ + printf("not implemented\n"); + exit(1); +} + +void __123(void *data, object cont, object args) +{ + integer_type argc = Cyc_length_as_object(data, args); + dispatch(data, argc.value, (function_type) dispatch_num_eq, cont, cont, args); +} + +void __125(void *data, object cont, object args) +{ + integer_type argc = Cyc_length_as_object(data, args); + dispatch(data, argc.value, (function_type) dispatch_num_gt, cont, cont, args); +} + +void __121(void *data, object cont, object args) +{ + integer_type argc = Cyc_length_as_object(data, args); + dispatch(data, argc.value, (function_type) dispatch_num_lt, cont, cont, args); +} + +void __125_123(void *data, object cont, object args) +{ + integer_type argc = Cyc_length_as_object(data, args); + dispatch(data, argc.value, (function_type) dispatch_num_gte, cont, cont, + args); +} + +void __121_123(void *data, object cont, object args) +{ + integer_type argc = Cyc_length_as_object(data, args); + dispatch(data, argc.value, (function_type) dispatch_num_lte, cont, cont, + args); +} + +void _apply(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "apply", 2, args); + apply(data, cont, car(args), cadr(args)); +} + +void _assoc(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "assoc ", 2, args); + return_closcall1(data, cont, assoc(data, car(args), cadr(args))); +} + +void _assq(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "assq ", 2, args); + return_closcall1(data, cont, assq(data, car(args), cadr(args))); +} + +void _assv(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "assv ", 2, args); + return_closcall1(data, cont, assq(data, car(args), cadr(args))); +} + +void _member(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "member", 2, args); + return_closcall1(data, cont, memberp(data, car(args), cadr(args))); +} + +void _memq(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "memq", 2, args); + return_closcall1(data, cont, memqp(data, car(args), cadr(args))); +} + +void _memv(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "memv", 2, args); + return_closcall1(data, cont, memqp(data, car(args), cadr(args))); +} + +void _char_91_125integer(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "char->integer", 1, args); + { + object obj = Cyc_char2integer(car(args)); + return_closcall1(data, cont, obj); +}} + +void _integer_91_125char(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "integer->char", 1, args); + return_closcall1(data, cont, Cyc_integer2char(data, car(args))); +} + +void _string_91_125number(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "string->number", 1, args); + { + object tail = cdr(args); + if (tail) { + Cyc_string2number2_(data, cont, 2, car(args), cadr(args)); + } else { + Cyc_string2number_(data, cont, car(args)); + } + } +} + +void _string_91length(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "string-length", 1, args); + { + object obj = Cyc_string_length(data, car(args)); + return_closcall1(data, cont, obj); +}} + +void _cyc_substring(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "substring", 3, args); + Cyc_substring(data, cont, car(args), cadr(args), caddr(args)); +} + +void _cyc_string_91set_67(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "string-set!", 3, args); + { + object s = Cyc_string_set(data, car(args), cadr(args), caddr(args)); + return_closcall1(data, cont, s); +}} + +void _cyc_string_91ref(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "string-ref", 2, args); + { + object c = Cyc_string_ref(data, car(args), cadr(args)); + return_closcall1(data, cont, c); +}} + +void _Cyc_91installation_91dir(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "Cyc-installation-dir", 1, args); + Cyc_installation_dir(data, cont, car(args)); +} + +void _command_91line_91arguments(void *data, object cont, object args) +{ + object cmdline = Cyc_command_line_arguments(data, cont); + return_closcall1(data, cont, cmdline); +} + +void _cyc_system(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "system", 1, args); + { + object obj = Cyc_system(car(args)); + return_closcall1(data, cont, obj); +}} -void _apply(void *data, object cont, object args) { - Cyc_check_num_args(data, "apply", 2, args); - apply(data, cont, car(args), cadr(args)); } -void _assoc (void *data, object cont, object args) { - Cyc_check_num_args(data, "assoc ", 2, args); - return_closcall1(data, cont, assoc(data, car(args), cadr(args)));} -void _assq (void *data, object cont, object args) { - Cyc_check_num_args(data, "assq ", 2, args); - return_closcall1(data, cont, assq(data, car(args), cadr(args)));} -void _assv (void *data, object cont, object args) { - Cyc_check_num_args(data, "assv ", 2, args); - return_closcall1(data, cont, assq(data, car(args), cadr(args)));} -void _member(void *data, object cont, object args) { - Cyc_check_num_args(data, "member", 2, args); - return_closcall1(data, cont, memberp(data, car(args), cadr(args)));} -void _memq(void *data, object cont, object args) { - Cyc_check_num_args(data, "memq", 2, args); - return_closcall1(data, cont, memqp(data, car(args), cadr(args)));} -void _memv(void *data, object cont, object args) { - Cyc_check_num_args(data, "memv", 2, args); - return_closcall1(data, cont, memqp(data, car(args), cadr(args)));} -void _char_91_125integer(void *data, object cont, object args) { - Cyc_check_num_args(data, "char->integer", 1, args); - { object obj = Cyc_char2integer(car(args)); - return_closcall1(data, cont, obj);}} -void _integer_91_125char(void *data, object cont, object args) { - Cyc_check_num_args(data, "integer->char", 1, args); - return_closcall1(data, cont, Cyc_integer2char(data, car(args)));} -void _string_91_125number(void *data, object cont, object args) { - Cyc_check_num_args(data, "string->number", 1, args); - { object tail = cdr(args); - if (tail) { - Cyc_string2number2_(data, cont, 2, car(args), cadr(args)); - } else { - Cyc_string2number_(data, cont, car(args)); }}} -void _string_91length(void *data, object cont, object args) { - Cyc_check_num_args(data, "string-length", 1, args); - { object obj = Cyc_string_length(data, car(args)); - return_closcall1(data, cont, obj);}} -void _cyc_substring(void *data, object cont, object args) { - Cyc_check_num_args(data, "substring", 3, args); - Cyc_substring(data, cont, car(args), cadr(args), caddr(args));} -void _cyc_string_91set_67(void *data, object cont, object args) { - Cyc_check_num_args(data, "string-set!", 3, args); - { object s = Cyc_string_set(data, car(args), cadr(args), caddr(args)); - return_closcall1(data, cont, s); }} -void _cyc_string_91ref(void *data, object cont, object args) { - Cyc_check_num_args(data, "string-ref", 2, args); - { object c = Cyc_string_ref(data, car(args), cadr(args)); - return_closcall1(data, cont, c); }} -void _Cyc_91installation_91dir(void *data, object cont, object args) { - Cyc_check_num_args(data, "Cyc-installation-dir", 1, args); - Cyc_installation_dir(data, cont, car(args));} -void _command_91line_91arguments(void *data, object cont, object args) { - object cmdline = Cyc_command_line_arguments(data, cont); - return_closcall1(data, cont, cmdline); } -void _cyc_system(void *data, object cont, object args) { - Cyc_check_num_args(data, "system", 1, args); - { object obj = Cyc_system(car(args)); - return_closcall1(data, cont, obj);}} //void _error(void *data, object cont, object args) { // integer_type argc = Cyc_length_as_object(args); // dispatch_va(data, argc.value, dispatch_error, cont, cont, args); } -void _Cyc_91current_91exception_91handler(void *data, object cont, object args) { - object handler = Cyc_current_exception_handler(data); - return_closcall1(data, cont, handler); } -void _Cyc_91default_91exception_91handler(void *data, object cont, object args) { - // TODO: this is a quick-and-dirty implementation, may be a better way to write this - Cyc_default_exception_handler(data, 1, args, car(args)); +void _Cyc_91current_91exception_91handler(void *data, object cont, object args) +{ + object handler = Cyc_current_exception_handler(data); + return_closcall1(data, cont, handler); } -void _string_91cmp(void *data, object cont, object args) { - Cyc_check_num_args(data, "string-cmp", 2, args); - { object obj = Cyc_string_cmp(data, car(args), cadr(args)); - return_closcall1(data, cont, obj);}} -void _string_91append(void *data, object cont, object args) { + +void _Cyc_91default_91exception_91handler(void *data, object cont, object args) +{ + // TODO: this is a quick-and-dirty implementation, may be a better way to write this + Cyc_default_exception_handler(data, 1, args, car(args)); +} + +void _string_91cmp(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "string-cmp", 2, args); + { + object obj = Cyc_string_cmp(data, car(args), cadr(args)); + return_closcall1(data, cont, obj); +}} + +void _string_91append(void *data, object cont, object args) +{ + object argc = Cyc_length(data, args); + dispatch(data, obj_obj2int(argc), (function_type) dispatch_string_91append, + cont, cont, args); +} + +void _make_91vector(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "make-vector", 1, args); + { object argc = Cyc_length(data, args); - dispatch(data, obj_obj2int(argc), (function_type)dispatch_string_91append, cont, cont, args); } -void _make_91vector(void *data, object cont, object args) { - Cyc_check_num_args(data, "make-vector", 1, args); - { object argc = Cyc_length(data, args); - if (obj_obj2int(argc) >= 2) { - Cyc_make_vector(data, cont, 2, car(args), cadr(args));} - else { - Cyc_make_vector(data, cont, 2, car(args), boolean_f);}}} -void _make_91bytevector(void *data, object cont, object args) { - Cyc_check_num_args(data, "make-bytevector", 1, args); - { object argc = Cyc_length(data, args); - if (obj_obj2int(argc) >= 2) { - Cyc_make_bytevector(data, cont, 2, car(args), cadr(args));} - else { - Cyc_make_bytevector(data, cont, 1, car(args));}}} -void _vector_91ref(void *data, object cont, object args) { - Cyc_check_num_args(data, "vector-ref", 2, args); - { object ref = Cyc_vector_ref(data, car(args), cadr(args)); - return_closcall1(data, cont, ref);}} -void _vector_91set_67(void *data, object cont, object args) { - Cyc_check_num_args(data, "vector-set!", 3, args); - { object ref = Cyc_vector_set(data, car(args), cadr(args), caddr(args)); - return_closcall1(data, cont, ref);}} -void _list_91_125vector(void *data, object cont, object args) { - Cyc_check_num_args(data, "list->vector", 1, args); - Cyc_list2vector(data, cont, car(args));} -void _list_91_125string(void *data, object cont, object args) { - Cyc_check_num_args(data, "list->string", 1, args); - Cyc_list2string(data, cont, car(args));} -void _string_91_125symbol(void *data, object cont, object args) { - Cyc_check_num_args(data, "string->symbol", 1, args); - return_closcall1(data, cont, Cyc_string2symbol(data, car(args)));} -void _symbol_91_125string(void *data, object cont, object args) { - Cyc_check_num_args(data, "symbol->string", 1, args); - Cyc_symbol2string(data, cont, car(args));} -void _number_91_125string(void *data, object cont, object args) { - Cyc_check_num_args(data, "number->string", 1, args); - { object tail = cdr(args); - if (tail) { - Cyc_number2string2(data, cont, 2, car(args), cadr(args)); - } else { - Cyc_number2string2(data, cont, 1, car(args)); }}} -void _open_91input_91file(void *data, object cont, object args) { - Cyc_check_num_args(data, "open-input-file", 1, args); - { port_type p = Cyc_io_open_input_file(data, car(args)); - return_closcall1(data, cont, &p);}} -void _open_91output_91file(void *data, object cont, object args) { - Cyc_check_num_args(data, "open-output-file", 1, args); - { port_type p = Cyc_io_open_output_file(data, car(args)); - return_closcall1(data, cont, &p);}} -void _close_91port(void *data, object cont, object args) { - Cyc_check_num_args(data, "close-port", 1, args); - return_closcall1(data, cont, Cyc_io_close_port(data, car(args)));} -void _close_91input_91port(void *data, object cont, object args) { - Cyc_check_num_args(data, "close-input-port", 1, args); - return_closcall1(data, cont, Cyc_io_close_input_port(data, car(args)));} -void _close_91output_91port(void *data, object cont, object args) { - Cyc_check_num_args(data, "close-output-port", 1, args); - return_closcall1(data, cont, Cyc_io_close_output_port(data, car(args)));} -void _Cyc_91flush_91output_91port(void *data, object cont, object args) { - Cyc_check_num_args(data, "Cyc-flush-output-port", 1, args); - return_closcall1(data, cont, Cyc_io_flush_output_port(data, car(args)));} -void _file_91exists_127(void *data, object cont, object args) { - Cyc_check_num_args(data, "file-exists?", 1, args); - return_closcall1(data, cont, Cyc_io_file_exists(data, car(args)));} -void _delete_91file(void *data, object cont, object args) { - Cyc_check_num_args(data, "delete-file", 1, args); - return_closcall1(data, cont, Cyc_io_delete_file(data, car(args)));} -void _read_91char(void *data, object cont, object args) { - Cyc_check_num_args(data, "read-char", 1, args); - return_closcall1(data, cont, Cyc_io_read_char(data, cont, car(args)));} -void _peek_91char(void *data, object cont, object args) { - Cyc_check_num_args(data, "peek-char", 1, args); - return_closcall1(data, cont, Cyc_io_peek_char(data, cont, car(args)));} -void _Cyc_91read_91line(void *data, object cont, object args) { - Cyc_check_num_args(data, "Cyc-read-line", 1, args); - Cyc_io_read_line(data, cont, car(args));} -void _Cyc_91write_91char(void *data, object cont, object args) { - Cyc_check_num_args(data, "write-char", 2, args); - return_closcall1(data, cont, Cyc_write_char(data, car(args), cadr(args)));} -void _Cyc_91write(void *data, object cont, object args) { - Cyc_check_num_args(data, "write", 1, args); - { object argc = Cyc_length(data, args); - dispatch(data, obj_obj2int(argc), (function_type)dispatch_write_va, cont, cont, args); }} -void _display(void *data, object cont, object args) { - Cyc_check_num_args(data, "display", 1, args); - { object argc = Cyc_length(data, args); - dispatch(data, obj_obj2int(argc), (function_type)dispatch_display_va, cont, cont, args); }} -void _call_95cc(void *data, object cont, object args){ - Cyc_check_num_args(data, "call/cc", 1, args); - if ((boolean_f == Cyc_is_procedure(data, car(args)))) { - Cyc_invalid_type_error(data, closure1_tag, car(args)); + if (obj_obj2int(argc) >= 2) { + Cyc_make_vector(data, cont, 2, car(args), cadr(args)); + } else { + Cyc_make_vector(data, cont, 2, car(args), boolean_f); } - return_closcall2(data, __glo_call_95cc_scheme_base, cont, car(args)); + } +} + +void _make_91bytevector(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "make-bytevector", 1, args); + { + object argc = Cyc_length(data, args); + if (obj_obj2int(argc) >= 2) { + Cyc_make_bytevector(data, cont, 2, car(args), cadr(args)); + } else { + Cyc_make_bytevector(data, cont, 1, car(args)); + } + } +} + +void _vector_91ref(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "vector-ref", 2, args); + { + object ref = Cyc_vector_ref(data, car(args), cadr(args)); + return_closcall1(data, cont, ref); +}} + +void _vector_91set_67(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "vector-set!", 3, args); + { + object ref = Cyc_vector_set(data, car(args), cadr(args), caddr(args)); + return_closcall1(data, cont, ref); +}} + +void _list_91_125vector(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "list->vector", 1, args); + Cyc_list2vector(data, cont, car(args)); +} + +void _list_91_125string(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "list->string", 1, args); + Cyc_list2string(data, cont, car(args)); +} + +void _string_91_125symbol(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "string->symbol", 1, args); + return_closcall1(data, cont, Cyc_string2symbol(data, car(args))); +} + +void _symbol_91_125string(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "symbol->string", 1, args); + Cyc_symbol2string(data, cont, car(args)); +} + +void _number_91_125string(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "number->string", 1, args); + { + object tail = cdr(args); + if (tail) { + Cyc_number2string2(data, cont, 2, car(args), cadr(args)); + } else { + Cyc_number2string2(data, cont, 1, car(args)); + } + } +} + +void _open_91input_91file(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "open-input-file", 1, args); + { + port_type p = Cyc_io_open_input_file(data, car(args)); + return_closcall1(data, cont, &p); +}} + +void _open_91output_91file(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "open-output-file", 1, args); + { + port_type p = Cyc_io_open_output_file(data, car(args)); + return_closcall1(data, cont, &p); +}} + +void _close_91port(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "close-port", 1, args); + return_closcall1(data, cont, Cyc_io_close_port(data, car(args))); +} + +void _close_91input_91port(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "close-input-port", 1, args); + return_closcall1(data, cont, Cyc_io_close_input_port(data, car(args))); +} + +void _close_91output_91port(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "close-output-port", 1, args); + return_closcall1(data, cont, Cyc_io_close_output_port(data, car(args))); +} + +void _Cyc_91flush_91output_91port(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "Cyc-flush-output-port", 1, args); + return_closcall1(data, cont, Cyc_io_flush_output_port(data, car(args))); +} + +void _file_91exists_127(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "file-exists?", 1, args); + return_closcall1(data, cont, Cyc_io_file_exists(data, car(args))); +} + +void _delete_91file(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "delete-file", 1, args); + return_closcall1(data, cont, Cyc_io_delete_file(data, car(args))); +} + +void _read_91char(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "read-char", 1, args); + return_closcall1(data, cont, Cyc_io_read_char(data, cont, car(args))); +} + +void _peek_91char(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "peek-char", 1, args); + return_closcall1(data, cont, Cyc_io_peek_char(data, cont, car(args))); +} + +void _Cyc_91read_91line(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "Cyc-read-line", 1, args); + Cyc_io_read_line(data, cont, car(args)); +} + +void _Cyc_91write_91char(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "write-char", 2, args); + return_closcall1(data, cont, Cyc_write_char(data, car(args), cadr(args))); +} + +void _Cyc_91write(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "write", 1, args); + { + object argc = Cyc_length(data, args); + dispatch(data, obj_obj2int(argc), (function_type) dispatch_write_va, cont, + cont, args); +}} + +void _display(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "display", 1, args); + { + object argc = Cyc_length(data, args); + dispatch(data, obj_obj2int(argc), (function_type) dispatch_display_va, cont, + cont, args); +}} + +void _call_95cc(void *data, object cont, object args) +{ + Cyc_check_num_args(data, "call/cc", 1, args); + if ((boolean_f == Cyc_is_procedure(data, car(args)))) { + Cyc_invalid_type_error(data, closure1_tag, car(args)); + } + return_closcall2(data, __glo_call_95cc_scheme_base, cont, car(args)); } /* @@ -2584,136 +3209,142 @@ void _call_95cc(void *data, object cont, object args){ * @param func - Function to execute * @param args - A list of arguments to the function */ -object apply(void *data, object cont, object func, object args){ +object apply(void *data, object cont, object func, object args) +{ object count; //printf("DEBUG apply: "); //Cyc_display(args); //printf("\n"); if (!is_object_type(func)) { - Cyc_rt_raise2(data, "Call of non-procedure: ", func); + Cyc_rt_raise2(data, "Call of non-procedure: ", func); } - // Causes problems... //Cyc_check_pair_or_null(args); - switch(type_of(func)) { - case primitive_tag: - // TODO: should probably check arg counts and error out if needed - ((primitive_type *)func)->fn(data, cont, args); - break; - case macro_tag: - case closure0_tag: - case closure1_tag: - case closureN_tag: - if (func == Cyc_glo_call_cc) { - make_pair(c, cont, args); + switch (type_of(func)) { + case primitive_tag: + // TODO: should probably check arg counts and error out if needed + ((primitive_type *) func)->fn(data, cont, args); + break; + case macro_tag: + case closure0_tag: + case closure1_tag: + case closureN_tag: + if (func == Cyc_glo_call_cc) { + make_pair(c, cont, args); //Cyc_display(args, stderr); // args = &c; //Cyc_display(&c, stderr); - count = Cyc_length(data, args); - Cyc_check_num_args(data, "", 1, args); - dispatch(data, obj_obj2int(count), ((closure)func)->fn, func, cont, args); - } count = Cyc_length(data, args); - // TODO: validate number of args provided: - Cyc_check_num_args(data, "", ((closure)func)->num_args, args); // TODO: could be more efficient, eg: cyc_length(args) is called twice. - dispatch(data, obj_obj2int(count), ((closure)func)->fn, func, cont, args); - break; + Cyc_check_num_args(data, "", 1, args); + dispatch(data, obj_obj2int(count), ((closure) func)->fn, func, cont, + args); + } + count = Cyc_length(data, args); + // TODO: validate number of args provided: + Cyc_check_num_args(data, "", ((closure) func)->num_args, args); // TODO: could be more efficient, eg: cyc_length(args) is called twice. + dispatch(data, obj_obj2int(count), ((closure) func)->fn, func, cont, args); + break; - case pair_tag: + case pair_tag: { // TODO: should add more error checking here, make sure car(func) is a symbol object fobj = car(func); if (!is_object_type(fobj) || type_of(fobj) != symbol_tag) { - Cyc_rt_raise2(data, "Call of non-procedure: ", func); - } else if (strncmp(((symbol)fobj)->pname, "lambda", 7) == 0) { - make_pair(c, func, args); - //printf("JAE DEBUG, sending to eval: "); - //Cyc_display(&c, stderr); - ((closure)Cyc_glo_eval_from_c)->fn(data, 2, Cyc_glo_eval_from_c, cont, &c, NULL); + Cyc_rt_raise2(data, "Call of non-procedure: ", func); + } else if (strncmp(((symbol) fobj)->pname, "lambda", 7) == 0) { + make_pair(c, func, args); + //printf("JAE DEBUG, sending to eval: "); + //Cyc_display(&c, stderr); + ((closure) Cyc_glo_eval_from_c)->fn(data, 2, Cyc_glo_eval_from_c, cont, + &c, NULL); - // TODO: would be better to compare directly against symbols here, - // but need a way of looking them up ahead of time. - // maybe a libinit() or such is required. - } else if (strncmp(((symbol)fobj)->pname, "primitive", 10) == 0) { - make_pair(c, cadr(func), args); - ((closure)Cyc_glo_eval_from_c)->fn(data, 3, Cyc_glo_eval_from_c, cont, &c, NULL); - } else if (strncmp(((symbol)fobj)->pname, "procedure", 10) == 0) { - make_pair(c, func, args); - ((closure)Cyc_glo_eval_from_c)->fn(data, 3, Cyc_glo_eval_from_c, cont, &c, NULL); + // TODO: would be better to compare directly against symbols here, + // but need a way of looking them up ahead of time. + // maybe a libinit() or such is required. + } else if (strncmp(((symbol) fobj)->pname, "primitive", 10) == 0) { + make_pair(c, cadr(func), args); + ((closure) Cyc_glo_eval_from_c)->fn(data, 3, Cyc_glo_eval_from_c, cont, + &c, NULL); + } else if (strncmp(((symbol) fobj)->pname, "procedure", 10) == 0) { + make_pair(c, func, args); + ((closure) Cyc_glo_eval_from_c)->fn(data, 3, Cyc_glo_eval_from_c, cont, + &c, NULL); } else { - make_pair(c, func, args); - Cyc_rt_raise2(data, "Unable to evaluate: ", &c); + make_pair(c, func, args); + Cyc_rt_raise2(data, "Unable to evaluate: ", &c); } } - - default: - printf("Invalid object type %d\n", type_of(func)); - exit(1); + + default: + printf("Invalid object type %d\n", type_of(func)); + exit(1); } - return NULL; // Never reached + return NULL; // Never reached } // Version of apply meant to be called from within compiled code -void Cyc_apply(void *data, int argc, closure cont, object prim, ...){ - va_list ap; - object tmp; - int i; - list args = alloca(sizeof(pair_type) * argc); - - va_start(ap, prim); +void Cyc_apply(void *data, int argc, closure cont, object prim, ...) +{ + va_list ap; + object tmp; + int i; + list args = alloca(sizeof(pair_type) * argc); - for (i = 0; i < argc; i++) { - tmp = va_arg(ap, object); - args[i].hdr.mark = gc_color_red; - args[i].hdr.grayed = 0; - args[i].tag = pair_tag; - args[i].pair_car = tmp; - args[i].pair_cdr = (i == (argc-1)) ? NULL : &args[i + 1]; - } - //printf("DEBUG applying primitive to "); - //Cyc_display((object)&args[0]); - //printf("\n"); + va_start(ap, prim); - va_end(ap); - apply(data, cont, prim, - (argc > 0) - ? (object)&args[0] - : NULL); + for (i = 0; i < argc; i++) { + tmp = va_arg(ap, object); + args[i].hdr.mark = gc_color_red; + args[i].hdr.grayed = 0; + args[i].tag = pair_tag; + args[i].pair_car = tmp; + args[i].pair_cdr = (i == (argc - 1)) ? NULL : &args[i + 1]; + } + //printf("DEBUG applying primitive to "); + //Cyc_display((object)&args[0]); + //printf("\n"); + + va_end(ap); + apply(data, cont, prim, (argc > 0) + ? (object) & args[0] + : NULL); } + // END apply /* Extract args from given array, assuming cont is the first arg in buf */ -void Cyc_apply_from_buf(void *data, int argc, object prim, object *buf) { - list args; - object cont; - int i; +void Cyc_apply_from_buf(void *data, int argc, object prim, object * buf) +{ + list args; + object cont; + int i; - if (argc == 0) { - printf("Internal error in Cyc_apply_from_buf, argc is 0\n"); - exit(1); - } + if (argc == 0) { + printf("Internal error in Cyc_apply_from_buf, argc is 0\n"); + exit(1); + } - args = alloca(sizeof(pair_type) * (argc - 1)); - cont = buf[0]; - - for (i = 1; i < argc; i++) { - args[i - 1].hdr.mark = gc_color_red; - args[i - 1].hdr.grayed = 0; - args[i - 1].tag = pair_tag; - args[i - 1].pair_car = buf[i]; - args[i - 1].pair_cdr = (i == (argc-1)) ? NULL : &args[i]; - } + args = alloca(sizeof(pair_type) * (argc - 1)); + cont = buf[0]; - apply(data, cont, prim, (object)&args[0]); + for (i = 1; i < argc; i++) { + args[i - 1].hdr.mark = gc_color_red; + args[i - 1].hdr.grayed = 0; + args[i - 1].tag = pair_tag; + args[i - 1].pair_car = buf[i]; + args[i - 1].pair_cdr = (i == (argc - 1)) ? NULL : &args[i]; + } + + apply(data, cont, prim, (object) & args[0]); } /** * Start a thread's trampoline */ -void Cyc_start_trampoline(gc_thread_data *thd) +void Cyc_start_trampoline(gc_thread_data * thd) { // Tank, load the jump program setjmp(*(thd->jmp_start)); @@ -2725,10 +3356,11 @@ void Cyc_start_trampoline(gc_thread_data *thd) if (type_of(thd->gc_cont) == pair_tag || prim(thd->gc_cont)) { Cyc_apply_from_buf(thd, thd->gc_num_args, thd->gc_cont, thd->gc_args); } else { - do_dispatch(thd, thd->gc_num_args, ((closure)(thd->gc_cont))->fn, thd->gc_cont, thd->gc_args); + do_dispatch(thd, thd->gc_num_args, ((closure) (thd->gc_cont))->fn, + thd->gc_cont, thd->gc_args); } - printf("Internal error: should never have reached this line\n"); + printf("Internal error: should never have reached this line\n"); exit(0); } @@ -2741,24 +3373,25 @@ void gc_mark_globals() fprintf(stderr, "Cyc_global_variables %p\n", Cyc_global_variables); #endif // Mark global variables - gc_mark_black(Cyc_global_variables); // Internal global used by the runtime - // Marking it ensures all glos are marked + gc_mark_black(Cyc_global_variables); // Internal global used by the runtime + // Marking it ensures all glos are marked { list l = global_table; - for(; l != NULL; l = cdr(l)){ - cvar_type *c = (cvar_type *)car(l); - object glo = *(c->pvar); - if (glo != NULL) { + for (; l != NULL; l = cdr(l)) { + cvar_type *c = (cvar_type *) car(l); + object glo = *(c->pvar); + if (glo != NULL) { #if GC_DEBUG_VERBOSE - fprintf(stderr, "global pvar %p\n", glo); + fprintf(stderr, "global pvar %p\n", glo); #endif - gc_mark_black(glo); // Mark actual object the global points to - } + gc_mark_black(glo); // Mark actual object the global points to + } } } } -char *gc_fixup_moved_obj(gc_thread_data *thd, int *alloci, char *obj, object hp) +char *gc_fixup_moved_obj(gc_thread_data * thd, int *alloci, char *obj, + object hp) { int acquired_lock = 0; if (grayed(obj)) { @@ -2768,11 +3401,10 @@ char *gc_fixup_moved_obj(gc_thread_data *thd, int *alloci, char *obj, object hp) acquired_lock = 1; } gc_mark_gray2(thd, hp); - if (acquired_lock){ + if (acquired_lock) { pthread_mutex_unlock(&(thd->lock)); } } - // hp ==> new heap object, point to it from old stack object forward(obj) = hp; type_of(obj) = forward_tag; @@ -2782,78 +3414,98 @@ char *gc_fixup_moved_obj(gc_thread_data *thd, int *alloci, char *obj, object hp) return (char *)hp; } -char *gc_move(char *obj, gc_thread_data *thd, int *alloci, int *heap_grown) { - if (!is_object_type(obj)) return obj; - switch(type_of(obj)){ - case pair_tag: { +char *gc_move(char *obj, gc_thread_data * thd, int *alloci, int *heap_grown) +{ + if (!is_object_type(obj)) + return obj; + switch (type_of(obj)) { + case pair_tag:{ list hp = gc_alloc(Cyc_heap, sizeof(pair_type), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case macro_tag: { - macro_type *hp = gc_alloc(Cyc_heap, sizeof(macro_type), obj, thd, heap_grown); + case macro_tag:{ + macro_type *hp = + gc_alloc(Cyc_heap, sizeof(macro_type), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case closure0_tag: { - closure0_type *hp = gc_alloc(Cyc_heap, sizeof(closure0_type), obj, thd, heap_grown); + case closure0_tag:{ + closure0_type *hp = + gc_alloc(Cyc_heap, sizeof(closure0_type), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case closure1_tag: { - closure1_type *hp = gc_alloc(Cyc_heap, sizeof(closure1_type), obj, thd, heap_grown); + case closure1_tag:{ + closure1_type *hp = + gc_alloc(Cyc_heap, sizeof(closure1_type), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case closureN_tag: { - closureN_type *hp = gc_alloc(Cyc_heap, - sizeof(closureN_type) + sizeof(object) * (((closureN) obj)->num_elements), - obj, thd, heap_grown); + case closureN_tag:{ + closureN_type *hp = gc_alloc(Cyc_heap, + sizeof(closureN_type) + + sizeof(object) * + (((closureN) obj)->num_elements), + obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case vector_tag: { - vector_type *hp = gc_alloc(Cyc_heap, - sizeof(vector_type) + sizeof(object) * (((vector) obj)->num_elements), - obj, thd, heap_grown); + case vector_tag:{ + vector_type *hp = gc_alloc(Cyc_heap, + sizeof(vector_type) + + sizeof(object) * + (((vector) obj)->num_elements), + obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case bytevector_tag: { - bytevector_type *hp = gc_alloc(Cyc_heap, - sizeof(bytevector_type) + sizeof(char) * (((bytevector) obj)->len), - obj, thd, heap_grown); + case bytevector_tag:{ + bytevector_type *hp = gc_alloc(Cyc_heap, + sizeof(bytevector_type) + + sizeof(char) * (((bytevector) obj)->len), + obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case string_tag: { - string_type *hp = gc_alloc(Cyc_heap, - sizeof(string_type) + ((string_len(obj) + 1)), - obj, thd, heap_grown); + case string_tag:{ + string_type *hp = gc_alloc(Cyc_heap, + sizeof(string_type) + ((string_len(obj) + 1)), + obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case integer_tag: { - integer_type *hp = gc_alloc(Cyc_heap, sizeof(integer_type), obj, thd, heap_grown); + case integer_tag:{ + integer_type *hp = + gc_alloc(Cyc_heap, sizeof(integer_type), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case double_tag: { - double_type *hp = gc_alloc(Cyc_heap, sizeof(double_type), obj, thd, heap_grown); + case double_tag:{ + double_type *hp = + gc_alloc(Cyc_heap, sizeof(double_type), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case port_tag: { - port_type *hp = gc_alloc(Cyc_heap, sizeof(port_type), obj, thd, heap_grown); + case port_tag:{ + port_type *hp = + gc_alloc(Cyc_heap, sizeof(port_type), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case cvar_tag: { - cvar_type *hp = gc_alloc(Cyc_heap, sizeof(cvar_type), obj, thd, heap_grown); + case cvar_tag:{ + cvar_type *hp = + gc_alloc(Cyc_heap, sizeof(cvar_type), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case c_opaque_tag: { - c_opaque_type *hp = gc_alloc(Cyc_heap, sizeof(c_opaque_type), obj, thd, heap_grown); + case c_opaque_tag:{ + c_opaque_type *hp = + gc_alloc(Cyc_heap, sizeof(c_opaque_type), obj, thd, heap_grown); return gc_fixup_moved_obj(thd, alloci, obj, hp); } - case forward_tag: - return (char *)forward(obj); - case eof_tag: break; - case primitive_tag: break; - case boolean_tag: break; - case symbol_tag: break; // JAE TODO: raise an error here? Should not be possible in real code, though (IE, without GC DEBUG flag) - default: - fprintf(stderr, "gc_move: bad tag obj=%p obj.tag=%d\n",(object) obj, type_of(obj)); - exit(1); + case forward_tag: + return (char *)forward(obj); + case eof_tag: + break; + case primitive_tag: + break; + case boolean_tag: + break; + case symbol_tag: + break; // JAE TODO: raise an error here? Should not be possible in real code, though (IE, without GC DEBUG flag) + default: + fprintf(stderr, "gc_move: bad tag obj=%p obj.tag=%d\n", (object) obj, + type_of(obj)); + exit(1); } return (char *)obj; } @@ -2866,16 +3518,18 @@ char *gc_move(char *obj, gc_thread_data *thd, int *alloci, int *heap_grown) { } \ } -object Cyc_trigger_minor_gc(void *data, object cont) { - gc_thread_data* thd = (gc_thread_data *)data; +object Cyc_trigger_minor_gc(void *data, object cont) +{ + gc_thread_data *thd = (gc_thread_data *) data; thd->gc_args[0] = boolean_t; GC(data, cont, thd->gc_args, 1); return NULL; } // Do a minor GC -int gc_minor(void *data, object low_limit, object high_limit, closure cont, object *args, int num_args) -{ +int gc_minor(void *data, object low_limit, object high_limit, closure cont, + object * args, int num_args) +{ object temp; int i; int scani = 0, alloci = 0; @@ -2893,76 +3547,76 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje } gc_move2heap(cont); - ((gc_thread_data *)data)->gc_cont = cont; - ((gc_thread_data *)data)->gc_num_args = num_args; + ((gc_thread_data *) data)->gc_cont = cont; + ((gc_thread_data *) data)->gc_num_args = num_args; - for (i = 0; i < num_args; i++){ + for (i = 0; i < num_args; i++) { gc_move2heap(args[i]); - ((gc_thread_data *)data)->gc_args[i] = args[i]; + ((gc_thread_data *) data)->gc_args[i] = args[i]; } // Transport exception stack - gc_move2heap(((gc_thread_data *)data)->exception_handler_stack); + gc_move2heap(((gc_thread_data *) data)->exception_handler_stack); // Transport mutations { list l; - for (l = ((gc_thread_data *)data)->mutations; l != NULL; l = cdr(l)) { + for (l = ((gc_thread_data *) data)->mutations; l != NULL; l = cdr(l)) { object o = car(l); if (is_value_type(o)) { - // Can happen if a vector element was already - // moved and we found an index. Just ignore it + // Can happen if a vector element was already + // moved and we found an index. Just ignore it } else if (type_of(o) == pair_tag) { - gc_move2heap(car(o)); - gc_move2heap(cdr(o)); + gc_move2heap(car(o)); + gc_move2heap(cdr(o)); } else if (type_of(o) == vector_tag) { - int i; - object idx; - // For vectors, index is encoded as the next mutation - l = cdr(l); - idx = car(l); - i = obj_obj2int(idx); - gc_move2heap(((vector)o)->elements[i]); + int i; + object idx; + // For vectors, index is encoded as the next mutation + l = cdr(l); + idx = car(l); + i = obj_obj2int(idx); + gc_move2heap(((vector) o)->elements[i]); } else if (type_of(o) == forward_tag) { - // Already transported, skip + // Already transported, skip } else { - printf("Unexpected type %d transporting mutation\n", type_of(o)); - exit(1); + printf("Unexpected type %d transporting mutation\n", type_of(o)); + exit(1); } } } - clear_mutations(data); // Reset for next time + clear_mutations(data); // Reset for next time // Transport globals - gc_move2heap(Cyc_global_variables); // Internal global used by the runtime + gc_move2heap(Cyc_global_variables); // Internal global used by the runtime { list l = global_table; - for(; l != NULL; l = cdr(l)){ - cvar_type *c = (cvar_type *)car(l); + for (; l != NULL; l = cdr(l)) { + cvar_type *c = (cvar_type *) car(l); gc_move2heap(*(c->pvar)); // Transport underlying global, not the pvar } } // Check allocated objects, moving additional objects as needed while (scani < alloci) { - object obj = ((gc_thread_data *)data)->moveBuf[scani]; - switch(type_of(obj)) { - case pair_tag: { + object obj = ((gc_thread_data *) data)->moveBuf[scani]; + switch (type_of(obj)) { + case pair_tag:{ gc_move2heap(car(obj)); gc_move2heap(cdr(obj)); break; } - case closure1_tag: - gc_move2heap(((closure1) obj)->element); - break; - case closureN_tag: { + case closure1_tag: + gc_move2heap(((closure1) obj)->element); + break; + case closureN_tag:{ int i, n = ((closureN) obj)->num_elements; for (i = 0; i < n; i++) { gc_move2heap(((closureN) obj)->elements[i]); } break; } - case vector_tag: { + case vector_tag:{ int i, n = ((vector) obj)->num_elements; for (i = 0; i < n; i++) { gc_move2heap(((vector) obj)->elements[i]); @@ -2970,25 +3624,26 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje break; } // No child objects to move - case closure0_tag: - case macro_tag: - case bytevector_tag: - case string_tag: - case integer_tag: - case double_tag: - case port_tag: - case cvar_tag: - case c_opaque_tag: - break; + case closure0_tag: + case macro_tag: + case bytevector_tag: + case string_tag: + case integer_tag: + case double_tag: + case port_tag: + case cvar_tag: + case c_opaque_tag: + break; // These types are not heap-allocated - case eof_tag: - case primitive_tag: - case symbol_tag: - case boolean_tag: - default: - fprintf(stderr, - "GC: unexpected object type %d for object %p\n", type_of(obj), obj); - exit(1); + case eof_tag: + case primitive_tag: + case symbol_tag: + case boolean_tag: + default: + fprintf(stderr, + "GC: unexpected object type %d for object %p\n", type_of(obj), + obj); + exit(1); } scani++; } @@ -3003,31 +3658,33 @@ int gc_minor(void *data, object low_limit, object high_limit, closure cont, obje * This function runs the core GC algorithm, cooperates with * the collector, and then calls its continuation. */ -void GC(void *data, closure cont, object *args, int num_args) -{ +void GC(void *data, closure cont, object * args, int num_args) +{ char tmp; - object low_limit = &tmp; // This is one end of the stack... - object high_limit = ((gc_thread_data *)data)->stack_start; + object low_limit = &tmp; // This is one end of the stack... + object high_limit = ((gc_thread_data *) data)->stack_start; int alloci = gc_minor(data, low_limit, high_limit, cont, args, num_args); // Cooperate with the collector thread - gc_mut_cooperate((gc_thread_data *)data, alloci); + gc_mut_cooperate((gc_thread_data *) data, alloci); // Let it all go, Neo... - longjmp(*(((gc_thread_data *)data)->jmp_start), 1); + longjmp(*(((gc_thread_data *) data)->jmp_start), 1); } /** * Receive a list of arguments and apply them to the given function */ -void dispatch(void *data, int argc, function_type func, object clo, object cont, object args) { - object b[argc + 1]; // OK to do this? Is this portable? - int i; +void dispatch(void *data, int argc, function_type func, object clo, object cont, + object args) +{ + object b[argc + 1]; // OK to do this? Is this portable? + int i; argc++; b[0] = cont; - for (i = 1; i < argc; i++){ - b[i] = car(args); - args = cdr(args); - } + for (i = 1; i < argc; i++) { + b[i] = car(args); + args = cdr(args); + } do_dispatch(data, argc, func, clo, b); } @@ -3035,156 +3692,276 @@ void dispatch(void *data, int argc, function_type func, object clo, object cont, /** * Same as above but for a varargs C function */ -void dispatch_va(void *data, int argc, function_type_va func, object clo, object cont, object args) { - object b[argc + 1]; // OK to do this? Is this portable? - int i; - +void dispatch_va(void *data, int argc, function_type_va func, object clo, + object cont, object args) +{ + object b[argc + 1]; // OK to do this? Is this portable? + int i; + argc++; b[0] = cont; - for (i = 1; i < argc; i++){ - b[i] = car(args); - args = cdr(args); - } + for (i = 1; i < argc; i++) { + b[i] = car(args); + args = cdr(args); + } - do_dispatch(data, argc, (function_type)func, clo, b); + do_dispatch(data, argc, (function_type) func, clo, b); } -static primitive_type Cyc_91global_91vars_primitive = {{0}, primitive_tag, "Cyc-global-vars", &_Cyc_91global_91vars}; -static primitive_type Cyc_91get_91cvar_primitive = {{0}, primitive_tag, "Cyc-get-cvar", &_Cyc_91get_91cvar}; -static primitive_type Cyc_91set_91cvar_67_primitive = {{0}, primitive_tag, "Cyc-set-cvar!", &_Cyc_91set_91cvar_67}; -static primitive_type Cyc_91cvar_127_primitive = {{0}, primitive_tag, "Cyc-cvar?", &_Cyc_91cvar_127}; -static primitive_type Cyc_91has_91cycle_127_primitive = {{0}, primitive_tag, "Cyc-has-cycle?", &_Cyc_91has_91cycle_127}; -static primitive_type Cyc_91spawn_91thread_67_primitive = {{0}, primitive_tag, "Cyc-spawn-thread!", &_Cyc_91spawn_91thread_67}; -static primitive_type Cyc_91end_91thread_67_primitive = {{0}, primitive_tag, "Cyc-end-thread!", &_Cyc_91end_91thread_67}; -static primitive_type _87_primitive = {{0}, primitive_tag, "+", &__87}; -static primitive_type _91_primitive = {{0}, primitive_tag, "-", &__91}; -static primitive_type _85_primitive = {{0}, primitive_tag, "*", &__85}; -static primitive_type _95_primitive = {{0}, primitive_tag, "/", &__95}; -static primitive_type _123_primitive = {{0}, primitive_tag, "=", &__123}; -static primitive_type _125_primitive = {{0}, primitive_tag, ">", &__125}; -static primitive_type _121_primitive = {{0}, primitive_tag, "<", &__121}; -static primitive_type _125_123_primitive = {{0}, primitive_tag, ">=", &__125_123}; -static primitive_type _121_123_primitive = {{0}, primitive_tag, "<=", &__121_123}; -static primitive_type apply_primitive = {{0}, primitive_tag, "apply", &_apply}; -static primitive_type _75halt_primitive = {{0}, primitive_tag, "%halt", &__75halt}; -static primitive_type exit_primitive = {{0}, primitive_tag, "exit", &_cyc_exit}; -static primitive_type Cyc_91current_91exception_91handler_primitive = {{0}, primitive_tag, "Cyc_current_exception_handler", &_Cyc_91current_91exception_91handler}; -static primitive_type Cyc_91default_91exception_91handler_primitive = {{0}, primitive_tag, "Cyc_default_exception_handler", &_Cyc_91default_91exception_91handler}; -static primitive_type cons_primitive = {{0}, primitive_tag, "cons", &_cons}; -static primitive_type cell_91get_primitive = {{0}, primitive_tag, "cell-get", &_cell_91get}; -static primitive_type set_91global_67_primitive = {{0}, primitive_tag, "set-global!", &_set_91global_67}; -static primitive_type set_91cell_67_primitive = {{0}, primitive_tag, "set-cell!", &_set_91cell_67}; -static primitive_type cell_primitive = {{0}, primitive_tag, "cell", &_cell}; -static primitive_type eq_127_primitive = {{0}, primitive_tag, "eq?", &_eq_127}; -static primitive_type eqv_127_primitive = {{0}, primitive_tag, "eqv?", &_eqv_127}; -static primitive_type equal_127_primitive = {{0}, primitive_tag, "equal?", &_equal_127}; -static primitive_type assoc_primitive = {{0}, primitive_tag, "assoc", &_assoc}; -static primitive_type assq_primitive = {{0}, primitive_tag, "assq", &_assq}; -static primitive_type assv_primitive = {{0}, primitive_tag, "assv", &_assv}; -static primitive_type member_primitive = {{0}, primitive_tag, "member", &_member}; -static primitive_type memq_primitive = {{0}, primitive_tag, "memq", &_memq}; -static primitive_type memv_primitive = {{0}, primitive_tag, "memv", &_memv}; -static primitive_type length_primitive = {{0}, primitive_tag, "length", &_length}; -static primitive_type bytevector_91length_primitive = {{0}, primitive_tag, "bytevector-length", &_bytevector_91length}; -static primitive_type vector_91length_primitive = {{0}, primitive_tag, "vector-length", &_vector_91length}; -static primitive_type set_91car_67_primitive = {{0}, primitive_tag, "set-car!", &_set_91car_67}; -static primitive_type set_91cdr_67_primitive = {{0}, primitive_tag, "set-cdr!", &_set_91cdr_67}; -static primitive_type car_primitive = {{0}, primitive_tag, "car", &_car}; -static primitive_type cdr_primitive = {{0}, primitive_tag, "cdr", &_cdr}; -static primitive_type caar_primitive = {{0}, primitive_tag, "caar", &_caar}; -static primitive_type cadr_primitive = {{0}, primitive_tag, "cadr", &_cadr}; -static primitive_type cdar_primitive = {{0}, primitive_tag, "cdar", &_cdar}; -static primitive_type cddr_primitive = {{0}, primitive_tag, "cddr", &_cddr}; -static primitive_type caaar_primitive = {{0}, primitive_tag, "caaar", &_caaar}; -static primitive_type caadr_primitive = {{0}, primitive_tag, "caadr", &_caadr}; -static primitive_type cadar_primitive = {{0}, primitive_tag, "cadar", &_cadar}; -static primitive_type caddr_primitive = {{0}, primitive_tag, "caddr", &_caddr}; -static primitive_type cdaar_primitive = {{0}, primitive_tag, "cdaar", &_cdaar}; -static primitive_type cdadr_primitive = {{0}, primitive_tag, "cdadr", &_cdadr}; -static primitive_type cddar_primitive = {{0}, primitive_tag, "cddar", &_cddar}; -static primitive_type cdddr_primitive = {{0}, primitive_tag, "cdddr", &_cdddr}; -static primitive_type caaaar_primitive = {{0}, primitive_tag, "caaaar", &_caaaar}; -static primitive_type caaadr_primitive = {{0}, primitive_tag, "caaadr", &_caaadr}; -static primitive_type caadar_primitive = {{0}, primitive_tag, "caadar", &_caadar}; -static primitive_type caaddr_primitive = {{0}, primitive_tag, "caaddr", &_caaddr}; -static primitive_type cadaar_primitive = {{0}, primitive_tag, "cadaar", &_cadaar}; -static primitive_type cadadr_primitive = {{0}, primitive_tag, "cadadr", &_cadadr}; -static primitive_type caddar_primitive = {{0}, primitive_tag, "caddar", &_caddar}; -static primitive_type cadddr_primitive = {{0}, primitive_tag, "cadddr", &_cadddr}; -static primitive_type cdaaar_primitive = {{0}, primitive_tag, "cdaaar", &_cdaaar}; -static primitive_type cdaadr_primitive = {{0}, primitive_tag, "cdaadr", &_cdaadr}; -static primitive_type cdadar_primitive = {{0}, primitive_tag, "cdadar", &_cdadar}; -static primitive_type cdaddr_primitive = {{0}, primitive_tag, "cdaddr", &_cdaddr}; -static primitive_type cddaar_primitive = {{0}, primitive_tag, "cddaar", &_cddaar}; -static primitive_type cddadr_primitive = {{0}, primitive_tag, "cddadr", &_cddadr}; -static primitive_type cdddar_primitive = {{0}, primitive_tag, "cdddar", &_cdddar}; -static primitive_type cddddr_primitive = {{0}, primitive_tag, "cddddr", &_cddddr}; -static primitive_type char_91_125integer_primitive = {{0}, primitive_tag, "char->integer", &_char_91_125integer}; -static primitive_type integer_91_125char_primitive = {{0}, primitive_tag, "integer->char", &_integer_91_125char}; -static primitive_type string_91_125number_primitive = {{0}, primitive_tag, "string->number", &_string_91_125number}; -static primitive_type string_91length_primitive = {{0}, primitive_tag, "string-length", &_string_91length}; -static primitive_type substring_primitive = {{0}, primitive_tag, "substring", &_cyc_substring}; -static primitive_type string_91ref_primitive = {{0}, primitive_tag, "string-ref", &_cyc_string_91ref}; -static primitive_type string_91set_67_primitive = {{0}, primitive_tag, "string-set!", &_cyc_string_91set_67}; -static primitive_type Cyc_91installation_91dir_primitive = {{0}, primitive_tag, "Cyc-installation-dir", &_Cyc_91installation_91dir}; -static primitive_type command_91line_91arguments_primitive = {{0}, primitive_tag, "command-line-arguments", &_command_91line_91arguments}; -static primitive_type system_primitive = {{0}, primitive_tag, "system", &_cyc_system}; -static primitive_type string_91cmp_primitive = {{0}, primitive_tag, "string-cmp", &_string_91cmp}; -static primitive_type string_91append_primitive = {{0}, primitive_tag, "string-append", &_string_91append}; -static primitive_type list_91_125string_primitive = {{0}, primitive_tag, "list->string", &_list_91_125string}; -static primitive_type string_91_125symbol_primitive = {{0}, primitive_tag, "string->symbol", &_string_91_125symbol}; -static primitive_type symbol_91_125string_primitive = {{0}, primitive_tag, "symbol->string", &_symbol_91_125string}; -static primitive_type number_91_125string_primitive = {{0}, primitive_tag, "number->string", &_number_91_125string}; -static primitive_type list_91_125vector_primitive = {{0}, primitive_tag, "list-vector", &_list_91_125vector}; -static primitive_type make_91bytevector_primitive = {{0}, primitive_tag, "make-bytevector", &_make_91bytevector}; +static primitive_type Cyc_91global_91vars_primitive = + { {0}, primitive_tag, "Cyc-global-vars", &_Cyc_91global_91vars }; +static primitive_type Cyc_91get_91cvar_primitive = + { {0}, primitive_tag, "Cyc-get-cvar", &_Cyc_91get_91cvar }; +static primitive_type Cyc_91set_91cvar_67_primitive = + { {0}, primitive_tag, "Cyc-set-cvar!", &_Cyc_91set_91cvar_67 }; +static primitive_type Cyc_91cvar_127_primitive = + { {0}, primitive_tag, "Cyc-cvar?", &_Cyc_91cvar_127 }; +static primitive_type Cyc_91has_91cycle_127_primitive = + { {0}, primitive_tag, "Cyc-has-cycle?", &_Cyc_91has_91cycle_127 }; +static primitive_type Cyc_91spawn_91thread_67_primitive = + { {0}, primitive_tag, "Cyc-spawn-thread!", &_Cyc_91spawn_91thread_67 }; +static primitive_type Cyc_91end_91thread_67_primitive = + { {0}, primitive_tag, "Cyc-end-thread!", &_Cyc_91end_91thread_67 }; +static primitive_type _87_primitive = { {0}, primitive_tag, "+", &__87 }; +static primitive_type _91_primitive = { {0}, primitive_tag, "-", &__91 }; +static primitive_type _85_primitive = { {0}, primitive_tag, "*", &__85 }; +static primitive_type _95_primitive = { {0}, primitive_tag, "/", &__95 }; +static primitive_type _123_primitive = { {0}, primitive_tag, "=", &__123 }; +static primitive_type _125_primitive = { {0}, primitive_tag, ">", &__125 }; +static primitive_type _121_primitive = { {0}, primitive_tag, "<", &__121 }; +static primitive_type _125_123_primitive = + { {0}, primitive_tag, ">=", &__125_123 }; +static primitive_type _121_123_primitive = + { {0}, primitive_tag, "<=", &__121_123 }; +static primitive_type apply_primitive = + { {0}, primitive_tag, "apply", &_apply }; +static primitive_type _75halt_primitive = + { {0}, primitive_tag, "%halt", &__75halt }; +static primitive_type exit_primitive = + { {0}, primitive_tag, "exit", &_cyc_exit }; +static primitive_type Cyc_91current_91exception_91handler_primitive = + { {0}, primitive_tag, "Cyc_current_exception_handler", +&_Cyc_91current_91exception_91handler +}; +static primitive_type Cyc_91default_91exception_91handler_primitive = + { {0}, primitive_tag, "Cyc_default_exception_handler", +&_Cyc_91default_91exception_91handler +}; +static primitive_type cons_primitive = { {0}, primitive_tag, "cons", &_cons }; +static primitive_type cell_91get_primitive = + { {0}, primitive_tag, "cell-get", &_cell_91get }; +static primitive_type set_91global_67_primitive = + { {0}, primitive_tag, "set-global!", &_set_91global_67 }; +static primitive_type set_91cell_67_primitive = + { {0}, primitive_tag, "set-cell!", &_set_91cell_67 }; +static primitive_type cell_primitive = { {0}, primitive_tag, "cell", &_cell }; +static primitive_type eq_127_primitive = + { {0}, primitive_tag, "eq?", &_eq_127 }; +static primitive_type eqv_127_primitive = + { {0}, primitive_tag, "eqv?", &_eqv_127 }; +static primitive_type equal_127_primitive = + { {0}, primitive_tag, "equal?", &_equal_127 }; +static primitive_type assoc_primitive = + { {0}, primitive_tag, "assoc", &_assoc }; +static primitive_type assq_primitive = { {0}, primitive_tag, "assq", &_assq }; +static primitive_type assv_primitive = { {0}, primitive_tag, "assv", &_assv }; +static primitive_type member_primitive = + { {0}, primitive_tag, "member", &_member }; +static primitive_type memq_primitive = { {0}, primitive_tag, "memq", &_memq }; +static primitive_type memv_primitive = { {0}, primitive_tag, "memv", &_memv }; +static primitive_type length_primitive = + { {0}, primitive_tag, "length", &_length }; +static primitive_type bytevector_91length_primitive = + { {0}, primitive_tag, "bytevector-length", &_bytevector_91length }; +static primitive_type vector_91length_primitive = + { {0}, primitive_tag, "vector-length", &_vector_91length }; +static primitive_type set_91car_67_primitive = + { {0}, primitive_tag, "set-car!", &_set_91car_67 }; +static primitive_type set_91cdr_67_primitive = + { {0}, primitive_tag, "set-cdr!", &_set_91cdr_67 }; +static primitive_type car_primitive = { {0}, primitive_tag, "car", &_car }; +static primitive_type cdr_primitive = { {0}, primitive_tag, "cdr", &_cdr }; +static primitive_type caar_primitive = { {0}, primitive_tag, "caar", &_caar }; +static primitive_type cadr_primitive = { {0}, primitive_tag, "cadr", &_cadr }; +static primitive_type cdar_primitive = { {0}, primitive_tag, "cdar", &_cdar }; +static primitive_type cddr_primitive = { {0}, primitive_tag, "cddr", &_cddr }; +static primitive_type caaar_primitive = + { {0}, primitive_tag, "caaar", &_caaar }; +static primitive_type caadr_primitive = + { {0}, primitive_tag, "caadr", &_caadr }; +static primitive_type cadar_primitive = + { {0}, primitive_tag, "cadar", &_cadar }; +static primitive_type caddr_primitive = + { {0}, primitive_tag, "caddr", &_caddr }; +static primitive_type cdaar_primitive = + { {0}, primitive_tag, "cdaar", &_cdaar }; +static primitive_type cdadr_primitive = + { {0}, primitive_tag, "cdadr", &_cdadr }; +static primitive_type cddar_primitive = + { {0}, primitive_tag, "cddar", &_cddar }; +static primitive_type cdddr_primitive = + { {0}, primitive_tag, "cdddr", &_cdddr }; +static primitive_type caaaar_primitive = + { {0}, primitive_tag, "caaaar", &_caaaar }; +static primitive_type caaadr_primitive = + { {0}, primitive_tag, "caaadr", &_caaadr }; +static primitive_type caadar_primitive = + { {0}, primitive_tag, "caadar", &_caadar }; +static primitive_type caaddr_primitive = + { {0}, primitive_tag, "caaddr", &_caaddr }; +static primitive_type cadaar_primitive = + { {0}, primitive_tag, "cadaar", &_cadaar }; +static primitive_type cadadr_primitive = + { {0}, primitive_tag, "cadadr", &_cadadr }; +static primitive_type caddar_primitive = + { {0}, primitive_tag, "caddar", &_caddar }; +static primitive_type cadddr_primitive = + { {0}, primitive_tag, "cadddr", &_cadddr }; +static primitive_type cdaaar_primitive = + { {0}, primitive_tag, "cdaaar", &_cdaaar }; +static primitive_type cdaadr_primitive = + { {0}, primitive_tag, "cdaadr", &_cdaadr }; +static primitive_type cdadar_primitive = + { {0}, primitive_tag, "cdadar", &_cdadar }; +static primitive_type cdaddr_primitive = + { {0}, primitive_tag, "cdaddr", &_cdaddr }; +static primitive_type cddaar_primitive = + { {0}, primitive_tag, "cddaar", &_cddaar }; +static primitive_type cddadr_primitive = + { {0}, primitive_tag, "cddadr", &_cddadr }; +static primitive_type cdddar_primitive = + { {0}, primitive_tag, "cdddar", &_cdddar }; +static primitive_type cddddr_primitive = + { {0}, primitive_tag, "cddddr", &_cddddr }; +static primitive_type char_91_125integer_primitive = + { {0}, primitive_tag, "char->integer", &_char_91_125integer }; +static primitive_type integer_91_125char_primitive = + { {0}, primitive_tag, "integer->char", &_integer_91_125char }; +static primitive_type string_91_125number_primitive = + { {0}, primitive_tag, "string->number", &_string_91_125number }; +static primitive_type string_91length_primitive = + { {0}, primitive_tag, "string-length", &_string_91length }; +static primitive_type substring_primitive = + { {0}, primitive_tag, "substring", &_cyc_substring }; +static primitive_type string_91ref_primitive = + { {0}, primitive_tag, "string-ref", &_cyc_string_91ref }; +static primitive_type string_91set_67_primitive = + { {0}, primitive_tag, "string-set!", &_cyc_string_91set_67 }; +static primitive_type Cyc_91installation_91dir_primitive = + { {0}, primitive_tag, "Cyc-installation-dir", &_Cyc_91installation_91dir }; +static primitive_type command_91line_91arguments_primitive = + { {0}, primitive_tag, "command-line-arguments", +&_command_91line_91arguments +}; +static primitive_type system_primitive = + { {0}, primitive_tag, "system", &_cyc_system }; +static primitive_type string_91cmp_primitive = + { {0}, primitive_tag, "string-cmp", &_string_91cmp }; +static primitive_type string_91append_primitive = + { {0}, primitive_tag, "string-append", &_string_91append }; +static primitive_type list_91_125string_primitive = + { {0}, primitive_tag, "list->string", &_list_91_125string }; +static primitive_type string_91_125symbol_primitive = + { {0}, primitive_tag, "string->symbol", &_string_91_125symbol }; +static primitive_type symbol_91_125string_primitive = + { {0}, primitive_tag, "symbol->string", &_symbol_91_125string }; +static primitive_type number_91_125string_primitive = + { {0}, primitive_tag, "number->string", &_number_91_125string }; +static primitive_type list_91_125vector_primitive = + { {0}, primitive_tag, "list-vector", &_list_91_125vector }; +static primitive_type make_91bytevector_primitive = + { {0}, primitive_tag, "make-bytevector", &_make_91bytevector }; -static primitive_type bytevector_primitive = {{0}, primitive_tag, "bytevector", &_bytevector}; -static primitive_type bytevector_91append_primitive = {{0}, primitive_tag, "bytevector-append", &_bytevector_91append}; -static primitive_type Cyc_91bytevector_91copy_primitive = {{0}, primitive_tag, "Cyc-bytevector-copy", &_Cyc_91bytevector_91copy}; -static primitive_type bytevector_91u8_91ref_primitive = {{0}, primitive_tag, "bytevector-u8-ref", &_bytevector_91u8_91ref}; -static primitive_type bytevector_91u8_91set_67_primitive = {{0}, primitive_tag, "bytevector-u8-set!", &_bytevector_91u8_91set_67}; -static primitive_type Cyc_91string_91_125utf8_primitive = {{0}, primitive_tag, "Cyc-string->utf8", &_Cyc_91string_91_125utf8}; -static primitive_type Cyc_91utf8_91_125string_primitive = {{0}, primitive_tag, "Cyc-utf8->string", &_Cyc_91utf8_91_125string}; -static primitive_type make_91vector_primitive = {{0}, primitive_tag, "make-vector", &_make_91vector}; -static primitive_type vector_91ref_primitive = {{0}, primitive_tag, "vector-ref", &_vector_91ref}; -static primitive_type vector_91set_67_primitive = {{0}, primitive_tag, "vector-set!", &_vector_91set_67}; -static primitive_type boolean_127_primitive = {{0}, primitive_tag, "boolean?", &_boolean_127}; -static primitive_type char_127_primitive = {{0}, primitive_tag, "char?", &_char_127}; -static primitive_type eof_91object_127_primitive = {{0}, primitive_tag, "eof-object?", &_eof_91object_127}; -static primitive_type null_127_primitive = {{0}, primitive_tag, "null?", &_null_127}; -static primitive_type number_127_primitive = {{0}, primitive_tag, "number?", &_number_127}; -static primitive_type real_127_primitive = {{0}, primitive_tag, "real?", &_real_127}; -static primitive_type integer_127_primitive = {{0}, primitive_tag, "integer?", &_integer_127}; -static primitive_type pair_127_primitive = {{0}, primitive_tag, "pair?", &_pair_127}; -static primitive_type procedure_127_primitive = {{0}, primitive_tag, "procedure?", &_procedure_127}; -static primitive_type macro_127_primitive = {{0}, primitive_tag, "macro?", &_macro_127}; -static primitive_type port_127_primitive = {{0}, primitive_tag, "port?", &_port_127}; -static primitive_type bytevector_127_primitive = {{0}, primitive_tag, "bytevector?", &_vector_127}; -static primitive_type vector_127_primitive = {{0}, primitive_tag, "vector?", &_vector_127}; -static primitive_type string_127_primitive = {{0}, primitive_tag, "string?", &_string_127}; -static primitive_type symbol_127_primitive = {{0}, primitive_tag, "symbol?", &_symbol_127}; -static primitive_type open_91input_91file_primitive = {{0}, primitive_tag, "open-input-file", &_open_91input_91file}; -static primitive_type open_91output_91file_primitive = {{0}, primitive_tag, "open-output-file", &_open_91output_91file}; -static primitive_type close_91port_primitive = {{0}, primitive_tag, "close-port", &_close_91port}; -static primitive_type close_91input_91port_primitive = {{0}, primitive_tag, "close-input-port", &_close_91input_91port}; -static primitive_type close_91output_91port_primitive = {{0}, primitive_tag, "close-output-port", &_close_91output_91port}; -static primitive_type Cyc_91flush_91output_91port_primitive = {{0}, primitive_tag, "Cyc-flush-output-port", &_Cyc_91flush_91output_91port}; -static primitive_type file_91exists_127_primitive = {{0}, primitive_tag, "file-exists?", &_file_91exists_127}; -static primitive_type delete_91file_primitive = {{0}, primitive_tag, "delete-file", &_delete_91file}; -static primitive_type read_91char_primitive = {{0}, primitive_tag, "read-char", &_read_91char}; -static primitive_type peek_91char_primitive = {{0}, primitive_tag, "peek-char", &_peek_91char}; -static primitive_type Cyc_91read_91line_primitive = {{0}, primitive_tag, "Cyc-read-line", &_Cyc_91read_91line}; -static primitive_type Cyc_91write_primitive = {{0}, primitive_tag, "Cyc-write", &_Cyc_91write}; -static primitive_type Cyc_91write_91char_primitive = {{0}, primitive_tag, "Cyc-write-char", &_Cyc_91write_91char}; -static primitive_type Cyc_91display_primitive = {{0}, primitive_tag, "Cyc-display", &_display}; -static primitive_type call_95cc_primitive = {{0}, primitive_tag, "call/cc", &_call_95cc}; +static primitive_type bytevector_primitive = + { {0}, primitive_tag, "bytevector", &_bytevector }; +static primitive_type bytevector_91append_primitive = + { {0}, primitive_tag, "bytevector-append", &_bytevector_91append }; +static primitive_type Cyc_91bytevector_91copy_primitive = + { {0}, primitive_tag, "Cyc-bytevector-copy", &_Cyc_91bytevector_91copy }; +static primitive_type bytevector_91u8_91ref_primitive = + { {0}, primitive_tag, "bytevector-u8-ref", &_bytevector_91u8_91ref }; +static primitive_type bytevector_91u8_91set_67_primitive = + { {0}, primitive_tag, "bytevector-u8-set!", &_bytevector_91u8_91set_67 }; +static primitive_type Cyc_91string_91_125utf8_primitive = + { {0}, primitive_tag, "Cyc-string->utf8", &_Cyc_91string_91_125utf8 }; +static primitive_type Cyc_91utf8_91_125string_primitive = + { {0}, primitive_tag, "Cyc-utf8->string", &_Cyc_91utf8_91_125string }; +static primitive_type make_91vector_primitive = + { {0}, primitive_tag, "make-vector", &_make_91vector }; +static primitive_type vector_91ref_primitive = + { {0}, primitive_tag, "vector-ref", &_vector_91ref }; +static primitive_type vector_91set_67_primitive = + { {0}, primitive_tag, "vector-set!", &_vector_91set_67 }; +static primitive_type boolean_127_primitive = + { {0}, primitive_tag, "boolean?", &_boolean_127 }; +static primitive_type char_127_primitive = + { {0}, primitive_tag, "char?", &_char_127 }; +static primitive_type eof_91object_127_primitive = + { {0}, primitive_tag, "eof-object?", &_eof_91object_127 }; +static primitive_type null_127_primitive = + { {0}, primitive_tag, "null?", &_null_127 }; +static primitive_type number_127_primitive = + { {0}, primitive_tag, "number?", &_number_127 }; +static primitive_type real_127_primitive = + { {0}, primitive_tag, "real?", &_real_127 }; +static primitive_type integer_127_primitive = + { {0}, primitive_tag, "integer?", &_integer_127 }; +static primitive_type pair_127_primitive = + { {0}, primitive_tag, "pair?", &_pair_127 }; +static primitive_type procedure_127_primitive = + { {0}, primitive_tag, "procedure?", &_procedure_127 }; +static primitive_type macro_127_primitive = + { {0}, primitive_tag, "macro?", &_macro_127 }; +static primitive_type port_127_primitive = + { {0}, primitive_tag, "port?", &_port_127 }; +static primitive_type bytevector_127_primitive = + { {0}, primitive_tag, "bytevector?", &_vector_127 }; +static primitive_type vector_127_primitive = + { {0}, primitive_tag, "vector?", &_vector_127 }; +static primitive_type string_127_primitive = + { {0}, primitive_tag, "string?", &_string_127 }; +static primitive_type symbol_127_primitive = + { {0}, primitive_tag, "symbol?", &_symbol_127 }; +static primitive_type open_91input_91file_primitive = + { {0}, primitive_tag, "open-input-file", &_open_91input_91file }; +static primitive_type open_91output_91file_primitive = + { {0}, primitive_tag, "open-output-file", &_open_91output_91file }; +static primitive_type close_91port_primitive = + { {0}, primitive_tag, "close-port", &_close_91port }; +static primitive_type close_91input_91port_primitive = + { {0}, primitive_tag, "close-input-port", &_close_91input_91port }; +static primitive_type close_91output_91port_primitive = + { {0}, primitive_tag, "close-output-port", &_close_91output_91port }; +static primitive_type Cyc_91flush_91output_91port_primitive = + { {0}, primitive_tag, "Cyc-flush-output-port", +&_Cyc_91flush_91output_91port +}; +static primitive_type file_91exists_127_primitive = + { {0}, primitive_tag, "file-exists?", &_file_91exists_127 }; +static primitive_type delete_91file_primitive = + { {0}, primitive_tag, "delete-file", &_delete_91file }; +static primitive_type read_91char_primitive = + { {0}, primitive_tag, "read-char", &_read_91char }; +static primitive_type peek_91char_primitive = + { {0}, primitive_tag, "peek-char", &_peek_91char }; +static primitive_type Cyc_91read_91line_primitive = + { {0}, primitive_tag, "Cyc-read-line", &_Cyc_91read_91line }; +static primitive_type Cyc_91write_primitive = + { {0}, primitive_tag, "Cyc-write", &_Cyc_91write }; +static primitive_type Cyc_91write_91char_primitive = + { {0}, primitive_tag, "Cyc-write-char", &_Cyc_91write_91char }; +static primitive_type Cyc_91display_primitive = + { {0}, primitive_tag, "Cyc-display", &_display }; +static primitive_type call_95cc_primitive = + { {0}, primitive_tag, "call/cc", &_call_95cc }; const object primitive_Cyc_91global_91vars = &Cyc_91global_91vars_primitive; const object primitive_Cyc_91get_91cvar = &Cyc_91get_91cvar_primitive; const object primitive_Cyc_91set_91cvar_67 = &Cyc_91set_91cvar_67_primitive; const object primitive_Cyc_91cvar_127 = &Cyc_91cvar_127_primitive; const object primitive_Cyc_91has_91cycle_127 = &Cyc_91has_91cycle_127_primitive; -const object primitive_Cyc_91spawn_91thread_67 = &Cyc_91spawn_91thread_67_primitive; +const object primitive_Cyc_91spawn_91thread_67 = + &Cyc_91spawn_91thread_67_primitive; const object primitive_Cyc_91end_91thread_67 = &Cyc_91end_91thread_67_primitive; const object primitive__87 = &_87_primitive; const object primitive__91 = &_91_primitive; @@ -3198,8 +3975,10 @@ const object primitive__121_123 = &_121_123_primitive; const object primitive_apply = &apply_primitive; const object primitive__75halt = &_75halt_primitive; const object primitive_exit = &exit_primitive; -const object primitive_Cyc_91current_91exception_91handler = &Cyc_91current_91exception_91handler_primitive; -const object primitive_Cyc_91default_91exception_91handler = &Cyc_91default_91exception_91handler_primitive; +const object primitive_Cyc_91current_91exception_91handler = + &Cyc_91current_91exception_91handler_primitive; +const object primitive_Cyc_91default_91exception_91handler = + &Cyc_91default_91exception_91handler_primitive; const object primitive_cons = &cons_primitive; const object primitive_cell_91get = &cell_91get_primitive; const object primitive_set_91global_67 = &set_91global_67_primitive; @@ -3258,8 +4037,10 @@ const object primitive_string_91length = &string_91length_primitive; const object primitive_substring = &substring_primitive; const object primitive_string_91ref = &string_91ref_primitive; const object primitive_string_91set_67 = &string_91set_67_primitive; -const object primitive_Cyc_91installation_91dir = &Cyc_91installation_91dir_primitive; -const object primitive_command_91line_91arguments = &command_91line_91arguments_primitive; +const object primitive_Cyc_91installation_91dir = + &Cyc_91installation_91dir_primitive; +const object primitive_command_91line_91arguments = + &command_91line_91arguments_primitive; const object primitive_system = &system_primitive; const object primitive_string_91cmp = &string_91cmp_primitive; const object primitive_string_91append = &string_91append_primitive; @@ -3271,11 +4052,15 @@ const object primitive_make_91bytevector = &make_91bytevector_primitive; const object primitive_make_91vector = &make_91vector_primitive; const object primitive_bytevector = &bytevector_primitive; const object primitive_bytevector_91append = &bytevector_91append_primitive; -const object primitive_Cyc_91bytevector_91copy = &Cyc_91bytevector_91copy_primitive; +const object primitive_Cyc_91bytevector_91copy = + &Cyc_91bytevector_91copy_primitive; const object primitive_bytevector_91u8_91ref = &bytevector_91u8_91ref_primitive; -const object primitive_bytevector_91u8_91set_67 = &bytevector_91u8_91set_67_primitive; -const object primitive_Cyc_91string_91_125utf8 = & Cyc_91string_91_125utf8_primitive; -const object primitive_Cyc_91utf8_91_125string = &Cyc_91utf8_91_125string_primitive; +const object primitive_bytevector_91u8_91set_67 = + &bytevector_91u8_91set_67_primitive; +const object primitive_Cyc_91string_91_125utf8 = + &Cyc_91string_91_125utf8_primitive; +const object primitive_Cyc_91utf8_91_125string = + &Cyc_91utf8_91_125string_primitive; const object primitive_list_91_125vector = &list_91_125vector_primitive; const object primitive_boolean_127 = &boolean_127_primitive; const object primitive_char_127 = &char_127_primitive; @@ -3297,7 +4082,8 @@ const object primitive_open_91output_91file = &open_91output_91file_primitive; const object primitive_close_91port = &close_91port_primitive; const object primitive_close_91input_91port = &close_91input_91port_primitive; const object primitive_close_91output_91port = &close_91output_91port_primitive; -const object primitive_Cyc_91flush_91output_91port = &Cyc_91flush_91output_91port_primitive; +const object primitive_Cyc_91flush_91output_91port = + &Cyc_91flush_91output_91port_primitive; const object primitive_file_91exists_127 = &file_91exists_127_primitive; const object primitive_delete_91file = &delete_91file_primitive; const object primitive_read_91char = &read_91char_primitive; @@ -3316,7 +4102,7 @@ void *Cyc_init_thread(object thunk) long stack_start; gc_thread_data *thd; thd = malloc(sizeof(gc_thread_data)); - gc_thread_data_init(thd, 0, (char *) &stack_start, global_stack_size); + gc_thread_data_init(thd, 0, (char *)&stack_start, global_stack_size); thd->gc_cont = thunk; thd->gc_num_args = 1; thd->gc_args[0] = &Cyc_91end_91thread_67_primitive; @@ -3324,7 +4110,8 @@ void *Cyc_init_thread(object thunk) // returns instance so would need to malloc here // would also need to update termination code to free that memory gc_add_mutator(thd); - ck_pr_cas_int((int *)&(thd->thread_state), CYC_THREAD_STATE_NEW, CYC_THREAD_STATE_RUNNABLE); + ck_pr_cas_int((int *)&(thd->thread_state), CYC_THREAD_STATE_NEW, + CYC_THREAD_STATE_RUNNABLE); Cyc_start_trampoline(thd); return NULL; } @@ -3367,7 +4154,7 @@ to look at the lock-free structures provided by ck? /** * Terminate a thread */ -void Cyc_end_thread(gc_thread_data *thd) +void Cyc_end_thread(gc_thread_data * thd) { // TODO: should we consider passing the current continuation (and args) // as an argument? if we don't, will objects be collected that are still @@ -3376,11 +4163,11 @@ void Cyc_end_thread(gc_thread_data *thd) GC(thd, &clo, thd->gc_args, 0); } -void Cyc_exit_thread(gc_thread_data *thd) +void Cyc_exit_thread(gc_thread_data * thd) { // alternatively could call longjmp with a null continuation, but that seems // more complicated than necessary. or does it... see next comment: - + // TODO: what if there are any locals from the thread's stack still being // referenced? might want to do one more minor GC to clear the stack before // terminating the thread @@ -3388,8 +4175,9 @@ void Cyc_exit_thread(gc_thread_data *thd) //printf("DEBUG - exiting thread\n"); // Remove thread from the list of mutators, and mark its data to be freed gc_remove_mutator(thd); - ck_pr_cas_int((int *)&(thd->thread_state), CYC_THREAD_STATE_RUNNABLE, CYC_THREAD_STATE_TERMINATED); - pthread_exit(NULL); // For now, just a proof of concept + ck_pr_cas_int((int *)&(thd->thread_state), CYC_THREAD_STATE_RUNNABLE, + CYC_THREAD_STATE_TERMINATED); + pthread_exit(NULL); // For now, just a proof of concept } // For now, accept a number of milliseconds to sleep @@ -3407,15 +4195,16 @@ object Cyc_thread_sleep(void *data, object timeout) // Copy given object to the heap, if it is from the stack. // This function is intended to be called directly from application code -object copy2heap(void *data, object obj) +object copy2heap(void *data, object obj) { char stack_pos; - gc_thread_data *thd = (gc_thread_data *)data; - int on_stack = stack_overflow((object)(&stack_pos), obj) && - stack_overflow(obj, (object)thd->stack_start); + gc_thread_data *thd = (gc_thread_data *) data; + int on_stack = stack_overflow((object) (&stack_pos), obj) && + stack_overflow(obj, (object) thd->stack_start); if (!is_object_type(obj) || !on_stack) { return obj; } - return gc_alloc(Cyc_heap, gc_allocated_bytes(obj, NULL, NULL), obj, data, &on_stack); + return gc_alloc(Cyc_heap, gc_allocated_bytes(obj, NULL, NULL), obj, data, + &on_stack); } From 007c7d3fe570fb2666986bda201887ab3e145fb1 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 03:52:27 -0400 Subject: [PATCH 117/121] Refactoring --- runtime.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/runtime.c b/runtime.c index cddee462..9d929b68 100644 --- a/runtime.c +++ b/runtime.c @@ -462,8 +462,7 @@ void Cyc_rt_raise_msg(void *data, const char *err) /* END exception handler */ -int equal(x, y) -object x, y; +int equal(object x, object y) { if (x == NULL) return (y == NULL); From a946a6cb69d9f21e2c0d079962f401606f22185f Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 03:58:38 -0400 Subject: [PATCH 118/121] Refactoring --- include/cyclone/runtime.h | 2 +- runtime.c | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index be43abf7..69492d23 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -200,7 +200,7 @@ object Cyc_command_line_arguments(void *data, object cont); object Cyc_system(object cmd); object Cyc_char2integer(object chr); object Cyc_integer2char(void *data, object n); -void Cyc_halt(closure); +void Cyc_halt(object obj); object __halt(object obj); port_type Cyc_stdout(void); port_type Cyc_stdin(void); diff --git a/runtime.c b/runtime.c index 9d929b68..84c7f463 100644 --- a/runtime.c +++ b/runtime.c @@ -1935,9 +1935,7 @@ object Cyc_integer2char(void *data, object n) return obj_char2obj(val); } -void Cyc_halt(closure); -void Cyc_halt(env) -closure env; +void Cyc_halt(object obj) { #if DEBUG_SHOW_DIAG gc_print_stats(Cyc_heap); From 161c46ac72210eadf7614af10808776706543885 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 04:05:54 -0400 Subject: [PATCH 119/121] Added Cyc_is_opaque --- include/cyclone/runtime.h | 1 + runtime.c | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/include/cyclone/runtime.h b/include/cyclone/runtime.h index 69492d23..8fe19f8f 100644 --- a/include/cyclone/runtime.h +++ b/include/cyclone/runtime.h @@ -235,6 +235,7 @@ object Cyc_is_procedure(void *data, object o); object Cyc_is_macro(object o); object Cyc_is_eof_object(object o); object Cyc_is_cvar(object o); +object Cyc_is_opaque(object o); object Cyc_sum_op(void *data, common_type * x, object y); object Cyc_sub_op(void *data, common_type * x, object y); object Cyc_mul_op(void *data, common_type * x, object y); diff --git a/runtime.c b/runtime.c index 84c7f463..ae1916b6 100644 --- a/runtime.c +++ b/runtime.c @@ -1115,6 +1115,13 @@ object Cyc_is_cvar(object o) return boolean_f; } +object Cyc_is_opaque(object o) +{ + if ((o != NULL) && !is_value_type(o) && ((list) o)->tag == c_opaque_tag) + return boolean_t; + return boolean_f; +} + object Cyc_eq(object x, object y) { if (x == y) From 360e9c1127cf865fed1e1cc333530cafdd7e909f Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 04:07:04 -0400 Subject: [PATCH 120/121] Added TODO --- scheme/cyclone/cgen.sld | 1 + 1 file changed, 1 insertion(+) diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index 3232de6d..6202bcc3 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -512,6 +512,7 @@ ((eq? p 'Cyc-get-cvar) "Cyc_get_cvar") ((eq? p 'Cyc-set-cvar!) "Cyc_set_cvar") ((eq? p 'Cyc-cvar?) "Cyc_is_cvar") + ; TODO: ((eq? p 'Cyc-opaque?) "Cyc_is_opaque") ((eq? p 'Cyc-has-cycle?) "Cyc_has_cycle") ((eq? p 'Cyc-spawn-thread!) "Cyc_spawn_thread") ((eq? p 'Cyc-end-thread!) "Cyc_end_thread") From 535c395988114791df2e1aa4b8b230986cb02cc4 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 27 Apr 2016 04:08:52 -0400 Subject: [PATCH 121/121] Bump release number --- scheme/cyclone/common.sld | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scheme/cyclone/common.sld b/scheme/cyclone/common.sld index 4b1c8354..9ca4c2dd 100644 --- a/scheme/cyclone/common.sld +++ b/scheme/cyclone/common.sld @@ -13,7 +13,7 @@ *version-banner* *c-file-header-comment*) (begin -(define *version* "0.0.6 (Pre-release)") +(define *version* "0.0.7 (Pre-release)") (define *version-banner* (string-append "