Hex Artifact Content
Not logged in

Artifact 64a1cd90c0d8cbb6ab04414e5e694dbb9d701bef:


0000: 28 62 65 67 69 6e 0a 20 20 28 64 65 66 69 6e 65  (begin.  (define
0010: 20 61 72 72 61 79 3a 6f 70 74 2d 61 72 67 73 20   array:opt-args 
0020: 27 28 63 74 6f 72 20 28 34 29 29 29 0a 20 20 28  '(ctor (4))).  (
0030: 64 65 66 69 6e 65 20 28 61 72 72 61 79 3a 6f 70  define (array:op
0040: 74 69 6d 69 7a 65 20 66 20 72 29 0a 20 20 20 20  timize f r).    
0050: 28 63 61 73 65 20 72 0a 20 20 20 20 20 20 28 28  (case r.      ((
0060: 30 29 20 28 6c 65 74 20 28 28 6e 30 20 28 66 29  0) (let ((n0 (f)
0070: 29 29 20 28 61 72 72 61 79 3a 30 20 6e 30 29 29  )) (array:0 n0))
0080: 29 0a 20 20 20 20 20 20 28 28 31 29 20 28 6c 65  ).      ((1) (le
0090: 74 20 28 28 6e 30 20 28 66 20 30 29 29 29 20 28  t ((n0 (f 0))) (
00a0: 61 72 72 61 79 3a 31 20 6e 30 20 28 2d 20 28 66  array:1 n0 (- (f
00b0: 20 31 29 20 6e 30 29 29 29 29 0a 20 20 20 20 20   1) n0)))).     
00c0: 20 28 28 32 29 0a 20 20 20 20 20 20 20 28 6c 65   ((2).       (le
00d0: 74 20 28 28 6e 30 20 28 66 20 30 20 30 29 29 29  t ((n0 (f 0 0)))
00e0: 0a 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79  .         (array
00f0: 3a 32 20 6e 30 20 28 2d 20 28 66 20 31 20 30 29  :2 n0 (- (f 1 0)
0100: 20 6e 30 29 20 28 2d 20 28 66 20 30 20 31 29 20   n0) (- (f 0 1) 
0110: 6e 30 29 29 29 29 0a 20 20 20 20 20 20 28 28 33  n0)))).      ((3
0120: 29 0a 20 20 20 20 20 20 20 28 6c 65 74 20 28 28  ).       (let ((
0130: 6e 30 20 28 66 20 30 20 30 20 30 29 29 29 0a 20  n0 (f 0 0 0))). 
0140: 20 20 20 20 20 20 20 20 28 61 72 72 61 79 3a 33          (array:3
0150: 0a 20 20 20 20 20 20 20 20 20 20 20 6e 30 0a 20  .           n0. 
0160: 20 20 20 20 20 20 20 20 20 20 28 2d 20 28 66 20            (- (f 
0170: 31 20 30 20 30 29 20 6e 30 29 0a 20 20 20 20 20  1 0 0) n0).     
0180: 20 20 20 20 20 20 28 2d 20 28 66 20 30 20 31 20        (- (f 0 1 
0190: 30 29 20 6e 30 29 0a 20 20 20 20 20 20 20 20 20  0) n0).         
01a0: 20 20 28 2d 20 28 66 20 30 20 30 20 31 29 20 6e    (- (f 0 0 1) n
01b0: 30 29 29 29 29 0a 20 20 20 20 20 20 28 65 6c 73  0)))).      (els
01c0: 65 0a 20 20 20 20 20 20 20 28 6c 65 74 20 28 28  e.       (let ((
01d0: 76 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  v.              
01e0: 28 64 6f 20 28 28 6b 20 30 20 28 2b 20 6b 20 31  (do ((k 0 (+ k 1
01f0: 29 29 20 28 76 20 27 28 29 20 28 63 6f 6e 73 20  )) (v '() (cons 
0200: 30 20 76 29 29 29 0a 20 20 20 20 20 20 20 20 20  0 v))).         
0210: 20 20 20 20 20 20 20 20 20 28 28 3d 20 6b 20 72           ((= k r
0220: 29 20 76 29 29 29 29 0a 20 20 20 20 20 20 20 20  ) v)))).        
0230: 20 28 6c 65 74 20 28 28 6e 30 20 28 61 70 70 6c   (let ((n0 (appl
0240: 79 20 66 20 76 29 29 29 0a 20 20 20 20 20 20 20  y f v))).       
0250: 20 20 20 20 28 61 70 70 6c 79 0a 20 20 20 20 20      (apply.     
0260: 20 20 20 20 20 20 20 61 72 72 61 79 3a 6e 0a 20         array:n. 
0270: 20 20 20 20 20 20 20 20 20 20 20 6e 30 0a 20 20             n0.  
0280: 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79            (array
0290: 3a 63 6f 65 66 66 69 63 69 65 6e 74 73 20 66 20  :coefficients f 
02a0: 6e 30 20 76 20 76 29 29 29 29 29 29 29 0a 20 20  n0 v v))))))).  
02b0: 28 64 65 66 69 6e 65 20 28 61 72 72 61 79 3a 6f  (define (array:o
02c0: 70 74 69 6d 69 7a 65 2d 65 6d 70 74 79 20 72 29  ptimize-empty r)
02d0: 0a 20 20 20 20 28 6c 65 74 20 28 28 78 20 28 6d  .    (let ((x (m
02e0: 61 6b 65 2d 76 65 63 74 6f 72 20 28 2b 20 72 20  ake-vector (+ r 
02f0: 31 29 20 30 29 29 29 0a 20 20 20 20 20 20 28 76  1) 0))).      (v
0300: 65 63 74 6f 72 2d 73 65 74 21 20 78 20 72 20 2d  ector-set! x r -
0310: 31 29 0a 20 20 20 20 20 20 78 29 29 0a 20 20 28  1).      x)).  (
0320: 64 65 66 69 6e 65 20 28 61 72 72 61 79 3a 63 6f  define (array:co
0330: 65 66 66 69 63 69 65 6e 74 73 20 66 20 6e 30 20  efficients f n0 
0340: 76 73 20 76 70 29 0a 20 20 20 20 28 63 61 73 65  vs vp).    (case
0350: 20 76 70 0a 20 20 20 20 20 20 28 28 28 29 29 20   vp.      ((()) 
0360: 27 28 29 29 0a 20 20 20 20 20 20 28 65 6c 73 65  '()).      (else
0370: 0a 20 20 20 20 20 20 20 28 73 65 74 2d 63 61 72  .       (set-car
0380: 21 20 76 70 20 31 29 0a 20 20 20 20 20 20 20 28  ! vp 1).       (
0390: 6c 65 74 20 28 28 6e 20 28 2d 20 28 61 70 70 6c  let ((n (- (appl
03a0: 79 20 66 20 76 73 29 20 6e 30 29 29 29 0a 20 20  y f vs) n0))).  
03b0: 20 20 20 20 20 20 20 28 73 65 74 2d 63 61 72 21         (set-car!
03c0: 20 76 70 20 30 29 0a 20 20 20 20 20 20 20 20 20   vp 0).         
03d0: 28 63 6f 6e 73 20 6e 20 28 61 72 72 61 79 3a 63  (cons n (array:c
03e0: 6f 65 66 66 69 63 69 65 6e 74 73 20 66 20 6e 30  oefficients f n0
03f0: 20 76 73 20 28 63 64 72 20 76 70 29 29 29 29 29   vs (cdr vp)))))
0400: 29 29 0a 20 20 28 64 65 66 69 6e 65 20 28 61 72  )).  (define (ar
0410: 72 61 79 3a 76 65 63 74 6f 72 2d 69 6e 64 65 78  ray:vector-index
0420: 20 78 20 6b 73 29 0a 20 20 20 20 28 64 6f 20 28   x ks).    (do (
0430: 28 73 75 6d 20 30 20 28 2b 20 73 75 6d 20 28 2a  (sum 0 (+ sum (*
0440: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 6b   (vector-ref x k
0450: 29 20 28 63 61 72 20 6b 73 29 29 29 29 0a 20 20  ) (car ks)))).  
0460: 20 20 20 20 20 20 20 28 6b 73 20 6b 73 20 28 63         (ks ks (c
0470: 64 72 20 6b 73 29 29 0a 20 20 20 20 20 20 20 20  dr ks)).        
0480: 20 28 6b 20 30 20 28 2b 20 6b 20 31 29 29 29 0a   (k 0 (+ k 1))).
0490: 20 20 20 20 20 20 20 20 28 28 6e 75 6c 6c 3f 20          ((null? 
04a0: 6b 73 29 20 28 2b 20 73 75 6d 20 28 76 65 63 74  ks) (+ sum (vect
04b0: 6f 72 2d 72 65 66 20 78 20 6b 29 29 29 29 29 0a  or-ref x k))))).
04c0: 20 20 28 64 65 66 69 6e 65 20 28 61 72 72 61 79    (define (array
04d0: 3a 73 68 61 70 65 2d 69 6e 64 65 78 29 20 27 23  :shape-index) '#
04e0: 28 32 20 31 20 30 29 29 0a 20 20 28 64 65 66 69  (2 1 0)).  (defi
04f0: 6e 65 20 28 61 72 72 61 79 3a 65 6d 70 74 79 2d  ne (array:empty-
0500: 73 68 61 70 65 2d 69 6e 64 65 78 29 20 27 23 28  shape-index) '#(
0510: 30 20 30 20 2d 31 29 29 0a 20 20 28 64 65 66 69  0 0 -1)).  (defi
0520: 6e 65 20 28 61 72 72 61 79 3a 73 68 61 70 65 2d  ne (array:shape-
0530: 76 65 63 74 6f 72 2d 69 6e 64 65 78 20 78 20 72  vector-index x r
0540: 20 6b 29 0a 20 20 20 20 28 2b 0a 20 20 20 20 20   k).    (+.     
0550: 28 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78  (* (vector-ref x
0560: 20 30 29 20 72 29 0a 20 20 20 20 20 28 2a 20 28   0) r).     (* (
0570: 76 65 63 74 6f 72 2d 72 65 66 20 78 20 31 29 20  vector-ref x 1) 
0580: 6b 29 0a 20 20 20 20 20 28 76 65 63 74 6f 72 2d  k).     (vector-
0590: 72 65 66 20 78 20 32 29 29 29 0a 20 20 28 64 65  ref x 2))).  (de
05a0: 66 69 6e 65 20 28 61 72 72 61 79 3a 61 63 74 6f  fine (array:acto
05b0: 72 2d 69 6e 64 65 78 20 78 20 6b 29 0a 20 20 20  r-index x k).   
05c0: 20 28 2b 20 28 2a 20 28 76 65 63 74 6f 72 2d 72   (+ (* (vector-r
05d0: 65 66 20 78 20 30 29 20 6b 29 20 28 76 65 63 74  ef x 0) k) (vect
05e0: 6f 72 2d 72 65 66 20 78 20 31 29 29 29 0a 20 20  or-ref x 1))).  
05f0: 28 64 65 66 69 6e 65 20 28 61 72 72 61 79 3a 30  (define (array:0
0600: 20 6e 30 29 20 28 76 65 63 74 6f 72 20 6e 30 29   n0) (vector n0)
0610: 29 0a 20 20 28 64 65 66 69 6e 65 20 28 61 72 72  ).  (define (arr
0620: 61 79 3a 31 20 6e 30 20 6e 31 29 20 28 76 65 63  ay:1 n0 n1) (vec
0630: 74 6f 72 20 6e 31 20 6e 30 29 29 0a 20 20 28 64  tor n1 n0)).  (d
0640: 65 66 69 6e 65 20 28 61 72 72 61 79 3a 32 20 6e  efine (array:2 n
0650: 30 20 6e 31 20 6e 32 29 20 28 76 65 63 74 6f 72  0 n1 n2) (vector
0660: 20 6e 31 20 6e 32 20 6e 30 29 29 0a 20 20 28 64   n1 n2 n0)).  (d
0670: 65 66 69 6e 65 20 28 61 72 72 61 79 3a 33 20 6e  efine (array:3 n
0680: 30 20 6e 31 20 6e 32 20 6e 33 29 20 28 76 65 63  0 n1 n2 n3) (vec
0690: 74 6f 72 20 6e 31 20 6e 32 20 6e 33 20 6e 30 29  tor n1 n2 n3 n0)
06a0: 29 0a 20 20 28 64 65 66 69 6e 65 20 28 61 72 72  ).  (define (arr
06b0: 61 79 3a 6e 20 6e 30 20 6e 31 20 6e 32 20 6e 33  ay:n n0 n1 n2 n3
06c0: 20 6e 34 20 2e 20 6e 73 29 0a 20 20 20 20 28 61   n4 . ns).    (a
06d0: 70 70 6c 79 20 76 65 63 74 6f 72 20 6e 31 20 6e  pply vector n1 n
06e0: 32 20 6e 33 20 6e 34 20 28 61 70 70 65 6e 64 20  2 n3 n4 (append 
06f0: 6e 73 20 28 6c 69 73 74 20 6e 30 29 29 29 29 0a  ns (list n0)))).
0700: 20 20 28 64 65 66 69 6e 65 20 28 61 72 72 61 79    (define (array
0710: 3a 6d 61 6b 65 72 20 72 29 0a 20 20 20 20 28 63  :maker r).    (c
0720: 61 73 65 20 72 0a 20 20 20 20 20 20 28 28 30 29  ase r.      ((0)
0730: 20 61 72 72 61 79 3a 30 29 0a 20 20 20 20 20 20   array:0).      
0740: 28 28 31 29 20 61 72 72 61 79 3a 31 29 0a 20 20  ((1) array:1).  
0750: 20 20 20 20 28 28 32 29 20 61 72 72 61 79 3a 32      ((2) array:2
0760: 29 0a 20 20 20 20 20 20 28 28 33 29 20 61 72 72  ).      ((3) arr
0770: 61 79 3a 33 29 0a 20 20 20 20 20 20 28 65 6c 73  ay:3).      (els
0780: 65 20 61 72 72 61 79 3a 6e 29 29 29 0a 20 20 28  e array:n))).  (
0790: 64 65 66 69 6e 65 20 61 72 72 61 79 3a 69 6e 64  define array:ind
07a0: 65 78 65 72 2f 76 65 63 74 6f 72 0a 20 20 20 20  exer/vector.    
07b0: 28 6c 65 74 20 28 28 65 6d 0a 20 20 20 20 20 20  (let ((em.      
07c0: 20 20 20 20 20 28 76 65 63 74 6f 72 0a 20 20 20       (vector.   
07d0: 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64            (lambd
07e0: 61 20 28 78 20 69 29 20 28 2b 20 28 76 65 63 74  a (x i) (+ (vect
07f0: 6f 72 2d 72 65 66 20 78 20 30 29 29 29 0a 20 20  or-ref x 0))).  
0800: 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62             (lamb
0810: 64 61 20 28 78 20 69 29 0a 20 20 20 20 20 20 20  da (x i).       
0820: 20 20 20 20 20 20 20 20 28 2b 0a 20 20 20 20 20          (+.     
0830: 20 20 20 20 20 20 20 20 20 20 20 28 2a 20 28 76             (* (v
0840: 65 63 74 6f 72 2d 72 65 66 20 78 20 30 29 20 28  ector-ref x 0) (
0850: 76 65 63 74 6f 72 2d 72 65 66 20 69 20 30 29 29  vector-ref i 0))
0860: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
0870: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 31   (vector-ref x 1
0880: 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  ))).            
0890: 20 28 6c 61 6d 62 64 61 20 28 78 20 69 29 0a 20   (lambda (x i). 
08a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2b                (+
08b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
08c0: 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20   (* (vector-ref 
08d0: 78 20 30 29 20 28 76 65 63 74 6f 72 2d 72 65 66  x 0) (vector-ref
08e0: 20 69 20 30 29 29 0a 20 20 20 20 20 20 20 20 20   i 0)).         
08f0: 20 20 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f         (* (vecto
0900: 72 2d 72 65 66 20 78 20 31 29 20 28 76 65 63 74  r-ref x 1) (vect
0910: 6f 72 2d 72 65 66 20 69 20 31 29 29 0a 20 20 20  or-ref i 1)).   
0920: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
0930: 63 74 6f 72 2d 72 65 66 20 78 20 32 29 29 29 0a  ctor-ref x 2))).
0940: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61               (la
0950: 6d 62 64 61 20 28 78 20 69 29 0a 20 20 20 20 20  mbda (x i).     
0960: 20 20 20 20 20 20 20 20 20 20 28 2b 0a 20 20 20            (+.   
0970: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20               (* 
0980: 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 30 29  (vector-ref x 0)
0990: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69 20 30   (vector-ref i 0
09a0: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
09b0: 20 20 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65     (* (vector-re
09c0: 66 20 78 20 31 29 20 28 76 65 63 74 6f 72 2d 72  f x 1) (vector-r
09d0: 65 66 20 69 20 31 29 29 0a 20 20 20 20 20 20 20  ef i 1)).       
09e0: 20 20 20 20 20 20 20 20 20 28 2a 20 28 76 65 63           (* (vec
09f0: 74 6f 72 2d 72 65 66 20 78 20 32 29 20 28 76 65  tor-ref x 2) (ve
0a00: 63 74 6f 72 2d 72 65 66 20 69 20 32 29 29 0a 20  ctor-ref i 2)). 
0a10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
0a20: 76 65 63 74 6f 72 2d 72 65 66 20 78 20 33 29 29  vector-ref x 3))
0a30: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28  ).             (
0a40: 6c 61 6d 62 64 61 20 28 78 20 69 29 0a 20 20 20  lambda (x i).   
0a50: 20 20 20 20 20 20 20 20 20 20 20 20 28 2b 0a 20              (+. 
0a60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
0a70: 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20  * (vector-ref x 
0a80: 30 29 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69  0) (vector-ref i
0a90: 20 30 29 29 0a 20 20 20 20 20 20 20 20 20 20 20   0)).           
0aa0: 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f 72 2d       (* (vector-
0ab0: 72 65 66 20 78 20 31 29 20 28 76 65 63 74 6f 72  ref x 1) (vector
0ac0: 2d 72 65 66 20 69 20 31 29 29 0a 20 20 20 20 20  -ref i 1)).     
0ad0: 20 20 20 20 20 20 20 20 20 20 20 28 2a 20 28 76             (* (v
0ae0: 65 63 74 6f 72 2d 72 65 66 20 78 20 32 29 20 28  ector-ref x 2) (
0af0: 76 65 63 74 6f 72 2d 72 65 66 20 69 20 32 29 29  vector-ref i 2))
0b00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
0b10: 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20   (* (vector-ref 
0b20: 78 20 33 29 20 28 76 65 63 74 6f 72 2d 72 65 66  x 3) (vector-ref
0b30: 20 69 20 33 29 29 0a 20 20 20 20 20 20 20 20 20   i 3)).         
0b40: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
0b50: 65 66 20 78 20 34 29 29 29 0a 20 20 20 20 20 20  ef x 4))).      
0b60: 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28         (lambda (
0b70: 78 20 69 29 0a 20 20 20 20 20 20 20 20 20 20 20  x i).           
0b80: 20 20 20 20 28 2b 0a 20 20 20 20 20 20 20 20 20      (+.         
0b90: 20 20 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f         (* (vecto
0ba0: 72 2d 72 65 66 20 78 20 30 29 20 28 76 65 63 74  r-ref x 0) (vect
0bb0: 6f 72 2d 72 65 66 20 69 20 30 29 29 0a 20 20 20  or-ref i 0)).   
0bc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20               (* 
0bd0: 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 31 29  (vector-ref x 1)
0be0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69 20 31   (vector-ref i 1
0bf0: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
0c00: 20 20 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65     (* (vector-re
0c10: 66 20 78 20 32 29 20 28 76 65 63 74 6f 72 2d 72  f x 2) (vector-r
0c20: 65 66 20 69 20 32 29 29 0a 20 20 20 20 20 20 20  ef i 2)).       
0c30: 20 20 20 20 20 20 20 20 20 28 2a 20 28 76 65 63           (* (vec
0c40: 74 6f 72 2d 72 65 66 20 78 20 33 29 20 28 76 65  tor-ref x 3) (ve
0c50: 63 74 6f 72 2d 72 65 66 20 69 20 33 29 29 0a 20  ctor-ref i 3)). 
0c60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
0c70: 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20  * (vector-ref x 
0c80: 34 29 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69  4) (vector-ref i
0c90: 20 34 29 29 0a 20 20 20 20 20 20 20 20 20 20 20   4)).           
0ca0: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
0cb0: 20 78 20 35 29 29 29 0a 20 20 20 20 20 20 20 20   x 5))).        
0cc0: 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 78 20       (lambda (x 
0cd0: 69 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  i).             
0ce0: 20 20 28 2b 0a 20 20 20 20 20 20 20 20 20 20 20    (+.           
0cf0: 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f 72 2d       (* (vector-
0d00: 72 65 66 20 78 20 30 29 20 28 76 65 63 74 6f 72  ref x 0) (vector
0d10: 2d 72 65 66 20 69 20 30 29 29 0a 20 20 20 20 20  -ref i 0)).     
0d20: 20 20 20 20 20 20 20 20 20 20 20 28 2a 20 28 76             (* (v
0d30: 65 63 74 6f 72 2d 72 65 66 20 78 20 31 29 20 28  ector-ref x 1) (
0d40: 76 65 63 74 6f 72 2d 72 65 66 20 69 20 31 29 29  vector-ref i 1))
0d50: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
0d60: 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20   (* (vector-ref 
0d70: 78 20 32 29 20 28 76 65 63 74 6f 72 2d 72 65 66  x 2) (vector-ref
0d80: 20 69 20 32 29 29 0a 20 20 20 20 20 20 20 20 20   i 2)).         
0d90: 20 20 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f         (* (vecto
0da0: 72 2d 72 65 66 20 78 20 33 29 20 28 76 65 63 74  r-ref x 3) (vect
0db0: 6f 72 2d 72 65 66 20 69 20 33 29 29 0a 20 20 20  or-ref i 3)).   
0dc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20               (* 
0dd0: 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 34 29  (vector-ref x 4)
0de0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69 20 34   (vector-ref i 4
0df0: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
0e00: 20 20 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65     (* (vector-re
0e10: 66 20 78 20 35 29 20 28 76 65 63 74 6f 72 2d 72  f x 5) (vector-r
0e20: 65 66 20 69 20 35 29 29 0a 20 20 20 20 20 20 20  ef i 5)).       
0e30: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
0e40: 2d 72 65 66 20 78 20 36 29 29 29 0a 20 20 20 20  -ref x 6))).    
0e50: 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61           (lambda
0e60: 20 28 78 20 69 29 0a 20 20 20 20 20 20 20 20 20   (x i).         
0e70: 20 20 20 20 20 20 28 2b 0a 20 20 20 20 20 20 20        (+.       
0e80: 20 20 20 20 20 20 20 20 20 28 2a 20 28 76 65 63           (* (vec
0e90: 74 6f 72 2d 72 65 66 20 78 20 30 29 20 28 76 65  tor-ref x 0) (ve
0ea0: 63 74 6f 72 2d 72 65 66 20 69 20 30 29 29 0a 20  ctor-ref i 0)). 
0eb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
0ec0: 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20  * (vector-ref x 
0ed0: 31 29 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69  1) (vector-ref i
0ee0: 20 31 29 29 0a 20 20 20 20 20 20 20 20 20 20 20   1)).           
0ef0: 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f 72 2d       (* (vector-
0f00: 72 65 66 20 78 20 32 29 20 28 76 65 63 74 6f 72  ref x 2) (vector
0f10: 2d 72 65 66 20 69 20 32 29 29 0a 20 20 20 20 20  -ref i 2)).     
0f20: 20 20 20 20 20 20 20 20 20 20 20 28 2a 20 28 76             (* (v
0f30: 65 63 74 6f 72 2d 72 65 66 20 78 20 33 29 20 28  ector-ref x 3) (
0f40: 76 65 63 74 6f 72 2d 72 65 66 20 69 20 33 29 29  vector-ref i 3))
0f50: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
0f60: 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20   (* (vector-ref 
0f70: 78 20 34 29 20 28 76 65 63 74 6f 72 2d 72 65 66  x 4) (vector-ref
0f80: 20 69 20 34 29 29 0a 20 20 20 20 20 20 20 20 20   i 4)).         
0f90: 20 20 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f         (* (vecto
0fa0: 72 2d 72 65 66 20 78 20 35 29 20 28 76 65 63 74  r-ref x 5) (vect
0fb0: 6f 72 2d 72 65 66 20 69 20 35 29 29 0a 20 20 20  or-ref i 5)).   
0fc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20               (* 
0fd0: 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 36 29  (vector-ref x 6)
0fe0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69 20 36   (vector-ref i 6
0ff0: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
1000: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78     (vector-ref x
1010: 20 37 29 29 29 0a 20 20 20 20 20 20 20 20 20 20   7))).          
1020: 20 20 20 28 6c 61 6d 62 64 61 20 28 78 20 69 29     (lambda (x i)
1030: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
1040: 28 2b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  (+.             
1050: 20 20 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65     (* (vector-re
1060: 66 20 78 20 30 29 20 28 76 65 63 74 6f 72 2d 72  f x 0) (vector-r
1070: 65 66 20 69 20 30 29 29 0a 20 20 20 20 20 20 20  ef i 0)).       
1080: 20 20 20 20 20 20 20 20 20 28 2a 20 28 76 65 63           (* (vec
1090: 74 6f 72 2d 72 65 66 20 78 20 31 29 20 28 76 65  tor-ref x 1) (ve
10a0: 63 74 6f 72 2d 72 65 66 20 69 20 31 29 29 0a 20  ctor-ref i 1)). 
10b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
10c0: 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20  * (vector-ref x 
10d0: 32 29 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69  2) (vector-ref i
10e0: 20 32 29 29 0a 20 20 20 20 20 20 20 20 20 20 20   2)).           
10f0: 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f 72 2d       (* (vector-
1100: 72 65 66 20 78 20 33 29 20 28 76 65 63 74 6f 72  ref x 3) (vector
1110: 2d 72 65 66 20 69 20 33 29 29 0a 20 20 20 20 20  -ref i 3)).     
1120: 20 20 20 20 20 20 20 20 20 20 20 28 2a 20 28 76             (* (v
1130: 65 63 74 6f 72 2d 72 65 66 20 78 20 34 29 20 28  ector-ref x 4) (
1140: 76 65 63 74 6f 72 2d 72 65 66 20 69 20 34 29 29  vector-ref i 4))
1150: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
1160: 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20   (* (vector-ref 
1170: 78 20 35 29 20 28 76 65 63 74 6f 72 2d 72 65 66  x 5) (vector-ref
1180: 20 69 20 35 29 29 0a 20 20 20 20 20 20 20 20 20   i 5)).         
1190: 20 20 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f         (* (vecto
11a0: 72 2d 72 65 66 20 78 20 36 29 20 28 76 65 63 74  r-ref x 6) (vect
11b0: 6f 72 2d 72 65 66 20 69 20 36 29 29 0a 20 20 20  or-ref i 6)).   
11c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20               (* 
11d0: 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 37 29  (vector-ref x 7)
11e0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69 20 37   (vector-ref i 7
11f0: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
1200: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78     (vector-ref x
1210: 20 38 29 29 29 0a 20 20 20 20 20 20 20 20 20 20   8))).          
1220: 20 20 20 28 6c 61 6d 62 64 61 20 28 78 20 69 29     (lambda (x i)
1230: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
1240: 28 2b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  (+.             
1250: 20 20 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65     (* (vector-re
1260: 66 20 78 20 30 29 20 28 76 65 63 74 6f 72 2d 72  f x 0) (vector-r
1270: 65 66 20 69 20 30 29 29 0a 20 20 20 20 20 20 20  ef i 0)).       
1280: 20 20 20 20 20 20 20 20 20 28 2a 20 28 76 65 63           (* (vec
1290: 74 6f 72 2d 72 65 66 20 78 20 31 29 20 28 76 65  tor-ref x 1) (ve
12a0: 63 74 6f 72 2d 72 65 66 20 69 20 31 29 29 0a 20  ctor-ref i 1)). 
12b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
12c0: 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20  * (vector-ref x 
12d0: 32 29 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69  2) (vector-ref i
12e0: 20 32 29 29 0a 20 20 20 20 20 20 20 20 20 20 20   2)).           
12f0: 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f 72 2d       (* (vector-
1300: 72 65 66 20 78 20 33 29 20 28 76 65 63 74 6f 72  ref x 3) (vector
1310: 2d 72 65 66 20 69 20 33 29 29 0a 20 20 20 20 20  -ref i 3)).     
1320: 20 20 20 20 20 20 20 20 20 20 20 28 2a 20 28 76             (* (v
1330: 65 63 74 6f 72 2d 72 65 66 20 78 20 34 29 20 28  ector-ref x 4) (
1340: 76 65 63 74 6f 72 2d 72 65 66 20 69 20 34 29 29  vector-ref i 4))
1350: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
1360: 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20   (* (vector-ref 
1370: 78 20 35 29 20 28 76 65 63 74 6f 72 2d 72 65 66  x 5) (vector-ref
1380: 20 69 20 35 29 29 0a 20 20 20 20 20 20 20 20 20   i 5)).         
1390: 20 20 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f         (* (vecto
13a0: 72 2d 72 65 66 20 78 20 36 29 20 28 76 65 63 74  r-ref x 6) (vect
13b0: 6f 72 2d 72 65 66 20 69 20 36 29 29 0a 20 20 20  or-ref i 6)).   
13c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20               (* 
13d0: 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 37 29  (vector-ref x 7)
13e0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69 20 37   (vector-ref i 7
13f0: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
1400: 20 20 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65     (* (vector-re
1410: 66 20 78 20 38 29 20 28 76 65 63 74 6f 72 2d 72  f x 8) (vector-r
1420: 65 66 20 69 20 38 29 29 0a 20 20 20 20 20 20 20  ef i 8)).       
1430: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
1440: 2d 72 65 66 20 78 20 39 29 29 29 29 29 0a 20 20  -ref x 9))))).  
1450: 20 20 20 20 20 20 20 20 28 69 74 0a 20 20 20 20          (it.    
1460: 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28         (lambda (
1470: 77 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  w).             
1480: 28 6c 61 6d 62 64 61 20 28 78 20 69 29 0a 20 20  (lambda (x i).  
1490: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2b 0a               (+.
14a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
14b0: 28 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78  (* (vector-ref x
14c0: 20 30 29 20 28 76 65 63 74 6f 72 2d 72 65 66 20   0) (vector-ref 
14d0: 69 20 30 29 29 0a 20 20 20 20 20 20 20 20 20 20  i 0)).          
14e0: 20 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f 72        (* (vector
14f0: 2d 72 65 66 20 78 20 31 29 20 28 76 65 63 74 6f  -ref x 1) (vecto
1500: 72 2d 72 65 66 20 69 20 31 29 29 0a 20 20 20 20  r-ref i 1)).    
1510: 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20 28              (* (
1520: 76 65 63 74 6f 72 2d 72 65 66 20 78 20 32 29 20  vector-ref x 2) 
1530: 28 76 65 63 74 6f 72 2d 72 65 66 20 69 20 32 29  (vector-ref i 2)
1540: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
1550: 20 20 28 2a 20 28 76 65 63 74 6f 72 2d 72 65 66    (* (vector-ref
1560: 20 78 20 33 29 20 28 76 65 63 74 6f 72 2d 72 65   x 3) (vector-re
1570: 66 20 69 20 33 29 29 0a 20 20 20 20 20 20 20 20  f i 3)).        
1580: 20 20 20 20 20 20 20 20 28 2a 20 28 76 65 63 74          (* (vect
1590: 6f 72 2d 72 65 66 20 78 20 34 29 20 28 76 65 63  or-ref x 4) (vec
15a0: 74 6f 72 2d 72 65 66 20 69 20 34 29 29 0a 20 20  tor-ref i 4)).  
15b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a                (*
15c0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 35   (vector-ref x 5
15d0: 29 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69 20  ) (vector-ref i 
15e0: 35 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  5)).            
15f0: 20 20 20 20 28 2a 20 28 76 65 63 74 6f 72 2d 72      (* (vector-r
1600: 65 66 20 78 20 36 29 20 28 76 65 63 74 6f 72 2d  ef x 6) (vector-
1610: 72 65 66 20 69 20 36 29 29 0a 20 20 20 20 20 20  ref i 6)).      
1620: 20 20 20 20 20 20 20 20 20 20 28 2a 20 28 76 65            (* (ve
1630: 63 74 6f 72 2d 72 65 66 20 78 20 37 29 20 28 76  ctor-ref x 7) (v
1640: 65 63 74 6f 72 2d 72 65 66 20 69 20 37 29 29 0a  ector-ref i 7)).
1650: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1660: 28 2a 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78  (* (vector-ref x
1670: 20 38 29 20 28 76 65 63 74 6f 72 2d 72 65 66 20   8) (vector-ref 
1680: 69 20 38 29 29 0a 20 20 20 20 20 20 20 20 20 20  i 8)).          
1690: 20 20 20 20 20 20 28 2a 20 28 76 65 63 74 6f 72        (* (vector
16a0: 2d 72 65 66 20 78 20 39 29 20 28 76 65 63 74 6f  -ref x 9) (vecto
16b0: 72 2d 72 65 66 20 69 20 39 29 29 0a 20 20 20 20  r-ref i 9)).    
16c0: 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 20              (do 
16d0: 28 28 78 69 0a 20 20 20 20 20 20 20 20 20 20 20  ((xi.           
16e0: 20 20 20 20 20 20 20 20 20 20 20 30 0a 20 20 20             0.   
16f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1700: 20 20 20 28 2b 0a 20 20 20 20 20 20 20 20 20 20     (+.          
1710: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 20               (* 
1720: 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 75 29  (vector-ref x u)
1730: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 69 20 75   (vector-ref i u
1740: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
1750: 20 20 20 20 20 20 20 20 20 20 78 69 29 29 0a 20            xi)). 
1760: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1770: 20 20 20 20 28 75 20 28 2d 20 77 20 31 29 20 28      (u (- w 1) (
1780: 2d 20 75 20 31 29 29 29 0a 20 20 20 20 20 20 20  - u 1))).       
1790: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 3c               ((<
17a0: 20 75 20 31 30 29 20 78 69 29 29 0a 20 20 20 20   u 10) xi)).    
17b0: 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63              (vec
17c0: 74 6f 72 2d 72 65 66 20 78 20 77 29 29 29 29 29  tor-ref x w)))))
17d0: 29 0a 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20  ).      (lambda 
17e0: 28 72 29 20 28 69 66 20 28 3c 20 72 20 31 30 29  (r) (if (< r 10)
17f0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 65 6d 20   (vector-ref em 
1800: 72 29 20 28 69 74 20 72 29 29 29 29 29 0a 20 20  r) (it r))))).  
1810: 28 64 65 66 69 6e 65 20 61 72 72 61 79 3a 69 6e  (define array:in
1820: 64 65 78 65 72 2f 61 72 72 61 79 0a 20 20 20 20  dexer/array.    
1830: 28 6c 65 74 20 28 28 65 6d 0a 20 20 20 20 20 20  (let ((em.      
1840: 20 20 20 20 20 28 76 65 63 74 6f 72 0a 20 20 20       (vector.   
1850: 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64            (lambd
1860: 61 20 28 78 20 76 20 69 29 20 28 2b 20 28 76 65  a (x v i) (+ (ve
1870: 63 74 6f 72 2d 72 65 66 20 78 20 30 29 29 29 0a  ctor-ref x 0))).
1880: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61               (la
1890: 6d 62 64 61 20 28 78 20 76 20 69 29 0a 20 20 20  mbda (x v i).   
18a0: 20 20 20 20 20 20 20 20 20 20 20 20 28 2b 0a 20              (+. 
18b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
18c0: 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  *.              
18d0: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78     (vector-ref x
18e0: 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20   0).            
18f0: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
1900: 20 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d   v (array:actor-
1910: 69 6e 64 65 78 20 69 20 30 29 29 29 0a 20 20 20  index i 0))).   
1920: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
1930: 63 74 6f 72 2d 72 65 66 20 78 20 31 29 29 29 0a  ctor-ref x 1))).
1940: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61               (la
1950: 6d 62 64 61 20 28 78 20 76 20 69 29 0a 20 20 20  mbda (x v i).   
1960: 20 20 20 20 20 20 20 20 20 20 20 20 28 2b 0a 20              (+. 
1970: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
1980: 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  *.              
1990: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78     (vector-ref x
19a0: 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20   0).            
19b0: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
19c0: 20 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d   v (array:actor-
19d0: 69 6e 64 65 78 20 69 20 30 29 29 29 0a 20 20 20  index i 0))).   
19e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a               (*.
19f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1a00: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 31   (vector-ref x 1
1a10: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
1a20: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76     (vector-ref v
1a30: 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e   (array:actor-in
1a40: 64 65 78 20 69 20 31 29 29 29 0a 20 20 20 20 20  dex i 1))).     
1a50: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
1a60: 6f 72 2d 72 65 66 20 78 20 32 29 29 29 0a 20 20  or-ref x 2))).  
1a70: 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62             (lamb
1a80: 64 61 20 28 78 20 76 20 69 29 0a 20 20 20 20 20  da (x v i).     
1a90: 20 20 20 20 20 20 20 20 20 20 28 2b 0a 20 20 20            (+.   
1aa0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a               (*.
1ab0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1ac0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 30   (vector-ref x 0
1ad0: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
1ae0: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76     (vector-ref v
1af0: 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e   (array:actor-in
1b00: 64 65 78 20 69 20 30 29 29 29 0a 20 20 20 20 20  dex i 0))).     
1b10: 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20             (*.  
1b20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
1b30: 76 65 63 74 6f 72 2d 72 65 66 20 78 20 31 29 0a  vector-ref x 1).
1b40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1b50: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28   (vector-ref v (
1b60: 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65  array:actor-inde
1b70: 78 20 69 20 31 29 29 29 0a 20 20 20 20 20 20 20  x i 1))).       
1b80: 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20           (*.    
1b90: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
1ba0: 63 74 6f 72 2d 72 65 66 20 78 20 32 29 0a 20 20  ctor-ref x 2).  
1bb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
1bc0: 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72  vector-ref v (ar
1bd0: 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20  ray:actor-index 
1be0: 69 20 32 29 29 29 0a 20 20 20 20 20 20 20 20 20  i 2))).         
1bf0: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
1c00: 65 66 20 78 20 33 29 29 29 0a 20 20 20 20 20 20  ef x 3))).      
1c10: 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28         (lambda (
1c20: 78 20 76 20 69 29 0a 20 20 20 20 20 20 20 20 20  x v i).         
1c30: 20 20 20 20 20 20 28 2b 0a 20 20 20 20 20 20 20        (+.       
1c40: 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20           (*.    
1c50: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
1c60: 63 74 6f 72 2d 72 65 66 20 78 20 30 29 0a 20 20  ctor-ref x 0).  
1c70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
1c80: 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72  vector-ref v (ar
1c90: 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20  ray:actor-index 
1ca0: 69 20 30 29 29 29 0a 20 20 20 20 20 20 20 20 20  i 0))).         
1cb0: 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20 20 20         (*.      
1cc0: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
1cd0: 6f 72 2d 72 65 66 20 78 20 31 29 0a 20 20 20 20  or-ref x 1).    
1ce0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
1cf0: 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72 72 61  ctor-ref v (arra
1d00: 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 69 20  y:actor-index i 
1d10: 31 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  1))).           
1d20: 20 20 20 20 20 28 2a 0a 20 20 20 20 20 20 20 20       (*.        
1d30: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
1d40: 2d 72 65 66 20 78 20 32 29 0a 20 20 20 20 20 20  -ref x 2).      
1d50: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
1d60: 6f 72 2d 72 65 66 20 76 20 28 61 72 72 61 79 3a  or-ref v (array:
1d70: 61 63 74 6f 72 2d 69 6e 64 65 78 20 69 20 32 29  actor-index i 2)
1d80: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
1d90: 20 20 20 28 2a 0a 20 20 20 20 20 20 20 20 20 20     (*.          
1da0: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
1db0: 65 66 20 78 20 33 29 0a 20 20 20 20 20 20 20 20  ef x 3).        
1dc0: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
1dd0: 2d 72 65 66 20 76 20 28 61 72 72 61 79 3a 61 63  -ref v (array:ac
1de0: 74 6f 72 2d 69 6e 64 65 78 20 69 20 33 29 29 29  tor-index i 3)))
1df0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
1e00: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 34   (vector-ref x 4
1e10: 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  ))).            
1e20: 20 28 6c 61 6d 62 64 61 20 28 78 20 76 20 69 29   (lambda (x v i)
1e30: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
1e40: 28 2b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  (+.             
1e50: 20 20 20 28 2a 0a 20 20 20 20 20 20 20 20 20 20     (*.          
1e60: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
1e70: 65 66 20 78 20 30 29 0a 20 20 20 20 20 20 20 20  ef x 0).        
1e80: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
1e90: 2d 72 65 66 20 76 20 28 61 72 72 61 79 3a 61 63  -ref v (array:ac
1ea0: 74 6f 72 2d 69 6e 64 65 78 20 69 20 30 29 29 29  tor-index i 0)))
1eb0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
1ec0: 20 28 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20   (*.            
1ed0: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
1ee0: 20 78 20 31 29 0a 20 20 20 20 20 20 20 20 20 20   x 1).          
1ef0: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
1f00: 65 66 20 76 20 28 61 72 72 61 79 3a 61 63 74 6f  ef v (array:acto
1f10: 72 2d 69 6e 64 65 78 20 69 20 31 29 29 29 0a 20  r-index i 1))). 
1f20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
1f30: 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  *.              
1f40: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78     (vector-ref x
1f50: 20 32 29 0a 20 20 20 20 20 20 20 20 20 20 20 20   2).            
1f60: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
1f70: 20 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d   v (array:actor-
1f80: 69 6e 64 65 78 20 69 20 32 29 29 29 0a 20 20 20  index i 2))).   
1f90: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a               (*.
1fa0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1fb0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 33   (vector-ref x 3
1fc0: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
1fd0: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76     (vector-ref v
1fe0: 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e   (array:actor-in
1ff0: 64 65 78 20 69 20 33 29 29 29 0a 20 20 20 20 20  dex i 3))).     
2000: 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20             (*.  
2010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
2020: 76 65 63 74 6f 72 2d 72 65 66 20 78 20 34 29 0a  vector-ref x 4).
2030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2040: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28   (vector-ref v (
2050: 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65  array:actor-inde
2060: 78 20 69 20 34 29 29 29 0a 20 20 20 20 20 20 20  x i 4))).       
2070: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
2080: 2d 72 65 66 20 78 20 35 29 29 29 0a 20 20 20 20  -ref x 5))).    
2090: 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61           (lambda
20a0: 20 28 78 20 76 20 69 29 0a 20 20 20 20 20 20 20   (x v i).       
20b0: 20 20 20 20 20 20 20 20 28 2b 0a 20 20 20 20 20          (+.     
20c0: 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20             (*.  
20d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
20e0: 76 65 63 74 6f 72 2d 72 65 66 20 78 20 30 29 0a  vector-ref x 0).
20f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2100: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28   (vector-ref v (
2110: 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65  array:actor-inde
2120: 78 20 69 20 30 29 29 29 0a 20 20 20 20 20 20 20  x i 0))).       
2130: 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20           (*.    
2140: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
2150: 63 74 6f 72 2d 72 65 66 20 78 20 31 29 0a 20 20  ctor-ref x 1).  
2160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
2170: 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72  vector-ref v (ar
2180: 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20  ray:actor-index 
2190: 69 20 31 29 29 29 0a 20 20 20 20 20 20 20 20 20  i 1))).         
21a0: 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20 20 20         (*.      
21b0: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
21c0: 6f 72 2d 72 65 66 20 78 20 32 29 0a 20 20 20 20  or-ref x 2).    
21d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
21e0: 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72 72 61  ctor-ref v (arra
21f0: 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 69 20  y:actor-index i 
2200: 32 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  2))).           
2210: 20 20 20 20 20 28 2a 0a 20 20 20 20 20 20 20 20       (*.        
2220: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
2230: 2d 72 65 66 20 78 20 33 29 0a 20 20 20 20 20 20  -ref x 3).      
2240: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
2250: 6f 72 2d 72 65 66 20 76 20 28 61 72 72 61 79 3a  or-ref v (array:
2260: 61 63 74 6f 72 2d 69 6e 64 65 78 20 69 20 33 29  actor-index i 3)
2270: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
2280: 20 20 20 28 2a 0a 20 20 20 20 20 20 20 20 20 20     (*.          
2290: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
22a0: 65 66 20 78 20 34 29 0a 20 20 20 20 20 20 20 20  ef x 4).        
22b0: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
22c0: 2d 72 65 66 20 76 20 28 61 72 72 61 79 3a 61 63  -ref v (array:ac
22d0: 74 6f 72 2d 69 6e 64 65 78 20 69 20 34 29 29 29  tor-index i 4)))
22e0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
22f0: 20 28 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20   (*.            
2300: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
2310: 20 78 20 35 29 0a 20 20 20 20 20 20 20 20 20 20   x 5).          
2320: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
2330: 65 66 20 76 20 28 61 72 72 61 79 3a 61 63 74 6f  ef v (array:acto
2340: 72 2d 69 6e 64 65 78 20 69 20 35 29 29 29 0a 20  r-index i 5))). 
2350: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
2360: 76 65 63 74 6f 72 2d 72 65 66 20 78 20 36 29 29  vector-ref x 6))
2370: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28  ).             (
2380: 6c 61 6d 62 64 61 20 28 78 20 76 20 69 29 0a 20  lambda (x v i). 
2390: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2b                (+
23a0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
23b0: 20 28 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20   (*.            
23c0: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
23d0: 20 78 20 30 29 0a 20 20 20 20 20 20 20 20 20 20   x 0).          
23e0: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
23f0: 65 66 20 76 20 28 61 72 72 61 79 3a 61 63 74 6f  ef v (array:acto
2400: 72 2d 69 6e 64 65 78 20 69 20 30 29 29 29 0a 20  r-index i 0))). 
2410: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
2420: 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  *.              
2430: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78     (vector-ref x
2440: 20 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20   1).            
2450: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
2460: 20 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d   v (array:actor-
2470: 69 6e 64 65 78 20 69 20 31 29 29 29 0a 20 20 20  index i 1))).   
2480: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a               (*.
2490: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
24a0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 32   (vector-ref x 2
24b0: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
24c0: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76     (vector-ref v
24d0: 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e   (array:actor-in
24e0: 64 65 78 20 69 20 32 29 29 29 0a 20 20 20 20 20  dex i 2))).     
24f0: 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20             (*.  
2500: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
2510: 76 65 63 74 6f 72 2d 72 65 66 20 78 20 33 29 0a  vector-ref x 3).
2520: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2530: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28   (vector-ref v (
2540: 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65  array:actor-inde
2550: 78 20 69 20 33 29 29 29 0a 20 20 20 20 20 20 20  x i 3))).       
2560: 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20           (*.    
2570: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
2580: 63 74 6f 72 2d 72 65 66 20 78 20 34 29 0a 20 20  ctor-ref x 4).  
2590: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
25a0: 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72  vector-ref v (ar
25b0: 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20  ray:actor-index 
25c0: 69 20 34 29 29 29 0a 20 20 20 20 20 20 20 20 20  i 4))).         
25d0: 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20 20 20         (*.      
25e0: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
25f0: 6f 72 2d 72 65 66 20 78 20 35 29 0a 20 20 20 20  or-ref x 5).    
2600: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
2610: 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72 72 61  ctor-ref v (arra
2620: 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 69 20  y:actor-index i 
2630: 35 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  5))).           
2640: 20 20 20 20 20 28 2a 0a 20 20 20 20 20 20 20 20       (*.        
2650: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
2660: 2d 72 65 66 20 78 20 36 29 0a 20 20 20 20 20 20  -ref x 6).      
2670: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
2680: 6f 72 2d 72 65 66 20 76 20 28 61 72 72 61 79 3a  or-ref v (array:
2690: 61 63 74 6f 72 2d 69 6e 64 65 78 20 69 20 36 29  actor-index i 6)
26a0: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
26b0: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78     (vector-ref x
26c0: 20 37 29 29 29 0a 20 20 20 20 20 20 20 20 20 20   7))).          
26d0: 20 20 20 28 6c 61 6d 62 64 61 20 28 78 20 76 20     (lambda (x v 
26e0: 69 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  i).             
26f0: 20 20 28 2b 0a 20 20 20 20 20 20 20 20 20 20 20    (+.           
2700: 20 20 20 20 20 28 2a 0a 20 20 20 20 20 20 20 20       (*.        
2710: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
2720: 2d 72 65 66 20 78 20 30 29 0a 20 20 20 20 20 20  -ref x 0).      
2730: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
2740: 6f 72 2d 72 65 66 20 76 20 28 61 72 72 61 79 3a  or-ref v (array:
2750: 61 63 74 6f 72 2d 69 6e 64 65 78 20 69 20 30 29  actor-index i 0)
2760: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
2770: 20 20 20 28 2a 0a 20 20 20 20 20 20 20 20 20 20     (*.          
2780: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
2790: 65 66 20 78 20 31 29 0a 20 20 20 20 20 20 20 20  ef x 1).        
27a0: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
27b0: 2d 72 65 66 20 76 20 28 61 72 72 61 79 3a 61 63  -ref v (array:ac
27c0: 74 6f 72 2d 69 6e 64 65 78 20 69 20 31 29 29 29  tor-index i 1)))
27d0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
27e0: 20 28 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20   (*.            
27f0: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
2800: 20 78 20 32 29 0a 20 20 20 20 20 20 20 20 20 20   x 2).          
2810: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
2820: 65 66 20 76 20 28 61 72 72 61 79 3a 61 63 74 6f  ef v (array:acto
2830: 72 2d 69 6e 64 65 78 20 69 20 32 29 29 29 0a 20  r-index i 2))). 
2840: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
2850: 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  *.              
2860: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78     (vector-ref x
2870: 20 33 29 0a 20 20 20 20 20 20 20 20 20 20 20 20   3).            
2880: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
2890: 20 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d   v (array:actor-
28a0: 69 6e 64 65 78 20 69 20 33 29 29 29 0a 20 20 20  index i 3))).   
28b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a               (*.
28c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
28d0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 34   (vector-ref x 4
28e0: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
28f0: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76     (vector-ref v
2900: 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e   (array:actor-in
2910: 64 65 78 20 69 20 34 29 29 29 0a 20 20 20 20 20  dex i 4))).     
2920: 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20             (*.  
2930: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
2940: 76 65 63 74 6f 72 2d 72 65 66 20 78 20 35 29 0a  vector-ref x 5).
2950: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2960: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28   (vector-ref v (
2970: 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65  array:actor-inde
2980: 78 20 69 20 35 29 29 29 0a 20 20 20 20 20 20 20  x i 5))).       
2990: 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20           (*.    
29a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
29b0: 63 74 6f 72 2d 72 65 66 20 78 20 36 29 0a 20 20  ctor-ref x 6).  
29c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
29d0: 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72  vector-ref v (ar
29e0: 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20  ray:actor-index 
29f0: 69 20 36 29 29 29 0a 20 20 20 20 20 20 20 20 20  i 6))).         
2a00: 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20 20 20         (*.      
2a10: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
2a20: 6f 72 2d 72 65 66 20 78 20 37 29 0a 20 20 20 20  or-ref x 7).    
2a30: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
2a40: 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72 72 61  ctor-ref v (arra
2a50: 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 69 20  y:actor-index i 
2a60: 37 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  7))).           
2a70: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
2a80: 20 78 20 38 29 29 29 0a 20 20 20 20 20 20 20 20   x 8))).        
2a90: 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 78 20       (lambda (x 
2aa0: 76 20 69 29 0a 20 20 20 20 20 20 20 20 20 20 20  v i).           
2ab0: 20 20 20 20 28 2b 0a 20 20 20 20 20 20 20 20 20      (+.         
2ac0: 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20 20 20         (*.      
2ad0: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
2ae0: 6f 72 2d 72 65 66 20 78 20 30 29 0a 20 20 20 20  or-ref x 0).    
2af0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
2b00: 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72 72 61  ctor-ref v (arra
2b10: 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 69 20  y:actor-index i 
2b20: 30 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  0))).           
2b30: 20 20 20 20 20 28 2a 0a 20 20 20 20 20 20 20 20       (*.        
2b40: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
2b50: 2d 72 65 66 20 78 20 31 29 0a 20 20 20 20 20 20  -ref x 1).      
2b60: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
2b70: 6f 72 2d 72 65 66 20 76 20 28 61 72 72 61 79 3a  or-ref v (array:
2b80: 61 63 74 6f 72 2d 69 6e 64 65 78 20 69 20 31 29  actor-index i 1)
2b90: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
2ba0: 20 20 20 28 2a 0a 20 20 20 20 20 20 20 20 20 20     (*.          
2bb0: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
2bc0: 65 66 20 78 20 32 29 0a 20 20 20 20 20 20 20 20  ef x 2).        
2bd0: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
2be0: 2d 72 65 66 20 76 20 28 61 72 72 61 79 3a 61 63  -ref v (array:ac
2bf0: 74 6f 72 2d 69 6e 64 65 78 20 69 20 32 29 29 29  tor-index i 2)))
2c00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2c10: 20 28 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20   (*.            
2c20: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
2c30: 20 78 20 33 29 0a 20 20 20 20 20 20 20 20 20 20   x 3).          
2c40: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
2c50: 65 66 20 76 20 28 61 72 72 61 79 3a 61 63 74 6f  ef v (array:acto
2c60: 72 2d 69 6e 64 65 78 20 69 20 33 29 29 29 0a 20  r-index i 3))). 
2c70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
2c80: 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  *.              
2c90: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78     (vector-ref x
2ca0: 20 34 29 0a 20 20 20 20 20 20 20 20 20 20 20 20   4).            
2cb0: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
2cc0: 20 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d   v (array:actor-
2cd0: 69 6e 64 65 78 20 69 20 34 29 29 29 0a 20 20 20  index i 4))).   
2ce0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a               (*.
2cf0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2d00: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 35   (vector-ref x 5
2d10: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
2d20: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76     (vector-ref v
2d30: 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e   (array:actor-in
2d40: 64 65 78 20 69 20 35 29 29 29 0a 20 20 20 20 20  dex i 5))).     
2d50: 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20             (*.  
2d60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
2d70: 76 65 63 74 6f 72 2d 72 65 66 20 78 20 36 29 0a  vector-ref x 6).
2d80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2d90: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28   (vector-ref v (
2da0: 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65  array:actor-inde
2db0: 78 20 69 20 36 29 29 29 0a 20 20 20 20 20 20 20  x i 6))).       
2dc0: 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20           (*.    
2dd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
2de0: 63 74 6f 72 2d 72 65 66 20 78 20 37 29 0a 20 20  ctor-ref x 7).  
2df0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
2e00: 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72  vector-ref v (ar
2e10: 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20  ray:actor-index 
2e20: 69 20 37 29 29 29 0a 20 20 20 20 20 20 20 20 20  i 7))).         
2e30: 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20 20 20         (*.      
2e40: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
2e50: 6f 72 2d 72 65 66 20 78 20 38 29 0a 20 20 20 20  or-ref x 8).    
2e60: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
2e70: 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72 72 61  ctor-ref v (arra
2e80: 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 69 20  y:actor-index i 
2e90: 38 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  8))).           
2ea0: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
2eb0: 20 78 20 39 29 29 29 29 29 0a 20 20 20 20 20 20   x 9))))).      
2ec0: 20 20 20 20 28 69 74 0a 20 20 20 20 20 20 20 20      (it.        
2ed0: 20 20 20 28 6c 61 6d 62 64 61 20 28 77 29 0a 20     (lambda (w). 
2ee0: 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d              (lam
2ef0: 62 64 61 20 28 78 20 76 20 69 29 0a 20 20 20 20  bda (x v i).    
2f00: 20 20 20 20 20 20 20 20 20 20 20 28 2b 0a 20 20             (+.  
2f10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a                (*
2f20: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2f30: 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20    (vector-ref x 
2f40: 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  0).             
2f50: 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20      (vector-ref 
2f60: 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69  v (array:actor-i
2f70: 6e 64 65 78 20 69 20 30 29 29 29 0a 20 20 20 20  ndex i 0))).    
2f80: 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a 20              (*. 
2f90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2fa0: 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 31 29  (vector-ref x 1)
2fb0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
2fc0: 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20    (vector-ref v 
2fd0: 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64  (array:actor-ind
2fe0: 65 78 20 69 20 31 29 29 29 0a 20 20 20 20 20 20  ex i 1))).      
2ff0: 20 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20 20            (*.   
3000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76                (v
3010: 65 63 74 6f 72 2d 72 65 66 20 78 20 32 29 0a 20  ector-ref x 2). 
3020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3030: 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 28 61  (vector-ref v (a
3040: 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78  rray:actor-index
3050: 20 69 20 32 29 29 29 0a 20 20 20 20 20 20 20 20   i 2))).        
3060: 20 20 20 20 20 20 20 20 28 2a 0a 20 20 20 20 20          (*.     
3070: 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63              (vec
3080: 74 6f 72 2d 72 65 66 20 78 20 33 29 0a 20 20 20  tor-ref x 3).   
3090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76                (v
30a0: 65 63 74 6f 72 2d 72 65 66 20 76 20 28 61 72 72  ector-ref v (arr
30b0: 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 69  ay:actor-index i
30c0: 20 33 29 29 29 0a 20 20 20 20 20 20 20 20 20 20   3))).          
30d0: 20 20 20 20 20 20 28 2a 0a 20 20 20 20 20 20 20        (*.       
30e0: 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f            (vecto
30f0: 72 2d 72 65 66 20 78 20 34 29 0a 20 20 20 20 20  r-ref x 4).     
3100: 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63              (vec
3110: 74 6f 72 2d 72 65 66 20 76 20 28 61 72 72 61 79  tor-ref v (array
3120: 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 69 20 34  :actor-index i 4
3130: 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  ))).            
3140: 20 20 20 20 28 2a 0a 20 20 20 20 20 20 20 20 20      (*.         
3150: 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d          (vector-
3160: 72 65 66 20 78 20 35 29 0a 20 20 20 20 20 20 20  ref x 5).       
3170: 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f            (vecto
3180: 72 2d 72 65 66 20 76 20 28 61 72 72 61 79 3a 61  r-ref v (array:a
3190: 63 74 6f 72 2d 69 6e 64 65 78 20 69 20 35 29 29  ctor-index i 5))
31a0: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
31b0: 20 20 28 2a 0a 20 20 20 20 20 20 20 20 20 20 20    (*.           
31c0: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
31d0: 66 20 78 20 36 29 0a 20 20 20 20 20 20 20 20 20  f x 6).         
31e0: 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d          (vector-
31f0: 72 65 66 20 76 20 28 61 72 72 61 79 3a 61 63 74  ref v (array:act
3200: 6f 72 2d 69 6e 64 65 78 20 69 20 36 29 29 29 0a  or-index i 6))).
3210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3220: 28 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  (*.             
3230: 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20      (vector-ref 
3240: 78 20 37 29 0a 20 20 20 20 20 20 20 20 20 20 20  x 7).           
3250: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
3260: 66 20 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72  f v (array:actor
3270: 2d 69 6e 64 65 78 20 69 20 37 29 29 29 0a 20 20  -index i 7))).  
3280: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 2a                (*
3290: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
32a0: 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20    (vector-ref x 
32b0: 38 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  8).             
32c0: 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20      (vector-ref 
32d0: 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69  v (array:actor-i
32e0: 6e 64 65 78 20 69 20 38 29 29 29 0a 20 20 20 20  ndex i 8))).    
32f0: 20 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a 20              (*. 
3300: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3310: 28 76 65 63 74 6f 72 2d 72 65 66 20 78 20 39 29  (vector-ref x 9)
3320: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
3330: 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20    (vector-ref v 
3340: 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64  (array:actor-ind
3350: 65 78 20 69 20 39 29 29 29 0a 20 20 20 20 20 20  ex i 9))).      
3360: 20 20 20 20 20 20 20 20 20 20 28 64 6f 20 28 28            (do ((
3370: 78 69 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  xi.             
3380: 20 20 20 20 20 20 20 20 20 30 0a 20 20 20 20 20           0.     
3390: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
33a0: 20 28 2b 0a 20 20 20 20 20 20 20 20 20 20 20 20   (+.            
33b0: 20 20 20 20 20 20 20 20 20 20 20 28 2a 0a 20 20             (*.  
33c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
33d0: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
33e0: 66 20 78 20 75 29 0a 20 20 20 20 20 20 20 20 20  f x u).         
33f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
3400: 76 65 63 74 6f 72 2d 72 65 66 0a 20 20 20 20 20  vector-ref.     
3410: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3420: 20 20 20 20 20 76 0a 20 20 20 20 20 20 20 20 20       v.         
3430: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3440: 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e   (array:actor-in
3450: 64 65 78 20 69 20 75 29 29 29 0a 20 20 20 20 20  dex i u))).     
3460: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3470: 20 20 78 69 29 29 0a 20 20 20 20 20 20 20 20 20    xi)).         
3480: 20 20 20 20 20 20 20 20 20 20 20 20 28 75 20 28              (u (
3490: 2d 20 77 20 31 29 20 28 2d 20 75 20 31 29 29 29  - w 1) (- u 1)))
34a0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
34b0: 20 20 20 20 20 28 28 3c 20 75 20 31 30 29 20 78       ((< u 10) x
34c0: 69 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  i)).            
34d0: 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20      (vector-ref 
34e0: 78 20 77 29 29 29 29 29 29 0a 20 20 20 20 20 20  x w)))))).      
34f0: 28 6c 61 6d 62 64 61 20 28 72 29 20 28 69 66 20  (lambda (r) (if 
3500: 28 3c 20 72 20 31 30 29 20 28 76 65 63 74 6f 72  (< r 10) (vector
3510: 2d 72 65 66 20 65 6d 20 72 29 20 28 69 74 20 72  -ref em r) (it r
3520: 29 29 29 29 29 0a 20 20 28 64 65 66 69 6e 65 20  ))))).  (define 
3530: 61 72 72 61 79 3a 61 70 70 6c 69 65 72 2d 74 6f  array:applier-to
3540: 2d 76 65 63 74 6f 72 0a 20 20 20 20 28 6c 65 74  -vector.    (let
3550: 20 28 28 65 6d 0a 20 20 20 20 20 20 20 20 20 20   ((em.          
3560: 20 28 76 65 63 74 6f 72 0a 20 20 20 20 20 20 20   (vector.       
3570: 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 70        (lambda (p
3580: 20 76 29 20 28 70 29 29 0a 20 20 20 20 20 20 20   v) (p)).       
3590: 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 70        (lambda (p
35a0: 20 76 29 20 28 70 20 28 76 65 63 74 6f 72 2d 72   v) (p (vector-r
35b0: 65 66 20 76 20 30 29 29 29 0a 20 20 20 20 20 20  ef v 0))).      
35c0: 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28         (lambda (
35d0: 70 20 76 29 0a 20 20 20 20 20 20 20 20 20 20 20  p v).           
35e0: 20 20 20 20 28 70 20 28 76 65 63 74 6f 72 2d 72      (p (vector-r
35f0: 65 66 20 76 20 30 29 20 28 76 65 63 74 6f 72 2d  ef v 0) (vector-
3600: 72 65 66 20 76 20 31 29 29 29 0a 20 20 20 20 20  ref v 1))).     
3610: 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20          (lambda 
3620: 28 70 20 76 29 0a 20 20 20 20 20 20 20 20 20 20  (p v).          
3630: 20 20 20 20 20 28 70 0a 20 20 20 20 20 20 20 20       (p.        
3640: 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d          (vector-
3650: 72 65 66 20 76 20 30 29 0a 20 20 20 20 20 20 20  ref v 0).       
3660: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
3670: 2d 72 65 66 20 76 20 31 29 0a 20 20 20 20 20 20  -ref v 1).      
3680: 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f            (vecto
3690: 72 2d 72 65 66 20 76 20 32 29 29 29 0a 20 20 20  r-ref v 2))).   
36a0: 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64            (lambd
36b0: 61 20 28 70 20 76 29 0a 20 20 20 20 20 20 20 20  a (p v).        
36c0: 20 20 20 20 20 20 20 28 70 0a 20 20 20 20 20 20         (p.      
36d0: 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f            (vecto
36e0: 72 2d 72 65 66 20 76 20 30 29 0a 20 20 20 20 20  r-ref v 0).     
36f0: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
3700: 6f 72 2d 72 65 66 20 76 20 31 29 0a 20 20 20 20  or-ref v 1).    
3710: 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63              (vec
3720: 74 6f 72 2d 72 65 66 20 76 20 32 29 0a 20 20 20  tor-ref v 2).   
3730: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
3740: 63 74 6f 72 2d 72 65 66 20 76 20 33 29 29 29 0a  ctor-ref v 3))).
3750: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61               (la
3760: 6d 62 64 61 20 28 70 20 76 29 0a 20 20 20 20 20  mbda (p v).     
3770: 20 20 20 20 20 20 20 20 20 20 28 70 0a 20 20 20            (p.   
3780: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
3790: 63 74 6f 72 2d 72 65 66 20 76 20 30 29 0a 20 20  ctor-ref v 0).  
37a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76                (v
37b0: 65 63 74 6f 72 2d 72 65 66 20 76 20 31 29 0a 20  ector-ref v 1). 
37c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
37d0: 76 65 63 74 6f 72 2d 72 65 66 20 76 20 32 29 0a  vector-ref v 2).
37e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
37f0: 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 33 29  (vector-ref v 3)
3800: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
3810: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 34   (vector-ref v 4
3820: 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  ))).            
3830: 20 28 6c 61 6d 62 64 61 20 28 70 20 76 29 0a 20   (lambda (p v). 
3840: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70                (p
3850: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
3860: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 30   (vector-ref v 0
3870: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
3880: 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20    (vector-ref v 
3890: 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  1).             
38a0: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76     (vector-ref v
38b0: 20 32 29 0a 20 20 20 20 20 20 20 20 20 20 20 20   2).            
38c0: 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20      (vector-ref 
38d0: 76 20 33 29 0a 20 20 20 20 20 20 20 20 20 20 20  v 3).           
38e0: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
38f0: 20 76 20 34 29 0a 20 20 20 20 20 20 20 20 20 20   v 4).          
3900: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
3910: 66 20 76 20 35 29 29 29 0a 20 20 20 20 20 20 20  f v 5))).       
3920: 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 70        (lambda (p
3930: 20 76 29 0a 20 20 20 20 20 20 20 20 20 20 20 20   v).            
3940: 20 20 20 28 70 0a 20 20 20 20 20 20 20 20 20 20     (p.          
3950: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
3960: 66 20 76 20 30 29 0a 20 20 20 20 20 20 20 20 20  f v 0).         
3970: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
3980: 65 66 20 76 20 31 29 0a 20 20 20 20 20 20 20 20  ef v 1).        
3990: 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d          (vector-
39a0: 72 65 66 20 76 20 32 29 0a 20 20 20 20 20 20 20  ref v 2).       
39b0: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
39c0: 2d 72 65 66 20 76 20 33 29 0a 20 20 20 20 20 20  -ref v 3).      
39d0: 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f            (vecto
39e0: 72 2d 72 65 66 20 76 20 34 29 0a 20 20 20 20 20  r-ref v 4).     
39f0: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
3a00: 6f 72 2d 72 65 66 20 76 20 35 29 0a 20 20 20 20  or-ref v 5).    
3a10: 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63              (vec
3a20: 74 6f 72 2d 72 65 66 20 76 20 36 29 29 29 0a 20  tor-ref v 6))). 
3a30: 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d              (lam
3a40: 62 64 61 20 28 70 20 76 29 0a 20 20 20 20 20 20  bda (p v).      
3a50: 20 20 20 20 20 20 20 20 20 28 70 0a 20 20 20 20           (p.    
3a60: 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63              (vec
3a70: 74 6f 72 2d 72 65 66 20 76 20 30 29 0a 20 20 20  tor-ref v 0).   
3a80: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
3a90: 63 74 6f 72 2d 72 65 66 20 76 20 31 29 0a 20 20  ctor-ref v 1).  
3aa0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76                (v
3ab0: 65 63 74 6f 72 2d 72 65 66 20 76 20 32 29 0a 20  ector-ref v 2). 
3ac0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
3ad0: 76 65 63 74 6f 72 2d 72 65 66 20 76 20 33 29 0a  vector-ref v 3).
3ae0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3af0: 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 34 29  (vector-ref v 4)
3b00: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
3b10: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 35   (vector-ref v 5
3b20: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
3b30: 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20    (vector-ref v 
3b40: 36 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  6).             
3b50: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76     (vector-ref v
3b60: 20 37 29 29 29 0a 20 20 20 20 20 20 20 20 20 20   7))).          
3b70: 20 20 20 28 6c 61 6d 62 64 61 20 28 70 20 76 29     (lambda (p v)
3b80: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
3b90: 28 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  (p.             
3ba0: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76     (vector-ref v
3bb0: 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20   0).            
3bc0: 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20      (vector-ref 
3bd0: 76 20 31 29 0a 20 20 20 20 20 20 20 20 20 20 20  v 1).           
3be0: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
3bf0: 20 76 20 32 29 0a 20 20 20 20 20 20 20 20 20 20   v 2).          
3c00: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
3c10: 66 20 76 20 33 29 0a 20 20 20 20 20 20 20 20 20  f v 3).         
3c20: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
3c30: 65 66 20 76 20 34 29 0a 20 20 20 20 20 20 20 20  ef v 4).        
3c40: 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d          (vector-
3c50: 72 65 66 20 76 20 35 29 0a 20 20 20 20 20 20 20  ref v 5).       
3c60: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
3c70: 2d 72 65 66 20 76 20 36 29 0a 20 20 20 20 20 20  -ref v 6).      
3c80: 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f            (vecto
3c90: 72 2d 72 65 66 20 76 20 37 29 0a 20 20 20 20 20  r-ref v 7).     
3ca0: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
3cb0: 6f 72 2d 72 65 66 20 76 20 38 29 29 29 29 29 0a  or-ref v 8))))).
3cc0: 20 20 20 20 20 20 20 20 20 20 28 69 74 0a 20 20            (it.  
3cd0: 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61           (lambda
3ce0: 20 28 72 29 0a 20 20 20 20 20 20 20 20 20 20 20   (r).           
3cf0: 20 20 28 6c 61 6d 62 64 61 20 28 70 20 76 29 0a    (lambda (p v).
3d00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
3d10: 61 70 70 6c 79 0a 20 20 20 20 20 20 20 20 20 20  apply.          
3d20: 20 20 20 20 20 20 70 0a 20 20 20 20 20 20 20 20        p.        
3d30: 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d          (vector-
3d40: 72 65 66 20 76 20 30 29 0a 20 20 20 20 20 20 20  ref v 0).       
3d50: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
3d60: 2d 72 65 66 20 76 20 31 29 0a 20 20 20 20 20 20  -ref v 1).      
3d70: 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f            (vecto
3d80: 72 2d 72 65 66 20 76 20 32 29 0a 20 20 20 20 20  r-ref v 2).     
3d90: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
3da0: 6f 72 2d 72 65 66 20 76 20 33 29 0a 20 20 20 20  or-ref v 3).    
3db0: 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63              (vec
3dc0: 74 6f 72 2d 72 65 66 20 76 20 34 29 0a 20 20 20  tor-ref v 4).   
3dd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
3de0: 63 74 6f 72 2d 72 65 66 20 76 20 35 29 0a 20 20  ctor-ref v 5).  
3df0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76                (v
3e00: 65 63 74 6f 72 2d 72 65 66 20 76 20 36 29 0a 20  ector-ref v 6). 
3e10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
3e20: 76 65 63 74 6f 72 2d 72 65 66 20 76 20 37 29 0a  vector-ref v 7).
3e30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3e40: 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 38 29  (vector-ref v 8)
3e50: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
3e60: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76 20 39   (vector-ref v 9
3e70: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
3e80: 20 20 28 64 6f 20 28 28 6b 20 72 20 28 2d 20 6b    (do ((k r (- k
3e90: 20 31 29 29 0a 20 20 20 20 20 20 20 20 20 20 20   1)).           
3ea0: 20 20 20 20 20 20 20 20 20 20 28 72 0a 20 20 20            (r.   
3eb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3ec0: 20 20 20 27 28 29 0a 20 20 20 20 20 20 20 20 20     '().         
3ed0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f               (co
3ee0: 6e 73 20 28 76 65 63 74 6f 72 2d 72 65 66 20 76  ns (vector-ref v
3ef0: 20 28 2d 20 6b 20 31 29 29 20 72 29 29 29 0a 20   (- k 1)) r))). 
3f00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
3f10: 20 20 20 28 28 3d 20 6b 20 31 30 29 20 72 29 29     ((= k 10) r))
3f20: 29 29 29 29 29 0a 20 20 20 20 20 20 28 6c 61 6d  ))))).      (lam
3f30: 62 64 61 20 28 72 29 20 28 69 66 20 28 3c 20 72  bda (r) (if (< r
3f40: 20 31 30 29 20 28 76 65 63 74 6f 72 2d 72 65 66   10) (vector-ref
3f50: 20 65 6d 20 72 29 20 28 69 74 20 72 29 29 29 29   em r) (it r))))
3f60: 29 0a 20 20 28 64 65 66 69 6e 65 20 61 72 72 61  ).  (define arra
3f70: 79 3a 61 70 70 6c 69 65 72 2d 74 6f 2d 61 63 74  y:applier-to-act
3f80: 6f 72 0a 20 20 20 20 28 6c 65 74 20 28 28 65 6d  or.    (let ((em
3f90: 0a 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63  .           (vec
3fa0: 74 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20  tor.            
3fb0: 20 28 6c 61 6d 62 64 61 20 28 70 20 61 29 20 28   (lambda (p a) (
3fc0: 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  p)).            
3fd0: 20 28 6c 61 6d 62 64 61 20 28 70 20 61 29 20 28   (lambda (p a) (
3fe0: 70 20 28 61 72 72 61 79 2d 72 65 66 20 61 20 30  p (array-ref a 0
3ff0: 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  ))).            
4000: 20 28 6c 61 6d 62 64 61 20 28 70 20 61 29 0a 20   (lambda (p a). 
4010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70                (p
4020: 20 28 61 72 72 61 79 2d 72 65 66 20 61 20 30 29   (array-ref a 0)
4030: 20 28 61 72 72 61 79 2d 72 65 66 20 61 20 31 29   (array-ref a 1)
4040: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
4050: 28 6c 61 6d 62 64 61 20 28 70 20 61 29 0a 20 20  (lambda (p a).  
4060: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 0a               (p.
4070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4080: 28 61 72 72 61 79 2d 72 65 66 20 61 20 30 29 0a  (array-ref a 0).
4090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
40a0: 28 61 72 72 61 79 2d 72 65 66 20 61 20 31 29 0a  (array-ref a 1).
40b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
40c0: 28 61 72 72 61 79 2d 72 65 66 20 61 20 32 29 29  (array-ref a 2))
40d0: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28  ).             (
40e0: 6c 61 6d 62 64 61 20 28 70 20 61 29 0a 20 20 20  lambda (p a).   
40f0: 20 20 20 20 20 20 20 20 20 20 20 20 28 70 0a 20              (p. 
4100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
4110: 61 72 72 61 79 2d 72 65 66 20 61 20 30 29 0a 20  array-ref a 0). 
4120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
4130: 61 72 72 61 79 2d 72 65 66 20 61 20 31 29 0a 20  array-ref a 1). 
4140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
4150: 61 72 72 61 79 2d 72 65 66 20 61 20 32 29 0a 20  array-ref a 2). 
4160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
4170: 61 72 72 61 79 2d 72 65 66 20 61 20 33 29 29 29  array-ref a 3)))
4180: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  .             (l
4190: 61 6d 62 64 61 20 28 70 20 61 29 0a 20 20 20 20  ambda (p a).    
41a0: 20 20 20 20 20 20 20 20 20 20 20 28 70 0a 20 20             (p.  
41b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61                (a
41c0: 72 72 61 79 2d 72 65 66 20 61 20 30 29 0a 20 20  rray-ref a 0).  
41d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61                (a
41e0: 72 72 61 79 2d 72 65 66 20 61 20 31 29 0a 20 20  rray-ref a 1).  
41f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61                (a
4200: 72 72 61 79 2d 72 65 66 20 61 20 32 29 0a 20 20  rray-ref a 2).  
4210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61                (a
4220: 72 72 61 79 2d 72 65 66 20 61 20 33 29 0a 20 20  rray-ref a 3).  
4230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61                (a
4240: 72 72 61 79 2d 72 65 66 20 61 20 34 29 29 29 0a  rray-ref a 4))).
4250: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61               (la
4260: 6d 62 64 61 20 28 70 20 61 29 0a 20 20 20 20 20  mbda (p a).     
4270: 20 20 20 20 20 20 20 20 20 20 28 70 0a 20 20 20            (p.   
4280: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72               (ar
4290: 72 61 79 2d 72 65 66 20 61 20 30 29 0a 20 20 20  ray-ref a 0).   
42a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72               (ar
42b0: 72 61 79 2d 72 65 66 20 61 20 31 29 0a 20 20 20  ray-ref a 1).   
42c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72               (ar
42d0: 72 61 79 2d 72 65 66 20 61 20 32 29 0a 20 20 20  ray-ref a 2).   
42e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72               (ar
42f0: 72 61 79 2d 72 65 66 20 61 20 33 29 0a 20 20 20  ray-ref a 3).   
4300: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72               (ar
4310: 72 61 79 2d 72 65 66 20 61 20 34 29 0a 20 20 20  ray-ref a 4).   
4320: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72               (ar
4330: 72 61 79 2d 72 65 66 20 61 20 35 29 29 29 0a 20  ray-ref a 5))). 
4340: 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d              (lam
4350: 62 64 61 20 28 70 20 61 29 0a 20 20 20 20 20 20  bda (p a).      
4360: 20 20 20 20 20 20 20 20 20 28 70 0a 20 20 20 20           (p.    
4370: 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72              (arr
4380: 61 79 2d 72 65 66 20 61 20 30 29 0a 20 20 20 20  ay-ref a 0).    
4390: 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72              (arr
43a0: 61 79 2d 72 65 66 20 61 20 31 29 0a 20 20 20 20  ay-ref a 1).    
43b0: 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72              (arr
43c0: 61 79 2d 72 65 66 20 61 20 32 29 0a 20 20 20 20  ay-ref a 2).    
43d0: 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72              (arr
43e0: 61 79 2d 72 65 66 20 61 20 33 29 0a 20 20 20 20  ay-ref a 3).    
43f0: 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72              (arr
4400: 61 79 2d 72 65 66 20 61 20 34 29 0a 20 20 20 20  ay-ref a 4).    
4410: 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72              (arr
4420: 61 79 2d 72 65 66 20 61 20 35 29 0a 20 20 20 20  ay-ref a 5).    
4430: 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72              (arr
4440: 61 79 2d 72 65 66 20 61 20 36 29 29 29 0a 20 20  ay-ref a 6))).  
4450: 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62             (lamb
4460: 64 61 20 28 70 20 61 29 0a 20 20 20 20 20 20 20  da (p a).       
4470: 20 20 20 20 20 20 20 20 28 70 0a 20 20 20 20 20          (p.     
4480: 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61             (arra
4490: 79 2d 72 65 66 20 61 20 30 29 0a 20 20 20 20 20  y-ref a 0).     
44a0: 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61             (arra
44b0: 79 2d 72 65 66 20 61 20 31 29 0a 20 20 20 20 20  y-ref a 1).     
44c0: 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61             (arra
44d0: 79 2d 72 65 66 20 61 20 32 29 0a 20 20 20 20 20  y-ref a 2).     
44e0: 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61             (arra
44f0: 79 2d 72 65 66 20 61 20 33 29 0a 20 20 20 20 20  y-ref a 3).     
4500: 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61             (arra
4510: 79 2d 72 65 66 20 61 20 34 29 0a 20 20 20 20 20  y-ref a 4).     
4520: 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61             (arra
4530: 79 2d 72 65 66 20 61 20 35 29 0a 20 20 20 20 20  y-ref a 5).     
4540: 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61             (arra
4550: 79 2d 72 65 66 20 61 20 36 29 0a 20 20 20 20 20  y-ref a 6).     
4560: 20 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61             (arra
4570: 79 2d 72 65 66 20 61 20 37 29 29 29 0a 20 20 20  y-ref a 7))).   
4580: 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64            (lambd
4590: 61 20 28 70 20 61 29 0a 20 20 20 20 20 20 20 20  a (p a).        
45a0: 20 20 20 20 20 20 20 28 70 0a 20 20 20 20 20 20         (p.      
45b0: 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79            (array
45c0: 2d 72 65 66 20 61 20 30 29 0a 20 20 20 20 20 20  -ref a 0).      
45d0: 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79            (array
45e0: 2d 72 65 66 20 61 20 31 29 0a 20 20 20 20 20 20  -ref a 1).      
45f0: 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79            (array
4600: 2d 72 65 66 20 61 20 32 29 0a 20 20 20 20 20 20  -ref a 2).      
4610: 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79            (array
4620: 2d 72 65 66 20 61 20 33 29 0a 20 20 20 20 20 20  -ref a 3).      
4630: 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79            (array
4640: 2d 72 65 66 20 61 20 34 29 0a 20 20 20 20 20 20  -ref a 4).      
4650: 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79            (array
4660: 2d 72 65 66 20 61 20 35 29 0a 20 20 20 20 20 20  -ref a 5).      
4670: 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79            (array
4680: 2d 72 65 66 20 61 20 36 29 0a 20 20 20 20 20 20  -ref a 6).      
4690: 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79            (array
46a0: 2d 72 65 66 20 61 20 37 29 0a 20 20 20 20 20 20  -ref a 7).      
46b0: 20 20 20 20 20 20 20 20 20 20 28 61 72 72 61 79            (array
46c0: 2d 72 65 66 20 61 20 38 29 29 29 29 29 0a 20 20  -ref a 8))))).  
46d0: 20 20 20 20 20 20 20 20 28 69 74 0a 20 20 20 20          (it.    
46e0: 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28         (lambda (
46f0: 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  r).             
4700: 28 6c 61 6d 62 64 61 20 28 70 20 61 29 0a 20 20  (lambda (p a).  
4710: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 70               (ap
4720: 70 6c 79 0a 20 20 20 20 20 20 20 20 20 20 20 20  ply.            
4730: 20 20 20 20 61 0a 20 20 20 20 20 20 20 20 20 20      a.          
4740: 20 20 20 20 20 20 28 61 72 72 61 79 2d 72 65 66        (array-ref
4750: 20 61 20 30 29 0a 20 20 20 20 20 20 20 20 20 20   a 0).          
4760: 20 20 20 20 20 20 28 61 72 72 61 79 2d 72 65 66        (array-ref
4770: 20 61 20 31 29 0a 20 20 20 20 20 20 20 20 20 20   a 1).          
4780: 20 20 20 20 20 20 28 61 72 72 61 79 2d 72 65 66        (array-ref
4790: 20 61 20 32 29 0a 20 20 20 20 20 20 20 20 20 20   a 2).          
47a0: 20 20 20 20 20 20 28 61 72 72 61 79 2d 72 65 66        (array-ref
47b0: 20 61 20 33 29 0a 20 20 20 20 20 20 20 20 20 20   a 3).          
47c0: 20 20 20 20 20 20 28 61 72 72 61 79 2d 72 65 66        (array-ref
47d0: 20 61 20 34 29 0a 20 20 20 20 20 20 20 20 20 20   a 4).          
47e0: 20 20 20 20 20 20 28 61 72 72 61 79 2d 72 65 66        (array-ref
47f0: 20 61 20 35 29 0a 20 20 20 20 20 20 20 20 20 20   a 5).          
4800: 20 20 20 20 20 20 28 61 72 72 61 79 2d 72 65 66        (array-ref
4810: 20 61 20 36 29 0a 20 20 20 20 20 20 20 20 20 20   a 6).          
4820: 20 20 20 20 20 20 28 61 72 72 61 79 2d 72 65 66        (array-ref
4830: 20 61 20 37 29 0a 20 20 20 20 20 20 20 20 20 20   a 7).          
4840: 20 20 20 20 20 20 28 61 72 72 61 79 2d 72 65 66        (array-ref
4850: 20 61 20 38 29 0a 20 20 20 20 20 20 20 20 20 20   a 8).          
4860: 20 20 20 20 20 20 28 61 72 72 61 79 2d 72 65 66        (array-ref
4870: 20 61 20 39 29 0a 20 20 20 20 20 20 20 20 20 20   a 9).          
4880: 20 20 20 20 20 20 28 64 6f 20 28 28 6b 20 72 20        (do ((k r 
4890: 28 2d 20 6b 20 31 29 29 0a 20 20 20 20 20 20 20  (- k 1)).       
48a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72                (r
48b0: 20 27 28 29 20 28 63 6f 6e 73 20 28 61 72 72 61   '() (cons (arra
48c0: 79 2d 72 65 66 20 61 20 28 2d 20 6b 20 31 29 29  y-ref a (- k 1))
48d0: 20 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20   r))).          
48e0: 20 20 20 20 20 20 20 20 20 20 28 28 3d 20 6b 20            ((= k 
48f0: 31 30 29 20 72 29 29 29 29 29 29 29 0a 20 20 20  10) r))))))).   
4900: 20 20 20 28 6c 61 6d 62 64 61 20 28 72 29 0a 20     (lambda (r). 
4910: 20 20 20 20 20 20 20 22 54 68 65 73 65 20 61 72         "These ar
4920: 65 20 68 69 67 68 20 6c 65 76 65 6c 2c 20 68 69  e high level, hi
4930: 64 69 6e 67 20 69 6d 70 6c 65 6d 65 6e 74 61 74  ding implementat
4940: 69 6f 6e 20 61 74 20 63 61 6c 6c 20 73 69 74 65  ion at call site
4950: 2e 22 0a 20 20 20 20 20 20 20 20 28 69 66 20 28  .".        (if (
4960: 3c 20 72 20 31 30 29 20 28 76 65 63 74 6f 72 2d  < r 10) (vector-
4970: 72 65 66 20 65 6d 20 72 29 20 28 69 74 20 72 29  ref em r) (it r)
4980: 29 29 29 29 0a 20 20 28 64 65 66 69 6e 65 20 61  )))).  (define a
4990: 72 72 61 79 3a 61 70 70 6c 69 65 72 2d 74 6f 2d  rray:applier-to-
49a0: 62 61 63 6b 69 6e 67 2d 76 65 63 74 6f 72 0a 20  backing-vector. 
49b0: 20 20 20 28 6c 65 74 20 28 28 65 6d 0a 20 20 20     (let ((em.   
49c0: 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 0a          (vector.
49d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61               (la
49e0: 6d 62 64 61 20 28 70 20 61 69 20 61 76 29 20 28  mbda (p ai av) (
49f0: 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  p)).            
4a00: 20 28 6c 61 6d 62 64 61 20 28 70 20 61 69 20 61   (lambda (p ai a
4a10: 76 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  v).             
4a20: 20 20 28 70 20 28 76 65 63 74 6f 72 2d 72 65 66    (p (vector-ref
4a30: 20 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72   av (array:actor
4a40: 2d 69 6e 64 65 78 20 61 69 20 30 29 29 29 29 0a  -index ai 0)))).
4a50: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61               (la
4a60: 6d 62 64 61 20 28 70 20 61 69 20 61 76 29 0a 20  mbda (p ai av). 
4a70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70                (p
4a80: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
4a90: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20   (vector-ref av 
4aa0: 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64  (array:actor-ind
4ab0: 65 78 20 61 69 20 30 29 29 0a 20 20 20 20 20 20  ex ai 0)).      
4ac0: 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f            (vecto
4ad0: 72 2d 72 65 66 20 61 76 20 28 61 72 72 61 79 3a  r-ref av (array:
4ae0: 61 63 74 6f 72 2d 69 6e 64 65 78 20 61 69 20 31  actor-index ai 1
4af0: 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  )))).           
4b00: 20 20 28 6c 61 6d 62 64 61 20 28 70 20 61 69 20    (lambda (p ai 
4b10: 61 76 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  av).            
4b20: 20 20 20 28 70 0a 20 20 20 20 20 20 20 20 20 20     (p.          
4b30: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
4b40: 66 20 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f  f av (array:acto
4b50: 72 2d 69 6e 64 65 78 20 61 69 20 30 29 29 0a 20  r-index ai 0)). 
4b60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
4b70: 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61  vector-ref av (a
4b80: 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78  rray:actor-index
4b90: 20 61 69 20 31 29 29 0a 20 20 20 20 20 20 20 20   ai 1)).        
4ba0: 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d          (vector-
4bb0: 72 65 66 20 61 76 20 28 61 72 72 61 79 3a 61 63  ref av (array:ac
4bc0: 74 6f 72 2d 69 6e 64 65 78 20 61 69 20 32 29 29  tor-index ai 2))
4bd0: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
4be0: 28 6c 61 6d 62 64 61 20 28 70 20 61 69 20 61 76  (lambda (p ai av
4bf0: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
4c00: 20 28 70 0a 20 20 20 20 20 20 20 20 20 20 20 20   (p.            
4c10: 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20      (vector-ref 
4c20: 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d  av (array:actor-
4c30: 69 6e 64 65 78 20 61 69 20 30 29 29 0a 20 20 20  index ai 0)).   
4c40: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
4c50: 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61 72 72  ctor-ref av (arr
4c60: 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 61  ay:actor-index a
4c70: 69 20 31 29 29 0a 20 20 20 20 20 20 20 20 20 20  i 1)).          
4c80: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
4c90: 66 20 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f  f av (array:acto
4ca0: 72 2d 69 6e 64 65 78 20 61 69 20 32 29 29 0a 20  r-index ai 2)). 
4cb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
4cc0: 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61  vector-ref av (a
4cd0: 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78  rray:actor-index
4ce0: 20 61 69 20 33 29 29 29 29 0a 20 20 20 20 20 20   ai 3)))).      
4cf0: 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28         (lambda (
4d00: 70 20 61 69 20 61 76 29 0a 20 20 20 20 20 20 20  p ai av).       
4d10: 20 20 20 20 20 20 20 20 28 70 0a 20 20 20 20 20          (p.     
4d20: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
4d30: 6f 72 2d 72 65 66 20 61 76 20 28 61 72 72 61 79  or-ref av (array
4d40: 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 61 69 20  :actor-index ai 
4d50: 30 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  0)).            
4d60: 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20      (vector-ref 
4d70: 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d  av (array:actor-
4d80: 69 6e 64 65 78 20 61 69 20 31 29 29 0a 20 20 20  index ai 1)).   
4d90: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
4da0: 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61 72 72  ctor-ref av (arr
4db0: 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 61  ay:actor-index a
4dc0: 69 20 32 29 29 0a 20 20 20 20 20 20 20 20 20 20  i 2)).          
4dd0: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
4de0: 66 20 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f  f av (array:acto
4df0: 72 2d 69 6e 64 65 78 20 61 69 20 33 29 29 0a 20  r-index ai 3)). 
4e00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
4e10: 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61  vector-ref av (a
4e20: 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78  rray:actor-index
4e30: 20 61 69 20 34 29 29 29 29 0a 20 20 20 20 20 20   ai 4)))).      
4e40: 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28         (lambda (
4e50: 70 20 61 69 20 61 76 29 0a 20 20 20 20 20 20 20  p ai av).       
4e60: 20 20 20 20 20 20 20 20 28 70 0a 20 20 20 20 20          (p.     
4e70: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
4e80: 6f 72 2d 72 65 66 20 61 76 20 28 61 72 72 61 79  or-ref av (array
4e90: 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 61 69 20  :actor-index ai 
4ea0: 30 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  0)).            
4eb0: 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20      (vector-ref 
4ec0: 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d  av (array:actor-
4ed0: 69 6e 64 65 78 20 61 69 20 31 29 29 0a 20 20 20  index ai 1)).   
4ee0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
4ef0: 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61 72 72  ctor-ref av (arr
4f00: 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 61  ay:actor-index a
4f10: 69 20 32 29 29 0a 20 20 20 20 20 20 20 20 20 20  i 2)).          
4f20: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
4f30: 66 20 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f  f av (array:acto
4f40: 72 2d 69 6e 64 65 78 20 61 69 20 33 29 29 0a 20  r-index ai 3)). 
4f50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
4f60: 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61  vector-ref av (a
4f70: 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78  rray:actor-index
4f80: 20 61 69 20 34 29 29 0a 20 20 20 20 20 20 20 20   ai 4)).        
4f90: 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d          (vector-
4fa0: 72 65 66 20 61 76 20 28 61 72 72 61 79 3a 61 63  ref av (array:ac
4fb0: 74 6f 72 2d 69 6e 64 65 78 20 61 69 20 35 29 29  tor-index ai 5))
4fc0: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
4fd0: 28 6c 61 6d 62 64 61 20 28 70 20 61 69 20 61 76  (lambda (p ai av
4fe0: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ).              
4ff0: 20 28 70 0a 20 20 20 20 20 20 20 20 20 20 20 20   (p.            
5000: 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20      (vector-ref 
5010: 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d  av (array:actor-
5020: 69 6e 64 65 78 20 61 69 20 30 29 29 0a 20 20 20  index ai 0)).   
5030: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
5040: 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61 72 72  ctor-ref av (arr
5050: 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 61  ay:actor-index a
5060: 69 20 31 29 29 0a 20 20 20 20 20 20 20 20 20 20  i 1)).          
5070: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
5080: 66 20 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f  f av (array:acto
5090: 72 2d 69 6e 64 65 78 20 61 69 20 32 29 29 0a 20  r-index ai 2)). 
50a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
50b0: 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61  vector-ref av (a
50c0: 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78  rray:actor-index
50d0: 20 61 69 20 33 29 29 0a 20 20 20 20 20 20 20 20   ai 3)).        
50e0: 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d          (vector-
50f0: 72 65 66 20 61 76 20 28 61 72 72 61 79 3a 61 63  ref av (array:ac
5100: 74 6f 72 2d 69 6e 64 65 78 20 61 69 20 34 29 29  tor-index ai 4))
5110: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
5120: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20   (vector-ref av 
5130: 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64  (array:actor-ind
5140: 65 78 20 61 69 20 35 29 29 0a 20 20 20 20 20 20  ex ai 5)).      
5150: 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f            (vecto
5160: 72 2d 72 65 66 20 61 76 20 28 61 72 72 61 79 3a  r-ref av (array:
5170: 61 63 74 6f 72 2d 69 6e 64 65 78 20 61 69 20 36  actor-index ai 6
5180: 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  )))).           
5190: 20 20 28 6c 61 6d 62 64 61 20 28 70 20 61 69 20    (lambda (p ai 
51a0: 61 76 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  av).            
51b0: 20 20 20 28 70 0a 20 20 20 20 20 20 20 20 20 20     (p.          
51c0: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
51d0: 66 20 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f  f av (array:acto
51e0: 72 2d 69 6e 64 65 78 20 61 69 20 30 29 29 0a 20  r-index ai 0)). 
51f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
5200: 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61  vector-ref av (a
5210: 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78  rray:actor-index
5220: 20 61 69 20 31 29 29 0a 20 20 20 20 20 20 20 20   ai 1)).        
5230: 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d          (vector-
5240: 72 65 66 20 61 76 20 28 61 72 72 61 79 3a 61 63  ref av (array:ac
5250: 74 6f 72 2d 69 6e 64 65 78 20 61 69 20 32 29 29  tor-index ai 2))
5260: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
5270: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20   (vector-ref av 
5280: 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64  (array:actor-ind
5290: 65 78 20 61 69 20 33 29 29 0a 20 20 20 20 20 20  ex ai 3)).      
52a0: 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f            (vecto
52b0: 72 2d 72 65 66 20 61 76 20 28 61 72 72 61 79 3a  r-ref av (array:
52c0: 61 63 74 6f 72 2d 69 6e 64 65 78 20 61 69 20 34  actor-index ai 4
52d0: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
52e0: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 61     (vector-ref a
52f0: 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69  v (array:actor-i
5300: 6e 64 65 78 20 61 69 20 35 29 29 0a 20 20 20 20  ndex ai 5)).    
5310: 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63              (vec
5320: 74 6f 72 2d 72 65 66 20 61 76 20 28 61 72 72 61  tor-ref av (arra
5330: 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 61 69  y:actor-index ai
5340: 20 36 29 29 0a 20 20 20 20 20 20 20 20 20 20 20   6)).           
5350: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
5360: 20 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72   av (array:actor
5370: 2d 69 6e 64 65 78 20 61 69 20 37 29 29 29 29 0a  -index ai 7)))).
5380: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61               (la
5390: 6d 62 64 61 20 28 70 20 61 69 20 61 76 29 0a 20  mbda (p ai av). 
53a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70                (p
53b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
53c0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20   (vector-ref av 
53d0: 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64  (array:actor-ind
53e0: 65 78 20 61 69 20 30 29 29 0a 20 20 20 20 20 20  ex ai 0)).      
53f0: 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f            (vecto
5400: 72 2d 72 65 66 20 61 76 20 28 61 72 72 61 79 3a  r-ref av (array:
5410: 61 63 74 6f 72 2d 69 6e 64 65 78 20 61 69 20 31  actor-index ai 1
5420: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
5430: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 61     (vector-ref a
5440: 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69  v (array:actor-i
5450: 6e 64 65 78 20 61 69 20 32 29 29 0a 20 20 20 20  ndex ai 2)).    
5460: 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63              (vec
5470: 74 6f 72 2d 72 65 66 20 61 76 20 28 61 72 72 61  tor-ref av (arra
5480: 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 61 69  y:actor-index ai
5490: 20 33 29 29 0a 20 20 20 20 20 20 20 20 20 20 20   3)).           
54a0: 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66       (vector-ref
54b0: 20 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72   av (array:actor
54c0: 2d 69 6e 64 65 78 20 61 69 20 34 29 29 0a 20 20  -index ai 4)).  
54d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76                (v
54e0: 65 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61 72  ector-ref av (ar
54f0: 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20  ray:actor-index 
5500: 61 69 20 35 29 29 0a 20 20 20 20 20 20 20 20 20  ai 5)).         
5510: 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72         (vector-r
5520: 65 66 20 61 76 20 28 61 72 72 61 79 3a 61 63 74  ef av (array:act
5530: 6f 72 2d 69 6e 64 65 78 20 61 69 20 36 29 29 0a  or-index ai 6)).
5540: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5550: 28 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20 28  (vector-ref av (
5560: 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65  array:actor-inde
5570: 78 20 61 69 20 37 29 29 0a 20 20 20 20 20 20 20  x ai 7)).       
5580: 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72           (vector
5590: 2d 72 65 66 20 61 76 20 28 61 72 72 61 79 3a 61  -ref av (array:a
55a0: 63 74 6f 72 2d 69 6e 64 65 78 20 61 69 20 38 29  ctor-index ai 8)
55b0: 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  ))))).          
55c0: 28 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 28  (it.           (
55d0: 6c 61 6d 62 64 61 20 28 72 29 0a 20 20 20 20 20  lambda (r).     
55e0: 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20          (lambda 
55f0: 28 70 20 61 69 20 61 76 29 0a 20 20 20 20 20 20  (p ai av).      
5600: 20 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 0a           (apply.
5610: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5620: 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  p.              
5630: 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 61 76    (vector-ref av
5640: 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e   (array:actor-in
5650: 64 65 78 20 61 69 20 30 29 29 0a 20 20 20 20 20  dex ai 0)).     
5660: 20 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74             (vect
5670: 6f 72 2d 72 65 66 20 61 76 20 28 61 72 72 61 79  or-ref av (array
5680: 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 61 69 20  :actor-index ai 
5690: 31 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  1)).            
56a0: 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20      (vector-ref 
56b0: 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d  av (array:actor-
56c0: 69 6e 64 65 78 20 61 69 20 32 29 29 0a 20 20 20  index ai 2)).   
56d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65               (ve
56e0: 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61 72 72  ctor-ref av (arr
56f0: 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78 20 61  ay:actor-index a
5700: 69 20 33 29 29 0a 20 20 20 20 20 20 20 20 20 20  i 3)).          
5710: 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65        (vector-re
5720: 66 20 61 76 20 28 61 72 72 61 79 3a 61 63 74 6f  f av (array:acto
5730: 72 2d 69 6e 64 65 78 20 61 69 20 34 29 29 0a 20  r-index ai 4)). 
5740: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28                 (
5750: 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20 28 61  vector-ref av (a
5760: 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64 65 78  rray:actor-index
5770: 20 61 69 20 35 29 29 0a 20 20 20 20 20 20 20 20   ai 5)).        
5780: 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 2d          (vector-
5790: 72 65 66 20 61 76 20 28 61 72 72 61 79 3a 61 63  ref av (array:ac
57a0: 74 6f 72 2d 69 6e 64 65 78 20 61 69 20 36 29 29  tor-index ai 6))
57b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
57c0: 20 28 76 65 63 74 6f 72 2d 72 65 66 20 61 76 20   (vector-ref av 
57d0: 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69 6e 64  (array:actor-ind
57e0: 65 78 20 61 69 20 37 29 29 0a 20 20 20 20 20 20  ex ai 7)).      
57f0: 20 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f            (vecto
5800: 72 2d 72 65 66 20 61 76 20 28 61 72 72 61 79 3a  r-ref av (array:
5810: 61 63 74 6f 72 2d 69 6e 64 65 78 20 61 69 20 38  actor-index ai 8
5820: 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  )).             
5830: 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 20 61     (vector-ref a
5840: 76 20 28 61 72 72 61 79 3a 61 63 74 6f 72 2d 69  v (array:actor-i
5850: 6e 64 65 78 20 61 69 20 39 29 29 0a 20 20 20 20  ndex ai 9)).    
5860: 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 20              (do 
5870: 28 28 6b 20 72 20 28 2d 20 6b 20 31 29 29 0a 20  ((k r (- k 1)). 
5880: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5890: 20 20 20 20 28 72 0a 20 20 20 20 20 20 20 20 20      (r.         
58a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 29               '()
58b0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
58c0: 20 20 20 20 20 20 20 28 63 6f 6e 73 0a 20 20 20         (cons.   
58d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
58e0: 20 20 20 20 28 76 65 63 74 6f 72 2d 72 65 66 0a      (vector-ref.
58f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5900: 20 20 20 20 20 20 20 20 20 61 76 0a 20 20 20 20           av.    
5910: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5920: 20 20 20 20 20 28 61 72 72 61 79 3a 61 63 74 6f       (array:acto
5930: 72 2d 69 6e 64 65 78 20 61 69 20 28 2d 20 6b 20  r-index ai (- k 
5940: 31 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  1))).           
5950: 20 20 20 20 20 20 20 20 20 20 20 20 72 29 29 29              r)))
5960: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
5970: 20 20 20 20 20 28 28 3d 20 6b 20 31 30 29 20 72       ((= k 10) r
5980: 29 29 29 29 29 29 29 0a 20 20 20 20 20 20 28 6c  ))))))).      (l
5990: 61 6d 62 64 61 20 28 72 29 0a 20 20 20 20 20 20  ambda (r).      
59a0: 20 20 22 54 68 65 73 65 20 61 72 65 20 6c 6f 77    "These are low
59b0: 20 6c 65 76 65 6c 2c 20 65 78 70 6f 73 69 6e 67   level, exposing
59c0: 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20   implementation 
59d0: 61 74 20 63 61 6c 6c 20 73 69 74 65 2e 22 0a 20  at call site.". 
59e0: 20 20 20 20 20 20 20 28 69 66 20 28 3c 20 72 20         (if (< r 
59f0: 31 30 29 20 28 76 65 63 74 6f 72 2d 72 65 66 20  10) (vector-ref 
5a00: 65 6d 20 72 29 20 28 69 74 20 72 29 29 29 29 29  em r) (it r)))))
5a10: 0a 20 20 28 64 65 66 69 6e 65 20 28 61 72 72 61  .  (define (arra
5a20: 79 3a 69 6e 64 65 78 2f 76 65 63 74 6f 72 20 72  y:index/vector r
5a30: 20 78 20 76 29 0a 20 20 20 20 28 28 61 72 72 61   x v).    ((arra
5a40: 79 3a 69 6e 64 65 78 65 72 2f 76 65 63 74 6f 72  y:indexer/vector
5a50: 20 72 29 20 78 20 76 29 29 0a 20 20 28 64 65 66   r) x v)).  (def
5a60: 69 6e 65 20 28 61 72 72 61 79 3a 69 6e 64 65 78  ine (array:index
5a70: 2f 61 72 72 61 79 20 72 20 78 20 61 76 20 61 69  /array r x av ai
5a80: 29 0a 20 20 20 20 28 28 61 72 72 61 79 3a 69 6e  ).    ((array:in
5a90: 64 65 78 65 72 2f 61 72 72 61 79 20 72 29 20 78  dexer/array r) x
5aa0: 20 61 76 20 61 69 29 29 0a 20 20 28 64 65 66 69   av ai)).  (defi
5ab0: 6e 65 20 28 61 72 72 61 79 3a 61 70 70 6c 79 2d  ne (array:apply-
5ac0: 74 6f 2d 76 65 63 74 6f 72 20 72 20 70 20 76 29  to-vector r p v)
5ad0: 0a 20 20 20 20 28 28 61 72 72 61 79 3a 61 70 70  .    ((array:app
5ae0: 6c 69 65 72 2d 74 6f 2d 76 65 63 74 6f 72 20 72  lier-to-vector r
5af0: 29 20 70 20 76 29 29 0a 20 20 28 64 65 66 69 6e  ) p v)).  (defin
5b00: 65 20 28 61 72 72 61 79 3a 61 70 70 6c 79 2d 74  e (array:apply-t
5b10: 6f 2d 61 63 74 6f 72 20 72 20 70 20 61 29 0a 20  o-actor r p a). 
5b20: 20 20 20 28 28 61 72 72 61 79 3a 61 70 70 6c 69     ((array:appli
5b30: 65 72 2d 74 6f 2d 61 63 74 6f 72 20 72 29 20 70  er-to-actor r) p
5b40: 20 61 29 29 29 0a                                 a))).