(declare (block) (standard-bindings) (extended-bindings) (inlining-limit 200))
(begin
  (define |std/misc/barrier[1]#_g4387_|
    (##structure
     gx#syntax-quote::t
     'barrier::t
     #f
     (gx#current-expander-context)
     '()))
  (define |std/misc/barrier[1]#_g4388_|
    (##structure
     gx#syntax-quote::t
     'make-barrier
     #f
     (gx#current-expander-context)
     '()))
  (define |std/misc/barrier[1]#_g4389_|
    (##structure
     gx#syntax-quote::t
     'barrier?
     #f
     (gx#current-expander-context)
     '()))
  (define |std/misc/barrier[1]#_g4390_|
    (##structure
     gx#syntax-quote::t
     'barrier-mx
     #f
     (gx#current-expander-context)
     '()))
  (define |std/misc/barrier[1]#_g4391_|
    (##structure
     gx#syntax-quote::t
     'barrier-cv
     #f
     (gx#current-expander-context)
     '()))
  (define |std/misc/barrier[1]#_g4392_|
    (##structure
     gx#syntax-quote::t
     'barrier-count
     #f
     (gx#current-expander-context)
     '()))
  (define |std/misc/barrier[1]#_g4393_|
    (##structure
     gx#syntax-quote::t
     'barrier-limit
     #f
     (gx#current-expander-context)
     '()))
  (define |std/misc/barrier[1]#_g4394_|
    (##structure
     gx#syntax-quote::t
     'barrier-exn
     #f
     (gx#current-expander-context)
     '()))
  (define |std/misc/barrier[1]#_g4395_|
    (##structure
     gx#syntax-quote::t
     'barrier-mx-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |std/misc/barrier[1]#_g4396_|
    (##structure
     gx#syntax-quote::t
     'barrier-cv-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |std/misc/barrier[1]#_g4397_|
    (##structure
     gx#syntax-quote::t
     'barrier-count-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |std/misc/barrier[1]#_g4398_|
    (##structure
     gx#syntax-quote::t
     'barrier-limit-set!
     #f
     (gx#current-expander-context)
     '()))
  (define |std/misc/barrier[1]#_g4399_|
    (##structure
     gx#syntax-quote::t
     'barrier-exn-set!
     #f
     (gx#current-expander-context)
     '()))
  (begin
    (define |std/misc/barrier[:0:]#barrier|
      (|gerbil/core$<MOP>$<MOP:2>[1]#make-extended-struct-info|
       'runtime-identifier:
       |std/misc/barrier[1]#_g4387_|
       'expander-identifiers:
       (cons '#f
             (cons |std/misc/barrier[1]#_g4387_|
                   (cons |std/misc/barrier[1]#_g4388_|
                         (cons |std/misc/barrier[1]#_g4389_|
                               (cons (cons |std/misc/barrier[1]#_g4390_|
                                           (cons |std/misc/barrier[1]#_g4391_|
                                                 (cons |std/misc/barrier[1]#_g4392_|
                                                       (cons |std/misc/barrier[1]#_g4393_|
                                                             (cons |std/misc/barrier[1]#_g4394_|
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                           '())))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                     (cons (cons |std/misc/barrier[1]#_g4395_|
                                                 (cons |std/misc/barrier[1]#_g4396_|
                                                       (cons |std/misc/barrier[1]#_g4397_|
                                                             (cons |std/misc/barrier[1]#_g4398_|
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                           (cons |std/misc/barrier[1]#_g4399_| '())))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                           '()))))))
       'type-exhibitor:
       (|gerbil/core$<MOP>$<MOP:2>[1]#make-runtime-struct-exhibitor|
        '#f
        '#f
        'barrier
        ':init!
        '((final: . #t))
        '(mx cv count limit exn))))
    (define |std/misc/barrier[:0:]#with-barrier-error|
      (lambda (_$stx390_)
        (let* ((_g394422_
                (lambda (_g395418_)
                  (gx#raise-syntax-error '#f '"Bad syntax" _g395418_)))
               (_g393523_
                (lambda (_g395426_)
                  (if (gx#stx-pair? _g395426_)
                      (let ((_e399429_ (gx#syntax-e _g395426_)))
                        (let ((_hd400433_
                               (let () (declare (not safe)) (##car _e399429_)))
                              (_tl401436_
                               (let ()
                                 (declare (not safe))
                                 (##cdr _e399429_))))
                          (if (gx#stx-pair? _tl401436_)
                              (let ((_e402439_ (gx#syntax-e _tl401436_)))
                                (let ((_hd403443_
                                       (let ()
                                         (declare (not safe))
                                         (##car _e402439_)))
                                      (_tl404446_
                                       (let ()
                                         (declare (not safe))
                                         (##cdr _e402439_))))
                                  (if (gx#stx-pair? _tl404446_)
                                      (let ((_e405449_
                                             (gx#syntax-e _tl404446_)))
                                        (let ((_hd406453_
                                               (let ()
                                                 (declare (not safe))
                                                 (##car _e405449_)))
                                              (_tl407456_
                                               (let ()
                                                 (declare (not safe))
                                                 (##cdr _e405449_))))
                                          (if (gx#stx-pair/null? _tl407456_)
                                              (let ((_g4400_ (gx#syntax-split-splice
                                                              _tl407456_
                                                              '0)))
                                                (begin
                                                  (let ((_g4401_ (let ()
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                           (declare (not safe))
                           (if (##values? _g4400_)
                               (##vector-length _g4400_)
                               1))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                                    (if (not (let ()
                                                               (declare
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                         (not safe))
                       (##fx= _g4401_ 2)))
                (error "Context expects 2 values" _g4401_)))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                                  (let ((_target408459_
                                                         (let ()
                                                           (declare (not safe))
                                                           (##vector-ref
                                                            _g4400_
                                                            0)))
                                                        (_tl410462_
                                                         (let ()
                                                           (declare (not safe))
                                                           (##vector-ref
                                                            _g4400_
                                                            1))))
                                                    (if (gx#stx-null?
                                                         _tl410462_)
                                                        (letrec ((_loop411465_
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                          (lambda (_hd409469_ _rest415472_)
                            (if (gx#stx-pair? _hd409469_)
                                (let ((_e412475_ (gx#syntax-e _hd409469_)))
                                  (let ((_lp-hd413479_
                                         (let ()
                                           (declare (not safe))
                                           (##car _e412475_)))
                                        (_lp-tl414482_
                                         (let ()
                                           (declare (not safe))
                                           (##cdr _e412475_))))
                                    (_loop411465_
                                     _lp-tl414482_
                                     (cons _lp-hd413479_ _rest415472_))))
                                (let ((_rest416485_ (reverse _rest415472_)))
                                  ((lambda (_L489_ _L491_ _L492_)
                                     (cons (gx#datum->syntax '#f 'try)
                                           (cons _L491_
                                                 (foldr1 (lambda (_g514517_
;;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
                          _g515520_)
                   (cons _g514517_ _g515520_))
                 (cons (cons (gx#datum->syntax '#f 'catch)
                             (cons (cons (gx#datum->syntax '#f 'e) '())
                                   (cons (cons (gx#datum->syntax
                                                '#f
                                                'barrier-error!)
                                               (cons _L492_
                                                     (cons (gx#datum->syntax
                                                            '#f
                                                            'e)
                                                           '())))
                                         (cons (cons (gx#datum->syntax
                                                      '#f
                                                      'raise)
                                                     (cons (gx#datum->syntax
                                                            '#f
                                                            'e)
                                                           '()))
                                               '()))))
                       '())
                 _L489_))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                   _rest416485_
                                   _hd406453_
                                   _hd403443_))))))
                  (_loop411465_ _target408459_ '()))
                (_g394422_ _g395426_)))))
;;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
                                              (_g394422_ _g395426_))))
                                      (_g394422_ _g395426_))))
                              (_g394422_ _g395426_))))
                      (_g394422_ _g395426_)))))
          (_g393523_ _$stx390_))))))
