(declare (block) (standard-bindings) (extended-bindings))
(begin
  (define std/iter#iterator::t
    (make-struct-type
     'std/iter#iterator::t
     '#f
     '3
     'iterator
     '((final: . #t))
     ':init!
     '(e next fini)))
  (define std/iter#iterator? (make-struct-predicate std/iter#iterator::t))
  (define std/iter#make-iterator
    (lambda _$args35232_
      (apply make-struct-instance std/iter#iterator::t _$args35232_)))
  (define std/iter#iterator-e
    (make-struct-field-accessor std/iter#iterator::t '0))
  (define std/iter#iterator-next
    (make-struct-field-accessor std/iter#iterator::t '1))
  (define std/iter#iterator-fini
    (make-struct-field-accessor std/iter#iterator::t '2))
  (define std/iter#iterator-e-set!
    (make-struct-field-mutator std/iter#iterator::t '0))
  (define std/iter#iterator-next-set!
    (make-struct-field-mutator std/iter#iterator::t '1))
  (define std/iter#iterator-fini-set!
    (make-struct-field-mutator std/iter#iterator::t '2))
  (define std/iter#&iterator-e
    (make-struct-field-unchecked-accessor std/iter#iterator::t '0))
  (define std/iter#&iterator-next
    (make-struct-field-unchecked-accessor std/iter#iterator::t '1))
  (define std/iter#&iterator-fini
    (make-struct-field-unchecked-accessor std/iter#iterator::t '2))
  (define std/iter#&iterator-e-set!
    (make-struct-field-unchecked-mutator std/iter#iterator::t '0))
  (define std/iter#&iterator-next-set!
    (make-struct-field-unchecked-mutator std/iter#iterator::t '1))
  (define std/iter#&iterator-fini-set!
    (make-struct-field-unchecked-mutator std/iter#iterator::t '2))
  (define std/iter#iterator:::init!__%
    (lambda (_self35213_ _e35214_ _next35215_ _fini35216_)
      (if (##fx< '3 (##vector-length _self35213_))
          (begin
            (##vector-set! _self35213_ '1 _e35214_)
            (##vector-set! _self35213_ '2 _next35215_)
            (##vector-set! _self35213_ '3 _fini35216_))
          (error '"struct-instance-init!: too many arguments for struct"
                 _self35213_))))
  (define std/iter#iterator:::init!__0
    (lambda (_self35221_ _e35222_ _next35223_)
      (let ((_fini35225_ void))
        (if (##fx< '3 (##vector-length _self35221_))
            (begin
              (##vector-set! _self35221_ '1 _e35222_)
              (##vector-set! _self35221_ '2 _next35223_)
              (##vector-set! _self35221_ '3 _fini35225_))
            (error '"struct-instance-init!: too many arguments for struct"
                   _self35221_)))))
  (define std/iter#iterator:::init!
    (lambda _g35710_
      (let ((_g35709_ (length _g35710_)))
        (cond ((##fx= _g35709_ 3)
               (apply std/iter#iterator:::init!__0 _g35710_))
              ((##fx= _g35709_ 4)
               (apply (lambda (_self35227_ _e35228_ _next35229_ _fini35230_)
                        (if (##fx< '3 (##vector-length _self35227_))
                            (begin
                              (##vector-set! _self35227_ '1 _e35228_)
                              (##vector-set! _self35227_ '2 _next35229_)
                              (##vector-set! _self35227_ '3 _fini35230_))
                            (error '"struct-instance-init!: too many arguments for struct"
                                   _self35227_)))
                      _g35710_))
              (else
               (##raise-wrong-number-of-arguments-exception
                std/iter#iterator:::init!
                _g35710_))))))
  (bind-method! std/iter#iterator::t ':init! std/iter#iterator:::init! '#f)
  (define std/iter#:iter-end::t
    (make-struct-type 'std/iter#:iter-end::t '#f '0 ':iter-end '() '#f '()))
  (define std/iter#:iter-end? (make-struct-predicate std/iter#:iter-end::t))
  (define std/iter#make-:iter-end
    (lambda _$args35087_
      (apply make-struct-instance std/iter#:iter-end::t _$args35087_)))
  (define std/iter#iter-end (##structure std/iter#:iter-end::t))
  (define std/iter#iter-end?
    (lambda (_obj35085_) (eq? std/iter#iter-end _obj35085_)))
  (define std/iter#iter
    (lambda (_obj35083_)
      (if (##structure-direct-instance-of? _obj35083_ 'std/iter#iterator::t)
          _obj35083_
          (std/iter#:iter::apply _obj35083_))))
  (define std/iter#:iter::t
    (let ((__obj35700 (make-object std/generic/dispatch#generic::t '4)))
      (std/generic/dispatch#generic:::init!__% __obj35700 ':iter '#f)
      __obj35700))
  (define std/iter#:iter::apply
    (lambda _args35080_
      (apply std/generic/dispatch#generic-dispatch
             std/iter#:iter::t
             _args35080_)))
  (define std/iter#:iter::iterator (lambda (_it35078_) _it35078_))
  (std/generic/dispatch#generic-bind!
   std/iter#:iter::t
   (cons (std/generic/dispatch#type-linearize-class std/iter#iterator::t) '())
   std/iter#:iter::iterator)
  (define std/iter#:iter::<pair>
    (lambda (_obj35011_) (std/iter#iter-list _obj35011_)))
  (std/generic/dispatch#generic-bind!
   std/iter#:iter::t
   (cons '(pair t) '())
   std/iter#:iter::<pair>)
  (define std/iter#:iter::<null> (lambda (_obj34944_) (std/iter#iter-null)))
  (std/generic/dispatch#generic-bind!
   std/iter#:iter::t
   (cons '(null t) '())
   std/iter#:iter::<null>)
  (define std/iter#:iter::<vector>
    (lambda (_obj34877_) (std/iter#iter-vector__0 _obj34877_)))
  (std/generic/dispatch#generic-bind!
   std/iter#:iter::t
   (cons '(vector t) '())
   std/iter#:iter::<vector>)
  (define std/iter#:iter::<string>
    (lambda (_obj34810_) (std/iter#iter-string _obj34810_)))
  (std/generic/dispatch#generic-bind!
   std/iter#:iter::t
   (cons '(string t) '())
   std/iter#:iter::<string>)
  (define std/iter#:iter::<hash-table>
    (lambda (_obj34743_) (std/iter#iter-hash-table _obj34743_)))
  (std/generic/dispatch#generic-bind!
   std/iter#:iter::t
   (cons (std/generic/dispatch#type-linearize-class
          std/generic/builtin#<hash-table>::t)
         '())
   std/iter#:iter::<hash-table>)
  (define std/iter#:iter::<procedure>
    (lambda (_obj34676_) (std/iter#iter-coroutine _obj34676_)))
  (std/generic/dispatch#generic-bind!
   std/iter#:iter::t
   (cons '(procedure t) '())
   std/iter#:iter::<procedure>)
  (define std/iter#:iter::<port>
    (lambda (_obj34609_)
      (if (input-port? _obj34609_)
          (std/iter#iter-input-port__0 _obj34609_)
          (error '"Cannot iterate on port; not an input-port" _obj34609_))))
  (std/generic/dispatch#generic-bind!
   std/iter#:iter::t
   (cons (std/generic/dispatch#type-linearize-class
          std/generic/builtin#<port>::t)
         '())
   std/iter#:iter::<port>)
  (define std/iter#:iter::<object>
    (lambda (_obj34542_) (call-method _obj34542_ ':iter)))
  (std/generic/dispatch#generic-bind!
   std/iter#:iter::t
   (cons '(object t) '())
   std/iter#:iter::<object>)
  (define std/iter#iter-null
    (lambda ()
      (let ((__obj35701 (make-object std/iter#iterator::t '3)))
        (std/iter#iterator:::init!__0
         __obj35701
         std/iter#iter-end
         std/iter#iterator-e)
        __obj35701)))
  (define std/iter#iter-list
    (lambda (_lst34415_)
      (letrec ((_next34417_
                (lambda (_it34419_)
                  (let* ((_it3442034426_ _it34419_)
                         (_E3442234430_
                          (lambda ()
                            (error '"No clause matching" _it3442034426_)))
                         (_K3442334468_
                          (lambda (_e34433_)
                            (let* ((_e3443434442_ _e34433_)
                                   (_else3443634450_
                                    (lambda () std/iter#iter-end))
                                   (_K3443834456_
                                    (lambda (_rest34453_ _hd34454_)
                                      (##unchecked-structure-set!
                                       _it34419_
                                       _rest34453_
                                       '1
                                       std/iter#iterator::t
                                       '#f)
                                      _hd34454_)))
                              (if (##pair? _e3443434442_)
                                  (let ((_hd3443934459_ (##car _e3443434442_))
                                        (_tl3444034461_ (##cdr _e3443434442_)))
                                    (let* ((_hd34464_ _hd3443934459_)
                                           (_rest34466_ _tl3444034461_))
                                      (_K3443834456_ _rest34466_ _hd34464_)))
                                  (_else3443634450_))))))
                    (if (##structure-direct-instance-of?
                         _it3442034426_
                         'std/iter#iterator::t)
                        (let* ((_e3442434471_ (##vector-ref _it3442034426_ '1))
                               (_e34474_ _e3442434471_))
                          (_K3442334468_ _e34474_))
                        (_E3442234430_))))))
        (let ((__obj35702 (make-object std/iter#iterator::t '3)))
          (std/iter#iterator:::init!__0 __obj35702 _lst34415_ _next34417_)
          __obj35702))))
  (define std/iter#iter-vector__%
    (lambda (_vec34337_ _length-e34338_ _ref-e34339_)
      (letrec ((_next34341_
                (lambda (_it34343_)
                  (let* ((_it3434434350_ _it34343_)
                         (_E3434634354_
                          (lambda ()
                            (error '"No clause matching" _it3434434350_)))
                         (_K3434734389_
                          (lambda (_e34357_)
                            (let* ((_e3435834365_ _e34357_)
                                   (_E3436034369_
                                    (lambda ()
                                      (error '"No clause matching"
                                             _e3435834365_)))
                                   (_K3436134377_
                                    (lambda (_index34372_ _vec34373_)
                                      (if (##fx< _index34372_
                                                 (_length-e34338_ _vec34373_))
                                          (let ((_v34375_
                                                 (_ref-e34339_
                                                  _vec34373_
                                                  _index34372_)))
                                            (set-cdr!
                                             _e34357_
                                             (##fx+ _index34372_ '1))
                                            _v34375_)
                                          std/iter#iter-end))))
                              (if (##pair? _e3435834365_)
                                  (let ((_hd3436234380_ (##car _e3435834365_))
                                        (_tl3436334382_ (##cdr _e3435834365_)))
                                    (let* ((_vec34385_ _hd3436234380_)
                                           (_index34387_ _tl3436334382_))
                                      (_K3436134377_ _index34387_ _vec34385_)))
                                  (_E3436034369_))))))
                    (if (##structure-direct-instance-of?
                         _it3434434350_
                         'std/iter#iterator::t)
                        (let* ((_e3434834392_ (##vector-ref _it3434434350_ '1))
                               (_e34395_ _e3434834392_))
                          (_K3434734389_ _e34395_))
                        (_E3434634354_))))))
        (let ((__obj35703 (make-object std/iter#iterator::t '3)))
          (std/iter#iterator:::init!__0
           __obj35703
           (cons _vec34337_ '0)
           _next34341_)
          __obj35703))))
  (define std/iter#iter-vector__0
    (lambda (_vec34400_)
      (let* ((_length-e34402_ ##vector-length) (_ref-e34404_ ##vector-ref))
        (std/iter#iter-vector__% _vec34400_ _length-e34402_ _ref-e34404_))))
  (define std/iter#iter-vector__1
    (lambda (_vec34406_ _length-e34407_)
      (let ((_ref-e34409_ ##vector-ref))
        (std/iter#iter-vector__% _vec34406_ _length-e34407_ _ref-e34409_))))
  (define std/iter#iter-vector
    (lambda _g35712_
      (let ((_g35711_ (length _g35712_)))
        (cond ((##fx= _g35711_ 1) (apply std/iter#iter-vector__0 _g35712_))
              ((##fx= _g35711_ 2) (apply std/iter#iter-vector__1 _g35712_))
              ((##fx= _g35711_ 3) (apply std/iter#iter-vector__% _g35712_))
              (else
               (##raise-wrong-number-of-arguments-exception
                std/iter#iter-vector
                _g35712_))))))
  (define std/iter#iter-string
    (lambda (_str34334_)
      (std/iter#iter-vector__% _str34334_ ##string-length ##string-ref)))
  (define std/iter#iter-hash-table
    (lambda (_ht34329_)
      (letrec ((_iterate34331_
                (lambda () (table-for-each std/coroutine#yield _ht34329_))))
        (std/iter#iter-coroutine _iterate34331_))))
  (define std/iter#iter-coroutine
    (lambda (_proc34298_)
      (letrec ((_next34300_
                (lambda (_it34305_)
                  (let* ((_it3430634312_ _it34305_)
                         (_E3430834316_
                          (lambda ()
                            (error '"No clause matching" _it3430634312_)))
                         (_K3430934321_
                          (lambda (_cort34319_)
                            (std/coroutine#continue _cort34319_))))
                    (if (##structure-direct-instance-of?
                         _it3430634312_
                         'std/iter#iterator::t)
                        (let* ((_e3431034324_ (##vector-ref _it3430634312_ '1))
                               (_cort34327_ _e3431034324_))
                          (std/coroutine#continue _cort34327_))
                        (_E3430834316_))))))
        (let* ((_cort34303_
                (std/coroutine#coroutine
                 (lambda () (_proc34298_) std/iter#iter-end)))
               (__obj35704 (make-object std/iter#iterator::t '3)))
          (std/iter#iterator:::init!__0 __obj35704 _cort34303_ _next34300_)
          __obj35704))))
  (define std/iter#iter-cothread
    (lambda (_proc34259_)
      (letrec ((_next34261_
                (lambda (_it34274_)
                  (let* ((_it3427534281_ _it34274_)
                         (_E3427734285_
                          (lambda ()
                            (error '"No clause matching" _it3427534281_)))
                         (_K3427834290_
                          (lambda (_cothr34288_)
                            (std/coroutine#continue _cothr34288_))))
                    (if (##structure-direct-instance-of?
                         _it3427534281_
                         'std/iter#iterator::t)
                        (let* ((_e3427934293_ (##vector-ref _it3427534281_ '1))
                               (_cothr34296_ _e3427934293_))
                          (std/coroutine#continue _cothr34296_))
                        (_E3427734285_)))))
               (_fini34262_
                (lambda (_it34270_)
                  (let ((_cothr34272_
                         (##unchecked-structure-ref
                          _it34270_
                          '1
                          std/iter#iterator::t
                          '#f)))
                    (if _cothr34272_
                        (begin
                          (std/coroutine#cothread-stop!__0 _cothr34272_)
                          (##unchecked-structure-set!
                           _it34270_
                           '#f
                           '1
                           std/iter#iterator::t
                           '#f))
                        '#!void)))))
        (let* ((_cothr34265_
                (std/coroutine#cothread
                 (lambda () (_proc34259_) std/iter#iter-end)))
               (_it34267_
                (let ((__obj35705 (make-object std/iter#iterator::t '3)))
                  (if (##fx< '3 (##vector-length __obj35705))
                      (begin
                        (##vector-set! __obj35705 '1 _cothr34265_)
                        (##vector-set! __obj35705 '2 _next34261_)
                        (##vector-set! __obj35705 '3 _fini34262_))
                      (error '"struct-instance-init!: too many arguments for struct"
                             __obj35705))
                  __obj35705)))
          (make-will _it34267_ _fini34262_)
          _it34267_))))
  (define std/iter#iter-input-port__%
    (lambda (_port34218_ _read-e34219_)
      (letrec ((_next34221_
                (lambda (_it34223_)
                  (let* ((_it3422434230_ _it34223_)
                         (_E3422634234_
                          (lambda ()
                            (error '"No clause matching" _it3422434230_)))
                         (_K3422734241_
                          (lambda (_port34237_)
                            (let ((_val34239_ (_read-e34219_ _port34237_)))
                              (if (eof-object? _val34239_)
                                  std/iter#iter-end
                                  _val34239_)))))
                    (if (##structure-direct-instance-of?
                         _it3422434230_
                         'std/iter#iterator::t)
                        (let* ((_e3422834244_ (##vector-ref _it3422434230_ '1))
                               (_port34247_ _e3422834244_))
                          (_K3422734241_ _port34247_))
                        (_E3422634234_))))))
        (let ((__obj35706 (make-object std/iter#iterator::t '3)))
          (std/iter#iterator:::init!__0 __obj35706 _port34218_ _next34221_)
          __obj35706))))
  (define std/iter#iter-input-port__0
    (lambda (_port34252_)
      (let ((_read-e34254_ read))
        (std/iter#iter-input-port__% _port34252_ _read-e34254_))))
  (define std/iter#iter-input-port
    (lambda _g35714_
      (let ((_g35713_ (length _g35714_)))
        (cond ((##fx= _g35713_ 1) (apply std/iter#iter-input-port__0 _g35714_))
              ((##fx= _g35713_ 2) (apply std/iter#iter-input-port__% _g35714_))
              (else
               (##raise-wrong-number-of-arguments-exception
                std/iter#iter-input-port
                _g35714_))))))
  (define std/iter#iter-in-range
    (lambda (_start34157_ _count34158_ _step34159_)
      (letrec ((_next34161_
                (lambda (_it34163_)
                  (let* ((_it3416434170_ _it34163_)
                         (_E3416634174_
                          (lambda ()
                            (error '"No clause matching" _it3416434170_)))
                         (_K3416734209_
                          (lambda (_e34177_)
                            (let* ((_e3417834185_ _e34177_)
                                   (_E3418034189_
                                    (lambda ()
                                      (error '"No clause matching"
                                             _e3417834185_)))
                                   (_K3418134197_
                                    (lambda (_limit34192_ _value34193_)
                                      (if (##fx> _limit34192_ '0)
                                          (let ((_value+step34195_
                                                 (+ _value34193_ _step34159_)))
                                            (set-car!
                                             _e34177_
                                             _value+step34195_)
                                            (set-cdr!
                                             _e34177_
                                             (##fx- _limit34192_ '1))
                                            _value34193_)
                                          std/iter#iter-end))))
                              (if (##pair? _e3417834185_)
                                  (let ((_hd3418234200_ (##car _e3417834185_))
                                        (_tl3418334202_ (##cdr _e3417834185_)))
                                    (let* ((_value34205_ _hd3418234200_)
                                           (_limit34207_ _tl3418334202_))
                                      (_K3418134197_
                                       _limit34207_
                                       _value34205_)))
                                  (_E3418034189_))))))
                    (if (##structure-direct-instance-of?
                         _it3416434170_
                         'std/iter#iterator::t)
                        (let* ((_e3416834212_ (##vector-ref _it3416434170_ '1))
                               (_e34215_ _e3416834212_))
                          (_K3416734209_ _e34215_))
                        (_E3416634174_))))))
        (let ((__obj35707 (make-object std/iter#iterator::t '3)))
          (std/iter#iterator:::init!__0
           __obj35707
           (cons _start34157_ _count34158_)
           _next34161_)
          __obj35707))))
  (define std/iter#in-range__0
    (lambda (_count34148_) (std/iter#iter-in-range '0 _count34148_ '1)))
  (define std/iter#in-range__1
    (lambda (_count34150_ _start34151_)
      (std/iter#iter-in-range _start34151_ _count34150_ '1)))
  (define std/iter#in-range__2
    (lambda (_count34153_ _start34154_ _step34155_)
      (std/iter#iter-in-range _start34154_ _count34153_ _step34155_)))
  (define std/iter#in-range
    (lambda _g35716_
      (let ((_g35715_ (length _g35716_)))
        (cond ((##fx= _g35715_ 1) (apply std/iter#in-range__0 _g35716_))
              ((##fx= _g35715_ 2) (apply std/iter#in-range__1 _g35716_))
              ((##fx= _g35715_ 3) (apply std/iter#in-range__2 _g35716_))
              (else
               (##raise-wrong-number-of-arguments-exception
                std/iter#in-range
                _g35716_))))))
  (define std/iter#in-naturals__%
    (lambda (_start34102_ _step34103_)
      (letrec ((_next34105_
                (lambda (_it34107_)
                  (let* ((_it3410834114_ _it34107_)
                         (_E3411034118_
                          (lambda ()
                            (error '"No clause matching" _it3410834114_)))
                         (_K3411134125_
                          (lambda (_value34121_)
                            (let ((_value+step34123_
                                   (+ _value34121_ _step34103_)))
                              (##unchecked-structure-set!
                               _it34107_
                               _value+step34123_
                               '1
                               std/iter#iterator::t
                               '#f)
                              _value34121_))))
                    (if (##structure-direct-instance-of?
                         _it3410834114_
                         'std/iter#iterator::t)
                        (let* ((_e3411234128_ (##vector-ref _it3410834114_ '1))
                               (_value34131_ _e3411234128_))
                          (_K3411134125_ _value34131_))
                        (_E3411034118_))))))
        (let ((__obj35708 (make-object std/iter#iterator::t '3)))
          (std/iter#iterator:::init!__0 __obj35708 _start34102_ _next34105_)
          __obj35708))))
  (define std/iter#in-naturals__0
    (lambda ()
      (let* ((_start34137_ '1) (_step34139_ '1))
        (std/iter#in-naturals__% _start34137_ _step34139_))))
  (define std/iter#in-naturals__1
    (lambda (_start34141_)
      (let ((_step34143_ '1))
        (std/iter#in-naturals__% _start34141_ _step34143_))))
  (define std/iter#in-naturals
    (lambda _g35718_
      (let ((_g35717_ (length _g35718_)))
        (cond ((##fx= _g35717_ 0) (apply std/iter#in-naturals__0 _g35718_))
              ((##fx= _g35717_ 1) (apply std/iter#in-naturals__1 _g35718_))
              ((##fx= _g35717_ 2) (apply std/iter#in-naturals__% _g35718_))
              (else
               (##raise-wrong-number-of-arguments-exception
                std/iter#in-naturals
                _g35718_))))))
  (define std/iter#in-hash
    (lambda (_ht34099_) (std/iter#iter-hash-table _ht34099_)))
  (define std/iter#in-hash-keys
    (lambda (_ht34091_)
      (letrec ((_iterate34093_
                (lambda ()
                  (table-for-each
                   (lambda (_k34096_ _v34097_) (std/coroutine#yield _k34096_))
                   _ht34091_))))
        (std/iter#iter-coroutine _iterate34093_))))
  (define std/iter#in-hash-values
    (lambda (_ht34083_)
      (letrec ((_iterate34085_
                (lambda ()
                  (table-for-each
                   (lambda (_k34088_ _v34089_) (std/coroutine#yield _v34089_))
                   _ht34083_))))
        (std/iter#iter-coroutine _iterate34085_))))
  (define std/iter#in-input-port__%
    (lambda (_obj34070_ _read-e34071_)
      (std/iter#iter-input-port__% _obj34070_ _read-e34071_)))
  (define std/iter#in-input-port__0
    (lambda (_obj34076_)
      (let ((_read-e34078_ read))
        (std/iter#iter-input-port__% _obj34076_ _read-e34078_))))
  (define std/iter#in-input-port
    (lambda _g35720_
      (let ((_g35719_ (length _g35720_)))
        (cond ((##fx= _g35719_ 1) (apply std/iter#in-input-port__0 _g35720_))
              ((##fx= _g35719_ 2) (apply std/iter#iter-input-port__% _g35720_))
              (else
               (##raise-wrong-number-of-arguments-exception
                std/iter#in-input-port
                _g35720_))))))
  (define std/iter#in-input-lines
    (lambda (_obj34067_) (std/iter#iter-input-port__% _obj34067_ read-line)))
  (define std/iter#in-input-chars
    (lambda (_obj34065_) (std/iter#iter-input-port__% _obj34065_ read-char)))
  (define std/iter#in-input-bytes
    (lambda (_obj34063_) (std/iter#iter-input-port__% _obj34063_ read-u8)))
  (define std/iter#in-coroutine
    (lambda (_proc34059_ . _args34060_)
      (std/iter#iter-coroutine
       (if (null? _args34060_)
           _proc34059_
           (lambda () (apply _proc34059_ _args34060_))))))
  (define std/iter#in-cothread
    (lambda (_proc34055_ . _args34056_)
      (std/iter#iter-cothread
       (if (null? _args34056_)
           _proc34055_
           (lambda () (apply _proc34055_ _args34056_))))))
  (define std/iter#iter-next!
    (lambda (_it34053_)
      ((##unchecked-structure-ref _it34053_ '2 std/iter#iterator::t '#f)
       _it34053_)))
  (define std/iter#iter-fini!
    (lambda (_it34051_)
      ((##unchecked-structure-ref _it34051_ '3 std/iter#iterator::t '#f)
       _it34051_)))
  (define std/iter#iter-filter
    (lambda (_pred34007_ _it34008_)
      (letrec ((_iterate34010_
                (lambda ()
                  (let ((_iterable34034_ _it34008_)
                        (_iter-do34036_
                         (lambda (_val34013_)
                           (let* ((_val3401534020_ _val34013_)
                                  (_E3401734024_
                                   (lambda ()
                                     (error '"No clause matching"
                                            _val3401534020_)))
                                  (_K3401834029_
                                   (lambda (_val34027_)
                                     (if (_pred34007_ _val34027_)
                                         (std/coroutine#yield _val34027_)
                                         '#!void)))
                                  (_val34032_ _val3401534020_))
                             (_K3401834029_ _val34032_)))))
                    (if (pair? _iterable34034_)
                        (for-each _iter-do34036_ _iterable34034_)
                        (let ((_$e34039_ (null? _iterable34034_)))
                          (if _$e34039_
                              _$e34039_
                              (let ((_it34042_
                                     (std/iter#iter _iterable34034_)))
                                (let _lp34045_ ()
                                  (let ((_val34049_
                                         (std/iter#iter-next! _it34042_)))
                                    (if (eq? std/iter#iter-end _val34049_)
                                        '#!void
                                        (begin
                                          (_iter-do34036_ _val34049_)
                                          (_lp34045_)))))
                                (std/iter#iter-fini! _it34042_)
                                '#!void))))))))
        (std/iter#iter-coroutine _iterate34010_)))))
