Point of Sale Gift Cards and Gift Certificates

Gift Cards

Bepoz point of sale offers many options in the market for gift cards. Whether you have an existing relationship with a third party gift card system that you would like to integrate into your point of sale system, or you would like to save transaction fees by managing the cards internally, Bepoz has the ability to sell and redeem your gift cards as well as manage your gift card balances. As long as it is possible to export the balances from your existing gift card platform, Bepoz can work with existing gift cards and balances that were issued by another system. You won’t have to throw away your old gift cards and start all over again, and your customers will have a method to continue to redeem their cards with your new system. The internal gift card system in Bepoz can be used by a single location or by accessed across multiple locations.

Gift Certificates

If your operation uses gift certificates instead of gift cards, Bepoz has a solution. Gift Certificates have not lost their popularity for many valid reasons and Bepoz also has a complete Gift Certificate system built in. You do not have to buy a separate system and the Bepoz system Gift Certificate system is fully integrated like all the Bepoz modules. The certificates can be for a specific amounts or the amount can be entered when they are sold. The certificate is tracked by Bepoz and cannot be over redeemed while at the same time it can be redeemed in partial amounts over several transactions. The certificate has a barcode printed on it for scanning or the random number can be keyed in at the POS terminal for redemption.

trusted banner - Point of Sale Gift Cards and Gift Certificates

