{"name": "Trace #4704", "description": "An encoded Trace character, drawn on-chain from a 16-byte record. The record is real; the character it encodes is not necessarily the one you receive.", "attributes": [{"trait_type": "Stage", "value": "Encoded"}, {"trait_type": "Method", "value": "Binary"}, {"trait_type": "Form", "value": "Classic"}, {"trait_type": "Palette", "value": "Dark"}, {"trait_type": "Motion", "value": "Static"}], "image": "https://arweave.net/iF2jnQVJ58Q_uihOJCnb4511DX4NfjKlWCzXYvhste0/6061.png", "animation_url": "data:text/html;base64,PCFET0NUWVBFIGh0bWw+PGh0bWw+PGhlYWQ+PG1ldGEgY2hhcnNldD0ndXRmLTgnPjxzdHlsZT5odG1sLGJvZHl7bWFyZ2luOjA7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZDojMDAwfXN2Z3tkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMHZtaW47aGVpZ2h0OjEwMHZtaW47bWFyZ2luOmF1dG99PC9zdHlsZT48L2hlYWQ+PGJvZHk+PHNjcmlwdD53aW5kb3cuVD02MDYxO3dpbmRvdy5SPSdpVlNpSEFLQUd5MW9JSGhwQUFBPSc7PC9zY3JpcHQ+PHNjcmlwdD4vKiEgVHJhY2UgYXJ0aWZhY3RzIHJlbmRlcmVyIOKAlCByZW5kZXIodG9rZW5JZCwgcmVjb3JkKSAtPiBTVkcgc3RyaW5nLiBCdWlsdCAyMDI2LTA5LTI4LgogKiBEcmF3aW5nIGFuZCBTVkcgZXhwb3J0IGFyZSB0aGUgY29kZSBvZiB0aGUgVHJhY2UgYXJ0aWZhY3RzIHRvb2w7IGdseXBoIG91dGxpbmVzOiBEZWphVnUgU2FucyBNb25vIDIuMzQKICogKEJpdHN0cmVhbSBWZXJhIC8gRGVqYVZ1IGZvbnRzIGxpY2Vuc2UpLiBObyBleHRlcm5hbCBkZXBlbmRlbmNpZXMsIG5vIERPTS4gKi8KIWZ1bmN0aW9uKHQpe3ZhciBlPXt9LG49WyIwMDEwMCIsIjExMDAwIiwiMTAwMTEiLCIwMTExMCIsIjEwMDEwIiwiMTAwMDAiXSxzPSciVHJhY2VVc2VyIiwgIkRlamFWdSBTYW5zIE1vbm8iLCB1aS1tb25vc3BhY2UsIE1lbmxvLCBDb25zb2xhcywgbW9ub3NwYWNlJyxyPXtrOjUscmFtcDoiIMK34paR4paS4paT4paIIixxOjE0MDAsaW52OiEwLGJyOjAsY3Q6MSxnbToxLGJwOjAsd3A6MSxzaDowLHN0MjowLGJnbW9kZToiZmxvb2QiLGJsdjowLHNob3diZzohMCxjb250OiJnbHlwaCIsZm10OiJkZWMiLHJsZTohMCxsYXk6ImdyaWQiLGNvbHM6MjQsY2F1dG86ITAsYXI6MS42NixhcmF1dG86ITAsZ2g6MCxndjowLGZzYzoxLGdsOjAsZGlyOiJkYiIsc2M6LjE4LHNlOi42LHJzOjEsc2Q6NyxzcTouODgsb3g6MCxveTowLGVkZ2U6ImhhcmQiLGVnOi4zNSxyYzowLGJkOjAsZHA6MCx6c3JjOiJ2YWx1ZSIsZmc6LjQsYXo6MCxhemE6MCxhenM6LjMsYXpjOiExLGVsOjAsZWxhOjAsZWxzOi4yNSxkaXN0OjE0MDAsZGE6MCxkczouMyxmbHk6MCxmb2M6MTEwMCxpbmtUOi4wOCxiZ1Q6LjkzLG5lZzohMSx1c2VIZXg6ITEsaW5rSDoiIzE0MTQxMCIsYmdIOiIjZWRlZGVkIixzaG93Y2hhcjohMCx2Zm10OiJhdXRvIixhZnI6MTYsYWR1cjo0LHNwOjEscGxheTohMCxzaHBoOiJvcmRlciIsd2RpcjoidXAiLGZ4Ont9fTtbWyJkcmlmdCIsItC00YDQtdC50YQg0YDQsNGB0YHQtdC40LLQsNC90LjRjyIsLjUsLjVdLFsic2hpbW1lciIsItC80LXRgNGG0LDQvdC40LUg0LfQvdCw0LrQvtCyIiwuNCwxXSxbIndhdmUiLCLQstC+0LvQvdCwINC/0L7Rj9Cy0LvQtdC90LjRjyIsLjcsLjZdLFsiYnJlYXRoIiwi0LTRi9GF0LDQvdC40LUg0L/Qu9C+0YLQvdC+0YHRgtC4IiwuNSwuNV0sWyJyaXNlIiwi0L/QvtC00YrRkdC8INCz0YDQsNC00LjQtdC90YLQsCIsLjYsLjRdLFsidHlwZSIsItC/0LXRh9Cw0YLRjCDQv9C+INC/0L7RgNGP0LTQutGDIiwuNiwxXSxbImppdHRlciIsItC00YDQvtC20YwiLC4zLDFdLFsiZ2xpdGNocm93Iiwi0YHQsdC+0Lkg0YHRgtGA0L7QutC4IiwuNCwxXSxbImdyaWRkcmlmdCIsItC00YDQtdC50YQg0YHRgtGA0L7QuiIsLjQsLjhdLFsibmVncHVsc2UiLCLQvNC40LPQsNC90LjQtSDQvdC10LPQsNGC0LjQstC+0LwiLDEsLjRdXS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3IuZnhbdFswXV09e29uOiExLGFtcDp0WzJdLHNwZDp0WzNdfX0pO3ZhciBhLG89W10scD1udWxsLGk9e30sZD0hMSxsPW51bGw7dmFyIGM9e3dpZHRoOjE0MDAsaGVpZ2h0OjE0MDB9LGY9ezA6e2E6MTIzMyxiOlsxMzMsLTI5LDExMDAsMTUyMF0sYzoiTSA0ODMgNzUwIEwgNDgzIDc1MCBRIDQ4MyA4MDUgNTIxLjUgODQ1IFEgNTYwIDg4NSA2MTQgODg1IEwgNjE0IDg4NSBRIDY3MCA4ODUgNzEwIDg0NSBRIDc1MCA4MDUgNzUwIDc1MCBMIDc1MCA3NTAgUSA3NTAgNjk0IDcxMC41IDY1NSBRIDY3MSA2MTYgNjE0IDYxNiBMIDYxNCA2MTYgUSA1NTggNjE2IDUyMC41IDY1NCBRIDQ4MyA2OTIgNDgzIDc1MCBNIDYxNiAxMzYwIEwgNjE2IDEzNjAgUSA0NzUgMTM2MCA0MDUuNSAxMjA4IFEgMzM2IDEwNTYgMzM2IDc0NSBMIDMzNiA3NDUgUSAzMzYgNDM1IDQwNS41IDI4MyBRIDQ3NSAxMzEgNjE2IDEzMSBMIDYxNiAxMzEgUSA3NTggMTMxIDgyNy41IDI4MyBRIDg5NyA0MzUgODk3IDc0NSBMIDg5NyA3NDUgUSA4OTcgMTA1NiA4MjcuNSAxMjA4IFEgNzU4IDEzNjAgNjE2IDEzNjAgTSA2MTYgMTUyMCBMIDYxNiAxNTIwIFEgODU1IDE1MjAgOTc3LjUgMTMyNCBRIDExMDAgMTEyOCAxMTAwIDc0NSBMIDExMDAgNzQ1IFEgMTEwMCAzNjMgOTc3LjUgMTY3IFEgODU1IC0yOSA2MTYgLTI5IEwgNjE2IC0yOSBRIDM3NyAtMjkgMjU1IDE2NyBRIDEzMyAzNjMgMTMzIDc0NSBMIDEzMyA3NDUgUSAxMzMgMTEyOCAyNTUgMTMyNCBRIDM3NyAxNTIwIDYxNiAxNTIwIn0sMTp7YToxMjMzLGI6WzI0NiwwLDEwOTQsMTQ5M10sYzoiTSAyNzAgMCBMIDI3MCAxNzAgTCA1ODQgMTcwIEwgNTg0IDEzMTEgTCAyNDYgMTIzNSBMIDI0NiAxNDE5IEwgNTgyIDE0OTMgTCA3ODQgMTQ5MyBMIDc4NCAxNzAgTCAxMDk0IDE3MCBMIDEwOTQgMCBMIDI3MCAwIn0sIiAiOnthOjEyMzMsYjpbMCwwLDAsMF0sYzoiIn0sQTp7YToxMjMzLGI6WzM3LDAsMTE5NiwxNDkzXSxjOiJNIDgyOSA1NTEgTCA2MTYgMTMxNSBMIDQwMyA1NTEgTCA4MjkgNTUxIE0gMzcgMCBMIDQ5NCAxNDkzIEwgNzM5IDE0OTMgTCAxMTk2IDAgTCA5ODcgMCBMIDg3NyAzODkgTCAzNTQgMzg5IEwgMjQ2IDAgTCAzNyAwIn0sQzp7YToxMjMzLGI6WzEzOSwtMjksMTA3MywxNTIwXSxjOiJNIDEwNzMgMjYwIEwgMTA3MyA1MyBRIDk5NiAxMiA5MTUgLTguNSBRIDgzNCAtMjkgNzQzIC0yOSBMIDc0MyAtMjkgUSA0NTYgLTI5IDI5Ny41IDE3NCBRIDEzOSAzNzcgMTM5IDc0NSBMIDEzOSA3NDUgUSAxMzkgMTExMSAyOTguNSAxMzE1LjUgUSA0NTggMTUyMCA3NDMgMTUyMCBMIDc0MyAxNTIwIFEgODM0IDE1MjAgOTE1IDE0OTkuNSBRIDk5NiAxNDc5IDEwNzMgMTQzOCBMIDEwNzMgMTQzOCBMIDEwNzMgMTIzMSBRIDk5OSAxMjkyIDkxNCAxMzI0IFEgODI5IDEzNTYgNzQzIDEzNTYgTCA3NDMgMTM1NiBRIDU0NiAxMzU2IDQ0OCAxMjA0IFEgMzUwIDEwNTIgMzUwIDc0NSBMIDM1MCA3NDUgUSAzNTAgNDM5IDQ0OCAyODcgUSA1NDYgMTM1IDc0MyAxMzUgTCA3NDMgMTM1IFEgODMxIDEzNSA5MTUuNSAxNjcgUSAxMDAwIDE5OSAxMDczIDI2MCBMIDEwNzMgMjYwIn0sRTp7YToxMjMzLGI6WzE5NywwLDExMDIsMTQ5M10sYzoiTSAxOTcgMCBMIDE5NyAxNDkzIEwgMTA4MyAxNDkzIEwgMTA4MyAxMzIzIEwgMzk5IDEzMjMgTCAzOTkgODgxIEwgMTA1MyA4ODEgTCAxMDUzIDcxMSBMIDM5OSA3MTEgTCAzOTkgMTcwIEwgMTEwMiAxNzAgTCAxMTAyIDAgTCAxOTcgMCJ9LEk6e2E6MTIzMyxiOlsyMDEsMCwxMDMwLDE0OTNdLGM6Ik0gMjAxIDEzMjMgTCAyMDEgMTQ5MyBMIDEwMzAgMTQ5MyBMIDEwMzAgMTMyMyBMIDcxNyAxMzIzIEwgNzE3IDE3MCBMIDEwMzAgMTcwIEwgMTAzMCAwIEwgMjAxIDAgTCAyMDEgMTcwIEwgNTE0IDE3MCBMIDUxNCAxMzIzIEwgMjAxIDEzMjMifSxKOnthOjEyMzMsYjpbMTA5LC0yOSw5NTYsMTQ5M10sYzoiTSAxMDkgNjEgTCAxMDkgNjEgTCAxMDkgMjk3IFEgMjAwIDIxNiAyOTcgMTc1LjUgUSAzOTQgMTM1IDQ5OCAxMzUgTCA0OTggMTM1IFEgNjQxIDEzNSA2OTcuNSAyMDkuNSBRIDc1NCAyODQgNzU0IDQ4NyBMIDc1NCA0ODcgTCA3NTQgMTMyMyBMIDM3MyAxMzIzIEwgMzczIDE0OTMgTCA5NTYgMTQ5MyBMIDk1NiA0ODcgUSA5NTYgMjA1IDg1MC41IDg4IFEgNzQ1IC0yOSA0OTggLTI5IEwgNDk4IC0yOSBRIDQwMiAtMjkgMzA3IC03IFEgMjEyIDE1IDEwOSA2MSJ9LEw6e2E6MTIzMyxiOlsyMTUsMCwxMTM5LDE0OTNdLGM6Ik0gMjE1IDAgTCAyMTUgMTQ5MyBMIDQxOCAxNDkzIEwgNDE4IDE3MCBMIDExMzkgMTcwIEwgMTEzOSAwIEwgMjE1IDAifSxNOnthOjEyMzMsYjpbODYsMCwxMTQ1LDE0OTNdLGM6Ik0gODYgMCBMIDg2IDE0OTMgTCAzNTYgMTQ5MyBMIDYxNCA3MzMgTCA4NzQgMTQ5MyBMIDExNDUgMTQ5MyBMIDExNDUgMCBMIDk1OCAwIEwgOTU4IDEzMTkgTCA2OTIgNTMyIEwgNTM5IDUzMiBMIDI3MiAxMzE5IEwgMjcyIDAgTCA4NiAwIn0sWTp7YToxMjMzLGI6WzM3LDAsMTE5NiwxNDkzXSxjOiJNIDUxNCA2NzAgTCAzNyAxNDkzIEwgMjUyIDE0OTMgTCA2MTYgODM0IEwgOTc5IDE0OTMgTCAxMTk2IDE0OTMgTCA3MTcgNjcwIEwgNzE3IDAgTCA1MTQgMCBMIDUxNCA2NzAifSxaOnthOjEyMzMsYjpbMTU2LDAsMTE2OSwxNDkzXSxjOiJNIDE3OCAxMzIzIEwgMTc4IDE0OTMgTCAxMTQ3IDE0OTMgTCAxMTQ3IDEzMzkgTCAzNjcgMTcwIEwgMTE2OSAxNzAgTCAxMTY5IDAgTCAxNTYgMCBMIDE1NiAxNTQgTCA5MTUgMTMyMyBMIDE3OCAxMzIzIn0sYzp7YToxMjMzLGI6WzE5NSwtMjksMTA2MSwxMTQ3XSxjOiJNIDEwNjEgMjQ4IEwgMTA2MSA1NyBRIDk4NyAxNCA5MDguNSAtNy41IFEgODMwIC0yOSA3NDggLTI5IEwgNzQ4IC0yOSBRIDQ4OCAtMjkgMzQxLjUgMTI3IFEgMTk1IDI4MyAxOTUgNTU5IEwgMTk1IDU1OSBRIDE5NSA4MzUgMzQxLjUgOTkxIFEgNDg4IDExNDcgNzQ4IDExNDcgTCA3NDggMTE0NyBRIDgyOSAxMTQ3IDkwNiAxMTI2IFEgOTgzIDExMDUgMTA2MSAxMDYxIEwgMTA2MSAxMDYxIEwgMTA2MSA4NjggUSA5ODggOTMzIDkxNC41IDk2MiBRIDg0MSA5OTEgNzQ4IDk5MSBMIDc0OCA5OTEgUSA1NzUgOTkxIDQ4MiA4NzkgUSAzODkgNzY3IDM4OSA1NTkgTCAzODkgNTU5IFEgMzg5IDM1MiA0ODIuNSAyMzkuNSBRIDU3NiAxMjcgNzQ4IDEyNyBMIDc0OCAxMjcgUSA4NDQgMTI3IDkyMCAxNTYuNSBRIDk5NiAxODYgMTA2MSAyNDggTCAxMDYxIDI0OCJ9LGc6e2E6MTIzMyxiOlsxMjMsLTQ0MCwxMDQyLDExNDddLGM6Ik0gODU4IDU2OSBMIDg1OCA1NjkgUSA4NTggNzc2IDc5MC41IDg4My41IFEgNzIzIDk5MSA1OTQgOTkxIEwgNTk0IDk5MSBRIDQ1OSA5OTEgMzg4IDg4My41IFEgMzE3IDc3NiAzMTcgNTY5IEwgMzE3IDU2OSBRIDMxNyAzNjIgMzg4LjUgMjUzLjUgUSA0NjAgMTQ1IDU5NiAxNDUgTCA1OTYgMTQ1IFEgNzIzIDE0NSA3OTAuNSAyNTQgUSA4NTggMzYzIDg1OCA1NjkgTSAxMDQyIDExMTYgTCAxMDQyIDcyIFEgMTA0MiAtMTgwIDkyMyAtMzEwIFEgODA0IC00NDAgNTczIC00NDAgTCA1NzMgLTQ0MCBRIDQ5NyAtNDQwIDQxNCAtNDI2IFEgMzMxIC00MTIgMjQ4IC0zODUgTCAyNDggLTM4NSBMIDI0OCAtMjAzIFEgMzQ2IC0yNDkgNDI2IC0yNzEgUSA1MDYgLTI5MyA1NzMgLTI5MyBMIDU3MyAtMjkzIFEgNzIyIC0yOTMgNzkwIC0yMTIgUSA4NTggLTEzMSA4NTggNDUgTCA4NTggNDUgTCA4NTggNTMgTCA4NTggMTc4IFEgODE0IDg0IDczOCAzOCBRIDY2MiAtOCA1NTMgLTggTCA1NTMgLTggUSAzNTcgLTggMjQwIDE0OSBRIDEyMyAzMDYgMTIzIDU2OSBMIDEyMyA1NjkgUSAxMjMgODMzIDI0MCA5OTAgUSAzNTcgMTE0NyA1NTMgMTE0NyBMIDU1MyAxMTQ3IFEgNjYxIDExNDcgNzM2IDExMDQgUSA4MTEgMTA2MSA4NTggOTcxIEwgODU4IDk3MSBMIDg1OCAxMTE2IEwgMTA0MiAxMTE2In0sIsK3Ijp7YToxMjMzLGI6WzQ4OSw1NTksNzQxLDg2NF0sYzoiTSA0ODkgNTU5IEwgNDg5IDg2NCBMIDc0MSA4NjQgTCA3NDEgNTU5IEwgNDg5IDU1OSJ9LCLilogiOnthOjEyMzMsYjpbLTIwLC01MTIsMTI1MywxNTc2XSxjOiJNIDEyNTMgLTUxMiBMIC0yMCAtNTEyIEwgLTIwIDE1NzYgTCAxMjUzIDE1NzYgTCAxMjUzIC01MTIifSwi4paRIjp7YToxMjMzLGI6Wy0yMCwtNTEyLDEwOTQsMTU3Nl0sYzoiTSAxMDk0IC01MTIgTCA5MzQgLTUxMiBMIDkzNCAtMjUxIEwgMTA5NCAtMjUxIEwgMTA5NCAtNTEyIE0gNDU3IC01MTIgTCAyOTggLTUxMiBMIDI5OCAtMjUxIEwgNDU3IC0yNTEgTCA0NTcgLTUxMiBNIDc3NSAtMTQ3IEwgNjE2IC0xNDcgTCA2MTYgMTE0IEwgNzc1IDExNCBMIDc3NSAtMTQ3IE0gMTM4IC0xNDcgTCAtMjAgLTE0NyBMIC0yMCAxMTQgTCAxMzggMTE0IEwgMTM4IC0xNDcgTSAxMDk0IDIxOSBMIDkzNCAyMTkgTCA5MzQgNDgwIEwgMTA5NCA0ODAgTCAxMDk0IDIxOSBNIDQ1NyAyMTkgTCAyOTggMjE5IEwgMjk4IDQ4MCBMIDQ1NyA0ODAgTCA0NTcgMjE5IE0gNzc1IDU4NCBMIDYxNiA1ODQgTCA2MTYgODQ1IEwgNzc1IDg0NSBMIDc3NSA1ODQgTSAxMzggNTg0IEwgLTIwIDU4NCBMIC0yMCA4NDUgTCAxMzggODQ1IEwgMTM4IDU4NCBNIDEwOTQgOTUwIEwgOTM0IDk1MCBMIDkzNCAxMjExIEwgMTA5NCAxMjExIEwgMTA5NCA5NTAgTSA0NTcgOTUwIEwgMjk4IDk1MCBMIDI5OCAxMjExIEwgNDU3IDEyMTEgTCA0NTcgOTUwIE0gNzc1IDEzMTUgTCA2MTYgMTMxNSBMIDYxNiAxNTc2IEwgNzc1IDE1NzYgTCA3NzUgMTMxNSBNIDEzOCAxMzE1IEwgLTIwIDEzMTUgTCAtMjAgMTU3NiBMIDEzOCAxNTc2IEwgMTM4IDEzMTUifSwi4paSIjp7YToxMjMzLGI6Wy0yMCwtNTEyLDEyNTMsMTU3Nl0sYzoiTSAxMzggLTUxMiBMIDEzOCAtMjUxIEwgMjk4IC0yNTEgTCAyOTggLTUxMiBMIDEzOCAtNTEyIE0gLTIwIC0yNTEgTCAxMzggLTI1MSBMIDEzOCAxMCBMIC0yMCAxMCBMIC0yMCAtMjUxIE0gMjk4IDEwIEwgMTM4IDEwIEwgMTM4IDI3MSBMIDI5OCAyNzEgTCAyOTggMTAgTSAtMjAgMjcxIEwgMTM4IDI3MSBMIDEzOCA1MzIgTCAtMjAgNTMyIEwgLTIwIDI3MSBNIDI5OCA1MzIgTCAxMzggNTMyIEwgMTM4IDc5MyBMIDI5OCA3OTMgTCAyOTggNTMyIE0gLTIwIDc5MyBMIDEzOCA3OTMgTCAxMzggMTA1NCBMIC0yMCAxMDU0IEwgLTIwIDc5MyBNIDI5OCAxMDU0IEwgMTM4IDEwNTQgTCAxMzggMTMxNSBMIDI5OCAxMzE1IEwgMjk4IDEwNTQgTSAtMjAgMTMxNSBMIDEzOCAxMzE1IEwgMTM4IDE1NzYgTCAtMjAgMTU3NiBMIC0yMCAxMzE1IE0gMjk4IDEwIEwgMjk4IC0yNTEgTCA0NTcgLTI1MSBMIDYxNiAtMjUxIEwgNjE2IC01MTIgTCA0NTcgLTUxMiBMIDQ1NyAtMjUxIEwgNDU3IDEwIEwgMjk4IDEwIE0gMjk4IDUzMiBMIDI5OCAyNzEgTCA0NTcgMjcxIEwgNjE2IDI3MSBMIDYxNiAxMCBMIDQ1NyAxMCBMIDQ1NyAyNzEgTCA0NTcgNTMyIEwgMjk4IDUzMiBNIDI5OCAxMDU0IEwgMjk4IDc5MyBMIDQ1NyA3OTMgTCA2MTYgNzkzIEwgNjE2IDUzMiBMIDQ1NyA1MzIgTCA0NTcgNzkzIEwgNDU3IDEwNTQgTCAyOTggMTA1NCBNIDI5OCAxNTc2IEwgMjk4IDEzMTUgTCA0NTcgMTMxNSBMIDYxNiAxMzE1IEwgNjE2IDEwNTQgTCA0NTcgMTA1NCBMIDQ1NyAxMzE1IEwgNDU3IDE1NzYgTCAyOTggMTU3NiBNIDYxNiAxMCBMIDYxNiAtMjUxIEwgNzc1IC0yNTEgTCA5MzQgLTI1MSBMIDkzNCAtNTEyIEwgNzc1IC01MTIgTCA3NzUgLTI1MSBMIDc3NSAxMCBMIDYxNiAxMCBNIDYxNiA1MzIgTCA2MTYgMjcxIEwgNzc1IDI3MSBMIDkzNCAyNzEgTCA5MzQgMTAgTCA3NzUgMTAgTCA3NzUgMjcxIEwgNzc1IDUzMiBMIDYxNiA1MzIgTSA2MTYgMTA1NCBMIDYxNiA3OTMgTCA3NzUgNzkzIEwgOTM0IDc5MyBMIDkzNCA1MzIgTCA3NzUgNTMyIEwgNzc1IDc5MyBMIDc3NSAxMDU0IEwgNjE2IDEwNTQgTSA2MTYgMTU3NiBMIDYxNiAxMzE1IEwgNzc1IDEzMTUgTCA5MzQgMTMxNSBMIDkzNCAxMDU0IEwgNzc1IDEwNTQgTCA3NzUgMTMxNSBMIDc3NSAxNTc2IEwgNjE2IDE1NzYgTSA5MzQgMTAgTCA5MzQgLTI1MSBMIDEwOTQgLTI1MSBMIDEyNTMgLTI1MSBMIDEyNTMgLTUxMiBMIDEwOTQgLTUxMiBMIDEwOTQgLTI1MSBMIDEwOTQgMTAgTCA5MzQgMTAgTSA5MzQgNTMyIEwgOTM0IDI3MSBMIDEwOTQgMjcxIEwgMTI1MyAyNzEgTCAxMjUzIDEwIEwgMTA5NCAxMCBMIDEwOTQgMjcxIEwgMTA5NCA1MzIgTCA5MzQgNTMyIE0gOTM0IDEwNTQgTCA5MzQgNzkzIEwgMTA5NCA3OTMgTCAxMjUzIDc5MyBMIDEyNTMgNTMyIEwgMTA5NCA1MzIgTCAxMDk0IDc5MyBMIDEwOTQgMTA1NCBMIDkzNCAxMDU0IE0gOTM0IDE1NzYgTCA5MzQgMTMxNSBMIDEwOTQgMTMxNSBMIDEyNTMgMTMxNSBMIDEyNTMgMTA1NCBMIDEwOTQgMTA1NCBMIDEwOTQgMTMxNSBMIDEwOTQgMTU3NiBMIDkzNCAxNTc2In0sIuKWkyI6e2E6MTIzMyxiOlstMjAsLTUxMiwxMjUzLDE1NzZdLGM6Ik0gMjk4IC01MTIgTCAtMjAgLTUxMiBMIC0yMCAtMTQ3IEwgMTM4IC0xNDcgTCAxMzggMTE0IEwgLTIwIDExNCBMIC0yMCA1ODQgTCAxMzggNTg0IEwgMTM4IDg0NSBMIC0yMCA4NDUgTCAtMjAgMTMxNSBMIDEzOCAxMzE1IEwgMTM4IDE1NzYgTCA2MTYgMTU3NiBMIDYxNiAxMzE1IEwgNzc1IDEzMTUgTCA3NzUgMTU3NiBMIDEyNTMgMTU3NiBMIDEyNTMgLTUxMiBMIDEwOTQgLTUxMiBMIDEwOTQgLTI1MSBMIDkzNCAtMjUxIEwgOTM0IC01MTIgTCA0NTcgLTUxMiBMIDQ1NyAtMjUxIEwgMjk4IC0yNTEgTCAyOTggLTUxMiBNIDI5OCAxMjExIEwgMjk4IDk1MCBMIDQ1NyA5NTAgTCA0NTcgMTIxMSBMIDI5OCAxMjExIE0gOTM0IDEyMTEgTCA5MzQgOTUwIEwgMTA5NCA5NTAgTCAxMDk0IDEyMTEgTCA5MzQgMTIxMSBNIDYxNiA4NDUgTCA2MTYgNTg0IEwgNzc1IDU4NCBMIDc3NSA4NDUgTCA2MTYgODQ1IE0gMjk4IDQ4MCBMIDI5OCAyMTkgTCA0NTcgMjE5IEwgNDU3IDQ4MCBMIDI5OCA0ODAgTSA5MzQgNDgwIEwgOTM0IDIxOSBMIDEwOTQgMjE5IEwgMTA5NCA0ODAgTCA5MzQgNDgwIE0gNjE2IDExNCBMIDYxNiAtMTQ3IEwgNzc1IC0xNDcgTCA3NzUgMTE0IEwgNjE2IDExNCJ9fSxtPXt1bml0c1BlckVtOjIwNDgsY2hhclRvR2x5cGg6ZnVuY3Rpb24odCl7dmFyIGU9Zlt0XTtpZighZSlyZXR1cm57aW5kZXg6MCxhZHZhbmNlV2lkdGg6MTIzMyxnZXRQYXRoOmZ1bmN0aW9uKCl7cmV0dXJue2NvbW1hbmRzOltdfX19O2lmKCFlLnApe2Zvcih2YXIgbj1lLmMuc3BsaXQoIiAiKSxzPVtdLHI9MDtyPG4ubGVuZ3RoOyl7dmFyIGE9bltyKytdOyJRIj09PWE/KHMucHVzaCh7dHlwZToiUSIseDE6K25bcl0seTE6K25bcisxXSx4OituW3IrMl0seTorbltyKzNdfSkscis9NCk6KHMucHVzaCh7dHlwZTphLHg6K25bcl0seTorbltyKzFdfSkscis9Mil9ZS5wPXN9cmV0dXJue2luZGV4OjEsYWR2YW5jZVdpZHRoOmUuYSxnZXRQYXRoOmZ1bmN0aW9uKHQsbixzKXt2YXIgcj0xLzIwNDgqcyxhPVtdO3JldHVybiBlLnAuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgcz17dHlwZTplLnR5cGUseDp0K2UueCpyLHk6bistZS55KnJ9OyJRIj09PWUudHlwZSYmKHMueDE9dCtlLngxKnIscy55MT1uKy1lLnkxKnIpLGEucHVzaChzKX0pLHtjb21tYW5kczphfX19fX07ZnVuY3Rpb24gaCh0KXtyZXR1cm4oIjAiKygrdCkudG9TdHJpbmcoMTYpKS5zbGljZSgtMil9ZnVuY3Rpb24gdSh0KXt2YXIgZT0vXnJnYlwoKFxkKyksXHMqKFxkKyksXHMqKFxkKylcKSQvLmV4ZWModCk7cmV0dXJuIGU/IiMiK2goZVsxXSkraChlWzJdKStoKGVbM10pOlN0cmluZyh0KS50b0xvd2VyQ2FzZSgpfWZ1bmN0aW9uIGcoKXt2YXIgdD17ZmlsbFN0eWxlOiIjMDAwMDAwIixzdHJva2VTdHlsZToiIzAwMDAwMCIsbGluZVdpZHRoOjEsZm9udDoiMTBweCBzYW5zLXNlcmlmIixnbG9iYWxBbHBoYToxLHRleHRBbGlnbjoic3RhcnQiLHRleHRCYXNlbGluZToiYWxwaGFiZXRpYyJ9O3JldHVybntjYW52YXM6YyxnZXQgZmlsbFN0eWxlKCl7cmV0dXJuIHQuZmlsbFN0eWxlfSxzZXQgZmlsbFN0eWxlKGUpe3QuZmlsbFN0eWxlPXUoZSl9LGdldCBzdHJva2VTdHlsZSgpe3JldHVybiB0LnN0cm9rZVN0eWxlfSxzZXQgc3Ryb2tlU3R5bGUoZSl7dC5zdHJva2VTdHlsZT11KGUpfSxnZXQgbGluZVdpZHRoKCl7cmV0dXJuIHQubGluZVdpZHRofSxzZXQgbGluZVdpZHRoKGUpe2U+MCYmKHQubGluZVdpZHRoPWUpfSxnZXQgZm9udCgpe3JldHVybiB0LmZvbnR9LHNldCBmb250KGUpe3QuZm9udD1lfSxnZXQgZ2xvYmFsQWxwaGEoKXtyZXR1cm4gdC5nbG9iYWxBbHBoYX0sc2V0IGdsb2JhbEFscGhhKGUpe2U+PTAmJmU8PTEmJih0Lmdsb2JhbEFscGhhPWUpfSxnZXQgdGV4dEFsaWduKCl7cmV0dXJuIHQudGV4dEFsaWdufSxzZXQgdGV4dEFsaWduKGUpe3QudGV4dEFsaWduPWV9LGdldCB0ZXh0QmFzZWxpbmUoKXtyZXR1cm4gdC50ZXh0QmFzZWxpbmV9LHNldCB0ZXh0QmFzZWxpbmUoZSl7dC50ZXh0QmFzZWxpbmU9ZX0sc2V0VHJhbnNmb3JtOmZ1bmN0aW9uKCl7fSxzYXZlOmZ1bmN0aW9uKCl7fSxyZXN0b3JlOmZ1bmN0aW9uKCl7fSxmaWxsUmVjdDpmdW5jdGlvbigpe30sc3Ryb2tlUmVjdDpmdW5jdGlvbigpe30sZmlsbFRleHQ6ZnVuY3Rpb24oKXt9LGJlZ2luUGF0aDpmdW5jdGlvbigpe30sYXJjOmZ1bmN0aW9uKCl7fSxmaWxsOmZ1bmN0aW9uKCl7fSxzdHJva2U6ZnVuY3Rpb24oKXt9LG1vdmVUbzpmdW5jdGlvbigpe30sbGluZVRvOmZ1bmN0aW9uKCl7fSxtZWFzdXJlVGV4dDpmdW5jdGlvbihlKXt2YXIgbj1wYXJzZUZsb2F0KHQuZm9udCkscz1uLzIwNDgscj1BcnJheS5mcm9tKFN0cmluZyhlKSksYT0wO3IuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgZT1mW3RdO2UmJihhPU1hdGgubWF4KGEsZS5iWzNdKSl9KTt2YXIgbz1hKm4vMjA0ODtyZXR1cm4ibWlkZGxlIj09PXQudGV4dEJhc2VsaW5lJiYoby09NTMyKm4vMjA0OCkse3dpZHRoOjEyMzMqci5sZW5ndGgqcyxhY3R1YWxCb3VuZGluZ0JveEFzY2VudDpvfX19fXZhciBMPWcoKTtmdW5jdGlvbiB3KHQpe3ZhciBlPSgoOTMwMSp0KzQ5Mjk3KSUyMzMyODArMjMzMjgwKSUyMzMyODA7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuKGU9KDkzMDEqZSs0OTI5NyklMjMzMjgwKS8yMzMyODB9fWZ1bmN0aW9uIHkodCl7dmFyIGU9TWF0aC5yb3VuZCgyNTUqTWF0aC5tYXgoMCxNYXRoLm1pbigxLHQpKSk7cmV0dXJuInJnYigiK2UrIiwiK2UrIiwiK2UrIikifWZ1bmN0aW9uIHgoKXtyZXR1cm4gYS5uZWchPT1kfWZ1bmN0aW9uIHYodCl7cmV0dXJuIGEudXNlSGV4P3Q/W2EuYmdILGEuaW5rSF06W2EuaW5rSCxhLmJnSF06dD9beShhLmJnVCkseShhLmlua1QpXTpbeShhLmlua1QpLHkoYS5iZ1QpXX1mdW5jdGlvbiBiKCl7cmV0dXJuIHYoeCgpKVswXX1mdW5jdGlvbiBNKHQpe3JldHVybiBhLmZ4W3RdLm9uP2EuZnhbdF06bnVsbH1mdW5jdGlvbiBrKCl7cmV0dXJuIGEucmFtcC5sZW5ndGg/YS5yYW1wOiIgwrfilpHilpLilpPilogifWZ1bmN0aW9uIFEoKXtyZXR1cm4iY29kZSI9PT1hLmNvbnQmJigidGFwZSI9PT1hLmZtdHx8ImNhcmQiPT09YS5mbXQpfWZ1bmN0aW9uIFQodCl7dmFyIGU9aygpLHM9ZVt0XS5jb2RlUG9pbnRBdCgwKTtyZXR1cm4iaGV4Ij09PWEuZm10P3MudG9TdHJpbmcoMTYpLnRvVXBwZXJDYXNlKCk6Im9jdCI9PT1hLmZtdD8iMCIrcy50b1N0cmluZyg4KToiYmluIj09PWEuZm10P3MudG9TdHJpbmcoMik6ImI2NCI9PT1hLmZtdD9idG9hKFN0cmluZy5mcm9tQ2hhckNvZGUocz4+OCYyNTUsMjU1JnMpKS5yZXBsYWNlKC89KyQvLCIiKToiYW5zaSI9PT1hLmZtdD8iRVNDWyIrKDMwK3QpKyJtIjoiaXRhMiI9PT1hLmZtdD9uW3Qlbi5sZW5ndGhdOiJjaHIiPT09YS5mbXQ/dD9lW3RdOiLikKMiOlN0cmluZyhzKX1mdW5jdGlvbiBqKCl7dmFyIHQ9Yy53aWR0aCxlPWMuaGVpZ2h0LG49TWF0aC5taW4odCxlKSphLnNxO3JldHVybnt4Oih0LW4pLzIrYS5veCp0LHk6KGUtbikvMithLm95KmUsczpufX1mdW5jdGlvbiBFKCl7aWYocD1udWxsLG8ubGVuZ3RoKXt2YXIgdD1qKCksZT10LnMsbj1vLmxlbmd0aCxyPWZ1bmN0aW9uKCl7aWYoIWEuYXJhdXRvKXJldHVybiBhLmFyO0wuZm9udD0iMTAwcHggIitzO3ZhciB0PUwubWVhc3VyZVRleHQoIuKWiCIpLndpZHRofHw2MC4yO3JldHVybiBNYXRoLm1heCguMyxNYXRoLm1pbig0LDEwMC90KSl9KCk7aWYoYS5hcmF1dG8mJk1hdGguYWJzKGEuYXItcik+LjAxKXthLmFyPXI7dmFyIGQ9bnVsbDtkJiYoZC52YWx1ZT1yKTt2YXIgYz1udWxsO2MmJihjLnRleHRDb250ZW50PXIudG9GaXhlZCgyKSl9cj1hLmFyO3ZhciBmPWEuY29scztpZihhLmNhdXRvKXtmPU1hdGgubWF4KDIsTWF0aC5yb3VuZChNYXRoLnNxcnQobipyKSkpO2Zvcih2YXIgbT1NYXRoLm1heCgxLE1hdGgucm91bmQoZi9yKSk7ZiptPG47KWYrKyxtPU1hdGgubWF4KDEsTWF0aC5yb3VuZChmL3IpKTthLmNvbHM9TWF0aC5taW4oOTAsZik7dmFyIGg9bnVsbDtoJiYoaC52YWx1ZT1hLmNvbHMpO3ZhciB1PW51bGw7dSYmKHUudGV4dENvbnRlbnQ9YS5jb2xzKSxmPWEuY29sc31mb3IodmFyIGc9ZS9mLHk9TWF0aC5tYXgoMSxNYXRoLnJvdW5kKGUvKGcqcikpKSx4PWUveSx2PTA7Zip5PG4mJmY8NDAwJiZ2Kys8NDAwOylnPWUvKytmLHg9ZS8oeT1NYXRoLm1heCgxLE1hdGgucm91bmQoZS8oZypyKSkpKTtmKnk8biYmKHg9ZS8oeT1NYXRoLmNlaWwobi9mKSkpO3ZhciBiPWYqeSxNPWItbjtwPXtnYzpmLGdyOnksY3c6ZyxjaDp4LGNhcDpiLGVtcHR5Ok0sZnI6dCxhcjpyfSwiY29kZSIhPT1hLmNvbnR8fCJncmlkIj09PWEubGF5JiYhUSgpPyhpLmdjPWYsaS5ncj15LGkuZW1wdHk9TSk6KHAuZnJlZT1mdW5jdGlvbigpe3ZhciB0PWooKSxlPXQucyxuPXcoYS5zZCs3Nykscz1bXTtpZihRKCkpe3ZhciByPTEyLHA9bC5ob2xlc1BpdGNoLGk9bC5ob2xlc0NvbHMsZD1vLmxlbmd0aCxjPTEuMzUqcCooMSsuNiphLmdoKSxmPXIqcCsxLjkqcCooMSsuNiphLmd2KSxtPShlLWkqYykvTWF0aC5tYXgoMSxpLTEpLGg9TWF0aC5jZWlsKGQvaSksdT1oPjE/KGUtaCpmKS8oaC0xKTowO3JldHVybiBvLmZvckVhY2goZnVuY3Rpb24obyxkKXt2YXIgbD1kJWksaD1NYXRoLmZsb29yKGQvaSksZz10LngrbCooYyttKSxMPXQueStoKihmK3UpOyJzY2F0dGVyIj09PWEubGF5JiYoZz10LngrbigpKihlLWMpLEw9dC55K24oKSooZS1mKSkscy5wdXNoKHtvOm8seDpnK2MvMix5OkwrcipwLzIsZnM6cCpyLGhvbGU6ITAsaHM6cCxwZXI6cixyb3c6aCxjb2w6bH0pfSksc312YXIgZz0yKzE5OCpsLnRleHRNLzY3MTA4ODY0LEw9bC50ZXh0Vyx5PWZ1bmN0aW9uKHQpe3JldHVybiBBcnJheS5mcm9tKFN0cmluZyh0KSkubGVuZ3RoKkx9LHg9eSgiICIpKigxK2EuZ2gpLHY9W10sYj1bXSxNPTA7by5mb3JFYWNoKGZ1bmN0aW9uKHQpe3ZhciBuPXkodC50KTtiLmxlbmd0aCYmTSt4K24+ZSYmKHYucHVzaCh7aXRlbXM6Yix3Ok19KSxiPVtdLE09MCksTSs9KGIubGVuZ3RoP3g6MCkrbixiLnB1c2goe286dCx3Om59KX0pLGIubGVuZ3RoJiZ2LnB1c2goe2l0ZW1zOmIsdzpNfSk7dmFyIGs9di5sZW5ndGgsVD1rPjE/KGUtZykvKGstMSk6MDtyZXR1cm4gdi5mb3JFYWNoKGZ1bmN0aW9uKHIsbyl7dmFyIHA9ci5pdGVtcy5sZW5ndGgtMSxpPW89PT1rLTEsZD0icm93cyI9PT1hLmxheT9lLXIudzowOyJyb3dzIj09PWEubGF5JiZpJiZkPi40NSplJiYoZD0wKTt2YXIgbD1wPjA/ZC9wOjAsYz10LngsZj10LnkrbypUK2cvMjsiZmxvdyI9PT1hLmxheSYmKGMrPW4oKSpNYXRoLm1heCgwLGUtci53KSksci5pdGVtcy5mb3JFYWNoKGZ1bmN0aW9uKHIscCl7dmFyIGk9YytyLncvMixkPWY7InNjYXR0ZXIiPT09YS5sYXkmJihpPXQueCtuKCkqZSxkPXQueStuKCkqZSksImZsb3ciPT09YS5sYXkmJihkKz0obigpLS41KSpnKi40KSxzLnB1c2goe286ci5vLHg6aSx5OmQsZnM6Zyxob2xlOiExLHJvdzpvLGNvbDpwfSksYys9ci53K3grbH0pfSksc30oKSxpLmdjPTAsaS5ncj0wLGkuZW1wdHk9MCk7dmFyIGs9bnVsbDtrJiYoay50ZXh0Q29udGVudD0i0LrQu9C10YLQutCwICIrZy50b0ZpeGVkKDEpKyLDlyIreC50b0ZpeGVkKDEpKyIgcHgsINGB0LXRgtC60LAgIitmKyLDlyIreSsiLCDQv9GD0YHRgtGL0YUg0LrQu9C10YLQvtC6ICIrTSl9fWZ1bmN0aW9uIFModCl7dmFyIGU9W107aWYoIXApcmV0dXJuIGU7aWYocC5mcmVlKXJldHVybiBwLmZyZWUuZm9yRWFjaChmdW5jdGlvbih0LG4pe2UucHVzaCh7bzp0Lm8seDp0LngseTp0LnksZnM6dC5mcyxyb3c6dC5yb3cscnI6dC5yb3csY2M6dC5jb2x8fDAsaTpuLGhvbGU6dC5ob2xlLGhzOnQuaHMscGVyOnQucGVyfSl9KSxlO3ZhciBuLHM9TWF0aC5taW4ocC5jaCooMS0uNDUqYS5ndikscC5jdypwLmFyKigxLS40NSphLmdoKSkqYS5mc2Mscj0iY2FyZCI9PT1hLmZtdD8xMjo4LGk9ZnVuY3Rpb24odCl7aWYoIXApcmV0dXJuW107dmFyIGUsbj1wLmNhcCxzPW8ubGVuZ3RoLHI9W10saT13KGEuc2QpLGQ9dyhhLnNkKzEzKSxsPVtdLGM9W107Zm9yKGU9MDtlPG47ZSsrKWwucHVzaChpKCkpLGMucHVzaChkKCkpO3ZhciBmPU0oImRyaWZ0IiksbT1NKCJicmVhdGgiKSxoPU0oInJpc2UiKSx1PWY/LjUrLjUqTWF0aC5zaW4odCpmLnNwZCoxLjEpOjAsZz1hLnNjKm4qLjIyKihtPzErbS5hbXAqTWF0aC5zaW4odCptLnNwZCoxLjMpKi44OjEpLEw9aD9oLmFtcCpuKi4yNSooLjUtLjUqTWF0aC5jb3ModCpoLnNwZCouOSkpOjA7Zm9yKGU9MDtlPG47ZSsrKXt2YXIgeT1lPHM/b1tlXTp7dDoiIix2OjAscmFuazplLGVtcHR5OiEwfSx4PWY/bFtlXSooMS11KStjW2VdKnU6bFtlXSx2PXkucmFuaysoeC0uNSkqKHkuZW1wdHk/YS5zZSpuKi4yMjpnKS0oeS5lbXB0eT8wOkwpO3IucHVzaCh7bzp5LGs6dixqOmV9KX1pZihyLnNvcnQoZnVuY3Rpb24odCxlKXtyZXR1cm4gdC5rLWUua3x8dC5qLWUuan0pLGEucnM+MCl7dmFyIGIsayxRLFQsaj13KGEuc2QrMjkpO2ZvcihiPTA7YjxwLmdyO2IrKylmb3Ioaz1iKnAuZ2MsZT1NYXRoLm1pbihuLGsrcC5nYyktMTtlPms7ZS0tKWooKT5hLnJzfHwoUT1rK01hdGguZmxvb3IoaigpKihlLWsrMSkpLFQ9cltlXSxyW2VdPXJbUV0scltRXT1UKX1yZXR1cm4gcn0odCk7Zm9yKG49MDtuPHAuY2FwJiZuPGkubGVuZ3RoO24rKyl7dmFyIGQ9aVtuXS5vO2lmKCFkLmVtcHR5JiZkLnQpe3ZhciBsPXEobik7ZS5wdXNoKHtvOmQseDpsLngseTpsLnksZnM6cyxyb3c6bC5yb3cscnI6bC5ycixjYzpsLmNjLGk6bixob2xlOlEoKSxoczpNYXRoLm1heCguNixwLmNoKigxLS40KmEuZ3YpL3IpLHBlcjpyfSl9fXJldHVybiBlfWZ1bmN0aW9uIHEodCl7dmFyIGU9cC5nYyxuPXAuZ3Iscz10JWUscj1NYXRoLmZsb29yKHQvZSksbz1wLmZyLGk9cixkPXM7aWYoImRiIj09PWEuZGlyJiYoaT1uLTEtciksImRyIj09PWEuZGlyJiYoZD1lLTEtcyksImRsIj09PWEuZGlyfHwiZHIiPT09YS5kaXIpe3ZhciBsPWk7aT1NYXRoLmZsb29yKGQqbi9lKSxkPU1hdGguZmxvb3IobCplL24pfXJldHVybnt4Om8ueCtkKnAuY3crcC5jdy8yLHk6by55K2kqcC5jaCtwLmNoLzIscm93OnIsY29sOnMscnI6aSxjYzpkfX1mdW5jdGlvbiB6KHQsZSl7aWYoImhhcmQiPT09YS5lZGdlKXJldHVybiAxO3ZhciBuPU1hdGgubWluKHQueC1lLngsZS54K2Uucy10LngpLHM9TWF0aC5taW4odC55LWUueSxlLnkrZS5zLXQueSkscj1NYXRoLm1pbihuLHMpL2UucyxvPSJzb2Z0Ij09PWEuZWRnZXx8ImJvdGgiPT09YS5lZGdlPy4zNSphLmVnOjAscD1vPjA/ZnVuY3Rpb24odCxlLG4pe3JldHVybihuPU1hdGgubWF4KDAsTWF0aC5taW4oMSwobi10KS8oZS10KSkpKSpuKigzLTIqbil9KDAsbyxyKToxO2lmKGEucmM+MCl7dmFyIGk9KHQueC0oZS54K2Uucy8yKSkvKGUucy8yKSxkPSh0LnktKGUueStlLnMvMikpLyhlLnMvMiksbD1NYXRoLnBvdyhNYXRoLmFicyhpKSwyLygxLS43KmEucmMpKStNYXRoLnBvdyhNYXRoLmFicyhkKSwyLygxLS43KmEucmMpKTtsPjEmJihwKj1NYXRoLm1heCgwLDEtNioobC0xKSkpfXJldHVybiBwfWZ1bmN0aW9uIEEodCxlLG4pe3JldHVybiJjaGVja2VyIiE9PWEuc2hwaD8xLjcqZToxLjgqKHQuY2N8fDApK3QucnIqTWF0aC5QSX1mdW5jdGlvbiBQKHQpe3ZhciBlPWMud2lkdGgsbj1jLmhlaWdodCxyPU0oIm5lZ3B1bHNlIik7aWYoZD0hIXImJk1hdGguc2luKHQqci5zcGQqMik+MS1yLmFtcCxMLnNldFRyYW5zZm9ybSgxLDAsMCwxLDAsMCksTC5nbG9iYWxBbHBoYT0xLEwuZmlsbFN0eWxlPXYoeCgpKVsxXSxMLmZpbGxSZWN0KDAsMCxlLG4pLCFwKXJldHVybiBMLmZpbGxTdHlsZT1iKCksTC5mb250PShlLzM0KS50b0ZpeGVkKDApKyJweCAiK3Msdm9pZCBMLmZpbGxUZXh0KCLQt9C00LXRgdGMINC/0L7Rj9Cy0LjRgtGB0Y8g0LDRgNGC0LXRhNCw0LrRgiIsLjA2KmUsLjEqbik7dmFyIG89cC5mcjtpZihhLmdsPjAmJiFwLmZyZWUpe3ZhciBpO2ZvcihMLnNhdmUoKSxMLmdsb2JhbEFscGhhPS4yOCxMLnN0cm9rZVN0eWxlPWIoKSxMLmxpbmVXaWR0aD1hLmdsLEwuYmVnaW5QYXRoKCksaT0wO2k8PXAuZ2M7aSsrKUwubW92ZVRvKG8ueCtpKnAuY3csby55KSxMLmxpbmVUbyhvLngraSpwLmN3LG8ueStvLnMpO2ZvcihpPTA7aTw9cC5ncjtpKyspTC5tb3ZlVG8oby54LG8ueStpKnAuY2gpLEwubGluZVRvKG8ueCtvLnMsby55K2kqcC5jaCk7TC5zdHJva2UoKSxMLnJlc3RvcmUoKX12YXIgZj1TKHQpLG09Zi5sZW5ndGgsaD1NKCJ3YXZlIiksdT1NKCJzaGltbWVyIiksZz1NKCJ0eXBlIikseT1NKCJqaXR0ZXIiKSxRPU0oImdyaWRkcmlmdCIpLFQ9TSgiZ2xpdGNocm93Iiksaj1oP3QqaC5zcGQqLjQlMS4zNToyLEU9Zz9NYXRoLmZsb29yKHQqZy5zcGQqLjUlMS4yNSptKTptLHE9cC5mcmVlP01hdGgubWF4KDEsZi5sZW5ndGg/ZltmLmxlbmd0aC0xXS5yb3crMToxKTpwLmdyLFA9dyhhLnNkKzQxKSxCPWEuYXoqTWF0aC5QSS8xODA7YS5hemM/Qis9dCphLmF6cyouODpCKz1NYXRoLnNpbih0KmEuYXpzKSphLmF6YSpNYXRoLlBJO3ZhciBILEY9YS5lbCpNYXRoLlBJLzE4MCtNYXRoLnNpbih0KmEuZWxzKSphLmVsYSooTWF0aC5QSS8yLjIpLFI9YS5kaXN0KigxK01hdGguc2luKHQqYS5kcykqYS5kYSouNzUpLFc9TWF0aC5jb3MoQiksTz1NYXRoLnNpbihCKSxfPU1hdGguY29zKEYpLEM9TWF0aC5zaW4oRiksTj05MDAqYS5kcCxHPU1hdGgubWF4KDMwMCwxODAwKmEuZHArNzAwKSxJPWEuZmx5PjA/dCphLmZseSo0MjA6MCxKPWEuZHA8LjAwMSYmTWF0aC5hYnMoYS5heik8LjAwMSYmTWF0aC5hYnMoYS5lbCk8LjAwMSYmYS5mbHk8LjAwMSYmYS5kYTwuMDAxJiZhLmF6YTwuMDAxJiZhLmVsYTwuMDAxJiYhYS5hemMsVj1bXSwkPWsoKSxEPU1hdGgubWF4KDEsJC5sZW5ndGgtMSk7Zm9yKEg9MDtIPG07SCsrKWlmKCEoSD5FKSl7dmFyIFU9ZltIXSxaPVUueCxZPVUueSxLPTEsWD1VLmZzfHwxMDtpZigicmFnIiE9PWEuZWRnZSYmImJvdGgiIT09YS5lZGdlfHwoWis9KFAoKS0uNSkqYS5lZypYKjEuMSxZKz0oUCgpLS41KSphLmVnKlgqMS4xKSxRJiYoWis9TWF0aC5zaW4odCpRLnNwZCoxLjMrLjY1KlUucm93KSpRLmFtcCpYKjEuMiksVCYmTWF0aC5zaW4odCpULnNwZCozKzIuMSpVLnJvdyk+MS0uMzUqVC5hbXAmJihaKz0oTWF0aC5yYW5kb20oKS0uNSkqVC5hbXAqWCo0KSx5JiYoWis9KE1hdGgucmFuZG9tKCktLjUpKnkuYW1wKlgqLjUsWSs9KE1hdGgucmFuZG9tKCktLjUpKnkuYW1wKlgqLjUpLGgpe3ZhciB0dD0iZG93biI9PT1hLndkaXI/VS5yci9xOjEtVS5yci9xO0sqPTEtaC5hbXAraC5hbXAqTWF0aC5tYXgoMCxNYXRoLm1pbigxLDMqKGotdHQpKSl9aWYodSYmTWF0aC5zaW4odCp1LnNwZCo2K0EoVSxIKSk+MS0uOSp1LmFtcCYmKEsqPS4xNSksISgoSyo9eih7eDpaLHk6WX0sbykpPD0uMDEpKWlmKEopVi5wdXNoKHt4OloseTpZLHM6MSxhOkssdTpVLGk6SCx6OjB9KTtlbHNle3ZhciBldCxudD1aLWUvMixzdD1ZLW4vMixydD1udCpXKyhldD0idmFsdWUiPT09YS56c3JjPyhVLm8udi9ELS41KSpOOiJvcmRlciI9PT1hLnpzcmM/KEgvTWF0aC5tYXgoMSxtKS0uNSkqTjoicm93Ij09PWEuenNyYz8oVS5yb3clNy83LS41KSpOOih3KGEuc2QrMypIKSgpLS41KSpOKSpPLGF0PS1udCpPK2V0Klcsb3Q9c3QqXy1hdCpDLHB0PVIrKHN0KkMrYXQqXyk7aWYoYS5mbHk+MCYmKHB0PSgocHQrSSklRytHKSVHKzE0MCksIShwdDw2MCkpe3ZhciBpdD1hLmZvYy9wdCxkdD1lLzIrcnQqaXQsbHQ9bi8yK290Kml0O2lmKCEoZHQ8LTMwMHx8ZHQ+ZSszMDB8fGx0PC0zMDB8fGx0Pm4rMzAwKSl7aWYoYS5mZz4wJiZhLmRwPjApSyo9LjErLjkqTWF0aC5tYXgoMCxNYXRoLm1pbigxLDEuMjUtcHQvKDEuNiphLmRpc3QpKmEuZmcqMS4zKSk7Vi5wdXNoKHt4OmR0LHk6bHQsczppdCpSL2EuZm9jKihhLmZvYy9SKSxhOkssdTpVLGk6SCx6OnB0fSl9fX19aWYoIUomJlYubGVuZ3RoPDE0ZTMmJlYuc29ydChmdW5jdGlvbih0LGUpe3JldHVybiBlLnotdC56fSksYS5iZD4wKXt2YXIgY3Q9ZnVuY3Rpb24oKXt2YXIgdD1sLmZyYW1lO2lmKCF0KXJldHVybiBudWxsO3ZhciBlPWEuYmQvMisxLG49dFswXS8xMCxzPXRbMV0vMTAscj10WzJdLzEwLG89dFszXS8xMDtyZXR1cm57eDA6bitlLHkwOnMrZSx4MTpuK3ItZSx5MTpzK28tZX19KCk7aWYoY3Qpe3ZhciBmdD1hLmJkLzIrMTtMLmdsb2JhbEFscGhhPTEsTC5zdHJva2VTdHlsZT1iKCksTC5saW5lV2lkdGg9YS5iZCxMLnN0cm9rZVJlY3QoY3QueDAtZnQsY3QueTAtZnQsY3QueDEtY3QueDArMipmdCxjdC55MS1jdC55MCsyKmZ0KX19TC5maWxsU3R5bGU9YigpLEwudGV4dEFsaWduPSJjZW50ZXIiLEwudGV4dEJhc2VsaW5lPSJtaWRkbGUiO3ZhciBtdCxodD0wO2ZvcihIPTA7SDxWLmxlbmd0aDtIKyspe3ZhciB1dD1WW0hdLGd0PXV0LnU7aWYobXQ9Sj8xOmEuZm9jL3V0LnoqKGEuZGlzdC9hLmZvYyksTC5nbG9iYWxBbHBoYT1NYXRoLm1heCgwLE1hdGgubWluKDEsdXQuYSkpLGd0LmhvbGUpZm9yKHZhciBMdD1ndC5wZXJ8fDgsd3Q9TWF0aC5tYXgoLjUsKGd0LmhzfHwyKSptdCkseXQ9TWF0aC5tYXgoLjQsLjM0Knd0KSx4dD0zNypndC5vLnYrMyooZ3Quby5ydW58fDEpK3V0LmksdnQ9MDt2dDxMdDt2dCsrKXh0Pj52dCYxJiYoTC5iZWdpblBhdGgoKSxMLmFyYyh1dC54LHV0LnktTHQqd3QvMit2dCp3dCx5dCwwLDcpLEwuZmlsbCgpKTtlbHNle3ZhciBidD0oZ3QuZnN8fDEwKSptdDtpZihidDwuNiljb250aW51ZTtNYXRoLmFicyhidC1odCk+LjA1JiYoTC5mb250PWJ0LnRvRml4ZWQoMSkrInB4ICIrcyxodD1idCksTC5maWxsVGV4dChndC5vLnQsdXQueCx1dC55KX19TC5nbG9iYWxBbHBoYT0xLEwudGV4dEFsaWduPSJsZWZ0IixMLnRleHRCYXNlbGluZT0iYWxwaGFiZXRpYyJ9dmFyIEI9ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KHQpe2xldCBlPShNYXRoLnJvdW5kKDEwKnQpLzEwKS50b0ZpeGVkKDEpO3JldHVybiBlLmVuZHNXaXRoKCIuMCIpJiYoZT1lLnNsaWNlKDAsLTIpKSwiLTAiPT09ZSYmKGU9IjAiKSxlLnJlcGxhY2UoL14oLT8pMFwuLywiJDEuIil9ZnVuY3Rpb24gbih0LGUpe2xldCBuPSgrdC50b0ZpeGVkKGUpKS50b1N0cmluZygpO3JldHVybiItMCI9PT1uJiYobj0iMCIpLG4ucmVwbGFjZSgvXigtPykwXC4vLCIkMS4iKX1mdW5jdGlvbiByKHQpe2xldCBlPSIiO3JldHVybiB0LmZvckVhY2goKG4scyk9PntzJiYhKCItIj09PW5bMF18fCIuIj09PW5bMF0mJi9bLl0vLnRlc3QodFtzLTFdKSkmJihlKz0iICIpLGUrPW59KSxlfWZ1bmN0aW9uIGkodCl7cmV0dXJuIHQuZnJhbWVzLm1hcCh0PT57Y29uc3QgZT1uZXcgTWFwLG49e2JnOm51bGwsYm9yZGVyOm51bGwsaW5rOm5ldyBTZXR9LHM9e307Zm9yKGNvbnN0IHIgb2YgdClpZigiciI9PT1yWzBdKXtpZihuLmJnKXRocm93IG5ldyBFcnJvcigi0LLRgtC+0YDQvtC5IGZpbGxSZWN0Iik7bi5iZz1yWzVdfWVsc2UgaWYoInMiPT09clswXSluLmJvcmRlcj17eDpyWzFdLHk6clsyXSx3OnJbM10saDpyWzRdLGM6cls1XSxsdzpyWzZdfTtlbHNlIGlmKCJ0Ij09PXJbMF0pZS5zZXQoInQiK3JbMV0se2s6InQiLHM6clsyXSx4OnJbM10seTpyWzRdLGZzOnJbNV0sYTpyWzddfSksbi5pbmsuYWRkKHJbNl0pO2Vsc2UgaWYoImMiPT09clswXSl7Y29uc3QgdD1yWzFdO3NbdF09KHNbdF18fDApKzEsZS5zZXQoImMiK3QrIi4iK3NbdF0se2s6ImMiLHg6clsyXSx5OnJbM10scjpyWzRdLGE6cls2XX0pLG4uaW5rLmFkZChyWzVdKX1pZihuLmluay5zaXplPjEpdGhyb3cgbmV3IEVycm9yKCLQvdC10YHQutC+0LvRjNC60L4g0YbQstC10YLQvtCyINC60YDQsNGB0LrQuCDQsiDQutCw0LTRgNC1Iik7cmV0dXJuIG4uaW5rPVsuLi5uLmlua11bMF18fG51bGwse2VsOmUsbWV0YTpufX0pfWZ1bmN0aW9uIGQodCl7cmV0dXJuL14jKC4pXDEoLilcMiguKVwzJC8udGVzdCh0KT8iIyIrdFsxXSt0WzNdK3RbNV06dH1mdW5jdGlvbiBsKCl7bGV0IHQ9MDtyZXR1cm4oKT0+e2xldCBlPXQrKyxuPSIiO2Rve249ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6IltlJTI2XStuLGU9TWF0aC5mbG9vcihlLzI2KS0xfXdoaWxlKGU+PTApO3JldHVybiBufX1mdW5jdGlvbiBmKGUscyxhKXtjb25zdCBvPXt9O3MuZm9yRWFjaCh0PT57InQiPT09dC5rJiYob1t0LmZzXT0ob1t0LmZzXXx8MCkrMSl9KTtjb25zdCBwPSsoT2JqZWN0LmtleXMobykuc29ydCgodCxlKT0+b1tlXS1vW3RdKVswXXx8MTApLGk9e30sZD17fSxsPXt9O2xldCBjPSIiO2NvbnN0IGY9T2JqZWN0LnZhbHVlcyhlLm1ldHJpY3MpWzBdP09iamVjdC52YWx1ZXMoZS5tZXRyaWNzKVswXS5COjA7Zm9yKGNvbnN0IHQgaW4gZS5tZXRyaWNzKWlmKE1hdGguYWJzKGUubWV0cmljc1t0XS5CLWYpPi4wMSl0aHJvdyBuZXcgRXJyb3IoItGA0LDQt9C90LDRjyDQsdCw0LfQvtCy0LDRjyDQu9C40L3QuNGPIik7ZnVuY3Rpb24gaChlKXtpZighKGUgaW4gaSkpe2NvbnN0IG49YSgpO2lbZV09bjtjb25zdCBzPWZ1bmN0aW9uKGUsbil7Y29uc3Qgcz1tLmNoYXJUb0dseXBoKGUpO2lmKDA9PT1zLmluZGV4JiYiICIhPT1lKXRocm93IG5ldyBFcnJvcigi0LfQvdCw0LrQsCDQvdC10YIg0LIg0YjRgNC40YTRgtC1OiAiK0pTT04uc3RyaW5naWZ5KGUpKTtjb25zdCBhPW4vbS51bml0c1BlckVtLG89cy5hZHZhbmNlV2lkdGgqYSxwPXMuZ2V0UGF0aCgtby8yLDAsbik7bGV0IGk9IiIsZD0wLGw9MCxjPTAsZj0wLGg9IiI7Y29uc3QgdT10PT5NYXRoLnJvdW5kKDEwKnQpLzEwO2Zvcihjb25zdCBlIG9mIHAuY29tbWFuZHMpe2xldCBuLHM7aWYoIk0iPT09ZS50eXBlKXtjb25zdCB0PXUoZS54KSxyPXUoZS55KTtuPSJtIixzPVt0LWQsci1sXSxkPWM9dCxsPWY9cn1lbHNlIGlmKCJMIj09PWUudHlwZSl7Y29uc3QgdD11KGUueCkscj11KGUueSk7aWYodD09PWQmJnI9PT1sKWNvbnRpbnVlO3I9PT1sPyhuPSJoIixzPVt0LWRdKTp0PT09ZD8obj0idiIscz1bci1sXSk6KG49ImwiLHM9W3QtZCxyLWxdKSxkPXQsbD1yfWVsc2UgaWYoIlEiPT09ZS50eXBlKXtjb25zdCB0PXUoZS54MSkscj11KGUueTEpLGE9dShlLngpLG89dShlLnkpO249InEiLHM9W3QtZCxyLWwsYS1kLG8tbF0sZD1hLGw9b31lbHNlIGlmKCJDIj09PWUudHlwZSl7Y29uc3QgdD11KGUueDEpLHI9dShlLnkxKSxhPXUoZS54Miksbz11KGUueTIpLHA9dShlLngpLGk9dShlLnkpO249ImMiLHM9W3QtZCxyLWwsYS1kLG8tbCxwLWQsaS1sXSxkPXAsbD1pfWVsc2UgaWYoIloiPT09ZS50eXBlKXtpKz0ieiIsaD0ieiIsZD1jLGw9Zjtjb250aW51ZX1jb25zdCBhPXIocy5tYXAodCkpO2krPShuPT09aCYmIm0iIT09bj8iLSI9PT1hWzBdPyIiOiIgIjpuKSthLGg9bn1yZXR1cm57ZDppLGFkdjpvfX0oZSxwKTtjKz1zLmQ/JzxwYXRoIGlkPSInK24rJyIgZD0iJytzLmQrJyIvPic6JzxwYXRoIGlkPSInK24rJyIvPid9cmV0dXJuIGlbZV19cmV0dXJue3VzZTpmdW5jdGlvbihzLHIsbyxpKXtpPWl8fCIiLCJ0Ij09PXMuayYmKG89TWF0aC5yb3VuZChvK2Yqcy5mcy8xZTMpKTtjb25zdCB1PSJ0Ij09PXMuaz9mdW5jdGlvbihuKXtpZihuIGluIGQpcmV0dXJuIGRbbl07Y29uc3Qgcz1bLi4ubl07aWYoMT09PXMubGVuZ3RoKXJldHVybiBkW25dPWgobik7Y29uc3Qgcj1wL20udW5pdHNQZXJFbSxvPXMubWFwKHQ9Pm0uY2hhclRvR2x5cGgodCkuYWR2YW5jZVdpZHRoKnIpLGk9by5yZWR1Y2UoKHQsZSk9PnQrZSwwKSxsPWUubWV0cmljc1tuXS53KnAvMWUzO2lmKE1hdGguYWJzKGktbCk+LjA1KXRocm93IG5ldyBFcnJvcigi0YjQuNGA0LjQvdCwINGB0YLRgNC+0LrQuCDQvdC1INGB0YXQvtC00LjRgtGB0Y86ICIrbik7bGV0IGY9LWkvMix1PSIiO3MuZm9yRWFjaCgoZSxuKT0+e2NvbnN0IHM9aChlKSxyPWYrb1tuXS8yO2YrPW9bbl0sIiAiIT09ZSYmKHUrPSc8dXNlIGhyZWY9IiMnK3MrJyIgeD0iJyt0KHIpKyciLz4nKX0pO2NvbnN0IGc9YSgpO3JldHVybiBkW25dPWcsYys9JzxnIGlkPSInK2crJyI+Jyt1KyI8L2c+IixnfShzLnMpOmZ1bmN0aW9uKHQpe2NvbnN0IGU9bih0LDIpO2lmKCEoZSBpbiBsKSl7Y29uc3QgdD1hKCk7bFtlXT10LGMrPSc8Y2lyY2xlIGlkPSInK3QrJyIgcj0iJytlKyciLz4nfXJldHVybiBsW2VdfShzLnIpO2lmKCJ0Ij09PXMuayYmcy5mcyE9PXApe2NvbnN0IGU9bihzLmZzL3AsNCk7cmV0dXJuJzx1c2UgaHJlZj0iIycrdSsnIiB0cmFuc2Zvcm09Im1hdHJpeCgnK2UrIiAwIDAgIitlKyIgIit0KHIpKyIgIit0KG8pKycpIicraSsiLz4ifXJldHVybic8dXNlIGhyZWY9IiMnK3UrJyIgeD0iJyt0KHIpKyciIHk9IicrdChvKSsnIicraSsiLz4ifSxodG1sOigpPT5jLEYwOnAsQjpmfX1mdW5jdGlvbiBoKGUscyl7Y29uc3Qgcj1pKGUpLGE9ci5sZW5ndGgsbz1lLlcscD1lLkgsYz1sKCksbT1uZXcgU2V0O3IuZm9yRWFjaCh0PT50LmVsLmZvckVhY2goKHQsZSk9Pm0uYWRkKGUpKSk7Y29uc3QgaD1bXTtmb3IoY29uc3QgdCBvZiBtKXtjb25zdCBlPXIubWFwKGU9PmUuZWwuZ2V0KHQpfHxudWxsKSxuPWUuZmluZChCb29sZWFuKTtmb3IoY29uc3QgcyBvZiBlKWlmKHMmJihzLmZzIT09bi5mc3x8cy5yIT09bi5yfHxzLnMhPT1uLnMpKXRocm93IG5ldyBFcnJvcigi0YDQsNC30LzQtdGAL9C30L3QsNC6INC80LXQvdGP0LXRgtGB0Y86ICIrdCk7aC5wdXNoKHtrOnQsdHI6ZSxmaXJzdDpufSl9Y29uc3QgdT1mKGUsaC5tYXAodD0+dC5maXJzdCksYyksZz0odCxlLG4pPT51LnVzZSh0LmZpcnN0LGUsbiksTD1bXSx3PXt9LHk9e307ZnVuY3Rpb24geCh0LGUscyxyKXtsZXQgbz0iIixwPW51bGw7cmV0dXJuIGUuZm9yRWFjaCgodCxlKT0+e3ImJnQ9PT1wfHwocD10LG8rPSh0PT5uKE1hdGguZmxvb3IoMWU1KnQvYSkvMWUzLDMpKyIlIikoZSkrInsiK3ModCkrIn0iKX0pLHJ8fChvKz0iMTAwJXsiK3MoZVswXSkrIn0iKSwiQGtleWZyYW1lcyAiK3QrInsiK28rIn0ifWNvbnN0IHY9bihzLmR1ciwzKSsicyI7ZnVuY3Rpb24gYih0LGUsbixzKXtjb25zdCByPXQrZS5qb2luKCJ8Iik7aWYoIShyIGluIHcpKXtjb25zdCB0PWMoKTt3W3JdPXQsTC5wdXNoKHgodCxlLG4scykpfXJldHVybiB3W3JdfWNvbnN0IE09bmV3IE1hcCxrPSEhcy5zdGVwTW92ZTtmb3IoY29uc3QgZSBvZiBoKXtjb25zdCByPWUudHI7bGV0IG89ZS5maXJzdCxwPW8ueCxpPW8ueTtjb25zdCBkPVtdLGw9W10sZj1bXTtyLmZvckVhY2goZT0+e2U/KHA9ZS54LGk9ZS55LGYucHVzaChlLmEpKTpmLnB1c2goMCksZC5wdXNoKHQocC1vLngpKSxsLnB1c2godChpLW8ueSkpfSk7Y29uc3QgbT1NYXRoLm1heCguLi5mKTtpZihtPC4wMDUpY29udGludWU7Y29uc3QgaD1mLm1hcCh0PT5uKHQvbSwyKSk7bGV0IHU9IiI7aWYocy5hbmltYXRlZCl7Y29uc3QgdD1bXTtpZihkLnNvbWUodD0+IjAiIT09dCl8fGwuc29tZSh0PT4iMCIhPT10KSl7Y29uc3QgZT1iKCJtIixkLm1hcCgodCxlKT0+dCsiICIrbFtlXSksdD0+e2NvbnN0W2Usbl09dC5zcGxpdCgiICIpO3JldHVybiJ0cmFuc2Zvcm06dHJhbnNsYXRlKCIrZSsicHgiKygiMCIhPT1uPyIsIituKyJweCI6IiIpKyIpIn0sayk7dC5wdXNoKGUrIiAiK3YrKGs/IiBzdGVwLWVuZCI6IiBsaW5lYXIiKSsiIGluZmluaXRlIil9aWYoaC5zb21lKHQ9PiIxIiE9PXQpKXtjb25zdCBlPWIoIm8iLGgsdD0+Im9wYWNpdHk6Iit0LCEwKTt0LnB1c2goZSsiICIrdisiIHN0ZXAtZW5kIGluZmluaXRlIil9aWYodC5sZW5ndGgpe2NvbnN0IGU9dC5qb2luKCIsIik7aWYoIShlIGluIHkpKXtjb25zdCB0PWMoKTt5W2VdPXQsTC5wdXNoKCIuIit0KyJ7YW5pbWF0aW9uOiIrZSsifSIpfXU9eVtlXX19ZWxzZSBpZigxIT09YSl0aHJvdyBuZXcgRXJyb3IoItGB0YLQsNGC0LjRh9C90YvQuSDRgSDQvdC10YHQutC+0LvRjNC60LjQvNC4INC60LDQtNGA0LDQvNC4Iik7Y29uc3Qgdz1uKG0sMik7TS5oYXModSl8fE0uc2V0KHUsbmV3IE1hcCk7Y29uc3QgeD1NLmdldCh1KTt4Lmhhcyh3KXx8eC5zZXQodyxbXSkseC5nZXQodykucHVzaChnKGUsby54LG8ueSkpfWNvbnN0IFE9ci5tYXAodD0+ZCh0Lm1ldGEuYmcpKSxUPXIubWFwKHQ9PmQodC5tZXRhLmlua3x8clswXS5tZXRhLmluaykpLGo9KHQsZSk9PntpZih0LmV2ZXJ5KGU9PmU9PT10WzBdKSlyZXR1cm4gbnVsbDtjb25zdCBuPWIoZSx0LHQ9PmUrIjoiK3QsITApLHM9YygpO3JldHVybiBMLnB1c2goIi4iK3MrInthbmltYXRpb246IituKyIgIit2KyIgc3RlcC1lbmQgaW5maW5pdGV9Iiksc30sRT1zLmFuaW1hdGVkP2ooUSwiZmlsbCIpOm51bGwsUz1zLmFuaW1hdGVkP2ooVCwiZmlsbCIpOm51bGw7bGV0IHE9JzxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9IicrUVswXSsnIicrKEU/JyBjbGFzcz0iJytFKyciJzoiIikrIi8+Ijtjb25zdCB6PXJbMF0ubWV0YS5ib3JkZXI7aWYoeil7Y29uc3QgZT1zLmFuaW1hdGVkP2ooci5tYXAodD0+ZCh0Lm1ldGEuYm9yZGVyLmMpKSwic3Ryb2tlIik6bnVsbDtxKz0nPHJlY3QgeD0iJyt0KHoueCkrJyIgeT0iJyt0KHoueSkrJyIgd2lkdGg9IicrdCh6LncpKyciIGhlaWdodD0iJyt0KHouaCkrJyIgZmlsbD0ibm9uZSIgc3Ryb2tlPSInK2Qoei5jKSsnIiBzdHJva2Utd2lkdGg9Iicrbih6Lmx3LDIpKyciJysoZT8nIGNsYXNzPSInK2UrJyInOiIiKSsiLz4ifXErPSc8ZyBmaWxsPSInK1RbMF0rJyInKyhTPycgY2xhc3M9IicrUysnIic6IiIpKyI+Ijtmb3IoY29uc3RbdCxlXW9mIE0pe2xldCBuPSIiO2Zvcihjb25zdFt0LHNdb2YgZSluKz0iMSI9PT10P3Muam9pbigiIik6JzxnIG9wYWNpdHk9IicrdCsnIj4nK3Muam9pbigiIikrIjwvZz4iO3ErPXQ/JzxnIGNsYXNzPSInK3QrJyI+JytuKyI8L2c+IjpufXErPSI8L2c+IjtyZXR1cm4nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSInK28rJyIgaGVpZ2h0PSInK3ArJyIgdmlld0JveD0iMCAwICcrbysiICIrcCsnIj4nKyhMLmxlbmd0aD8iPHN0eWxlPiIrTC5qb2luKCIiKSsiPC9zdHlsZT4iOiIiKSsiPGRlZnM+Iit1Lmh0bWwoKSsiPC9kZWZzPiIrcSsiPC9zdmc+In1jb25zdCB1PTIqTWF0aC5QSSxnPXtzaGltbWVyOjYsbmVncHVsc2U6MixncmlkZHJpZnQ6MS4zLGdsaXRjaHJvdzozfTtmdW5jdGlvbiB3KHQsZSl7Y29uc3Qgbj10LmZ4W2VdO3JldHVybiJ3YXZlIj09PWU/MS4zNS8oLjQqbi5zcGQqdC5zcCk6dS8obi5zcGQqZ1tlXSp0LnNwKX1jb25zdCB5PXQ9Pm4oTWF0aC5mbG9vcigxZTUqdCkvMWUzLDMpKyIlIix4PXQ9Pm4odCw0KSsicyI7ZnVuY3Rpb24gdih0LGUsbil7aWYodD49MSlyZXR1cm5bWzAsbl1dO2lmKHQ8LTEpcmV0dXJuW1swLGVdXTtjb25zdCBzPU1hdGguYXNpbih0KS91LHI9LjUtcztyZXR1cm4gcz49MD9bWzAsbl0sW3MsZV0sW3Isbl1dOltbMCxlXSxbcixuXSxbcysxLGVdXX1mdW5jdGlvbiBiKHQpe2NvbnN0IGU9dC5tYXAoKHQsZSk9PltlLHRdKS5jb25jYXQoW1t0Lmxlbmd0aCx0WzBdXV0pLG49W2VbMF1dO2ZvcihsZXQgdD0xO3Q8ZS5sZW5ndGgtMTt0Kyspe2NvbnN0IHM9bltuLmxlbmd0aC0xXTtsZXQgcj0hMDtmb3IobGV0IG49ZS5pbmRleE9mKHMpKzE7bjw9dDtuKyspe2NvbnN0IGE9KGVbbl1bMF0tc1swXSkvKGVbdCsxXVswXS1zWzBdKTtpZihNYXRoLmFicyhzWzFdKyhlW3QrMV1bMV0tc1sxXSkqYS1lW25dWzFdKT4uMDEpe3I9ITE7YnJlYWt9fXJ8fG4ucHVzaChlW3RdKX1yZXR1cm4gbi5wdXNoKGVbZS5sZW5ndGgtMV0pLG59ZnVuY3Rpb24gTSh0LGUsbil7cmV0dXJuIkBrZXlmcmFtZXMgIit0KyJ7IitlLm1hcCgoW3QsZV0pPT55KHQpKyJ7IituKyI6IitlKyJ9Iikuam9pbigiIikrIn0ifWZ1bmN0aW9uIGsodCl7Y29uc3Qgbj1MLHI9TWF0aC5yYW5kb20saT1bXTtsZXQgZD1udWxsLGw9bnVsbDtvLmZvckVhY2goZnVuY3Rpb24odCxuKXtjb25zdCBzPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LCJydW4iKSxyPXQucnVuO2lmKGkucHVzaChbdCx0LnQscyxyXSksdC5fX2s9bix0LnQpe2NvbnN0IGU9bmV3IFN0cmluZyh0LnQpO2UuX19pZD1uLHQudD1lfU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJydW4iLHtjb25maWd1cmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGUuX19jdXI9bixyfX0pfSk7Y29uc3QgZj17Y2FudmFzOm4uY2FudmFzLGdldCBmaWxsU3R5bGUoKXtyZXR1cm4gbi5maWxsU3R5bGV9LHNldCBmaWxsU3R5bGUodCl7bi5maWxsU3R5bGU9dH0sZ2V0IHN0cm9rZVN0eWxlKCl7cmV0dXJuIG4uc3Ryb2tlU3R5bGV9LHNldCBzdHJva2VTdHlsZSh0KXtuLnN0cm9rZVN0eWxlPXR9LGdldCBsaW5lV2lkdGgoKXtyZXR1cm4gbi5saW5lV2lkdGh9LHNldCBsaW5lV2lkdGgodCl7bi5saW5lV2lkdGg9dH0sZ2V0IGZvbnQoKXtyZXR1cm4gbi5mb250fSxzZXQgZm9udCh0KXtuLmZvbnQ9dH0sZ2V0IGdsb2JhbEFscGhhKCl7cmV0dXJuIG4uZ2xvYmFsQWxwaGF9LHNldCBnbG9iYWxBbHBoYSh0KXtuLmdsb2JhbEFscGhhPXR9LGdldCB0ZXh0QWxpZ24oKXtyZXR1cm4gbi50ZXh0QWxpZ259LHNldCB0ZXh0QWxpZ24odCl7bi50ZXh0QWxpZ249dH0sZ2V0IHRleHRCYXNlbGluZSgpe3JldHVybiBuLnRleHRCYXNlbGluZX0sc2V0IHRleHRCYXNlbGluZSh0KXtuLnRleHRCYXNlbGluZT10fSxzZXRUcmFuc2Zvcm0odCxlLHMscixhLG8pe2lmKG4uc2V0VHJhbnNmb3JtKHQsZSxzLHIsYSxvKSwxIT09dHx8MCE9PWV8fDAhPT1zfHwxIT09cnx8MCE9PWF8fDAhPT1vKXRocm93IG5ldyBFcnJvcigidHJhbnNmb3JtIil9LHNhdmUoKXtuLnNhdmUoKX0scmVzdG9yZSgpe24ucmVzdG9yZSgpfSxmaWxsUmVjdCh0LGUscyxyKXtuLmZpbGxSZWN0KHQsZSxzLHIpLGQucHVzaChbInIiLHQsZSxzLHIsbi5maWxsU3R5bGUsbi5nbG9iYWxBbHBoYV0pfSxzdHJva2VSZWN0KHQsZSxzLHIpe24uc3Ryb2tlUmVjdCh0LGUscyxyKSxkLnB1c2goWyJzIix0LGUscyxyLG4uc3Ryb2tlU3R5bGUsbi5saW5lV2lkdGgsbi5nbG9iYWxBbHBoYV0pfSxmaWxsVGV4dCh0LGUscyl7aWYobi5maWxsVGV4dCh0LGUscyksImNlbnRlciIhPT1uLnRleHRBbGlnbnx8Im1pZGRsZSIhPT1uLnRleHRCYXNlbGluZSl0aHJvdyBuZXcgRXJyb3IoImFsaWduIik7ZC5wdXNoKFsidCIsdC5fX2lkLFN0cmluZyh0KSxlLHMscGFyc2VGbG9hdChuLmZvbnQpLG4uZmlsbFN0eWxlLG4uZ2xvYmFsQWxwaGFdKX0sYmVnaW5QYXRoKCl7bi5iZWdpblBhdGgoKSxsPVtdfSxhcmModCxlLHMscixhKXtuLmFyYyh0LGUscyxyLGEpLGwucHVzaChbdCxlLHNdKX0sZmlsbCgpe2lmKG4uZmlsbCgpLDEhPT1sLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoImFyY3MgIitsLmxlbmd0aCk7ZC5wdXNoKFsiYyIsZS5fX2N1cixsWzBdWzBdLGxbMF1bMV0sbFswXVsyXSxuLmZpbGxTdHlsZSxuLmdsb2JhbEFscGhhXSl9LG1vdmVUbygpe3Rocm93IG5ldyBFcnJvcigibW92ZVRvIil9LGxpbmVUbygpe3Rocm93IG5ldyBFcnJvcigibGluZVRvIil9LHN0cm9rZSgpe3Rocm93IG5ldyBFcnJvcigic3Ryb2tlIil9LG1lYXN1cmVUZXh0OnQ9Pm4ubWVhc3VyZVRleHQodCl9LG09W107bGV0IGgsdT1udWxsO3RyeXtjb25zdCBlPVMoMCksbj1wLmZyZWU/TWF0aC5tYXgoMSxlLmxlbmd0aD9lW2UubGVuZ3RoLTFdLnJvdysxOjEpOnAuZ3I7aWYoaD1lLm1hcCgodCxlKT0+W3Quby5fX2ssZSx0LngsdC55LHQuZnMsdC5yb3csdC5ycix0LmhvbGU/MTowLEEodCxlLGEuZnguc2hpbW1lciksImRvd24iPT09YS53ZGlyP3QucnIvbjoxLXQucnIvbl0pLEw9Zix0LmJhc2Upe2NvbnN0IHQ9e307Zm9yKGNvbnN0IGUgaW4gYS5meCl0W2VdPWEuZnhbZV0ub24sYS5meFtlXS5vbj0hMTt0cnl7ZD1bXSxQKDApLHU9ZH1maW5hbGx5e2Zvcihjb25zdCBlIGluIGEuZngpYS5meFtlXS5vbj10W2VdfX1NYXRoLnJhbmRvbT1mdW5jdGlvbih0KXtsZXQgZT10Pj4+MDtyZXR1cm4gZnVuY3Rpb24oKXtlfD0wLGU9ZSsxODMxNTY1ODEzfDA7bGV0IHQ9TWF0aC5pbXVsKGVeZT4+PjE1LDF8ZSk7cmV0dXJuIHQ9dCtNYXRoLmltdWwodF50Pj4+Nyw2MXx0KV50LCgodF50Pj4+MTQpPj4+MCkvNDI5NDk2NzI5Nn19KGEuc2QpO2Zvcihjb25zdCBlIG9mIHQudGltZXMpZD1bXSxQKGUpLG0ucHVzaChkKX1maW5hbGx5e0w9bixNYXRoLnJhbmRvbT1yLGkuZm9yRWFjaChmdW5jdGlvbih0KXtjb25zdCBlPXRbMF07ZS50PXRbMV0sZGVsZXRlIGUucnVuLHRbMl0mJihlLnJ1bj10WzNdKSxkZWxldGUgZS5fX2t9KX1jb25zdCBnPXt9O20uY29uY2F0KHU/W3VdOltdKS5mb3JFYWNoKHQ9PnQuZm9yRWFjaCh0PT57InQiPT09dFswXSYmKGdbdFsyXV09MSl9KSk7Y29uc3Qgdz17fTtuLnNhdmUoKSxuLmZvbnQ9IjEwMDBweCAiK3Msbi50ZXh0QWxpZ249ImxlZnQiO2Zvcihjb25zdCB0IGluIGcpe24udGV4dEJhc2VsaW5lPSJtaWRkbGUiO2NvbnN0IGU9bi5tZWFzdXJlVGV4dCh0KTtuLnRleHRCYXNlbGluZT0iYWxwaGFiZXRpYyI7Y29uc3Qgcz1uLm1lYXN1cmVUZXh0KHQpO3dbdF09e3c6ZS53aWR0aCxCOnMuYWN0dWFsQm91bmRpbmdCb3hBc2NlbnQtZS5hY3R1YWxCb3VuZGluZ0JveEFzY2VudH19cmV0dXJuIG4ucmVzdG9yZSgpLHtXOmMud2lkdGgsSDpjLmhlaWdodCxmcmFtZXM6bSxiYXNlOnUsdW5pdHMwOmgsbWV0cmljczp3fX1yZXR1cm57ZXhwb3J0U1ZHOmZ1bmN0aW9uKGUpe2lmKCFwKXRocm93IG5ldyBFcnJvcigi0YHQvdCw0YfQsNC70LAg0LfQsNCz0YDRg9C30LggUE5HINC/0LXRgNGB0L7QvdCw0LbQsCIpO2lmKCFtKXRocm93IG5ldyBFcnJvcigi0LfQsNCz0YDRg9C30Lgg0YTQsNC50Lsg0YjRgNC40YTRgtCwIOKAlCDRgtC+0YIg0LbQtSwg0LrQvtGC0L7RgNGL0Lwg0YDQuNGB0YPQtdGCINGF0L7Qu9GB0YI6INC40Lcg0L3QtdCz0L4g0LHQtdGA0YPRgtGB0Y8g0LrQvtC90YLRg9GA0Ysg0LfQvdCw0LrQvtCyIik7Y29uc3Qgcz1PYmplY3Qua2V5cyhhLmZ4KS5maWx0ZXIodD0+YS5meFt0XS5vbikscj1hLmF6YT4wfHxhLmVsYT4wfHxhLmRhPjB8fGEuYXpjfHxhLmZseT4wO3RyeXtpZigic3RhdGljIj09PWV8fCFzLmxlbmd0aCl7cmV0dXJue3N2ZzpoKGsoe3RpbWVzOlswXX0pLHthbmltYXRlZDohMSxkdXI6YS5hZHVyfSksYW5pbWF0ZWQ6ITF9fWlmKHIpdGhyb3cgbmV3IEVycm9yKCLQtNCy0LjQttC10L3QuNC1INC60LDQvNC10YDRiyAo0L7QsdC70ZHRgiwg0LLRi9GB0L7RgtCwLCDQvdCw0LXQt9C0LCDQv9GA0L7Qu9GR0YIpINC/0L7QutCwINC90LUg0Y3QutGB0L/QvtGA0YLQuNGA0YPQtdGC0YHRjyDQsiBTVkcg0YLQvtGH0L3QviIpO2NvbnN0IG89ZnVuY3Rpb24odCl7Y29uc3QgZT1PYmplY3Qua2V5cyh0LmZ4KS5maWx0ZXIoZT0+dC5meFtlXS5vbikuc29ydCgpO2lmKDI9PT1lLmxlbmd0aCYmIm5lZ3B1bHNlIj09PWVbMF0mJiJ3YXZlIj09PWVbMV0pe2NvbnN0IG49dyh0LCJuZWdwdWxzZSIpLHM9dyh0LCJ3YXZlIikscj1NYXRoLm1heChuLHMpLGE9ci9NYXRoLm1pbihuLHMpO2lmKE1hdGguYWJzKGEtTWF0aC5yb3VuZChhKSk+MWUtNCl0aHJvdyBuZXcgRXJyb3IoItC/0LXRgNC40L7QtNGLINC80LjQs9Cw0L3QuNGPINC4INCy0L7Qu9C90Ysg0L3QtSDQutGA0LDRgtC90Ys6ICIrbisiIC8gIitzKTtyZXR1cm57Zng6Im5lZ3B1bHNlK3dhdmUiLGZ4czplLHNwOnQuc3AsUDpyLFBuOm4sUHc6cyxORjowLHNhbXBsZVJlYWw6W10sY2hlY2tSZWFsOlsuLi5BcnJheSg4KV0ubWFwKCh0LGUpPT4oZSsuNSkqci84KSxjaGVja0ZyYW1lOm51bGwsbmVncHVsc2U6dC5meC5uZWdwdWxzZSx3YXZlOnQuZngud2F2ZX19aWYoMT09PWUubGVuZ3RoJiYid2F2ZSI9PT1lWzBdKXtjb25zdCBuPXcodCwid2F2ZSIpO3JldHVybntmeDoid2F2ZSIsZnhzOmUsc3A6dC5zcCxQOm4sUHc6bixORjowLHNhbXBsZVJlYWw6W10sY2hlY2tSZWFsOlsuLi5BcnJheSg4KV0ubWFwKCh0LGUpPT4oZSsuNSkqbi84KSxjaGVja0ZyYW1lOm51bGwsd2F2ZTp0LmZ4LndhdmV9fWlmKDEhPT1lLmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoItC+0LbQuNC00LDQu9GB0Y8g0L7QtNC40L0g0Y3RhNGE0LXQutGCINC40LvQuCDQvNC40LPQsNC90LjQtSvQstC+0LvQvdCwLCDQstC60LvRjtGH0LXQvdGLOiAiK2Uuam9pbigiLCIpKTtjb25zdCBuPWVbMF07aWYoIShuIGluIGcpKXRocm93IG5ldyBFcnJvcigi0Y3RhNGE0LXQutGCINC90LUg0YDQtdCw0LvQuNC30L7QstCw0L0gKNC90LXRgiDQvdC4INCyINC+0LTQvdC+0Lwg0L/RgNC10YHQtdGC0LUpOiAiK24pO2NvbnN0IHM9dC5meFtuXSxyPXMuc3BkKmdbbl0qdC5zcCxhPXUvcjtsZXQgbz0wOyJnbGl0Y2hyb3ciPT09biYmKG89MTYqTWF0aC5jZWlsKDMwKmEvMTYpKSwiZ3JpZGRyaWZ0Ij09PW4mJihvPTM2KTtjb25zdCBwPVsuLi5BcnJheShvKV0ubWFwKCh0LGUpPT5lKmEvbyksaT0iZ2xpdGNocm93Ij09PW4/Wy4uLkFycmF5KDgpXS5tYXAoKHQsZSk9PihlKm8vOCtvLzE2KSphL28pOlsuLi5BcnJheSg4KV0ubWFwKCh0LGUpPT4oZSsuNSkqYS84KSxkPSJnbGl0Y2hyb3ciPT09bj9bLi4uQXJyYXkoOCldLm1hcCgodCxlKT0+ZSpvLzgrby8xNik6bnVsbDtyZXR1cm57Zng6bixhbXA6cy5hbXAsc3BkOnMuc3BkLHNwOnQuc3AsUDphLE5GOm8sc2FtcGxlUmVhbDpwLGNoZWNrUmVhbDppLGNoZWNrRnJhbWU6ZH19KGEpLHA9ZnVuY3Rpb24oZSxzLHIpe2NvbnN0IGE9bCgpLG89aSh7ZnJhbWVzOltlLmJhc2VdfSlbMF0scD1lLmZyYW1lcy5sZW5ndGg/aShlKTpbXSxjPW5ldyBNYXAoZS51bml0czAubWFwKHQ9Plt0WzBdLHtrOnRbMF0saTp0WzFdLHg6dFsyXSx5OnRbM10sZnM6dFs0XSxyb3c6dFs1XSxycjp0WzZdLGhvbGU6dFs3XSxwaDp0WzhdLGtrOnRbOV19XSkpLG09bmV3IE1hcDtmb3IoY29uc3RbdCxlXW9mIG8uZWwpe2NvbnN0IG49K3Quc2xpY2UoMSkuc3BsaXQoIi4iKVswXTttLmhhcyhuKXx8bS5zZXQobix7azpuLHJlY3M6W10sa2V5czpbXSxpbmY6Yy5nZXQobil9KSxtLmdldChuKS5yZWNzLnB1c2goZSksbS5nZXQobikua2V5cy5wdXNoKHQpfWZvcihjb25zdCB0IG9mIG0udmFsdWVzKCkpaWYoIXQuaW5mKXRocm93IG5ldyBFcnJvcigi0L3QtdGCIHVuaXRzKCkg0LTQu9GPINGN0LvQtdC80LXQvdGC0LAgIit0LmspO2NvbnN0IGg9ZihlLFsuLi5vLmVsLnZhbHVlcygpXSxhKSxnPVtdLEw9W10sdz1yLlAsaz14KHcpLFE9KHQsZSk9PntpZigxPT09dC5yZWNzLmxlbmd0aCYmInQiPT09dC5yZWNzWzBdLmspcmV0dXJuIGgudXNlKHQucmVjc1swXSx0LnJlY3NbMF0ueCx0LnJlY3NbMF0ueSxlKTtjb25zdCBuPXQucmVjcy5tYXAodD0+aC51c2UodCx0LngsdC55KSkuam9pbigiIik7cmV0dXJuIGU/IjxnIitlKyI+IituKyI8L2c+IjpufSxUPXQ9Pm4odC5yZWNzWzBdLmEsMiksaj17fTtsZXQgRT1kKG8ubWV0YS5pbmspLFM9ZChvLm1ldGEuYmcpLHE9IiIsej0iIixBPSIiLFA9IiI7aWYoInNoaW1tZXIiPT09ci5meCl7Y29uc3QgdD0xLS45KnIuYW1wLGU9YSgpO2cucHVzaChNKGUsdih0LCIuMTUiLCIxIiksIm9wYWNpdHkiKSk7Y29uc3Qgcz1hKCk7Zy5wdXNoKCIuIitzKyI+KnthbmltYXRpb246IitlKyIgIitrKyIgc3RlcC1lbmQgaW5maW5pdGV9Iik7Y29uc3Qgbz1uZXcgTWFwO2Zvcihjb25zdCB0IG9mIG0udmFsdWVzKCkpe2NvbnN0IGU9KHQuaW5mLnBoJXUrdSkldS91Kncscz1lPjVlLTU/JyBzdHlsZT0iYW5pbWF0aW9uLWRlbGF5Oi0nK24oZSw0KS5yZXBsYWNlKC9eLS8sIiIpKydzIic6IiIscj1UKHQpO28uaGFzKHIpfHxvLnNldChyLFtdKSxvLmdldChyKS5wdXNoKFEodCxzKSl9Zm9yKGNvbnN0W3QsZV1vZiBvKVArPSc8ZyBjbGFzcz0iJytzKyciJysoIjEiPT09dD8iIjonIG9wYWNpdHk9IicrdCsnIicpKyI+IitlLmpvaW4oIiIpKyI8L2c+In1lbHNlIGlmKCJuZWdwdWxzZSI9PT1yLmZ4fHwibmVncHVsc2Urd2F2ZSI9PT1yLmZ4fHwid2F2ZSI9PT1yLmZ4KXtjb25zdCB0PSJuZWdwdWxzZSI9PT1yLmZ4P3I6IndhdmUiPT09ci5meD9udWxsOnthbXA6ci5uZWdwdWxzZS5hbXAsUDpyLlBufTtpZih0KXtjb25zdCBlPTEtdC5hbXAsbj14KHQuUCkscz1hKCkscj1hKCk7aWYoZy5wdXNoKE0ocyx2KGUsUyxFKSwiZmlsbCIpKSxnLnB1c2goTShyLHYoZSxFLFMpLCJmaWxsIikpLHE9YSgpLHo9YSgpLGcucHVzaCgiLiIrcSsie2FuaW1hdGlvbjoiK3MrIiAiK24rIiBzdGVwLWVuZCBpbmZpbml0ZX0uIit6KyJ7YW5pbWF0aW9uOiIrcisiICIrbisiIHN0ZXAtZW5kIGluZmluaXRlfSIpLG8ubWV0YS5ib3JkZXIpe2NvbnN0IHQ9YSgpO2cucHVzaChNKHQsdihlLFMsRSksInN0cm9rZSIpKSxBPWEoKSxnLnB1c2goIi4iK0ErInthbmltYXRpb246Iit0KyIgIituKyIgc3RlcC1lbmQgaW5maW5pdGV9Iil9fWNvbnN0IGU9bmV3IE1hcDtpZihyLndhdmUpe2NvbnN0IHQ9bigxLXIud2F2ZS5hbXAsMykscz14KHIuUHcpO2oud2F2ZVJvd3M9e307Zm9yKGNvbnN0IG4gb2YgbS52YWx1ZXMoKSl7Y29uc3Qgcj0rbi5pbmYua2sudG9GaXhlZCg2KTtpZighZS5oYXMocikpe2NvbnN0IG49YSgpLG89ci8xLjM1LHA9KHIrMS8zKS8xLjM1O2lmKHA+PTEpdGhyb3cgbmV3IEVycm9yKCLRhNGA0L7QvdGCINCy0L7Qu9C90Ysg0L3QtSDRg9GB0L/QtdCy0LDQtdGCINC00L4g0YHQsdGA0L7RgdCwIik7Y29uc3QgaT0iMCV7b3BhY2l0eToiK3QrIn0iKyhvPjA/eShvKSsie29wYWNpdHk6Iit0KyJ9IjoiIikreShwKSsie29wYWNpdHk6MX0iO2cucHVzaCgiQGtleWZyYW1lcyAiK24rInsiK2krIn0iKTtjb25zdCBkPWEoKTtnLnB1c2goIi4iK2QrInthbmltYXRpb246IituKyIgIitzKyIgbGluZWFyIGluZmluaXRlfSIpLGUuc2V0KHIse2NsOmQsdGFnczpuZXcgTWFwfSksai53YXZlUm93c1tkXT1yfX19Y29uc3Qgcz1uZXcgTWFwO2Zvcihjb25zdCB0IG9mIG0udmFsdWVzKCkpe2NvbnN0IG49VCh0KSxhPXIud2F2ZT9lLmdldCgrdC5pbmYua2sudG9GaXhlZCg2KSkudGFnczpzO2EuaGFzKG4pfHxhLnNldChuLFtdKSxhLmdldChuKS5wdXNoKFEodCwiIikpfWNvbnN0IHA9dD0+e2xldCBlPSIiO2Zvcihjb25zdFtuLHNdb2YgdCllKz0iMSI9PT1uP3Muam9pbigiIik6JzxnIG9wYWNpdHk9IicrbisnIj4nK3Muam9pbigiIikrIjwvZz4iO3JldHVybiBlfTtpZihyLndhdmUpZm9yKGNvbnN0IHQgb2YgZS52YWx1ZXMoKSlQKz0nPGcgY2xhc3M9IicrdC5jbCsnIj4nK3AodC50YWdzKSsiPC9nPiI7ZWxzZSBQKz1wKHMpfWVsc2UgaWYoImdyaWRkcmlmdCI9PT1yLmZ4KXtjb25zdCBlPSEocy5kcD4wfHxzLmF6fHxzLmVsfHxzLmZseXx8cy5kYXx8cy5hemF8fHMuZWxhfHxzLmF6Yyksbz0odCxlKT0+TWF0aC5zaW4odCpyLnNwKnIuc3BkKjEuMysuNjUqZSk7bGV0IGk9MCxkPTA7Y29uc3QgbD1uZXcgTWFwLGM9bmV3IE1hcCxmPW5ldyBNYXA7Zm9yKGNvbnN0IHMgb2YgbS52YWx1ZXMoKSl7Y29uc3QgbT1yLmFtcCoocy5pbmYuZnN8fDEwKSoxLjIsaD1zLmtleXNbMF0seD1bXSx2PVtdO3AuZm9yRWFjaCgodCxlKT0+e2NvbnN0IG49dC5lbC5nZXQoaCk7eC5wdXNoKG4/bi54Om51bGwpLHYucHVzaChuP24uYTowKX0pO2xldCBNPTE7aWYoIWUpe2xldCB0PTAsZT0wO3guZm9yRWFjaCgobixhKT0+e2lmKG51bGw9PT1uKXJldHVybjtjb25zdCBwPW0qbyhyLnNhbXBsZVJlYWxbYV0scy5pbmYucm93KTt0Kz0obi1zLnJlY3NbMF0ueCkqcCxlKz1wKnB9KSxNPWU+MD90L2U6MX1jb25zdCBUPW0qTTt4LmZvckVhY2goKHQsZSk9PntpZihudWxsPT09dClyZXR1cm47Y29uc3Qgbj1NYXRoLmFicyh0LShzLnJlY3NbMF0ueCtUKm8oci5zYW1wbGVSZWFsW2VdLHMuaW5mLnJvdykpKTtuPmkmJihpPW4pfSk7Y29uc3Qgaj10KFQpO2lmKCFsLmhhcyhqKSl7Y29uc3QgZT1hKCk7bGV0IG49IiI7Zm9yKGxldCBlPTE7ZTwzNjtlKyspbis9eShlLzM2KSsie3RyYW5zbGF0ZToiK3QoK2oqTWF0aC5zaW4odSplLzM2KSkrInB4fSI7Zy5wdXNoKCJAa2V5ZnJhbWVzICIrZSsieyIrbisifSIpO2NvbnN0IHM9YSgpO2cucHVzaCgiLiIrcysie2FuaW1hdGlvbjoiK2UrIiAiK2srIiBsaW5lYXIgaW5maW5pdGV9IiksbC5zZXQoaixzKX1jb25zdCBFPS42NSpzLmluZi5yb3cldS91O2lmKCFjLmhhcyhzLmluZi5yb3cpKXtjb25zdCB0PWEoKTtjLnNldChzLmluZi5yb3csdCk7Y29uc3QgZT1FKnc7ZT41ZS01JiZMLnB1c2goIi4iK3QrInthbmltYXRpb24tZGVsYXk6LSIrbihlLDQpKyJzfSIpfWNvbnN0IFM9TWF0aC5tYXgoLi4udik7bGV0IHEsejtpZihTLU1hdGgubWluKC4uLnYpPi4wMSl7ZCsrO2NvbnN0IHQ9YSgpO2cucHVzaCgiQGtleWZyYW1lcyAiK3QrInsiK2IodikubWFwKChbdCxlXSk9PnkodC92Lmxlbmd0aCkrIntvcGFjaXR5OiIrbihlLDIpKyJ9Iikuam9pbigiIikrIn0iKTtjb25zdCBlPWEoKTtnLnB1c2goIi4iK2UrInthbmltYXRpb246Iit0KyIgIitrKyIgbGluZWFyIGluZmluaXRlfSIpLHE9UShzLCcgY2xhc3M9IicrZSsnIicpLHo9IjEifWVsc2UgcT1RKHMsIiIpLHo9bihTLDIpO2NvbnN0IEE9bC5nZXQoaikrIiAiK2MuZ2V0KHMuaW5mLnJvdyk7Zi5oYXMoQSl8fGYuc2V0KEEsbmV3IE1hcCk7Y29uc3QgUD1mLmdldChBKTtQLmhhcyh6KXx8UC5zZXQoeixbXSksUC5nZXQoeikucHVzaChxKX1mb3IoY29uc3RbdCxlXW9mIGYpe2xldCBuPSIiO2Zvcihjb25zdFt0LHNdb2YgZSluKz0iMSI9PT10P3Muam9pbigiIik6JzxnIG9wYWNpdHk9IicrdCsnIj4nK3Muam9pbigiIikrIjwvZz4iO1ArPSc8ZyBjbGFzcz0iJyt0KyciPicrbisiPC9nPiJ9ai5tYXhSZXNpZHVhbFB4PStpLnRvRml4ZWQoMyksai5vcGFjaXR5VHJhY2tzPWQsai5mbGF0PWUsai5hbXBsaXR1ZGVzPWwuc2l6ZSxqLnJvd3M9Yy5zaXplfWVsc2UgaWYoImdsaXRjaHJvdyI9PT1yLmZ4KXtjb25zdCBlPW5ldyBNYXA7bGV0IG49MDtjb25zdCBzPW5ldyBNYXA7Zm9yKGNvbnN0IHIgb2YgbS52YWx1ZXMoKSl7Y29uc3Qgbz1yLmtleXNbMF0saT1yLnJlY3NbMF0ueCxkPXIucmVjc1swXS55LGw9cC5tYXAoZT0+e2NvbnN0IG49ZS5lbC5nZXQobyk7aWYoIW4pdGhyb3cgbmV3IEVycm9yKCLRjdC70LXQvNC10L3RgiDQv9GA0L7Qv9Cw0Lsg0LIg0LrQsNC00YDQtSDQstGL0LHQvtGA0LrQuCIpO2lmKE1hdGguYWJzKG4ueS1kKT4xZS02fHxNYXRoLmFicyhuLmEtci5yZWNzWzBdLmEpPjFlLTYpdGhyb3cgbmV3IEVycm9yKCLRgdCx0L7QuSDRgdGC0YDQvtC60Lgg0LzQtdC90Y/QtdGCINC90LUg0YLQvtC70YzQutC+IHgiKTtyZXR1cm4gdChuLngtaSl9KTtsZXQgYz0iIjtpZihsLnNvbWUodD0+IjAiIT09dCkpe24rKztjb25zdCB0PWwuam9pbigiLCIpO2lmKCFlLmhhcyh0KSl7Y29uc3Qgbj1hKCk7bGV0IHM9IiIscj0iMCI7bC5mb3JFYWNoKCh0LGUpPT57dCE9PXImJihzKz15KGUvbC5sZW5ndGgpKyJ7dHJhbnNsYXRlOiIrKCIwIj09PXQ/IjAiOnQrInB4IikrIn0iLHI9dCl9KSxnLnB1c2goIkBrZXlmcmFtZXMgIituKyJ7IitzKyJ9Iik7Y29uc3Qgbz1hKCk7Zy5wdXNoKCIuIitvKyJ7YW5pbWF0aW9uOiIrbisiICIraysiIHN0ZXAtZW5kIGluZmluaXRlfSIpLGUuc2V0KHQsbyl9Yz1lLmdldCh0KX1jb25zdCBmPWMrInwiK1Qocik7cy5oYXMoZil8fHMuc2V0KGYsW10pLHMuZ2V0KGYpLnB1c2goUShyLGM/JyBjbGFzcz0iJytjKyciJzoiIikpfWZvcihjb25zdFt0LGVdb2Ygcyl7Y29uc3Qgbj10LnNwbGl0KCJ8IilbMV07UCs9IjEiPT09bj9lLmpvaW4oIiIpOic8ZyBvcGFjaXR5PSInK24rJyI+JytlLmpvaW4oIiIpKyI8L2c+In1qLm1vdmluZz1uLGoudHJhY2tzPWUuc2l6ZSxqLmZwcz0rKHIuTkYvdykudG9GaXhlZCgxKX1jb25zdCBCPWUuVyxIPWUuSDtsZXQgRj0nPHJlY3Qgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0iJytTKyciJysoej8nIGNsYXNzPSInK3orJyInOiIiKSsiLz4iO2NvbnN0IFI9by5tZXRhLmJvcmRlcjtSJiYoRis9JzxyZWN0IHg9IicrdChSLngpKyciIHk9IicrdChSLnkpKyciIHdpZHRoPSInK3QoUi53KSsnIiBoZWlnaHQ9IicrdChSLmgpKyciIGZpbGw9Im5vbmUiIHN0cm9rZT0iJytkKFIuYykrJyIgc3Ryb2tlLXdpZHRoPSInK24oUi5sdywyKSsnIicrKEE/JyBjbGFzcz0iJytBKyciJzoiIikrIi8+IiksRis9JzxnIGZpbGw9IicrRSsnIicrKHE/JyBjbGFzcz0iJytxKyciJzoiIikrIj4iK1ArIjwvZz4iO2NvbnN0IFc9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iJytCKyciIGhlaWdodD0iJytIKyciIHZpZXdCb3g9IjAgMCAnK0IrIiAiK0grJyI+PHN0eWxlPicrZy5qb2luKCIiKStMLmpvaW4oIiIpKyI8L3N0eWxlPjxkZWZzPiIraC5odG1sKCkrIjwvZGVmcz4iK0YrIjwvc3ZnPiIsTz1XLm1hdGNoKC9Aa2V5ZnJhbWVzIFx3Ky9nKXx8W10sXz1XLm1hdGNoKC9cLlx3Kyg/PVx7YW5pbWF0aW9uWzotXSkvZyl8fFtdO2lmKG5ldyBTZXQoTykuc2l6ZSE9PU8ubGVuZ3RoKXRocm93IG5ldyBFcnJvcigi0L/QvtCy0YLQvtGAINC40LzQtdC90LggQGtleWZyYW1lcyIpO2lmKG5ldyBTZXQoXykuc2l6ZSE9PV8ubGVuZ3RoKXRocm93IG5ldyBFcnJvcigi0L/QvtCy0YLQvtGAINC/0YDQsNCy0LjQu9CwINC60LvQsNGB0YHQsCIpO3JldHVybntzdmc6VyxzdGF0czpqfX0oayh7YmFzZTohMCx0aW1lczpvLnNhbXBsZVJlYWwubWFwKHQ9PnQqYS5zcCl9KSxhLG8pO3JldHVybntzdmc6cC5zdmcsYW5pbWF0ZWQ6ITAscGVyaW9kOm8uUCxmeDpvLmZ4LHN0YXRzOnAuc3RhdHN9fWZpbmFsbHl7UCgwKX19fX0oKSxIPVt7Y29sczoyMSxzYzouODYsc2U6MS44NCxzcTouNixlZzouNjIsaW5rVDouOTMsYmdUOi4wOCxzcDo0LHBsYXk6ITAsZng6e2RyaWZ0OntvbjohMSxhbXA6LjUsc3BkOi41fSxzaGltbWVyOntvbjohMSxhbXA6LjQsc3BkOjF9LHdhdmU6e29uOiExLGFtcDouNyxzcGQ6LjZ9LGJyZWF0aDp7b246ITEsYW1wOi41LHNwZDouNX0scmlzZTp7b246ITEsYW1wOi42LHNwZDouNH0sdHlwZTp7b246ITEsYW1wOi42LHNwZDoxfSxqaXR0ZXI6e29uOiExLGFtcDouMyxzcGQ6MX0sZ2xpdGNocm93OntvbjohMSxhbXA6LjQsc3BkOjF9LGdyaWRkcmlmdDp7b246ITEsYW1wOi40LHNwZDouOH0sbmVncHVsc2U6e29uOiExLGFtcDoxLHNwZDozfX19LHtjb2xzOjIxLHNjOi44NixzZToxLjg0LHNxOi42LGVnOi42MixzcDo0LHBsYXk6ITAsZng6e2RyaWZ0OntvbjohMSxhbXA6LjUsc3BkOi41fSxzaGltbWVyOntvbjohMSxhbXA6LjQsc3BkOjF9LHdhdmU6e29uOiExLGFtcDouNyxzcGQ6LjZ9LGJyZWF0aDp7b246ITEsYW1wOi41LHNwZDouNX0scmlzZTp7b246ITEsYW1wOi42LHNwZDouNH0sdHlwZTp7b246ITEsYW1wOi42LHNwZDoxfSxqaXR0ZXI6e29uOiExLGFtcDouMyxzcGQ6MX0sZ2xpdGNocm93OntvbjohMSxhbXA6LjQsc3BkOjF9LGdyaWRkcmlmdDp7b246ITEsYW1wOi40LHNwZDouOH0sbmVncHVsc2U6e29uOiExLGFtcDoxLHNwZDozfX19LHtjb2xzOjIxLHNjOi44NixzZToxLjg0LHNxOi42LGVnOi42MixpbmtUOi4zLGJnVDouNjIsc3A6NCxwbGF5OiEwLGZ4OntkcmlmdDp7b246ITEsYW1wOi41LHNwZDouNX0sc2hpbW1lcjp7b246ITEsYW1wOi40LHNwZDoxfSx3YXZlOntvbjohMSxhbXA6Ljcsc3BkOi42fSxicmVhdGg6e29uOiExLGFtcDouNSxzcGQ6LjV9LHJpc2U6e29uOiExLGFtcDouNixzcGQ6LjR9LHR5cGU6e29uOiExLGFtcDouNixzcGQ6MX0saml0dGVyOntvbjohMSxhbXA6LjMsc3BkOjF9LGdsaXRjaHJvdzp7b246ITEsYW1wOi40LHNwZDoxfSxncmlkZHJpZnQ6e29uOiExLGFtcDouNCxzcGQ6Ljh9LG5lZ3B1bHNlOntvbjohMSxhbXA6MSxzcGQ6M319fSx7Y29sczoyMSxkaXI6ImR0IixzYzouODYsc2U6MS44NCxzcTouNixpbmtUOi45MyxiZ1Q6LjA4LHBsYXk6ITB9LHtjb2xzOjIxLGRpcjoiZHQiLHNjOi44NixzZToxLjg0LHNxOi42LHBsYXk6ITB9LHtjb2xzOjIxLGRpcjoiZHQiLHNjOi44NixzZToxLjg0LHNxOi42LGlua1Q6LjMsYmdUOi42MixwbGF5OiEwfSx7Y29sczoyMCxkaXI6ImR0IixzYzoxLHNlOjEuNzYsc3E6LjYsZWc6LjA4LHJjOi45MixpbmtUOi45MyxiZ1Q6LjA4LHBsYXk6ITAsc2hwaDoiY2hlY2tlciIsZng6e2RyaWZ0OntvbjohMSxhbXA6LjUsc3BkOi41fSxzaGltbWVyOntvbjohMCxhbXA6LjQsc3BkOjEuN30sd2F2ZTp7b246ITEsYW1wOi43LHNwZDozfSxicmVhdGg6e29uOiExLGFtcDouNSxzcGQ6LjV9LHJpc2U6e29uOiExLGFtcDouNixzcGQ6LjR9LHR5cGU6e29uOiExLGFtcDouNixzcGQ6MX0saml0dGVyOntvbjohMSxhbXA6LjMsc3BkOjF9LGdsaXRjaHJvdzp7b246ITEsYW1wOi40LHNwZDoxfSxncmlkZHJpZnQ6e29uOiExLGFtcDouNCxzcGQ6Ljh9LG5lZ3B1bHNlOntvbjohMSxhbXA6MSxzcGQ6LjR9fX0se2NvbHM6MjAsZGlyOiJkdCIsc2M6MSxzZToxLjc2LHNxOi42LGVnOi4wOCxyYzouOTIscGxheTohMCxzaHBoOiJjaGVja2VyIixmeDp7ZHJpZnQ6e29uOiExLGFtcDouNSxzcGQ6LjV9LHNoaW1tZXI6e29uOiEwLGFtcDouNCxzcGQ6MS43fSx3YXZlOntvbjohMSxhbXA6Ljcsc3BkOjN9LGJyZWF0aDp7b246ITEsYW1wOi41LHNwZDouNX0scmlzZTp7b246ITEsYW1wOi42LHNwZDouNH0sdHlwZTp7b246ITEsYW1wOi42LHNwZDoxfSxqaXR0ZXI6e29uOiExLGFtcDouMyxzcGQ6MX0sZ2xpdGNocm93OntvbjohMSxhbXA6LjQsc3BkOjF9LGdyaWRkcmlmdDp7b246ITEsYW1wOi40LHNwZDouOH0sbmVncHVsc2U6e29uOiExLGFtcDoxLHNwZDouNH19fSx7Y29sczoyMCxkaXI6ImR0IixzYzoxLHNlOjEuNzYsc3E6LjYsZWc6LjA4LHJjOi45MixpbmtUOi4zLGJnVDouNjIscGxheTohMCxzaHBoOiJjaGVja2VyIixmeDp7ZHJpZnQ6e29uOiExLGFtcDouNSxzcGQ6LjV9LHNoaW1tZXI6e29uOiEwLGFtcDouNCxzcGQ6MS43fSx3YXZlOntvbjohMSxhbXA6Ljcsc3BkOjN9LGJyZWF0aDp7b246ITEsYW1wOi41LHNwZDouNX0scmlzZTp7b246ITEsYW1wOi42LHNwZDouNH0sdHlwZTp7b246ITEsYW1wOi42LHNwZDoxfSxqaXR0ZXI6e29uOiExLGFtcDouMyxzcGQ6MX0sZ2xpdGNocm93OntvbjohMSxhbXA6LjQsc3BkOjF9LGdyaWRkcmlmdDp7b246ITEsYW1wOi40LHNwZDouOH0sbmVncHVsc2U6e29uOiExLGFtcDoxLHNwZDouNH19fSx7Y29sczoyMSxzYzouODYsc2U6MS44NCxzcTouNixiZDo1LjUsaW5rVDouOTMsYmdUOi4wOCxzcDo0LHBsYXk6ITAsd2RpcjoiZG93biIsZng6e2RyaWZ0OntvbjohMSxhbXA6LjUsc3BkOi41fSxzaGltbWVyOntvbjohMSxhbXA6LjQsc3BkOjF9LHdhdmU6e29uOiEwLGFtcDouMjUsc3BkOi4zOTM5MX0sYnJlYXRoOntvbjohMSxhbXA6LjUsc3BkOi41fSxyaXNlOntvbjohMSxhbXA6LjYsc3BkOi40fSx0eXBlOntvbjohMSxhbXA6LjYsc3BkOjF9LGppdHRlcjp7b246ITEsYW1wOi4zLHNwZDoxfSxnbGl0Y2hyb3c6e29uOiExLGFtcDouNCxzcGQ6MX0sZ3JpZGRyaWZ0OntvbjohMSxhbXA6LjQsc3BkOi44fSxuZWdwdWxzZTp7b246ITAsYW1wOjEsc3BkOjEuMX19fSx7Y29udDoiY29kZSIsZm10OiJiNjQiLHJsZTohMSxsYXk6ImZsb3ciLGNvbHM6MjUsc2M6Ljg2LHNlOjEuODQsc3E6LjYsZWRnZToic29mdCIsZWc6Ljg0LHJjOjEsYmQ6MSx6c3JjOiJyb3ciLGZnOi44NSxkaXN0OjkwMCxkczouMjUsZm9jOjUyNSxpbmtUOi45MyxiZ1Q6LjA4LHNwOjQscGxheTohMCxmeDp7ZHJpZnQ6e29uOiExLGFtcDouNSxzcGQ6LjV9LHNoaW1tZXI6e29uOiExLGFtcDouNCxzcGQ6MX0sd2F2ZTp7b246ITEsYW1wOi43LHNwZDouNn0sYnJlYXRoOntvbjohMSxhbXA6LjUsc3BkOi41fSxyaXNlOntvbjohMSxhbXA6LjYsc3BkOi40fSx0eXBlOntvbjohMSxhbXA6LjYsc3BkOjF9LGppdHRlcjp7b246ITEsYW1wOi4zLHNwZDoxfSxnbGl0Y2hyb3c6e29uOiExLGFtcDouNCxzcGQ6MX0sZ3JpZGRyaWZ0OntvbjohMSxhbXA6LjgyLHNwZDouNjV9LG5lZ3B1bHNlOntvbjohMSxhbXA6MSxzcGQ6M319fSx7Y29udDoiY29kZSIsZm10OiJiNjQiLHJsZTohMSxsYXk6ImZsb3ciLGNvbHM6MjUsc2M6Ljg2LHNlOjEuODQsc3E6LjYsZWRnZToic29mdCIsZWc6Ljg0LHJjOjEsYmQ6MSx6c3JjOiJyb3ciLGZnOi44NSxkaXN0OjkwMCxkczouMjUsZm9jOjUyNSxzcDo0LHBsYXk6ITAsZng6e2RyaWZ0OntvbjohMSxhbXA6LjUsc3BkOi41fSxzaGltbWVyOntvbjohMSxhbXA6LjQsc3BkOjF9LHdhdmU6e29uOiExLGFtcDouNyxzcGQ6LjZ9LGJyZWF0aDp7b246ITEsYW1wOi41LHNwZDouNX0scmlzZTp7b246ITEsYW1wOi42LHNwZDouNH0sdHlwZTp7b246ITEsYW1wOi42LHNwZDoxfSxqaXR0ZXI6e29uOiExLGFtcDouMyxzcGQ6MX0sZ2xpdGNocm93OntvbjohMSxhbXA6LjQsc3BkOjF9LGdyaWRkcmlmdDp7b246ITEsYW1wOi44MixzcGQ6LjY1fSxuZWdwdWxzZTp7b246ITEsYW1wOjEsc3BkOjN9fX0se2NvbnQ6ImNvZGUiLGZtdDoiYjY0IixybGU6ITEsbGF5OiJmbG93Iixjb2xzOjI1LHNjOi44NixzZToxLjg0LHNxOi42LGVkZ2U6InNvZnQiLGVnOi44NCxyYzoxLGJkOjEsenNyYzoicm93IixmZzouODUsZGlzdDo5MDAsZHM6LjI1LGZvYzo1MjUsaW5rVDouMyxiZ1Q6LjYyLHNwOjQscGxheTohMCxmeDp7ZHJpZnQ6e29uOiExLGFtcDouNSxzcGQ6LjV9LHNoaW1tZXI6e29uOiExLGFtcDouNCxzcGQ6MX0sd2F2ZTp7b246ITEsYW1wOi43LHNwZDouNn0sYnJlYXRoOntvbjohMSxhbXA6LjUsc3BkOi41fSxyaXNlOntvbjohMSxhbXA6LjYsc3BkOi40fSx0eXBlOntvbjohMSxhbXA6LjYsc3BkOjF9LGppdHRlcjp7b246ITEsYW1wOi4zLHNwZDoxfSxnbGl0Y2hyb3c6e29uOiExLGFtcDouNCxzcGQ6MX0sZ3JpZGRyaWZ0OntvbjohMSxhbXA6LjgyLHNwZDouNjV9LG5lZ3B1bHNlOntvbjohMSxhbXA6MSxzcGQ6M319fSx7Y29udDoiY29kZSIsZm10OiJiNjQiLHJsZTohMSxsYXk6InNjYXR0ZXIiLGNvbHM6MjUsc2M6Ljg2LHNlOjEuODQsc3E6LjYsZWRnZToic29mdCIsZWc6LjUscmM6LjYyLGRwOi44LHpzcmM6InJvdyIsZmc6Ljg1LGRpc3Q6OTAwLGRzOi4yNSxmb2M6NTI1LGlua1Q6LjkzLGJnVDouMDgsc3A6NCxwbGF5OiEwLGZ4OntkcmlmdDp7b246ITEsYW1wOi41LHNwZDouNX0sc2hpbW1lcjp7b246ITEsYW1wOi40LHNwZDoxfSx3YXZlOntvbjohMSxhbXA6Ljcsc3BkOi42fSxicmVhdGg6e29uOiExLGFtcDouNSxzcGQ6LjV9LHJpc2U6e29uOiExLGFtcDouNixzcGQ6LjR9LHR5cGU6e29uOiExLGFtcDouNixzcGQ6MX0saml0dGVyOntvbjohMSxhbXA6LjMsc3BkOjF9LGdsaXRjaHJvdzp7b246ITEsYW1wOi40LHNwZDoxfSxncmlkZHJpZnQ6e29uOiEwLGFtcDouODIsc3BkOi42NX0sbmVncHVsc2U6e29uOiExLGFtcDoxLHNwZDozfX19LHtjb250OiJjb2RlIixmbXQ6ImI2NCIscmxlOiExLGxheToic2NhdHRlciIsY29sczoyNSxzYzouODYsc2U6MS44NCxzcTouNixlZGdlOiJzb2Z0IixlZzouNSxyYzouNjIsZHA6LjgsenNyYzoicm93IixmZzouODUsZGlzdDo5MDAsZHM6LjI1LGZvYzo1MjUsc3A6NCxwbGF5OiEwLGZ4OntkcmlmdDp7b246ITEsYW1wOi41LHNwZDouNX0sc2hpbW1lcjp7b246ITEsYW1wOi40LHNwZDoxfSx3YXZlOntvbjohMSxhbXA6Ljcsc3BkOi42fSxicmVhdGg6e29uOiExLGFtcDouNSxzcGQ6LjV9LHJpc2U6e29uOiExLGFtcDouNixzcGQ6LjR9LHR5cGU6e29uOiExLGFtcDouNixzcGQ6MX0saml0dGVyOntvbjohMSxhbXA6LjMsc3BkOjF9LGdsaXRjaHJvdzp7b246ITEsYW1wOi40LHNwZDoxfSxncmlkZHJpZnQ6e29uOiEwLGFtcDouODIsc3BkOi42NX0sbmVncHVsc2U6e29uOiExLGFtcDoxLHNwZDozfX19LHtjb250OiJjb2RlIixmbXQ6ImI2NCIscmxlOiExLGxheToic2NhdHRlciIsY29sczoyNSxzYzouODYsc2U6MS44NCxzcTouNixlZGdlOiJzb2Z0IixlZzouNSxyYzouNjIsZHA6LjgsenNyYzoicm93IixmZzouODUsZGlzdDo5MDAsZHM6LjI1LGZvYzo1MjUsaW5rVDouMyxiZ1Q6LjYyLHNwOjQscGxheTohMCxmeDp7ZHJpZnQ6e29uOiExLGFtcDouNSxzcGQ6LjV9LHNoaW1tZXI6e29uOiExLGFtcDouNCxzcGQ6MX0sd2F2ZTp7b246ITEsYW1wOi43LHNwZDouNn0sYnJlYXRoOntvbjohMSxhbXA6LjUsc3BkOi41fSxyaXNlOntvbjohMSxhbXA6LjYsc3BkOi40fSx0eXBlOntvbjohMSxhbXA6LjYsc3BkOjF9LGppdHRlcjp7b246ITEsYW1wOi4zLHNwZDoxfSxnbGl0Y2hyb3c6e29uOiExLGFtcDouNCxzcGQ6MX0sZ3JpZGRyaWZ0OntvbjohMCxhbXA6LjgyLHNwZDouNjV9LG5lZ3B1bHNlOntvbjohMSxhbXA6MSxzcGQ6M319fSx7Y29udDoiY29kZSIsZm10OiJiaW4iLHJsZTohMSxsYXk6InJvd3MiLGNvbHM6MjUsc2M6MSxzZToxLjcyLHNxOi41LGVnOjAsZHA6LjY4LHpzcmM6InJvdyIsZmc6LjY1LGVsOjQ3LGVsczouMixkaXN0OjkwMCxkczouMjUsZm9jOjYwMCxpbmtUOi45MyxiZ1Q6LjA4LHNwOjEuNixwbGF5OiEwLGZ4OntkcmlmdDp7b246ITEsYW1wOi41LHNwZDouNX0sc2hpbW1lcjp7b246ITEsYW1wOi40LHNwZDoxfSx3YXZlOntvbjohMSxhbXA6Ljcsc3BkOi42fSxicmVhdGg6e29uOiExLGFtcDouNSxzcGQ6Mi44NX0scmlzZTp7b246ITEsYW1wOi42LHNwZDouNH0sdHlwZTp7b246ITEsYW1wOi42LHNwZDoxfSxqaXR0ZXI6e29uOiExLGFtcDouMyxzcGQ6MX0sZ2xpdGNocm93OntvbjohMSxhbXA6LjM2LHNwZDoxfSxncmlkZHJpZnQ6e29uOiExLGFtcDouNCxzcGQ6Ljh9LG5lZ3B1bHNlOntvbjohMSxhbXA6MSxzcGQ6M319fSx7Y29udDoiY29kZSIsZm10OiJiaW4iLHJsZTohMSxsYXk6InJvd3MiLGNvbHM6MjUsc2M6MSxzZToxLjcyLHNxOi41LGVnOjAsZHA6LjY4LHpzcmM6InJvdyIsZmc6LjY1LGVsOjQ3LGVsczouMixkaXN0OjkwMCxkczouMjUsZm9jOjYwMCxzcDoxLjYscGxheTohMCxmeDp7ZHJpZnQ6e29uOiExLGFtcDouNSxzcGQ6LjV9LHNoaW1tZXI6e29uOiExLGFtcDouNCxzcGQ6MX0sd2F2ZTp7b246ITEsYW1wOi43LHNwZDouNn0sYnJlYXRoOntvbjohMSxhbXA6LjUsc3BkOjIuODV9LHJpc2U6e29uOiExLGFtcDouNixzcGQ6LjR9LHR5cGU6e29uOiExLGFtcDouNixzcGQ6MX0saml0dGVyOntvbjohMSxhbXA6LjMsc3BkOjF9LGdsaXRjaHJvdzp7b246ITEsYW1wOi4zNixzcGQ6MX0sZ3JpZGRyaWZ0OntvbjohMSxhbXA6LjQsc3BkOi44fSxuZWdwdWxzZTp7b246ITEsYW1wOjEsc3BkOjN9fX0se2NvbnQ6ImNvZGUiLGZtdDoiYmluIixybGU6ITEsbGF5OiJyb3dzIixjb2xzOjI1LHNjOjEsc2U6MS43MixzcTouNSxlZzowLGRwOi42OCx6c3JjOiJyb3ciLGZnOi42NSxlbDo0NyxlbHM6LjIsZGlzdDo5MDAsZHM6LjI1LGZvYzo2MDAsaW5rVDouMyxiZ1Q6LjYyLHNwOjEuNixwbGF5OiEwLGZ4OntkcmlmdDp7b246ITEsYW1wOi41LHNwZDouNX0sc2hpbW1lcjp7b246ITEsYW1wOi40LHNwZDoxfSx3YXZlOntvbjohMSxhbXA6Ljcsc3BkOi42fSxicmVhdGg6e29uOiExLGFtcDouNSxzcGQ6Mi44NX0scmlzZTp7b246ITEsYW1wOi42LHNwZDouNH0sdHlwZTp7b246ITEsYW1wOi42LHNwZDoxfSxqaXR0ZXI6e29uOiExLGFtcDouMyxzcGQ6MX0sZ2xpdGNocm93OntvbjohMSxhbXA6LjM2LHNwZDoxfSxncmlkZHJpZnQ6e29uOiExLGFtcDouNCxzcGQ6Ljh9LG5lZ3B1bHNlOntvbjohMSxhbXA6MSxzcGQ6M319fSx7Y29udDoiY29kZSIsZm10OiJiaW4iLHJsZTohMSxsYXk6InNjYXR0ZXIiLGNvbHM6MjUsc2M6MSxzZToxLjcyLHNxOi42LGVnOjAscmM6LjE2LGlua1Q6LjkzLGJnVDouMDgsc3A6MS42LHBsYXk6ITAsZng6e2RyaWZ0OntvbjohMSxhbXA6LjUsc3BkOi41fSxzaGltbWVyOntvbjohMSxhbXA6LjQsc3BkOjF9LHdhdmU6e29uOiExLGFtcDouNyxzcGQ6LjZ9LGJyZWF0aDp7b246ITEsYW1wOi41LHNwZDoyLjg1fSxyaXNlOntvbjohMSxhbXA6LjYsc3BkOi40fSx0eXBlOntvbjohMSxhbXA6LjYsc3BkOjF9LGppdHRlcjp7b246ITEsYW1wOi4zLHNwZDoxfSxnbGl0Y2hyb3c6e29uOiEwLGFtcDouMzYsc3BkOjF9LGdyaWRkcmlmdDp7b246ITEsYW1wOi40LHNwZDouOH0sbmVncHVsc2U6e29uOiExLGFtcDoxLHNwZDozfX19LHtjb250OiJjb2RlIixmbXQ6ImJpbiIscmxlOiExLGxheToic2NhdHRlciIsY29sczoyNSxzYzoxLHNlOjEuNzIsc3E6LjYsZWc6MCxyYzouMTYsc3A6MS42LHBsYXk6ITAsZng6e2RyaWZ0OntvbjohMSxhbXA6LjUsc3BkOi41fSxzaGltbWVyOntvbjohMSxhbXA6LjQsc3BkOjF9LHdhdmU6e29uOiExLGFtcDouNyxzcGQ6LjZ9LGJyZWF0aDp7b246ITEsYW1wOi41LHNwZDoyLjg1fSxyaXNlOntvbjohMSxhbXA6LjYsc3BkOi40fSx0eXBlOntvbjohMSxhbXA6LjYsc3BkOjF9LGppdHRlcjp7b246ITEsYW1wOi4zLHNwZDoxfSxnbGl0Y2hyb3c6e29uOiEwLGFtcDouMzYsc3BkOjF9LGdyaWRkcmlmdDp7b246ITEsYW1wOi40LHNwZDouOH0sbmVncHVsc2U6e29uOiExLGFtcDoxLHNwZDozfX19LHtjb250OiJjb2RlIixmbXQ6ImJpbiIscmxlOiExLGxheToic2NhdHRlciIsY29sczoyNSxzYzoxLHNlOjEuNzIsc3E6LjYsZWc6MCxyYzouMTYsaW5rVDouMyxiZ1Q6LjYyLHNwOjEuNixwbGF5OiEwLGZ4OntkcmlmdDp7b246ITEsYW1wOi41LHNwZDouNX0sc2hpbW1lcjp7b246ITEsYW1wOi40LHNwZDoxfSx3YXZlOntvbjohMSxhbXA6Ljcsc3BkOi42fSxicmVhdGg6e29uOiExLGFtcDouNSxzcGQ6Mi44NX0scmlzZTp7b246ITEsYW1wOi42LHNwZDouNH0sdHlwZTp7b246ITEsYW1wOi42LHNwZDoxfSxqaXR0ZXI6e29uOiExLGFtcDouMyxzcGQ6MX0sZ2xpdGNocm93OntvbjohMCxhbXA6LjM2LHNwZDoxfSxncmlkZHJpZnQ6e29uOiExLGFtcDouNCxzcGQ6Ljh9LG5lZ3B1bHNlOntvbjohMSxhbXA6MSxzcGQ6M319fSx7azoxMSxxOjI4MDAsY29udDoiY29kZSIsZm10OiJjYXJkIixjb2xzOjIzLGd2Oi4yOCxmc2M6Ljg2LHNxOi42LG95Oi4wNCxpbmtUOi45MyxiZ1Q6LjA4LGlua0g6IiNlZGVkZWQiLGJnSDoiIzE0MTQxMCIsdmZtdDoid2VibSIsYWZyOjQ4LGFkdXI6OCxwbGF5OiEwLGZ4OntkcmlmdDp7b246ITEsYW1wOi41LHNwZDouNX0sc2hpbW1lcjp7b246ITAsYW1wOi40LHNwZDoxfSx3YXZlOntvbjohMSxhbXA6Ljcsc3BkOi42fSxicmVhdGg6e29uOiExLGFtcDouNSxzcGQ6LjV9LHJpc2U6e29uOiExLGFtcDouNixzcGQ6LjR9LHR5cGU6e29uOiExLGFtcDouNixzcGQ6MX0saml0dGVyOntvbjohMSxhbXA6LjMsc3BkOjF9LGdsaXRjaHJvdzp7b246ITEsYW1wOi40LHNwZDoxfSxncmlkZHJpZnQ6e29uOiExLGFtcDouNCxzcGQ6Ljh9LG5lZ3B1bHNlOntvbjohMSxhbXA6MSxzcGQ6LjR9fX0se2s6MTEscToyODAwLGNvbnQ6ImNvZGUiLGZtdDoiY2FyZCIsY29sczoyMyxndjouMjgsZnNjOi44NixzcTouNixveTouMDQsaW5rSDoiI2VkZWRlZCIsYmdIOiIjMTQxNDEwIix2Zm10OiJ3ZWJtIixhZnI6NDgsYWR1cjo4LHBsYXk6ITAsZng6e2RyaWZ0OntvbjohMSxhbXA6LjUsc3BkOi41fSxzaGltbWVyOntvbjohMCxhbXA6LjQsc3BkOjF9LHdhdmU6e29uOiExLGFtcDouNyxzcGQ6LjZ9LGJyZWF0aDp7b246ITEsYW1wOi41LHNwZDouNX0scmlzZTp7b246ITEsYW1wOi42LHNwZDouNH0sdHlwZTp7b246ITEsYW1wOi42LHNwZDoxfSxqaXR0ZXI6e29uOiExLGFtcDouMyxzcGQ6MX0sZ2xpdGNocm93OntvbjohMSxhbXA6LjQsc3BkOjF9LGdyaWRkcmlmdDp7b246ITEsYW1wOi40LHNwZDouOH0sbmVncHVsc2U6e29uOiExLGFtcDoxLHNwZDouNH19fSx7azoxMSxxOjI4MDAsY29udDoiY29kZSIsZm10OiJjYXJkIixjb2xzOjIzLGd2Oi4yOCxmc2M6Ljg2LHNxOi42LG95Oi4wNCxpbmtUOi4zLGJnVDouNjIsaW5rSDoiI2VkZWRlZCIsYmdIOiIjMTQxNDEwIix2Zm10OiJ3ZWJtIixhZnI6NDgsYWR1cjo4LHBsYXk6ITAsZng6e2RyaWZ0OntvbjohMSxhbXA6LjUsc3BkOi41fSxzaGltbWVyOntvbjohMCxhbXA6LjQsc3BkOjF9LHdhdmU6e29uOiExLGFtcDouNyxzcGQ6LjZ9LGJyZWF0aDp7b246ITEsYW1wOi41LHNwZDouNX0scmlzZTp7b246ITEsYW1wOi42LHNwZDouNH0sdHlwZTp7b246ITEsYW1wOi42LHNwZDoxfSxqaXR0ZXI6e29uOiExLGFtcDouMyxzcGQ6MX0sZ2xpdGNocm93OntvbjohMSxhbXA6LjQsc3BkOjF9LGdyaWRkcmlmdDp7b246ITEsYW1wOi40LHNwZDouOH0sbmVncHVsc2U6e29uOiExLGFtcDoxLHNwZDouNH19fSx7azoxMSxxOjI4MDAsY29udDoiY29kZSIsZm10OiJjYXJkIixybGU6ITEsY29sczo1NSxndjouMjgsZnNjOi44NixzcTouNixveTouMDQsZHM6LjA1LGlua1Q6LjkzLGJnVDouMDgsaW5rSDoiI2VkZWRlZCIsYmdIOiIjMTQxNDEwIix2Zm10OiJ3ZWJtIixhZnI6NDgsYWR1cjo4LHNwOjMuMixwbGF5OiEwLGZ4OntkcmlmdDp7b246ITEsYW1wOi41LHNwZDouNX0sc2hpbW1lcjp7b246ITEsYW1wOi40LHNwZDoxfSx3YXZlOntvbjohMSxhbXA6Ljcsc3BkOi42fSxicmVhdGg6e29uOiExLGFtcDouNSxzcGQ6LjV9LHJpc2U6e29uOiExLGFtcDouNixzcGQ6LjR9LHR5cGU6e29uOiExLGFtcDouNixzcGQ6MX0saml0dGVyOntvbjohMSxhbXA6LjA2LHNwZDouMjV9LGdsaXRjaHJvdzp7b246ITEsYW1wOi4yLHNwZDouMjV9LGdyaWRkcmlmdDp7b246ITAsYW1wOi40LHNwZDouOH0sbmVncHVsc2U6e29uOiExLGFtcDoxLHNwZDozfX19LHtrOjExLHE6MjgwMCxjb250OiJjb2RlIixmbXQ6ImNhcmQiLHJsZTohMSxjb2xzOjU1LGd2Oi4yOCxmc2M6Ljg2LHNxOi42LG95Oi4wNCxkczouMDUsaW5rSDoiI2VkZWRlZCIsYmdIOiIjMTQxNDEwIix2Zm10OiJ3ZWJtIixhZnI6NDgsYWR1cjo4LHNwOjMuMixwbGF5OiEwLGZ4OntkcmlmdDp7b246ITEsYW1wOi41LHNwZDouNX0sc2hpbW1lcjp7b246ITEsYW1wOi40LHNwZDoxfSx3YXZlOntvbjohMSxhbXA6Ljcsc3BkOi42fSxicmVhdGg6e29uOiExLGFtcDouNSxzcGQ6LjV9LHJpc2U6e29uOiExLGFtcDouNixzcGQ6LjR9LHR5cGU6e29uOiExLGFtcDouNixzcGQ6MX0saml0dGVyOntvbjohMSxhbXA6LjA2LHNwZDouMjV9LGdsaXRjaHJvdzp7b246ITEsYW1wOi4yLHNwZDouMjV9LGdyaWRkcmlmdDp7b246ITAsYW1wOi40LHNwZDouOH0sbmVncHVsc2U6e29uOiExLGFtcDoxLHNwZDozfX19LHtrOjExLHE6MjgwMCxjb250OiJjb2RlIixmbXQ6ImNhcmQiLHJsZTohMSxjb2xzOjU1LGd2Oi4yOCxmc2M6Ljg2LHNxOi42LG95Oi4wNCxkczouMDUsaW5rVDouMyxiZ1Q6LjYyLGlua0g6IiNlZGVkZWQiLGJnSDoiIzE0MTQxMCIsdmZtdDoid2VibSIsYWZyOjQ4LGFkdXI6OCxzcDozLjIscGxheTohMCxmeDp7ZHJpZnQ6e29uOiExLGFtcDouNSxzcGQ6LjV9LHNoaW1tZXI6e29uOiExLGFtcDouNCxzcGQ6MX0sd2F2ZTp7b246ITEsYW1wOi43LHNwZDouNn0sYnJlYXRoOntvbjohMSxhbXA6LjUsc3BkOi41fSxyaXNlOntvbjohMSxhbXA6LjYsc3BkOi40fSx0eXBlOntvbjohMSxhbXA6LjYsc3BkOjF9LGppdHRlcjp7b246ITEsYW1wOi4wNixzcGQ6LjI1fSxnbGl0Y2hyb3c6e29uOiExLGFtcDouMixzcGQ6LjI1fSxncmlkZHJpZnQ6e29uOiEwLGFtcDouNCxzcGQ6Ljh9LG5lZ3B1bHNlOntvbjohMSxhbXA6MSxzcGQ6M319fSx7azoxMSxxOjI4MDAsaW52OiExLGNvbnQ6ImNvZGUiLGZtdDoiY2FyZCIscmxlOiExLGxheToic2NhdHRlciIsY29sczo1NSxndjouMjgsZnNjOi44NixzcTouNixveTouMDQsenNyYzoicm93IixmZzowLGRzOi4wNSxpbmtUOi45MyxiZ1Q6LjA4LGlua0g6IiNlZGVkZWQiLGJnSDoiIzE0MTQxMCIsdmZtdDoid2VibSIsYWZyOjQ4LGFkdXI6OCxzcDozLjIscGxheTohMCxmeDp7ZHJpZnQ6e29uOiExLGFtcDouNSxzcGQ6LjV9LHNoaW1tZXI6e29uOiExLGFtcDouNCxzcGQ6MX0sd2F2ZTp7b246ITEsYW1wOi43LHNwZDouNn0sYnJlYXRoOntvbjohMSxhbXA6LjUsc3BkOi41fSxyaXNlOntvbjohMSxhbXA6LjYsc3BkOi40fSx0eXBlOntvbjohMSxhbXA6LjYsc3BkOjF9LGppdHRlcjp7b246ITEsYW1wOi4wNixzcGQ6LjI1fSxnbGl0Y2hyb3c6e29uOiExLGFtcDouMixzcGQ6LjI1fSxncmlkZHJpZnQ6e29uOiEwLGFtcDouNCxzcGQ6Ljh9LG5lZ3B1bHNlOntvbjohMSxhbXA6MSxzcGQ6M319fSx7azoxMSxxOjI4MDAsaW52OiExLGNvbnQ6ImNvZGUiLGZtdDoiY2FyZCIscmxlOiExLGxheToic2NhdHRlciIsY29sczo1NSxndjouMjgsZnNjOi44NixzcTouNixveTouMDQsenNyYzoicm93IixmZzowLGRzOi4wNSxpbmtIOiIjZWRlZGVkIixiZ0g6IiMxNDE0MTAiLHZmbXQ6IndlYm0iLGFmcjo0OCxhZHVyOjgsc3A6My4yLHBsYXk6ITAsZng6e2RyaWZ0OntvbjohMSxhbXA6LjUsc3BkOi41fSxzaGltbWVyOntvbjohMSxhbXA6LjQsc3BkOjF9LHdhdmU6e29uOiExLGFtcDouNyxzcGQ6LjZ9LGJyZWF0aDp7b246ITEsYW1wOi41LHNwZDouNX0scmlzZTp7b246ITEsYW1wOi42LHNwZDouNH0sdHlwZTp7b246ITEsYW1wOi42LHNwZDoxfSxqaXR0ZXI6e29uOiExLGFtcDouMDYsc3BkOi4yNX0sZ2xpdGNocm93OntvbjohMSxhbXA6LjIsc3BkOi4yNX0sZ3JpZGRyaWZ0OntvbjohMCxhbXA6LjQsc3BkOi44fSxuZWdwdWxzZTp7b246ITEsYW1wOjEsc3BkOjN9fX0se2s6MTEscToyODAwLGludjohMSxjb250OiJjb2RlIixmbXQ6ImNhcmQiLHJsZTohMSxsYXk6InNjYXR0ZXIiLGNvbHM6NTUsZ3Y6LjI4LGZzYzouODYsc3E6LjYsb3k6LjA0LHpzcmM6InJvdyIsZmc6MCxkczouMDUsaW5rVDouMyxiZ1Q6LjYyLGlua0g6IiNlZGVkZWQiLGJnSDoiIzE0MTQxMCIsdmZtdDoid2VibSIsYWZyOjQ4LGFkdXI6OCxzcDozLjIscGxheTohMCxmeDp7ZHJpZnQ6e29uOiExLGFtcDouNSxzcGQ6LjV9LHNoaW1tZXI6e29uOiExLGFtcDouNCxzcGQ6MX0sd2F2ZTp7b246ITEsYW1wOi43LHNwZDouNn0sYnJlYXRoOntvbjohMSxhbXA6LjUsc3BkOi41fSxyaXNlOntvbjohMSxhbXA6LjYsc3BkOi40fSx0eXBlOntvbjohMSxhbXA6LjYsc3BkOjF9LGppdHRlcjp7b246ITEsYW1wOi4wNixzcGQ6LjI1fSxnbGl0Y2hyb3c6e29uOiExLGFtcDouMixzcGQ6LjI1fSxncmlkZHJpZnQ6e29uOiEwLGFtcDouNCxzcGQ6Ljh9LG5lZ3B1bHNlOntvbjohMSxhbXA6MSxzcGQ6M319fV0sRj17NTozNzUsMTE6MTgxNX07ZnVuY3Rpb24gUih0LGUpe3JldHVybiBmdW5jdGlvbih0LGUpe2E9SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShyKSk7dmFyIG49SFt0LTFdO2Zvcih2YXIgcyBpbiBuKWFbc109SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShuW3NdKSk7YS5zZD1lLGEucGxheT0hMSxjLndpZHRoPWEucSxjLmhlaWdodD1hLnF9KGUucHJlc2V0LHQpLGw9ZSxMPWcoKSxwPW51bGwsaT17fSxkPSExLG89ZnVuY3Rpb24odCl7dmFyIGUsbixzPWsoKSxyPVtdLG89WzBdLmNvbmNhdCh0LmNvdW50cyk7aWYoImdseXBoIj09PWEuY29udClmb3IoZT01O2U+PTE7ZS0tKWZvcihuPTA7bjxvW2VdO24rKylyLnB1c2goe3Q6c1tlXSx2OmUscmFuazpyLmxlbmd0aCxlbXB0eTohMX0pO2Vsc2UgaWYodC5ydW5zKWZvcihlPTU7ZT49MDtlLS0pKHQucnVuc1tlXXx8W10pLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIG49VChlKTtyLnB1c2goe3Q6dD4xP3QrIsOXIituOm4sdjplLHJ1bjp0LHJhbms6ci5sZW5ndGgsZW1wdHk6ITF9KX0pO2Vsc2UgZm9yKG9bMF09RlthLmtdLShvWzFdK29bMl0rb1szXStvWzRdK29bNV0pLGU9NTtlPj0wO2UtLSlmb3Iobj0wO248b1tlXTtuKyspci5wdXNoKHt0OlQoZSksdjplLHJ1bjoxLHJhbms6ci5sZW5ndGgsZW1wdHk6ITF9KTtyZXR1cm4gcn0oZSksRSgpLEIuZXhwb3J0U1ZHKCJhdXRvIikuc3ZnfWZ1bmN0aW9uIFcodCxlKXt0aGlzLnU9dCx0aGlzLnA9OCplfWZ1bmN0aW9uIE8odCl7dmFyIGUsbixzPXtwcmVzZXQ6dC5yZWFkKDUpfSxyPXMucHJlc2V0Pj0yMz8xMTo5O2ZvcihzLmNvdW50cz1bXSxuPTA7bjw1O24rKylzLmNvdW50cy5wdXNoKHQucmVhZChyKSk7aWYocy5wcmVzZXQ+PTIzJiZzLnByZXNldDw9MjUpZm9yKHMucnVucz17fSxlPTU7ZT49MDtlLS0pe3ZhciBhPXQucmVhZCgxMSk7aWYoYSlmb3Iocy5ydW5zW2VdPVtdLG49MDtuPGE7bisrKXMucnVuc1tlXS5wdXNoKHQuZ2FtbWEoKSl9cmV0dXJuIHMucHJlc2V0Pj0xMSYmcy5wcmVzZXQ8PTIyJiYocy50ZXh0TT10LnJlYWQoMjMpLHMudGV4dFc9bmV3IERhdGFWaWV3KHQuYnl0ZXMoNCkuYnVmZmVyKS5nZXRGbG9hdDMyKDAsITEpKSxzLnByZXNldD49MTAmJnMucHJlc2V0PD0xMyYmKHMuZnJhbWU9W3QucmVhZCgxNCksdC5yZWFkKDE0KSx0LnJlYWQoMTQpLHQucmVhZCgxNCldKSxzLnByZXNldD49MjMmJihzLmhvbGVzUGl0Y2g9bmV3IERhdGFWaWV3KHQuYnl0ZXMoOCkuYnVmZmVyKS5nZXRGbG9hdDY0KDAsITEpLHMuaG9sZXNDb2xzPXQucmVhZCg4KSksc31mdW5jdGlvbiBfKHQpe2lmKDg0IT09dFswXXx8ODIhPT10WzFdfHw2NSE9PXRbMl18fDIhPT10WzNdKXRocm93IG5ldyBFcnJvcigibm90IGEgVHJhY2UgYXJ0aWZhY3RzIGRhdGEuYmluIHYyIik7cmV0dXJuIDI1Nip0WzRdK3RbNV19ZnVuY3Rpb24gQyh0KXt0LnA9OCpNYXRoLmNlaWwodC5wLzgpfWZ1bmN0aW9uIE4odCl7cmV0dXJuIE8obmV3IFcodCwwKSl9ZnVuY3Rpb24gRyh0LGUsbil7dmFyIHM9Xyh0KTtpZihlPDF8fGU+cyl0aHJvdyBuZXcgRXJyb3IoInRva2VuIG91dCBvZiByYW5nZSIpO2lmKG4pe3ZhciByPTMqKGUtMSk7cmV0dXJuIE8obmV3IFcodCw2NTUzNipuW3JdKzI1NipuW3IrMV0rbltyKzJdKSl9Zm9yKHZhciBhLG89bmV3IFcodCw2KSxwPTE7cDw9ZTtwKyspYT1PKG8pLEMobyk7cmV0dXJuIGF9Vy5wcm90b3R5cGUucmVhZD1mdW5jdGlvbih0KXtmb3IodmFyIGU9MCxuPTA7bjx0O24rKyllPTIqZSsodGhpcy51W3RoaXMucD4+M10+PjctKDcmdGhpcy5wKSYxKSx0aGlzLnArKztyZXR1cm4gZX0sVy5wcm90b3R5cGUuZ2FtbWE9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9MDswPT09dGhpcy5yZWFkKDEpOyl0Kys7Zm9yKHZhciBlPTEsbj0wO248dDtuKyspZT0yKmUrdGhpcy5yZWFkKDEpO3JldHVybiBlfSxXLnByb3RvdHlwZS5ieXRlcz1mdW5jdGlvbih0KXtmb3IodmFyIGU9bmV3IFVpbnQ4QXJyYXkodCksbj0wO248dDtuKyspZVtuXT10aGlzLnJlYWQoOCk7cmV0dXJuIGV9O3ZhciBJPXtyZW5kZXI6UixyZW5kZXJGcm9tUmVjb3JkOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIFIodCxOKGUpKX0sZGVjb2RlUmVjb3JkOk4sZGVjb2RlOkcsZGVjb2RlQWxsOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1fKHQpLG49bmV3IFcodCw2KSxzPVtudWxsXSxyPTE7cjw9ZTtyKyspcy5wdXNoKE8obikpLEMobik7cmV0dXJuIHN9LHJlbmRlckZyb21CaW46ZnVuY3Rpb24odCxlLG4pe3JldHVybiBSKHQsRyhlLHQsbikpfX07InVuZGVmaW5lZCIhPXR5cGVvZiBtb2R1bGUmJm1vZHVsZS5leHBvcnRzP21vZHVsZS5leHBvcnRzPUk6dC5UcmFjZUFydGlmYWN0cz1JfSgidW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbFRoaXM/Z2xvYmFsVGhpczp0aGlzKTs8L3NjcmlwdD48c2NyaXB0PnZhciBzPWF0b2Iod2luZG93LlIpLHU9bmV3IFVpbnQ4QXJyYXkocy5sZW5ndGgpO2Zvcih2YXIgaT0wO2k8cy5sZW5ndGg7aSsrKXVbaV09cy5jaGFyQ29kZUF0KGkpO2RvY3VtZW50LmJvZHkuaW5uZXJIVE1MPVRyYWNlQXJ0aWZhY3RzLnJlbmRlckZyb21SZWNvcmQod2luZG93LlQsdSk7PC9zY3JpcHQ+PC9ib2R5PjwvaHRtbD4="}