GOOF----LE-8-2.0�� ]w 4 h�S ] g guile� � g define-module*� � � g ice-9� g futures� � g filenameS�
f ice-9/futures.scm� g importsS� g srfi�
g srfi-1�
� � g srfi-9� � � g gnu� � � g srfi-11� � � g q� � � g match� � � g control� � ! � "! � #g exportsS� $g future� %g make-future� &g future?� 'g touch� ($%&' � )g set-current-module� *) � +) � ,g <future>� -g %%make-future-procedure� .g make-syntax-transformer� /. � 0. � 1g %make-future� 2g macro� 3g $sc-dispatch� 43 � 53 � 6g _� 7g any� 867777 � 9g
syntax-object� :g lambda� ;g m-3eebb96279-7� <g top� =;< � >g ribcage� ?g t-3eebb96279-3� @g t-3eebb96279-4� Ag t-3eebb96279-5� Bg t-3eebb96279-6� C?@AB � D==== � Ef l-3eebb96279-c� Ff l-3eebb96279-d� Gf l-3eebb96279-e� Hf l-3eebb96279-f� IEFGH � J>CDI � K> � Lg x� ML � N= � Of l-3eebb96279-9� PO � Q>MNP � Rg shift� Sg proc-name� Tg args� UST � V< � WVV � Xf l-1e8ba8b5a-60� Yf l-1e8ba8b5a-61� ZXY � [>UWZ � \g key� ]g value� ^g name� _g formals� `g body� a\]^_` � bVVVVV � cf l-1e8ba8b5a-53� df l-1e8ba8b5a-54� ef l-1e8ba8b5a-55� ff l-1e8ba8b5a-56� gf l-1e8ba8b5a-57� hcdefg � i>abh � jg make-procedure-name� kj � lV � mf l-1e8ba8b5a-43� nm � o>kln � pV � qf l-1e8ba8b5a-42� rq � s>Mpr � t=JKQRKKKK[ios
� ug hygiene� vu � w9:tv � xg thunk� yVJKQ � zu � {9xyz � |g state� }9|yz � ~g mutex� 9~yz � �g
completion� �9�yz � �{}� � �g make-struct� �g m-3eebb96279-1� ��< � �g t-1e8ba8b5a-133� �g t-1e8ba8b5a-132� �g t-1e8ba8b5a-131� ���� � �g m-1e8ba8b5a-134� ��< � ���� � �f l-1e8ba8b5a-138� �f l-1e8ba8b5a-139� �f l-1e8ba8b5a-13a� ���� � �>��� � �g ctor-args� �� � �f l-1e8ba8b5a-120� �� � �>�p� � �g ctor� �g field� ��� � �f l-1e8ba8b5a-11c� �f l-1e8ba8b5a-11d� ��� � �>�W� � �g form� �g type-name� �g constructor-spec� �g field-names� ����� � �VVVV � �f l-1e8ba8b5a-111� �f l-1e8ba8b5a-112� �f l-1e8ba8b5a-113� �f l-1e8ba8b5a-114� ����� � �>��� � �g
record-layout� �g functional-setters� �g setters� �g copier� �g getters� �g constructor� �g getter-identifiers� �g field-identifiers� ��������� � �VVVVVVVV � �f l-1e8ba8b5a-e9� �f l-1e8ba8b5a-e7� �f l-1e8ba8b5a-e5� �f l-1e8ba8b5a-e3� �f l-1e8ba8b5a-e1� �f l-1e8ba8b5a-df� �f l-1e8ba8b5a-dd� �f l-1e8ba8b5a-db� ��������� � �>��� � �f l-1e8ba8b5a-da� �� � �>Mp� � ��JKQRK�KKK��K��� � �9��v � �9,yz � �9
�v � �JKQ � �9�z � ����{}�� � �w�� � �g each-any� �6Ɍ� �g syntax-violation� �� � �� � �f Wrong number of arguments� �g identifier?� �� � �� � �VKQ � �9-�z � �� � �� � �f -source expression failed to match any pattern� �g record-type-vtable� �� � �� � �g
pwpwpwpwpw� �g default-record-printer� �� � �� � �g result� �x|�~� � �g set-struct-vtable-name!� �� � �� � �g vtable-offset-user� �� � �� � �g %future?-procedure� �67 � �g m-3eebb96279-1a� ��< � �g t-3eebb96279-19� �� � �� � �f l-3eebb96279-1f� �� � �>��� � �f l-3eebb96279-1c� �� � �>M�� � ���K�RKKKK[ios
� �9:�v � �g obj� �g t-1e8ba8b5a-224� �g t-1e8ba8b5a-21e� �g t-1e8ba8b5a-21f� �g t-1e8ba8b5a-220� �g t-1e8ba8b5a-223� �g t-1e8ba8b5a-222� �g t-1e8ba8b5a-221� �������� � �g m-1e8ba8b5a-225� ��< � ������� �f l-1e8ba8b5a-229�f l-1e8ba8b5a-22a�f l-1e8ba8b5a-22b�f l-1e8ba8b5a-22c�f l-1e8ba8b5a-22d�f l-1e8ba8b5a-22e�f l-1e8ba8b5a-22f� � >� �
g copier-id�
�f l-1e8ba8b5a-21c�
�>p
�g ctor-name� �f l-1e8ba8b5a-214� �>p �� �f l-1e8ba8b5a-212� �>p �g layout� �f l-1e8ba8b5a-210� �>p �g
immutable?� �f l-1e8ba8b5a-20e� �!>p �"g field-count�#" �$f l-1e8ba8b5a-20c�%$ �&>#p% �'g
getter-ids�(' �)f l-1e8ba8b5a-209�*) �+>(p* �,g field-ids�-, �.f l-1e8ba8b5a-206�/. �0>-p/ �1g predicate-name�2g
field-spec�3���12 �4VVVVVV �5f l-1e8ba8b5a-1f9�6f l-1e8ba8b5a-1fa�7f l-1e8ba8b5a-1fb�8f l-1e8ba8b5a-1fc�9f l-1e8ba8b5a-1fd�:f l-1e8ba8b5a-1fe�;56789: �<>34; �=��K�RK KKKKKKKK!K&K+K0<�� �>9�=v �?> �@g and�A9@=v �Bg struct?�C9B=v �DC> �Eg eq?�F9E=v �Gg
struct-vtable�H9G=v �IH> �JV�K� �K9,Jz �LFIK �MADL �N�?M �OVK� �P9�Oz �Qg throw-bad-struct�RQ �SQ �Tg future-thunk�Ug %future-thunk-procedure�Vg free-id�Wg
%%on-error�Xg m-3eebb96279-26�YX< �ZY �[f l-3eebb96279-28�\[ �]>MZ\ �^YK]RKKKK[ios �_9W^v �`V_ �a`7 �bg %%type�cg t-1e8ba8b5a-14b�dg t-1e8ba8b5a-14c�eg t-1e8ba8b5a-14d�fg t-1e8ba8b5a-14e�gg t-1e8ba8b5a-14f�hg t-1e8ba8b5a-150�ig t-1e8ba8b5a-151�jcdefghi �kg m-1e8ba8b5a-152�lk< �mlllllll �nf l-1e8ba8b5a-156�of l-1e8ba8b5a-157�pf l-1e8ba8b5a-158�qf l-1e8ba8b5a-159�rf l-1e8ba8b5a-15a�sf l-1e8ba8b5a-15b�tf l-1e8ba8b5a-15c�unopqrst �v>jmu �wg getter�xg index�ywx �zf l-1e8ba8b5a-149�{f l-1e8ba8b5a-14a�|z{ �}>yW| �~�'
�VVV ��f l-1e8ba8b5a-144��f l-1e8ba8b5a-145��f l-1e8ba8b5a-146����� ��>~� ���K]RKvKKK}K��� ��9b�v ��V� ��6a�7 ��g ck��g err��g s���� ��YY ��f l-3eebb96279-2b��f l-3eebb96279-2c���� ��>��� ��Y�K]RKKKK[ios
��9��v ��g quote��9��v ��V�K] ��9,�z ���� ��� ��g %%index��9��v ��V� ��6a�7 ��f l-3eebb96279-30��f l-3eebb96279-31���� ��>��� ��Y�K]RKKKK[ios
��9��v ��9��v ���K] ��9
�z ���� ��� ��g %%copier��9��v ��V� ��6a�7 ��f l-3eebb96279-35��f l-3eebb96279-36���� ��>��� ��Y�K]RKKKK[ios
��9��v ��9��v ��g %%<future>-set-fields��V�K] ��9��z ���� ��� ��g t-3eebb96279-25��� ��f l-3eebb96279-3a��� ��>�Z� ��Y�K]RKKKK[ios
��9:�v ����K]RKvKKK}K��� ��9��v ��� ��g if��9��v ��9E�v ��9G�v ���� ��V�K] ��9,�z ����� ��g
struct-ref��9��v ���K] ��9
�z ����� ��9Q�v ��9��v ��9T�z ���� ����� ������ ����� ��VK] ��9U�z ��g future-state��g %future-state-procedure��g m-3eebb96279-41���< ��� ��f l-3eebb96279-43��� ��>M�� ���K�RKKKK[ios ��9W�v ��V� ���7 ���K�RKvKKK}K��� ��9b�v ��V� ��6��7 ���� ��f l-3eebb96279-46��f l-3eebb96279-47���� ��>��� ����K�RKKKK[ios
��9��v ��9��v ��V�K� ��9,�z ���� ��� ��9��v ��V� ��6��7 ��f l-3eebb96279-4b��f l-3eebb96279-4c���� ��>��� ����K�RKKKK[ios
��9��v ��9��v ���K� � 9�z �� � �9��v �V �6�7 �f l-3eebb96279-50�f l-3eebb96279-51� � >�� �
� K�RKKKK[ios
�9�
v �9�
v �
V K� �9�
z � � �g t-3eebb96279-40� �f l-3eebb96279-55� �>� ��K�RKKKK[ios
�9:v ��K�RKvKKK}K��� �9�v � �9�v �9Ev �9Gv � �VK� � 9,z �! �"9�v �#K� �$9#z �%"$ �&9Qv �'9�v �(9�z �)'( �*&) �+!%* �,+ �-VK� �.9�-z �/g
future-result�0g %future-result-procedure�1g m-3eebb96279-5c�21< �32 �4f l-3eebb96279-5e�54 �6>M35 �72K6RKKKK[ios �89W7v �9V8 �:97 �;�K6RKvKKK}K��� �<9b;v �=V< �>6:=7 �?22 �@f l-3eebb96279-61�Af l-3eebb96279-62�B@A �C>�?B �D2CK6RKKKK[ios
�E9�Dv �F9�Dv �GVCK6 �H9,Gz �IFH �JI �K9�;v �LVK �M6:L7 �Nf l-3eebb96279-66�Of l-3eebb96279-67�PNO �Q>�?P �R2QK6RKKKK[ios
�S9�Rv �T9�Rv �UQK6 �V9 Uz �WTV �XW �Y9�;v �ZVY �[6:Z7 �\f l-3eebb96279-6b�]f l-3eebb96279-6c�^\] �_>�?^ �`2_K6RKKKK[ios
�a9�`v �b9�`v �cV_K6 �d9�cz �ebd �fe �gg t-3eebb96279-5b�hg �if l-3eebb96279-70�ji �k>h3j �l2kK6RKKKK[ios
�m9:lv �n�kK6RKvKKK}K��� �o9�nv �po �q9�nv �r9Env �s9Gnv �tso �uVkK6 �v9,uz �wrtv �x9�nv �ykK6 �z9 yz �{xoz �|9Qnv �}9�nv �~9/uz �}~ ��|o ��qw{� ��mp� ��VK6 ��90�z ��g future-mutex��g %future-mutex-procedure��g m-3eebb96279-77���< ��� ��f l-3eebb96279-79��� ��>M�� ���K�RKKKK[ios ��9W�v ��V� ���7 ���K�RKvKKK}K��� ��9b�v ��V� ��6��7 ���� ��f l-3eebb96279-7c��f l-3eebb96279-7d���� ��>��� ����K�RKKKK[ios
��9��v ��9��v ��V�K� ��9,�z ���� ��� ��9��v ��V� ��6��7 ��f l-3eebb96279-81��f l-3eebb96279-82���� ��>��� ����K�RKKKK[ios
��9��v ��9��v ���K� ��9 �z ���� ��� ��9��v ��V� ��6��7 ��f l-3eebb96279-86��f l-3eebb96279-87���� ��>��� ����K�RKKKK[ios
��9��v ��9��v ��V�K� ��9��z ���� ��� ��g t-3eebb96279-76��� ��f l-3eebb96279-8b��� ��>��� ����K�RKKKK[ios
��9:�v ����K�RKvKKK}K��� ��9��v ��� ��9��v ��9E�v ��9G�v ���� ��V�K� ��9,�z ����� ��9��v ���K� ��9 �z ����� ��9Q�v ��9��v ��9��z ���� ����� ������ ����� ��VK� ��9��z ��g future-completion��g %future-completion-procedure��g m-3eebb96279-92���< ��� ��f l-3eebb96279-94��� ��>M�� ���K�RKKKK[ios ��9W�v ��V� ���7 ���K�RKvKKK}K��� ��9b�v ��V� ��6��7 ���� ��f l-3eebb96279-97��f l-3eebb96279-98���� ��>��� ����K�RKKKK[ios
��9��v ��9��v ��V�K� ��9,�z ���� ��� ��9��v ��V� ��6��7 ��f l-3eebb96279-9c��f l-3eebb96279-9d���� ��>��� ����K�RKKKK[ios
��9��v � 9��v ��K� �9 z � � �9��v �V �6�7 �f l-3eebb96279-a1� f l-3eebb96279-a2�
�>��
��K�RKKKK[ios
�
9�v �9�v �VK� �9�z � � �g t-3eebb96279-91� �f l-3eebb96279-a6� �>� ��K�RKKKK[ios
�9:v ��K�RKvKKK}K��� �9�v � �9�v �9Ev �9Gv � �!VK� �"9,!z �# " �$9�v �%K� �&9 %z �'$& �(9Qv �)9�v �*9�!z �+)* �,(+ �-#', �.- �/VK� �09�/z �1g each�277 �312 �473��574��675��7g %%set-fields�8g dummy�9g check?�:g expr�;89�w: �<g m-3eebb96279-ad�=<< �>=���� �?f l-3eebb96279-b2�@f l-3eebb96279-b3�Af l-3eebb96279-b4�Bf l-3eebb96279-b5�Cf l-3eebb96279-b6�D?@ABC �E>;>D �F= �Gf l-3eebb96279-af�HG �I>MFH �Jg t-1e8ba8b5a-16a�Kg t-1e8ba8b5a-16c�Lg t-1e8ba8b5a-16b�MJKL �Ng m-1e8ba8b5a-16d�ON< �POOO �Qf l-1e8ba8b5a-171�Rf l-1e8ba8b5a-172�Sf l-1e8ba8b5a-173�TQRS �U>MPT �Vf l-1e8ba8b5a-167�Wf l-1e8ba8b5a-168�Xf l-1e8ba8b5a-169�YVWX �Z>~Y �[�EKIRKUKKKZ��
�\97[v �]VEKI �^9,]z �_9T]z �`9�]z �a9/]z �b9�]z �c9�]z �d_`abc �eg map�fe �ge �hg list�ig set-future-thunk!�jg %set-future-thunk!-procedure�k677 �lg m-3eebb96279-c1�ml< �ng t-3eebb96279-bf�og t-3eebb96279-c0�pno �qmm �rf l-3eebb96279-c6�sf l-3eebb96279-c7�trs �u>pqt �vm �wf l-3eebb96279-c3�xw �y>Mvx �zmuKyRKKKK[ios
�{9:zv �|g t-1e8ba8b5a-18c�}g t-1e8ba8b5a-18d�~|} �g m-1e8ba8b5a-18e��< ���� ��f l-1e8ba8b5a-192��f l-1e8ba8b5a-193���� ��>~�� ��g setter��^w� ��f l-1e8ba8b5a-186��f l-1e8ba8b5a-187��f l-1e8ba8b5a-188����� ��>�� ��2x ��f l-1e8ba8b5a-17d��f l-1e8ba8b5a-17e���� ��>�W� ��g field-specs���� ��f l-1e8ba8b5a-179��f l-1e8ba8b5a-17a���� ��>�W� ���uKyRK��K�K��� ��9��v ��g val��9��v ���� ��9��v ��9E�v ��9G�v ���� ��VuKy ��9,�z ����� ��g struct-set!��9��v ��uKy ��9
�z ������ ��9Q�v ��9��v ��9i�z ���� ����� ������ ��{�� ��VKy ��9j�z ��g set-future-state!��g %set-future-state!-procedure��g m-3eebb96279-d1���< ��g t-3eebb96279-cf��g t-3eebb96279-d0���� ���� ��f l-3eebb96279-d6��f l-3eebb96279-d7���� ��>��� ��� ��f l-3eebb96279-d3��� ��>M�� ����K�RKKKK[ios
��9:�v ����K�RK��K�K��� ��9��v ��9��v ���� ��9��v ��9E�v ��9G�v ���� ��V�K� ��9,�z ����� ��9��v ���K� ��9�z ������ ��9Q�v ��9��v ��9��z ���� ����� ������ ����� ��VK� ��9��z ��g set-future-result!��g %set-future-result!-procedure��g m-3eebb96279-e1���< ��g t-3eebb96279-df��g t-3eebb96279-e0���� ���� ��f l-3eebb96279-e6��f l-3eebb96279-e7���� ��>��� ��� ��f l-3eebb96279-e3��� ��>M�� ����K�RKKKK[ios
��9:�v ����K�RK��K�K��� ��9��v ��9��v ���� ��9��v ��9E�v ��9G�v ���� ��V�K� ��9,�z ����� ��9��v ���K� ��9 �z ������ ��9Q�v ��9��v ��9��z � �� ��� ���� ��� �VK� �9�z �g set-record-type-printer!�g
simple-format�f #<future ~a ~a ~s>� g number->string�
g object-address�g create-workers!�g
make-mutex�
g make-condition-variable�g queued�g register-future!�g make-q�g %futures�g %futures-mutex�g %futures-available�g %futures-waiting�g make-parameter�g %nesting-level�g %max-nesting-level�g
with-mutex�7Ɍ�7��7��g let�g m�g e0�g e1� 8 �!g m-3eebb96279-12b�"!< �#"VVV �$f l-3eebb96279-130�%f l-3eebb96279-131�&f l-3eebb96279-132�'f l-3eebb96279-133�($%&' �)> #( �*" �+f l-3eebb96279-12d�,+ �->M*, �.V)K- �/9.z �09L.z �1g dynamic-wind�291.z �39:.z �4g
lock-mutex�594.z �650 �736 �8g begin�998.z �:g unlock-mutex�;9:.z �<;0 �=3< �>= �?g make-prompt-tag�@g %future-prompt�Ag enq!�Bg signal-condition-variable�Cg let/ec�Dg catch�Eg
parameter?�FE �GE �Hg scm-error�Ig wrong-type-arg�Jf parameterize�Kf Not a parameter: ~S�Lg done�Mg
alist-cons�Ng abort-to-prompt�Og throw�Pg process-future!�Qg q-empty?�Rg deq!�Sg started�Tg notify-completion�Ug process-one-future�Vg wait-condition-variable�Wg process-futures�Xg broadcast-condition-variable�Yg partition�Zg error�[Z �\Z �]f no matching pattern�^g for-each�_g provided?�`g threads�ag current-processor-count�bg
%worker-count�cg %workers�dg unfold�eg call-with-new-thread�fg 1+�gg %create-workers!�h8` �ig m-3eebb96279-259�ji< �kjV �lf l-3eebb96279-25e�mf l-3eebb96279-25f�nlm �o>hkn �pj �qf l-3eebb96279-25b�rq �s>Mpr �tVoKs �u9%tz �v9:tz �C 5 hHU � ]4
"#(5 4+ > "