prelude: :gerbil/compiler/ssxi
package: std/srfi

(begin
  (declare-type
   std/srfi/101#kons::t
   (@struct-type std/srfi/101#kons::t #f 3 #f ()))
  (declare-type std/srfi/101#kons? (@struct-pred std/srfi/101#kons::t))
  (declare-type std/srfi/101#make-kons (@struct-cons std/srfi/101#kons::t))
  (declare-type
   std/srfi/101#kons-size
   (@struct-getf std/srfi/101#kons::t 0 #f))
  (declare-type
   std/srfi/101#kons-tree
   (@struct-getf std/srfi/101#kons::t 1 #f))
  (declare-type
   std/srfi/101#kons-rest
   (@struct-getf std/srfi/101#kons::t 2 #f))
  (declare-type
   std/srfi/101#kons-size-set!
   (@struct-setf std/srfi/101#kons::t 0 #f))
  (declare-type
   std/srfi/101#kons-tree-set!
   (@struct-setf std/srfi/101#kons::t 1 #f))
  (declare-type
   std/srfi/101#kons-rest-set!
   (@struct-setf std/srfi/101#kons::t 2 #f))
  (declare-type
   std/srfi/101#node::t
   (@struct-type std/srfi/101#node::t #f 3 #f ()))
  (declare-type std/srfi/101#node? (@struct-pred std/srfi/101#node::t))
  (declare-type std/srfi/101#make-node (@struct-cons std/srfi/101#node::t))
  (declare-type std/srfi/101#node-val (@struct-getf std/srfi/101#node::t 0 #f))
  (declare-type
   std/srfi/101#node-left
   (@struct-getf std/srfi/101#node::t 1 #f))
  (declare-type
   std/srfi/101#node-right
   (@struct-getf std/srfi/101#node::t 2 #f))
  (declare-type
   std/srfi/101#node-val-set!
   (@struct-setf std/srfi/101#node::t 0 #f))
  (declare-type
   std/srfi/101#node-left-set!
   (@struct-setf std/srfi/101#node::t 1 #f))
  (declare-type
   std/srfi/101#node-right-set!
   (@struct-setf std/srfi/101#node::t 2 #f))
  (declare-type std/srfi/101#sub1 (@lambda 1 #f))
  (declare-type std/srfi/101#add1 (@lambda 1 #f))
  (declare-type std/srfi/101#tree-val (@lambda 1 #f))
  (declare-type std/srfi/101#tree-map (@lambda 2 #f))
  (declare-type std/srfi/101#tree-for-each (@lambda 2 #f))
  (declare-type std/srfi/101#tree-map/n (@lambda 2 #f))
  (declare-type std/srfi/101#tree-for-each/n (@lambda 2 #f))
  (declare-type std/srfi/101#build-tree (@lambda 2 #f))
  (declare-type std/srfi/101#half (@lambda 1 #f))
  (declare-type std/srfi/101#tr:make-tree (@lambda 2 #f))
  (declare-type std/srfi/101#tree-ref/update (@lambda 4 #f))
  (declare-type std/srfi/101#tree-ref/a (@lambda 3 #f))
  (declare-type std/srfi/101#tree-ref (@lambda 3 #f))
  (declare-type std/srfi/101#tree-update (@lambda 4 #f))
  (declare-type std/srfi/101#ra:pair? (@struct-pred std/srfi/101#kons::t))
  (declare-type std/srfi/101#ra:null? (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cons (@lambda 2 #f))
  (declare-type std/srfi/101#ra:car+cdr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:car (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cdr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:list-ref/update (@lambda 3 #f))
  (declare-type std/srfi/101#ra:list-update (@lambda 3 #f))
  (declare-type std/srfi/101#ra:list-ref/set (@lambda 3 #f))
  (declare-type std/srfi/101#ra:list (@lambda (0) #f))
  (declare-type std/srfi/101#ra:make-list__0 (@lambda 1 #f))
  (declare-type std/srfi/101#ra:make-list__1 (@lambda 2 #f))
  (declare-type
   std/srfi/101#ra:make-list
   (@case-lambda
    (1 std/srfi/101#ra:make-list__0)
    (2 std/srfi/101#ra:make-list__1)))
  (declare-type std/srfi/101#skew-succ (@lambda 1 #f))
  (declare-type std/srfi/101#largest-skew-binary (@lambda 1 #f))
  (declare-type std/srfi/101#ra:list? (@lambda 1 #f))
  (declare-type std/srfi/101#ra:caar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cadr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cddr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cdar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:caaar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:caadr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:caddr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cadar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cdaar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cdadr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cdddr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cddar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:caaaar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:caaadr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:caaddr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:caadar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cadaar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cadadr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cadddr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:caddar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cdaaar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cdaadr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cdaddr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cdadar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cddaar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cddadr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cddddr (@lambda 1 #f))
  (declare-type std/srfi/101#ra:cdddar (@lambda 1 #f))
  (declare-type std/srfi/101#ra:length (@lambda 1 #f))
  (declare-type std/srfi/101#make-foldl (@lambda 3 #f))
  (declare-type std/srfi/101#make-foldr (@lambda 3 #f))
  (declare-type std/srfi/101#ra:append (@lambda (0) #f))
  (declare-type std/srfi/101#ra:reverse (@lambda 1 #f))
  (declare-type std/srfi/101#ra:list-tail (@lambda 2 #f))
  (declare-type std/srfi/101#ra:list-ref (@lambda 2 #f))
  (declare-type std/srfi/101#ra:list-set (@lambda 3 #f))
  (declare-type std/srfi/101#ra:map__0 (@lambda 2 #f))
  (declare-type std/srfi/101#ra:map__1 (@lambda (1) #f))
  (declare-type
   std/srfi/101#ra:map
   (@case-lambda (2 std/srfi/101#ra:map__0) ((1) std/srfi/101#ra:map__1)))
  (declare-type std/srfi/101#ra:for-each__0 (@lambda 2 #f))
  (declare-type std/srfi/101#ra:for-each__1 (@lambda (1) #f))
  (declare-type
   std/srfi/101#ra:for-each
   (@case-lambda
    (2 std/srfi/101#ra:for-each__0)
    ((1) std/srfi/101#ra:for-each__1)))
  (declare-type
   std/srfi/101#ra:random-access-list->linear-access-list
   (@lambda 1 #f))
  (declare-type
   std/srfi/101#ra:linear-access-list->random-access-list
   (@lambda 1 #f))
  (declare-type std/srfi/101#get-cached (@lambda 1 #f)))
