Skip to content

Instantly share code, notes, and snippets.

@waqassalman
Created January 23, 2023 15:21
Show Gist options
  • Save waqassalman/c40d69d0b47bdf074316c94807b142c3 to your computer and use it in GitHub Desktop.
Save waqassalman/c40d69d0b47bdf074316c94807b142c3 to your computer and use it in GitHub Desktop.
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=undefined&optimize=undefined&runs=undefined&gist=
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote ""]
fetch = +refs/heads/*:refs/remotes//*
url = https://gist.github.com/waqassalman/f01321ce0538735ff31a740c533a35e9
ref: refs/heads/main
DIRC cΠU�V�cΠU�V�$���D�0K�*$5T�SA b�(��..github/workflows/run-solidity-unittesting.ymlcΐ! @cΐ! @�����o#q{K���Sc��X�W�n.prettierrc.jsoncΐ!\�cΐ!\����}�7i��$���IQ��B.�
README.txtcΐ 4ދ�cΐ 4ދ���+j�2#�=��C��� p���contracts/1_Storage.solcΐ!I �cΐ!I ����I����*̛���>K���?�'contracts/2_Owner.solcΐ!-�@cΐ!-�@�����l6 l��8Յ�%��+�Zcontracts/3_Ballot.solcΔ�.��cΔ�.����{ ��՞\�,9�j���W̝�Dcontracts/artifacts/build-info/1a24e2b27678b2ba0c41318a1149899c.jsoncΥZ �cΥZ �9����+vG�lG8� ��<������Dcontracts/artifacts/build-info/8b35382a75a7d1f565c49c4f1dec5aab.jsoncΡ�9��@cΡ�9��@%���H��i��d|�������9BKi�Dcontracts/artifacts/build-info/c0008b0c32a46cdc94a5275e4bcdba8d.jsoncΗV"dR@cΗV"dR@����޸-��[�3�c&1�#�Dcontracts/artifacts/build-info/c85345c632092e8da40275f8d23bd4f2.jsoncΞ^5X��cΞ^5X�� ��]�1������D�4&�\1� MoDcontracts/artifacts/build-info/f075c674f40cc20b781f612f2004ca2d.jsoncΔ�4ދ�cΔ�4ދ����/k���#����� ����_contracts/artifacts/ex1.jsoncΔ�2�C�cΔ�2�C���r�j!���-T��h��Z��_��%contracts/artifacts/ex1_metadata.jsoncΗV$�scΗV$�s�����
c�3�{�, {�f3&H?�contracts/artifacts/ex2.jsoncΗV$.�cΗV$.���7�g\��BBJ(�1u<Y����%contracts/artifacts/ex2_metadata.jsoncΞ^98pcΞ^98p�����t�W�
[l�Vj���^��contracts/artifacts/ex3.jsoncΞ^8�UcΞ^8�U�����ǟ��3�J�~񙩱 w��%contracts/artifacts/ex3_metadata.jsoncΡ����cΡ����'��4�>���M?J�
�ߕc)߁� contracts/artifacts/ex4.jsoncΡ�;u�cΡ�;u�&���|�KZO
\D�M ���.�%contracts/artifacts/ex4_metadata.jsoncΥE�cΥE�;���f�NW����-��Y$!p}g��contracts/artifacts/ex6.jsoncΥBS�cΥBS�:����{�B~//V���8CG�i2/�%contracts/artifacts/ex6_metadata.jsoncΔ���@cΔ���@���(���O+��V�]� m[S�@contracts/w15ex1.solcΗV S+�cΗV S+���)H]��VeTv�.(Mυcontracts/w15ex2.solcΞ]*�πcΞ]*�π���/��]���ŜLh�倝yTbcontracts/w15ex3.solcΡ�1�ԀcΡ�1�Ԁ!��My���%��\�b�Յc� contracts/w15ex4.solcΥ ��cΥ ��8��Lx���nd`Y�f�?�����4�contracts/w15ex6.solcΐ!�cΐ!������!�)?�U���U-u�scripts/deploy_with_ethers.tscΐ!�-@cΐ!�-@ ���W�5��XPwK��ئ��| scripts/deploy_with_web3.tscΐ!ܓ�cΐ!ܓ�
����uۚCl�j��{�f� X�.Bscripts/ethers-lib.tscΐ!���cΐ!��� ��O���:���V�)��?�(GY�scripts/web3-lib.tscΐ!��cΐ!�� ���In��ˠ/�ds�9���5��[tests/Ballot_test.solcΐ!{��cΐ!{�������Z+��>G����`}%wtests/storage.test.jsQ#�V�.?݉o�a�]*�Ϊ��
x�+)JMU061c040031Q0�.�/JLO�+��a�Zi���v��Glk[%
�>����(޿</��l�珳�nk���o�B;�ΣO�g�C��;%��䗀��?�cƙs�������3&iK�a�21�Ģ�̴��b�f=�9z�:<q���@��#[�Y冦��`�4޼�꯽gUا��<����w�U�U�z�2�y�&-�RvUFO��|+�*c�*�Kc��?|t�O�=ɧ s+C��U��UU^|~T�Ѭ��1�ēv_mM��Ç�� �����������{i��O�����t��
x�+)JMU06c01����촜��b]�������=`ӡ�㻿�+Y&�
x�5ίK�A��aYK�����{�;0�� f�+wϽ�@�dp�0Y���"+��`5X��2�$�����~��,�qN�Lq�"���18P���e�\pm9G�����re1��^<,ֳc���y���o�$�vB
VI�<2���0p�����с�l�c��7�Ǔ��Փ�fcL;F,F�ɠ��d��������zi�ͯ�|7�wݖ��)U3���%E��X{����A8�������x{�s��+�(�k# ���
2"`Ni"C��d���E���:����"��V�6�p�
x��kw�6�(�_k~�N��`ϖ���:wϪ�����������l�T&�Z�*�F�n{���oH&_I0A��T���$�@�.�o/��L�J����Ë�W뗋��t�D�.�V�\��%Y ʩYR*�$�������ۻ��|���������ǫ��7W7��o�}�����_���k�w�wz�śۛ�/����ǏW�K�Y��^����`�/��7�Rl����j}��+��}>ޭ����/W�7w������Fe� �-�̾Mo,��������o�\�қ���o���js��-�����?�����������}���Cd�1~U@9�G�������������p=.��?�]�|(��Y~,��<ެ�G���ɇ�+��/_��n{�����<�e���V�>��G�J�vt�><���۞��u�}Sô�'��= �U>����ۻ_��� �pj��7����0���~��֠9�nwo?^�4��ȇ><@G%w�~z��x���]�����:E�,���W�ӻ�l��=��Z?>O�K�S;�������%���ٯ/^.�^f��ǫ���}y��U����a�^>,�'�����U���}zW{p�p <��Y�
���ӿ~��u�a�����>�xy�k���_���:�?]���oMׯ��v�]�Rr_������h�|H�, rB��m��,qs���b *3�T-��?}�k��ߋـ��H�P��O3t�+�T:�]=�w7��~�d[�t1��*=�>4l������������5*<h�bR��讐����^��>Sϛ��v�@��� ������ ~gv�e<?]�w�[7nno>-E�5 :��}�e'�B ���$E� �uk4^���Ս��ᛚM�g�Ж�/��u_�?��������A�������dz��z!8=:jx����������|Dc�~E~���Ő���jy}����c��?Q�yu�-������>��Ǐ���� !�w�R�ßn� |����}\�w�*}u�x�>V����n60w�/���uX�~���,s��tC���'�Z�r���D#�����
���%��ߖn�oK;�W �پ�����&�綧��k�����+��ytFd��z�����`) �x��v��
�/U1�o�f�N /���Uw����k�N��݃�Sl��7wr@�ҩJ�t����zC����r��P_�у��Ee.z��uq{b�*W���v;��*jI��I�?=���GW7e�d��c�Z��~���ߖ�X�Z{�u¡� P�<u0��N��2BC.�B03>��+5jS^�Kt����[ơ����Z$�� �QP�)�j�^
��L���Q��`R��u�|�jTf���<#}Tf,
����� Γ�DW�κN�>@[�I��;�nǹ\���eb� 0�=uu�T�ۥ��!��Њ�d@��IZS�M�Eځ*��0w}�m��Aځ%U���Hw��WC�z�ͻ�/�}õ�8����O��~}�׭�x�v5����$�!x�l���-��� ��{�c��w�n�w2G�9G����ˉ�~�5v;�ȃn�~�Ѻ��z������"�U6�+d� פ�:��B5�#��t�Z��IeC�W?�Z T�&����Q�h�|s��>����ͧ�\S7NIp=�2W��k��[y�}�E1h9��F,x�� �Y�T�E�a] p�#Gu�Q皞H��PY��tԭɌ�C�h2����dm'�!s� �6��#Z�M�=]k��l��6���5j�gm������4�׏jeH�ۼiZ�h��u�)G��@C� �eL��Yǁ�� �%G52uhܞ�@����-<���`h�3[E��05ԅ�79.)���Wz�� t�wp�l�Du�U�>VYf�nm�nQ�8p6l��4��.9�̷�����L'ٍj��L�2�ը�nj��j�v���̈́u,�3~_�����(j�La�}N?��y� Q�=�AQJ]�KǴ#��]Ա /n���T���^��I�g��9~/]��t�R��}2n6[�6g�B�ۻ�#s{�8w��ڧ#J�T���.w�b�|�oۖ�t��n�~�p����b;u�U���nf�t#��d�\Z��K+ҙ��q��~+�K匝�D�L�^���3��a6�3K�Ĩ���$���������w�>�d!(X���rҴÍF��&���i;m(E��j��
k�h7ہkI�l�c=픁v��&I���[��r�b=�{��j�V�~ m���4{H "�W��׊��٪oN08"ul�V�ݎq �mp��8�$㭑������֪"��F�M �1�4 nE�PƆ�`��a��e:�5�УP�|���U��<]]֧�vR����7��V,ۋx�hO3��P�F�t�DA��� &�GZy�y�4[��#�^�W��b m؜Z�i�2-Ws1��3��í���B�}ԭ8��,� IB-��k�Ԟ���eK7����K�eK7��V0�P�(�Fu�x�CxI�B�6�iw��� ��������s��k�3�mT3D{�)�,��N
<Yհ��}�=���j���
� TWi0TZ����e�]�m�
Z�0�}����^~�Qv�E�gH8G�~k�S���`�Ԭmו��U�j X�~Y���f�)�Wg�~�j�mM��13ZČЭ�a�AѺX"�8 e�_�K����}F�=�S�U�>�i�Y��%�P҈~IJD@pId���i)J�����aG���D4ر\���HY���6���hëh��Ɲ��u
�:m�[�ju�7@w �!�א�u��C��vu� �hlW�^�E�ج>9��e��b�M�__/ ��A�%Cb58�/�����~�to��u� �] )ku��>��B>C��!� ���6�=�T`�:��A$6n��ce� �������= D���ݻʍ�%�p��Q*����Go3����R�Xj���X_ʘJs-ip�XJ�M�kj!&�v��U�����,�� �k��^S+Q!Jٰн��j�D}t��^��X�3���=��ڤ/;�B>C���҈� �!���e�7���->hlݘ�ܠ��E�]�i��x+�ܧ5C�l$��5��0��z%�^Fɭ�5��vѤ�G3���T%jC ���9�u9 .Q������I�UMx{�*�����+i�}l�ؽz��:+�� ��69�ayF(.&�����B ~;~L����M�h�\�o�2=���i{�IOڀ��e+w�KG��+���p�*4����v�9>hDZ]`����ݙ��/3�(1���J��I>�BU�[f�o�:@vb�����#�D2� ϴa�� ��V�@�b4kj�!��~J���g����P�9�,�.�3ǒ)%=&�1)�ih����FJ��a��6c0ĩ�2m8p�>„2 �O��Z
��'���$�S` �>
Ե��v-�Gp��՞��i�j�5gi+L �>���A�`�'���P}�4C
��xVA��>qFg���g�b�7Hr$Υl�h���Yj��ىV��7�����4^T���0�/!�D"�]r�C[Ljnd���f‘���&��*xG � ���^�vҔc��|�i'Ml$C3�n8���!��
%IOSC$~�.~2�,h���>���킩d�J����'����^�tp��d� ��Ė�up :]&�*,!혔RZ����X_B�Y�� *P
��i8��>�M�^"�=�ø���B�B��<��0�b��]��x1�j�Im�S� }�%I��.�s�~�F;�ێ"���k�/IrB CY�M��{���\4-�����0��kȜ<4I��}آ,�B�#TF8�����e��ă�u�;ʆR�� O� �3V��~L�Ϟ�u�/�@�p_Kp �C;l]���p|:x�� �2?�/�}�v�a���~�F��b���/���#T$�������>縋]�\��w� ?�4@ ���3�CD}����0���T�?M�bMk��� )|�Po�Ky3��#�J�qh<�«�9$I�������.S1� \�B�V�@Vsp��1W(W���ƽ@)0��-��NG�` �i�V�@�:F_�5r�i��U_��u5��u4ĭ���õ1خe{B~�ѣ1���E���F�VXհ�-��_#~����� 5��#yF,#�8'��$n@� j��h�˚ ��O��D2<��J�KŴZ*<�ֶ2}��`M��}�Odʤq��oc�k|�脹���zDⱽ�����G���G��{4�Q�����C�:��d�������ڡ]�c�= ^�h�0>j����ԬI+���$F�G�&O0$O��_S%Z���T�l+��WJP�- bp�L���&?B<A4�Tc����
����� ���ꂏfF�O�
*��|�XP��q�b�z ��MPn�Y�8�ȝ��׊���[�3��N�=(��2 �l.��l�`���G3��# �u�h��}�� h��Н��I��<Y�R�5�faI`�>Z+`}֓c-]����7TN,��
�M�8p��\��^4�w�86g�Rd?�d�=�_����]h��lL&�h���E��`}�&P�
��,zb��Z��$�v���y�B��"�� FZ=�(/]�Vw�f��5���QhC��VV�����o��5��~�k�j{�9�}�������r�.l�j��*�޻Jy��\�����|�ٷ���"G�g��$4�vq
�4*�C�Y�}h�����B% ���W�ҟP�۴���M������V GZ���]_+f�y�ĥ�B �;�^�G([0�!�c9�}-53�M5}.�Fݫ[�ܾ�x��~�y�R����H:.�3n�Fb��`��jN��j�Z�K�ї����z�J���% �؆T BLD3z`}�
ӆ‘6���� n�0E�i���^��ʉ
��i��9�y�d��Q Ik�U�@�*`LIi3>-�I<��(�B�0�mx:\�.�"`�=�Lb� >Z�n_�*�,�p��TJ�h�G/D��#4�.1#��!\')�T�L�FY���6?����� �U�m��,�N�ACdXN�~�?+��7DA��Zpy�U��#4]/�����۠!BD���]��7�@V�h���C�s���:R�7D�7lW��AC��R��*�魯�ǀ�#tuQ*����� Q �>����U�-�KKHM��u��Q��%���z��i�S��g7�}�HR�r��!Iu��Q�:�����+B����h֗���9���*],=3 5�|�� �^GMi�c���9��8~����c��w.P��w�@貣�}iI�4�4X���VJ� ]��J �i���g���FX%Lj����6�v0{�t�� �7Y-�L �h�������)V\.7K���r�,O�F���bl\��Ւ�<M�Ƥ�z�dB��%#��0\m�Jq��96D�����t���?���^^����n�������g/^Wo�����E���W��?�7���!]��}�[������G�����_~L7�]z�}Ym{{�����T��"�K�CK�����ݬ�$�L���O�op�!�I�'Dp��S,��KERBWК�Y�S �}CK�O�^�u�W�S#��L�e��l��K�=��+U)Xk�tE��+�7��Ξ�7�ӵ\�6�x��MYbk1��'�,� n���z��� $)�1$�@�E�֬��R��&�!m���x�)�j�o�Jl�u��Z i��ل��p�e��LmD��ݶ������Q��v;JI�n}Y�Sd������L�����!� �p����v���:!#�5��%����'{˰�_I��Z�����?�����k4�ę7����O�7�/�y+��߉�� ��|G�@,�2|�Wj�����P]e��d���vv���r"��.�0V�#C胭v����I��T&��?UH����H���+���"������h����YA+�U�V�����4�!�Ŷ��� t���}�4���
Cp�h@Pp-j�f cg���F�ouB�Z�Ji�<Ez��3)�٪����4��h�O�B�� ���)��9I�1!>$�Y֯mI�-� l��'�4HQqYha�M��Y��H?� Q�� �|e9��KkD2�;�d��9l�W��I������#� W"�OY�DV�()��4B�pQvT�dxRˉ,�����e�fe�}0]��ƛ�G��4�?�4Km�u���bL�\W��1_���Jڶ��ɚe4�p?�m�`�l����>�T{�T�٥�J�Hy1�t �H�g�m�-�˞���gֆ���,�Ka5C"�'��=��%F��H���Չ�i����⨠uƝ�<�Vև�^]����Y�o�) X�l��X�Ȃ�I V��k���B*�jm�M�V��z���VJN? =�2�{ *Ƞ�)CjVGߖ�z+�f�yN���u��w�c���\��z��<��.��%3^���1K!sM$�{��"X,FD6j��X��*�m5RPٱ\f�����-M1���e�՗%u๩��j/�#�̖��^ʬ泌�W�I��Л]��[{��W�� 뻯c�����W|��߬EL�ZZ5�uj]����Ֆ�HC�M:_��P}�� ì�?���)D���
r�ݻ���x~tz���O��|~t�����w�v��[�Ì9�_?�÷ۆ${���?���������OG?��a�F鼯�#��o��O���G?�����}�=����ь�ھm�g'?�����Ώ��T��z+^}���D������1 l{qvvN����T�wW{��3}v�O�o�z͓����� w� ��:W���)u�y*���7�.\o�ɳ� Z��u�fI����(��fdi�����3�
Dz��O~`��d/<��ӃE&o���}�v-�L ��ȡ�%'� w�+>�r��9͢"w�T�;�ܙ����"�eM�xʎN���\'����� �����=���ݍ��kR�ɉm����6G�� )������ra�.�d�:Yg���軟�T������ �mk��׈a[؏�� ��;G)ɰQ6�Nr�T�9 *ք�9ɬUN�9*i��lh�1������ae�M��?�������U�OV�Y�n�o���:����S�.����yC��*+}�Pݖ7��ع��"=���Yp��8Ngl�32!� �3��s����LO�c�Ra��^�S_r"�1�c+!�<upsi�N�X���@�䓖Q5�t_3�P0�z�b��k��� 5s�3T��%�ި�h��r�1b������"6��S�����ؽ�1�Y]r�=����f��ʴ��V� Ŭ���*m[�� ;�M����Oyc�5^-h������V���:�ۑ�G�I��VU- ���D��Mz�� V��Z'V���k��,LS��t,��-r[��p�|� ?m�'�˨JQ/ݷ� ��3.�*���m��\��ʻC���ʞ����r%��P��P䴃}X;�a;Т2�:�u�98q���%�x�1�>m���dc;>ޜ�����l�6�|�f�Ӥ󉮰K�B���ע��J��ϧ���j"r*+�4c�6ߞ�&���T4���9 "�m�낄�lx�9B�k�:�6��8oZ��ճ�î*�;�5����'��t�"Ě�g�4ǐ��'u���|�����b�� /��*>4)��wu�D��m��5"M�՝߱_ǵ�pڅi#��j��$��'�1���Ԕ�,=S��G#��C�Ԣ���EHZ>9-p�@�i�T}�m�����u�G6�8�� ��Ƽ.F��l��bTzd�� ��X�)↺Hp��pD�m;$/lb�[8e��Uj~c[d��h�yP
Y����e x+��VrrC��f�b�ߟ�!�EK�Z��|�d�܂��������F�uC꤮��'M���9�vbz����-��j�^��9��ᜈ!J���(�u�S�3�������
�49���D�;Qi�Z��7Aw��geq��+A&F\1Z!ZC�z� �Xm5٭r�kݶ�b}����I�f�/!c��˼��W/��\�\�� �^�%'�Y�B� M��Y�>��l��صq����Of/���rҹM7�0���p�N�z�������@�n� �?H��)d�͂����[mw��\���oMׯ�/�}���Y~H��ڳ/ӛ��_�����R�W�����W�|Z�-?��ݻ����A��ޥ�w7ۯ�ߔ����� ���Ѽ�� �b�=��^�.T�-T��� �!��`:i�!#O�}65�EL ڍ �����%��ٵ�K�QY^^�_[Q{�����zyy���No><�����������?�o�~}��� ]mڜt�x}݉0�
�і�^��N�=d��X%mU0-V����i�P�,P01s�kz�����Ǜ�ۏ����t ���=������5mU� �~�T`����>��#yo�ާ��!Q2{7�TP�>���͚������!� ݍ���u��o.oo�}dJF�Y�����[��>G ����W��o)##p '��u���L���#Q�S�X</n��Q���*��9T��:]�<~fǨ��OP����(��zg�8�1*�õs�|�Y>����c�v0^�/w���{<���*2ݸ�9T���fy�
�T8�X 2�`��iys�z����޽��F7Jr�$Gu��cb*���RV!lj^&�$K�5O9�L�rI����ˍYI�Y�TP0�ze4�M�fI�Rl�^ �m��� �6�ʙ�����Y&+<`%e���Е�k�֊% �Ɋsp��D�D�%O�J�2��4�6���T.��*�)��+���T$1j�4�r���%10�B�$�AE��R�xf����z�^]�&�+� ����"aK���Ԭ aK�`r�f˕��@�z%��&�g<j��A��=�W0���o7�y���j��u�_A#�q"�f���k0*D+~�)�mPEry�PG���a~�����}�~ ��//_U߸�[�K��m|�p?���@�p����u��_� � M�n$Zx8`���_}���͎K�XtK�6�C���^X�ã-fڸ[᠀��ܛi����k�t��J�| ��+�P0|�K�9����m��� W�H�{9Q�v�X������sT @� Ou'��� �MRA��$f#�w�F�� (YP���X����P.�k�i��¼7��-B�dB��H���M��4�F��b�/��RP]� ��~���C�Xm)�07%�2Չ[���\�Qn��0+�Ìt�Q�s)D��5 �oY�]a�;L��Qh��c����5�X6���e��Xӭ�ވl�'.�ɮ����tQ_�<~��Ak ��
\�e��cX�E[|�!���mA����j�^ǓK��O+��Z�p���w�lg�um��E�X��^�2�$��|8��?�C0da�c�B\h���/����X��I��܉j0�Z�b�A�~� ^����y��L�0��6@�W�7�v���z!(56S(�֧/|<��0�A�2w��6[�`����Ӏ�
�7�zTx��<��A�u��!łM�u ��� |����%x�ԁ��a�*�W<���q��b��TD�,~�.�O�FGߊz4�-�ġ�p�0#��>8�Y��1 JC�{�ٍ�Rg����ʑ(�_z��!��`x,T�M g� ������#y#�b�t��p�#_�φ~��������q�q‡c�µ�4n8�@.�ִ>K��$���i���hѺ��]���֒���3F�؜�z����{��ZVX�v��O�$�� �
�oM�����m�]9��yn�^g�۾Q�wӍo���n%3P� H$���r}�� �,��8��z��/����Ÿ�r<��$�����$�d�|\�$b���e�@� �$S/�"?#)Dul\:f��X%؂;�T��ld�B��vy���eĵK%��ӈ���/���Q�J(gX������~9bǢ���8������rQ�9��jѱ� r��-�Rt��}Nc���YsҨ��p'��A|yn���t�yAL�d�����#Y&=A���� gB�oeUy�r�y����,<�ܿ�N�'|�~��ua>���H&H� 
Q4=ةS��qlV����Ȓ��̡�ff��̌�ƙ��o�8� O[x�0���=m��;�GƛX<0q" ap��y˄��^����*��od��[e��l>���L�QB�Bp���m�%�}nv�59χ7Ϸ!�6��.��a��<���+��0�����t��y����ƫ���lU��#���Γ�<���g��{��=��v�󥁧9��{�� }�ݓ$�x��pE��-xC��uR����y������pƕ��w
�s9b����" �lҙ��A���x֧�Gh�*M���Oo�֗\�X��>��g��A�)��Yx��gӘ�4���j��5F7���k� ���H��A�BjZT������l��g-'�E�)���CתZ���W���a���Ռ'�ݹ���u�~�3Bm5`z��@E94�
ש/���7B�:͎%ʘg��g��زDz��}e�{��6�sN����%Í��ý׮:�8 �����ݘ�V(`q���d�}�a�i�3������:�sxAOȬA�sm��ܪ�Ÿ[�Fi�
9�r&d�S��5:�RÓ��]��@V����3{â���[ ��%�e��o<�r�-D_7���(�l1�I���yĀ��}��*:�b�d��s<��ԓZ<�RY<�x�\��o��B�u����>ހH�@ϥ�/���df��s��Tϥ��r�\2OU�������xH��s%I��z
��J������T����(>�rۇ��<�˲��Z��ų�.ܾ�L3��%�Ղ|^P=o  �02��,���8h����p��z�EP���VqB�s�G�bf;�0���;�H��裸�w9��B��a�g< b֎Ps���A��1,S��W&:V��)M`�f:n�{�y���`����Zg@��0�¢� WY��D���}Lc��6!<��E��o��D�o��{crq{w~>j�:x����N�{��HŐH��fbŀ@����Ua�0�X����>�" �������%#�S�����
ʈ�R������=ZH�.M�n���C�����
Mp� #���d�y�����*�xM�2a�pz���R��6���i�2�(�'�'2w��7������>^��ݼ�,�y��x�5�}���T>ꍹ$���xc�����i㩏;]�8����FI ��f�/�*�D �XA5���]v` ~�<�Tq*j�pL��l�� I���� o�w�sCs�S������=�#��Lzj���<�u��Agd��]�+��Ȟ�bM�!��D>ڔ`D� s?��-w�E��hw� g��#(��L���S��������`�LoOn89x�4q�{���L���-%нkn�%�#���o�%�h_*��� �uǍj�o�.�!A-�u��1�}X^9�y,q@���X4� &���Y0�� �,�j���4���v��hW��� ���]����l����E<�l��{gil�U���O?l�L6" �5U��F����D"fV'�c3�X\*�"�P}۫7G㦥GgNr�[���. .���JD�D � �D�u�����!�#_)��>�(�#�j�>m�ex����$���g\�w�ν����1�1ڹmm���5l��f�J�n�p�țiB?����y{�y3 s��f�L�ad� ���fz���|g������O&�g����ù�V
��"AH��ޤ�\�r�s�Cmr�@���)��+�*f�>/�g����ҁWX>�xI5A�$�`�:��KF��q�#\�綢��piWm~ āq����}�-���@��Gٝ�tL��@湝�c�����������h�=�;{��Ů���Z�pK�ʓ��]^��s��՛�p ��>DH2���^@㼨B:����99w��6"���px�Ęɘ.ԶW<�5{��`����l�x'6u���3�%@9q����&�]�7N}s���y� ���0f9ۛ��=қ��`�<�p��mb&�€%R-t�u�ֳ�b�B��D��
�H�ղt�s0W|Z�\�� �/›���� հ���+�֡9�ԁ���[� >�[������K4Sy�$�� ��r�atw�}��HkJ�q�^��@� �v�>�ʅt��4�9��.@?Ѧ� D�i�H����6F�.���p2 �8ʾt�h�L�U`��p*��Gf�� B��K�۞�?oI����Y��io�I�E��u��O] ��͹�ז�,s��q8O��E�= �91�I,�F�$s��}��p��Ts��X�p,�Αwx�3�?���\p_ �'�:XRpbc�0�������廇��y��)����V'��$�N�DF �Y���
s.�"�{��K��yU��Ry6�?�B�\j�u9O��/Pַ�'�aA�m�wTxM�˄d9��|��r�|�R��+���y��x�iDI�A]tt_���w�>� V��;G:��ណ�|�8�xq��`���@��v��\��v���a���㺬ו��>����S{�\�n|��/ ��J\w"�ֵeWcn��dtњF��Ս=��ZI�$bjc��2������B7mr���s�ģ��}�*\+��.����|#Ȅ�N<U�&�yy��o����5�f�z �?&,��:Т�>9f�
��H����Q���0����s8'�ؾ "����v�=m� ��(�:8�s�IU�'/�oa��&z�s��"�¦y���븚�i�k��I�����${�I-��s3�r�+sx�����G��a� - >��k �[��Q�##V��D�K�j����pm����m�&�F<� A����w�8�����萖޶��#|�Uj2�u�_�<�A8;�6�<�V����cY=�갼���qU&�{�� �<��j�t�Qu���ч��h? ѳ}/���$�R�?�� þChv�"���_x���@9���x�Z��?;c��/J�k%�vN���������5�^���RF9u��#�1x������]�]��vA|rGm��ul�=A7�ɮ$���Ӳ[~�:���D���"�V�p7��ۻ7���Q�[�ң1H��Ԑ�lK�㡲�W�9��!S�/n�����=�A~�2�uL��
ϋ���}��_LiH�.��u������
V 0��cE�wü�]��1�DCY��e�����
�r�[�pVe�譻*�͚�J��v�����
O Q��)n����\H�m�;���=q�8U6��/\|1QԈ �%���m4v���
��#S�5~/&���se�l����# b�Ӎ�;>W��x� ZO#[#c��Q�/�$�� v�F~���ح�䧫Z/<��I~�zt����H�Ō������;�Cۡ٠Φ&��U5p�UTϔ����o@���g�in}�׈� �M|~��8�Z!V�&��b�-[�i����;Fp�jb��K��� 湡�&�=���O�[�� \�>>���p�\����h;��H�W6�`��q�ҳ�r�u-�5���ku��/n n:r�O*�歝�",��v�~~1��[���%ƍ�.�� 0��r��idYa:�5�B0���Y��N��Utg����ӻۘ�B^OcR`0�s_:5��לVXHp�?�+2�����]��v��IXhs^����C����z�z"�(D��S��gIt�u~��g��DDzݻ�'�2Wܽ��T��䬮6���WD�/��C- ��;.�q}ԺW����r����ׇ�}���~־�y����S?��5��E�i��ע5z�[�2O�%�Z0WxΓ�B*�p_�. �>f!��D�\.����]��۲Lf��w��m����y�8[P�7 �ʏYxZL��G"�:��T�M����4x�����S���R���|fɃ��k��� m��A�'�<��<v�;Im��K�NX�����ΐ�|�u���;�J˙�t��wܮ�����?�"��eY�i�6zvIS:�ZHnP��ۈ7܃��ɳKC ܊�]R*Y�E�S�ѩ6Iiͽ�⡛���q�G/�� h�v�։O���о�a8�K互^@�򵛫��5��Y�ѹ�L��B��lJ��2����nM!%����4Pk�ԫa��e�+*I����Xg�ޡ�~�����]F�w�p((O�B�0F5�N�f�!i���T%"!D� QLr��KHB�����:H{c|�F#���r�����̃�W[��;9p� LƸn�=�%1�����1�2��$��s�D�>O�(���A��9�LlI�K����<�����"�y$�hT ֳe4<�Zn���wcHb��?��@N?K�_B�"S�0�!�x��˜#$���I�����bH )(��q��`�U�MY%a��x}n�(wΟ�u�2Jp~�!���x�K��'8���6�� ��y���)�`�g��bzw��I�,��4�����bzz�a � ������2R��^&�$K�5O9�L�rI����ˍYI�Y�TPJ�^A�g�L�fI�Rl�^ ���=Z�I����ܥ�$�xn�N��4�!�x�ڎ'ӧ,�,��hwm��S�_ҵ4�d�7�I�&<5t��ڨ�bIBh��R�$Z%R/yJTʖ��v��c�܇��D?;m'�DJa��N2�M����garm�0f�v>@�k�匁G�H��T��R�4����"].�&Y.�y�$�?�L���3�.�h�N��������i;%&R
��vJ�g���T'����,��hwm��\�׫��$re88q+b.�Hؒ��75kC�R2p�f˕ڀ\�X�Kp�i;Pw��v�*��j|K��LU}w=����R����:~�j� �O�,& ��H����z���ؤ�� ��b��|5���ӱ ?)'a ��㤛���!�޻�cs@���G��� Et^��f�B���<Ƽ��Α��G9L���t��m�ÏhI�ȅ�ٹ�}yxcĈ4������o�ޓ���ʅ�p�L��3��J��\�9iui:և_������k��T��(�u=�RnȟUx�K��R�Uc�s&|�v�1��14MD�' �D�.��(�aC1��0��#ξ�s^�[^;x�.o�{�xu�����_�!��g�- ^�.�u�l�ڍ���;�u��T��B�n�{�(H,'0u^a��7�B��b�noU�z�Z/n��� i�HZhe��Zm���[UQ�m+d����CnJ^��O7�9��-/�ޯ�����˫k ���0#�wW7�{^?=�}��:ʾu�ެ�>���>�u����u�����y�W]I�.��*f��X�c�'� ��_��f%�.
*__�G�� u�.^#�0Ry�js���+��2�����(꾗��>���l/�]�ȱdwyen����o�L���Gq��"��fs�>tLP"Sn_�_g)��_�&'I�&��|���,5�ZA���e���.�
���Ѐ��� ����fjQ�*�*U����+��l��z�t��?��5��w�(�p^E�4x'������WG��@'�Z ��a�%
��Q�DF�q&+c#U�P
w9��◭��ף9�-�����2��G�)+����#}F\@�z4Ҧ7��C �z����`W���ѧ�{KwPU��U_�" '�T���^�v�.���/nzzЃF�y���g>�\��[�s�k_pf�������f�.�p�B��U�H�BƜ����t�{����e��>���ѫ�s-G<��"m���W�^�*�^PS�:B�>������|M^e~=L~��}}6''Y0C��\��;Ԇ��N��7+�W���I�5~��D9�QWf�Q��-L4vߋK��>T>Z󪄿�P�!�;Ux��~��K
|z��-�^b{�uq����?�>��>�\������۸7O6͌��۩�� e��BQ�_�>�;�����5��ث�t9��Y,�E6]�I���m@t?��L����x�l�T�TmB% k���Ո��.����o��v;4��u������/UC�� wh��j�
I'�-�ۉ#zW����� �G��KwUi����\e.]%�����
�����-BW_]���bz�S��l�HW٦���.��6���c![뫿�_�Fn�}�%��:��� yp�n�u�7:+5�޸ռ���]��I/:�9n�jVb�jE{MQ�#�
�������.Q��n����������cn�^+�9͂�I�� �������J����+�m�:T%8Q+��c�j�*�f���:
������;M�w'��G��>BZc�����j�t�]F�^�\�V�[NAc��>|�x����܉V��9oLZfZ�״2|TW^^�Z}r�����P�V��.:�������ï��^�~�]I( ^^}�������Mz�����ru�����_�_�^�'�p��!�s. �RQB(�Z�l��R��Dp��ua��R������d�N�}C��� �z��U����)Sl��7���gO�S�*�=]���J� !LgOכ��Z�WZ<�\J-/Kl-��TK����(>ի�&8T��o �<���Y[�ƶKYo�,��]�'� ���h����*�m���k5��&���7��mA6"o˓�-�/�F����l�ہ�+ڭ/�v�l�{"��� ���=�#�!TF,��1�O� ����{��'���-Ê~%��k��&k;��r"�ȉ�gޠ�x����Kh�
�`�w��L2x�8�����fT���^�����GBt����Q����Q�J�ˉ蓺��X�>� ��ڕ>���'��S����T!�R�� #��[8v�L�2�Xn\⻶� P
z��g�X�
�\#,g%Ai�2ðmbr=�ߠ�l�%�/��Y%�р��������YF��7���[ 6�e��'�"=A��3)g�Bxg�- .3�⓴�olC2�d4E
ĬoN�|L��h��k[�jK|�0�I/ RT\�D�uFS�V�)��`-A��p���Ξ5" �� m�| ��Q_�b&-����R�������)k��*%��F�.ʎ�� Oj9�e?�}C���ܬ ��˾�x���`\�e�Z� ������e1&��n�<�9�+��]I�V�4Y��&�b�ǽ�̟�uC�٧�jϺ�*8��[))/曮AI�,�m���`������p�єer)�fhB���Ҿ'6��H�)�:5 P8BZ�θ���'�����ܫ�>���=��M�4���_@KY�1���4zM���PH�X�����
{\��� ��B��g��Rf{�At=eH����2Po��l8��Q�.��x 4�<�+ԂV�Q�R�9�dƋ�U6f)d��D֢b/�T�ň�F�4��Mql��IJ8��l|`R�����)|��2��˒:����k�őyfKg}/e��RT���Q�H��.5X�q������f� }�x� ���S��f-b��Ҫ���S��M����<�GRm�%��*�D)��T2����7B
�y�͒o��\'K��F��F���:Y-i��DlL��WK&t�Y2rɸQBs�
V� n�ipV��J@� נ�F�~~����b�Q� G߽����G�'o�������Gg?�@��}�o�?���1ܜC���������!�^�����?�d�;;���o(��}���t���;?z�Ӷ7�Z���y{r�}|N����$|&�����9�G��Rv���j/R}����i�M#]oB�v��]\T�<�7!�;W�JV�<��7O������م��3yvzA�o^���, �C���ь,�>pҷt�W�H�����~��c �z���m~�����������)!�9��d�N^o�@w(r��9͢"w�T�;�ܙ����"�eM�xʎN���\'����� �����=0�cq �F��)���6R���Z�#�D�M@[ua{��H2R���o�x���o��V_��oqK��5���kİ-�G�^|ŝ��d�(�f'9k�̜kBu՜d�*�
|���4�Q�}6��ʇU jx�ʋ�2��&L���OOO�Qfު�'+�P��7mpk���`��BCJ��!r~���?k�n��Y���C�N�,8�|�36����� �����9��on�'ձ�^��Iw���/9�֘�1�%�1y����T�4�̇ہ�'-�j>�fN�`Z�
�.���9 A"j�g�n�K�+�Q����|c�a}] ��E6l|����)s�{�c�m���T{��5��6ɕi!���Y��yUڶ#/@v(�n9�����Hk�Z
�;za��#vu��#i�����#��
ZRg�XK��j�-��;�N�,��>�Y��n/�XNu[�Bc���A"~�0O��Q��^�o_z �g\�U9��D�DW�w�&����=˃��J4��J]��i��v"�v�Ee`u�sp�)V3K��c� |����i��v|�9M! �C�٠m���.'�I�]a�����'��Euc�l��O��S�D�TViƜm�=cM��ͩh*��sD� �� #p��s�:�numXiq޴ �g[�]U�?w %j�/X��O0%5>�\5D�5-�Vi�!��!N�0ą�!���=�sQ� A^��U|hRj���ΉP'�6kD��;�c9��ki� �:FbW�f{IJ%%N�c,��[�)�Yz$�l�G�F�;̇�E��#N���|rZ�9�6Ӟ���ۂQ'W�먏lq2?�A���y]�:Y/�Ũ��,��������Hp��pD�m;$/lb�[8e��Uj~c[d��h�yP
Y����e x+��VrrC��f�b�ߟ�!�EK�Z��|�d�܂��������F�uC꤮��'M���9�vbz����-��j�^��9��ᜈ!J���(�u�S�3�������
�49���D�;Qi�Z��7Aw��geq��+A&F\1Z!ZC�z� �Xm5٭r�kݶ�o���ɛoώ޼�� ��n� ��^�l׸�{!�8����_p��,9��� u&4=zg��`hK��r�b��9~$vH?��`�O�I�6�t���b���:���e��v���ǻU���SV f��,�Y�����~.�+��&���� �0|țZ-��"5r�ِ7�� �j�Wީ�J_�!/�v����搮ns�bx��ǂ��8$YP�?܊ɶ8��̻��i�' �-��P ` �i��U�j6ov|L-�1� 4XP�A<�� ��J|L5Y�c��Yhl�O�}����?!���,
^`K+�+@yL)Y(C��N`Tf����8��Ѕ��I��' {���k�N����:fZ��R�.^S
����/�X0xM�� 8 ̰�N�c*��0ǂ/b'x?�*��'� 3�(�A �.� ���8}��*B2��?���77BR61*�R
�)��N�U"�5 �8|R�F��ı�� ;��*�R@3�/ B5��d����lq
x �d@ � �x�s:NC�G #�c�g�SCl�I6}D�;�ݦ `�4�5��X0�3 (�X{�b7���A����a�b`����� �(( �OX>bs?����(��.��-� ( *C����� �� Y��/U�s�,4���3�
l)B|��% �Ģ&%G�� й��d���&C� ��4���w�-UXH��XHh��A�� �����J7�4
ѷW� rtK��! 
_7 ��$����f�g��K���T���O�g�Ȁ ~j+�D[A&
��h�?����݊Sb�W�8���� ��, ��Ol��$�i��vԌZz�\��(LJ�w�?+�#�A��x)۶EW��5}�Y&pB�E�� `oh1���@mks
$�*��fB$�K[�~rx ~Jh ��'���b�����7$G��L�+Yf�A� �����F[m�'���@ �f�?��A,fڠ�*^�j� P � 3g"Œ�,c@Yà��p�@��YJ�K8�X�a��O� �n�`�l��w�TN��pA���I�� �.1�[�ω�� $��K���9p"?e�q�j�T�/��0Ȝ��E����"�r�1� ����&� P�$�Xc�d+�ϱg�Qj�~��a�śǥ[�f4k)�"&
?�4��~0$ W��+b�*�s�S�jL��mg�+����X'�( RA���@��7� 4ދ"���:Ag~��r v�k��@fc�i h�K?��;��:�z�׶o���I�M����� [S��?�}������c<��@������ě\ �d�[0m�-��I�R�A�?��k���<r�A1ܺx�;�ҡ�L�\5AfDP ��=*p����=߾�H�4ۡo����e�
��#@ޱg3 .9�B� M7��@������k�3_�|�����%�9��
X5lH��{��P�a������@�� �R�08"Ɇ0_B�x��v�4�s�/K0OHEQ�Vz�y ~�c��E�r�I���X--� O�'����l��{�t��H^��K�qV�S����yطD� G��] ���M���a�~3���c��@}/2� V��S٩B�Ƨ�?ا(x��^�K�)���<��)��/N�[Ip?�S�T�!d�4���8�N~����$?.��=�n_��]�{\��x�]V�?������⢴��n�c���8� ��8� �8�s�8��8���8�w�8�g�8��8����$���,z�Y�����ϊ{nK��5����Щ�E���ƙY�����s�/?,����>.������.]��ʿ�#g�������{{��� �r�e�K�z����W��~�p����4��u�m�{��Czw���c���~�56d���^?�'�w���ξ������E���}���Y�y5� S�4ޱ ��O����k��:��\�zr�~���]&��wH�Z��Ju嗗�+���UR{U(LWiL��jd).��T�n/�0�%*5�g�BL�E�7��1�����@b�t>h�j�|𐍎��a��?B��N�K6�>��C�<����\ق�|����W��ˌ����������$�c��/ ��;|�= %v�����<3ݝo�t�[�d��c�'�?���/�[/�q ��87.&q�C����͟ωn\ײ7���8��k7�M��h��i ��v���vƇ�"��[���4 ���r�?�l;���n8�O�+�����Yw�D�ig�Z+a?Dy�/.����=�ʮ�:��OL�w���ss��LC^Ajڹ8��CS`d�
�س�[��?�t����ŸM�>G'����?�t�_��I�gQ�� �颾���Ϣ2����eb�|��&d�<�h��g�.������]{L?���g�F�lJU4� �bb�1��W^ɴd�a�3TpFLX(N�~u��b5��'���3���5q�.���|��F��������7���sUoS3����i��-�7{@�����Nq����� �\�q��BטBQ���B��`�B�Q�c�f��3�����{r3�TL;;�T���������"�8%���3VtSs�E�Fj��.bDqP�,ZLqH*4jT�� vo�,T�!Y������F� ��u�����N����޹zr��RL�:�$�n�C,�� ����6�ˇ�T�M˳_�Z����������h�¡�˨q5� �5�S��}B}�P�"��P�;�� UC3��n=f�f0�3�����{r�TL;�T���CQ�i����e盒��+������k#�OE1�8(E-�8$5�`���s�D�F� �P�"+�P�;8��aƠ6��P�"��P�T�
E!��A�Xj:��Y,�L�jzF�0� ƴ��dJB���������{��>4����hj�h�L��h�>)s��:�l�.J��;�~��mƠ6��S�dC � <�P"���-�:�L�����3j��yLI���#6�����~r�=X{σ�/M�홉"z�37����a7���� b�>C՘�+�¿�nH�Ϻt��T�(�Z�;�x�� ��px0���26g��q?������;H9��+Y�ѳ�����|;0_�[=��gg������>E�ѯ�����K"� �Á|���_9�>�D�g]<�$���M�F���“�a���Ӌv��|���pXs���6� �ų���_�uӼ�s���/��ә�����9��F.{J�<G��s�#��?�卧h���������L�g'/c,E�!�C��Қ{�M�.P���x��^����6�{�)�:��� �wk
{���E�}�i��QN�v�3�c~`L�1C�n���u� ������Q�zn��ux�v��.�<�X�V�FB��(MH<�B�dA� �"FI��c&�Ba����b&KD�}F��n� Em�=��h�����Ⱥ��T�,A`(R�B�9��< ��#;��P���p}�wX�|X1�;����ՉF~������fz`�(V���,�3��=�ޫ�}qj�#.���;�\Oh��CR�_r=s�z����z�v>�ܝ������I������?�^q�'�s����&�V�Cr �c2v�S���s���/�o �� {l{�ʈ�fa�!;4�S2������AY�'i���,�>c{HR3�j̑3ܯ�؛��g �L��fM����s9����û�NJv�vƈvc��5�}���
{������K�����30&�#���h$���/��@vAޫ�mԡ�Zc�z̉�9Nk�քFS�4�"�0�"��0�sd*�0��
�17�sH
5N f�s(}̥ݡ��P�"K s_��X�s���„�{��\$1�
:��2~�m[(�x=��c�z��͡��r
%oN�.z*��[(N��0�`r�e��>� �Ԝs��}8����=�T�@�<+{H$�e�#�xɮC���I��Ɛ%V�s �X��3a�P���L��B��-�Zrb;7�L�����y��; �:���C-m(N�ٓj�?��G��� U{LO�p� G,K
:j�
;�v�P�����?�si�o� ������d���R�z��N �k��䐽�`Zȝi�iA�;�~6 ��H�.��d�\K"\6�q�̠Ħ��*�=�n�d��xa(u�l���������"//v���SG*� cbi�#ot�U������B��uf�?אcGSN+u�'�����!���{���Ɔ�u�b�ASB�� ��1_�=7��'+�2ts����%�:7�<A���V*��'��8579�y��~�L�����{#��� ��W�$��s�
������穓�'n�U˟�%�S�ӹs�s�½��Q��-��������������{���{L8�o�����hf��"�^���4�i�����':�x@����<�Q�c�O�G��# ����טwQQb�}}��r����c�1M��'y�`b���=�=�5��ٽ���\��f�����ee�dC��}�Z=�`��Os�!%�>ۃ5{ݿ��P�K�nw�9��p@�����K�3'��B��J4+m �M/k��0�0�c��Yr��MF\˘S�)+��8u�Tf*�(���,�2:j��$T7jx�2 �H����PԺ�P�T`(Z#�P8� UD=4�ԇfICQ�����D�
r�b2q�^���İ;��Pȉ�H?�HnW�,4s:��a��C����'zw� θ�icbD����K�;��q?Ě �6L07��;r�>吵����~S�AkϠ��v*�,�9��-Ũ=�D�j�,��|�/� �`�Nj�f��a������.х�֙�%�qZ��d �e>�B�`����ʆ�5ƕ�z#����5�$s�{D��a-2e�5ah�N��: Ԧw�;���
���y�|�� 9��ty!4���L:6�1
%TlƐ*�Bi�;ٓy���e�1K�-�29�X�" �h����R>#V݄�"I=��Z:�.�@�"k�83��q�M
g�-�?�K?HwJM�L�����"�#�KSK�f��Sj�9��������B!S'dţ{u:ty,���)�n����,� �3��l��L~x(Zc,�Գ������!�I����(�j|ĵ%�Q��-d���ysv��IW%�P��}k ;h���vO��a�G�}��һ�Ιv/�h�q fY���ɨ���*�б����
О�!�s6�h�c Em&�����EƐ*�uq����<�<1�x��Δ{��x�C3 1�nc`ǚ�P����� ϕ�Ӟ��̳N4F �����{�{3���ޱ�t� �q��f�߸3��o���bn� �Oe���zd��B�4W� Ԧ��9#UB=�P�f�tC���Ch �"��P u�s�X�
;����@���J���i�S�A.Yh�T��C ��N-�r��4׸
�d�E��D%M��@K�pă0�_H�p��0���#��u�=mn���
��3N}+�Q�����|��3f���\���w��z� � >�9'r�gq���� e0b# � s�0e���!�<��,���<2�!c�Mpof�<�KL����|��㭇�V��-l?L����{x"��x��|��H6C�)N�2��2�:S��e�\C���K���&�6F.�/�9� ��+��ȅ.��#7[e�P��8 ��et�!T�Ɛe�I��0Sd��g�2zV�
�f�4eS$>D�})�7�%N��q��@�#.O�pOf�w�2�39#?W Gn.����,���U��@b.�C�X��6���Ņ�a�k�\�<֌�#��z�U?*<B�}%�,���\�*�V�͜P��l���5}&�{�Iʈˑ� �ӏ[�f��IORK�D+��+�;4��ŷx ғ(�� r,�y_R%<37Y ~��,Xw#5Y%=����7�%#��lȅ/�#7W���=�\F7ѡr6&��G�c�E5���}z.��O�f��j)x�V{�P���1]�d��o�PL�I�+GP��)4��#��D�ڌ�|�$��,Q0bc,Q���!WT��ID{��B �1���^�w�;"��A��8���<�>�Oس��tӽ�0c�Y�j��;/�ت�x.|1:b��`oԸK��$�f�$x�;��dI�N�hjmN��Fn.�(�1��H��S�w%fF�S'��� ���ѱo"�E�} <�a�œ����\2��G�+���kq��Y'8z<_�w]FL���I�yfF������N��nM��q�_,��H�v�x��u��υ4DM_ �;׍���f��l}8rs]5��k�UƐ+�u#�8�IF�e�wg&J�e�z�6��R=1� �цc7��#6B�ư�zŕ4�ɠ�� c^�F<wER߲TL{�,�;fb7z��q�s�OF������=Z2?�>�O�s%�u/k1�!F��l~8Z����B��E�1|��|'c�]�[�?9</i��� �n.�+�Q��Jc�W�ܶ���X�1���'W���`51�wP�g���]���fE�]�4�c[H�����*'s.n3�^Ѭ�6o�sN��/yE�h³�&��7&(���v�r���#*4�P�K�tȄ{� 5�
��,B� (�� �^��D��J�=�L�.g�xI�l�L~X��f�f�
O.�3%=�/����K�/z�͂�v�{b
�T�5R9�-Is�K��p��
�.���z��D�{���>F(�>Fp3q<z��S(�}�}��g �e�^53�͆���]�X�VOʸ-�jQ��%����<��:ၲn�ݢ�wK�)4M�n��%"z��}�vT# =�BӞt�i�����.���x���tT�Pjw�7>�����_̰eVN �[���+n FlT�,٣��1�L�z�K?�B�hp
�l޻q��`����)U�k��X�R��Wa��P6͓ Y������w��`;��\v2�1vr�ٌ.����^��F��#Z��YI���ݠ�� �� c��e�n�E��s#���
|�y ����ͥ������x ��*�P''�+>
z<�
=�z�\��'�{�y� �N��:�[R�19��$��Y���J��徆 ��m��x�'�i��j%zL�-TJ�*�Q2:�R � 7�}W��0�Z�p�"�4�9��[�g�iԭi9�%��p] �4�u��A�ڹ� (��G�.@;�R��d<j�p�?���±�Y��3w0�Y��Y ڄ�0����p�f
\��O?��MW�����< &]�{�7gM�Â����3X�9I\�#��4P(b�����zŕ4/�p�(z�(���E-▮�7�o�㼹cl����%��&��t�񹍎vTN ���#���q���B���ez��0' o/Ip�p�b��ݼ�}dzfz�������(�̉o 9j��uMt���#zL�!T���Q����P����l:[x� �o�d��僱������*��r�-݇����a�^6 ��;�G�^k�ͥ�IN�s�.���Y`�+��%@k�)Q�#2|��\�Ϣ�aG�$��#Z�`����8���P����>a��=(����� ��ъ�>(w!��K��*q�|ڷ�9f��9�UeC�(���Ui������I��Ԧ������v���Ul����4��N�pg���<��"��{��WU1��n�=��3��ӓ7o�N~:9}�ÿ�B¸+����Ɠ�1�{fc΋iކ]o��N�p_���ѝi�����x��`D���@س�j�ι��&�]���:�ض:���)�Y�u"�X �"֢b�7��}��eyґ��fJ����f��)<���W$�ço�=t��n���n��M��D"�vmA�~<��C��X�_��~]�0�x�޼.1�_'H�N�-l�"����=#o@ ����+w�
Xp���ǜs�iD��9JA��X'1�0�/�%�B�Z�4�$&�s|*�%"�v���^?���`�#�Y��<��H3�k��E�赋���C�x���8���wt �<�R���h�,E���"��-�E�����&B���E�ک;��� .��rA����\;�>�HM�wz10�� Ѻv {�2\F��y�3j��jx�=������Þ+o/Z� r̤��� 塥�±��S�C��n��Ն��{,�j�9�)L���f6}�Dk.���ϭ����`�@�1��p������������Oܽ�����&���W���h^�d��/c3Oϛw���EW-����P좆b��'Ʒ[j�����P�7�ܢ5��Θ���)���`��c=����1��L�����D�0��+Bx?EG�"�����n�{&%�fѺ�ݬ%2E:U0�|z/�=��h��^�6���f]8�]lxp��]T.�[`
���},mB t΋]h��p�f���(s8�lF7���6�.�h��� w��MHEt݂�aQ��QУ����I�ْ��}�h]|���_��Vl)�Ͱ:G@5���0t�hUA�b7�O?'i�+K�c7����({�J��U����7�pw̮|7JD\Po�]���)�9�#Z�UOܽ$�}��eZ������ ��� �x/TST�Pתּ [
yV��S�+��/<L���h�ݵ���%��fM����n� �.j��s0@��A���Y���J����� #6��~6c{C��6�.�h��tў��]��GKhO.�U�a�!��1��gLE���4;2��H�?F��P �<Wس%� q;։�R�(��H
F+����˻�'9q#�y�W\ͧ�� ^U��Wr��|>�ƕ��k� L�Y{}��{$B���hf�eם=�W����u끧�[�+����;^؞����?���؇>�@�{=Ed����C_�_u�x����Ž��{#&�K_~㌭�$��R��%��j:W�w�r��U�R��/޽x�M�����C��<k�b�k5�,͖����ѵ�Ȳ���S�N��8� �� SV��~, ��L�=h��.�@`J�-~���Mա�u�N� #}�=�e��㉔�;�=
*�3B�IN��y�����3,�;}��R�۰���*������o��T����"@P�)G����+��/�'���̹�vjPp:U����� PݣzA�ŝd���_u-1DWX?��j�7�@�B*3՛��a:U��/���5�:OT�@�P��)�P�7�P�zʿ(
��9�:u��t�t �#�_(wx)4tl��8bl����?L�Y�P�z��Z�-�����n:Y�%Օ����E'�TW�&��kT�`�"ܼܥpUN���� �b�:��3X��֮꣮������5�߫o�!m/�3Wն�C���'�j[� ���[���/u���׺> :������̡��xO^�SW5�S�ۮ+�����b������!O~!T~5A�铲f�'�Sw���� ���g��~i�i�����_� _�����!m�'�7��U���0Sw�N�N�^k܊�\z���'��<ł��Z����+.�Í�$�:Yfi�ӈ�V�*P�*g���A���Ã�����B��"~��N����vh^�?���c:f��I2з�B��>�w\� �ɯq��t��n�܈I�i��$q� �lҢj�ޤymB���8J���&��L�&Wd��a���v��K��a��\.�b�N3T^.�t���9~�\��G�_p�*�!Ӌ #t/�/Y�_m0g�|�E��i}s��)x0֛��,\���{�+��ˊ<|�yH���M �PE3ר����f�f�x�d�e��z��4P�a�~�Ԙ��! �N��L�ɣ����C5��d�n~靈��md�9�S��K�̯�F�檤��3/�ux.3t�2~}�̖3��W&:L���:.�V|N�Ƀ_6�Z�K�����A��P9.K��*L�qwj�˪-ު��v�x���� ��z�@�<���i�nU�^�c�aV�1�I�_�,�2E��^��U/oj1�%�>5E�uR�u�:]��ze�r�Eһ$�*�3����j�^�U�^w}y���\c ��� LCQ~nd�(�� .�B�e-cÎM�����Vb8Kl��6H��"�c��i`w��P^����ˋ�ݦ��p��}�� ����g��� �k�(�M˴#�7�^Z��0����� d�Ί@�TA��1a���W֓8z�7����*�V=�Ot���v��_�M�.�\8k���['�\|�Ţ7�X���W� t��� ���޶�fV�K\�2�1���� ��&s�2��4ü/�K,N`��E�u�0/�Lk���N�P�3`1 �P� @ۗj ���>{V���d��F��D�*�|é�2�*i�ؤ|�Z���iS&�n�X��[�*��Y!i�}�}V��N)�BKTc�NZp��߀q��0`����o�W���.}R���`'nj�&�?�ċ�C�u]�5��oV�"cǚ(`v�f/?�fk}?#{�DZƺ�6�cE|�I�yӻ�i�%WLs��5�.���0c37 k�/;��e0�f .���n��7X�W��Dؘ^#�Q+*�i�:ČDz��I���� +�����~���5�Ұp�H����Qm2dI6Yv�r���
�S�d�� CB;l&��ak� �OE�(ߨp\�|FNe5o_Qc�I���[rf?�}NR,���'��rI�18��Ln��"�s��Q,J���3� ".Vk�B�S��2}�y32��������EYX�|߉�EE��;�ˠ�
�7P��Uv��2$�( 7Y�UCt�sTEe�&�83Ч�:o��[��(�!ǭ��떱\k�q1 �R#�"���˛��j.��H���N�ς�<`C%?��*�p�Yb�:�c�2%�A���pޔ@�xN`���7)|/���`�27:`4gj�ҩ1BZ�&f��er����˭�d���dY�7Rf[ɱ�Y}�2 @+0Glj��7`gB��b%�:hȧ�T�!\�z���]�W��"�ͦT�fMٷ�T�B� %�/a���(� ��C�€v� �1�+0�Ί0F1�+���-Q�J �����os�c�آ�n�wI?ʹ�y�����������,MW9�=��V������(�L�>�1�@9�_�v8]�p�F���d��ӽٓ�ދh�f��N4� �����{�("v�Md[֔xc �8�J,�qR�����} \m�"��V��渉GoFثt���u-�%�u�g�
����+���{�}�Wi%�i��m&l �ss7�<ۢW�ܳm���,�p)|�i�K��! Ĕ�`?�y��ܞ2�����TV�ͳ~(� �C&���)�Z������5A��!��bH� <N�q��D����l����s\NƷ����0��jMX�j�F����N�zf2wV/�7M%����4����M:oC�{"� @ko�Lb;2�|'mo�ߎg����X��cw[�͘X�C��q�rQ̣™�=��o��\Ԩ�L���0Р�[�!�hk����Ж): T�Z�á- z�ǀ[r^�Kͭn�f�l͂4 \s7�!����Xs��ex�%�P:��53�SS�������G�z¸��H���^[�4�Bb ��.�O��8�)\�pƌ�ǻdS=ʦ�c��
���f�ZCˍ�-13�I����a�*�{@�m^��P� .ݍ>r�ӹ �׭>��ͪ{4����3��)< ��tИ���낹��RAs������;�����];ך�ct�v"V�� ��xL@�����.�(��{0�x����[i �<7@j:V�~R�
�}}
��1}
�o�'���X�� ���ξ��%fj��{����Խc���������T�Ցc�;�G������t��s��ASK�r>� �-:�Xxv�k0?,2�F��(Ȍ���Df�g���ˆ�'n�?n(��Ŝb�$Z̻�@����kr�'~Q�E�p���2'El����1�`�b�����@U�'
x�+)JMU011b01���̜�̼�|nͭY'_阭*��Y�Ż3���f&&
��zY��y ��{'MT��еg�D�w�/O�>�G���M-ILI,I�(>���p���![�g�ջ-��+�b#���\��W�_U`�Q�~�f��a���@���13?:9 {i2,��\���(\�1D�����O��s�eܷ͗>��1B ��۶����F�]ug����V��6\� D�]��U7}��nqM�?5YS�~�5D�����f�w�?W�K��/�Z��v���p�f5���׮�h~�;�ъHł����5h����T���k�2 g���F��Ls��
x��}iw7��|U~�}���6����sF �x"/-ٙ��t�dQa�"�\)9��
���*��tb��v/�}8[ ;�2=��ן?t��n�ӝ�َ91�h���q�Ćh�0G>wqѫ�by�I�_}�Z�^ 7����t>Y���N�,W�Ŝ/ݗN�q��_�3�{�����_�����톀��tg��z�_���b6O���is����Aw�����h�z�;��;�%e��`N������?^�OG�|�x=����4X�:o^���<�]��7~g���A�IV��!�I:�o3��?�/���p6u�:�|�ః��~N�{ZIJL6��S��f1��?�=��.��f9_u��&��@��t��S�?�/8�Y �;��#_�u u��o���z=�_'D]ܮ�7�?�eB�`�g���?[�,u���ZXbh����f�Yy�ڱ����_���'�����]���a��W!8�F?n��?��~�2�����f,���z�Y����$9�z�r\�����*���ż��:-Ɓ�:ng��`|,�����'µ����`�i믃T�����[̧(qC�FZ�~Em� U"���"�&?E���s��*#�n��Zq qM����r��>����D��e'-pm ��T�8�[��n��}�Y�.͈������Od��6j4ҹ��o�T�a������_�������)�Z��t��i,�s���*1��_c'YR�E��dl�p����k��0}��,��L��I�ח/_v���x�b��g��Ďܹ�9�cE�:v��?G����6N�on!�?I ���c�'Å/X��g�<�7Bh��:�w� Es>�B"����(� ��P�ۇf���.nC:Q�W��?-����`�cD_�P���)����~^�zՙ�?�i����°
·V �E(��*ժb�Y� �3�%آ6�M�G ^|b�Q����Z��?�}�gA�+p/"$��)�Q�e���!f��H����^X��I/dlL�����-�-���͌�K�$�t�z��
�T�����(��X2Hr=�HL�%���n������^�hA �-O�d\ �!� !F��<�d���8�% I��J�O<�b�@���[ i<x�ă�g���J��$��d�ǣ\f�!l���|�~�c�1p�R�׉B�ΟLY�VX���ԙ�%����]���B��.��G���E9�-
[�\A������s��L����կK܉w"*:1�B<�Θ��6�I����!�؂�,/p(o���B0����,I ���J_�'� )��q�9TL*<�bnm�\Q}�=2�p��A��\�d�9�P�
��q�T<��J¡�/OILBBbd<�p�r�
�@=�Z�<4t��b ��Ҩ����[�㾉���&kyב���+���)�w�z�z�������3뼦!Y�l-PD0l�8��SK��@)�a ��ӣ�7��MU���ɂf��v�h���o|�4���ı��r,��c���P�%-x���`� �Q���Cd��tȠ��*� �M<:��&_��;CV���]C�,d.�au@3�;�T����uI�����d�'��C. �(�_���T�r�_�a�$�5*��*ݰ��M�+<��<$�W5~�g�vdX��]�a�ӡk�� 3@.� ��0r 3��a�)-�f9�� �g*�i;����5�̘�8�e�H�ㆬnv
����3ǷC��M)�<V��ز���T�c&�v ��Ҟ"�\S *,z����#�� �!��y�Ek����r�q�a��K��F�� eD/df��ҫ��.%�qy�x5HB����e�� �/�7tL��[Tq\ ��S��e�,��$5�:8P��O��\�����'ӊ��^�n�1LՇ��-P�%��ဆ���\h���Q©4{�">�$�I�j�-�3]�&�CB��d�K���R�PY-��!+#�%EX�P����UV +)-��y�01lC�4+�;Bn�0�^em�)8��k�&�NF���,�t�� �q�hI5��ȹ�cb93m3�%���e�z"Kʹo�ΛV�V����ۙ)��ZvY-�w�سl�_�ųW�W�d�ͳ29�0���rk��=MZ:�uz6��DgA��t̞�rJ�b�s�<���:�\hF!�-T� �Y-��)m�&}��U%��쳱����jo~5���j�����c�5O�`G��r";���Db�Zz�Jj��cY=���R��t����ISFP"\KTuL��pq-U�x����%��%Ȉ��xV��eŶI�!��s��N[o�V婇]��exZb�<���R��l'�����b��n�ܠ�� �(mp��ġ�ۭ�W�����qW�ت[x D��S��!4-�a��K�AቊT S��4DT
�L\ti
m
O�O�V�� Ih
�`{�Й��43JQ5�K>2����l��'2�RM<����>�e]��+���HwX���B6��j��!��bv��@���adz#���f��Z.�e�����g;�ƃ#��I�*&����2�
O��j2��0�n�e����TsG��z�>�M�s�m;��"ثB�7|�9�i8#�&p����]��U�c��ȆN`� ����`d��9�=�G�a� ���� �߷���PB|+9jpx8 ���Sr*�?�pн���_���� �i6��vL�e0�ru�#zt��(ٸGX��'d�di��m0�@�%����?N�H��OL�;�!�����,�Z �m�m�"�����I�m�$$')��rlJ�ɘB�ic��!n��ㆣXZڷ-ǃ*N�M�R.�,��\�K�|<`YayHq��!.�Eq�0q)�24"<����28&F�11����e��Қ._� �ui��A���� �bB R��4p�3!�3,�pm#��yKJ`��hs#Ku��h�"K%���Ű(/(<`D 7��5 ��v�'0�bBk��2�����ø���'mߕ�?���{����9�ź�ai݈�D�" ���!�l�!k���k�J��f��A�4�H����@�9G�O$AVCsa,� ]���1�#ؑ�J� b���-�i8���f�T��V����5�_��,�5s� z�����F�E�VaHj��C�Khj��tG�kbs�o4btQM5m� -�S��S �<(d��(���� ƌ��
���P,`�3hmC�-�'�Ks&ێgH��f��&��&�F�% ����, �&�u��IО���A��Kd���˟ ��މ������û���r���s��=�S�NO%ՄRG񷳳��[�J@bS�,���}� :����7Du�f�q�H��:������tp�Ahs����EU;�r;k��v��������!��/�5�xW�Oh���i���/��Y��:�f
�ap��^�~3Lin
��e������9�A!�v��i�
ۢ�b�)�$g������i�8'��k�� +,ˑ�XδcG�4V$�y� ��,1N���(�F�Y����R�܊hEp��hIԓw���w���%] >|�x�y�K��DI���X�����BLۦm�}8�|��A�<� 3�EE�lE�L˟.�>����0sp��=i�N�3)IBρ3�|IGZrp�c��/�����G��Q���p��XT߄�ֱT|ᱝ#'i3�1�1RY��M�e��p�u?��C�� ����ӳ�}����� �zvT��nk�Mb�B�id�pJ���� 2�-�����*�ep�.�C�< �`P��RA �H �"�G�b%��a T���z!P �0Ϊ"��1B���C<b� ��[�\rQ�,T�J�
a��*x*�"7cӷ V�w�)Z��`�(\� �]B�c#*Z�q�A^�h�w�����`1y�%��IZ�O�9<Ү'�xz�@E@m�xGi"����C���$E.p*S,~ȣ@.N�9!��\5#3cq�[���X=���j����ן��H +�DC�̐���ɢ�
A"��
lD|@���~1&X������H$O��6Ջ�''G?#˦$w�P������j�:?]��x}B�N��H��'�������:���"g�$�>e�
�5��CL���@�$4q�K�Mb� 4��(ᄖsH��fi��2K���ߓjo��6�LJp�>��p37��7�-���z* �^�@��w�r�ះ�)�: $��^oJ>^�"�� zY��F/�I�J��P�o�ǵF����KK
��+ɺ���J�⛻���E�2,!�ܜ�^޿_L�5���=`�"N��n������lA�*��-QL� ;���r�p���������p�逌 �6�H���՘��j}ݴV�� � N��lV�R����vV7�m �`.R�j��~L���˵?��Y7��m��go��H�+��+����ט�c�B��l1����f>\l��b���!�l9F���on����,u��*J��|:�
����,�50R6+l{F�� '.0��V���A�5��sm�w=�'�\�L���خ }\�U�W��x8�G�����kxwh��A�Cw��[�0 r�?�'���32��7���?��Z��W6�kܗ�cՄ٭a� ���-�V�-Ez�(�Y���;�/�o����16#��w��oI����p̲�G*�\&z��.ᒂ���>�x��N
�b2hH@�V��9��n8�l{=�e!3���~�,y���J��w���Z��'�?�Z^<��m܃l�o��/�v�`�-CP�|�;rQ��Z"��Gvzf;�M�m
�Y�� �L���Df�rJ.�&��BLh���S�R&��%���XVY���e�Z��� ��y.��89�*��~!/p ��J��"���y����}
� ����[�<8)ƈ��!&�t$�.+'�i0�Χ�R�T��KD9- ev: �|S�ʔ �c8�<g����StKs'�`����ؙV�P�N��Ҵ0��%��*Ԗ ��S�ں9r>%�"��D����!������fϕ�JN2����A�I��A%�~�ə�!�#UǓ��9���I�V�oHK�u�ZN�@���F��x����ԑ��ċ��]��� l���_����slLM��#T.Kc��:�e��QD�N$�f>��b�� �!�I%6z�c�����)�Χ8�KP#w�H�=�L��Ѹ�k�6���L*���rrw��!��r
B6�-�_O�pr �ի0� ��,Y���ٚ�@@�Gx<���%Ἀ 9�*��
gp�Sr� �Rq@E��U乫b�Y0�y��1;l�`�� �Y��i�@F�
"U4 � ���nZ�P�� ���j*8���#�a�:����Er�%¦�3J�&ˇ����8/�ѡ�(/ɥ���@��3���v���r��f��
S5{w�\"'��>�wHV���”x����h��[���L�)�9�
��L`�6m�d3�A�O�A� �Oe晉(zl�� �3���!r����qa�"*Yد���4- ��0������b%7�����=s[𷝒�_�������u��GZ� �i��z�/���v�2ٍP��G� � /[����-�����U�C�$ ж�f���!����A�Ѹ��dk��Uo�쟩���]��E��D�y��vE�c����Ҝ�O�� U�cz=g^��N/�4=�N@dtUb˭^k*erM�`��{��K>����x ���������Qr�o���� [äf�8ɚd�$~�y:(Y�hn~.o��\���*0�3��o�kǩ�>V4m��3�6���5���zԠ|.i�gm63��m��� �so�'���zw������v�#r�;�,5=8r�gHơ-��\ m+'F{x��z�a���^�=g�zy�)��!B�i|�7����֣��s7�J�=Ӻ�?�o^sh�n`]�_�q��ϴ�6m_=�b��ڷ��A �<�T�ڡ�1*�-5ڵ��mdt@q���!E3�\�6�g�ܞ�h<ER�0�E�Y��e�Q����L���� ��
�؃6-�*m�cd2��L�e״hx�a��<����C��=۴ h{���6� <� w�{�.x�r\�a��,}�����[qf}��9�v4�ݔ�ӧ���|�0l�:M�’�3�t�^ಏ�H�jZ��_ӭ41�c�D��c��䭷�5�2��N������*���Z��@��k�����Ş�<���7>$@�z�� o���A�,�54�y� �͇���%�+P-���"=]��^x�UkGν|o֎����}����v&l~ʂ>�ۆ������|GM}kG_cށ�ñ�#Yn��=H�2��Z�IV"��u�}��9Z�׌s�
��,�,�w�yW�u�,U�W9����J_��;p���*�v���Fn�*��h��j�| }�=����n��du�F'�n"�����C����ܭ�M\@A服ll�x��Ss�84=������s�B2Z�w��#X.t���9�0�[Ϸ�l �d�Fם��/޳m48v��oc�&���c�Gv�����CW�������"��nxy��*:����΋�ݡ���ɪ�?���[��=��\(���g����B��3��������E��8�tV����f�,,x؉+??��y�ώ�a��I_�ߟ��7 �F%B<��;���l��c��!�:$��X�I[�0 c�a�v�z�S�-?�ɇ��C9[�ں�?��wCbQ擣<��7��H0�q��ʔ��t����Rg��>�貭�EY
F���~f����#8i8�:Ƿ%�i��fӫc�d�к��y�yH��2���dM6�,Z'���sT���(�/5�)��šg�"�U��F2 ������2>e�ϯ7�u�>�ґ���f=�M��/�q�8?vm�G�Non6k���"�K��tc���1�����������<ӵ� l`��в!X� Ι�����i� �gB�gX6�چ1!��h�6�i@$��'�,� S� ����g�>N�� ,�fSxXbm`�@�µ����e��#�~#�CZs���$��z L V˓��J�O���J�����b�ᰴ.�ğȅ��c�� y�f�`cc���C��I�Z�
��o3x(��tH9�{',�C�s���H 6{�4�����E�t�:�D�c�7��v����\D�:��`[�pI��[�a:�2�p��ey�i"�biePX�I
�9�sM�G� 0İmoR��/�Ρ5-�&+gX�!��{hI.��Eh�a8� ��c�F#F�ѐֲ6�,N�.�k1�>�kQh�#�%-��K�B�D��� t�� ����b,͙���:���̒V-�e�p�$�p�q�����a�Y�:Y�$�m&O�b7��������Ṧ�0 ��|s�c�PW�!c�w��?�ao�l;|Eub��+��������-���h"z��M�5�Wt�[���do�f�]�߱M�^��|���N� 3� /NG�й��A"i�%Z㌘���̮��.�$�}� _ґ����;9�KE%U� �9겒Ȼ�»��;�ֱ�y�����Q�I��q��1%)R�g�i�g��ڃ��������Nj�Y���}wU�~zV��^;}?�_ώ��v��m��I�G�'���f5��HO��Gܛ��[�]^P.��ofk��{L=�L�0#8HO��t�P8c�H �"��%��=Jn�aI�;��#�v�ܛ�N"`�4�YU�ŷ������.,7�#D�џ�!U�6iK?~��F��7�0"��&B�J�����!�d\�r)r36=�~|�!눤�ީL���.�kC̪�X
���%�8�0��e��u�V}��\�A, 3��Y✜�E���#�zr�ъ�G T��w�&�؛j=�- NR��2�z��S�\�ds<�Q��U323����8�у���fиo�����A>�@D�0�H4�L�!��'�+�x�P���H�U�/�{���O;��~d�, ��&�z������g<H�$w:'�^�=>�����������'�i��a�������d�B>>w��OG�?Q�,��اl\a�&#Uq(@� uȗ�&��p���I �A��3%��r ��(��>!��.��T{��I?H�vp��FF+�X������s1�ދ�W�s�r��^�7%/���,�!�!�~u� 0$Y��Y<����x�E�@��}H���O��YI�(�&��F����q�,f=�� �('���7Y�>"�|¤����'�:�OOZ�����O*�"���>Y ��7z��=f�}T�O�}�~$0h����m�8�ޖާ�W��Sd}�tZ����go/�÷��t<�Q}ǧ�^J���&��u�>}�Ϟʈ����~?|$)�-�5�K����ݧWiG?�����}vIqT+l#�r��\�ԧ����m�}v�e������W֧W����}v�\�޲�'p��c��C�8��!Чwb��%�07fDt��H3;��gG����>;�g�_���>;��g���a�~���vI��.�~�ն-��=#}�'����Eꇛ%���=1�����T�;��̸uүh&>�?�^���j=���lf=6|�e�g�wu�4�ip�XM�' �N{��e��.m螆��tNW�����z��g�Q>7�ܭ��ܟ���Y����g��Z�{.y䖸����Pj\�����*�΄ �ݗ�,¶nGBw\O -�_( ��N�ٲ�ⴄe�p�S�M�.� ��'�2f#X0���GUx�����D˽V���ߴ�iv}o$������uI�Xyh�su��U�8;kD�߶k;P{��;@�V�V ��34�TI �G�J��?\�mDm�����3jJm;����%�����O'��ײp��#�*H|�ο4�&��e<���'3�,1��N*h�����0r�C*ks���Z°�eː��:�\�L6�l�ф��o=�P���Ƀ���-�-ÐA3ۍ���{ק�5#�:�Q���z�9�1l;LW�צ�Bš�����P]űz3��i�ޮIWX����R�`F���z�\}9F���ݞ73�`����m��IlL�4XD�j� ��_�)J?X٪|<h�"�#��l����
ж�iQ�c\�`�g?"�D2:��MZ�fv�~<��Ӫ R��Γ}�.���F�}F�]�ձ��vN�ti��Ra!Kũl���p)|�c�)�z@QI�~�������ϖ �&4�>�h�����h^�׍���<s�
���н&�����'7 g�7М�jD�l�N%k�Y?�jN�t4��w2�٢��;c�4��&R�؂�w����4��G>=������˩i�s�7�x$�������7���e�"��/��KɔԽh7�������?�D4t��t@n~�1C#�f�4�v:��=���<�n��O\��܅���xp�@vg�@�<�吭�{y��9�
��;|8� �=\*�&`K� �>� ڃ���h�|`PEa�����h�&��hX/w'���G��N��D*��v��)��F��r�l7D9ߕ�6���d�g��׋��(���r������aC�Ve���}�,��h-�~�g�B�|�ti8�y��4�<7���$�"]�G+�5Ɗ-��;+>����Lb�"ǰ�{��L�(G#͂����%K��(i�E� L�(bp��x7�ӛ�ڃ���"��8��8��^�X�;��K�wZ�(��?�soXl�չ{O�S ����݋O�["q�\���&ʓsT��L��jޚ�'���i��mw��]گ]�kwh8��V��-^t��:��
�N먢��
����Ι�A��qK��R��4�*
��U ��Ѫ����)�[��n�.�.Y�!ˮ�a?Y�:WLJ�0�h��7.�������5=!j|誊�αk�Z�� ��YV�����wl蚖�'C�Ej��n��ߝ���{wiB��ԙH�����1RDI�1R��GS](n5�-u�ֆ�m^�����杭"RZ�m{Z�<ᣈ�Vg\�6��K�G߯�kZz� ]�]:���}2d�F{dB��*�߄��^��ڃ���ݝ��C Չ��!�� M��Vق��:��(�tg�����fb�;��SjP%v��T�e`���tw}��&�IX�����h���m:�ݣ�O�@k ��ې��ؐ�+�oC<��a��U~��} Τ�ܡ3�������܃�/�ݧ=(;��n�Y�J�Z �[XGlco�N��XRV9�-�'�ɳ��m{P��%�rpʡ�V��{�<*����@y8_�UƎX�5��3�)ʻ@Qkk��"Zu�.Mk�n��*D�bGMi`5�]T��������Z}<9��>�T�yt�p�tR�I�x@����:|��T7J���s��E��0 �����Zpڪh�q�MsQ��n�$m��I�o6r��P��u�>�a�|�R�ƨ�0�� 3r �$(=��q�B9Ḅ��'�Q'���Z_�X�5��R[5ԴF�푥 �i+B���6"DE���4u�C-�� }�!I4F���u��"$ݓ�[g��[����jkq��t�7�Z� ���_&PC����MB��`�U���B�|^4ʊ�ȸYbX�f�X>V�{}���Ż݉}q\�+��ꅓ�(w Ҽ�H�v'�;��:N�P]~r�!�H������6����N� ���Ӆ ���֊�Ug����� �3O𝰡�l>ܣ��1�
�"H����`��Z�]�y�����s��ކ�[�t���j,Ŷ`=��'��6�z�� �ZP�= uTw��A�ntx��2O��r�y�zQ��L�֚�P�1�/K�;t軜���P�i�n{��|��G�S���i��&�ֆ:��1�T?枇��j��0*ME.Y���V�Cݺ���ԽW� �")W
8����E�ϊ����y*k�� �"\(?�͂���3W+�ZN[ Q3rnG�(�-RE�JEԊ̺ƹUU��ue�A*��]ͫn�m�6 �Y����t��U{�������yh)�إ��f]����d�8�+�B���Fd׸�.'���)������Z(�أ�I9ڄA[�@���E�y)C� ����6�@RNf��g��E��|W�"j��ܪd������S�E�V��PS>���ZK!�*ZuB⦹�� +�V����Ib�r��;�LLy�d�����u�YdӒ�����3-!��^����-']𾪭 �<p�rd�`aGr{R�:a��ZKG�:�UYak�J�y5�x��!���MK��Z�i��8_�W��f�a�⻃�������^6�x[�!�"N�Ӛ�2�.0������V�����[���څ*j-E�h�Q-e�A*��%_����i\��+=U�<g��M��7��FѢ��;��-�g˃l7}��j U�H�8�^}R���y-A׼�#�}�1k�ϫm�Ǒ�@8y��헃����Mk�[p��h�Bֹ�G���jK��妯B�羽�v�t��4���f�P��.���oj┛6S��5#<���\�� ��S�H*��R8��V�p\U��J��W ;tN@Ձ�k,�
[�W��m�������4ꨥꄂ*N��ғ�H{E�9��s�/�z��� �<y�_sA�?Ua��WU�i���FqEػ�xk;T������,���P�J�����z4ӛT�����t�c��ޟ2U�{Jqz�w�u =��m̞B�C�̢�6D1�_q��Y��ܽ�uP+#�X9z��W�����(��B��F�����
�%0V9>�b���B�5�6��S�:�`��2V�������hn�eńr�6�S�\�+(�9;�0Ir��^A5�g��wԢ��*�e�t �%��Ė�@P����Ա�a�2�I��u��:���X 5�!HuȥW��������I��ޚ�>���� ��:=��`^Tg�Ց�y�Z���8}�K����`ﻶ�J�ωO4���P�v�#�ZcY�E��Z���3j��/?d�/1�ݛ`��b�z����4X�p�q��o����s)�o����ݳ�t�F�M �F0�
� ldy�Ļ�Bd"\*��_��쟟�����t,?w{��W��t1�?>w�K����8�f�~ w ��|�~;�ܝ����r���t<]���L��͚5����'�m:lj+�� .C8Ak�~s�Vq�u�������`�?Z4�M�3E�����l��E ��/���?�b��f>Z�N;pՂI\讵�~��喇�����8�:^���6��i�H+1m$�I�9zH~nV�2[���U&�W�z=�_�Xu�]>A샿��Q�|��G�իߡ�/W����3 ������l1��D��å��1�B�����`�?��_i���d��\ܮ�7�?"]�DH�&�l��͜�� ŗ��{����9j(W�� D F#�7�AbGF��?s��`�zr��CϞ��mkd����t��9�k���Uh8^�i��"����/���W�Lcl�Cw�#�=�G#�7G�À�㻾?�}�h��C3�u��o����mx�{0�"�{����+d]N����>���������O�����ti�m�L/�^�1�u)S�|K�Ed��$/��j���XG8e�O�UO�]�_�_�e��;��'V\ƈ�?���3R��O]L&X^��ӱ��l�f�!�H�4W�r��?[_E>]E���ﰠ��ы�ʽ@�{~�;qR[t�E�p�p��B�aA�`��)�M��DZ���a�O��t盛a�|79Ɗ�J ~Np��a�7�(|����}ba)��ML��I*U%���'��%##��
V�������:x���X�����r�/�o��/Ď��lؑ0��1�GˣH5�q26q1�9��Bѽ���8����.�O�|����3�g|aJ0��������/�1㗤m��Xn���2�>�+'Q��r�D���^�N��ủ�40��]:��Bz�!��4���,�� ��ϡ��6()2��f��ong� �Rl��p(0��<a�v���4v1�b!��JCGS�#7P��{�Zrb��}�L�X�*bA nE����y�Ȕ,�� f����|���vo�`�T��f�P'��]&��{��v��`���O���_�bω����pV?�@��!'�8�4�V�L��7��8����Zh����`5ZNoI1�eD��P��G�u[��J<�a���z�l�%$����y˨- A�($�8���̙�$�Rcg�!�0���C55Ўio��/�Zݲ~)�J����� ��Ww̯�CI�kp� ����cj�t�:��8�5(�}�YJ�s��'�0��6/��l��f��y>�37!g��Q���c:�Ϯ����
3���ګ�3g���B��Q<��rҚ2��U���u�k�bA�#"OƢ�9FI�����XC��B%�J'�v�l w�tW�
���Þ!-�$�D�!��x��Cab>-��9@P�E�E9��-g!M�)�Uem� ﲾ����
���_�I�J͟�7�L�gi� ���Q���v�V��-QH���7�.1�7��by_�����vX�J&x��&1��f��vI=��6�x<ן���i���>��G�Y�E�b���B�<g�SSHN���crq{X���vc>��Œf>�H���Kc�Ԯ�G� +��rŰ�jT^7(���x�l5�`��tU�]�J@�I�G�C����#$.��i�ͦ��\����sA϶Ҕ�A�M$l����Ei�/3e���-in%�@����'>���3n�=8L�KW
�,��\e�-����cn\�Z��.�I� �#�lW\�`%#�f)X~��rܑ� G:a��Q7U���[�WB ���zN�3cL�XӇ�D���]N���q�����rZ�,�����rN���b϶�X�~��J�m&a��I��2��yqJH��a][�6*�b��DŠ�{qͬ��kwe�V�o����#��j*�A��)yZ�3j��Φ���] O ǟI����u�dZ��-�����倗O����N2�;@=�A�0UV��x��XSl�d|��"X"�G��֬�83�yP�/
�y��0�.A��,u�;[�A^� .S��[I}c!���X.�]'GwsU�)W�Xq�e�:��ų��SR�JP%Z�R������z���x'�ؿ�+�ξ��P��";R�8a���#5���aniXS=�)0��YQeIءg�U1��5U�<DC�T�֛��=6C7���y�i��T�h��Zɳ���A�6�܏�t�8,�M�={#(즘�� �T5� �v���?��\�D�Do°2s4��B�����-Ϗ�6Ɔ�����t%:^�Q�1�(�W�ÐeVX$�y�#Wl�IPH���5we�<o_��/S��&J�h�Mz�f� ǒ��f�m�9�d�T S��6D9mb^�G9�jҡhɾ�2Z?H�-.�E'w+.y��5��`���3QC�썠e�Qn����r��g�-[���q'sbL.��i9=2��٬��`�\���ݨU����҇�$�!���}�����]
x��=is�Hv�*�
�E��S} ��
ER3�Ȗbٓ�f]*��\S��'ֺ�߷ � ���l���]����������H��zz�������?����o���'��b��]06�jlE� �����Xֻ^Lyz��<C����j�Y?n�`5���ᵂ�Ӏ���wo5 �@0���f����v�p��ȩ����Ћ~���$@��,\�W�`��4�JFp?�`ㅁ��m���xQM�z��`���o��Ti� x�ϡŠ(�d$ie�#����A������E��†E�J6Ja�y6& @*R��- �}����D�bH@`p�R�=���Xy�K1�?*�R�!N��.�q�Qy(i�AD ������)S�9��<G�a�Sa�AD1T2��FpeM���)�aL� �(��=�� m�T��<C���0�@����xN���9o[Q�KG�Z�:�@�jG��8Sg�T!IN_�K����'�DNtIN��'0�-�4D���2s��0�@�0�V�r���?��wj���=��u�ӽu���k��@�4T�B �r G��k�Z��e��A���Vb�vTR�o9�Wh ��4��`�� _�Uϳu(�)]5�������An����/�KZU־����K�\�1Rj_��+� FVۗ,�i�a*jq�T�
�R!�D��a������L�e&-�X�Y����2�0{��� d��^�+I
/��+�"�D@�dml�V����J��$ ̞�\��}Tᳱhi"�7����yѲ:?ʓ :�z'j�Y�rl`Y\WB!�Xz�<:������x��� ��*��ϵ��p�A�y0�,�X���ܚY�`���^��n�Q���c��~����z�Ozo��߼�dR�o�����-�S�㱡Z��0�uu���0Pʂ�����m� zw�5԰!� �_�,,��VLdڨ���ʯ���}�!��ܢ�̢Rf�USfG���_��"�_��i��&�b�d�ך�e�w�_'���&�I ��5Z%W�oE��͡ZZņ&�7�U  �A���}�`�BI�� #���;%����|�$'�6�91d����vin�K��h�H x�@�â0��Ԟ�`FwE����J�XM��
<tK-D$L��ut3��nnӒ�M�x����-��ש��S�C#��J,aK�������?Mz�)#��E�n��.˟ߥ<ዮD�9��M�3�g����a�Ğ@��m,9�Υ3�%��4C뱽k�U%3b��p�5ߴ9�Q}�U����(�݄���I�Wft�Q��Q�H�
9�ygMy_���yއ���հ.m�%lwH��EE�f�Q��׾����=��b��8@�h�\=-@#c��"4���@�6`�B��*M
*��=���HE+�@=������5��Wk���_&�i��(v���;-�1�*�Q��G��B>�4k+��C��;�V`!�
W4L��� �K�"�Z�2P�9Y��v�=�D�r��E�Fy]jt仞t��x�P�H����y!e��ǡ�4���&�҇< ĥi��F��V%���a��f�<V,��X ˸oB�}�~B# 7�ĩ���h�LQ`� QR���"Z�_L���7?)DTD��䈀��]�2��� jI��|(�����n"��a������#�$ �l��a�AOf����藟�w?K�@.B�W26["��N����Ğ`&�M꠱��D�0��l��+k$fhz����Ô_�A��]/����u�7ޣ����:p��u]� ۍ>�S��e��`0X��W��Eh�1�L�8�R��Hr�h�ğu��X2��O֥�Zb�_�ZL9'������{����`n�n׋�X/B\D� �?c?>z�!���r�)���&w�U� e�Z���ܳ2\б2�XST �����pl�W�7]��R�������Z��@;�{�[.K��:Rձ��uh��4���õ�0߬�Bo���(�&��,1QY��giK�����m��R�t.��r=���~���w+���k?�Z9[�j��_e(��Q�:���bvl6�ͽ��K1��k��l�0B=���Lo�L��F��p��y��<�x��8 s`[̂/t�ƪ�۟��?�̡3���b� �2��Q�1D6�f֜3��3���R�)C����\�^�i�دl���,Q���ӄ�� Y(��ۆ)E'�w�EW��m���f���n73��Cj�/-#�88?)��(0]�O���4l�0[CV�/�Ҁb��.>�D5X��r��bRM� ��K�m>�L䉐t�����6�!7����p�E�)�H���)��~�<~��M������ �3��N��������i�DyB��(�A��qJrp5���~�7�f�M��`��Feܫ�>�m�I�����Q{��U����&�Z�^u��F���Ĥ�a7
X�:n�*���(��qS�B�N�������+�`k�N5I×����̬���b����I7�S9�%�|]���KmȔ��ƶtq��0���B����`�@�\��䧦�Q��k��H�h��ȥX�e;rc�:����-�p7:��{[�]�^�[���"�o�*�yN���I�5���}��DӇn��%M\�.Bk`��_p���4��)"(�o�T�#��a}�^��G�7W�-��TCi�U!F3H�^�r��צ4�%�|.�MQ�m�"l`P�\+b�6�м� � ��U_�Ti+mB����� ��y����j�05�s9Z��{�*���>Tp�z'Sȉ�O}��.n�ek" �MwxX(��?�a��9
D���`�*F�{�$����.�{+:�B[d���8�-yȘ #��m.�|�rR:��^�1�AfK�{�1��\{�C*�%� f���B�c/ﭲ��,b��M�h�5��| (�K[�igYY�T�fgְ;�XƖ�C3u�{�+ӓ�#�aZIWH*��5�Zm`�"����BE���(�fi*�dQ<_�F�e�ٺ���L ��>!��$�IW�N��K{� �ܴ�Q�#Y�|�g|Z��jr(���,SDf�l�25@8x��d� Iq��Y��#�M� ������c�Q����.�z�q��b��Z����;�k;U`��o��P��;�t�+��xYj�4����8:"�Yy؆�M�R�B�~��q����h���QWw�γty��Po�_w�wdMɰX�����{�~I�d�����:ji1������h����0}��D���l:�0.m���ǘN`3�R�r�C�-
�Ԃmn����P��1�6�+p�|=�Ad^O�3����뛿F�X�0MPV����)�n�>LsTmO��V�pCTۍ7l?5�Sb[��1�&�k��D�&ح���{����nfh��|�|G� �B�ڌ\�94ȶ�,kf�� ����g���t��ǵ���Z�e�����1�l=�E �������!x� ��4��f��������ݓA6������L�;�G�O�E�&���'G0R{�jv���&��U0�N,H���!�B�z� U��y�ة���M�ؐbj��A �u�kk��p�����&:' �h���O<���[��Q�l��1��:A������_:�Zq��X�b���]q�(�6�_���4��ذ��WS8\�gְ��)��0�׵�BB[�W!\n���9�lju��/!�V1;�U�pO���*L�D����ׁ|p��*�Q��m�.��8������v�_89�m���\ � E�xM���"Q��)��}r: ��+���q�I��W���C��@�C� 3��[�G���M��ǵ�?�7!�8CQ�h����7��=�v� >��Mxlb;������C�M�G| ?�kz�j���\4^ )��R�ǥr���Ŧ���>G���M0�j��W�q]x J��ă2,?̑���)��/2�t�bi �YA�տ��Bҁ/n�x7�)Z����t�"�DbxO�ӝ��� ��b� $|���-��9(��#���=ج�FMg�u�r����g�D �۞�U����x)�ǒ��S� ��ݩv�_,;� �������ϫ��j�3��|�ޕ��+�����z���WUU|T��_{���Q��L���:����*����<K6Y^���PS�N�b��.ó�nz��%��/z����:ʜ�����W�A|�A�SR��� �el��u�#q�rH�%T�E[s��j����z{�KV-W���^���Z��i�n�M��]D’�/����g!Ŭ�x��o, p�˃���.�W;�䪭d��N��yxf�R�� \�����$Z�+�_183�8@�; � ȅ��A�P*P�u�R�t:��e^����HC�{m�1�p�,�[l�f��HE�@�����n,:&?~Zz�O;�S�%&��^��w�b����g�&�WtO���a��Z�˪�b�r�����/����r�q����/�r�����/����/�r�����/����/�r�����/�����_�ާ�Q�n��]��S}���� ���B�"��������GU �J�6��Ϯ��t@ӂ1R ����w�_^�Hـ�$/ZE��_�r.���aI�+8����.�4�n5��ʸb֕wn��4qѬ��ȕ�@�)Y=�atB(ϐ'���W^���k'\u�����w����:�q�<��U����dW�^���]u\s��VW'��nt�}L[Bk|&��\�����.��<��U�Ƶ"�B�W�r���\u���N���)Ϗq�1H�<��U����8?�O�^��9��\W����(7i������LW�Z�F/��e2W��F/2��eW��F/r��6EW�u�n^7چ��˹n���U{T�ǔ#�Ǎ6#��Z:W1��L���Υ$3�.�J/��m'�p���j]:��&�2[��bJh<���p����!F �g��/�l'�Dً�\e�׿��:�����d��C���[�H��g�&h_΢%
c�9�4ZaP�?�_�~��"e_���G�@m�8ef��kRԧ�8�(�\�-V�;�ƣdeDR���¸ԩ�!�WV�7�6@$���0W���"����.rYF�\��'�
Q�W�M�stdZ�_�)����;��ӏ �ӓ������=�
x�e�� �@�; �sT�м�!ݺA��k,�n�#(��ަfR�2�Ǜ� ��`��x�式�G������p�"\o�t���S���@�2����/� ?�-�$j�xԶF��ςf�A�gU���d(���c;m���Aݾ\C�}�����+�����@s,�̡��7� �t<,�Q��%s�y�[S�
x�m�Mk1�=/�������C���R���*�8��݉$�vE�ߛ�*��ӛ��<IR���b1�N��4����,t&tK�m>����x�҉�߳��d��#mY��X��qarb�K���A\թGlڜU�^�s�B����V�bԼl���A��~�ڦn�=���C���9��c�L .��8l�3̬��������yp;v���W����>���㢄h
x��}i��6�����
���`w+i��W�Ru<m��.;�ݱLJ���&*�Z������H$A�T��:�,a�w��6Y�'�8�8��o�,f'���7�{(pi����:tJ�)��Y8�A09ẙ~��7����������w��b9�n������K��n����O�'n��|��*f~;]__/vOB���‹�͞�a�=8Y��}p�*���b����R���fn�N���nLw���4��<a@��(7\ ������߿{����m�ݳK_��f8x��ͻͻ��&�����8�`ij(�7�0`��j7`9�]��l�Б��O}?��O���`�?��<z��c ��i��#�k0[lo���C^�Q�7߯�;F��v}�ٰ�GI�)R)b� �Frˁhs�� ���c�~��#�����?-���l�R�X� �����N����s4V�n�X]e����-��M6B�*�,CΏ�`� G�����B�G��;�"��2T���c��� ��S���I�ݝD��?����˟,N'?��]0 vA�2 ?�����~nr �ݚ�L�<�e�e����'��*�ޞn���dy�ϛ����z�Sg��r}Ξ*sv?�g�n��W�v�e� va!'HP� !�����7��1i�Ke����i8U3"ǩ<}�^�^����X�,!�[��TOd��OEI�v�f,���e��Q�D.�
�E^.qW��f}N����KZ�Y?k(mF�m���ǥ�����nl���5�Cw���1ϒ�zV��"�UA�D 6"����T��%��7�-WXM+��X�������؂�9=�$]�^ڵ������z�e\n2w�,����q�N)��N��b���q{������s�~�\�|b6j>y�Q����!��/�\3O@��o �|
�7�͢�d��kPÄ�� ���'t�%��# >!�7u8{CHl�� �Ǚ@�? ��sx�qf�Ao� g��u�]��?� g�z��f}˒@}�k�H-���]p�&98��rey����w��,V�V��P�q�>����`���Ŗ��� � ������03��E�a1^�!O%��\4��a� ���M ����Bs��DKx�z���6y5':y�+ps�B � �t�K8H�(�1,�9B91��a�/�ə����s|%�x��b��G���A��*�A����&H)
[����I�ALbO"���� 2��M>�'�z9������`�'��ͭ�� w� �!Ùg��Z�A�Y���*�$��O�ad��e6^ ��*��
�K�T���qZ{�䤊&nI�
z<X�r�81�����(�v��u"d�HJŞ Y!f��| 'I �%�+��o��3��-E �fjJ�NmI�ա�6��#*��aHɿ�HEQ�=���%p9i��2S��6�Cݫ,KӲ/7)�7��J0~��y(s]Ј<<�ȯ S�
S`i��}E�}���Fʪ��s��!$�SU�r��Z�k�Lr$N�k��XRm�1���_�;ow:��������_
vfVE&AM+�"J�VR2��� C���j��NÎ��������m�e�s���L�3�D}��X6ds�(����О�@��3�n�>�0����Q]3z��WvYXp��KB*�H���*�����N��S�A�<8�\��ڨ!R݉L��TZ ގ;D.��o����]��zl�jli-��o!?�l�y$���rr��c�3%�5�+O�,`8�ө�'�d�M�t�0v�3!3> �<pf�z1
�S�c~C<��AA�7ƺ�h\2�6c�� �V������ibsZa�K��,�ŽW� ��߉p���=oލ�n9ӈ��i,T�xH=��R��0e:
�)"� �+Ցgw�u�XW�t��C�F�_�1[*}��r��=�B�v�1����J1��G�zl�J��!�`��� �D ��znb>�j��Z���ą��fNX���V�,բ V�3���Ĉ��|���W���!&�^�]8��G���&�Ď4��� cZ7�%�#Dk�a�!�r a|FR�[S�:�^~H�G�YdV�T���f�
dg���ZL�h�g�wiF�W�i�8Pn��e,/e�s�-�k���R��:@'A��l�dH FID`jX����oj<�Ъ�+���YV�"65�Mއ�Y̖�LH}��9��=, ��������7�{\���d`f�\f܂?POd�9�nA�j�MJ���\%�ҡ��R�R ��Vz�H�:�z�ZyQg�!5���j����YŒ>���:r���4�5�Wf�.u���"TTr��:��3� �����e�zA=��Xg�G�
J�^N��jTc����-�kf� ��}FY��j2��>J��F0* �P���A�d��r�c�����0LtY���O��j�R��u^?��������;����U�4 0���򄁨��qr1o4��Ų[.XJ�y���`��u��3����@}=�?a�j-D����c���t��'���H}����r�2Zg+ bJ�,i�� �S�gRt�*8َ���-͌QiɪT�b���=P�?��O��z`_��J�:��B��:�����q�-Za��B&^����zH9hS������ ی����0/ e3@�<uf�pKF����ܯ�A�et��u)� 3�d7Xe=�1l;�y^�.֛�`����Rh���r��&ӴV�;���q�"FB6㟸�wl�W��χ���(H� l���d]P U�:�s�+��%U^��O��{w�0u��sQ"����^I��h�B/ϟʽo��\�������1��1��9ŐC�L�z��9�+���k4������<�"��2��
x-���sD�Vr� �|��=����ф���G�e�R��E]�a8dU�(�<j4��X��`4�"I�����qiOXi!��@N9��ԭ�!���b����E��.o�tv�� �̼0� �u�|��F�u����4�ʪ�Q����r�<o6�1E���֊Q�9+��(5����r���q\L=�� �hB���ğ0�^0�B8��g3?lNH@��E,1� 2��=4�`
�C\�̝�� ff�.�q��w��<az�8;%� =�xN�W��Գ|����U�
7�.�]���壑�����<܄��,�Tw=��p*��; %@����W���/x��"��&�P��<�F��-�R�YO�#�ke���i(�P��`�;��#�4���6���x �G�J{��>�Xk��� ��r�Re% ��ƥ����1�#0`���)�<�Ώ��AT�c𒶃i�'�zG)��5�\�������yy���9���3@P�# f<;QC �NYm�R�D���^����A��T�Iڪ�>�-{�M���" ��D8��T|�!ZKF�y�㱚�k�_q-,h!h�ڝ��b��ƣrOADK��|�$8�E��F3,�?mo�F<�Ns�{b�X¸��� �n��8,D#3�D9�4'�d,��F�����N 8���Ә7���xm� ��rıLJrg�O��|@� z@�Z0��(�R �9Yy
"�¬߹�9���˔]$�\��p9�DX�D��� �ز��q������CK� ���C�*s����)��2����υ�{Q�ՋRŧ�X��p<�D`�y\�+cɵL�g��;?t~���u7�E���%�^��[�i%��s���B~�׉ԙ��Yk��n��9=y���(� �� ^\�y�z�Ky���|p��LSO����\Q-_��D�Q�.$�J���B^�R�K�|�f����J=����ȳ��DR1�I��޾x%>�ǗoD�g�ϟ�x��mL�g���~��w.J?�@�b��?�_�ɷ��y
`X ,�*z�{a*r `ٴ7uC�Ћ�ϣ��<��ߔڂq[�P�%�DaK �P��0��H�8���(��h�](G�W�LTDӼэr�O�T��J�sY�,���@�4D+���q&[�.$�g/��g/_�CJz=~���_���X�Y��JY��T�8U�-�<?}sz�����#�)�� �$�-x���pL.܋�S� ���{�1aV҃��y�K:I�q�:�H7��%J�:w��i^�$��L�<S�0�T��S�io��izQׂ�A\��Տ٥��x��}�(�D"�Jx�?�*;�c^�/�� M��K�R^?��^��S(Ո�t*���X�s���L+�գ�i��#�WY鳧�����Uj%��E����O����19����E4}xJ����1�8u���>�1����h�p��)Ybh6q����_�9�
�@y�S�*�gh�!��vI�
��@J�01�4B�̊�|E���4H�Ck���DE�F��N�A0�d�f=���ϓ �+]��2 ��`�1rI~T�((:�!VR^��&Z�h^\�ݓL��1RՕp"�8����Ӥre�-��Y�#*Y��GX�
�W�׎��p�PS�dE��|�U����OJf�����4�"c6�}�~^+Q�0i��NJ*Y�TnSǸatn <>�]4�cH�.���MM%�93T �ݺ4 xG��03z�D�����<��Oo��` �����!x��~��ܙ��_����H��M�8�\.O_ �P�?��xv�������
9��ěe6��)"�:��,�8\8gr�A����w���}���_,t� ���h�o� t��ÅHJ���~X�](ϗ m���p��ߍF�Q�?�%��:��,��-]'yR���v%�����m��ͥ�nw��W노�B7w�)�2�tl��pn.�kq9%�s��YҬ�r��2�Q�T�BH 
��Lf��v�+A+pB.(��/��X!=V���Ͳ)n>� �p��؇�Z�1߬�/w���*d��oY��&�� �!�s���^���걧��z�\O�]�a�����Y5NE�͐��5Rӟ��/��C0�5cK�z=�j� ����J���MQZ����n���R7�j1�n6���UaDI��Pj�c�Q%F~ c�؈Q�B��d�L�`�L��E>�M�{Nx~��0��C�x~\�s`�
�*� �3��f��$�|:���)�&��(!� ��P@��(�:s����� �V��!-Ԣqw>��,ر��k$^iap*�K�-�V�SEy�9 ����3Wɵ���/�2#��|�9s�7����I�w����/�j'4���g�؍�KP������8��P�<�nW+^��p���/C��c��ų���^��
���kqYi���=u� >��+��\Jz_n'���!�@>�]�F��Y�]~NIՁ�
l .b��f
~l�� � �f�����P�o�"��F~��2Ŕ���R���~�لۭ��H.�&ג�-�󩹒����,XW~!R
�=��00n���5.�נ:8���sh����yt�����|�Z�'*
Rs�`�"'���"t�u&��T2�v�E�*���5
t+���pU����:�&��~$-�l~�5� ��
ü;��4k�I�?�Y���(�w���UU��Dj\��#c䐡�b�:�Th=��?�&H��4��$>�;�Qbdj�d;C~(Ia唆A��6�ٺ
V+#� �†70Z��j��Y�_j�kI�ŝ�B/'��2�?f|Q���a0c��Q��!�o�a*�(+}��2-�x�D�NdԎlb[���ARCRRrl���j=�����/�+Ԡ�o�T*{٘*s�y� F}��ۥ������� ��s��t��-6�{���G��`&��H�Y�� RDk��8�'��y8]2�]���q��jF���t'8��Lx����
!�U��U�⬈Dx�Q�t8�d'*�q£���J>�� X�* (M��nQ����: ��t5 y S.�;Zc�s<�\�w"L\M(T �LVO+�+���L����P6H�h�o>#ȁC�H��q�a~k�����l�j٫�S��nU���m��C����!�:S#�'�L/�[�hhL�)��7�M��-7G c� �yp z���z(S�&Z��G3�;�,3�y���F���%T���z�sL�2��BH�˅���V�:�-[�ۼ����/�`�ŝ�����,�ք��5>�]��!!��ZftI����g��eK���Nk��t3�Q�k�k�-�5uT�� z�������[��׳�t��BOh.[l��w"e��]Q�q��֗?�Yp:rx�?[q?�뚸F˝^��:��A�dU ���^�`�䖤a"�t
��V/�Ծ�ز9�fCc_Nsg��y���I���b2SM�|MRįQOj�1�����m'�I�^V�9 ��þ6o��*��P�Q:$]�}Å��tp�5�*���Dǃ�D���[���&*= ������&G��,TZ4�zr��+�=̍<�*P/'F:�{��{8����s&��;Ma� q*�����:�~�S��m<����*Y�D����z���\�z.��V��E��Z��"G1 �A��g��rKWW��O6g���D�#��q�&K"���Q=)��,9�~N�)�-a�zxm�iZH�x�_q��).�Ú�^^�w>;��Q�q[��GW"c�|�^����J�rX`FO��6Y�>�AS��u�=�T��S��q���=Nܽ�h�x���nJ7�g�B����j|�\;:�����/D���ܞv�\Y<�$^���� �k��:�=O T�v���sѽ����ڇi�n�~�\xOK^670�w�;^�0z "n��6IÄEM�Z7���l]Q}�QV��Bk;�)T.��V�6�3�r?�-���Eo`���������u�����i!����:��K7�>.��\۱�3E ��\a�y����Q7z�&v�6$CD=�W���M:�h�%dzx�)m���2�+(q[�����_M֛����w~o7�u�7t�@�Gk��=��S;���^����k��>�Fx$�����k��❋����R�FnU�hk$L8������t�n��YT��΃���v����� X� �R�Sq��*�u痏.”�5z����*E��%�À oD>�=ܨ�7jMݭt���7ٺ�꽑�#�����c*�h���0!�d�Jyw �|��Zavqȱ3%�{���k����x�qy�cB���5_蹈}P�;�b��lB
\��8�b��� ������>^���Cs��Mk�`x OJrdN �H�;c}�,��c5G�i��T��L:&�,�Qƹ]K"��^$�:@_�$��H��"dAQ/����,J� ;�{J��Eu�ZM�j��泵�r����⁃Χ.ߊ�{���z��(t����~�T���s5w[�T F/S�/��<��>Q�>O <O}��I����Q=�t.�F/���&��ҋ/Һ������N <���9�я$jY�0EkkJ����ާ�� �w5#@���/Mg��u4չ�
Թ� `(�Ӷ����Z)��ÜS���=�(a0 i&t�"��&�='<?xz��!q<?��90`��i;�߬Qڶ������i;�9c$
�gm��;�vP��Em�a���t��v��!n�� �1�?��*nT<�S׈_��F��6wU ��z�.�0�]dZpg_{{F����A�ޱ;Vo��[U�ŧ�5��>��dk�T��&9���:`�e��xg�2��'�š#K ﴱ�jU[tR�J#ζ�m��U��e�#�w����\��5�_uvѐ���9�$�'��"���pO�?����� Ӯ�O8 ������C5�S5m�}���`ǜ����Bv�#\�;�ӹ��˗�K?$��4��w����ޭޭ�/���߇�sԏ�j�h���� ~���(a�����"��_KW{�+�㇢����J���@<L�[x<��H�P2���`��=��'わi�G�=�6�:�|�(� ��M�����nQ���N�,���������R,Ԥm��I4H�7��#�����C��xP2���Vm�>������_���9�c#.Sܘ���$x���ԥ+�
t���s�R������Oy���O������Zn����}�x�V]�6G����̗�_s��4��������"�np�('xW;���O��qI-n�+
�y<�Zj8�S/��D�`��t�*��I o��+���5�%�x85��Ln"���C�ZZ*Z*� &6V��=*A �2>�;��:�W���1����KD��K4o�x��u/
�@��?��Ik�2� � ��������A9e����U�4�J'���w��bw��H�S�.�O���?W�:��f����2'�d�X���\O�7��8Hx��1 �ԁ@@]�3�� e��`����a��)���ܝO�@"JLO�T�\L� �T���I�*O����x��4���@�\�o1 QI��oO(ZCI:�r<V`�q\�# |�K�v#�}RF���S��T�:�Fm�|��h�㚹�&����/D���em!�&x���<>,o:�rfi�>�Fc4 !�t�� f�:��x:g��z:!3> �<pf�2ubN� �:�A��q�)��TA��CO�1�#\ �y�6��#��LJ:y0iTb�Q�bOԂ=DY�J\��ţ �(���k��� �p&R<N�\�?�.xc="j%�,��^�������R,���9�qaD�)��2�����y��^q��T�)���?O�%X"FW���X2�0�3�ȝ��x��e����"�1�
���%�^��[�i%��s���B~�׉ԙ�L��w�㸘 bsq��\4!h|�3�3�^0�B�ds��)N��0;�� "��� 2�H�dy�0 'X�s�F�'���1s���Ȝ �� ^\�y�z<8;}�����oǃ�����?ǯ_�r�;F`�_o_�z�VQ���ǯ߈����������E��oN/��s<x�&m ;�֒��_����c0���u���Ʌ{qv����oY{O��r%=x. �\�IJf�t(�H��/Q2׹˷Oy*���.��4FC�"���Pʠ\��H+��� R7M/�Z=��2ԣ���o޾��!�~�A�e�<
8 "F�F?%�h3~��̊Ds�;̿%�A�>�-��3�
�~�U�U��)�j��~e���X�s)����գ�i��C�0e~^��i����z"�b�I��q&͢�S�R��9�)�cr�᳋ȥxJ����1�8u��w)�����i�R��yJ��9V9���?G\R�(�{2�J��� m1��� %.T2��@4��F(�Y�9D�b���ԱV��H�T�I�+����=��0+?O.x^T��KR���$?�D�+)/�a�x4/���I &e���J8f�I�Ł�iƒ?�����,��,T~�aBP�#�����q��j
�̡(P���J2/� %��A9�i":E���}��ו��e����B�%N�6u�F����C�E=�d�����d�Գ�2���97T �ݺt� xG��03z�D�����<��Oo��` �����!x��~��ܙ��_�f����@*|hn�Ǒ�ry�Z舘�"����ų������W�U�Y�'�,��O�8���9g�,��9�g!¬�_���v��L�� ��Pw�\:��`��:$4�4����bV\�oA#N>K�fV���E�lm��Έ� ���H:B�eI��!��8�cߩ
���R:��j+J'm�0���0�������N ���G [q�w#�Z�*��ː#�"��_�=�����Gְ��Q��!F�� �-� 2�7���u�'"<���c��7�CA!����s����#�ڣxD(+6"|��`�5K0"��g� `0��;ѡ�����K�xQ��%#�#���G�e���Uw�Zq�{�����K2#�u����F�~�̥t�‘��GD����jtG.3-���ƍ�'�^�,��(z�u$��M~dգ�}���w,G�۟�Ϭ`��)+)^%�o���W�F�Su����Q�.����Q��87zu��CF�#;����Qғ�m���y}q�(zbb�z1JJ����x qA�(��|]���0��gmE������G�U���jWޯ���\������Qt��(��r��:J1�$"�Ճ���6�.��Wu��+�FѕV��ڠQt��(�^g_a2JN��F�M����(:+>����ƣ���(:�;��>�����������dW�(�B6���?e1�[G�ީQ��g4�v���(���f��s%K����U�ow��`-9��b� ��n��:o����l���𰜴:r~
�{��).�X�M>�v���z,K�|i�#�� 7�`�Gd<�W{� l�ק�Mp��D���*�ޞn���d��q�w<�Iڂt2 ��Pԕ׈B��c�Z8�<��Yf���t׵'m��6���������s$�ل��n��!�&=v�;�w�ʧ�P�M��p��b��E�oa��+�� ���G�y=��cO�X�4$_y�w�[�x [��W��}��$+&y_y���[�$��N��}�������nY����^�Nzͱ�� ������qĚj����0��Fc�%N,~Z��w�#��9=Y��W*� ��� ������h�G�ډ2�"H.v5���n��;�\������θʂF4a�>b;�m�3������ǝ�-������3 �.�K@;<�`�Ƽ��2���d:aٞ=����A|�dK���_����� ���Վ�u���x?���(�~9��ƭ;۹K�_��2b=S�F���mZ����3�ͭJg�Нu�:���:���l���%��rm���;��~�jY���*sw��������Y���.�Vgbv�}��\�(�y������W��qm'3���~�;���=�þ�s�O~_���
�33{w=��t�W_��Ӿzg۽zf-�K��?�����%��g���?��7t��||���?���I��k{k;�|�^x�_�9��lr?Y�`�).ur����n�ɑLG4 �*FO7~�z�H??� 8��q*�DT�X���J�_��A.G/����4aE�-'����Ĕ���|X�?����pe���1󓺻-�ۑ��d8Q�� Z�l�Ue�����Q�S��׿7���0$O�t;��7 ��X v��3yp�+��ұ�sD�l���n��{�2I��z���{rg��-S�,��)����vL�>&��8YS�LbMQ�|��H���xz]�{�'��K��B-��C�P�X�p?G�������mWl}׼{om����bյWtX��hS�JG��L�_ ��5�~9j�k�����HS�q�{T=v��15hy��!�=�����BG} Q��� �`�L���iĿ͠�ak�g��G���}���^�<�>��������9b�� 9������8��c��B�"��s\���r/�yDcr����(ǜ���~�&�G��qc5�b�V�����;3��c�jQ7#U�Q�Խk ���ĉR-��R(�Ji���8�t��'��+7���=�0�� ���{ͦ�aMk3S&�z����.�]'m��ִ y���K������kM6t����U�!NG$�=U�bZJ��z�)j�H�u� c��5�E�6#����)ZmΖt=��=��Iҋ��$�O��mN���q�6 ���4j��Ͱ[��f�� ��
S�z�-fh��-]s�uEz��^�9��r�_ºG�PƳ9CԬ����b 4D�/=j�V=�5�֣-ؚ5e��Q��� \�տG�}�qm
�)�XcQ �+
��.wH�� ����gg~��yg��a�b�)9�/�����9g������8u �:5��c���u�>�5�Ol�"e��F��t[LE�5�ư l[�dCb|2���<IS��x�]s�e��U����^)2kG��
}������A�6L��L��Q����$��n����j�Q�f�f��r�h��R:z��e���⾮&޸!)\�"�n�X��l p�jB�@���r��0� ���[�)u\���b�b���Ȉ=R�x��!jUZ]�T�� ��j�����,*v3�•�vY�s��4�d{j�~�m%�m�-P�‹WFF��� Q�,������>ݬ���dox��}����Y
�F����M6��QѰǠu��@Sk����� ��CV3����eM$�r�1ьt� ����`�22D�rϱ)YG [s\���������~3�zr�M�j�w=��Ͱ�l�!I�n�$�S��wDτ��%�=N-e�ԏ$TI.����R�t1�ׁkD���:�e�k�Վ;��BŞxSȽq�q����,�)Zmԫ��� �E�J�x��S���X�Z
q;�l:Ϸ�j�Z����(~<�}��H�w��r����M��3���"cQ��Uƪk��R����G�Ժ_o�*���֓�a�V �j�9�l��z閺�l<Z '=׬���|���Y'S��P�ٳ;�r_�Q;�6ߡ�C�xo�)N�W_�R+���k\��W�x���W���V�-�/)��Յ5��\�T�Z�6���¶�Z]�-I�['o��X��r��,���dxP)�^�abi����J@w/E�!��3q����������qS�ڸ㦒܆T����a3�����)l{V��@����'�}aH���lr7]�4Fʲ`���N�n宗��z۵n}�Cd�n�k�Q�E5,��=R�4,f�ZOv��6vؘ�Z�ʦ���rZ�6m�)l��)�r����7��S}���Uښ��J����v���6�Ŝ�ڐˢr�@=?�#`u���E՗������b�);^�g�̾�� X\ر����V��Xz��� �4���h����W���v��w�[d���)r6w���W�vX<|8i��SH}"g�C#חa�X �����C��Yת�I�ҙ�$N{p0T��FP��`�&BV\����PK���Is��Z㰤MO�pkQ
S�G$�A�vhZsbݖ�6��ث0�ʺ=(N,�s-������3��x�Ș$�nWY�B�}0�F�{�[A�GwS�Ǥ{oZk<6j�L�� ��X�֚X}�K���ҹ�ĮZu`�b#j�> ����I�5߿Gʘ����Y0F�Md���ڐ˪�kb�Z�ZIc��A�x6)�ou�H1��t��rk���7�2�j���o�@�oM���R7Azc�+�{4̑��'�e#Z�`Y ����'rƦ���L�1bmLi�ci۔�Y��#�6�B�w���M����G����S��һ�=R�=>�$��$��{Z<R�j`��E��x�m��m�ݍ�����=��|�w���}c�lklG} t�����ɘx�S���T-�FO��j�x�Q.�������s���������fc p4���bD�8V��f��ȥݱr5�
���a�Gu��0Cˢ{g,W�&Q:Ɲ`�z����5 �j|^_�I��J��Xce۰��;)�WuO�]7,��vo\ή�#�+����ų\5��S?���-�;c��1�zq|��*xٽa�����1�%=�����tbX��y�=����8�K�����d��I�~�+tt�˻�x�c�5�GP}0�Q*v�y`J�m^b���ͱ�~���1��ε���0P�9����7�2ƻ̑���~c�Z�Y FjC.�bV��'o5넓Տ���w� �P��t��-Ջ����Y}���e�G���AW?��t�t��X��O����Fw�åV}YS��RM;������oJ�ɗ���p��z�l�v��"�lY�i�N����b�C�yġ��;�Hzc�d��>�l�ۇ��g.&(5r1��̂]�����d���Y,�ͻ�!���A_�W�ǻ��{�~���'!�fϏߝ,���>�
E���r1[�nߝ�F���.j,�,ؗ����zu{��o��y�܆��b�
n���,��rٻp�
�ono"01>\"Q�ڕ�|~/�-�7��6_6����{�[ k���D{�ow�.|��1�.�Y�����|��~5݉�,�1�b�;EDup�@���dj����l=���6��8�E���9��83e<���6ܔ��Ժ���6����mT=b�#�&�\��$y������_! ?9O��e�����Ï�?J��\�f�+g��dla�A"OQӓ�]8]����Ϣ��f���\��׋'��8e���W�U/� �����/?���h[� N�p: ~�����0ub2��)�3g
��s�O�� �O\��� vY&��́�������p���ų7"m�Y
�X�����6����w��t�q�g�L��z��;�M\�i'�� C��n7DO=�כS����p2������]Oo����yq�v^����!y������Ϟ���/������������>���w'�?�"є���������%�d�������`�{E�3�R�kQ�H ٿ�!as.y�m '��sƱ'�W�O���.�D.i�i�]���X�!��hbާ&��Λ��v�r̘�p\P�*\1fg<� 0 � ��T�:�������zn^Ο2��
��dgf�%�9� �WB�b/�5�3VL2�p�$ ����=�Ό|̑�5/>��(�HxC�Z)�33l��e��]�*���c�T�O7��.�]�^O�K�5��%�&N��=���;$�����~H��2|������b���J�2�g>k���`)��yp�G����瓌��gm�H�b"p�/6!3hC���L#V"<L�I�8C��D�"ݞ�pa:Kƅ�DB"�����������_b�K�PVd�_.o�]�,�k�����n��P��-G�U�,ڿ���"v)�R&�Q-v�s�N�>_O��Sgȩ�&�Y�������/�GCr�yߙ���;�tQ���\�^LL���\$�͖Q��!w�C"w�Х-�e?��`��Ĺh�)̥F��:C�
� 7,iU��ĬI(��y�_���M�y��n7�X�$��D��゗�M�x�"Y��E��(��&�(�J����(�w1v��}�4�+��0H�hN�z�s�=�Yc�?��~��}\"�'m�2��+�(�yҚ*��~��̖E�1��R4�:��>�F:�ܲ<H�#]��B+#�V��@?Ln?�H�b�AH�@��\���揋�"S#�L.+-֨�"�҉�e�dg�Q��S{�굚��,뮒�YVi���ڱ�� �CB�R~�>������[�� k��я)�����#Q%-h���/�[�����PV��p�&\] VA+�N���.�J�G�К9��u0 gc|.Qp�� ��r >�DsX���e҈�O�!� ��cCaWއ�]qpH�����������)���}�\��U�%��� ?H�6(�WZ�ޒ�4�\�VXt�����ru�]J���%��k����kR3��Χ�T�>�p��\�K��փ����@o�m<�/�$�7qإ�E%6���߅��l�R똴�G+Y�!��q6Ŋ S"�����r`xZN���=�+[�)��
+�Q���+K��i�'�^��TS��s����DXL��V��Tr��$W(Ո�NB���[,��R��W���ns+*��׳���ď�e~$ v3g Q��Î�0�J �t�k�_f�<��k;d��Gj��������ҧy��`l�nl�;�v1��plqӱ�mǖ�Ɩ|�c��Y[b8���ؒ�cKucK��u�[j8����
��7�n�������V|�GL���6rl~��Y���9�J+!����zskuD5rA��d��ֆ��R
�ŋ%��j���{�������1�
�Z�c�n� kmWؔ�!���*��|�-������T�S
�=${�4ujc�2uU�2e��C�_�\��9/���QqJ�� 3�R ]��fq�ǙY(0PO|�.N|+罆��jZ��h�ӈ@5��ըU�#�.:C�[�HJQfE�\L��&�٭RQ_�(�.��_�FA0��/Z���m1�����J�E4��8��V�KC_��RuIK�M�������:S�p�
{.҂FzI�L���AE��v2�O�D�L� �"h\�KF���UF��t�P��̐b IV 7���ګ.Q�-�r7&X��XzP���|ԦSJ�6^�T�&N�Y�I���6���tf�Y��ΌJ�.E�ԇ��ְF�]&FC3Q�R��`j��u<�ja(1��D������}�p��!X�.�
�K��F�ْ�(�tY^�-͗Mm6�T��;�0s���gS�4f���D�����Y\�\=�|�ʸ��S&(�2*j4�36��A�I��p����(ш�_$�� 9ĕ�k%v)�K�ae|��h�Ii�4‹�0�HŃ��Pe�6�zYo*��F��$�l�j H�Mhl
����t:e�S�2��O�J6���r�,��O���s��T�u�P���>s�f��z ?8�^��=��Y�DI\���t䕹 ]u�dU*�����W�MU���5P�)�P_�t���Q��t�.�jG��\�g)W�VM��(�U{Y�(v=���E:��:�pgVbH��\w�^+6@�1e
�U��H}�٣X���bp�8�:���������x�b�b]�3 ��ݳ�1�J?��D��=���"���Q�ԃ�qO���q=&56��g2���@]��<� e�>����Ͷ���T�&Z M���l^gch�s� �6��Vm]�������̫� ,��J � 2����;�����O,D�-�3R����R��U��m����MLOE�Ҫ��U�R����NG�'1C1�:8se�:��_oj�_�d�E��o���i��F�wI�ܛ �Z�n K�Sm�NT�G��n���7�wzTlً ��)�
����n��>�t[r������b�E�M��oV�?|P�*N��@w��a�����&^�\<��j��R�H�!W���"p~�oVt��/��tb���D#[��-��bWg�0 C�͑�#��1�cNu�Cz%�\0:�rI�k{��k�z=K��1�lâ�����Vaws)���n�…/mv +w1"�H��1R-�j��]!Ǐ�Wl���;��CH
���Ōb��*�\ɏ��n��n�z�M��)�Ii�|��[��w��ƛ�:��7�v�V�;�0H��'�M\�������v��C
x�+)JMU05c040031Q(*��-���L�,��-��,)I-.��K׫��ap��f�}BK�4dR0��B�b����z�
x��}isɕ�~U�
��Kw���wf�� ���Ԓu��x��(��!�v�����̺+ �*dQ`{d7@Te�+ߕ��z��P�%a���<{�Jn���<�N�dz�?���.������͏�ur��,�{|�� �"~�m�������xa�>�on��H w���]r3��Z�◩8Ώ۟⛩`G���M�7Sy$������p �X8�W�.�~��.YnWIt�p��m�7�d��y��L�~Nn��x��>l������i�.�3Y���sE QDɸ0�JE �DjE�Y��Bx�tb�0�ox��k�N:�'Dp�s�T$!t �9Q��*!�
[BK�O�^�U���)S,�V�{s�4�T��{����R�5P�����=]��rM����rQPk)X�'�Z*|�Q|����!I�Ɛ��8@��Ya�XV�Fq��1~2^û0Y]���.#[wU��R]ꮱ5���"���Y��.�\]�/�E��E����(%Y��"��H^�����L�rR�r�GtM��
��>A�#�8���{�'�ʴ�a\I�p�V�he�pXM�5��� ���7�u�"��B GV�>��xG�@*�['G@�Х �GAv堡ed����u)�g1�|�|�ʇ�.��Z�ʇу���Y���2���xk,���x,�L.�D�6�X�B�ꀤ�̟e�bZ�e��h��9d�a�Ȥ~�o�@v!��T`�<�pC���k��(=|c��ꈢ�lJi�<Ay��3)��*��,������$�ck���d��6'Q��C��\[��kb ���']��Xd�D���)�?���g��d�p���������BCIf� Mq��"YKZZ�� ��.\ O٠D�)��[l�;Z��G'����wj��fi�<�.[�V�Bd����xl��|-R�,����ڿ���R��Ki�B&+�d�h�vڛA�Y�kR��>]�!�=R�֥�Z�Hx��t�H�g��˭�s� �K���p�dʜ]
�����m9�N-F�&�����D�4 e�iiTP�i'1�N���`X�� WS�[�D(S 0�l�t�|d&Ǩ��y�%5�!�J�\�v�%B\�rm+e����S+��+X�}OJ��}���К �|��� e c�.�H�� Z?F�H���Nm-dz2�D��(ŋ\���k���a-4ű�F *����G'��V����q���B:��T�k�E�ZZK;رt�cQn�,�.��k���-4D�a��x�0W� ���BB� ��S��F�(�Ҫ���S��Mm��rH{R���)�"M��B%� ��j-����c��j��b�5��Z ����U��i“H�M��1:Ynj,7Jh����[t��<�L�b_ �W��}��:!?2��d���Ƿ�/&�ׯ���t1�zG'�>����[[�A9J&���ͻWyE⊽�����G�n~������wy�SX�FJ����/�߾��ң�?��~��{���|��Z��|�q��՟/&�?�����뷳�� 2������^���O.�T�K
�R�깞_��rI#}%��9�旗�3�+ � u�d��9��<�;���K_ɹ��_�j�˗i�B�䞉�h2��҄�������>������zA��KLZ��˴~�v �L���dW�٣7{Y��,���O�fA�;�J�ͻ7W�B�eT2y[�b����l>�Qr)����h������� Ci�`�'j���(U��&QHM�Zi#�D �uD���P.-��OFʍ5���ͧ����y�:���� ��+°5�GZ��^q/��t�v�y�e�2(E����E�T*�!RR2��G)�����2:y�`��s�M���xq~>�#t��Ze�,��$�*lZ�֪�Sf_��!��xZ5��J��� Ucy�?K��y(r@�_�Sh��0Mg���32��g<AMg4������JOʼ�)��~�զ/4�V��ӊ�.�<�hs�fu*Sv�B�FsRM����(�V���j���"*�;Rs�"��ި�۬\���8n1֗����J�:߿��)e�� uo����W�ZN�-Ww6yO$u��]4�34�F틲��#�P�q6���B?�5N+�ZP^���{a��B��U��r�䚓ȧ#��
R� ��Mz��
V���$V��˶�Y��o/�X4u��r��x�|�?��'΋^���rϋ �#�N�s����)4�Zt�y���s��gu�d�\�:�����Q�Ȱ�(1V��('��b���k��p[��i=ܜjl���fꃲ�wL�.�릺�L]�3]R�z�hkO_C��:��6���U��sY"���l�����Ҧ��i/_�:_�������{9��6�Y���E=2E�y®J�/<D��� V��f���6�\�L��#O�4�����*q�M��K�ڵ���N���J94)��jr"�,�S�F�.�j�;T㫴N�(�R$�umJT8)1k�(�s�)�Y�XLQ��<j]�n9D�[�e<�<�O� �u�J;WU���QW=�r�E8.��ce^5����;w���Ȭg��6����&�! *�O3vH���")�x��n����Ms���S���A)dIs�ey�C�٭��.bS3ƿ�]bK��5��eQ�P��L�^���şk]�:�Ki����~M�@�A�,'�,ב�z�uvf���Ltq"�!�b�n�r�!�>�]R��f�=�x'J�|�s#�&���Y|�ץN���h�iuu�7�%ob��d����u[P���뷿w�$���$8�������q��RHq���r�/�z9�f�P�Rͅ���+A���������Y�,}���ϳ�ѹn�1�2[�p�Ϋ *]���ޮ8�����Ы�������y�`�mrHV/;�r�7Ϟ���sr��?�����w�� �b�J�H�oV�g�n��K�K�>\ow�B�do����M��>u����d7|�����7F���=Ի� �`��R�#Q� >ن�騂N)�{'RڊPSAH�1Ү�Hy{+VU��V�2^l�VV�����u��N����ϻ�^���ww���W_�/ۻ_�nwwmdiSm雇��V�x��.փ#tw:Xo: x�V����u/YDT�O��Df��Hn���j��>^�m�|�����%�cR���ї��@�����i�Umu�&Ƃ⫻���>Y��N��W#=�dU����&4����e�KR��cV�;�gނ��f�}�Y�c;�s|w�r��������e�M�bi��(�=�YR�wۻ䵥�r{w�ʌ sYL�vY��$�y�=��i=�:^@���/WK��U��|�|X�ؒr�&i �����N���ww�rw�[i�ʪ�N� �B֛�� �0�V����)8��7��Urw����g;j�C����*��> ���k��ƨ]��.���I,�� 狈�1��㋵YJ�^&TPzi4nnL�:&$k�WB�{|)z��tC�ǔX�]IGKܨ"e��Х�+�V�E�ђsHb�U$u��'�t�Iu���3�%\$�2� Yȥf�\-���c�1>Obb�M�2Q�Ec(���Q�Z�V��"1�\�]��"b1I�75+CX,�i/���R�I ���n\ޘ�\aX��p}�]_�vӖ���:�����AP��<ޤ9ޱ�B�&��{�-���
��=��T��/�h�����%x�������-��J�)-���/�P�����U)�FU��)g���a����~������(�S-��\k>$U���>?�H�Sq�l�4������D��W+��Yo�;_�?e�
ث����/u�������9��s��}X�9bj*h��_Ԁ_� �� ��QzU\5aU!�Z��E�\Wa��R2��NlM=�P���Z�k�B�68��<7U�U�+�m�]���ҏ
�Uo��|{���('�ٻ>ƾ��>j�s�&� o��ʼn "$�8� ���vTh��MX�euGS��ԋ\�>dѪ%�x`�Q��Rۛ'�k�l�ɋ��w`z��\�'C��� �N�o�,|�k���@J����T���w)��L��q��(ac�:�F�5�F,�)�G��������
��aY���<:v4\���L�!SӤ�=ӭ��l{V��F�w8�+%lG<Pz� �j��o�{��*�f>x8�<
#�y�=&��ެ6�����]d#T�*��S ��� � � �t��:G ���7B� g�#)Mn�\�����1H��|0�t��RL��������uKV(!�s����s�G����6z��!T�sX_��&��M1��Y��m�k6e#���1F���]�r�K�
G�s%T�_
�d���Ժ���q�.�-�j��r�LJ4�l_�]���
�%�$� TMH=L��B�n���,�d:������%����G�����wwr3���Ѥ�p�� .���G�Ҥ|�����ye�R��K�� 9�^���%uڮ��IS$�LM(I��Ɠ�_SZ�;0��#�mܯBY�؟-�:�gߖ����Z�Q��;X��c�6)��סz�m�~�YAA�y�=��ׁꒄ��3�ѩ���ΐN�d�1�0�zΚ-�߰��{r�=�� �c���0]jI�G��w��N�(����BN�x�R�F�9�����8�܈�@�C6��Г#����#J�Fw�?�6l~��J]c�P���ڭ�Ϡ��E�0r�x0�����Hђ��Kv�Nw�昸F�9V�D����+��iE}���絊��>v֓�b@ ,�Ѷ��mt$Oiy�JG�:��o<� ~~��N�O�7`&�I 3
��E`�Qpp.��Q�j4\OMm��H+� �=�T�<�Tތ�ʛ�|?����x�A�NrE���!:Q��:�g��� �+=G�@���i�����b<��n�<��n���4ў�r`t��h�؎�N�â���H�T'��h o7w&�a{*� ���%拧 c�7���N���k�@�w����:ĩG��=x�cо8������m_Bo.�z� x��]^�(�a�gcd��y�A;�<g61Y��ѰI.��vJi� ��x�c��P@�\�y�����9�VƮ�T4v���8�ca��k==[��z}��_��g�L�+1��2 J�w�~�u�!F���oHg`l�Zx�u�7ϛ{������z,��<b�9ۊ��i[��1Q�]I*��]���ӭ�S6g��@���F�ww�:�wK'��C\Bzo�����&:8�.]�.��這�w����] @�i�0�X�(�,���•� �~���A��Uk`ha�n��Dp�^}����R�2Dl�f?��;NN��pM�o�o8'�86'o�4�׶t��[��[�Q_�ق�ǵ�q�p����ҕ�ύ��^\:0ź/�N������a؟i��j��Z�1ݏ2��w��&�"�V��k�lOR�|~��6r �Q�5H^�3 x�u� W�3��&ܤ��=��*�nL�gw��b}­�?턛��� N�I��>� 7�̈n�&ܤ�� 7�<;L�Y��&�ps�HnJ�t�kL�)%�ɥ�B���h0P�����<��Q�W�%��g���oxtI��G�� OstI��}��8��%�C��8�Բ(z`���h��,B���)Y�x
cJ��d;�H���P�.��K��4W�L�B�f��&<,N�a�IC\��0�F��n�
�C�F�#m�9x���2��9��w������a;��h$Ĵ~�ZX���އPxF�ob�+l�J|s�MoХ~�e$�T���Gt�Q�Q�!�����*������.#ҳϴ.�6�FX�Ĉ�'9�D?�� ��ý��t}"�)%��ܸ�h����+kB>��e�A�λ���å3�@�L42�SLg(�Y�A�?�����Ā���c�J���N0�j��u�\��H4�4w��<gV ��s>X����"yO�n��8�v��j m�����[݇��C�G=3��\s�����qЍ� r�ᯮcn��� fq��#�ٰ0&=g�= ��:�o0Ȇ��ax��o�a����'†���A��q����� �������B���xb1�A��b��cb^��څ@f� �!â�E�v�a���Ѻ{��C�D#�"���F�/>��ᤖ�����A��pi}`<H�fo�4�q��F4|���W3!� ��� ��ދ������Oc�.-�C�C����>;�)������d�Ȗ��bOq=>��{�K(�R��j�ս܌ҽ@����Cu/|����HLͨ a�B�!٠�^6�y���ѡ��;�?��hO�
� 5jn7`&X�tR�>I�7�LJ��m[���Z�hZw��}R�7N|�)��� �O�^�ɸn�$s ���}�5� ���_0{vs�BEx��x�� ���>�� �?�� ��or�B�qfe�I�_�����ٞ6��l:���r`�WI1D�3��h��J����7�<��<�SR'x��(�Z�<�C�~L.�I�*秝w+�O%�V��!'�w+���2�SV�<�6�5�+���e����i�POx �/W7 \ט�Hq�Z#� ���87`}I�� ���6as��2F?��2ƈu�����A��X�_�k��*5�9"��#���j�@�c]���=�Lc�����a=�������c�})�DŽ�
�=u5�p����x��v��G�@3t�H�Qf�܅��材G{< w����2�}=2��՗���_�QE&���,�j��~�S<F�a���cC9#�;���$� ��o6���P���| �� �n7�;U����W�0�����6,�~�g���>A���7Gt:K�ЭABj�Q�jӼ)"@<E���Շ� ��T�t"�Z�n�7� 89�<���G}�u��1����%i� ) �<�t__��T�svGS�P�.4�7�����y������m��d;س?��!\Z�����.�]T��]!�_��
Ol�ׅ�ĘG��9r4������z8��������4�<�ؔ����<ҏ �;o餆��2��D��;?�8�nG�ua�y2�Pn��a�'�O���>�@��x�.?~��sI�ј#�\Jָ�����,t�q�}G1��F��o��x��pӤ�f3����$^8ʜSh]W�E��ߑS�v����)��i�<.�w���$�+0��U��K�)��8R���ȳhG�Y�;Q�gw��/�q|*"�1�u���6��K�H�J��5�R:=n�z���v�ӳ�����f2�Dz�D�X�h�Ӽ��hg���S�7)i���kȾ$+sĵ9��W.� n��#'�sZ�فǵ��C�}M(� BF4���:p:���fH�<�9��Ӹ�f�9e�sN�{?�����Y/�*���S}���:�%����H�<�i�\�� �s�Br�}螵i9�i��!�V��'�G9���e#�0��=����3��=�������3/�B����}h_:$;����:���Q 9���<b|�d��o��;�n7�n����5 �軛�n[<f��<�^��!'�ׯ� �������U΂dg �ߏ�ʹ��4������L���̫���Ĵ�nY_�w���jKw㣮��sio�[{$���/ �{��3�l�-2��i���� ���j��;�1���S��8Zz0��W�Sڢ��� ������_���x%�KI��>�㤓K8��5d~u�+x�y����gߚ�?�_4��'1�C����Pީ�/p�ݘ�r,��}=>�l�i��ն�4]ؐ��S�����V�;l,�:�f�H�Q6� \�o;�����v{[���n!�<j#a��gt���Tc�r��[ǘB��{c?�_Pn�?�w���(�y$�J����o<�ٳ} > d�i˰������ ����Qڞ�f���Qv�bT���� �摮F���Z��죠��c�đQ"�h�����@�-�I�
ߊA�o�@D��Q$J߲YG���У�9ų��D��V�Uc��i�:<�5O�<�~�]��,`?
4f�|��G�`y��(A 9�~P���G�8�@���GY�=�Qm�,�����,�tg_�tz��W�}��^x���g_#�4n��2�JA��Z�}���� 3�T\��2�V���f��QN�_m~
��q��}+�i掠6��֡K���j�ct�Vȉ���ǶB<6b��s��M�� �Qv�Y�]���nvo���e���:z�`�����:�%,\����y|]pM\��Q����j� � nZ�i����ۋ����Ϻ~vܳ���M����7�;<� @ �5����.f���i1������8�}�x�� Ars���n"N�{T��I����=pd�CcF%!!5{��Dz���ٱ��IF_��>>� �o���g�P�b螬�QC����<4�px�u�����+n�j���'���ys�9�n. �q�F� ��W�(�(��,\~�rƮP@
hjB�<����������/��|,�㌿7�K��6 ���1/9z|�0=~|\P���r[S��q �oV-{w�����[��х��IH�݆>VH�3<4�*H��7h�t����$#�9G;X`��Ǻ 3�X�{b�!L�+:^�}�&���]�t����Х�ij��Ć.5nH~���pw���t�N��0z'�ˣw���v��H�c�ƻ���u���绦�k���U%A�csu��X��ӎ�GC�|�T� ����?XU$���b-#�4,�(��tD �Л��$[��́ �QF�:0]�u@��]��-� udS�Z�5�Q|ΐ~�ƥ�MsR����?@�nÚ����y�k���#�r}����u5zq��#�R������W&�_�P<��T��×c5N;��o��C��s� L�#���DF�Q S�|H)!9U������Lr�#��HD�����:i�l|�V�e�[O��e�'�}�O�ꦡ������c�e�t0���9���=tq�`���V��Ӎ:�j^�֙���(���%?%w!��Er��Yw<�����Y��/��#�A�1gR%�GI��RQI8}�N����t/�0�B��݋�;V*��􂮤l������B��t�I�A���<�*�XA� �)Z��A��Q�ʣ:h'��J<�d��uм����E�R�/�7e�N��5}���)��O��ࡈ?)���8a��c;�!��wvNt�G��h-bK�y��"�qL�j��bm�R�� �R���k0\&z�5�+�V�zI5�6�7��ּ� O�_+���z�k��M�h��|�7��G(�� ��&��zm��I�C�Z��Z)E�FK�)%1�*�:� Q ���� ����D���&x���&�yo9� x��x�;�7��M��3i�"���L�B.5��j��B��Dq�ϓ��_�2Q.�(C�����e��z��oΛ(� ۛ(yb7��&JxN��M�h��|�7Y-V��r��H. �$dÎ���$��Ԭ a�d��0��Z����R�I �������D����M:@T�bl�Sʆ.���S�c���w�A�|��|�}#�P<j+�������*5�^ f�����(��U�Q4�:���l���-�#i@k�l�c�@E=�����v�&���ؠ����Ή��-�#.�o�~K٥��~�ΘgGxڲ'Ś8[Y*���ؘ钡r��|��kitzGx��W�pd�S�i�?z�?t�֡Y�19���Q��Q���=G��b<�|�=�A�#�Cp��6,Of�|�^���9p9���ѓ�2+��]��x���å?�U�I|������fǤ��U��+��)�i�^��ҪH����4O6�0|ă,t�ԛ�:�T�6�1���s�
���&�!:���*�m��A;�i�r�n�9"M�Sg� +;����2�aڥ���?���?n&�/S�I��\��%pp�o�1�OO�����67���lnww�����$�Y}7�����s�&�p��{0�ߓtgr���֝�W�W����^D�w�@݂W"����:�MV�;�u�ʊ��)ڬ'�w���#ߥ��ct����&����@K��,�rt�5�~�Z�_�e���p>�m���d���@��|{�$�U!?�u*��L�]T� 6��[-^ϝ�O�zjl�5І�����o�aR�Π,U�� 3�N�[ �U�����k� ��B���2�������oӂ/&ye�g 8vr�)@A�?�?2�p�j�[��);�¸���~�`��y�:3������e��TG�&+��8:�C�H�!- ���L��M[��=^�m���ΐ_Ln��V��2�B����A�^e){�P�z6.���/�w�)��� 꽺��3e'�����c~m�hj-�|ڤN����K�MSKD� �
��6{���mε�'%U��H5�j��W�h�;_I{����eAu_�b��0����|�&/���O�5]U[st��V(��lZY�e���Zz�A9�tOʩ�����.���l�o]]hh���C�|��U�v�}�vĈe�� �}�����%��%� j'��o��_���A��ۿ�3�,s����z���{�R�� z�9����� �v&�O�_��<�.EX �E�p͕���莎 H��-D�du�Q���6bA�N9&�:dM��|5a�%� �=��\+خ}�
�<V��*w+:�t�a���2t${�l�޽4b�I3��sl��'�N �۔*�rH�ƥt�~X ��� ��%��-A�ᆱfQU3�x�TC�['ѕP6��z�Mnk�U�1����'[�ń�����X�ެ��:̐v�����K������/QM�'���=m�@U?m��.=��Y�>��\V��x-��E��mw�r7�?Ǜ���x���t��� V&�2�����EM�xQ��z����JH,�����Öu�u�5��H���W�_��������n���>���1� �E�u+E��V�T��'��-�o9�q��} ��;8|�h��bi�#-��W��l���W*���u|��!���@䥲I�����\ov���_��7�l��Xx����a�è�ur=%���n�����G���?�E#xE QDhSa��B�Ԋx�^Ʌ��Dpx����w\*���ڜ��©�%4xx
�W�^��F��L�8Z���i���H�D%J��K�.�^´{�Z��+�Z�i�t��Z.
j-k��TK�o�7�O�2��/c���5wu�
�ƲZ7��ԍ��ޅ��j�^wٺ�jݕ�Rwa ��P���� k��呫 ��¿��(�v�����j��S$��a�D�S&l9)l9�#�&TF,��1�O�� �k�E���2-eXW�*\��4Z��V�FM�oly�� ��7�u�"��B G����ÿ��wT
�¾uRp�Tja]��{`WZF�?�o[G��|#�'�ɇ��|�"�u�|=(������Zx*�Z)�����i������I�jc�e-�H
��Y&+ѹ$+�E�Dh �!3 �F&����� /��[%��@�����^��VF���h�VCLi�2�Ԥ��'�9dEk��e���`�d�O�̿�5q�q2E F��(� �!Nf��I�5��a��. JT,2o"�����ez��3x�� ?�/�&B2g��Ás� ����i���Z��j%�(��.rT O٠D�)��[l�;Z��G'����wj��fi�<�.[�V�Bd��>���8:bm�Z�|Y� R��]����R��Ki�B&+�d�h�vڛA�Y�kR��>]�!�=R�֥�Z�Hx��t�H�g��˭�s� �K���p�dʜ]
�����m9�N-F�&�����D�4 e�iiTP�i'1�N���`X�� WS�[�D(S 0�l�t�|d&Ǩ��y�%5�!�J�\�v�%B\�rm+e����S+��+X�}OJ��}���К �|��� e c�.�H�� Z?F�H���Nm-dz2�D��(ŋ\���k���a-4ű.�͠���,pR��kme
�'��,��ME��{Q䬥���K;���2� � (�BC�/�W s5���g�놃.hz)�>����Q�UM ѧV���]�:��4�Z'1��U��R�C�d�A�Y����u��\-VQ ��V+�1vp���1Mx��I��2fB'똑�F ͡W�T\p�NC�Ÿ���[�_����}��:!?2��d���Ƿ�/&�ׯ���t1�zG'�>����[[���2��Oo޽�+W����?�w�'�޾+`[����هW�����CS�-+���l�?� �x�0�3�u/�� �'*��\� �s=����F�JB�m�//�%g�Wzr�B�r�s�+y.�%���%痾�s9?��Ւ�/Ӓ�`�=�e�dԉ� =�3!}���;f?i���� XbҺ�^���_|����&q��Hg�+q��Q������NnW�^?q�%�<*7�J�\=
q�Q��m͊�#x�&���Fɥ���C�e^��p^�r�����O��eQ���M������F��")�rwa�\Z�����k��ɛO��o˅��us 4�A�W�ak؏�\ ��^.%��e=�D��LeP�&T�É�V�T�C��d���R�k5��e
*t�R��-瞛�)�����|�G�a���0YFgI�Uش��U�����$C
��"j~Y���������:��P䀦�����a��XMgdDM�(x���hxMO������yi+RR��P�M_h"�(�� mc�ܣ�E��թL��CI�I5m��j^�`Z4�c���c�"���{�H�鋌�{�rn�ri_��X_V:o*=�l|��c��i��Խ}�s^�j9e�\���=�ԙfvр����/�֖g�<C����s ���8��ja@y� �]6:-fWU{�I�kN"����+hXH�ς��79�er*X�oj�XY$�/��fa꾽�c��M�ˍ��)>�GD���8/zU���=/.t��;-�F*���Dj�e��W��ڞ����r%�l��W(r�G}Xs �Т�XU�����Z�U��=��m����ps^���כ��*k�1m�����23u9�tI]���=Q| ��d���?WuB�e��z����sV��J����ަ�|I�|]�~.*^��P����g�Z���P�� �*���%*�/X�f�aJjڰsU3!V�<��"�C̪8ĥ7!x�/=kעR�:y.�+�Ф�o�ɉP��N)������P���ZD8���J�8ֵY(Q�Ĭ�Ǣ ϭ�Pf�b1E�C�uq��mnї��KZ<9/��h*�\U�nFU\����Y�<�#���yՌ��^�Pܕ�"#�z�Ŷ������ ������;$�bb�[<Ew7wj{�Ʀ9�F�)�h����9㲁�ѡ��VRqC�����ϋ.�%K�Y��(Z�Do�I��l��O ���Y�ԥ4xV�i�|x��[ �]����A��:;3Ygg&�8��D1\��i��� ^�6.)I]��ޞh��z�鹑i���,>��R� F|}�̴�:uכ�7��l�����-�W��0{�j>y����D0�$�S�ϋq+ g/��\�.g�����h�3��j.4�|�^ r0���W�X��8ǏȲd铮��|����pӌ���J�Ku^])pP�ҥ�ۇ�e�&�u�L�W;%��M�����R���t��K���q!��w)�Ք�.��Sͺ�d�O��^*S��2>�]
f|{ѵ��^� �m*T��� Q~&���3A�)�_����-��9S���k6|�@�� 5�`�&y�ڢ��,LM��T�R�Bx���mJ|L5��3���j��6�-�;:M�?� ���, �Ȝ��
�" yF)�*,@KG����?
�i��B���F��Bx���5�'�� �Θ� +���k��op�B�)�bO��V`�MuT�){ǡ�]D xS?���#xÌ�`Z�6pA����gϤ�擖Vɐ ���:��S_o#R�)�^)���_M�T$���g>)����8� ւ!�TK�� �$��dt��)<����6�qH ���(�9��͐�(p�0r�6 �0#�|D�);�U�SP�4�5�Θ2�- $�[<ו"\�X�I��2<��~Q��oJ!0p����с���36'��.%��Ԅ��ť�S$ *�B�g���>D�#2�V�
��sM5��wN2�3 ��^pfEB%��I�Q&x��@7`��X���B(T�T&�����R���S �5҃_i�ᗴ䧅J`Pi�o��@9���kC�7`€�D�#4��ڦ�Y�ai0WBQ��E�Z��\,4J�2��֎���Lj9#`�����lɌ)1���r�:�Y)�-<PI ����o�p�Y�d�5�V&u�`
@�����5�C�R�(f�ӆ>H��� �EQ�� 慎oPod1��s���9 W�BK3!"��{ �
���� Jp~+I�ӧ%Z��A$)Y�2�d.�)��D#�N �J����7utj�6�c�/m����L�TY���u�
��ٙ3Ҫ�g L��ac�A���$x!q ��e�O��M�M���"�Ή`�?:�� 7�N��҂i�B�~N�&pT ��XA�7b�=H|K��q�nܔ��^rhTNn����
�:��q��Ƞ$~p�49�'�S���9�Vd%.�#d��j� ��{�YV�H�0���/����'× 8��P,\Q�F��}����D����V�
0km+�d�z)H*rV"��� i= �& ����5�1�1҃���n���)|�����g��VO1��QaY��K�� �h+���cϋ�gg��`��E_���f ��̾�Іo���'�N�G�|I �����P�b�M?�`��a�L��e�2$�H�@A9*��������Я+�&g=OW0nr��fmG��#d- )9�B� C7��@��נ���c��k�����X,��1�W�e��!A��r�Щa���GB�� ~�'�o���O@/�fL�K���e<�<J�Xx/��P2��;�~��I��_���Lhf ��?�5�"륅�{� ~�:
�fS���Z0݂`y5�ӗBc�"P��Рy[b΅\�tglB����@k��{�1|�1���i�ɼ��m*�l|
��}�n�>�5�Kb(��n`r�)+�K/�һ�����g����n����3w��^�|�޳{�]+y�n.�/�p�f�e�ĝ��� ��[�βK��ܽbgx7�Yz��Yv����1����r�.(9s����{���{k��K<����
���#d1�v�<��������}���|�� @��������Xt�����9����m��;��܎y,rR�s�N1On�������n3�` I7�?O~N�����2ٻ�v_��ix�M~(.T�%w7�u�-��|�f�����nV<7��x��{���G
g���-��7�\���Ae���{ ֝�T�M�e߉�K���vU�]ȱ�#�"��)�Y����
n���黂�l{~6F��%�R_��s�mŷ�����y�ؤ�.;67����$�s>'�V��]V��1�Pյjvs�X�R�`W+�8�^���F��'��7��R:��ٱ���ĵ�o������8�8�LZ�x�y�� R����NV�Eu۹����ƿ��"Ayj���M�����/q���c����_�����/�S
x�m�O �@�;/�wxG��[�$ݺ A 1�u�ەu%��eԡ����)jQ���s:����-���r�*F���Q#��=�VԬdj��k�bDW2'
h�z`Z�*�3h��fz�A�K��,�K /B���8QLp�E�\ �J�:�[0��<7i�¯R/���'z�B��91�F�
x��T]k�0�k�+�_�%��N��F�()���R�p-]�����r��O�GJ`[�`{�t�{�9W�7�Tr�~��e8�� ������v�P�BI���q<��� �0c$1�}���`7�q�eKtoT&�0������ v�`�������t��E$� M����a-K����M�A-!��MTeB�.��WW[|�|z����X���b�K% �@�a��'J+Ɍ���w����*~�{�V���J҇�h��z��V����+V�����25��=�+�X��g!��m����<)�����8�)����W��O�8�W��Qd���,��ӎ4p�oA/��0%�f��:�X�q�2��.��2\�w�!�)���9�D�A <Hr���}�dc�)�_�|r�H��*���v?nm6��g=���֧���A|�1���l><��U�9?鯫02Ϯ)�l��(%q8��4�# �#4���iLB�x
v���dДP��X8����#e��,��Y|���Jg�~��������d“8`�I4 B�9�!�J9���QFA� Kg��O�'ȧ!MH����5&�W��u~���:���^t���i�W���r�ȃ���,�rZ�����^~<��������
x��[�o�����/ [�%�ul��^�I�dۻ�"�%:��-��=c��{��[�;����h)r��!�O����i:�zx� �|��{�/�����|ЛF��k9� r�����J���;��P�.Vtko&�����H��T�.}����˞)�s�E�.#�s���4r�g���i2{��C-��T?^�2HBY
��� ��x(ǫ�aN�˽��\�T��d��T�����X��d�BE�#qĐI8B��iRf#lr��iZ��F����0�m�/"�j��zN�DV�r~�nq#�(�rDq�B�J"'A�[�a�ܴ��J*%����LdZ渒TG\�\�A+���`����F��P՘��qP���1���� ���a���j�I@BA����1��v@� �Ԣ|�BgH6<��m��� @�b�r"�MV`���h A��gMf�86�H[���$���� � �ʒhk(�6���rH&��ж"G?M>��p� qnQ�&��ئ *�ԙ��q�1���C�i�榘W8�B����2� d8��q�p^�p����D��:W#Ao��v�6�o62�"C������/k�e ��i�??��?�����6�F?�ח��6���^\���4ٵ�ѿ��mCtc\]^U<�Έ�
b���Cpy�S��ڿ���`�}gC�AK��Ut���բ��a��?:��7�o��;�
���~��_�p]�L����3��G%���J2�X��߱�&�)+��XS��E���]��xf����~�zp�� %g�=����p��,� v�������Q��� F-����z ���2쫹o0��R� ��fs� :�����j��)���澾S��~k{���:����Έ�}�n^ph�m&8Yk9��!��r��un�V�����a�7�
��L��P�O�6\%��,߆��������SEz�f(�f�!�?²c���Q����4j5�(�z:�3\wd֓8�Q��js�Mߴ�j���j3<�}h�z� X�j�9��Ƈۋ%����..����*r��2���Յ���ȴ\bq��]�y$C.�p��ڼ֯W��Y�/Ó�r<�r���Lo�8��e� �2N�����>
ᝒ�u.b&S�M�T���hY�t���j�k�T.S�)�R�U�m7t�}U��J1�� Q�ܥw+P�q�&���"��R|ފ�a D�j:�
�� j5�֡5�U���\,e� %AֳQ6{+�J�������x\5~P�a��D�2��bp��z�b���jz2M�K����"P �eԁ�kU�"r�T�+�`��뚚G5ՔY�5iM�v} �ڿ��r����ԭ�^ܯ6Ih �P��
�<Y�al��,��$��.in���ʠf��G@<�K]�ELW��e/�t��7:���>ul/����ow�t���@�0[]�m�wd��b:�ڣ ��n�6^[.y�!�;f�4Yt�ow�AG\�F�2~�kRi۫M�m�~9&G� n�~@t͡��bM]�}֫:�f��rő*Չ�9�5 ��� l+S�P�B�*wGz�5�Ҝ�桺�7�h�`{��\� ��X��r:w1�k�ZA~��X��`|‚�R҇8����(�U��G��~��W)B�E��1����|�b�����l�Iz �ycBl�+ '.i��I��¡=H�_a�a����0���?�Ub�+ܳ��x*�����fu*�N'=�l����+�j/ ௛��A/1l(v�K���kۇ�s6JɆa�!�ل������a0N6LM�I�f��a.xZ�I��!��|S ߐ;�l���iO?�Ӈe��5�M�k��IL7�~Rf����wIU7�?�%�e�Ƴ�� ���H0u���9kv��1__w�^gU�.d��)6��%��b��s)�.96����s�=v��J���v�Hꥏ8� $��9�e`{���$����x�Lm��.�����n���u�=k�S�q�z�y'=� �8͇g��/�/��"+0�X���:6�������Q���T�ʘ��2�o��we|W.ZƱ��G���j6���� ��*�c������� tl�E��Rd��m�Q�󠪣.������G<�W����T��+q_�aIU�Wi4������xX�M~=)��V��(�uy����ە��~������E���:ou�.���\�y�)��� %�u#�x���ߋ�>�2��\�a�>`��
����<Bl���K�⁥��a��)������m�N��Y�T�P�yM9�$�8��>�A������y��nx�CiƐ3@�<������싂�}�R��i��e=}T�e���>�.�+���i���������˶�^ޚ�VW����_��L�Y���#XH��?��b?�����A�/��L���@�'��J� [Ek��bZ�ؘA�a�^ؖ�bZi˯r�;R�Q���ž�W^�ʚ #N&�� ���&a�i� k��F�Šh�-�\�����~$ߍf�D���Y�R
&b��y��Wi��O�রA��3�jk�_�ʊ�E��3a��O�:��`��Z��𵅸%"wX����-��� �3.��G��$����
� *vs��Tv����/���C�|:��?Oq�
x�e��N�@ �9�)�Ӷ�T�Ԫ���?'��$���d7��o�7IQQO+�]6��c��[�hm��x���иw�?8y�8ZbRO�^;��m��G()������
���b�U��Q$;��b��7�S�6��!zA�h���K���ZJ(�Oؽ�b��% 03rW��3� ����XU�a3<�4�p8��7�g�mo����}�t^�� ��K�ͮj�����o$�V�?�
m�ۛ���⽒��z�>M�_�_}C
x���Q
�0D��)�/H�n6 �x�M��b�h�Ƿ���<��J�c�phUDc�`�D)�����X���)��C�`P����4��V��DD.�V��,� C��@�=J�+�yYx�<��k�ϱ��3��)�|�9D�Lp�h����l��K�p�G.
x��R]k�0ݳ�EO64��<l��A�` ��h cY���ɒ']� ��}rlg1dz�u��БJmK8_�z6������٥�h<�>VhHm���au9[�<IZ'��o�����2�/yor~��"QMksب�[BO��aV@��Zy&�dAJ
�w��w���;Xwl~���jAsiM��^��r��$?_ܾ�j���dD����c�@\�.�[��� Zg[��$�E���P�4��=� F��J�X�ZC�AJ�d��aM4y|��)��T���Y�ʱ,����"�� ��dG�(\+c�ٮ������ݦl���l��l����z�=:��3�NF戮ivA��3`�@��`*|�|m����kA�6�������N����0E&�ٿ��v��^#g��xT���7������VgG�����`��|��� >�5�
x�+)JMU�0c040031QpJ���/�/I-.�+��a�ɛ����s)�M���0=w0���$�(1=U�6��a���(q�6��v�=Ͽ�I�U-N�#�
x�]�QK�0�}�8 a-s-�/l ��D4M�ְ4�-s��wo��������sHi}����(�Z�����3�r( m�
�Q���#�&������;J�L����� *�Dx/�T$4jG�m��}�7V(yq����s`���6�@I/��:����[�~rUg+��ŭ5z���U�|ӻ�oFC�����{��j�X�>�ny�gv��͆'�$1�^p��?_��8Hة�'I���i�K�Hq8���Id��e,���@L�C���?�?o)�~�~��q���t��C��uQ��X�H)���ʠ��y�3�s�f?�L�
x�m�Mk�0 �w���i��|������a0=���[qu$v��2�ߗ�I�Au�,������)$IrE�^}l�%e�,_9*�����j<����?�� ʉ����0��8| ��t*`
�L\ �Y7�*9��� �!�jY8R �ԐL /Μe]�O`�
lf�b#��(Ǫ���x�Eޣ�!���L+62�a7�
M8R��<�re�f�m���P�^SI#�vD�a ���{wNeLZ���j�*��5LЇǁE�̻��6�7�3��{��������>>�Ԅ�C, �� ^?8��;�����
x�M��k�0��,�?�cE�f��·B_
 ���8�1�M$�c����˰�������Z]A����ח�i��B*+��Z*� J����[�t�n�Fw�w��.XB+g�p �~�hTH���b�[B�l2 ���U�,'����EɊ%)K�,ٰr��O��m����'��i%jv��Ɛ]ώ0�@��X6ɍ6�w 0g�Ǣ7��)�kqN��7]��DD�+�% .�ʖ`�
x�U�= �0�� �7�������
NB�^�ALJr���5Xk������2e2H�t0���pK���&G�T��6�0��(��Q�7p'�d� i4[!�>{���&�Pՙ" ���/V0���n��\�Dy<n��֒�h(��U�,rm��ޚ:�2R�V3�j������{{���î$���~�6z�����ef
x�+)JMU047c040031QHI-�ɯ�/�,ɈO-�H-*�+)f��F������k�Пb��BuK�b�P��d R�p��������:n�X�����b�nNfH��۳�sNf�;U��?�w�#='�B�Y0e��߳Z�=#l����o4$ݙ"[U.IE
x���M
�0�]�� 2I&?��W�dR-6���z|K��[<���Z�إ���[Β��� Zc!М,28��`��
ŋZ��D2�5'5Dr�9s@�L4���ӂ>�Q�\�M�BS�Y^vXk{�|��S��*���oy�-"�'{�s.�׉�BF.
x��}kw�6�����
-��!�q$HPZs��C��4i2q�3��'��(W����#�ە�~��D��8�Z+"^{cc�l���rԃ���~���x69����;.{��$t��L�3��St|B�~�.W7ᆕ���'����h;�O����ȋ����h��-�xJ��iƋ��Z���xys3�<���³�햁������6��X���|6�m�Y)��v5��q����r�Y����ٯGw�)�d��h�������?������:z�|B�g�Y���^>�a�aq�
�o��:����,��J�B��%��g;[lz���|6�� T��i�t�o( z�h���B� �g�8.�{/)�>w����A>垦�x��R�7�����z�h�]-�=����f���^�]�A!M��+�A~>fd�L�>���6���:���fv3�-ZeC-��<b 7 ���D��� V �[<���W�<����K�����Q�<:כc����8�/�����$y��6�$܄Y�$�4Y����:Z֛%��ExOQ˒�O7O��u8�?]�������7��D��$*�N����>��)s)v?/'W�����z��� 7��&(Ą��|N��Nܘ��x�BSS�hBnU3"ǩG��&LF�&.�.ŌA��d��:�N�%��&Z-����[^�12�^�B��B�F��f}N~�[o(=_n7�Gs�ah��rq�3��a�4��[���Dػ_a͎�� iԜ�I\���+�+��{,�i��B�₩�KZ>�ܩN::�e��N �)�|�T��K�w�)�F�7�2u�o2լ�Yf����A�(?���G���I��ӧO{y�,� �%�#p炓�#�1K����p����d{ ٿ�55�K�k^�I��������|�UD�����%�,�vy� PKwE-��v�QK갬W�)��\f�0�L���}>M8� �m�/���%����� {ш}�tb���'��d4c��n�Ҏ}�.��:���INLϴ�G,���G #F�5�3C��Sl�?�h'"ډ��|N1�Y�<4g���$%�w�?��?�B��H݂[�NƾM�-�-�؛L#7T��)Z�훌���4��@r�S������$��ͳg��"��o��t3e��~ oQ��A�L� L�*E(ۑ`"�uH�ׇ�xug,y��\V -���A^��E��������&᝝�������t�&�n�E�S=�֟���Eq��ۍ0��_�פ�n�;�U(I�� �$��`w�H�B@F�J��`�5���=��gG�f���G��漏<�U�]��{9�mW��A�̣��0�k�)��
@�"�Q�[�?��I�Qu�]���}��G�� �w_�������iD.�AqhS������?W/�yM4$k�EnqT�9����J�|�n��2��Uuv��m^Fe"�N� (�4�[п2k�#�)?]#n4&�Θ��� �cB�}��'��dy=�X��zo�#5Wwծ ʾ4��c�� FO��?�C�Ұ��ޔ*a��I��R
�:��������E8����^ ׭`
�>�4��'NPQϡ>��Tͩpl�����W���1��r0�{Hf&�T���w�P�jvB�J���d���\˧��$Xn,fC�,���hMG��U�B.Y6�Tb�)r�z^1\��}�+�����tʬ�I��&Q���N�i�mr*���@��� �W�o5����\��]��|
M���w�L��K���ZT��i-���PXŞ���ȁ��c�����y&���.(�PY ;��)�PO`*�(j�ˊ���E�T�8@��T��'0��V��*xS���b�*yBG�*�(���v�r�:��i�[�6�%3�gŒ1U��-�G����� U���1�ݢ��+\���%�Q�i���]��U�.�+��|�և�V�)LK�zȧ��yIk�'T\$h�a"ħ�+S��[�$E�����G}")�J�@�-�+�����ec�Vph��y�'��r��}Z�(��^^@mo��&p]Z���+\
9��z֭r��l��,Po:���Pi�Y�f_�Oi�J:�S����J�}�|�
q�q��t�L"�T��Z63�bB����+�Z�c_%]!#; VУ��і�r�f�#t b_ƣ�\6ӇE1w�=?�P�*q@� "j�闩I��N-�u��#�Z����-�TL.)�5Z�м� ��+x��Q!/���H���˘��z��>Z�iRi
_i|��r5�ű�o�h8L�'I菪1q!U.����h�L����%5�\ϐ����Z�oFQ�1�WX��SEQ̖*1�R��%�ȇ���˾p�t�m�^� �Dy��`�#d�|�%/*�*#���������2FDa�e��
=���SR&��Y�@q�!V����>�2����v��҄�j����VI�@YS9�r�(����$\��/c]��X��J��ͥh�K �ǨH�,�QW�:b�b�9�&�m�a_�+Ĵ
`_ʼnY  �ț�xL�a��J1*3��!R���q�pT���z��`�D���O�G�c칓���#���`�;�� �dBBo �)��A0 �#O]�:��M����$>��Zd���!�,��(�k��F�� v)�~t|-�U��&W�1�|h�|���M4�V�">����o4�Gݨ�L=a ����3Q���N'x�MC�!�_��q�=u�Q������B��E��=8���$�����g�I��H��"5 :�d$R�@b�R�ģ �j���>�X��V� /�D�H�H�'��[�;��:���5q���uY���B�O�4�L�0CP戕�pR�;�*��^c�@�K ���1��D��O�?O�g���"� ̩8M�"V2@�NR��Y=^+�ATQ�¡�A��� �S:UX��c�x���1<Gy:��\]�!�߈������xB�H꽰'�d�y��i�)Jp��� �Ϩ9vp�G���(M���c��C�q*�D�'N� AY�,�=�qr�A����)�e��]4��ƌv ڱq�(�_�„&�t_���-��g�_�s$�߼$#gZ�=�2�ܰ�s�7������S�L�3�{���շ�L�%?]�{y��՛a���ŋ��/� {�^��� ߼��s�A�޽|�<�D�7���7oy����m����i��E�4䪟����z�C.�����7���O�x~��]�6o������� {/ަ���֒�/^�f�A���7Y�]�v�M�yo���9 ��
xJ���Kz���.�8���e�$9S�<�����=͗< �*h���?�}�]n��OJ��w�ߧ���8����8.q�wgq��CJ�� 7��fa,Y4�N/.$L��Z��C�_H��'�yqY�Z��j�嚆rw�ȝ [GNp�UR I ��&�\ ���9Vj
%j�A��UA�c�_���*��R�L�rOX��b��1�y�æ��4ô �6i������4z5�5�I!��[�S�B��jT ���g�-<��T��f�Mp�2�!#@�I�"�����2J���sx�Q�Eoh�bF�����PC>!�8�RV���E)��0�rN3��Z����� ���2��� Od�q!�w/�`R��vWr �;\U��Il���{�m�2��s^�,��T ���!�*��\��g��� &�('�rr �g���!粆\�:D=���)o*q�_�����o�N%X��+���������ҨO� ���{a�yN۸8��3�� א�J]sj�c�˛� �9�Ρ��� �d���/]4�Q���΋��x�f(�Z���-�����.���>�?� %�KW�T�Y��<�?v���Rٵ?�����_�����4�_?�����p�D�hu5_�{*@>W�bH�������|}Dp'"�Ap'"H�P#r��م �21��B���G�� �Ll�p4�8���q�1�dJ,�����M�F�$y����n��t ��$�"-����Y������&��Y߳��~�d��X�9C�#�0X�;���w���rn����h�]Lv�$ï���&���&�ɤ�츐t@��<
��z(a���MQ� ���h�Z�>2/e'F�F�jO��(��� ��8n�#��(����! �G! �� "�{ă!-�)/���d4�Lƣ�xL� c@F��D�� (�ȡz�G�؛Ҏ��� ������^y7�Χp>��ڗ�c���k�Iw0s��W����.v�a�����^?l�gT������:�+vm�1��eG�LvA� �{h.+8ZN�%ص��0�A���q(��y�^Ϯ���p� �((C챍��bY��z��J��Q�ƴ%�l� O�v��x܅����K|.%�Tn'u�*�Oqϟ^U�dց��Yk���J.c��)f
9(@�!�a_�������E!�4�HC�+)#��$%�:V���v����U ��0�� My��JVR�>��0 �ƕ�FJ���� ���cz �0e��D�5��40E�pȮ9U��jr\D��b�/��*��X��2'T�i:�9�\U*�����m���������"-�:�;v��£$i�g�>֠&�V+ ��u'1�>����d�!Bj��v�Ը�E'��}�b�*�ThU۟#�)��Q-�~��3�S%F�&.Ob���VNi�*l� Lf�]��z6���/��ƪ�RQG]+�^�9*�rR�)c`�o�x��:j+��탩���R���W�)��e�[� �v"�6������Q)�y@H IHɱ�U׋��H�CK���QW(�@�]4�T�yc��M��Ǟۅ���+���_�.�Q�=���PMw����S��.��kKnx�L��'����p�b���P�cx�<^D�9u��|B�����v��'8���&��PS!�k:s�[q�X�2�E�d8G9��4N��_9����P��v-�����o+8���PYOW���70�����5�:ǣλ�nO�=W��V&��5�������kС�?n��D��7��!�J��a�av9��n�ˬ�0հWi��f��ȶ�� ��~g�%�*S��'�L/��5�eL�k�f��� ���_��َ��V�sbw��;�pЃu�0���:���t�x��$>,׉���5�N�&�]'�A�N�v���ub7xv�:1Hp�tf�)���n�u�fGv��_]<�A�����|�~_o��v�N_���髖��'\�44�Ƶڛ��l�!1�p'�Vè���Nw�=��X� �n\��t�\��|��$v���8�n<�������꠫�|�r\�U���~��Ǯ�� !Y�b@��=���%k2��v,d��1�@XN��i��=�sG�V�G�YU]��R� � �Š��Q�)�纴��]��Ğ�A�;��)��ڊ}߽�����+�5aEu�oK+���vV4m[�L3��n�o9���(ɪĞ��p�䆤a��y��� ���V\�^mgNskQp�U 6k(&3ՔÑ]e��o�POG�*�-%ꖊ�N��/:��c�43�ڼ����c=����ᶬ� �?k���{�`|(���w䵳�imu�86�ޚ/w*=��a�ų~�m����ڞ�[?��b"�����NN�4���P�M ������Ӣ6OW�w`u1��n^o��mHG�y���W�Ve_��\�j��`@�s�u�l@ܾ/sn�j���#�0z�Z@���V��lNc�;�:�~���HC��!���:����7% s�Z�i$2t.٭����~��@d�[[���%�1nL�=��v�:�Q{�2�L{��3˫��Ņ��P���4�ھؾ�wA�bN����jf�ťm�fSOLo�����P��m�~r�s]�a}�>�NV�9�R8] ɶ�rm�P;n��q�����c��e�@�ӎo�_.�iP�]���Ż�Fo���/�h��f4Kq��ZF'����M�h�˨t�ّ�[IT߅|�-���6YB <���{ce�m�]`�]��޾��et�7ݥD�h���[Aq��l�-dU����pq�r�Ǻ���H�� s̋dT/��;+�X�2d��ػ鱹v�1F�.A�⹫�F�^�R����[�Pm5��ᎁ���Ow�<�O���z>t�q\ p���oH|:�#���;� ��a���Gg &�'��{��j��~��� 5#�� ��:P�r[�����+���C˴\e��I��n�C�D�B`�I"�k:�{I���&�l��k��"$u�'�϶(���/���`t"�:@�flۺ���r�%b"��>%��.���yF�����/Rg�������|ݹ5�
��P�ɶ��j����Ζ����؝/����?��#�W��A|�������щ���_�Y~�Lsm�S��k���v�����V�@�K�Qh�����z�p��p����qԻ2���>�C�V��#+�U�Z|;���q~A�VU)�� ��u�m����ń�~���AvO���7e] �6�c�����w���ħջ�k�gפY�<��-޽zLcp�1��ۮ�������4n8���X�q� ����kg�ߢ��� p۟0ʫC���W �z3m��?�H���ߙ
��7F�rd�ӜY�MlJ�������O"=�e�ĵ�'�h1y�{�=N���*�����z�7����i��o!.�y'V��������⻚3\���摞M{����z;zW8饍<>�y����=���G��α�����G�� �&��EgX�r���$O���=��L�p� h ��׼dI0�I�v�~�`����&��J�B�q;Y��BY�{1�΋�
�<���Q�H0=�Sܘ���&���;H]�A�GW\�P��H�(�+EQ�5� &twһ�m��7����(��]�W��E� �z����c0�/=a~���ޣ���=WPOz�� ��a1 ��I4�3�0�}EY�Y��1���Pñ�zqTd��Im���5�@�,2�����=.Ap)OR� �hh�ٮ%��]�b�s�o����������߉������ ����_�gl} �S���z^'~Q�t�R��v3��6�O�i�4?�Y2W�xvs�ݰP�7�4ZQ��c������l�6s9��h�a =@�\@��%b�=h�t�G��ס,��<{ pLk;`��c�R��� �GB$R��Hu�d��T���H �7�Fn(R��x�a�[ ����ˡ�Bު���EE.�!T����#ꒀ��ʀB��Tv���uY���B�O�4�L�0CP戕�pR�;�*��^c�@�K ���1��D��O�?O�g���"� ̩8M�"V2@�NR��Y=^+�ATQ�¡�A��� �S�\NSDX���v���a,x�P�*���K9���z�ո4O��D����ɰ��%�HQ�Ce�( |F}ȱ�S>���HODi��D�%s�Z�S�'�>q�M��e��iDU.��"��ךN)/#����]4f�HЎ���E��"&4�n��S�i��|�(�G�����7/�șh��#7,��M�y��T�}�-��9�"<��e:ƞ;��h<�( ƾ���i@�J荡O%w� �8���E��;��SM�pp>�e�qN5�2G�O�^���RcK@/���˫��� {�/^�?}�nػx���_�k��/�����z����"�� �߼�yë��ׯ^gm�6/Nߞ^=�װ��mښ{^j-)����E�<��o�H,ͥi�\7����H��0n�PЁ����(_һT�t�Ź�/�%ə��)�..��i��i�̈PA�� �y���rl|R��x���>}��7�ƇT��q��;���}���2n$� #�YK�ME�Ӌ �t�A�� )��X�?/.�R�tB��\�P���a�� .�J*!�a�T���+��8��
AM��O�8�տ*Hx,"��_W]j��T� �wR,48�0Os��P��f���!�C�&�����!�F��F��3)D٠���({!z\5��p�3��`K��e3�&
8K搑 ��$^_P���\����9<I�(ע74o1#R�~FB�!��sX x)�H��ˢ�UI�Y9��� @-ga�\^���Y_�Ä'2���軗k0)sFR�+9�����*��$6����̶� �m���Y(��C!CRU���89�!�Ϛ��9L�QN��<�����nr.k�E��C�#���O}�����.a�[��9kq������;:^�I}᳜~/�0��ig�wv~�3��Z�.��^���~lpyS�� ��9�/�w�̳���EC�ً� �w^��K�s����j� o����f]��'}00��K%�o�ߟ��'q��<�s�������~����N�A]ؾ'/c4XdA{���1G��와�9FXT�H�j�}w�؅E�+���"���l��#�7�>I�����%y�O��!Oءh���]�/�#J5vk�� �����!ȫg��_U�{hK���q�H (GS�-��e������� ߟ$�]."}� (��F\ϥ\�5�v)�(�Ϫ��T%��"��?������+�������x�s��5#^�>`v��������K�A� ����C�\���6��V2�������_;5���% ī�(��[ ��_�-5�b��+O�spE��@%�0��W� �[}�&��1k#���1��t .�M�%�Ͷ�$��n_�7��^��
�ec��r����p̳@�+���ձ��ii_�5H��u0�/�5�/d�KF�'��DZ!9N�j���q� >#=gm�,� >�9���\� >;6H"x"��Cˈ��A��>�Cp"�)}�u��v �ؓA
A%�GG��0���43m��+Y�NW�����p��݄������*
K�r�l�"�]�g���/vC�<�e�qt��<D$)�����r�s�}�����ӣ�M�Z��"7������A���?xo2���jK߉�(�O�}'ëD�yt��O���f4/�7?ed*D}�>�G������튈GϢ�W�a0 \��֕f�|j�JrA��0���p[�Bx{<Z���Iv��t�A���16��� �2a&�/q�۞����閹��;x����b3������?~��F��t �<|Ij��S�Pb�b�Lw���N'�r�-OYdѓ�GZ$��ť��K�t��Xi5�4d�1z���9�R��pr[Ʃ�\�Y� �JG�;�5�r�����Ê�]N,����Ĕ-��ᘳ��w[r���]������;�P���š����F���Tv>
��e�2U��}�Gs� C`��X ������*��ŞIX��Y�K�>ϟ�)C֍CL�'����/�?�#�g�.�W˟ �2:��p)�˛�}%kl���Mk|iꄛ!d�-̀7�\~�Di�i}�L1�q���U��t��wp�n}�� ���ĺ���U���4�?�����˞_�Rk�e�TjE���,��Fk�;��i�r���!T†���J�)J�Տ)�=��i�BԾ�Ѳ��LA�'`��=mՀ��)�� [�И��t�z�t�� Y� tHLW���f��ֹ����.<�����v��D�N1[�����h����d{0 ��!�mSf�L7P� Zʦ}�n}��n}��)��dJ����)jV]������ Iۜ�)����OEWFꐊ��b�CRd�V��
��/��3����?5�Ȳ*2���93 ��3�]�#ց�m����óv�F�'�6�3yB-Ŧnږ�N��<_�~k�q��o2N�o�HY�@<�iu��zDc���*��݀ƫC4&����^n7_�^�C ����Ad��A�É������S�6��3n�6&HԐ��m��� �1�qX�'=9�1�!h��o
�*������X@ȝ9&lGv�b�1AH}�۱� M��*�%�Z�\�*mS�lN/��a[�26#3�,�t-h�����@w€��Lcҍ�bq� �C �Cb:�6E��=S��l"�ͽ��>�>��>�g~IWY��p����g�5S��)���;�zH8��:���kYS��U�����c���1�����c���|LC����ms�m�J�ٴ��M��*�>��F[���!O� �'�^��^��¶ɂ��-�<�]��t��ف�2j�)L 1z��ͮ�E� ]���!.P�2����*i�f��r�sa���8��0�q۷�a I�6k��u� e������ƭU�; �!\4����{歕JS#u0��@s~�Tq� Qۥ�uH59o�V�n�@ HeQ��Y����C���� �Scn#Yl}��
/��̯�3�ɲ0"�^8с���BH=���^��&Sr��`<��MG�c}�mL_O�=�r��<G ڳZ)��E+�OיB�D��٬ؚ4�ʑv� ��/vo�Ν�e����|�)Y�r"�x�:Y����C�x{����qS�x���m�P���� y�H(G� ½m9E��)rw��j(��ۮ�&��^Zt\��:�׃�5�t� ��Nl)h�h9t.鵆v\�o
�3.4^�6E�#�c�V�j,� HeS�B3�6��La�[q��Z Y�U�;�9>vv����j��T���k~�V<Lz@���ͮ�E{���6<,�3,�@ZoJm�3�^u����_L!wƅ������)ZM��[����N���]��Ƃ)l�VE�%a�M��m��������p(��6�';n/��SvL��)N���e�����Y�&��z�(��կX�u�*��5D�#���&�e�@ HeU���V68 g
Z��뮸x��H�i䙡F�gw�,��v�90r�� c f��e�$�5`"�Jw�GA�R^I�;I�-4��;.{�����'�[R���A��"Z�6vS���W� ��n_d�tG3P_?h�~�"�+�5�4��qE�z�,���ٓ�@vb�:G;�{O�LQ��7E���7������V���6�5�m1���@�,��#R����M�5_0n��eф�����.�<�H}^��[d|�*���R����V���L���Չ&cĚXesFjB.�¯^��#`�:�C��M�C� l��l.F���?Mׯ_ښ�tJsc�\g
��&
Ɯ���˪�Qϙ�X�6�nQ�8P�$8�'�t�v
|ǡgSv���c��H>�v�����Uo������`�a�q�r�߭�o�F����VOw������G�9�'���U���8ې4�=t�6�!���ʇ0F����X��!�� Y��~�d)��K�q�ٚIr�z���w�\�f�;jgo':�s�z�V�
��ۼ\�t�Ҫ+���+�L����j��Y")�p��(���X�6
�<�L��L�t5��,��n���AWc����jlc�6� L�Ѫ�lݞ�4�~H�w�5]������k�5�'d�X�֚Xs��_A���t�.��|~���o~H:%o�vk
�GSRk�� = Q��d���Wsz��[<�l���۸S�4riy��'�a)�{��\c�xH��wu!W�f��s46������5 �k�T��Xnr�x����mX���8M?dp Q��@��Zݘ$��-R��b�Q��Blt�rM�|DL��ͨ�:���F 6���z��G7ژ>vH��c���0F��DÜ���˪��O/P��?XK��z�Ѽ�X��G@@�xYP/�;9��Y����������BW_� �J.B�H��O����DwuåV}YS��Z#�h����Oߔ�)��7������$Zlf�Y�Z�V��,'?<z��<��}7�f���?x��-6����_^؁!�H���w�0�� �q.�^�؛L#7L:��`� '�&de�p<^�������q�>}��ϖ ���<%O�������i�����p�����<\\o�눗�Z�g�����1͡d��nDc�hF�H�4q�~�e�8�*�Z��&Z-����[Q.& /�V�O�R�� �zn��� �`�1�%��mx��Q��t�ox�?�P��I�C�v�]�IKqF� f��Pw��˧Y�k � Y�I�i� ��e���24�W��a�;�L� {ܮ�U�.K��̞)Clf�뵨.D9d�� W��&I^lV�x�~�+��z�^�9�[�s���}N���ń�d�>���,J1H��hzt����I�m���W��Nע���fv3�-Q,тq"��4��#Z`�]�V� c�W�Mx{��ǟx��^��#Z4���dJ��SD<'�Dz�aO&� /�<�T�M�19O(����Q�#�{-�b�_>�Ӷ�9G�v��ߞ��_�ϞMFRM G� �0
��6�'�N�O<N'h<u'�G��8(�8!BcN~�F�g�t��q����?n����[�[��/��i����_n� ^��ӻ���� �_���p��g�-�@9y��*�ExOe$g�� ��cb;2�{�7ϙy��֔��d��O��\jFќ�˧.�SʯDžw���ˍpRs�Lθo�1��0g��el���(Ú(�?~J]V��d�r��ѡ�Ee�5L��<�.�
�r.o��E�W�3*�k�J�F�g�<�0��!Ьc���]��� 3O4Ͽ�/�uC96)ld3l�?A3���u��Y7�)�Gw���&�\�ߌ��<����3�C���1�r�̏�� S��ZP��6�+޻w�٦��΁��7����}j��y�0'����?����fӽ����H���^�V�a���#� V�#����q�:�D��:OsF�::Oƅ�$�D2^�-u�)s�"]��b�K�8+2�����on�� ��#Vl���P�F�]DԈ�M�d�R��LP�Z<�(�
��b9�v��z^�QKM����e V�X��Fn
��N��E�Ȝ����t�+�� %F>�&unX%�4�
u�nߕR��&��ݖ:��R��|���*,����x� "f��>t�ƹg��*z���P�D�p;��a��"Z�W�[V�����lWT�'r���*Vϲ�/Nmy��Y �����R����
�W�o�� e3B�E:VR�> �i��E��i��eLx�Q����G ҙpI p3���)�(�J"��$"��$b��ܫU
���l���$ Ĩ��2q8�1�-Ց�^�=�U��}�b^��W1Y��\/�q���E:M���J�;�u�D��Fk�+��E�ͷ�br5�� �����JKg�H�c�R�%����pMrzAr����h���T(+�wQ2QϕU�ȯ���P-�OK��|��\|�,D�j������dh�TQ�� -��R�jv�s��,S-����뇳daD��:�96�e��m�u-��8K(Ǭ��Ԃ�I��U�%D�n�3���5(y��ӊ��aEkE���%r]jв�J�st�� ���� b� � �hи� �{�vf�δj6X�KM�eXH�/-e � �Bk7�I��[��T.���Y$��H�wV-(Ѣ�Tn�������~^�:��b���Y�FwMv��S$�Q=���O����s<����ÏrSq5|���W�"O�U4�7)?�%�&�]G�eQ��я���͹~�.�A�d]"�<a�G��5_q
��E�w��H��W��G��e�q�N���)=�^ɕoEz��$=yӯ\�r��^t
~�*�lW��6����l�;��@����_���\~Y�Y�O���j� �
����X����#rP�C-.<�=mF�i������ �g5�6������_�2r��#�ò��E�?�v��I�k���*ԑw?�
�^(}�D���W��П����aK�� $F�ӫ��cs,+- ��duHDߕ1���ER�aa��R>�}�w����D�f8�����GX�0�_>��k��R2���D�3Eټ(���5{x-.�o���n���x��� �`m��`�
��=Y~S�a"y7Q�Į=Fъ�-|�'��˧�R��BR������5q\y��8����� \3kƣ�bD�y�`/���pͱj�� ���-�9:��B2�W,�����<coc�QM�/Rm�XtDȓ&[�z�����_�h�� �&��~���]G��j����7�v�V�'
�t]6&��H�M\��}����4=W�
x�}T�n1�y�b��T�M��� P�P�"*�oȻ��Xx�0�&�P�����MA��^<�s�g�k�ËWgg� ������Fh�^K4^�
�>�ޜ�̖I�!Q���J*��w�e�:[��e�&[^$��7�<Lւ�Z�Ea ;cƏ �'' ��{��F��3H�_����s(��T�3-��I���?I��������V�����1�2x(-���ϠmU)SEck����ϣ��{�`���[ �e~�R[o7�@�P�yK����Q��c6g�-Nt]�_#���AUS���)��FN�� 3u�ش��4FV4^Y�V&:#�A� ����P���Y��+�!ȅ�ф@�y��8Ƿ5sjƠp��2ԁJ��tQmu�ȥ�7�eFf_[£l�>JTz4 ��V��(Bn�1">ֶlLض(�Ғ�a���(����S���� �qE�,���rM��:n���J��2�w/��1�Țꐻ6�]�9�� X�ڳNar9�~ w'�1}����k�0 a�&`hw�m��K�;)LDx�=5��������l�N�����$���X V#�EPsz��rq�Тa�Y�p�Їc�C)�տ�8[����I�.���ΰ$�aP� f����v�ƣ�>j�w�4�VE?�#��t-0�'�ڛ�d�}C���� �ZGԞ�U���� � [�R�Y�d�D��=�� B��
x��=is�ƕ�u�W��_f�4�>�Q�Z���XcMt8�7�)���H�������׍�P$WX%���]���׍>�w�aKR"������I=��O�-xxu�������������U4���t-0��S������w1B�r�� C���i� d>{X,�i� jE�Ƕ8��ٯ��-ؑ`>͢�ݤ-��]-���Á��pN�`$ ?|\F�Y�@ǫ�h9�M{�p�����~���<XF��l57(����ʹ̆�FKH8q�"D2�M�) ��4|"����t*��(��T��3|��x�-J��<
��[r�ȡ$\(BMn(],��8�L,�BP�P�)fJ+&]�j|� ����1�T�P�Ÿ�KQ������&�lj�P���yĔQ�/��b:��NJ��5E�&���+���s��|e��d@II ���������t�Gs��%��5�*�\0nRHJR�Z�!+�I�J%T�_��z�J�K뇆�� ��,GAM` ��kq- -�;L��h�Q2�)1���-$ꙓЬ��zFF!��?�7�7�2���Uh�G �n�y�K�2��� ��I[��Y0!����C�#1R#>3΁ӡ��(�� �*�#΢ш���a��h*A�� �=�r�&����Li�E;B*������pj�rO˃r�kQ#]R��@.JCQ��]��4z/ cKD�.�E�1T�B�� UB�&Vj!GI�.1\�w�*�K\���c?���ґ4r!}���1eZ�I��y��
��� T
M%������LJgJ�;�P���=�<��hQB{qݎh��A�
����t�j�ż���3��� �s����Q��5�l(ؐx���R�UD�6�`?�8 H1r$C&�!H=�dQ�[;`�kt.xT~w��'c7z����[�"_i%?i������R..;�V��MS;����,Պ��!�b]*v*�ߥS���X��C�EZ���8��3,b��,W 3%o�������_�h��������X(��?��.3x=]�<�Z���п�)BJ꜑��s�j��SC��-�U,Fk��I��텩��4�on*�h KJ�Dd[A���JR�iN&R�)�Z�H\6'5���gkSd x�
��*ǝ���XE}���ES�d��J*��lK�� ��{��w/?��K����^}�:�T�<�}��o�TJ��T [��un:��?�[#ܩ@K�jJ�� �o�2�R2p�sZ�?g��2%�J*�Ӂc����,wC�u�_�d���۳�����*%D�k�ٕ���N�av�r� �� � �����T �Ζ�(�O�$b���%wӧ��N�X������r%=#���=����ܜ�\��I�F+˄���<fZ�ooU�S�}*��_e��g�����>��0�k�����C���3������;0C�3��ݾt�|�С�Y��%3t�xEIV �j���7FK6�+��j�Bi/#[7�*�K�� �:���0�X�!���0�)i �rt�����tE�T R��Q�ߨ�qh��+����!K>��C\9�o#W[U肚ጰ��ڳ�4%��Ze/0)��Dm��c�� ��$]�-��]YV�nF#��P�����T�H�j�yk;��l�z��QB@Q�$�qK����.��B�5��,͔�Ø���1mN��A��sQP�-�65LgGжC���`?���%�:���T�CGeI �ҹ�;�c����wL:���=Lv��us�v��:����gZ���q�f�JCcW�7��u�J��X�:�w>�wo/n~ĊXEt O�����@�%�x�a�t� �[�_��9����<ଃt�̕m�~�&��S"�B��r�f�4��ς��K�[x�?�v{�_�|ߠ��� �Y��Z��{��k1�Ǣ�l�$�����G�ϯN��r��a6�� J��8}�s��̃�hͯ�fK��!I�<Z���4Y��+�muߙσǏ���)D�$�� �����������_�����{���[��ٱӵ�Ww����h��E |\�r����z�>�#
"����6KBTQ0��e�}�G�F�E��R�.����(XFW��l5 ����ڎ|����~�F���c��Ն��f�GwQ0]=lG �zw�tԓ�h����u#����h>��?b����� N6`�l-fo�w¬-k�Q��p�Q0�dD�r�2O�C�x� ��GQ.�������rh�5� t��0 G�Hyr���QC.<���
a�d�S�`䌁���
�����{�����5����h�ت����Q��)!���PBC�Xf�:����y|�������8��'�I�b>� �f�s�4��h�� ������rؤ�Vn�z|���b�i����2L��f^�i�UT�] n�ie��L��Z���ETBn��<���$�W�Ƥz�� P�����s�n#~o�)��8���͂��~wB:]զ�L�o%�JP1�]��7������6�û٭��:�Mc�6h��p��9�P ���ї�yZ;�֣�V��?nU8�G7�Σۅ�U �x}D��oV��~ڴ׉3�{%유3M��K�i���Y�E��t����n��r��������g���P*曻m��O�q�,�R�M�#���w�"�����w�!�D�H�j���+�6���M�k�r/�o��������ú�*�]P�;���M� ��W���k���C�y�W9}�7��P���ϋ�i�n��W��_ZF�UT���T�#)�a�h6 ��<�o�P�Z:������"��l~�6�@�/Q���U�J�Pm�"�Z�k�`c)͋��0�!6���+�Uڍ6�Ϊ���+��y2����tu?��s%Z.&н�p`�Wq��N�����N8k"\\�U�m���qZm���B �<�����Q c0��%S�0r��#�q���neܻ�C��EY�������0����#�WkG��+4Wd��d�1�cP�k_���� �s�J]b�쭊�?o��-j�n�%\�.�:m���Yn,o��cg�gw�c�;����n�o��A�p-�J��JR5��!�� LC[�'�P����t�����Uf��(�.fұ�l�EG[&�>%���$ޫ��%�.��K[� 7�i��HM� ���-������&�J���d���`���� ��&��枤xf��sE����M�Y N���{Y��E0����@�-�>��g鰶��*�O���H�Y��k�t� j��mj�/��q:ͼ�_,g��KI�U���ǹ��[���z�]F=I�w��� �M�o��ʎl_2�#^�$A�֧����%�/i�<���s�K=�j��[�����z �S�8���]���t�e\z���61��` �R{ಇe0�4�l� T:�g��:T;�l Ʒ,�i*p��}����>e�Y�-ƿ�����w� � .�Ն)�z�>lsT������ !pKT[�7<(~�SN�mI�M�M���f�S샢ӽWȿ�G�zfh���p<~�|��4�^u?r]"��� ��Y���u�A�r�6�Oc+���
ݚ�Z�ȃ�ZG42�P�z^��V���l9,�%����?,���Ϸ��}5��Ww���wO��研ˎ�?V��H6�<G���>���p�����I�/u�b<�m����l�����<\�W p�w:��]�F:�iQm�C��{j0�Kٰ
?֡”p��t��lD�5�f���N�����:���uߔ�Ԭ�(�?˅ߕ=�5M�@m�|�Z�m0��)m�Y��˓/߮�c��c6�V��b3y@:���ņ���}9����gU���m̱�W�s�:�[���5t����jX�M ��ء���f׭�X`W��������Ox��ʨ%(��� <ml�T��G �4��Q�md�f����mP�*�kC�זd�����'�}/�~s3���kͺ?E�؍���q�eEړZ���Ń�'M�gQ�:fWQ��Y�aϳsϰi��������\s-�F��Z\��,����l��xƋ�(�����ۻ�!�%�QG,�N�pZ�]���]zy��N|�Dc�`��x��D��< ��kdW�?�3q�V�r*��s��#�� D1���5����`�������6�m�[�r*�X�s{;m��{^�����&(kd��VNX9p�H�"xR>@���#��}�/ X�ܶw���I��JZ�3�x�̵̲k@�t��j��6���������6�ymI��mg侌q �C��8�܌��+��?�S�f���jJ|� ���kSE���S����8����Pϥ J8.�a9�H�1��Q�2���s����`�B\�8^�(�r=�;���b�t|9�y�)���|�:z����:ti��lZ�]E=y�}U�"?�}�s(��ߕx=T~�V�v5a�n�9?�*l�_�U�^���0?�*X# �I�5X�K9�@�m�*l�w�7����=��H����K�~o�����u�����Pt��Zθ�ý��BQ���*U]�� ��PT��v�]��w�<g�P�h�*nc�� � �
�,�b{�3@{桨��!�����P�ֱ����: E��W���DY���%� ��0�99FX#ݤ�[�'�&�`��C����c���;Si� ����ΛP�:l]�%x*�ߩ7����k�&�1ob~�7��:��� #B5�Mpǒ��M�����T�e[�-s,��.0ؾ�tgQ��L��Ӎ�O7�%g�?�)9Zw6�1�Sj���B�A�QA_������C��Hk^��ˋ�Y�����e��אt��-��ؓ�<+���s�Y{?�G���GƆ���n�w�YZ��8�Z7�W���'�����:޺��k輡=*���E�Y �(x�F�Q�[9���;�p�}�U�;�+��WU2F��/wex -�� �Dv� -c�{��oӿM[�IԲe�荹��M÷�wli�[_MU������׌�����i�7B\���T�T}��ezڊ�z�H$y'���n�f��� ����oO[��m}m�:�y�6�?_�����-#%)g�L@��Y�0̳�;�C,��.��6�t�z�-��%k^W����V���[vc�zZn�}�4�n|<�5O�~F)-���ޒ ��2H���QW��|��5'6$jR�d}��G���� �7_N[��bu��Ei����t��^� �?��5�6���y������֛�����k=�-ާ%R��w��!� -����ll�y��Zk�FcQz�N��$�˭kY�<����5���#��㥹^� ¹qN(�+]+K �����u]��
����m� t��N�H?g�J��wړ�Z�����(� } ��跆�p��o2sZ�ye��� �M|%���'�h�tL?��OI ��Jb��\-'w���=B��4h3�����~�Ľ2W�8�CϤ7�|5����d�ٚ1�=-�Cq� c��%��:�@�8�C �Dp��<�<.:�ڜ���(`��tR ].@�u��r�A�4)2�C�4��� A��/��)�J� �K��q���&��M<�%��N�[*j�Q2�)�<�:�C�P���|�_�32
y\�oH!��� �#\��tz�������䍆&'Ls�N���B@�, `l�Fr�ő���8���"1��(����h4"���K�A�bOx�\z�JC���r4��P��t#�)A�Z����iyP�t-j��B�p�EIb(�2� ��FO㥡NQ(�
^�C�+4ݜP%tmb�r��� .�;Zϥ.��c;�1�8���e$�\FH3z�|%\�iU&U��*�O'P)4� ����n�J�MS:S�ܱ��r�.h�a�I2� ��b��2��Yz�+15.����yA�'Jg�����q94��5�&� �z�vB����(���'�c!)����`��8��z?���.�F�G�'��~��������BG�H+�)H�����U���\\�й���z�h�����ե.�0�!�?ݾ�p�V$��U���Ս����oZ.?d�5�^�s}�S�uq�B�NZR���K���u����i)��n�9���3xg1�BIE{�3ɗt���[�+J��K�,0w}{������Z���d�D'�R2�TK�+-Ic����0;h9�As��M��������x��#%Ƞ<<�#y��1�J�O(ά�!u,f%��5<ǐ+�Q%]�qm��9��:��?��)V`.%?��Y�ުn�,�T��T��t��\���zb���EY�q&�`Y���D���3������;0�ę�y�n_ :N�0��s��vIDŽ�(ɊBC Q�F_\~c�d�j����4+EN{ٺI�c%/ t��#���K����PI� ,��AשV��(\�*A��e$�ߨ�qh��+����NC��;��+�`�m�b�
]P3�Vq^{6���d�\���&e���͕xb�<������k�o��Օe��f4�JUl@Ks�#P�#Ū����߳ꑦF EI���$ �.�L��ĹY&�)ч8���87'��(�h.�)屼��¦�i���v������X>�d^g�0Y�:�b��vT�İ.h���wЍv�c�i���a��_g������tԡu��o�$@8������hv��14v�}�\w����E�s{��y����G��UD���`���11� �QҍG ����n�Պ�!��j>��8�n���M������C�l YHj���zW�YΊ���(��,0�����QZ[�Lxm��u
���F$�I�ϒ|�)�f> �1~K= 7��J:�34-��>חS��b����-�M��q0�Z}��;_r ���] ����f
���)�?d�u�L2��9�d(B��1�-T����߲͸��r���TK�qڮ��9��xr�/�侐P��������6cI~V] ��;�nB[Jkri8r��m _z X�2@�}s{|R+��܉���;}} ������%˾����������׷����U__��gxc�)�ɁА���͵S���+yȪ�İ���>���(}�
�5AI}ۄ߿��7.��*?���O�@�1W��`q�9�� ���Ƿ� '��ħ�b}}��o�l��S���DZ!9" k�C����R��>�(3g�,s�o�D��#���x;��Y�+�5G���8?>Q̏Ϯ�S�2��w�# sƏo*��ca|s4�o�W��c1|s4�o����c�d�o���Ns?��뛽������}���7��x_���Z���x�'�xU�������W�Y��>�������$?^Z��f�)�#~��1�L����5�~�p�)X���}�4�t�0�GAa� �Z����b�����8���8��D��^NgO�z�M��d9[w����������.C���oh�� .V���<x|�
2��>Z�2 �%T�%��+���,Oބh��֠��xᐁLg����
1���E�ߙ>�r+ �&���!�,,���F�¢�"���R��,��_Jj����]_�V�~�Ű���n��)�A2;�Z>j���=�xӯ���I�ϒt�w�kTf$V�*;�т�<��p�ׯ~~���6��
x��RMO�0 �_a��T�&��B��aH��Ĵ]Rw0M��$��ց��!Rl?��b'�l��'�,tQ2�J�7��$��������R3$��$��d�4��x�M�k� [�G�v$Y�N��=&�:?Ɣ�T�aEQ2�g� J��1�up$R�L4��)�i�Yc+��D�6��� �2~`xGg%+��a��ñn��������e��ʮE��j~T#%�lEYe 1 �LOw���#�Ӷ���czG�4�H�i���Y��{���8ou���nnM���)ڕ�1l������:���=����Ȉ_��wd{/$.���zx��֏ۚ����;�+�/�,2�
x���K
�0]�� ��@ī��/ZlM#��J���f10��2u��>��,1zm�dQ�h9 l0f?ڠ�ϑ�xR����UP� D��}�Q��j@t!�CA�~�Mn��u���"ϻl�=��z+4ͧT�E*���0�#�i���g.��� �'F.
x��=ks�6����+4�~H��C|J�w�c+�l�ƍ���z(r��D������ �/%Q��xM"�x���p(��h�3������A?���^��4�k��nz���-�c����?$M�'Q<uS����gI>/���&�3���B�=�� ��fڑ}d�g��F���M�Az���k��5f�C�;���f��`��"
?H��s{8���h�Ʈ�&�?��GhQ���������<; <<K�W>)&��ׯ.���<vo�n/����M�Ն����#~�=�Y��7_����%���w��/=���M�-���d��'��Ӳn��y)!K���瓧�`1N�,�eJx%�0��0+`���Q6Z��LxR�Z�Th��V�)+?Ӌ�}J����s�,�����V4O�i��+�;1ȉ&�0+�3� j�0�H��\�3�Uc|W^������A�M�~v��0��N����f�S�wS�*��y��"��P���|�. jU1��������I���p)֍�)�"��>����/�����_Im"V߸�(!�%l�j������O�0��-ԯT� Ռp�T������Y4[N�E"�V1�O�^\?V��;YF���37�\Ι��
 �Ϸ��SV'�R���sq��¯!׎j�r��� �k��f�6�ܰ?VQd�fj�z�����~��swIUVA�¤mK�Ҭ<J���&4� PnTJu9��Bě ���w��%���#����Y*=�Z������:|��!��I>�����sjܧ���'ڝ���;[{���U�M#�a�8�|�Ns���̬[�o����߄!�~൳$^1�u��_��$�WE�*uo�Y��y�cP��� �ӫk9�%�h��rA�ޓd1�ΈW��Uo&�'��b`��h���2�{5#�&c���נW��{��E �i�D+�)�C?�觤�����bJr���e�AQ�ӳ� ����0}B1��L�)�����6��I`2��U��
�j�c@j�i�zq��g����c�1Ď�AW���2hC��*� �d�U�� �����oL~W���`Vu4ʎӜ�z%>�AI��;�� ���+�X���t�,�Jx�nmB܍�T�q������):� &َ�<)��Ss�!,��%K��V�:^�֌`��*��Ī�xb� j��7zd�#��6��U!7��Ά�A����}����W�ې� C�Q.pE��:�
m�`j�? <�v�������3Dz�!T�/�4=�P�-�3�!�{��� D�B�X������k�� �6�b��\KGȄ��!6�A���<N*g��ܚ�!� ��5D�Z�0��P[�� 숒H3���]I��B�6���o�V%?Ⱥo'�h����
T��H�:�h�`( 5q"C�IR'G`s��~��n@����X��F�5s���eTК>G�4l�f4n��͹ I|��LB��F��{���ץ^p]/PԒ�P'�i����NȩuZ��,bt�&c�&�tb�t�4��$��L9r�{���-I��C:2(c;r�&���Am��ե6c����WG�� t��"3k�D�9�5��<աA���}�iӁ^��Nr�\>4�1+uwt�a@���7K3M 6���l#��B��v����@װ| ��;!����b��@� ��u�Y�e@�1u�MLϑ9k��Y���?_ͪ����<(7&O�xqsJ:��Ń� �ᘸM��<b��h�`��[<�1���o\�h��c6��dj�Fp�4��� � h�۰L���7ƆF��m�W��!�C�'h������X�i�m��E �A�րGz�l��4,R��]Zfh�e���H+��L�0�5�
ȷ����M�R[sA�`HK �������hl^@w�ܓ���i�5�o���8��f�\��u��F����n���sl���Ά��V�5jr�!� ҀM`{��r`6rу�UsطaN��t�?S�S��B�?w�=`����R�z�/.߼�%��ֻȪN�������Nߝ�ޫ��޾a� ]����{}���ǚ����du�������� *X�������ɛ��ɛ�rEoG�����{�#���io�L�ѥ�^�Ö ͆<=�<�x��Q�첬A�6Z����q������Ք��i��O�`f>X�L�]�hG�ŷ4��e��� N�K�U��PB
��V�����}�����*y�w/��9'k� ��|q�)j&�jZ����
pDF�ְ@&W^� ב��xzL��ɉ�^ 4�O�t�2�/�S���Hyl��/j�F�NN����;���|��u��Kj���+�������YC��EF1u�'�-�Ȗ�ZTگf��Z����T�Ef����Ӊ�.I3o‚���@�=�V9B� �Jz�7�Hb�~ rp�q=��?.��d�aM� ŕ���� ���qd�t8�q^�slX����$���y<:�F�㜜���:�<�K�Hk��w�_��/ �N����/Z�C�\Q���ڝSgd���e����6�!*�h�Y�P��N���4��1`y����|��A��f���<
X.��� zz� _4wcw�S_�;����l?�����!�J��s���Ŷk��ۢ�)Qq��5 z -���<[�:���IM/R��e%��^�t�Õ��� ���<�"����T1a�5��C��{5׽��żBs%J��m����j��H��B����3Ž"?埋�EQ9�[$���#�:���j”L]�)�� Ǒ��@o�C��I�ơ��K��8I�$=�ލoM��<��x�Q"���g�+�n���vt����������7!�I�ı���i�mbC9/N���%�
�c��r"�<�ʫD�픊�-lK=#�jp^�s9q�p�D@PW�D�HA� �V�,��VaӎJ�0Á��\A���� �d��&\Ƥg ��[ ���m��<��F�x���'u(���Ȃ������d��2'��1��U��5e�5⧲�[`g ��;�Vҳ�]�S-IL�iu�"!$��{:I �1э��j��NiT<ȅ�so��>Q�X��b�\z�����I���t�MB�, z鮶��NE�^R���d����~w~�*���Q�U5B�8�)� j�]E�� �Lޒ4D��@�������'3yԺT[z� /�+�6G����y��$5��M�n`�ڙ&G��h�qZg�x��sU�`��_�3�}�(��G��|�U9� M�E��wl� �~����+�֛h��h���u�e�Y����� TQ�vk�l�}s���2��b:d5�XO�oiD� �{^�>@�zk#�Z���mµ��%*�Pn�u�-���i��@D��[�nch�m>� d��v`vd���b�9&��NMͷ�d)�{r��KN�s,q��"��;oC=a?�ͣ�)��d��#)>��d3�T<2�y%��QÓҁ�{��|�{��=�ax���/4i��r�C����UkJh�=yH�ld�T�hCQ΅�Ǻ("�s���a��E�bv�'��BdV�`7�й�A�`:�Oq��1��u����į����5��kR�פ��I}_��QR��}�8� �z����Ej���Ř��w}H���=~��8�!}��B`�>��g0�0D�h�n飾Ny�Fb%m�ӧ�䀓6Q�r�8+ȎpI ˻�ĕ���f� YR@�!�\lr�le����|q��8 �3S�3�!�M�!��f;�Cv�Q�W0��KL�e �a��![��m�a^����e
?�ŧdz1vS��O�SL�!Az�����@��<��;�-�lނ ,�E�nX��@'�E%����D ʧxi�`����:����� ԡS�^���{h<��4Uu:���8����! BH���.,2}�K���y���p��=c����i4�)<�iu�@�]L�x�Y[�ΐ؜�-����-X].�����A�8��G���s��|h#K`j�VA���n���l%�?xD����q�������O?�J}�{~�&df��S�0b�s�0۝�0��tq�m����Ҵ���Q� �Cl�*�,�q��h d[��&�5�_����I�1N�u�Z�v[h��� �����:�D�n%���&m��c�|8����-�_�Tʡ�S �l��w� �H�a�r�PR��Ɇ_M��L6��x�2�1U.��G �aK��-'F?=6��k����"��|�tٱ�>�|n��!�x�@�� 7�KV�j�Zg��֍�E�c�l ~{�e�0�cf�emq�9�}�1Z[��y������"���%��t�m��3���@Ta���#�W+�!V��ݯV���CZ���Ge�޽��z��=� ��%l1��~�����%F���зwf�n�r�s붆r �����^�w���읻ؖ8u�a��NmO�[b֥��tWNpo�h����Z�]��W�&������#2_�����t�����}llw��aiJvX��>�ɀ���~/jH ������� Hu��o ���Fm%dd�^
�zҰC)h�M8� GW^�-�.�5�.wh �C�7�f��; l��u�B6�ԩ���!',e�t:���������!t����å�>X�z)��.�b�d˽���;mQ�r�� �� ��X�v��-f{�oj��6N�ގ�z_��=aw��xLv��m��dA�v�����ջ�8up!M��j�ݡ���J�� ?�\��ƒh�~��Q{HKx\�Q;&H�&��q�� �M_�X5툮PФ.m��a�N[@;��D��ڲz9�H�֙��Q�b���%J�EjK�V)UN[�Q[b��R���-աVَ
��ltQW�t�QC^��J-a��c+���J�[��� �� ��mB��� �P�X!Tڂڹ�&aIZ��JE��GM8��HJ>���v`�����0����1@n )mu#�k����vAK����f��.�i-�HWo���Fk��R]��plK�T���:}�;� $G �>O���ij�j�-j{
�ۢ���o�O� U�~�m���v󀰻Z���ݝWy<���#CiCuԝZ��Ch�S�j��Ơ.g��ӿ�O+H��v��:P�NAw��ݝ����.��6���x[�G�n,du]��,��4j�ӏ�_��Z|s���*M�^�Z�(���x�j�n�oh�[����W}/�΃�W���o� ����kG���gR? �# m_�\����|W-kw���˫>�!��/�l0w�����,�-��"!�7L0i�H�$o�||�}�:{[}w3����A��b��.�5���o��<t�b[|K�Mg�;���/'<7�
��"ǘ������З� D��K��^�g�:��ؖb�7|o��S��Ƿ~�e�� aq� |�:eBO1���T%y��.����u��}��4��$Y�L����.ݘp�(������O��w�Q��h�陘���{N!�h��K��8v��Z� =^���9�{7�Ⱥ�I����`�V(�Q~�/ftT�i�y���|����lr�%+'A��=���q�*�n��14��c:�cip��q5��<��ex.��5��k2F�o�����|��%�_��de�8dȑi��۳��4x���Q�r�Ó��[�6Ȑ�@Gc`y���h�! �PC��L�ր���@��?���9%�󟦗�}��鯧���.���Z���
����&:��~�K�t9��������U��gY,
�٧�>'���]� mQ���vQ�������稜@I|jJU����3!fs���+]�k�Ʉ�m_8��'a�f�WX���|-y텄�FX[џT������A��V�^t��f���o&/��[��0��P��<��3��/9G��g�x �}�/ֲД��G%��6�y��E����cK��w�(N������'75&�D!TpH�G�����Q�D�J@3bT.s�_�ٽ��P�p�*�K�'����|cF�̕���7Cb���Zqp���<'*5uO��p���%�2Q@4(�)Y\�N8QhYf#˚�����/t&�N�|D����\�Ju��La�|5��xJ�L���C!c� ;��3���2v%�J!��G���`�g�W�:�o�J-5�O�9�ט�.bC .b�s'FiV'2#B��/pH��B��7 $I���h'vb�O1m�I�O߶?}�� �)�S�n��2�E���2�\�W���3��Qe�s΄C��w�ӠF�'^�i3��U�/��C��E�fZ��⊈5�1#���I��/��� �w���//����!u��k)�9 �Ӏ_~ �(l1>����$����X��4�
�>+�SU�/b�U�/s�"!�-�u����G��t��v%o�� `'���� ��v=^^�["������H�lȽy$AeP�1q�k_�V.?U֍��V��|ݸ� ` �iD��*{L�͉�"э��/q�|^t< I]�1�����#+ ~��)f��.km=O[U9O�g`����mn�8�o��6��C6U
����f��`�jc�61�V5;���φ ���,X�֒z�"�F��=��\��)�N�!�>(�,�s�h�Jk쐅�`�WSF�Ri$� �7/���E�,c CvL�);��7I������Ѕ�q�JY�k�_m�ʅ�^+��q�Nh�r�Y5L�� 4o��6��(�W圲�P��F6����L۩�f�(��J{U2Ձ�2Z�͖�6#XK�mH2ɀ�h�����U5�t= ���W�r< Q��g��\���`Md}�*�>X_lbleTb5T �����p��탚�T���rP��\��g\c�.
R �8k� D " ���y��|�O�H�Z�J��vCY �$�ޝ���2d9�V��+7D�&89���nqF���S��~�����x� m�휬e!��T���#k����q����d2�l��/��8���[�F��
4��VE�T���ز�/���<B�8V���º�J÷Ψ���ШB9�zTF���ǣ}�#Ӿ�XU1��S'�;���۵r�:�\Xn*�������@a��!$Ut�.WD��s꟬S4���d�%}�֔��ܔ���7 ���͢a����R�ì3~}<���le<[��mCi=����x/O|�{��z��uȜ��vOӪ{�L������]q=R/dɲ䓝�<[����i�u����uɏ�oc�.�Y�����k�p1b�I��i[���H^��<�+�f1f¶ݔ!�d� G/WA�Xl�߉���Ub��[Js�|�%>��Od�n��/�1M�t�K�������ږ�Z��Iha6�.e���
��%�$�V�e��?�~]�8EZ��Fi���`����T �� �*����^"���,�mF�F~�b/�D)�y���S]_y�_�������_}&i�%����.-u��?r+��&Y @Z�щHַ�V��y@��t�z���i�;I=0����r 2��2�?�vG�
-o�8]��@i]�Vq�eĖ��\Y��a �%$kҬq�Qn��-F岎�Vn����D����!������ ̞�
x����
�0 �=�)F�2ă��-D��xh�L��)m&�ػ�6�1�9%��|��"�m�E�M1|��2����?�U���
�<��+��%� I�m>\�R�Y�to�t���E�oF������^p�`�pR�J$������hx��8��~������N񯌇���=ꐶ������5��/�̢�
x��T�n�0����@צ6E�ιR� ��A� �!9r�H� R��{IK��"����"����,+5; Ӝ~x���Z��gn;
�����d�O��Π�v�4�@�G�s�+A-ZX�7�ץ�n�[[�v�&���-G~��ܱ���y�(��2WZ���`'c�@� Xl��M����I�O��ô�w����`�.����̕V5l��8D5��֗�û�7��7a��{*�R����l��l���K�y��F��T�[;�*��Z�|^�B���p�W?h 6o�x�o��a`�Z�fx��P��ڃ��m�[3]� ���ѥw��!2\V�1Tj%�jRJ�@#���X8�`�\ �����.�Q[�VVr{xΛ�/ܧ^@i�˳i��A 90����4���u�p<�����
#����O�uG4 �,s_�a�,�9+ ',�d��C�&<��NR���H�$�򸿤RrT���_�=�6屟��~j`u1�Ƒ�S��96KC�y1�hXDQ��"�<ZP�b$$�f����Тb��b�K;��� M����o�b���o�������M�n��[�m�:���O'�s�Q�߭Z��
x��T[o�0���_�sO���6(E0�����̱��i�N���i�vӄ����߹~>� ���x�^<�G��*tvb�#���Z�+“t����0�S�1I�x�=�q��EC��h)�0-rݘ�1C:B�=^������j ��ω��t� e���yp� ���w��J9kˮ��~���"Eg8 ���v����!���������e�����C�O�,�|��<��y��?�Sb�1v��Ⱥ� ��%T�Svy��q�� �]����R�����}<�����;��n���%@�[���ݓ-�7�� 55T��q��&�w�c�Z���v���g����aZ��0SOW^�pRk٩t�}g�,懭�Zq{�,RЊT-� '��K���ޓ��ŋ2��uiD!6��������+��j��#+(HY�4�o꺩1�_����s�p?�u��أ�#F�8 �3/�����Y�X� ������INƣ8�1M�!I�@՝`.>�z���Aψn6�*�:�NSc�dY� �9�I�F63r? )x �� �RQ�<�^L�8�|o�(_=����^��Տ��M�y�q��6i/�{��U�З��Ow�ܴo��_��7�N�7G�9V��EI|S
x���I
1=�� �Y�Aįt6��D��+��V�����iH��n��eB�<y���A��62 ��qʊ'���g�\"���q�#:�*�EA��u
���ֺ\����s�<m��~���Zy��ճT��N!�=�q���\��/��F0
x��U�o�0��+��2�8N�to���!6� �&���ZbG�Ӯ���c7I� ux�S��w��w��i��I�����p0UV����� X�6BI� �Q6��v��#�2�d �S�W�����U.�:���Um;:B�[^����"�;6�9mI��gk���t����݂������S�(I[�����6�v��r0�X8��˷�J��R��˧��kɬ/����G�Z���Xe����Ҍ�B.�Q�Z�ga�E�����^�un�>��4�dEք�>u?z�{ܥ�$>��A㰍pXr�� :����� AP��U��}h*ӛ�hؖ+� ��x<~,Q;�n�jc���<��>'ڍ�}��ՄY3^���Ȩ�u�`�,˫�3S(��jwR��pH��H8�d��-0��=1��_T�9p�ʊRl���&}�������>F�{O %��V��M']՚AO����
c���'����D$ƈ�8�9��1�<�y���I��8�RH���)b�$��#��T����ük]~��n6o4Y���q���Q�a9�A>�p3<��iLq�"�0F�$N0A)�I�L��E�
��ؗv|Q�񌳏hY����]���}g�*N��Jf���w*����i���^��;j����
x�mTMo�0 �ٿ��v��nQ�0��m�i ���0 ��8�l)��A��>J��;D@[�{|�He�������Qo�����KXiUC���0����MI�1����d� �V� 6V(i�����v���a$����w�TjvMP��0�8� j�ao��lG�=��=��CX�g���Z����ԥ�J� c�&�J���ɒ6�B�D0�U#-4�
�p�>>���s�S�l�t %��D-��4�FK���j{�L;�? ������]���dѴ)tBg>�)ϼ���_����* ]�Jn���A�����8�����}3�E��TEq��h٩�H�q?U�.;�$�{e�dk��v&�bc��
�7�_�`����$i�\�a�Q����Z�������L��IO0Ka�0���`����v͹/3���t2p�dtI�K3~6J.���-2�ϧ�����P�[4��5α��p�
(�$� ,����p�^��ɔ��H���Ӊy�b��{c�2�M�х�xG�`��1f�(��������K�uD��p�c:�%��lg)W�*{&�WFg��&�"�����wZX� ���Q�4�c�3v�:��*����m����?��<+��\v��:wk���)>" V��+h���ζ
x�+)JMU02�`01��̒��$nV�=w^�0�uO�p�U��\C3���Ԓ��Ԣ�d����<�MK� ��g��^ N^�7�X��<�� WG_W����G�/�3[ZTl|�)x����,����y%E��%� ��N͖��h�����t����7� j���2 �*:w�_�>i�I1gu�|�����%��@y�`�p�E��E����C~e+�� 4U�
x�]�aK�0���_�2��̵�A�����o"���5.MFrE����u�އ���}������UY�1Q�gh�P�H5أ���pC����� �w�f�2n �l��g�5UP�P$}��"�U;B��4�۽��*� #�w�#���N�� *�x��ι��؏��be��X�F�0[b���o���h�u�a��,.�:�G ֍�;�㉃�����:IL����G8��iQ�'�ɸi�d*�F�c��1��ø�C�DF��Y��K�Y:Ξ���-�#�
�ه�k�9��gH1ޜ>Ί������^T�R/}F���<��`��
x�uTMs�F ͙���0㺽x2�qmy���x$u���$!-��.�����R�]7͈ ������Ƶp��/����O��p������-|���ks{y���5�=�T2&�¨:
0z h�P������k��윇��`G>D�4 Tĉ�`qz�yT{�(j��K�"���q�V�GP���A�'
����~7|
˧�8������O�:g�"�z��E� �EU�5PKЫ.���p����c)��Y����G4܎s�'s������B�i�HWǖ;�X�È%6��e�PύXE�y .eUZ4nj�sF�^�:��q�zn��y����2�᧜��濉VB���T��j���nDD<M���GZ�h�IS�A�_L'�y�Rֱ��=o�\�j�d��+��-U�+���<�.�>�pi��8���X�&�y7�`�, n`O�'rBf��� �O�6�>I����ys`gfQ��w☻y��W����9RU�R>/�(s̖g3(�E�=,�}r�Vﯴ"H�b^j��B�|��H �� h�{`_�Y����|��%�^'[���C�~q�_�D~e����n�|�7������8jQyi���d�aҷ�/�\��L�M��4���;�(ym$�H>e-S)ʫt�\��J�dݴ8���is��5e} �U- L�{�b�k��"� �b&/:i�{�ؠ��!,惦��k����0��'[�$��ケ�稡�f"X+�M��%�N6��\zTJ$b��o����~ ����;�&^
x��=is�ȕ�U�(��J��}���Hj��R$���fJ��X"��X����}�F�*r�.SD���^?�9���=B$���뫣�(~��?�<�pt��]�M����n:�rO�E< �G��۩�V���Ի��U�r��U��=�����b��g=�/U+?�Ȟp�� f=���y/�=�'���q9�o䕁s� m���2�Q���f�r:� ����0)�����E�����jaQ��ϧ�i����K�p̀ @&@� P�P9���)PiH`��t��{�'�V� Xe�<�<L� Um BJ��!$����T �D�l*��T���xbS�ئ�E��65���qN��*�w�)�9�^h�2 �� �B�*����*�0X���$������G���f��fD�2�l�s��B���uה�s42P5(���T����c��N���K ����$�/@��D�NZ_�t=S+�A���£~��)��RLu��)�c���#a�b�sJ')���Di���zjŸJ����N�\ΩcZ�U�% V]NQ���҇�:81-��Gey"%�'����g�ą�'#�H����Oc!p!U��O��(]FZ�ő�]j�de���rQ��M��L���D�1Wz��c�)�k�"�2i�h�OJ���� �>��I F����9VM� B��<��c����h��86dȱ#��X���Pʉ��ƜN�U�ل��a��+_�������v��Wo���*���$�{w���z� ���G�������4��4�*������f�-v=�4��`򆣛���UVG�g[(K����hpy�c!�z����{��{E�ۡ�����������w�!�F5hiы�~N�x7�_�<�60����1Ga�TþҀ>*�d箒��΋%ř�d������%�2)� a��R�e�s�Mv�n�L$�������w� ����В��x��O4�F���f45Km��T����
%�� ��A��}X�P��(&q�sx�����Y�uV ��4w6:8qV o�J��$��5%��:mΙ�B��P��M8(Կ)Yxb"� ۯ������_�D�㌊��5%:�$@��L{ѐ�!��r�/��`sVZ��Fs����M��� ��V-�1��[0����W��:�<eT �*�M2�ТJ�g�e#��yR����v�� )���6���9,�<��HCȻ��m�0��r�3@����#���A�2�J�.:������^`Z�LX��W©�Y�ظ�=?i�����j;V�v4(DaU�,7��9v42T���*��P��}�^ U��L���H)���=[�E�oa����l��ԀJC���,"�c��5B�DƁ�0 �?�w%����ۘ�����&�f0�g�� �;��������O:\�\����� �<�/!#N� ��[V�`���H�����G3>�.x��'��=�{�~�s� o�!�8:�jLJ����<���,��8�-OW��L�:!�O��i��1O�Ep/����|�_�@������,M�&Վf)|����?�"؈�B"7BPF��7�R��ە�
��[�Ȗ(�E�C����i����J�P�݈Z�����nW��F쫇� ���M ��ʢ�]� ����f�_��lo���U��m�����E�K�x��F*�oǻ�y,���l<_͢f�E\��o� ¿��8� �h�(:�=�����a3j
����6���4�����V�č����rFŖ �P�G��DL� �i �4�H�h̀,� �@p&d 8 ��Aue ��8��p IC��!cL$
@����@EX����MCIx �l�ڊ�_��i,� �������-��UF�s��Ji�9EG�3�><=�����ݙ�_�O���E�3@�z���T8�?9��.0�GO<Q�Q����_ �E��q�y���嘘�!Y�d�r�i7�[|^�(�a�P���'��;�|)���4^ԋ&�J�� P�����s�n
���T��h Uנ�9��ATE�=�)�\� ��[��
��Ё����
�ߪͶ��X�[o�&�mc�Ͷ�$Z���s�DxY���Xi�|֍:�k��:��(�׹w�@�ިj���>j��W�
�Qִ7�3s{%삠sM*�˄�|[(�s�:�'��T�*κ���[r���b�?#� �R ߘ�X�/��Y��$$�E{PAhoCE����I��)�D�H�n���K�1�v�ε�,�[.�n:t��LU֪K���u��=Qm�u��$���GU��sՇn�G}�6��Q���/��8�y��#u�_�K�dA ��Nu3�J�ơ��Yd}�^}�����A�hV��RٮQ)�mצkh�kDJ���R�hϡ�V��[�XF���a��K��1��J��&��QzxM��Lg�m�x����
-Sսk�Pv�jγ���r���cF.>�Քm��Qo���B����>,|;qG�H"VLa͛��1�����k�k:�Z[����0�T�X #�ȅb��5�uw���vo��`�1f�.���F ��K�a�kAt����*?���"6�A�pKA�P�X=[���v�k˻jlٙ�؝�'��Csu��kғ=�c�1�d��%���-��‹i�\v$<��HW���ni ��d9Q<_�F8v�l�EGZP���xG]�K:�/m&\禍��B;B�(�:�W Y�D�^QQ�/�
��]p�[�P Z������*�{�a%��[X@|�a�� �zY=pX�Q����)��͆����3�.��F�v�r$o�3jZ��,SHnO�ۄ��W��o5����HA@���,�K��Z��a�R"���)�T(�=�u��-���V�m'�����?v1��!q�����Nj�(��9�E
�������8~�Gz]x7����H�QK�-�����E+h8������Cz1EU�-�p�ީ��v-�t���D`�n�aS�Qud;�!� 8R z� ���T٣��]ǎ�#vT9��u�ͯ�-z ������'>�h?�Y���:^�ww��;��w�l�^�`[.�\�Z#�`[�@�|1 4��mV�\����W~H��+?�X�`�ۛ�&���\�њ��n�c\�fmO�^_��EwD��x�V�ӎr��G�65\��`��Nw���͌ ĺ+�{�E�}�;v*���;�Kd��ds=�[K�:��'P�0}� �$r��DG������Y�w���#�c�J�=�jl�It{�_-����;����ۆ�z�ݝ�C8;��垒u~J
����n
�^�[n���O�E�����р�]��@HP�u��q� n 4�9�X�ߣf�c��ڰ���.^�wVc�nqX5~�F�9��Ԙ��1=��Z;�bw��{oW�2�¤��"�����h4H�A�%��"]�9��c�.�l:k���κ휑��:�`���Tw�"e�b�m���{��~����R{s�X/s���l��@��"����5eq�w��5 \��dӖ5K���b>L�c���{u��o����������H%%z��H� �5���.�vn=m 5_9�]#5�3֞e(�l4��HV�fk5��r;*�����WUiGr!�甒�i�����l��g�"��ٺwX�qk��qTx���w�� w��S�����x��ՠ�����-�Ր�� ��ɳ����a.��>�������t=iF9ع�@<�mކzL �q�%��P@%B���Pp�
%#C&�� �`�b�%SQ�RA�P_�%/A�Dd ��+6��k��� ��u��z[[���I?�}1@j�!�%ތ��d���5���Uh�pC���*\��E��S\�j�Ð��*�AV����:�
�:����pf.�[G�k�zv ���K� p�P��QS���rھ����N; �_�C���8 �v�vW�|k����zf�;苭�����y����Z����7�0������ x;o������ ׻�M��M�l�M�_f$�k���ˌ���C�6/��a�G��r�]�v3��L����}��~US:8��AD��*29ٴZ���`A�꒮��5`�f!�����|:��q��ϙnMl��H�Q�L��%�yf�g���G�s-c7lln�-�P3H�t��,����۬;�Ա�ug:>��:��Ƌy��$� F5�ڶږk�������lu�K�͖�� :&,��|U_*;� -�{��_f�yꓪ��:,��Sy�ų���������V����o�x#YR�u�XC[�I���R�p��I����K��i��/,=�x�w˓���$�p�e@^�z���~�:}�9y�3�?���.^zVlZ���m��Y�v
��(�D��<r`�P��� �%�&���<�����u���4ډJ>�jo�qkU��6��{/Q<`tQo�.h�����uQ�;KBi{$x�z��k;EO �vgI�6E�l���(i�\�x���{2�W�E�_���ׂ�<��<�d���ys����?N���~��_?��{z]���KM���� Мi�Q�k�ڼ�<is#�F6h��^�"�(�4I�6��:ȫ��ҠN����a ��z�B�u���@lK�#�e� l����`G�{�Jg�ȓ�祐l�y_g)��3�W��o�Km���U�9�u�Rix�����n�|��'��*�Kls<��_-�2��x/��3��~M.Ľ�ξ83��š� �� @ɘ)�@@9@�L":�*�2t m� ���6!�L�]�B��*�2 ��&6��(�$��T1��e�$&�M ԫ1��R��2���*�Pj��I�9BY�L��+��@�8X�����ʹ.����_
�y��iM�8� α. aT�;�7�U\S"����@ՠ��vR��'���:�+/��F������:i}U:��L���:
�� d���ZJ1չF�Hh�f��e��� %x�,�h$JC����3P�T*��D�#W�s�@��% V]NQ���҇�:81-��Gey"%�'����g�ą�'#�H����Oc�� �
�@|��r�tAheGVvq�e���nW�EM�6�2���\�M���[���5��_�h��ߢ%#<)��G$(��&q�a�++�X5-R�g��<��c����h��86dȱ#�T�F�Bȕ�RN��4�tBP��p�&,T�t\�2|���$����7�CՑ
�? ���|��y���ŧ��Ǒ7�x��7?��/M9�;e���㻫�YE`�]�>��?�����wuy��60�����?���42�AK�^\��Y�x7�_[L:������o�� � �RA �J�}T,��]% 8�K�3W�>e���K�eR2��d��瀛�:�>�H ̻�S�
�o�����В��x�Կ}�x��N���f45Km��T����
%�� ��A��}X�P��(&q�sx�����Y�uV ��4w6:8qV o�J��$��5%��:mΙ�B��P��M8(Կ)Yxb"� ۯ������_�D�㌊��5%:�$@��L{ѐ�!��r�/��`sVZ��Fs����u��e�\X�7�jI5�y6ނY�T�ڍ���)�1U4h��H�U�p�8�,�͓D�l�;�\H9�\��A|��a�-�y�EBޕ�l���D� �����,�1����U:vщ�>���f�
�2g���N-�B��U��I�4�}WW�Ѱ���A���j��t4ǎF�*U�Z�2� #����} �
�:���W�)�s�=[�E�oa����l��Ԁz�^źo����wձU�k��8�F�A���a�4�r����~�d� ������`g644�������G��'�u.�P���s�R��~��9A#�۲���Z{%���|��w�����Fz�����>��+���z���z��W�}�n��T�P��Jړr�r[ܜ%�� ��B/�M�5
��H��m5C����_�� }�G`Mx���H}]��� j�q����0)i�z����+2%Tȹ>_�g�����)���<�M�\�59�+� !$|s﷡\��x�^H��+���zjC6�qY�'�3W-��bN�\]� g}s'�ooXM�����`�O���݌����7W���:�ܡ�������T����-S6�����-sA�o�I
��W������V�����9�7���
���������}s��oN;��پ��N� x-�� �Zm�~r:�oOK�s�q�Z��l�=�.{,�4'꩒�X ?9(�O����O~r`����
����
d��_����d?9�����L�&kf��o7����~?-�UH���v��ow��ɾH������B?��۽I��_�'�b�tէo�?��]�꧳�~�|ŷK~���fY����� �R̪=�G5�]�ef�5_z�یRG���}��c��g��8(�;�C6��a�8]�fP�a��H���k��r�4��4o9_w�j\e��&�U�e��w9��y���k��df�>�����<I&N��Β_-�[Oi�&��x��y�/T�E������Z#%�|R0!$�ORZ�1y� � 5�h�dE�%a:{X��7`*��A��2-���Dյ�MzT�d���e�`m2�,�}��Č�Yy:�=Oz�$�&�Ne�Ve���bO[Ao/����8��*����f�e�cO>��>^�����ތ
x�]SMo�0 �ٿ����@ƺÀ���u(�K ����m�QgK��4 ���Q�G��`D���#�7:�O�_.?ȶ����m�X8Bet q��(����~R��=�-��Z9����;4���:#U}��V�(��UH�i(�<���_���Mm����TNc�mᴉ!�cv��ն��p^Q�r����2��0ς�;m���!�5
w�����fJ���_��׀v�
H溗л�R�p�8#�m *pO��� ����|1r�������}qݐht��{\>����4g��#�.�����ET�pq��vYl@Z�I�ADz'�
�v�A'�b-NV\A�ؿ�/Cnͬ��ҧx�U9�X�G��w�xB�a;׹�;K&1m6�d���V���r�AU{�L��JYUd���1l4���%:�R��W�g�R�;� ��]�4I\��ߨ�&/ ����M�8'�NF�;�?s�d��������H�އ���D���xYY�9�*Q�6Rt�f�ɼT�
�����p�s՞�6~\g������h��\.&�D��{G�.I��߳"��R?�����D��!���m{ٜO����}{r_aG�n= �8ـ ��T�$��F1�'}s���V��[��S
x���A� =󊽛J� $����J,)�}~M����0�XK����D�3c��&��Y����y��D�kT����`�/ υ�p=d����Q8ϗX� �����p�?T<�]�̕l�vW�9�
x��T�n�0����@צ�vɹh�h�� ZA\F
��xI�/��v��襽H�of�s�Ϣt�x�<�D6-㠂�3w�+P�I�A8+g�{g�03���a��`:ٝ;?�DmQ ����2� �BZ�Z3�C���;N��K��FZ����{9�M�ƣy����Ҽ�P��mۡ�Ngy�7���ye��w��~�1zQ�[�����V L�;?����R�`���Ad��7b���W ֯VYA�gԉ��Q�m>*uh�Qm'�;b�h�0���C ��d��$xtL�&�>@Ѐy���}��G4� ��V/��@�Vi0��Z���o'��o����)�B���:�`�ϴ�?7ݴzd�j~��KAݩ�p�R �<FD�A�xk�H
�H?x�V�[��5�i�r�l�����
�#ý����P���X����Q�o�7tA�������(�HR�E(�!F4'!��<\�) ]�E��iN
�t_\�e�fY�Etg��s��vZ�;১
�/��B�$ JhcVYY. ��,Kb\E�: 4��2)��4!e��EYe#E���ܷv~Ӑ��z���2��uc!�^j��e�j˖�DM�W�K����O�s̨�o!^{D
x��Xm��6 ���
�_��w���0�i�m-��m�ZtA��J�Ͷ<I��(��G�Y��\;`�r�DR$��}��o�˯=���
޾y���k��Z���֊mO�՛חO��d���H^���������-�o��r2�z�&��UL��'eɕY(�-\WMI+�+�+V�<�R)9�:0��;
Z�Q�ר|5�y�ɕ3'�G*���{���iY��@�n���q�W`xL��U[E �t�)��p^�%h]�<�^�� ��譠��\�J�B�X�Uj�v~��S?� <ʜU��x�Z�:? ��4:�$�7n+
m\o��-䤆�UL[%�w�YŁ@N�"����6�5<m�)*/ �B��$���i/�H�0oOÆ�D �A�j�=�{J0�O']�ʇ)�\(����&�5-7?M� ����p����qv<
M�)Y��&,K+P��A�ͼ��%�ܫh�B:i�囵���x Ky�8��@r � ��KX 2�s�9�f~�<�i�[h� $�&WRk�g;�+���r����7�[ъ�.�4��eVP�]&)P,{ ���Hp��ZZ�#�~�\ �2�;�%�y��Y
��Ç��oS����,ˎ�)�&�X��h�pAD7T� �o��X�.BZeִr?Ck��P ��J`] �3��=���DJ?��i�7l}q"�s�),���|8��>!�+vKajP��0��c2=qU{lz���D:\+;�\�ei{�4�����v_R�!���o�ֹCo~��㺞���M�+dLп[&�,�>�V���i������� �Av�W��:z�=�v�g���;8��k�"��>$5���d~Rh]b)� �/ݕ�����;6[����o ��,w�- �V1�ߞ#�ګXb'";
I`@w}��{v�e����� �#��0��� ��r{�v���Ho3�S��H�u���V]���|ز��>�X+2m ���(v�� ����xQp�j��w��1�`lz��Z��c��=��r��G��|yQ/�!�?H�4�e�y#��z'��0_ � �A���O�0 ��?}��I=�Em�.<\��ݜ���k��>�0ș��:q�y�G7�)��7W�w�tW0�@h3V�e[���d&�<��\��)�n�����vv" Sj�bRӛ�iP�n��h������.��P����G�3O���f2lAߝm?�SP�Ug�,���Ou��� ���&������,�M��V�
�_�静���)_7�X�K�+ ǰ�T���E^�i5ߴ�V����2D���ot��-�t�D&p=��#�U���?n}�;9�pp`v&F����n��c?W�ߝV�}�G=�Lʍ���hRSrs:%��#���С�~F��<�p@�T�x�Y h��#�� v�~�&��Z���G~�bэn��������{������y�X�ϡ��ڍN�$v$F�$'���;� ��[�
c0b66ca5abd16ef48f8bde609633441d53e797eb
name: Running Solidity Unit Tests
on: [push]
jobs:
run_sol_contracts_job:
runs-on: ubuntu-latest
name: A job to run solidity unit tests on github actions CI
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Run SUT Action
uses: EthereumRemix/sol-test@v1
with:
test-path: 'tests'
compiler-version: '0.8.15'
{
"overrides": [
{
"files": "*.sol",
"options": {
"printWidth": 80,
"tabWidth": 4,
"useTabs": false,
"singleQuote": false,
"bracketSpacing": false
}
},
{
"files": "*.yml",
"options": {}
},
{
"files": "*.yaml",
"options": {}
},
{
"files": "*.toml",
"options": {}
},
{
"files": "*.json",
"options": {}
},
{
"files": "*.js",
"options": {}
},
{
"files": "*.ts",
"options": {}
}
]
}
REMIX DEFAULT WORKSPACE
Remix default workspace is present when:
i. Remix loads for the very first time
ii. A new workspace is created with 'Default' template
iii. There are no files existing in the File Explorer
This workspace contains 3 directories:
1. 'contracts': Holds three contracts with increasing levels of complexity.
2. 'scripts': Contains four typescript files to deploy a contract. It is explained below.
3. 'tests': Contains one Solidity test file for 'Ballot' contract & one JS test file for 'Storage' contract.
SCRIPTS
The 'scripts' folder has four typescript files which help to deploy the 'Storage' contract using 'web3.js' and 'ethers.js' libraries.
For the deployment of any other contract, just update the contract's name from 'Storage' to the desired contract and provide constructor arguments accordingly
in the file `deploy_with_ethers.ts` or `deploy_with_web3.ts`
In the 'tests' folder there is a script containing Mocha-Chai unit tests for 'Storage' contract.
To run a script, right click on file name in the file explorer and click 'Run'. Remember, Solidity file must already be compiled.
Output from script will appear in remix terminal.
Please note, require/import is supported in a limited manner for Remix supported modules.
For now, modules supported by Remix are ethers, web3, swarmgw, chai, multihashes, remix and hardhat only for hardhat.ethers object/plugin.
For unsupported modules, an error like this will be thrown: '<module_name> module require is not supported by Remix IDE' will be shown.
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.7.0 <0.9.0;
/**
* @title Storage
* @dev Store & retrieve value in a variable
* @custom:dev-run-script ./scripts/deploy_with_ethers.ts
*/
contract Storage {
uint256 number;
/**
* @dev Store value in variable
* @param num value to store
*/
function store(uint256 num) public {
number = num;
}
/**
* @dev Return value
* @return value of 'number'
*/
function retrieve() public view returns (uint256){
return number;
}
}
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.7.0 <0.9.0;
import "hardhat/console.sol";
/**
* @title Owner
* @dev Set & change owner
*/
contract Owner {
address private owner;
// event for EVM logging
event OwnerSet(address indexed oldOwner, address indexed newOwner);
// modifier to check if caller is owner
modifier isOwner() {
// If the first argument of 'require' evaluates to 'false', execution terminates and all
// changes to the state and to Ether balances are reverted.
// This used to consume all gas in old EVM versions, but not anymore.
// It is often a good idea to use 'require' to check if functions are called correctly.
// As a second argument, you can also provide an explanation about what went wrong.
require(msg.sender == owner, "Caller is not owner");
_;
}
/**
* @dev Set contract deployer as owner
*/
constructor() {
console.log("Owner contract deployed by:", msg.sender);
owner = msg.sender; // 'msg.sender' is sender of current call, contract deployer for a constructor
emit OwnerSet(address(0), owner);
}
/**
* @dev Change owner
* @param newOwner address of new owner
*/
function changeOwner(address newOwner) public isOwner {
emit OwnerSet(owner, newOwner);
owner = newOwner;
}
/**
* @dev Return owner address
* @return address of owner
*/
function getOwner() external view returns (address) {
return owner;
}
}
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.7.0 <0.9.0;
/**
* @title Ballot
* @dev Implements voting process along with vote delegation
*/
contract Ballot {
struct Voter {
uint weight; // weight is accumulated by delegation
bool voted; // if true, that person already voted
address delegate; // person delegated to
uint vote; // index of the voted proposal
}
struct Proposal {
// If you can limit the length to a certain number of bytes,
// always use one of bytes1 to bytes32 because they are much cheaper
bytes32 name; // short name (up to 32 bytes)
uint voteCount; // number of accumulated votes
}
address public chairperson;
mapping(address => Voter) public voters;
Proposal[] public proposals;
/**
* @dev Create a new ballot to choose one of 'proposalNames'.
* @param proposalNames names of proposals
*/
constructor(bytes32[] memory proposalNames) {
chairperson = msg.sender;
voters[chairperson].weight = 1;
for (uint i = 0; i < proposalNames.length; i++) {
// 'Proposal({...})' creates a temporary
// Proposal object and 'proposals.push(...)'
// appends it to the end of 'proposals'.
proposals.push(Proposal({
name: proposalNames[i],
voteCount: 0
}));
}
}
/**
* @dev Give 'voter' the right to vote on this ballot. May only be called by 'chairperson'.
* @param voter address of voter
*/
function giveRightToVote(address voter) public {
require(
msg.sender == chairperson,
"Only chairperson can give right to vote."
);
require(
!voters[voter].voted,
"The voter already voted."
);
require(voters[voter].weight == 0);
voters[voter].weight = 1;
}
/**
* @dev Delegate your vote to the voter 'to'.
* @param to address to which vote is delegated
*/
function delegate(address to) public {
Voter storage sender = voters[msg.sender];
require(!sender.voted, "You already voted.");
require(to != msg.sender, "Self-delegation is disallowed.");
while (voters[to].delegate != address(0)) {
to = voters[to].delegate;
// We found a loop in the delegation, not allowed.
require(to != msg.sender, "Found loop in delegation.");
}
sender.voted = true;
sender.delegate = to;
Voter storage delegate_ = voters[to];
if (delegate_.voted) {
// If the delegate already voted,
// directly add to the number of votes
proposals[delegate_.vote].voteCount += sender.weight;
} else {
// If the delegate did not vote yet,
// add to her weight.
delegate_.weight += sender.weight;
}
}
/**
* @dev Give your vote (including votes delegated to you) to proposal 'proposals[proposal].name'.
* @param proposal index of proposal in the proposals array
*/
function vote(uint proposal) public {
Voter storage sender = voters[msg.sender];
require(sender.weight != 0, "Has no right to vote");
require(!sender.voted, "Already voted.");
sender.voted = true;
sender.vote = proposal;
// If 'proposal' is out of the range of the array,
// this will throw automatically and revert all
// changes.
proposals[proposal].voteCount += sender.weight;
}
/**
* @dev Computes the winning proposal taking all previous votes into account.
* @return winningProposal_ index of winning proposal in the proposals array
*/
function winningProposal() public view
returns (uint winningProposal_)
{
uint winningVoteCount = 0;
for (uint p = 0; p < proposals.length; p++) {
if (proposals[p].voteCount > winningVoteCount) {
winningVoteCount = proposals[p].voteCount;
winningProposal_ = p;
}
}
}
/**
* @dev Calls winningProposal() function to get the index of the winner contained in the proposals array and then
* @return winnerName_ the name of the winner
*/
function winnerName() public view
returns (bytes32 winnerName_)
{
winnerName_ = proposals[winningProposal()].name;
}
}
{
"id": "1a24e2b27678b2ba0c41318a1149899c",
"_format": "hh-sol-build-info-1",
"solcVersion": "0.8.7",
"solcLongVersion": "0.8.7+commit.e28d00a7",
"input": {
"language": "Solidity",
"sources": {
"contracts/w15ex1.sol": {
"content": "//SPDX-License-Identifier: MIT\r\npragma solidity ^0.8.0;\r\ncontract ex1{\r\n uint public age;\r\n string public name;\r\n function setAge(uint x) public{\r\n age = x;\r\n }\r\n function getAge() public view returns(uint){\r\n return age;\r\n }\r\n function setName(string memory _name) public {\r\n name = _name;\r\n }\r\n function getName() public view returns(string memory){\r\n return name;\r\n }\r\n}\r\n"
}
},
"settings": {
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"": [
"ast"
],
"*": [
"abi",
"metadata",
"devdoc",
"userdoc",
"storageLayout",
"evm.legacyAssembly",
"evm.bytecode",
"evm.deployedBytecode",
"evm.methodIdentifiers",
"evm.gasEstimates",
"evm.assembly"
]
}
}
}
},
"output": {
"contracts": {
"contracts/w15ex1.sol": {
"ex1": {
"abi": [
{
"inputs": [],
"name": "age",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getAge",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getName",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "name",
"outputs": [
{
"internalType": "string",
"name": "",
"type": "string"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "x",
"type": "uint256"
}
],
"name": "setAge",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "_name",
"type": "string"
}
],
"name": "setName",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"evm": {
"assembly": " /* \"contracts/w15ex1.sol\":57:431 contract ex1{\r... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\ntag_1:\n pop\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"contracts/w15ex1.sol\":57:431 contract ex1{\r... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\n tag_1:\n pop\n jumpi(tag_2, lt(calldatasize, 0x04))\n shr(0xe0, calldataload(0x00))\n dup1\n 0x06fdde03\n eq\n tag_3\n jumpi\n dup1\n 0x17d7de7c\n eq\n tag_4\n jumpi\n dup1\n 0x262a9dff\n eq\n tag_5\n jumpi\n dup1\n 0x967e6e65\n eq\n tag_6\n jumpi\n dup1\n 0xc47f0027\n eq\n tag_7\n jumpi\n dup1\n 0xd5dcf127\n eq\n tag_8\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/w15ex1.sol\":98:116 string public name */\n tag_3:\n tag_9\n tag_10\n jump\t// in\n tag_9:\n mload(0x40)\n tag_11\n swap2\n swap1\n tag_12\n jump\t// in\n tag_11:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/w15ex1.sol\":345:428 function getName() public view returns(string memory){\r... */\n tag_4:\n tag_13\n tag_14\n jump\t// in\n tag_13:\n mload(0x40)\n tag_15\n swap2\n swap1\n tag_12\n jump\t// in\n tag_15:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/w15ex1.sol\":76:91 uint public age */\n tag_5:\n tag_16\n tag_17\n jump\t// in\n tag_16:\n mload(0x40)\n tag_18\n swap2\n swap1\n tag_19\n jump\t// in\n tag_18:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/w15ex1.sol\":185:257 function getAge() public view returns(uint){\r... */\n tag_6:\n tag_20\n tag_21\n jump\t// in\n tag_20:\n mload(0x40)\n tag_22\n swap2\n swap1\n tag_19\n jump\t// in\n tag_22:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/w15ex1.sol\":263:339 function setName(string memory _name) public {\r... */\n tag_7:\n tag_23\n 0x04\n dup1\n calldatasize\n sub\n dup2\n add\n swap1\n tag_24\n swap2\n swap1\n tag_25\n jump\t// in\n tag_24:\n tag_26\n jump\t// in\n tag_23:\n stop\n /* \"contracts/w15ex1.sol\":123:179 function setAge(uint x) public{\r... */\n tag_8:\n tag_27\n 0x04\n dup1\n calldatasize\n sub\n dup2\n add\n swap1\n tag_28\n swap2\n swap1\n tag_29\n jump\t// in\n tag_28:\n tag_30\n jump\t// in\n tag_27:\n stop\n /* \"contracts/w15ex1.sol\":98:116 string public name */\n tag_10:\n 0x01\n dup1\n sload\n tag_31\n swap1\n tag_32\n jump\t// in\n tag_31:\n dup1\n 0x1f\n add\n 0x20\n dup1\n swap2\n div\n mul\n 0x20\n add\n mload(0x40)\n swap1\n dup2\n add\n 0x40\n mstore\n dup1\n swap3\n swap2\n swap1\n dup2\n dup2\n mstore\n 0x20\n add\n dup3\n dup1\n sload\n tag_33\n swap1\n tag_32\n jump\t// in\n tag_33:\n dup1\n iszero\n tag_34\n jumpi\n dup1\n 0x1f\n lt\n tag_35\n jumpi\n 0x0100\n dup1\n dup4\n sload\n div\n mul\n dup4\n mstore\n swap2\n 0x20\n add\n swap2\n jump(tag_34)\n tag_35:\n dup3\n add\n swap2\n swap1\n 0x00\n mstore\n keccak256(0x00, 0x20)\n swap1\n tag_36:\n dup2\n sload\n dup2\n mstore\n swap1\n 0x01\n add\n swap1\n 0x20\n add\n dup1\n dup4\n gt\n tag_36\n jumpi\n dup3\n swap1\n sub\n 0x1f\n and\n dup3\n add\n swap2\n tag_34:\n pop\n pop\n pop\n pop\n pop\n dup2\n jump\t// out\n /* \"contracts/w15ex1.sol\":345:428 function getName() public view returns(string memory){\r... */\n tag_14:\n /* \"contracts/w15ex1.sol\":384:397 string memory */\n 0x60\n /* \"contracts/w15ex1.sol\":416:420 name */\n 0x01\n /* \"contracts/w15ex1.sol\":409:420 return name */\n dup1\n sload\n tag_38\n swap1\n tag_32\n jump\t// in\n tag_38:\n dup1\n 0x1f\n add\n 0x20\n dup1\n swap2\n div\n mul\n 0x20\n add\n mload(0x40)\n swap1\n dup2\n add\n 0x40\n mstore\n dup1\n swap3\n swap2\n swap1\n dup2\n dup2\n mstore\n 0x20\n add\n dup3\n dup1\n sload\n tag_39\n swap1\n tag_32\n jump\t// in\n tag_39:\n dup1\n iszero\n tag_40\n jumpi\n dup1\n 0x1f\n lt\n tag_41\n jumpi\n 0x0100\n dup1\n dup4\n sload\n div\n mul\n dup4\n mstore\n swap2\n 0x20\n add\n swap2\n jump(tag_40)\n tag_41:\n dup3\n add\n swap2\n swap1\n 0x00\n mstore\n keccak256(0x00, 0x20)\n swap1\n tag_42:\n dup2\n sload\n dup2\n mstore\n swap1\n 0x01\n add\n swap1\n 0x20\n add\n dup1\n dup4\n gt\n tag_42\n jumpi\n dup3\n swap1\n sub\n 0x1f\n and\n dup3\n add\n swap2\n tag_40:\n pop\n pop\n pop\n pop\n pop\n swap1\n pop\n /* \"contracts/w15ex1.sol\":345:428 function getName() public view returns(string memory){\r... */\n swap1\n jump\t// out\n /* \"contracts/w15ex1.sol\":76:91 uint public age */\n tag_17:\n sload(0x00)\n dup2\n jump\t// out\n /* \"contracts/w15ex1.sol\":185:257 function getAge() public view returns(uint){\r... */\n tag_21:\n /* \"contracts/w15ex1.sol\":223:227 uint */\n 0x00\n /* \"contracts/w15ex1.sol\":246:249 age */\n dup1\n sload\n /* \"contracts/w15ex1.sol\":239:249 return age */\n swap1\n pop\n /* \"contracts/w15ex1.sol\":185:257 function getAge() public view returns(uint){\r... */\n swap1\n jump\t// out\n /* \"contracts/w15ex1.sol\":263:339 function setName(string memory _name) public {\r... */\n tag_26:\n /* \"contracts/w15ex1.sol\":326:331 _name */\n dup1\n /* \"contracts/w15ex1.sol\":319:323 name */\n 0x01\n /* \"contracts/w15ex1.sol\":319:331 name = _name */\n swap1\n dup1\n mload\n swap1\n 0x20\n add\n swap1\n tag_45\n swap3\n swap2\n swap1\n tag_46\n jump\t// in\n tag_45:\n pop\n /* \"contracts/w15ex1.sol\":263:339 function setName(string memory _name) public {\r... */\n pop\n jump\t// out\n /* \"contracts/w15ex1.sol\":123:179 function setAge(uint x) public{\r... */\n tag_30:\n /* \"contracts/w15ex1.sol\":170:171 x */\n dup1\n /* \"contracts/w15ex1.sol\":164:167 age */\n 0x00\n /* \"contracts/w15ex1.sol\":164:171 age = x */\n dup2\n swap1\n sstore\n pop\n /* \"contracts/w15ex1.sol\":123:179 function setAge(uint x) public{\r... */\n pop\n jump\t// out\n tag_46:\n dup3\n dup1\n sload\n tag_48\n swap1\n tag_32\n jump\t// in\n tag_48:\n swap1\n 0x00\n mstore\n keccak256(0x00, 0x20)\n swap1\n 0x1f\n add\n 0x20\n swap1\n div\n dup2\n add\n swap3\n dup3\n tag_50\n jumpi\n 0x00\n dup6\n sstore\n jump(tag_49)\n tag_50:\n dup3\n 0x1f\n lt\n tag_51\n jumpi\n dup1\n mload\n not(0xff)\n and\n dup4\n dup1\n add\n or\n dup6\n sstore\n jump(tag_49)\n tag_51:\n dup3\n dup1\n add\n 0x01\n add\n dup6\n sstore\n dup3\n iszero\n tag_49\n jumpi\n swap2\n dup3\n add\n tag_52:\n dup3\n dup2\n gt\n iszero\n tag_53\n jumpi\n dup3\n mload\n dup3\n sstore\n swap2\n 0x20\n add\n swap2\n swap1\n 0x01\n add\n swap1\n jump(tag_52)\n tag_53:\n tag_49:\n pop\n swap1\n pop\n tag_54\n swap2\n swap1\n tag_55\n jump\t// in\n tag_54:\n pop\n swap1\n jump\t// out\n tag_55:\n tag_56:\n dup1\n dup3\n gt\n iszero\n tag_57\n jumpi\n 0x00\n dup2\n 0x00\n swap1\n sstore\n pop\n 0x01\n add\n jump(tag_56)\n tag_57:\n pop\n swap1\n jump\t// out\n /* \"#utility.yul\":7:419 */\n tag_59:\n /* \"#utility.yul\":85:90 */\n 0x00\n /* \"#utility.yul\":110:176 */\n tag_61\n /* \"#utility.yul\":126:175 */\n tag_62\n /* \"#utility.yul\":168:174 */\n dup5\n /* \"#utility.yul\":126:175 */\n tag_63\n jump\t// in\n tag_62:\n /* \"#utility.yul\":110:176 */\n tag_64\n jump\t// in\n tag_61:\n /* \"#utility.yul\":101:176 */\n swap1\n pop\n /* \"#utility.yul\":199:205 */\n dup3\n /* \"#utility.yul\":192:197 */\n dup2\n /* \"#utility.yul\":185:206 */\n mstore\n /* \"#utility.yul\":237:241 */\n 0x20\n /* \"#utility.yul\":230:235 */\n dup2\n /* \"#utility.yul\":226:242 */\n add\n /* \"#utility.yul\":275:278 */\n dup5\n /* \"#utility.yul\":266:272 */\n dup5\n /* \"#utility.yul\":261:264 */\n dup5\n /* \"#utility.yul\":257:273 */\n add\n /* \"#utility.yul\":254:279 */\n gt\n /* \"#utility.yul\":251:363 */\n iszero\n tag_65\n jumpi\n /* \"#utility.yul\":282:361 */\n tag_66\n tag_67\n jump\t// in\n tag_66:\n /* \"#utility.yul\":251:363 */\n tag_65:\n /* \"#utility.yul\":372:413 */\n tag_68\n /* \"#utility.yul\":406:412 */\n dup5\n /* \"#utility.yul\":401:404 */\n dup3\n /* \"#utility.yul\":396:399 */\n dup6\n /* \"#utility.yul\":372:413 */\n tag_69\n jump\t// in\n tag_68:\n /* \"#utility.yul\":91:419 */\n pop\n /* \"#utility.yul\":7:419 */\n swap4\n swap3\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":439:779 */\n tag_70:\n /* \"#utility.yul\":495:500 */\n 0x00\n /* \"#utility.yul\":544:547 */\n dup3\n /* \"#utility.yul\":537:541 */\n 0x1f\n /* \"#utility.yul\":529:535 */\n dup4\n /* \"#utility.yul\":525:542 */\n add\n /* \"#utility.yul\":521:548 */\n slt\n /* \"#utility.yul\":511:633 */\n tag_72\n jumpi\n /* \"#utility.yul\":552:631 */\n tag_73\n tag_74\n jump\t// in\n tag_73:\n /* \"#utility.yul\":511:633 */\n tag_72:\n /* \"#utility.yul\":669:675 */\n dup2\n /* \"#utility.yul\":656:676 */\n calldataload\n /* \"#utility.yul\":694:773 */\n tag_75\n /* \"#utility.yul\":769:772 */\n dup5\n /* \"#utility.yul\":761:767 */\n dup3\n /* \"#utility.yul\":754:758 */\n 0x20\n /* \"#utility.yul\":746:752 */\n dup7\n /* \"#utility.yul\":742:759 */\n add\n /* \"#utility.yul\":694:773 */\n tag_59\n jump\t// in\n tag_75:\n /* \"#utility.yul\":685:773 */\n swap2\n pop\n /* \"#utility.yul\":501:779 */\n pop\n /* \"#utility.yul\":439:779 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":785:924 */\n tag_76:\n /* \"#utility.yul\":831:836 */\n 0x00\n /* \"#utility.yul\":869:875 */\n dup2\n /* \"#utility.yul\":856:876 */\n calldataload\n /* \"#utility.yul\":847:876 */\n swap1\n pop\n /* \"#utility.yul\":885:918 */\n tag_78\n /* \"#utility.yul\":912:917 */\n dup2\n /* \"#utility.yul\":885:918 */\n tag_79\n jump\t// in\n tag_78:\n /* \"#utility.yul\":785:924 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":930:1439 */\n tag_25:\n /* \"#utility.yul\":999:1005 */\n 0x00\n /* \"#utility.yul\":1048:1050 */\n 0x20\n /* \"#utility.yul\":1036:1045 */\n dup3\n /* \"#utility.yul\":1027:1034 */\n dup5\n /* \"#utility.yul\":1023:1046 */\n sub\n /* \"#utility.yul\":1019:1051 */\n slt\n /* \"#utility.yul\":1016:1135 */\n iszero\n tag_81\n jumpi\n /* \"#utility.yul\":1054:1133 */\n tag_82\n tag_83\n jump\t// in\n tag_82:\n /* \"#utility.yul\":1016:1135 */\n tag_81:\n /* \"#utility.yul\":1202:1203 */\n 0x00\n /* \"#utility.yul\":1191:1200 */\n dup3\n /* \"#utility.yul\":1187:1204 */\n add\n /* \"#utility.yul\":1174:1205 */\n calldataload\n /* \"#utility.yul\":1232:1250 */\n 0xffffffffffffffff\n /* \"#utility.yul\":1224:1230 */\n dup2\n /* \"#utility.yul\":1221:1251 */\n gt\n /* \"#utility.yul\":1218:1335 */\n iszero\n tag_84\n jumpi\n /* \"#utility.yul\":1254:1333 */\n tag_85\n tag_86\n jump\t// in\n tag_85:\n /* \"#utility.yul\":1218:1335 */\n tag_84:\n /* \"#utility.yul\":1359:1422 */\n tag_87\n /* \"#utility.yul\":1414:1421 */\n dup5\n /* \"#utility.yul\":1405:1411 */\n dup3\n /* \"#utility.yul\":1394:1403 */\n dup6\n /* \"#utility.yul\":1390:1412 */\n add\n /* \"#utility.yul\":1359:1422 */\n tag_70\n jump\t// in\n tag_87:\n /* \"#utility.yul\":1349:1422 */\n swap2\n pop\n /* \"#utility.yul\":1145:1432 */\n pop\n /* \"#utility.yul\":930:1439 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1445:1774 */\n tag_29:\n /* \"#utility.yul\":1504:1510 */\n 0x00\n /* \"#utility.yul\":1553:1555 */\n 0x20\n /* \"#utility.yul\":1541:1550 */\n dup3\n /* \"#utility.yul\":1532:1539 */\n dup5\n /* \"#utility.yul\":1528:1551 */\n sub\n /* \"#utility.yul\":1524:1556 */\n slt\n /* \"#utility.yul\":1521:1640 */\n iszero\n tag_89\n jumpi\n /* \"#utility.yul\":1559:1638 */\n tag_90\n tag_83\n jump\t// in\n tag_90:\n /* \"#utility.yul\":1521:1640 */\n tag_89:\n /* \"#utility.yul\":1679:1680 */\n 0x00\n /* \"#utility.yul\":1704:1757 */\n tag_91\n /* \"#utility.yul\":1749:1756 */\n dup5\n /* \"#utility.yul\":1740:1746 */\n dup3\n /* \"#utility.yul\":1729:1738 */\n dup6\n /* \"#utility.yul\":1725:1747 */\n add\n /* \"#utility.yul\":1704:1757 */\n tag_76\n jump\t// in\n tag_91:\n /* \"#utility.yul\":1694:1757 */\n swap2\n pop\n /* \"#utility.yul\":1650:1767 */\n pop\n /* \"#utility.yul\":1445:1774 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1780:2144 */\n tag_92:\n /* \"#utility.yul\":1868:1871 */\n 0x00\n /* \"#utility.yul\":1896:1935 */\n tag_94\n /* \"#utility.yul\":1929:1934 */\n dup3\n /* \"#utility.yul\":1896:1935 */\n tag_95\n jump\t// in\n tag_94:\n /* \"#utility.yul\":1951:2022 */\n tag_96\n /* \"#utility.yul\":2015:2021 */\n dup2\n /* \"#utility.yul\":2010:2013 */\n dup6\n /* \"#utility.yul\":1951:2022 */\n tag_97\n jump\t// in\n tag_96:\n /* \"#utility.yul\":1944:2022 */\n swap4\n pop\n /* \"#utility.yul\":2031:2083 */\n tag_98\n /* \"#utility.yul\":2076:2082 */\n dup2\n /* \"#utility.yul\":2071:2074 */\n dup6\n /* \"#utility.yul\":2064:2068 */\n 0x20\n /* \"#utility.yul\":2057:2062 */\n dup7\n /* \"#utility.yul\":2053:2069 */\n add\n /* \"#utility.yul\":2031:2083 */\n tag_99\n jump\t// in\n tag_98:\n /* \"#utility.yul\":2108:2137 */\n tag_100\n /* \"#utility.yul\":2130:2136 */\n dup2\n /* \"#utility.yul\":2108:2137 */\n tag_101\n jump\t// in\n tag_100:\n /* \"#utility.yul\":2103:2106 */\n dup5\n /* \"#utility.yul\":2099:2138 */\n add\n /* \"#utility.yul\":2092:2138 */\n swap2\n pop\n /* \"#utility.yul\":1872:2144 */\n pop\n /* \"#utility.yul\":1780:2144 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2150:2268 */\n tag_102:\n /* \"#utility.yul\":2237:2261 */\n tag_104\n /* \"#utility.yul\":2255:2260 */\n dup2\n /* \"#utility.yul\":2237:2261 */\n tag_105\n jump\t// in\n tag_104:\n /* \"#utility.yul\":2232:2235 */\n dup3\n /* \"#utility.yul\":2225:2262 */\n mstore\n /* \"#utility.yul\":2150:2268 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2274:2587 */\n tag_12:\n /* \"#utility.yul\":2387:2391 */\n 0x00\n /* \"#utility.yul\":2425:2427 */\n 0x20\n /* \"#utility.yul\":2414:2423 */\n dup3\n /* \"#utility.yul\":2410:2428 */\n add\n /* \"#utility.yul\":2402:2428 */\n swap1\n pop\n /* \"#utility.yul\":2474:2483 */\n dup2\n /* \"#utility.yul\":2468:2472 */\n dup2\n /* \"#utility.yul\":2464:2484 */\n sub\n /* \"#utility.yul\":2460:2461 */\n 0x00\n /* \"#utility.yul\":2449:2458 */\n dup4\n /* \"#utility.yul\":2445:2462 */\n add\n /* \"#utility.yul\":2438:2485 */\n mstore\n /* \"#utility.yul\":2502:2580 */\n tag_107\n /* \"#utility.yul\":2575:2579 */\n dup2\n /* \"#utility.yul\":2566:2572 */\n dup5\n /* \"#utility.yul\":2502:2580 */\n tag_92\n jump\t// in\n tag_107:\n /* \"#utility.yul\":2494:2580 */\n swap1\n pop\n /* \"#utility.yul\":2274:2587 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2593:2815 */\n tag_19:\n /* \"#utility.yul\":2686:2690 */\n 0x00\n /* \"#utility.yul\":2724:2726 */\n 0x20\n /* \"#utility.yul\":2713:2722 */\n dup3\n /* \"#utility.yul\":2709:2727 */\n add\n /* \"#utility.yul\":2701:2727 */\n swap1\n pop\n /* \"#utility.yul\":2737:2808 */\n tag_109\n /* \"#utility.yul\":2805:2806 */\n 0x00\n /* \"#utility.yul\":2794:2803 */\n dup4\n /* \"#utility.yul\":2790:2807 */\n add\n /* \"#utility.yul\":2781:2787 */\n dup5\n /* \"#utility.yul\":2737:2808 */\n tag_102\n jump\t// in\n tag_109:\n /* \"#utility.yul\":2593:2815 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":2821:2950 */\n tag_64:\n /* \"#utility.yul\":2855:2861 */\n 0x00\n /* \"#utility.yul\":2882:2902 */\n tag_111\n tag_112\n jump\t// in\n tag_111:\n /* \"#utility.yul\":2872:2902 */\n swap1\n pop\n /* \"#utility.yul\":2911:2944 */\n tag_113\n /* \"#utility.yul\":2939:2943 */\n dup3\n /* \"#utility.yul\":2931:2937 */\n dup3\n /* \"#utility.yul\":2911:2944 */\n tag_114\n jump\t// in\n tag_113:\n /* \"#utility.yul\":2821:2950 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":2956:3031 */\n tag_112:\n /* \"#utility.yul\":2989:2995 */\n 0x00\n /* \"#utility.yul\":3022:3024 */\n 0x40\n /* \"#utility.yul\":3016:3025 */\n mload\n /* \"#utility.yul\":3006:3025 */\n swap1\n pop\n /* \"#utility.yul\":2956:3031 */\n swap1\n jump\t// out\n /* \"#utility.yul\":3037:3345 */\n tag_63:\n /* \"#utility.yul\":3099:3103 */\n 0x00\n /* \"#utility.yul\":3189:3207 */\n 0xffffffffffffffff\n /* \"#utility.yul\":3181:3187 */\n dup3\n /* \"#utility.yul\":3178:3208 */\n gt\n /* \"#utility.yul\":3175:3231 */\n iszero\n tag_117\n jumpi\n /* \"#utility.yul\":3211:3229 */\n tag_118\n tag_119\n jump\t// in\n tag_118:\n /* \"#utility.yul\":3175:3231 */\n tag_117:\n /* \"#utility.yul\":3249:3278 */\n tag_120\n /* \"#utility.yul\":3271:3277 */\n dup3\n /* \"#utility.yul\":3249:3278 */\n tag_101\n jump\t// in\n tag_120:\n /* \"#utility.yul\":3241:3278 */\n swap1\n pop\n /* \"#utility.yul\":3333:3337 */\n 0x20\n /* \"#utility.yul\":3327:3331 */\n dup2\n /* \"#utility.yul\":3323:3338 */\n add\n /* \"#utility.yul\":3315:3338 */\n swap1\n pop\n /* \"#utility.yul\":3037:3345 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3351:3450 */\n tag_95:\n /* \"#utility.yul\":3403:3409 */\n 0x00\n /* \"#utility.yul\":3437:3442 */\n dup2\n /* \"#utility.yul\":3431:3443 */\n mload\n /* \"#utility.yul\":3421:3443 */\n swap1\n pop\n /* \"#utility.yul\":3351:3450 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3456:3625 */\n tag_97:\n /* \"#utility.yul\":3540:3551 */\n 0x00\n /* \"#utility.yul\":3574:3580 */\n dup3\n /* \"#utility.yul\":3569:3572 */\n dup3\n /* \"#utility.yul\":3562:3581 */\n mstore\n /* \"#utility.yul\":3614:3618 */\n 0x20\n /* \"#utility.yul\":3609:3612 */\n dup3\n /* \"#utility.yul\":3605:3619 */\n add\n /* \"#utility.yul\":3590:3619 */\n swap1\n pop\n /* \"#utility.yul\":3456:3625 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":3631:3708 */\n tag_105:\n /* \"#utility.yul\":3668:3675 */\n 0x00\n /* \"#utility.yul\":3697:3702 */\n dup2\n /* \"#utility.yul\":3686:3702 */\n swap1\n pop\n /* \"#utility.yul\":3631:3708 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":3714:3868 */\n tag_69:\n /* \"#utility.yul\":3798:3804 */\n dup3\n /* \"#utility.yul\":3793:3796 */\n dup2\n /* \"#utility.yul\":3788:3791 */\n dup4\n /* \"#utility.yul\":3775:3805 */\n calldatacopy\n /* \"#utility.yul\":3860:3861 */\n 0x00\n /* \"#utility.yul\":3851:3857 */\n dup4\n /* \"#utility.yul\":3846:3849 */\n dup4\n /* \"#utility.yul\":3842:3858 */\n add\n /* \"#utility.yul\":3835:3862 */\n mstore\n /* \"#utility.yul\":3714:3868 */\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":3874:4181 */\n tag_99:\n /* \"#utility.yul\":3942:3943 */\n 0x00\n /* \"#utility.yul\":3952:4065 */\n tag_126:\n /* \"#utility.yul\":3966:3972 */\n dup4\n /* \"#utility.yul\":3963:3964 */\n dup2\n /* \"#utility.yul\":3960:3973 */\n lt\n /* \"#utility.yul\":3952:4065 */\n iszero\n tag_128\n jumpi\n /* \"#utility.yul\":4051:4052 */\n dup1\n /* \"#utility.yul\":4046:4049 */\n dup3\n /* \"#utility.yul\":4042:4053 */\n add\n /* \"#utility.yul\":4036:4054 */\n mload\n /* \"#utility.yul\":4032:4033 */\n dup2\n /* \"#utility.yul\":4027:4030 */\n dup5\n /* \"#utility.yul\":4023:4034 */\n add\n /* \"#utility.yul\":4016:4055 */\n mstore\n /* \"#utility.yul\":3988:3990 */\n 0x20\n /* \"#utility.yul\":3985:3986 */\n dup2\n /* \"#utility.yul\":3981:3991 */\n add\n /* \"#utility.yul\":3976:3991 */\n swap1\n pop\n /* \"#utility.yul\":3952:4065 */\n jump(tag_126)\n tag_128:\n /* \"#utility.yul\":4083:4089 */\n dup4\n /* \"#utility.yul\":4080:4081 */\n dup2\n /* \"#utility.yul\":4077:4090 */\n gt\n /* \"#utility.yul\":4074:4175 */\n iszero\n tag_129\n jumpi\n /* \"#utility.yul\":4163:4164 */\n 0x00\n /* \"#utility.yul\":4154:4160 */\n dup5\n /* \"#utility.yul\":4149:4152 */\n dup5\n /* \"#utility.yul\":4145:4161 */\n add\n /* \"#utility.yul\":4138:4165 */\n mstore\n /* \"#utility.yul\":4074:4175 */\n tag_129:\n /* \"#utility.yul\":3923:4181 */\n pop\n /* \"#utility.yul\":3874:4181 */\n pop\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":4187:4507 */\n tag_32:\n /* \"#utility.yul\":4231:4237 */\n 0x00\n /* \"#utility.yul\":4268:4269 */\n 0x02\n /* \"#utility.yul\":4262:4266 */\n dup3\n /* \"#utility.yul\":4258:4270 */\n div\n /* \"#utility.yul\":4248:4270 */\n swap1\n pop\n /* \"#utility.yul\":4315:4316 */\n 0x01\n /* \"#utility.yul\":4309:4313 */\n dup3\n /* \"#utility.yul\":4305:4317 */\n and\n /* \"#utility.yul\":4336:4354 */\n dup1\n /* \"#utility.yul\":4326:4407 */\n tag_131\n jumpi\n /* \"#utility.yul\":4392:4396 */\n 0x7f\n /* \"#utility.yul\":4384:4390 */\n dup3\n /* \"#utility.yul\":4380:4397 */\n and\n /* \"#utility.yul\":4370:4397 */\n swap2\n pop\n /* \"#utility.yul\":4326:4407 */\n tag_131:\n /* \"#utility.yul\":4454:4456 */\n 0x20\n /* \"#utility.yul\":4446:4452 */\n dup3\n /* \"#utility.yul\":4443:4457 */\n lt\n /* \"#utility.yul\":4423:4441 */\n dup2\n /* \"#utility.yul\":4420:4458 */\n eq\n /* \"#utility.yul\":4417:4501 */\n iszero\n tag_132\n jumpi\n /* \"#utility.yul\":4473:4491 */\n tag_133\n tag_134\n jump\t// in\n tag_133:\n /* \"#utility.yul\":4417:4501 */\n tag_132:\n /* \"#utility.yul\":4238:4507 */\n pop\n /* \"#utility.yul\":4187:4507 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":4513:4794 */\n tag_114:\n /* \"#utility.yul\":4596:4623 */\n tag_136\n /* \"#utility.yul\":4618:4622 */\n dup3\n /* \"#utility.yul\":4596:4623 */\n tag_101\n jump\t// in\n tag_136:\n /* \"#utility.yul\":4588:4594 */\n dup2\n /* \"#utility.yul\":4584:4624 */\n add\n /* \"#utility.yul\":4726:4732 */\n dup2\n /* \"#utility.yul\":4714:4724 */\n dup2\n /* \"#utility.yul\":4711:4733 */\n lt\n /* \"#utility.yul\":4690:4708 */\n 0xffffffffffffffff\n /* \"#utility.yul\":4678:4688 */\n dup3\n /* \"#utility.yul\":4675:4709 */\n gt\n /* \"#utility.yul\":4672:4734 */\n or\n /* \"#utility.yul\":4669:4757 */\n iszero\n tag_137\n jumpi\n /* \"#utility.yul\":4737:4755 */\n tag_138\n tag_119\n jump\t// in\n tag_138:\n /* \"#utility.yul\":4669:4757 */\n tag_137:\n /* \"#utility.yul\":4777:4787 */\n dup1\n /* \"#utility.yul\":4773:4775 */\n 0x40\n /* \"#utility.yul\":4766:4788 */\n mstore\n /* \"#utility.yul\":4556:4794 */\n pop\n /* \"#utility.yul\":4513:4794 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":4800:4980 */\n tag_134:\n /* \"#utility.yul\":4848:4925 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":4845:4846 */\n 0x00\n /* \"#utility.yul\":4838:4926 */\n mstore\n /* \"#utility.yul\":4945:4949 */\n 0x22\n /* \"#utility.yul\":4942:4943 */\n 0x04\n /* \"#utility.yul\":4935:4950 */\n mstore\n /* \"#utility.yul\":4969:4973 */\n 0x24\n /* \"#utility.yul\":4966:4967 */\n 0x00\n /* \"#utility.yul\":4959:4974 */\n revert\n /* \"#utility.yul\":4986:5166 */\n tag_119:\n /* \"#utility.yul\":5034:5111 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":5031:5032 */\n 0x00\n /* \"#utility.yul\":5024:5112 */\n mstore\n /* \"#utility.yul\":5131:5135 */\n 0x41\n /* \"#utility.yul\":5128:5129 */\n 0x04\n /* \"#utility.yul\":5121:5136 */\n mstore\n /* \"#utility.yul\":5155:5159 */\n 0x24\n /* \"#utility.yul\":5152:5153 */\n 0x00\n /* \"#utility.yul\":5145:5160 */\n revert\n /* \"#utility.yul\":5172:5289 */\n tag_74:\n /* \"#utility.yul\":5281:5282 */\n 0x00\n /* \"#utility.yul\":5278:5279 */\n dup1\n /* \"#utility.yul\":5271:5283 */\n revert\n /* \"#utility.yul\":5295:5412 */\n tag_67:\n /* \"#utility.yul\":5404:5405 */\n 0x00\n /* \"#utility.yul\":5401:5402 */\n dup1\n /* \"#utility.yul\":5394:5406 */\n revert\n /* \"#utility.yul\":5418:5535 */\n tag_86:\n /* \"#utility.yul\":5527:5528 */\n 0x00\n /* \"#utility.yul\":5524:5525 */\n dup1\n /* \"#utility.yul\":5517:5529 */\n revert\n /* \"#utility.yul\":5541:5658 */\n tag_83:\n /* \"#utility.yul\":5650:5651 */\n 0x00\n /* \"#utility.yul\":5647:5648 */\n dup1\n /* \"#utility.yul\":5640:5652 */\n revert\n /* \"#utility.yul\":5664:5766 */\n tag_101:\n /* \"#utility.yul\":5705:5711 */\n 0x00\n /* \"#utility.yul\":5756:5758 */\n 0x1f\n /* \"#utility.yul\":5752:5759 */\n not\n /* \"#utility.yul\":5747:5749 */\n 0x1f\n /* \"#utility.yul\":5740:5745 */\n dup4\n /* \"#utility.yul\":5736:5750 */\n add\n /* \"#utility.yul\":5732:5760 */\n and\n /* \"#utility.yul\":5722:5760 */\n swap1\n pop\n /* \"#utility.yul\":5664:5766 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":5772:5894 */\n tag_79:\n /* \"#utility.yul\":5845:5869 */\n tag_147\n /* \"#utility.yul\":5863:5868 */\n dup2\n /* \"#utility.yul\":5845:5869 */\n tag_105\n jump\t// in\n tag_147:\n /* \"#utility.yul\":5838:5843 */\n dup2\n /* \"#utility.yul\":5835:5870 */\n eq\n /* \"#utility.yul\":5825:5888 */\n tag_148\n jumpi\n /* \"#utility.yul\":5884:5885 */\n 0x00\n /* \"#utility.yul\":5881:5882 */\n dup1\n /* \"#utility.yul\":5874:5886 */\n revert\n /* \"#utility.yul\":5825:5888 */\n tag_148:\n /* \"#utility.yul\":5772:5894 */\n pop\n jump\t// out\n\n auxdata: 0xa26469706673582212206df454c35afa3f36bd9a6392f6d47105034d9ca1e3e94f8e9dca247efa20b23864736f6c63430008070033\n}\n",
"bytecode": {
"functionDebugData": {},
"generatedSources": [],
"linkReferences": {},
"object": "608060405234801561001057600080fd5b5061067e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806306fdde031461006757806317d7de7c14610085578063262a9dff146100a3578063967e6e65146100c1578063c47f0027146100df578063d5dcf127146100fb575b600080fd5b61006f610117565b60405161007c9190610450565b60405180910390f35b61008d6101a5565b60405161009a9190610450565b60405180910390f35b6100ab610237565b6040516100b89190610472565b60405180910390f35b6100c961023d565b6040516100d69190610472565b60405180910390f35b6100f960048036038101906100f49190610392565b610246565b005b610115600480360381019061011091906103db565b610260565b005b600180546101249061054b565b80601f01602080910402602001604051908101604052809291908181526020018280546101509061054b565b801561019d5780601f106101725761010080835404028352916020019161019d565b820191906000526020600020905b81548152906001019060200180831161018057829003601f168201915b505050505081565b6060600180546101b49061054b565b80601f01602080910402602001604051908101604052809291908181526020018280546101e09061054b565b801561022d5780601f106102025761010080835404028352916020019161022d565b820191906000526020600020905b81548152906001019060200180831161021057829003601f168201915b5050505050905090565b60005481565b60008054905090565b806001908051906020019061025c92919061026a565b5050565b8060008190555050565b8280546102769061054b565b90600052602060002090601f01602090048101928261029857600085556102df565b82601f106102b157805160ff19168380011785556102df565b828001600101855582156102df579182015b828111156102de5782518255916020019190600101906102c3565b5b5090506102ec91906102f0565b5090565b5b808211156103095760008160009055506001016102f1565b5090565b600061032061031b846104b2565b61048d565b90508281526020810184848401111561033c5761033b610611565b5b610347848285610509565b509392505050565b600082601f8301126103645761036361060c565b5b813561037484826020860161030d565b91505092915050565b60008135905061038c81610631565b92915050565b6000602082840312156103a8576103a761061b565b5b600082013567ffffffffffffffff8111156103c6576103c5610616565b5b6103d28482850161034f565b91505092915050565b6000602082840312156103f1576103f061061b565b5b60006103ff8482850161037d565b91505092915050565b6000610413826104e3565b61041d81856104ee565b935061042d818560208601610518565b61043681610620565b840191505092915050565b61044a816104ff565b82525050565b6000602082019050818103600083015261046a8184610408565b905092915050565b60006020820190506104876000830184610441565b92915050565b60006104976104a8565b90506104a3828261057d565b919050565b6000604051905090565b600067ffffffffffffffff8211156104cd576104cc6105dd565b5b6104d682610620565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b6000819050919050565b82818337600083830152505050565b60005b8381101561053657808201518184015260208101905061051b565b83811115610545576000848401525b50505050565b6000600282049050600182168061056357607f821691505b60208210811415610577576105766105ae565b5b50919050565b61058682610620565b810181811067ffffffffffffffff821117156105a5576105a46105dd565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b61063a816104ff565b811461064557600080fd5b5056fea26469706673582212206df454c35afa3f36bd9a6392f6d47105034d9ca1e3e94f8e9dca247efa20b23864736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x67E DUP1 PUSH2 0x20 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x62 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x67 JUMPI DUP1 PUSH4 0x17D7DE7C EQ PUSH2 0x85 JUMPI DUP1 PUSH4 0x262A9DFF EQ PUSH2 0xA3 JUMPI DUP1 PUSH4 0x967E6E65 EQ PUSH2 0xC1 JUMPI DUP1 PUSH4 0xC47F0027 EQ PUSH2 0xDF JUMPI DUP1 PUSH4 0xD5DCF127 EQ PUSH2 0xFB JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6F PUSH2 0x117 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7C SWAP2 SWAP1 PUSH2 0x450 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x8D PUSH2 0x1A5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x9A SWAP2 SWAP1 PUSH2 0x450 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xAB PUSH2 0x237 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB8 SWAP2 SWAP1 PUSH2 0x472 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC9 PUSH2 0x23D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD6 SWAP2 SWAP1 PUSH2 0x472 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xF9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xF4 SWAP2 SWAP1 PUSH2 0x392 JUMP JUMPDEST PUSH2 0x246 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x115 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x110 SWAP2 SWAP1 PUSH2 0x3DB JUMP JUMPDEST PUSH2 0x260 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x1 DUP1 SLOAD PUSH2 0x124 SWAP1 PUSH2 0x54B JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x150 SWAP1 PUSH2 0x54B JUMP JUMPDEST DUP1 ISZERO PUSH2 0x19D JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x172 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x19D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x180 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x1 DUP1 SLOAD PUSH2 0x1B4 SWAP1 PUSH2 0x54B JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1E0 SWAP1 PUSH2 0x54B JUMP JUMPDEST DUP1 ISZERO PUSH2 0x22D JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x202 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x22D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x210 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST DUP1 PUSH1 0x1 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x25C SWAP3 SWAP2 SWAP1 PUSH2 0x26A JUMP JUMPDEST POP POP JUMP JUMPDEST DUP1 PUSH1 0x0 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x276 SWAP1 PUSH2 0x54B JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x298 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x2DF JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x2B1 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x2DF JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x2DF JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x2DE JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x2C3 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x2EC SWAP2 SWAP1 PUSH2 0x2F0 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x309 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x2F1 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x320 PUSH2 0x31B DUP5 PUSH2 0x4B2 JUMP JUMPDEST PUSH2 0x48D JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x33C JUMPI PUSH2 0x33B PUSH2 0x611 JUMP JUMPDEST JUMPDEST PUSH2 0x347 DUP5 DUP3 DUP6 PUSH2 0x509 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x364 JUMPI PUSH2 0x363 PUSH2 0x60C JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x374 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x30D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x38C DUP2 PUSH2 0x631 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3A8 JUMPI PUSH2 0x3A7 PUSH2 0x61B JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3C6 JUMPI PUSH2 0x3C5 PUSH2 0x616 JUMP JUMPDEST JUMPDEST PUSH2 0x3D2 DUP5 DUP3 DUP6 ADD PUSH2 0x34F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3F1 JUMPI PUSH2 0x3F0 PUSH2 0x61B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3FF DUP5 DUP3 DUP6 ADD PUSH2 0x37D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x413 DUP3 PUSH2 0x4E3 JUMP JUMPDEST PUSH2 0x41D DUP2 DUP6 PUSH2 0x4EE JUMP JUMPDEST SWAP4 POP PUSH2 0x42D DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x518 JUMP JUMPDEST PUSH2 0x436 DUP2 PUSH2 0x620 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x44A DUP2 PUSH2 0x4FF JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x46A DUP2 DUP5 PUSH2 0x408 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x487 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x441 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x497 PUSH2 0x4A8 JUMP JUMPDEST SWAP1 POP PUSH2 0x4A3 DUP3 DUP3 PUSH2 0x57D JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x4CD JUMPI PUSH2 0x4CC PUSH2 0x5DD JUMP JUMPDEST JUMPDEST PUSH2 0x4D6 DUP3 PUSH2 0x620 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x536 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x51B JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x545 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x563 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x577 JUMPI PUSH2 0x576 PUSH2 0x5AE JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x586 DUP3 PUSH2 0x620 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x5A5 JUMPI PUSH2 0x5A4 PUSH2 0x5DD JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x63A DUP2 PUSH2 0x4FF JUMP JUMPDEST DUP2 EQ PUSH2 0x645 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH14 0xF454C35AFA3F36BD9A6392F6D471 SDIV SUB 0x4D SWAP13 LOG1 0xE3 0xE9 0x4F DUP15 SWAP14 0xCA 0x24 PUSH31 0xFA20B23864736F6C6343000807003300000000000000000000000000000000 ",
"sourceMap": "57:374:0:-:0;;;;;;;;;;;;;;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@age_3": {
"entryPoint": 567,
"id": 3,
"parameterSlots": 0,
"returnSlots": 0
},
"@getAge_23": {
"entryPoint": 573,
"id": 23,
"parameterSlots": 0,
"returnSlots": 1
},
"@getName_41": {
"entryPoint": 421,
"id": 41,
"parameterSlots": 0,
"returnSlots": 1
},
"@name_5": {
"entryPoint": 279,
"id": 5,
"parameterSlots": 0,
"returnSlots": 0
},
"@setAge_15": {
"entryPoint": 608,
"id": 15,
"parameterSlots": 1,
"returnSlots": 0
},
"@setName_33": {
"entryPoint": 582,
"id": 33,
"parameterSlots": 1,
"returnSlots": 0
},
"abi_decode_available_length_t_string_memory_ptr": {
"entryPoint": 781,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"abi_decode_t_string_memory_ptr": {
"entryPoint": 847,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256": {
"entryPoint": 893,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_string_memory_ptr": {
"entryPoint": 914,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint256": {
"entryPoint": 987,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": {
"entryPoint": 1032,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_t_uint256_to_t_uint256_fromStack": {
"entryPoint": 1089,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 1104,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": {
"entryPoint": 1138,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"allocate_memory": {
"entryPoint": 1165,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"allocate_unbounded": {
"entryPoint": 1192,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
},
"array_allocation_size_t_string_memory_ptr": {
"entryPoint": 1202,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_length_t_string_memory_ptr": {
"entryPoint": 1251,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": {
"entryPoint": 1262,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 1279,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"copy_calldata_to_memory": {
"entryPoint": 1289,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"copy_memory_to_memory": {
"entryPoint": 1304,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"extract_byte_array_length": {
"entryPoint": 1355,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"finalize_allocation": {
"entryPoint": 1405,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"panic_error_0x22": {
"entryPoint": 1454,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x41": {
"entryPoint": 1501,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": {
"entryPoint": 1548,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": {
"entryPoint": 1553,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": {
"entryPoint": 1558,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": {
"entryPoint": 1563,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"round_up_to_mul_of_32": {
"entryPoint": 1568,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"validator_revert_t_uint256": {
"entryPoint": 1585,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:5897:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "91:328:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "101:75:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "168:6:1"
}
],
"functionName": {
"name": "array_allocation_size_t_string_memory_ptr",
"nodeType": "YulIdentifier",
"src": "126:41:1"
},
"nodeType": "YulFunctionCall",
"src": "126:49:1"
}
],
"functionName": {
"name": "allocate_memory",
"nodeType": "YulIdentifier",
"src": "110:15:1"
},
"nodeType": "YulFunctionCall",
"src": "110:66:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "101:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "192:5:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "199:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "185:6:1"
},
"nodeType": "YulFunctionCall",
"src": "185:21:1"
},
"nodeType": "YulExpressionStatement",
"src": "185:21:1"
},
{
"nodeType": "YulVariableDeclaration",
"src": "215:27:1",
"value": {
"arguments": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "230:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "237:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "226:3:1"
},
"nodeType": "YulFunctionCall",
"src": "226:16:1"
},
"variables": [
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "219:3:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "280:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae",
"nodeType": "YulIdentifier",
"src": "282:77:1"
},
"nodeType": "YulFunctionCall",
"src": "282:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "282:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "261:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "266:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "257:3:1"
},
"nodeType": "YulFunctionCall",
"src": "257:16:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "275:3:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "254:2:1"
},
"nodeType": "YulFunctionCall",
"src": "254:25:1"
},
"nodeType": "YulIf",
"src": "251:112:1"
},
{
"expression": {
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "396:3:1"
},
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "401:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "406:6:1"
}
],
"functionName": {
"name": "copy_calldata_to_memory",
"nodeType": "YulIdentifier",
"src": "372:23:1"
},
"nodeType": "YulFunctionCall",
"src": "372:41:1"
},
"nodeType": "YulExpressionStatement",
"src": "372:41:1"
}
]
},
"name": "abi_decode_available_length_t_string_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "64:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "69:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "77:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "85:5:1",
"type": ""
}
],
"src": "7:412:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "501:278:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "550:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nodeType": "YulIdentifier",
"src": "552:77:1"
},
"nodeType": "YulFunctionCall",
"src": "552:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "552:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "529:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "537:4:1",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "525:3:1"
},
"nodeType": "YulFunctionCall",
"src": "525:17:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "544:3:1"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "521:3:1"
},
"nodeType": "YulFunctionCall",
"src": "521:27:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "514:6:1"
},
"nodeType": "YulFunctionCall",
"src": "514:35:1"
},
"nodeType": "YulIf",
"src": "511:122:1"
},
{
"nodeType": "YulVariableDeclaration",
"src": "642:34:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "669:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "656:12:1"
},
"nodeType": "YulFunctionCall",
"src": "656:20:1"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "646:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "685:88:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "746:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "754:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "742:3:1"
},
"nodeType": "YulFunctionCall",
"src": "742:17:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "761:6:1"
},
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "769:3:1"
}
],
"functionName": {
"name": "abi_decode_available_length_t_string_memory_ptr",
"nodeType": "YulIdentifier",
"src": "694:47:1"
},
"nodeType": "YulFunctionCall",
"src": "694:79:1"
},
"variableNames": [
{
"name": "array",
"nodeType": "YulIdentifier",
"src": "685:5:1"
}
]
}
]
},
"name": "abi_decode_t_string_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "479:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "487:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nodeType": "YulTypedName",
"src": "495:5:1",
"type": ""
}
],
"src": "439:340:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "837:87:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "847:29:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "869:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "856:12:1"
},
"nodeType": "YulFunctionCall",
"src": "856:20:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "847:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "912:5:1"
}
],
"functionName": {
"name": "validator_revert_t_uint256",
"nodeType": "YulIdentifier",
"src": "885:26:1"
},
"nodeType": "YulFunctionCall",
"src": "885:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "885:33:1"
}
]
},
"name": "abi_decode_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "815:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "823:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "831:5:1",
"type": ""
}
],
"src": "785:139:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1006:433:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1052:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulIdentifier",
"src": "1054:77:1"
},
"nodeType": "YulFunctionCall",
"src": "1054:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "1054:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1027:7:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1036:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "1023:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1023:23:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1048:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "1019:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1019:32:1"
},
"nodeType": "YulIf",
"src": "1016:119:1"
},
{
"nodeType": "YulBlock",
"src": "1145:287:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "1160:45:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1191:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1202:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1187:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1187:17:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "1174:12:1"
},
"nodeType": "YulFunctionCall",
"src": "1174:31:1"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "1164:6:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "1252:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulIdentifier",
"src": "1254:77:1"
},
"nodeType": "YulFunctionCall",
"src": "1254:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "1254:79:1"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1224:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1232:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "1221:2:1"
},
"nodeType": "YulFunctionCall",
"src": "1221:30:1"
},
"nodeType": "YulIf",
"src": "1218:117:1"
},
{
"nodeType": "YulAssignment",
"src": "1349:73:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1394:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1405:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1390:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1390:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1414:7:1"
}
],
"functionName": {
"name": "abi_decode_t_string_memory_ptr",
"nodeType": "YulIdentifier",
"src": "1359:30:1"
},
"nodeType": "YulFunctionCall",
"src": "1359:63:1"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1349:6:1"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_string_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "976:9:1",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "987:7:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "999:6:1",
"type": ""
}
],
"src": "930:509:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1511:263:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1557:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulIdentifier",
"src": "1559:77:1"
},
"nodeType": "YulFunctionCall",
"src": "1559:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "1559:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1532:7:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1541:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "1528:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1528:23:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1553:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "1524:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1524:32:1"
},
"nodeType": "YulIf",
"src": "1521:119:1"
},
{
"nodeType": "YulBlock",
"src": "1650:117:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "1665:15:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "1679:1:1",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "1669:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "1694:63:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "1729:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "1740:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1725:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1725:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "1749:7:1"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nodeType": "YulIdentifier",
"src": "1704:20:1"
},
"nodeType": "YulFunctionCall",
"src": "1704:53:1"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "1694:6:1"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "1481:9:1",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "1492:7:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "1504:6:1",
"type": ""
}
],
"src": "1445:329:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1872:272:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "1882:53:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1929:5:1"
}
],
"functionName": {
"name": "array_length_t_string_memory_ptr",
"nodeType": "YulIdentifier",
"src": "1896:32:1"
},
"nodeType": "YulFunctionCall",
"src": "1896:39:1"
},
"variables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "1886:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "1944:78:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "2010:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2015:6:1"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "1951:58:1"
},
"nodeType": "YulFunctionCall",
"src": "1951:71:1"
},
"variableNames": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "1944:3:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2057:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2064:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2053:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2053:16:1"
},
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "2071:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2076:6:1"
}
],
"functionName": {
"name": "copy_memory_to_memory",
"nodeType": "YulIdentifier",
"src": "2031:21:1"
},
"nodeType": "YulFunctionCall",
"src": "2031:52:1"
},
"nodeType": "YulExpressionStatement",
"src": "2031:52:1"
},
{
"nodeType": "YulAssignment",
"src": "2092:46:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "2103:3:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "2130:6:1"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nodeType": "YulIdentifier",
"src": "2108:21:1"
},
"nodeType": "YulFunctionCall",
"src": "2108:29:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2099:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2099:39:1"
},
"variableNames": [
{
"name": "end",
"nodeType": "YulIdentifier",
"src": "2092:3:1"
}
]
}
]
},
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1853:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "1860:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nodeType": "YulTypedName",
"src": "1868:3:1",
"type": ""
}
],
"src": "1780:364:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2215:53:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "2232:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2255:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "2237:17:1"
},
"nodeType": "YulFunctionCall",
"src": "2237:24:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2225:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2225:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "2225:37:1"
}
]
},
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2203:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "2210:3:1",
"type": ""
}
],
"src": "2150:118:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2392:195:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2402:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2414:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2425:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2410:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2410:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2402:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2449:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2460:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2445:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2445:17:1"
},
{
"arguments": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2468:4:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2474:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "2464:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2464:20:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "2438:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2438:47:1"
},
"nodeType": "YulExpressionStatement",
"src": "2438:47:1"
},
{
"nodeType": "YulAssignment",
"src": "2494:86:1",
"value": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "2566:6:1"
},
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2575:4:1"
}
],
"functionName": {
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack",
"nodeType": "YulIdentifier",
"src": "2502:63:1"
},
"nodeType": "YulFunctionCall",
"src": "2502:78:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2494:4:1"
}
]
}
]
},
"name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "2364:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "2376:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "2387:4:1",
"type": ""
}
],
"src": "2274:313:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2691:124:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2701:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2713:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2724:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2709:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2709:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "2701:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "2781:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "2794:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2805:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "2790:3:1"
},
"nodeType": "YulFunctionCall",
"src": "2790:17:1"
}
],
"functionName": {
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nodeType": "YulIdentifier",
"src": "2737:43:1"
},
"nodeType": "YulFunctionCall",
"src": "2737:71:1"
},
"nodeType": "YulExpressionStatement",
"src": "2737:71:1"
}
]
},
"name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "2663:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "2675:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "2686:4:1",
"type": ""
}
],
"src": "2593:222:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2862:88:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "2872:30:1",
"value": {
"arguments": [],
"functionName": {
"name": "allocate_unbounded",
"nodeType": "YulIdentifier",
"src": "2882:18:1"
},
"nodeType": "YulFunctionCall",
"src": "2882:20:1"
},
"variableNames": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "2872:6:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "2931:6:1"
},
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "2939:4:1"
}
],
"functionName": {
"name": "finalize_allocation",
"nodeType": "YulIdentifier",
"src": "2911:19:1"
},
"nodeType": "YulFunctionCall",
"src": "2911:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "2911:33:1"
}
]
},
"name": "allocate_memory",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "size",
"nodeType": "YulTypedName",
"src": "2846:4:1",
"type": ""
}
],
"returnVariables": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "2855:6:1",
"type": ""
}
],
"src": "2821:129:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2996:35:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3006:19:1",
"value": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3022:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "3016:5:1"
},
"nodeType": "YulFunctionCall",
"src": "3016:9:1"
},
"variableNames": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "3006:6:1"
}
]
}
]
},
"name": "allocate_unbounded",
"nodeType": "YulFunctionDefinition",
"returnVariables": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "2989:6:1",
"type": ""
}
],
"src": "2956:75:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3104:241:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "3209:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "3211:16:1"
},
"nodeType": "YulFunctionCall",
"src": "3211:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "3211:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3181:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3189:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "3178:2:1"
},
"nodeType": "YulFunctionCall",
"src": "3178:30:1"
},
"nodeType": "YulIf",
"src": "3175:56:1"
},
{
"nodeType": "YulAssignment",
"src": "3241:37:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3271:6:1"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nodeType": "YulIdentifier",
"src": "3249:21:1"
},
"nodeType": "YulFunctionCall",
"src": "3249:29:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "3241:4:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "3315:23:1",
"value": {
"arguments": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "3327:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3333:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3323:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3323:15:1"
},
"variableNames": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "3315:4:1"
}
]
}
]
},
"name": "array_allocation_size_t_string_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "3088:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "size",
"nodeType": "YulTypedName",
"src": "3099:4:1",
"type": ""
}
],
"src": "3037:308:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3410:40:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3421:22:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "3437:5:1"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "3431:5:1"
},
"nodeType": "YulFunctionCall",
"src": "3431:12:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3421:6:1"
}
]
}
]
},
"name": "array_length_t_string_memory_ptr",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "3393:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "3403:6:1",
"type": ""
}
],
"src": "3351:99:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3552:73:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "3569:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3574:6:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3562:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3562:19:1"
},
"nodeType": "YulExpressionStatement",
"src": "3562:19:1"
},
{
"nodeType": "YulAssignment",
"src": "3590:29:1",
"value": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "3609:3:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3614:4:1",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3605:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3605:14:1"
},
"variableNames": [
{
"name": "updated_pos",
"nodeType": "YulIdentifier",
"src": "3590:11:1"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "3524:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "3529:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nodeType": "YulTypedName",
"src": "3540:11:1",
"type": ""
}
],
"src": "3456:169:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3676:32:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3686:16:1",
"value": {
"name": "value",
"nodeType": "YulIdentifier",
"src": "3697:5:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "3686:7:1"
}
]
}
]
},
"name": "cleanup_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "3658:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "3668:7:1",
"type": ""
}
],
"src": "3631:77:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3765:103:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "3788:3:1"
},
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "3793:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3798:6:1"
}
],
"functionName": {
"name": "calldatacopy",
"nodeType": "YulIdentifier",
"src": "3775:12:1"
},
"nodeType": "YulFunctionCall",
"src": "3775:30:1"
},
"nodeType": "YulExpressionStatement",
"src": "3775:30:1"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "3846:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3851:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3842:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3842:16:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3860:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "3835:6:1"
},
"nodeType": "YulFunctionCall",
"src": "3835:27:1"
},
"nodeType": "YulExpressionStatement",
"src": "3835:27:1"
}
]
},
"name": "copy_calldata_to_memory",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "3747:3:1",
"type": ""
},
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "3752:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "3757:6:1",
"type": ""
}
],
"src": "3714:154:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "3923:258:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "3933:10:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "3942:1:1",
"type": "",
"value": "0"
},
"variables": [
{
"name": "i",
"nodeType": "YulTypedName",
"src": "3937:1:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "4002:63:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "4027:3:1"
},
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "4032:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4023:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4023:11:1"
},
{
"arguments": [
{
"arguments": [
{
"name": "src",
"nodeType": "YulIdentifier",
"src": "4046:3:1"
},
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "4051:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4042:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4042:11:1"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "4036:5:1"
},
"nodeType": "YulFunctionCall",
"src": "4036:18:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "4016:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4016:39:1"
},
"nodeType": "YulExpressionStatement",
"src": "4016:39:1"
}
]
},
"condition": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "3963:1:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "3966:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "3960:2:1"
},
"nodeType": "YulFunctionCall",
"src": "3960:13:1"
},
"nodeType": "YulForLoop",
"post": {
"nodeType": "YulBlock",
"src": "3974:19:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "3976:15:1",
"value": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "3985:1:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "3988:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "3981:3:1"
},
"nodeType": "YulFunctionCall",
"src": "3981:10:1"
},
"variableNames": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "3976:1:1"
}
]
}
]
},
"pre": {
"nodeType": "YulBlock",
"src": "3956:3:1",
"statements": []
},
"src": "3952:113:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4099:76:1",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nodeType": "YulIdentifier",
"src": "4149:3:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4154:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4145:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4145:16:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4163:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "4138:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4138:27:1"
},
"nodeType": "YulExpressionStatement",
"src": "4138:27:1"
}
]
},
"condition": {
"arguments": [
{
"name": "i",
"nodeType": "YulIdentifier",
"src": "4080:1:1"
},
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4083:6:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "4077:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4077:13:1"
},
"nodeType": "YulIf",
"src": "4074:101:1"
}
]
},
"name": "copy_memory_to_memory",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "src",
"nodeType": "YulTypedName",
"src": "3905:3:1",
"type": ""
},
{
"name": "dst",
"nodeType": "YulTypedName",
"src": "3910:3:1",
"type": ""
},
{
"name": "length",
"nodeType": "YulTypedName",
"src": "3915:6:1",
"type": ""
}
],
"src": "3874:307:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4238:269:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "4248:22:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "4262:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4268:1:1",
"type": "",
"value": "2"
}
],
"functionName": {
"name": "div",
"nodeType": "YulIdentifier",
"src": "4258:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4258:12:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4248:6:1"
}
]
},
{
"nodeType": "YulVariableDeclaration",
"src": "4279:38:1",
"value": {
"arguments": [
{
"name": "data",
"nodeType": "YulIdentifier",
"src": "4309:4:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4315:1:1",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "4305:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4305:12:1"
},
"variables": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulTypedName",
"src": "4283:18:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "4356:51:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "4370:27:1",
"value": {
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4384:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4392:4:1",
"type": "",
"value": "0x7f"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "4380:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4380:17:1"
},
"variableNames": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4370:6:1"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "4336:18:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "4329:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4329:26:1"
},
"nodeType": "YulIf",
"src": "4326:81:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4459:42:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x22",
"nodeType": "YulIdentifier",
"src": "4473:16:1"
},
"nodeType": "YulFunctionCall",
"src": "4473:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "4473:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nodeType": "YulIdentifier",
"src": "4423:18:1"
},
{
"arguments": [
{
"name": "length",
"nodeType": "YulIdentifier",
"src": "4446:6:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4454:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "4443:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4443:14:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "4420:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4420:38:1"
},
"nodeType": "YulIf",
"src": "4417:84:1"
}
]
},
"name": "extract_byte_array_length",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nodeType": "YulTypedName",
"src": "4222:4:1",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nodeType": "YulTypedName",
"src": "4231:6:1",
"type": ""
}
],
"src": "4187:320:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4556:238:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "4566:58:1",
"value": {
"arguments": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "4588:6:1"
},
{
"arguments": [
{
"name": "size",
"nodeType": "YulIdentifier",
"src": "4618:4:1"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nodeType": "YulIdentifier",
"src": "4596:21:1"
},
"nodeType": "YulFunctionCall",
"src": "4596:27:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "4584:3:1"
},
"nodeType": "YulFunctionCall",
"src": "4584:40:1"
},
"variables": [
{
"name": "newFreePtr",
"nodeType": "YulTypedName",
"src": "4570:10:1",
"type": ""
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "4735:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nodeType": "YulIdentifier",
"src": "4737:16:1"
},
"nodeType": "YulFunctionCall",
"src": "4737:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "4737:18:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "4678:10:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4690:18:1",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "4675:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4675:34:1"
},
{
"arguments": [
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "4714:10:1"
},
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "4726:6:1"
}
],
"functionName": {
"name": "lt",
"nodeType": "YulIdentifier",
"src": "4711:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4711:22:1"
}
],
"functionName": {
"name": "or",
"nodeType": "YulIdentifier",
"src": "4672:2:1"
},
"nodeType": "YulFunctionCall",
"src": "4672:62:1"
},
"nodeType": "YulIf",
"src": "4669:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4773:2:1",
"type": "",
"value": "64"
},
{
"name": "newFreePtr",
"nodeType": "YulIdentifier",
"src": "4777:10:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "4766:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4766:22:1"
},
"nodeType": "YulExpressionStatement",
"src": "4766:22:1"
}
]
},
"name": "finalize_allocation",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "4542:6:1",
"type": ""
},
{
"name": "size",
"nodeType": "YulTypedName",
"src": "4550:4:1",
"type": ""
}
],
"src": "4513:281:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "4828:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4845:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4848:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "4838:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4838:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "4838:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4942:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4945:4:1",
"type": "",
"value": "0x22"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "4935:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4935:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "4935:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4966:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "4969:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "4959:6:1"
},
"nodeType": "YulFunctionCall",
"src": "4959:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "4959:15:1"
}
]
},
"name": "panic_error_0x22",
"nodeType": "YulFunctionDefinition",
"src": "4800:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5014:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5031:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5034:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "5024:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5024:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "5024:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5128:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5131:4:1",
"type": "",
"value": "0x41"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "5121:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5121:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "5121:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5152:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5155:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "5145:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5145:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "5145:15:1"
}
]
},
"name": "panic_error_0x41",
"nodeType": "YulFunctionDefinition",
"src": "4986:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5261:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5278:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5281:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "5271:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5271:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "5271:12:1"
}
]
},
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nodeType": "YulFunctionDefinition",
"src": "5172:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5384:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5401:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5404:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "5394:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5394:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "5394:12:1"
}
]
},
"name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae",
"nodeType": "YulFunctionDefinition",
"src": "5295:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5507:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5524:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5527:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "5517:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5517:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "5517:12:1"
}
]
},
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulFunctionDefinition",
"src": "5418:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5630:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5647:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5650:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "5640:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5640:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "5640:12:1"
}
]
},
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulFunctionDefinition",
"src": "5541:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5712:54:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "5722:38:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "5740:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5747:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "5736:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5736:14:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5756:2:1",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "not",
"nodeType": "YulIdentifier",
"src": "5752:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5752:7:1"
}
],
"functionName": {
"name": "and",
"nodeType": "YulIdentifier",
"src": "5732:3:1"
},
"nodeType": "YulFunctionCall",
"src": "5732:28:1"
},
"variableNames": [
{
"name": "result",
"nodeType": "YulIdentifier",
"src": "5722:6:1"
}
]
}
]
},
"name": "round_up_to_mul_of_32",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "5695:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "result",
"nodeType": "YulTypedName",
"src": "5705:6:1",
"type": ""
}
],
"src": "5664:102:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "5815:79:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "5872:16:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5881:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "5884:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "5874:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5874:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "5874:12:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "5838:5:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "5863:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "5845:17:1"
},
"nodeType": "YulFunctionCall",
"src": "5845:24:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "5835:2:1"
},
"nodeType": "YulFunctionCall",
"src": "5835:35:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "5828:6:1"
},
"nodeType": "YulFunctionCall",
"src": "5828:43:1"
},
"nodeType": "YulIf",
"src": "5825:63:1"
}
]
},
"name": "validator_revert_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "5808:5:1",
"type": ""
}
],
"src": "5772:122:1"
}
]
},
"contents": "{\n\n function abi_decode_available_length_t_string_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_string_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_string_memory_ptr(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := calldataload(add(headStart, 0))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value0 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function array_allocation_size_t_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function copy_calldata_to_memory(src, dst, length) {\n calldatacopy(dst, src, length)\n // clear end\n mstore(add(dst, length), 0)\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "608060405234801561001057600080fd5b50600436106100625760003560e01c806306fdde031461006757806317d7de7c14610085578063262a9dff146100a3578063967e6e65146100c1578063c47f0027146100df578063d5dcf127146100fb575b600080fd5b61006f610117565b60405161007c9190610450565b60405180910390f35b61008d6101a5565b60405161009a9190610450565b60405180910390f35b6100ab610237565b6040516100b89190610472565b60405180910390f35b6100c961023d565b6040516100d69190610472565b60405180910390f35b6100f960048036038101906100f49190610392565b610246565b005b610115600480360381019061011091906103db565b610260565b005b600180546101249061054b565b80601f01602080910402602001604051908101604052809291908181526020018280546101509061054b565b801561019d5780601f106101725761010080835404028352916020019161019d565b820191906000526020600020905b81548152906001019060200180831161018057829003601f168201915b505050505081565b6060600180546101b49061054b565b80601f01602080910402602001604051908101604052809291908181526020018280546101e09061054b565b801561022d5780601f106102025761010080835404028352916020019161022d565b820191906000526020600020905b81548152906001019060200180831161021057829003601f168201915b5050505050905090565b60005481565b60008054905090565b806001908051906020019061025c92919061026a565b5050565b8060008190555050565b8280546102769061054b565b90600052602060002090601f01602090048101928261029857600085556102df565b82601f106102b157805160ff19168380011785556102df565b828001600101855582156102df579182015b828111156102de5782518255916020019190600101906102c3565b5b5090506102ec91906102f0565b5090565b5b808211156103095760008160009055506001016102f1565b5090565b600061032061031b846104b2565b61048d565b90508281526020810184848401111561033c5761033b610611565b5b610347848285610509565b509392505050565b600082601f8301126103645761036361060c565b5b813561037484826020860161030d565b91505092915050565b60008135905061038c81610631565b92915050565b6000602082840312156103a8576103a761061b565b5b600082013567ffffffffffffffff8111156103c6576103c5610616565b5b6103d28482850161034f565b91505092915050565b6000602082840312156103f1576103f061061b565b5b60006103ff8482850161037d565b91505092915050565b6000610413826104e3565b61041d81856104ee565b935061042d818560208601610518565b61043681610620565b840191505092915050565b61044a816104ff565b82525050565b6000602082019050818103600083015261046a8184610408565b905092915050565b60006020820190506104876000830184610441565b92915050565b60006104976104a8565b90506104a3828261057d565b919050565b6000604051905090565b600067ffffffffffffffff8211156104cd576104cc6105dd565b5b6104d682610620565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b6000819050919050565b82818337600083830152505050565b60005b8381101561053657808201518184015260208101905061051b565b83811115610545576000848401525b50505050565b6000600282049050600182168061056357607f821691505b60208210811415610577576105766105ae565b5b50919050565b61058682610620565b810181811067ffffffffffffffff821117156105a5576105a46105dd565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b61063a816104ff565b811461064557600080fd5b5056fea26469706673582212206df454c35afa3f36bd9a6392f6d47105034d9ca1e3e94f8e9dca247efa20b23864736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x62 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x67 JUMPI DUP1 PUSH4 0x17D7DE7C EQ PUSH2 0x85 JUMPI DUP1 PUSH4 0x262A9DFF EQ PUSH2 0xA3 JUMPI DUP1 PUSH4 0x967E6E65 EQ PUSH2 0xC1 JUMPI DUP1 PUSH4 0xC47F0027 EQ PUSH2 0xDF JUMPI DUP1 PUSH4 0xD5DCF127 EQ PUSH2 0xFB JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6F PUSH2 0x117 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7C SWAP2 SWAP1 PUSH2 0x450 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x8D PUSH2 0x1A5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x9A SWAP2 SWAP1 PUSH2 0x450 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xAB PUSH2 0x237 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB8 SWAP2 SWAP1 PUSH2 0x472 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xC9 PUSH2 0x23D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD6 SWAP2 SWAP1 PUSH2 0x472 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xF9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xF4 SWAP2 SWAP1 PUSH2 0x392 JUMP JUMPDEST PUSH2 0x246 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x115 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x110 SWAP2 SWAP1 PUSH2 0x3DB JUMP JUMPDEST PUSH2 0x260 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x1 DUP1 SLOAD PUSH2 0x124 SWAP1 PUSH2 0x54B JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x150 SWAP1 PUSH2 0x54B JUMP JUMPDEST DUP1 ISZERO PUSH2 0x19D JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x172 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x19D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x180 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x1 DUP1 SLOAD PUSH2 0x1B4 SWAP1 PUSH2 0x54B JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1E0 SWAP1 PUSH2 0x54B JUMP JUMPDEST DUP1 ISZERO PUSH2 0x22D JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x202 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x22D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x210 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST DUP1 PUSH1 0x1 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x25C SWAP3 SWAP2 SWAP1 PUSH2 0x26A JUMP JUMPDEST POP POP JUMP JUMPDEST DUP1 PUSH1 0x0 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x276 SWAP1 PUSH2 0x54B JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x298 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x2DF JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x2B1 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x2DF JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x2DF JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x2DE JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x2C3 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x2EC SWAP2 SWAP1 PUSH2 0x2F0 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x309 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x2F1 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x320 PUSH2 0x31B DUP5 PUSH2 0x4B2 JUMP JUMPDEST PUSH2 0x48D JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x33C JUMPI PUSH2 0x33B PUSH2 0x611 JUMP JUMPDEST JUMPDEST PUSH2 0x347 DUP5 DUP3 DUP6 PUSH2 0x509 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x364 JUMPI PUSH2 0x363 PUSH2 0x60C JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x374 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x30D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x38C DUP2 PUSH2 0x631 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3A8 JUMPI PUSH2 0x3A7 PUSH2 0x61B JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3C6 JUMPI PUSH2 0x3C5 PUSH2 0x616 JUMP JUMPDEST JUMPDEST PUSH2 0x3D2 DUP5 DUP3 DUP6 ADD PUSH2 0x34F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3F1 JUMPI PUSH2 0x3F0 PUSH2 0x61B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3FF DUP5 DUP3 DUP6 ADD PUSH2 0x37D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x413 DUP3 PUSH2 0x4E3 JUMP JUMPDEST PUSH2 0x41D DUP2 DUP6 PUSH2 0x4EE JUMP JUMPDEST SWAP4 POP PUSH2 0x42D DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x518 JUMP JUMPDEST PUSH2 0x436 DUP2 PUSH2 0x620 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x44A DUP2 PUSH2 0x4FF JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x46A DUP2 DUP5 PUSH2 0x408 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x487 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x441 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x497 PUSH2 0x4A8 JUMP JUMPDEST SWAP1 POP PUSH2 0x4A3 DUP3 DUP3 PUSH2 0x57D JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x4CD JUMPI PUSH2 0x4CC PUSH2 0x5DD JUMP JUMPDEST JUMPDEST PUSH2 0x4D6 DUP3 PUSH2 0x620 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x536 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x51B JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x545 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x563 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x577 JUMPI PUSH2 0x576 PUSH2 0x5AE JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x586 DUP3 PUSH2 0x620 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x5A5 JUMPI PUSH2 0x5A4 PUSH2 0x5DD JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x63A DUP2 PUSH2 0x4FF JUMP JUMPDEST DUP2 EQ PUSH2 0x645 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH14 0xF454C35AFA3F36BD9A6392F6D471 SDIV SUB 0x4D SWAP13 LOG1 0xE3 0xE9 0x4F DUP15 SWAP14 0xCA 0x24 PUSH31 0xFA20B23864736F6C6343000807003300000000000000000000000000000000 ",
"sourceMap": "57:374:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;98:18;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;345:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;76:15;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;185:72;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;263:76;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;123:56;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;98:18;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;345:83::-;384:13;416:4;409:11;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;345:83;:::o;76:15::-;;;;:::o;185:72::-;223:4;246:3;;239:10;;185:72;:::o;263:76::-;326:5;319:4;:12;;;;;;;;;;;;:::i;:::-;;263:76;:::o;123:56::-;170:1;164:3;:7;;;;123:56;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:412:1:-;85:5;110:66;126:49;168:6;126:49;:::i;:::-;110:66;:::i;:::-;101:75;;199:6;192:5;185:21;237:4;230:5;226:16;275:3;266:6;261:3;257:16;254:25;251:112;;;282:79;;:::i;:::-;251:112;372:41;406:6;401:3;396;372:41;:::i;:::-;91:328;7:412;;;;;:::o;439:340::-;495:5;544:3;537:4;529:6;525:17;521:27;511:122;;552:79;;:::i;:::-;511:122;669:6;656:20;694:79;769:3;761:6;754:4;746:6;742:17;694:79;:::i;:::-;685:88;;501:278;439:340;;;;:::o;785:139::-;831:5;869:6;856:20;847:29;;885:33;912:5;885:33;:::i;:::-;785:139;;;;:::o;930:509::-;999:6;1048:2;1036:9;1027:7;1023:23;1019:32;1016:119;;;1054:79;;:::i;:::-;1016:119;1202:1;1191:9;1187:17;1174:31;1232:18;1224:6;1221:30;1218:117;;;1254:79;;:::i;:::-;1218:117;1359:63;1414:7;1405:6;1394:9;1390:22;1359:63;:::i;:::-;1349:73;;1145:287;930:509;;;;:::o;1445:329::-;1504:6;1553:2;1541:9;1532:7;1528:23;1524:32;1521:119;;;1559:79;;:::i;:::-;1521:119;1679:1;1704:53;1749:7;1740:6;1729:9;1725:22;1704:53;:::i;:::-;1694:63;;1650:117;1445:329;;;;:::o;1780:364::-;1868:3;1896:39;1929:5;1896:39;:::i;:::-;1951:71;2015:6;2010:3;1951:71;:::i;:::-;1944:78;;2031:52;2076:6;2071:3;2064:4;2057:5;2053:16;2031:52;:::i;:::-;2108:29;2130:6;2108:29;:::i;:::-;2103:3;2099:39;2092:46;;1872:272;1780:364;;;;:::o;2150:118::-;2237:24;2255:5;2237:24;:::i;:::-;2232:3;2225:37;2150:118;;:::o;2274:313::-;2387:4;2425:2;2414:9;2410:18;2402:26;;2474:9;2468:4;2464:20;2460:1;2449:9;2445:17;2438:47;2502:78;2575:4;2566:6;2502:78;:::i;:::-;2494:86;;2274:313;;;;:::o;2593:222::-;2686:4;2724:2;2713:9;2709:18;2701:26;;2737:71;2805:1;2794:9;2790:17;2781:6;2737:71;:::i;:::-;2593:222;;;;:::o;2821:129::-;2855:6;2882:20;;:::i;:::-;2872:30;;2911:33;2939:4;2931:6;2911:33;:::i;:::-;2821:129;;;:::o;2956:75::-;2989:6;3022:2;3016:9;3006:19;;2956:75;:::o;3037:308::-;3099:4;3189:18;3181:6;3178:30;3175:56;;;3211:18;;:::i;:::-;3175:56;3249:29;3271:6;3249:29;:::i;:::-;3241:37;;3333:4;3327;3323:15;3315:23;;3037:308;;;:::o;3351:99::-;3403:6;3437:5;3431:12;3421:22;;3351:99;;;:::o;3456:169::-;3540:11;3574:6;3569:3;3562:19;3614:4;3609:3;3605:14;3590:29;;3456:169;;;;:::o;3631:77::-;3668:7;3697:5;3686:16;;3631:77;;;:::o;3714:154::-;3798:6;3793:3;3788;3775:30;3860:1;3851:6;3846:3;3842:16;3835:27;3714:154;;;:::o;3874:307::-;3942:1;3952:113;3966:6;3963:1;3960:13;3952:113;;;4051:1;4046:3;4042:11;4036:18;4032:1;4027:3;4023:11;4016:39;3988:2;3985:1;3981:10;3976:15;;3952:113;;;4083:6;4080:1;4077:13;4074:101;;;4163:1;4154:6;4149:3;4145:16;4138:27;4074:101;3923:258;3874:307;;;:::o;4187:320::-;4231:6;4268:1;4262:4;4258:12;4248:22;;4315:1;4309:4;4305:12;4336:18;4326:81;;4392:4;4384:6;4380:17;4370:27;;4326:81;4454:2;4446:6;4443:14;4423:18;4420:38;4417:84;;;4473:18;;:::i;:::-;4417:84;4238:269;4187:320;;;:::o;4513:281::-;4596:27;4618:4;4596:27;:::i;:::-;4588:6;4584:40;4726:6;4714:10;4711:22;4690:18;4678:10;4675:34;4672:62;4669:88;;;4737:18;;:::i;:::-;4669:88;4777:10;4773:2;4766:22;4556:238;4513:281;;:::o;4800:180::-;4848:77;4845:1;4838:88;4945:4;4942:1;4935:15;4969:4;4966:1;4959:15;4986:180;5034:77;5031:1;5024:88;5131:4;5128:1;5121:15;5155:4;5152:1;5145:15;5172:117;5281:1;5278;5271:12;5295:117;5404:1;5401;5394:12;5418:117;5527:1;5524;5517:12;5541:117;5650:1;5647;5640:12;5664:102;5705:6;5756:2;5752:7;5747:2;5740:5;5736:14;5732:28;5722:38;;5664:102;;;:::o;5772:122::-;5845:24;5863:5;5845:24;:::i;:::-;5838:5;5835:35;5825:63;;5884:1;5881;5874:12;5825:63;5772:122;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "332400",
"executionCost": "368",
"totalCost": "332768"
},
"external": {
"age()": "2451",
"getAge()": "2481",
"getName()": "infinite",
"name()": "infinite",
"setAge(uint256)": "22608",
"setName(string)": "infinite"
}
},
"legacyAssembly": {
".code": [
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 57,
"end": 431,
"name": "MSTORE",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "ISZERO",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 431,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "REVERT",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 431,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH #[$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 57,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH [$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 431,
"name": "CODECOPY",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 431,
"name": "RETURN",
"source": 0
}
],
".data": {
"0": {
".auxdata": "a26469706673582212206df454c35afa3f36bd9a6392f6d47105034d9ca1e3e94f8e9dca247efa20b23864736f6c63430008070033",
".code": [
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 57,
"end": 431,
"name": "MSTORE",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "ISZERO",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 431,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "REVERT",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 431,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 57,
"end": 431,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "LT",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 57,
"end": 431,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 431,
"name": "CALLDATALOAD",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "E0"
},
{
"begin": 57,
"end": 431,
"name": "SHR",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "6FDDE03"
},
{
"begin": 57,
"end": 431,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 57,
"end": 431,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "17D7DE7C"
},
{
"begin": 57,
"end": 431,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 57,
"end": 431,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "262A9DFF"
},
{
"begin": 57,
"end": 431,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 57,
"end": 431,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "967E6E65"
},
{
"begin": 57,
"end": 431,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 57,
"end": 431,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "C47F0027"
},
{
"begin": 57,
"end": 431,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 57,
"end": 431,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "D5DCF127"
},
{
"begin": 57,
"end": 431,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 57,
"end": 431,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 57,
"end": 431,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 431,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 431,
"name": "REVERT",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 98,
"end": 116,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH [tag]",
"source": 0,
"value": "9"
},
{
"begin": 98,
"end": 116,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 98,
"end": 116,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 98,
"end": 116,
"name": "tag",
"source": 0,
"value": "9"
},
{
"begin": 98,
"end": 116,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 98,
"end": 116,
"name": "MLOAD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH [tag]",
"source": 0,
"value": "11"
},
{
"begin": 98,
"end": 116,
"name": "SWAP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 98,
"end": 116,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 98,
"end": 116,
"name": "tag",
"source": 0,
"value": "11"
},
{
"begin": 98,
"end": 116,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 98,
"end": 116,
"name": "MLOAD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SUB",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "RETURN",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 345,
"end": 428,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "PUSH [tag]",
"source": 0,
"value": "13"
},
{
"begin": 345,
"end": 428,
"name": "PUSH [tag]",
"source": 0,
"value": "14"
},
{
"begin": 345,
"end": 428,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 345,
"end": 428,
"name": "tag",
"source": 0,
"value": "13"
},
{
"begin": 345,
"end": 428,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 345,
"end": 428,
"name": "MLOAD",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "PUSH [tag]",
"source": 0,
"value": "15"
},
{
"begin": 345,
"end": 428,
"name": "SWAP2",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "SWAP1",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 345,
"end": 428,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 345,
"end": 428,
"name": "tag",
"source": 0,
"value": "15"
},
{
"begin": 345,
"end": 428,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 345,
"end": 428,
"name": "MLOAD",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "DUP1",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "SWAP2",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "SUB",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "SWAP1",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "RETURN",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "tag",
"source": 0,
"value": "5"
},
{
"begin": 76,
"end": 91,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "PUSH [tag]",
"source": 0,
"value": "16"
},
{
"begin": 76,
"end": 91,
"name": "PUSH [tag]",
"source": 0,
"value": "17"
},
{
"begin": 76,
"end": 91,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 76,
"end": 91,
"name": "tag",
"source": 0,
"value": "16"
},
{
"begin": 76,
"end": 91,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 76,
"end": 91,
"name": "MLOAD",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "PUSH [tag]",
"source": 0,
"value": "18"
},
{
"begin": 76,
"end": 91,
"name": "SWAP2",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "SWAP1",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "PUSH [tag]",
"source": 0,
"value": "19"
},
{
"begin": 76,
"end": 91,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 76,
"end": 91,
"name": "tag",
"source": 0,
"value": "18"
},
{
"begin": 76,
"end": 91,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 76,
"end": 91,
"name": "MLOAD",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "DUP1",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "SWAP2",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "SUB",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "SWAP1",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "RETURN",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 185,
"end": 257,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "PUSH [tag]",
"source": 0,
"value": "20"
},
{
"begin": 185,
"end": 257,
"name": "PUSH [tag]",
"source": 0,
"value": "21"
},
{
"begin": 185,
"end": 257,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 185,
"end": 257,
"name": "tag",
"source": 0,
"value": "20"
},
{
"begin": 185,
"end": 257,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 185,
"end": 257,
"name": "MLOAD",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "PUSH [tag]",
"source": 0,
"value": "22"
},
{
"begin": 185,
"end": 257,
"name": "SWAP2",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "SWAP1",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "PUSH [tag]",
"source": 0,
"value": "19"
},
{
"begin": 185,
"end": 257,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 185,
"end": 257,
"name": "tag",
"source": 0,
"value": "22"
},
{
"begin": 185,
"end": 257,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 185,
"end": 257,
"name": "MLOAD",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "DUP1",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "SWAP2",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "SUB",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "SWAP1",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "RETURN",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "tag",
"source": 0,
"value": "7"
},
{
"begin": 263,
"end": 339,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "PUSH [tag]",
"source": 0,
"value": "23"
},
{
"begin": 263,
"end": 339,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 263,
"end": 339,
"name": "DUP1",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "SUB",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "DUP2",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "ADD",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "SWAP1",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "PUSH [tag]",
"source": 0,
"value": "24"
},
{
"begin": 263,
"end": 339,
"name": "SWAP2",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "SWAP1",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "PUSH [tag]",
"source": 0,
"value": "25"
},
{
"begin": 263,
"end": 339,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 263,
"end": 339,
"name": "tag",
"source": 0,
"value": "24"
},
{
"begin": 263,
"end": 339,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "PUSH [tag]",
"source": 0,
"value": "26"
},
{
"begin": 263,
"end": 339,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 263,
"end": 339,
"name": "tag",
"source": 0,
"value": "23"
},
{
"begin": 263,
"end": 339,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "STOP",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "tag",
"source": 0,
"value": "8"
},
{
"begin": 123,
"end": 179,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "PUSH [tag]",
"source": 0,
"value": "27"
},
{
"begin": 123,
"end": 179,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 123,
"end": 179,
"name": "DUP1",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "SUB",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "DUP2",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "ADD",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "SWAP1",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "PUSH [tag]",
"source": 0,
"value": "28"
},
{
"begin": 123,
"end": 179,
"name": "SWAP2",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "SWAP1",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "PUSH [tag]",
"source": 0,
"value": "29"
},
{
"begin": 123,
"end": 179,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 123,
"end": 179,
"name": "tag",
"source": 0,
"value": "28"
},
{
"begin": 123,
"end": 179,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "PUSH [tag]",
"source": 0,
"value": "30"
},
{
"begin": 123,
"end": 179,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 123,
"end": 179,
"name": "tag",
"source": 0,
"value": "27"
},
{
"begin": 123,
"end": 179,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "STOP",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "tag",
"source": 0,
"value": "10"
},
{
"begin": 98,
"end": 116,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 98,
"end": 116,
"name": "DUP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SLOAD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH [tag]",
"source": 0,
"value": "31"
},
{
"begin": 98,
"end": 116,
"name": "SWAP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH [tag]",
"source": 0,
"value": "32"
},
{
"begin": 98,
"end": 116,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 98,
"end": 116,
"name": "tag",
"source": 0,
"value": "31"
},
{
"begin": 98,
"end": 116,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 98,
"end": 116,
"name": "ADD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 98,
"end": 116,
"name": "DUP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DIV",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "MUL",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 98,
"end": 116,
"name": "ADD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 98,
"end": 116,
"name": "MLOAD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "ADD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 98,
"end": 116,
"name": "MSTORE",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP3",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "MSTORE",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 98,
"end": 116,
"name": "ADD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP3",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SLOAD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH [tag]",
"source": 0,
"value": "33"
},
{
"begin": 98,
"end": 116,
"name": "SWAP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH [tag]",
"source": 0,
"value": "32"
},
{
"begin": 98,
"end": 116,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 98,
"end": 116,
"name": "tag",
"source": 0,
"value": "33"
},
{
"begin": 98,
"end": 116,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "ISZERO",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH [tag]",
"source": 0,
"value": "34"
},
{
"begin": 98,
"end": 116,
"name": "JUMPI",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 98,
"end": 116,
"name": "LT",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH [tag]",
"source": 0,
"value": "35"
},
{
"begin": 98,
"end": 116,
"name": "JUMPI",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 98,
"end": 116,
"name": "DUP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP4",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SLOAD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DIV",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "MUL",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP4",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "MSTORE",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 98,
"end": 116,
"name": "ADD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH [tag]",
"source": 0,
"value": "34"
},
{
"begin": 98,
"end": 116,
"name": "JUMP",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "tag",
"source": 0,
"value": "35"
},
{
"begin": 98,
"end": 116,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP3",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "ADD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 98,
"end": 116,
"name": "MSTORE",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 98,
"end": 116,
"name": "KECCAK256",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "tag",
"source": 0,
"value": "36"
},
{
"begin": 98,
"end": 116,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SLOAD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "MSTORE",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 98,
"end": 116,
"name": "ADD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 98,
"end": 116,
"name": "ADD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP4",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "GT",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH [tag]",
"source": 0,
"value": "36"
},
{
"begin": 98,
"end": 116,
"name": "JUMPI",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP3",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP1",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SUB",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 98,
"end": 116,
"name": "AND",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP3",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "ADD",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "SWAP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "tag",
"source": 0,
"value": "34"
},
{
"begin": 98,
"end": 116,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "POP",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "POP",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "POP",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "POP",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "POP",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "DUP2",
"source": 0
},
{
"begin": 98,
"end": 116,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 345,
"end": 428,
"name": "tag",
"source": 0,
"value": "14"
},
{
"begin": 345,
"end": 428,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 384,
"end": 397,
"name": "PUSH",
"source": 0,
"value": "60"
},
{
"begin": 416,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 409,
"end": 420,
"name": "DUP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SLOAD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH [tag]",
"source": 0,
"value": "38"
},
{
"begin": 409,
"end": 420,
"name": "SWAP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH [tag]",
"source": 0,
"value": "32"
},
{
"begin": 409,
"end": 420,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 409,
"end": 420,
"name": "tag",
"source": 0,
"value": "38"
},
{
"begin": 409,
"end": 420,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 409,
"end": 420,
"name": "ADD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 409,
"end": 420,
"name": "DUP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP2",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DIV",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "MUL",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 409,
"end": 420,
"name": "ADD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 409,
"end": 420,
"name": "MLOAD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP2",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "ADD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 409,
"end": 420,
"name": "MSTORE",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP3",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP2",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP2",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP2",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "MSTORE",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 409,
"end": 420,
"name": "ADD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP3",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SLOAD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH [tag]",
"source": 0,
"value": "39"
},
{
"begin": 409,
"end": 420,
"name": "SWAP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH [tag]",
"source": 0,
"value": "32"
},
{
"begin": 409,
"end": 420,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 409,
"end": 420,
"name": "tag",
"source": 0,
"value": "39"
},
{
"begin": 409,
"end": 420,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "ISZERO",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH [tag]",
"source": 0,
"value": "40"
},
{
"begin": 409,
"end": 420,
"name": "JUMPI",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 409,
"end": 420,
"name": "LT",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH [tag]",
"source": 0,
"value": "41"
},
{
"begin": 409,
"end": 420,
"name": "JUMPI",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "100"
},
{
"begin": 409,
"end": 420,
"name": "DUP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP4",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SLOAD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DIV",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "MUL",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP4",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "MSTORE",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP2",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 409,
"end": 420,
"name": "ADD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP2",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH [tag]",
"source": 0,
"value": "40"
},
{
"begin": 409,
"end": 420,
"name": "JUMP",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "tag",
"source": 0,
"value": "41"
},
{
"begin": 409,
"end": 420,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP3",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "ADD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP2",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 409,
"end": 420,
"name": "MSTORE",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 409,
"end": 420,
"name": "KECCAK256",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "tag",
"source": 0,
"value": "42"
},
{
"begin": 409,
"end": 420,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP2",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SLOAD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP2",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "MSTORE",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 409,
"end": 420,
"name": "ADD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 409,
"end": 420,
"name": "ADD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP4",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "GT",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH [tag]",
"source": 0,
"value": "42"
},
{
"begin": 409,
"end": 420,
"name": "JUMPI",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP3",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SUB",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "PUSH",
"source": 0,
"value": "1F"
},
{
"begin": 409,
"end": 420,
"name": "AND",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "DUP3",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "ADD",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP2",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "tag",
"source": 0,
"value": "40"
},
{
"begin": 409,
"end": 420,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "POP",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "POP",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "POP",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "POP",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "POP",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "SWAP1",
"source": 0
},
{
"begin": 409,
"end": 420,
"name": "POP",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "SWAP1",
"source": 0
},
{
"begin": 345,
"end": 428,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 76,
"end": 91,
"name": "tag",
"source": 0,
"value": "17"
},
{
"begin": 76,
"end": 91,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 76,
"end": 91,
"name": "SLOAD",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "DUP2",
"source": 0
},
{
"begin": 76,
"end": 91,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 185,
"end": 257,
"name": "tag",
"source": 0,
"value": "21"
},
{
"begin": 185,
"end": 257,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 223,
"end": 227,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 246,
"end": 249,
"name": "DUP1",
"source": 0
},
{
"begin": 246,
"end": 249,
"name": "SLOAD",
"source": 0
},
{
"begin": 239,
"end": 249,
"name": "SWAP1",
"source": 0
},
{
"begin": 239,
"end": 249,
"name": "POP",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "SWAP1",
"source": 0
},
{
"begin": 185,
"end": 257,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 263,
"end": 339,
"name": "tag",
"source": 0,
"value": "26"
},
{
"begin": 263,
"end": 339,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 326,
"end": 331,
"name": "DUP1",
"source": 0
},
{
"begin": 319,
"end": 323,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 319,
"end": 331,
"name": "SWAP1",
"source": 0
},
{
"begin": 319,
"end": 331,
"name": "DUP1",
"source": 0
},
{
"begin": 319,
"end": 331,
"name": "MLOAD",
"source": 0
},
{
"begin": 319,
"end": 331,
"name": "SWAP1",
"source": 0
},
{
"begin": 319,
"end": 331,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 319,
"end": 331,
"name": "ADD",
"source": 0
},
{
"begin": 319,
"end": 331,
"name": "SWAP1",
"source": 0
},
{
"begin": 319,
"end": 331,
"name": "PUSH [tag]",
"source": 0,
"value": "45"
},
{
"begin": 319,
"end": 331,
"name": "SWAP3",
"source": 0
},
{
"begin": 319,
"end": 331,
"name": "SWAP2",
"source": 0
},
{
"begin": 319,
"end": 331,
"name": "SWAP1",
"source": 0
},
{
"begin": 319,
"end": 331,
"name": "PUSH [tag]",
"source": 0,
"value": "46"
},
{
"begin": 319,
"end": 331,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 319,
"end": 331,
"name": "tag",
"source": 0,
"value": "45"
},
{
"begin": 319,
"end": 331,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 319,
"end": 331,
"name": "POP",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "POP",
"source": 0
},
{
"begin": 263,
"end": 339,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 123,
"end": 179,
"name": "tag",
"source": 0,
"value": "30"
},
{
"begin": 123,
"end": 179,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 170,
"end": 171,
"name": "DUP1",
"source": 0
},
{
"begin": 164,
"end": 167,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 164,
"end": 171,
"name": "DUP2",
"source": 0
},
{
"begin": 164,
"end": 171,
"name": "SWAP1",
"source": 0
},
{
"begin": 164,
"end": 171,
"name": "SSTORE",
"source": 0
},
{
"begin": 164,
"end": 171,
"name": "POP",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "POP",
"source": 0
},
{
"begin": 123,
"end": 179,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": -1,
"end": -1,
"name": "tag",
"source": -1,
"value": "46"
},
{
"begin": -1,
"end": -1,
"name": "JUMPDEST",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP3",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SLOAD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "48"
},
{
"begin": -1,
"end": -1,
"name": "SWAP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "32"
},
{
"begin": -1,
"end": -1,
"name": "JUMP",
"source": -1,
"value": "[in]"
},
{
"begin": -1,
"end": -1,
"name": "tag",
"source": -1,
"value": "48"
},
{
"begin": -1,
"end": -1,
"name": "JUMPDEST",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "0"
},
{
"begin": -1,
"end": -1,
"name": "MSTORE",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "20"
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "0"
},
{
"begin": -1,
"end": -1,
"name": "KECCAK256",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1F"
},
{
"begin": -1,
"end": -1,
"name": "ADD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "20"
},
{
"begin": -1,
"end": -1,
"name": "SWAP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DIV",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP2",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "ADD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP3",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP3",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "50"
},
{
"begin": -1,
"end": -1,
"name": "JUMPI",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "0"
},
{
"begin": -1,
"end": -1,
"name": "DUP6",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SSTORE",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "49"
},
{
"begin": -1,
"end": -1,
"name": "JUMP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "tag",
"source": -1,
"value": "50"
},
{
"begin": -1,
"end": -1,
"name": "JUMPDEST",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP3",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1F"
},
{
"begin": -1,
"end": -1,
"name": "LT",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "51"
},
{
"begin": -1,
"end": -1,
"name": "JUMPI",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "MLOAD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "FF"
},
{
"begin": -1,
"end": -1,
"name": "NOT",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "AND",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP4",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "ADD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "OR",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP6",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SSTORE",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "49"
},
{
"begin": -1,
"end": -1,
"name": "JUMP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "tag",
"source": -1,
"value": "51"
},
{
"begin": -1,
"end": -1,
"name": "JUMPDEST",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP3",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "ADD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "ADD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP6",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SSTORE",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP3",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "ISZERO",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "49"
},
{
"begin": -1,
"end": -1,
"name": "JUMPI",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP2",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP3",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "ADD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "tag",
"source": -1,
"value": "52"
},
{
"begin": -1,
"end": -1,
"name": "JUMPDEST",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP3",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP2",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "GT",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "ISZERO",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "53"
},
{
"begin": -1,
"end": -1,
"name": "JUMPI",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP3",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "MLOAD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP3",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SSTORE",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP2",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "20"
},
{
"begin": -1,
"end": -1,
"name": "ADD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP2",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "ADD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "52"
},
{
"begin": -1,
"end": -1,
"name": "JUMP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "tag",
"source": -1,
"value": "53"
},
{
"begin": -1,
"end": -1,
"name": "JUMPDEST",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "tag",
"source": -1,
"value": "49"
},
{
"begin": -1,
"end": -1,
"name": "JUMPDEST",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "54"
},
{
"begin": -1,
"end": -1,
"name": "SWAP2",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "55"
},
{
"begin": -1,
"end": -1,
"name": "JUMP",
"source": -1,
"value": "[in]"
},
{
"begin": -1,
"end": -1,
"name": "tag",
"source": -1,
"value": "54"
},
{
"begin": -1,
"end": -1,
"name": "JUMPDEST",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "JUMP",
"source": -1,
"value": "[out]"
},
{
"begin": -1,
"end": -1,
"name": "tag",
"source": -1,
"value": "55"
},
{
"begin": -1,
"end": -1,
"name": "JUMPDEST",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "tag",
"source": -1,
"value": "56"
},
{
"begin": -1,
"end": -1,
"name": "JUMPDEST",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "DUP3",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "GT",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "ISZERO",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "57"
},
{
"begin": -1,
"end": -1,
"name": "JUMPI",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "0"
},
{
"begin": -1,
"end": -1,
"name": "DUP2",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "0"
},
{
"begin": -1,
"end": -1,
"name": "SWAP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SSTORE",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH",
"source": -1,
"value": "1"
},
{
"begin": -1,
"end": -1,
"name": "ADD",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "PUSH [tag]",
"source": -1,
"value": "56"
},
{
"begin": -1,
"end": -1,
"name": "JUMP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "tag",
"source": -1,
"value": "57"
},
{
"begin": -1,
"end": -1,
"name": "JUMPDEST",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "POP",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "SWAP1",
"source": -1
},
{
"begin": -1,
"end": -1,
"name": "JUMP",
"source": -1,
"value": "[out]"
},
{
"begin": 7,
"end": 419,
"name": "tag",
"source": 1,
"value": "59"
},
{
"begin": 7,
"end": 419,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 85,
"end": 90,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 110,
"end": 176,
"name": "PUSH [tag]",
"source": 1,
"value": "61"
},
{
"begin": 126,
"end": 175,
"name": "PUSH [tag]",
"source": 1,
"value": "62"
},
{
"begin": 168,
"end": 174,
"name": "DUP5",
"source": 1
},
{
"begin": 126,
"end": 175,
"name": "PUSH [tag]",
"source": 1,
"value": "63"
},
{
"begin": 126,
"end": 175,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 126,
"end": 175,
"name": "tag",
"source": 1,
"value": "62"
},
{
"begin": 126,
"end": 175,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 110,
"end": 176,
"name": "PUSH [tag]",
"source": 1,
"value": "64"
},
{
"begin": 110,
"end": 176,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 110,
"end": 176,
"name": "tag",
"source": 1,
"value": "61"
},
{
"begin": 110,
"end": 176,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 101,
"end": 176,
"name": "SWAP1",
"source": 1
},
{
"begin": 101,
"end": 176,
"name": "POP",
"source": 1
},
{
"begin": 199,
"end": 205,
"name": "DUP3",
"source": 1
},
{
"begin": 192,
"end": 197,
"name": "DUP2",
"source": 1
},
{
"begin": 185,
"end": 206,
"name": "MSTORE",
"source": 1
},
{
"begin": 237,
"end": 241,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 230,
"end": 235,
"name": "DUP2",
"source": 1
},
{
"begin": 226,
"end": 242,
"name": "ADD",
"source": 1
},
{
"begin": 275,
"end": 278,
"name": "DUP5",
"source": 1
},
{
"begin": 266,
"end": 272,
"name": "DUP5",
"source": 1
},
{
"begin": 261,
"end": 264,
"name": "DUP5",
"source": 1
},
{
"begin": 257,
"end": 273,
"name": "ADD",
"source": 1
},
{
"begin": 254,
"end": 279,
"name": "GT",
"source": 1
},
{
"begin": 251,
"end": 363,
"name": "ISZERO",
"source": 1
},
{
"begin": 251,
"end": 363,
"name": "PUSH [tag]",
"source": 1,
"value": "65"
},
{
"begin": 251,
"end": 363,
"name": "JUMPI",
"source": 1
},
{
"begin": 282,
"end": 361,
"name": "PUSH [tag]",
"source": 1,
"value": "66"
},
{
"begin": 282,
"end": 361,
"name": "PUSH [tag]",
"source": 1,
"value": "67"
},
{
"begin": 282,
"end": 361,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 282,
"end": 361,
"name": "tag",
"source": 1,
"value": "66"
},
{
"begin": 282,
"end": 361,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 251,
"end": 363,
"name": "tag",
"source": 1,
"value": "65"
},
{
"begin": 251,
"end": 363,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 372,
"end": 413,
"name": "PUSH [tag]",
"source": 1,
"value": "68"
},
{
"begin": 406,
"end": 412,
"name": "DUP5",
"source": 1
},
{
"begin": 401,
"end": 404,
"name": "DUP3",
"source": 1
},
{
"begin": 396,
"end": 399,
"name": "DUP6",
"source": 1
},
{
"begin": 372,
"end": 413,
"name": "PUSH [tag]",
"source": 1,
"value": "69"
},
{
"begin": 372,
"end": 413,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 372,
"end": 413,
"name": "tag",
"source": 1,
"value": "68"
},
{
"begin": 372,
"end": 413,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 91,
"end": 419,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 419,
"name": "SWAP4",
"source": 1
},
{
"begin": 7,
"end": 419,
"name": "SWAP3",
"source": 1
},
{
"begin": 7,
"end": 419,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 419,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 419,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 419,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 439,
"end": 779,
"name": "tag",
"source": 1,
"value": "70"
},
{
"begin": 439,
"end": 779,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 495,
"end": 500,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 544,
"end": 547,
"name": "DUP3",
"source": 1
},
{
"begin": 537,
"end": 541,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 529,
"end": 535,
"name": "DUP4",
"source": 1
},
{
"begin": 525,
"end": 542,
"name": "ADD",
"source": 1
},
{
"begin": 521,
"end": 548,
"name": "SLT",
"source": 1
},
{
"begin": 511,
"end": 633,
"name": "PUSH [tag]",
"source": 1,
"value": "72"
},
{
"begin": 511,
"end": 633,
"name": "JUMPI",
"source": 1
},
{
"begin": 552,
"end": 631,
"name": "PUSH [tag]",
"source": 1,
"value": "73"
},
{
"begin": 552,
"end": 631,
"name": "PUSH [tag]",
"source": 1,
"value": "74"
},
{
"begin": 552,
"end": 631,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 552,
"end": 631,
"name": "tag",
"source": 1,
"value": "73"
},
{
"begin": 552,
"end": 631,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 511,
"end": 633,
"name": "tag",
"source": 1,
"value": "72"
},
{
"begin": 511,
"end": 633,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 669,
"end": 675,
"name": "DUP2",
"source": 1
},
{
"begin": 656,
"end": 676,
"name": "CALLDATALOAD",
"source": 1
},
{
"begin": 694,
"end": 773,
"name": "PUSH [tag]",
"source": 1,
"value": "75"
},
{
"begin": 769,
"end": 772,
"name": "DUP5",
"source": 1
},
{
"begin": 761,
"end": 767,
"name": "DUP3",
"source": 1
},
{
"begin": 754,
"end": 758,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 746,
"end": 752,
"name": "DUP7",
"source": 1
},
{
"begin": 742,
"end": 759,
"name": "ADD",
"source": 1
},
{
"begin": 694,
"end": 773,
"name": "PUSH [tag]",
"source": 1,
"value": "59"
},
{
"begin": 694,
"end": 773,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 694,
"end": 773,
"name": "tag",
"source": 1,
"value": "75"
},
{
"begin": 694,
"end": 773,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 685,
"end": 773,
"name": "SWAP2",
"source": 1
},
{
"begin": 685,
"end": 773,
"name": "POP",
"source": 1
},
{
"begin": 501,
"end": 779,
"name": "POP",
"source": 1
},
{
"begin": 439,
"end": 779,
"name": "SWAP3",
"source": 1
},
{
"begin": 439,
"end": 779,
"name": "SWAP2",
"source": 1
},
{
"begin": 439,
"end": 779,
"name": "POP",
"source": 1
},
{
"begin": 439,
"end": 779,
"name": "POP",
"source": 1
},
{
"begin": 439,
"end": 779,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 785,
"end": 924,
"name": "tag",
"source": 1,
"value": "76"
},
{
"begin": 785,
"end": 924,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 831,
"end": 836,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 869,
"end": 875,
"name": "DUP2",
"source": 1
},
{
"begin": 856,
"end": 876,
"name": "CALLDATALOAD",
"source": 1
},
{
"begin": 847,
"end": 876,
"name": "SWAP1",
"source": 1
},
{
"begin": 847,
"end": 876,
"name": "POP",
"source": 1
},
{
"begin": 885,
"end": 918,
"name": "PUSH [tag]",
"source": 1,
"value": "78"
},
{
"begin": 912,
"end": 917,
"name": "DUP2",
"source": 1
},
{
"begin": 885,
"end": 918,
"name": "PUSH [tag]",
"source": 1,
"value": "79"
},
{
"begin": 885,
"end": 918,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 885,
"end": 918,
"name": "tag",
"source": 1,
"value": "78"
},
{
"begin": 885,
"end": 918,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 785,
"end": 924,
"name": "SWAP3",
"source": 1
},
{
"begin": 785,
"end": 924,
"name": "SWAP2",
"source": 1
},
{
"begin": 785,
"end": 924,
"name": "POP",
"source": 1
},
{
"begin": 785,
"end": 924,
"name": "POP",
"source": 1
},
{
"begin": 785,
"end": 924,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 930,
"end": 1439,
"name": "tag",
"source": 1,
"value": "25"
},
{
"begin": 930,
"end": 1439,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 999,
"end": 1005,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1048,
"end": 1050,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 1036,
"end": 1045,
"name": "DUP3",
"source": 1
},
{
"begin": 1027,
"end": 1034,
"name": "DUP5",
"source": 1
},
{
"begin": 1023,
"end": 1046,
"name": "SUB",
"source": 1
},
{
"begin": 1019,
"end": 1051,
"name": "SLT",
"source": 1
},
{
"begin": 1016,
"end": 1135,
"name": "ISZERO",
"source": 1
},
{
"begin": 1016,
"end": 1135,
"name": "PUSH [tag]",
"source": 1,
"value": "81"
},
{
"begin": 1016,
"end": 1135,
"name": "JUMPI",
"source": 1
},
{
"begin": 1054,
"end": 1133,
"name": "PUSH [tag]",
"source": 1,
"value": "82"
},
{
"begin": 1054,
"end": 1133,
"name": "PUSH [tag]",
"source": 1,
"value": "83"
},
{
"begin": 1054,
"end": 1133,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1054,
"end": 1133,
"name": "tag",
"source": 1,
"value": "82"
},
{
"begin": 1054,
"end": 1133,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1016,
"end": 1135,
"name": "tag",
"source": 1,
"value": "81"
},
{
"begin": 1016,
"end": 1135,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1202,
"end": 1203,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1191,
"end": 1200,
"name": "DUP3",
"source": 1
},
{
"begin": 1187,
"end": 1204,
"name": "ADD",
"source": 1
},
{
"begin": 1174,
"end": 1205,
"name": "CALLDATALOAD",
"source": 1
},
{
"begin": 1232,
"end": 1250,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFF"
},
{
"begin": 1224,
"end": 1230,
"name": "DUP2",
"source": 1
},
{
"begin": 1221,
"end": 1251,
"name": "GT",
"source": 1
},
{
"begin": 1218,
"end": 1335,
"name": "ISZERO",
"source": 1
},
{
"begin": 1218,
"end": 1335,
"name": "PUSH [tag]",
"source": 1,
"value": "84"
},
{
"begin": 1218,
"end": 1335,
"name": "JUMPI",
"source": 1
},
{
"begin": 1254,
"end": 1333,
"name": "PUSH [tag]",
"source": 1,
"value": "85"
},
{
"begin": 1254,
"end": 1333,
"name": "PUSH [tag]",
"source": 1,
"value": "86"
},
{
"begin": 1254,
"end": 1333,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1254,
"end": 1333,
"name": "tag",
"source": 1,
"value": "85"
},
{
"begin": 1254,
"end": 1333,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1218,
"end": 1335,
"name": "tag",
"source": 1,
"value": "84"
},
{
"begin": 1218,
"end": 1335,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1359,
"end": 1422,
"name": "PUSH [tag]",
"source": 1,
"value": "87"
},
{
"begin": 1414,
"end": 1421,
"name": "DUP5",
"source": 1
},
{
"begin": 1405,
"end": 1411,
"name": "DUP3",
"source": 1
},
{
"begin": 1394,
"end": 1403,
"name": "DUP6",
"source": 1
},
{
"begin": 1390,
"end": 1412,
"name": "ADD",
"source": 1
},
{
"begin": 1359,
"end": 1422,
"name": "PUSH [tag]",
"source": 1,
"value": "70"
},
{
"begin": 1359,
"end": 1422,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1359,
"end": 1422,
"name": "tag",
"source": 1,
"value": "87"
},
{
"begin": 1359,
"end": 1422,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1349,
"end": 1422,
"name": "SWAP2",
"source": 1
},
{
"begin": 1349,
"end": 1422,
"name": "POP",
"source": 1
},
{
"begin": 1145,
"end": 1432,
"name": "POP",
"source": 1
},
{
"begin": 930,
"end": 1439,
"name": "SWAP3",
"source": 1
},
{
"begin": 930,
"end": 1439,
"name": "SWAP2",
"source": 1
},
{
"begin": 930,
"end": 1439,
"name": "POP",
"source": 1
},
{
"begin": 930,
"end": 1439,
"name": "POP",
"source": 1
},
{
"begin": 930,
"end": 1439,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1445,
"end": 1774,
"name": "tag",
"source": 1,
"value": "29"
},
{
"begin": 1445,
"end": 1774,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1504,
"end": 1510,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1553,
"end": 1555,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 1541,
"end": 1550,
"name": "DUP3",
"source": 1
},
{
"begin": 1532,
"end": 1539,
"name": "DUP5",
"source": 1
},
{
"begin": 1528,
"end": 1551,
"name": "SUB",
"source": 1
},
{
"begin": 1524,
"end": 1556,
"name": "SLT",
"source": 1
},
{
"begin": 1521,
"end": 1640,
"name": "ISZERO",
"source": 1
},
{
"begin": 1521,
"end": 1640,
"name": "PUSH [tag]",
"source": 1,
"value": "89"
},
{
"begin": 1521,
"end": 1640,
"name": "JUMPI",
"source": 1
},
{
"begin": 1559,
"end": 1638,
"name": "PUSH [tag]",
"source": 1,
"value": "90"
},
{
"begin": 1559,
"end": 1638,
"name": "PUSH [tag]",
"source": 1,
"value": "83"
},
{
"begin": 1559,
"end": 1638,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1559,
"end": 1638,
"name": "tag",
"source": 1,
"value": "90"
},
{
"begin": 1559,
"end": 1638,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1521,
"end": 1640,
"name": "tag",
"source": 1,
"value": "89"
},
{
"begin": 1521,
"end": 1640,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1679,
"end": 1680,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1704,
"end": 1757,
"name": "PUSH [tag]",
"source": 1,
"value": "91"
},
{
"begin": 1749,
"end": 1756,
"name": "DUP5",
"source": 1
},
{
"begin": 1740,
"end": 1746,
"name": "DUP3",
"source": 1
},
{
"begin": 1729,
"end": 1738,
"name": "DUP6",
"source": 1
},
{
"begin": 1725,
"end": 1747,
"name": "ADD",
"source": 1
},
{
"begin": 1704,
"end": 1757,
"name": "PUSH [tag]",
"source": 1,
"value": "76"
},
{
"begin": 1704,
"end": 1757,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1704,
"end": 1757,
"name": "tag",
"source": 1,
"value": "91"
},
{
"begin": 1704,
"end": 1757,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1694,
"end": 1757,
"name": "SWAP2",
"source": 1
},
{
"begin": 1694,
"end": 1757,
"name": "POP",
"source": 1
},
{
"begin": 1650,
"end": 1767,
"name": "POP",
"source": 1
},
{
"begin": 1445,
"end": 1774,
"name": "SWAP3",
"source": 1
},
{
"begin": 1445,
"end": 1774,
"name": "SWAP2",
"source": 1
},
{
"begin": 1445,
"end": 1774,
"name": "POP",
"source": 1
},
{
"begin": 1445,
"end": 1774,
"name": "POP",
"source": 1
},
{
"begin": 1445,
"end": 1774,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1780,
"end": 2144,
"name": "tag",
"source": 1,
"value": "92"
},
{
"begin": 1780,
"end": 2144,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1868,
"end": 1871,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1896,
"end": 1935,
"name": "PUSH [tag]",
"source": 1,
"value": "94"
},
{
"begin": 1929,
"end": 1934,
"name": "DUP3",
"source": 1
},
{
"begin": 1896,
"end": 1935,
"name": "PUSH [tag]",
"source": 1,
"value": "95"
},
{
"begin": 1896,
"end": 1935,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1896,
"end": 1935,
"name": "tag",
"source": 1,
"value": "94"
},
{
"begin": 1896,
"end": 1935,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1951,
"end": 2022,
"name": "PUSH [tag]",
"source": 1,
"value": "96"
},
{
"begin": 2015,
"end": 2021,
"name": "DUP2",
"source": 1
},
{
"begin": 2010,
"end": 2013,
"name": "DUP6",
"source": 1
},
{
"begin": 1951,
"end": 2022,
"name": "PUSH [tag]",
"source": 1,
"value": "97"
},
{
"begin": 1951,
"end": 2022,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1951,
"end": 2022,
"name": "tag",
"source": 1,
"value": "96"
},
{
"begin": 1951,
"end": 2022,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1944,
"end": 2022,
"name": "SWAP4",
"source": 1
},
{
"begin": 1944,
"end": 2022,
"name": "POP",
"source": 1
},
{
"begin": 2031,
"end": 2083,
"name": "PUSH [tag]",
"source": 1,
"value": "98"
},
{
"begin": 2076,
"end": 2082,
"name": "DUP2",
"source": 1
},
{
"begin": 2071,
"end": 2074,
"name": "DUP6",
"source": 1
},
{
"begin": 2064,
"end": 2068,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 2057,
"end": 2062,
"name": "DUP7",
"source": 1
},
{
"begin": 2053,
"end": 2069,
"name": "ADD",
"source": 1
},
{
"begin": 2031,
"end": 2083,
"name": "PUSH [tag]",
"source": 1,
"value": "99"
},
{
"begin": 2031,
"end": 2083,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 2031,
"end": 2083,
"name": "tag",
"source": 1,
"value": "98"
},
{
"begin": 2031,
"end": 2083,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2108,
"end": 2137,
"name": "PUSH [tag]",
"source": 1,
"value": "100"
},
{
"begin": 2130,
"end": 2136,
"name": "DUP2",
"source": 1
},
{
"begin": 2108,
"end": 2137,
"name": "PUSH [tag]",
"source": 1,
"value": "101"
},
{
"begin": 2108,
"end": 2137,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 2108,
"end": 2137,
"name": "tag",
"source": 1,
"value": "100"
},
{
"begin": 2108,
"end": 2137,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2103,
"end": 2106,
"name": "DUP5",
"source": 1
},
{
"begin": 2099,
"end": 2138,
"name": "ADD",
"source": 1
},
{
"begin": 2092,
"end": 2138,
"name": "SWAP2",
"source": 1
},
{
"begin": 2092,
"end": 2138,
"name": "POP",
"source": 1
},
{
"begin": 1872,
"end": 2144,
"name": "POP",
"source": 1
},
{
"begin": 1780,
"end": 2144,
"name": "SWAP3",
"source": 1
},
{
"begin": 1780,
"end": 2144,
"name": "SWAP2",
"source": 1
},
{
"begin": 1780,
"end": 2144,
"name": "POP",
"source": 1
},
{
"begin": 1780,
"end": 2144,
"name": "POP",
"source": 1
},
{
"begin": 1780,
"end": 2144,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 2150,
"end": 2268,
"name": "tag",
"source": 1,
"value": "102"
},
{
"begin": 2150,
"end": 2268,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2237,
"end": 2261,
"name": "PUSH [tag]",
"source": 1,
"value": "104"
},
{
"begin": 2255,
"end": 2260,
"name": "DUP2",
"source": 1
},
{
"begin": 2237,
"end": 2261,
"name": "PUSH [tag]",
"source": 1,
"value": "105"
},
{
"begin": 2237,
"end": 2261,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 2237,
"end": 2261,
"name": "tag",
"source": 1,
"value": "104"
},
{
"begin": 2237,
"end": 2261,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2232,
"end": 2235,
"name": "DUP3",
"source": 1
},
{
"begin": 2225,
"end": 2262,
"name": "MSTORE",
"source": 1
},
{
"begin": 2150,
"end": 2268,
"name": "POP",
"source": 1
},
{
"begin": 2150,
"end": 2268,
"name": "POP",
"source": 1
},
{
"begin": 2150,
"end": 2268,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 2274,
"end": 2587,
"name": "tag",
"source": 1,
"value": "12"
},
{
"begin": 2274,
"end": 2587,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2387,
"end": 2391,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2425,
"end": 2427,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 2414,
"end": 2423,
"name": "DUP3",
"source": 1
},
{
"begin": 2410,
"end": 2428,
"name": "ADD",
"source": 1
},
{
"begin": 2402,
"end": 2428,
"name": "SWAP1",
"source": 1
},
{
"begin": 2402,
"end": 2428,
"name": "POP",
"source": 1
},
{
"begin": 2474,
"end": 2483,
"name": "DUP2",
"source": 1
},
{
"begin": 2468,
"end": 2472,
"name": "DUP2",
"source": 1
},
{
"begin": 2464,
"end": 2484,
"name": "SUB",
"source": 1
},
{
"begin": 2460,
"end": 2461,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2449,
"end": 2458,
"name": "DUP4",
"source": 1
},
{
"begin": 2445,
"end": 2462,
"name": "ADD",
"source": 1
},
{
"begin": 2438,
"end": 2485,
"name": "MSTORE",
"source": 1
},
{
"begin": 2502,
"end": 2580,
"name": "PUSH [tag]",
"source": 1,
"value": "107"
},
{
"begin": 2575,
"end": 2579,
"name": "DUP2",
"source": 1
},
{
"begin": 2566,
"end": 2572,
"name": "DUP5",
"source": 1
},
{
"begin": 2502,
"end": 2580,
"name": "PUSH [tag]",
"source": 1,
"value": "92"
},
{
"begin": 2502,
"end": 2580,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 2502,
"end": 2580,
"name": "tag",
"source": 1,
"value": "107"
},
{
"begin": 2502,
"end": 2580,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2494,
"end": 2580,
"name": "SWAP1",
"source": 1
},
{
"begin": 2494,
"end": 2580,
"name": "POP",
"source": 1
},
{
"begin": 2274,
"end": 2587,
"name": "SWAP3",
"source": 1
},
{
"begin": 2274,
"end": 2587,
"name": "SWAP2",
"source": 1
},
{
"begin": 2274,
"end": 2587,
"name": "POP",
"source": 1
},
{
"begin": 2274,
"end": 2587,
"name": "POP",
"source": 1
},
{
"begin": 2274,
"end": 2587,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 2593,
"end": 2815,
"name": "tag",
"source": 1,
"value": "19"
},
{
"begin": 2593,
"end": 2815,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2686,
"end": 2690,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2724,
"end": 2726,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 2713,
"end": 2722,
"name": "DUP3",
"source": 1
},
{
"begin": 2709,
"end": 2727,
"name": "ADD",
"source": 1
},
{
"begin": 2701,
"end": 2727,
"name": "SWAP1",
"source": 1
},
{
"begin": 2701,
"end": 2727,
"name": "POP",
"source": 1
},
{
"begin": 2737,
"end": 2808,
"name": "PUSH [tag]",
"source": 1,
"value": "109"
},
{
"begin": 2805,
"end": 2806,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2794,
"end": 2803,
"name": "DUP4",
"source": 1
},
{
"begin": 2790,
"end": 2807,
"name": "ADD",
"source": 1
},
{
"begin": 2781,
"end": 2787,
"name": "DUP5",
"source": 1
},
{
"begin": 2737,
"end": 2808,
"name": "PUSH [tag]",
"source": 1,
"value": "102"
},
{
"begin": 2737,
"end": 2808,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 2737,
"end": 2808,
"name": "tag",
"source": 1,
"value": "109"
},
{
"begin": 2737,
"end": 2808,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2593,
"end": 2815,
"name": "SWAP3",
"source": 1
},
{
"begin": 2593,
"end": 2815,
"name": "SWAP2",
"source": 1
},
{
"begin": 2593,
"end": 2815,
"name": "POP",
"source": 1
},
{
"begin": 2593,
"end": 2815,
"name": "POP",
"source": 1
},
{
"begin": 2593,
"end": 2815,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 2821,
"end": 2950,
"name": "tag",
"source": 1,
"value": "64"
},
{
"begin": 2821,
"end": 2950,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2855,
"end": 2861,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2882,
"end": 2902,
"name": "PUSH [tag]",
"source": 1,
"value": "111"
},
{
"begin": 2882,
"end": 2902,
"name": "PUSH [tag]",
"source": 1,
"value": "112"
},
{
"begin": 2882,
"end": 2902,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 2882,
"end": 2902,
"name": "tag",
"source": 1,
"value": "111"
},
{
"begin": 2882,
"end": 2902,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2872,
"end": 2902,
"name": "SWAP1",
"source": 1
},
{
"begin": 2872,
"end": 2902,
"name": "POP",
"source": 1
},
{
"begin": 2911,
"end": 2944,
"name": "PUSH [tag]",
"source": 1,
"value": "113"
},
{
"begin": 2939,
"end": 2943,
"name": "DUP3",
"source": 1
},
{
"begin": 2931,
"end": 2937,
"name": "DUP3",
"source": 1
},
{
"begin": 2911,
"end": 2944,
"name": "PUSH [tag]",
"source": 1,
"value": "114"
},
{
"begin": 2911,
"end": 2944,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 2911,
"end": 2944,
"name": "tag",
"source": 1,
"value": "113"
},
{
"begin": 2911,
"end": 2944,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2821,
"end": 2950,
"name": "SWAP2",
"source": 1
},
{
"begin": 2821,
"end": 2950,
"name": "SWAP1",
"source": 1
},
{
"begin": 2821,
"end": 2950,
"name": "POP",
"source": 1
},
{
"begin": 2821,
"end": 2950,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 2956,
"end": 3031,
"name": "tag",
"source": 1,
"value": "112"
},
{
"begin": 2956,
"end": 3031,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2989,
"end": 2995,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 3022,
"end": 3024,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 3016,
"end": 3025,
"name": "MLOAD",
"source": 1
},
{
"begin": 3006,
"end": 3025,
"name": "SWAP1",
"source": 1
},
{
"begin": 3006,
"end": 3025,
"name": "POP",
"source": 1
},
{
"begin": 2956,
"end": 3031,
"name": "SWAP1",
"source": 1
},
{
"begin": 2956,
"end": 3031,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 3037,
"end": 3345,
"name": "tag",
"source": 1,
"value": "63"
},
{
"begin": 3037,
"end": 3345,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 3099,
"end": 3103,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 3189,
"end": 3207,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFF"
},
{
"begin": 3181,
"end": 3187,
"name": "DUP3",
"source": 1
},
{
"begin": 3178,
"end": 3208,
"name": "GT",
"source": 1
},
{
"begin": 3175,
"end": 3231,
"name": "ISZERO",
"source": 1
},
{
"begin": 3175,
"end": 3231,
"name": "PUSH [tag]",
"source": 1,
"value": "117"
},
{
"begin": 3175,
"end": 3231,
"name": "JUMPI",
"source": 1
},
{
"begin": 3211,
"end": 3229,
"name": "PUSH [tag]",
"source": 1,
"value": "118"
},
{
"begin": 3211,
"end": 3229,
"name": "PUSH [tag]",
"source": 1,
"value": "119"
},
{
"begin": 3211,
"end": 3229,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 3211,
"end": 3229,
"name": "tag",
"source": 1,
"value": "118"
},
{
"begin": 3211,
"end": 3229,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 3175,
"end": 3231,
"name": "tag",
"source": 1,
"value": "117"
},
{
"begin": 3175,
"end": 3231,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 3249,
"end": 3278,
"name": "PUSH [tag]",
"source": 1,
"value": "120"
},
{
"begin": 3271,
"end": 3277,
"name": "DUP3",
"source": 1
},
{
"begin": 3249,
"end": 3278,
"name": "PUSH [tag]",
"source": 1,
"value": "101"
},
{
"begin": 3249,
"end": 3278,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 3249,
"end": 3278,
"name": "tag",
"source": 1,
"value": "120"
},
{
"begin": 3249,
"end": 3278,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 3241,
"end": 3278,
"name": "SWAP1",
"source": 1
},
{
"begin": 3241,
"end": 3278,
"name": "POP",
"source": 1
},
{
"begin": 3333,
"end": 3337,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 3327,
"end": 3331,
"name": "DUP2",
"source": 1
},
{
"begin": 3323,
"end": 3338,
"name": "ADD",
"source": 1
},
{
"begin": 3315,
"end": 3338,
"name": "SWAP1",
"source": 1
},
{
"begin": 3315,
"end": 3338,
"name": "POP",
"source": 1
},
{
"begin": 3037,
"end": 3345,
"name": "SWAP2",
"source": 1
},
{
"begin": 3037,
"end": 3345,
"name": "SWAP1",
"source": 1
},
{
"begin": 3037,
"end": 3345,
"name": "POP",
"source": 1
},
{
"begin": 3037,
"end": 3345,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 3351,
"end": 3450,
"name": "tag",
"source": 1,
"value": "95"
},
{
"begin": 3351,
"end": 3450,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 3403,
"end": 3409,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 3437,
"end": 3442,
"name": "DUP2",
"source": 1
},
{
"begin": 3431,
"end": 3443,
"name": "MLOAD",
"source": 1
},
{
"begin": 3421,
"end": 3443,
"name": "SWAP1",
"source": 1
},
{
"begin": 3421,
"end": 3443,
"name": "POP",
"source": 1
},
{
"begin": 3351,
"end": 3450,
"name": "SWAP2",
"source": 1
},
{
"begin": 3351,
"end": 3450,
"name": "SWAP1",
"source": 1
},
{
"begin": 3351,
"end": 3450,
"name": "POP",
"source": 1
},
{
"begin": 3351,
"end": 3450,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 3456,
"end": 3625,
"name": "tag",
"source": 1,
"value": "97"
},
{
"begin": 3456,
"end": 3625,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 3540,
"end": 3551,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 3574,
"end": 3580,
"name": "DUP3",
"source": 1
},
{
"begin": 3569,
"end": 3572,
"name": "DUP3",
"source": 1
},
{
"begin": 3562,
"end": 3581,
"name": "MSTORE",
"source": 1
},
{
"begin": 3614,
"end": 3618,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 3609,
"end": 3612,
"name": "DUP3",
"source": 1
},
{
"begin": 3605,
"end": 3619,
"name": "ADD",
"source": 1
},
{
"begin": 3590,
"end": 3619,
"name": "SWAP1",
"source": 1
},
{
"begin": 3590,
"end": 3619,
"name": "POP",
"source": 1
},
{
"begin": 3456,
"end": 3625,
"name": "SWAP3",
"source": 1
},
{
"begin": 3456,
"end": 3625,
"name": "SWAP2",
"source": 1
},
{
"begin": 3456,
"end": 3625,
"name": "POP",
"source": 1
},
{
"begin": 3456,
"end": 3625,
"name": "POP",
"source": 1
},
{
"begin": 3456,
"end": 3625,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 3631,
"end": 3708,
"name": "tag",
"source": 1,
"value": "105"
},
{
"begin": 3631,
"end": 3708,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 3668,
"end": 3675,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 3697,
"end": 3702,
"name": "DUP2",
"source": 1
},
{
"begin": 3686,
"end": 3702,
"name": "SWAP1",
"source": 1
},
{
"begin": 3686,
"end": 3702,
"name": "POP",
"source": 1
},
{
"begin": 3631,
"end": 3708,
"name": "SWAP2",
"source": 1
},
{
"begin": 3631,
"end": 3708,
"name": "SWAP1",
"source": 1
},
{
"begin": 3631,
"end": 3708,
"name": "POP",
"source": 1
},
{
"begin": 3631,
"end": 3708,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 3714,
"end": 3868,
"name": "tag",
"source": 1,
"value": "69"
},
{
"begin": 3714,
"end": 3868,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 3798,
"end": 3804,
"name": "DUP3",
"source": 1
},
{
"begin": 3793,
"end": 3796,
"name": "DUP2",
"source": 1
},
{
"begin": 3788,
"end": 3791,
"name": "DUP4",
"source": 1
},
{
"begin": 3775,
"end": 3805,
"name": "CALLDATACOPY",
"source": 1
},
{
"begin": 3860,
"end": 3861,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 3851,
"end": 3857,
"name": "DUP4",
"source": 1
},
{
"begin": 3846,
"end": 3849,
"name": "DUP4",
"source": 1
},
{
"begin": 3842,
"end": 3858,
"name": "ADD",
"source": 1
},
{
"begin": 3835,
"end": 3862,
"name": "MSTORE",
"source": 1
},
{
"begin": 3714,
"end": 3868,
"name": "POP",
"source": 1
},
{
"begin": 3714,
"end": 3868,
"name": "POP",
"source": 1
},
{
"begin": 3714,
"end": 3868,
"name": "POP",
"source": 1
},
{
"begin": 3714,
"end": 3868,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 3874,
"end": 4181,
"name": "tag",
"source": 1,
"value": "99"
},
{
"begin": 3874,
"end": 4181,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 3942,
"end": 3943,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 3952,
"end": 4065,
"name": "tag",
"source": 1,
"value": "126"
},
{
"begin": 3952,
"end": 4065,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 3966,
"end": 3972,
"name": "DUP4",
"source": 1
},
{
"begin": 3963,
"end": 3964,
"name": "DUP2",
"source": 1
},
{
"begin": 3960,
"end": 3973,
"name": "LT",
"source": 1
},
{
"begin": 3952,
"end": 4065,
"name": "ISZERO",
"source": 1
},
{
"begin": 3952,
"end": 4065,
"name": "PUSH [tag]",
"source": 1,
"value": "128"
},
{
"begin": 3952,
"end": 4065,
"name": "JUMPI",
"source": 1
},
{
"begin": 4051,
"end": 4052,
"name": "DUP1",
"source": 1
},
{
"begin": 4046,
"end": 4049,
"name": "DUP3",
"source": 1
},
{
"begin": 4042,
"end": 4053,
"name": "ADD",
"source": 1
},
{
"begin": 4036,
"end": 4054,
"name": "MLOAD",
"source": 1
},
{
"begin": 4032,
"end": 4033,
"name": "DUP2",
"source": 1
},
{
"begin": 4027,
"end": 4030,
"name": "DUP5",
"source": 1
},
{
"begin": 4023,
"end": 4034,
"name": "ADD",
"source": 1
},
{
"begin": 4016,
"end": 4055,
"name": "MSTORE",
"source": 1
},
{
"begin": 3988,
"end": 3990,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 3985,
"end": 3986,
"name": "DUP2",
"source": 1
},
{
"begin": 3981,
"end": 3991,
"name": "ADD",
"source": 1
},
{
"begin": 3976,
"end": 3991,
"name": "SWAP1",
"source": 1
},
{
"begin": 3976,
"end": 3991,
"name": "POP",
"source": 1
},
{
"begin": 3952,
"end": 4065,
"name": "PUSH [tag]",
"source": 1,
"value": "126"
},
{
"begin": 3952,
"end": 4065,
"name": "JUMP",
"source": 1
},
{
"begin": 3952,
"end": 4065,
"name": "tag",
"source": 1,
"value": "128"
},
{
"begin": 3952,
"end": 4065,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 4083,
"end": 4089,
"name": "DUP4",
"source": 1
},
{
"begin": 4080,
"end": 4081,
"name": "DUP2",
"source": 1
},
{
"begin": 4077,
"end": 4090,
"name": "GT",
"source": 1
},
{
"begin": 4074,
"end": 4175,
"name": "ISZERO",
"source": 1
},
{
"begin": 4074,
"end": 4175,
"name": "PUSH [tag]",
"source": 1,
"value": "129"
},
{
"begin": 4074,
"end": 4175,
"name": "JUMPI",
"source": 1
},
{
"begin": 4163,
"end": 4164,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 4154,
"end": 4160,
"name": "DUP5",
"source": 1
},
{
"begin": 4149,
"end": 4152,
"name": "DUP5",
"source": 1
},
{
"begin": 4145,
"end": 4161,
"name": "ADD",
"source": 1
},
{
"begin": 4138,
"end": 4165,
"name": "MSTORE",
"source": 1
},
{
"begin": 4074,
"end": 4175,
"name": "tag",
"source": 1,
"value": "129"
},
{
"begin": 4074,
"end": 4175,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 3923,
"end": 4181,
"name": "POP",
"source": 1
},
{
"begin": 3874,
"end": 4181,
"name": "POP",
"source": 1
},
{
"begin": 3874,
"end": 4181,
"name": "POP",
"source": 1
},
{
"begin": 3874,
"end": 4181,
"name": "POP",
"source": 1
},
{
"begin": 3874,
"end": 4181,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 4187,
"end": 4507,
"name": "tag",
"source": 1,
"value": "32"
},
{
"begin": 4187,
"end": 4507,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 4231,
"end": 4237,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 4268,
"end": 4269,
"name": "PUSH",
"source": 1,
"value": "2"
},
{
"begin": 4262,
"end": 4266,
"name": "DUP3",
"source": 1
},
{
"begin": 4258,
"end": 4270,
"name": "DIV",
"source": 1
},
{
"begin": 4248,
"end": 4270,
"name": "SWAP1",
"source": 1
},
{
"begin": 4248,
"end": 4270,
"name": "POP",
"source": 1
},
{
"begin": 4315,
"end": 4316,
"name": "PUSH",
"source": 1,
"value": "1"
},
{
"begin": 4309,
"end": 4313,
"name": "DUP3",
"source": 1
},
{
"begin": 4305,
"end": 4317,
"name": "AND",
"source": 1
},
{
"begin": 4336,
"end": 4354,
"name": "DUP1",
"source": 1
},
{
"begin": 4326,
"end": 4407,
"name": "PUSH [tag]",
"source": 1,
"value": "131"
},
{
"begin": 4326,
"end": 4407,
"name": "JUMPI",
"source": 1
},
{
"begin": 4392,
"end": 4396,
"name": "PUSH",
"source": 1,
"value": "7F"
},
{
"begin": 4384,
"end": 4390,
"name": "DUP3",
"source": 1
},
{
"begin": 4380,
"end": 4397,
"name": "AND",
"source": 1
},
{
"begin": 4370,
"end": 4397,
"name": "SWAP2",
"source": 1
},
{
"begin": 4370,
"end": 4397,
"name": "POP",
"source": 1
},
{
"begin": 4326,
"end": 4407,
"name": "tag",
"source": 1,
"value": "131"
},
{
"begin": 4326,
"end": 4407,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 4454,
"end": 4456,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 4446,
"end": 4452,
"name": "DUP3",
"source": 1
},
{
"begin": 4443,
"end": 4457,
"name": "LT",
"source": 1
},
{
"begin": 4423,
"end": 4441,
"name": "DUP2",
"source": 1
},
{
"begin": 4420,
"end": 4458,
"name": "EQ",
"source": 1
},
{
"begin": 4417,
"end": 4501,
"name": "ISZERO",
"source": 1
},
{
"begin": 4417,
"end": 4501,
"name": "PUSH [tag]",
"source": 1,
"value": "132"
},
{
"begin": 4417,
"end": 4501,
"name": "JUMPI",
"source": 1
},
{
"begin": 4473,
"end": 4491,
"name": "PUSH [tag]",
"source": 1,
"value": "133"
},
{
"begin": 4473,
"end": 4491,
"name": "PUSH [tag]",
"source": 1,
"value": "134"
},
{
"begin": 4473,
"end": 4491,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 4473,
"end": 4491,
"name": "tag",
"source": 1,
"value": "133"
},
{
"begin": 4473,
"end": 4491,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 4417,
"end": 4501,
"name": "tag",
"source": 1,
"value": "132"
},
{
"begin": 4417,
"end": 4501,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 4238,
"end": 4507,
"name": "POP",
"source": 1
},
{
"begin": 4187,
"end": 4507,
"name": "SWAP2",
"source": 1
},
{
"begin": 4187,
"end": 4507,
"name": "SWAP1",
"source": 1
},
{
"begin": 4187,
"end": 4507,
"name": "POP",
"source": 1
},
{
"begin": 4187,
"end": 4507,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 4513,
"end": 4794,
"name": "tag",
"source": 1,
"value": "114"
},
{
"begin": 4513,
"end": 4794,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 4596,
"end": 4623,
"name": "PUSH [tag]",
"source": 1,
"value": "136"
},
{
"begin": 4618,
"end": 4622,
"name": "DUP3",
"source": 1
},
{
"begin": 4596,
"end": 4623,
"name": "PUSH [tag]",
"source": 1,
"value": "101"
},
{
"begin": 4596,
"end": 4623,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 4596,
"end": 4623,
"name": "tag",
"source": 1,
"value": "136"
},
{
"begin": 4596,
"end": 4623,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 4588,
"end": 4594,
"name": "DUP2",
"source": 1
},
{
"begin": 4584,
"end": 4624,
"name": "ADD",
"source": 1
},
{
"begin": 4726,
"end": 4732,
"name": "DUP2",
"source": 1
},
{
"begin": 4714,
"end": 4724,
"name": "DUP2",
"source": 1
},
{
"begin": 4711,
"end": 4733,
"name": "LT",
"source": 1
},
{
"begin": 4690,
"end": 4708,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFF"
},
{
"begin": 4678,
"end": 4688,
"name": "DUP3",
"source": 1
},
{
"begin": 4675,
"end": 4709,
"name": "GT",
"source": 1
},
{
"begin": 4672,
"end": 4734,
"name": "OR",
"source": 1
},
{
"begin": 4669,
"end": 4757,
"name": "ISZERO",
"source": 1
},
{
"begin": 4669,
"end": 4757,
"name": "PUSH [tag]",
"source": 1,
"value": "137"
},
{
"begin": 4669,
"end": 4757,
"name": "JUMPI",
"source": 1
},
{
"begin": 4737,
"end": 4755,
"name": "PUSH [tag]",
"source": 1,
"value": "138"
},
{
"begin": 4737,
"end": 4755,
"name": "PUSH [tag]",
"source": 1,
"value": "119"
},
{
"begin": 4737,
"end": 4755,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 4737,
"end": 4755,
"name": "tag",
"source": 1,
"value": "138"
},
{
"begin": 4737,
"end": 4755,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 4669,
"end": 4757,
"name": "tag",
"source": 1,
"value": "137"
},
{
"begin": 4669,
"end": 4757,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 4777,
"end": 4787,
"name": "DUP1",
"source": 1
},
{
"begin": 4773,
"end": 4775,
"name": "PUSH",
"source": 1,
"value": "40"
},
{
"begin": 4766,
"end": 4788,
"name": "MSTORE",
"source": 1
},
{
"begin": 4556,
"end": 4794,
"name": "POP",
"source": 1
},
{
"begin": 4513,
"end": 4794,
"name": "POP",
"source": 1
},
{
"begin": 4513,
"end": 4794,
"name": "POP",
"source": 1
},
{
"begin": 4513,
"end": 4794,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 4800,
"end": 4980,
"name": "tag",
"source": 1,
"value": "134"
},
{
"begin": 4800,
"end": 4980,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 4848,
"end": 4925,
"name": "PUSH",
"source": 1,
"value": "4E487B7100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 4845,
"end": 4846,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 4838,
"end": 4926,
"name": "MSTORE",
"source": 1
},
{
"begin": 4945,
"end": 4949,
"name": "PUSH",
"source": 1,
"value": "22"
},
{
"begin": 4942,
"end": 4943,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 4935,
"end": 4950,
"name": "MSTORE",
"source": 1
},
{
"begin": 4969,
"end": 4973,
"name": "PUSH",
"source": 1,
"value": "24"
},
{
"begin": 4966,
"end": 4967,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 4959,
"end": 4974,
"name": "REVERT",
"source": 1
},
{
"begin": 4986,
"end": 5166,
"name": "tag",
"source": 1,
"value": "119"
},
{
"begin": 4986,
"end": 5166,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 5034,
"end": 5111,
"name": "PUSH",
"source": 1,
"value": "4E487B7100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 5031,
"end": 5032,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 5024,
"end": 5112,
"name": "MSTORE",
"source": 1
},
{
"begin": 5131,
"end": 5135,
"name": "PUSH",
"source": 1,
"value": "41"
},
{
"begin": 5128,
"end": 5129,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 5121,
"end": 5136,
"name": "MSTORE",
"source": 1
},
{
"begin": 5155,
"end": 5159,
"name": "PUSH",
"source": 1,
"value": "24"
},
{
"begin": 5152,
"end": 5153,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 5145,
"end": 5160,
"name": "REVERT",
"source": 1
},
{
"begin": 5172,
"end": 5289,
"name": "tag",
"source": 1,
"value": "74"
},
{
"begin": 5172,
"end": 5289,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 5281,
"end": 5282,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 5278,
"end": 5279,
"name": "DUP1",
"source": 1
},
{
"begin": 5271,
"end": 5283,
"name": "REVERT",
"source": 1
},
{
"begin": 5295,
"end": 5412,
"name": "tag",
"source": 1,
"value": "67"
},
{
"begin": 5295,
"end": 5412,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 5404,
"end": 5405,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 5401,
"end": 5402,
"name": "DUP1",
"source": 1
},
{
"begin": 5394,
"end": 5406,
"name": "REVERT",
"source": 1
},
{
"begin": 5418,
"end": 5535,
"name": "tag",
"source": 1,
"value": "86"
},
{
"begin": 5418,
"end": 5535,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 5527,
"end": 5528,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 5524,
"end": 5525,
"name": "DUP1",
"source": 1
},
{
"begin": 5517,
"end": 5529,
"name": "REVERT",
"source": 1
},
{
"begin": 5541,
"end": 5658,
"name": "tag",
"source": 1,
"value": "83"
},
{
"begin": 5541,
"end": 5658,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 5650,
"end": 5651,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 5647,
"end": 5648,
"name": "DUP1",
"source": 1
},
{
"begin": 5640,
"end": 5652,
"name": "REVERT",
"source": 1
},
{
"begin": 5664,
"end": 5766,
"name": "tag",
"source": 1,
"value": "101"
},
{
"begin": 5664,
"end": 5766,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 5705,
"end": 5711,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 5756,
"end": 5758,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 5752,
"end": 5759,
"name": "NOT",
"source": 1
},
{
"begin": 5747,
"end": 5749,
"name": "PUSH",
"source": 1,
"value": "1F"
},
{
"begin": 5740,
"end": 5745,
"name": "DUP4",
"source": 1
},
{
"begin": 5736,
"end": 5750,
"name": "ADD",
"source": 1
},
{
"begin": 5732,
"end": 5760,
"name": "AND",
"source": 1
},
{
"begin": 5722,
"end": 5760,
"name": "SWAP1",
"source": 1
},
{
"begin": 5722,
"end": 5760,
"name": "POP",
"source": 1
},
{
"begin": 5664,
"end": 5766,
"name": "SWAP2",
"source": 1
},
{
"begin": 5664,
"end": 5766,
"name": "SWAP1",
"source": 1
},
{
"begin": 5664,
"end": 5766,
"name": "POP",
"source": 1
},
{
"begin": 5664,
"end": 5766,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 5772,
"end": 5894,
"name": "tag",
"source": 1,
"value": "79"
},
{
"begin": 5772,
"end": 5894,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 5845,
"end": 5869,
"name": "PUSH [tag]",
"source": 1,
"value": "147"
},
{
"begin": 5863,
"end": 5868,
"name": "DUP2",
"source": 1
},
{
"begin": 5845,
"end": 5869,
"name": "PUSH [tag]",
"source": 1,
"value": "105"
},
{
"begin": 5845,
"end": 5869,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 5845,
"end": 5869,
"name": "tag",
"source": 1,
"value": "147"
},
{
"begin": 5845,
"end": 5869,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 5838,
"end": 5843,
"name": "DUP2",
"source": 1
},
{
"begin": 5835,
"end": 5870,
"name": "EQ",
"source": 1
},
{
"begin": 5825,
"end": 5888,
"name": "PUSH [tag]",
"source": 1,
"value": "148"
},
{
"begin": 5825,
"end": 5888,
"name": "JUMPI",
"source": 1
},
{
"begin": 5884,
"end": 5885,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 5881,
"end": 5882,
"name": "DUP1",
"source": 1
},
{
"begin": 5874,
"end": 5886,
"name": "REVERT",
"source": 1
},
{
"begin": 5825,
"end": 5888,
"name": "tag",
"source": 1,
"value": "148"
},
{
"begin": 5825,
"end": 5888,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 5772,
"end": 5894,
"name": "POP",
"source": 1
},
{
"begin": 5772,
"end": 5894,
"name": "JUMP",
"source": 1,
"value": "[out]"
}
]
}
}
},
"methodIdentifiers": {
"age()": "262a9dff",
"getAge()": "967e6e65",
"getName()": "17d7de7c",
"name()": "06fdde03",
"setAge(uint256)": "d5dcf127",
"setName(string)": "c47f0027"
}
},
"metadata": "{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"age\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAge\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"x\",\"type\":\"uint256\"}],\"name\":\"setAge\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"}],\"name\":\"setName\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/w15ex1.sol\":\"ex1\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/w15ex1.sol\":{\"keccak256\":\"0x72a431a035bf33ed33bd04d2180117406d3f30e16be65b41fbd91c8709d23114\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://48355cbe41acf3bb1ef92324c392f94b3261b5ccb85453a1617e1ee0a8b1ee1c\",\"dweb:/ipfs/QmT3AdcL1vuGY8DgdzsAZcTQp46otXaAuoVdko6p9PTR6f\"]}},\"version\":1}",
"storageLayout": {
"storage": [
{
"astId": 3,
"contract": "contracts/w15ex1.sol:ex1",
"label": "age",
"offset": 0,
"slot": "0",
"type": "t_uint256"
},
{
"astId": 5,
"contract": "contracts/w15ex1.sol:ex1",
"label": "name",
"offset": 0,
"slot": "1",
"type": "t_string_storage"
}
],
"types": {
"t_string_storage": {
"encoding": "bytes",
"label": "string",
"numberOfBytes": "32"
},
"t_uint256": {
"encoding": "inplace",
"label": "uint256",
"numberOfBytes": "32"
}
}
},
"userdoc": {
"kind": "user",
"methods": {},
"version": 1
}
}
}
},
"sources": {
"contracts/w15ex1.sol": {
"ast": {
"absolutePath": "contracts/w15ex1.sol",
"exportedSymbols": {
"ex1": [
42
]
},
"id": 43,
"license": "MIT",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1,
"literals": [
"solidity",
"^",
"0.8",
".0"
],
"nodeType": "PragmaDirective",
"src": "32:23:0"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"fullyImplemented": true,
"id": 42,
"linearizedBaseContracts": [
42
],
"name": "ex1",
"nameLocation": "66:3:0",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"functionSelector": "262a9dff",
"id": 3,
"mutability": "mutable",
"name": "age",
"nameLocation": "88:3:0",
"nodeType": "VariableDeclaration",
"scope": 42,
"src": "76:15:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "76:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "public"
},
{
"constant": false,
"functionSelector": "06fdde03",
"id": 5,
"mutability": "mutable",
"name": "name",
"nameLocation": "112:4:0",
"nodeType": "VariableDeclaration",
"scope": 42,
"src": "98:18:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string"
},
"typeName": {
"id": 4,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "98:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"visibility": "public"
},
{
"body": {
"id": 14,
"nodeType": "Block",
"src": "153:26:0",
"statements": [
{
"expression": {
"id": 12,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"id": 10,
"name": "age",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3,
"src": "164:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"id": 11,
"name": "x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 7,
"src": "170:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "164:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 13,
"nodeType": "ExpressionStatement",
"src": "164:7:0"
}
]
},
"functionSelector": "d5dcf127",
"id": 15,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "setAge",
"nameLocation": "132:6:0",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 8,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 7,
"mutability": "mutable",
"name": "x",
"nameLocation": "144:1:0",
"nodeType": "VariableDeclaration",
"scope": 15,
"src": "139:6:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 6,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "139:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "138:8:0"
},
"returnParameters": {
"id": 9,
"nodeType": "ParameterList",
"parameters": [],
"src": "153:0:0"
},
"scope": 42,
"src": "123:56:0",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
},
{
"body": {
"id": 22,
"nodeType": "Block",
"src": "228:29:0",
"statements": [
{
"expression": {
"id": 20,
"name": "age",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3,
"src": "246:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 19,
"id": 21,
"nodeType": "Return",
"src": "239:10:0"
}
]
},
"functionSelector": "967e6e65",
"id": 23,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "getAge",
"nameLocation": "194:6:0",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 16,
"nodeType": "ParameterList",
"parameters": [],
"src": "200:2:0"
},
"returnParameters": {
"id": 19,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 18,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 23,
"src": "223:4:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 17,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "223:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "222:6:0"
},
"scope": 42,
"src": "185:72:0",
"stateMutability": "view",
"virtual": false,
"visibility": "public"
},
{
"body": {
"id": 32,
"nodeType": "Block",
"src": "308:31:0",
"statements": [
{
"expression": {
"id": 30,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"id": 28,
"name": "name",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 5,
"src": "319:4:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string storage ref"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"id": 29,
"name": "_name",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 25,
"src": "326:5:0",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
},
"src": "319:12:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string storage ref"
}
},
"id": 31,
"nodeType": "ExpressionStatement",
"src": "319:12:0"
}
]
},
"functionSelector": "c47f0027",
"id": 33,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "setName",
"nameLocation": "272:7:0",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 26,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 25,
"mutability": "mutable",
"name": "_name",
"nameLocation": "294:5:0",
"nodeType": "VariableDeclaration",
"scope": 33,
"src": "280:19:0",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 24,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "280:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"visibility": "internal"
}
],
"src": "279:21:0"
},
"returnParameters": {
"id": 27,
"nodeType": "ParameterList",
"parameters": [],
"src": "308:0:0"
},
"scope": 42,
"src": "263:76:0",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
},
{
"body": {
"id": 40,
"nodeType": "Block",
"src": "398:30:0",
"statements": [
{
"expression": {
"id": 38,
"name": "name",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 5,
"src": "416:4:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string storage ref"
}
},
"functionReturnParameters": 37,
"id": 39,
"nodeType": "Return",
"src": "409:11:0"
}
]
},
"functionSelector": "17d7de7c",
"id": 41,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "getName",
"nameLocation": "354:7:0",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 34,
"nodeType": "ParameterList",
"parameters": [],
"src": "361:2:0"
},
"returnParameters": {
"id": 37,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 36,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 41,
"src": "384:13:0",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 35,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "384:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"visibility": "internal"
}
],
"src": "383:15:0"
},
"scope": 42,
"src": "345:83:0",
"stateMutability": "view",
"virtual": false,
"visibility": "public"
}
],
"scope": 43,
"src": "57:374:0",
"usedErrors": []
}
],
"src": "32:401:0"
},
"id": 0
}
}
}
}
{
"id": "8b35382a75a7d1f565c49c4f1dec5aab",
"_format": "hh-sol-build-info-1",
"solcVersion": "0.8.7",
"solcLongVersion": "0.8.7+commit.e28d00a7",
"input": {
"language": "Solidity",
"sources": {
"contracts/w15ex6.sol": {
"content": "//SPDX-License-Identifier: MIT\r\npragma solidity ^0.8.0;\r\ncontract ex6{\r\n uint constant size = 5;\r\n uint[size] public sa = [uint(10),20,30,40,50];\r\n event display(uint);\r\n function sumArray() public {\r\n uint sum = 0;\r\n for (uint i=0; i<size; i++)\r\n sum += sa[i];\r\n emit display(sum);\r\n }\r\n}"
}
},
"settings": {
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"": [
"ast"
],
"*": [
"abi",
"metadata",
"devdoc",
"userdoc",
"storageLayout",
"evm.legacyAssembly",
"evm.bytecode",
"evm.deployedBytecode",
"evm.methodIdentifiers",
"evm.gasEstimates",
"evm.assembly"
]
}
}
}
},
"output": {
"contracts": {
"contracts/w15ex6.sol": {
"ex6": {
"abi": [
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "display",
"type": "event"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "sa",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "sumArray",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"evm": {
"assembly": " /* \"contracts/w15ex6.sol\":57:332 contract ex6{\r... */\n mstore(0x40, 0x80)\n /* \"contracts/w15ex6.sol\":105:150 uint[size] public sa = [uint(10),20,30,40,50] */\n mload(0x40)\n dup1\n 0xa0\n add\n 0x40\n mstore\n dup1\n /* \"contracts/w15ex6.sol\":134:136 10 */\n 0x0a\n /* \"contracts/w15ex6.sol\":105:150 uint[size] public sa = [uint(10),20,30,40,50] */\n dup2\n mstore\n 0x20\n add\n /* \"contracts/w15ex6.sol\":138:140 20 */\n 0x14\n /* \"contracts/w15ex6.sol\":105:150 uint[size] public sa = [uint(10),20,30,40,50] */\n dup2\n mstore\n 0x20\n add\n /* \"contracts/w15ex6.sol\":141:143 30 */\n 0x1e\n /* \"contracts/w15ex6.sol\":105:150 uint[size] public sa = [uint(10),20,30,40,50] */\n dup2\n mstore\n 0x20\n add\n /* \"contracts/w15ex6.sol\":144:146 40 */\n 0x28\n /* \"contracts/w15ex6.sol\":105:150 uint[size] public sa = [uint(10),20,30,40,50] */\n dup2\n mstore\n 0x20\n add\n /* \"contracts/w15ex6.sol\":147:149 50 */\n 0x32\n /* \"contracts/w15ex6.sol\":105:150 uint[size] public sa = [uint(10),20,30,40,50] */\n dup2\n mstore\n pop\n 0x00\n swap1\n 0x05\n tag_1\n swap3\n swap2\n swap1\n tag_2\n jump\t// in\ntag_1:\n pop\n /* \"contracts/w15ex6.sol\":57:332 contract ex6{\r... */\n callvalue\n dup1\n iszero\n tag_3\n jumpi\n 0x00\n dup1\n revert\ntag_3:\n pop\n jump(tag_4)\ntag_2:\n dup3\n 0x05\n dup2\n add\n swap3\n dup3\n iszero\n tag_5\n jumpi\n swap2\n 0x20\n mul\n dup3\n add\ntag_6:\n dup3\n dup2\n gt\n iszero\n tag_7\n jumpi\n dup3\n mload\n dup3\n sstore\n swap2\n 0x20\n add\n swap2\n swap1\n 0x01\n add\n swap1\n jump(tag_6)\ntag_7:\ntag_5:\n pop\n swap1\n pop\n tag_8\n swap2\n swap1\n tag_9\n jump\t// in\ntag_8:\n pop\n swap1\n jump\t// out\ntag_9:\ntag_10:\n dup1\n dup3\n gt\n iszero\n tag_11\n jumpi\n 0x00\n dup2\n 0x00\n swap1\n sstore\n pop\n 0x01\n add\n jump(tag_10)\ntag_11:\n pop\n swap1\n jump\t// out\ntag_4:\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"contracts/w15ex6.sol\":57:332 contract ex6{\r... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\n tag_1:\n pop\n jumpi(tag_2, lt(calldatasize, 0x04))\n shr(0xe0, calldataload(0x00))\n dup1\n 0x1f7fca26\n eq\n tag_3\n jumpi\n dup1\n 0x81d73423\n eq\n tag_4\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/w15ex6.sol\":105:150 uint[size] public sa = [uint(10),20,30,40,50] */\n tag_3:\n tag_5\n 0x04\n dup1\n calldatasize\n sub\n dup2\n add\n swap1\n tag_6\n swap2\n swap1\n tag_7\n jump\t// in\n tag_6:\n tag_8\n jump\t// in\n tag_5:\n mload(0x40)\n tag_9\n swap2\n swap1\n tag_10\n jump\t// in\n tag_9:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/w15ex6.sol\":183:329 function sumArray() public {\r... */\n tag_4:\n tag_11\n tag_12\n jump\t// in\n tag_11:\n stop\n /* \"contracts/w15ex6.sol\":105:150 uint[size] public sa = [uint(10),20,30,40,50] */\n tag_8:\n 0x00\n dup2\n 0x05\n dup2\n lt\n tag_13\n jumpi\n 0x00\n dup1\n revert\n tag_13:\n add\n 0x00\n swap2\n pop\n swap1\n pop\n sload\n dup2\n jump\t// out\n /* \"contracts/w15ex6.sol\":183:329 function sumArray() public {\r... */\n tag_12:\n /* \"contracts/w15ex6.sol\":221:229 uint sum */\n 0x00\n /* \"contracts/w15ex6.sol\":249:255 uint i */\n dup1\n /* \"contracts/w15ex6.sol\":244:293 for (uint i=0; i<size; i++)\r... */\n tag_16:\n /* \"contracts/w15ex6.sol\":97:98 5 */\n 0x05\n /* \"contracts/w15ex6.sol\":259:260 i */\n dup2\n /* \"contracts/w15ex6.sol\":259:265 i<size */\n lt\n /* \"contracts/w15ex6.sol\":244:293 for (uint i=0; i<size; i++)\r... */\n iszero\n tag_17\n jumpi\n /* \"contracts/w15ex6.sol\":288:290 sa */\n 0x00\n /* \"contracts/w15ex6.sol\":291:292 i */\n dup2\n /* \"contracts/w15ex6.sol\":288:293 sa[i] */\n 0x05\n dup2\n lt\n tag_19\n jumpi\n tag_20\n tag_21\n jump\t// in\n tag_20:\n tag_19:\n add\n sload\n /* \"contracts/w15ex6.sol\":281:293 sum += sa[i] */\n dup3\n tag_23\n swap2\n swap1\n tag_24\n jump\t// in\n tag_23:\n swap2\n pop\n /* \"contracts/w15ex6.sol\":267:270 i++ */\n dup1\n dup1\n tag_25\n swap1\n tag_26\n jump\t// in\n tag_25:\n swap2\n pop\n pop\n /* \"contracts/w15ex6.sol\":244:293 for (uint i=0; i<size; i++)\r... */\n jump(tag_16)\n tag_17:\n pop\n /* \"contracts/w15ex6.sol\":309:321 display(sum) */\n 0xc2da2447cc63b33e4c8c3cf233736b4d9fce4fa6d4fa1883e32ecc0a743362a9\n /* \"contracts/w15ex6.sol\":317:320 sum */\n dup2\n /* \"contracts/w15ex6.sol\":309:321 display(sum) */\n mload(0x40)\n tag_27\n swap2\n swap1\n tag_10\n jump\t// in\n tag_27:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log1\n /* \"contracts/w15ex6.sol\":210:329 {\r... */\n pop\n /* \"contracts/w15ex6.sol\":183:329 function sumArray() public {\r... */\n jump\t// out\n /* \"#utility.yul\":7:146 */\n tag_29:\n /* \"#utility.yul\":53:58 */\n 0x00\n /* \"#utility.yul\":91:97 */\n dup2\n /* \"#utility.yul\":78:98 */\n calldataload\n /* \"#utility.yul\":69:98 */\n swap1\n pop\n /* \"#utility.yul\":107:140 */\n tag_31\n /* \"#utility.yul\":134:139 */\n dup2\n /* \"#utility.yul\":107:140 */\n tag_32\n jump\t// in\n tag_31:\n /* \"#utility.yul\":7:146 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":152:481 */\n tag_7:\n /* \"#utility.yul\":211:217 */\n 0x00\n /* \"#utility.yul\":260:262 */\n 0x20\n /* \"#utility.yul\":248:257 */\n dup3\n /* \"#utility.yul\":239:246 */\n dup5\n /* \"#utility.yul\":235:258 */\n sub\n /* \"#utility.yul\":231:263 */\n slt\n /* \"#utility.yul\":228:347 */\n iszero\n tag_34\n jumpi\n /* \"#utility.yul\":266:345 */\n tag_35\n tag_36\n jump\t// in\n tag_35:\n /* \"#utility.yul\":228:347 */\n tag_34:\n /* \"#utility.yul\":386:387 */\n 0x00\n /* \"#utility.yul\":411:464 */\n tag_37\n /* \"#utility.yul\":456:463 */\n dup5\n /* \"#utility.yul\":447:453 */\n dup3\n /* \"#utility.yul\":436:445 */\n dup6\n /* \"#utility.yul\":432:454 */\n add\n /* \"#utility.yul\":411:464 */\n tag_29\n jump\t// in\n tag_37:\n /* \"#utility.yul\":401:464 */\n swap2\n pop\n /* \"#utility.yul\":357:474 */\n pop\n /* \"#utility.yul\":152:481 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":487:605 */\n tag_38:\n /* \"#utility.yul\":574:598 */\n tag_40\n /* \"#utility.yul\":592:597 */\n dup2\n /* \"#utility.yul\":574:598 */\n tag_41\n jump\t// in\n tag_40:\n /* \"#utility.yul\":569:572 */\n dup3\n /* \"#utility.yul\":562:599 */\n mstore\n /* \"#utility.yul\":487:605 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":611:833 */\n tag_10:\n /* \"#utility.yul\":704:708 */\n 0x00\n /* \"#utility.yul\":742:744 */\n 0x20\n /* \"#utility.yul\":731:740 */\n dup3\n /* \"#utility.yul\":727:745 */\n add\n /* \"#utility.yul\":719:745 */\n swap1\n pop\n /* \"#utility.yul\":755:826 */\n tag_43\n /* \"#utility.yul\":823:824 */\n 0x00\n /* \"#utility.yul\":812:821 */\n dup4\n /* \"#utility.yul\":808:825 */\n add\n /* \"#utility.yul\":799:805 */\n dup5\n /* \"#utility.yul\":755:826 */\n tag_38\n jump\t// in\n tag_43:\n /* \"#utility.yul\":611:833 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":920:1225 */\n tag_24:\n /* \"#utility.yul\":960:963 */\n 0x00\n /* \"#utility.yul\":979:999 */\n tag_47\n /* \"#utility.yul\":997:998 */\n dup3\n /* \"#utility.yul\":979:999 */\n tag_41\n jump\t// in\n tag_47:\n /* \"#utility.yul\":974:999 */\n swap2\n pop\n /* \"#utility.yul\":1013:1033 */\n tag_48\n /* \"#utility.yul\":1031:1032 */\n dup4\n /* \"#utility.yul\":1013:1033 */\n tag_41\n jump\t// in\n tag_48:\n /* \"#utility.yul\":1008:1033 */\n swap3\n pop\n /* \"#utility.yul\":1167:1168 */\n dup3\n /* \"#utility.yul\":1099:1165 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":1095:1169 */\n sub\n /* \"#utility.yul\":1092:1093 */\n dup3\n /* \"#utility.yul\":1089:1170 */\n gt\n /* \"#utility.yul\":1086:1193 */\n iszero\n tag_49\n jumpi\n /* \"#utility.yul\":1173:1191 */\n tag_50\n tag_51\n jump\t// in\n tag_50:\n /* \"#utility.yul\":1086:1193 */\n tag_49:\n /* \"#utility.yul\":1217:1218 */\n dup3\n /* \"#utility.yul\":1214:1215 */\n dup3\n /* \"#utility.yul\":1210:1219 */\n add\n /* \"#utility.yul\":1203:1219 */\n swap1\n pop\n /* \"#utility.yul\":920:1225 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1231:1308 */\n tag_41:\n /* \"#utility.yul\":1268:1275 */\n 0x00\n /* \"#utility.yul\":1297:1302 */\n dup2\n /* \"#utility.yul\":1286:1302 */\n swap1\n pop\n /* \"#utility.yul\":1231:1308 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1314:1547 */\n tag_26:\n /* \"#utility.yul\":1353:1356 */\n 0x00\n /* \"#utility.yul\":1376:1400 */\n tag_54\n /* \"#utility.yul\":1394:1399 */\n dup3\n /* \"#utility.yul\":1376:1400 */\n tag_41\n jump\t// in\n tag_54:\n /* \"#utility.yul\":1367:1400 */\n swap2\n pop\n /* \"#utility.yul\":1422:1488 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":1415:1420 */\n dup3\n /* \"#utility.yul\":1412:1489 */\n eq\n /* \"#utility.yul\":1409:1512 */\n iszero\n tag_55\n jumpi\n /* \"#utility.yul\":1492:1510 */\n tag_56\n tag_51\n jump\t// in\n tag_56:\n /* \"#utility.yul\":1409:1512 */\n tag_55:\n /* \"#utility.yul\":1539:1540 */\n 0x01\n /* \"#utility.yul\":1532:1537 */\n dup3\n /* \"#utility.yul\":1528:1541 */\n add\n /* \"#utility.yul\":1521:1541 */\n swap1\n pop\n /* \"#utility.yul\":1314:1547 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1553:1733 */\n tag_51:\n /* \"#utility.yul\":1601:1678 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":1598:1599 */\n 0x00\n /* \"#utility.yul\":1591:1679 */\n mstore\n /* \"#utility.yul\":1698:1702 */\n 0x11\n /* \"#utility.yul\":1695:1696 */\n 0x04\n /* \"#utility.yul\":1688:1703 */\n mstore\n /* \"#utility.yul\":1722:1726 */\n 0x24\n /* \"#utility.yul\":1719:1720 */\n 0x00\n /* \"#utility.yul\":1712:1727 */\n revert\n /* \"#utility.yul\":1739:1919 */\n tag_21:\n /* \"#utility.yul\":1787:1864 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":1784:1785 */\n 0x00\n /* \"#utility.yul\":1777:1865 */\n mstore\n /* \"#utility.yul\":1884:1888 */\n 0x32\n /* \"#utility.yul\":1881:1882 */\n 0x04\n /* \"#utility.yul\":1874:1889 */\n mstore\n /* \"#utility.yul\":1908:1912 */\n 0x24\n /* \"#utility.yul\":1905:1906 */\n 0x00\n /* \"#utility.yul\":1898:1913 */\n revert\n /* \"#utility.yul\":2048:2165 */\n tag_36:\n /* \"#utility.yul\":2157:2158 */\n 0x00\n /* \"#utility.yul\":2154:2155 */\n dup1\n /* \"#utility.yul\":2147:2159 */\n revert\n /* \"#utility.yul\":2171:2293 */\n tag_32:\n /* \"#utility.yul\":2244:2268 */\n tag_63\n /* \"#utility.yul\":2262:2267 */\n dup2\n /* \"#utility.yul\":2244:2268 */\n tag_41\n jump\t// in\n tag_63:\n /* \"#utility.yul\":2237:2242 */\n dup2\n /* \"#utility.yul\":2234:2269 */\n eq\n /* \"#utility.yul\":2224:2287 */\n tag_64\n jumpi\n /* \"#utility.yul\":2283:2284 */\n 0x00\n /* \"#utility.yul\":2280:2281 */\n dup1\n /* \"#utility.yul\":2273:2285 */\n revert\n /* \"#utility.yul\":2224:2287 */\n tag_64:\n /* \"#utility.yul\":2171:2293 */\n pop\n jump\t// out\n\n auxdata: 0xa264697066735822122006272b42b099b9b00d18af8e1fceb11d03521f44a54c72fceab24fdf82d10c0464736f6c63430008070033\n}\n",
"bytecode": {
"functionDebugData": {},
"generatedSources": [],
"linkReferences": {},
"object": "60806040526040518060a00160405280600a815260200160148152602001601e81526020016028815260200160328152506000906005610040929190610053565b5034801561004d57600080fd5b506100b0565b8260058101928215610082579160200282015b82811115610081578251825591602001919060010190610066565b5b50905061008f9190610093565b5090565b5b808211156100ac576000816000905550600101610094565b5090565b6102d3806100bf6000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80631f7fca261461003b57806381d734231461006b575b600080fd5b61005560048036038101906100509190610123565b610075565b604051610062919061015f565b60405180910390f35b610073610090565b005b6000816005811061008557600080fd5b016000915090505481565b6000805b60058110156100d357600081600581106100b1576100b0610252565b5b0154826100be919061017a565b915080806100cb906101da565b915050610094565b507fc2da2447cc63b33e4c8c3cf233736b4d9fce4fa6d4fa1883e32ecc0a743362a981604051610103919061015f565b60405180910390a150565b60008135905061011d81610286565b92915050565b60006020828403121561013957610138610281565b5b60006101478482850161010e565b91505092915050565b610159816101d0565b82525050565b60006020820190506101746000830184610150565b92915050565b6000610185826101d0565b9150610190836101d0565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156101c5576101c4610223565b5b828201905092915050565b6000819050919050565b60006101e5826101d0565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561021857610217610223565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b61028f816101d0565b811461029a57600080fd5b5056fea264697066735822122006272b42b099b9b00d18af8e1fceb11d03521f44a54c72fceab24fdf82d10c0464736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xA DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x14 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1E DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x28 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x32 DUP2 MSTORE POP PUSH1 0x0 SWAP1 PUSH1 0x5 PUSH2 0x40 SWAP3 SWAP2 SWAP1 PUSH2 0x53 JUMP JUMPDEST POP CALLVALUE DUP1 ISZERO PUSH2 0x4D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB0 JUMP JUMPDEST DUP3 PUSH1 0x5 DUP2 ADD SWAP3 DUP3 ISZERO PUSH2 0x82 JUMPI SWAP2 PUSH1 0x20 MUL DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x81 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x66 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x8F SWAP2 SWAP1 PUSH2 0x93 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0xAC JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x94 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH2 0x2D3 DUP1 PUSH2 0xBF PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x36 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x1F7FCA26 EQ PUSH2 0x3B JUMPI DUP1 PUSH4 0x81D73423 EQ PUSH2 0x6B JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x55 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x50 SWAP2 SWAP1 PUSH2 0x123 JUMP JUMPDEST PUSH2 0x75 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x62 SWAP2 SWAP1 PUSH2 0x15F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x73 PUSH2 0x90 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x5 DUP2 LT PUSH2 0x85 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST ADD PUSH1 0x0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 JUMPDEST PUSH1 0x5 DUP2 LT ISZERO PUSH2 0xD3 JUMPI PUSH1 0x0 DUP2 PUSH1 0x5 DUP2 LT PUSH2 0xB1 JUMPI PUSH2 0xB0 PUSH2 0x252 JUMP JUMPDEST JUMPDEST ADD SLOAD DUP3 PUSH2 0xBE SWAP2 SWAP1 PUSH2 0x17A JUMP JUMPDEST SWAP2 POP DUP1 DUP1 PUSH2 0xCB SWAP1 PUSH2 0x1DA JUMP JUMPDEST SWAP2 POP POP PUSH2 0x94 JUMP JUMPDEST POP PUSH32 0xC2DA2447CC63B33E4C8C3CF233736B4D9FCE4FA6D4FA1883E32ECC0A743362A9 DUP2 PUSH1 0x40 MLOAD PUSH2 0x103 SWAP2 SWAP1 PUSH2 0x15F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x11D DUP2 PUSH2 0x286 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x139 JUMPI PUSH2 0x138 PUSH2 0x281 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x147 DUP5 DUP3 DUP6 ADD PUSH2 0x10E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x159 DUP2 PUSH2 0x1D0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x174 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x150 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x185 DUP3 PUSH2 0x1D0 JUMP JUMPDEST SWAP2 POP PUSH2 0x190 DUP4 PUSH2 0x1D0 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x1C5 JUMPI PUSH2 0x1C4 PUSH2 0x223 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E5 DUP3 PUSH2 0x1D0 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x218 JUMPI PUSH2 0x217 PUSH2 0x223 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x28F DUP2 PUSH2 0x1D0 JUMP JUMPDEST DUP2 EQ PUSH2 0x29A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 MOD 0x27 0x2B TIMESTAMP 0xB0 SWAP10 0xB9 0xB0 0xD XOR 0xAF DUP15 0x1F 0xCE 0xB1 SAR SUB MSTORE 0x1F DIFFICULTY 0xA5 0x4C PUSH19 0xFCEAB24FDF82D10C0464736F6C634300080700 CALLER ",
"sourceMap": "57:275:0:-:0;;;105:45;;;;;;;;134:2;105:45;;;;138:2;105:45;;;;141:2;105:45;;;;144:2;105:45;;;;147:2;105:45;;;;;;;;;;;:::i;:::-;;57:275;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@sa_17": {
"entryPoint": 117,
"id": 17,
"parameterSlots": 0,
"returnSlots": 0
},
"@sumArray_50": {
"entryPoint": 144,
"id": 50,
"parameterSlots": 0,
"returnSlots": 0
},
"abi_decode_t_uint256": {
"entryPoint": 270,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint256": {
"entryPoint": 291,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_t_uint256_to_t_uint256_fromStack": {
"entryPoint": 336,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": {
"entryPoint": 351,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"allocate_unbounded": {
"entryPoint": null,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
},
"checked_add_t_uint256": {
"entryPoint": 378,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 464,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"increment_t_uint256": {
"entryPoint": 474,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x11": {
"entryPoint": 547,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x32": {
"entryPoint": 594,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": {
"entryPoint": null,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": {
"entryPoint": 641,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"validator_revert_t_uint256": {
"entryPoint": 646,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:2296:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "59:87:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "69:29:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "91:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "78:12:1"
},
"nodeType": "YulFunctionCall",
"src": "78:20:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "69:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "134:5:1"
}
],
"functionName": {
"name": "validator_revert_t_uint256",
"nodeType": "YulIdentifier",
"src": "107:26:1"
},
"nodeType": "YulFunctionCall",
"src": "107:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "107:33:1"
}
]
},
"name": "abi_decode_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "37:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "45:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "53:5:1",
"type": ""
}
],
"src": "7:139:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "218:263:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "264:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulIdentifier",
"src": "266:77:1"
},
"nodeType": "YulFunctionCall",
"src": "266:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "266:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "239:7:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "248:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "235:3:1"
},
"nodeType": "YulFunctionCall",
"src": "235:23:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "260:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "231:3:1"
},
"nodeType": "YulFunctionCall",
"src": "231:32:1"
},
"nodeType": "YulIf",
"src": "228:119:1"
},
{
"nodeType": "YulBlock",
"src": "357:117:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "372:15:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "386:1:1",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "376:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "401:63:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "436:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "447:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "432:3:1"
},
"nodeType": "YulFunctionCall",
"src": "432:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "456:7:1"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nodeType": "YulIdentifier",
"src": "411:20:1"
},
"nodeType": "YulFunctionCall",
"src": "411:53:1"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "401:6:1"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "188:9:1",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "199:7:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "211:6:1",
"type": ""
}
],
"src": "152:329:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "552:53:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "569:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "592:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "574:17:1"
},
"nodeType": "YulFunctionCall",
"src": "574:24:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "562:6:1"
},
"nodeType": "YulFunctionCall",
"src": "562:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "562:37:1"
}
]
},
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "540:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "547:3:1",
"type": ""
}
],
"src": "487:118:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "709:124:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "719:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "731:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "742:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "727:3:1"
},
"nodeType": "YulFunctionCall",
"src": "727:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "719:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "799:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "812:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "823:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "808:3:1"
},
"nodeType": "YulFunctionCall",
"src": "808:17:1"
}
],
"functionName": {
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nodeType": "YulIdentifier",
"src": "755:43:1"
},
"nodeType": "YulFunctionCall",
"src": "755:71:1"
},
"nodeType": "YulExpressionStatement",
"src": "755:71:1"
}
]
},
"name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "681:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "693:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "704:4:1",
"type": ""
}
],
"src": "611:222:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "879:35:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "889:19:1",
"value": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "905:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "899:5:1"
},
"nodeType": "YulFunctionCall",
"src": "899:9:1"
},
"variableNames": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "889:6:1"
}
]
}
]
},
"name": "allocate_unbounded",
"nodeType": "YulFunctionDefinition",
"returnVariables": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "872:6:1",
"type": ""
}
],
"src": "839:75:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "964:261:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "974:25:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "997:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "979:17:1"
},
"nodeType": "YulFunctionCall",
"src": "979:20:1"
},
"variableNames": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "974:1:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "1008:25:1",
"value": {
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "1031:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "1013:17:1"
},
"nodeType": "YulFunctionCall",
"src": "1013:20:1"
},
"variableNames": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "1008:1:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "1171:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "1173:16:1"
},
"nodeType": "YulFunctionCall",
"src": "1173:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "1173:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "1092:1:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1099:66:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "1167:1:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "1095:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1095:74:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "1089:2:1"
},
"nodeType": "YulFunctionCall",
"src": "1089:81:1"
},
"nodeType": "YulIf",
"src": "1086:107:1"
},
{
"nodeType": "YulAssignment",
"src": "1203:16:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "1214:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "1217:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1210:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1210:9:1"
},
"variableNames": [
{
"name": "sum",
"nodeType": "YulIdentifier",
"src": "1203:3:1"
}
]
}
]
},
"name": "checked_add_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nodeType": "YulTypedName",
"src": "951:1:1",
"type": ""
},
{
"name": "y",
"nodeType": "YulTypedName",
"src": "954:1:1",
"type": ""
}
],
"returnVariables": [
{
"name": "sum",
"nodeType": "YulTypedName",
"src": "960:3:1",
"type": ""
}
],
"src": "920:305:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1276:32:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1286:16:1",
"value": {
"name": "value",
"nodeType": "YulIdentifier",
"src": "1297:5:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "1286:7:1"
}
]
}
]
},
"name": "cleanup_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1258:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "1268:7:1",
"type": ""
}
],
"src": "1231:77:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1357:190:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1367:33:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1394:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "1376:17:1"
},
"nodeType": "YulFunctionCall",
"src": "1376:24:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1367:5:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "1490:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "1492:16:1"
},
"nodeType": "YulFunctionCall",
"src": "1492:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "1492:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1415:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1422:66:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "1412:2:1"
},
"nodeType": "YulFunctionCall",
"src": "1412:77:1"
},
"nodeType": "YulIf",
"src": "1409:103:1"
},
{
"nodeType": "YulAssignment",
"src": "1521:20:1",
"value": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1532:5:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1539:1:1",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1528:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1528:13:1"
},
"variableNames": [
{
"name": "ret",
"nodeType": "YulIdentifier",
"src": "1521:3:1"
}
]
}
]
},
"name": "increment_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1343:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "ret",
"nodeType": "YulTypedName",
"src": "1353:3:1",
"type": ""
}
],
"src": "1314:233:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1581:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1598:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1601:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1591:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1591:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "1591:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1695:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1698:4:1",
"type": "",
"value": "0x11"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1688:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1688:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1688:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1719:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1722:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1712:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1712:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1712:15:1"
}
]
},
"name": "panic_error_0x11",
"nodeType": "YulFunctionDefinition",
"src": "1553:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1767:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1784:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1787:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1777:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1777:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "1777:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1881:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1884:4:1",
"type": "",
"value": "0x32"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1874:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1874:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1874:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1905:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1908:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1898:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1898:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1898:15:1"
}
]
},
"name": "panic_error_0x32",
"nodeType": "YulFunctionDefinition",
"src": "1739:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2014:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2031:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2034:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "2024:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2024:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "2024:12:1"
}
]
},
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulFunctionDefinition",
"src": "1925:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2137:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2154:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2157:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "2147:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2147:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "2147:12:1"
}
]
},
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulFunctionDefinition",
"src": "2048:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "2214:79:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "2271:16:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2280:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2283:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "2273:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2273:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "2273:12:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2237:5:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "2262:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "2244:17:1"
},
"nodeType": "YulFunctionCall",
"src": "2244:24:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "2234:2:1"
},
"nodeType": "YulFunctionCall",
"src": "2234:35:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "2227:6:1"
},
"nodeType": "YulFunctionCall",
"src": "2227:43:1"
},
"nodeType": "YulIf",
"src": "2224:63:1"
}
]
},
"name": "validator_revert_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "2207:5:1",
"type": ""
}
],
"src": "2171:122:1"
}
]
},
"contents": "{\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "608060405234801561001057600080fd5b50600436106100365760003560e01c80631f7fca261461003b57806381d734231461006b575b600080fd5b61005560048036038101906100509190610123565b610075565b604051610062919061015f565b60405180910390f35b610073610090565b005b6000816005811061008557600080fd5b016000915090505481565b6000805b60058110156100d357600081600581106100b1576100b0610252565b5b0154826100be919061017a565b915080806100cb906101da565b915050610094565b507fc2da2447cc63b33e4c8c3cf233736b4d9fce4fa6d4fa1883e32ecc0a743362a981604051610103919061015f565b60405180910390a150565b60008135905061011d81610286565b92915050565b60006020828403121561013957610138610281565b5b60006101478482850161010e565b91505092915050565b610159816101d0565b82525050565b60006020820190506101746000830184610150565b92915050565b6000610185826101d0565b9150610190836101d0565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156101c5576101c4610223565b5b828201905092915050565b6000819050919050565b60006101e5826101d0565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561021857610217610223565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b61028f816101d0565b811461029a57600080fd5b5056fea264697066735822122006272b42b099b9b00d18af8e1fceb11d03521f44a54c72fceab24fdf82d10c0464736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x36 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x1F7FCA26 EQ PUSH2 0x3B JUMPI DUP1 PUSH4 0x81D73423 EQ PUSH2 0x6B JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x55 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x50 SWAP2 SWAP1 PUSH2 0x123 JUMP JUMPDEST PUSH2 0x75 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x62 SWAP2 SWAP1 PUSH2 0x15F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x73 PUSH2 0x90 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x5 DUP2 LT PUSH2 0x85 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST ADD PUSH1 0x0 SWAP2 POP SWAP1 POP SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 JUMPDEST PUSH1 0x5 DUP2 LT ISZERO PUSH2 0xD3 JUMPI PUSH1 0x0 DUP2 PUSH1 0x5 DUP2 LT PUSH2 0xB1 JUMPI PUSH2 0xB0 PUSH2 0x252 JUMP JUMPDEST JUMPDEST ADD SLOAD DUP3 PUSH2 0xBE SWAP2 SWAP1 PUSH2 0x17A JUMP JUMPDEST SWAP2 POP DUP1 DUP1 PUSH2 0xCB SWAP1 PUSH2 0x1DA JUMP JUMPDEST SWAP2 POP POP PUSH2 0x94 JUMP JUMPDEST POP PUSH32 0xC2DA2447CC63B33E4C8C3CF233736B4D9FCE4FA6D4FA1883E32ECC0A743362A9 DUP2 PUSH1 0x40 MLOAD PUSH2 0x103 SWAP2 SWAP1 PUSH2 0x15F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x11D DUP2 PUSH2 0x286 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x139 JUMPI PUSH2 0x138 PUSH2 0x281 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x147 DUP5 DUP3 DUP6 ADD PUSH2 0x10E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x159 DUP2 PUSH2 0x1D0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x174 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x150 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x185 DUP3 PUSH2 0x1D0 JUMP JUMPDEST SWAP2 POP PUSH2 0x190 DUP4 PUSH2 0x1D0 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x1C5 JUMPI PUSH2 0x1C4 PUSH2 0x223 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E5 DUP3 PUSH2 0x1D0 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x218 JUMPI PUSH2 0x217 PUSH2 0x223 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x28F DUP2 PUSH2 0x1D0 JUMP JUMPDEST DUP2 EQ PUSH2 0x29A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 MOD 0x27 0x2B TIMESTAMP 0xB0 SWAP10 0xB9 0xB0 0xD XOR 0xAF DUP15 0x1F 0xCE 0xB1 SAR SUB MSTORE 0x1F DIFFICULTY 0xA5 0x4C PUSH19 0xFCEAB24FDF82D10C0464736F6C634300080700 CALLER ",
"sourceMap": "57:275:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;105:45;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;183:146;;;:::i;:::-;;105:45;;;;;;;;;;;;;;;;;;;;:::o;183:146::-;221:8;249:6;244:49;97:1;259;:6;244:49;;;288:2;291:1;288:5;;;;;;;:::i;:::-;;;;281:12;;;;;:::i;:::-;;;267:3;;;;;:::i;:::-;;;;244:49;;;;309:12;317:3;309:12;;;;;;:::i;:::-;;;;;;;;210:119;183:146::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:329::-;211:6;260:2;248:9;239:7;235:23;231:32;228:119;;;266:79;;:::i;:::-;228:119;386:1;411:53;456:7;447:6;436:9;432:22;411:53;:::i;:::-;401:63;;357:117;152:329;;;;:::o;487:118::-;574:24;592:5;574:24;:::i;:::-;569:3;562:37;487:118;;:::o;611:222::-;704:4;742:2;731:9;727:18;719:26;;755:71;823:1;812:9;808:17;799:6;755:71;:::i;:::-;611:222;;;;:::o;920:305::-;960:3;979:20;997:1;979:20;:::i;:::-;974:25;;1013:20;1031:1;1013:20;:::i;:::-;1008:25;;1167:1;1099:66;1095:74;1092:1;1089:81;1086:107;;;1173:18;;:::i;:::-;1086:107;1217:1;1214;1210:9;1203:16;;920:305;;;;:::o;1231:77::-;1268:7;1297:5;1286:16;;1231:77;;;:::o;1314:233::-;1353:3;1376:24;1394:5;1376:24;:::i;:::-;1367:33;;1422:66;1415:5;1412:77;1409:103;;;1492:18;;:::i;:::-;1409:103;1539:1;1532:5;1528:13;1521:20;;1314:233;;;:::o;1553:180::-;1601:77;1598:1;1591:88;1698:4;1695:1;1688:15;1722:4;1719:1;1712:15;1739:180;1787:77;1784:1;1777:88;1884:4;1881:1;1874:15;1908:4;1905:1;1898:15;2048:117;2157:1;2154;2147:12;2171:122;2244:24;2262:5;2244:24;:::i;:::-;2237:5;2234:35;2224:63;;2283:1;2280;2273:12;2224:63;2171:122;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "144600",
"executionCost": "infinite",
"totalCost": "infinite"
},
"external": {
"sa(uint256)": "infinite",
"sumArray()": "infinite"
}
},
"legacyAssembly": {
".code": [
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 57,
"end": 332,
"name": "MSTORE",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 105,
"end": 150,
"name": "MLOAD",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "DUP1",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "A0"
},
{
"begin": 105,
"end": 150,
"name": "ADD",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 105,
"end": 150,
"name": "MSTORE",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "DUP1",
"source": 0
},
{
"begin": 134,
"end": 136,
"name": "PUSH",
"source": 0,
"value": "A"
},
{
"begin": 105,
"end": 150,
"name": "DUP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "MSTORE",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 105,
"end": 150,
"name": "ADD",
"source": 0
},
{
"begin": 138,
"end": 140,
"name": "PUSH",
"source": 0,
"value": "14"
},
{
"begin": 105,
"end": 150,
"name": "DUP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "MSTORE",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 105,
"end": 150,
"name": "ADD",
"source": 0
},
{
"begin": 141,
"end": 143,
"name": "PUSH",
"source": 0,
"value": "1E"
},
{
"begin": 105,
"end": 150,
"name": "DUP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "MSTORE",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 105,
"end": 150,
"name": "ADD",
"source": 0
},
{
"begin": 144,
"end": 146,
"name": "PUSH",
"source": 0,
"value": "28"
},
{
"begin": 105,
"end": 150,
"name": "DUP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "MSTORE",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 105,
"end": 150,
"name": "ADD",
"source": 0
},
{
"begin": 147,
"end": 149,
"name": "PUSH",
"source": 0,
"value": "32"
},
{
"begin": 105,
"end": 150,
"name": "DUP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "MSTORE",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "POP",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 105,
"end": 150,
"name": "SWAP1",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "5"
},
{
"begin": 105,
"end": 150,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 105,
"end": 150,
"name": "SWAP3",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "SWAP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "SWAP1",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 105,
"end": 150,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 105,
"end": 150,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 105,
"end": 150,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "ISZERO",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 57,
"end": 332,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 332,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "REVERT",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 57,
"end": 332,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 57,
"end": 332,
"name": "JUMP",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 57,
"end": 332,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP3",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "5"
},
{
"begin": 57,
"end": 332,
"name": "DUP2",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "ADD",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "SWAP3",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP3",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "ISZERO",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 57,
"end": 332,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "SWAP2",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 57,
"end": 332,
"name": "MUL",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP3",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "ADD",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 57,
"end": 332,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP3",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP2",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "GT",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "ISZERO",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 57,
"end": 332,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP3",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "MLOAD",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP3",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "SSTORE",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "SWAP2",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "20"
},
{
"begin": 57,
"end": 332,
"name": "ADD",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "SWAP2",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "SWAP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 332,
"name": "ADD",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "SWAP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 57,
"end": 332,
"name": "JUMP",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "tag",
"source": 0,
"value": "7"
},
{
"begin": 57,
"end": 332,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "tag",
"source": 0,
"value": "5"
},
{
"begin": 57,
"end": 332,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "SWAP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 57,
"end": 332,
"name": "SWAP2",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "SWAP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "9"
},
{
"begin": 57,
"end": 332,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 57,
"end": 332,
"name": "tag",
"source": 0,
"value": "8"
},
{
"begin": 57,
"end": 332,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "SWAP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 57,
"end": 332,
"name": "tag",
"source": 0,
"value": "9"
},
{
"begin": 57,
"end": 332,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "tag",
"source": 0,
"value": "10"
},
{
"begin": 57,
"end": 332,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP3",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "GT",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "ISZERO",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "11"
},
{
"begin": 57,
"end": 332,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 332,
"name": "DUP2",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 332,
"name": "SWAP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "SSTORE",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 332,
"name": "ADD",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 57,
"end": 332,
"name": "JUMP",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "tag",
"source": 0,
"value": "11"
},
{
"begin": 57,
"end": 332,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "SWAP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 57,
"end": 332,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 57,
"end": 332,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH #[$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 57,
"end": 332,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 332,
"name": "CODECOPY",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 332,
"name": "RETURN",
"source": 0
}
],
".data": {
"0": {
".auxdata": "a264697066735822122006272b42b099b9b00d18af8e1fceb11d03521f44a54c72fceab24fdf82d10c0464736f6c63430008070033",
".code": [
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 57,
"end": 332,
"name": "MSTORE",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "ISZERO",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 332,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 332,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "REVERT",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 332,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 57,
"end": 332,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "LT",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 57,
"end": 332,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 332,
"name": "CALLDATALOAD",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "E0"
},
{
"begin": 57,
"end": 332,
"name": "SHR",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "1F7FCA26"
},
{
"begin": 57,
"end": 332,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 57,
"end": 332,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "81D73423"
},
{
"begin": 57,
"end": 332,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 57,
"end": 332,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 57,
"end": 332,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 332,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 332,
"name": "REVERT",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 105,
"end": 150,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 105,
"end": 150,
"name": "DUP1",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "SUB",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "DUP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "ADD",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "SWAP1",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 105,
"end": 150,
"name": "SWAP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "SWAP1",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 105,
"end": 150,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 105,
"end": 150,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 105,
"end": 150,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 105,
"end": 150,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 105,
"end": 150,
"name": "tag",
"source": 0,
"value": "5"
},
{
"begin": 105,
"end": 150,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 105,
"end": 150,
"name": "MLOAD",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH [tag]",
"source": 0,
"value": "9"
},
{
"begin": 105,
"end": 150,
"name": "SWAP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "SWAP1",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 105,
"end": 150,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 105,
"end": 150,
"name": "tag",
"source": 0,
"value": "9"
},
{
"begin": 105,
"end": 150,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 105,
"end": 150,
"name": "MLOAD",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "DUP1",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "SWAP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "SUB",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "SWAP1",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "RETURN",
"source": 0
},
{
"begin": 183,
"end": 329,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 183,
"end": 329,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 183,
"end": 329,
"name": "PUSH [tag]",
"source": 0,
"value": "11"
},
{
"begin": 183,
"end": 329,
"name": "PUSH [tag]",
"source": 0,
"value": "12"
},
{
"begin": 183,
"end": 329,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 183,
"end": 329,
"name": "tag",
"source": 0,
"value": "11"
},
{
"begin": 183,
"end": 329,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 183,
"end": 329,
"name": "STOP",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "tag",
"source": 0,
"value": "8"
},
{
"begin": 105,
"end": 150,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 105,
"end": 150,
"name": "DUP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "5"
},
{
"begin": 105,
"end": 150,
"name": "DUP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "LT",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH [tag]",
"source": 0,
"value": "13"
},
{
"begin": 105,
"end": 150,
"name": "JUMPI",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 105,
"end": 150,
"name": "DUP1",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "REVERT",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "tag",
"source": 0,
"value": "13"
},
{
"begin": 105,
"end": 150,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "ADD",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 105,
"end": 150,
"name": "SWAP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "POP",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "SWAP1",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "POP",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "SLOAD",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "DUP2",
"source": 0
},
{
"begin": 105,
"end": 150,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 183,
"end": 329,
"name": "tag",
"source": 0,
"value": "12"
},
{
"begin": 183,
"end": 329,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 221,
"end": 229,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 249,
"end": 255,
"name": "DUP1",
"source": 0
},
{
"begin": 244,
"end": 293,
"name": "tag",
"source": 0,
"value": "16"
},
{
"begin": 244,
"end": 293,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 97,
"end": 98,
"name": "PUSH",
"source": 0,
"value": "5"
},
{
"begin": 259,
"end": 260,
"name": "DUP2",
"source": 0
},
{
"begin": 259,
"end": 265,
"name": "LT",
"source": 0
},
{
"begin": 244,
"end": 293,
"name": "ISZERO",
"source": 0
},
{
"begin": 244,
"end": 293,
"name": "PUSH [tag]",
"source": 0,
"value": "17"
},
{
"begin": 244,
"end": 293,
"name": "JUMPI",
"source": 0
},
{
"begin": 288,
"end": 290,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 291,
"end": 292,
"name": "DUP2",
"source": 0
},
{
"begin": 288,
"end": 293,
"name": "PUSH",
"source": 0,
"value": "5"
},
{
"begin": 288,
"end": 293,
"name": "DUP2",
"source": 0
},
{
"begin": 288,
"end": 293,
"name": "LT",
"source": 0
},
{
"begin": 288,
"end": 293,
"name": "PUSH [tag]",
"source": 0,
"value": "19"
},
{
"begin": 288,
"end": 293,
"name": "JUMPI",
"source": 0
},
{
"begin": 288,
"end": 293,
"name": "PUSH [tag]",
"source": 0,
"value": "20"
},
{
"begin": 288,
"end": 293,
"name": "PUSH [tag]",
"source": 0,
"value": "21"
},
{
"begin": 288,
"end": 293,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 288,
"end": 293,
"name": "tag",
"source": 0,
"value": "20"
},
{
"begin": 288,
"end": 293,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 288,
"end": 293,
"name": "tag",
"source": 0,
"value": "19"
},
{
"begin": 288,
"end": 293,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 288,
"end": 293,
"name": "ADD",
"source": 0
},
{
"begin": 288,
"end": 293,
"name": "SLOAD",
"source": 0
},
{
"begin": 281,
"end": 293,
"name": "DUP3",
"source": 0
},
{
"begin": 281,
"end": 293,
"name": "PUSH [tag]",
"source": 0,
"value": "23"
},
{
"begin": 281,
"end": 293,
"name": "SWAP2",
"source": 0
},
{
"begin": 281,
"end": 293,
"name": "SWAP1",
"source": 0
},
{
"begin": 281,
"end": 293,
"name": "PUSH [tag]",
"source": 0,
"value": "24"
},
{
"begin": 281,
"end": 293,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 281,
"end": 293,
"name": "tag",
"source": 0,
"value": "23"
},
{
"begin": 281,
"end": 293,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 281,
"end": 293,
"name": "SWAP2",
"source": 0
},
{
"begin": 281,
"end": 293,
"name": "POP",
"source": 0
},
{
"begin": 267,
"end": 270,
"name": "DUP1",
"source": 0
},
{
"begin": 267,
"end": 270,
"name": "DUP1",
"source": 0
},
{
"begin": 267,
"end": 270,
"name": "PUSH [tag]",
"source": 0,
"value": "25"
},
{
"begin": 267,
"end": 270,
"name": "SWAP1",
"source": 0
},
{
"begin": 267,
"end": 270,
"name": "PUSH [tag]",
"source": 0,
"value": "26"
},
{
"begin": 267,
"end": 270,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 267,
"end": 270,
"name": "tag",
"source": 0,
"value": "25"
},
{
"begin": 267,
"end": 270,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 267,
"end": 270,
"name": "SWAP2",
"source": 0
},
{
"begin": 267,
"end": 270,
"name": "POP",
"source": 0
},
{
"begin": 267,
"end": 270,
"name": "POP",
"source": 0
},
{
"begin": 244,
"end": 293,
"name": "PUSH [tag]",
"source": 0,
"value": "16"
},
{
"begin": 244,
"end": 293,
"name": "JUMP",
"source": 0
},
{
"begin": 244,
"end": 293,
"name": "tag",
"source": 0,
"value": "17"
},
{
"begin": 244,
"end": 293,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 244,
"end": 293,
"name": "POP",
"source": 0
},
{
"begin": 309,
"end": 321,
"name": "PUSH",
"source": 0,
"value": "C2DA2447CC63B33E4C8C3CF233736B4D9FCE4FA6D4FA1883E32ECC0A743362A9"
},
{
"begin": 317,
"end": 320,
"name": "DUP2",
"source": 0
},
{
"begin": 309,
"end": 321,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 309,
"end": 321,
"name": "MLOAD",
"source": 0
},
{
"begin": 309,
"end": 321,
"name": "PUSH [tag]",
"source": 0,
"value": "27"
},
{
"begin": 309,
"end": 321,
"name": "SWAP2",
"source": 0
},
{
"begin": 309,
"end": 321,
"name": "SWAP1",
"source": 0
},
{
"begin": 309,
"end": 321,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 309,
"end": 321,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 309,
"end": 321,
"name": "tag",
"source": 0,
"value": "27"
},
{
"begin": 309,
"end": 321,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 309,
"end": 321,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 309,
"end": 321,
"name": "MLOAD",
"source": 0
},
{
"begin": 309,
"end": 321,
"name": "DUP1",
"source": 0
},
{
"begin": 309,
"end": 321,
"name": "SWAP2",
"source": 0
},
{
"begin": 309,
"end": 321,
"name": "SUB",
"source": 0
},
{
"begin": 309,
"end": 321,
"name": "SWAP1",
"source": 0
},
{
"begin": 309,
"end": 321,
"name": "LOG1",
"source": 0
},
{
"begin": 210,
"end": 329,
"name": "POP",
"source": 0
},
{
"begin": 183,
"end": 329,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 7,
"end": 146,
"name": "tag",
"source": 1,
"value": "29"
},
{
"begin": 7,
"end": 146,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 53,
"end": 58,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 91,
"end": 97,
"name": "DUP2",
"source": 1
},
{
"begin": 78,
"end": 98,
"name": "CALLDATALOAD",
"source": 1
},
{
"begin": 69,
"end": 98,
"name": "SWAP1",
"source": 1
},
{
"begin": 69,
"end": 98,
"name": "POP",
"source": 1
},
{
"begin": 107,
"end": 140,
"name": "PUSH [tag]",
"source": 1,
"value": "31"
},
{
"begin": 134,
"end": 139,
"name": "DUP2",
"source": 1
},
{
"begin": 107,
"end": 140,
"name": "PUSH [tag]",
"source": 1,
"value": "32"
},
{
"begin": 107,
"end": 140,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 107,
"end": 140,
"name": "tag",
"source": 1,
"value": "31"
},
{
"begin": 107,
"end": 140,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 7,
"end": 146,
"name": "SWAP3",
"source": 1
},
{
"begin": 7,
"end": 146,
"name": "SWAP2",
"source": 1
},
{
"begin": 7,
"end": 146,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 146,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 146,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 152,
"end": 481,
"name": "tag",
"source": 1,
"value": "7"
},
{
"begin": 152,
"end": 481,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 211,
"end": 217,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 260,
"end": 262,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 248,
"end": 257,
"name": "DUP3",
"source": 1
},
{
"begin": 239,
"end": 246,
"name": "DUP5",
"source": 1
},
{
"begin": 235,
"end": 258,
"name": "SUB",
"source": 1
},
{
"begin": 231,
"end": 263,
"name": "SLT",
"source": 1
},
{
"begin": 228,
"end": 347,
"name": "ISZERO",
"source": 1
},
{
"begin": 228,
"end": 347,
"name": "PUSH [tag]",
"source": 1,
"value": "34"
},
{
"begin": 228,
"end": 347,
"name": "JUMPI",
"source": 1
},
{
"begin": 266,
"end": 345,
"name": "PUSH [tag]",
"source": 1,
"value": "35"
},
{
"begin": 266,
"end": 345,
"name": "PUSH [tag]",
"source": 1,
"value": "36"
},
{
"begin": 266,
"end": 345,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 266,
"end": 345,
"name": "tag",
"source": 1,
"value": "35"
},
{
"begin": 266,
"end": 345,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 228,
"end": 347,
"name": "tag",
"source": 1,
"value": "34"
},
{
"begin": 228,
"end": 347,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 386,
"end": 387,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 411,
"end": 464,
"name": "PUSH [tag]",
"source": 1,
"value": "37"
},
{
"begin": 456,
"end": 463,
"name": "DUP5",
"source": 1
},
{
"begin": 447,
"end": 453,
"name": "DUP3",
"source": 1
},
{
"begin": 436,
"end": 445,
"name": "DUP6",
"source": 1
},
{
"begin": 432,
"end": 454,
"name": "ADD",
"source": 1
},
{
"begin": 411,
"end": 464,
"name": "PUSH [tag]",
"source": 1,
"value": "29"
},
{
"begin": 411,
"end": 464,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 411,
"end": 464,
"name": "tag",
"source": 1,
"value": "37"
},
{
"begin": 411,
"end": 464,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 401,
"end": 464,
"name": "SWAP2",
"source": 1
},
{
"begin": 401,
"end": 464,
"name": "POP",
"source": 1
},
{
"begin": 357,
"end": 474,
"name": "POP",
"source": 1
},
{
"begin": 152,
"end": 481,
"name": "SWAP3",
"source": 1
},
{
"begin": 152,
"end": 481,
"name": "SWAP2",
"source": 1
},
{
"begin": 152,
"end": 481,
"name": "POP",
"source": 1
},
{
"begin": 152,
"end": 481,
"name": "POP",
"source": 1
},
{
"begin": 152,
"end": 481,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 487,
"end": 605,
"name": "tag",
"source": 1,
"value": "38"
},
{
"begin": 487,
"end": 605,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 574,
"end": 598,
"name": "PUSH [tag]",
"source": 1,
"value": "40"
},
{
"begin": 592,
"end": 597,
"name": "DUP2",
"source": 1
},
{
"begin": 574,
"end": 598,
"name": "PUSH [tag]",
"source": 1,
"value": "41"
},
{
"begin": 574,
"end": 598,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 574,
"end": 598,
"name": "tag",
"source": 1,
"value": "40"
},
{
"begin": 574,
"end": 598,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 569,
"end": 572,
"name": "DUP3",
"source": 1
},
{
"begin": 562,
"end": 599,
"name": "MSTORE",
"source": 1
},
{
"begin": 487,
"end": 605,
"name": "POP",
"source": 1
},
{
"begin": 487,
"end": 605,
"name": "POP",
"source": 1
},
{
"begin": 487,
"end": 605,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 611,
"end": 833,
"name": "tag",
"source": 1,
"value": "10"
},
{
"begin": 611,
"end": 833,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 704,
"end": 708,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 742,
"end": 744,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 731,
"end": 740,
"name": "DUP3",
"source": 1
},
{
"begin": 727,
"end": 745,
"name": "ADD",
"source": 1
},
{
"begin": 719,
"end": 745,
"name": "SWAP1",
"source": 1
},
{
"begin": 719,
"end": 745,
"name": "POP",
"source": 1
},
{
"begin": 755,
"end": 826,
"name": "PUSH [tag]",
"source": 1,
"value": "43"
},
{
"begin": 823,
"end": 824,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 812,
"end": 821,
"name": "DUP4",
"source": 1
},
{
"begin": 808,
"end": 825,
"name": "ADD",
"source": 1
},
{
"begin": 799,
"end": 805,
"name": "DUP5",
"source": 1
},
{
"begin": 755,
"end": 826,
"name": "PUSH [tag]",
"source": 1,
"value": "38"
},
{
"begin": 755,
"end": 826,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 755,
"end": 826,
"name": "tag",
"source": 1,
"value": "43"
},
{
"begin": 755,
"end": 826,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 611,
"end": 833,
"name": "SWAP3",
"source": 1
},
{
"begin": 611,
"end": 833,
"name": "SWAP2",
"source": 1
},
{
"begin": 611,
"end": 833,
"name": "POP",
"source": 1
},
{
"begin": 611,
"end": 833,
"name": "POP",
"source": 1
},
{
"begin": 611,
"end": 833,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 920,
"end": 1225,
"name": "tag",
"source": 1,
"value": "24"
},
{
"begin": 920,
"end": 1225,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 960,
"end": 963,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 979,
"end": 999,
"name": "PUSH [tag]",
"source": 1,
"value": "47"
},
{
"begin": 997,
"end": 998,
"name": "DUP3",
"source": 1
},
{
"begin": 979,
"end": 999,
"name": "PUSH [tag]",
"source": 1,
"value": "41"
},
{
"begin": 979,
"end": 999,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 979,
"end": 999,
"name": "tag",
"source": 1,
"value": "47"
},
{
"begin": 979,
"end": 999,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 974,
"end": 999,
"name": "SWAP2",
"source": 1
},
{
"begin": 974,
"end": 999,
"name": "POP",
"source": 1
},
{
"begin": 1013,
"end": 1033,
"name": "PUSH [tag]",
"source": 1,
"value": "48"
},
{
"begin": 1031,
"end": 1032,
"name": "DUP4",
"source": 1
},
{
"begin": 1013,
"end": 1033,
"name": "PUSH [tag]",
"source": 1,
"value": "41"
},
{
"begin": 1013,
"end": 1033,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1013,
"end": 1033,
"name": "tag",
"source": 1,
"value": "48"
},
{
"begin": 1013,
"end": 1033,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1008,
"end": 1033,
"name": "SWAP3",
"source": 1
},
{
"begin": 1008,
"end": 1033,
"name": "POP",
"source": 1
},
{
"begin": 1167,
"end": 1168,
"name": "DUP3",
"source": 1
},
{
"begin": 1099,
"end": 1165,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1095,
"end": 1169,
"name": "SUB",
"source": 1
},
{
"begin": 1092,
"end": 1093,
"name": "DUP3",
"source": 1
},
{
"begin": 1089,
"end": 1170,
"name": "GT",
"source": 1
},
{
"begin": 1086,
"end": 1193,
"name": "ISZERO",
"source": 1
},
{
"begin": 1086,
"end": 1193,
"name": "PUSH [tag]",
"source": 1,
"value": "49"
},
{
"begin": 1086,
"end": 1193,
"name": "JUMPI",
"source": 1
},
{
"begin": 1173,
"end": 1191,
"name": "PUSH [tag]",
"source": 1,
"value": "50"
},
{
"begin": 1173,
"end": 1191,
"name": "PUSH [tag]",
"source": 1,
"value": "51"
},
{
"begin": 1173,
"end": 1191,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1173,
"end": 1191,
"name": "tag",
"source": 1,
"value": "50"
},
{
"begin": 1173,
"end": 1191,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1086,
"end": 1193,
"name": "tag",
"source": 1,
"value": "49"
},
{
"begin": 1086,
"end": 1193,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1217,
"end": 1218,
"name": "DUP3",
"source": 1
},
{
"begin": 1214,
"end": 1215,
"name": "DUP3",
"source": 1
},
{
"begin": 1210,
"end": 1219,
"name": "ADD",
"source": 1
},
{
"begin": 1203,
"end": 1219,
"name": "SWAP1",
"source": 1
},
{
"begin": 1203,
"end": 1219,
"name": "POP",
"source": 1
},
{
"begin": 920,
"end": 1225,
"name": "SWAP3",
"source": 1
},
{
"begin": 920,
"end": 1225,
"name": "SWAP2",
"source": 1
},
{
"begin": 920,
"end": 1225,
"name": "POP",
"source": 1
},
{
"begin": 920,
"end": 1225,
"name": "POP",
"source": 1
},
{
"begin": 920,
"end": 1225,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1231,
"end": 1308,
"name": "tag",
"source": 1,
"value": "41"
},
{
"begin": 1231,
"end": 1308,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1268,
"end": 1275,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1297,
"end": 1302,
"name": "DUP2",
"source": 1
},
{
"begin": 1286,
"end": 1302,
"name": "SWAP1",
"source": 1
},
{
"begin": 1286,
"end": 1302,
"name": "POP",
"source": 1
},
{
"begin": 1231,
"end": 1308,
"name": "SWAP2",
"source": 1
},
{
"begin": 1231,
"end": 1308,
"name": "SWAP1",
"source": 1
},
{
"begin": 1231,
"end": 1308,
"name": "POP",
"source": 1
},
{
"begin": 1231,
"end": 1308,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1314,
"end": 1547,
"name": "tag",
"source": 1,
"value": "26"
},
{
"begin": 1314,
"end": 1547,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1353,
"end": 1356,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1376,
"end": 1400,
"name": "PUSH [tag]",
"source": 1,
"value": "54"
},
{
"begin": 1394,
"end": 1399,
"name": "DUP3",
"source": 1
},
{
"begin": 1376,
"end": 1400,
"name": "PUSH [tag]",
"source": 1,
"value": "41"
},
{
"begin": 1376,
"end": 1400,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1376,
"end": 1400,
"name": "tag",
"source": 1,
"value": "54"
},
{
"begin": 1376,
"end": 1400,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1367,
"end": 1400,
"name": "SWAP2",
"source": 1
},
{
"begin": 1367,
"end": 1400,
"name": "POP",
"source": 1
},
{
"begin": 1422,
"end": 1488,
"name": "PUSH",
"source": 1,
"value": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
},
{
"begin": 1415,
"end": 1420,
"name": "DUP3",
"source": 1
},
{
"begin": 1412,
"end": 1489,
"name": "EQ",
"source": 1
},
{
"begin": 1409,
"end": 1512,
"name": "ISZERO",
"source": 1
},
{
"begin": 1409,
"end": 1512,
"name": "PUSH [tag]",
"source": 1,
"value": "55"
},
{
"begin": 1409,
"end": 1512,
"name": "JUMPI",
"source": 1
},
{
"begin": 1492,
"end": 1510,
"name": "PUSH [tag]",
"source": 1,
"value": "56"
},
{
"begin": 1492,
"end": 1510,
"name": "PUSH [tag]",
"source": 1,
"value": "51"
},
{
"begin": 1492,
"end": 1510,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 1492,
"end": 1510,
"name": "tag",
"source": 1,
"value": "56"
},
{
"begin": 1492,
"end": 1510,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1409,
"end": 1512,
"name": "tag",
"source": 1,
"value": "55"
},
{
"begin": 1409,
"end": 1512,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1539,
"end": 1540,
"name": "PUSH",
"source": 1,
"value": "1"
},
{
"begin": 1532,
"end": 1537,
"name": "DUP3",
"source": 1
},
{
"begin": 1528,
"end": 1541,
"name": "ADD",
"source": 1
},
{
"begin": 1521,
"end": 1541,
"name": "SWAP1",
"source": 1
},
{
"begin": 1521,
"end": 1541,
"name": "POP",
"source": 1
},
{
"begin": 1314,
"end": 1547,
"name": "SWAP2",
"source": 1
},
{
"begin": 1314,
"end": 1547,
"name": "SWAP1",
"source": 1
},
{
"begin": 1314,
"end": 1547,
"name": "POP",
"source": 1
},
{
"begin": 1314,
"end": 1547,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 1553,
"end": 1733,
"name": "tag",
"source": 1,
"value": "51"
},
{
"begin": 1553,
"end": 1733,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1601,
"end": 1678,
"name": "PUSH",
"source": 1,
"value": "4E487B7100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 1598,
"end": 1599,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1591,
"end": 1679,
"name": "MSTORE",
"source": 1
},
{
"begin": 1698,
"end": 1702,
"name": "PUSH",
"source": 1,
"value": "11"
},
{
"begin": 1695,
"end": 1696,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 1688,
"end": 1703,
"name": "MSTORE",
"source": 1
},
{
"begin": 1722,
"end": 1726,
"name": "PUSH",
"source": 1,
"value": "24"
},
{
"begin": 1719,
"end": 1720,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1712,
"end": 1727,
"name": "REVERT",
"source": 1
},
{
"begin": 1739,
"end": 1919,
"name": "tag",
"source": 1,
"value": "21"
},
{
"begin": 1739,
"end": 1919,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 1787,
"end": 1864,
"name": "PUSH",
"source": 1,
"value": "4E487B7100000000000000000000000000000000000000000000000000000000"
},
{
"begin": 1784,
"end": 1785,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1777,
"end": 1865,
"name": "MSTORE",
"source": 1
},
{
"begin": 1884,
"end": 1888,
"name": "PUSH",
"source": 1,
"value": "32"
},
{
"begin": 1881,
"end": 1882,
"name": "PUSH",
"source": 1,
"value": "4"
},
{
"begin": 1874,
"end": 1889,
"name": "MSTORE",
"source": 1
},
{
"begin": 1908,
"end": 1912,
"name": "PUSH",
"source": 1,
"value": "24"
},
{
"begin": 1905,
"end": 1906,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 1898,
"end": 1913,
"name": "REVERT",
"source": 1
},
{
"begin": 2048,
"end": 2165,
"name": "tag",
"source": 1,
"value": "36"
},
{
"begin": 2048,
"end": 2165,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2157,
"end": 2158,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2154,
"end": 2155,
"name": "DUP1",
"source": 1
},
{
"begin": 2147,
"end": 2159,
"name": "REVERT",
"source": 1
},
{
"begin": 2171,
"end": 2293,
"name": "tag",
"source": 1,
"value": "32"
},
{
"begin": 2171,
"end": 2293,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2244,
"end": 2268,
"name": "PUSH [tag]",
"source": 1,
"value": "63"
},
{
"begin": 2262,
"end": 2267,
"name": "DUP2",
"source": 1
},
{
"begin": 2244,
"end": 2268,
"name": "PUSH [tag]",
"source": 1,
"value": "41"
},
{
"begin": 2244,
"end": 2268,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 2244,
"end": 2268,
"name": "tag",
"source": 1,
"value": "63"
},
{
"begin": 2244,
"end": 2268,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2237,
"end": 2242,
"name": "DUP2",
"source": 1
},
{
"begin": 2234,
"end": 2269,
"name": "EQ",
"source": 1
},
{
"begin": 2224,
"end": 2287,
"name": "PUSH [tag]",
"source": 1,
"value": "64"
},
{
"begin": 2224,
"end": 2287,
"name": "JUMPI",
"source": 1
},
{
"begin": 2283,
"end": 2284,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 2280,
"end": 2281,
"name": "DUP1",
"source": 1
},
{
"begin": 2273,
"end": 2285,
"name": "REVERT",
"source": 1
},
{
"begin": 2224,
"end": 2287,
"name": "tag",
"source": 1,
"value": "64"
},
{
"begin": 2224,
"end": 2287,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 2171,
"end": 2293,
"name": "POP",
"source": 1
},
{
"begin": 2171,
"end": 2293,
"name": "JUMP",
"source": 1,
"value": "[out]"
}
]
}
}
},
"methodIdentifiers": {
"sa(uint256)": "1f7fca26",
"sumArray()": "81d73423"
}
},
"metadata": "{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"display\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"sa\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sumArray\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/w15ex6.sol\":\"ex6\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/w15ex6.sol\":{\"keccak256\":\"0x6a423e34c51a26e2ad6c0c2860941c7e494785046efb37d6cb37bf082455651d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7facc33a3d62bb0f5889e3b7b085532b77734ad6d318837ee07e243c816078f5\",\"dweb:/ipfs/QmcpgLHrMyo6PWQue4PXstwuh86rguiXNngdRfHXoXEr5D\"]}},\"version\":1}",
"storageLayout": {
"storage": [
{
"astId": 17,
"contract": "contracts/w15ex6.sol:ex6",
"label": "sa",
"offset": 0,
"slot": "0",
"type": "t_array(t_uint256)5_storage"
}
],
"types": {
"t_array(t_uint256)5_storage": {
"base": "t_uint256",
"encoding": "inplace",
"label": "uint256[5]",
"numberOfBytes": "160"
},
"t_uint256": {
"encoding": "inplace",
"label": "uint256",
"numberOfBytes": "32"
}
}
},
"userdoc": {
"kind": "user",
"methods": {},
"version": 1
}
}
}
},
"sources": {
"contracts/w15ex6.sol": {
"ast": {
"absolutePath": "contracts/w15ex6.sol",
"exportedSymbols": {
"ex6": [
51
]
},
"id": 52,
"license": "MIT",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1,
"literals": [
"solidity",
"^",
"0.8",
".0"
],
"nodeType": "PragmaDirective",
"src": "32:23:0"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"fullyImplemented": true,
"id": 51,
"linearizedBaseContracts": [
51
],
"name": "ex6",
"nameLocation": "66:3:0",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": true,
"id": 4,
"mutability": "constant",
"name": "size",
"nameLocation": "90:4:0",
"nodeType": "VariableDeclaration",
"scope": 51,
"src": "76:22:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "76:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": {
"hexValue": "35",
"id": 3,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "97:1:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_5_by_1",
"typeString": "int_const 5"
},
"value": "5"
},
"visibility": "internal"
},
{
"constant": false,
"functionSelector": "1f7fca26",
"id": 17,
"mutability": "mutable",
"name": "sa",
"nameLocation": "123:2:0",
"nodeType": "VariableDeclaration",
"scope": 51,
"src": "105:45:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$5_storage",
"typeString": "uint256[5]"
},
"typeName": {
"baseType": {
"id": 5,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "105:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 7,
"length": {
"id": 6,
"name": "size",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 4,
"src": "110:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "ArrayTypeName",
"src": "105:10:0",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$5_storage_ptr",
"typeString": "uint256[5]"
}
},
"value": {
"components": [
{
"arguments": [
{
"hexValue": "3130",
"id": 10,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "134:2:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_10_by_1",
"typeString": "int_const 10"
},
"value": "10"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_10_by_1",
"typeString": "int_const 10"
}
],
"id": 9,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "129:4:0",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_uint256_$",
"typeString": "type(uint256)"
},
"typeName": {
"id": 8,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "129:4:0",
"typeDescriptions": {}
}
},
"id": 11,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "129:8:0",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"hexValue": "3230",
"id": 12,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "138:2:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_20_by_1",
"typeString": "int_const 20"
},
"value": "20"
},
{
"hexValue": "3330",
"id": 13,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "141:2:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_30_by_1",
"typeString": "int_const 30"
},
"value": "30"
},
{
"hexValue": "3430",
"id": 14,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "144:2:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_40_by_1",
"typeString": "int_const 40"
},
"value": "40"
},
{
"hexValue": "3530",
"id": 15,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "147:2:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_50_by_1",
"typeString": "int_const 50"
},
"value": "50"
}
],
"id": 16,
"isConstant": false,
"isInlineArray": true,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "128:22:0",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$5_memory_ptr",
"typeString": "uint256[5] memory"
}
},
"visibility": "public"
},
{
"anonymous": false,
"id": 21,
"name": "display",
"nameLocation": "163:7:0",
"nodeType": "EventDefinition",
"parameters": {
"id": 20,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 19,
"indexed": false,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 21,
"src": "171:4:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 18,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "171:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "170:6:0"
},
"src": "157:20:0"
},
{
"body": {
"id": 49,
"nodeType": "Block",
"src": "210:119:0",
"statements": [
{
"assignments": [
25
],
"declarations": [
{
"constant": false,
"id": 25,
"mutability": "mutable",
"name": "sum",
"nameLocation": "226:3:0",
"nodeType": "VariableDeclaration",
"scope": 49,
"src": "221:8:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 24,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "221:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"id": 27,
"initialValue": {
"hexValue": "30",
"id": 26,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "232:1:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"nodeType": "VariableDeclarationStatement",
"src": "221:12:0"
},
{
"body": {
"expression": {
"id": 42,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"id": 38,
"name": "sum",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 25,
"src": "281:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "+=",
"rightHandSide": {
"baseExpression": {
"id": 39,
"name": "sa",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 17,
"src": "288:2:0",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$5_storage",
"typeString": "uint256[5] storage ref"
}
},
"id": 41,
"indexExpression": {
"id": 40,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 29,
"src": "291:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "288:5:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "281:12:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 43,
"nodeType": "ExpressionStatement",
"src": "281:12:0"
},
"condition": {
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 34,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"id": 32,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 29,
"src": "259:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "<",
"rightExpression": {
"id": 33,
"name": "size",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 4,
"src": "261:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "259:6:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 44,
"initializationExpression": {
"assignments": [
29
],
"declarations": [
{
"constant": false,
"id": 29,
"mutability": "mutable",
"name": "i",
"nameLocation": "254:1:0",
"nodeType": "VariableDeclaration",
"scope": 44,
"src": "249:6:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 28,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "249:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"id": 31,
"initialValue": {
"hexValue": "30",
"id": 30,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "256:1:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"nodeType": "VariableDeclarationStatement",
"src": "249:8:0"
},
"loopExpression": {
"expression": {
"id": 36,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "UnaryOperation",
"operator": "++",
"prefix": false,
"src": "267:3:0",
"subExpression": {
"id": 35,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 29,
"src": "267:1:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 37,
"nodeType": "ExpressionStatement",
"src": "267:3:0"
},
"nodeType": "ForStatement",
"src": "244:49:0"
},
{
"eventCall": {
"arguments": [
{
"id": 46,
"name": "sum",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 25,
"src": "317:3:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 45,
"name": "display",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 21,
"src": "309:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_uint256_$returns$__$",
"typeString": "function (uint256)"
}
},
"id": 47,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "309:12:0",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 48,
"nodeType": "EmitStatement",
"src": "304:17:0"
}
]
},
"functionSelector": "81d73423",
"id": 50,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "sumArray",
"nameLocation": "192:8:0",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 22,
"nodeType": "ParameterList",
"parameters": [],
"src": "200:2:0"
},
"returnParameters": {
"id": 23,
"nodeType": "ParameterList",
"parameters": [],
"src": "210:0:0"
},
"scope": 51,
"src": "183:146:0",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
}
],
"scope": 52,
"src": "57:275:0",
"usedErrors": []
}
],
"src": "32:300:0"
},
"id": 0
}
}
}
}
{
"id": "c0008b0c32a46cdc94a5275e4bcdba8d",
"_format": "hh-sol-build-info-1",
"solcVersion": "0.8.7",
"solcLongVersion": "0.8.7+commit.e28d00a7",
"input": {
"language": "Solidity",
"sources": {
"contracts/w15ex4.sol": {
"content": "//SPDX-License-Identifier: MIT\r\npragma solidity ^0.8.0;\r\ncontract ex4{\r\n uint public stateUint = 10;\r\n event display(uint);\r\n function getUint() public returns (uint){\r\n uint localUint = 20;\r\n stateUint = localUint;\r\n localUint = 2;\r\n emit display(stateUint);\r\n return stateUint;\r\n }\r\n}"
}
},
"settings": {
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"": [
"ast"
],
"*": [
"abi",
"metadata",
"devdoc",
"userdoc",
"storageLayout",
"evm.legacyAssembly",
"evm.bytecode",
"evm.deployedBytecode",
"evm.methodIdentifiers",
"evm.gasEstimates",
"evm.assembly"
]
}
}
}
},
"output": {
"contracts": {
"contracts/w15ex4.sol": {
"ex4": {
"abi": [
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "display",
"type": "event"
},
{
"inputs": [],
"name": "getUint",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "stateUint",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"evm": {
"assembly": " /* \"contracts/w15ex4.sol\":57:333 contract ex4{\r... */\n mstore(0x40, 0x80)\n /* \"contracts/w15ex4.sol\":100:102 10 */\n 0x0a\n /* \"contracts/w15ex4.sol\":76:102 uint public stateUint = 10 */\n 0x00\n sstore\n /* \"contracts/w15ex4.sol\":57:333 contract ex4{\r... */\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\ntag_1:\n pop\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"contracts/w15ex4.sol\":57:333 contract ex4{\r... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\n tag_1:\n pop\n jumpi(tag_2, lt(calldatasize, 0x04))\n shr(0xe0, calldataload(0x00))\n dup1\n 0x0267a4\n eq\n tag_3\n jumpi\n dup1\n 0xe3ee2e97\n eq\n tag_4\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/w15ex4.sol\":135:330 function getUint() public returns (uint){\r... */\n tag_3:\n tag_5\n tag_6\n jump\t// in\n tag_5:\n mload(0x40)\n tag_7\n swap2\n swap1\n tag_8\n jump\t// in\n tag_7:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/w15ex4.sol\":76:102 uint public stateUint = 10 */\n tag_4:\n tag_9\n tag_10\n jump\t// in\n tag_9:\n mload(0x40)\n tag_11\n swap2\n swap1\n tag_8\n jump\t// in\n tag_11:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/w15ex4.sol\":135:330 function getUint() public returns (uint){\r... */\n tag_6:\n /* \"contracts/w15ex4.sol\":170:174 uint */\n 0x00\n /* \"contracts/w15ex4.sol\":186:200 uint localUint */\n dup1\n /* \"contracts/w15ex4.sol\":203:205 20 */\n 0x14\n /* \"contracts/w15ex4.sol\":186:205 uint localUint = 20 */\n swap1\n pop\n /* \"contracts/w15ex4.sol\":228:237 localUint */\n dup1\n /* \"contracts/w15ex4.sol\":216:225 stateUint */\n 0x00\n /* \"contracts/w15ex4.sol\":216:237 stateUint = localUint */\n dup2\n swap1\n sstore\n pop\n /* \"contracts/w15ex4.sol\":260:261 2 */\n 0x02\n /* \"contracts/w15ex4.sol\":248:261 localUint = 2 */\n swap1\n pop\n /* \"contracts/w15ex4.sol\":277:295 display(stateUint) */\n 0xc2da2447cc63b33e4c8c3cf233736b4d9fce4fa6d4fa1883e32ecc0a743362a9\n /* \"contracts/w15ex4.sol\":285:294 stateUint */\n sload(0x00)\n /* \"contracts/w15ex4.sol\":277:295 display(stateUint) */\n mload(0x40)\n tag_13\n swap2\n swap1\n tag_8\n jump\t// in\n tag_13:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n log1\n /* \"contracts/w15ex4.sol\":313:322 stateUint */\n sload(0x00)\n /* \"contracts/w15ex4.sol\":306:322 return stateUint */\n swap2\n pop\n pop\n /* \"contracts/w15ex4.sol\":135:330 function getUint() public returns (uint){\r... */\n swap1\n jump\t// out\n /* \"contracts/w15ex4.sol\":76:102 uint public stateUint = 10 */\n tag_10:\n sload(0x00)\n dup2\n jump\t// out\n /* \"#utility.yul\":7:125 */\n tag_15:\n /* \"#utility.yul\":94:118 */\n tag_17\n /* \"#utility.yul\":112:117 */\n dup2\n /* \"#utility.yul\":94:118 */\n tag_18\n jump\t// in\n tag_17:\n /* \"#utility.yul\":89:92 */\n dup3\n /* \"#utility.yul\":82:119 */\n mstore\n /* \"#utility.yul\":7:125 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":131:353 */\n tag_8:\n /* \"#utility.yul\":224:228 */\n 0x00\n /* \"#utility.yul\":262:264 */\n 0x20\n /* \"#utility.yul\":251:260 */\n dup3\n /* \"#utility.yul\":247:265 */\n add\n /* \"#utility.yul\":239:265 */\n swap1\n pop\n /* \"#utility.yul\":275:346 */\n tag_20\n /* \"#utility.yul\":343:344 */\n 0x00\n /* \"#utility.yul\":332:341 */\n dup4\n /* \"#utility.yul\":328:345 */\n add\n /* \"#utility.yul\":319:325 */\n dup5\n /* \"#utility.yul\":275:346 */\n tag_15\n jump\t// in\n tag_20:\n /* \"#utility.yul\":131:353 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":359:436 */\n tag_18:\n /* \"#utility.yul\":396:403 */\n 0x00\n /* \"#utility.yul\":425:430 */\n dup2\n /* \"#utility.yul\":414:430 */\n swap1\n pop\n /* \"#utility.yul\":359:436 */\n swap2\n swap1\n pop\n jump\t// out\n\n auxdata: 0xa26469706673582212203b83260c339f8a997b1611b492a57d7165af646df6aed7e10759cd41c7a7526964736f6c63430008070033\n}\n",
"bytecode": {
"functionDebugData": {},
"generatedSources": [],
"linkReferences": {},
"object": "6080604052600a60005534801561001557600080fd5b50610128806100256000396000f3fe6080604052348015600f57600080fd5b506004361060315760003560e01c80620267a4146036578063e3ee2e97146050575b600080fd5b603c606a565b6040516047919060cf565b60405180910390f35b605660bc565b6040516061919060cf565b60405180910390f35b6000806014905080600081905550600290507fc2da2447cc63b33e4c8c3cf233736b4d9fce4fa6d4fa1883e32ecc0a743362a960005460405160ab919060cf565b60405180910390a160005491505090565b60005481565b60c98160e8565b82525050565b600060208201905060e2600083018460c2565b92915050565b600081905091905056fea26469706673582212203b83260c339f8a997b1611b492a57d7165af646df6aed7e10759cd41c7a7526964736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0xA PUSH1 0x0 SSTORE CALLVALUE DUP1 ISZERO PUSH2 0x15 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x128 DUP1 PUSH2 0x25 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH1 0xF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH1 0x31 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH3 0x267A4 EQ PUSH1 0x36 JUMPI DUP1 PUSH4 0xE3EE2E97 EQ PUSH1 0x50 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x3C PUSH1 0x6A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x47 SWAP2 SWAP1 PUSH1 0xCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x56 PUSH1 0xBC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x61 SWAP2 SWAP1 PUSH1 0xCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x14 SWAP1 POP DUP1 PUSH1 0x0 DUP2 SWAP1 SSTORE POP PUSH1 0x2 SWAP1 POP PUSH32 0xC2DA2447CC63B33E4C8C3CF233736B4D9FCE4FA6D4FA1883E32ECC0A743362A9 PUSH1 0x0 SLOAD PUSH1 0x40 MLOAD PUSH1 0xAB SWAP2 SWAP1 PUSH1 0xCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 PUSH1 0x0 SLOAD SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 SLOAD DUP2 JUMP JUMPDEST PUSH1 0xC9 DUP2 PUSH1 0xE8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0xE2 PUSH1 0x0 DUP4 ADD DUP5 PUSH1 0xC2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 EXTCODESIZE DUP4 0x26 0xC CALLER SWAP16 DUP11 SWAP10 PUSH28 0x1611B492A57D7165AF646DF6AED7E10759CD41C7A7526964736F6C63 NUMBER STOP ADDMOD SMOD STOP CALLER ",
"sourceMap": "57:276:0:-:0;;;100:2;76:26;;57:276;;;;;;;;;;;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@getUint_32": {
"entryPoint": 106,
"id": 32,
"parameterSlots": 0,
"returnSlots": 1
},
"@stateUint_4": {
"entryPoint": 188,
"id": 4,
"parameterSlots": 0,
"returnSlots": 0
},
"abi_encode_t_uint256_to_t_uint256_fromStack": {
"entryPoint": 194,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": {
"entryPoint": 207,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 232,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:439:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "72:53:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "89:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "112:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "94:17:1"
},
"nodeType": "YulFunctionCall",
"src": "94:24:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "82:6:1"
},
"nodeType": "YulFunctionCall",
"src": "82:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "82:37:1"
}
]
},
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "60:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "67:3:1",
"type": ""
}
],
"src": "7:118:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "229:124:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "239:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "251:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "262:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "247:3:1"
},
"nodeType": "YulFunctionCall",
"src": "247:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "239:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "319:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "332:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "343:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "328:3:1"
},
"nodeType": "YulFunctionCall",
"src": "328:17:1"
}
],
"functionName": {
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nodeType": "YulIdentifier",
"src": "275:43:1"
},
"nodeType": "YulFunctionCall",
"src": "275:71:1"
},
"nodeType": "YulExpressionStatement",
"src": "275:71:1"
}
]
},
"name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "201:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "213:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "224:4:1",
"type": ""
}
],
"src": "131:222:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "404:32:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "414:16:1",
"value": {
"name": "value",
"nodeType": "YulIdentifier",
"src": "425:5:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "414:7:1"
}
]
}
]
},
"name": "cleanup_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "386:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "396:7:1",
"type": ""
}
],
"src": "359:77:1"
}
]
},
"contents": "{\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "6080604052348015600f57600080fd5b506004361060315760003560e01c80620267a4146036578063e3ee2e97146050575b600080fd5b603c606a565b6040516047919060cf565b60405180910390f35b605660bc565b6040516061919060cf565b60405180910390f35b6000806014905080600081905550600290507fc2da2447cc63b33e4c8c3cf233736b4d9fce4fa6d4fa1883e32ecc0a743362a960005460405160ab919060cf565b60405180910390a160005491505090565b60005481565b60c98160e8565b82525050565b600060208201905060e2600083018460c2565b92915050565b600081905091905056fea26469706673582212203b83260c339f8a997b1611b492a57d7165af646df6aed7e10759cd41c7a7526964736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH1 0xF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH1 0x31 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH3 0x267A4 EQ PUSH1 0x36 JUMPI DUP1 PUSH4 0xE3EE2E97 EQ PUSH1 0x50 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x3C PUSH1 0x6A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x47 SWAP2 SWAP1 PUSH1 0xCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x56 PUSH1 0xBC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x61 SWAP2 SWAP1 PUSH1 0xCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x14 SWAP1 POP DUP1 PUSH1 0x0 DUP2 SWAP1 SSTORE POP PUSH1 0x2 SWAP1 POP PUSH32 0xC2DA2447CC63B33E4C8C3CF233736B4D9FCE4FA6D4FA1883E32ECC0A743362A9 PUSH1 0x0 SLOAD PUSH1 0x40 MLOAD PUSH1 0xAB SWAP2 SWAP1 PUSH1 0xCF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 PUSH1 0x0 SLOAD SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 SLOAD DUP2 JUMP JUMPDEST PUSH1 0xC9 DUP2 PUSH1 0xE8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH1 0xE2 PUSH1 0x0 DUP4 ADD DUP5 PUSH1 0xC2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 EXTCODESIZE DUP4 0x26 0xC CALLER SWAP16 DUP11 SWAP10 PUSH28 0x1611B492A57D7165AF646DF6AED7E10759CD41C7A7526964736F6C63 NUMBER STOP ADDMOD SMOD STOP CALLER ",
"sourceMap": "57:276:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;135:195;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;76:26;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;135:195;170:4;186:14;203:2;186:19;;228:9;216;:21;;;;260:1;248:13;;277:18;285:9;;277:18;;;;;;:::i;:::-;;;;;;;;313:9;;306:16;;;135:195;:::o;76:26::-;;;;:::o;7:118:1:-;94:24;112:5;94:24;:::i;:::-;89:3;82:37;7:118;;:::o;131:222::-;224:4;262:2;251:9;247:18;239:26;;275:71;343:1;332:9;328:17;319:6;275:71;:::i;:::-;131:222;;;;:::o;359:77::-;396:7;425:5;414:16;;359:77;;;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "59200",
"executionCost": "22217",
"totalCost": "81417"
},
"external": {
"getUint()": "infinite",
"stateUint()": "2429"
}
},
"legacyAssembly": {
".code": [
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 57,
"end": 333,
"name": "MSTORE",
"source": 0
},
{
"begin": 100,
"end": 102,
"name": "PUSH",
"source": 0,
"value": "A"
},
{
"begin": 76,
"end": 102,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 76,
"end": 102,
"name": "SSTORE",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "ISZERO",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 333,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 333,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "REVERT",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 333,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH #[$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 57,
"end": 333,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH [$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 333,
"name": "CODECOPY",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 333,
"name": "RETURN",
"source": 0
}
],
".data": {
"0": {
".auxdata": "a26469706673582212203b83260c339f8a997b1611b492a57d7165af646df6aed7e10759cd41c7a7526964736f6c63430008070033",
".code": [
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 57,
"end": 333,
"name": "MSTORE",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "ISZERO",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 333,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 333,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "REVERT",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 333,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 57,
"end": 333,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "LT",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 57,
"end": 333,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 333,
"name": "CALLDATALOAD",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "E0"
},
{
"begin": 57,
"end": 333,
"name": "SHR",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "267A4"
},
{
"begin": 57,
"end": 333,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 57,
"end": 333,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "E3EE2E97"
},
{
"begin": 57,
"end": 333,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 57,
"end": 333,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 57,
"end": 333,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 333,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 333,
"name": "REVERT",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "tag",
"source": 0,
"value": "3"
},
{
"begin": 135,
"end": 330,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 135,
"end": 330,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 135,
"end": 330,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 135,
"end": 330,
"name": "tag",
"source": 0,
"value": "5"
},
{
"begin": 135,
"end": 330,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 135,
"end": 330,
"name": "MLOAD",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "PUSH [tag]",
"source": 0,
"value": "7"
},
{
"begin": 135,
"end": 330,
"name": "SWAP2",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "SWAP1",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 135,
"end": 330,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 135,
"end": 330,
"name": "tag",
"source": 0,
"value": "7"
},
{
"begin": 135,
"end": 330,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 135,
"end": 330,
"name": "MLOAD",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "DUP1",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "SWAP2",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "SUB",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "SWAP1",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "RETURN",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "tag",
"source": 0,
"value": "4"
},
{
"begin": 76,
"end": 102,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "PUSH [tag]",
"source": 0,
"value": "9"
},
{
"begin": 76,
"end": 102,
"name": "PUSH [tag]",
"source": 0,
"value": "10"
},
{
"begin": 76,
"end": 102,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 76,
"end": 102,
"name": "tag",
"source": 0,
"value": "9"
},
{
"begin": 76,
"end": 102,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 76,
"end": 102,
"name": "MLOAD",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "PUSH [tag]",
"source": 0,
"value": "11"
},
{
"begin": 76,
"end": 102,
"name": "SWAP2",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "SWAP1",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 76,
"end": 102,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 76,
"end": 102,
"name": "tag",
"source": 0,
"value": "11"
},
{
"begin": 76,
"end": 102,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 76,
"end": 102,
"name": "MLOAD",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "DUP1",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "SWAP2",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "SUB",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "SWAP1",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "RETURN",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "tag",
"source": 0,
"value": "6"
},
{
"begin": 135,
"end": 330,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 170,
"end": 174,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 186,
"end": 200,
"name": "DUP1",
"source": 0
},
{
"begin": 203,
"end": 205,
"name": "PUSH",
"source": 0,
"value": "14"
},
{
"begin": 186,
"end": 205,
"name": "SWAP1",
"source": 0
},
{
"begin": 186,
"end": 205,
"name": "POP",
"source": 0
},
{
"begin": 228,
"end": 237,
"name": "DUP1",
"source": 0
},
{
"begin": 216,
"end": 225,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 216,
"end": 237,
"name": "DUP2",
"source": 0
},
{
"begin": 216,
"end": 237,
"name": "SWAP1",
"source": 0
},
{
"begin": 216,
"end": 237,
"name": "SSTORE",
"source": 0
},
{
"begin": 216,
"end": 237,
"name": "POP",
"source": 0
},
{
"begin": 260,
"end": 261,
"name": "PUSH",
"source": 0,
"value": "2"
},
{
"begin": 248,
"end": 261,
"name": "SWAP1",
"source": 0
},
{
"begin": 248,
"end": 261,
"name": "POP",
"source": 0
},
{
"begin": 277,
"end": 295,
"name": "PUSH",
"source": 0,
"value": "C2DA2447CC63B33E4C8C3CF233736B4D9FCE4FA6D4FA1883E32ECC0A743362A9"
},
{
"begin": 285,
"end": 294,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 285,
"end": 294,
"name": "SLOAD",
"source": 0
},
{
"begin": 277,
"end": 295,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 277,
"end": 295,
"name": "MLOAD",
"source": 0
},
{
"begin": 277,
"end": 295,
"name": "PUSH [tag]",
"source": 0,
"value": "13"
},
{
"begin": 277,
"end": 295,
"name": "SWAP2",
"source": 0
},
{
"begin": 277,
"end": 295,
"name": "SWAP1",
"source": 0
},
{
"begin": 277,
"end": 295,
"name": "PUSH [tag]",
"source": 0,
"value": "8"
},
{
"begin": 277,
"end": 295,
"name": "JUMP",
"source": 0,
"value": "[in]"
},
{
"begin": 277,
"end": 295,
"name": "tag",
"source": 0,
"value": "13"
},
{
"begin": 277,
"end": 295,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 277,
"end": 295,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 277,
"end": 295,
"name": "MLOAD",
"source": 0
},
{
"begin": 277,
"end": 295,
"name": "DUP1",
"source": 0
},
{
"begin": 277,
"end": 295,
"name": "SWAP2",
"source": 0
},
{
"begin": 277,
"end": 295,
"name": "SUB",
"source": 0
},
{
"begin": 277,
"end": 295,
"name": "SWAP1",
"source": 0
},
{
"begin": 277,
"end": 295,
"name": "LOG1",
"source": 0
},
{
"begin": 313,
"end": 322,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 313,
"end": 322,
"name": "SLOAD",
"source": 0
},
{
"begin": 306,
"end": 322,
"name": "SWAP2",
"source": 0
},
{
"begin": 306,
"end": 322,
"name": "POP",
"source": 0
},
{
"begin": 306,
"end": 322,
"name": "POP",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "SWAP1",
"source": 0
},
{
"begin": 135,
"end": 330,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 76,
"end": 102,
"name": "tag",
"source": 0,
"value": "10"
},
{
"begin": 76,
"end": 102,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 76,
"end": 102,
"name": "SLOAD",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "DUP2",
"source": 0
},
{
"begin": 76,
"end": 102,
"name": "JUMP",
"source": 0,
"value": "[out]"
},
{
"begin": 7,
"end": 125,
"name": "tag",
"source": 1,
"value": "15"
},
{
"begin": 7,
"end": 125,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 94,
"end": 118,
"name": "PUSH [tag]",
"source": 1,
"value": "17"
},
{
"begin": 112,
"end": 117,
"name": "DUP2",
"source": 1
},
{
"begin": 94,
"end": 118,
"name": "PUSH [tag]",
"source": 1,
"value": "18"
},
{
"begin": 94,
"end": 118,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 94,
"end": 118,
"name": "tag",
"source": 1,
"value": "17"
},
{
"begin": 94,
"end": 118,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 89,
"end": 92,
"name": "DUP3",
"source": 1
},
{
"begin": 82,
"end": 119,
"name": "MSTORE",
"source": 1
},
{
"begin": 7,
"end": 125,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 125,
"name": "POP",
"source": 1
},
{
"begin": 7,
"end": 125,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 131,
"end": 353,
"name": "tag",
"source": 1,
"value": "8"
},
{
"begin": 131,
"end": 353,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 224,
"end": 228,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 262,
"end": 264,
"name": "PUSH",
"source": 1,
"value": "20"
},
{
"begin": 251,
"end": 260,
"name": "DUP3",
"source": 1
},
{
"begin": 247,
"end": 265,
"name": "ADD",
"source": 1
},
{
"begin": 239,
"end": 265,
"name": "SWAP1",
"source": 1
},
{
"begin": 239,
"end": 265,
"name": "POP",
"source": 1
},
{
"begin": 275,
"end": 346,
"name": "PUSH [tag]",
"source": 1,
"value": "20"
},
{
"begin": 343,
"end": 344,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 332,
"end": 341,
"name": "DUP4",
"source": 1
},
{
"begin": 328,
"end": 345,
"name": "ADD",
"source": 1
},
{
"begin": 319,
"end": 325,
"name": "DUP5",
"source": 1
},
{
"begin": 275,
"end": 346,
"name": "PUSH [tag]",
"source": 1,
"value": "15"
},
{
"begin": 275,
"end": 346,
"name": "JUMP",
"source": 1,
"value": "[in]"
},
{
"begin": 275,
"end": 346,
"name": "tag",
"source": 1,
"value": "20"
},
{
"begin": 275,
"end": 346,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 131,
"end": 353,
"name": "SWAP3",
"source": 1
},
{
"begin": 131,
"end": 353,
"name": "SWAP2",
"source": 1
},
{
"begin": 131,
"end": 353,
"name": "POP",
"source": 1
},
{
"begin": 131,
"end": 353,
"name": "POP",
"source": 1
},
{
"begin": 131,
"end": 353,
"name": "JUMP",
"source": 1,
"value": "[out]"
},
{
"begin": 359,
"end": 436,
"name": "tag",
"source": 1,
"value": "18"
},
{
"begin": 359,
"end": 436,
"name": "JUMPDEST",
"source": 1
},
{
"begin": 396,
"end": 403,
"name": "PUSH",
"source": 1,
"value": "0"
},
{
"begin": 425,
"end": 430,
"name": "DUP2",
"source": 1
},
{
"begin": 414,
"end": 430,
"name": "SWAP1",
"source": 1
},
{
"begin": 414,
"end": 430,
"name": "POP",
"source": 1
},
{
"begin": 359,
"end": 436,
"name": "SWAP2",
"source": 1
},
{
"begin": 359,
"end": 436,
"name": "SWAP1",
"source": 1
},
{
"begin": 359,
"end": 436,
"name": "POP",
"source": 1
},
{
"begin": 359,
"end": 436,
"name": "JUMP",
"source": 1,
"value": "[out]"
}
]
}
}
},
"methodIdentifiers": {
"getUint()": "000267a4",
"stateUint()": "e3ee2e97"
}
},
"metadata": "{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"display\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"getUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stateUint\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/w15ex4.sol\":\"ex4\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/w15ex4.sol\":{\"keccak256\":\"0x47401b1b25cb9694970c19b32169a099cc45d375cab968020df7fb3cd56460b7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://806007996cefbfcb738502003f294be17cd0cd3f030382035836d8016a464921\",\"dweb:/ipfs/QmTVi4nZmqD3RwKTjh7yMpq1WQugoPG4LkiJtyEYVAVJzV\"]}},\"version\":1}",
"storageLayout": {
"storage": [
{
"astId": 4,
"contract": "contracts/w15ex4.sol:ex4",
"label": "stateUint",
"offset": 0,
"slot": "0",
"type": "t_uint256"
}
],
"types": {
"t_uint256": {
"encoding": "inplace",
"label": "uint256",
"numberOfBytes": "32"
}
}
},
"userdoc": {
"kind": "user",
"methods": {},
"version": 1
}
}
}
},
"sources": {
"contracts/w15ex4.sol": {
"ast": {
"absolutePath": "contracts/w15ex4.sol",
"exportedSymbols": {
"ex4": [
33
]
},
"id": 34,
"license": "MIT",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1,
"literals": [
"solidity",
"^",
"0.8",
".0"
],
"nodeType": "PragmaDirective",
"src": "32:23:0"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"fullyImplemented": true,
"id": 33,
"linearizedBaseContracts": [
33
],
"name": "ex4",
"nameLocation": "66:3:0",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"functionSelector": "e3ee2e97",
"id": 4,
"mutability": "mutable",
"name": "stateUint",
"nameLocation": "88:9:0",
"nodeType": "VariableDeclaration",
"scope": 33,
"src": "76:26:0",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "76:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": {
"hexValue": "3130",
"id": 3,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "100:2:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_10_by_1",
"typeString": "int_const 10"
},
"value": "10"
},
"visibility": "public"
},
{
"anonymous": false,
"id": 8,
"name": "display",
"nameLocation": "115:7:0",
"nodeType": "EventDefinition",
"parameters": {
"id": 7,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 6,
"indexed": false,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 8,
"src": "123:4:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 5,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "123:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "122:6:0"
},
"src": "109:20:0"
},
{
"body": {
"id": 31,
"nodeType": "Block",
"src": "175:155:0",
"statements": [
{
"assignments": [
14
],
"declarations": [
{
"constant": false,
"id": 14,
"mutability": "mutable",
"name": "localUint",
"nameLocation": "191:9:0",
"nodeType": "VariableDeclaration",
"scope": 31,
"src": "186:14:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 13,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "186:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"id": 16,
"initialValue": {
"hexValue": "3230",
"id": 15,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "203:2:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_20_by_1",
"typeString": "int_const 20"
},
"value": "20"
},
"nodeType": "VariableDeclarationStatement",
"src": "186:19:0"
},
{
"expression": {
"id": 19,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"id": 17,
"name": "stateUint",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 4,
"src": "216:9:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"id": 18,
"name": "localUint",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 14,
"src": "228:9:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "216:21:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 20,
"nodeType": "ExpressionStatement",
"src": "216:21:0"
},
{
"expression": {
"id": 23,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"id": 21,
"name": "localUint",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 14,
"src": "248:9:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"hexValue": "32",
"id": 22,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "260:1:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_2_by_1",
"typeString": "int_const 2"
},
"value": "2"
},
"src": "248:13:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 24,
"nodeType": "ExpressionStatement",
"src": "248:13:0"
},
{
"eventCall": {
"arguments": [
{
"id": 26,
"name": "stateUint",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 4,
"src": "285:9:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 25,
"name": "display",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 8,
"src": "277:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_event_nonpayable$_t_uint256_$returns$__$",
"typeString": "function (uint256)"
}
},
"id": 27,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "277:18:0",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 28,
"nodeType": "EmitStatement",
"src": "272:23:0"
},
{
"expression": {
"id": 29,
"name": "stateUint",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 4,
"src": "313:9:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 12,
"id": 30,
"nodeType": "Return",
"src": "306:16:0"
}
]
},
"functionSelector": "000267a4",
"id": 32,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "getUint",
"nameLocation": "144:7:0",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 9,
"nodeType": "ParameterList",
"parameters": [],
"src": "151:2:0"
},
"returnParameters": {
"id": 12,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 11,
"mutability": "mutable",
"name": "",
"nameLocation": "-1:-1:-1",
"nodeType": "VariableDeclaration",
"scope": 32,
"src": "170:4:0",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 10,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "170:4:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "internal"
}
],
"src": "169:6:0"
},
"scope": 33,
"src": "135:195:0",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
}
],
"scope": 34,
"src": "57:276:0",
"usedErrors": []
}
],
"src": "32:301:0"
},
"id": 0
}
}
}
}
This file has been truncated, but you can view the full file.
{
"id": "c85345c632092e8da40275f8d23bd4f2",
"_format": "hh-sol-build-info-1",
"solcVersion": "0.8.7",
"solcLongVersion": "0.8.7+commit.e28d00a7",
"input": {
"language": "Solidity",
"sources": {
"contracts/w15ex2.sol": {
"content": "//SPDX-License-Identifier: MIT\r\npragma solidity ^0.8.0;\r\ncontract ex2{\r\n uint public x;\r\n uint public y;\r\n function setXY(uint a,uint b) public{ \r\n x = a;\r\n y = b;\r\n}\r\n function modY() public returns (uint){\r\n x += y;\r\n y += 10;\r\n return y;\r\n }\r\n}"
}
},
"settings": {
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"": [
"ast"
],
"*": [
"abi",
"metadata",
"devdoc",
"userdoc",
"storageLayout",
"evm.legacyAssembly",
"evm.bytecode",
"evm.deployedBytecode",
"evm.methodIdentifiers",
"evm.gasEstimates",
"evm.assembly"
]
}
}
}
},
"output": {
"contracts": {
"contracts/w15ex2.sol": {
"ex2": {
"abi": [
{
"inputs": [],
"name": "modY",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "a",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "b",
"type": "uint256"
}
],
"name": "setXY",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "x",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "y",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
}
],
"devdoc": {
"kind": "dev",
"methods": {},
"version": 1
},
"evm": {
"assembly": " /* \"contracts/w15ex2.sol\":57:297 contract ex2{\r... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\ntag_1:\n pop\n dataSize(sub_0)\n dup1\n dataOffset(sub_0)\n 0x00\n codecopy\n 0x00\n return\nstop\n\nsub_0: assembly {\n /* \"contracts/w15ex2.sol\":57:297 contract ex2{\r... */\n mstore(0x40, 0x80)\n callvalue\n dup1\n iszero\n tag_1\n jumpi\n 0x00\n dup1\n revert\n tag_1:\n pop\n jumpi(tag_2, lt(calldatasize, 0x04))\n shr(0xe0, calldataload(0x00))\n dup1\n 0x0c55699c\n eq\n tag_3\n jumpi\n dup1\n 0x31a168a2\n eq\n tag_4\n jumpi\n dup1\n 0x41dc74ef\n eq\n tag_5\n jumpi\n dup1\n 0xa56dfe4a\n eq\n tag_6\n jumpi\n tag_2:\n 0x00\n dup1\n revert\n /* \"contracts/w15ex2.sol\":76:89 uint public x */\n tag_3:\n tag_7\n tag_8\n jump\t// in\n tag_7:\n mload(0x40)\n tag_9\n swap2\n swap1\n tag_10\n jump\t// in\n tag_9:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/w15ex2.sol\":116:189 function setXY(uint a,uint b) public{ \r... */\n tag_4:\n tag_11\n 0x04\n dup1\n calldatasize\n sub\n dup2\n add\n swap1\n tag_12\n swap2\n swap1\n tag_13\n jump\t// in\n tag_12:\n tag_14\n jump\t// in\n tag_11:\n stop\n /* \"contracts/w15ex2.sol\":195:294 function modY() public returns (uint){\r... */\n tag_5:\n tag_15\n tag_16\n jump\t// in\n tag_15:\n mload(0x40)\n tag_17\n swap2\n swap1\n tag_10\n jump\t// in\n tag_17:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/w15ex2.sol\":96:109 uint public y */\n tag_6:\n tag_18\n tag_19\n jump\t// in\n tag_18:\n mload(0x40)\n tag_20\n swap2\n swap1\n tag_10\n jump\t// in\n tag_20:\n mload(0x40)\n dup1\n swap2\n sub\n swap1\n return\n /* \"contracts/w15ex2.sol\":76:89 uint public x */\n tag_8:\n sload(0x00)\n dup2\n jump\t// out\n /* \"contracts/w15ex2.sol\":116:189 function setXY(uint a,uint b) public{ \r... */\n tag_14:\n /* \"contracts/w15ex2.sol\":168:169 a */\n dup2\n /* \"contracts/w15ex2.sol\":164:165 x */\n 0x00\n /* \"contracts/w15ex2.sol\":164:169 x = a */\n dup2\n swap1\n sstore\n pop\n /* \"contracts/w15ex2.sol\":184:185 b */\n dup1\n /* \"contracts/w15ex2.sol\":180:181 y */\n 0x01\n /* \"contracts/w15ex2.sol\":180:185 y = b */\n dup2\n swap1\n sstore\n pop\n /* \"contracts/w15ex2.sol\":116:189 function setXY(uint a,uint b) public{ \r... */\n pop\n pop\n jump\t// out\n /* \"contracts/w15ex2.sol\":195:294 function modY() public returns (uint){\r... */\n tag_16:\n /* \"contracts/w15ex2.sol\":227:231 uint */\n 0x00\n /* \"contracts/w15ex2.sol\":248:249 y */\n sload(0x01)\n /* \"contracts/w15ex2.sol\":243:244 x */\n 0x00\n dup1\n /* \"contracts/w15ex2.sol\":243:249 x += y */\n dup3\n dup3\n sload\n tag_23\n swap2\n swap1\n tag_24\n jump\t// in\n tag_23:\n swap3\n pop\n pop\n dup2\n swap1\n sstore\n pop\n /* \"contracts/w15ex2.sol\":265:267 10 */\n 0x0a\n /* \"contracts/w15ex2.sol\":260:261 y */\n 0x01\n 0x00\n /* \"contracts/w15ex2.sol\":260:267 y += 10 */\n dup3\n dup3\n sload\n tag_25\n swap2\n swap1\n tag_24\n jump\t// in\n tag_25:\n swap3\n pop\n pop\n dup2\n swap1\n sstore\n pop\n /* \"contracts/w15ex2.sol\":285:286 y */\n sload(0x01)\n /* \"contracts/w15ex2.sol\":278:286 return y */\n swap1\n pop\n /* \"contracts/w15ex2.sol\":195:294 function modY() public returns (uint){\r... */\n swap1\n jump\t// out\n /* \"contracts/w15ex2.sol\":96:109 uint public y */\n tag_19:\n sload(0x01)\n dup2\n jump\t// out\n /* \"#utility.yul\":7:146 */\n tag_27:\n /* \"#utility.yul\":53:58 */\n 0x00\n /* \"#utility.yul\":91:97 */\n dup2\n /* \"#utility.yul\":78:98 */\n calldataload\n /* \"#utility.yul\":69:98 */\n swap1\n pop\n /* \"#utility.yul\":107:140 */\n tag_29\n /* \"#utility.yul\":134:139 */\n dup2\n /* \"#utility.yul\":107:140 */\n tag_30\n jump\t// in\n tag_29:\n /* \"#utility.yul\":7:146 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":152:626 */\n tag_13:\n /* \"#utility.yul\":220:226 */\n 0x00\n /* \"#utility.yul\":228:234 */\n dup1\n /* \"#utility.yul\":277:279 */\n 0x40\n /* \"#utility.yul\":265:274 */\n dup4\n /* \"#utility.yul\":256:263 */\n dup6\n /* \"#utility.yul\":252:275 */\n sub\n /* \"#utility.yul\":248:280 */\n slt\n /* \"#utility.yul\":245:364 */\n iszero\n tag_32\n jumpi\n /* \"#utility.yul\":283:362 */\n tag_33\n tag_34\n jump\t// in\n tag_33:\n /* \"#utility.yul\":245:364 */\n tag_32:\n /* \"#utility.yul\":403:404 */\n 0x00\n /* \"#utility.yul\":428:481 */\n tag_35\n /* \"#utility.yul\":473:480 */\n dup6\n /* \"#utility.yul\":464:470 */\n dup3\n /* \"#utility.yul\":453:462 */\n dup7\n /* \"#utility.yul\":449:471 */\n add\n /* \"#utility.yul\":428:481 */\n tag_27\n jump\t// in\n tag_35:\n /* \"#utility.yul\":418:481 */\n swap3\n pop\n /* \"#utility.yul\":374:491 */\n pop\n /* \"#utility.yul\":530:532 */\n 0x20\n /* \"#utility.yul\":556:609 */\n tag_36\n /* \"#utility.yul\":601:608 */\n dup6\n /* \"#utility.yul\":592:598 */\n dup3\n /* \"#utility.yul\":581:590 */\n dup7\n /* \"#utility.yul\":577:599 */\n add\n /* \"#utility.yul\":556:609 */\n tag_27\n jump\t// in\n tag_36:\n /* \"#utility.yul\":546:609 */\n swap2\n pop\n /* \"#utility.yul\":501:619 */\n pop\n /* \"#utility.yul\":152:626 */\n swap3\n pop\n swap3\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":632:750 */\n tag_37:\n /* \"#utility.yul\":719:743 */\n tag_39\n /* \"#utility.yul\":737:742 */\n dup2\n /* \"#utility.yul\":719:743 */\n tag_40\n jump\t// in\n tag_39:\n /* \"#utility.yul\":714:717 */\n dup3\n /* \"#utility.yul\":707:744 */\n mstore\n /* \"#utility.yul\":632:750 */\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":756:978 */\n tag_10:\n /* \"#utility.yul\":849:853 */\n 0x00\n /* \"#utility.yul\":887:889 */\n 0x20\n /* \"#utility.yul\":876:885 */\n dup3\n /* \"#utility.yul\":872:890 */\n add\n /* \"#utility.yul\":864:890 */\n swap1\n pop\n /* \"#utility.yul\":900:971 */\n tag_42\n /* \"#utility.yul\":968:969 */\n 0x00\n /* \"#utility.yul\":957:966 */\n dup4\n /* \"#utility.yul\":953:970 */\n add\n /* \"#utility.yul\":944:950 */\n dup5\n /* \"#utility.yul\":900:971 */\n tag_37\n jump\t// in\n tag_42:\n /* \"#utility.yul\":756:978 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1065:1370 */\n tag_24:\n /* \"#utility.yul\":1105:1108 */\n 0x00\n /* \"#utility.yul\":1124:1144 */\n tag_46\n /* \"#utility.yul\":1142:1143 */\n dup3\n /* \"#utility.yul\":1124:1144 */\n tag_40\n jump\t// in\n tag_46:\n /* \"#utility.yul\":1119:1144 */\n swap2\n pop\n /* \"#utility.yul\":1158:1178 */\n tag_47\n /* \"#utility.yul\":1176:1177 */\n dup4\n /* \"#utility.yul\":1158:1178 */\n tag_40\n jump\t// in\n tag_47:\n /* \"#utility.yul\":1153:1178 */\n swap3\n pop\n /* \"#utility.yul\":1312:1313 */\n dup3\n /* \"#utility.yul\":1244:1310 */\n 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\n /* \"#utility.yul\":1240:1314 */\n sub\n /* \"#utility.yul\":1237:1238 */\n dup3\n /* \"#utility.yul\":1234:1315 */\n gt\n /* \"#utility.yul\":1231:1338 */\n iszero\n tag_48\n jumpi\n /* \"#utility.yul\":1318:1336 */\n tag_49\n tag_50\n jump\t// in\n tag_49:\n /* \"#utility.yul\":1231:1338 */\n tag_48:\n /* \"#utility.yul\":1362:1363 */\n dup3\n /* \"#utility.yul\":1359:1360 */\n dup3\n /* \"#utility.yul\":1355:1364 */\n add\n /* \"#utility.yul\":1348:1364 */\n swap1\n pop\n /* \"#utility.yul\":1065:1370 */\n swap3\n swap2\n pop\n pop\n jump\t// out\n /* \"#utility.yul\":1376:1453 */\n tag_40:\n /* \"#utility.yul\":1413:1420 */\n 0x00\n /* \"#utility.yul\":1442:1447 */\n dup2\n /* \"#utility.yul\":1431:1447 */\n swap1\n pop\n /* \"#utility.yul\":1376:1453 */\n swap2\n swap1\n pop\n jump\t// out\n /* \"#utility.yul\":1459:1639 */\n tag_50:\n /* \"#utility.yul\":1507:1584 */\n 0x4e487b7100000000000000000000000000000000000000000000000000000000\n /* \"#utility.yul\":1504:1505 */\n 0x00\n /* \"#utility.yul\":1497:1585 */\n mstore\n /* \"#utility.yul\":1604:1608 */\n 0x11\n /* \"#utility.yul\":1601:1602 */\n 0x04\n /* \"#utility.yul\":1594:1609 */\n mstore\n /* \"#utility.yul\":1628:1632 */\n 0x24\n /* \"#utility.yul\":1625:1626 */\n 0x00\n /* \"#utility.yul\":1618:1633 */\n revert\n /* \"#utility.yul\":1768:1885 */\n tag_34:\n /* \"#utility.yul\":1877:1878 */\n 0x00\n /* \"#utility.yul\":1874:1875 */\n dup1\n /* \"#utility.yul\":1867:1879 */\n revert\n /* \"#utility.yul\":1891:2013 */\n tag_30:\n /* \"#utility.yul\":1964:1988 */\n tag_57\n /* \"#utility.yul\":1982:1987 */\n dup2\n /* \"#utility.yul\":1964:1988 */\n tag_40\n jump\t// in\n tag_57:\n /* \"#utility.yul\":1957:1962 */\n dup2\n /* \"#utility.yul\":1954:1989 */\n eq\n /* \"#utility.yul\":1944:2007 */\n tag_58\n jumpi\n /* \"#utility.yul\":2003:2004 */\n 0x00\n /* \"#utility.yul\":2000:2001 */\n dup1\n /* \"#utility.yul\":1993:2005 */\n revert\n /* \"#utility.yul\":1944:2007 */\n tag_58:\n /* \"#utility.yul\":1891:2013 */\n pop\n jump\t// out\n\n auxdata: 0xa2646970667358221220c7e7cd168fc564db76bcb06ba9c739b270ef98d8a6c17f56c99f9955e75f42e564736f6c63430008070033\n}\n",
"bytecode": {
"functionDebugData": {},
"generatedSources": [],
"linkReferences": {},
"object": "608060405234801561001057600080fd5b50610283806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80630c55699c1461005157806331a168a21461006f57806341dc74ef1461008b578063a56dfe4a146100a9575b600080fd5b6100596100c7565b6040516100669190610187565b60405180910390f35b61008960048036038101906100849190610138565b6100cd565b005b6100936100df565b6040516100a09190610187565b60405180910390f35b6100b161011d565b6040516100be9190610187565b60405180910390f35b60005481565b81600081905550806001819055505050565b60006001546000808282546100f491906101a2565b92505081905550600a6001600082825461010e91906101a2565b92505081905550600154905090565b60015481565b60008135905061013281610236565b92915050565b6000806040838503121561014f5761014e610231565b5b600061015d85828601610123565b925050602061016e85828601610123565b9150509250929050565b610181816101f8565b82525050565b600060208201905061019c6000830184610178565b92915050565b60006101ad826101f8565b91506101b8836101f8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156101ed576101ec610202565b5b828201905092915050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600080fd5b61023f816101f8565b811461024a57600080fd5b5056fea2646970667358221220c7e7cd168fc564db76bcb06ba9c739b270ef98d8a6c17f56c99f9955e75f42e564736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x283 DUP1 PUSH2 0x20 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xC55699C EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x31A168A2 EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0x41DC74EF EQ PUSH2 0x8B JUMPI DUP1 PUSH4 0xA56DFE4A EQ PUSH2 0xA9 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0xC7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x187 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x89 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x84 SWAP2 SWAP1 PUSH2 0x138 JUMP JUMPDEST PUSH2 0xCD JUMP JUMPDEST STOP JUMPDEST PUSH2 0x93 PUSH2 0xDF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA0 SWAP2 SWAP1 PUSH2 0x187 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xB1 PUSH2 0x11D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xBE SWAP2 SWAP1 PUSH2 0x187 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 SLOAD DUP2 JUMP JUMPDEST DUP2 PUSH1 0x0 DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x1 DUP2 SWAP1 SSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 SLOAD PUSH1 0x0 DUP1 DUP3 DUP3 SLOAD PUSH2 0xF4 SWAP2 SWAP1 PUSH2 0x1A2 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0xA PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x10E SWAP2 SWAP1 PUSH2 0x1A2 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x1 SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x132 DUP2 PUSH2 0x236 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x14F JUMPI PUSH2 0x14E PUSH2 0x231 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x15D DUP6 DUP3 DUP7 ADD PUSH2 0x123 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x16E DUP6 DUP3 DUP7 ADD PUSH2 0x123 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x181 DUP2 PUSH2 0x1F8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x19C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x178 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1AD DUP3 PUSH2 0x1F8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1B8 DUP4 PUSH2 0x1F8 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x1ED JUMPI PUSH2 0x1EC PUSH2 0x202 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x23F DUP2 PUSH2 0x1F8 JUMP JUMPDEST DUP2 EQ PUSH2 0x24A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xC7 0xE7 0xCD AND DUP16 0xC5 PUSH5 0xDB76BCB06B 0xA9 0xC7 CODECOPY 0xB2 PUSH17 0xEF98D8A6C17F56C99F9955E75F42E56473 PUSH16 0x6C634300080700330000000000000000 ",
"sourceMap": "57:240:0:-:0;;;;;;;;;;;;;;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@modY_37": {
"entryPoint": 223,
"id": 37,
"parameterSlots": 0,
"returnSlots": 1
},
"@setXY_21": {
"entryPoint": 205,
"id": 21,
"parameterSlots": 2,
"returnSlots": 0
},
"@x_3": {
"entryPoint": 199,
"id": 3,
"parameterSlots": 0,
"returnSlots": 0
},
"@y_5": {
"entryPoint": 285,
"id": 5,
"parameterSlots": 0,
"returnSlots": 0
},
"abi_decode_t_uint256": {
"entryPoint": 291,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint256t_uint256": {
"entryPoint": 312,
"id": null,
"parameterSlots": 2,
"returnSlots": 2
},
"abi_encode_t_uint256_to_t_uint256_fromStack": {
"entryPoint": 376,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": {
"entryPoint": 391,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"allocate_unbounded": {
"entryPoint": null,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
},
"checked_add_t_uint256": {
"entryPoint": 418,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 504,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"panic_error_0x11": {
"entryPoint": 514,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": {
"entryPoint": null,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": {
"entryPoint": 561,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"validator_revert_t_uint256": {
"entryPoint": 566,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
}
},
"generatedSources": [
{
"ast": {
"nodeType": "YulBlock",
"src": "0:2016:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "59:87:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "69:29:1",
"value": {
"arguments": [
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "91:6:1"
}
],
"functionName": {
"name": "calldataload",
"nodeType": "YulIdentifier",
"src": "78:12:1"
},
"nodeType": "YulFunctionCall",
"src": "78:20:1"
},
"variableNames": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "69:5:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "134:5:1"
}
],
"functionName": {
"name": "validator_revert_t_uint256",
"nodeType": "YulIdentifier",
"src": "107:26:1"
},
"nodeType": "YulFunctionCall",
"src": "107:33:1"
},
"nodeType": "YulExpressionStatement",
"src": "107:33:1"
}
]
},
"name": "abi_decode_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "37:6:1",
"type": ""
},
{
"name": "end",
"nodeType": "YulTypedName",
"src": "45:3:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "53:5:1",
"type": ""
}
],
"src": "7:139:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "235:391:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "281:83:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulIdentifier",
"src": "283:77:1"
},
"nodeType": "YulFunctionCall",
"src": "283:79:1"
},
"nodeType": "YulExpressionStatement",
"src": "283:79:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "256:7:1"
},
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "265:9:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "252:3:1"
},
"nodeType": "YulFunctionCall",
"src": "252:23:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "277:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "slt",
"nodeType": "YulIdentifier",
"src": "248:3:1"
},
"nodeType": "YulFunctionCall",
"src": "248:32:1"
},
"nodeType": "YulIf",
"src": "245:119:1"
},
{
"nodeType": "YulBlock",
"src": "374:117:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "389:15:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "403:1:1",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "393:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "418:63:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "453:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "464:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "449:3:1"
},
"nodeType": "YulFunctionCall",
"src": "449:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "473:7:1"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nodeType": "YulIdentifier",
"src": "428:20:1"
},
"nodeType": "YulFunctionCall",
"src": "428:53:1"
},
"variableNames": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "418:6:1"
}
]
}
]
},
{
"nodeType": "YulBlock",
"src": "501:118:1",
"statements": [
{
"nodeType": "YulVariableDeclaration",
"src": "516:16:1",
"value": {
"kind": "number",
"nodeType": "YulLiteral",
"src": "530:2:1",
"type": "",
"value": "32"
},
"variables": [
{
"name": "offset",
"nodeType": "YulTypedName",
"src": "520:6:1",
"type": ""
}
]
},
{
"nodeType": "YulAssignment",
"src": "546:63:1",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "581:9:1"
},
{
"name": "offset",
"nodeType": "YulIdentifier",
"src": "592:6:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "577:3:1"
},
"nodeType": "YulFunctionCall",
"src": "577:22:1"
},
{
"name": "dataEnd",
"nodeType": "YulIdentifier",
"src": "601:7:1"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nodeType": "YulIdentifier",
"src": "556:20:1"
},
"nodeType": "YulFunctionCall",
"src": "556:53:1"
},
"variableNames": [
{
"name": "value1",
"nodeType": "YulIdentifier",
"src": "546:6:1"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_uint256t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "197:9:1",
"type": ""
},
{
"name": "dataEnd",
"nodeType": "YulTypedName",
"src": "208:7:1",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "220:6:1",
"type": ""
},
{
"name": "value1",
"nodeType": "YulTypedName",
"src": "228:6:1",
"type": ""
}
],
"src": "152:474:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "697:53:1",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nodeType": "YulIdentifier",
"src": "714:3:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "737:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "719:17:1"
},
"nodeType": "YulFunctionCall",
"src": "719:24:1"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "707:6:1"
},
"nodeType": "YulFunctionCall",
"src": "707:37:1"
},
"nodeType": "YulExpressionStatement",
"src": "707:37:1"
}
]
},
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "685:5:1",
"type": ""
},
{
"name": "pos",
"nodeType": "YulTypedName",
"src": "692:3:1",
"type": ""
}
],
"src": "632:118:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "854:124:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "864:26:1",
"value": {
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "876:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "887:2:1",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "872:3:1"
},
"nodeType": "YulFunctionCall",
"src": "872:18:1"
},
"variableNames": [
{
"name": "tail",
"nodeType": "YulIdentifier",
"src": "864:4:1"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nodeType": "YulIdentifier",
"src": "944:6:1"
},
{
"arguments": [
{
"name": "headStart",
"nodeType": "YulIdentifier",
"src": "957:9:1"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "968:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "953:3:1"
},
"nodeType": "YulFunctionCall",
"src": "953:17:1"
}
],
"functionName": {
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nodeType": "YulIdentifier",
"src": "900:43:1"
},
"nodeType": "YulFunctionCall",
"src": "900:71:1"
},
"nodeType": "YulExpressionStatement",
"src": "900:71:1"
}
]
},
"name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nodeType": "YulTypedName",
"src": "826:9:1",
"type": ""
},
{
"name": "value0",
"nodeType": "YulTypedName",
"src": "838:6:1",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nodeType": "YulTypedName",
"src": "849:4:1",
"type": ""
}
],
"src": "756:222:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1024:35:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1034:19:1",
"value": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1050:2:1",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "mload",
"nodeType": "YulIdentifier",
"src": "1044:5:1"
},
"nodeType": "YulFunctionCall",
"src": "1044:9:1"
},
"variableNames": [
{
"name": "memPtr",
"nodeType": "YulIdentifier",
"src": "1034:6:1"
}
]
}
]
},
"name": "allocate_unbounded",
"nodeType": "YulFunctionDefinition",
"returnVariables": [
{
"name": "memPtr",
"nodeType": "YulTypedName",
"src": "1017:6:1",
"type": ""
}
],
"src": "984:75:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1109:261:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1119:25:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "1142:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "1124:17:1"
},
"nodeType": "YulFunctionCall",
"src": "1124:20:1"
},
"variableNames": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "1119:1:1"
}
]
},
{
"nodeType": "YulAssignment",
"src": "1153:25:1",
"value": {
"arguments": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "1176:1:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "1158:17:1"
},
"nodeType": "YulFunctionCall",
"src": "1158:20:1"
},
"variableNames": [
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "1153:1:1"
}
]
},
{
"body": {
"nodeType": "YulBlock",
"src": "1316:22:1",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nodeType": "YulIdentifier",
"src": "1318:16:1"
},
"nodeType": "YulFunctionCall",
"src": "1318:18:1"
},
"nodeType": "YulExpressionStatement",
"src": "1318:18:1"
}
]
},
"condition": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "1237:1:1"
},
{
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1244:66:1",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "1312:1:1"
}
],
"functionName": {
"name": "sub",
"nodeType": "YulIdentifier",
"src": "1240:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1240:74:1"
}
],
"functionName": {
"name": "gt",
"nodeType": "YulIdentifier",
"src": "1234:2:1"
},
"nodeType": "YulFunctionCall",
"src": "1234:81:1"
},
"nodeType": "YulIf",
"src": "1231:107:1"
},
{
"nodeType": "YulAssignment",
"src": "1348:16:1",
"value": {
"arguments": [
{
"name": "x",
"nodeType": "YulIdentifier",
"src": "1359:1:1"
},
{
"name": "y",
"nodeType": "YulIdentifier",
"src": "1362:1:1"
}
],
"functionName": {
"name": "add",
"nodeType": "YulIdentifier",
"src": "1355:3:1"
},
"nodeType": "YulFunctionCall",
"src": "1355:9:1"
},
"variableNames": [
{
"name": "sum",
"nodeType": "YulIdentifier",
"src": "1348:3:1"
}
]
}
]
},
"name": "checked_add_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nodeType": "YulTypedName",
"src": "1096:1:1",
"type": ""
},
{
"name": "y",
"nodeType": "YulTypedName",
"src": "1099:1:1",
"type": ""
}
],
"returnVariables": [
{
"name": "sum",
"nodeType": "YulTypedName",
"src": "1105:3:1",
"type": ""
}
],
"src": "1065:305:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1421:32:1",
"statements": [
{
"nodeType": "YulAssignment",
"src": "1431:16:1",
"value": {
"name": "value",
"nodeType": "YulIdentifier",
"src": "1442:5:1"
},
"variableNames": [
{
"name": "cleaned",
"nodeType": "YulIdentifier",
"src": "1431:7:1"
}
]
}
]
},
"name": "cleanup_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1403:5:1",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nodeType": "YulTypedName",
"src": "1413:7:1",
"type": ""
}
],
"src": "1376:77:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1487:152:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1504:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1507:77:1",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1497:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1497:88:1"
},
"nodeType": "YulExpressionStatement",
"src": "1497:88:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1601:1:1",
"type": "",
"value": "4"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1604:4:1",
"type": "",
"value": "0x11"
}
],
"functionName": {
"name": "mstore",
"nodeType": "YulIdentifier",
"src": "1594:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1594:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1594:15:1"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1625:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1628:4:1",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1618:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1618:15:1"
},
"nodeType": "YulExpressionStatement",
"src": "1618:15:1"
}
]
},
"name": "panic_error_0x11",
"nodeType": "YulFunctionDefinition",
"src": "1459:180:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1734:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1751:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1754:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1744:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1744:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "1744:12:1"
}
]
},
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nodeType": "YulFunctionDefinition",
"src": "1645:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1857:28:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1874:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "1877:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1867:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1867:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "1867:12:1"
}
]
},
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nodeType": "YulFunctionDefinition",
"src": "1768:117:1"
},
{
"body": {
"nodeType": "YulBlock",
"src": "1934:79:1",
"statements": [
{
"body": {
"nodeType": "YulBlock",
"src": "1991:16:1",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2000:1:1",
"type": "",
"value": "0"
},
{
"kind": "number",
"nodeType": "YulLiteral",
"src": "2003:1:1",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nodeType": "YulIdentifier",
"src": "1993:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1993:12:1"
},
"nodeType": "YulExpressionStatement",
"src": "1993:12:1"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1957:5:1"
},
{
"arguments": [
{
"name": "value",
"nodeType": "YulIdentifier",
"src": "1982:5:1"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nodeType": "YulIdentifier",
"src": "1964:17:1"
},
"nodeType": "YulFunctionCall",
"src": "1964:24:1"
}
],
"functionName": {
"name": "eq",
"nodeType": "YulIdentifier",
"src": "1954:2:1"
},
"nodeType": "YulFunctionCall",
"src": "1954:35:1"
}
],
"functionName": {
"name": "iszero",
"nodeType": "YulIdentifier",
"src": "1947:6:1"
},
"nodeType": "YulFunctionCall",
"src": "1947:43:1"
},
"nodeType": "YulIf",
"src": "1944:63:1"
}
]
},
"name": "validator_revert_t_uint256",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nodeType": "YulTypedName",
"src": "1927:5:1",
"type": ""
}
],
"src": "1891:122:1"
}
]
},
"contents": "{\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_uint256t_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n}\n",
"id": 1,
"language": "Yul",
"name": "#utility.yul"
}
],
"immutableReferences": {},
"linkReferences": {},
"object": "608060405234801561001057600080fd5b506004361061004c5760003560e01c80630c55699c1461005157806331a168a21461006f57806341dc74ef1461008b578063a56dfe4a146100a9575b600080fd5b6100596100c7565b6040516100669190610187565b60405180910390f35b61008960048036038101906100849190610138565b6100cd565b005b6100936100df565b6040516100a09190610187565b60405180910390f35b6100b161011d565b6040516100be9190610187565b60405180910390f35b60005481565b81600081905550806001819055505050565b60006001546000808282546100f491906101a2565b92505081905550600a6001600082825461010e91906101a2565b92505081905550600154905090565b60015481565b60008135905061013281610236565b92915050565b6000806040838503121561014f5761014e610231565b5b600061015d85828601610123565b925050602061016e85828601610123565b9150509250929050565b610181816101f8565b82525050565b600060208201905061019c6000830184610178565b92915050565b60006101ad826101f8565b91506101b8836101f8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156101ed576101ec610202565b5b828201905092915050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600080fd5b61023f816101f8565b811461024a57600080fd5b5056fea2646970667358221220c7e7cd168fc564db76bcb06ba9c739b270ef98d8a6c17f56c99f9955e75f42e564736f6c63430008070033",
"opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xC55699C EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x31A168A2 EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0x41DC74EF EQ PUSH2 0x8B JUMPI DUP1 PUSH4 0xA56DFE4A EQ PUSH2 0xA9 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0xC7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x187 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x89 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x84 SWAP2 SWAP1 PUSH2 0x138 JUMP JUMPDEST PUSH2 0xCD JUMP JUMPDEST STOP JUMPDEST PUSH2 0x93 PUSH2 0xDF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA0 SWAP2 SWAP1 PUSH2 0x187 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xB1 PUSH2 0x11D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xBE SWAP2 SWAP1 PUSH2 0x187 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 SLOAD DUP2 JUMP JUMPDEST DUP2 PUSH1 0x0 DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x1 DUP2 SWAP1 SSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 SLOAD PUSH1 0x0 DUP1 DUP3 DUP3 SLOAD PUSH2 0xF4 SWAP2 SWAP1 PUSH2 0x1A2 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0xA PUSH1 0x1 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x10E SWAP2 SWAP1 PUSH2 0x1A2 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x1 SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x132 DUP2 PUSH2 0x236 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x14F JUMPI PUSH2 0x14E PUSH2 0x231 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x15D DUP6 DUP3 DUP7 ADD PUSH2 0x123 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x16E DUP6 DUP3 DUP7 ADD PUSH2 0x123 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x181 DUP2 PUSH2 0x1F8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x19C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x178 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1AD DUP3 PUSH2 0x1F8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1B8 DUP4 PUSH2 0x1F8 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x1ED JUMPI PUSH2 0x1EC PUSH2 0x202 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x23F DUP2 PUSH2 0x1F8 JUMP JUMPDEST DUP2 EQ PUSH2 0x24A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xC7 0xE7 0xCD AND DUP16 0xC5 PUSH5 0xDB76BCB06B 0xA9 0xC7 CODECOPY 0xB2 PUSH17 0xEF98D8A6C17F56C99F9955E75F42E56473 PUSH16 0x6C634300080700330000000000000000 ",
"sourceMap": "57:240:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;76:13;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;116:73;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;195:99;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;96:13;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;76;;;;:::o;116:73::-;168:1;164;:5;;;;184:1;180;:5;;;;116:73;;:::o;195:99::-;227:4;248:1;;243;;:6;;;;;;;:::i;:::-;;;;;;;;265:2;260:1;;:7;;;;;;;:::i;:::-;;;;;;;;285:1;;278:8;;195:99;:::o;96:13::-;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:474::-;220:6;228;277:2;265:9;256:7;252:23;248:32;245:119;;;283:79;;:::i;:::-;245:119;403:1;428:53;473:7;464:6;453:9;449:22;428:53;:::i;:::-;418:63;;374:117;530:2;556:53;601:7;592:6;581:9;577:22;556:53;:::i;:::-;546:63;;501:118;152:474;;;;;:::o;632:118::-;719:24;737:5;719:24;:::i;:::-;714:3;707:37;632:118;;:::o;756:222::-;849:4;887:2;876:9;872:18;864:26;;900:71;968:1;957:9;953:17;944:6;900:71;:::i;:::-;756:222;;;;:::o;1065:305::-;1105:3;1124:20;1142:1;1124:20;:::i;:::-;1119:25;;1158:20;1176:1;1158:20;:::i;:::-;1153:25;;1312:1;1244:66;1240:74;1237:1;1234:81;1231:107;;;1318:18;;:::i;:::-;1231:107;1362:1;1359;1355:9;1348:16;;1065:305;;;;:::o;1376:77::-;1413:7;1442:5;1431:16;;1376:77;;;:::o;1459:180::-;1507:77;1504:1;1497:88;1604:4;1601:1;1594:15;1628:4;1625:1;1618:15;1768:117;1877:1;1874;1867:12;1891:122;1964:24;1982:5;1964:24;:::i;:::-;1957:5;1954:35;1944:63;;2003:1;2000;1993:12;1944:63;1891:122;:::o"
},
"gasEstimates": {
"creation": {
"codeDepositCost": "128600",
"executionCost": "177",
"totalCost": "128777"
},
"external": {
"modY()": "infinite",
"setXY(uint256,uint256)": "infinite",
"x()": "2407",
"y()": "2473"
}
},
"legacyAssembly": {
".code": [
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 57,
"end": 297,
"name": "MSTORE",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "ISZERO",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 297,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 297,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "REVERT",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 297,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH #[$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 57,
"end": 297,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH [$]",
"source": 0,
"value": "0000000000000000000000000000000000000000000000000000000000000000"
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 297,
"name": "CODECOPY",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 297,
"name": "RETURN",
"source": 0
}
],
".data": {
"0": {
".auxdata": "a2646970667358221220c7e7cd168fc564db76bcb06ba9c739b270ef98d8a6c17f56c99f9955e75f42e564736f6c63430008070033",
".code": [
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "80"
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "40"
},
{
"begin": 57,
"end": 297,
"name": "MSTORE",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "CALLVALUE",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "ISZERO",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH [tag]",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 297,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 297,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "REVERT",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "tag",
"source": 0,
"value": "1"
},
{
"begin": 57,
"end": 297,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "POP",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "4"
},
{
"begin": 57,
"end": 297,
"name": "CALLDATASIZE",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "LT",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH [tag]",
"source": 0,
"value": "2"
},
{
"begin": 57,
"end": 297,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 297,
"name": "CALLDATALOAD",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "E0"
},
{
"begin": 57,
"end": 297,
"name": "SHR",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "C55699C"
},
{
"begin": 57,
"end": 297,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH [tag]",
"source": 0,
"value": "3"
},
{
"begin": 57,
"end": 297,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "31A168A2"
},
{
"begin": 57,
"end": 297,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH [tag]",
"source": 0,
"value": "4"
},
{
"begin": 57,
"end": 297,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "41DC74EF"
},
{
"begin": 57,
"end": 297,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH [tag]",
"source": 0,
"value": "5"
},
{
"begin": 57,
"end": 297,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "A56DFE4A"
},
{
"begin": 57,
"end": 297,
"name": "EQ",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH [tag]",
"source": 0,
"value": "6"
},
{
"begin": 57,
"end": 297,
"name": "JUMPI",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "tag",
"source": 0,
"value": "2"
},
{
"begin": 57,
"end": 297,
"name": "JUMPDEST",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "PUSH",
"source": 0,
"value": "0"
},
{
"begin": 57,
"end": 297,
"name": "DUP1",
"source": 0
},
{
"begin": 57,
"end": 297,
"name": "REVERT",
"source": 0
},
{
"begin": 76,
"end": 89,
"name": "tag",
"source": 0,
"value": "3"
},
{
View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment