(declare (block) (standard-bindings) (extended-bindings) (inlining-limit 200))
(begin
  (define |[1]#_g105004_|
    (##structure
     gx#syntax-quote::t
     'Error
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105006_|
    (##structure
     gx#syntax-quote::t
     'CastError::t
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105008_|
    (##structure
     gx#syntax-quote::t
     'make-CastError
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105010_|
    (##structure
     gx#syntax-quote::t
     'CastError?
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105012_|
    (##structure
     gx#syntax-quote::t
     'CastError-message
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105013_|
    (##structure
     gx#syntax-quote::t
     'CastError-irritants
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105014_|
    (##structure
     gx#syntax-quote::t
     'CastError-where
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105015_|
    (##structure
     gx#syntax-quote::t
     'CastError-continuation
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105017_|
    (##structure
     gx#syntax-quote::t
     'CastError-message-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105018_|
    (##structure
     gx#syntax-quote::t
     'CastError-irritants-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105019_|
    (##structure
     gx#syntax-quote::t
     'CastError-where-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105020_|
    (##structure
     gx#syntax-quote::t
     'CastError-continuation-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105022_|
    (##structure
     gx#syntax-quote::t
     '&CastError-message
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105023_|
    (##structure
     gx#syntax-quote::t
     '&CastError-irritants
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105024_|
    (##structure
     gx#syntax-quote::t
     '&CastError-where
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105025_|
    (##structure
     gx#syntax-quote::t
     '&CastError-continuation
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105027_|
    (##structure
     gx#syntax-quote::t
     '&CastError-message-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105028_|
    (##structure
     gx#syntax-quote::t
     '&CastError-irritants-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105029_|
    (##structure
     gx#syntax-quote::t
     '&CastError-where-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105030_|
    (##structure
     gx#syntax-quote::t
     '&CastError-continuation-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105032_|
    (##structure
     gx#syntax-quote::t
     'interface-descriptor::t
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105034_|
    (##structure
     gx#syntax-quote::t
     'make-interface-descriptor
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105036_|
    (##structure
     gx#syntax-quote::t
     'interface-descriptor?
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105038_|
    (##structure
     gx#syntax-quote::t
     'interface-descriptor-type
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105039_|
    (##structure
     gx#syntax-quote::t
     'interface-descriptor-methods
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105041_|
    (##structure
     gx#syntax-quote::t
     'interface-descriptor-type-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105042_|
    (##structure
     gx#syntax-quote::t
     'interface-descriptor-methods-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105044_|
    (##structure
     gx#syntax-quote::t
     '&interface-descriptor-type
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105045_|
    (##structure
     gx#syntax-quote::t
     '&interface-descriptor-methods
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105047_|
    (##structure
     gx#syntax-quote::t
     '&interface-descriptor-type-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |[1]#_g105048_|
    (##structure
     gx#syntax-quote::t
     '&interface-descriptor-methods-set!
     #f
     (gx#current-expander-context)
     '()))
  (begin
    (define |[:0:]#CastError|
      (let ((__obj104953
             (let ()
               (declare (not safe))
               (##structure
                gerbil/core/mop~MOP-2#class-type-info::t
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f))))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set!
           __obj104953
           'gerbil/runtime/interface#CastError::t
           '1
           '#f
           '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 'CastError '2 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 '() '4 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set!
           __obj104953
           '(continuation message irritants where)
           '6
           '#f
           '#f))
        (let ((__tmp105003 (cons |[1]#_g105004_| '())))
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 __tmp105003 '3 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 '#f '7 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 '#f '8 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 '#f '10 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 ':init! '11 '#f '#f))
        (let ((__tmp105005 |[1]#_g105006_|))
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 __tmp105005 '12 '#f '#f))
        (let ((__tmp105007 |[1]#_g105008_|))
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 __tmp105007 '13 '#f '#f))
        (let ((__tmp105009 |[1]#_g105010_|))
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 __tmp105009 '14 '#f '#f))
        (let ((__tmp105011
               (cons (cons 'message |[1]#_g105012_|)
                     (cons (cons 'irritants |[1]#_g105013_|)
                           (cons (cons 'where |[1]#_g105014_|)
                                 (cons (cons 'continuation |[1]#_g105015_|)
                                       '()))))))
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 __tmp105011 '15 '#f '#f))
        (let ((__tmp105016
               (cons (cons 'message |[1]#_g105017_|)
                     (cons (cons 'irritants |[1]#_g105018_|)
                           (cons (cons 'where |[1]#_g105019_|)
                                 (cons (cons 'continuation |[1]#_g105020_|)
                                       '()))))))
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 __tmp105016 '16 '#f '#f))
        (let ((__tmp105021
               (cons (cons 'message |[1]#_g105022_|)
                     (cons (cons 'irritants |[1]#_g105023_|)
                           (cons (cons 'where |[1]#_g105024_|)
                                 (cons (cons 'continuation |[1]#_g105025_|)
                                       '()))))))
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 __tmp105021 '17 '#f '#f))
        (let ((__tmp105026
               (cons (cons 'message |[1]#_g105027_|)
                     (cons (cons 'irritants |[1]#_g105028_|)
                           (cons (cons 'where |[1]#_g105029_|)
                                 (cons (cons 'continuation |[1]#_g105030_|)
                                       '()))))))
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 __tmp105026 '18 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 '() '19 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 '() '21 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104953 '() '20 '#f '#f))
        __obj104953))
    (define |[:0:]#interface-descriptor|
      (let ((__obj104955
             (let ()
               (declare (not safe))
               (##structure
                gerbil/core/mop~MOP-2#class-type-info::t
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f
                '#f))))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set!
           __obj104955
           'gerbil/runtime/interface#interface-descriptor::t
           '1
           '#f
           '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set!
           __obj104955
           'interface-descriptor
           '2
           '#f
           '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 '(type methods) '4 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 '(type methods) '6 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 '() '3 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 '#t '7 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 '#t '8 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 '#f '10 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 '#f '11 '#f '#f))
        (let ((__tmp105031 |[1]#_g105032_|))
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 __tmp105031 '12 '#f '#f))
        (let ((__tmp105033 |[1]#_g105034_|))
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 __tmp105033 '13 '#f '#f))
        (let ((__tmp105035 |[1]#_g105036_|))
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 __tmp105035 '14 '#f '#f))
        (let ((__tmp105037
               (cons (cons 'type |[1]#_g105038_|)
                     (cons (cons 'methods |[1]#_g105039_|) '()))))
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 __tmp105037 '15 '#f '#f))
        (let ((__tmp105040
               (cons (cons 'type |[1]#_g105041_|)
                     (cons (cons 'methods |[1]#_g105042_|) '()))))
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 __tmp105040 '16 '#f '#f))
        (let ((__tmp105043
               (cons (cons 'type |[1]#_g105044_|)
                     (cons (cons 'methods |[1]#_g105045_|) '()))))
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 __tmp105043 '17 '#f '#f))
        (let ((__tmp105046
               (cons (cons 'type |[1]#_g105047_|)
                     (cons (cons 'methods |[1]#_g105048_|) '()))))
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 __tmp105046 '18 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 '() '19 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 '() '21 '#f '#f))
        (let ()
          (declare (not safe))
          (##unchecked-structure-set! __obj104955 '() '20 '#f '#f))
        __obj104955))
    (define |[:0:]#do-create-prototype|
      (lambda (_%$stx104001%_)
        (let* ((_%g104005104035%_
                (lambda (_%g104006104031%_)
                  (gx#raise-syntax-error
                   '#f
                   '"Bad syntax; invalid match target"
                   _%g104006104031%_)))
               (_%g104004104133%_
                (lambda (_%g104006104039%_)
                  (if (gx#stx-pair? _%g104006104039%_)
                      (let ((_%e104012104042%_
                             (gx#syntax-e _%g104006104039%_)))
                        (let ((_%hd104013104046%_
                               (let ()
                                 (declare (not safe))
                                 (##car _%e104012104042%_)))
                              (_%tl104014104049%_
                               (let ()
                                 (declare (not safe))
                                 (##cdr _%e104012104042%_))))
                          (if (gx#stx-pair? _%tl104014104049%_)
                              (let ((_%e104015104052%_
                                     (gx#syntax-e _%tl104014104049%_)))
                                (let ((_%hd104016104056%_
                                       (let ()
                                         (declare (not safe))
                                         (##car _%e104015104052%_)))
                                      (_%tl104017104059%_
                                       (let ()
                                         (declare (not safe))
                                         (##cdr _%e104015104052%_))))
                                  (if (gx#stx-pair? _%tl104017104059%_)
                                      (let ((_%e104018104062%_
                                             (gx#syntax-e _%tl104017104059%_)))
                                        (let ((_%hd104019104066%_
                                               (let ()
                                                 (declare (not safe))
                                                 (##car _%e104018104062%_)))
                                              (_%tl104020104069%_
                                               (let ()
                                                 (declare (not safe))
                                                 (##cdr _%e104018104062%_))))
                                          (if (gx#stx-pair? _%tl104020104069%_)
                                              (let ((_%e104021104072%_
                                                     (gx#syntax-e
                                                      _%tl104020104069%_)))
                                                (let ((_%hd104022104076%_
                                                       (let ()
                                                         (declare (not safe))
                                                         (##car _%e104021104072%_)))
                                                      (_%tl104023104079%_
                                                       (let ()
                                                         (declare (not safe))
                                                         (##cdr _%e104021104072%_))))
                                                  (if (gx#stx-pair?
                                                       _%tl104023104079%_)
                                                      (let ((_%e104024104082%_
                                                             (gx#syntax-e
                                                              _%tl104023104079%_)))
                                                        (let ((_%hd104025104086%_
                                                               (let ()
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                         (declare (not safe))
                         (##car _%e104024104082%_)))
                      (_%tl104026104089%_
                       (let ()
                         (declare (not safe))
                         (##cdr _%e104024104082%_))))
                  (if (gx#stx-pair? _%tl104026104089%_)
                      (let ((_%e104027104092%_
                             (gx#syntax-e _%tl104026104089%_)))
                        (let ((_%hd104028104096%_
                               (let ()
                                 (declare (not safe))
                                 (##car _%e104027104092%_)))
                              (_%tl104029104099%_
                               (let ()
                                 (declare (not safe))
                                 (##cdr _%e104027104092%_))))
                          (if (gx#stx-null? _%tl104029104099%_)
                              ((lambda (_%L104102%_
                                        _%L104104%_
                                        _%L104105%_
                                        _%L104106%_
                                        _%L104107%_)
                                 (cons (gx#datum->syntax '#f 'let)
                                       (cons (cons (gx#datum->syntax
                                                    '#f
                                                    'method-table)
                                                   (cons (cons (gx#datum->syntax
                                                                '#f
                                                                'specialize-class)
                                                               (cons _%L104105%_
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                             '()))
                 '()))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                             (cons (cons (gx#datum->syntax
                                                          '#f
                                                          'let)
                                                         (cons (gx#datum->syntax
                                                                '#f
                                                                'loop)
                                                               (cons (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                                          '#f
                                          'rest)
                                         (cons (cons (gx#datum->syntax
                                                      '#f
                                                      '&interface-descriptor-methods)
                                                     (cons _%L104107%_ '()))
                                               '()))
                                   (cons (cons (gx#datum->syntax '#f 'count)
                                               (cons '0 '()))
                                         (cons (cons (gx#datum->syntax
                                                      '#f
                                                      'methods)
                                                     (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                          '#f
                          '@list)
                         '())
                   '()))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                               '())))
                             (cons (cons (gx#datum->syntax '#f 'match)
                                         (cons (gx#datum->syntax '#f 'rest)
                                               (cons (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                          '#f
                          '@list)
                         (cons (gx#datum->syntax '#f 'method-name)
                               (gx#datum->syntax '#f 'rest)))
                   (cons (cons (gx#datum->syntax '#f 'cond)
                               (cons (cons (cons (gx#datum->syntax
                                                  '#f
                                                  'symbolic-table-ref)
                                                 (cons (gx#datum->syntax
                                                        '#f
                                                        'method-table)
                                                       (cons (gx#datum->syntax
                                                              '#f
                                                              'method-name)
                                                             (cons '#f '()))))
                                           (cons (gx#datum->syntax '#f '=>)
                                                 (cons (cons (gx#datum->syntax
                                                              '#f
                                                              'lambda)
                                                             (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                                  '#f
                                  'method)
                                 '())
                           (cons (cons (gx#datum->syntax '#f 'loop)
                                       (cons (gx#datum->syntax '#f 'rest)
                                             (cons (cons (gx#datum->syntax
                                                          '#f
                                                          '##fx+)
                                                         (cons (gx#datum->syntax
                                                                '#f
                                                                'count)
                                                               (cons '1 '())))
                                                   (cons (cons (gx#datum->syntax
                                                                '#f
                                                                'cons)
                                                               (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                              '#f
                              'method)
                             (cons (gx#datum->syntax '#f 'methods) '())))
                 '()))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                 '())))
               '())))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                     (cons (cons (gx#datum->syntax '#f 'else)
                                                 (cons (cons _%L104102%_
                                                             (cons _%L104106%_
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                           (cons _%L104105%_
                                 (cons (gx#datum->syntax '#f 'method-name)
                                       '()))))
               '()))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                           '())))
                         '()))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                                     (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                          '#f
                          'else)
                         (cons (cons (gx#datum->syntax '#f 'let)
                                     (cons (cons (gx#datum->syntax
                                                  '#f
                                                  'prototype)
                                                 (cons (cons (gx#datum->syntax
                                                              '#f
                                                              'make-object)
                                                             (cons _%L104106%_
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                           (cons (cons (gx#datum->syntax '#f '##fx+)
                                       (cons (gx#datum->syntax '#f 'count)
                                             (cons '2 '())))
                                 '())))
               '()))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                           (cons (cons (gx#datum->syntax
                                                        '#f
                                                        'let)
                                                       (cons (gx#datum->syntax
                                                              '#f
                                                              'loop)
                                                             (cons (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                                        '#f
                                        'rest)
                                       (cons (gx#datum->syntax '#f 'methods)
                                             '()))
                                 (cons (cons (gx#datum->syntax '#f 'off)
                                             (cons (cons (gx#datum->syntax
                                                          '#f
                                                          '##fx+)
                                                         (cons (gx#datum->syntax
                                                                '#f
                                                                'count)
                                                               (cons '1 '())))
                                                   '()))
                                       '()))
                           (cons (cons (gx#datum->syntax '#f 'match)
                                       (cons (gx#datum->syntax '#f 'rest)
                                             (cons (cons (cons (gx#datum->syntax
                                                                '#f
                                                                '@list)
                                                               (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                              '#f
                              'method)
                             (gx#datum->syntax '#f 'rest)))
                 (cons (cons (gx#datum->syntax '#f '##unchecked-structure-set!)
                             (cons (gx#datum->syntax '#f 'prototype)
                                   (cons (gx#datum->syntax '#f 'method)
                                         (cons (gx#datum->syntax '#f 'off)
                                               (cons _%L104106%_
                                                     (cons '#f '()))))))
                       (cons (cons (gx#datum->syntax '#f 'loop)
                                   (cons (gx#datum->syntax '#f 'rest)
                                         (cons (cons (gx#datum->syntax
                                                      '#f
                                                      '##fx-)
                                                     (cons (gx#datum->syntax
                                                            '#f
                                                            'off)
                                                           (cons '1 '())))
                                               '())))
                             '())))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                                   (cons (cons (gx#datum->syntax
                                                                '#f
                                                                'else)
                                                               (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                                    '#f
                                    'let)
                                   (cons (cons (gx#datum->syntax
                                                '#f
                                                'prototype-key)
                                               (cons (cons (gx#datum->syntax
                                                            '#f
                                                            'cons)
                                                           (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                                '#f
                                '##type-id)
                               (cons _%L104106%_ '()))
                         (cons (cons (gx#datum->syntax '#f '##type-id)
                                     (cons _%L104105%_ '()))
                               '())))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                                     '()))
                                         (cons (cons (gx#datum->syntax
                                                      '#f
                                                      '__lock-inline!)
                                                     (cons (gx#datum->syntax
                                                            '#f
                                                            '__interface-prototypes-mx)
                                                           '()))
                                               (cons (cons (gx#datum->syntax
                                                            '#f
                                                            'prototype-table-set!)
                                                           (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                          '#f
                          '__interface-prototypes)
                         (cons (gx#datum->syntax '#f 'prototype-key)
                               (cons (gx#datum->syntax '#f 'prototype) '()))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                                     (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                          '#f
                          '__unlock-inline!)
                         (cons (gx#datum->syntax
                                '#f
                                '__interface-prototypes-mx)
                               '()))
                   (cons (cons _%L104104%_
                               (cons (gx#datum->syntax '#f 'prototype) '()))
                         '()))))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                             '()))
                 '()))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                 '()))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                                 '())))
                               '()))
                   '()))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                   '()))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                                   '()))))
                               _%hd104028104096%_
                               _%hd104025104086%_
                               _%hd104022104076%_
                               _%hd104019104066%_
                               _%hd104016104056%_)
                              (_%g104005104035%_ _%g104006104039%_))))
                      (_%g104005104035%_ _%g104006104039%_))))
              (_%g104005104035%_ _%g104006104039%_))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                              (_%g104005104035%_
                                               _%g104006104039%_))))
                                      (_%g104005104035%_ _%g104006104039%_))))
                              (_%g104005104035%_ _%g104006104039%_))))
                      (_%g104005104035%_ _%g104006104039%_)))))
          (_%g104004104133%_ _%$stx104001%_))))
    (define |[:0:]#defcast|
      (lambda (_%$stx104137%_)
        (let* ((_%g104141104163%_
                (lambda (_%g104142104159%_)
                  (gx#raise-syntax-error
                   '#f
                   '"Bad syntax; invalid match target"
                   _%g104142104159%_)))
               (_%g104140104232%_
                (lambda (_%g104142104167%_)
                  (if (gx#stx-pair? _%g104142104167%_)
                      (let ((_%e104146104170%_
                             (gx#syntax-e _%g104142104167%_)))
                        (let ((_%hd104147104174%_
                               (let ()
                                 (declare (not safe))
                                 (##car _%e104146104170%_)))
                              (_%tl104148104177%_
                               (let ()
                                 (declare (not safe))
                                 (##cdr _%e104146104170%_))))
                          (if (gx#stx-pair? _%tl104148104177%_)
                              (let ((_%e104149104180%_
                                     (gx#syntax-e _%tl104148104177%_)))
                                (let ((_%hd104150104184%_
                                       (let ()
                                         (declare (not safe))
                                         (##car _%e104149104180%_)))
                                      (_%tl104151104187%_
                                       (let ()
                                         (declare (not safe))
                                         (##cdr _%e104149104180%_))))
                                  (if (gx#stx-pair? _%tl104151104187%_)
                                      (let ((_%e104152104190%_
                                             (gx#syntax-e _%tl104151104187%_)))
                                        (let ((_%hd104153104194%_
                                               (let ()
                                                 (declare (not safe))
                                                 (##car _%e104152104190%_)))
                                              (_%tl104154104197%_
                                               (let ()
                                                 (declare (not safe))
                                                 (##cdr _%e104152104190%_))))
                                          (if (gx#stx-pair? _%tl104154104197%_)
                                              (let ((_%e104155104200%_
                                                     (gx#syntax-e
                                                      _%tl104154104197%_)))
                                                (let ((_%hd104156104204%_
                                                       (let ()
                                                         (declare (not safe))
                                                         (##car _%e104155104200%_)))
                                                      (_%tl104157104207%_
                                                       (let ()
                                                         (declare (not safe))
                                                         (##cdr _%e104155104200%_))))
                                                  (if (gx#stx-null?
                                                       _%tl104157104207%_)
                                                      ((lambda (_%L104210%_
                                                                _%L104212%_
                                                                _%L104213%_)
                                                         (cons (gx#datum->syntax
                                                                '#f
                                                                'def)
                                                               (cons (cons _%L104213%_
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                                   (cons (gx#datum->syntax '#f 'descriptor)
                                         (cons (gx#datum->syntax '#f 'obj)
                                               '())))
                             (cons (cons (gx#datum->syntax '#f 'declare)
                                         (cons (cons (gx#datum->syntax
                                                      '#f
                                                      'not)
                                                     (cons (gx#datum->syntax
                                                            '#f
                                                            'interrupts-enabled)
                                                           '()))
                                               '()))
                                   (cons (cons (gx#datum->syntax '#f 'let*)
                                               (cons (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                          '#f
                          'klass)
                         (cons (cons (gx#datum->syntax
                                      '#f
                                      '&interface-descriptor-type)
                                     (cons (gx#datum->syntax '#f 'descriptor)
                                           '()))
                               '()))
                   (cons (cons (gx#datum->syntax '#f 'klass-id)
                               (cons (cons (gx#datum->syntax '#f '##type-id)
                                           (cons (gx#datum->syntax '#f 'klass)
                                                 '()))
                                     '()))
                         (cons (cons (gx#datum->syntax '#f 'obj-klass)
                                     (cons (cons (gx#datum->syntax
                                                  '#f
                                                  'class-of)
                                                 (cons (gx#datum->syntax
                                                        '#f
                                                        'obj)
                                                       '()))
                                           '()))
                               (cons (cons (gx#datum->syntax '#f 'obj-klass-id)
                                           (cons (cons (gx#datum->syntax
                                                        '#f
                                                        '##type-id)
                                                       (cons (gx#datum->syntax
                                                              '#f
                                                              'obj-klass)
                                                             '()))
                                                 '()))
                                     '()))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                                     (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                          '#f
                          'cond)
                         (cons (cons (cons (gx#datum->syntax '#f '##eq?)
                                           (cons (gx#datum->syntax
                                                  '#f
                                                  'klass-id)
                                                 (cons (gx#datum->syntax
                                                        '#f
                                                        'obj-klass-id)
                                                       '())))
                                     (cons (gx#datum->syntax '#f 'obj) '()))
                               (cons (cons (cons (gx#datum->syntax
                                                  '#f
                                                  'interface-subclass?)
                                                 (cons (gx#datum->syntax
                                                        '#f
                                                        'obj-klass)
                                                       '()))
                                           (cons (cons _%L104213%_
                                                       (cons (gx#datum->syntax
                                                              '#f
                                                              'descriptor)
                                                             (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                                  '#f
                                  '&interface-instance-object)
                                 (cons (gx#datum->syntax '#f 'obj) '()))
                           '())))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                                 '()))
                                     (cons (cons (gx#datum->syntax '#f 'else)
                                                 (cons (cons (gx#datum->syntax
                                                              '#f
                                                              '__lock-inline!)
                                                             (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                            '#f
                            '__interface-prototypes-mx)
                           '()))
               (cons (cons (gx#datum->syntax '#f '##set-car!)
                           (cons (gx#datum->syntax
                                  '#f
                                  '__interface-prototypes-key)
                                 (cons (gx#datum->syntax '#f 'klass-id) '())))
                     (cons (cons (gx#datum->syntax '#f '##set-cdr!)
                                 (cons (gx#datum->syntax
                                        '#f
                                        '__interface-prototypes-key)
                                       (cons (gx#datum->syntax
                                              '#f
                                              'obj-klass-id)
                                             '())))
                           (cons (cons (gx#datum->syntax '#f 'let)
                                       (cons (cons (gx#datum->syntax
                                                    '#f
                                                    'prototype)
                                                   (cons (cons (gx#datum->syntax
                                                                '#f
                                                                'cond)
                                                               (cons (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                                          '#f
                                          'prototype-table-ref)
                                         (cons (gx#datum->syntax
                                                '#f
                                                '__interface-prototypes)
                                               (cons (gx#datum->syntax
                                                      '#f
                                                      '__interface-prototypes-key)
                                                     (cons '#f '()))))
                                   (cons (gx#datum->syntax '#f '=>)
                                         (cons (cons (gx#datum->syntax
                                                      '#f
                                                      'lambda)
                                                     (cons (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                          '#f
                          'prototype)
                         '())
                   (cons (cons (gx#datum->syntax '#f '__unlock-inline!)
                               (cons (gx#datum->syntax
                                      '#f
                                      '__interface-prototypes-mx)
                                     '()))
                         (cons (gx#datum->syntax '#f 'prototype) '()))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                               '())))
                             (cons (cons (gx#datum->syntax '#f 'else)
                                         (cons (cons (gx#datum->syntax
                                                      '#f
                                                      '__unlock-inline!)
                                                     (cons (gx#datum->syntax
                                                            '#f
                                                            '__interface-prototypes-mx)
                                                           '()))
                                               (cons (cons _%L104212%_
                                                           (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                          '#f
                          'descriptor)
                         (cons (gx#datum->syntax '#f 'klass)
                               (cons (gx#datum->syntax '#f 'obj-klass) '()))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                                     '())))
                                   '())))
                 '()))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                             (cons (cons _%L104210%_
                                                         (cons (gx#datum->syntax
                                                                '#f
                                                                'prototype)
                                                               (cons (gx#datum->syntax
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                              '#f
                              'obj)
                             '())))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                                   '())))
                                 '())))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                           '()))))
                   '())))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                         '())))))
               _%hd104156104204%_
               _%hd104153104194%_
               _%hd104150104184%_)
              (_%g104141104163%_ _%g104142104167%_))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                              (_%g104141104163%_
                                               _%g104142104167%_))))
                                      (_%g104141104163%_ _%g104142104167%_))))
                              (_%g104141104163%_ _%g104142104167%_))))
                      (_%g104141104163%_ _%g104142104167%_)))))
          (_%g104140104232%_ _%$stx104137%_))))))