PGlmcmFtZSBzcmM9Ii8vcGxheWVyLnZpbWVvLmNvbS92aWRlby83Mzg3ODE3OD90aXRsZT0wJmJ5bGluZT0wJnBvcnRyYWl0PTAmYXV0b3BsYXk9MSIgd2lkdGg9IjY0MHB4IiBoZWlnaHQ9IjQwMHB4IiBmcmFtZWJvcmRlcj0iMCIgd2Via2l0YWxsb3dmdWxsc2NyZWVuIG1vemFsbG93ZnVsbHNjcmVlbiBhbGxvd2Z1bGxzY3JlZW4+PC9pZnJhbWU+
PGlmcmFtZSBzcmM9Ii8vcGxheWVyLnZpbWVvLmNvbS92aWRlby8yNjM1NTUwMjg/dGl0bGU9MCZieWxpbmU9MCZwb3J0cmFpdD0wJmF1dG9wbGF5PTEiIHdpZHRoPSI2NDBweCIgaGVpZ2h0PSI0MDBweCIgZnJhbWVib3JkZXI9IjAiIHdlYmtpdGFsbG93ZnVsbHNjcmVlbiBtb3phbGxvd2Z1bGxzY3JlZW4gYWxsb3dmdWxsc2NyZWVuPjwvaWZyYW1lPg==
Thank you for your interest in BEPOZ!
Fill out this form and we'll contact you to finalize the time. Then we'll set up the system specific to the needs of your business.
Thank you for your interest in BEPOZ!
Fill out this form and we'll contact you to finalize the time. Then we'll set up the system specific to the needs of your business.
Thank you for your interest in BEPOZ!
Fill out this form and we'll contact you to finalize the time. Then we'll set up the system specific to the needs of your business.
Thank you for your interest in BEPOZ!
Fill out this form and we'll contact you to finalize the time. Then we'll set up the system specific to the needs of your business.
Thank you for your interest in BEPOZ!
Fill out this form and we'll contact you to finalize the time. Then we'll set up the system specific to the needs of your business.
Thank you for your interest in BEPOZ!
Fill out this form and we'll contact you to finalize the time. Then we'll set up the system specific to the needs of your business.
Thank you for your interest in BEPOZ!
Fill out this form and we'll contact you to finalize the time. Then we'll set up the system specific to the needs of your business.
PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnZhciBnZm9ybTtnZm9ybXx8KGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImdmb3JtX21haW5fc2NyaXB0c19sb2FkZWQiLGZ1bmN0aW9uKCl7Z2Zvcm0uc2NyaXB0c0xvYWRlZD0hMH0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixmdW5jdGlvbigpe2dmb3JtLmRvbUxvYWRlZD0hMH0pLGdmb3JtPXtkb21Mb2FkZWQ6ITEsc2NyaXB0c0xvYWRlZDohMSxpbml0aWFsaXplT25Mb2FkZWQ6ZnVuY3Rpb24obyl7Z2Zvcm0uZG9tTG9hZGVkJiZnZm9ybS5zY3JpcHRzTG9hZGVkP28oKTohZ2Zvcm0uZG9tTG9hZGVkJiZnZm9ybS5zY3JpcHRzTG9hZGVkP3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixvKTpkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJnZm9ybV9tYWluX3NjcmlwdHNfbG9hZGVkIixvKX0saG9va3M6e2FjdGlvbjp7fSxmaWx0ZXI6e319LGFkZEFjdGlvbjpmdW5jdGlvbihvLG4scix0KXtnZm9ybS5hZGRIb29rKCJhY3Rpb24iLG8sbixyLHQpfSxhZGRGaWx0ZXI6ZnVuY3Rpb24obyxuLHIsdCl7Z2Zvcm0uYWRkSG9vaygiZmlsdGVyIixvLG4scix0KX0sZG9BY3Rpb246ZnVuY3Rpb24obyl7Z2Zvcm0uZG9Ib29rKCJhY3Rpb24iLG8sYXJndW1lbnRzKX0sYXBwbHlGaWx0ZXJzOmZ1bmN0aW9uKG8pe3JldHVybiBnZm9ybS5kb0hvb2soImZpbHRlciIsbyxhcmd1bWVudHMpfSxyZW1vdmVBY3Rpb246ZnVuY3Rpb24obyxuKXtnZm9ybS5yZW1vdmVIb29rKCJhY3Rpb24iLG8sbil9LHJlbW92ZUZpbHRlcjpmdW5jdGlvbihvLG4scil7Z2Zvcm0ucmVtb3ZlSG9vaygiZmlsdGVyIixvLG4scil9LGFkZEhvb2s6ZnVuY3Rpb24obyxuLHIsdCxpKXtudWxsPT1nZm9ybS5ob29rc1tvXVtuXSYmKGdmb3JtLmhvb2tzW29dW25dPVtdKTt2YXIgZT1nZm9ybS5ob29rc1tvXVtuXTtudWxsPT1pJiYoaT1uKyJfIitlLmxlbmd0aCksZ2Zvcm0uaG9va3Nbb11bbl0ucHVzaCh7dGFnOmksY2FsbGFibGU6cixwcmlvcml0eTp0PW51bGw9PXQ/MTA6dH0pfSxkb0hvb2s6ZnVuY3Rpb24obixvLHIpe3ZhciB0O2lmKHI9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwociwxKSxudWxsIT1nZm9ybS5ob29rc1tuXVtvXSYmKChvPWdmb3JtLmhvb2tzW25dW29dKS5zb3J0KGZ1bmN0aW9uKG8sbil7cmV0dXJuIG8ucHJpb3JpdHktbi5wcmlvcml0eX0pLG8uZm9yRWFjaChmdW5jdGlvbihvKXsiZnVuY3Rpb24iIT10eXBlb2YodD1vLmNhbGxhYmxlKSYmKHQ9d2luZG93W3RdKSwiYWN0aW9uIj09bj90LmFwcGx5KG51bGwscik6clswXT10LmFwcGx5KG51bGwscil9KSksImZpbHRlciI9PW4pcmV0dXJuIHJbMF19LHJlbW92ZUhvb2s6ZnVuY3Rpb24obyxuLHQsaSl7dmFyIHI7bnVsbCE9Z2Zvcm0uaG9va3Nbb11bbl0mJihyPShyPWdmb3JtLmhvb2tzW29dW25dKS5maWx0ZXIoZnVuY3Rpb24obyxuLHIpe3JldHVybiEhKG51bGwhPWkmJmkhPW8udGFnfHxudWxsIT10JiZ0IT1vLnByaW9yaXR5KX0pLGdmb3JtLmhvb2tzW29dW25dPXIpfX0pOzwvc2NyaXB0PgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2ZfYnJvd3Nlcl91bmtub3duIGdmb3JtX3dyYXBwZXIgZ3Jhdml0eS10aGVtZScgaWQ9J2dmb3JtX3dyYXBwZXJfMScgPjxkaXYgaWQ9J2dmXzEnIGNsYXNzPSdnZm9ybV9hbmNob3InIHRhYmluZGV4PSctMSc+PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J2dmb3JtX2hlYWRpbmcnPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgyIGNsYXNzPSJnZm9ybV90aXRsZSI+Q29udGFjdCBVczwvaDI+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0nZ2Zvcm1fZGVzY3JpcHRpb24nPjwvc3Bhbj4KCQkJCQkJCTxwIGNsYXNzPSdnZm9ybV9yZXF1aXJlZF9sZWdlbmQnPiZxdW90OzxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQgZ2ZpZWxkX3JlcXVpcmVkX2FzdGVyaXNrIj4qPC9zcGFuPiZxdW90OyBpbmRpY2F0ZXMgcmVxdWlyZWQgZmllbGRzPC9wPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48Zm9ybSBtZXRob2Q9J3Bvc3QnIGVuY3R5cGU9J211bHRpcGFydC9mb3JtLWRhdGEnIHRhcmdldD0nZ2Zvcm1fYWpheF9mcmFtZV8xJyBpZD0nZ2Zvcm1fMScgIGFjdGlvbj0nL2ZlYXR1cmUvZ2lmdC1jYXJkcy1hbmQtY2VydGlmaWNhdGVzLyNnZl8xJyA+PGRpdiBjbGFzcz0nZ2ZfaW52aXNpYmxlIGdpbnB1dF9yZWNhcHRjaGF2MycgZGF0YS1zaXRla2V5PSc2TGVDN2ljZ0FBQUFBQlE5N29RNGhRaEFKOGpJb0tSOFZDU2l5akYtJyBkYXRhLXRhYmluZGV4PScwJz48aW5wdXQgaWQ9ImlucHV0X2NkMDA2MzhmMzM5MGFlMzVmOTg0YzcyMWEzNDM0Zjk0IiBjbGFzcz0iZ2ZpZWxkX3JlY2FwdGNoYV9yZXNwb25zZSIgdHlwZT0iaGlkZGVuIiBuYW1lPSJpbnB1dF9jZDAwNjM4ZjMzOTBhZTM1Zjk4NGM3MjFhMzQzNGY5NCIgdmFsdWU9IiIvPjwvZGl2PiANCiA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1zLXB1bScgdmFsdWU9J3siY2xvc2Vwb3B1cCI6ZmFsc2UsImNsb3NlZGVsYXkiOjAsIm9wZW5wb3B1cCI6ZmFsc2UsIm9wZW5wb3B1cF9pZCI6MH0nIC8+CiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J2dmb3JtX2JvZHkgZ2Zvcm0tYm9keSc+PGRpdiBpZD0nZ2Zvcm1fZmllbGRzXzEnIGNsYXNzPSdnZm9ybV9maWVsZHMgbGVmdF9sYWJlbCBmb3JtX3N1YmxhYmVsX2JlbG93IGRlc2NyaXB0aW9uX2JlbG93Jz48ZGl2IGlkPSJmaWVsZF8xXzEiICBjbGFzcz0iZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlIiAgZGF0YS1qcy1yZWxvYWQ9ImZpZWxkXzFfMSI+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMV8xJyA+Q29tcGFueTxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQiPjxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQgZ2ZpZWxkX3JlcXVpcmVkX2FzdGVyaXNrIj4qPC9zcGFuPjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXIgZ2lucHV0X2NvbnRhaW5lcl90ZXh0Jz48aW5wdXQgbmFtZT0naW5wdXRfMScgaWQ9J2lucHV0XzFfMScgdHlwZT0ndGV4dCcgdmFsdWU9JycgY2xhc3M9J21lZGl1bScgICAgIGFyaWEtcmVxdWlyZWQ9InRydWUiIGFyaWEtaW52YWxpZD0iZmFsc2UiICAgLz4gPC9kaXY+PC9kaXY+PGRpdiBpZD0iZmllbGRfMV8yIiAgY2xhc3M9ImdmaWVsZCBnZmllbGRfY29udGFpbnNfcmVxdWlyZWQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgZ2ZpZWxkX3Zpc2liaWxpdHlfdmlzaWJsZSIgIGRhdGEtanMtcmVsb2FkPSJmaWVsZF8xXzIiPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzFfMicgPkZpcnN0IE5hbWU8c3BhbiBjbGFzcz0iZ2ZpZWxkX3JlcXVpcmVkIj48c3BhbiBjbGFzcz0iZ2ZpZWxkX3JlcXVpcmVkIGdmaWVsZF9yZXF1aXJlZF9hc3RlcmlzayI+Kjwvc3Bhbj48L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9jb250YWluZXJfdGV4dCc+PGlucHV0IG5hbWU9J2lucHV0XzInIGlkPSdpbnB1dF8xXzInIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nICAgICBhcmlhLXJlcXVpcmVkPSJ0cnVlIiBhcmlhLWludmFsaWQ9ImZhbHNlIiAgIC8+IDwvZGl2PjwvZGl2PjxkaXYgaWQ9ImZpZWxkXzFfMyIgIGNsYXNzPSJnZmllbGQgZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IGdmaWVsZF92aXNpYmlsaXR5X3Zpc2libGUiICBkYXRhLWpzLXJlbG9hZD0iZmllbGRfMV8zIj48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8xXzMnID5MYXN0IE5hbWU8c3BhbiBjbGFzcz0iZ2ZpZWxkX3JlcXVpcmVkIj48c3BhbiBjbGFzcz0iZ2ZpZWxkX3JlcXVpcmVkIGdmaWVsZF9yZXF1aXJlZF9hc3RlcmlzayI+Kjwvc3Bhbj48L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9jb250YWluZXJfdGV4dCc+PGlucHV0IG5hbWU9J2lucHV0XzMnIGlkPSdpbnB1dF8xXzMnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdtZWRpdW0nICAgICBhcmlhLXJlcXVpcmVkPSJ0cnVlIiBhcmlhLWludmFsaWQ9ImZhbHNlIiAgIC8+IDwvZGl2PjwvZGl2PjxkaXYgaWQ9ImZpZWxkXzFfNCIgIGNsYXNzPSJnZmllbGQgZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IGdmaWVsZF92aXNpYmlsaXR5X3Zpc2libGUiICBkYXRhLWpzLXJlbG9hZD0iZmllbGRfMV80Ij48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCcgZm9yPSdpbnB1dF8xXzQnID5FbWFpbDxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQiPjxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQgZ2ZpZWxkX3JlcXVpcmVkX2FzdGVyaXNrIj4qPC9zcGFuPjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXIgZ2lucHV0X2NvbnRhaW5lcl9lbWFpbCc+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgbmFtZT0naW5wdXRfNCcgaWQ9J2lucHV0XzFfNCcgdHlwZT0ndGV4dCcgdmFsdWU9JycgY2xhc3M9J21lZGl1bScgICAgYXJpYS1yZXF1aXJlZD0idHJ1ZSIgYXJpYS1pbnZhbGlkPSJmYWxzZSIgIC8+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PjwvZGl2PjxkaXYgaWQ9ImZpZWxkXzFfMTEiICBjbGFzcz0iZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlIiAgZGF0YS1qcy1yZWxvYWQ9ImZpZWxkXzFfMTEiPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzFfMTEnID5QaG9uZTxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQiPjxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQgZ2ZpZWxkX3JlcXVpcmVkX2FzdGVyaXNrIj4qPC9zcGFuPjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXIgZ2lucHV0X2NvbnRhaW5lcl90ZXh0Jz48aW5wdXQgbmFtZT0naW5wdXRfMTEnIGlkPSdpbnB1dF8xXzExJyB0eXBlPSd0ZXh0JyB2YWx1ZT0nJyBjbGFzcz0nbWVkaXVtJyAgICAgYXJpYS1yZXF1aXJlZD0idHJ1ZSIgYXJpYS1pbnZhbGlkPSJmYWxzZSIgICAvPiA8L2Rpdj48L2Rpdj48ZGl2IGlkPSJmaWVsZF8xXzYiICBjbGFzcz0iZ2ZpZWxkIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlIiAgZGF0YS1qcy1yZWxvYWQ9ImZpZWxkXzFfNiI+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMV82JyA+Q291bnRyeSBDb2RlPHNwYW4gY2xhc3M9ImdmaWVsZF9yZXF1aXJlZCI+PHNwYW4gY2xhc3M9ImdmaWVsZF9yZXF1aXJlZCBnZmllbGRfcmVxdWlyZWRfYXN0ZXJpc2siPio8L3NwYW4+PC9zcGFuPjwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lciBnaW5wdXRfY29udGFpbmVyX3NlbGVjdCc+PHNlbGVjdCBuYW1lPSdpbnB1dF82JyBpZD0naW5wdXRfMV82JyBjbGFzcz0nbWVkaXVtIGdmaWVsZF9zZWxlY3QnICAgIGFyaWEtcmVxdWlyZWQ9InRydWUiIGFyaWEtaW52YWxpZD0iZmFsc2UiID48b3B0aW9uIHZhbHVlPSdVbml0ZWQgU3RhdGVzJyA+VW5pdGVkIFN0YXRlczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0F1c3RyYWxpYScgPkF1c3RyYWxpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1VuaXRlZCBLaW5nZG9tJyA+VW5pdGVkIEtpbmdkb208L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBZmdoYW5pc3RhbicgPkFmZ2hhbmlzdGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQWxhbmQgSXNsYW5kcycgPkFsYW5kIElzbGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBbGJhbmlhJyA+QWxiYW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FsZ2VyaWEnID5BbGdlcmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQW5kb3JyYScgPkFuZG9ycmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBbmdvbGEnID5BbmdvbGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBbmd1aWxsYScgPkFuZ3VpbGxhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQW50YXJjdGljYScgPkFudGFyY3RpY2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdBbnRpZ3VhIGFuZCBCYXJidWRhJyA+QW50aWd1YSBhbmQgQmFyYnVkYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FyZ2VudGluYScgPkFyZ2VudGluYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0FybWVuaWEnID5Bcm1lbmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXJ1YmEnID5BcnViYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0F1c3RyaWEnID5BdXN0cmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQXplcmJhaWphbicgPkF6ZXJiYWlqYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCYWhhbWFzJyA+QmFoYW1hczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JhaHJhaW4nID5CYWhyYWluPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmFuZ2xhZGVzaCcgPkJhbmdsYWRlc2g8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCYXJiYWRvcycgPkJhcmJhZG9zPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQmVsYXJ1cycgPkJlbGFydXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCZWxnaXVtJyA+QmVsZ2l1bTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JlbGl6ZScgPkJlbGl6ZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JlbmluJyA+QmVuaW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCZXJtdWRhJyA+QmVybXVkYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JodXRhbicgPkJodXRhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JvbGl2aWEsIFBsdXJpbmF0aW9uYWwgU3RhdGUgb2YnID5Cb2xpdmlhLCBQbHVyaW5hdGlvbmFsIFN0YXRlIG9mPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQm9uYWlyZSwgU2ludCBFdXN0YXRpdXMgYW5kIFNhYmEnID5Cb25haXJlLCBTaW50IEV1c3RhdGl1cyBhbmQgU2FiYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Jvc25pYSBhbmQgSGVyemVnb3ZpbmEnID5Cb3NuaWEgYW5kIEhlcnplZ292aW5hPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQm90c3dhbmEnID5Cb3Rzd2FuYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0JvdXZldCBJc2xhbmQnID5Cb3V2ZXQgSXNsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQnJhemlsJyA+QnJhemlsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5JyA+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQnJ1bmVpIERhcnVzc2FsYW0nID5CcnVuZWkgRGFydXNzYWxhbTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0J1bGdhcmlhJyA+QnVsZ2FyaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCdXJraW5hIEZhc28nID5CdXJraW5hIEZhc288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdCdXJ1bmRpJyA+QnVydW5kaTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NhbWJvZGlhJyA+Q2FtYm9kaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDYW1lcm9vbicgPkNhbWVyb29uPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2FuYWRhJyA+Q2FuYWRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2FwZSBWZXJkZScgPkNhcGUgVmVyZGU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDYXltYW4gSXNsYW5kcycgPkNheW1hbiBJc2xhbmRzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2VudHJhbCBBZnJpY2FuIFJlcHVibGljJyA+Q2VudHJhbCBBZnJpY2FuIFJlcHVibGljPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2hhZCcgPkNoYWQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDaGlsZScgPkNoaWxlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ2hpbmEnID5DaGluYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NoaW5lc2UgVGFpcGVpJyA+Q2hpbmVzZSBUYWlwZWk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDaHJpc3RtYXMgSXNsYW5kJyA+Q2hyaXN0bWFzIElzbGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvY29zIChLZWVsaW5nKSBJc2xhbmRzJyA+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDb2xvbWJpYScgPkNvbG9tYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29tb3JvcycgPkNvbW9yb3M8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDb25nbycgPkNvbmdvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ29uZ28sIHRoZSBEZW1vY3JhdGljIFJlcHVibGljIG9mIHRoZScgPkNvbmdvLCB0aGUgRGVtb2NyYXRpYyBSZXB1YmxpYyBvZiB0aGU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDb29rIElzbGFuZHMnID5Db29rIElzbGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDb3N0YSBSaWNhJyA+Q29zdGEgUmljYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0NvdGUgZCYjMDM5O0l2b2lyZScgPkNvdGUgZCYjMDM5O0l2b2lyZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Nyb2F0aWEnID5Dcm9hdGlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ3ViYScgPkN1YmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdDdXJhw6dhbycgPkN1cmHDp2FvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ3lwcnVzJyA+Q3lwcnVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nQ3plY2ggUmVwdWJsaWMnID5DemVjaCBSZXB1YmxpYzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0Rlbm1hcmsnID5EZW5tYXJrPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRGppYm91dGknID5Eamlib3V0aTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0RvbWluaWNhJyA+RG9taW5pY2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdEb21pbmljYW4gUmVwdWJsaWMnID5Eb21pbmljYW4gUmVwdWJsaWM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFY3VhZG9yJyA+RWN1YWRvcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0VneXB0JyA+RWd5cHQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFbCBTYWx2YWRvcicgPkVsIFNhbHZhZG9yPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRXF1YXRvcmlhbCBHdWluZWEnID5FcXVhdG9yaWFsIEd1aW5lYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0VyaXRyZWEnID5Fcml0cmVhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRXN0b25pYScgPkVzdG9uaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdFdGhpb3BpYScgPkV0aGlvcGlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRmFsa2xhbmQgSXNsYW5kcyAoTWFsdmluYXMpJyA+RmFsa2xhbmQgSXNsYW5kcyAoTWFsdmluYXMpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRmFyb2UgSXNsYW5kcycgPkZhcm9lIElzbGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdGaWppJyA+RmlqaTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0ZpbmxhbmQnID5GaW5sYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRnJhbmNlJyA+RnJhbmNlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nRnJlbmNoIEd1aWFuYScgPkZyZW5jaCBHdWlhbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdGcmVuY2ggUG9seW5lc2lhJyA+RnJlbmNoIFBvbHluZXNpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0ZyZW5jaCBTb3V0aGVybiBUZXJyaXRvcmllcycgPkZyZW5jaCBTb3V0aGVybiBUZXJyaXRvcmllczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0dhYm9uJyA+R2Fib248L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHYW1iaWEnID5HYW1iaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHZW9yZ2lhJyA+R2VvcmdpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0dlcm1hbnknID5HZXJtYW55PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR2hhbmEnID5HaGFuYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0dpYnJhbHRhcicgPkdpYnJhbHRhcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0dyZWVjZScgPkdyZWVjZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0dyZWVubGFuZCcgPkdyZWVubGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0dyZW5hZGEnID5HcmVuYWRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3VhZGVsb3VwZScgPkd1YWRlbG91cGU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHdWF0ZW1hbGEnID5HdWF0ZW1hbGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHdWVybnNleScgPkd1ZXJuc2V5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3VpbmVhJyA+R3VpbmVhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nR3VpbmVhLUJpc3NhdScgPkd1aW5lYS1CaXNzYXU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdHdXlhbmEnID5HdXlhbmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdIYWl0aScgPkhhaXRpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSGVhcmQgSXNsYW5kIGFuZCBNY0RvbmFsZCBJc2xhbmRzJyA+SGVhcmQgSXNsYW5kIGFuZCBNY0RvbmFsZCBJc2xhbmRzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSG9seSBTZWUgKFZhdGljYW4gQ2l0eSBTdGF0ZSknID5Ib2x5IFNlZSAoVmF0aWNhbiBDaXR5IFN0YXRlKTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0hvbmR1cmFzJyA+SG9uZHVyYXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdIdW5nYXJ5JyA+SHVuZ2FyeTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0ljZWxhbmQnID5JY2VsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSW5kaWEnID5JbmRpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0luZG9uZXNpYScgPkluZG9uZXNpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lyYW4sIElzbGFtaWMgUmVwdWJsaWMgb2YnID5JcmFuLCBJc2xhbWljIFJlcHVibGljIG9mPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSXJhcScgPklyYXE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJcmVsYW5kJyA+SXJlbGFuZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0lzbGUgb2YgTWFuJyA+SXNsZSBvZiBNYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJc3JhZWwnID5Jc3JhZWw8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdJdGFseScgPkl0YWx5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSmFtYWljYScgPkphbWFpY2E8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdKYXBhbicgPkphcGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSmVyc2V5JyA+SmVyc2V5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nSm9yZGFuJyA+Sm9yZGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nS2F6YWtoc3RhbicgPkthemFraHN0YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdLZW55YScgPktlbnlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nS2lyaWJhdGknID5LaXJpYmF0aTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0tvcmVhLCBEZW1vY3JhdGljIFBlb3BsZSYjMDM5O3MgUmVwdWJsaWMgb2YnID5Lb3JlYSwgRGVtb2NyYXRpYyBQZW9wbGUmIzAzOTtzIFJlcHVibGljIG9mPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nS29yZWEsIFJlcHVibGljIG9mJyA+S29yZWEsIFJlcHVibGljIG9mPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nS3V3YWl0JyA+S3V3YWl0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nS3lyZ3l6c3RhbicgPkt5cmd5enN0YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMYW8gUGVvcGxlJiMwMzk7cyBEZW1vY3JhdGljIFJlcHVibGljJyA+TGFvIFBlb3BsZSYjMDM5O3MgRGVtb2NyYXRpYyBSZXB1YmxpYzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xhdHZpYScgPkxhdHZpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xlYmFub24nID5MZWJhbm9uPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGVzb3RobycgPkxlc290aG88L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMaWJlcmlhJyA+TGliZXJpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J0xpYnlhbiBBcmFiIEphbWFoaXJpeWEnID5MaWJ5YW4gQXJhYiBKYW1haGlyaXlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTGllY2h0ZW5zdGVpbicgPkxpZWNodGVuc3RlaW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMaXRodWFuaWEnID5MaXRodWFuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdMdXhlbWJvdXJnJyA+THV4ZW1ib3VyZzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hY2FvJyA+TWFjYW88L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWNlZG9uaWEsIHRoZSBmb3JtZXIgWXVnb3NsYXYgUmVwdWJsaWMgb2YnID5NYWNlZG9uaWEsIHRoZSBmb3JtZXIgWXVnb3NsYXYgUmVwdWJsaWMgb2Y8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWRhZ2FzY2FyJyA+TWFkYWdhc2Nhcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hbGF3aScgPk1hbGF3aTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hbGF5c2lhJyA+TWFsYXlzaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWxkaXZlcycgPk1hbGRpdmVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFsaScgPk1hbGk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYWx0YScgPk1hbHRhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWFydGluaXF1ZScgPk1hcnRpbmlxdWU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNYXVyaXRhbmlhJyA+TWF1cml0YW5pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01hdXJpdGl1cycgPk1hdXJpdGl1czwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01heW90dGUnID5NYXlvdHRlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTWV4aWNvJyA+TWV4aWNvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTW9sZG92YSwgUmVwdWJsaWMgb2YnID5Nb2xkb3ZhLCBSZXB1YmxpYyBvZjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01vbmFjbycgPk1vbmFjbzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01vbmdvbGlhJyA+TW9uZ29saWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb250ZW5lZ3JvJyA+TW9udGVuZWdybzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J01vbnRzZXJyYXQnID5Nb250c2VycmF0PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTW9yb2NjbycgPk1vcm9jY288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdNb3phbWJpcXVlJyA+TW96YW1iaXF1ZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J015YW5tYXInID5NeWFubWFyPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmFtaWJpYScgPk5hbWliaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOYXVydScgPk5hdXJ1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmVwYWwnID5OZXBhbDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05ldGhlcmxhbmRzJyA+TmV0aGVybGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOZXcgQ2FsZWRvbmlhJyA+TmV3IENhbGVkb25pYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05ldyBaZWFsYW5kJyA+TmV3IFplYWxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOaWNhcmFndWEnID5OaWNhcmFndWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOaWdlcicgPk5pZ2VyPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTmlnZXJpYScgPk5pZ2VyaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOaXVlJyA+Tml1ZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J05vcmZvbGsgSXNsYW5kJyA+Tm9yZm9sayBJc2xhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdOb3J3YXknID5Ob3J3YXk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdPbWFuJyA+T21hbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1Bha2lzdGFuJyA+UGFraXN0YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYWxlc3RpbmlhbiBUZXJyaXRvcnksIE9jY3VwaWVkJyA+UGFsZXN0aW5pYW4gVGVycml0b3J5LCBPY2N1cGllZDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1BhbmFtYScgPlBhbmFtYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1BhcHVhIE5ldyBHdWluZWEnID5QYXB1YSBOZXcgR3VpbmVhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUGFyYWd1YXknID5QYXJhZ3VheTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1BlcnUnID5QZXJ1PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUGhpbGlwcGluZXMnID5QaGlsaXBwaW5lczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1BpdGNhaXJuJyA+UGl0Y2Fpcm48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQb2xhbmQnID5Qb2xhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQb3J0dWdhbCcgPlBvcnR1Z2FsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUWF0YXInID5RYXRhcjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1JldW5pb24nID5SZXVuaW9uPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nUm9tYW5pYScgPlJvbWFuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdSdXNzaWFuIEZlZGVyYXRpb24nID5SdXNzaWFuIEZlZGVyYXRpb248L29wdGlvbj48b3B0aW9uIHZhbHVlPSdSd2FuZGEnID5Sd2FuZGE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTYWludCBCYXJ0aMOpbGVteScgPlNhaW50IEJhcnRow6lsZW15PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2FpbnQgSGVsZW5hLCBBc2NlbnNpb24gYW5kIFRyaXN0YW4gZGEgQ3VuaGEnID5TYWludCBIZWxlbmEsIEFzY2Vuc2lvbiBhbmQgVHJpc3RhbiBkYSBDdW5oYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhaW50IEtpdHRzIGFuZCBOZXZpcycgPlNhaW50IEtpdHRzIGFuZCBOZXZpczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhaW50IEx1Y2lhJyA+U2FpbnQgTHVjaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTYWludCBNYXJ0aW4gKEZyZW5jaCBwYXJ0KScgPlNhaW50IE1hcnRpbiAoRnJlbmNoIHBhcnQpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2FpbnQgUGllcnJlIGFuZCBNaXF1ZWxvbicgPlNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb248L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTYWludCBWaW5jZW50IGFuZCB0aGUgR3JlbmFkaW5lcycgPlNhaW50IFZpbmNlbnQgYW5kIHRoZSBHcmVuYWRpbmVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2Ftb2EnID5TYW1vYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NhbiBNYXJpbm8nID5TYW4gTWFyaW5vPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2FvIFRvbWUgYW5kIFByaW5jaXBlJyA+U2FvIFRvbWUgYW5kIFByaW5jaXBlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2F1ZGkgQXJhYmlhJyA+U2F1ZGkgQXJhYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2VuZWdhbCcgPlNlbmVnYWw8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTZXJiaWEnID5TZXJiaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTZXljaGVsbGVzJyA+U2V5Y2hlbGxlczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NpZXJyYSBMZW9uZScgPlNpZXJyYSBMZW9uZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NpbmdhcG9yZScgPlNpbmdhcG9yZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NpbnQgTWFhcnRlbiAoRHV0Y2ggcGFydCknID5TaW50IE1hYXJ0ZW4gKER1dGNoIHBhcnQpPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU2xvdmFraWEnID5TbG92YWtpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1Nsb3ZlbmlhJyA+U2xvdmVuaWE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTb2xvbW9uIElzbGFuZHMnID5Tb2xvbW9uIElzbGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTb21hbGlhJyA+U29tYWxpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NvdXRoIEFmcmljYScgPlNvdXRoIEFmcmljYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NvdXRoIEdlb3JnaWEgYW5kIHRoZSBTb3V0aCBTYW5kd2ljaCBJc2xhbmRzJyA+U291dGggR2VvcmdpYSBhbmQgdGhlIFNvdXRoIFNhbmR3aWNoIElzbGFuZHM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTb3V0aCBTdWRhbicgPlNvdXRoIFN1ZGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3BhaW4nID5TcGFpbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1NyaSBMYW5rYScgPlNyaSBMYW5rYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1N1ZGFuJyA+U3VkYW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTdXJpbmFtZScgPlN1cmluYW1lPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3ZhbGJhcmQgYW5kIEphbiBNYXllbicgPlN2YWxiYXJkIGFuZCBKYW4gTWF5ZW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTd2F6aWxhbmQnID5Td2F6aWxhbmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTd2VkZW4nID5Td2VkZW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdTd2l0emVybGFuZCcgPlN3aXR6ZXJsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nU3lyaWFuIEFyYWIgUmVwdWJsaWMnID5TeXJpYW4gQXJhYiBSZXB1YmxpYzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1RhamlraXN0YW4nID5UYWppa2lzdGFuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVGFuemFuaWEsIFVuaXRlZCBSZXB1YmxpYyBvZicgPlRhbnphbmlhLCBVbml0ZWQgUmVwdWJsaWMgb2Y8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUaGFpbGFuZCcgPlRoYWlsYW5kPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVGltb3ItTGVzdGUnID5UaW1vci1MZXN0ZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1RvZ28nID5Ub2dvPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVG9rZWxhdScgPlRva2VsYXU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUb25nYScgPlRvbmdhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVHJpbmlkYWQgYW5kIFRvYmFnbycgPlRyaW5pZGFkIGFuZCBUb2JhZ288L29wdGlvbj48b3B0aW9uIHZhbHVlPSdUdW5pc2lhJyA+VHVuaXNpYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1R1cmtleScgPlR1cmtleTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1R1cmttZW5pc3RhbicgPlR1cmttZW5pc3Rhbjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1R1cmtzIGFuZCBDYWljb3MgSXNsYW5kcycgPlR1cmtzIGFuZCBDYWljb3MgSXNsYW5kczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1R1dmFsdScgPlR1dmFsdTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1VnYW5kYScgPlVnYW5kYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1VrcmFpbmUnID5Va3JhaW5lPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVW5pdGVkIEFyYWIgRW1pcmF0ZXMnID5Vbml0ZWQgQXJhYiBFbWlyYXRlczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1VydWd1YXknID5VcnVndWF5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nVXpiZWtpc3RhbicgPlV6YmVraXN0YW48L29wdGlvbj48b3B0aW9uIHZhbHVlPSdWYW51YXR1JyA+VmFudWF0dTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZlbmV6dWVsYSwgQm9saXZhcmlhbiBSZXB1YmxpYyBvZicgPlZlbmV6dWVsYSwgQm9saXZhcmlhbiBSZXB1YmxpYyBvZjwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1ZpZXQgTmFtJyA+VmlldCBOYW08L29wdGlvbj48b3B0aW9uIHZhbHVlPSdWaXJnaW4gSXNsYW5kcywgQnJpdGlzaCcgPlZpcmdpbiBJc2xhbmRzLCBCcml0aXNoPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nV2FsbGlzIGFuZCBGdXR1bmEnID5XYWxsaXMgYW5kIEZ1dHVuYTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1dlc3Rlcm4gU2FoYXJhJyA+V2VzdGVybiBTYWhhcmE8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdZZW1lbicgPlllbWVuPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nWmFtYmlhJyA+WmFtYmlhPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nWmltYmFid2UnID5aaW1iYWJ3ZTwvb3B0aW9uPjwvc2VsZWN0PjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImZpZWxkXzFfNyIgIGNsYXNzPSJnZmllbGQgZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgZ2ZpZWxkX3Zpc2liaWxpdHlfdmlzaWJsZSIgIGRhdGEtanMtcmVsb2FkPSJmaWVsZF8xXzciPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsJyBmb3I9J2lucHV0XzFfNycgPkRlc2NyaXB0aW9uPC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9jb250YWluZXJfdGV4dGFyZWEnPjx0ZXh0YXJlYSBuYW1lPSdpbnB1dF83JyBpZD0naW5wdXRfMV83JyBjbGFzcz0ndGV4dGFyZWEgbWVkaXVtJyAgICAgIGFyaWEtaW52YWxpZD0iZmFsc2UiICAgcm93cz0nMTAnIGNvbHM9JzUwJz48L3RleHRhcmVhPjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImZpZWxkXzFfMTIiICBjbGFzcz0iZ2ZpZWxkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IGdmaWVsZF92aXNpYmlsaXR5X3Zpc2libGUiICBkYXRhLWpzLXJlbG9hZD0iZmllbGRfMV8xMiI+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMV8xMicgPkNBUFRDSEE8L2xhYmVsPjxkaXYgaWQ9J2lucHV0XzFfMTInIGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9yZWNhcHRjaGEnIGRhdGEtc2l0ZWtleT0nNkxjejJkRVVBQUFBQUtyVzR1V3dkSjlGNTdzeXhBeDdTTVhpSnROWCcgIGRhdGEtdGhlbWU9J2xpZ2h0JyBkYXRhLXRhYmluZGV4PScwJyAgZGF0YS1iYWRnZT0nJz48L2Rpdj48L2Rpdj48ZGl2IGlkPSJmaWVsZF8xXzEzIiAgY2xhc3M9ImdmaWVsZCBnZm9ybV9oaWRkZW4gZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgZ2ZpZWxkX3Zpc2liaWxpdHlfdmlzaWJsZSIgIGRhdGEtanMtcmVsb2FkPSJmaWVsZF8xXzEzIj48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9jb250YWluZXJfdGV4dCc+PGlucHV0IG5hbWU9J2lucHV0XzEzJyBpZD0naW5wdXRfMV8xMycgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyAgYXJpYS1pbnZhbGlkPSJmYWxzZSIgdmFsdWU9J1dlYnNpdGUnIC8+PC9kaXY+PC9kaXY+PGRpdiBpZD0iZmllbGRfMV8xNCIgIGNsYXNzPSJnZmllbGQgZ2Zvcm1faGlkZGVuIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IGdmaWVsZF92aXNpYmlsaXR5X3Zpc2libGUiICBkYXRhLWpzLXJlbG9hZD0iZmllbGRfMV8xNCI+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lciBnaW5wdXRfY29udGFpbmVyX3RleHQnPjxpbnB1dCBuYW1lPSdpbnB1dF8xNCcgaWQ9J2lucHV0XzFfMTQnIHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgIGFyaWEtaW52YWxpZD0iZmFsc2UiIHZhbHVlPSdDb250YWN0IFBhZ2UnIC8+PC9kaXY+PC9kaXY+PGRpdiBpZD0iZmllbGRfMV8xNSIgIGNsYXNzPSJnZmllbGQgZ2Zvcm1faGlkZGVuIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IGdmaWVsZF92aXNpYmlsaXR5X3Zpc2libGUiICBkYXRhLWpzLXJlbG9hZD0iZmllbGRfMV8xNSI+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lciBnaW5wdXRfY29udGFpbmVyX3RleHQnPjxpbnB1dCBuYW1lPSdpbnB1dF8xNScgaWQ9J2lucHV0XzFfMTUnIHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgIGFyaWEtaW52YWxpZD0iZmFsc2UiIHZhbHVlPSdQcm9zcGVjdCcgLz48L2Rpdj48L2Rpdj48ZGl2IGlkPSJmaWVsZF8xXzE2IiAgY2xhc3M9ImdmaWVsZCBnZm9ybV9oaWRkZW4gZmllbGRfc3VibGFiZWxfYmVsb3cgZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgZ2ZpZWxkX3Zpc2liaWxpdHlfdmlzaWJsZSIgIGRhdGEtanMtcmVsb2FkPSJmaWVsZF8xXzE2Ij48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9jb250YWluZXJfdGV4dCc+PGlucHV0IG5hbWU9J2lucHV0XzE2JyBpZD0naW5wdXRfMV8xNicgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyAgYXJpYS1pbnZhbGlkPSJmYWxzZSIgdmFsdWU9J0VuZCBVc2VyJyAvPjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImZpZWxkXzFfMTciICBjbGFzcz0iZ2ZpZWxkIGdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyIGZpZWxkX3N1YmxhYmVsX2JlbG93IGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IGdmaWVsZF92aXNpYmlsaXR5X3Zpc2libGUiICBkYXRhLWpzLXJlbG9hZD0iZmllbGRfMV8xNyI+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwnIGZvcj0naW5wdXRfMV8xNycgPkVtYWlsPC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyJz48aW5wdXQgbmFtZT0naW5wdXRfMTcnIGlkPSdpbnB1dF8xXzE3JyB0eXBlPSd0ZXh0JyB2YWx1ZT0nJyAvPjwvZGl2PjxkaXYgY2xhc3M9J2dmaWVsZF9kZXNjcmlwdGlvbicgaWQ9J2dmaWVsZF9kZXNjcmlwdGlvbl8xXzE3Jz5UaGlzIGZpZWxkIGlzIGZvciB2YWxpZGF0aW9uIHB1cnBvc2VzIGFuZCBzaG91bGQgYmUgbGVmdCB1bmNoYW5nZWQuPC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0nZ2Zvcm1fZm9vdGVyIGxlZnRfbGFiZWwnPiA8aW5wdXQgdHlwZT0nc3VibWl0JyBpZD0nZ2Zvcm1fc3VibWl0X2J1dHRvbl8xJyBjbGFzcz0nZ2Zvcm1fYnV0dG9uIGJ1dHRvbicgdmFsdWU9J1N1Ym1pdCcgIG9uY2xpY2s9J2lmKHdpbmRvd1siZ2Zfc3VibWl0dGluZ18xIl0pe3JldHVybiBmYWxzZTt9ICB3aW5kb3dbImdmX3N1Ym1pdHRpbmdfMSJdPXRydWU7ICAnIG9ua2V5cHJlc3M9J2lmKCBldmVudC5rZXlDb2RlID09IDEzICl7IGlmKHdpbmRvd1siZ2Zfc3VibWl0dGluZ18xIl0pe3JldHVybiBmYWxzZTt9IHdpbmRvd1siZ2Zfc3VibWl0dGluZ18xIl09dHJ1ZTsgIGpRdWVyeSgiI2dmb3JtXzEiKS50cmlnZ2VyKCJzdWJtaXQiLFt0cnVlXSk7IH0nIC8+IDxpbnB1dCB0eXBlPSdoaWRkZW4nIG5hbWU9J2dmb3JtX2FqYXgnIHZhbHVlPSdmb3JtX2lkPTEmYW1wO3RpdGxlPTEmYW1wO2Rlc2NyaXB0aW9uPTEmYW1wO3RhYmluZGV4PTAnIC8+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGNsYXNzPSdnZm9ybV9oaWRkZW4nIG5hbWU9J2lzX3N1Ym1pdF8xJyB2YWx1ZT0nMScgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fc3VibWl0JyB2YWx1ZT0nMScgLz4KICAgICAgICAgICAgCiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGNsYXNzPSdnZm9ybV9oaWRkZW4nIG5hbWU9J2dmb3JtX3VuaXF1ZV9pZCcgdmFsdWU9JycgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nc3RhdGVfMScgdmFsdWU9J1d5SmJYU0lzSWprNU5UWmlZak5pWWpjME5HUXdNV1ZqTmpZd01ERXhaV1UxWm1OaU0yVmhJbDA9JyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfMScgaWQ9J2dmb3JtX3RhcmdldF9wYWdlX251bWJlcl8xJyB2YWx1ZT0nMCcgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fc291cmNlX3BhZ2VfbnVtYmVyXzEnIGlkPSdnZm9ybV9zb3VyY2VfcGFnZV9udW1iZXJfMScgdmFsdWU9JzEnIC8+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIG5hbWU9J2dmb3JtX2ZpZWxkX3ZhbHVlcycgdmFsdWU9JycgLz4KICAgICAgICAgICAgCiAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwIHN0eWxlPSJkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7Ij48bGFiZWw+JiM5MTY7PHRleHRhcmVhIG5hbWU9ImFrX2hwX3RleHRhcmVhIiBjb2xzPSI0NSIgcm93cz0iOCIgbWF4bGVuZ3RoPSIxMDAiPjwvdGV4dGFyZWE+PC9sYWJlbD48aW5wdXQgdHlwZT0iaGlkZGVuIiBpZD0iYWtfanNfMSIgbmFtZT0iYWtfanMiIHZhbHVlPSI5MSIvPjxzY3JpcHQ+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoICJha19qc18xIiApLnNldEF0dHJpYnV0ZSggInZhbHVlIiwgKCBuZXcgRGF0ZSgpICkuZ2V0VGltZSgpICk7PC9zY3JpcHQ+PC9wPjwvZm9ybT4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgICA8aWZyYW1lIHN0eWxlPSdkaXNwbGF5Om5vbmU7d2lkdGg6MHB4O2hlaWdodDowcHg7JyBzcmM9J2Fib3V0OmJsYW5rJyBuYW1lPSdnZm9ybV9hamF4X2ZyYW1lXzEnIGlkPSdnZm9ybV9hamF4X2ZyYW1lXzEnIHRpdGxlPSdUaGlzIGlmcmFtZSBjb250YWlucyB0aGUgbG9naWMgcmVxdWlyZWQgdG8gaGFuZGxlIEFqYXggcG93ZXJlZCBHcmF2aXR5IEZvcm1zLic+PC9pZnJhbWU+CiAgICAgICAgICAgICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+Cmdmb3JtLmluaXRpYWxpemVPbkxvYWRlZCggZnVuY3Rpb24oKSB7Z2Zvcm1Jbml0U3Bpbm5lciggMSwgJ2h0dHBzOi8vYmVwb3ouY29tL3dwLWNvbnRlbnQvcGx1Z2lucy9ncmF2aXR5Zm9ybXMvaW1hZ2VzL3NwaW5uZXIuc3ZnJyApO2pRdWVyeSgnI2dmb3JtX2FqYXhfZnJhbWVfMScpLm9uKCdsb2FkJyxmdW5jdGlvbigpe3ZhciBjb250ZW50cyA9IGpRdWVyeSh0aGlzKS5jb250ZW50cygpLmZpbmQoJyonKS5odG1sKCk7dmFyIGlzX3Bvc3RiYWNrID0gY29udGVudHMuaW5kZXhPZignR0ZfQUpBWF9QT1NUQkFDSycpID49IDA7aWYoIWlzX3Bvc3RiYWNrKXtyZXR1cm47fXZhciBmb3JtX2NvbnRlbnQgPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcjZ2Zvcm1fd3JhcHBlcl8xJyk7dmFyIGlzX2NvbmZpcm1hdGlvbiA9IGpRdWVyeSh0aGlzKS5jb250ZW50cygpLmZpbmQoJyNnZm9ybV9jb25maXJtYXRpb25fd3JhcHBlcl8xJykubGVuZ3RoID4gMDt2YXIgaXNfcmVkaXJlY3QgPSBjb250ZW50cy5pbmRleE9mKCdnZm9ybVJlZGlyZWN0KCl7JykgPj0gMDt2YXIgaXNfZm9ybSA9IGZvcm1fY29udGVudC5sZW5ndGggPiAwICYmICEgaXNfcmVkaXJlY3QgJiYgISBpc19jb25maXJtYXRpb247dmFyIG10ID0gcGFyc2VJbnQoalF1ZXJ5KCdodG1sJykuY3NzKCdtYXJnaW4tdG9wJyksIDEwKSArIHBhcnNlSW50KGpRdWVyeSgnYm9keScpLmNzcygnbWFyZ2luLXRvcCcpLCAxMCkgKyAxMDA7aWYoaXNfZm9ybSl7alF1ZXJ5KCcjZ2Zvcm1fd3JhcHBlcl8xJykuaHRtbChmb3JtX2NvbnRlbnQuaHRtbCgpKTtpZihmb3JtX2NvbnRlbnQuaGFzQ2xhc3MoJ2dmb3JtX3ZhbGlkYXRpb25fZXJyb3InKSl7alF1ZXJ5KCcjZ2Zvcm1fd3JhcHBlcl8xJykuYWRkQ2xhc3MoJ2dmb3JtX3ZhbGlkYXRpb25fZXJyb3InKTt9IGVsc2Uge2pRdWVyeSgnI2dmb3JtX3dyYXBwZXJfMScpLnJlbW92ZUNsYXNzKCdnZm9ybV92YWxpZGF0aW9uX2Vycm9yJyk7fXNldFRpbWVvdXQoIGZ1bmN0aW9uKCkgeyAvKiBkZWxheSB0aGUgc2Nyb2xsIGJ5IDUwIG1pbGxpc2Vjb25kcyB0byBmaXggYSBidWcgaW4gY2hyb21lICovIGpRdWVyeShkb2N1bWVudCkuc2Nyb2xsVG9wKGpRdWVyeSgnI2dmb3JtX3dyYXBwZXJfMScpLm9mZnNldCgpLnRvcCAtIG10KTsgfSwgNTAgKTtpZih3aW5kb3dbJ2dmb3JtSW5pdERhdGVwaWNrZXInXSkge2dmb3JtSW5pdERhdGVwaWNrZXIoKTt9aWYod2luZG93WydnZm9ybUluaXRQcmljZUZpZWxkcyddKSB7Z2Zvcm1Jbml0UHJpY2VGaWVsZHMoKTt9dmFyIGN1cnJlbnRfcGFnZSA9IGpRdWVyeSgnI2dmb3JtX3NvdXJjZV9wYWdlX251bWJlcl8xJykudmFsKCk7Z2Zvcm1Jbml0U3Bpbm5lciggMSwgJ2h0dHBzOi8vYmVwb3ouY29tL3dwLWNvbnRlbnQvcGx1Z2lucy9ncmF2aXR5Zm9ybXMvaW1hZ2VzL3NwaW5uZXIuc3ZnJyApO2pRdWVyeShkb2N1bWVudCkudHJpZ2dlcignZ2Zvcm1fcGFnZV9sb2FkZWQnLCBbMSwgY3VycmVudF9wYWdlXSk7d2luZG93WydnZl9zdWJtaXR0aW5nXzEnXSA9IGZhbHNlO31lbHNlIGlmKCFpc19yZWRpcmVjdCl7dmFyIGNvbmZpcm1hdGlvbl9jb250ZW50ID0galF1ZXJ5KHRoaXMpLmNvbnRlbnRzKCkuZmluZCgnLkdGX0FKQVhfUE9TVEJBQ0snKS5odG1sKCk7aWYoIWNvbmZpcm1hdGlvbl9jb250ZW50KXtjb25maXJtYXRpb25fY29udGVudCA9IGNvbnRlbnRzO31zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7alF1ZXJ5KCcjZ2Zvcm1fd3JhcHBlcl8xJykucmVwbGFjZVdpdGgoY29uZmlybWF0aW9uX2NvbnRlbnQpO2pRdWVyeShkb2N1bWVudCkuc2Nyb2xsVG9wKGpRdWVyeSgnI2dmXzEnKS5vZmZzZXQoKS50b3AgLSBtdCk7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9jb25maXJtYXRpb25fbG9hZGVkJywgWzFdKTt3aW5kb3dbJ2dmX3N1Ym1pdHRpbmdfMSddID0gZmFsc2U7d3AuYTExeS5zcGVhayhqUXVlcnkoJyNnZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZV8xJykudGV4dCgpKTt9LCA1MCk7fWVsc2V7alF1ZXJ5KCcjZ2Zvcm1fMScpLmFwcGVuZChjb250ZW50cyk7aWYod2luZG93WydnZm9ybVJlZGlyZWN0J10pIHtnZm9ybVJlZGlyZWN0KCk7fX1qUXVlcnkoZG9jdW1lbnQpLnRyaWdnZXIoJ2dmb3JtX3Bvc3RfcmVuZGVyJywgWzEsIGN1cnJlbnRfcGFnZV0pO30gKTt9ICk7Cjwvc2NyaXB0Pgo=