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uAEAAABbi+Vdw8zMzMzMzFWL7LgEgAAA6CNABwBTi10Ii1MUiwJWi3MMg8AQVzvGcgW4qG9JAItICIPhD4P5BHQ1g/kDdTdQU+iy8gAAi0MQg8QIg3gMAH4JU+jgGgEAg8QEi1MUiwKLcwyDwBA7xnIFuKhvSQCLOIPHEHUTiw0wb0kAUb8BAAAAi/Pov5T//4sCg8AgO8ZyBbiob0kAi0gIg+EPg/kEdDOD+QN1NVBT6EryAACLUxCDxAiDegwAfglT6HgaAQCDxASLQxSLAIPAIDtDDHIFuKhvSQCLMIPGEHUSoTBvSQBQvwIAAACL8+halP//jY38v///UYvH6MwKAACNlfx///9Si8bovgoAAI2F/H///1CNjfy///9R6F5OBgCDxBCFwHVDU740G0kA6NnkAACLSwyJAQ+2UASDykCJUQiLQxCDQwwQg8QEg3gMAA+OFgIAAFPo4BkBAIPEBF9euAEAAABbi+Vdw4C9/H///yR1RFONtfx////ojOQAAItLDIkBD7ZQBIPKQIlRCItDEINDDBCDxASDeAwAD47JAQAAU+iTGQEAg8QEX164AQAAAFuL5V3Djb38v///T4pHAUeEwHX4ZosNqCFJAGaJD429/H///0+NZCQAikcBR4TAdfhmiQ+Dzv8z/4C9/L///wCJdfwPhEEBAACKhD38f///iEULhMB0RQ++jD38v///UejDTgYAD75VC1KL8Oi3TgYAg8QIO/B1IYC8Pfy///8vdQeL94l1/OsDi3X8R4C8Pfy///8AdbLrA4t1/IX2D47mAAAAg/4CdQ2Avf2///86D4TUAAAAM8k4jDX9v///jYQ1/b///3QNkIA4L3UBQUCAOAB19MaF/L///wCFyX4dixX8I0kAjUkAjb38v///T4pHAUeEwHX4SYkXdeyNhDX9f///i9CNSQCKCECEyXX5jb38v///K8JPik8BR4TJdfiLyMHpAovy86WLyIPhA42F/L////OkjVABighAhMl1+SvCU421/L///4iMBfu////oA+MAAItLDIkBD7ZABIPIQIlBCItLEINDDBCDxASDeQwAfkRT6A4YAQCDxARfXrgBAAAAW4vlXcONhfx///+NUAGNmwAAAACKCECEyXX5K8KNlfx///9SU4iMBft////ok0oAAIPECF9euAEAAABbi+Vdw8zMzMxVi+xR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AItQ8IkRi1D0iVEEi1D4iVEIi0D8iUEMg0YM8LgBAAAAUOgh/f//g8QEX7gBAAAAXl3DzMzMzMxVi+xXM/+DfQgAdAuLRgRQ6O9tBADrCYtOBFHoYG0EAIPEBIXAdCmLRgg9yAAAAH0bilYEiFQwDIsG/0YIUOjeTQQAg8QEiUYER+u6xkYMAIvHX13DzMzMzMzMzMzMzMxVi+yB7OgAAABTVlcz/zPbiYUc////ib0k////6J92BACLCIoRiFX46waNmwAAAACLhRz///9Q6IVNBACDxARQiYUg////6NptBACDxASFwHXei4Ug////g/gtdAWD+Ct1PouNJP///4H5yAAAAHwIiJ0o////6y6KlSD///+IlA0o////i4Uc/////4Uk////UOgqTQQAg8QEiYUg////i40k////g/gwdVeB+cgAAAB8CIidKP///+tHxoQNKP///zCLjRz///++AQAAAAG1JP///1Ho50wEAIPEBImFIP///4P4eHQFg/hYdROLhST///89yAAAAHxGiJ0o////i95XjbUc////6JL+//8Pvk34i5Ug////g8QEA9g70XQJg/ouD4WBAAAAi4Uk////PcgAAAB8NcaFKP///wDrcYqVIP///4iUBSj///+LhRz///8BtST///9Q6GJMBACDxASJhSD///+L/uuWipUg////iJQFKP///4uFHP////+FJP///1DoNkwEAIPEBFeNtRz///+JhSD////oAP7//4uVIP///4PEBAPYi4Uk////hdsPjr8AAAC51GhRAIX/dQW52GhRAA++MTvWdAwPvkkBO9EPhZ4AAAA9yAAAAHwMxoUo////AOmLAAAAipUg////iJQFKP///4uFHP///74BAAAAAbUk////UOiwSwQAg8QEiYUg////g/gtdAWD+Ct1PouFJP///z3IAAAAfAnGhSj///8A6yiKjSD///+IjAUo////i5Uc////AbUk////UuhoSwQAg8QEiYUg////agCNtRz////oMf3//4uVIP///4PEBIuFHP///1BS6HmHBACLjST///+LdQiNlSj///9SVsaEDSj///8A6K1e/v+DxBCFwHQMuAEAAABfXluL5V3Di0YMx0AIAAAAAINGDBBfXjPAW4vlXcPMzMxRU1aL8Fbo5koEAIPEBIvYVlPoF4cEAFe+IxlJ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qcpEANjDRADzw0QApMVEAL3DRAC6yUQA1clEAPDJRAAmykQAxshEAEfJRAA4ykQAv8pEACnERAC4y0QAJ8VEAA7ERACJyUQAzstEAO7FRADpy0QABMxEALTTRAAAATECAwQFMQYHMTExMQgJCgsxMTEMDQ4PEDEREjETMTExMRQVMRYxMTExMTExMTExMTExMTExMRcxMTExGBkxGjExMTEbMTExMTEcHTExMTEeHzExICEiIzExMSQxJTEmMTEnMSgpKjExMTEmMTExMTExMTErMTExMTExMTExMTExLDExLS4xMTExMTExMTExMS8xMI1JAHjMRACdzkQAVc9EAIvPRADEzUQA381EAEzORABnzkQAgs5EAI7NRADXz0QADdBEACPQRAA+0EQAWdBEAHTQRACK0EQAoNBEADDORACmz0QAOMpEAPLPRAAVzkQA+s1EAF3NRACpzUQAvM9EADG7RAC20EQAOs9EALPORADOzkQA6c5EAATPRAAfz0QAXcxEAHDPRABzzUQAtNNEAAAmJgECAyYmBAUGBwgmCSYmJiYmJgoLJiYMDQ4mJg8mJiYmJhAREiYmJiYmEyYUJiYmJiYVJiYWFBQUFyYmJhgmFCYmJiYJGSYaJhsbJhwmJh0UJiYmJiYmHh8gISIjJCYlFJCs0UQAOtFEAJbRRACA0UQAOMpEAEPSRAAB0kQAF9JEAC3SRABZ0kQAb9JEAOvRRACb0kQAsdJEAMfSRADd0kQAhdJEAF3RRAC000QAABISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIBEhISEhISEhISEhISEhISEhISEhISEgISEhISEhISEhISEhISEgMSEhISEhISEhISEhISBBISEhISEhISEhISEhISEhISEhISEgUSEhISEhISEhISEgYHCBISEgkSEhISEhISEhISEhISEgoSEhILEhISEhISEhISEhISEhISEhISEhISEhISEhISEgwSDQ4PEhISEhISEhASEhISEhISEhISEXbTRACV00QALtNEADjTRABX00QAtNNEAAABBQUCBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFAwTMzMzMzIuGuAEAAFcz/zvHdCJQ/xVExVIAg8QEib64AQAAib68AQAAib7AAQAAib7EAQAAi4bIAQAAO8d0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/w+F4AAAAGhA80gAVomdpP3//+gV0wAAWVmFwHSHjYWk/f//UGgEAQAAjYX4/v//VlDoQm0AAIvwg8QQO/MPhIYAAABW6EqIAABZg/gDdAnodf7//4XAdHFW/xWM8UgAg/gBdmU5naT9//90DP+1pP3//+jj1///WWr/U1NTagFqAWi8BwAAx4Wo/f//EAAAAImdxP3//4mdyP3//4id1P3//+jSzQAAi7Wg/f//i8qDxByJRyCJVySJRxiJTxyJRyiJTyzpUAIAADmdpP3//w+Ez/7///+1pP3//+h61///Wem+/v//94Wo/f//AAQAAHRfgb3M/f//DAAAoHVTg42k/f///1NqQFONhaT9//9WUOhDzQAAg8QUhcAPhYP+//+DvaT9////D4R2/v//V/+1pP3//+ivXwAA/7Wk/f//i/Do9loAAIPEDIvG6ToCAAA5nbz9//91EDmdwP3//3UIiV8giV8k63iNhZz9//9QjYW8/f//UP8ViPFIAIXAD4TqAQAAjYXo/v//UI2FnP3//1D/FYTxSACFwA+EzgEAAA+3hfT+//9q/1APt4Xy/v//UA+3hfD+//9QD7eF7v7//1APt4Xq/v//UA+3hej+//9Q6KHMAACDxByJRyCJVyQ5nbT9//91FjmduP3//3UOi0cgiUcYi0ckiUcc63iNhZz9//9QjYW0/f//UP8ViPFIAIXAD4RUAQAAjYXo/v//UI2FnP3//1D/FYTxSACFwA+EOAEAAA+3hfT+//9q/1APt4Xy/v//UA+3hfD+//9QD7eF7v7//1APt4Xq/v//UA+3hej+//9Q6AvMAACDxByJRxiJVxw5naz9//91FjmdsP3//3UOi0cgiUcoi0ckiUcs63iNhZz9//9QjYWs/f//UP8ViPFIAIXAD4S+AAAAjYXo/v//UI2FnP3//1D/FYTxSACFwA+EogAAAA+3hfT+//9q/1APt4Xy/v//UA+3hfD+//9QD7eF7v7//1APt4Xq/v//UA+3hej+//9Q6HXLAACDxByJRyiJVyz/taT9////FVTwSABW/7Wo/f//6H/CAABmiUcGM8BAZolHCIuFyP3//1lZiUcUOZ3E/f//dAqDjZT9////iV8UM8BmiUcEZolHDGaJRwqLhZj9//9IiQeJRxCLhZT9///rHP8VYPBIAFDoBuz//1n/taT9////FVTwSACDyP+LTfxfXjPNW+irzwAAycOL/1WL7GoA/3UI/xWU8UgAhcB1CP8VYPBIAOsCM8CFwHQMUOi/6///WYPI/13DM8Bdw8zMzMzMzMyNQv9bw42kJAAAAACNZCQAM8CKRCQIU4vYweAIi1QkCPfCAwAAAHQVigqDwgE6y3TPhMl0UffCAwAAAHXrC9hXi8PB4xBWC9iLCr///v5+i8GL9zPLA/AD+YPx/4Pw/zPPM8aDwgSB4QABAYF1HCUAAQGBdNMlAAEBAXUIgeYAAACAdcReX1szwMOLQvw6w3Q2hMB07zrjdCeE5HTnwegQOsN0FYTAdNw643QGhOR01OuWXl+NQv9bw41C/l5fW8ONQv1eX1vDjUL8Xl9bw4v/VYvsUYtFDFMz21ZXO8MPhM8AAAA4GA+ExwAAAIs1mPFIADldCHVaU1NTUP/WO8N1E/8VYPBIAFDooer//zPA6asAAACLfRA7+HcCi/iD//92Euhh6v//xwAWAAAAM8DpjAAAAGoBV+iF0///i9hZWYXbdSnoP+r//8cADAAAAOvci30QO/t3Eugr6v//xwAWAAAA6GmCAADrw4tdCI1F/FBTV/91DP/WO8dyGoN9CAB1B1Po/9L//1no+un//8cAIgAAAOuXhcB1FTlFCA+FXv///1Po3tL//1npUv///4vD6w3/dRD/dQjoP88AAFlZX15bycOL/1boec8AAFmD+AUPgogAAAAPtwaD+Fx0BYP4L3V7D7dGAoP4XHQFg/gvdW0Pt0YEg/hcdGSD+C90X41GBg+3CDPSZjvKdFJmg/lcdBFmg/kvdAuDwAIPtwhmO8p16WY5EHQ2g8ACZjkQdC4PtwhmO8p0ImaD+Vx0EWaD+S90C4PAAg+3CGY7ynXpZjkQdAZmOVACdQQzwEDDM8DDi/9Vi+xWV+ga6f//izDoE+n///91EIMgAP91DP91COjbzgAAg8QMi/jo+Oj//4X/dAaJMIvH6ySDOCJ0BDPA6xvo4Oj//2oA/3UMiTBqAOirzgAAi00Ug8QMiQFfXl3Di/9Vi+yB7IAEAAChuLZSADPFiUX8U1aLdQgz21eLfQyJtYz7//+JnYD7//8783Uc6KTo//+JGOiK6P//xwAWAAAA6MiAAADpAAQAADv7dOBoUPNIAFbo32QAAFlZhcB0Fuhg6P//agJeiTDoaej//4kw6dUDAABmg34COnUdD7cGZjvDdAZmOV4EdNVQ6ILYAAAPt8BZg+hg6wXoq8kAAFNTU4mFhPv//42FlPv//1BTVv8VoPFIAImFkPv//4P4/w+F4wAAAGhI80gAVomdkPv//+hiZAAAWVmFwHSDjYWQ+///UGgEAQAAjYX0/f//VlDoqf7//4vwg8QQO/MPhIkAAABW6HrNAABZg/gDdAno7v3//4XAdHRW/xWc8UgAg/gBdmg5nZD7//90DP+1kPv//+iN0P//WWr/U1NTagEzwGoBaLwHAADHhZT7//8QAAAAiZ2w+///iZ20+///ZomFwPv//+h5xgAAi7WM+///i8qDxByJRyCJVySJRxiJTxyJRyiJTyzpUAIAADmdkPv//w+EyP7///+1kPv//+gh0P//Wem3/v//94WU+///AAQAAHRfgb24+///DAAAoHVTg42Q+////1NqQFONhZD7//9WUOh61gAAg8QUhcAPhXz+//+DvZD7////D4Rv/v//V/+1kPv//+hWWAAA/7WQ+///i/DonVMAAIPEDIvG6ToCAAA5naj7//91EDmdrPv//3UIiV8giV8k63iNhYj7//9QjYWo+///UP8ViPFIAIXAD4TqAQAAjYXk/f//UI2FiPv//1D/FYTxSACFwA+EzgEAAA+3hfD9//9q/1APt4Xu/f//UA+3hez9//9QD7eF6v3//1APt4Xm/f//UA+3heT9//9Q6EjFAACDxByJRyCJVyQ5naD7//91FjmdpPv//3UOi0cgiUcYi0ckiUcc63iNhYj7//9QjYWg+///UP8ViPFIAIXAD4RUAQAAjYXk/f//UI2FiPv//1D/FYTxSACFwA+EOAEAAA+3hfD9//9q/1APt4Xu/f//UA+3hez9//9QD7eF6v3//1APt4Xm/f//UA+3heT9//9Q6LLEAACDxByJRxiJVxw5nZj7//91FjmdnPv//3UOi0cgiUcoi0ckiUcs63iNhYj7//9QjYWY+///UP8ViPFIAIXAD4S+AAAAjYXk/f//UI2FiPv//1D/FYTxSACFwA+EogAAAA+3hfD9//9q/1APt4Xu/f//UA+3hez9//9QD7eF6v3//1APt4Xm/f//UA+3heT9//9Q6BzEAACDxByJRyiJVyz/tZD7////FVTwSABW/7WU+///6LHLAABmiUcGM8BAZolHCIuF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/v///+gaAAAAi0UYi00IiQiLdeToG8z//zvzdA+JMOsQM9tqAugKZwAAWcOLTeCJCIvG6FleAADDi/9Vi+xRg2X8AI1F/FBo/38AAGoAav//dQjopf7//4tF/IPEFMnDahxomJVSAOjgXQAAM9uJXdSJXdgzyYtFCDvDD5XBO8t1FOity///ahZeiTDo7GMAAOl0AQAAiRhqAuisZgAAWYXAdQzoi8v//4sA6VwBAABqAuhWZwAAWYld/L6gyFIAgD2gyFIAAHV9aBghSQBqElboM4QAAIPEDDvDdV/HReShyFIAoKDIUgA8XHQSPC90DsYFochSAFzHReSiyFIAi0XkxgB0/0XkaiC4sshSACtF5FD/deToF9oAAFDo99kAAIPEEDvDdRRoNBtJAGoSVuiS2AAAg8QMO8N0IlNTU1NT6OViAABo////f2oSi87oEf3//1lZhcAPhdYAAADouYYAAIv4iX3cO/t1CcdF1BgAAADre8dF2AEAAADos8r//4sY6KzK//+DIABogAEAAP91DGhChQAAVo1F4FDokKkAAIPEFIP4EXUUaP///39qEovO6K38//9ZWYXAdM3occr//4M4AHUH6GfK//+JGIN94P90GVboRtsAAFmJRxwzyTvBdS3/deDoKTcAAFkz28dF/P7////oQgAAAIt11DvzdAfoLMr//4kwi8bogFwAAMOJTwSJD4lPCKHo0VIADYAAAACJRwyLReCJRxCLRQiJOOu6i33c67eLfdwz2zld2HQHV+jYt///WWoC6ONkAABZw4v/VYvsUYNl/ACNRfxqQFDo+P3//4tF/FlZycOL/1WL7LggEAAA6P7aAAChuLZSADPFiUX8U1aLdQhXVugDwf//i9gzwFmJnejv//85RgR9A4lGBGoBUFBT6Di+AACDxBCL+Im97O///4mV8O///4XSfxB8BIX/cwqDyP8L0OnUAgAAi8PB+AWNBIXA11IAg+MfiYXk7///iwDB4wYDw4pIJALJ0Pn3RgwIAQAAiI377///dReLRgSLjfDv//+ZK/gbyovHi9HpiwIAAIsOi1YMi/krfgiJvfTv///2wgMPhFsBAACAvfvv//8BD4UaAQAAM9I5UDAPhA8BAADR74m94O///zlWBHURi4Xs7///i5Xw7///6TwCAABS/3As/3Ao/7Xo7///6Gm9AACL8IuF5O///4sAg8QQi/o7dBgoD4Uz////O3wYLA+FKf///2oAjY307///UWgAEAAAjY387///Uf80GP8VtPFIAIXAD4QD////agD/tfDv////tezv////tejv///oB70AAIPEEIXSfw4PjN3+//+FwA+C1f7//4uN9O///4ud4O///zvZD4fB/v//jYX87///hdt0N42UDfzv//9LO8JzK4oIgPkNdRONSv87wXMYjUgBgDkKdRCLwesMD7bJD76JwLZSAAPBQIXbddCNjfzv//8rwTPSA8YT1+lLAQAA9kAEgHQVi1YI6wyAOgp1Bv+F9O///0I70XLwi5Xs7///C5Xw7///dR+LhfTv///pFwEAAITSeOPomMf//8cAFgAAAOkl/v//9kYMAQ+E1gAAAItWBIXSdQshlfTv///pxAAAACtOCPZABICNPAoPhJwAAABqAmoAagD/tejv///oBbwAAIPEEDuF7O///3UkO5Xw7///dRyLRgiNDDjrB4A4CnUBR0A7wXL190YMACAAAOtZagD/tfDv////tezv////tejv///ovbsAAIPEEIXSfw4PjJP9//+FwA+Ci/3//7gAAgAAO/h3EotODPbBCHQKi/j3wQAEAAB0A4t+GIuF5O///4sA9kQYBAR0AUeAvfvv//8BdQLR7ym97O///4Od8O///wCAvfvv//8BdQbRrfTv//+LhfTv//8z0gOF7O///xOV8O///4tN/F9eM81b6GWqAADJw2oQaLiVUgDoh1gAADPAOUUID5XAhcB1F+hexv//xwAWAAAA6JxeAACDyv+Lwusu/3UI6L6z//9Zg2X8AP91COhy/P//WYlF4IlV5MdF/P7////oDAAAAItF4ItV5Oh2WAAAw/91COj9s///WcOLDczIUgCLFcjIUgBWi8GNNNHrBzk4dAeDwAg7xnL1O8ZecjmF/3UzjUIBO8JyLD3///8fcyVqCFBR6AlcAACDxAyFwHQViw3IyFIA/wXIyFIAo8zIUgCNBMjDM8DDaKQAAABo2JVSAOi5VwAAM9sz9old1Ild2GaJXeCIXeKJXbwzwDldCA+VwDvDdRfofMX//8cAFgAAAOi6XQAAM8DpcwQAADPJi0UMO8MPlcE7y3TbsiDrAUA4EHT7igiA+Xd0BYD5cnXGiE3gQDgQdPuKADrDdAg8dHQEPGJ1sIhF4Tx0dQe+AEAAAOsJPGJ1Bb4AgAAAgc6AAAAAVmgABAAAjUW0UOgN1wAAg8QMg/j/D4T/AwAAM/ZGgH3gd3ULiV3kiV3QiXXM6wmJdeSJddCJXcxqCejsXwAAWYXAdRf/dbToqjEAAP91uOiiMQAAWVnpSP///2oJ6ItgAABZiV38iXWsiXWo/xVA8EgAi33QjXy9tIsPagJWU41VwFJQi9HB+gWD4R/B4QaLFJXA11IA/zQKUP8VvPFIAIXAD4RAAwAA/zfoRzEAAItF0IlchaiNReBQi0XM/3SFtOj0MQAAg8QMiUXUO8MPhBQDAAAz/+gr/v//iUWwO8MPhO8CAABouPNIAFONRdhQ6Hq+//+DxAw7w3QTg/gWdQpTU1NTU+gAXAAAO8N1CotF2DvDiUXcdQfHRdyw80gAakReVlONhUz///9Q6GuKAACDxAyJtUz////HhXj///8AAQAAocDXUgA5XeSLTcB0AosIiU2Eg33kAYtNwHQDi0hAiU2Ii4CAAAAAiUWM/3Xc6NZcAACL+P91COjMXAAAA/i+qPNIAFbov1wAAI18OAFqAVfoG1kAAIPEFIlF5DvDD4QuAgAA/3XcV1DoOHwAAIPEDDvDD4VF////Vlf/deTo4dAAAIPEDDvDD4Uw/////3UIV/915OjK0AAAg8QMO8MPhRn////oJ8P//4sAiUXIU/913OiH0wAAWVmFwHUmjUWQUI2FTP///1BTU1NqAVNT/3Xk/3Xc/xW48UgAiUW86VwBAACJXQhqAb8EAQAAV+h9WAAAWVmL8Il1pDvzdShT6Mur////deTow6v///912Oi7q///g8QM6LTC//+LTciJCOlrAQAAaFRJUQBTjUUIUOj2vP//g8QMO8N0MIP4Fg+EeP7//zvDdCP/dQjofqv//1boeKv///915Ohwq////3XY6Gir//+DxBDrq4tFCGgDAQAAVlDoyNMAAIPEDIlFoDvDD4SmAAAAOB4PhJ4AAABW6HFbAABZjUQw/4lFxIoAPFwPhdcAAABqXFbozdEAAFlZOUXEdBdoGCFJAFdW6J/PAACDxAw7ww+F7v3///913OgxWwAAVolFxOgoWwAAWVmLTcQDyIt1pDvPc0H/ddxXVuhrzwAAg8QMUzvDD4W6/f//Vug00gAAWVmFwHV3jUWQUI2FTP///1BTU1NqAVNT/3XkVv8VuPFIAIlFvP91COiYqv//VuiSqv//WVn/deToiKr///912OiAqv//WVn/dcCLNVjxSAD/1v91lP/W6GrB//+LTciJCItFsDldvHQci02QiUgEi03UiQjrSjwv6S////+LRaDp4P7//4kY/3XU6FW+//9Zi0XMiVyFqIld1ItF0Dlchah0Cv90hbTo/C0AAFmLRcw5XIWodAr/dIW06OktAABZx0X8/v///+gJAAAAi0XU6E9TAADDagno6lsAAFnDagxo+JVSAOj0UgAAg03k/zPAi30IM9s7+w+VwDvDdRjow8D//8cAFgAAAOgBWQAAg8j/6YQAAABqCejAWwAAWYXAdOxqCeh2XAAAWYld/OiG+v//i/A783UN6InA///HAAkAAADrRlfomb3//+h2wP//izjob8D//4kYagH/dgSNRQhQ6A3VAACDxBCD+P91CuhSwP//gzgEdQaLRQiJReToQsD//4k4iR6JXgTHRfz+////6AkAAACLReTohFIAAMNqCegfWwAAWcOL/1WL7FNWi3UMV4PP//ZGDEB1b1boZrf//1m6QLVSADvHdBuD+P50FovIg+Efi9jB+wXB4QYDDJ3A11IA6wKLyvZBJH91JTvHdBmD+P50FIvIg+AfwfkFweAGAwSNwNdSAOsCi8L2QCSAdBforL///8cAFgAAAOjqVwAAi8dfXltdw4tdCDvfdPKLRgyoAXUIhMB556gCdeODfggAdQdW6LfUAABZiwY7Rgh1CYN+BAB1yUCJBv8O9kYMQIsGdAk4GHQHQIkG67OIGItGDP9GBIPg74PIAYlGDIvDJf8AAADrm2oMaBiWUgDoRlEAADPAOUUMD5XAhcB1Fegdv///xwAWAAAA6FtXAACDyP/rLP91DOh/rP//WYNl/AD/dQz/dQjo2P7//1lZiUXkx0X8/v///+gJAAAAi0Xk6DlRAADD/3UM6MCs//9Zw4v/VYvsVot1CItGDFeog3R5i30Uhf90CoP/AXQFg/8CdWiD4O+JRgyD/wF1D1bo2fT//wFFDFkRVRAz/1boyLH//4tGDFmEwHkIg+D8iUYM6xaoAXQSqAh0DqkABAAAdQfHRhgAAgAAV/91EP91DFbov7X//1lQ6AqzAAAjwoPEEIP4/3QPM8DrDuhCvv//xwAWAAAAg8j/X15dw2oMaDiWUgDoQVAAADPAOUUI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24vyV4m1aP///zvLdBs7w3QMUOiT/P//WenUAQAAA8mLRM5I6ckBAADHhXD///8BAAAAiZ10////O8MPhKwBAACAOEwPhTABAACAeAFDD4UmAQAAgHgCXw+FHAEAAIv4aOD0SABX6KHP//+L2FlZhdsPhP8AAAArx4mFcP///w+E8QAAAIA7Ow+E6AAAAMeFbP///wEAAAC+HPRIAOsGi4Vw////UFf/Nug4n///g8QMhcB1EP826IA6AABZOYVw////dBH/hWz///+DxgyB/kz0SAB+yUNobElRAFPoSrD//4v4M/ZZWTv+dQmAOzsPhYEAAACDvWz///8Ff0RXU42FeP///2iDAAAAUOieXwAAg8QQhcB1VIuNbP///4u1aP///4iEPXj///+NhXj///9Q6HT7//9ZhcB0Bv+FdP///wP7gD8AdApHgD8AD4UN////M8A5hXT///8PhJEAAACLtWj////pgQAAAFZWVlZW6IU4AAAzwOt4U1NTaIMAAACNjXj///9RUOj7+P//g8QYO8N0XI1+SIXbdDX/N42FeP///1DoIZ0AAFlZhcB0G42FeP///1CLy+js+v//WYXAdQghhXD////rBv+FdP///0ODxxCD+wV+vjPAOYVw////dQg5hXT///90Begz9///i038X14zzVvo7YMAAMnDahRomJZSAOgPMgAAg2XgAIN9CAV2F+jon///xwAWAAAA6CY4AAAzwOk5AQAA6IYuAACL8Il15OhtcAAAg05wEINl/AAz/0dXaNgAAADoUTUAAFlZi9iJXdyF2w+E9gAAAGoM6HQ7AABZiX38i05si8PovfT//4Nl/ADoswAAAP91DItNCIvT6Fj9//9ZiUXghcAPhLEAAACDfQwAdBlo5LxSAP91DOggnAAAWVmFwHQGiT3YyFIAagzoHjsAAFnHRfwCAAAAjX5sU1fojG8AAFPoom0AAIPEDPZGcAJ1P/YF4LxSAAF1Nv83aCi/UgDoaG8AAFlZoSi/UgCLiLwAAACJDWi0UgCLiMgAAACJDcDBUgCLgKwAAACjyMFSAINl/ADoFwAAAOsui13ci3XkM/9HagzoyjkAAFnDi3XkagzovjkAAFnD6w5T6CltAABT6LxtAABZWcdF/P7////oDAAAAItF4Oj1MAAAw4t15INmcO/Di/9Vi+yD7BRWi3UIVzP/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eFboUw8AAGgUAgAAagHo7RcAAIvwWVmF9nRJ6PUQAAD/cGxW6L8PAACLRRSDTgT/iUZYi0UcWVmJflSFwHUDjUUQUP91GFZo0GBHAP91DP91CP8V8PFIAIXAdRz/FWDwSACL2Fbo9Wr//1mF23QHU+gRgv//WTPAXl9bXcOL/1WL7FZX6NeB//+LMOjQgf///3UQgyAA/3UM/3UI6AWX//+DxAyL+Oi1gf//hf90Bokwi8frJIM4InQEM8DrG+idgf//agD/dQyJMGoA6NWW//+LTRSDxAyJAV9eXcOL/1WL7IHsaAIAAKG4tlIAM8WJRfxTVot1CDPbV4t9DIm1oP3//zvzdRzoZ4H//4kY6E2B///HABYAAADoixkAAOnyAwAAO/t04GhE80gAVuj/ZAAAWVmFwHQW6COB//9qAl6JMOgsgf//iTDpxwMAAIB+ATp1GooGOsN0BTheAnTZD77AUOjxYwAAWYPoYOsF6HJiAABTU1OJhZj9//+Nhaj9//9QU1b/FZDxSACJhaT9//+D+P8PheAAAABoQPNIAFaJnaT9///ohmQAAFlZhcB0h42FpP3//1BoBAEAAI2F+P7//1ZQ6LP+//+L8IPEEDvzD4SGAAAAVui7GQAAWYP4A3QJ6OaP//+FwHRxVv8VjPFIAIP4AXZlOZ2k/f//dAz/taT9///oVGn//1lq/1NTU2oBagFovAcAAMeFqP3//xAAAACJncT9//+Jncj9//+IndT9///oQ18AAIu1oP3//4vKg8QciUcoiVcsiUcgiU8kiUcwiU806VACAAA5naT9//8PhM/+////taT9///o62j//1npvv7///eFqP3//wAEAAB0X4G9zP3//wwAAKB1U4ONpP3///9TakBTjYWk/f//VlDotF4AAIPEFIXAD4WD/v//g72k/f///w+Edv7//1f/taT9///oz+8AAP+1pP3//4vw6Gfs//+DxAyLxukzAgAAOZ28/f//dRA5ncD9//91CIlfKIlfLOt4jYWc/f//UI2FvP3//1D/FYjxSACFwA+E4wEAAI2F6P7//1CNhZz9//9Q/xWE8UgAhcAPhMcBAAAPt4X0/v//av9QD7eF8v7//1APt4Xw/v//UA+3he7+//9QD7eF6v7//1APt4Xo/v//UOgSXgAAg8QciUcoiVcsOZ20/f//dRY5nbj9//91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IwUAAImFQOX//4qFP+X//4TAD4VnAQAAiguLtSTl//8zwID5Cg+UwImFHOX//4sGA8eDeDgAdBWKUDSIVfSITfWDYDgAagKNRfRQ60sPvsFQ6OZWAABZhcB0OouNNOX//yvLA00QM8BAO8gPhqUBAABqAo2FROX//1NQ6IDXAACDxAyD+P8PhJIEAABD/4VA5f//6xtqAVONhUTl//9Q6FzXAACDxAyD+P8PhG4EAAAzwFBQagWNTfRRagGNjUTl//9RUP+1IOX//0P/hUDl////FfTwSACL8IX2D4Q9BAAAagCNhSzl//9QVo1F9FCLhSTl//+LAP80B/8V+PFIAIXAD4QKBAAAi4VA5f//i40w5f//A8GJhTjl//85tSzl//8PjPYDAACDvRzl//8AD4TNAAAAagCNhSzl//9QagGNRfRQi4Uk5f//iwDGRfQN/zQH/xX48UgAhcAPhLEDAACDvSzl//8BD4ywAwAA/4Uw5f///4U45f//6YMAAAA8AXQEPAJ1IQ+3MzPJg/4KD5TBg8MCg4VA5f//Aom1ROX//4mNHOX//zwBdAQ8AnVS/7VE5f//6O3UAABZZjuFROX//w+FSQMAAIOFOOX//wKDvRzl//8AdClqDVhQiYVE5f//6MDUAABZZjuFROX//w+FHAMAAP+FOOX///+FMOX//4tFEDmFQOX//w+C+f3//+kIAwAAiw6KE/+FOOX//4hUDzSLDolEDzjp7wIAADPJiwP2RDgEgA+EoQIAAIC9P+X//wCJjUTl//8PhagAAACLnTTl//85TRAPhv0CAACLyzP2K4005f//jYVI5f//O00QcyaKE0NBiZ0g5f//gPoKdQv/hTDl///GAA1ARogQQEaB/v8TAABy1YvwjYVI5f//K/BqAI2FKOX//1BWjYVI5f//UIuFJOX//4sA/zQH/xX48UgAhcAPhEMCAACLhSjl//8BhTjl//87xg+MOwIAAIvDK4U05f//O0UQD4Js////6SUCAACAvT/l//8CD4XNAAAAi5005f//OU0QD4ZIAgAAg6VA5f//AIvLK4005f//agKNhUjl//9eO00Qc0MPtxMD3gPOiZ0g5f//g/oKdRoBtTDl//9qDVtmiRiLnSDl//8DxgG1QOX//wG1QOX//2aJEAPGgb1A5f///hMAAHK4i/CNhUjl//8r8GoAjYUo5f//UFaNhUjl//9Qi4Uk5f//iwD/NAf/FfjxSACFwA+EaQEAAIuFKOX//wGFOOX//zvGD4xhAQAAi8MrhTTl//87RRAPgkf////pSwEAAIuFNOX//4mFLOX//zlNEA+GdQEAAIuNLOX//4OlQOX//wArjTTl//9qAo2FSPn//147TRBzO4uVLOX//w+3EgG1LOX//wPOg/oKdQ5qDVtmiRgDxgG1QOX//wG1QOX//2aJEAPGgb1A5f//qAYAAHLAM/ZWVmhVDQAAjY3w6///UY2NSPn//yvBmSvC0fhQi8FQVmjp/QAA/xX08EgAi9g73g+ElwAAAGoAjYUo5f//UIvDK8ZQjYQ18Ov//1CLhSTl//+LAP80B/8V+PFIAIXAdAwDtSjl//873n/L6wz/FWDwSACJhUTl//873n9ci4Us5f//K4U05f//iYU45f//O0UQD4IL////6z9RjY0o5f//Uf91EP+1NOX///80OP8V+PFIAIXAdBWLhSjl//+DpUTl//8AiYU45f//6wz/FWDwSACJhUTl//+DvTjl//8AdWyDvUTl//8AdC1qBV45tUTl//91FOj4Wf//xwAJAAAA6ABa//+JMOs//7VE5f//6ARa//9Z6zGLhSTl//+LAPZEBwRAdA+LhTTl//+AOBp1BDPA6yTouFn//8cAHAAAAOjAWf//gyAAg8j/6wyLhTjl//8rhTDl//9bi038XzPNXuh0PQAAycNqEGhAmFIA6Jbr//+LXQiD+/51G+iEWf//gyAA6GlZ///HAAkAAACDyP/plAAAAIXbeAg7HazXUgByGuhdWf//gyAA6EJZ///HAAkAAADogPH//+vSi8PB+AWNPIXA11IAi/OD5h/B5gaLBw++RDAEg+ABdMZT6OBKAABZg2X8AIsH9kQwBAF0FP91EP91DFPobvj//4PEDIlF5OsX6OhY///HAAkAAADo8Fj//4MgAINN5P/HRfz+////6AwAAACLReToH+v//8OLXQhT6ChLAABZw2oQaGCYUgDowur//4tdCIP7/nUT6J1Y///HAAkAAACDyP/poQAAAIXbeAg7HazXUgByEuh+WP//xwAJAAAA6Lzw///r2ovDwfgFjTyFwNdSAIvzg+YfweYGiwcPvkQGBIPgAXTOU+gcSgAAWYNl/ACLB/ZEBgQBdDFT6J9JAABZUP8V4PBIAIXAdQv/FWDwSACJReTrBINl5ACDfeQAdBnoJFj//4tN5IkI6AdY///HAAkAAACDTeT/x0X8/v///+gMAAAAi0Xk6Ebq///Di10IU+hPSgAAWcOL/1WL7FaLdQiF9nUV6MtX///HABYAAADoCfD//+n6AAAAi0YMqIMPhO8AAACoQA+F5wAAAKgCdAuDyCCJRgzp2AAAAIPIAYlGDKkMAQAAdQlW6MVsAABZ6wWLRgiJBv92GP92CFbo1U7//1lQ6IIcAACDxAyJRgSFwA+EiwAAAIP4/w+EggAAAPZGDIJ1UVboq07//1mD+P90MFbon07//1mD+P50JFdW6JJO///B+AVWjTyFwNdSAOiCTv//g+AfWcHgBgMHWV/rBbhAtVIAikAEJII8gnUHgU4MACAAAIF+GAACAAB1FYtGDKgIdA6pAAQAAHUHx0YYABAAAIsO/04ED7YBQYkO6xT32BvAg+AQg8AQCUYMg2YEAIPI/15dw/ZBDEB0BoN5CAB0JP9JBHgLixGIAv8BD7bA6wwPvsBRUOh3DAAAWVmD+P91AwkGw/8Gw4v/VYvsUfZDDEBWi/CLB4lF/HQNg3sIAHUHi0UMAQbrPoMnAIN9DAB+MItFCIoA/00Mi8volP////9FCIM+/3UOgz8qdQ+Ly7A/6H7///+DfQwAf9WDPwB1BYtF/IkHXsnDi/9Vi+yB7IACAAChuLZSADPFiUX8U4tdDFaLdQgzwFeLfRT/dRCNjaT9//+JtdD9//+JveT9//+JhbT9//+JhfD9//+Jhcj9//+Jhej9//+Jhcz9//+Jhbz9//+JhcT9///oPFv//+i6Vf//iYWU/f//hfZ1K+irVf//xwAWAAAA6Ont//+AvbD9//8AdAqLhaz9//+DYHD9g8j/6TcLAAD2RgxAdV5W6NxM//9ZukC1UgCD+P90G4P4/nQWi8iD4R+L8MH+BcHhBgMMtcDXUgDrAovK9kEkf3Wbg/j/dBmD+P50FIvIg+AfwfkFweAGAwSNwNdSAOsCi8L2QCSAD4Vx////M8k72Q+EZ////4oTiY3c/f//iY3Y/f//iY24/f//iJXv/f//hNIPhI4KAABDM/aJncD9//85tdz9//8PjHkKAACNQuA8WHcPD77CD76A4AJJAIPgD+sCM8APvoTBAANJAGoHwfgEWYmFjP3//zvBD4cgCgAA/ySFeplHAION6P3///+JtYj9//+Jtbz9//+Jtcj9//+Jtcz9//+JtfD9//+JtcT9///p6QkAAA++woPoIHRKg+gDdDaD6Ah0JUhIdBWD6AMPhcoJAACDjfD9//8I6b4JAACDjfD9//8E6bIJAACDjfD9//8B6aYJAACBjfD9//+AAAAA6ZcJAACDjfD9//8C6YsJAACA+ip1LIPHBIm95P3//4t//Im9yP3//zv+D41sCQAAg43w/f//BPedyP3//+laCQAAi4XI/f//a8AKD77KjUQI0ImFyP3//+k/CQAAibXo/f//6TQJAACA+ip1JoPHBIm95P3//4t//Im96P3//zv+D40VCQAAg43o/f///+kJCQAAi4Xo/f//a8AKD77KjUQI0ImF6P3//+nuCAAAgPpJdFWA+mh0RID6bHQYgPp3D4XWCAAAgY3w/f//AAgAAOnHCAAAgDtsdRZDgY3w/f//ABAAAImdwP3//+msCAAAg43w/f//EOmgCAAAg43w/f//IOmUCAAAigM8NnUegHsBNHUYg8MCgY3w/f//AIAAAImdwP3//+lwCAAAPDN1HoB7ATJ1GIPDAoGl8P3///9///+JncD9///pTggAADxkD4RGCAAAPGkPhD4IAAA8bw+ENggAADx1D4QuCAAAPHgPhCYIAAA8WA+EHggAAIm1jP3//yG1xP3//42FpP3//1APtsJQ6FpKAABZhcCKhe/9//9ZdCKLjdD9//+Ntdz9///otvv//4oDQ4mdwP3//4TAD4Sw/P//i43Q/f//jbXc/f//6JT7///pvgcAAA++woP4ZA+PtgEAAA+EWAIAAIP4Uw+PugAAAHRMg+hBdBBISHQkSEh0CEhID4WrBQAAgMIgx4WI/f//AQAAAIiV7/3//+lWAgAA94Xw/f//MAgAAA+FngAAAIGN8P3//wAIAADpjwAAAPeF8P3//zAIAAB1CoGN8P3//wAIAACLjej9//+D+f91Bbn///9/g8cE94Xw/f//EAgAAIm95P3//4t//Im94P3//w+E/gQAAIX/dQuhtLZSAImF4P3//4uF4P3//8eFxP3//wEAAADpzAQAAIPoWA+EIgMAAEhIdH8rwQ+EtgEAAEhID4XrBAAAi73k/f//g8cE94Xw/f//EAgAAIm95P3//3QwD7dH/FBoAAIAAI2F9P3//1CNhdj9//9Q6FfLAACDxBCFwHQfx4W8/f//AQAAAOsTikf8iIX0/f//x4XY/f//AQAAAI2F9P3//4mF4P3//+l8BAAAiweDxwSJveT9//+FwHQ7i0gEhcl0NPeF8P3//wAIAAAPvwCJjeD9//90FJkrwtH4x4XE/f//AQAAAOk3BAAAIbXE/f//6SwEAAChsLZSAImF4P3//1Doxun//1npFQQAAIP4cA+PPQIAAA+EJQIAAIP4ZQ+MAwQAAIP4Zw+OtwAAAIP4aXR8g/hudC6D+G8PhecDAAD2hfD9//+Ai73k/f//x4XY/f//CAAAAHRsgY3w/f//AAIAAOtgg4Xk/f//BIuF5P3//4tw/Ojmd///hcAPhGL6///2hfD9//8gdAxmi4Xc/f//ZokG6wiLhdz9//+JBseFvP3//wEAAADpPgUAAIu95P3//4ON8P3//0DHhdj9//8KAAAAi43w/f//98EAgAAAD4TgAQAAiweLVwSDxwjpDAIAAIu95P3//4ON8P3//0CNnfT9//+4AAIAAImd4P3//4mFoP3//zm16P3//30Mx4Xo/f//BgAAAOtqdRGA+md1Y8eF6P3//wEAAADrVzmF6P3//34GiYXo/f//gb3o/f//owAAAH49i7Xo/f//gcZdAQAAVuiU5P//ipXv/f//WYmFuP3//4XAdBCJheD9//+JtaD9//+L2OsKx4Xo/f//owAAAIsHizVw8UgAg8cIiYWA/f//i0f8iYWE/f//jYWk/f//UP+1iP3//w++wv+16P3//4m95P3//1D/taD9//+NhYD9//9TUP817MFSAP/W/9CLvfD9//+DxByB54AAAAB0HYO96P3//wB1FI2FpP3//1BT/zX4wVIA/9b/0FlZgL3v/f//Z3UYhf91FI2FpP3//1BT/zX0wVIA/9b/0FlZgDstdRGBjfD9//8AAQAAQ4md4P3//1Ppwf3//8eF6P3//wgAAACJjbT9///rKoPocw+Ebvz//0hID4RY/v//g+gDD4W7AQAAi73k/f//x4W0/f//JwAAAPaF8P3//4DHhdj9//8QAAAAD4Qy/v//ioW0/f//BFHGhdT9//8wiIXV/f//x4XM/f//AgAAAOkO/v//98EAEAAAD4UU/v//g8cE9sEgdBiJveT9///2wUB0Bg+/R/zrBA+3R/yZ6xOLR/z2wUB0A5nrAjPSib3k/f//9sFAdBqF0n8WfASFwHMQ99gT1vfagY3w/f//AAEAAPeF8P3//wCQAACL+ovYdQIz/zm16P3//30Mx4Xo/f//AQAAAOsag6Xw/f//97gAAgAAOYXo/f//fgaJhej9//+LwwvHdQYhtcz9//+NdfOLhej9////jej9//+FwH8Gi8MLx3Qti4XY/f//mVJQV1PosrwAAIPBMImdoP3//4vYi/qD+Tl+BgONtP3//4gOTuu9jUXzK8ZG94Xw/f//AAIAAImF2P3//4m14P3//3RihcB0B4vOgDkwdFf/jeD9//+LjeD9///GATBA6z9JZjkwdAeDwAKFyXXzK4Xg/f//0fjrKIX/dQuhsLZSAImF4P3//4uF4P3//+sHSYA4AHQFQIXJdfUrheD9//+Jhdj9//+Dvbz9//8AD4W4AQAAi43w/f//9sFAdDX3wQABAAB0CcaF1P3//y3rGvbBAXQJxoXU/f//K+sM9sECdBHGhdT9//8gx4XM/f//AQAAAIuFyP3//yuF2P3//yuFzP3//4mFoP3///bBDHUli/jrHYuN0P3//4213P3//7AgT+gw9f//g73c/f///3QEhf9/3/+1zP3//4u9lP3//4ud0P3//42F1P3//1CNhdz9///oMvX///aF8P3//whZWXQu9oXw/f//BHUli72g/f//6xmNtdz9//+Ly7AwT+jT9P//g73c/f///3QEhf9/44O9xP3//wCLhdj9//90dYXAfnGLteD9//+JhZj9//8Ptwb/jZj9//9QagaNRfRQjYWQ/f//UIPGAuh6xQAAg8QQhcB1NjmFkP3//3Qu/7WQ/f//i72U/f//i53Q/f//jUX0UI2F3P3//+iL9P//g72Y/f//AFlZdabrI4ON3P3////rGou9lP3//1D/teD9//+Nhdz9///oXfT//1lZg73c/f//AHwy9oXw/f//BHQpi72g/f//6x2LjdD9//+Ntdz9//+wIE/o+vP//4O93P3///90BIX/f9+Dvbj9//8AdBP/tbj9///okzP//4OluP3//wBZi53A/f//igOIhe/9//+EwHQTi42M/f//i73k/f//itDpcvX//4C9sP3//wB0CouFrP3//4NgcP2Lhdz9//+LTfxfXjPNW+gpLgAAycOQFJFHABOPRwBDj0cAoY9HAO2PRwD4j0cAPpBHAG6R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g/tvD4+EBQAAD4RfCAAAg/tjD4QVBAAAamRYO9gPhEsIAAAPjo4FAACD+2d+R4P7aXQhg/tuD4V7BQAAgL1j/v//AIu9dP7//w+EqQoAAOnQCgAAiYVM/v//i51s/v//g/stD4WGBgAAxoVZ/v//Ael/BgAAM9uDvWz+//8tdQyLhVD+///GAC1D6wmDvWz+//8rdR3/jWT+//+LlVz+////hXT+///oefv//4mFbP7//4O9SP7//wB1B4ONZP7///8PtoVs/v//62uLhWT+////jWT+//+FwHRmioVs/v//i41Q/v///4VU/v//iAQLjYUw/v//UI2FfP7//1BDU429UP7//421JP7//+id+v//g8QMhcAPhN0KAACLlVz+////hXT+///o+Pr//4mFbP7//w+2wFDoiMD+/1mFwHWKi4UE/v//i4C8AAAAiwCKAIiFWP7//zqFbP7//w+F5QAAAIuFZP7///+NZP7//4XAD4TRAAAAi5Vc/v///4V0/v//6J36//+LjVD+//+JhWz+//+KhVj+//+IBAuNhTD+//9QjYV8/v//UENTjb1Q/v//jbUk/v//6PD5//+DxAyFwA+EMAoAAA+2hWz+///ra4uFZP7///+NZP7//4XAdGaLhVD+//+KjWz+////hVT+//+IDAONhTD+//9QjYV8/v//UENTjb1Q/v//jbUk/v//6Jb5//+DxAyFwA+E1gkAAIuVXP7///+FdP7//+jx+f//iYVs/v//D7bAUOiBv/7/WYXAdYqDvVT+//8AD4RfAQAAg71s/v//ZXQNg71s/v//RQ+FSQEAAIuFZP7///+NZP7//4XAD4Q1AQAAi4VQ/v//xgQDZY2FMP7//1CNhXz+//9QQ1ONvVD+//+NtST+///oBPn//4PEDIXAD4RECQAAi5Vc/v///4V0/v//6F/5//+JhWz+//+D+C11LIuFUP7//8YEAy2NhTD+//9QjYV8/v//UENT6L74//+DxAyFwA+E/ggAAOsJg71s/v//K3Uvi4Vk/v///41k/v//hcB1CCGFZP7//+sXi5Vc/v///4V0/v//6Pb4//+JhWz+//8PtoVs/v//62uLhWT+////jWT+//+FwHRmi4VQ/v//io1s/v///4VU/v//iAwDjYUw/v//UI2FfP7//1BDU429UP7//421JP7//+gq+P//g8QMhcAPhGoIAACLlVz+////hXT+///ohfj//4mFbP7//w+2wFDoFb7+/1mFwHWK/410/v//g71s/v///3QT/7Vc/v///7Vs/v//6OvZ/v9ZWYO9VP7//wAPhBYIAACAvWP+//8AD4U0BwAAi4VQ/v///4U0/v//jY0E/v//UVD/tUD+///GBAMAD76Fe/7//0hQ/zXwwVIA/xVw8UgA/9CDxBDp9wYAAIXJdRD/hWT+///HhUj+//8BAAAAgL1r/v//AH4HxoVa/v//Af+NdP7//4O9bP7///+L/nQT/7Vc/v///7Vs/v//6EzZ/v9ZWYO9SP7//wB0FIuFZP7///+NZP7//4XAD4SKAwAAi5Vc/v///4V0/v//6IL3//+JhWz+//+D+P8PhFEDAACD+2N0TIP7c3UTg/gJfAmD+A0PjjkDAACD+CB1NIP7ew+FKwMAAA++nVj+//8z0ovIg+EHQtPii8jB+QMPvkwN3DPLi51M/v//hdEPhAADAACAvWP+//8AD4XtAgAAgL1a/v//AA+E0gIAAIiFIP7//w+2wFDotJD//1mFwHQXi5Vc/v///4V0/v//6OP2//+IhSH+//+NhQT+//9Qi4UE/v//x4UU/v//PwAAAP+wrAAAAI2FIP7//1CNhRT+//9Q6BYQAABmi4UU/v//g8QQZokGg8YC6WUCAACLw4PocA+EzwIAAIPoAw+EoP7//0hID4TFAgAAg+gDD4So+v//g+gDdDMPtgc7hWz+//8Phf8FAAD+jVv+//+AvWP+//8AD4VLBQAAi4UA/v//iYUY/v//6ToFAACAvWv+//8AfgfGhVr+//8BgH8BXo13AXUKjXcCxoVY/v///2ogjUXcagBQ6Epe//+DxAyAPl11DLJdRsZF5yDpngAAAIqVL/7//+mTAAAARjwtdXGE0nRtig6A+V10ZkY60XMIiI17/v//6wiIlXv+//+K0TqVe/7//3MsioV7/v//KsIPtvoPttCLz4PhB4vHswHS48HoA41EBdwIGEdKdeiLnUz+//8Pto17/v//i8GD4QeyAdLiwegDjUQF3AgQMtLrHQ+2yIrQi8GD4QezAdLjwegDjUQF3AgYi51M/v//igY8XQ+FY////4TAD4QbBQAAibVE/v//i7VA/v//6WL9//+D+yt1Lv+NZP7//3UNhcl0CcaFc/7//wHrGYuVXP7///+FdP7//+gL9f//i9iJnWz+//+D+zAPhYoBAACLlVz+////hXT+///o6fT//4vYiZ1s/v//gPt4dF+A+1h0WoO9TP7//3jHhVT+//8BAAAAdCaDvUj+//8AdA7/jWT+//91Bv6Fc/7//8eFTP7//28AAADpLgEAAP+NdP7//4P7/3QO/7Vc/v//U+gh1v7/WVlqMFvpBwEAAIuVXP7///+FdP7//+hs9P//g71I/v//AIvYiZ1s/v//dBaDrWT+//8Cg71k/v//AX0G/oVz/v//x4VM/v//eAAAAOnGAAAAiAZGibVA/v//6Xj8//9H6XL8////jXT+//+D+P90Dv+1XP7//1DopdX+/1lZO/4PhNUDAACAvWP+//8AD4XzAgAA/4U0/v//g/tjD4TkAgAAgL1a/v//AHQQi41A/v//M8BmiQHpywIAAIuFQP7//8YAAOm9AgAAxoV7/v//AYudbP7//4P7LXUJxoVZ/v//AesFg/srdS7/jWT+//91DYXJdAnGhXP+//8B6xmLlVz+////hXT+///oePP//4vYiZ1s/v//g70o/v//AA+EPAEAAIC9c/7//wAPhfgAAACDvUz+//94dF2DvUz+//9wdFQPtsNQ6Nq4/v9ZhcAPhLsAAACDvUz+//9vdR6D+zgPjakAAACLtTj+//+LvTz+//8PpPcDweYD60tqAGoK/7U8/v///7U4/v//6EWy//+L8Iv66zAPtsNQ6Aq5/v9ZhcB0a4u1OP7//4u9PP7//w+k9wRTweYE6Kny//+L2FmJnWz+////hVT+//+NQ9CZA/AT+oO9SP7//wCJtTj+//+JvTz+//90CP+NZP7//3Q3i5Vc/v///4V0/v//6ITy//+L2ImdbP7//+kh/////410/v//g/v/dA7/tVz+//9T6PrT/v9ZWYC9Wf7//wCLvRz+//8PhOwAAACLhTj+//+LjTz+///32IPRAPfZiYU4/v//iY08/v//6cgAAACAvXP+//8Ai70c/v//D4WqAAAAg71M/v//eHQvg71M/v//cHQmD7bDUOiYt/7/WYXAdHGDvUz+//9vdQqD+zh9Y8HnA+sla/8K6yAPtsNQ6Pa3/v9ZhcB0S1PB5wTopfH//4vYWYmdbP7///+FVP7//4O9SP7//wCNfB/QdAj/jWT+//90N4uVXP7///+FdP7//+iQ8f//i9iJnWz+///pb/////+NdP7//4P7/3QO/7Vc/v//U+gG0/7/WVmAvVn+//8AdAL334O9TP7//0Z1B4OlVP7//wCDvVT+//8AD4QWAQAAgL1j/v//AHU4/4U0/v//i7VA/v//g70o/v//AHQTi4U4/v//iQaLhTz+//+JRgTrEIC9e/7//wB0BIk+6wNmiT6LvUT+///+hVv+//9Hib1E/v//62Q8JXUGOEcBdQFHi5Vc/v///4V0/v//6NHw//+L2A+2B0eJnWz+//+JvUT+//87w3V3D7bDUOhtiv//WYXAdCWLlVz+////hXT+///onPD//w+2D0eJvUT+//87yHU3/410/v//g71s/v///3UTgD8ldU6LhUT+//+AeAFudUKL+IoHhMAPhb7x///rNIO9bP7////rFoP4/3QO/7Vc/v//UOjg0f7/WVmD+/90E/+1XP7///+1bP7//+jI0f7/WVmDvTD+//8BdQz/tVD+///oznr+/1mDvWz+////dSqLhTT+//+FwHULOIVb/v//dQODyP+AvRD+//8AdCWLjQz+//+DYXD96xmAvRD+//8AdAqLhQz+//+DYHD9i4U0/v//W4tN/F8zzV7oXXX//8nDV4vGg+APhcAPhcEAAACL0YPhf8HqB3Rl6waNmwAAAABmD28GZg9vThBmD29WIGYPb14wZg9/B2YPf08QZg9/VyBmD39fMGYPb2ZAZg9vblBmD292YGYPb35wZg9/Z0BmD39vUGYPf3dgZg9/f3CNtoAAAACNv4AAAABKdaOFyXRJi9HB6gSF0nQXjZsAAAAAZg9vBmYPfweNdhCNfxBKde+D4Q90JIvBwekCdA2LFokXjXYEjX8ESXXzi8iD4QN0CYoGiAdGR0l191heX13DuhAAAAAr0CvKUYvCi8iD4QN0CYoWiBdGR0l198HoAnQNixaJF412BI1/BEh181npC////2oK/xWs8EgAo5zXUgAzwMPMzMzMzMzMzFaLRCQUC8B1KItMJBCLRCQMM9L38YvYi0QkCPfxi/CLw/dkJBCLyIvG92QkEAPR60eLyItcJBCLVCQMi0QkCNHp0dvR6tHYC8l19Pfzi/D3ZCQUi8iLRCQQ9+YD0XIOO1QkDHcIcg87RCQIdglOK0QkEBtUJBQz2ytEJAgbVCQM99r32IPaAIvKi9OL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CJvZvVz///+AjTj9//8C6DMCAADoAwAAAFvJw4ClOP3///6DPdzRUgAAdU/dlTD9//+KhXD///8KwHQaPP90Wzz+dD8KwHQzD77AiYVy////6bIAAABmi4Vc////ZoPgIHUYm9/gZoPgIHQPx4Vy////CAAAAOmNAAAA2a1c////m8Nmi4U2/f//ZiXwf2YLwHQbZj3wf3RD67tmi4U2/f//ZiXwf2Y98H90MOuox4Vy////BAAAAN0FiOhRANnJ2f3d2dnA2eHcHXjoUQCb3+CeczTcDZjoUQDrLMeFcv///wMAAADdBYDoUQDZydn93dnZwNnh3B1w6FEAm9/gnnYG3A2Q6FEAVleLnWz///9DiZ12////9oU4/f//AXUa/I11CI29ev///6WlgHsMAXQIjXUQjX2CpaXdXYqNhXL///+NnVz///9TUIudbP///4pDDg++wFDoaywAAIPEDF9e3UWK6RH///9Vi+yBxDD9//9T/3UM/3UI6B4AAACDxAib2b1c////gKU4/f///ehLAAAA6IL+//9bycNVi+yDxPRTZotFDmaL2GYl8H9mPfB/dR5mgcv/f2aJXf6LRQyLXQgPpNgLiUX6iV3222326wPdRQhbycPMzMzMzMzMgHoOBXURZoudXP///4DPAoDn/rM/6wRmuz8TZomdXv///9mtXv///7u86FEA2eWJlWz///+b3b1g////xoVw////AJuKjWH////Q4dD50MGKwSQP1w++wIHhBAQAAIvaA9iDwxD/I4B6DgV1EWaLnVz///+AzwKA5/6zP+sEZrs/E2aJnV7////ZrV7///+7vOhRANnliZVs////m929YP///8aFcP///wDZyYqNYf///9nlm929YP///9nJiq1h////0OXQ/dDFisUkD9eK4NDh0PnQwYrBJA/X0OTQ5ArED77AgeEEBAAAi9oD2IPDEP8j6MEAAADZyd3Yw+i3AAAA6/bd2N3Y2e7D3djd2Nnow9u9Yv///9utYv////aFaf///0B0CMaFcP///wfDxoVw////AdwFtOhRAMPZydu9Yv///9utYv////aFaf///0B0CcaFcP///wfrB8aFcP///wHewcPbvWL////brWL////2hWn///9AdCDZydu9Yv///9utYv////aFaf///0B0CcaFcP///wfrB8aFcP///wHe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RUZHSElKS0xNTk9QUVJTVFVWV1hZWltcXV5fYGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6e3x9fn8AXy4sAD0AAAA9OwAAQ29yRXhpdFByb2Nlc3MAAG0AcwBjAG8AcgBlAGUALgBkAGwAbAAAAElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQAAAERpcmVjdG9yeSBub3QgZW1wdHkARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAAAAAE5vIGxvY2tzIGF2YWlsYWJsZQAARmlsZW5hbWUgdG9vIGxvbmcAAABSZXNvdXJjZSBkZWFkbG9jayBhdm9pZGVkAAAAUmVzdWx0IHRvbyBsYXJnZQAAAABEb21haW4gZXJyb3IAAAAAQnJva2VuIHBpcGUAVG9vIG1hbnkgbGlua3MAAFJlYWQtb25seSBmaWxlIHN5c3RlbQAAAEludmFsaWQgc2VlawAAAABObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBGaWxlIHRvbyBsYXJnZQAASW5hcHByb3ByaWF0ZSBJL08gY29udHJvbCBvcGVyYXRpb24AVG9vIG1hbnkgb3BlbiBmaWxlcwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQAAAElzIGEgZGlyZWN0b3J5AABOb3QgYSBkaXJlY3RvcnkATm8gc3VjaCBkZXZpY2UAAEltcHJvcGVyIGxpbmsAAABGaWxlIGV4aXN0cwBSZXNvdXJjZSBkZXZpY2UAQmFkIGFkZHJlc3MAUGVybWlzc2lvbiBkZW5pZWQAAABOb3QgZW5vdWdoIHNwYWNlAAAAAFJlc291cmNlIHRlbXBvcmFyaWx5IHVuYXZhaWxhYmxlAAAAAE5vIGNoaWxkIHByb2Nlc3NlcwAAQmFkIGZpbGUgZGVzY3JpcHRvcgBFeGVjIGZvcm1hdCBlcnJvcgAAAEFyZyBsaXN0IHRvbyBsb25nAAAATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwAAAElucHV0L291dHB1dCBlcnJvcgAASW50ZXJydXB0ZWQgZnVuY3Rpb24gY2FsbAAAAE5vIHN1Y2ggcHJvY2VzcwBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AAAAT3BlcmF0aW9uIG5vdCBwZXJtaXR0ZWQAcgB1AG4AdABpAG0AZQAgAGUAcgByAG8AcgAgAAAAAAANAAoAAAAAAFQATABPAFMAUwAgAGUAcgByAG8AcgANAAoAAABTAEkATgBHACAAZQByAHIAbwByAA0ACgAAAAAARABPAE0AQQBJAE4AIABlAHIAcgBvAHIADQAKAAAAAAAAAAAAUgA2ADAAMwAzAA0ACgAtACAAQQB0AHQAZQBtAHAAdAAgAHQAbwAgAHUAcwBlACAATQBTAEkATAAgAGMAbwBkAGUAIABmAHIAbwBtACAAdABoAGkAcwAgAGEAcwBzAGUAbQBiAGwAeQAgAGQAdQByAGkAbgBnACAAbgBhAHQAaQB2AGUAIABjAG8AZABlACAAaQBuAGkAdABpAGEAbABpAHoAYQB0AGkAbwBuAAoAVABoAGkAcwAgAGkAbgBkAGkAYwBhAHQAZQBzACAAYQAgAGIAdQBnACAAaQBuACAAeQBvAHUAcgAgAGEAcABwAGwAaQBjAGEAdABpAG8AbgAuACAASQB0ACAAaQBzACAAbQBvAHMAdAAgAGwAaQBrAGUAbAB5ACAAdABoAGUAIAByAGUAcwB1AGwAdAAgAG8AZgAgAGMAYQBsAGwAaQBuAGcAIABhAG4AIABNAFMASQBMAC0AYwBvAG0AcABpAGwAZQBkACAAKAAvAGMAbAByACkAIABmAHUAbgBjAHQAaQBvAG4AIABmAHIAbwBtACAAYQAgAG4AYQB0AGkAdgBlACAAYwBvAG4AcwB0AHIAdQBjAHQAbwByACAAbwByACAAZgByAG8AbQAgAEQAbABsAE0AYQBpAG4ALgANAAoAAAAAAFIANgAwADMAMgANAAoALQAgAG4AbwB0ACAAZQBuAG8AdQBnAGgAIABzAHAAYQBjAGUAIABmAG8AcgAgAGwAbwBjAGEAbABlACAAaQBuAGYAbwByAG0AYQB0AGkAbwBuAA0ACgAAAAAAUgA2ADAAMwAxAA0ACgAtACAAQQB0AHQAZQBtAHAAdAAgAHQAbwAgAGkAbgBpAHQAaQBhAGwAaQB6AGUAIAB0AGgAZQAgAEMAUgBUACAAbQBvAHIAZQAgAHQAaABhAG4AIABvAG4AYwBlAC4ACgBUAGgAaQBzACAAaQBuAGQAaQBjAGEAdABlAHMAIABhACAAYgB1AGcAIABpAG4AIAB5AG8AdQByACAAYQBwAHAAbABpAGMAYQB0AGkAbwBuAC4ADQAKAAAAAABSADYAMAAzADAADQAKAC0AIABDAFIAVAAgAG4AbwB0ACAAaQBuAGkAdABpAGEAbABpAHoAZQBkAA0ACgAAAAAAUgA2ADAAMgA4AA0ACgAtACAAdQBuAGEAYgBsAGUAIAB0AG8AIABpAG4AaQB0AGkAYQBsAGkAegBlACAAaABlAGEAcAANAAoAAAAAAAAAAABSADYAMAAyADcADQAKAC0AIABuAG8AdAAgAGUAbgBvAHUAZwBoACAAcwBwAGEAYwBlACAAZgBvAHIAIABsAG8AdwBpAG8AIABpAG4AaQB0AGkAYQBsAGkAegBhAHQAaQBvAG4ADQAKAAAAAAAAAAAAUgA2ADAAMgA2AA0ACgAtACAAbgBvAHQAIABlAG4AbwB1AGcAaAAgAHMAcABhAGMAZQAgAGYAbwByACAAcwB0AGQAaQBvACAAaQBuAGkAdABpAGEAbABpAHoAYQB0AGkAbwBuAA0ACgAAAAAAAAAAAFIANgAwADIANQANAAoALQAgAHAAdQByAGUAIAB2AGkAcgB0AHUAYQBsACAAZgB1AG4AYwB0AGkAbwBuACAAYwBhAGwAbAANAAoAAAAAAAAAUgA2ADAAMgA0AA0ACgAtACAAbgBvAHQAIABlAG4AbwB1AGcAaAAgAHMAcABhAGMAZQAgAGYAbwByACAAXwBvAG4AZQB4AGkAdAAvAGEAdABlAHgAaQB0ACAAdABhAGIAbABlAA0ACgAAAAAAAAAAAFIANgAwADEAOQANAAoALQAgAHUAbgBhAGIAbABlACAAdABvACAAbwBwAGUAbgAgAGMAbwBuAHMAbwBsAGUAIABkAGUAdgBpAGMAZQANAAoAAAAAAAAAAABSADYAMAAxADgADQAKAC0AIAB1AG4AZQB4AHAAZQBjAHQAZQBkACAAaABlAGEAcAAgAGUAcgByAG8AcgANAAoAAAAAAAAAAABSADYAMAAxADcADQAKAC0AIAB1AG4AZQB4AHAAZQBjAHQAZQBkACAAbQB1AGwAdABpAHQAaAByAGUAYQBkACAAbABvAGMAawAgAGUAcgByAG8AcgANAAoAAAAAAAAAAABSADYAMAAxADYADQAKAC0AIABuAG8AdAAgAGUAbgBvAHUAZwBoACAAcwBwAGEAYwBlACAAZgBvAHIAIAB0AGgA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Z3JlYXQgYnJpdGFpbgAAAGVuZ2xhbmQAY3plY2gAAABjaGluYQAAAGJyaXRhaW4AYW1lcmljYQB1c2EAdXMAAHVrAABzd2lzcwAAAHN3ZWRpc2gtZmlubGFuZABzcGFuaXNoLXZlbmV6dWVsYQAAAHNwYW5pc2gtdXJ1Z3VheQBzcGFuaXNoLXB1ZXJ0byByaWNvAHNwYW5pc2gtcGVydQAAAABzcGFuaXNoLXBhcmFndWF5AAAAAHNwYW5pc2gtcGFuYW1hAABzcGFuaXNoLW5pY2FyYWd1YQAAAHNwYW5pc2gtbW9kZXJuAABzcGFuaXNoLW1leGljYW4Ac3BhbmlzaC1ob25kdXJhcwAAAABzcGFuaXNoLWd1YXRlbWFsYQAAAHNwYW5pc2gtZWwgc2FsdmFkb3IAc3BhbmlzaC1lY3VhZG9yAHNwYW5pc2gtZG9taW5pY2FuIHJlcHVibGljAABzcGFuaXNoLWNvc3RhIHJpY2EAAHNwYW5pc2gtY29sb21iaWEAAAAAc3BhbmlzaC1jaGlsZQAAAHNwYW5pc2gtYm9saXZpYQBzcGFuaXNoLWFyZ2VudGluYQAAAHBvcnR1Z3Vlc2UtYnJhemlsaWFuAAAAAG5vcndlZ2lhbi1ueW5vcnNrAAAAbm9yd2VnaWFuLWJva21hbAAAAABub3J3ZWdpYW4AAABpdGFsaWFuLXN3aXNzAAAAaXJpc2gtZW5nbGlzaAAAAGdlcm1hbi1zd2lzcwAAAABnZXJtYW4tbHV4ZW1ib3VyZwAAAGdlcm1hbi1saWNodGVuc3RlaW4AZ2VybWFuLWF1c3RyaWFuAGZyZW5jaC1zd2lzcwAAAABmcmVuY2gtbHV4ZW1ib3VyZwAAAGZyZW5jaC1jYW5hZGlhbgBmcmVuY2gtYmVsZ2lhbgAAZW5nbGlzaC11c2EAZW5nbGlzaC11cwAAZW5nbGlzaC11awAAZW5nbGlzaC10cmluaWRhZCB5IHRvYmFnbwAAAGVuZ2xpc2gtc291dGggYWZyaWNhAAAAAGVuZ2xpc2gtbnoAAGVuZ2xpc2gtamFtYWljYQBlbmdsaXNoLWlyZQBlbmdsaXNoLWNhcmliYmVhbgAAAGVuZ2xpc2gtY2FuAGVuZ2xpc2gtYmVsaXplAABlbmdsaXNoLWF1cwBlbmdsaXNoLWFtZXJpY2Fu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ZnVuY3Rpb24gJyVzJwAAACVzICclcycAbWFpbiBjaHVuawAAZnVuY3Rpb24gPCVzOiVkPgAAAAA/AAAAc3RhY2sgdHJhY2ViYWNrOgAAAAAKCS4uLgAAAFNsbnQAAAAACgklczoAAAAlZDoAIGluIAAAAAAKCSguLi50YWlsIGNhbGxzLi4uKQAAAABiYWQgYXJndW1lbnQgIyVkICglcykAAABuAAAAbWV0aG9kAABjYWxsaW5nICclcycgb24gYmFkIHNlbGYgKCVzKQAAAGJhZCBhcmd1bWVudCAjJWQgdG8gJyVzJyAoJXMpAAAAX19uYW1lAABsaWdodCB1c2VyZGF0YQAAJXMgZXhwZWN0ZWQsIGdvdCAlcwBTbAAAJXM6JWQ6IAAlczogJXMAAGV4aXQAAAAAaW52YWxpZCBvcHRpb24gJyVzJwBzdGFjayBvdmVyZmxvdyAoJXMpAHN0YWNrIG92ZXJmbG93AAB2YWx1ZSBleHBlY3RlZAAAbnVtYmVyIGhhcyBubyBpbnRlZ2VyIHJlcHJlc2VudGF0aW9uAAAAAG5vdCBlbm91Z2ggbWVtb3J5IGZvciBidWZmZXIgYWxsb2NhdGlvbgBMVUFCT1gAAGJ1ZmZlciB0b28gbGFyZ2UAAAAAY2Fubm90ICVzICVzOiAlcwAAAADvu78AQCVzAHIAAABvcGVuAAAAABtMdWEAAAAAcmIAAHJlb3BlbgAAcmVhZAAAAABvYmplY3QgbGVuZ3RoIGlzIG5vdCBhbiBpbnRlZ2VyACdfX3Rvc3RyaW5nJyBtdXN0IHJldHVybiBhIHN0cmluZwAAACVJAAAlZgAAdHJ1ZQAAAABmYWxzZQAAAG5pbAAlczogJXAAAHRvbyBtYW55IHVwdmFsdWVzAAAAUEFOSUM6IHVucHJvdGVjdGVkIGVycm9yIGluIGNhbGwgdG8gTHVhIEFQSSAoJXMpCgAAAGNvcmUgYW5kIGxpYnJhcnkgaGF2ZSBpbmNvbXBhdGlibGUgbnVtZXJpYyB0eXBlcwAAAABtdWx0aXBsZSBMdWEgVk1zIGRldGVjdGVkAAAAdmVyc2lvbiBtaXNtYXRjaDogYXBwLiBuZWVkcyAlZiwgTHVhIGNvcmUgcHJvdmlkZXMgJWYAAABfU0NSSVBUX0RJUgBjYW5ub3Qgb3BlbiAAAAAAOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AF9TQ1JJUFQAdW5hYmxlIHRvIGVuY29kZSBwYXRoAAAAdW5hYmxlIHRvIHN3aXRjaCB0byBkaXJlY3RvcnkgJyVzJwAAdW5hYmxlIHRvIHNldCBtb2RlICVvIG9uICclcycsIGVycm5vICVkIDogJXMAAAAAdW5hYmxlIHRvIGVuY29kZSBmaXJzdCBwYXRoAHVuYWJsZSB0byBlbmNvZGUgc2Vjb25kIHBhdGgAAAAAcgBiAAAAAABmYWlsZWQgdG8gb3BlbiBmaXJzdCBmaWxlAAAAZmFpbGVkIHRvIG9wZW4gc2Vjb25kIGZpbGUAAGZhaWxlZCB0byByZWFkIGZpcnN0IGZpbGUgY29udGVudAAAAGZhaWxlZCB0byByZWFkIHNlY29uZCBmaWxlIGNvbnRlbnQAAChlcnJvciB3aXRoIG5vIG1lc3NhZ2UpAFVuYWJsZSB0byBjb21waWxlICclcyc6ICVzAAB1bmFibGUgdG8gd3JpdGUgdG8gJyVzJwB1bmFibGUgdG8gZW5jb2RlIHNvdXJjZSBwYXRoAAAAAHVuYWJsZSB0byBjb3B5IGZpbGUgdG8gJyVzJwBIS0NVOgAAAEhLTE06AAAASEtDUjoAAABIS1U6AAAAAEhLQ0M6AAAAbWFqb3J2ZXJzaW9uAAAAAG1pbm9ydmVyc2lvbgAAAAByZXZpc2lvbgAAAABkZXNjcmlwdGlvbgBrZXJuZWwzMi5kbGwAAAAAXAAAAFdpbmRvd3MAU29mdHdhcmVcTWljcm9zb2Z0XFdpbmRvd3MgTlRcQ3VycmVudFZlcnNpb24AAAAAcHJvZHVjdE5hbWUAd2luZG93cwBJc1dvdzY0UHJvY2VzcwAAawBlAHIAbgBlAGwAMwAyAAAAAAB1bmFibGUgdG8gZW5jb2RlIGZpbGVwYXRoAAAALwAAAHByZW1ha2UAcGF0aAAAAAAkLwAAdW5hYmxlIHRvIGVuY29kZSBtYXNrAAAAdW5hYmxlIHRvIGRlY29kZSBmaWxlbmFtZQAAAC4AAAAuAC4AAAAAAHVuYWJsZSB0byBjcmVhdGUgZGlyZWN0b3J5ICclcycAdW5hYmxlIHRvIGZldGNoIHJlYWwgcGF0aCBvZiAnJXMnLCBlcnJubyAlZCA6ICVzAAAAAGZhaWxlZCB0byB0cmFuc2xhdGUgZXJyb3IgbWVzc2FnZQAAAGZhaWxlZCB0byBnZXQgZXJyb3IgbWVzc2FnZQB1bmFibGUgdG8gZW5jb2RlIGRlc3QgcGF0aAAAdW5hYmxlIHRvIHJlbW92ZSBkaXJlY3RvcnkgJyVzJwAnJXMnIGNvdWxkIG5vdCBiZSBhY2Nlc3NlZAAAJyVzJyB3YXMgbm90IGZvdW5kAABBbiAgdW5rbm93biBlcnJvciAlZCBvY2N1cmVkIHdoaWxlIGFjY2Vzc2luZyAnJXMnAAAAbXRpbWUAAABzaXplAAAAAGFiAAAgAAAAdW5hYmxlIHRvIHRvdWNoIGZpbGUgJyVzJwAAAHcAYgAAAAAAdW5hYmxlIHRvIG9wZW4gZmlsZSB0byAnJXMnAAAAAAAlMDJYJTAyWCUwMlglMDJYLSUwMlglMDJYLSUwMlglMDJYLSUwMlglMDJYLSUwMlglMDJYJTAyWCUwMlglMDJYJTAyWAAAAAB1bmFibGUgdG8gd3JpdGUgZmlsZSB0byAnJXMnAAAAAC4uAAAuLi8ALi8AACoqAABub3JtYWxpemUAAABnZXREZWZhdWx0U2VwYXJhdG9yAFdpbGRjYXJkcyBleHBhbnNpb24gdG9vIGJpZy4AAAAAZXh0cmFjdABkb3dubG9hZAAAAABwb3N0AAAAAGdldABzZXRUZXh0Q29sb3IAAAAAZ2V0VGV4dENvbG9yAAAAAGNsb3NlAAAAdG9zdHJpbmcAAAAAd3JpdGVsbgB3cml0ZQAAAG5ldwBzdGFydHN3aXRoAABzaGExAAAAAGhhc2gAAAAAZW5kc3dpdGgAAAAAZ2V0RW1iZWRkZWRSZXNvdXJjZQBjb21waWxlAHRvdWNoZmlsZQAAAHdyaXRlZmlsZV9pZm5vdGVxdWFsAAAAAHV1aWQAAAAAc3RhdAAAAABybWRpcgAAAHJlYWxwYXRoAAAAAHBhdGhzZWFyY2gAAHJlbmFtZQAAcmVtb3ZlAABta2RpcgAAAG1hdGNoc3RhcnQAAG1hdGNobmV4dAAAAG1hdGNobmFtZQAAAG1hdGNoaXNmaWxlAG1hdGNoZG9uZQAAAGxvY2F0ZQAAaXNsaW5rAABpc2ZpbGUAAGhvc3QAAAAAZ2V0dmVyc2lvbgAAZ2V0V2luZG93c1Jl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BAAAAAQAAAAEAAAABAAAAAUAAAAFAAAABQAAAAUAAAAAAAAACgoKCgsLCwsODQsLCwsGBgQEBQUHBwcHCQgDAwMDAwMDAwMDAwMCAgEBAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAACAAAAAgAAAAMAAAADAAAABAAAAAQAAAAFAAAABQAAAAYAAAAGAAAABwAAAAcAAAAIAAAACAAAAAkAAAAJAAAACgAAAAoAAAALAAAACwAAAAwAAAAMAAAADQAAAA0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAMAAAAHAAAAAAAAAAwACACMAAgATAAIAMwACAAsAAgArAAIAGwACADsAAgAHAAIAJwACABcAAgA3AAIADwACAC8AAgAfAAIAPwACAACAAgAggAIAEIACADCAAgAIgAIAKIACABiAAgA4gAIABIACACSAAgAUgAIANIACAAyAAgAsgAIAHIACADyAAgACgAIAIoACABKAAgAygAIACoACACqAAgAagAIAOoACAAaAAgAmgAIAFoACADaAAgAOgAIALoACAB6AAgA+gAIAAYACACGAAgARgAIAMYACAAmAAgApgAIAGYACADmAAgAFgAIAJYACABWAAgA1gAIADYACAC2AAgAdgAIAPYACAAOAAgAjgAIAE4ACADOAAgALgAIAK4ACABuAAgA7gAIAB4ACACeAAgAXgAIAN4ACAA+AAgAvgAIAH4ACAD+AAgAAQAIAIEACABBAAgAwQAIACEACAChAAgAYQAIAOEACAARAAgAkQAIAFEACADRAAgAMQAIALEACABxAAgA8QAIAAkACACJAAgASQAIAMkACAApAAgAqQAIAGkACADpAAgAGQAIAJkACABZAAgA2QAIADkACAC5AAgAeQAIAPkACAAFAAgAhQAIAEUACADFAAgAJQAIAKUACABlAAgA5QAIABUACACVAAgAVQAIANUACAA1AAgAtQAIAHUACAD1AAgADQAIAI0ACABNAAgAzQAIAC0ACACtAAgAbQAIAO0ACAAdAAgAnQAIAF0ACADdAAgAPQAIAL0ACAB9AAgA/QAIABMACQATAQkAkwAJAJMBCQBTAAkAUwEJANMACQDTAQkAMwAJADMBCQCzAAkA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ID0gIkMiCnByZW1ha2UuQzcgICAgICAgICAgPSAiYzciCnByZW1ha2UuQ0xBTkcgICAgICAgPSAiY2xhbmciCnByZW1ha2UuQ09OU09MRUFQUCAgPSAiQ29uc29sZUFwcCIKcHJlbWFrZS5DUFAgICAgICAgICA9ICJDKysiCnByZW1ha2UuQ1NIQVJQICAgICAgPSAiQyMiCnByZW1ha2UuR0NDICAgICAgICAgPSAiZ2NjIgpwcmVtYWtlLkhBSUtVICAgICAgID0gImhhaWt1IgpwcmVtYWtlLkxJTlVYICAgICAgID0gImxpbnV4IgpwcmVtYWtlLk1BQ09TWCAgICAgID0gIm1hY29zeCIKcHJlbWFrZS5NQUtFRklMRSAgICA9ICJNYWtlZmlsZSIKcHJlbWFrZS5NQkNTICAgICAgICA9ICJNQkNTIgpwcmVtYWtlLk5PTkUgICAgICAgID0gIk5vbmUiCnByZW1ha2UuREVGQVVMVCAgICAgPSAiRGVmYXVsdCIKcHJlbWFrZS5PTiAgICAgICAgICA9ICJPbiIKcHJlbWFrZS5PRkYgICAgICAgICA9ICJPZmYiCnByZW1ha2UuUE9TSVggICAgICAgPSAicG9zaXgiCnByZW1ha2UuUFMzICAgICAgICAgPSAicHMzIgpwcmVtYWtlLlNIQVJFRExJQiAgID0gIlNoYXJlZExpYiIKcHJlbWFrZS5TVEFUSUNMSUIgICA9ICJTdGF0aWNMaWIiCnByZW1ha2UuVU5JQ09ERSAgICAgPSAiVW5pY29kZSIKcHJlbWFrZS5VTklWRVJTQUwgICA9ICJ1bml2ZXJzYWwiCnByZW1ha2UuVVRJTElUWSAgICAgPSAiVXRpbGl0eSIKcHJlbWFrZS5XSU5ET1dFREFQUCA9ICJXaW5kb3dlZEFwcCIKcHJlbWFrZS5XSU5ET1dTICAgICA9ICJ3aW5kb3dzIgpwcmVtYWtlLlg4NiAgICAgICAgID0gIng4NiIKcHJlbWFrZS5YODZfNjQgICAgICA9ICJ4ODZfNjQiCnByZW1ha2UuQVJNICAgICAgICAgPSAiQVJNIgpwcmVtYWtlLlhCT1gzNjAgICAgID0gInhib3gzNjAiCmZ1bmN0aW9uIHAuYWxpYXMoc2NvcGUsIGNhbm9uaWNhbCwgYWxpYXMpCnNjb3BlLCBjYW5vbmljYWwgPSBwLnJlc29sdmVBbGlhcyhzY29wZSwgY2Fub25pY2FsKQppZiBub3Qgc2NvcGVbY2Fub25pY2FsXSB0aGVuCmVycm9yKCJ1bmFibGUgdG8gYWxpYXMgJyIgLi4gY2Fub25pY2FsIC4uICInOyBubyBzdWNoIGZ1bmN0aW9uIiwgMikKZW5kCl9hbGlhc2VzW3Njb3BlXSA9IF9hbGlhc2VzW3Njb3BlXSBvciB7fQpfYWxpYXNlc1tzY29wZV1bYWxpYXNdID0gY2Fub25pY2FsCnNjb3BlW2FsaWFzXSA9IGZ1bmN0aW9uKC4uLikKcmV0dXJuIHNjb3BlW2Nhbm9uaWNhbF0oLi4uKQplbmQKZW5kCmZ1bmN0aW9uIHByZW1ha2UuY2FsbEFycmF5KGZ1bmNzLCAuLi4pCmlmIHR5cGUoZnVuY3MpID09ICJmdW5jdGlvbiIgdGhlbgpmdW5jcyA9IGZ1bmNzKC4uLikKZW5kCmlmIGZ1bmNzIHRoZW4KZm9yIGkgPSAxLCAjZnVuY3MgZG8KZnVuY3NbaV0oLi4uKQplbmQKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLmNhbGxhcnJheShuYW1lc3BhY2UsIGFycmF5LCAuLi4pCmxvY2FsIG4gPSAjYXJyYXkKZm9yIGkgPSAxLCBuIGRvCmxvY2FsIGZuID0gbmFtZXNwYWNlW2FycmF5W2ldXQppZiBub3QgZm4gdGhlbgplcnJvcihzdHJpbmcuZm9ybWF0KCJVbmFibGUgdG8gZmluZCBmdW5jdGlvbiAnJXMnIiwgYXJyYXlbaV0pKQplbmQKZm4oLi4uKQplbmQKZW5kCmZ1bmN0aW9uIHAuY2hlY2tWZXJzaW9uKHZlcnNpb24sIGNoZWNrcykKaWYgbm90IHZlcnNpb24gdGhlbgpyZXR1cm4gZmFsc2UKZW5kCmlmIG5vdCBwcmVtYWtlLmlzU2VtVmVyKHZlcnNpb24pIHRoZW4KcC53YXJuKCInIiAuLiB2ZXJzaW9uIC4uICInIGlzIG5vdCBzZW12ZXIgY29tcGF0aWJsZSwgYW5kIGNhbm5vdCBiZSBjb21wYXJlZCBhZ2FpbnN0ICciIC4uIGNoZWNrcyAuLiAiJy4iKTsKcmV0dXJuIHRydWUKZW5kCmxvY2FsIGZ1bmN0aW9uIGVxKGEsIGIpIHJldHVybiBhID09IGIgZW5kCmxvY2FsIGZ1bmN0aW9uIGxlKGEsIGIpIHJldHVybiBhIDw9IGIgZW5kCmxvY2FsIGZ1bmN0aW9uIGx0KGEsIGIpIHJldHVybiBhIDwgYiAgZW5kCmxvY2FsIGZ1bmN0aW9uIGdlKGEsIGIpIHJldHVybiBhID49IGIgZW5kCmxvY2FsIGZ1bmN0aW9uIGd0KGEsIGIpIHJldHVybiBhID4gYiAgZW5kCmxvY2FsIGZ1bmN0aW9uIGNvbXBhdChhLCBiKSByZXR1cm4gYSBeIGIgIGVuZAp2ZXJzaW9uID0gc2VtdmVyKHZlcnNpb24pCmNoZWNrcyA9IHN0cmluZy5leHBsb2RlKGNoZWNrcywgIiAiLCB0cnVlKQpmb3IgaSA9IDEsICNjaGVja3MgZG8KbG9jYWwgY2hlY2sgPSBjaGVja3NbaV0KbG9jYWwgZnVuYwppZiBjaGVjazpzdGFydHN3aXRoKCI+PSIpIHRoZW4KZnVuYyA9IGdlCmNoZWNrID0gY2hlY2s6c3ViKDMpCmVsc2VpZiBjaGVjazpzdGFydHN3aXRoKCI+IikgdGhlbgpmdW5jID0gZ3QKY2hlY2sgPSBjaGVjazpzdWIoMikKZWxzZWlmIGNoZWNrOnN0YXJ0c3dpdGgoIjw9IikgdGhlbgpmdW5jID0gbGUKY2hlY2sgPSBjaGVjazpzdWIoMykKZWxzZWlmIGNoZWNrOnN0YXJ0c3dpdGgoIjwiKSB0aGVuCmZ1bmMgPSBsdApjaGVjayA9IGNoZWNrOnN1YigyKQplbHNlaWYgY2hlY2s6c3RhcnRzd2l0aCgiPSIpIHRoZW4KZnVuYyA9IGVxCmNoZWNrID0gY2hlY2s6c3ViKDIpCmVsc2VpZiBjaGVjazpzdGFydHN3aXRoKCJeIikgdGhlbgpmdW5jID0gY29tcGF0CmNoZWNrID0gY2hlY2s6c3ViKDIpCmVsc2UKZnVuYyA9IGdlCmVuZApjaGVjayA9IHNlbXZlcihjaGVjaykKaWYgbm90IGZ1bmModmVyc2lvbiwgY2hlY2spIHRoZW4KcmV0dXJuIGZhbHNlCmVuZAplbmQKcmV0dXJuIHRydWUKZW5kCmZ1bmN0aW9uIHByZW1ha2UuY2xlYXJXYXJuaW5ncygpCl93YXJuaW5ncyA9IHt9CmVuZApmdW5jdGlvbiBwcmVtYWtlLmVycm9yKG1lc3NhZ2UsIC4uLikKZXJyb3Ioc3RyaW5nLmZvcm1hdCgiKiogRXJyb3I6ICIgLi4gbWVzc2FnZSwgLi4uKSwgMCkKZW5kCmZ1bmN0aW9uIHByZW1ha2UuZmluZFByb2plY3RTY3JpcHQoZm5hbWUpCnJldHVybiBvcy5sb2NhdGUoZm5hbWUsIGZuYW1lIC4uICIubHVhIiwgcGF0aC5qb2luKGZuYW1lLCAicHJlbWFrZTUubHVhIiksIHBhdGguam9pbihmbmFtZSwgInByZW1ha2U0Lmx1YSIpKQplbmQKZnVuY3Rpb24gaWlmKGNvbmRpdGlvbiwgdHJ1ZVZhbHVlLCBmYWxzZVZhbHVlKQppZiBjb25kaXRpb24gdGhlbgpyZXR1cm4gdHJ1ZVZhbHVlCmVsc2UKcmV0dXJuIGZhbHNlVmFsdWUKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLm92ZXJyaWRlKHNjb3BlLCBuYW1lLCByZXBsKQpzY29wZSwgbmFtZSA9IHAucmVzb2x2ZUFsaWFzKHNjb3BlLCBuYW1lKQpsb2NhbCBvcmlnaW5hbCA9IHNjb3BlW25hbWVdCmlmIG5vdCBvcmlnaW5hbCB0aGVuCmVycm9yKCJ1bmFibGUgdG8gb3ZlcnJpZGUgJyIgLi4gbmFtZSAuLiAiJzsgbm8gc3VjaCBmdW5jdGlvbiIsIDIpCmVuZApzY29wZVtuYW1lXSA9IGZ1bmN0aW9uKC4uLikKcmV0dXJuIHJlcGwob3JpZ2luYWwsIC4uLikKZW5kCmlmIHNjb3BlID09IHByZW1ha2UubWFpbiB0aGVuCnRhYmxlLnJlcGxhY2UocHJlbWFrZS5tYWluLmVsZW1lbnRzLCBvcmlnaW5hbCwgc2NvcGVbbmFtZV0pCmVuZAplbmQKZnVuY3Rpb24gcC5yZXNvbHZlQWxpYXMoc2NvcGUsIG5hbWUpCmxvY2FsIGFsaWFzZXMgPSBfYWxpYXNlc1tzY29wZV0KaWYgYWxpYXNlcyB0aGVuCndoaWxlIGFsaWFzZXNbbmFtZV0gZG8KbmFtZSA9IGFsaWFzZXNbbmFtZV0KZW5kCmVuZApyZXR1cm4gc2NvcGUsIG5hbWUKZW5kCmZ1bmN0aW9uIHByZW1ha2Uud2FybihtZXNzYWdlLCAuLi4pCm1lc3NhZ2UgPSBzdHJpbmcuZm9ybWF0KG1lc3NhZ2UsIC4uLikKaWYgX09QVElPTlMuZmF0YWwgdGhlbgplcnJvcihtZXNzYWdlKQplbHNlCnRlcm0ucHVzaENvbG9yKHRlcm0ud2FybmluZ0NvbG9yKQppby5zdGRlcnI6d3JpdGUoc3RyaW5nLmZvcm1hdCgiKiogV2FybmluZzogIiAuLiBtZXNzYWdlIC4uICJcbiIsIC4uLikpCnRlcm0ucG9wQ29sb3IoKTsKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLndhcm5PbmNlKGtleSwgbWVzc2FnZSwgLi4uKQppZiBub3QgX3dhcm5pbmdzW2tleV0gdGhlbgpfd2FybmluZ3Nba2V5XSA9IHRydWUKcHJlbWFrZS53YXJuKG1lc3NhZ2UsIC4uLikKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLmluZm8obWVzc2FnZSwgLi4uKQptZXNzYWdlID0gc3RyaW5nLmZvcm1hdChtZXNzYWdlLCAuLi4pCnRlcm0ucHVzaENvbG9yKHRlcm0uaW5mb0NvbG9yKQppby5zdGRvdXQ6d3JpdGUoc3RyaW5nLmZvcm1hdCgiKiogSW5mbzogIiAuLiBtZXNzYWdlIC4uICJcbiIsIC4uLikpCnRlcm0ucG9wQ29sb3IoKTsKZW5kCmZ1bmN0aW9uIHByaW50Zihtc2csIC4uLikKcHJpbnQoc3RyaW5nLmZvcm1hdChtc2csIC4uLikpCmVuZApmdW5jdGlvbiB2ZXJib3NlZihtc2csIC4uLikKaWYgX09QVElPTlMudmVyYm9zZSB0aGVuCnByaW50KHN0cmluZy5mb3JtYXQobXNnLCAuLi4pKQplbmQKZW5kCmZ1bmN0aW9uIGZpbGVsaW5laW5mbyhsZXZlbCkKbG9jYWwgaW5mbyA9IGRlYnVnLmdldGluZm8obGV2ZWwrMSwgIlNsIikKaWYgaW5mbyA9PSBuaWwgdGhlbgpyZXR1cm4gbmlsCmVuZAppZiBpbmZvLndoYXQgPT0gIkMiIHRoZW4KcmV0dXJuICJDIGZ1bmN0aW9uIgplbHNlCmxvY2FsIHNlcCA9IGlpZihvcy5pc2hvc3QoJ3dpbmRvd3MnKSwgJ1xcJywgJy8nKQpyZXR1cm4gc3RyaW5nLmZvcm1hdCgiJXMoJWQpIiwgcGF0aC50cmFuc2xhdGUoaW5mby5zaG9ydF9zcmMsIHNlcCksIGluZm8uY3VycmVudGxpbmUpCmVuZAplbmQKZnVuY3Rpb24gcHJlbWFrZS5pc1NlbVZlcih2ZXJzaW9uKQpsb2NhbCBzTWFqb3IsIHNNaW5vciwgc1BhdGNoLCBzUHJlcmVsZWFzZUFuZEJ1aWxkID0gdmVyc2lvbjptYXRjaCgiXiglZCspJS4/KCVkKiklLj8oJWQqKSguLSkkIikKcmV0dXJuICh0eXBlKHNNYWpvcikgPT0gJ3N0cmluZycpCmVuZAoAAAAAAGZ1bmN0aW9uIHN0cmluZy5jYXBpdGFsaXplZChzZWxmKQpyZXR1cm4gc2VsZjpnc3ViKCJeJWwiLCBzdHJpbmcudXBwZXIpCmVuZApmdW5jdGlvbiBzdHJpbmcuY29udGFpbnMocywgbWF0Y2gpCnJldHVybiBzdHJpbmcuZmluZChzLCBtYXRjaCwgMSwgdHJ1ZSkgfj0gbmlsCmVuZApmdW5jdGlvbiBzdHJpbmcuZXhwbG9kZShzLCBwYXR0ZXJuLCBwbGFpbiwgbWF4VG9rZW5zKQppZiAocGF0dGVybiA9PSAnJykgdGhlbiByZXR1cm4gZmFsc2UgZW5kCmxvY2FsIHBvcyA9IDAKbG9jYWwgYXJyID0geyB9CmZvciBzdCxzcCBpbiBmdW5jdGlvbigpIHJldHVybiBzOmZpbmQocGF0dGVybiwgcG9zLCBwbGFpbikgZW5kIGRvCnRhYmxlLmluc2VydChhcnIsIHM6c3ViKHBvcywgc3QtMSkpCnBvcyA9IHNwICsgMQppZiBtYXhUb2tlbnMgfj0gbmlsIGFuZCBtYXhUb2tlbnMgPiAwIHRoZW4KbWF4VG9rZW5zID0gbWF4VG9rZW5zIC0gMQppZiBtYXhUb2tlbnMgPT0gMCB0aGVuCmJyZWFrCmVuZAplbmQKZW5kCnRhYmxlLmluc2VydChhcnIsIHM6c3ViKHBvcykpCnJldHVybiBhcnIKZW5kCmZ1bmN0aW9uIHN0cmluZy5maW5kbGFzdChzLCBwYXR0ZXJuLCBwbGFpbikKbG9jYWwgY3VyciA9IDAKcmVwZWF0CmxvY2FsIG5leHQgPSBzOmZpbmQocGF0dGVybiwgY3VyciArIDEsIHBsYWluKQppZiAobmV4dCkgdGhlbiBjdXJyID0gbmV4dCBlbmQKdW50aWwgKG5vdCBuZXh0KQppZiAoY3VyciA+IDApIHRoZW4KcmV0dXJuIGN1cnIKZW5kCmVuZApmdW5jdGlvbiBzdHJpbmcubGluZXMocykKbG9jYWwgdHJhaWxpbmcsIG4gPSBzOmdzdWIoJy4tXG4nLCAnJykKaWYgI3RyYWlsaW5nID4gMCB0aGVuCm4gPSBuICsgMQplbmQKcmV0dXJuIG4KZW5kCmZ1bmN0aW9uIHN0cmluZzpwbHVyYWwoKQppZiBzZWxmOmVuZHN3aXRoKCJ5IikgdGhlbgpyZXR1cm4gc2VsZjpzdWIoMSwgI3NlbGYgLSAxKSAuLiAiaWVzIgplbHNlCnJldHVybiBzZWxmIC4uICJzIgplbmQKZW5kCmZ1bmN0aW9uIHN0cmluZy5lc2NhcGVwYXR0ZXJuKHMpCnJldHVybiBzOmdzdWIoIlslKCUpJS4lJSUrJS0lKiU/JVslXSVeJSRdIiwgIiUlJTAiKQplbmQKAGZ1bmN0aW9uIHRhYmxlLmFycmF5Y29weShvYmplY3QpCmxvY2FsIHJlc3VsdCA9IHt9CmZvciBpLCB2YWx1ZSBpbiBpcGFpcnMob2JqZWN0KSBkbwpyZXN1bHRbaV0gPSB2YWx1ZQplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gdGFibGUuY29udGFpbnModCwgdmFsdWUpCmZvciBfLHYgaW4gcGFpcnModCkgZG8KaWYgKHYgPT0gdmFsdWUpIHRoZW4KcmV0dXJuIHRydWUKZW5kCmVuZApyZXR1cm4gZmFsc2UKZW5kCmZ1bmN0aW9uIHRhYmxlLnNoYWxsb3djb3B5KG9iamVjdCkKbG9jYWwgY29weSA9IHt9CmZvciBrLCB2IGluIHBhaXJzKG9iamVjdCkgZG8KY29weVtrXSA9IHYKZW5kCnJldHVybiBjb3B5CmVuZApmdW5jdGlvbiB0YWJsZS5kZWVwY29weShvYmplY3QpCmxvY2FsIHNlZW4gPSB7fQpsb2NhbCBmdW5jdGlvbiBjb3B5KG9iamVjdCkKaWYgdHlwZShvYmplY3QpIH49ICJ0YWJsZSIgdGhlbgpyZXR1cm4gb2JqZWN0CmVsc2VpZiBzZWVuW29iamVjdF0gdGhlbgpyZXR1cm4gc2VlbltvYmplY3RdCmVuZApsb2NhbCBjbG9uZSA9IHt9CnNlZW5bb2JqZWN0XSA9IGNsb25lCmZvciBrZXksIHZhbHVlIGluIHBhaXJzKG9iamVjdCkgZG8KY2xvbmVba2V5XSA9IGNvcHkodmFsdWUpCmVuZApzZXRtZXRhdGFibGUoY2xvbmUsIGdldG1ldGF0YWJsZShvYmplY3QpKQpyZXR1cm4gY2xvbmUKZW5kCnJldHVybiBjb3B5KG9iamVjdCkKZW5kCmZ1bmN0aW9uIHRhYmxlLmV4dHJhY3QoYXJyLCBmbmFtZSkKbG9jYWwgcmVzdWx0ID0geyB9CmZvciBfLHYgaW4gaXBhaXJzKGFycikgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgdltmbmFtZV0pCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiB0YWJsZS5maWx0ZXIoYXJyLCBmbikKbG9jYWwgcmVzdWx0ID0geyB9CnRhYmxlLmZvcmVhY2hpKGFyciwgZnVuY3Rpb24odmFsKQppZiBmbih2YWwpIHRoZW4KdGFibGUuaW5zZXJ0KHJlc3VsdCwgdmFsKQplbmQKZW5kKQpyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiB0YWJsZS5mbGF0dGVuKGFycikKbG9jYWwgcmVzdWx0ID0ge30KbG9jYWwgZnVuY3Rpb24gZmxhdHRlbihhcnIpCmxvY2FsIG4gPSAjYXJyCmZvciBpID0gMSwgbiBkbwpsb2NhbCB2ID0gYXJyW2ldCmlmIHR5cGUodikgPT0gInRhYmxlIiB0aGVuCmZsYXR0ZW4odikKZWxzZWlmIHYgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCB2KQplbmQKZW5kCmVuZApmbGF0dGVuKGFycikKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gdGFibGUuZm9yZWFjaGkoYXJyLCBmdW5jKQppZiBhcnIgdGhlbgpsb2NhbCBuID0gI2Fycgpmb3IgaSA9IDEsIG4gZG8KbG9jYWwgdiA9IGFycltpXQppZiB2IHRoZW4KZnVuYyh2KQplbmQKZW5kCmVuZAplbmQKZnVuY3Rpb24gdGFibGUuZm9sZChsaXN0MSwgbGlzdDIpCmxvY2FsIHJlc3VsdCA9IHt9CmZvciBfLCBpdGVtMSBpbiBpcGFpcnMobGlzdDEgb3Ige30pIGRvCmlmIGxpc3QyIGFuZCAjbGlzdDIgPiAwIHRoZW4KZm9yIF8sIGl0ZW0yIGluIGlwYWlycyhsaXN0MikgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgeyBpdGVtMSwgaXRlbTIgfSkKZW5kCmVsc2UKdGFibGUuaW5zZXJ0KHJlc3VsdCwgeyBpdGVtMSB9KQplbmQKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIHRhYmxlLmltcGxvZGUoYXJyLCBiZWZvcmUsIGFmdGVyLCBiZXR3ZWVuKQpsb2NhbCByZXN1bHQgPSAiIgpmb3IgXyx2IGluIGlwYWlycyhhcnIpIGRvCmlmIChyZXN1bHQgfj0gIiIgYW5kIGJldHdlZW4pIHRoZW4KcmVzdWx0ID0gcmVzdWx0IC4uIGJldHdlZW4KZW5kCnJlc3VsdCA9IHJlc3VsdCAuLiBiZWZvcmUgLi4gdiAuLiBhZnRlcgplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gdGFibGUuaW5kZXhvZih0YmwsIG9iaikKZm9yIGssIHYgaW4gcGFpcnModGJsKSBkbwppZiB2ID09IG9iaiB0aGVuCnJldHVybiBrCmVuZAplbmQKZW5kCmZ1bmN0aW9uIHRhYmxlLmluc2VydGFmdGVyKHRibCwgYWZ0ZXIsIHZhbHVlKQpsb2NhbCBpID0gdGFibGUuaW5kZXhvZih0YmwsIGFmdGVyKQppZiBpIHRoZW4KdGFibGUuaW5zZXJ0KHRibCwgaSArIDEsIHZhbHVlKQplbHNlCnRhYmxlLmluc2VydCh0YmwsIHZhbHVlKQplbmQKZW5kCmZ1bmN0aW9uIHRhYmxlLmluc2VydGZsYXQodGJsLCB2YWx1ZXMpCmlmIHZhbHVlcyA9PSBuaWwgdGhlbgpyZXR1cm4KZWxzZWlmIHR5cGUodmFsdWVzKSA9PSAidGFibGUiIHRoZW4KZm9yIF8sIHZhbHVlIGluIGlwYWlycyh2YWx1ZXMpIGRvCnRhYmxlLmluc2VydGZsYXQodGJsLCB2YWx1ZSkKZW5kCmVsc2UKdGFibGUuaW5zZXJ0KHRibCwgdmFsdWVzKQplbmQKcmV0dXJuIHRibAplbmQKZnVuY3Rpb24gdGFibGUuaW5zZXJ0a2V5ZWQodGJsLCBwb3MsIHZhbHVlKQppZiB2YWx1ZSA9PSBuaWwgdGhlbgp2YWx1ZSA9IHBvcwpwb3MgPSAjdGJsICsgMQplbmQKdGFibGUuaW5zZXJ0KHRibCwgcG9zLCB2YWx1ZSkKdGJsW3ZhbHVlXSA9IHZhbHVlCmVuZApmdW5jdGlvbiB0YWJsZS5pbnNlcnRzb3J0ZWQodGJsLCB2YWx1ZSwgZm4pCmlmIHZhbHVlID09IG5pbCB0aGVuCnJldHVybgplbHNlCmZuID0gZm4gb3IgZnVuY3Rpb24oYSwgYikgcmV0dXJuIGEgPCBiIGVuZApsb2NhbCBtaW5pbmRleCA9IDEKbG9jYWwgbWF4aW5kZXggPSAjdGJsICsgMQp3aGlsZSBtaW5pbmRleCA8IG1heGluZGV4IGRvCmxvY2FsIGluZGV4ID0gbWluaW5kZXggKyAoKG1heGluZGV4IC0gbWluaW5kZXgpID4+IDEpCmxvY2FsIHRlc3QgPSB0YmxbaW5kZXhdCmlmIGZuKHZhbHVlLCB0ZXN0KSB0aGVuCm1heGluZGV4ID0gaW5kZXgKZWxzZQptaW5pbmRleCA9IGluZGV4ICsgMQppZiBub3QgZm4odGVzdCwgdmFsdWUpIHRoZW4KYnJlYWsKZW5kCmVuZAplbmQKdGFibGUuaW5zZXJ0KHRibCwgbWluaW5kZXgsIHZhbHVlKQplbmQKcmV0dXJuIHRibAplbmQKZnVuY3Rpb24gdGFibGUuaXNlbXB0eSh0KQpyZXR1cm4gbmV4dCh0KSA9PSBuaWwKZW5kCmZ1bmN0aW9uIHRhYmxlLmpvaW4oLi4uKQpsb2NhbCByZXN1bHQgPSB7IH0KbG9jYWwgYXJnID0gey4uLn0KZm9yIF8sdCBpbiBpcGFpcnMoYXJnKSBkbwppZiB0eXBlKHQpID09ICJ0YWJsZSIgdGhlbgpmb3IgXyx2IGluIGlwYWlycyh0KSBkbwp0YWJsZS5pbnNlcnQocmVzdWx0LCB2KQplbmQKZWxzZQp0YWJsZS5pbnNlcnQocmVzdWx0LCB0KQplbmQKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIHRhYmxlLmtleXModGJsKQpsb2NhbCBrZXlzID0ge30KZm9yIGssIF8gaW4gcGFpcnModGJsKSBkbwp0YWJsZS5pbnNlcnQoa2V5cywgaykKZW5kCnJldHVybiBrZXlzCmVuZApmdW5jdGlvbiB0YWJsZS5tZXJnZSguLi4pCmxvY2FsIHJlc3VsdCA9IHt9CmxvY2FsIGFyZyA9IHsuLi59CmZvciBfLHQgaW4gaXBhaXJzKGFyZykgZG8KaWYgdHlwZSh0KSA9PSAidGFibGUiIHRoZW4KZm9yIGssdiBpbiBwYWlycyh0KSBkbwppZiB0eXBlKHJlc3VsdFtrXSkgPT0gInRhYmxlIiBhbmQgdHlwZSh2KSA9PSAidGFibGUiIHRoZW4KcmVzdWx0W2tdID0gdGFibGUubWVyZ2UocmVzdWx0W2tdLCB2KQplbHNlCnJlc3VsdFtrXSA9IHYKZW5kCmVuZAplbHNlCmVycm9yKCJpbnZhbGlkIHZhbHVlIikKZW5kCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiB0YWJsZS5yZXBsYWNlKHNlbGYsIHZhbHVlLCByZXBsYWNlbWVudCkKZm9yIGkgPSAxLCAjc2VsZiBkbwppZiBzZWxmW2ldID09IHZhbHVlIHRoZW4Kc2VsZltpXSA9IHJlcGxhY2VtZW50CmVuZAplbmQKZW5kCmZ1bmN0aW9uIHRhYmxlLnRyYW5zbGF0ZShhcnIsIHRyYW5zbGF0aW9uKQppZiBub3QgdHJhbnNsYXRpb24gdGhlbiByZXR1cm4ge30gZW5kCmxvY2FsIHJlc3VsdCA9IHt9CmZvciBfLCB2YWx1ZSBpbiBpcGFpcnMoYXJyKSBkbwpsb2NhbCB0dmFsdWUKaWYgdHlwZSh0cmFuc2xhdGlvbikgPT0gImZ1bmN0aW9uIiB0aGVuCnR2YWx1ZSA9IHRyYW5zbGF0aW9uKHZhbHVlKQplbHNlCnR2YWx1ZSA9IHRyYW5zbGF0aW9uW3ZhbHVlXQplbmQKaWYgKHR2YWx1ZSkgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCB0dmFsdWUpCmVuZAplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gdGFibGUudG9zdHJpbmcodGFiLCByZWN1cnNlLCBpbmRlbnQpCmxvY2FsIHJlcyA9ICcnCmlmIG5vdCBpbmRlbnQgdGhlbgppbmRlbnQgPSAwCmVuZApsb2NhbCBmb3JtYXRfdmFsdWUgPSBmdW5jdGlvbihrLCB2LCBpKQpmb3JtYXR0aW5nID0gc3RyaW5nLnJlcCgiXHQiLCBpKQppZiBrIHRoZW4KaWYgdHlwZShrKSA9PSAidGFibGUiIHRoZW4KayA9ICdbdGFibGVdJwplbmQKZm9ybWF0dGluZyA9IGZvcm1hdHRpbmcgLi4gayAuLiAiOiAiCmVuZAppZiBub3QgdiB0aGVuCnJldHVybiBmb3JtYXR0aW5nIC4uICcobmlsKScKZWxzZWlmIHR5cGUodikgPT0gInRhYmxlIiB0aGVuCmlmIHJlY3Vyc2UgYW5kIHJlY3Vyc2UgPiAwIHRoZW4KcmV0dXJuIGZvcm1hdHRpbmcgLi4gJ1xuJyAuLiB0YWJsZS50b3N0cmluZyh2LCByZWN1cnNlLTEsIGkrMSkKZWxzZQpyZXR1cm4gZm9ybWF0dGluZyAuLiAiPHRhYmxlPiIKZW5kCmVsc2VpZiB0eXBlKHYpID09ICJmdW5jdGlvbiIgdGhlbgpyZXR1cm4gZm9ybWF0dGluZyAuLiB0b3N0cmluZyh2KQplbHNlaWYgdHlwZSh2KSA9PSAidXNlcmRhdGEiIHRoZW4KcmV0dXJuIGZvcm1hdHRpbmcgLi4gIjx1c2VyZGF0YT4iCmVsc2VpZiB0eXBlKHYpID09ICJib29sZWFuIiB0aGVuCmlmIHYgdGhlbgpyZXR1cm4gZm9ybWF0dGluZyAuLiAndHJ1ZScKZWxzZQpyZXR1cm4gZm9ybWF0dGluZyAuLiAnZmFsc2UnCmVuZAplbHNlCnJldHVybiBmb3JtYXR0aW5nIC4uIHYKZW5kCmVuZAppZiB0eXBlKHRhYikgPT0gInRhYmxlIiB0aGVuCmxvY2FsIGZpcnN0ID0gdHJ1ZQpsb2NhbCBtdCA9IGdldG1ldGF0YWJsZSh0YWIpCmlmIG10IHRoZW4KcmVzID0gcmVzIC4uIGZvcm1hdF92YWx1ZSgnX19tdCcsIG10LCBpbmRlbnQpCmZpcnN0ID0gZmFsc2UKZW5kCmZvciBrLCB2IGluIHBhaXJzKHRhYikgZG8KaWYgbm90IGZpcnN0IHRoZW4KcmVzID0gcmVzIC4uICdcbicKZW5kCnJlcyA9IHJlcyAuLiBmb3JtYXRfdmFsdWUoaywgdiwgaW5kZW50KQpmaXJzdCA9IGZhbHNlCmVuZAplbHNlCnJlcyA9IHJlcyAuLiBmb3JtYXRfdmFsdWUobmlsLCB0YWIsIGluZGVudCkKZW5kCnJldHVybiByZXMKZW5kCmZ1bmN0aW9uIHRhYmxlLnVuaXF1ZSh0YWIpCmxvY2FsIGVsZW1zID0geyB9CmxvY2FsIHJlc3VsdCA9IHsgfQp0YWJsZS5mb3JlYWNoaSh0YWIsIGZ1bmN0aW9uKGVsZW0pCmlmIG5vdCBlbGVtc1tlbGVtXSB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsIGVsZW0pCmVsZW1zW2VsZW1dID0gdHJ1ZQplbmQKZW5kKQpyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiB0YWJsZS5maWx0ZXJlbXB0eShkaXJzKQpyZXR1cm4gdGFibGUudHJhbnNsYXRlKGRpcnMsIGZ1bmN0aW9uKHZhbCkKaWYgdmFsIGFuZCAjdmFsID4gMCB0aGVuCnJldHVybiB2YWwKZWxzZQpyZXR1cm4gbmlsCmVuZAplbmQpCmVuZApmdW5jdGlvbiB0YWJsZS5lcXVhbHMoYSwgYikKZm9yIGssIHYgaW4gcGFpcnMoYSkgZG8KaWYgYltrXSB+PSB2IHRoZW4KcmV0dXJuIGZhbHNlCmVuZAplbmQKZm9yIGssIHYgaW4gcGFpcnMoYikgZG8KaWYgYVtrXSB+PSB2IHRoZW4KcmV0dXJuIGZhbHNlCmVuZAplbmQKcmV0dXJuIHRydWUKZW5kCmZ1bmN0aW9uIHNwYWlycyh0KQpsb2NhbCBrZXlzID0ge30KZm9yIGsgaW4gcGFpcnModCkgZG8KdGFibGUuaW5zZXJ0KGtleXMsIGspCmVuZAp0YWJsZS5zb3J0KGtleXMpCmxvY2FsIGkgPSAwCnJldHVybiBmdW5jdGlvbigpCmkgPSBpICsgMQppZiBrZXlzW2ldIHRoZW4KcmV0dXJuIGtleXNbaV0sIHRba2V5c1tpXV0KZW5kCmVuZAplbmQKZnVuY3Rpb24gdGFibGUuaW50ZXJzZWN0KGEsIGIpCmxvY2FsIHJlc3VsdCA9IHt9CmZvciBfLCB2IGluIGlwYWlycyhiKSBkbwppZiB0YWJsZS5pbmRleG9mKGEsIHYpIHRoZW4KdGFibGUuaW5zZXJ0KHJlc3VsdCwgdikKZW5kCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiB0YWJsZS5kaWZmZXJlbmNlKGEsIGIpCmxvY2FsIHJlc3VsdCA9IHt9CmZvciBfLCB2IGluIGlwYWlycyhhKSBkbwppZiBub3QgdGFibGUuaW5kZXhvZihiLCB2KSB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsIHYpCmVuZAplbmQKcmV0dXJuIHJlc3VsdAplbmQKAGZ1bmN0aW9uIHBhdGguYXBwZW5kRXh0ZW5zaW9uKHAsIGV4dCkKaWYgbm90IGV4dCBvciBleHQgPT0gIiIgdGhlbgpyZXR1cm4gcAplbmQKbG9jYWwgZW5kcXVvdGUKaWYgcDplbmRzd2l0aCgnIicpIHRoZW4KcCA9IHA6c3ViKDEsIC0yKQplbmRxdW90ZSA9ICciJwplbmQKaWYgbm90IHBhdGguaGFzZXh0ZW5zaW9uKHAsIGV4dCkgdGhlbgpwID0gcCAuLiBleHQKZW5kCmlmIGVuZHF1b3RlIHRoZW4KcCA9IHAgLi4gZW5kcXVvdGUKZW5kCnJldHVybiBwCmVuZApwYXRoLmFwcGVuZGV4dGVuc2lvbiA9IHBhdGguYXBwZW5kRXh0ZW5zaW9uCmZ1bmN0aW9uIHBhdGguZ2V0YmFzZW5hbWUocCkKbG9jYWwgbmFtZSA9IHBhdGguZ2V0bmFtZShwKQpsb2NhbCBpID0gbmFtZTpmaW5kbGFzdCgiLiIsIHRydWUpCmlmIChpKSB0aGVuCnJldHVybiBuYW1lOnN1YigxLCBpIC0gMSkKZWxzZQpyZXR1cm4gbmFtZQplbmQKZW5kCmZ1bmN0aW9uIHBhdGguZ2V0ZGlyZWN0b3J5KHApCmxvY2FsIGkgPSBwOmZpbmRsYXN0KCIvIiwgdHJ1ZSkKaWYgKGkpIHRoZW4KaWYgaSA+IDEgdGhlbiBpID0gaSAtIDEgZW5kCnJldHVybiBwOnN1YigxLCBpKQplbHNlCnJldHVybiAiLiIKZW5kCmVuZApmdW5jdGlvbiBwYXRoLmdldGRyaXZlKHApCmxvY2FsIGNoMSA9IHA6c3ViKDEsMSkKbG9jYWwgY2gyID0gcDpzdWIoMiwyKQppZiBjaDIgPT0gIjoiIHRoZW4KcmV0dXJuIGNoMQplbmQKZW5kCmZ1bmN0aW9uIHBhdGguZ2V0ZXh0ZW5zaW9uKHApCnAgPSBwYXRoLmdldG5hbWUocCkKbG9jYWwgaSA9IHA6ZmluZGxhc3QoIi4iLCB0cnVlKQppZiAoaSkgdGhlbgpyZXR1cm4gcDpzdWIoaSkKZWxzZQpyZXR1cm4gIiIKZW5kCmVuZApmdW5jdGlvbiBwYXRoLmdldG5hbWUocCkKbG9jYWwgaSA9IHA6ZmluZGxhc3QoIlsvXFxdIikKaWYgKGkpIHRoZW4KcmV0dXJuIHA6c3ViKGkgKyAxKQplbHNlCnJldHVybiBwCmVuZAplbmQKZnVuY3Rpb24gcGF0aC5oYXNleHRlbnNpb24oZm5hbWUsIGV4dGVuc2lvbnMpCmxvY2FsIGZleHQgPSBwYXRoLmdldGV4dGVuc2lvbihmbmFtZSk6bG93ZXIoKQppZiB0eXBlKGV4dGVuc2lvbnMpID09ICJ0YWJsZSIgdGhlbgpmb3IgXywgZXh0ZW5zaW9uIGluIHBhaXJzKGV4dGVuc2lvbnMpIGRvCmlmIGZleHQgPT0gZXh0ZW5zaW9uIHRoZW4KcmV0dXJuIHRydWUKZW5kCmVuZApyZXR1cm4gZmFsc2UKZWxzZQpyZXR1cm4gKGZleHQgPT0gZXh0ZW5zaW9ucykKZW5kCmVuZApmdW5jdGlvbiBwYXRoLmlzYXNtZmlsZShmbmFtZSkKcmV0dXJuIHBhdGguaGFzZXh0ZW5zaW9uKGZuYW1lLCB7ICIucyIgfSkKZW5kCmZ1bmN0aW9uIHBhdGguaXNjZmlsZShmbmFtZSkKcmV0dXJuIHBhdGguaGFzZXh0ZW5zaW9uKGZuYW1lLCB7ICIuYyIgfSkKb3IgcGF0aC5pc2FzbWZpbGUoZm5hbWUpLS0gaXMgdGhpcyByZWFsbHkgcmlnaHQ/Cm9yIHBhdGguaXNvYmpjZmlsZShmbmFtZSktLSB0aGVyZSBpcyBjb2RlIHRoYXQgZGVwZW5kcyBvbiB0aGlzIGJlaGF2aW91ciwgd2hpY2ggd291bGQgbmVlZCB0byBjaGFuZ2UKZW5kCmZ1bmN0aW9uIHBhdGguaXNjcHBmaWxlKGZuYW1lKQpyZXR1cm4gcGF0aC5oYXNleHRlbnNpb24oZm5hbWUsIHsgIi5jYyIsICIuY3BwIiwgIi5jeHgiIH0pCm9yIHBhdGguaXNvYmpjcHBmaWxlKGZuYW1lKS0tIGlzIHRoaXMgcmVhbGx5IHJpZ2h0PwpvciBwYXRoLmlzY2ZpbGUoZm5hbWUpCmVuZApmdW5jdGlvbiBwYXRoLmlzb2JqY2ZpbGUoZm5hbWUpCnJldHVybiBwYXRoLmhhc2V4dGVuc2lvbihmbmFtZSwgeyAiLm0iIH0pCmVuZApmdW5jdGlvbiBwYXRoLmlzb2JqY3BwZmlsZShmbmFtZSkKcmV0dXJuIHBhdGguaGFzZXh0ZW5zaW9uKGZuYW1lLCB7ICIubW0iIH0pCmVuZApmdW5jdGlvbiBwYXRoLmlzY3BwaGVhZGVyKGZuYW1lKQpyZXR1cm4gcGF0aC5oYXNleHRlbnNpb24oZm5hbWUsIHsgIi5oIiwgIi5oaCIsICIuaHBwIiwgIi5oeHgiIH0pCmVuZApmdW5jdGlvbiBwYXRoLmlzbmF0aXZlZmlsZShmbmFtZSkKcmV0dXJuIHBhdGguaXNjZmlsZShmbmFtZSkKb3IgcGF0aC5pc2NwcGZpbGUoZm5hbWUpCm9yIHBhdGguaXNhc21maWxlKGZuYW1lKQpvciBwYXRoLmlzb2JqY2ZpbGUoZm5hbWUpCm9yIHBhdGguaXNvYmpjcHBmaWxlKGZuYW1lKQplbmQKZnVuY3Rpb24gcGF0aC5pc2ZyYW1ld29yayhmbmFtZSkKcmV0dXJuIHBhdGguaGFzZXh0ZW5zaW9uKGZuYW1lLCAiLmZyYW1ld29yayIpCmVuZApmdW5jdGlvbiBwYXRoLmlzbGlua2FibGUoZm5hbWUpCnJldHVybiBwYXRoLmhhc2V4dGVuc2lvbihmbmFtZSwgeyAiLm8iLCAiLm9iaiIsICIuYSIsICIubGliIiwgIi5zbyIgfSkKZW5kCmZ1bmN0aW9uIHBhdGguaXNvYmplY3RmaWxlKGZuYW1lKQpyZXR1cm4gcGF0aC5oYXNleHRlbnNpb24oZm5hbWUsIHsgIi5vIiwgIi5vYmoiIH0pCmVuZApmdW5jdGlvbiBwYXRoLmlzcmVzb3VyY2VmaWxlKGZuYW1lKQpyZXR1cm4gcGF0aC5oYXNleHRlbnNpb24oZm5hbWUsICIucmMiKQplbmQKZnVuY3Rpb24gcGF0aC5pc2lkbGZpbGUoZm5hbWUpCnJldHVybiBwYXRoLmhhc2V4dGVuc2lvbihmbmFtZSwgIi5pZGwiKQplbmQKZnVuY3Rpb24gcGF0aC5yZWJhc2UocCwgb2xkYmFzZSwgbmV3YmFzZSkKcCA9IHBhdGguZ2V0YWJzb2x1dGUocGF0aC5qb2luKG9sZGJhc2UsIHApKQpwID0gcGF0aC5nZXRyZWxhdGl2ZShuZXdiYXNlLCBwKQpyZXR1cm4gcAplbmQKZnVuY3Rpb24gcGF0aC5yZXBsYWNlZXh0ZW5zaW9uKHAsIG5ld2V4dCkKbG9jYWwgZXh0ID0gcGF0aC5nZXRleHRlbnNpb24ocCkKaWYgbm90IGV4dCB0aGVuCnJldHVybiBwCmVuZAppZiAjbmV3ZXh0ID4gMCBhbmQgbm90IG5ld2V4dDpmaW5kbGFzdCgiLiIsIHRydWUpIHRoZW4KbmV3ZXh0ID0gIi4iLi5uZXdleHQKZW5kCnJldHVybiBwOm1hdGNoKCJeKC4qKSIuLmV4dC4uIiQiKS4ubmV3ZXh0CmVuZApmdW5jdGlvbiBwYXRoLmdldERlZmF1bHRTZXBhcmF0b3IoKQppZiBvcy5pc3RhcmdldCgnd2luZG93cycpIHRoZW4KcmV0dXJuICdcXCcKZWxzZQpyZXR1cm4gJy8nCmVuZAplbmQKAAAAAAAAcHJlbWFrZS5vdmVycmlkZShvcywgImV4ZWN1dGUiLCBmdW5jdGlvbihiYXNlLCBjbWQpCmNtZCA9IG9zLnRyYW5zbGF0ZUNvbW1hbmRzKGNtZCkKcmV0dXJuIGJhc2UoY21kKQplbmQpCmZ1bmN0aW9uIG9zLmV4ZWN1dGVmKGNtZCwgLi4uKQpjbWQgPSBzdHJpbmcuZm9ybWF0KGNtZCwgLi4uKQpyZXR1cm4gb3MuZXhlY3V0ZShjbWQpCmVuZApsb2NhbCBmdW5jdGlvbiBwYXJzZV9sZF9zb19jb25mKGNvbmZfZmlsZSkKbG9jYWwgZmlyc3QsIGxhc3QKbG9jYWwgZGlycyA9IHsgfQpmb3IgbGluZSBpbiBpby5saW5lcyhjb25mX2ZpbGUpIGRvCmZpcnN0ID0gbGluZTpmaW5kKCIjIiwgMSwgdHJ1ZSkKaWYgZmlyc3Qgfj0gbmlsIHRoZW4KbGluZSA9IGxpbmU6c3ViKDEsIGZpcnN0IC0gMSkKZW5kCmlmIGxpbmUgfj0gIiIgdGhlbgpmaXJzdCwgbGFzdCA9IGxpbmU6ZmluZCgiaW5jbHVkZSVzKyIpCmlmIGZpcnN0IH49IG5pbCB0aGVuCmxvY2FsIGluY2x1ZGVfZ2xvYiA9IGxpbmU6c3ViKGxhc3QgKyAxKQpsb2NhbCBpbmNsdWRlcyA9IG9zLm1hdGNoZmlsZXMoaW5jbHVkZV9nbG9iKQpmb3IgXywgdiBpbiBpcGFpcnMoaW5jbHVkZXMpIGRvCmRpcnMgPSB0YWJsZS5qb2luKGRpcnMsIHBhcnNlX2xkX3NvX2NvbmYodikpCmVuZAplbHNlCnRhYmxlLmluc2VydChkaXJzLCBsaW5lKQplbmQKZW5kCmVuZApyZXR1cm4gZGlycwplbmQKbG9jYWwgZnVuY3Rpb24gZ2V0X2xpYnJhcnlfc2VhcmNoX3BhdGgoKQpsb2NhbCBwYXRoCmlmIG9zLmlzdGFyZ2V0KCJ3aW5kb3dzIikgdGhlbgpwYXRoID0gb3MuZ2V0ZW52KCJQQVRIIikgb3IgIiIKZWxzZWlmIG9zLmlzdGFyZ2V0KCJoYWlrdSIpIHRoZW4KcGF0aCA9IG9zLmdldGVudigiTElCUkFSWV9QQVRIIikgb3IgIiIKZWxzZQppZiBvcy5pc3RhcmdldCgibWFjb3N4IikgdGhlbgpwYXRoID0gb3MuZ2V0ZW52KCJEWUxEX0xJQlJBUllfUEFUSCIpIG9yICIiCmVsc2UKcGF0aCA9IG9zLmdldGVudigiTERfTElCUkFSWV9QQVRIIikgb3IgIiIKZm9yIF8sIHByZWZpeCBpbiBpcGFpcnMoeyIiLCAiL29wdCJ9KSBkbwpsb2NhbCBjb25mX2ZpbGUgPSBwcmVmaXggLi4gIi9ldGMvbGQuc28uY29uZiIKaWYgb3MuaXNmaWxlKGNvbmZfZmlsZSkgdGhlbgpmb3IgXywgdiBpbiBpcGFpcnMocGFyc2VfbGRfc29fY29uZihjb25mX2ZpbGUpKSBkbwppZiAoI3BhdGggPiAwKSB0aGVuCnBhdGggPSBwYXRoIC4uICI6IiAuLiB2CmVsc2UKcGF0aCA9IHYKZW5kCmVuZAplbmQKZW5kCmVuZApwYXRoID0gcGF0aCBvciAiIgpsb2NhbCBhcmNocGF0aCA9ICIvbGliOi91c3IvbGliOi91c3IvbG9jYWwvbGliIgppZiBvcy5pczY0Yml0KCkgYW5kIG5vdCBvcy5pc3RhcmdldCgibWFjb3N4IikgdGhlbgphcmNocGF0aCA9ICIvbGliNjQ6L3Vzci9saWI2NC86dXNyL2xvY2FsL2xpYjY0IiAuLiAiOiIgLi4gYXJjaHBhdGgKZW5kCmlmICgjcGF0aCA+IDApIHRoZW4KcGF0aCA9IHBhdGggLi4gIjoiIC4uIGFyY2hwYXRoCmVsc2UKcGF0aCA9IGFyY2hwYXRoCmVuZAplbmQKcmV0dXJuIHBhdGgKZW5kCmZ1bmN0aW9uIG9zLmZpbmRsaWIobGlibmFtZSwgbGliZGlycykKbG9jYWwgcGF0aCA9IGdldF9saWJyYXJ5X3NlYXJjaF9wYXRoKCkKbG9jYWwgZm9ybWF0cwppZiBvcy5pc3RhcmdldCgid2luZG93cyIpIHRoZW4KZm9ybWF0cyA9IHsgIiVzLmRsbCIsICIlcyIgfQplbHNlaWYgb3MuaXN0YXJnZXQoImhhaWt1IikgdGhlbgpmb3JtYXRzID0geyAibGliJXMuc28iLCAiJXMuc28iIH0KZWxzZQppZiBvcy5pc3RhcmdldCgibWFjb3N4IikgdGhlbgpmb3JtYXRzID0geyAibGliJXMuZHlsaWIiLCAiJXMuZHlsaWIiIH0KZWxzZQpmb3JtYXRzID0geyAibGliJXMuc28iLCAiJXMuc28iIH0KZW5kCnRhYmxlLmluc2VydChmb3JtYXRzLCAiJXMiKQplbmQKbG9jYWwgdXNlcnBhdGggPSAiIgppZiB0eXBlKGxpYmRpcnMpID09ICJzdHJpbmciIHRoZW4KdXNlcnBhdGggPSBsaWJkaXJzCmVsc2VpZiB0eXBlKGxpYmRpcnMpID09ICJ0YWJsZSIgdGhlbgp1c2VycGF0aCA9IHRhYmxlLmltcGxvZGUobGliZGlycywgIiIsICIiLCAiOiIpCmVuZAppZiAoI3VzZXJwYXRoID4gMCkgdGhlbgppZiAoI3BhdGggPiAwKSB0aGVuCnBhdGggPSB1c2VycGF0aCAuLiAiOiIgLi4gcGF0aAplbHNlCnBhdGggPSB1c2VycGF0aAplbmQKZW5kCmZvciBfLCBmbXQgaW4gaXBhaXJzKGZvcm1hdHMpIGRvCmxvY2FsIG5hbWUgPSBzdHJpbmcuZm9ybWF0KGZtdCwgbGlibmFtZSkKbG9jYWwgcmVzdWx0ID0gb3MucGF0aHNlYXJjaChuYW1lLCBwYXRoKQppZiByZXN1bHQgdGhlbiByZXR1cm4gcmVzdWx0IGVuZAplbmQKZW5kCmZ1bmN0aW9uIG9zLmZpbmRoZWFkZXIoaGVhZGVycGF0aCwgaGVhZGVyZGlycykKbG9jYWwgcGF0aCA9IGdldF9saWJyYXJ5X3NlYXJjaF9wYXRoKCkKcGF0aCA9IHBhdGggLi4gJzonCnBhdGggPSBwYXRoOmdzdWIgKCcvbGliWzAtOV0qKFs6L10pJywgJy9pbmNsdWRlJTEnKQpwYXRoID0gcGF0aDpzdWIgKDEsICNwYXRoIC0gMSkKbG9jYWwgdXNlcnBhdGggPSAiIgppZiB0eXBlKGhlYWRlcmRpcnMpID09ICJzdHJpbmciIHRoZW4KdXNlcnBhdGggPSBoZWFkZXJkaXJzCmVsc2VpZiB0eXBlKGhlYWRlcmRpcnMpID09ICJ0YWJsZSIgdGhlbgp1c2VycGF0aCA9IHRhYmxlLmltcGxvZGUoaGVhZGVyZGlycywgIiIsICIiLCAiOiIpCmVuZAppZiAoI3VzZXJwYXRoID4gMCkgdGhlbgppZiAoI3BhdGggPiAwKSB0aGVuCnBhdGggPSB1c2VycGF0aCAuLiAiOiIgLi4gcGF0aAplbHNlCnBhdGggPSB1c2VycGF0aAplbmQKZW5kCmxvY2FsIHJlc3VsdCA9IG9zLnBhdGhzZWFyY2ggKGhlYWRlcnBhdGgsIHBhdGgpCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIG9zLnRhcmdldCgpCnJldHVybiBfT1BUSU9OUy5vcyBvciBfVEFSR0VUX09TCmVuZApmdW5jdGlvbiBvcy5nZXQoKQpsb2NhbCBjYWxsZXIgPSBmaWxlbGluZWluZm8oMikKcHJlbWFrZS53YXJuT25jZShjYWxsZXIsICJvcy5nZXQoKSBpcyBkZXByZWNhdGVkLCB1c2UgJ29zLnRhcmdldCgpJyBvciAnb3MuaG9zdCgpJy5cbiAgIEAlc1xuIiwgY2FsbGVyKQpyZXR1cm4gb3MudGFyZ2V0KCkKZW5kCl9HX21ldGF0YWJsZSA9IHsKX19pbmRleCA9IGZ1bmN0aW9uKHQsIGspCmlmIChrID09ICdfT1MnKSB0aGVuCnByZW1ha2Uud2Fybk9uY2UoIl9PUytnZXQiLCAiX09TIGlzIGRlcHJlY2F0ZWQsIHVzZSAnX1RBUkdFVF9PUycuIikKcmV0dXJuIHJhd2dldCh0LCAiX1RBUkdFVF9PUyIpCmVsc2UKcmV0dXJuIHJhd2dldCh0LCBrKQplbmQKZW5kLApfX25ld2luZGV4ID0gZnVuY3Rpb24odCwgaywgdikKaWYgKGsgPT0gJ19PUycpIHRoZW4KcHJlbWFrZS53YXJuT25jZSgiX09TK3NldCIsICJfT1MgaXMgZGVwcmVjYXRlZCwgdXNlICdfVEFSR0VUX09TJy4iKQpyYXdzZXQodCwgIl9UQVJHRVRfT1MiLCB2KQplbHNlCnJhd3NldCh0LCBrLCB2KQplbmQKZW5kCn0Kc2V0bWV0YXRhYmxlKF9HLCBfR19tZXRhdGFibGUpCmZ1bmN0aW9uIG9zLmlzdGFyZ2V0KGlkKQpsb2NhbCB0YWdzID0gb3MuZ2V0U3lzdGVtVGFncyhvcy50YXJnZXQoKSkKcmV0dXJuIHRhYmxlLmNvbnRhaW5zKHRhZ3MsIGlkOmxvd2VyKCkpCmVuZApmdW5jdGlvbiBvcy5pcyhpZCkKbG9jYWwgY2FsbGVyID0gZmlsZWxpbmVpbmZvKDIpCnByZW1ha2Uud2Fybk9uY2UoY2FsbGVyLCAib3MuaXMoKSBpcyBkZXByZWNhdGVkLCB1c2UgJ29zLmlzdGFyZ2V0KCknIG9yICdvcy5pc2hvc3QoKScuXG4gICBAJXNcbiIsIGNhbGxlcikKcmV0dXJuIG9zLmlzdGFyZ2V0KGlkKQplbmQKZnVuY3Rpb24gb3MuaXNob3N0KGlkKQpsb2NhbCB0YWdzID0gb3MuZ2V0U3lzdGVtVGFncyhvcy5ob3N0KCkpCnJldHVybiB0YWJsZS5jb250YWlucyh0YWdzLCBpZDpsb3dlcigpKQplbmQKcHJlbWFrZS5vdmVycmlkZShvcywgImlzZGlyIiwgZnVuY3Rpb24oYmFzZSwgcCkKcCA9IHBhdGgubm9ybWFsaXplKHApCnJldHVybiBiYXNlKHApCmVuZCkKcHJlbWFrZS5vdmVycmlkZShvcywgImlzZmlsZSIsIGZ1bmN0aW9uKGJhc2UsIHApCnAgPSBwYXRoLm5vcm1hbGl6ZShwKQpyZXR1cm4gYmFzZShwKQplbmQpCmxvY2FsIF9pczY0Yml0CmxvY2FsIF82NEJpdEhvc3RUeXBlcyA9IHsKIng4Nl82NCIsCiJpYTY0IiwKImFtZDY0IiwKInBwYzY0IiwKInBvd2VycGM2NCIsCiJzcGFyYzY0Igp9CmZ1bmN0aW9uIG9zLmlzNjRiaXQoKQppZiBfaXM2NGJpdCB+PSBuaWwgdGhlbgpyZXR1cm4gX2lzNjRiaXQKZW5kCl9pczY0Yml0ID0gZmFsc2UKaWYgKG9zLl9pczY0Yml0KCkpIHRoZW4KX2lzNjRiaXQgPSB0cnVlCmVsc2UKbG9jYWwgYXJjaAppZiBvcy5pc2hvc3QoIndpbmRvd3MiKSB0aGVuCmFyY2ggPSBvcy5nZXRlbnYoIlBST0NFU1NPUl9BUkNISVRFQ1RVUkUiKQplbHNlaWYgb3MuaXNob3N0KCJtYWNvc3giKSB0aGVuCmFyY2ggPSBvcy5vdXRwdXRvZigiZWNobyAkSE9TVFRZUEUiKQplbHNlCmFyY2ggPSBvcy5vdXRwdXRvZigidW5hbWUgLW0iKQplbmQKYXJjaCA9IGFyY2g6bG93ZXIoKQpmb3IgXywgaG9zdHR5cGUgaW4gaXBhaXJzKF82NEJpdEhvc3RUeXBlcykgZG8KaWYgYXJjaDpmaW5kKGhvc3R0eXBlKSB0aGVuCl9pczY0Yml0ID0gdHJ1ZQplbmQKZW5kCmVuZApyZXR1cm4gX2lzNjRiaXQKZW5kCmZ1bmN0aW9uIG9zLm1hdGNoKG1hc2spCm1hc2sgPSBwYXRoLm5vcm1hbGl6ZShtYXNrKQpsb2NhbCBzdGFycG9zID0gbWFzazpmaW5kKCIlKiIpCmxvY2FsIGJlZm9yZSA9IHBhdGguZ2V0ZGlyZWN0b3J5KHN0YXJwb3MgYW5kIG1hc2s6c3ViKDEsIHN0YXJwb3MgLSAxKSBvciBtYXNrKQpsb2NhbCBzbGFzaHBvcyA9IHN0YXJwb3MgYW5kIG1hc2s6ZmluZCgiLyIsIHN0YXJwb3MpCmxvY2FsIGFmdGVyID0gc2xhc2hwb3MgYW5kIG1hc2s6c3ViKHNsYXNocG9zICsgMSkKbG9jYWwgcmVjdXJzZSA9IHN0YXJwb3MgYW5kCm1hc2s6c3ViKHN0YXJwb3MgKyAxLCBzdGFycG9zICsgMSkgPT0gJyonIGFuZAooc3RhcnBvcyA9PSAxIG9yIG1hc2s6c3ViKHN0YXJwb3MgLSAxLCBzdGFycG9zIC0gMSkgPT0gJy8nKQpsb2NhbCByZXN1bHRzID0geyB9CmlmIHJlY3Vyc2UgdGhlbgpsb2NhbCBzdWJtYXNrID0gbWFzazpzdWIoMSwgc3RhcnBvcykgLi4gbWFzazpzdWIoc3RhcnBvcyArIDIpCnJlc3VsdHMgPSBvcy5tYXRjaChzdWJtYXNrKQpsb2NhbCBwYXR0ZXJuID0gbWFzazpzdWIoMSwgc3RhcnBvcykKbG9jYWwgbSA9IG9zLm1hdGNoc3RhcnQocGF0dGVybikKd2hpbGUgb3MubWF0Y2huZXh0KG0pIGRvCmlmIG5vdCBvcy5tYXRjaGlzZmlsZShtKSB0aGVuCmxvY2FsIG1hdGNocGF0aCA9IHBhdGguam9pbihiZWZvcmUsIG9zLm1hdGNobmFtZShtKSwgbWFzazpzdWIoc3RhcnBvcykpCnJlc3VsdHMgPSB0YWJsZS5qb2luKHJlc3VsdHMsIG9zLm1hdGNoKG1hdGNocGF0aCkpCmVuZAplbmQKb3MubWF0Y2hkb25lKG0pCmVsc2UKbG9jYWwgcGF0dGVybiA9IG1hc2s6c3ViKDEsIHNsYXNocG9zIGFuZCBzbGFzaHBvcyAtIDEpCmxvY2FsIG0gPSBvcy5tYXRjaHN0YXJ0KHBhdHRlcm4pCndoaWxlIG9zLm1hdGNobmV4dChtKSBkbwppZiBub3QgKHNsYXNocG9zIGFuZCBvcy5tYXRjaGlzZmlsZShtKSkgdGhlbgpsb2NhbCBtYXRjaHBhdGggPSBwYXRoLmpvaW4oYmVmb3JlLCBtYXRjaHBhdGgsIG9zLm1hdGNobmFtZShtKSkKaWYgYWZ0ZXIgdGhlbgpyZXN1bHRzID0gdGFibGUuam9pbihyZXN1bHRzLCBvcy5tYXRjaChwYXRoLmpvaW4obWF0Y2hwYXRoLCBhZnRlcikpKQplbHNlCnRhYmxlLmluc2VydChyZXN1bHRzLCBtYXRjaHBhdGgpCmVuZAplbmQKZW5kCm9zLm1hdGNoZG9uZShtKQplbmQKcmV0dXJuIHJlc3VsdHMKZW5kCmZ1bmN0aW9uIG9zLm1hdGNoZGlycyhtYXNrKQpsb2NhbCByZXN1bHRzID0gb3MubWF0Y2gobWFzaykKZm9yIGkgPSAjcmVzdWx0cywgMSwgLTEgZG8KaWYgbm90IG9zLmlzZGlyKHJlc3VsdHNbaV0pIHRoZW4KdGFibGUucmVtb3ZlKHJlc3VsdHMsIGkpCmVuZAplbmQKcmV0dXJuIHJlc3VsdHMKZW5kCmZ1bmN0aW9uIG9zLm1hdGNoZmlsZXMobWFzaykKbG9jYWwgcmVzdWx0cyA9IG9zLm1hdGNoKG1hc2spCmZvciBpID0gI3Jlc3VsdHMsIDEsIC0xIGRvCmlmIG5vdCBvcy5pc2ZpbGUocmVzdWx0c1tpXSkgdGhlbgp0YWJsZS5yZW1vdmUocmVzdWx0cywgaSkKZW5kCmVuZApyZXR1cm4gcmVzdWx0cwplbmQKbG9jYWwgYnVpbHRpbl9ta2RpciA9IG9zLm1rZGlyCmZ1bmN0aW9uIG9zLm1rZGlyKHApCnAgPSBwYXRoLm5vcm1hbGl6ZShwKQpsb2NhbCBkaXIgPSBpaWYocDpzdGFydHN3aXRoKCIvIiksICIvIiwgIiIpCmZvciBwYXJ0IGluIHA6Z21hdGNoKCJbXi9dKyIpIGRvCmRpciA9IGRpciAuLiBwYXJ0CmlmIChwYXJ0IH49ICIiIGFuZCBub3QgcGF0aC5pc2Fic29sdXRlKHBhcnQpIGFuZCBub3Qgb3MuaXNkaXIoZGlyKSkgdGhlbgpsb2NhbCBvaywgZXJyID0gYnVpbHRpbl9ta2RpcihkaXIpCmlmIChub3Qgb2spIHRoZW4KcmV0dXJuIG5pbCwgZXJyCmVuZAplbmQKZGlyID0gZGlyIC4uICIvIgplbmQKcmV0dXJuIHRydWUKZW5kCmZ1bmN0aW9uIG9zLm91dHB1dG9mKGNtZCkKY21kID0gcGF0aC5ub3JtYWxpemUoY21kKQpsb2NhbCBwaXBlID0gaW8ucG9wZW4oY21kIC4uICIgMj4mMSIpCmxvY2FsIHJlc3VsdCA9IHBpcGU6cmVhZCgnKmEnKQpsb2NhbCBzdWNjZXNzLCB3aGF0LCBjb2RlID0gcGlwZTpjbG9zZSgpCmlmIHN1Y2Nlc3MgdGhlbgppZiByZXN1bHQgdGhlbgpyZXN1bHQgPSBzdHJpbmcuZ3N1YihyZXN1bHQsICJbXHJcbl0rJCIsICIiKQplbmQKcmV0dXJuIHJlc3VsdCwgY29kZSwgd2hhdAplbHNlCnJldHVybiBuaWwsIGNvZGUsIHdoYXQKZW5kCmVuZApsb2NhbCBidWlsdGluX3JlbW92ZSA9IG9zLnJlbW92ZQpmdW5jdGlvbiBvcy5yZW1vdmUoZikKaWYgdHlwZShmKSA9PSAic3RyaW5nIiB0aGVuCmxvY2FsIHAgPSBvcy5tYXRjaGZpbGVzKGYpCmZvciBfLCB2IGluIHBhaXJzKHApIGRvCmxvY2FsIG9rLCBlcnIgPSBidWlsdGluX3JlbW92ZSh2KQppZiBub3Qgb2sgdGhlbgpyZXR1cm4gb2ssIGVycgplbmQKZW5kCmVsc2VpZiB0eXBlKGYpID09ICJ0YWJsZSIgdGhlbgpmb3IgXywgdiBpbiBwYWlycyhmKSBkbwpsb2NhbCBvaywgZXJyID0gb3MucmVtb3ZlKHYpCmlmIG5vdCBvayB0aGVuCnJldHVybiBvaywgZXJyCmVuZAplbmQKZW5kCmVuZApsb2NhbCBidWlsdGluX3JtZGlyID0gb3Mucm1kaXIKZnVuY3Rpb24gb3Mucm1kaXIocCkKbG9jYWwgZGlycyA9IG9zLm1hdGNoZGlycyhwIC4uICIvKiIpCmZvciBfLCBkbmFtZSBpbiBpcGFpcnMoZGlycykgZG8Kb3Mucm1kaXIoZG5hbWUpCmVuZApsb2NhbCBmaWxlcyA9IG9zLm1hdGNoZmlsZXMocCAuLiAiLyoiKQpmb3IgXywgZm5hbWUgaW4gaXBhaXJzKGZpbGVzKSBkbwpvcy5yZW1vdmUoZm5hbWUpCmVuZApidWlsdGluX3JtZGlyKHApCmVuZApwcmVtYWtlLm92ZXJyaWRlKG9zLCAic3RhdCIsIGZ1bmN0aW9uKGJhc2UsIHApCnAgPSBwYXRoLm5vcm1hbGl6ZShwKQpyZXR1cm4gYmFzZShwKQplbmQpCm9zLmNvbW1hbmRUb2tlbnMgPSB7Cl8gPSB7CmNoZGlyID0gZnVuY3Rpb24odikKcmV0dXJuICJjZCAiIC4uIHBhdGgubm9ybWFsaXplKHYpCmVuZCwKY29weSA9IGZ1bmN0aW9uKHYpCnJldHVybiAiY3AgLXJmICIgLi4gcGF0aC5ub3JtYWxpemUodikKZW5kLApkZWxldGUgPSBmdW5jdGlvbih2KQpyZXR1cm4gInJtIC1mICIgLi4gcGF0aC5ub3JtYWxpemUodikKZW5kLAplY2hvID0gZnVuY3Rpb24odikKcmV0dXJuICJlY2hvICIgLi4gdgplbmQsCm1rZGlyID0gZnVuY3Rpb24odikKcmV0dXJuICJta2RpciAtcCAiIC4uIHBhdGgubm9ybWFsaXplKHYpCmVuZCwKbW92ZSA9IGZ1bmN0aW9uKHYpCnJldHVybiAibXYgLWYgIiAuLiBwYXRoLm5vcm1hbGl6ZSh2KQplbmQsCnJtZGlyID0gZnVuY3Rpb24odikKcmV0dXJuICJybSAtcmYgIiAuLiBwYXRoLm5vcm1hbGl6ZSh2KQplbmQsCnRvdWNoID0gZnVuY3Rpb24odikKcmV0dXJuICJ0b3VjaCAiIC4uIHBhdGgubm9ybWFsaXplKHYpCmVuZCwKfSwKd2luZG93cyA9IHsKY2hkaXIgPSBmdW5jdGlvbih2KQpyZXR1cm4gImNoZGlyICIgLi4gcGF0aC50cmFuc2xhdGUocGF0aC5ub3JtYWxpemUodikpCmVuZCwKY29weSA9IGZ1bmN0aW9uKHYpCnYgPSBwYXRoLnRyYW5zbGF0ZShwYXRoLm5vcm1hbGl6ZSh2KSkKbG9jYWwgc3JjID0gc3RyaW5nLm1hdGNoKHYsICdeIi4tIicpIG9yIHN0cmluZy5tYXRjaCh2LCAnXi4tICcpIG9yIHYKc3JjID0gc3RyaW5nLm1hdGNoKHNyYywgJ14uKiVTJykKcmV0dXJuICJJRiBFWElTVCAiIC4uIHNyYyAuLiAiXFwgKHhjb3B5IC9RIC9FIC9ZIC9JICIgLi4gdiAuLiAiID4gbnVsKSBFTFNFICh4Y29weSAvUSAvWSAvSSAiIC4uIHYgLi4gIiA+IG51bCkiCmVuZCwKZGVsZXRlID0gZnVuY3Rpb24odikKcmV0dXJuICJkZWwgIiAuLiBwYXRoLnRyYW5zbGF0ZShwYXRoLm5vcm1hbGl6ZSh2KSkKZW5kLAplY2hvID0gZnVuY3Rpb24odikKcmV0dXJuICJlY2hvICIgLi4gdgplbmQsCm1rZGlyID0gZnVuY3Rpb24odikKdiA9IHBhdGgudHJhbnNsYXRlKHBhdGgubm9ybWFsaXplKHYpKQpyZXR1cm4gIklGIE5PVCBFWElTVCAiIC4uIHYgLi4gIiAobWtkaXIgIiAuLiB2IC4uICIpIgplbmQsCm1vdmUgPSBmdW5jdGlvbih2KQpyZXR1cm4gIm1vdmUgL1kgIiAuLiBwYXRoLnRyYW5zbGF0ZShwYXRoLm5vcm1hbGl6ZSh2KSkKZW5kLApybWRpciA9IGZ1bmN0aW9uKHYpCnJldHVybiAicm1kaXIgL1MgL1EgIiAuLiBwYXRoLnRyYW5zbGF0ZShwYXRoLm5vcm1hbGl6ZSh2KSkKZW5kLAp0b3VjaCA9IGZ1bmN0aW9uKHYpCnYgPSBwYXRoLnRyYW5zbGF0ZShwYXRoLm5vcm1hbGl6ZSh2KSkKcmV0dXJuIHN0cmluZy5mb3JtYXQoInR5cGUgbnVsID4+ICVzICYmIGNvcHkgL2IgJXMrLCwgJXMiLCB2LCB2LCB2KQplbmQsCn0KfQpmdW5jdGlvbiBvcy50cmFuc2xhdGVDb21tYW5kcyhjbWQsIG1hcCkKbWFwID0gbWFwIG9yIG9zLnRhcmdldCgpCmlmIHR5cGUobWFwKSA9PSAic3RyaW5nIiB0aGVuCm1hcCA9IG9zLmNvbW1hbmRUb2tlbnNbbWFwXSBvciBvcy5jb21tYW5kVG9rZW5zWyJfIl0KZW5kCmxvY2FsIHByb2Nlc3NPbmUgPSBmdW5jdGlvbihjbWQpCmxvY2FsIGksIGosIHByZXYKcmVwZWF0CmksIGogPSBjbWQ6ZmluZCgiey4tfSIpCmlmIGkgdGhlbgppZiBpID09IHByZXYgdGhlbgpicmVhawplbmQKbG9jYWwgdG9rZW4gPSBjbWQ6c3ViKGkgKyAxLCBqIC0gMSk6bG93ZXIoKQpsb2NhbCBhcmdzID0gY21kOnN1YihqICsgMikKbG9jYWwgZnVuYyA9IG1hcFt0b2tlbl0gb3Igb3MuY29tbWFuZFRva2Vuc1siXyJdW3Rva2VuXQppZiBmdW5jIHRoZW4KY21kID0gY21kOnN1YigxLCBpIC0xKSAuLiBmdW5jKGFyZ3MpCmVuZApwcmV2ID0gaQplbmQKdW50aWwgaSA9PSBuaWwKcmV0dXJuIGNtZAplbmQKaWYgdHlwZShjbWQpID09ICJ0YWJsZSIgdGhlbgpsb2NhbCByZXN1bHQgPSB7fQpmb3IgaSA9IDEsICNjbWQgZG8KcmVzdWx0W2ldID0gcHJvY2Vzc09uZShjbWRbaV0pCmVuZApyZXR1cm4gcmVzdWx0CmVsc2UKcmV0dXJuIHByb2Nlc3NPbmUoY21kKQplbmQKZW5kCmZ1bmN0aW9uIG9zLnRyYW5zbGF0ZUNvbW1hbmRzQW5kUGF0aHMoY21kcywgYmFzZWRpciwgbG9jYXRpb24sIG1hcCkKbG9jYWwgdHJhbnNsYXRlZEJhc2VEaXIgPSBwYXRoLmdldHJlbGF0aXZlKGxvY2F0aW9uLCBiYXNlZGlyKQptYXAgPSBtYXAgb3Igb3MudGFyZ2V0KCkKbG9jYWwgdHJhbnNsYXRlRnVuY3Rpb24gPSBmdW5jdGlvbih2YWx1ZSkKbG9jYWwgcmVzdWx0ID0gcGF0aC5qb2luKHRyYW5zbGF0ZWRCYXNlRGlyLCB2YWx1ZSkKaWYgdmFsdWU6ZW5kc3dpdGgoJy8nKSBvciB2YWx1ZTplbmRzd2l0aCgnXFwnKSBvcgogICB2YWx1ZTplbmRzd2l0aCgnLyInKSBvciB2YWx1ZTplbmRzd2l0aCgnXFwiJykgdGhlbgpyZXN1bHQgPSByZXN1bHQgLi4gJy8nCmVuZAppZiBtYXAgPT0gJ3dpbmRvd3MnIHRoZW4KcmVzdWx0ID0gcGF0aC50cmFuc2xhdGUocmVzdWx0KQplbmQKcmV0dXJuIHJlc3VsdAplbmQKbG9jYWwgcHJvY2Vzc09uZSA9IGZ1bmN0aW9uKGNtZCkKbG9jYWwgcmVwbGFjZUZ1bmN0aW9uID0gZnVuY3Rpb24odmFsdWUpCnZhbHVlID0gdmFsdWU6c3ViKDMsICN2YWx1ZSAtIDEpCnJldHVybiAnIicgLi4gdHJhbnNsYXRlRnVuY3Rpb24odmFsdWUpIC4uICciJwplbmQKcmV0dXJuIHN0cmluZy5nc3ViKGNtZCwgIiUlJVtbXiVdXHJcbl0qJV0iLCByZXBsYWNlRnVuY3Rpb24pCmVuZAppZiB0eXBlKGNtZHMpID09ICJ0YWJsZSIgdGhlbgpsb2NhbCByZXN1bHQgPSB7fQpmb3IgaSA9IDEsICNjbWRzIGRvCnJlc3VsdFtpXSA9IHByb2Nlc3NPbmUoY21kc1tpXSkKZW5kCnJldHVybiBvcy50cmFuc2xhdGVDb21tYW5kcyhyZXN1bHQsIG1hcCkKZWxzZQpyZXR1cm4gb3MudHJhbnNsYXRlQ29tbWFuZHMocHJvY2Vzc09uZShjbWRzKSwgbWFwKQplbmQKZW5kCm9zLl91dWlkcyA9IHt9CmxvY2FsIGJ1aWx0aW5fdXVpZCA9IG9zLnV1aWQKZnVuY3Rpb24gb3MudXVpZChuYW1lKQpsb2NhbCBpZCA9IGJ1aWx0aW5fdXVpZChuYW1lKQppZiBuYW1lIHRoZW4KaWYgb3MuX3V1aWRzW2lkXSBhbmQgb3MuX3V1aWRzW2lkXSB+PSBuYW1lIHRoZW4KcHJlbWFrZS53YXJuT25jZShpZCwgIlVVSUQgY2xhc2ggYmV0d2VlbiAlcyBhbmQgJXMiLCBvcy5fdXVpZHNbaWRdLCBuYW1lKQplbmQKb3MuX3V1aWRzW2lkXSA9IG5hbWUKZW5kCnJldHVybiBpZAplbmQKb3Muc3lzdGVtVGFncyA9CnsKWyJhaXgiXSAgICAgID0geyAiYWl4IiwgICAgICJwb3NpeCIgfSwKWyJic2QiXSAgICAgID0geyAiYnNkIiwgICAgICJwb3NpeCIgfSwKWyJoYWlrdSJdICAgID0geyAiaGFpa3UiLCAgICJwb3NpeCIgfSwKWyJsaW51eCJdICAgID0geyAibGludXgiLCAgICJwb3NpeCIgfSwKWyJtYWNvc3giXSAgID0geyAibWFjb3N4IiwgICJkYXJ3aW4iLCAicG9zaXgiIH0sClsic29sYXJpcyJdICA9IHsgInNvbGFyaXMiLCAicG9zaXgiIH0sClsid2luZG93cyJdICA9IHsgIndpbmRvd3MiLCAid2luMzIiIH0sCn0KZnVuY3Rpb24gb3MuZ2V0U3lzdGVtVGFncyhuYW1lKQpyZXR1cm4gb3Muc3lzdGVtVGFnc1tuYW1lOmxvd2VyKCldIG9yIHsgbmFtZTpsb3dlcigpIH0KZW5kCgAAAABwcmVtYWtlLm92ZXJyaWRlKGlvLCAib3BlbiIsIGZ1bmN0aW9uKGJhc2UsIGZuYW1lLCBtb2RlKQppZiBtb2RlIGFuZCAobW9kZTpmaW5kKCJ3Iikgb3IgbW9kZTpmaW5kKCJhIikpICB0aGVuCmxvY2FsIGRpciA9IHBhdGguZ2V0ZGlyZWN0b3J5KGZuYW1lKQpvaywgZXJyID0gb3MubWtkaXIoZGlyKQppZiBub3Qgb2sgdGhlbgplcnJvcihlcnIsIDApCmVuZAplbmQKcmV0dXJuIGJhc2UoZm5hbWUsIG1vZGUpCmVuZCkKZnVuY3Rpb24gaW8ud3JpdGVmaWxlKGZpbGVuYW1lLCBjb250ZW50KQpsb2NhbCBmaWxlID0gaW8ub3BlbihmaWxlbmFtZSwgIncrYiIpCmlmIGZpbGUgdGhlbgpmaWxlOndyaXRlKGNvbnRlbnQpCmZpbGU6Y2xvc2UoKQpyZXR1cm4gdHJ1ZQplbmQKZW5kCmZ1bmN0aW9uIGlvLnJlYWRmaWxlKGZpbGVuYW1lKQpsb2NhbCBmaWxlID0gaW8ub3BlbihmaWxlbmFtZSwgInJiIikKaWYgZmlsZSB0aGVuCmxvY2FsIGNvbnRlbnQgPSBmaWxlOnJlYWQoIiphIikKZmlsZTpjbG9zZSgpCnJldHVybiBjb250ZW50CmVuZAplbmQAAAAAAGxvY2FsIHAgPSBwcmVtYWtlCnAudG9vbHMgPSB7fQpmdW5jdGlvbiBwLnRvb2xzLm5vcm1hbGl6ZShpZGVudGlmaWVyKQppZiBpZGVudGlmaWVyOnN0YXJ0c3dpdGgoInYiKSB0aGVuIC0tIFRPRE86IHRoaXMgc2hvdWxkIGJlIGRlcHJlY2F0ZWQ/CmlkZW50aWZpZXIgPSAnbXNjLScgLi4gaWRlbnRpZmllcgplbmQKbG9jYWwgcGFydHMgPSBpZGVudGlmaWVyOmV4cGxvZGUoIi0iLCB0cnVlLCAxKQppZiBwYXJ0c1syXSA9PSBuaWwgdGhlbgpyZXR1cm4gcGFydHNbMV0KZW5kCmlmIHBhcnRzWzFdID09ICJtc2MiIGFuZCB0b251bWJlcihwYXJ0c1syXTpzdWIoMSwzKSkgfj0gbmlsIHRoZW4KcGFydHNbMl0gPSAidiIgLi4gcGFydHNbMl0KZW5kCmlmIHBhcnRzWzJdOnN0YXJ0c3dpdGgoImxsdm0tdnMiKSB0aGVuCnBhcnRzWzJdID0gIkxMVk0tIiAuLiBwYXJ0c1syXTpzdWIoNikKZW5kCnJldHVybiBwYXJ0c1sxXSAuLiAnLScgLi4gcGFydHNbMl0KZW5kCmZ1bmN0aW9uIHAudG9vbHMuY2Fub25pY2FsKGlkZW50aWZpZXIpCmlkZW50aWZpZXIgPSBwLnRvb2xzLm5vcm1hbGl6ZShpZGVudGlmaWVyKQpsb2NhbCBwYXJ0cyA9IGlkZW50aWZpZXI6ZXhwbG9kZSgiLSIsIHRydWUsIDEpCnJldHVybiBwLnRvb2xzW3BhcnRzWzFdXSwgcGFydHNbMl0KZW5kCgAAbG9jYWwgcCA9IHByZW1ha2UKcC50cmVlID0ge30KbG9jYWwgdHJlZSA9IHAudHJlZQpmdW5jdGlvbiB0cmVlLm5ldyhuKQpsb2NhbCB0ID0gewpuYW1lID0gbiwKY2hpbGRyZW4gPSB7fQp9CnJldHVybiB0CmVuZApmdW5jdGlvbiB0cmVlLmFkZCh0ciwgcCwgZXh0cmFGaWVsZHMpCmlmIHAgPT0gIi4iIG9yIHAgPT0gIi8iIHRoZW4KcmV0dXJuIHRyCmVuZApsb2NhbCBwYXJlbnRub2RlID0gdHJlZS5hZGQodHIsIHBhdGguZ2V0ZGlyZWN0b3J5KHApLCBleHRyYUZpZWxkcykKbG9jYWwgY2hpbGRuYW1lID0gcGF0aC5nZXRuYW1lKHApCmxvY2FsIGNoaWxkbm9kZSA9IHBhcmVudG5vZGUuY2hpbGRyZW5bY2hpbGRuYW1lXQppZiBub3QgY2hpbGRub2RlIG9yIGNoaWxkbm9kZS5wYXRoIH49IHAgdGhlbgpjaGlsZG5vZGUgPSB0cmVlLmluc2VydChwYXJlbnRub2RlLCB0cmVlLm5ldyhjaGlsZG5hbWUpKQpjaGlsZG5vZGUucGF0aCA9IHAKaWYgZXh0cmFGaWVsZHMgdGhlbgpmb3Igayx2IGluIHBhaXJzKGV4dHJhRmllbGRzKSBkbwpjaGlsZG5vZGVba10gPSB2CmVuZAplbmQKZW5kCnJldHVybiBjaGlsZG5vZGUKZW5kCmZ1bmN0aW9uIHRyZWUuaW5zZXJ0KHBhcmVudCwgY2hpbGQpCnRhYmxlLmluc2VydChwYXJlbnQuY2hpbGRyZW4sIGNoaWxkKQppZiBjaGlsZC5uYW1lIHRoZW4KcGFyZW50LmNoaWxkcmVuW2NoaWxkLm5hbWVdID0gY2hpbGQKZW5kCmNoaWxkLnBhcmVudCA9IHBhcmVudApyZXR1cm4gY2hpbGQKZW5kCmZ1bmN0aW9uIHRyZWUuZ2V0bG9jYWxwYXRoKG5vZGUpCmlmIG5vZGUucGFyZW50LnBhdGggdGhlbgpyZXR1cm4gbm9kZS5uYW1lCmVsc2VpZiBub2RlLmNmZyB0aGVuCnJldHVybiBub2RlLmNmZy5uYW1lCmVsc2UKcmV0dXJuIG5vZGUucGF0aAplbmQKZW5kCmZ1bmN0aW9uIHRyZWUuaGFzYnJhbmNoZXModHIpCmxvY2FsIG4gPSAjdHIuY2hpbGRyZW4KaWYgbiA+IDAgdGhlbgpmb3IgaSA9IDEsIG4gZG8KaWYgI3RyLmNoaWxkcmVuW2ldLmNoaWxkcmVuID4gMCB0aGVuCnJldHVybiB0cnVlCmVuZAplbmQKZW5kCnJldHVybiBmYWxzZQplbmQKZnVuY3Rpb24gdHJlZS5pc3BhcmVudChuLCBjaGlsZCkKbG9jYWwgcCA9IGNoaWxkLnBhcmVudAp3aGlsZSBwIGRvCmlmIHAgPT0gbiB0aGVuCnJldHVybiB0cnVlCmVuZApwID0gcC5wYXJlbnQKZW5kCnJldHVybiBmYWxzZQplbmQKZnVuY3Rpb24gdHJlZS5yZW1vdmUobm9kZSkKbG9jYWwgY2hpbGRyZW4gPSBub2RlLnBhcmVudC5jaGlsZHJlbgpmb3IgaSA9IDEsICNjaGlsZHJlbiBkbwppZiBjaGlsZHJlbltpXSA9PSBub2RlIHRoZW4KdGFibGUucmVtb3ZlKGNoaWxkcmVuLCBpKQplbmQKZW5kCm5vZGUuY2hpbGRyZW4gPSB7fQplbmQKZnVuY3Rpb24gdHJlZS5zb3J0KHRyLCBmbikKaWYgbm90IGZuIHRoZW4KZm4gPSBmdW5jdGlvbihhLGIpIHJldHVybiBhLm5hbWUgPCBiLm5hbWUgZW5kCmVuZAp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubm9kZSA9IGZ1bmN0aW9uKG5vZGUpCnRhYmxlLnNvcnQobm9kZS5jaGlsZHJlbiwgZm4pCmVuZAp9LCB0cnVlKQplbmQKZnVuY3Rpb24gdHJlZS50cmF2ZXJzZSh0LCBmbiwgaW5jbHVkZXJvb3QsIGluaXRpYWxkZXB0aCkKbG9jYWwgZG9ub2RlLCBkb2NoaWxkcmVuCmRvbm9kZSA9IGZ1bmN0aW9uKG5vZGUsIGZuLCBkZXB0aCkKaWYgbm9kZS5pc3JlbW92ZWQgdGhlbgpyZXR1cm4KZW5kCmlmIGZuLm9ubm9kZSB0aGVuCmZuLm9ubm9kZShub2RlLCBkZXB0aCkKZW5kCmlmICNub2RlLmNoaWxkcmVuID4gMCB0aGVuCmlmIGZuLm9uYnJhbmNoZW50ZXIgdGhlbgpmbi5vbmJyYW5jaGVudGVyKG5vZGUsIGRlcHRoKQplbmQKaWYgZm4ub25icmFuY2ggdGhlbgpmbi5vbmJyYW5jaChub2RlLCBkZXB0aCkKZW5kCmRvY2hpbGRyZW4obm9kZSwgZm4sIGRlcHRoICsgMSkKaWYgZm4ub25icmFuY2hleGl0IHRoZW4KZm4ub25icmFuY2hleGl0KG5vZGUsIGRlcHRoKQplbmQKZWxzZQppZiBmbi5vbmxlYWYgdGhlbgpmbi5vbmxlYWYobm9kZSwgZGVwdGgpCmVuZAplbmQKZW5kCmRvY2hpbGRyZW4gPSBmdW5jdGlvbihwYXJlbnQsIGZuLCBkZXB0aCkKbG9jYWwgaSA9IDEKd2hpbGUgaSA8PSAjcGFyZW50LmNoaWxkcmVuIGRvCmxvY2FsIG5vZGUgPSBwYXJlbnQuY2hpbGRyZW5baV0KZG9ub2RlKG5vZGUsIGZuLCBkZXB0aCkKaWYgbm9kZSA9PSBwYXJlbnQuY2hpbGRyZW5baV0gdGhlbgppID0gaSArIDEKZW5kCmVuZAplbmQKaWYgbm90IGluaXRpYWxkZXB0aCB0aGVuCmluaXRpYWxkZXB0aCA9IDAKZW5kCmlmIGluY2x1ZGVyb290IHRoZW4KZG9ub2RlKHQsIGZuLCBpbml0aWFsZGVwdGgpCmVsc2UKZG9jaGlsZHJlbih0LCBmbiwgaW5pdGlhbGRlcHRoKQplbmQKZW5kCmZ1bmN0aW9uIHRyZWUudHJpbXJvb3QodHIpCmxvY2FsIHRyaW1tZWQKd2hpbGUgI3RyLmNoaWxkcmVuID09IDEgZG8KbG9jYWwgbm9kZSA9IHRyLmNoaWxkcmVuWzFdCmlmICNub2RlLmNoaWxkcmVuID09IDAgb3Igbm9kZS50cmltID09IGZhbHNlIHRoZW4KYnJlYWsKZW5kCnRyaW1tZWQgPSB0cnVlCmxvY2FsIG51bUNoaWxkcmVuID0gI25vZGUuY2hpbGRyZW4KZm9yIGkgPSAxLCBudW1DaGlsZHJlbiBkbwpsb2NhbCBjaGlsZCA9IG5vZGUuY2hpbGRyZW5baV0KY2hpbGQucGFyZW50ID0gbm9kZS5wYXJlbnQKdHIuY2hpbGRyZW5baV0gPSBjaGlsZAplbmQKZW5kCmxvY2FsIGRvdGRvdApsb2NhbCBjb3VudCA9ICN0ci5jaGlsZHJlbgpyZXBlYXQKZG90ZG90ID0gZmFsc2UKZm9yIGkgPSAxLCBjb3VudCBkbwpsb2NhbCBub2RlID0gdHIuY2hpbGRyZW5baV0KaWYgbm9kZS5uYW1lID09ICIuLiIgYW5kICNub2RlLmNoaWxkcmVuID09IDEgdGhlbgpsb2NhbCBjaGlsZCA9IG5vZGUuY2hpbGRyZW5bMV0KY2hpbGQucGFyZW50ID0gbm9kZS5wYXJlbnQKdHIuY2hpbGRyZW5baV0gPSBjaGlsZAp0cmltbWVkID0gdHJ1ZQpkb3Rkb3QgPSB0cnVlCmVuZAplbmQKdW50aWwgbm90IGRvdGRvdAppZiB0cmltbWVkIHRoZW4KdHJlZS50cmF2ZXJzZSh0ciwgewpvbm5vZGUgPSBmdW5jdGlvbihub2RlKQppZiBub2RlLnBhcmVudC5wYXRoIHRoZW4Kbm9kZS5wYXRoID0gcGF0aC5qb2luKG5vZGUucGFyZW50LnBhdGgsIG5vZGUubmFtZSkKZWxzZQpub2RlLnBhdGggPSBub2RlLm5hbWUKZW5kCmVuZAp9LCBmYWxzZSkKZW5kCmVuZAoAAAAAZnVuY3Rpb24gZG9maWxlb3B0KGZuYW1lKQppZiB0eXBlKGZuYW1lKSA9PSAic3RyaW5nIiB0aGVuIGZuYW1lID0ge2ZuYW1lfSBlbmQKZm9yIGkgPSAxLCAjZm5hbWUgZG8KbG9jYWwgZm91bmQgPSBvcy5sb2NhdGUoZm5hbWVbaV0pCmlmIG5vdCBmb3VuZCB0aGVuCmZvdW5kID0gb3MubG9jYXRlKGZuYW1lW2ldIC4uICIubHVhIikKZW5kCmlmIGZvdW5kIHRoZW4KZG9maWxlKGZvdW5kKQpyZXR1cm4gdHJ1ZQplbmQKZW5kCmVuZAppby5faW5jbHVkZWRGaWxlcyA9IHt9CmZ1bmN0aW9uIGluY2x1ZGUoZm5hbWUpCmxvY2FsIGZ1bGxQYXRoID0gcHJlbWFrZS5maW5kUHJvamVjdFNjcmlwdChmbmFtZSkKZm5hbWUgPSBmdWxsUGF0aCBvciBmbmFtZQppZiBub3QgaW8uX2luY2x1ZGVkRmlsZXNbZm5hbWVdIHRoZW4KaW8uX2luY2x1ZGVkRmlsZXNbZm5hbWVdID0gdHJ1ZQpyZXR1cm4gZG9maWxlKGZuYW1lKQplbmQKZW5kCnByZW1ha2Uub3ZlcnJpZGUoX0csICJyZXF1aXJlIiwgZnVuY3Rpb24oYmFzZSwgbW9kbmFtZSwgdmVyc2lvbnMpCmxvY2FsIHJlc3VsdCwgbW9kID0gcGNhbGwoYmFzZSxtb2RuYW1lKQppZiBub3QgcmVzdWx0IHRoZW4KaWYgKHByZW1ha2UuZG93bmxvYWRNb2R1bGUobW9kbmFtZSwgdmVyc2lvbnMpKSB0aGVuCnJlc3VsdCwgbW9kID0gcGNhbGwoYmFzZSwgbW9kbmFtZSk7CmVuZAppZiBub3QgcmVzdWx0IHRoZW4KZXJyb3IobW9kLCAzKQplbmQKZW5kCmlmIG1vZCBhbmQgdmVyc2lvbnMgYW5kIG5vdCBwcmVtYWtlLmNoZWNrVmVyc2lvbihtb2QuX1ZFUlNJT04sIHZlcnNpb25zKSB0aGVuCmVycm9yKHN0cmluZy5mb3JtYXQoIm1vZHVsZSAlcyAlcyBkb2VzIG5vdCBtZWV0IHZlcnNpb24gY3JpdGVyaWEgJXMiLAptb2RuYW1lLCBtb2QuX1ZFUlNJT04gb3IgIihub25lKSIsIHZlcnNpb25zKSwgMykKZW5kCnJldHVybiBtb2QKZW5kKQoAAABmdW5jdGlvbiBwcmVtYWtlLmRvd25sb2FkTW9kdWxlKG1vZG5hbWUsIHZlcnNpb25zKQppZiBodHRwID09IG5pbCB0aGVuCnJldHVybiBmYWxzZQplbmQKbG9jYWwgdXNlciA9ICdVTktOT1dOJwppZiBvcy5pc2hvc3QoJ3dpbmRvd3MnKSB0aGVuCnVzZXIgPSBvcy5nZXRlbnYoJ1VTRVJOQU1FJykgb3IgdXNlcgplbHNlCnVzZXIgPSBvcy5nZXRlbnYoJ0xPR05BTUUnKSBvciB1c2VyCmVuZApsb2NhbCBzZXJ2ZXIgPSBwYWNrYWdlLnNlcnZlciBvciAnaHR0cDovL3BhY2thZ2VzcnYuY29tJzsKbG9jYWwgdXJsID0gJ2FwaS92MS9tb2R1bGUvJyAuLiBodHRwLmVzY2FwZVVybFBhcmFtKG1vZG5hbWUpCmlmIHZlcnNpb25zIHRoZW4KdXJsID0gdXJsIC4uICcvJyAuLiBodHRwLmVzY2FwZVVybFBhcmFtKHZlcnNpb25zKQplbmQKbG9jYWwgY29udGVudCwgcmVzdWx0X3N0ciwgcmVzcG9uc2VfY29kZSA9IGh0dHAuZ2V0KHNlcnZlciAuLiAnLycgLi4gdXJsKQppZiBjb250ZW50IHRoZW4KdXJsID0gY29udGVudAplbHNlCnJldHVybiBmYWxzZQplbmQKbG9jYWwgbG9jYXRpb24gPSAnLm1vZHVsZXMvJyAuLiBtb2RuYW1lCmxvY2FsIGRlc3RpbmF0aW9uID0gbG9jYXRpb24gLi4gJy90ZW1wLnppcCcKb3MubWtkaXIobG9jYXRpb24pCmxvY2FsIHJlc3VsdF9zdHIsIHJlc3BvbnNlX2NvZGUgPSBodHRwLmRvd25sb2FkKHVybCwgZGVzdGluYXRpb24sIHsKaGVhZGVycyAgPSB7J1gtUHJlbWFrZS1Vc2VyOiAnIC4uIHVzZXJ9LApwcm9ncmVzcyA9IGlpZihfT1BUSU9OUy52ZXJib3NlLCBodHRwLnJlcG9ydFByb2dyZXNzLCBuaWwpCn0pCmlmIHJlc3VsdF9zdHIgfj0gJ09LJyB0aGVuCnByZW1ha2UuZXJyb3IoJ0Rvd25sb2FkIG9mICVzIGZhaWxlZCAoJWQpXG4lcycsIHVybCwgcmVzcG9uc2VfY29kZSwgcmVzdWx0X3N0cikKZW5kCnZlcmJvc2VmKCcgVU5aSVAgICA6ICVzJywgZGVzdGluYXRpb24pCnppcC5leHRyYWN0KGRlc3RpbmF0aW9uLCBsb2NhdGlvbikKb3MucmVtb3ZlKGRlc3RpbmF0aW9uKQpyZXR1cm4gdHJ1ZTsKZW5kCgAAAGxvY2FsIHNlbXZlciA9IHsKICBfVkVSU0lPTiAgICAgPSAnMS4yLjEnLAogIF9ERVNDUklQVElPTiA9ICdzZW12ZXIgZm9yIEx1YScsCiAgX1VSTCAgICAgICAgID0gJ2h0dHBzOi8vZ2l0aHViLmNvbS9raWtpdG8vc2VtdmVyLmx1YScsCiAgX0xJQ0VOU0UgICAgID0gW1sKICAgIE1JVCBMSUNFTlNFCiAgICBDb3B5cmlnaHQgKGMpIDIwMTUgRW5yaXF1ZSBHYXJjw61hIENvdGEKICAgIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhCiAgICBjb3B5IG9mIHRvdGhlciBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUKICAgICJTb2Z0d2FyZSIpLCB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcKICAgIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwKICAgIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0bwogICAgcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvCiAgICB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6CiAgICBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdG90aGVyIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkCiAgICBpbiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KICAgIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTCiAgICBPUiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GCiAgICBNRVJDSEFOVEFCSUxJVFksIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuCiAgICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWQogICAgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwKICAgIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFCiAgICBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4KICBdXQp9CmxvY2FsIGZ1bmN0aW9uIGNoZWNrUG9zaXRpdmVJbnRlZ2VyKG51bWJlciwgbmFtZSkKICBhc3NlcnQobnVtYmVyID49IDAsIG5hbWUgLi4gJyBtdXN0IGJlIGEgdmFsaWQgcG9zaXRpdmUgbnVtYmVyJykKICBhc3NlcnQobWF0aC5mbG9vcihudW1iZXIpID09IG51bWJlciwgbmFtZSAuLiAnIG11c3QgYmUgYW4gaW50ZWdlcicpCmVuZApsb2NhbCBmdW5jdGlvbiBwcmVzZW50KHZhbHVlKQogIHJldHVybiB2YWx1ZSBhbmQgdmFsdWUgfj0gJycKZW5kCmxvY2FsIGZ1bmN0aW9uIHNwbGl0QnlEb3Qoc3RyKQogIHN0ciA9IHN0ciBvciAiIgogIGxvY2FsIHQsIGNvdW50ID0ge30sIDAKICBzdHI6Z3N1YigiKFteJS5dKykiLCBmdW5jdGlvbihjKQogICAgY291bnQgPSBjb3VudCArIDEKICAgIHRbY291bnRdID0gYwogIGVuZCkKICByZXR1cm4gdAplbmQKbG9jYWwgZnVuY3Rpb24gcGFyc2VQcmVyZWxlYXNlQW5kQnVpbGRXaXRoU2lnbihzdHIpCiAgbG9jYWwgcHJlcmVsZWFzZVdpdGhTaWduLCBidWlsZFdpdGhTaWduID0gc3RyOm1hdGNoKCJeKC1bXitdKykoKy4rKSQiKQogIGlmIG5vdCAocHJlcmVsZWFzZVdpdGhTaWduIGFuZCBidWlsZFdpdGhTaWduKSB0aGVuCiAgICBwcmVyZWxlYXNlV2l0aFNpZ24gPSBzdHI6bWF0Y2goIl4oLS4rKSQiKQogICAgYnVpbGRXaXRoU2lnbiAgICAgID0gc3RyOm1hdGNoKCJeKCsuKykkIikKICBlbmQKICBhc3NlcnQocHJlcmVsZWFzZVdpdGhTaWduIG9yIGJ1aWxkV2l0aFNpZ24sICgiVGhlIHBhcmFtZXRlciAlcSBtdXN0IGJlZ2luIHdpdGggKyBvciAtIHRvIGRlbm90ZSBhIHByZXJlbGVhc2Ugb3IgYSBidWlsZCIpOmZvcm1hdChzdHIpKQogIHJldHVybiBwcmVyZWxlYXNlV2l0aFNpZ24sIGJ1aWxkV2l0aFNpZ24KZW5kCmxvY2FsIGZ1bmN0aW9uIHBhcnNlUHJlcmVsZWFzZShwcmVyZWxlYXNlV2l0aFNpZ24pCiAgaWYgcHJlcmVsZWFzZVdpdGhTaWduIHRoZW4KICAgIGxvY2FsIHByZXJlbGVhc2UgPSBwcmVyZWxlYXNlV2l0aFNpZ246bWF0Y2goIl4tKCV3WyUuJXctXSopJCIpCiAgICBhc3NlcnQocHJlcmVsZWFzZSwgKCJUaGUgcHJlcmVsZWFzZSAlcSBpcyBub3QgYSBzbGFzaCBmb2xsb3dlZCBieSBhbHBoYW51bWVyaWNzLCBkb3RzIGFuZCBzbGFzaGVzIik6Zm9ybWF0KHByZXJlbGVhc2VXaXRoU2lnbikpCiAgICByZXR1cm4gcHJlcmVsZWFzZQogIGVuZAplbmQKbG9jYWwgZnVuY3Rpb24gcGFyc2VCdWlsZChidWlsZFdpdGhTaWduKQogIGlmIGJ1aWxkV2l0aFNpZ24gdGhlbgogICAgbG9jYWwgYnVpbGQgPSBidWlsZFdpdGhTaWduOm1hdGNoKCJeJSsoJXdbJS4ldy1dKikkIikKICAgIGFzc2VydChidWlsZCwgKCJUaGUgYnVpbGQgJXEgaXMgbm90IGEgKyBzaWduIGZvbGxvd2VkIGJ5IGFscGhhbnVtZXJpY3MsIGRvdHMgYW5kIHNsYXNoZXMiKTpmb3JtYXQoYnVpbGRXaXRoU2lnbikpCiAgICByZXR1cm4gYnVpbGQKICBlbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIHBhcnNlUHJlcmVsZWFzZUFuZEJ1aWxkKHN0cikKICBpZiBub3QgcHJlc2VudChzdHIpIHRoZW4gcmV0dXJuIG5pbCwgbmlsIGVuZAogIGxvY2FsIHByZXJlbGVhc2VXaXRoU2lnbiwgYnVpbGRXaXRoU2lnbiA9IHBhcnNlUHJlcmVsZWFzZUFuZEJ1aWxkV2l0aFNpZ24oc3RyKQogIGxvY2FsIHByZXJlbGVhc2UgPSBwYXJzZVByZXJlbGVhc2UocHJlcmVsZWFzZVdpdGhTaWduKQogIGxvY2FsIGJ1aWxkID0gcGFyc2VCdWlsZChidWlsZFdpdGhTaWduKQogIHJldHVybiBwcmVyZWxlYXNlLCBidWlsZAplbmQKbG9jYWwgZnVuY3Rpb24gcGFyc2VWZXJzaW9uKHN0cikKICBsb2NhbCBzTWFqb3IsIHNNaW5vciwgc1BhdGNoLCBzUHJlcmVsZWFzZUFuZEJ1aWxkID0gc3RyOm1hdGNoKCJeKCVkKyklLj8oJWQqKSUuPyglZCopKC4tKSQiKQogIGFzc2VydCh0eXBlKHNNYWpvcikgPT0gJ3N0cmluZycsICgiQ291bGQgbm90IGV4dHJhY3QgdmVyc2lvbiBudW1iZXIocykgZnJvbSAlcSIpOmZvcm1hdChzdHIpKQogIGxvY2FsIG1ham9yLCBtaW5vciwgcGF0Y2ggPSB0b251bWJlcihzTWFqb3IpLCB0b251bWJlcihzTWlub3IpLCB0b251bWJlcihzUGF0Y2gpCiAgbG9jYWwgcHJlcmVsZWFzZSwgYnVpbGQgPSBwYXJzZVByZXJlbGVhc2VBbmRCdWlsZChzUHJlcmVsZWFzZUFuZEJ1aWxkKQogIHJldHVybiBtYWpvciwgbWlub3IsIHBhdGNoLCBwcmVyZWxlYXNlLCBidWlsZAplbmQKbG9jYWwgZnVuY3Rpb24gY29tcGFyZShhLGIpCiAgcmV0dXJuIGEgPT0gYiBhbmQgMCBvciBhIDwgYiBhbmQgLTEgb3IgMQplbmQKbG9jYWwgZnVuY3Rpb24gY29tcGFyZUlkcyhteUlkLCBvdGhlcklkKQogIGlmIG15SWQgPT0gb3RoZXJJZCB0aGVuIHJldHVybiAgMAogIGVsc2VpZiBub3QgbXlJZCAgICB0aGVuIHJldHVybiAtMQogIGVsc2VpZiBub3Qgb3RoZXJJZCB0aGVuIHJldHVybiAgMQogIGVuZAogIGxvY2FsIHNlbGZOdW1iZXIsIG90aGVyTnVtYmVyID0gdG9udW1iZXIobXlJZCksIHRvbnVtYmVyKG90aGVySWQpCiAgaWYgc2VsZk51bWJlciBhbmQgb3RoZXJOdW1iZXIgdGhlbiAtLSBudW1lcmljYWwgY29tcGFyaXNvbgogICAgcmV0dXJuIGNvbXBhcmUoc2VsZk51bWJlciwgb3RoZXJOdW1iZXIpCiAgLS0gbnVtZXJpY2FscyBhcmUgYWx3YXlzIHNtYWxsZXIgdGhhbiBhbHBoYW51bXMKICBlbHNlaWYgc2VsZk51bWJlciB0aGVuCiAgICByZXR1cm4gLTEKICBlbHNlaWYgb3RoZXJOdW1iZXIgdGhlbgogICAgcmV0dXJuIDEKICBlbHNlCiAgICByZXR1cm4gY29tcGFyZShteUlkLCBvdGhlcklkKSAtLSBhbHBoYW51bWVyaWNhbCBjb21wYXJpc29uCiAgZW5kCmVuZApsb2NhbCBmdW5jdGlvbiBzbWFsbGVySWRMaXN0KG15SWRzLCBvdGhlcklkcykKICBsb2NhbCBteUxlbmd0aCA9ICNteUlkcwogIGxvY2FsIGNvbXBhcmlzb24KICBmb3IgaT0xLCBteUxlbmd0aCBkbwogICAgY29tcGFyaXNvbiA9IGNvbXBhcmVJZHMobXlJZHNbaV0sIG90aGVySWRzW2ldKQogICAgaWYgY29tcGFyaXNvbiB+PSAwIHRoZW4KICAgICAgcmV0dXJuIGNvbXBhcmlzb24gPT0gLTEKICAgIGVuZAogICAgLS0gaWYgY29tcGFyaXNvbiA9PSAwLCBjb250aW51ZSBsb29wCiAgZW5kCiAgcmV0dXJuIG15TGVuZ3RoIDwgI290aGVySWRzCmVuZApsb2NhbCBmdW5jdGlvbiBzbWFsbGVyUHJlcmVsZWFzZShtaW5lLCBvdGhlcikKICBpZiBtaW5lID09IG90aGVyIG9yIG5vdCBtaW5lIHRoZW4gcmV0dXJuIGZhbHNlCiAgZWxzZWlmIG5vdCBvdGhlciB0aGVuIHJldHVybiB0cnVlCiAgZW5kCiAgcmV0dXJuIHNtYWxsZXJJZExpc3Qoc3BsaXRCeURvdChtaW5lKSwgc3BsaXRCeURvdChvdGhlcikpCmVuZApsb2NhbCBtZXRob2RzID0ge30KZnVuY3Rpb24gbWV0aG9kczpuZXh0TWFqb3IoKQogIHJldHVybiBzZW12ZXIoc2VsZi5tYWpvciArIDEsIDAsIDApCmVuZApmdW5jdGlvbiBtZXRob2RzOm5leHRNaW5vcigpCiAgcmV0dXJuIHNlbXZlcihzZWxmLm1ham9yLCBzZWxmLm1pbm9yICsgMSwgMCkKZW5kCmZ1bmN0aW9uIG1ldGhvZHM6bmV4dFBhdGNoKCkKICByZXR1cm4gc2VtdmVyKHNlbGYubWFqb3IsIHNlbGYubWlub3IsIHNlbGYucGF0Y2ggKyAxKQplbmQKbG9jYWwgbXQgPSB7IF9faW5kZXggPSBtZXRob2RzIH0KZnVuY3Rpb24gbXQ6X19lcShvdGhlcikKICByZXR1cm4gc2VsZi5tYWpvciA9PSBvdGhlci5tYWpvciBhbmQKICAgICAgICAgc2VsZi5taW5vciA9PSBvdGhlci5taW5vciBhbmQKICAgICAgICAgc2VsZi5wYXRjaCA9PSBvdGhlci5wYXRjaCBhbmQKICAgICAgICAgc2VsZi5wcmVyZWxlYXNlID09IG90aGVyLnByZXJlbGVhc2UKICAgICAgICAgLS0gbm90aWNlIHRoYXQgYnVpbGQgaXMgaWdub3JlZCBmb3IgcHJlY2VkZW5jZSBpbiBzZW12ZXIgMi4wLjAKZW5kCmZ1bmN0aW9uIG10Ol9fbHQob3RoZXIpCiAgaWYgc2VsZi5tYWpvciB+PSBvdGhlci5tYWpvciB0aGVuIHJldHVybiBzZWxmLm1ham9yIDwgb3RoZXIubWFqb3IgZW5kCiAgaWYgc2VsZi5taW5vciB+PSBvdGhlci5taW5vciB0aGVuIHJldHVybiBzZWxmLm1pbm9yIDwgb3RoZXIubWlub3IgZW5kCiAgaWYgc2VsZi5wYXRjaCB+PSBvdGhlci5wYXRjaCB0aGVuIHJldHVybiBzZWxmLnBhdGNoIDwgb3RoZXIucGF0Y2ggZW5kCiAgcmV0dXJuIHNtYWxsZXJQcmVyZWxlYXNlKHNlbGYucHJlcmVsZWFzZSwgb3RoZXIucHJlcmVsZWFzZSkKICAtLSBub3RpY2UgdGhhdCBidWlsZCBpcyBpZ25vcmVkIGZvciBwcmVjZWRlbmNlIGluIHNlbXZlciAyLjAuMAplbmQKZnVuY3Rpb24gbXQ6X19wb3cob3RoZXIpCiAgaWYgc2VsZi5tYWpvciA9PSAwIHRoZW4KICAgIHJldHVybiBzZWxmID09IG90aGVyCiAgZW5kCiAgcmV0dXJuIHNlbGYubWFqb3IgPT0gb3RoZXIubWFqb3IgYW5kCiAgICAgICAgIHNlbGYubWlub3IgPD0gb3RoZXIubWlub3IKZW5kCmZ1bmN0aW9uIG10Ol9fdG9zdHJpbmcoKQogIGxvY2FsIGJ1ZmZlciA9IHsgKCIlZC4lZC4lZCIpOmZvcm1hdChzZWxmLm1ham9yLCBzZWxmLm1pbm9yLCBzZWxmLnBhdGNoKSB9CiAgaWYgc2VsZi5wcmVyZWxlYXNlIHRoZW4gdGFibGUuaW5zZXJ0KGJ1ZmZlciwgIi0iIC4uIHNlbGYucHJlcmVsZWFzZSkgZW5kCiAgaWYgc2VsZi5idWlsZCAgICAgIHRoZW4gdGFibGUuaW5zZXJ0KGJ1ZmZlciwgIisiIC4uIHNlbGYuYnVpbGQpIGVuZAogIHJldHVybiB0YWJsZS5jb25jYXQoYnVmZmVyKQplbmQKbG9jYWwgZnVuY3Rpb24gbmV3KG1ham9yLCBtaW5vciwgcGF0Y2gsIHByZXJlbGVhc2UsIGJ1aWxkKQogIGFzc2VydChtYWpvciwgIkF0IGxlYXN0IG9uZSBwYXJhbWV0ZXIgaXMgbmVlZGVkIikKICBpZiB0eXBlKG1ham9yKSA9PSAnc3RyaW5nJyB0aGVuCiAgICBtYWpvcixtaW5vcixwYXRjaCxwcmVyZWxlYXNlLGJ1aWxkID0gcGFyc2VWZXJzaW9uKG1ham9yKQogIGVuZAogIHBhdGNoID0gcGF0Y2ggb3IgMAogIG1pbm9yID0gbWlub3Igb3IgMAogIGNoZWNrUG9zaXRpdmVJbnRlZ2VyKG1ham9yLCAibWFqb3IiKQogIGNoZWNrUG9zaXRpdmVJbnRlZ2VyKG1pbm9yLCAibWlub3IiKQogIGNoZWNrUG9zaXRpdmVJbnRlZ2VyKHBhdGNoLCAicGF0Y2giKQogIGxvY2FsIHJlc3VsdCA9IHttYWpvcj1tYWpvciwgbWlub3I9bWlub3IsIHBhdGNoPXBhdGNoLCBwcmVyZWxlYXNlPXByZXJlbGVhc2UsIGJ1aWxkPWJ1aWxkfQogIHJldHVybiBzZXRtZXRhdGFibGUocmVzdWx0LCBtdCkKZW5kCnNldG1ldGF0YWJsZShzZW12ZXIsIHsgX19jYWxsID0gZnVuY3Rpb24oXywgLi4uKSByZXR1cm4gbmV3KC4uLikgZW5kIH0pCnNlbXZlci5fVkVSU0lPTj0gc2VtdmVyKHNlbXZlci5fVkVSU0lPTikKcmV0dXJuIHNlbXZlcgoAAAAAaWYgaHR0cCA9PSBuaWwgdGhlbgpyZXR1cm4KZW5kCmZ1bmN0aW9uIGh0dHAucmVwb3J0UHJvZ3Jlc3ModG90YWwsIGN1cnJlbnQpCmxvY2FsIHdpZHRoID0gNzAKbG9jYWwgcHJvZ3Jlc3MgPSBtYXRoLmZsb29yKGN1cnJlbnQgKiB3aWR0aCAvIHRvdGFsKQppZiBwcm9ncmVzcyA9PSB3aWR0aCB0aGVuCmlvLndyaXRlKHN0cmluZy5yZXAoJyAnLCB3aWR0aCArIDIpIC4uICdccicpCmVsc2UKaW8ud3JpdGUoJ1snIC4uIHN0cmluZy5yZXAoJz0nLCBwcm9ncmVzcykgLi4gc3RyaW5nLnJlcCgnICcsIHdpZHRoIC0gcHJvZ3Jlc3MpIC4uICddXHInKQplbmQKZW5kCmZ1bmN0aW9uIGh0dHAuZXNjYXBlVXJsUGFyYW0ocGFyYW0pCmxvY2FsIHVybF9lbmNvZGluZ3MgPSB7ClsnICddID0gJyUlMjAnLApbJyEnXSA9ICclJTIxJywKWyciJ10gPSAnJSUyMicsClsnIyddID0gJyUlMjMnLApbJyQnXSA9ICclJTI0JywKWycmJ10gPSAnJSUyNicsClsnXCcnXSA9ICclJTI3JywKWycoJ10gPSAnJSUyOCcsClsnKSddID0gJyUlMjknLApbJyonXSA9ICclJTJBJywKWycrJ10gPSAnJSUyQicsClsnLSddID0gJyUlMkQnLApbJy4nXSA9ICclJTJFJywKWycvJ10gPSAnJSUyRicsClsnOiddID0gJyUlM0EnLApbJzsnXSA9ICclJTNCJywKWyc8J10gPSAnJSUzQycsClsnPSddID0gJyUlM0QnLApbJz4nXSA9ICclJTNFJywKWyc/J10gPSAnJSUzRicsClsnQCddID0gJyUlNDAnLApbJ1snXSA9ICclJTVCJywKWydcXCddID0gJyUlNUMnLApbJ10nXSA9ICclJTVEJywKWydeJ10gPSAnJSU1RScsClsnXyddID0gJyUlNUYnLApbJ2AnXSA9ICclJTYwJwp9CnBhcmFtID0gcGFyYW06Z3N1YignJSUnLCAnJSUyNScpCmZvciBrLHYgaW4gcGFpcnModXJsX2VuY29kaW5ncykgZG8KcGFyYW0gPSBwYXJhbTpnc3ViKCclJyAuLiBrLCB2KQplbmQKcmV0dXJuIHBhcmFtCmVuZAAAbG9jYWwgVkVSU0lPTiA9ICcyMDE2MTEwOS4yMScgLS0gdmVyc2lvbiBoaXN0b3J5IGF0IGVuZCBvZiBmaWxlCmxvY2FsIEFVVEhPUl9OT1RFID0gIi1bIEpTT04ubHVhIHBhY2thZ2UgYnkgSmVmZnJleSBGcmllZGwgKGh0dHA6Ly9yZWdleC5pbmZvL2Jsb2cvbHVhL2pzb24pIHZlcnNpb24gMjAxNjExMDkuMjEgXS0iCmxvY2FsIE9CSkRFRiA9IHsKICAgVkVSU0lPTiAgICAgID0gVkVSU0lPTiwKICAgQVVUSE9SX05PVEUgID0gQVVUSE9SX05PVEUsCn0KbG9jYWwgZGVmYXVsdF9wcmV0dHlfaW5kZW50ICA9ICIgICIKbG9jYWwgZGVmYXVsdF9wcmV0dHlfb3B0aW9ucyA9IHsgcHJldHR5ID0gdHJ1ZSwgYWxpZ25fa2V5cyA9IGZhbHNlLCBpbmRlbnQgPSBkZWZhdWx0X3ByZXR0eV9pbmRlbnQgIH0KbG9jYWwgaXNBcnJheSAgPSB7IF9fdG9zdHJpbmcgPSBmdW5jdGlvbigpIHJldHVybiAiSlNPTiBhcnJheSIgICAgICAgICBlbmQgfSAgaXNBcnJheS5fX2luZGV4ICA9IGlzQXJyYXkKbG9jYWwgaXNPYmplY3QgPSB7IF9fdG9zdHJpbmcgPSBmdW5jdGlvbigpIHJldHVybiAiSlNPTiBvYmplY3QiICAgICAgICBlbmQgfSAgaXNPYmplY3QuX19pbmRleCA9IGlzT2JqZWN0CmZ1bmN0aW9uIE9CSkRFRjpuZXdBcnJheSh0YmwpCiAgIHJldHVybiBzZXRtZXRhdGFibGUodGJsIG9yIHt9LCBpc0FycmF5KQplbmQKZnVuY3Rpb24gT0JKREVGOm5ld09iamVjdCh0YmwpCiAgIHJldHVybiBzZXRtZXRhdGFibGUodGJsIG9yIHt9LCBpc09iamVjdCkKZW5kCmxvY2FsIGZ1bmN0aW9uIGdldG51bShvcCkKICAgcmV0dXJuIHR5cGUob3ApID09ICdudW1iZXInIGFuZCBvcCBvciBvcC5OCmVuZApsb2NhbCBpc051bWJlciA9IHsKICAgX190b3N0cmluZyA9IGZ1bmN0aW9uKFQpICByZXR1cm4gVC5TICAgICAgICBlbmQsCiAgIF9fdW5tICAgICAgPSBmdW5jdGlvbihvcCkgcmV0dXJuIGdldG51bShvcCkgZW5kLAogICBfX2NvbmNhdCAgID0gZnVuY3Rpb24ob3AxLCBvcDIpIHJldHVybiB0b3N0cmluZyhvcDEpIC4uIHRvc3RyaW5nKG9wMikgZW5kLAogICBfX2FkZCAgICAgID0gZnVuY3Rpb24ob3AxLCBvcDIpIHJldHVybiBnZXRudW0ob3AxKSAgICsgICBnZXRudW0ob3AyKSAgZW5kLAogICBfX3N1YiAgICAgID0gZnVuY3Rpb24ob3AxLCBvcDIpIHJldHVybiBnZXRudW0ob3AxKSAgIC0gICBnZXRudW0ob3AyKSAgZW5kLAogICBfX211bCAgICAgID0gZnVuY3Rpb24ob3AxLCBvcDIpIHJldHVybiBnZXRudW0ob3AxKSAgICogICBnZXRudW0ob3AyKSAgZW5kLAogICBfX2RpdiAgICAgID0gZnVuY3Rpb24ob3AxLCBvcDIpIHJldHVybiBnZXRudW0ob3AxKSAgIC8gICBnZXRudW0ob3AyKSAgZW5kLAogICBfX21vZCAgICAgID0gZnVuY3Rpb24ob3AxLCBvcDIpIHJldHVybiBnZXRudW0ob3AxKSAgICUgICBnZXRudW0ob3AyKSAgZW5kLAogICBfX3BvdyAgICAgID0gZnVuY3Rpb24ob3AxLCBvcDIpIHJldHVybiBnZXRudW0ob3AxKSAgIF4gICBnZXRudW0ob3AyKSAgZW5kLAogICBfX2x0ICAgICAgID0gZnVuY3Rpb24ob3AxLCBvcDIpIHJldHVybiBnZXRudW0ob3AxKSAgIDwgICBnZXRudW0ob3AyKSAgZW5kLAogICBfX2VxICAgICAgID0gZnVuY3Rpb24ob3AxLCBvcDIpIHJldHVybiBnZXRudW0ob3AxKSAgID09ICBnZXRudW0ob3AyKSAgZW5kLAogICBfX2xlICAgICAgID0gZnVuY3Rpb24ob3AxLCBvcDIpIHJldHVybiBnZXRudW0ob3AxKSAgIDw9ICBnZXRudW0ob3AyKSAgZW5kLAp9CmlzTnVtYmVyLl9faW5kZXggPSBpc051bWJlcgpmdW5jdGlvbiBPQkpERUY6YXNOdW1iZXIoaXRlbSkKICAgaWYgZ2V0bWV0YXRhYmxlKGl0ZW0pID09IGlzTnVtYmVyIHRoZW4KICAgICAgLS0gaXQncyBhbHJlYWR5IGEgSlNPTiBudW1iZXIgb2JqZWN0LgogICAgICByZXR1cm4gaXRlbQogICBlbHNlaWYgdHlwZShpdGVtKSA9PSAndGFibGUnIGFuZCB0eXBlKGl0ZW0uUykgPT0gJ3N0cmluZycgYW5kIHR5cGUoaXRlbS5OKSA9PSAnbnVtYmVyJyB0aGVuCiAgICAgIC0tIGl0J3MgYSBudW1iZXItb2JqZWN0IHRhYmxlIHRoYXQgbG9zdCBpdHMgbWV0YXRhYmxlLCBzbyBnaXZlIGl0IG9uZQogICAgICByZXR1cm4gc2V0bWV0YXRhYmxlKGl0ZW0sIGlzTnVtYmVyKQogICBlbHNlCiAgICAgIC0tIHRoZSBub3JtYWwgc2l0dWF0aW9uLi4uIGdpdmVuIGEgbnVtYmVyIG9yIGEgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGEgbnVtYmVyLi4uLgogICAgICBsb2NhbCBob2xkZXIgPSB7CiAgICAgICAgIFMgPSB0b3N0cmluZyhpdGVtKSwgLS0gUyBpcyB0aGUgcmVwcmVzZW50YXRpb24gb2YgdGhlIG51bWJlciBhcyBhIHN0cmluZywgd2hpY2ggcmVtYWlucyBwcmVjaXNlCiAgICAgICAgIE4gPSB0b251bWJlcihpdGVtKSwgLS0gTiBpcyB0aGUgbnVtYmVyIGFzIGEgTHVhIG51bWJlci4KICAgICAgfQogICAgICByZXR1cm4gc2V0bWV0YXRhYmxlKGhvbGRlciwgaXNOdW1iZXIpCiAgIGVuZAplbmQKZnVuY3Rpb24gT0JKREVGOmZvcmNlU3RyaW5nKGl0ZW0pCiAgIGlmIHR5cGUoaXRlbSkgPT0gJ3RhYmxlJyBhbmQgdHlwZShpdGVtLlMpID09ICdzdHJpbmcnIHRoZW4KICAgICAgcmV0dXJuIGl0ZW0uUwogICBlbHNlCiAgICAgIHJldHVybiB0b3N0cmluZyhpdGVtKQogICBlbmQKZW5kCmZ1bmN0aW9uIE9CSkRFRjpmb3JjZU51bWJlcihpdGVtKQogICBpZiB0eXBlKGl0ZW0pID09ICd0YWJsZScgYW5kIHR5cGUoaXRlbS5OKSA9PSAnbnVtYmVyJyB0aGVuCiAgICAgIHJldHVybiBpdGVtLk4KICAgZWxzZQogICAgICByZXR1cm4gdG9udW1iZXIoaXRlbSkKICAgZW5kCmVuZAogICAKbG9jYWwgZnVuY3Rpb24gdW5pY29kZV9jb2RlcG9pbnRfYXNfdXRmOChjb2RlcG9pbnQpCiAgIC0tCiAgIC0tIGNvZGVwb2ludCBpcyBhIG51bWJlcgogICAtLQogICBpZiBjb2RlcG9pbnQgPD0gMTI3IHRoZW4KICAgICAgcmV0dXJuIHN0cmluZy5jaGFyKGNvZGVwb2ludCkKICAgZWxzZWlmIGNvZGVwb2ludCA8PSAyMDQ3IHRoZW4KICAgICAgLS0KICAgICAgLS0gMTEweXl5eHggMTB4eHh4eHggICAgICAgICA8LS0gdXNlZnVsIG5vdGF0aW9uIGZyb20gaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9VdGY4CiAgICAgIC0tCiAgICAgIGxvY2FsIGhpZ2hwYXJ0ID0gbWF0aC5mbG9vcihjb2RlcG9pbnQgLyAweDQwKQogICAgICBsb2NhbCBsb3dwYXJ0ICA9IGNvZGVwb2ludCAtICgweDQwICogaGlnaHBhcnQpCiAgICAgIHJldHVybiBzdHJpbmcuY2hhcigweEMwICsgaGlnaHBhcnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAweDgwICsgbG93cGFydCkKICAgZWxzZWlmIGNvZGVwb2ludCA8PSA2NTUzNSB0aGVuCiAgICAgIC0tCiAgICAgIC0tIDExMTB5eXl5IDEweXl5eXh4IDEweHh4eHh4CiAgICAgIC0tCiAgICAgIGxvY2FsIGhpZ2hwYXJ0ICA9IG1hdGguZmxvb3IoY29kZXBvaW50IC8gMHgxMDAwKQogICAgICBsb2NhbCByZW1haW5kZXIgPSBjb2RlcG9pbnQgLSAweDEwMDAgKiBoaWdocGFydAogICAgICBsb2NhbCBtaWRwYXJ0ICAgPSBtYXRoLmZsb29yKHJlbWFpbmRlciAvIDB4NDApCiAgICAgIGxvY2FsIGxvd3BhcnQgICA9IHJlbWFpbmRlciAtIDB4NDAgKiBtaWRwYXJ0CiAgICAgIGhpZ2hwYXJ0ID0gMHhFMCArIGhpZ2hwYXJ0CiAgICAgIG1pZHBhcnQgID0gMHg4MCArIG1pZHBhcnQKICAgICAgbG93cGFydCAgPSAweDgwICsgbG93cGFydAogICAgICAtLQogICAgICAtLSBDaGVjayBmb3IgYW4gaW52YWxpZCBjaGFyYWN0ZXIgKHRoYW5rcyBBbmR5IFIuIGF0IEFkb2JlKS4KICAgICAgLS0gU2VlIHRhYmxlIDMuNywgcGFnZSA5MywgaW4gaHR0cDovL3d3dy51bmljb2RlLm9yZy92ZXJzaW9ucy9Vbmljb2RlNS4yLjAvY2gwMy5wZGYjRzI4MDcwCiAgICAgIC0tCiAgICAgIGlmICggaGlnaHBhcnQgPT0gMHhFMCBhbmQgbWlkcGFydCA8IDB4QTAgKSBvcgogICAgICAgICAoIGhpZ2hwYXJ0ID09IDB4RUQgYW5kIG1pZHBhcnQgPiAweDlGICkgb3IKICAgICAgICAgKCBoaWdocGFydCA9PSAweEYwIGFuZCBtaWRwYXJ0IDwgMHg5MCApIG9yCiAgICAgICAgICggaGlnaHBhcnQgPT0gMHhGNCBhbmQgbWlkcGFydCA+IDB4OEYgKQogICAgICB0aGVuCiAgICAgICAgIHJldHVybiAiPyIKICAgICAgZWxzZQogICAgICAgICByZXR1cm4gc3RyaW5nLmNoYXIoaGlnaHBhcnQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaWRwYXJ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbG93cGFydCkKICAgICAgZW5kCiAgIGVsc2UKICAgICAgLS0KICAgICAgLS0gMTExMTB6enogMTB6enl5eXkgMTB5eXl5eHggMTB4eHh4eHgKICAgICAgLS0KICAgICAgbG9jYWwgaGlnaHBhcnQgID0gbWF0aC5mbG9vcihjb2RlcG9pbnQgLyAweDQwMDAwKQogICAgICBsb2NhbCByZW1haW5kZXIgPSBjb2RlcG9pbnQgLSAweDQwMDAwICogaGlnaHBhcnQKICAgICAgbG9jYWwgbWlkQSAgICAgID0gbWF0aC5mbG9vcihyZW1haW5kZXIgLyAweDEwMDApCiAgICAgIHJlbWFpbmRlciAgICAgICA9IHJlbWFpbmRlciAtIDB4MTAwMCAqIG1pZEEKICAgICAgbG9jYWwgbWlkQiAgICAgID0gbWF0aC5mbG9vcihyZW1haW5kZXIgLyAweDQwKQogICAgICBsb2NhbCBsb3dwYXJ0ICAgPSByZW1haW5kZXIgLSAweDQwICogbWlkQgogICAgICByZXR1cm4gc3RyaW5nLmNoYXIoMHhGMCArIGhpZ2hwYXJ0LAogICAgICAgICAgICAgICAgICAgICAgICAgMHg4MCArIG1pZEEsCiAgICAgICAgICAgICAgICAgICAgICAgICAweDgwICsgbWlkQiwKICAgICAgICAgICAgICAgICAgICAgICAgIDB4ODAgKyBsb3dwYXJ0KQogICBlbmQKZW5kCmZ1bmN0aW9uIE9CSkRFRjpvbkRlY29kZUVycm9yKG1lc3NhZ2UsIHRleHQsIGxvY2F0aW9uLCBldGMpCiAgIGlmIHRleHQgdGhlbgogICAgICBpZiBsb2NhdGlvbiB0aGVuCiAgICAgICAgIG1lc3NhZ2UgPSBzdHJpbmcuZm9ybWF0KCIlcyBhdCBieXRlICVkIG9mOiAlcyIsIG1lc3NhZ2UsIGxvY2F0aW9uLCB0ZXh0KQogICAgICBlbHNlCiAgICAgICAgIG1lc3NhZ2UgPSBzdHJpbmcuZm9ybWF0KCIlczogJXMiLCBtZXNzYWdlLCB0ZXh0KQogICAgICBlbmQKICAgZW5kCiAgIGlmIGV0YyB+PSBuaWwgdGhlbgogICAgICBtZXNzYWdlID0gbWVzc2FnZSAuLiAiICgiIC4uIE9CSkRFRjplbmNvZGUoZXRjKSAuLiAiKSIKICAgZW5kCiAgIGlmIHNlbGYuYXNzZXJ0IHRoZW4KICAgICAgc2VsZi5hc3NlcnQoZmFsc2UsIG1lc3NhZ2UpCiAgIGVsc2UKICAgICAgYXNzZXJ0KGZhbHNlLCBtZXNzYWdlKQogICBlbmQKZW5kCmZ1bmN0aW9uIE9CSkRFRjpvblRyYWlsaW5nR2FyYmFnZShqc29uX3RleHQsIGxvY2F0aW9uLCBwYXJzZWRfdmFsdWUsIGV0YykKICAgcmV0dXJuIHNlbGY6b25EZWNvZGVFcnJvcigidHJhaWxpbmcgZ2FyYmFnZSIsIGpzb25fdGV4dCwgbG9jYXRpb24sIGV0YykKZW5kCk9CSkRFRi5vbkRlY29kZU9mTmlsRXJyb3IgID0gT0JKREVGLm9uRGVjb2RlRXJyb3IKT0JKREVGLm9uRGVjb2RlT2ZIVE1MRXJyb3IgPSBPQkpERUYub25EZWNvZGVFcnJvcgpmdW5jdGlvbiBPQkpERUY6b25FbmNvZGVFcnJvcihtZXNzYWdlLCBldGMpCiAgIGlmIGV0YyB+PSBuaWwgdGhlbgogICAgICBtZXNzYWdlID0gbWVzc2FnZSAuLiAiICgiIC4uIE9CSkRFRjplbmNvZGUoZXRjKSAuLiAiKSIKICAgZW5kCiAgIGlmIHNlbGYuYXNzZXJ0IHRoZW4KICAgICAgc2VsZi5hc3NlcnQoZmFsc2UsIG1lc3NhZ2UpCiAgIGVsc2UKICAgICAgYXNzZXJ0KGZhbHNlLCBtZXNzYWdlKQogICBlbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIGdyb2tfbnVtYmVyKHNlbGYsIHRleHQsIHN0YXJ0LCBvcHRpb25zKQogICAtLQogICAtLSBHcmFiIHRoZSBpbnRlZ2VyIHBhcnQKICAgLS0KICAgbG9jYWwgaW50ZWdlcl9wYXJ0ID0gdGV4dDptYXRjaCgnXi0/WzEtOV0lZConLCBzdGFydCkKICAgICAgICAgICAgICAgICAgICAgb3IgdGV4dDptYXRjaCgiXi0/MCIsICAgICAgICBzdGFydCkKICAgaWYgbm90IGludGVnZXJfcGFydCB0aGVuCiAgICAgIHNlbGY6b25EZWNvZGVFcnJvcigiZXhwZWN0ZWQgbnVtYmVyIiwgdGV4dCwgc3RhcnQsIG9wdGlvbnMuZXRjKQogICAgICByZXR1cm4gbmlsLCBzdGFydCAtLSBpbiBjYXNlIHRoZSBlcnJvciBtZXRob2QgZG9lc24ndCBhYm9ydCwgcmV0dXJuIHNvbWV0aGluZyBzZW5zaWJsZQogICBlbmQKICAgbG9jYWwgaSA9IHN0YXJ0ICsgaW50ZWdlcl9wYXJ0OmxlbigpCiAgIC0tCiAgIC0tIEdyYWIgYW4gb3B0aW9uYWwgZGVjaW1hbCBwYXJ0CiAgIC0tCiAgIGxvY2FsIGRlY2ltYWxfcGFydCA9IHRleHQ6bWF0Y2goJ14lLiVkKycsIGkpIG9yICIiCiAgIGkgPSBpICsgZGVjaW1hbF9wYXJ0OmxlbigpCiAgIC0tCiAgIC0tIEdyYWIgYW4gb3B0aW9uYWwgZXhwb25lbnRpYWwgcGFydAogICAtLQogICBsb2NhbCBleHBvbmVudF9wYXJ0ID0gdGV4dDptYXRjaCgnXltlRV1bLStdPyVkKycsIGkpIG9yICIiCiAgIGkgPSBpICsgZXhwb25lbnRfcGFydDpsZW4oKQogICBsb2NhbCBmdWxsX251bWJlcl90ZXh0ID0gaW50ZWdlcl9wYXJ0IC4uIGRlY2ltYWxfcGFydCAuLiBleHBvbmVudF9wYXJ0CiAgIGlmIG9wdGlvbnMuZGVjb2RlTnVtYmVyc0FzT2JqZWN0cyB0aGVuCiAgICAgIHJldHVybiBPQkpERUY6YXNOdW1iZXIoZnVsbF9udW1iZXJfdGV4dCksIGkKICAgZW5kCiAgIC0tCiAgIC0tIElmIHdlJ3JlIHRvbGQgdG8gc3RyaW5naWZ5IHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucywgc28gZG8uCiAgIC0tIFdlIHB1bnQgYSBiaXQgd2hlbiB0aGVyZSdzIGFuIGV4cG9uZW50IGJ5IGp1c3Qgc3RyaW5naWZ5aW5nIG5vIG1hdHRlciB3aGF0LgogICAtLSBJIHN1cHBvc2Ugd2Ugc2hvdWxkIHJlYWxseSBsb29rIHRvIHNlZSB3aGV0aGVyIHRoZSBleHBvbmVudCBpcyBhY3R1YWxseSBiaWcgZW5vdWdoIG9uZQogICAtLSB3YXkgb3IgdGhlIG90aGVyIHRvIHRyaXAgc3RyaW5naWZpY2F0aW9uLCBidXQgSSdsbCBiZSBsYXp5IGFib3V0IGl0IHVudGlsIHNvbWVvbmUgYXNrcy4KICAgLS0KICAgaWYgKG9wdGlvbnMuZGVjb2RlSW50ZWdlclN0cmluZ2lmaWNhdGlvbkxlbmd0aAogICAgICAgYW5kCiAgICAgIChpbnRlZ2VyX3BhcnQ6bGVuKCkgPj0gb3B0aW9ucy5kZWNvZGVJbnRlZ2VyU3RyaW5naWZpY2F0aW9uTGVuZ3RoIG9yIGV4cG9uZW50X3BhcnQ6bGVuKCkgPiAwKSkKICAgICAgIG9yCiAgICAgIChvcHRpb25zLmRlY29kZURlY2ltYWxTdHJpbmdpZmljYXRpb25MZW5ndGggCiAgICAgICBhbmQKICAgICAgIChkZWNpbWFsX3BhcnQ6bGVuKCkgPj0gb3B0aW9ucy5kZWNvZGVEZWNpbWFsU3RyaW5naWZpY2F0aW9uTGVuZ3RoIG9yIGV4cG9uZW50X3BhcnQ6bGVuKCkgPiAwKSkKICAgdGhlbgogICAgICByZXR1cm4gZnVsbF9udW1iZXJfdGV4dCwgaSAtLSB0aGlzIHJldHVybnMgdGhlIGV4YWN0IHN0cmluZyByZXByZXNlbnRhdGlvbiBzZWVuIGluIHRoZSBvcmlnaW5hbCBKU09OCiAgIGVuZAogICBsb2NhbCBhc19udW1iZXIgPSB0b251bWJlcihmdWxsX251bWJlcl90ZXh0KQogICBpZiBub3QgYXNfbnVtYmVyIHRoZW4KICAgICAgc2VsZjpvbkRlY29kZUVycm9yKCJiYWQgbnVtYmVyIiwgdGV4dCwgc3RhcnQsIG9wdGlvbnMuZXRjKQogICAgICByZXR1cm4gbmlsLCBzdGFydCAtLSBpbiBjYXNlIHRoZSBlcnJvciBtZXRob2QgZG9lc24ndCBhYm9ydCwgcmV0dXJuIHNvbWV0aGluZyBzZW5zaWJsZQogICBlbmQKICAgcmV0dXJuIGFzX251bWJlciwgaQplbmQKbG9jYWwgZnVuY3Rpb24gZ3Jva19zdHJpbmcoc2VsZiwgdGV4dCwgc3RhcnQsIG9wdGlvbnMpCiAgIGlmIHRleHQ6c3ViKHN0YXJ0LHN0YXJ0KSB+PSAnIicgdGhlbgogICAgICBzZWxmOm9uRGVjb2RlRXJyb3IoImV4cGVjdGVkIHN0cmluZydzIG9wZW5pbmcgcXVvdGUiLCB0ZXh0LCBzdGFydCwgb3B0aW9ucy5ldGMpCiAgICAgIHJldHVybiBuaWwsIHN0YXJ0IC0tIGluIGNhc2UgdGhlIGVycm9yIG1ldGhvZCBkb2Vzbid0IGFib3J0LCByZXR1cm4gc29tZXRoaW5nIHNlbnNpYmxlCiAgIGVuZAogICBsb2NhbCBpID0gc3RhcnQgKyAxIC0tICsxIHRvIGJ5cGFzcyB0aGUgaW5pdGlhbCBxdW90ZQogICBsb2NhbCB0ZXh0X2xlbiA9IHRleHQ6bGVuKCkKICAgbG9jYWwgVkFMVUUgPSAiIgogICB3aGlsZSBpIDw9IHRleHRfbGVuIGRvCiAgICAgIGxvY2FsIGMgPSB0ZXh0OnN1YihpLGkpCiAgICAgIGlmIGMgPT0gJyInIHRoZW4KICAgICAgICAgcmV0dXJuIFZBTFVFLCBpICsgMQogICAgICBlbmQKICAgICAgaWYgYyB+PSAnXFwnIHRoZW4KICAgICAgICAgVkFMVUUgPSBWQUxVRSAuLiBjCiAgICAgICAgIGkgPSBpICsgMQogICAgICBlbHNlaWYgdGV4dDptYXRjaCgnXlxcYicsIGkpIHRoZW4KICAgICAgICAgVkFMVUUgPSBWQUxVRSAuLiAiXGIiCiAgICAgICAgIGkgPSBpICsgMgogICAgICBlbHNlaWYgdGV4dDptYXRjaCgnXlxcZicsIGkpIHRoZW4KICAgICAgICAgVkFMVUUgPSBWQUxVRSAuLiAiXGYiCiAgICAgICAgIGkgPSBpICsgMgogICAgICBlbHNlaWYgdGV4dDptYXRjaCgnXlxcbicsIGkpIHRoZW4KICAgICAgICAgVkFMVUUgPSBWQUxVRSAuLiAiXG4iCiAgICAgICAgIGkgPSBpICsgMgogICAgICBlbHNlaWYgdGV4dDptYXRjaCgnXlxccicsIGkpIHRoZW4KICAgICAgICAgVkFMVUUgPSBWQUxVRSAuLiAiXHIiCiAgICAgICAgIGkgPSBpICsgMgogICAgICBlbHNlaWYgdGV4dDptYXRjaCgnXlxcdCcsIGkpIHRoZW4KICAgICAgICAgVkFMVUUgPSBWQUxVRSAuLiAiXHQiCiAgICAgICAgIGkgPSBpICsgMgogICAgICBlbHNlCiAgICAgICAgIGxvY2FsIGhleCA9IHRleHQ6bWF0Y2goJ15cXHUoWzAxMjM0NTY3ODlhQWJCY0NkRGVFZkZdWzAxMjM0NTY3ODlhQWJCY0NkRGVFZkZdWzAxMjM0NTY3ODlhQWJCY0NkRGVFZkZdWzAxMjM0NTY3ODlhQWJCY0NkRGVFZkZdKScsIGkpCiAgICAgICAgIGlmIGhleCB0aGVuCiAgICAgICAgICAgIGkgPSBpICsgNiAtLSBieXBhc3Mgd2hhdCB3ZSBqdXN0IHJlYWQKICAgICAgICAgICAgLS0gV2UgaGF2ZSBhIFVuaWNvZGUgY29kZXBvaW50LiBJdCBjb3VsZCBiZSBzdGFuZGFsb25lLCBvciBpZiBpbiB0aGUgcHJvcGVyIHJhbmdlIGFuZAogICAgICAgICAgICAtLSBmb2xsb3dlZCBieSBhbm90aGVyIGluIGEgc3BlY2lmaWMgcmFuZ2UsIGl0J2xsIGJlIGEgdHdvLWNvZGUgc3Vycm9nYXRlIHBhaXIuCiAgICAgICAgICAgIGxvY2FsIGNvZGVwb2ludCA9IHRvbnVtYmVyKGhleCwgMTYpCiAgICAgICAgICAgIGlmIGNvZGVwb2ludCA+PSAweEQ4MDAgYW5kIGNvZGVwb2ludCA8PSAweERCRkYgdGhlbgogICAgICAgICAgICAgICAtLSBpdCdzIGEgaGkgc3Vycm9nYXRlLi4uIHNlZSB3aGV0aGVyIHdlIGhhdmUgYSBmb2xsb3dpbmcgbG93CiAgICAgICAgICAgICAgIGxvY2FsIGxvX3N1cnJvZ2F0ZSA9IHRleHQ6bWF0Y2goJ15cXHUoW2REXVtjZGVmQ0RFRl1bMDEyMzQ1Njc4OWFBYkJjQ2REZUVmRl1bMDEyMzQ1Njc4OWFBYkJjQ2REZUVmRl0pJywgaSkKICAgICAgICAgICAgICAgaWYgbG9fc3Vycm9nYXRlIHRoZW4KICAgICAgICAgICAgICAgICAgaSA9IGkgKyA2IC0tIGJ5cGFzcyB0aGUgbG93IHN1cnJvZ2F0ZSB3ZSBqdXN0IHJlYWQKICAgICAgICAgICAgICAgICAgY29kZXBvaW50ID0gMHgyNDAwICsgKGNvZGVwb2ludCAtIDB4RDgwMCkgKiAweDQwMCArIHRvbnVtYmVyKGxvX3N1cnJvZ2F0ZSwgMTYpCiAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgLS0gbm90IGEgcHJvcGVyIGxvdywgc28gd2UnbGwganVzdCBsZWF2ZSB0aGUgZmlyc3QgY29kZXBvaW50IGFzIGlzIGFuZCBzcGl0IGl0IG91dC4KICAgICAgICAgICAgICAgZW5kCiAgICAgICAgICAgIGVuZAogICAgICAgICAgICBWQUxVRSA9IFZBTFVFIC4uIHVuaWNvZGVfY29kZXBvaW50X2FzX3V0ZjgoY29kZXBvaW50KQogICAgICAgICBlbHNlCiAgICAgICAgICAgIC0tIGp1c3QgcGFzcyB0aHJvdWdoIHdoYXQncyBlc2NhcGVkCiAgICAgICAgICAgIFZBTFVFID0gVkFMVUUgLi4gdGV4dDptYXRjaCgnXlxcKC4pJywgaSkKICAgICAgICAgICAgaSA9IGkgKyAyCiAgICAgICAgIGVuZAogICAgICBlbmQKICAgZW5kCiAgIHNlbGY6b25EZWNvZGVFcnJvcigidW5jbG9zZWQgc3RyaW5nIiwgdGV4dCwgc3RhcnQsIG9wdGlvbnMuZXRjKQogICByZXR1cm4gbmlsLCBzdGFydCAtLSBpbiBjYXNlIHRoZSBlcnJvciBtZXRob2QgZG9lc24ndCBhYm9ydCwgcmV0dXJuIHNvbWV0aGluZyBzZW5zaWJsZQplbmQKbG9jYWwgZnVuY3Rpb24gc2tpcF93aGl0ZXNwYWNlKHRleHQsIHN0YXJ0KQogICBsb2NhbCBfLCBtYXRjaF9lbmQgPSB0ZXh0OmZpbmQoIl5bIFxuXHJcdF0rIiwgc3RhcnQpIC0tIFtodHRwOi8vd3d3LmlldGYub3JnL3JmYy9yZmM0NjI3LnR4dF0gU2VjdGlvbiAyCiAgIGlmIG1hdGNoX2VuZCB0aGVuCiAgICAgIHJldHVybiBtYXRjaF9lbmQgKyAxCiAgIGVsc2UKICAgICAgcmV0dXJuIHN0YXJ0CiAgIGVuZAplbmQKbG9jYWwgZ3Jva19vbmUgLS0gYXNzaWduZWQgbGF0ZXIKbG9jYWwgZnVuY3Rpb24gZ3Jva19vYmplY3Qoc2VsZiwgdGV4dCwgc3RhcnQsIG9wdGlvbnMpCiAgIGlmIHRleHQ6c3ViKHN0YXJ0LHN0YXJ0KSB+PSAneycgdGhlbgogICAgICBzZWxmOm9uRGVjb2RlRXJyb3IoImV4cGVjdGVkICd7JyIsIHRleHQsIHN0YXJ0LCBvcHRpb25zLmV0YykKICAgICAgcmV0dXJuIG5pbCwgc3RhcnQgLS0gaW4gY2FzZSB0aGUgZXJyb3IgbWV0aG9kIGRvZXNuJ3QgYWJvcnQsIHJldHVybiBzb21ldGhpbmcgc2Vuc2libGUKICAgZW5kCiAgIGxvY2FsIGkgPSBza2lwX3doaXRlc3BhY2UodGV4dCwgc3RhcnQgKyAxKSAtLSArMSB0byBza2lwIHRoZSAneycKICAgbG9jYWwgVkFMVUUgPSBzZWxmLnN0cmljdFR5cGVzIGFuZCBzZWxmOm5ld09iamVjdCB7IH0gb3IgeyB9CiAgIGlmIHRleHQ6c3ViKGksaSkgPT0gJ30nIHRoZW4KICAgICAgcmV0dXJuIFZBTFVFLCBpICsgMQogICBlbmQKICAgbG9jYWwgdGV4dF9sZW4gPSB0ZXh0OmxlbigpCiAgIHdoaWxlIGkgPD0gdGV4dF9sZW4gZG8KICAgICAgbG9jYWwga2V5LCBuZXdfaSA9IGdyb2tfc3RyaW5nKHNlbGYsIHRleHQsIGksIG9wdGlvbnMpCiAgICAgIGkgPSBza2lwX3doaXRlc3BhY2UodGV4dCwgbmV3X2kpCiAgICAgIGlmIHRleHQ6c3ViKGksIGkpIH49ICc6JyB0aGVuCiAgICAgICAgIHNlbGY6b25EZWNvZGVFcnJvcigiZXhwZWN0ZWQgY29sb24iLCB0ZXh0LCBpLCBvcHRpb25zLmV0YykKICAgICAgICAgcmV0dXJuIG5pbCwgaSAtLSBpbiBjYXNlIHRoZSBlcnJvciBtZXRob2QgZG9lc24ndCBhYm9ydCwgcmV0dXJuIHNvbWV0aGluZyBzZW5zaWJsZQogICAgICBlbmQKICAgICAgaSA9IHNraXBfd2hpdGVzcGFjZSh0ZXh0LCBpICsgMSkKICAgICAgbG9jYWwgbmV3X3ZhbCwgbmV3X2kgPSBncm9rX29uZShzZWxmLCB0ZXh0LCBpLCBvcHRpb25zKQogICAgICBWQUxVRVtrZXldID0gbmV3X3ZhbAogICAgICAtLQogICAgICAtLSBFeHBlY3Qgbm93IGVpdGhlciAnfScgdG8gZW5kIHRoaW5ncywgb3IgYSAnLCcgdG8gYWxsb3cgdXMgdG8gY29udGludWUuCiAgICAgIC0tCiAgICAgIGkgPSBza2lwX3doaXRlc3BhY2UodGV4dCwgbmV3X2kpCiAgICAgIGxvY2FsIGMgPSB0ZXh0OnN1YihpLGkpCiAgICAgIGlmIGMgPT0gJ30nIHRoZW4KICAgICAgICAgcmV0dXJuIFZBTFVFLCBpICsgMQogICAgICBlbmQKICAgICAgaWYgdGV4dDpzdWIoaSwgaSkgfj0gJywnIHRoZW4KICAgICAgICAgc2VsZjpvbkRlY29kZUVycm9yKCJleHBlY3RlZCBjb21tYSBvciAnfSciLCB0ZXh0LCBpLCBvcHRpb25zLmV0YykKICAgICAgICAgcmV0dXJuIG5pbCwgaSAtLSBpbiBjYXNlIHRoZSBlcnJvciBtZXRob2QgZG9lc24ndCBhYm9ydCwgcmV0dXJuIHNvbWV0aGluZyBzZW5zaWJsZQogICAgICBlbmQKICAgICAgaSA9IHNraXBfd2hpdGVzcGFjZSh0ZXh0LCBpICsgMSkKICAgZW5kCiAgIHNlbGY6b25EZWNvZGVFcnJvcigidW5jbG9zZWQgJ3snIiwgdGV4dCwgc3RhcnQsIG9wdGlvbnMuZXRjKQogICByZXR1cm4gbmlsLCBzdGFydCAtLSBpbiBjYXNlIHRoZSBlcnJvciBtZXRob2QgZG9lc24ndCBhYm9ydCwgcmV0dXJuIHNvbWV0aGluZyBzZW5zaWJsZQplbmQKbG9jYWwgZnVuY3Rpb24gZ3Jva19hcnJheShzZWxmLCB0ZXh0LCBzdGFydCwgb3B0aW9ucykKICAgaWYgdGV4dDpzdWIoc3RhcnQsc3RhcnQpIH49ICdbJyB0aGVuCiAgICAgIHNlbGY6b25EZWNvZGVFcnJvcigiZXhwZWN0ZWQgJ1snIiwgdGV4dCwgc3RhcnQsIG9wdGlvbnMuZXRjKQogICAgICByZXR1cm4gbmlsLCBzdGFydCAtLSBpbiBjYXNlIHRoZSBlcnJvciBtZXRob2QgZG9lc24ndCBhYm9ydCwgcmV0dXJuIHNvbWV0aGluZyBzZW5zaWJsZQogICBlbmQKICAgbG9jYWwgaSA9IHNraXBfd2hpdGVzcGFjZSh0ZXh0LCBzdGFydCArIDEpIC0tICsxIHRvIHNraXAgdGhlICdbJwogICBsb2NhbCBWQUxVRSA9IHNlbGYuc3RyaWN0VHlwZXMgYW5kIHNlbGY6bmV3QXJyYXkgeyB9IG9yIHsgfQogICBpZiB0ZXh0OnN1YihpLGkpID09ICddJyB0aGVuCiAgICAgIHJldHVybiBWQUxVRSwgaSArIDEKICAgZW5kCiAgIGxvY2FsIFZBTFVFX0lOREVYID0gMQogICBsb2NhbCB0ZXh0X2xlbiA9IHRleHQ6bGVuKCkKICAgd2hpbGUgaSA8PSB0ZXh0X2xlbiBkbwogICAgICBsb2NhbCB2YWwsIG5ld19pID0gZ3Jva19vbmUoc2VsZiwgdGV4dCwgaSwgb3B0aW9ucykKICAgICAgLS0gY2FuJ3QgdGFibGUuaW5zZXJ0KFZBTFVFLCB2YWwpIGhlcmUgYmVjYXVzZSBpdCdzIGEgbm8tb3AgaWYgdmFsIGlzIG5pbAogICAgICBWQUxVRVtWQUxVRV9JTkRFWF0gPSB2YWwKICAgICAgVkFMVUVfSU5ERVggPSBWQUxVRV9JTkRFWCArIDEKICAgICAgaSA9IHNraXBfd2hpdGVzcGFjZSh0ZXh0LCBuZXdfaSkKICAgICAgLS0KICAgICAgLS0gRXhwZWN0IG5vdyBlaXRoZXIgJ10nIHRvIGVuZCB0aGluZ3MsIG9yIGEgJywnIHRvIGFsbG93IHVzIHRvIGNvbnRpbnVlLgogICAgICAtLQogICAgICBsb2NhbCBjID0gdGV4dDpzdWIoaSxpKQogICAgICBpZiBjID09ICddJyB0aGVuCiAgICAgICAgIHJldHVybiBWQUxVRSwgaSArIDEKICAgICAgZW5kCiAgICAgIGlmIHRleHQ6c3ViKGksIGkpIH49ICcsJyB0aGVuCiAgICAgICAgIHNlbGY6b25EZWNvZGVFcnJvcigiZXhwZWN0ZWQgY29tbWEgb3IgJ10nIiwgdGV4dCwgaSwgb3B0aW9ucy5ldGMpCiAgICAgICAgIHJldHVybiBuaWwsIGkgLS0gaW4gY2FzZSB0aGUgZXJyb3IgbWV0aG9kIGRvZXNuJ3QgYWJvcnQsIHJldHVybiBzb21ldGhpbmcgc2Vuc2libGUKICAgICAgZW5kCiAgICAgIGkgPSBza2lwX3doaXRlc3BhY2UodGV4dCwgaSArIDEpCiAgIGVuZAogICBzZWxmOm9uRGVjb2RlRXJyb3IoInVuY2xvc2VkICdbJyIsIHRleHQsIHN0YXJ0LCBvcHRpb25zLmV0YykKICAgcmV0dXJuIG5pbCwgaSAtLSBpbiBjYXNlIHRoZSBlcnJvciBtZXRob2QgZG9lc24ndCBhYm9ydCwgcmV0dXJuIHNvbWV0aGluZyBzZW5zaWJsZQplbmQKZ3Jva19vbmUgPSBmdW5jdGlvbihzZWxmLCB0ZXh0LCBzdGFydCwgb3B0aW9ucykKICAgLS0gU2tpcCBhbnkgd2hpdGVzcGFjZQogICBzdGFydCA9IHNraXBfd2hpdGVzcGFjZSh0ZXh0LCBzdGFydCkKICAgaWYgc3RhcnQgPiB0ZXh0OmxlbigpIHRoZW4KICAgICAgc2VsZjpvbkRlY29kZUVycm9yKCJ1bmV4cGVjdGVkIGVuZCBvZiBzdHJpbmciLCB0ZXh0LCBuaWwsIG9wdGlvbnMuZXRjKQogICAgICByZXR1cm4gbmlsLCBzdGFydCAtLSBpbiBjYXNlIHRoZSBlcnJvciBtZXRob2QgZG9lc24ndCBhYm9ydCwgcmV0dXJuIHNvbWV0aGluZyBzZW5zaWJsZQogICBlbmQKICAgaWYgdGV4dDpmaW5kKCdeIicsIHN0YXJ0KSB0aGVuCiAgICAgIHJldHVybiBncm9rX3N0cmluZyhzZWxmLCB0ZXh0LCBzdGFydCwgb3B0aW9ucy5ldGMpCiAgIGVsc2VpZiB0ZXh0OmZpbmQoJ15bLTAxMjM0NTY3ODkgXScsIHN0YXJ0KSB0aGVuCiAgICAgIHJldHVybiBncm9rX251bWJlcihzZWxmLCB0ZXh0LCBzdGFydCwgb3B0aW9ucykKICAgZWxzZWlmIHRleHQ6ZmluZCgnXiV7Jywgc3RhcnQpIHRoZW4KICAgICAgcmV0dXJuIGdyb2tfb2JqZWN0KHNlbGYsIHRleHQsIHN0YXJ0LCBvcHRpb25zKQogICBlbHNlaWYgdGV4dDpmaW5kKCdeJVsnLCBzdGFydCkgdGhlbgogICAgICByZXR1cm4gZ3Jva19hcnJheShzZWxmLCB0ZXh0LCBzdGFydCwgb3B0aW9ucykKICAgZWxzZWlmIHRleHQ6ZmluZCgnXnRydWUnLCBzdGFydCkgdGhlbgogICAgICByZXR1cm4gdHJ1ZSwgc3RhcnQgKyA0CiAgIGVsc2VpZiB0ZXh0OmZpbmQoJ15mYWxzZScsIHN0YXJ0KSB0aGVuCiAgICAgIHJldHVybiBmYWxzZSwgc3RhcnQgKyA1CiAgIGVsc2VpZiB0ZXh0OmZpbmQoJ15udWxsJywgc3RhcnQpIHRoZW4KICAgICAgcmV0dXJuIG5pbCwgc3RhcnQgKyA0CiAgIGVsc2UKICAgICAgc2VsZjpvbkRlY29kZUVycm9yKCJjYW4ndCBwYXJzZSBKU09OIiwgdGV4dCwgc3RhcnQsIG9wdGlvbnMuZXRjKQogICAgICByZXR1cm4gbmlsLCAxIC0tIGluIGNhc2UgdGhlIGVycm9yIG1ldGhvZCBkb2Vzbid0IGFib3J0LCByZXR1cm4gc29tZXRoaW5nIHNlbnNpYmxlCiAgIGVuZAplbmQKZnVuY3Rpb24gT0JKREVGOmRlY29kZSh0ZXh0LCBldGMsIG9wdGlvbnMpCiAgIC0tCiAgIC0tIElmIHRoZSB1c2VyIGRpZG4ndCBwYXNzIGluIGEgdGFibGUgb2YgZGVjb2RlIG9wdGlvbnMsIG1ha2UgYW4gZW1wdHkgb25lLgogICAtLQogICBpZiB0eXBlKG9wdGlvbnMpIH49ICd0YWJsZScgdGhlbgogICAgICBvcHRpb25zID0ge30KICAgZW5kCiAgIC0tCiAgIC0tIElmIHRoZXkgcGFzc2VkIGluIGFuICdldGMnIGFyZ3VtZW50LCBzdHVmZiBpdCBpbnRvIHRoZSBvcHRpb25zLgogICAtLSAoSWYgbm90LCBhbnkgJ2V0YycgZmllbGQgaW4gdGhlIG9wdGlvbnMgdGhleSBwYXNzZWQgaW4gcmVtYWlucyB0byBiZSB1c2VkKQogICAtLQogICBpZiBldGMgfj0gbmlsIHRoZW4KICAgICAgb3B0aW9ucy5ldGMgPSBldGMKICAgZW5kCiAgIGlmIHR5cGUoc2VsZikgfj0gJ3RhYmxlJyBvciBzZWxmLl9faW5kZXggfj0gT0JKREVGIHRoZW4KICAgICAgbG9jYWwgZXJyb3JfbWVzc2FnZSA9ICJKU09OOmRlY29kZSBtdXN0IGJlIGNhbGxlZCBpbiBtZXRob2QgZm9ybWF0IgogICAgICBPQkpERUY6b25EZWNvZGVFcnJvcihlcnJvcl9tZXNzYWdlLCBuaWwsIG5pbCwgb3B0aW9ucy5ldGMpCiAgICAgIHJldHVybiBuaWwsIGVycm9yX21lc3NhZ2UgLS0gaW4gY2FzZSB0aGUgZXJyb3IgbWV0aG9kIGRvZXNuJ3QgYWJvcnQsIHJldHVybiBzb21ldGhpbmcgc2Vuc2libGUKICAgZW5kCiAgIGlmIHRleHQgPT0gbmlsIHRoZW4KICAgICAgbG9jYWwgZXJyb3JfbWVzc2FnZSA9ICJuaWwgcGFzc2VkIHRvIEpTT046ZGVjb2RlKCkiCiAgICAgIHNlbGY6b25EZWNvZGVPZk5pbEVycm9yKGVycm9yX21lc3NhZ2UsIG5pbCwgbmlsLCBvcHRpb25zLmV0YykKICAgICAgcmV0dXJuIG5pbCwgZXJyb3JfbWVzc2FnZSAtLSBpbiBjYXNlIHRoZSBlcnJvciBtZXRob2QgZG9lc24ndCBhYm9ydCwgcmV0dXJuIHNvbWV0aGluZyBzZW5zaWJsZQogICBlbHNlaWYgdHlwZSh0ZXh0KSB+PSAnc3RyaW5nJyB0aGVuCiAgICAgIGxvY2FsIGVycm9yX21lc3NhZ2UgPSAiZXhwZWN0ZWQgc3RyaW5nIGFyZ3VtZW50IHRvIEpTT046ZGVjb2RlKCkiCiAgICAgIHNlbGY6b25EZWNvZGVFcnJvcihzdHJpbmcuZm9ybWF0KCIlcywgZ290ICVzIiwgZXJyb3JfbWVzc2FnZSwgdHlwZSh0ZXh0KSksIG5pbCwgbmlsLCBvcHRpb25zLmV0YykKICAgICAgcmV0dXJuIG5pbCwgZXJyb3JfbWVzc2FnZSAtLSBpbiBjYXNlIHRoZSBlcnJvciBtZXRob2QgZG9lc24ndCBhYm9ydCwgcmV0dXJuIHNvbWV0aGluZyBzZW5zaWJsZQogICBlbmQKICAgaWYgdGV4dDptYXRjaCgnXiVzKiQnKSB0aGVuCiAgICAgIC0tIGFuIGVtcHR5IHN0cmluZyBpcyBub3RoaW5nLCBidXQgbm90IGFuIGVycm9yCiAgICAgIHJldHVybiBuaWwKICAgZW5kCiAgIGlmIHRleHQ6bWF0Y2goJ14lcyo8JykgdGhlbgogICAgICAtLSBDYW4ndCBiZSBKU09OLi4uIHdlJ2xsIGFzc3VtZSBpdCdzIEhUTUwKICAgICAgbG9jYWwgZXJyb3JfbWVzc2FnZSA9ICJIVE1MIHBhc3NlZCB0byBKU09OOmRlY29kZSgpIgogICAgICBzZWxmOm9uRGVjb2RlT2ZIVE1MRXJyb3IoZXJyb3JfbWVzc2FnZSwgdGV4dCwgbmlsLCBvcHRpb25zLmV0YykKICAgICAgcmV0dXJuIG5pbCwgZXJyb3JfbWVzc2FnZSAtLSBpbiBjYXNlIHRoZSBlcnJvciBtZXRob2QgZG9lc24ndCBhYm9ydCwgcmV0dXJuIHNvbWV0aGluZyBzZW5zaWJsZQogICBlbmQKICAgLS0KICAgLS0gRW5zdXJlIHRoYXQgaXQncyBub3QgVVRGLTMyIG9yIFVURi0xNi4KICAgLS0gVGhvc2UgYXJlIHBlcmZlY3RseSB2YWxpZCBlbmNvZGluZ3MgZm9yIEpTT04gKGFzIHBlciBSRkMgNDYyNyBzZWN0aW9uIDMpLAogICAtLSBidXQgdGhpcyBwYWNrYWdlIGNhbid0IGhhbmRsZSB0aGVtLgogICAtLQogICBpZiB0ZXh0OnN1YigxLDEpOmJ5dGUoKSA9PSAwIG9yICh0ZXh0OmxlbigpID49IDIgYW5kIHRleHQ6c3ViKDIsMik6Ynl0ZSgpID09IDApIHRoZW4KICAgICAgbG9jYWwgZXJyb3JfbWVzc2FnZSA9ICJKU09OIHBhY2thZ2UgZ3Jva3Mgb25seSBVVEYtOCwgc29ycnkiCiAgICAgIHNlbGY6b25EZWNvZGVFcnJvcihlcnJvcl9tZXNzYWdlLCB0ZXh0LCBuaWwsIG9wdGlvbnMuZXRjKQogICAgICByZXR1cm4gbmlsLCBlcnJvcl9tZXNzYWdlIC0tIGluIGNhc2UgdGhlIGVycm9yIG1ldGhvZCBkb2Vzbid0IGFib3J0LCByZXR1cm4gc29tZXRoaW5nIHNlbnNpYmxlCiAgIGVuZAogICAtLQogICAtLSBhcHBseSBnbG9iYWwgb3B0aW9ucwogICAtLQogICBpZiBvcHRpb25zLmRlY29kZU51bWJlcnNBc09iamVjdHMgPT0gbmlsIHRoZW4KICAgICAgb3B0aW9ucy5kZWNvZGVOdW1iZXJzQXNPYmplY3RzID0gc2VsZi5kZWNvZGVOdW1iZXJzQXNPYmplY3RzCiAgIGVuZAogICBpZiBvcHRpb25zLmRlY29kZUludGVnZXJTdHJpbmdpZmljYXRpb25MZW5ndGggPT0gbmlsIHRoZW4KICAgICAgb3B0aW9ucy5kZWNvZGVJbnRlZ2VyU3RyaW5naWZpY2F0aW9uTGVuZ3RoID0gc2VsZi5kZWNvZGVJbnRlZ2VyU3RyaW5naWZpY2F0aW9uTGVuZ3RoCiAgIGVuZAogICBpZiBvcHRpb25zLmRlY29kZURlY2ltYWxTdHJpbmdpZmljYXRpb25MZW5ndGggPT0gbmlsIHRoZW4KICAgICAgb3B0aW9ucy5kZWNvZGVEZWNpbWFsU3RyaW5naWZpY2F0aW9uTGVuZ3RoID0gc2VsZi5kZWNvZGVEZWNpbWFsU3RyaW5naWZpY2F0aW9uTGVuZ3RoCiAgIGVuZAogICAtLQogICAtLSBGaW5hbGx5LCBnbyBwYXJzZSBpdAogICAtLQogICBsb2NhbCBzdWNjZXNzLCB2YWx1ZSwgbmV4dF9pID0gcGNhbGwoZ3Jva19vbmUsIHNlbGYsIHRleHQsIDEsIG9wdGlvbnMpCiAgIGlmIHN1Y2Nlc3MgdGhlbgogICAgICBsb2NhbCBlcnJvcl9tZXNzYWdlID0gbmlsCiAgICAgIGlmIG5leHRfaSB+PSAjdGV4dCArIDEgdGhlbgogICAgICAgICAtLSBzb21ldGhpbmcncyBsZWZ0IG92ZXIgYWZ0ZXIgd2UgcGFyc2VkIHRoZSBmaXJzdCB0aGluZy4uLi4gd2hpdGVzcGFjZSBpcyBhbGxvd2VkLgogICAgICAgICBuZXh0X2kgPSBza2lwX3doaXRlc3BhY2UodGV4dCwgbmV4dF9pKQogICAgICAgICAtLSBpZiB3ZSBoYXZlIHNvbWV0aGluZyBsZWZ0IG92ZXIgbm93LCBpdCdzIHRyYWlsaW5nIGdhcmJhZ2UKICAgICAgICAgaWYgbmV4dF9pIH49ICN0ZXh0ICsgMSB0aGVuCiAgICAgICAgICAgIHZhbHVlLCBlcnJvcl9tZXNzYWdlID0gc2VsZjpvblRyYWlsaW5nR2FyYmFnZSh0ZXh0LCBuZXh0X2ksIHZhbHVlLCBvcHRpb25zLmV0YykKICAgICAgICAgZW5kCiAgICAgIGVuZAogICAgICByZXR1cm4gdmFsdWUsIGVycm9yX21lc3NhZ2UKICAgZWxzZQogICAgICAtLSBJZiBKU09OOm9uRGVjb2RlRXJyb3IoKSBkaWRuJ3QgYWJvcnQgb3V0IG9mIHRoZSBwY2FsbCwgd2UnbGwgaGF2ZSByZWNlaXZlZAogICAgICAtLSB0aGUgZXJyb3IgbWVzc2FnZSBoZXJlIGFzICJ2YWx1ZSIsIHNvIHBhc3MgaXQgYWxvbmcgYXMgYW4gYXNzZXJ0LgogICAgICBsb2NhbCBlcnJvcl9tZXNzYWdlID0gdmFsdWUKICAgICAgaWYgc2VsZi5hc3NlcnQgdGhlbgogICAgICAgICBzZWxmLmFzc2VydChmYWxzZSwgZXJyb3JfbWVzc2FnZSkKICAgICAgZWxzZQogICAgICAgICBhc3NlcnQoZmFsc2UsIGVycm9yX21lc3NhZ2UpCiAgICAgIGVuZAogICAgICAtLSAuLi5hbmQgaWYgd2UncmUgc3RpbGwgaGVyZSAoYmVjYXVzZSB0aGUgYXNzZXJ0IGRpZG4ndCB0aHJvdyBhbiBlcnJvciksCiAgICAgIC0tIHJldHVybiBhIG5pbCBhbmQgdGhyb3cgdGhlIGVycm9yIG1lc3NhZ2Ugb24gYXMgYSBzZWNvbmQgYXJnCiAgICAgIHJldHVybiBuaWwsIGVycm9yX21lc3NhZ2UKICAgZW5kCmVuZApsb2NhbCBmdW5jdGlvbiBiYWNrc2xhc2hfcmVwbGFjZW1lbnRfZnVuY3Rpb24oYykKICAgaWYgYyA9PSAiXG4iIHRoZW4KICAgICAgcmV0dXJuICJcXG4iCiAgIGVsc2VpZiBjID09ICJcciIgdGhlbgogICAgICByZXR1cm4gIlxcciIKICAgZWxzZWlmIGMgPT0gIlx0IiB0aGVuCiAgICAgIHJldHVybiAiXFx0IgogICBlbHNlaWYgYyA9PSAiXGIiIHRoZW4KICAgICAgcmV0dXJuICJcXGIiCiAgIGVsc2VpZiBjID09ICJcZiIgdGhlbgogICAgICByZXR1cm4gIlxcZiIKICAgZWxzZWlmIGMgPT0gJyInIHRoZW4KICAgICAgcmV0dXJuICdcXCInCiAgIGVsc2VpZiBjID09ICdcXCcgdGhlbgogICAgICByZXR1cm4gJ1xcXFwnCiAgIGVsc2UKICAgICAgcmV0dXJuIHN0cmluZy5mb3JtYXQoIlxcdSUwNHgiLCBjOmJ5dGUoKSkKICAgZW5kCmVuZApsb2NhbCBjaGFyc190b19iZV9lc2NhcGVkX2luX0pTT05fc3RyaW5nCiAgID0gJ1snCiAgIC4uICAgICciJyAgICAtLSBjbGFzcyBzdWItcGF0dGVybiB0byBtYXRjaCBhIGRvdWJsZSBxdW90ZQogICAuLiAgICAnJVxcJyAgLS0gY2xhc3Mgc3ViLXBhdHRlcm4gdG8gbWF0Y2ggYSBiYWNrc2xhc2gKICAgLi4gICAgJyV6JyAgIC0tIGNsYXNzIHN1Yi1wYXR0ZXJuIHRvIG1hdGNoIGEgbnVsbAogICAuLiAgICAnXDAwMScgLi4gJy0nIC4uICdcMDMxJyAtLSBjbGFzcyBzdWItcGF0dGVybiB0byBtYXRjaCBjb250cm9sIGNoYXJhY3RlcnMKICAgLi4gJ10nCmxvY2FsIExJTkVfU0VQQVJBVE9SX2FzX3V0ZjggICAgICA9IHVuaWNvZGVfY29kZXBvaW50X2FzX3V0ZjgoMHgyMDI4KQpsb2NhbCBQQVJBR1JBUEhfU0VQQVJBVE9SX2FzX3V0ZjggPSB1bmljb2RlX2NvZGVwb2ludF9hc191dGY4KDB4MjAyOSkKbG9jYWwgZnVuY3Rpb24ganNvbl9zdHJpbmdfbGl0ZXJhbCh2YWx1ZSwgb3B0aW9ucykKICAgbG9jYWwgbmV3dmFsID0gdmFsdWU6Z3N1YihjaGFyc190b19iZV9lc2NhcGVkX2luX0pTT05fc3RyaW5nLCBiYWNrc2xhc2hfcmVwbGFjZW1lbnRfZnVuY3Rpb24pCiAgIGlmIG9wdGlvbnMuc3RyaW5nc0FyZVV0ZjggdGhlbgogICAgICAtLQogICAgICAtLSBUaGlzIGZlZWxzIHJlYWxseSB1Z2x5IHRvIGp1c3QgbG9vayBpbnRvIGEgc3RyaW5nIGZvciB0aGUgc2VxdWVuY2Ugb2YgYnl0ZXMgdGhhdCB3ZSBrbm93IHRvIGJlIGEgcGFydGljdWxhciB1dGY4IGNoYXJhY3RlciwKICAgICAgLS0gYnV0IHV0Zjggd2FzIGRlc2lnbmVkIHB1cnBvc2VmdWxseSB0byBtYWtlIHRoaXMga2luZCBvZiB0aGluZyBwb3NzaWJsZS4gU3RpbGwsIGZlZWxzIGRpcnR5LgogICAgICAtLSBJJ2QgcmF0aGVyIGRlY29kZSB0aGUgYnl0ZSBzdHJlYW0gaW50byBhIGNoYXJhY3RlciBzdHJlYW0sIGJ1dCBpdCdzIG5vdCB0ZWNobmljYWxseSBuZWVkZWQgc28KICAgICAgLS0gbm90IHRlY2huaWNhbGx5IHdvcnRoIGl0LgogICAgICAtLQogICAgICBuZXd2YWwgPSBuZXd2YWw6Z3N1YihMSU5FX1NFUEFSQVRPUl9hc191dGY4LCAnXFx1MjAyOCcpOmdzdWIoUEFSQUdSQVBIX1NFUEFSQVRPUl9hc191dGY4LCdcXHUyMDI5JykKICAgZW5kCiAgIHJldHVybiAnIicgLi4gbmV3dmFsIC4uICciJwplbmQKbG9jYWwgZnVuY3Rpb24gb2JqZWN0X29yX2FycmF5KHNlbGYsIFQsIGV0YykKICAgLS0KICAgLS0gV2UgbmVlZCB0byBpbnNwZWN0IGFsbCB0aGUga2V5cy4uLiBpZiB0aGVyZSBhcmUgYW55IHN0cmluZ3MsIHdlJ2xsIGNvbnZlcnQgdG8gYSBKU09OCiAgIC0tIG9iamVjdC4gSWYgdGhlcmUgYXJlIG9ubHkgbnVtYmVycywgaXQncyBhIEpTT04gYXJyYXkuCiAgIC0tCiAgIC0tIElmIHdlJ2xsIGJlIGNvbnZlcnRpbmcgdG8gYSBKU09OIG9iamVjdCwgd2UnbGwgd2FudCB0byBzb3J0IHRoZSBrZXlzIHNvIHRoYXQgdGhlCiAgIC0tIGVuZCByZXN1bHQgaXMgZGV0ZXJtaW5pc3RpYy4KICAgLS0KICAgbG9jYWwgc3RyaW5nX2tleXMgPSB7IH0KICAgbG9jYWwgbnVtYmVyX2tleXMgPSB7IH0KICAgbG9jYWwgbnVtYmVyX2tleXNfbXVzdF9iZV9zdHJpbmdzID0gZmFsc2UKICAgbG9jYWwgbWF4aW11bV9udW1iZXJfa2V5CiAgIGZvciBrZXkgaW4gcGFpcnMoVCkgZG8KICAgICAgaWYgdHlwZShrZXkpID09ICdzdHJpbmcnIHRoZW4KICAgICAgICAgdGFibGUuaW5zZXJ0KHN0cmluZ19rZXlzLCBrZXkpCiAgICAgIGVsc2VpZiB0eXBlKGtleSkgPT0gJ251bWJlcicgdGhlbgogICAgICAgICB0YWJsZS5pbnNlcnQobnVtYmVyX2tleXMsIGtleSkKICAgICAgICAgaWYga2V5IDw9IDAgb3Iga2V5ID49IG1hdGguaHVnZSB0aGVuCiAgICAgICAgICAgIG51bWJlcl9rZXlzX211c3RfYmVfc3RyaW5ncyA9IHRydWUKICAgICAgICAgZWxzZWlmIG5vdCBtYXhpbXVtX251bWJlcl9rZXkgb3Iga2V5ID4gbWF4aW11bV9udW1iZXJfa2V5IHRoZW4KICAgICAgICAgICAgbWF4aW11bV9udW1iZXJfa2V5ID0ga2V5CiAgICAgICAgIGVuZAogICAgICBlbHNlCiAgICAgICAgIHNlbGY6b25FbmNvZGVFcnJvcigiY2FuJ3QgZW5jb2RlIHRhYmxlIHdpdGggYSBrZXkgb2YgdHlwZSAiIC4uIHR5cGUoa2V5KSwgZXRjKQogICAgICBlbmQKICAgZW5kCiAgIGlmICNzdHJpbmdfa2V5cyA9PSAwIGFuZCBub3QgbnVtYmVyX2tleXNfbXVzdF9iZV9zdHJpbmdzIHRoZW4KICAgICAgLS0KICAgICAgLS0gQW4gZW1wdHkgdGFibGUsIG9yIGEgbnVtZXJpYy1vbmx5IGFycmF5CiAgICAgIC0tCiAgICAgIGlmICNudW1iZXJfa2V5cyA+IDAgdGhlbgogICAgICAgICByZXR1cm4gbmlsLCBtYXhpbXVtX251bWJlcl9rZXkgLS0gYW4gYXJyYXkKICAgICAgZWxzZWlmIHRvc3RyaW5nKFQpID09ICJKU09OIGFycmF5IiB0aGVuCiAgICAgICAgIHJldHVybiBuaWwKICAgICAgZWxzZWlmIHRvc3RyaW5nKFQpID09ICJKU09OIG9iamVjdCIgdGhlbgogICAgICAgICByZXR1cm4geyB9CiAgICAgIGVsc2UKICAgICAgICAgLS0gaGF2ZSB0byBndWVzcywgc28gd2UnbGwgcGljayBhcnJheSwgc2luY2UgZW1wdHkgYXJyYXlzIGFyZSBsaWtlbHkgbW9yZSBjb21tb24gdGhhbiBlbXB0eSBvYmplY3RzCiAgICAgICAgIHJldHVybiBuaWwKICAgICAgZW5kCiAgIGVuZAogICB0YWJsZS5zb3J0KHN0cmluZ19rZXlzKQogICBsb2NhbCBtYXAKICAgaWYgI251bWJlcl9rZXlzID4gMCB0aGVuCiAgICAgIC0tCiAgICAgIC0tIElmIHdlJ3JlIGhlcmUgdGhlbiB3ZSBoYXZlIGVpdGhlciBtaXhlZCBzdHJpbmcvbnVtYmVyIGtleXMsIG9yIG51bWJlcnMgaW5hcHByb3ByaWF0ZSBmb3IgYSBKU09OIGFycmF5CiAgICAgIC0tIEl0J3Mgbm90IGlkZWFsLCBidXQgd2UnbGwgdHVybiB0aGUgbnVtYmVycyBpbnRvIHN0cmluZ3Mgc28gdGhhdCB3ZSBjYW4gYXQgbGVhc3QgY3JlYXRlIGEgSlNPTiBvYmplY3QuCiAgICAgIC0tCiAgICAgIGlmIHNlbGYubm9LZXlDb252ZXJzaW9uIHRoZW4KICAgICAgICAgc2VsZjpvbkVuY29kZUVycm9yKCJhIHRhYmxlIHdpdGggYm90aCBudW1lcmljIGFuZCBzdHJpbmcga2V5cyBjb3VsZCBiZSBhbiBvYmplY3Qgb3IgYXJyYXk7IGFib3J0aW5nIiwgZXRjKQogICAgICBlbmQKICAgICAgLS0KICAgICAgLS0gSGF2ZSB0byBtYWtlIGEgc2hhbGxvdyBjb3B5IG9mIHRoZSBzb3VyY2UgdGFibGUgc28gd2UgY2FuIHJlbWFwIHRoZSBudW1lcmljIGtleXMgdG8gYmUgc3RyaW5ncwogICAgICAtLQogICAgICBtYXAgPSB7IH0KICAgICAgZm9yIGtleSwgdmFsIGluIHBhaXJzKFQpIGRvCiAgICAgICAgIG1hcFtrZXldID0gdmFsCiAgICAgIGVuZAogICAgICB0YWJsZS5zb3J0KG51bWJlcl9rZXlzKQogICAgICAtLQogICAgICAtLSBUaHJvdyBudW1lcmljIGtleXMgaW4gdGhlcmUgYXMgc3RyaW5ncwogICAgICAtLQogICAgICBmb3IgXywgbnVtYmVyX2tleSBpbiBpcGFpcnMobnVtYmVyX2tleXMpIGRvCiAgICAgICAgIGxvY2FsIHN0cmluZ19rZXkgPSB0b3N0cmluZyhudW1iZXJfa2V5KQogICAgICAgICBpZiBtYXBbc3RyaW5nX2tleV0gPT0gbmlsIHRoZW4KICAgICAgICAgICAgdGFibGUuaW5zZXJ0KHN0cmluZ19rZXlzICwgc3RyaW5nX2tleSkKICAgICAgICAgICAgbWFwW3N0cmluZ19rZXldID0gVFtudW1iZXJfa2V5XQogICAgICAgICBlbHNlCiAgICAgICAgICAgIHNlbGY6b25FbmNvZGVFcnJvcigiY29uZmxpY3QgY29udmVydGluZyB0YWJsZSB3aXRoIG1peGVkLXR5cGUga2V5cyBpbnRvIGEgSlNPTiBvYmplY3Q6IGtleSAiIC4uIG51bWJlcl9rZXkgLi4gIiBleGlzdHMgYm90aCBhcyBhIHN0cmluZyBhbmQgYSBudW1iZXIuIiwgZXRjKQogICAgICAgICBlbmQKICAgICAgZW5kCiAgIGVuZAogICByZXR1cm4gc3RyaW5nX2tleXMsIG5pbCwgbWFwCmVuZApsb2NhbCBlbmNvZGVfdmFsdWUgLS0gbXVzdCBwcmVkZWNsYXJlIGJlY2F1c2UgaXQgY2FsbHMgaXRzZWxmCmZ1bmN0aW9uIGVuY29kZV92YWx1ZShzZWxmLCB2YWx1ZSwgcGFyZW50cywgZXRjLCBvcHRpb25zLCBpbmRlbnQsIGZvcl9rZXkpCiAgIC0tCiAgIC0tIGtleXMgaW4gYSBKU09OIG9iamVjdCBjYW4gbmV2ZXIgYmUgbnVsbCwgc28gd2UgZG9uJ3QgZXZlbiBjb25zaWRlciBvcHRpb25zLm51bGwgd2hlbiBjb252ZXJ0aW5nIGEga2V5IHZhbHVlCiAgIC0tCiAgIGlmIHZhbHVlID09IG5pbCBvciAobm90IGZvcl9rZXkgYW5kIG9wdGlvbnMgYW5kIG9wdGlvbnMubnVsbCBhbmQgdmFsdWUgPT0gb3B0aW9ucy5udWxsKSB0aGVuCiAgICAgIHJldHVybiAnbnVsbCcKICAgZWxzZWlmIHR5cGUodmFsdWUpID09ICdzdHJpbmcnIHRoZW4KICAgICAgcmV0dXJuIGpzb25fc3RyaW5nX2xpdGVyYWwodmFsdWUsIG9wdGlvbnMpCiAgIGVsc2VpZiB0eXBlKHZhbHVlKSA9PSAnbnVtYmVyJyB0aGVuCiAgICAgIGlmIHZhbHVlIH49IHZhbHVlIHRoZW4KICAgICAgICAgLS0KICAgICAgICAgLS0gTmFOIChOb3QgYSBOdW1iZXIpLgogICAgICAgICAtLSBKU09OIGhhcyBubyBOYU4sIHNvIHdlIGhhdmUgdG8gZnVkZ2UgdGhlIGJlc3Qgd2UgY2FuLiBUaGlzIHNob3VsZCByZWFsbHkgYmUgYSBwYWNrYWdlIG9wdGlvbi4KICAgICAgICAgLS0KICAgICAgICAgcmV0dXJuICJudWxsIgogICAgICBlbHNlaWYgdmFsdWUgPj0gbWF0aC5odWdlIHRoZW4KICAgICAgICAgLS0KICAgICAgICAgLS0gUG9zaXRpdmUgaW5maW5pdHkuIEpTT04gaGFzIG5vIElORiwgc28gd2UgaGF2ZSB0byBmdWRnZSB0aGUgYmVzdCB3ZSBjYW4uIFRoaXMgc2hvdWxkCiAgICAgICAgIC0tIHJlYWxseSBiZSBhIHBhY2thZ2Ugb3B0aW9uLiBOb3RlOiBhdCBsZWFzdCB3aXRoIHNvbWUgaW1wbGVtZW50YXRpb25zLCBwb3NpdGl2ZSBpbmZpbml0eQogICAgICAgICAtLSBpcyBib3RoICI+PSBtYXRoLmh1Z2UiIGFuZCAiPD0gLW1hdGguaHVnZSIsIHdoaWNoIG1ha2VzIG5vIHNlbnNlIGJ1dCB0aGF0J3MgaG93IGl0IGlzLgogICAgICAgICAtLSBOZWdhdGl2ZSBpbmZpbml0eSBpcyBwcm9wZXJseSAiPD0gLW1hdGguaHVnZSIuIFNvLCB3ZSBtdXN0IGJlIHN1cmUgdG8gY2hlY2sgdGhlICI+PSIKICAgICAgICAgLS0gY2FzZSBmaXJzdC4KICAgICAgICAgLS0KICAgICAgICAgcmV0dXJuICIxZSs5OTk5IgogICAgICBlbHNlaWYgdmFsdWUgPD0gLW1hdGguaHVnZSB0aGVuCiAgICAgICAgIC0tCiAgICAgICAgIC0tIE5lZ2F0aXZlIGluZmluaXR5LgogICAgICAgICAtLSBKU09OIGhhcyBubyBJTkYsIHNvIHdlIGhhdmUgdG8gZnVkZ2UgdGhlIGJlc3Qgd2UgY2FuLiBUaGlzIHNob3VsZCByZWFsbHkgYmUgYSBwYWNrYWdlIG9wdGlvbi4KICAgICAgICAgLS0KICAgICAgICAgcmV0dXJuICItMWUrOTk5OSIKICAgICAgZWxzZQogICAgICAgICByZXR1cm4gdG9zdHJpbmcodmFsdWUpCiAgICAgIGVuZAogICBlbHNlaWYgdHlwZSh2YWx1ZSkgPT0gJ2Jvb2xlYW4nIHRoZW4KICAgICAgcmV0dXJuIHRvc3RyaW5nKHZhbHVlKQogICBlbHNlaWYgdHlwZSh2YWx1ZSkgfj0gJ3RhYmxlJyB0aGVuCiAgICAgIHNlbGY6b25FbmNvZGVFcnJvcigiY2FuJ3QgY29udmVydCAiIC4uIHR5cGUodmFsdWUpIC4uICIgdG8gSlNPTiIsIGV0YykKICAgZWxzZWlmIGdldG1ldGF0YWJsZSh2YWx1ZSkgPT0gaXNOdW1iZXIgdGhlbgogICAgICByZXR1cm4gdG9zdHJpbmcodmFsdWUpCiAgIGVsc2UKICAgICAgLS0KICAgICAgLS0gQSB0YWJsZSB0byBiZSBjb252ZXJ0ZWQgdG8gZWl0aGVyIGEgSlNPTiBvYmplY3Qgb3IgYXJyYXkuCiAgICAgIC0tCiAgICAgIGxvY2FsIFQgPSB2YWx1ZQogICAgICBpZiB0eXBlKG9wdGlvbnMpIH49ICd0YWJsZScgdGhlbgogICAgICAgICBvcHRpb25zID0ge30KICAgICAgZW5kCiAgICAgIGlmIHR5cGUoaW5kZW50KSB+PSAnc3RyaW5nJyB0aGVuCiAgICAgICAgIGluZGVudCA9ICIiCiAgICAgIGVuZAogICAgICBpZiBwYXJlbnRzW1RdIHRoZW4KICAgICAgICAgc2VsZjpvbkVuY29kZUVycm9yKCJ0YWJsZSAiIC4uIHRvc3RyaW5nKFQpIC4uICIgaXMgYSBjaGlsZCBvZiBpdHNlbGYiLCBldGMpCiAgICAgIGVsc2UKICAgICAgICAgcGFyZW50c1tUXSA9IHRydWUKICAgICAgZW5kCiAgICAgIGxvY2FsIHJlc3VsdF92YWx1ZQogICAgICBsb2NhbCBvYmplY3Rfa2V5cywgbWF4aW11bV9udW1iZXJfa2V5LCBtYXAgPSBvYmplY3Rfb3JfYXJyYXkoc2VsZiwgVCwgZXRjKQogICAgICBpZiBtYXhpbXVtX251bWJlcl9rZXkgdGhlbgogICAgICAgICAtLQogICAgICAgICAtLSBBbiBhcnJheS4uLgogICAgICAgICAtLQogICAgICAgICBsb2NhbCBJVEVNUyA9IHsgfQogICAgICAgICBmb3IgaSA9IDEsIG1heGltdW1fbnVtYmVyX2tleSBkbwogICAgICAgICAgICB0YWJsZS5pbnNlcnQoSVRFTVMsIGVuY29kZV92YWx1ZShzZWxmLCBUW2ldLCBwYXJlbnRzLCBldGMsIG9wdGlvbnMsIGluZGVudCkpCiAgICAgICAgIGVuZAogICAgICAgICBpZiBvcHRpb25zLnByZXR0eSB0aGVuCiAgICAgICAgICAgIHJlc3VsdF92YWx1ZSA9ICJbICIgLi4gdGFibGUuY29uY2F0KElURU1TLCAiLCAiKSAuLiAiIF0iCiAgICAgICAgIGVsc2UKICAgICAgICAgICAgcmVzdWx0X3ZhbHVlID0gIlsiICAuLiB0YWJsZS5jb25jYXQoSVRFTVMsICIsIikgIC4uICJdIgogICAgICAgICBlbmQKICAgICAgZWxzZWlmIG9iamVjdF9rZXlzIHRoZW4KICAgICAgICAgLS0KICAgICAgICAgLS0gQW4gb2JqZWN0CiAgICAgICAgIC0tCiAgICAgICAgIGxvY2FsIFRUID0gbWFwIG9yIFQKICAgICAgICAgaWYgb3B0aW9ucy5wcmV0dHkgdGhlbgogICAgICAgICAgICBsb2NhbCBLRVlTID0geyB9CiAgICAgICAgICAgIGxvY2FsIG1heF9rZXlfbGVuZ3RoID0gMAogICAgICAgICAgICBmb3IgXywga2V5IGluIGlwYWlycyhvYmplY3Rfa2V5cykgZG8KICAgICAgICAgICAgICAgbG9jYWwgZW5jb2RlZCA9IGVuY29kZV92YWx1ZShzZWxmLCB0b3N0cmluZyhrZXkpLCBwYXJlbnRzLCBldGMsIG9wdGlvbnMsIGluZGVudCwgdHJ1ZSkKICAgICAgICAgICAgICAgaWYgb3B0aW9ucy5hbGlnbl9rZXlzIHRoZW4KICAgICAgICAgICAgICAgICAgbWF4X2tleV9sZW5ndGggPSBtYXRoLm1heChtYXhfa2V5X2xlbmd0aCwgI2VuY29kZWQpCiAgICAgICAgICAgICAgIGVuZAogICAgICAgICAgICAgICB0YWJsZS5pbnNlcnQoS0VZUywgZW5jb2RlZCkKICAgICAgICAgICAgZW5kCiAgICAgICAgICAgIGxvY2FsIGtleV9pbmRlbnQgPSBpbmRlbnQgLi4gdG9zdHJpbmcob3B0aW9ucy5pbmRlbnQgb3IgIiIpCiAgICAgICAgICAgIGxvY2FsIHN1YnRhYmxlX2luZGVudCA9IGtleV9pbmRlbnQgLi4gc3RyaW5nLnJlcCgiICIsIG1heF9rZXlfbGVuZ3RoKSAuLiAob3B0aW9ucy5hbGlnbl9rZXlzIGFuZCAiICAiIG9yICIiKQogICAgICAgICAgICBsb2NhbCBGT1JNQVQgPSAiJXMlIiAuLiBzdHJpbmcuZm9ybWF0KCIlZCIsIG1heF9rZXlfbGVuZ3RoKSAuLiAiczogJXMiCiAgICAgICAgICAgIGxvY2FsIENPTUJJTkVEX1BBUlRTID0geyB9CiAgICAgICAgICAgIGZvciBpLCBrZXkgaW4gaXBhaXJzKG9iamVjdF9rZXlzKSBkbwogICAgICAgICAgICAgICBsb2NhbCBlbmNvZGVkX3ZhbCA9IGVuY29kZV92YWx1ZShzZWxmLCBUVFtrZXldLCBwYXJlbnRzLCBldGMsIG9wdGlvbnMsIHN1YnRhYmxlX2luZGVudCkKICAgICAgICAgICAgICAgdGFibGUuaW5zZXJ0KENPTUJJTkVEX1BBUlRTLCBzdHJpbmcuZm9ybWF0KEZPUk1BVCwga2V5X2luZGVudCwgS0VZU1tpXSwgZW5jb2RlZF92YWwpKQogICAgICAgICAgICBlbmQKICAgICAgICAgICAgcmVzdWx0X3ZhbHVlID0gIntcbiIgLi4gdGFibGUuY29uY2F0KENPTUJJTkVEX1BBUlRTLCAiLFxuIikgLi4gIlxuIiAuLiBpbmRlbnQgLi4gIn0iCiAgICAgICAgIGVsc2UKICAgICAgICAgICAgbG9jYWwgUEFSVFMgPSB7IH0KICAgICAgICAgICAgZm9yIF8sIGtleSBpbiBpcGFpcnMob2JqZWN0X2tleXMpIGRvCiAgICAgICAgICAgICAgIGxvY2FsIGVuY29kZWRfdmFsID0gZW5jb2RlX3ZhbHVlKHNlbGYsIFRUW2tleV0sICAgICAgIHBhcmVudHMsIGV0Yywgb3B0aW9ucywgaW5kZW50KQogICAgICAgICAgICAgICBsb2NhbCBlbmNvZGVkX2tleSA9IGVuY29kZV92YWx1ZShzZWxmLCB0b3N0cmluZyhrZXkpLCBwYXJlbnRzLCBldGMsIG9wdGlvbnMsIGluZGVudCwgdHJ1ZSkKICAgICAgICAgICAgICAgdGFibGUuaW5zZXJ0KFBBUlRTLCBzdHJpbmcuZm9ybWF0KCIlczolcyIsIGVuY29kZWRfa2V5LCBlbmNvZGVkX3ZhbCkpCiAgICAgICAgICAgIGVuZAogICAgICAgICAgICByZXN1bHRfdmFsdWUgPSAieyIgLi4gdGFibGUuY29uY2F0KFBBUlRTLCAiLCIpIC4uICJ9IgogICAgICAgICBlbmQKICAgICAgZWxzZQogICAgICAgICAtLQogICAgICAgICAtLSBBbiBlbXB0eSBhcnJheS9vYmplY3QuLi4gd2UnbGwgdHJlYXQgaXQgYXMgYW4gYXJyYXksIHRob3VnaCBpdCBzaG91bGQgcmVhbGx5IGJlIGFuIG9wdGlvbgogICAgICAgICAtLQogICAgICAgICByZXN1bHRfdmFsdWUgPSAiW10iCiAgICAgIGVuZAogICAgICBwYXJlbnRzW1RdID0gZmFsc2UKICAgICAgcmV0dXJuIHJlc3VsdF92YWx1ZQogICBlbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIHRvcF9sZXZlbF9lbmNvZGUoc2VsZiwgdmFsdWUsIGV0Yywgb3B0aW9ucykKICAgbG9jYWwgdmFsID0gZW5jb2RlX3ZhbHVlKHNlbGYsIHZhbHVlLCB7fSwgZXRjLCBvcHRpb25zKQogICBpZiB2YWwgPT0gbmlsIHRoZW4KICAgICAgLS1QUklWQVRFKCJtYXkgbmVlZCB0byByZXZlcnQgdG8gdGhlIHByZXZpb3VzIHB1YmxpYyB2ZXJpc29uIGlmIEkgY2FuJ3QgZmlndXJlIG91dCB3aGF0IHRoZSBndXkgd2FudGVkIikKICAgICAgcmV0dXJuIHZhbAogICBlbHNlCiAgICAgIHJldHVybiB2YWwKICAgZW5kCmVuZApmdW5jdGlvbiBPQkpERUY6ZW5jb2RlKHZhbHVlLCBldGMsIG9wdGlvbnMpCiAgIGlmIHR5cGUoc2VsZikgfj0gJ3RhYmxlJyBvciBzZWxmLl9faW5kZXggfj0gT0JKREVGIHRoZW4KICAgICAgT0JKREVGOm9uRW5jb2RlRXJyb3IoIkpTT046ZW5jb2RlIG11c3QgYmUgY2FsbGVkIGluIG1ldGhvZCBmb3JtYXQiLCBldGMpCiAgIGVuZAogICAtLQogICAtLSBJZiB0aGUgdXNlciBkaWRuJ3QgcGFzcyBpbiBhIHRhYmxlIG9mIGRlY29kZSBvcHRpb25zLCBtYWtlIGFuIGVtcHR5IG9uZS4KICAgLS0KICAgaWYgdHlwZShvcHRpb25zKSB+PSAndGFibGUnIHRoZW4KICAgICAgb3B0aW9ucyA9IHt9CiAgIGVuZAogICByZXR1cm4gdG9wX2xldmVsX2VuY29kZShzZWxmLCB2YWx1ZSwgZXRjLCBvcHRpb25zKQplbmQKZnVuY3Rpb24gT0JKREVGOmVuY29kZV9wcmV0dHkodmFsdWUsIGV0Yywgb3B0aW9ucykKICAgaWYgdHlwZShzZWxmKSB+PSAndGFibGUnIG9yIHNlbGYuX19pbmRleCB+PSBPQkpERUYgdGhlbgogICAgICBPQkpERUY6b25FbmNvZGVFcnJvcigiSlNPTjplbmNvZGVfcHJldHR5IG11c3QgYmUgY2FsbGVkIGluIG1ldGhvZCBmb3JtYXQiLCBldGMpCiAgIGVuZAogICAtLQogICAtLSBJZiB0aGUgdXNlciBkaWRuJ3QgcGFzcyBpbiBhIHRhYmxlIG9mIGRlY29kZSBvcHRpb25zLCB1c2UgdGhlIGRlZmF1bHQgcHJldHR5IG9uZXMKICAgLS0KICAgaWYgdHlwZShvcHRpb25zKSB+PSAndGFibGUnIHRoZW4KICAgICAgb3B0aW9ucyA9IGRlZmF1bHRfcHJldHR5X29wdGlvbnMKICAgZW5kCiAgIHJldHVybiB0b3BfbGV2ZWxfZW5jb2RlKHNlbGYsIHZhbHVlLCBldGMsIG9wdGlvbnMpCmVuZApmdW5jdGlvbiBPQkpERUYuX190b3N0cmluZygpCiAgIHJldHVybiAiSlNPTiBlbmNvZGUvZGVjb2RlIHBhY2thZ2UiCmVuZApPQkpERUYuX19pbmRleCA9IE9CSkRFRgpmdW5jdGlvbiBPQkpERUY6bmV3KGFyZ3MpCiAgIGxvY2FsIG5ldyA9IHsgfQogICBpZiBhcmdzIHRoZW4KICAgICAgZm9yIGtleSwgdmFsIGluIHBhaXJzKGFyZ3MpIGRvCiAgICAgICAgIG5ld1trZXldID0gdmFsCiAgICAgIGVuZAogICBlbmQKICAgcmV0dXJuIHNldG1ldGF0YWJsZShuZXcsIE9CSkRFRikKZW5kCnJldHVybiBPQkpERUY6bmV3KCkKAABqc29uID0ge30KbG9jYWwgaW1wbGVtZW50YXRpb24gPSBkb2ZpbGUoJ2pzb24ubHVhJykKbG9jYWwgZXJyCmZ1bmN0aW9uIGltcGxlbWVudGF0aW9uLmFzc2VydChjb25kaXRpb24sIG1lc3NhZ2UpCmlmIG5vdCBjb25kaXRpb24gdGhlbgplcnIgPSBtZXNzYWdlCmVuZAphc3NlcnQoY29uZGl0aW9uLCBtZXNzYWdlKQplbmQKZnVuY3Rpb24ganNvbi5lbmNvZGUodmFsdWUpCmVyciA9IG5pbApsb2NhbCBzdWNjZXNzLCByZXN1bHQgPSBwY2FsbChpbXBsZW1lbnRhdGlvbi5lbmNvZGUsIGltcGxlbWVudGF0aW9uLCB2YWx1ZSkKaWYgbm90IHN1Y2Nlc3MgdGhlbgpyZXR1cm4gbmlsLCBlcnIKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIGpzb24uZW5jb2RlX3ByZXR0eSh2YWx1ZSkKZXJyID0gbmlsCmxvY2FsIHN1Y2Nlc3MsIHJlc3VsdCA9IHBjYWxsKGltcGxlbWVudGF0aW9uLmVuY29kZV9wcmV0dHksIGltcGxlbWVudGF0aW9uLCB2YWx1ZSkKaWYgbm90IHN1Y2Nlc3MgdGhlbgpyZXR1cm4gbmlsLCBlcnIKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIGpzb24uZGVjb2RlKHZhbHVlKQplcnIgPSBuaWwKbG9jYWwgc3VjY2VzcywgcmVzdWx0ID0gcGNhbGwoaW1wbGVtZW50YXRpb24uZGVjb2RlLCBpbXBsZW1lbnRhdGlvbiwgdmFsdWUpCmlmIG5vdCBzdWNjZXNzIHRoZW4KcmV0dXJuIG5pbCwgZXJyCmVuZApyZXR1cm4gcmVzdWx0CmVuZAoAAAAAAABsb2NhbCBwID0gcHJlbWFrZQpwLmxhbmd1YWdlcyA9IHt9CmZ1bmN0aW9uIHAubGFuZ3VhZ2VzLmlzYyh2YWx1ZSkKcmV0dXJuIHZhbHVlID09ICJDIjsKZW5kCmZ1bmN0aW9uIHAubGFuZ3VhZ2VzLmlzY3BwKHZhbHVlKQpyZXR1cm4gdmFsdWUgPT0gIkMrKyI7CmVuZApmdW5jdGlvbiBwLmxhbmd1YWdlcy5pc2RvdG5ldCh2YWx1ZSkKcmV0dXJuIHZhbHVlID09ICJDIyI7CmVuZAp0ZXJtLmJsYWNrICAgICAgID0gMAp0ZXJtLmJsdWUgICAgICAgID0gMQp0ZXJtLmdyZWVuICAgICAgID0gMgp0ZXJtLmN5YW4gICAgICAgID0gMwp0ZXJtLnJlZCAgICAgICAgID0gNAp0ZXJtLnB1cnBsZSAgICAgID0gNQp0ZXJtLmJyb3duICAgICAgID0gNgp0ZXJtLmxpZ2h0R3JheSAgID0gNwp0ZXJtLmdyYXkgICAgICAgID0gOAp0ZXJtLmxpZ2h0Qmx1ZSAgID0gOQp0ZXJtLmxpZ2h0R3JlZW4gID0gMTAKdGVybS5saWdodEN5YW4gICA9IDExCnRlcm0ubGlnaHRSZWQgICAgPSAxMgp0ZXJtLm1hZ2VudGEgICAgID0gMTMKdGVybS55ZWxsb3cgICAgICA9IDE0CnRlcm0ud2hpdGUgICAgICAgPSAxNQp0ZXJtLndhcm5pbmdDb2xvciA9IHRlcm0ubWFnZW50YQp0ZXJtLmVycm9yQ29sb3IgICA9IHRlcm0ubGlnaHRSZWQKdGVybS5pbmZvQ29sb3IgICAgPSB0ZXJtLmxpZ2h0Q3lhbgp0ZXJtLl9jb2xvclN0YWNrID0ge30KZnVuY3Rpb24gdGVybS5wdXNoQ29sb3IoY29sb3IpCmxvY2FsIG9sZCA9IHRlcm0uZ2V0VGV4dENvbG9yKCkKdGFibGUuaW5zZXJ0KHRlcm0uX2NvbG9yU3RhY2ssIG9sZCkKdGVybS5zZXRUZXh0Q29sb3IoY29sb3IpCmVuZApmdW5jdGlvbiB0ZXJtLnBvcENvbG9yKCkKaWYgI3Rlcm0uX2NvbG9yU3RhY2sgPiAwIHRoZW4KbG9jYWwgY29sb3IgPSB0YWJsZS5yZW1vdmUodGVybS5fY29sb3JTdGFjaykKdGVybS5zZXRUZXh0Q29sb3IoY29sb3IpCmVuZAplbmQKAGxvY2FsIHAgPSBwcmVtYWtlCnAuZmllbGQgPSB7fQpsb2NhbCBmaWVsZCA9IHAuZmllbGQKZmllbGQuX2xpc3QgPSB7fQpmaWVsZC5fbG93ZXJlZExpc3QgPSB7fQpmaWVsZC5fc29ydGVkTGlzdCA9IG5pbApmaWVsZC5fa2luZHMgPSB7fQpwcmVtYWtlLmZpZWxkcyA9IGZpZWxkLl9saXN0CmZpZWxkLl9hY2Nlc3NvcnMgPSB7fQpmdW5jdGlvbiBmaWVsZC5uZXcoZikKaWYgZi5raW5kOnN0YXJ0c3dpdGgoImtleS0iKSB0aGVuCmYua2luZCA9IGYua2luZDpzdWIoNSkKZi5rZXllZCA9IHRydWUKZW5kCmlmIGYua2luZDplbmRzd2l0aCgiLWxpc3QiKSB0aGVuCmYua2luZCA9IGYua2luZDpzdWIoMSwgLTYpCmYubGlzdCA9IHRydWUKZW5kCmxvY2FsIGtpbmQgPSBmLmtpbmQKaWYga2luZCA9PSAib2JqZWN0IiBvciBraW5kID09ICJhcnJheSIgdGhlbgpraW5kID0gInRhYmxlIgplbmQKaWYgZi5saXN0IHRoZW4Ka2luZCA9ICJsaXN0OiIgLi4ga2luZAplbmQKaWYgZi5rZXllZCB0aGVuCmtpbmQgPSAia2V5ZWQ6IiAuLiBraW5kCmVuZApmLl9raW5kID0ga2luZAppZiB0eXBlKGYuc2NvcGUpID09ICJ0YWJsZSIgdGhlbgpmLnNjb3BlcyA9IGYuc2NvcGUKZWxzZQpmLnNjb3BlcyA9IHsgZi5zY29wZSB9CmVuZAppZiBub3QgZmllbGQuYWNjZXNzb3IoZiwgInN0b3JlIikgdGhlbgpyZXR1cm4gbmlsLCAiaW52YWxpZCBmaWVsZCBraW5kICciIC4uIGYuX2tpbmQgLi4gIiciCmVuZApmaWVsZC5fbGlzdFtmLm5hbWVdID0gZgpmaWVsZC5fbG93ZXJlZExpc3RbZi5uYW1lOmxvd2VyKCldID0gZgpmaWVsZC5fc29ydGVkTGlzdCA9IG5pbApyZXR1cm4gZgplbmQKZnVuY3Rpb24gZmllbGQudW5yZWdpc3RlcihmKQpmaWVsZC5fbGlzdFtmLm5hbWVdID0gbmlsCmZpZWxkLl9sb3dlcmVkTGlzdFtmLm5hbWU6bG93ZXIoKV0gPSBuaWwKZmllbGQuX3NvcnRlZExpc3QgPSBuaWwKZW5kCmZ1bmN0aW9uIGZpZWxkLmVhY2goKQpsb2NhbCBpbmRleApyZXR1cm4gZnVuY3Rpb24gKCkKaW5kZXggPSBuZXh0KGZpZWxkLl9saXN0LCBpbmRleCkKcmV0dXJuIGZpZWxkLl9saXN0W2luZGV4XQplbmQKZW5kCmZ1bmN0aW9uIGZpZWxkLmVhY2hPcmRlcmVkKCkKaWYgbm90IGZpZWxkLl9zb3J0ZWRMaXN0IHRoZW4KbG9jYWwga2V5cyA9IHRhYmxlLmtleXMoZmllbGQuX2xpc3QpCnRhYmxlLnNvcnQoa2V5cykKZmllbGQuX3NvcnRlZExpc3QgPSB7fQpmb3IgaSA9IDEsICNrZXlzIGRvCmZpZWxkLl9zb3J0ZWRMaXN0W2ldID0gZmllbGQuX2xpc3Rba2V5c1tpXV0KZW5kCmVuZApsb2NhbCBpID0gMApyZXR1cm4gZnVuY3Rpb24gKCkKaSA9IGkgKyAxCnJldHVybiBmaWVsZC5fc29ydGVkTGlzdFtpXQplbmQKZW5kCmZ1bmN0aW9uIGZpZWxkLmtpbmQodGFnLCBzZXR0aW5ncykKaWYgc2V0dGluZ3MgdGhlbgpmaWVsZC5fa2luZHNbdGFnXSA9IHNldHRpbmdzCmVuZApyZXR1cm4gZmllbGQuX2tpbmRzW3RhZ10KZW5kCmZ1bmN0aW9uIGZpZWxkLmFjY2Vzc29yKGYsIG1ldGhvZCkKZmllbGQuX2FjY2Vzc29yc1ttZXRob2RdID0gZmllbGQuX2FjY2Vzc29yc1ttZXRob2RdIG9yIHt9CmxvY2FsIGNhY2hlID0gZmllbGQuX2FjY2Vzc29yc1ttZXRob2RdCmxvY2FsIGZ1bmN0aW9uIGFjY2Vzc29yRm9yS2luZChraW5kKQppZiBraW5kID09ICIiIHRoZW4KcmV0dXJuIG5pbAplbmQKaWYgY2FjaGVba2luZF0gdGhlbgpyZXR1cm4gY2FjaGVba2luZF0KZW5kCmxvY2FsIHRoaXNLaW5kID0ga2luZDptYXRjaCgnKC4tKTonKSBvciBraW5kCmxvY2FsIG5leHRLaW5kID0ga2luZDpzdWIoI3RoaXNLaW5kICsgMikKbG9jYWwgZnVuY3Rpb25zID0gZmllbGQuX2tpbmRzW3RoaXNLaW5kXQppZiBub3QgZnVuY3Rpb25zIHRoZW4KcmV0dXJuIG5pbCwgIkludmFsaWQgZmllbGQga2luZCAnIiAuLiB0aGlzS2luZCAuLiAiJyIKZW5kCmxvY2FsIHByb2Nlc3NvciA9IGZ1bmN0aW9uc1ttZXRob2RdCmlmIG5vdCBwcm9jZXNzb3IgdGhlbgpyZXR1cm4gbmlsCmVuZApsb2NhbCBuZXh0QWNjZXNzb3IgPSBhY2Nlc3NvckZvcktpbmQobmV4dEtpbmQpCmFjY2Vzc29yID0gZnVuY3Rpb24oZiwgY3VycmVudCwgdmFsdWUpCnJldHVybiBwcm9jZXNzb3IoZiwgY3VycmVudCwgdmFsdWUsIG5leHRBY2Nlc3NvcikKZW5kCmNhY2hlW2tpbmRdID0gYWNjZXNzb3IKcmV0dXJuIGFjY2Vzc29yCmVuZApyZXR1cm4gYWNjZXNzb3JGb3JLaW5kKGYuX2tpbmQpCmVuZApmdW5jdGlvbiBmaWVsZC5jb21wYXJlKGYsIGEsIGIpCmxvY2FsIHByb2Nlc3NvciA9IGZpZWxkLmFjY2Vzc29yKGYsICJjb21wYXJlIikKaWYgcHJvY2Vzc29yIHRoZW4KcmV0dXJuIHByb2Nlc3NvcihmLCBhLCBiKQplbHNlCnJldHVybiAoYSA9PSBiKQplbmQKZW5kCmZ1bmN0aW9uIGZpZWxkLmdldChuYW1lKQpyZXR1cm4gZmllbGQuX2xpc3RbbmFtZV0gb3IgZmllbGQuX2xvd2VyZWRMaXN0W25hbWU6bG93ZXIoKV0KZW5kCmZ1bmN0aW9uIGZpZWxkLm1lcmdlKGYsIGN1cnJlbnQsIHZhbHVlKQpsb2NhbCBwcm9jZXNzb3IgPSBmaWVsZC5hY2Nlc3NvcihmLCAibWVyZ2UiKQppZiBwcm9jZXNzb3IgdGhlbgpyZXR1cm4gcHJvY2Vzc29yKGYsIGN1cnJlbnQsIHZhbHVlKQplbHNlCnJldHVybiB2YWx1ZQplbmQKZW5kCmZ1bmN0aW9uIGZpZWxkLm1lcmdlcyhmKQpyZXR1cm4gKGZpZWxkLmFjY2Vzc29yKGYsICJtZXJnZSIpIH49IG5pbCkKZW5kCmZ1bmN0aW9uIGZpZWxkLnByb3BlcnR5KGYsIHRhZykKbG9jYWwga2luZHMgPSBzdHJpbmcuZXhwbG9kZShmLl9raW5kLCAiOiIsIHRydWUpCmZvciBpLCBraW5kIGluIGlwYWlycyhraW5kcykgZG8KbG9jYWwgdmFsdWUgPSBmaWVsZC5fa2luZHNba2luZF1bdGFnXQppZiB2YWx1ZSB+PSBuaWwgdGhlbgpyZXR1cm4gdmFsdWUKZW5kCmVuZAplbmQKZnVuY3Rpb24gZmllbGQub3ZlcnJpZGUoZmllbGROYW1lLCBhY2Nlc3Nvck5hbWUsIGZ1bmMpCmxvY2FsIGtpbmQgPSBmaWVsZC5raW5kKGZpZWxkTmFtZSkKcC5vdmVycmlkZShraW5kLCBhY2Nlc3Nvck5hbWUsIGZ1bmMpCmZpZWxkLl9hY2Nlc3NvcnMgPSB7fQplbmQKZnVuY3Rpb24gZmllbGQucmVtb3ZlKGYsIGN1cnJlbnQsIHZhbHVlKQpsb2NhbCBwcm9jZXNzb3IgPSBmaWVsZC5hY2Nlc3NvcihmLCAicmVtb3ZlIikKaWYgcHJvY2Vzc29yIHRoZW4KcmV0dXJuIHByb2Nlc3NvcihmLCBjdXJyZW50LCB2YWx1ZSkKZWxzZQpyZXR1cm4gdmFsdWUKZW5kCmVuZApmdW5jdGlvbiBmaWVsZC5yZW1vdmVzKGYpCnJldHVybiAoZmllbGQuYWNjZXNzb3IoZiwgIm1lcmdlIikgfj0gbmlsIGFuZCBmaWVsZC5hY2Nlc3NvcihmLCAicmVtb3ZlIikgfj0gbmlsKQplbmQKZnVuY3Rpb24gZmllbGQuc3RvcmUoZiwgY3VycmVudCwgdmFsdWUpCmxvY2FsIHByb2Nlc3NvciA9IGZpZWxkLmFjY2Vzc29yKGYsICJzdG9yZSIpCmlmIHByb2Nlc3NvciB0aGVuCnJldHVybiBwcm9jZXNzb3IoZiwgY3VycmVudCwgdmFsdWUpCmVsc2UKcmV0dXJuIHZhbHVlCmVuZAplbmQKZnVuY3Rpb24gZmllbGQudHJhbnNsYXRlKGYsIHZhbHVlKQpsb2NhbCBwcm9jZXNzb3IgPSBmaWVsZC5hY2Nlc3NvcihmLCAidHJhbnNsYXRlIikKaWYgcHJvY2Vzc29yIHRoZW4KcmV0dXJuIHByb2Nlc3NvcihmLCB2YWx1ZSwgbmlsKVsxXQplbHNlCnJldHVybiB2YWx1ZQplbmQKZW5kCmZ1bmN0aW9uIGZpZWxkLnRyYW5zbGF0ZXMoZikKcmV0dXJuIChmaWVsZC5hY2Nlc3NvcihmLCAidHJhbnNsYXRlIikgfj0gbmlsKQplbmQKAAAAAABsb2NhbCBwID0gcHJlbWFrZQpwLmNyaXRlcmlhID0gY3JpdGVyaWEgIC0tIGNyaXRlcmlhIG5hbWVzcGFjZSBpcyBkZWZpbmVkIGluIEMgaG9zdApsb2NhbCBjcml0ZXJpYSA9IHAuY3JpdGVyaWEKY3JpdGVyaWEuX3ZhbGlkUHJlZml4ZXMgPSB7Cl9hY3Rpb24gPSB0cnVlLAphY3Rpb24gPSB0cnVlLAphcmNoaXRlY3R1cmUgPSB0cnVlLApjb25maWd1cmF0aW9ucyA9IHRydWUsCmZpbGVzID0gdHJ1ZSwKa2luZCA9IHRydWUsCmxhbmd1YWdlID0gdHJ1ZSwKX29wdGlvbnMgPSB0cnVlLApvcHRpb25zID0gdHJ1ZSwKcGxhdGZvcm1zID0gdHJ1ZSwKc3lzdGVtID0gdHJ1ZSwKdG9vbHNldCA9IHRydWUsCnRhZ3MgPSB0cnVlLAp9CmZ1bmN0aW9uIGNyaXRlcmlhLmZsYXR0ZW4odGVybXMpCmxvY2FsIHJlc3VsdCA9IHt9CmxvY2FsIGZ1bmN0aW9uIGZsYXR0ZW4odGVybXMpCmZvciBrZXksIHZhbHVlIGluIHBhaXJzKHRlcm1zKSBkbwppZiB0eXBlKGtleSkgPT0gIm51bWJlciIgdGhlbgppZiB0eXBlKHZhbHVlKSA9PSAidGFibGUiIHRoZW4KZmxhdHRlbih2YWx1ZSkKZWxzZWlmIHZhbHVlIHRoZW4KdGFibGUuaW5zZXJ0KHJlc3VsdCwgdmFsdWUpCmVuZAplbHNlaWYgdHlwZShrZXkpID09ICJzdHJpbmciIHRoZW4KbG9jYWwgd29yZCA9IGtleSAuLiAiOiIKaWYgdHlwZSh2YWx1ZSkgPT0gInRhYmxlIiB0aGVuCmxvY2FsIHZhbHVlcyA9IHRhYmxlLmZsYXR0ZW4odmFsdWUpCndvcmQgPSB3b3JkIC4uIHRhYmxlLmNvbmNhdCh2YWx1ZXMsICIgb3IgIikKZWxzZQp3b3JkID0gd29yZCAuLiB2YWx1ZQplbmQKdGFibGUuaW5zZXJ0KHJlc3VsdCwgd29yZCkKZWxzZQplcnJvcigiVW5rbm93biBrZXkgdHlwZSBpbiB0ZXJtcy4iKQplbmQKZW5kCmVuZApmbGF0dGVuKHRlcm1zKQpyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBjcml0ZXJpYS5uZXcodGVybXMsIHVucHJlZml4ZWQpCnRlcm1zID0gY3JpdGVyaWEuZmxhdHRlbih0ZXJtcykKbG9jYWwgcGF0dGVybnMgPSB7fQpmb3IgaSwgdGVybSBpbiBpcGFpcnModGVybXMpIGRvCnRlcm0gPSB0ZXJtOmxvd2VyKCkKbG9jYWwgcGF0dGVybiA9IHt9CmxvY2FsIHByZWZpeCA9IGlpZih1bnByZWZpeGVkLCBuaWwsICJjb25maWd1cmF0aW9ucyIpCmxvY2FsIHdvcmRzID0gdGVybTpleHBsb2RlKCIgb3IgIikKZm9yIF8sIHdvcmQgaW4gaXBhaXJzKHdvcmRzKSBkbwp3b3JkLCBwcmVmaXggPSBjcml0ZXJpYS5fd29yZCh3b3JkLCBwcmVmaXgpCmlmIHByZWZpeCBhbmQgbm90IGNyaXRlcmlhLl92YWxpZFByZWZpeGVzW3ByZWZpeF0gdGhlbgpyZXR1cm4gbmlsLCBzdHJpbmcuZm9ybWF0KCJJbnZhbGlkIGZpZWxkIHByZWZpeCAnJXMnIiwgcHJlZml4KQplbmQKaWYgcHJlZml4IHRoZW4KbG9jYWwgZmxkID0gcC5maWVsZC5nZXQocHJlZml4KQppZiBmbGQgYW5kIGZsZC5hbGlhc2VzIHRoZW4Kd29yZFsxXSA9IGZsZC5hbGlhc2VzW3dvcmRbMV1dIG9yIHdvcmRbMV0KZW5kCmVuZAp0YWJsZS5pbnNlcnQocGF0dGVybiwgd29yZCkKZW5kCnRhYmxlLmluc2VydChwYXR0ZXJucywgcGF0dGVybikKZW5kCmxvY2FsIGNyaXQgPSB7fQpjcml0LnBhdHRlcm5zID0gcGF0dGVybnMKY3JpdC5kYXRhID0gY3JpdGVyaWEuX2NvbXBpbGUocGF0dGVybnMpCmNyaXQudGVybXMgPSB0ZXJtcwpyZXR1cm4gY3JpdAplbmQKZnVuY3Rpb24gY3JpdGVyaWEuX3dvcmQod29yZCwgcHJlZml4KQpsb2NhbCB3aWxkY2FyZApsb2NhbCBhc3NlcnRpb24gPSB0cnVlCndoaWxlICh0cnVlKSBkbwppZiB3b3JkOnN0YXJ0c3dpdGgoIm5vdCAiKSB0aGVuCmFzc2VydGlvbiA9IG5vdCBhc3NlcnRpb24Kd29yZCA9IHdvcmQ6c3ViKDUpCmVsc2UKbG9jYWwgaSA9IHdvcmQ6ZmluZCgiOiIsIDEsIHRydWUpCmlmIHByZWZpeCBhbmQgaSB0aGVuCnByZWZpeCA9IHdvcmQ6c3ViKDEsIGkgLSAxKQp3b3JkID0gd29yZDpzdWIoaSArIDEpCmVsc2UKd2lsZGNhcmQgPSAod29yZDpmaW5kKCIqIiwgMSwgdHJ1ZSkgfj0gbmlsKQppZiB3aWxkY2FyZCB0aGVuCndvcmQgPSBwYXRoLndpbGRjYXJkcyh3b3JkKQplbmQKYnJlYWsKZW5kCmVuZAplbmQKcmV0dXJuIHsgd29yZCwgcHJlZml4LCBhc3NlcnRpb24sIHdpbGRjYXJkIH0sIHByZWZpeAplbmQKZnVuY3Rpb24gY3JpdGVyaWEuYWxsb3dQcmVmaXgocHJlZml4KQpjcml0ZXJpYS5fdmFsaWRQcmVmaXhlc1twcmVmaXg6bG93ZXIoKV0gPSB0cnVlCmVuZAoAAAAAAGxvY2FsIHAgPSBwcmVtYWtlCnAuZGV0b2tlbiA9IHt9CmxvY2FsIGRldG9rZW4gPSBwLmRldG9rZW4KZnVuY3Rpb24gZGV0b2tlbi5leHBhbmQodmFsdWUsIGVudmlyb24sIGZpZWxkLCBiYXNlZGlyKQpmaWVsZCA9IGZpZWxkIG9yIHt9CmxvY2FsIHZhck1hcCA9IHt9CmlmIGZpZWxkLnBhdGhWYXJzIHRoZW4KbG9jYWwgYWN0aW9uID0gcC5hY3Rpb24uY3VycmVudCgpCmlmIGFjdGlvbiB0aGVuCnZhck1hcCA9IGFjdGlvbi5wYXRoVmFycyBvciB7fQplbmQKZW5kCmxvY2FsIGVudk1hcCA9IGVudmlyb24ucGF0aFZhcnMgb3Ige30Kc2V0bWV0YXRhYmxlKGVudmlyb24sIHtfX2luZGV4ID0gX0d9KQpmdW5jdGlvbiBleHBhbmR0b2tlbih0b2tlbiwgZSkKbG9jYWwgZnVuYywgZXJyID0gbG9hZCgicmV0dXJuICIgLi4gdG9rZW4sIG5pbCwgJ3QnLCBlKQppZiBub3QgZnVuYyB0aGVuCnJldHVybiBuaWwsICJsb2FkIGVycm9yOiAiIC4uIGVycgplbmQKbG9jYWwgc3VjY2VzcywgcmVzdWx0ID0gcGNhbGwoZnVuYykKaWYgbm90IHN1Y2Nlc3MgdGhlbgplcnIgICAgPSByZXN1bHQKcmVzdWx0ID0gbmlsCmVsc2UKZXJyICAgID0gbmlsCnJlc3VsdCA9IHJlc3VsdCBvciAiIgplbmQKbG9jYWwgaXNBYnMgPSBmYWxzZQppZiByZXN1bHQgfj0gbmlsIHRoZW4KaXNBYnMgPSBwYXRoLmlzYWJzb2x1dGUocmVzdWx0KQppZiBpc0FicyBhbmQgbm90IGZpZWxkLnBhdGhzIGFuZCBiYXNlZGlyIHRoZW4KcmVzdWx0ID0gcGF0aC5nZXRyZWxhdGl2ZShiYXNlZGlyLCByZXN1bHQpCmVuZAplbmQKbG9jYWwgbWFwcGVkID0gZW52TWFwW3Rva2VuXSBvciB2YXJNYXBbdG9rZW5dCmlmIG1hcHBlZCB0aGVuCmVyciAgICA9IG5pbApyZXN1bHQgPSBtYXBwZWQKaWYgdHlwZShyZXN1bHQpID09ICJmdW5jdGlvbiIgdGhlbgpzdWNjZXNzLCByZXN1bHQgPSBwY2FsbChyZXN1bHQsIGUpCmlmIG5vdCBzdWNjZXNzIHRoZW4KcmV0dXJuIG5pbCwgcmVzdWx0CmVuZAplbmQKaWYgKHR5cGUocmVzdWx0KSA9PSAidGFibGUiKSB0aGVuCmlzQWJzICA9IHJlc3VsdC5hYnNvbHV0ZQpyZXN1bHQgPSByZXN1bHQudG9rZW4KZWxzZQppc0FicyA9IHBhdGguaXNhYnNvbHV0ZShyZXN1bHQpCmVuZAplbmQKaWYgcmVzdWx0IH49IG5pbCBhbmQgaXNBYnMgYW5kIGZpZWxkLnBhdGhzIHRoZW4KcmVzdWx0ID0gIlwwIiAuLiByZXN1bHQKZW5kCnJldHVybiByZXN1bHQsIGVycgplbmQKZnVuY3Rpb24gZXhwYW5kdmFsdWUodmFsdWUsIGUpCmlmIHR5cGUodmFsdWUpIH49ICJzdHJpbmciIHRoZW4KcmV0dXJuIHZhbHVlCmVuZApsb2NhbCBjb3VudApyZXBlYXQKdmFsdWUsIGNvdW50ID0gdmFsdWU6Z3N1YigiJSV7KC4tKX0iLCBmdW5jdGlvbih0b2tlbikKbG9jYWwgcmVzdWx0LCBlcnIgPSBleHBhbmR0b2tlbih0b2tlbjpnc3ViKCJcXCIsICJcXFxcIiksIGUpCmlmIGVyciB0aGVuCmVycm9yKGVyciAuLiAiIGluIHRva2VuOiAiIC4uIHRva2VuLCAwKQplbmQKaWYgbm90IHJlc3VsdCB0aGVuCmVycm9yKCJUb2tlbiByZXR1cm5lZCBuaWwsIGl0IG1heSBub3QgZXhpc3Q6ICIgLi4gdG9rZW4sIDApCmVuZApyZXR1cm4gcmVzdWx0CmVuZCkKdW50aWwgY291bnQgPT0gMAppZiBmaWVsZC5wYXRocyB0aGVuCmxvY2FsIGksIGoKcmVwZWF0CmksIGogPSB2YWx1ZTpmaW5kKCJcMCIpCmlmIGkgdGhlbgp2YWx1ZSA9IHZhbHVlOnN1YihpICsgMSkKZW5kCnVudGlsIG5vdCBpCmVuZApyZXR1cm4gdmFsdWUKZW5kCmZ1bmN0aW9uIHJlY3Vyc2UodmFsdWUsIGUpCmlmIHR5cGUodmFsdWUpID09ICJ0YWJsZSIgdGhlbgpsb2NhbCByZXNfdGFibGUgPSB7fQpmb3IgaywgdiBpbiBwYWlycyh2YWx1ZSkgZG8KaWYgdG9udW1iZXIoaykgfj0gbmlsIHRoZW4KcmVzX3RhYmxlW2tdID0gcmVjdXJzZSh2LCBlKQplbHNlCmxvY2FsIG5rID0gcmVjdXJzZShrLCBlKTsKcmVzX3RhYmxlW25rXSA9IHJlY3Vyc2UodiwgZSkKZW5kCmVuZApyZXR1cm4gcmVzX3RhYmxlCmVsc2UKcmV0dXJuIGV4cGFuZHZhbHVlKHZhbHVlLCBlKQplbmQKZW5kCnJldHVybiByZWN1cnNlKHZhbHVlLCBlbnZpcm9uKQplbmQKAGxvY2FsIHAgPSBwcmVtYWtlCnAuY29uZmlnc2V0ID0ge30KbG9jYWwgY29uZmlnc2V0ID0gcC5jb25maWdzZXQKbG9jYWwgY3JpdGVyaWEgPSBwLmNyaXRlcmlhCmZ1bmN0aW9uIGNvbmZpZ3NldC5uZXcocGFyZW50KQpsb2NhbCBjc2V0ID0ge30KY3NldC5wYXJlbnQgPSBwYXJlbnQKY3NldC5ibG9ja3MgPSB7fQpjc2V0LmN1cnJlbnQgPSBuaWwKY3NldC5jb21waWxlZCA9IGZhbHNlCnJldHVybiBjc2V0CmVuZApmdW5jdGlvbiBjb25maWdzZXQuZmV0Y2goY3NldCwgZmllbGQsIGZpbHRlciwgY3R4LCBvcmlnaW4pCmZpbHRlciA9IGZpbHRlciBvciB7fQpjdHggPSBjdHggb3Ige30KaWYgcC5maWVsZC5tZXJnZXMoZmllbGQpIHRoZW4KcmV0dXJuIGNvbmZpZ3NldC5fZmV0Y2hNZXJnZWQoY3NldCwgZmllbGQsIGZpbHRlciwgY3R4LCBvcmlnaW4pCmVsc2UKcmV0dXJuIGNvbmZpZ3NldC5fZmV0Y2hEaXJlY3QoY3NldCwgZmllbGQsIGZpbHRlciwgY3R4LCBvcmlnaW4pCmVuZAplbmQKZnVuY3Rpb24gY29uZmlnc2V0Ll9kb2ZpbHRlcihjc2V0LCBibG9jaywgZmlsdGVyKQppZiBub3QgZmlsdGVyLm1hdGNoZXIgdGhlbgpyZXR1cm4gKGNzZXQuY29tcGlsZWQgb3IgY3JpdGVyaWEubWF0Y2hlcyhibG9jay5fY3JpdGVyaWEsIGZpbHRlcikpCmVsc2UKcmV0dXJuIGZpbHRlci5tYXRjaGVyKGNzZXQsIGJsb2NrLCBmaWx0ZXIpCmVuZAplbmQKZnVuY3Rpb24gY29uZmlnc2V0Ll9mZXRjaERpcmVjdChjc2V0LCBmaWVsZCwgZmlsdGVyLCBjdHgsIG9yaWdpbikKaWYgb3JpZ2luIGFuZCBvcmlnaW4gfj0gY3NldCBhbmQgbm90IG9yaWdpbi5jb21waWxlZCB0aGVuCnJldHVybiBjb25maWdzZXQuX2ZldGNoRGlyZWN0KG9yaWdpbiwgZmllbGQsIGZpbHRlciwgY3R4LCBvcmlnaW4pCmVuZApsb2NhbCBhYnNwYXRoID0gZmlsdGVyLmZpbGVzCmxvY2FsIGJhc2VkaXIKbG9jYWwga2V5ID0gZmllbGQubmFtZQpsb2NhbCBibG9ja3MgPSBjc2V0LmJsb2Nrcwpsb2NhbCBuID0gI2Jsb2Nrcwpmb3IgaSA9IG4sIDEsIC0xIGRvCmxvY2FsIGJsb2NrID0gYmxvY2tzW2ldCmlmIG5vdCBvcmlnaW4gb3IgYmxvY2suX29yaWdpbiA9PSBvcmlnaW4gdGhlbgpsb2NhbCB2YWx1ZSA9IGJsb2NrW2tleV0KaWYgdmFsdWUgfj0gbmlsIGFuZCBhYnNwYXRoIGFuZCBub3QgY3NldC5jb21waWxlZCBhbmQgYmxvY2suX2Jhc2VkaXIgYW5kIGJsb2NrLl9iYXNlZGlyIH49IGJhc2VkaXIgdGhlbgpiYXNlZGlyID0gYmxvY2suX2Jhc2VkaXIKZmlsdGVyLmZpbGVzID0gcGF0aC5nZXRyZWxhdGl2ZShiYXNlZGlyLCBhYnNwYXRoKQplbmQKaWYgdmFsdWUgfj0gbmlsIGFuZCBjb25maWdzZXQuX2RvZmlsdGVyKGNzZXQsIGJsb2NrLCBmaWx0ZXIpIHRoZW4KaWYgdHlwZSh2YWx1ZSkgPT0gInRhYmxlIiB0aGVuCnZhbHVlID0gdGFibGUuZGVlcGNvcHkodmFsdWUpCmVuZAppZiBmaWVsZC50b2tlbnMgYW5kIGN0eC5lbnZpcm9uIHRoZW4KdmFsdWUgPSBwLmRldG9rZW4uZXhwYW5kKHZhbHVlLCBjdHguZW52aXJvbiwgZmllbGQsIGN0eC5fYmFzZWRpcikKZW5kCnJldHVybiB2YWx1ZQplbmQKZW5kCmVuZApmaWx0ZXIuZmlsZXMgPSBhYnNwYXRoCmlmIGNzZXQucGFyZW50IHRoZW4KcmV0dXJuIGNvbmZpZ3NldC5fZmV0Y2hEaXJlY3QoY3NldC5wYXJlbnQsIGZpZWxkLCBmaWx0ZXIsIGN0eCwgb3JpZ2luKQplbmQKZW5kCmZ1bmN0aW9uIGNvbmZpZ3NldC5fZmV0Y2hNZXJnZWQoY3NldCwgZmllbGQsIGZpbHRlciwgY3R4LCBvcmlnaW4pCmlmIG9yaWdpbiBhbmQgb3JpZ2luIH49IGNzZXQgYW5kIG5vdCBvcmlnaW4uY29tcGlsZWQgdGhlbgpyZXR1cm4gY29uZmlnc2V0Ll9mZXRjaE1lcmdlZChvcmlnaW4sIGZpZWxkLCBmaWx0ZXIsIGN0eCwgb3JpZ2luKQplbmQKbG9jYWwgcmVzdWx0ID0ge30KbG9jYWwgZnVuY3Rpb24gcmVtb3ZlKHBhdHRlcm5zKQpmb3IgXywgcGF0dGVybiBpbiBpcGFpcnMocGF0dGVybnMpIGRvCmlmIGZpZWxkLnRva2VucyBhbmQgY3R4LmVudmlyb24gdGhlbgpwYXR0ZXJuID0gcC5kZXRva2VuLmV4cGFuZChwYXR0ZXJuLCBjdHguZW52aXJvbiwgZmllbGQsIGN0eC5fYmFzZWRpcikKZW5kCnBhdHRlcm4gPSBwYXRoLndpbGRjYXJkcyhwYXR0ZXJuKTpsb3dlcigpCmxvY2FsIGogPSAxCndoaWxlIGogPD0gI3Jlc3VsdCBkbwpsb2NhbCB2YWx1ZSA9IHJlc3VsdFtqXTpsb3dlcigpCmlmIHZhbHVlOm1hdGNoKHBhdHRlcm4pID09IHZhbHVlIHRoZW4KcmVzdWx0W3Jlc3VsdFtqXV0gPSBuaWwKdGFibGUucmVtb3ZlKHJlc3VsdCwgaikKZWxzZQpqID0gaiArIDEKZW5kCmVuZAplbmQKZW5kCmlmIGNzZXQucGFyZW50IHRoZW4KcmVzdWx0ID0gY29uZmlnc2V0Ll9mZXRjaE1lcmdlZChjc2V0LnBhcmVudCwgZmllbGQsIGZpbHRlciwgY3R4LCBvcmlnaW4pCmVuZApsb2NhbCBhYnNwYXRoID0gZmlsdGVyLmZpbGVzCmxvY2FsIGJhc2VkaXIKbG9jYWwga2V5ID0gZmllbGQubmFtZQpsb2NhbCBibG9ja3MgPSBjc2V0LmJsb2Nrcwpsb2NhbCBuID0gI2Jsb2Nrcwpmb3IgaSA9IDEsIG4gZG8KbG9jYWwgYmxvY2sgPSBibG9ja3NbaV0KaWYgbm90IG9yaWdpbiBvciBibG9jay5fb3JpZ2luID09IG9yaWdpbiB0aGVuCmlmIGFic3BhdGggYW5kIGJsb2NrLl9iYXNlZGlyIGFuZCBibG9jay5fYmFzZWRpciB+PSBiYXNlZGlyIGFuZCBub3QgY3NldC5jb21waWxlZCB0aGVuCmJhc2VkaXIgPSBibG9jay5fYmFzZWRpcgpmaWx0ZXIuZmlsZXMgPSBwYXRoLmdldHJlbGF0aXZlKGJhc2VkaXIsIGFic3BhdGgpCmVuZAppZiBjb25maWdzZXQuX2RvZmlsdGVyKGNzZXQsIGJsb2NrLCBmaWx0ZXIpIHRoZW4KaWYgYmxvY2suX3JlbW92ZXMgYW5kIGJsb2NrLl9yZW1vdmVzW2tleV0gdGhlbgpyZW1vdmUoYmxvY2suX3JlbW92ZXNba2V5XSkKZW5kCmxvY2FsIHZhbHVlID0gYmxvY2tba2V5XQppZiB0eXBlKHZhbHVlKSA9PSAidGFibGUiIHRoZW4KdmFsdWUgPSB0YWJsZS5kZWVwY29weSh2YWx1ZSkKZW5kCmlmIHZhbHVlIHRoZW4KaWYgZmllbGQudG9rZW5zIGFuZCBjdHguZW52aXJvbiB0aGVuCnZhbHVlID0gcC5kZXRva2VuLmV4cGFuZCh2YWx1ZSwgY3R4LmVudmlyb24sIGZpZWxkLCBjdHguX2Jhc2VkaXIpCmVuZAppZiBmaWVsZCBhbmQgcC5maWVsZC50cmFuc2xhdGVzKGZpZWxkKSB0aGVuCnZhbHVlID0gcC5maWVsZC50cmFuc2xhdGUoZmllbGQsIHZhbHVlKQplbmQKcmVzdWx0ID0gcC5maWVsZC5tZXJnZShmaWVsZCwgcmVzdWx0LCB2YWx1ZSkKZW5kCmVuZAplbmQKZW5kCmZpbHRlci5maWxlcyA9IGFic3BhdGgKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gY29uZmlnc2V0Lm1ldGF0YWJsZShjc2V0KQpyZXR1cm4gewpfX25ld2luZGV4ID0gZnVuY3Rpb24odGJsLCBrZXksIHZhbHVlKQpsb2NhbCBmID0gcC5maWVsZC5nZXQoa2V5KQppZiBmIHRoZW4KbG9jYWwgc3RhdHVzLCBlcnIgPSBjb25maWdzZXQuc3RvcmUoY3NldCwgZiwgdmFsdWUpCmlmIGVyciB0aGVuCmVycm9yKGVyciwgMikKZW5kCmVsc2UKcmF3c2V0KHRibCwga2V5LCB2YWx1ZSkKcmV0dXJuIHZhbHVlCmVuZAplbmQsCl9faW5kZXggPSBmdW5jdGlvbih0YmwsIGtleSkKbG9jYWwgZiA9IHAuZmllbGQuZ2V0KGtleSkKaWYgZiB0aGVuCnJldHVybiBjb25maWdzZXQuZmV0Y2goY3NldCwgZikKZWxzZQpyZXR1cm4gbmlsCmVuZAplbmQKfQplbmQKZnVuY3Rpb24gY29uZmlnc2V0LmFkZGJsb2NrKGNzZXQsIHRlcm1zLCBiYXNlZGlyKQpjb25maWdzZXQuYWRkRmlsdGVyKGNzZXQsIHRlcm1zLCBiYXNlZGlyLCB0cnVlKQpyZXR1cm4gY3NldC5jdXJyZW50CmVuZApmdW5jdGlvbiBjb25maWdzZXQuYWRkRmlsdGVyKGNzZXQsIHRlcm1zLCBiYXNlZGlyLCB1bnByZWZpeGVkKQpsb2NhbCBjcml0LCBlcnIgPSBjcml0ZXJpYS5uZXcodGVybXMsIHVucHJlZml4ZWQpCmlmIG5vdCBjcml0IHRoZW4KcmV0dXJuIG5pbCwgZXJyCmVuZApsb2NhbCBibG9jayA9IHt9CmJsb2NrLl9jcml0ZXJpYSA9IGNyaXQKYmxvY2suX29yaWdpbiA9IGNzZXQKaWYgYmFzZWRpciB0aGVuCmJsb2NrLl9iYXNlZGlyID0gYmFzZWRpcjpsb3dlcigpCmVuZAp0YWJsZS5pbnNlcnQoY3NldC5ibG9ja3MsIGJsb2NrKQpjc2V0LmN1cnJlbnQgPSBibG9jawpyZXR1cm4gdHJ1ZQplbmQKZnVuY3Rpb24gY29uZmlnc2V0LmdldEZpbHRlcihjc2V0KQpyZXR1cm4gewpfY3JpdGVyaWEgPSBjc2V0LmN1cnJlbnQuX2NyaXRlcmlhLApfYmFzZWRpciA9IGNzZXQuY3VycmVudC5fYmFzZWRpcgp9CmVuZApmdW5jdGlvbiBjb25maWdzZXQuc2V0RmlsdGVyKGNzZXQsIGZpbHRlcikKbG9jYWwgYmxvY2sgPSB7fQpibG9jay5fY3JpdGVyaWEgPSBmaWx0ZXIuX2NyaXRlcmlhCmJsb2NrLl9iYXNlZGlyID0gZmlsdGVyLl9iYXNlZGlyCmJsb2NrLl9vcmlnaW4gPSBjc2V0CnRhYmxlLmluc2VydChjc2V0LmJsb2NrcywgYmxvY2spCmNzZXQuY3VycmVudCA9IGJsb2NrOwplbmQKZnVuY3Rpb24gY29uZmlnc2V0LnN0b3JlKGNzZXQsIGZpZWxkLCB2YWx1ZSkKaWYgbm90IGNzZXQuY3VycmVudCB0aGVuCmNvbmZpZ3NldC5hZGRibG9jayhjc2V0LCB7fSkKZW5kCmxvY2FsIGtleSA9IGZpZWxkLm5hbWUKbG9jYWwgY3VycmVudCA9IGNzZXQuY3VycmVudApsb2NhbCBzdGF0dXMsIHJlc3VsdCA9IHBjYWxsKGZ1bmN0aW9uICgpCmN1cnJlbnRba2V5XSA9IHAuZmllbGQuc3RvcmUoZmllbGQsIGN1cnJlbnRba2V5XSwgdmFsdWUpCmVuZCkKaWYgbm90IHN0YXR1cyB0aGVuCmlmIHR5cGUocmVzdWx0KSA9PSAidGFibGUiIHRoZW4KcmVzdWx0ID0gcmVzdWx0Lm1zZwplbmQKcmV0dXJuIG5pbCwgcmVzdWx0CmVuZApyZXR1cm4gdHJ1ZQplbmQKZnVuY3Rpb24gY29uZmlnc2V0LnJlbW92ZShjc2V0LCBmaWVsZCwgdmFsdWVzKQpsb2NhbCBibG9jayA9IHt9CmJsb2NrLl9iYXNlZGlyID0gY3NldC5jdXJyZW50Ll9iYXNlZGlyCmJsb2NrLl9jcml0ZXJpYSA9IGNzZXQuY3VycmVudC5fY3JpdGVyaWEKYmxvY2suX29yaWdpbiA9IGNzZXQKdGFibGUuaW5zZXJ0KGNzZXQuYmxvY2tzLCBibG9jaykKY3NldC5jdXJyZW50ID0gYmxvY2sKdmFsdWVzID0gcC5maWVsZC5yZW1vdmUoZmllbGQsIHt9LCB2YWx1ZXMpCmN1cnJlbnQgPSBjc2V0LmN1cnJlbnQKY3VycmVudC5fcmVtb3ZlcyA9IHt9CmN1cnJlbnQuX3JlbW92ZXNbZmllbGQubmFtZV0gPSB2YWx1ZXMKZW5kCmZ1bmN0aW9uIGNvbmZpZ3NldC5lbXB0eShjc2V0KQpyZXR1cm4gKCNjc2V0LmJsb2NrcyA9PSAwKQplbmQKZnVuY3Rpb24gY29uZmlnc2V0LmNvbXBpbGUoY3NldCwgZmlsdGVyKQpsb2NhbCByZXN1bHQKaWYgY3NldC5wYXJlbnQgdGhlbgpyZXN1bHQgPSBjb25maWdzZXQuY29tcGlsZShjc2V0LnBhcmVudCwgZmlsdGVyKQplbHNlCnJlc3VsdCA9IGNvbmZpZ3NldC5uZXcoKQplbmQKbG9jYWwgYmxvY2tzID0gY3NldC5ibG9ja3MKbG9jYWwgbiA9ICNibG9ja3MKbG9jYWwgYWJzcGF0aCA9IGZpbHRlci5maWxlcwpsb2NhbCBiYXNlZGlyCmZvciBpID0gMSwgbiBkbwpsb2NhbCBibG9jayA9IGJsb2Nrc1tpXQppZiBibG9jay5fb3JpZ2luID09IGNzZXQgdGhlbgpibG9jay5fb3JpZ2luID0gcmVzdWx0CmVuZAppZiBhYnNwYXRoIGFuZCBibG9jay5fYmFzZWRpciBhbmQgYmxvY2suX2Jhc2VkaXIgfj0gYmFzZWRpciB0aGVuCmJhc2VkaXIgPSBibG9jay5fYmFzZWRpcgpmaWx0ZXIuZmlsZXMgPSBwYXRoLmdldHJlbGF0aXZlKGJhc2VkaXIsIGFic3BhdGgpCmVuZAppZiBjcml0ZXJpYS5tYXRjaGVzKGJsb2NrLl9jcml0ZXJpYSwgZmlsdGVyKSB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQuYmxvY2tzLCBibG9jaykKZW5kCmVuZApmaWx0ZXIuZmlsZXMgPSBhYnNwYXRoCnJlc3VsdC5jb21waWxlZCA9IHRydWUKcmV0dXJuIHJlc3VsdAplbmQKbG9jYWwgcCA9IHByZW1ha2UKcC5jb250ZXh0ID0ge30KbG9jYWwgY29udGV4dCA9IHAuY29udGV4dApsb2NhbCBjb25maWdzZXQgPSBwLmNvbmZpZ3NldApmdW5jdGlvbiBjb250ZXh0Lm5ldyhjZmdzZXQsIGVudmlyb24pCmxvY2FsIGN0eCA9IHt9CmN0eC5fY2Znc2V0ID0gY2Znc2V0CmN0eC5lbnZpcm9uID0gZW52aXJvbiBvciB7fQpjdHgudGVybXMgPSB7fQpjdHguX2Jhc2VkaXIgPSBvcy5nZXRjd2QoKQpzZXRtZXRhdGFibGUoY3R4LCBjb250ZXh0Ll9fbXQpCnJldHVybiBjdHgKZW5kCmZ1bmN0aW9uIGNvbnRleHQuZXh0ZW50KGJhc2VDb250ZXh0LCBuZXdFbnZWYXJzKQpsb2NhbCBjdHggPSB7fQpjdHguX2N0eCA9IGJhc2VDb250ZXh0CmN0eC5lbnZpcm9uID0gbmV3RW52VmFycyBvciBiYXNlQ29udGV4dC5lbnZpcm9uCmN0eC50ZXJtcyA9IHt9CmN0eC5fYmFzZWRpciA9IGJhc2VDb250ZXh0Ll9iYXNlZGlyCnNldG1ldGF0YWJsZShjdHgsIGNvbnRleHQuX19tdF91bmNhY2hlZCkKcmV0dXJuIGN0eAplbmQKZnVuY3Rpb24gY29udGV4dC5hZGRGaWx0ZXIoY3R4LCBrZXksIHZhbHVlKQppZiB0eXBlKHZhbHVlKSA9PSAidGFibGUiIHRoZW4KZm9yIGkgPSAxLCAjdmFsdWUgZG8KdmFsdWVbaV0gPSB2YWx1ZVtpXTpsb3dlcigpCmVuZAplbHNlaWYgdmFsdWUgdGhlbgp2YWx1ZSA9IHZhbHVlOmxvd2VyKCkKZW5kCmN0eC50ZXJtc1trZXk6bG93ZXIoKV0gPSB2YWx1ZQplbmQKZnVuY3Rpb24gY29udGV4dC5jb3B5RmlsdGVycyhjdHgsIHNyYykKY3R4LnRlcm1zID0ge30KZm9yIGssdiBpbiBwYWlycyhzcmMudGVybXMpIGRvCmN0eC50ZXJtc1trXSA9IHYKZW5kCmVuZApmdW5jdGlvbiBjb250ZXh0Lm1lcmdlRmlsdGVycyhjdHgsIHNyYykKZm9yIGssdiBpbiBwYWlycyhzcmMudGVybXMpIGRvCmN0eC50ZXJtc1trXSA9IHYKZW5kCmVuZApmdW5jdGlvbiBjb250ZXh0LmJhc2VkaXIoY3R4LCBiYXNlZGlyKQpjdHguX2Jhc2VkaXIgPSBiYXNlZGlyIG9yIGN0eC5fYmFzZWRpcgpyZXR1cm4gY3R4Ll9iYXNlZGlyCmVuZApmdW5jdGlvbiBjb250ZXh0LmNvbXBpbGUoY3R4KQpjdHguX2NmZ3NldCA9IGNvbmZpZ3NldC5jb21waWxlKGN0eC5fY2Znc2V0LCBjdHgudGVybXMpCmVuZApmdW5jdGlvbiBjb250ZXh0LmVtcHR5KGN0eCkKcmV0dXJuIGNvbmZpZ3NldC5lbXB0eShjdHguX2NmZ3NldCkKZW5kCmZ1bmN0aW9uIGNvbnRleHQuZmV0Y2h2YWx1ZShjdHgsIGtleSwgb25seWxvY2FsKQppZiBub3Qgb25seWxvY2FsIHRoZW4KbG9jYWwgdmFsdWUgPSByYXdnZXQoY3R4LCBrZXkpCmlmIHZhbHVlIH49IG5pbCB0aGVuCnJldHVybiB2YWx1ZQplbmQKZW5kCmxvY2FsIGZpZWxkID0gcC5maWVsZC5nZXQoa2V5KQppZiBub3QgZmllbGQgdGhlbgpyZXR1cm4gbmlsCmVuZApsb2NhbCB2YWx1ZSA9IGNvbmZpZ3NldC5mZXRjaChjdHguX2NmZ3NldCwgZmllbGQsIGN0eC50ZXJtcywgY3R4LCBvbmx5bG9jYWwgYW5kIGN0eC5fY2Znc2V0KQppZiB2YWx1ZSB0aGVuCnJhd3NldChjdHgsIGtleSwgdmFsdWUpCmVuZApyZXR1cm4gdmFsdWUKZW5kCmNvbnRleHQuX19tdCA9IHsKX19pbmRleCA9IGNvbnRleHQuZmV0Y2h2YWx1ZQp9CmNvbnRleHQuX19tdF91bmNhY2hlZCA9IHsKX19pbmRleCA9ICBmdW5jdGlvbihjdHgsIGtleSkKbG9jYWwgZmllbGQgPSBwLmZpZWxkLmdldChrZXkpCmlmIG5vdCBmaWVsZCB0aGVuCnJldHVybiBuaWwKZW5kCmxvY2FsIHBhcmVudCA9IHJhd2dldChjdHgsICdfY3R4JykKcmV0dXJuIGNvbmZpZ3NldC5mZXRjaChwYXJlbnQuX2NmZ3NldCwgZmllbGQsIGN0eC50ZXJtcywgY3R4LCBuaWwpCmVuZAp9CgBsb2NhbCBwID0gcHJlbWFrZQpwLmNvbnRhaW5lciA9IHt9CmxvY2FsIGNvbnRhaW5lciA9IHAuY29udGFpbmVyCmNvbnRhaW5lci5jbGFzc2VzID0ge30KZnVuY3Rpb24gY29udGFpbmVyLm5ld0NsYXNzKG5hbWUsIHBhcmVudCwgZXh0cmFTY29wZXMpCmxvY2FsIGNsYXNzID0gcC5jb25maWdzZXQubmV3KHBhcmVudCkKY2xhc3MubmFtZSA9IG5hbWUKY2xhc3MucGx1cmFsTmFtZSA9IG5hbWU6cGx1cmFsKCkKY2xhc3MuY29udGFpbmVkQ2xhc3NlcyA9IHt9CmNsYXNzLmV4dHJhU2NvcGVzID0gZXh0cmFTY29wZXMKaWYgcGFyZW50IHRoZW4KdGFibGUuaW5zZXJ0KHBhcmVudC5jb250YWluZWRDbGFzc2VzLCBjbGFzcykKZW5kCmNvbnRhaW5lci5jbGFzc2VzW25hbWVdID0gY2xhc3MKcmV0dXJuIGNsYXNzCmVuZApmdW5jdGlvbiBjb250YWluZXIubmV3KGNsYXNzLCBuYW1lKQpsb2NhbCBzZWxmID0gcC5jb25maWdzZXQubmV3KCkKc2V0bWV0YXRhYmxlKHNlbGYsIHAuY29uZmlnc2V0Lm1ldGF0YWJsZShzZWxmKSkKc2VsZi5jbGFzcyA9IGNsYXNzCnNlbGYubmFtZSA9IG5hbWUKc2VsZi5maWxlbmFtZSA9IG5hbWUKc2VsZi5zY3JpcHQgPSBfU0NSSVBUCnNlbGYuYmFzZWRpciA9IG9zLmdldGN3ZCgpCnNlbGYuZXh0ZXJuYWwgPSBmYWxzZQpmb3IgY2hpbGRDbGFzcyBpbiBjb250YWluZXIuZWFjaENoaWxkQ2xhc3MoY2xhc3MpIGRvCnNlbGZbY2hpbGRDbGFzcy5wbHVyYWxOYW1lXSA9IHt9CmVuZApyZXR1cm4gc2VsZgplbmQKZnVuY3Rpb24gY29udGFpbmVyLmFkZENoaWxkKHNlbGYsIGNoaWxkKQpsb2NhbCBjaGlsZHJlbiA9IHNlbGZbY2hpbGQuY2xhc3MucGx1cmFsTmFtZV0KdGFibGUuaW5zZXJ0KGNoaWxkcmVuLCBjaGlsZCkKY2hpbGRyZW5bY2hpbGQubmFtZV0gPSBjaGlsZApjaGlsZC5wYXJlbnQgPSBzZWxmCmNoaWxkW3NlbGYuY2xhc3MubmFtZV0gPSBzZWxmCmlmIHNlbGYuY2xhc3MuYWxpYXMgdGhlbgpjaGlsZFtzZWxmLmNsYXNzLmFsaWFzXSA9IHNlbGYKZW5kCmVuZApmdW5jdGlvbiBjb250YWluZXIuYmFrZShzZWxmKQppZiBzZWxmLl9pc0Jha2VkIHRoZW4KcmV0dXJuIHNlbGYKZW5kCnNlbGYuX2lzQmFrZWQgPSB0cnVlCmxvY2FsIGN0eCA9IHAuY29udGV4dC5uZXcoc2VsZikKZm9yIGtleSwgdmFsdWUgaW4gcGFpcnMoc2VsZikgZG8KY3R4W2tleV0gPSB2YWx1ZQplbmQKbG9jYWwgcGFyZW50ID0gc2VsZi5wYXJlbnQKaWYgcGFyZW50IHRoZW4KY3R4W3BhcmVudC5jbGFzcy5uYW1lXSA9IHBhcmVudAplbmQKZm9yIGNsYXNzIGluIGNvbnRhaW5lci5lYWNoQ2hpbGRDbGFzcyhzZWxmLmNsYXNzKSBkbwpmb3IgY2hpbGQgaW4gY29udGFpbmVyLmVhY2hDaGlsZChzZWxmLCBjbGFzcykgZG8KY2hpbGQucGFyZW50ID0gY3R4CmNoaWxkW3NlbGYuY2xhc3MubmFtZV0gPSBjdHgKZW5kCmVuZAppZiB0eXBlKHNlbGYuY2xhc3MuYmFrZSkgPT0gImZ1bmN0aW9uIiB0aGVuCnNlbGYuY2xhc3MuYmFrZShjdHgpCmVuZApyZXR1cm4gY3R4CmVuZApmdW5jdGlvbiBjb250YWluZXIuYmFrZUNoaWxkcmVuKHNlbGYpCmZvciBjbGFzcyBpbiBjb250YWluZXIuZWFjaENoaWxkQ2xhc3Moc2VsZi5jbGFzcykgZG8KbG9jYWwgY2hpbGRyZW4gPSBzZWxmW2NsYXNzLnBsdXJhbE5hbWVdCmZvciBpID0gMSwgI2NoaWxkcmVuIGRvCmxvY2FsIGN0eCA9IGNvbnRhaW5lci5iYWtlKGNoaWxkcmVuW2ldKQpjaGlsZHJlbltpXSA9IGN0eApjaGlsZHJlbltjdHgubmFtZV0gPSBjdHgKZW5kCmVuZAplbmQKZnVuY3Rpb24gY29udGFpbmVyLmNsYXNzQ2FuQ29udGFpbihjbGFzcywgc2NvcGUpCmlmIHR5cGUoc2NvcGUpID09ICJ0YWJsZSIgdGhlbgpmb3IgaSA9IDEsICNzY29wZSBkbwppZiBjb250YWluZXIuY2xhc3NDYW5Db250YWluKGNsYXNzLCBzY29wZVtpXSkgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKZW5kCnJldHVybiBmYWxzZQplbmQKZm9yIGNoaWxkIGluIGNvbnRhaW5lci5lYWNoQ2hpbGRDbGFzcyhjbGFzcykgZG8KaWYgKGNvbnRhaW5lci5jbGFzc0NhbkNvbnRhaW4oY2hpbGQsIHNjb3BlKSkgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKZW5kCmlmIGNsYXNzLm5hbWUgPT0gc2NvcGUgb3IgY2xhc3MuYWxpYXMgPT0gc2NvcGUgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKaWYgY2xhc3MuZXh0cmFTY29wZXMgYW5kIHRhYmxlLmNvbnRhaW5zKGNsYXNzLmV4dHJhU2NvcGVzLCBzY29wZSkgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKcmV0dXJuIGZhbHNlCmVuZApmdW5jdGlvbiBjb250YWluZXIuY2xhc3NJc0EoY2xhc3MsIHNjb3BlKQp3aGlsZSBjbGFzcyBkbwppZiBjbGFzcy5uYW1lID09IHNjb3BlIG9yIGNsYXNzLmFsaWFzID09IHNjb3BlIHRoZW4KcmV0dXJuIHRydWUKZW5kCmNsYXNzID0gY2xhc3MucGFyZW50CmVuZApyZXR1cm4gZmFsc2UKZW5kCmZ1bmN0aW9uIGNvbnRhaW5lci5lYWNoQ2hpbGRDbGFzcyhjbGFzcykKbG9jYWwgY2hpbGRyZW4gPSBjbGFzcy5jb250YWluZWRDbGFzc2VzCmxvY2FsIGkgPSAwCnJldHVybiBmdW5jdGlvbiAoKQppID0gaSArIDEKaWYgaSA8PSAjY2hpbGRyZW4gdGhlbgpyZXR1cm4gY2hpbGRyZW5baV0KZW5kCmVuZAplbmQKZnVuY3Rpb24gY29udGFpbmVyLmVhY2hDaGlsZChzZWxmLCBjbGFzcykKbG9jYWwgY2hpbGRyZW4gPSBzZWxmW2NsYXNzLnBsdXJhbE5hbWVdCmxvY2FsIGkgPSAwCnJldHVybiBmdW5jdGlvbiAoKQppID0gaSArIDEKaWYgaSA8PSAjY2hpbGRyZW4gdGhlbgpyZXR1cm4gY2hpbGRyZW5baV0KZW5kCmVuZAplbmQKZnVuY3Rpb24gY29udGFpbmVyLmdldENoaWxkKHNlbGYsIGNsYXNzLCBuYW1lKQpsb2NhbCBjaGlsZHJlbiA9IHNlbGZbY2xhc3MucGx1cmFsTmFtZV0KcmV0dXJuIGNoaWxkcmVuW25hbWVdCmVuZApmdW5jdGlvbiBjb250YWluZXIuZ2V0Q2xhc3MobmFtZSkKcmV0dXJuIGNvbnRhaW5lci5jbGFzc2VzW25hbWVdCmVuZApmdW5jdGlvbiBjb250YWluZXIuaGFzQ2hpbGQoc2VsZiwgY2xhc3MsIGZ1bmMpCmZvciBjaGlsZCBpbiBjb250YWluZXIuZWFjaENoaWxkKHNlbGYsIGNsYXNzKSBkbwppZiBmdW5jKGNoaWxkKSB0aGVuCnJldHVybiB0cnVlCmVuZAplbmQKZW5kCmZ1bmN0aW9uIGNvbnRhaW5lci52YWxpZGF0ZShzZWxmKQppZiB0eXBlKHNlbGYuY2xhc3MudmFsaWRhdGUpID09ICJmdW5jdGlvbiIgdGhlbgpzZWxmLmNsYXNzLnZhbGlkYXRlKHNlbGYpCmVuZAplbmQKZnVuY3Rpb24gY29udGFpbmVyLnZhbGlkYXRlQ2hpbGRyZW4oc2VsZikKZm9yIGNsYXNzIGluIGNvbnRhaW5lci5lYWNoQ2hpbGRDbGFzcyhzZWxmLmNsYXNzKSBkbwpsb2NhbCBjaGlsZHJlbiA9IHNlbGZbY2xhc3MucGx1cmFsTmFtZV0KZm9yIGkgPSAxLCAjY2hpbGRyZW4gZG8KY29udGFpbmVyLnZhbGlkYXRlKGNoaWxkcmVuW2ldKQplbmQKZW5kCmVuZAoAbG9jYWwgcCA9IHByZW1ha2UKcC5vcHRpb24gPSB7fQpsb2NhbCBtID0gcC5vcHRpb24KbG9jYWwgX09QVElPTlNfbWV0YXRhYmxlID0gewpfX2luZGV4ID0gZnVuY3Rpb24odGJsLCBrZXkpCmlmIHR5cGUoa2V5KSA9PSAic3RyaW5nIiB0aGVuCmtleSA9IGtleTpsb3dlcigpCmVuZApyZXR1cm4gcmF3Z2V0KHRibCwga2V5KQplbmQsCl9fbmV3aW5kZXggPSBmdW5jdGlvbih0YmwsIGtleSwgdmFsdWUpCmlmIHR5cGUoa2V5KSA9PSAic3RyaW5nIiB0aGVuCmtleSA9IGtleTpsb3dlcigpCmVuZApyYXdzZXQodGJsLCBrZXksIHZhbHVlKQplbmQKfQpfT1BUSU9OUyA9IHt9CnNldG1ldGF0YWJsZShfT1BUSU9OUywgX09QVElPTlNfbWV0YXRhYmxlKQpmb3IgaSwgYXJnIGluIGlwYWlycyhfQVJHVikgZG8KbG9jYWwga2V5LCB2YWx1ZQpsb2NhbCBpID0gYXJnOmZpbmQoIj0iLCAxLCB0cnVlKQppZiBpIHRoZW4Ka2V5ID0gYXJnOnN1YigxLCBpIC0gMSkKdmFsdWUgPSBhcmc6c3ViKGkgKyAxKQplbHNlCmtleSA9IGFyZwp2YWx1ZSA9ICIiCmVuZAppZiBrZXk6c3RhcnRzd2l0aCgiLyIpIHRoZW4KX09QVElPTlNba2V5OnN1YigyKV0gPSB2YWx1ZQplbHNlaWYga2V5OnN0YXJ0c3dpdGgoIi0tIikgdGhlbgpfT1BUSU9OU1trZXk6c3ViKDMpXSA9IHZhbHVlCmVuZAplbmQKbS5saXN0ID0ge30KZnVuY3Rpb24gbS5hZGQob3B0KQpsb2NhbCBtaXNzaW5nCmZvciBfLCBmaWVsZCBpbiBpcGFpcnMoeyAiZGVzY3JpcHRpb24iLCAidHJpZ2dlciIgfSkgZG8KaWYgKG5vdCBvcHRbZmllbGRdKSB0aGVuCm1pc3NpbmcgPSBmaWVsZAplbmQKZW5kCmlmIChtaXNzaW5nKSB0aGVuCmVycm9yKCJvcHRpb24gbmVlZHMgYSAiIC4uIG1pc3NpbmcsIDMpCmVuZApwLm9wdGlvbi5saXN0W29wdC50cmlnZ2VyOmxvd2VyKCldID0gb3B0CmlmIG9wdC5kZWZhdWx0IGFuZCBub3QgX09QVElPTlNbb3B0LnRyaWdnZXJdIHRoZW4KX09QVElPTlNbb3B0LnRyaWdnZXJdID0gb3B0LmRlZmF1bHQKZW5kCmVuZApmdW5jdGlvbiBtLmdldChuYW1lKQpyZXR1cm4gcC5vcHRpb24ubGlzdFtuYW1lXQplbmQKZnVuY3Rpb24gbS5lYWNoKCkKbG9jYWwga2V5cyA9IHsgfQpmb3IgXywgb3B0aW9uIGluIHBhaXJzKHAub3B0aW9uLmxpc3QpIGRvCnRhYmxlLmluc2VydChrZXlzLCBvcHRpb24udHJpZ2dlcikKZW5kCnRhYmxlLnNvcnQoa2V5cykKbG9jYWwgaSA9IDAKcmV0dXJuIGZ1bmN0aW9uKCkKaSA9IGkgKyAxCnJldHVybiBwLm9wdGlvbi5saXN0W2tleXNbaV1dCmVuZAplbmQKZnVuY3Rpb24gbS52YWxpZGF0ZSh2YWx1ZXMpCmZvciBrZXksIHZhbHVlIGluIHBhaXJzKHZhbHVlcykgZG8KbG9jYWwgb3B0ID0gcC5vcHRpb24uZ2V0KGtleSkKaWYgKG5vdCBvcHQpIHRoZW4KcmV0dXJuIGZhbHNlLCAiaW52YWxpZCBvcHRpb24gJyIgLi4ga2V5IC4uICInIgplbmQKaWYgKG9wdC52YWx1ZSBhbmQgdmFsdWUgPT0gIiIpIHRoZW4KcmV0dXJuIGZhbHNlLCAibm8gdmFsdWUgc3BlY2lmaWVkIGZvciBvcHRpb24gJyIgLi4ga2V5IC4uICInIgplbmQKaWYgb3B0LmFsbG93ZWQgdGhlbgpsb2NhbCBmb3VuZCA9IGZhbHNlCmZvciBfLCBtYXRjaCBpbiBpcGFpcnMob3B0LmFsbG93ZWQpIGRvCmlmIG1hdGNoWzFdID09IHZhbHVlIHRoZW4KZm91bmQgPSB0cnVlCmJyZWFrCmVuZAplbmQKaWYgbm90IGZvdW5kIHRoZW4KcmV0dXJuIGZhbHNlLCBzdHJpbmcuZm9ybWF0KCJpbnZhbGlkIHZhbHVlICclcycgZm9yIG9wdGlvbiAnJXMnIiwgdmFsdWUsIGtleSkKZW5kCmVuZAplbmQKcmV0dXJuIHRydWUKZW5kCmxvY2FsIHAgPSBwcmVtYWtlCnAuYWN0aW9uID0ge30KbG9jYWwgYWN0aW9uID0gcC5hY3Rpb24KX0FDVElPTiA9IG5pbApfQVJHUyA9IHt9CmZvciBpLCBhcmcgaW4gaXBhaXJzKF9BUkdWKSBkbwppZiBub3QgYXJnOnN0YXJ0c3dpdGgoIi8iKSBhbmQgbm90IGFyZzpzdGFydHN3aXRoKCItLSIpIHRoZW4KaWYgbm90IF9BQ1RJT04gdGhlbgpfQUNUSU9OID0gYXJnCmVsc2UKdGFibGUuaW5zZXJ0KF9BUkdTLCBhcmcpCl9BUkdTW2FyZ10gPSBhcmcKZW5kCmVuZAplbmQKYWN0aW9uLl9saXN0ID0ge30KZnVuY3Rpb24gYWN0aW9uLmFkZChhY3QpCmxvY2FsIG1pc3NpbmcKZm9yIF8sIGZpZWxkIGluIGlwYWlycyh7ImRlc2NyaXB0aW9uIiwgInRyaWdnZXIifSkgZG8KaWYgbm90IGFjdFtmaWVsZF0gdGhlbgptaXNzaW5nID0gZmllbGQKZW5kCmVuZAppZiBtaXNzaW5nIHRoZW4KbG9jYWwgbmFtZSA9IGFjdC50cmlnZ2VyIG9yICIiCmVycm9yKHN0cmluZy5mb3JtYXQoJ2FjdGlvbiAiJXMiIG5lZWRzIGEgICVzJywgbmFtZSwgbWlzc2luZyksIDMpCmVuZAppZiBhY3Qub3Mgfj0gbmlsIHRoZW4KcC53YXJuT25jZShhY3QudHJpZ2dlciwgImFjdGlvbiAnIiAuLiBhY3QudHJpZ2dlciAuLiAiJyBzZXRzICdvcycgZmllbGQsIHdoaWNoIGlzIGRlcHJlY2F0ZWQsIHVzZSAndGFyZ2V0b3MnIGluc3RlYWQuIikKYWN0LnRhcmdldG9zID0gYWN0Lm9zCmFjdC5vcyA9IG5pbAplbmQKYWN0aW9uLl9saXN0W2FjdC50cmlnZ2VyXSA9IGFjdAplbmQKZnVuY3Rpb24gYWN0aW9uLmluaXRpYWxpemUobmFtZSkKbG9jYWwgYSA9IGFjdGlvbi5fbGlzdFtuYW1lXQppZiAoYS5vbkluaXRpYWxpemUpIHRoZW4KYS5vbkluaXRpYWxpemUoKQplbmQKZW5kCmZ1bmN0aW9uIGFjdGlvbi5jYWxsKG5hbWUpCmxvY2FsIGEgPSBhY3Rpb24uX2xpc3RbbmFtZV0KaWYgYS5vblN0YXJ0IHRoZW4KYS5vblN0YXJ0KCkKZW5kCmZvciB3a3MgaW4gcC5nbG9iYWwuZWFjaFdvcmtzcGFjZSgpIGRvCmxvY2FsIG9uV29ya3NwYWNlID0gYS5vbldvcmtzcGFjZSBvciBhLm9uU29sdXRpb24gb3IgYS5vbnNvbHV0aW9uCmlmIG9uV29ya3NwYWNlIGFuZCBub3Qgd2tzLmV4dGVybmFsIHRoZW4Kb25Xb3Jrc3BhY2Uod2tzKQplbmQKZm9yIHByaiBpbiBwLndvcmtzcGFjZS5lYWNocHJvamVjdCh3a3MpIGRvCmxvY2FsIG9uUHJvamVjdCA9IGEub25Qcm9qZWN0IG9yIGEub25wcm9qZWN0CmlmIG9uUHJvamVjdCBhbmQgbm90IHByai5leHRlcm5hbCB0aGVuCm9uUHJvamVjdChwcmopCmVuZAplbmQKZW5kCmZvciBydWxlIGluIHAuZ2xvYmFsLmVhY2hSdWxlKCkgZG8KbG9jYWwgb25SdWxlID0gYS5vblJ1bGUgb3IgYS5vbnJ1bGUKaWYgb25SdWxlIGFuZCBub3QgcnVsZS5leHRlcm5hbCB0aGVuCm9uUnVsZShydWxlKQplbmQKZW5kCmlmIGEuZXhlY3V0ZSB0aGVuCmEuZXhlY3V0ZSgpCmVuZAppZiBhLm9uRW5kIHRoZW4KYS5vbkVuZCgpCmVuZAplbmQKZnVuY3Rpb24gYWN0aW9uLmN1cnJlbnQoKQpyZXR1cm4gYWN0aW9uLmdldChfQUNUSU9OKQplbmQKZnVuY3Rpb24gYWN0aW9uLmdldChuYW1lKQppZiBuYW1lIGFuZCBuYW1lOmVuZHN3aXRoKCJuZyIpIHRoZW4KbmFtZSA9IG5hbWU6c3ViKDEsIC0zKQplbmQKcmV0dXJuIGFjdGlvbi5fbGlzdFtuYW1lXQplbmQKZnVuY3Rpb24gYWN0aW9uLmVhY2goKQpsb2NhbCBrZXlzID0geyB9CmZvciBfLCBhY3QgaW4gcGFpcnMoYWN0aW9uLl9saXN0KSBkbwp0YWJsZS5pbnNlcnQoa2V5cywgYWN0LnRyaWdnZXIpCmVuZAp0YWJsZS5zb3J0KGtleXMpCmxvY2FsIGkgPSAwCnJldHVybiBmdW5jdGlvbigpCmkgPSBpICsgMQpyZXR1cm4gYWN0aW9uLl9saXN0W2tleXNbaV1dCmVuZAplbmQKZnVuY3Rpb24gYWN0aW9uLmlzQ29uZmlndXJhYmxlKHNlbGYpCmlmIG5vdCBzZWxmIHRoZW4Kc2VsZiA9IGFjdGlvbi5jdXJyZW50KCkgb3Ige30KZW5kCmlmIHNlbGYub25Xb3Jrc3BhY2Ugb3Igc2VsZi5vblNvbHV0aW9uIG9yIHNlbGYub25zb2x1dGlvbiB0aGVuCnJldHVybiB0cnVlCmVuZAppZiBzZWxmLm9uUHJvamVjdCBvciBzZWxmLm9ucHJvamVjdCB0aGVuCnJldHVybiB0cnVlCmVuZApyZXR1cm4gZmFsc2UKZW5kCmZ1bmN0aW9uIGFjdGlvbi5zZXQobmFtZSkKX0FDVElPTiA9IG5hbWUKbG9jYWwgYWN0ID0gYWN0aW9uLmdldChuYW1lKQppZiBhY3QgdGhlbgpfVEFSR0VUX09TID0gYWN0LnRhcmdldG9zIG9yIF9UQVJHRVRfT1MKZW5kCmlmIGFjdCBhbmQgYWN0Lm1vZHVsZSB0aGVuCnJlcXVpcmUoYWN0Lm1vZHVsZSkKZW5kCmVuZApmdW5jdGlvbiBhY3Rpb24uc3VwcG9ydHMoZmVhdHVyZSkKaWYgbm90IGZlYXR1cmUgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKbG9jYWwgc2VsZiA9IGFjdGlvbi5jdXJyZW50KCkKaWYgbm90IHNlbGYgdGhlbgpyZXR1cm4gZmFsc2UKZW5kCmlmIG5vdCBzZWxmLnZhbGlkX2xhbmd1YWdlcyBhbmQgbm90IHNlbGYudmFsaWRfa2luZHMgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKaWYgc2VsZi52YWxpZF9sYW5ndWFnZXMgYW5kIHRhYmxlLmNvbnRhaW5zKHNlbGYudmFsaWRfbGFuZ3VhZ2VzLCBmZWF0dXJlKSB0aGVuCnJldHVybiB0cnVlCmVuZAppZiBzZWxmLnZhbGlkX2tpbmRzIGFuZCB0YWJsZS5jb250YWlucyhzZWxmLnZhbGlkX2tpbmRzLCBmZWF0dXJlKSB0aGVuCnJldHVybiB0cnVlCmVuZApyZXR1cm4gZmFsc2UKZW5kCmZ1bmN0aW9uIHAuYWN0aW9uLnN1cHBvcnRzY29uZmlnKGFjdGlvbiwgY2ZnKQppZiBub3QgYWN0aW9uIHRoZW4KcmV0dXJuIGZhbHNlCmVuZAppZiBhY3Rpb24uc3VwcG9ydHNjb25maWcgdGhlbgpyZXR1cm4gYWN0aW9uLnN1cHBvcnRzY29uZmlnKGNmZykKZW5kCnJldHVybiB0cnVlCmVuZAoAAAAAAAAAbG9jYWwgcCA9IHByZW1ha2UKcC5hcGkgPSB7fQpsb2NhbCBhcGkgPSBwLmFwaQpsb2NhbCBjb25maWdzZXQgPSBwLmNvbmZpZ3NldAphcGkuc2NvcGUgPSB7fQpmdW5jdGlvbiBhcGkuY29udGFpbmVyKGNvbnRhaW5lck5hbWUsIHBhcmVudENvbnRhaW5lciwgZXh0cmFTY29wZXMpCmxvY2FsIGNsYXNzLCBlcnIgPSBwLmNvbnRhaW5lci5uZXdDbGFzcyhjb250YWluZXJOYW1lLCBwYXJlbnRDb250YWluZXIsIGV4dHJhU2NvcGVzKQppZiBub3QgY2xhc3MgdGhlbgplcnJvcihlcnIsIDIpCmVuZApfR1tjb250YWluZXJOYW1lXSA9IGZ1bmN0aW9uKG5hbWUpCmxvY2FsIGMgPSBhcGkuX3NldENvbnRhaW5lcihjbGFzcywgbmFtZSkKaWYgYXBpLl9pc0luY2x1ZGluZ0V4dGVybmFsIHRoZW4KYy5leHRlcm5hbCA9IHRydWUKZW5kCnJldHVybiBjCmVuZApfR1siZXh0ZXJuYWwiIC4uIGNvbnRhaW5lck5hbWVdID0gZnVuY3Rpb24obmFtZSkKbG9jYWwgYyA9IF9HW2NvbnRhaW5lck5hbWVdKG5hbWUpCmMuZXh0ZXJuYWwgPSB0cnVlCnJldHVybiBjCmVuZApwLmFsaWFzKF9HLCAiZXh0ZXJuYWwiIC4uIGNvbnRhaW5lck5hbWUsICJleHRlcm5hbCIgLi4gY29udGFpbmVyTmFtZTpjYXBpdGFsaXplZCgpKQpyZXR1cm4gY2xhc3MKZW5kCmZ1bmN0aW9uIGluY2x1ZGVleHRlcm5hbChmbmFtZSkKbG9jYWwgZnVsbFBhdGggPSBwLmZpbmRQcm9qZWN0U2NyaXB0KGZuYW1lKQphcGkuX2lzSW5jbHVkaW5nRXh0ZXJuYWwgPSB0cnVlCmZuYW1lID0gZnVsbFBhdGggb3IgZm5hbWUKZG9maWxlKGZuYW1lKQphcGkuX2lzSW5jbHVkaW5nRXh0ZXJuYWwgPSBuaWwKZW5kCnAuYWxpYXMoX0csICJpbmNsdWRlZXh0ZXJuYWwiLCAiaW5jbHVkZUV4dGVybmFsIikKZnVuY3Rpb24gYXBpLnJvb3RDb250YWluZXIoKQpyZXR1cm4gYXBpLnNjb3BlLmdsb2JhbAplbmQKZnVuY3Rpb24gYXBpLl9zZXRDb250YWluZXIoY2xhc3MsIG5hbWUpCmxvY2FsIGluc3RhbmNlCmlmIG5hbWUgPT0gIioiIHRoZW4KcmV0dXJuIGFwaS5fc2V0Q29udGFpbmVyKGNsYXNzLnBhcmVudCkKZW5kCmlmIG5vdCBuYW1lIHRoZW4KaW5zdGFuY2UgPSBhcGkuc2NvcGVbY2xhc3MubmFtZV0KaWYgbm90IGluc3RhbmNlIHRoZW4KZXJyb3IoIm5vICIgLi4gY2xhc3MubmFtZSAuLiAiIGluIHNjb3BlIiwgMykKZW5kCmVuZApsb2NhbCBwYXJlbnQKaWYgbm90IGluc3RhbmNlIGFuZCBjbGFzcy5wYXJlbnQgdGhlbgpwYXJlbnQgPSBhcGkuc2NvcGVbY2xhc3MucGFyZW50Lm5hbWVdCmlmIG5vdCBwYXJlbnQgdGhlbgplcnJvcigibm8gIiAuLiBjbGFzcy5wYXJlbnQubmFtZSAuLiAiIGluIHNjb3BlIiwgMykKZW5kCmluc3RhbmNlID0gcC5jb250YWluZXIuZ2V0Q2hpbGQocGFyZW50LCBjbGFzcywgbmFtZSkKZW5kCmlmIGluc3RhbmNlIHRoZW4KY29uZmlnc2V0LmFkZEZpbHRlcihpbnN0YW5jZSwge30sIG9zLmdldGN3ZCgpKQplbmQKaWYgbm90IGluc3RhbmNlIHRoZW4KaW5zdGFuY2UgPSBjbGFzcy5uZXcobmFtZSwgcGFyZW50KQppZiBwYXJlbnQgdGhlbgpwLmNvbnRhaW5lci5hZGRDaGlsZChwYXJlbnQsIGluc3RhbmNlKQplbmQKZW5kCmFwaS5fY2xlYXJDb250YWluZXJDaGlsZHJlbihjbGFzcykKaWYgbm90IGNsYXNzLnBsYWNlaG9sZGVyIHRoZW4KYXBpLnNjb3BlLmN1cnJlbnQgPSBpbnN0YW5jZQplbmQKd2hpbGUgaW5zdGFuY2UgZG8KYXBpLnNjb3BlW2luc3RhbmNlLmNsYXNzLm5hbWVdID0gaW5zdGFuY2UKaWYgaW5zdGFuY2UuY2xhc3MuYWxpYXMgdGhlbgphcGkuc2NvcGVbaW5zdGFuY2UuY2xhc3MuYWxpYXNdID0gaW5zdGFuY2UKZW5kCmluc3RhbmNlID0gaW5zdGFuY2UucGFyZW50CmVuZApyZXR1cm4gYXBpLnNjb3BlLmN1cnJlbnQKZW5kCmZ1bmN0aW9uIGFwaS5fY2xlYXJDb250YWluZXJDaGlsZHJlbihjbGFzcykKZm9yIGNoaWxkQ2xhc3MgaW4gcC5jb250YWluZXIuZWFjaENoaWxkQ2xhc3MoY2xhc3MpIGRvCmFwaS5zY29wZVtjaGlsZENsYXNzLm5hbWVdID0gbmlsCmlmIGNoaWxkQ2xhc3MuYWxpYXMgdGhlbgphcGkuc2NvcGVbY2hpbGRDbGFzcy5hbGlhc10gPSBuaWwKZW5kCmFwaS5fY2xlYXJDb250YWluZXJDaGlsZHJlbihjaGlsZENsYXNzKQplbmQKZW5kCmZ1bmN0aW9uIGFwaS5yZWdpc3RlcihmaWVsZCkKbG9jYWwgbmFtZSA9IGZpZWxkLm5hbWUKaWYgbm90IG5hbWUgdGhlbgplcnJvcigibWlzc2luZyBuYW1lIiwgMikKZW5kCmlmIHJhd2dldChfRywgbmFtZSkgdGhlbgplcnJvcigibmFtZSAnIiAuLiBuYW1lIC4uICInIGluIHVzZSIsIDIpCmVuZApmaWVsZCwgZXJyID0gcC5maWVsZC5uZXcoZmllbGQpCmlmIG5vdCBmaWVsZCB0aGVuCmVycm9yKGVycikKZW5kCmZpZWxkLnBhdGhzID0gcC5maWVsZC5wcm9wZXJ0eShmaWVsZCwgInBhdGhzIikKaWYgdHlwZShmaWVsZC5hbGxvd2VkKSA9PSAidGFibGUiIHRoZW4KZm9yIGksIGl0ZW0gaW4gaXBhaXJzKGZpZWxkLmFsbG93ZWQpIGRvCmZpZWxkLmFsbG93ZWRbaXRlbTpsb3dlcigpXSA9IGl0ZW0KZW5kCmVuZAppZiB0eXBlKGZpZWxkLmFsaWFzZXMpID09ICJ0YWJsZSIgdGhlbgpsb2NhbCBrZXlzID0gdGFibGUua2V5cyhmaWVsZC5hbGlhc2VzKQpmb3IgaSwga2V5IGluIGlwYWlycyhrZXlzKSBkbwpmaWVsZC5hbGlhc2VzW2tleTpsb3dlcigpXSA9IGZpZWxkLmFsaWFzZXNba2V5XQplbmQKZW5kCl9HW25hbWVdID0gZnVuY3Rpb24odmFsdWUpCnJldHVybiBhcGkuc3RvcmVGaWVsZChmaWVsZCwgdmFsdWUpCmVuZAppZiBwLmZpZWxkLnJlbW92ZXMoZmllbGQpIHRoZW4KX0dbInJlbW92ZSIgLi4gbmFtZV0gPSBmdW5jdGlvbih2YWx1ZSkKcmV0dXJuIGFwaS5yZW1vdmUoZmllbGQsIHZhbHVlKQplbmQKZW5kCnJldHVybiBmaWVsZAplbmQKZnVuY3Rpb24gYXBpLnVucmVnaXN0ZXIoZmllbGQpCmlmIHR5cGUoZmllbGQpID09ICJzdHJpbmciIHRoZW4KZmllbGQgPSBwLmZpZWxkLmdldChmaWVsZCkKZW5kCnAuZmllbGQudW5yZWdpc3RlcihmaWVsZCkKX0dbZmllbGQubmFtZV0gPSBuaWwKX0dbInJlbW92ZSIgLi4gZmllbGQubmFtZV0gPSBuaWwKZW5kCmZ1bmN0aW9uIGFwaS5hbGlhcyhvcmlnaW5hbCwgYWxpYXMpCnAuYWxpYXMoX0csIG9yaWdpbmFsLCBhbGlhcykKaWYgX0dbInJlbW92ZSIgLi4gb3JpZ2luYWxdIHRoZW4KcC5hbGlhcyhfRywgInJlbW92ZSIgLi4gb3JpZ2luYWwsICJyZW1vdmUiIC4uIGFsaWFzKQplbmQKZW5kCmZ1bmN0aW9uIGFwaS5hZGRBbGxvd2VkKGZpZWxkTmFtZSwgdmFsdWUpCmxvY2FsIGZpZWxkID0gcC5maWVsZC5nZXQoZmllbGROYW1lKQppZiBub3QgZmllbGQgdGhlbgplcnJvcigiTm8gc3VjaCBmaWVsZDogIiAuLiBmaWVsZE5hbWUsIDIpCmVuZAppZiB0eXBlKHZhbHVlKSA9PSAidGFibGUiIHRoZW4KZm9yIGksIGl0ZW0gaW4gaXBhaXJzKHZhbHVlKSBkbwphcGkuYWRkQWxsb3dlZChmaWVsZE5hbWUsIGl0ZW0pCmVuZAplbHNlCmZpZWxkLmFsbG93ZWQgPSBmaWVsZC5hbGxvd2VkIG9yIHt9CmlmIGZpZWxkLmFsbG93ZWRbdmFsdWU6bG93ZXIoKV0gPT0gbmlsIHRoZW4KdGFibGUuaW5zZXJ0KGZpZWxkLmFsbG93ZWQsIHZhbHVlKQpmaWVsZC5hbGxvd2VkW3ZhbHVlOmxvd2VyKCldID0gdmFsdWUKZW5kCmVuZAplbmQKZnVuY3Rpb24gYXBpLmFkZEFsaWFzZXMoZmllbGROYW1lLCB2YWx1ZSkKbG9jYWwgZmllbGQgPSBwLmZpZWxkLmdldChmaWVsZE5hbWUpCmlmIG5vdCBmaWVsZCB0aGVuCmVycm9yKCJObyBzdWNoIGZpZWxkOiAiIC4uIGZpZWxkTmFtZSwgMikKZW5kCmZpZWxkLmFsaWFzZXMgPSBmaWVsZC5hbGlhc2VzIG9yIHt9CmZvciBrLCB2IGluIHBhaXJzKHZhbHVlKSBkbwpmaWVsZC5hbGlhc2VzW2tdID0gdgpmaWVsZC5hbGlhc2VzW2s6bG93ZXIoKV0gPSB2CmVuZAplbmQKZnVuY3Rpb24gYXBpLmRlcHJlY2F0ZUZpZWxkKG5hbWUsIG1lc3NhZ2UsIGhhbmRsZXIpCnAuZmllbGRzW25hbWVdLmRlcHJlY2F0ZWQgPSB7CmhhbmRsZXIgPSBoYW5kbGVyLAptZXNzYWdlID0gbWVzc2FnZQp9CmVuZApmdW5jdGlvbiBhcGkuZGVwcmVjYXRlVmFsdWUobmFtZSwgdmFsdWUsIG1lc3NhZ2UsIGFkZEhhbmRsZXIsIHJlbW92ZUhhbmRsZXIpCmlmIHR5cGUodmFsdWUpID09ICJ0YWJsZSIgdGhlbgpmb3IgXywgdiBpbiBwYWlycyh2YWx1ZSkgZG8KYXBpLmRlcHJlY2F0ZVZhbHVlKG5hbWUsIHYsIG1lc3NhZ2UsIGFkZEhhbmRsZXIsIHJlbW92ZUhhbmRsZXIpCmVuZAplbHNlCmxvY2FsIGZpZWxkID0gcC5maWVsZHNbbmFtZV0KZmllbGQuZGVwcmVjYXRlZCA9IGZpZWxkLmRlcHJlY2F0ZWQgb3Ige30KZmllbGQuZGVwcmVjYXRlZFt2YWx1ZV0gPSB7CmFkZCA9IGFkZEhhbmRsZXIsCnJlbW92ZSA9IHJlbW92ZUhhbmRsZXIsCm1lc3NhZ2UgPSBtZXNzYWdlCn0KZW5kCmVuZApmdW5jdGlvbiBhcGkuZGVwcmVjYXRpb25zKHZhbHVlKQp2YWx1ZSA9IHZhbHVlOmxvd2VyKCkKaWYgbm90IHRhYmxlLmNvbnRhaW5zKHsgIm9uIiwgIm9mZiIsICJlcnJvciJ9LCB2YWx1ZSkgdGhlbgplcnJvcigiSW52YWxpZCB2YWx1ZTogIiAuLiB2YWx1ZSwgMikKZW5kCmFwaS5fZGVwcmVjYXRpb25zID0gdmFsdWU6bG93ZXIoKQplbmQKYXBpLl9kZXByZWNhdGlvbnMgPSAib24iCmZ1bmN0aW9uIGFwaS50YXJnZXQoZmllbGQpCmlmIHAuY29udGFpbmVyLmNsYXNzQ2FuQ29udGFpbihhcGkuc2NvcGUuY3VycmVudC5jbGFzcywgZmllbGQuc2NvcGUpIHRoZW4KcmV0dXJuIGFwaS5zY29wZS5jdXJyZW50CmVuZApyZXR1cm4gbmlsCmVuZApmdW5jdGlvbiBhcGkuc3RvcmVGaWVsZChmaWVsZCwgdmFsdWUpCmlmIHZhbHVlID09IG5pbCB0aGVuCnJldHVybgplbmQKaWYgZmllbGQuZGVwcmVjYXRlZCBhbmQgdHlwZShmaWVsZC5kZXByZWNhdGVkLmhhbmRsZXIpID09ICJmdW5jdGlvbiIgdGhlbgpmaWVsZC5kZXByZWNhdGVkLmhhbmRsZXIodmFsdWUpCmlmIGZpZWxkLmRlcHJlY2F0ZWQubWVzc2FnZSBhbmQgYXBpLl9kZXByZWNhdGlvbnMgfj0gIm9mZiIgdGhlbgpsb2NhbCBjYWxsZXIgPSBmaWxlbGluZWluZm8oMikKbG9jYWwga2V5ID0gZmllbGQubmFtZSAuLiAiXyIgLi4gY2FsbGVyCnAud2Fybk9uY2Uoa2V5LCAidGhlIGZpZWxkICVzIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC5cbiAgICVzXG4gICBAJXNcbiIsIGZpZWxkLm5hbWUsIGZpZWxkLmRlcHJlY2F0ZWQubWVzc2FnZSwgY2FsbGVyKQppZiBhcGkuX2RlcHJlY2F0aW9ucyA9PSAiZXJyb3IiIHRoZW4KZXJyb3IoImRlcHJlY2F0aW9uIGVycm9ycyBlbmFibGVkIiwgMykKZW5kCmVuZAplbmQKbG9jYWwgdGFyZ2V0ID0gYXBpLnRhcmdldChmaWVsZCkKaWYgbm90IHRhcmdldCB0aGVuCmxvY2FsIGVyciA9IHN0cmluZy5mb3JtYXQoInVuYWJsZSB0byBzZXQgJXMgaW4gJXMgc2NvcGUsIHNob3VsZCBiZSAlcyIsIGZpZWxkLm5hbWUsIGFwaS5zY29wZS5jdXJyZW50LmNsYXNzLm5hbWUsIHRhYmxlLmNvbmNhdChmaWVsZC5zY29wZXMsICIsICIpKQplcnJvcihlcnIsIDMpCmVuZApsb2NhbCBzdGF0dXMsIGVyciA9IGNvbmZpZ3NldC5zdG9yZSh0YXJnZXQsIGZpZWxkLCB2YWx1ZSkKaWYgZXJyIHRoZW4KZXJyb3IoZXJyLCAzKQplbmQKZW5kCmZ1bmN0aW9uIGFwaS5yZW1vdmUoZmllbGQsIHZhbHVlKQppZiB2YWx1ZSA9PSBuaWwgdGhlbiByZXR1cm4gZW5kCmxvY2FsIHRhcmdldCA9IGFwaS50YXJnZXQoZmllbGQpCmlmIG5vdCB0YXJnZXQgdGhlbgpsb2NhbCBlcnIgPSBzdHJpbmcuZm9ybWF0KCJ1bmFibGUgdG8gcmVtb3ZlICVzIGZyb20gJXMgc2NvcGUsIHNob3VsZCBiZSAlcyIsIGZpZWxkLm5hbWUsIGFwaS5zY29wZS5jdXJyZW50LmNsYXNzLm5hbWUsIHRhYmxlLmNvbmNhdChmaWVsZC5zY29wZXMsICIsICIpKQplcnJvcihlcnIsIDMpCmVuZApsb2NhbCBoYXNEZXByZWNhdGVkVmFsdWVzID0gKHR5cGUoZmllbGQuZGVwcmVjYXRlZCkgPT0gInRhYmxlIikKbG9jYWwgcmVtb3ZlcyA9IHt9CmxvY2FsIGZ1bmN0aW9uIGNoZWNrKHZhbHVlKQppZiBmaWVsZC5kZXByZWNhdGVkW3ZhbHVlXSB0aGVuCmxvY2FsIGhhbmRsZXIgPSBmaWVsZC5kZXByZWNhdGVkW3ZhbHVlXQppZiBoYW5kbGVyLnJlbW92ZSB0aGVuIGhhbmRsZXIucmVtb3ZlKHZhbHVlKSBlbmQKaWYgaGFuZGxlci5tZXNzYWdlIGFuZCBhcGkuX2RlcHJlY2F0aW9ucyB+PSAib2ZmIiB0aGVuCmxvY2FsIGNhbGxlciA9IGZpbGVsaW5laW5mbyg4KQpsb2NhbCBrZXkgPSBmaWVsZC5uYW1lIC4uICJfIiAuLiB2YWx1ZSAuLiAiXyIgLi4gY2FsbGVyCnAud2Fybk9uY2Uoa2V5LCAidGhlICVzIHZhbHVlICVzIGhhcyBiZWVuIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC5cbiAgICVzXG4gICBAJXNcbiIsIGZpZWxkLm5hbWUsIHZhbHVlLCBoYW5kbGVyLm1lc3NhZ2UsIGNhbGxlcikKaWYgYXBpLl9kZXByZWNhdGlvbnMgPT0gImVycm9yIiB0aGVuCmVycm9yIHsgbXNnPSJkZXByZWNhdGlvbiBlcnJvcnMgZW5hYmxlZCIgfQplbmQKZW5kCmVuZAplbmQKbG9jYWwgZnVuY3Rpb24gcmVjdXJzZSh2YWx1ZSkKaWYgdHlwZSh2YWx1ZSkgPT0gInRhYmxlIiB0aGVuCnRhYmxlLmZvcmVhY2hpKHZhbHVlLCByZWN1cnNlKQplbHNlaWYgaGFzRGVwcmVjYXRlZFZhbHVlcyBhbmQgdmFsdWU6Y29udGFpbnMoIioiKSB0aGVuCmxvY2FsIGN1cnJlbnQgPSBjb25maWdzZXQuZmV0Y2godGFyZ2V0LCBmaWVsZCwgewptYXRjaGVyID0gZnVuY3Rpb24oY3NldCwgYmxvY2ssIGZpbHRlcikKbG9jYWwgY3VycmVudCA9IGNzZXQuY3VycmVudApyZXR1cm4gY3JpdGVyaWEubWF0Y2hlcyhjdXJyZW50Ll9jcml0ZXJpYSwgYmxvY2suX2NyaXRlcmlhLnRlcm1zIG9yIHt9KSBvcgogICBjcml0ZXJpYS5tYXRjaGVzKGJsb2NrLl9jcml0ZXJpYSwgY3VycmVudC5fY3JpdGVyaWEudGVybXMgb3Ige30pCmVuZAp9KQpsb2NhbCBtYXNrID0gcGF0aC53aWxkY2FyZHModmFsdWUpCmZvciBfLCBpdGVtIGluIGlwYWlycyhjdXJyZW50KSBkbwppZiBpdGVtOm1hdGNoKG1hc2spID09IGl0ZW0gdGhlbgpyZWN1cnNlKGl0ZW0pCmVuZAplbmQKZWxzZQpsb2NhbCB2YWx1ZSwgZXJyLCBhZGRpdGlvbmFsID0gYXBpLmNoZWNrVmFsdWUoZmllbGQsIHZhbHVlKQppZiBlcnIgdGhlbgplcnJvciB7IG1zZz1lcnIgfQplbmQKaWYgZmllbGQuZGVwcmVjYXRlZCB0aGVuCmNoZWNrKHZhbHVlKQplbmQKdGFibGUuaW5zZXJ0KHJlbW92ZXMsIHZhbHVlKQppZiBhZGRpdGlvbmFsIHRoZW4KdGFibGUuaW5zZXJ0KHJlbW92ZXMsIGFkZGl0aW9uYWwpCmVuZAplbmQKZW5kCmxvY2FsIG9rLCBlcnIgPSBwY2FsbChmdW5jdGlvbiAoKQpyZWN1cnNlKHZhbHVlKQplbmQpCmlmIG5vdCBvayB0aGVuCmlmIHR5cGUoZXJyKSA9PSAidGFibGUiIHRoZW4KZXJyID0gZXJyLm1zZwplbmQKZXJyb3IoZXJyLCAzKQplbmQKY29uZmlnc2V0LnJlbW92ZSh0YXJnZXQsIGZpZWxkLCByZW1vdmVzKQplbmQKZnVuY3Rpb24gYXBpLmNoZWNrVmFsdWUoZmllbGQsIHZhbHVlLCBraW5kKQppZiBub3QgZmllbGQuYWxsb3dlZCB0aGVuCnJldHVybiB2YWx1ZQplbmQKbG9jYWwgY2Fub25pY2FsLCByZXN1bHQKbG9jYWwgbG93ZXJWYWx1ZSA9IHZhbHVlOmxvd2VyKCkKaWYgZmllbGQuYWxpYXNlcyB0aGVuCmNhbm9uaWNhbCA9IGZpZWxkLmFsaWFzZXNbbG93ZXJWYWx1ZV0KZW5kCmlmIG5vdCBjYW5vbmljYWwgdGhlbgppZiB0eXBlKGZpZWxkLmFsbG93ZWQpID09ICJmdW5jdGlvbiIgdGhlbgpjYW5vbmljYWwgPSBmaWVsZC5hbGxvd2VkKHZhbHVlLCBraW5kIG9yICJzdHJpbmciKQplbHNlCmNhbm9uaWNhbCA9IGZpZWxkLmFsbG93ZWRbbG93ZXJWYWx1ZV0KZW5kCmVuZAppZiBub3QgY2Fub25pY2FsIHRoZW4KcmV0dXJuIG5pbCwgImludmFsaWQgdmFsdWUgJyIgLi4gdmFsdWUgLi4gIicgZm9yICIgLi4gZmllbGQubmFtZQplbmQKaWYgZmllbGQuZGVwcmVjYXRlZCBhbmQgZmllbGQuZGVwcmVjYXRlZFtjYW5vbmljYWxdIHRoZW4KbG9jYWwgaGFuZGxlciA9IGZpZWxkLmRlcHJlY2F0ZWRbY2Fub25pY2FsXQpoYW5kbGVyLmFkZChjYW5vbmljYWwpCmlmIGhhbmRsZXIubWVzc2FnZSBhbmQgYXBpLl9kZXByZWNhdGlvbnMgfj0gIm9mZiIgdGhlbgpsb2NhbCBjYWxsZXIgPSAgZmlsZWxpbmVpbmZvKDkpCmxvY2FsIGtleSA9IGZpZWxkLm5hbWUgLi4gIl8iIC4uIHZhbHVlIC4uICJfIiAuLiBjYWxsZXIKcC53YXJuT25jZShrZXksICJ0aGUgJXMgdmFsdWUgJXMgaGFzIGJlZW4gZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkLlxuICAgJXNcbiAgIEAlc1xuIiwgZmllbGQubmFtZSwgY2Fub25pY2FsLCBoYW5kbGVyLm1lc3NhZ2UsIGNhbGxlcikKaWYgYXBpLl9kZXByZWNhdGlvbnMgPT0gImVycm9yIiB0aGVuCnJldHVybiBuaWwsICJkZXByZWNhdGlvbiBlcnJvcnMgZW5hYmxlZCIKZW5kCmVuZAplbmQKcmV0dXJuIGNhbm9uaWNhbAplbmQKZnVuY3Rpb24gYXBpLnJlc2V0KCkKZm9yIGNvbnRhaW5lckNsYXNzIGluIHAuY29udGFpbmVyLmVhY2hDaGlsZENsYXNzKHAuZ2xvYmFsKSBkbwphcGkuc2NvcGUuZ2xvYmFsW2NvbnRhaW5lckNsYXNzLnBsdXJhbE5hbWVdID0ge30KZW5kCmVuZApwcmVtYWtlLmZpZWxkLmtpbmQoImFycmF5IiwgewpzdG9yZSA9IGZ1bmN0aW9uKGZpZWxkLCBjdXJyZW50LCB2YWx1ZSwgcHJvY2Vzc29yKQppZiB0eXBlKHZhbHVlKSB+PSAidGFibGUiIHRoZW4KdmFsdWUgPSB7IHZhbHVlIH0KZW5kCmZvciBpLCBpdGVtIGluIGlwYWlycyh2YWx1ZSkgZG8KdmFsdWVbaV0gPSBwcm9jZXNzb3IoZmllbGQsIG5pbCwgdmFsdWVbaV0pCmVuZApyZXR1cm4gdmFsdWUKZW5kLApjb21wYXJlID0gZnVuY3Rpb24oZmllbGQsIGEsIGIsIHByb2Nlc3NvcikKaWYgYSA9PSBuaWwgb3IgYiA9PSBuaWwgb3IgI2Egfj0gI2IgdGhlbgpyZXR1cm4gZmFsc2UKZW5kCmZvciBpID0gMSwgI2EgZG8KaWYgbm90IHByb2Nlc3NvcihmaWVsZCwgYVtpXSwgYltpXSkgdGhlbgpyZXR1cm4gZmFsc2UKZW5kCmVuZApyZXR1cm4gdHJ1ZQplbmQKfSkKcHJlbWFrZS5maWVsZC5raW5kKCJib29sZWFuIiwgewpzdG9yZSA9IGZ1bmN0aW9uKGZpZWxkLCBjdXJyZW50LCB2YWx1ZSwgcHJvY2Vzc29yKQpsb2NhbCBtYXBwaW5nID0gewpbImZhbHNlIl0gPSBmYWxzZSwKWyJubyJdID0gZmFsc2UsClsib2ZmIl0gPSBmYWxzZSwKWyJvbiJdID0gdHJ1ZSwKWyJ0cnVlIl0gPSB0cnVlLApbInllcyJdID0gdHJ1ZSwKfQppZiB0eXBlKHZhbHVlKSA9PSAic3RyaW5nIiB0aGVuCnZhbHVlID0gbWFwcGluZ1t2YWx1ZTpsb3dlcigpXQppZiB2YWx1ZSA9PSBuaWwgdGhlbgplcnJvciB7IG1zZz0iZXhwZWN0ZWQgYm9vbGVhbjsgZ290ICIgLi4gdmFsdWUgfQplbmQKcmV0dXJuIHZhbHVlCmVuZAppZiB0eXBlKHZhbHVlKSA9PSAiYm9vbGVhbiIgdGhlbgpyZXR1cm4gdmFsdWUKZW5kCmlmIHR5cGUodmFsdWUpID09ICJudW1iZXIiIHRoZW4KcmV0dXJuICh2YWx1ZSB+PSAwKQplbmQKcmV0dXJuICh2YWx1ZSB+PSBuaWwpCmVuZCwKY29tcGFyZSA9IGZ1bmN0aW9uKGZpZWxkLCBhLCBiLCBwcm9jZXNzb3IpCnJldHVybiAoYSA9PSBiKQplbmQKfSkKcHJlbWFrZS5maWVsZC5raW5kKCJkaXJlY3RvcnkiLCB7CnBhdGhzID0gdHJ1ZSwKc3RvcmUgPSBmdW5jdGlvbihmaWVsZCwgY3VycmVudCwgdmFsdWUsIHByb2Nlc3NvcikKcmV0dXJuIHBhdGguZ2V0YWJzb2x1dGUodmFsdWUpCmVuZCwKcmVtb3ZlID0gZnVuY3Rpb24oZmllbGQsIGN1cnJlbnQsIHZhbHVlLCBwcm9jZXNzb3IpCnJldHVybiBwYXRoLmdldGFic29sdXRlKHZhbHVlKQplbmQsCmNvbXBhcmUgPSBmdW5jdGlvbihmaWVsZCwgYSwgYiwgcHJvY2Vzc29yKQpyZXR1cm4gKGEgPT0gYikKZW5kLAp0cmFuc2xhdGUgPSBmdW5jdGlvbihmaWVsZCwgY3VycmVudCwgXywgcHJvY2Vzc29yKQppZiBjdXJyZW50OmZpbmQoIioiKSB0aGVuCnJldHVybiBvcy5tYXRjaGRpcnMoY3VycmVudCkKZW5kCnJldHVybiB7IGN1cnJlbnQgfQplbmQKfSkKcHJlbWFrZS5maWVsZC5raW5kKCJmaWxlIiwgewpwYXRocyA9IHRydWUsCnN0b3JlID0gZnVuY3Rpb24oZmllbGQsIGN1cnJlbnQsIHZhbHVlLCBwcm9jZXNzb3IpCnJldHVybiBwYXRoLmdldGFic29sdXRlKHZhbHVlKQplbmQsCnJlbW92ZSA9IGZ1bmN0aW9uKGZpZWxkLCBjdXJyZW50LCB2YWx1ZSwgcHJvY2Vzc29yKQpyZXR1cm4gcGF0aC5nZXRhYnNvbHV0ZSh2YWx1ZSkKZW5kLApjb21wYXJlID0gZnVuY3Rpb24oZmllbGQsIGEsIGIsIHByb2Nlc3NvcikKcmV0dXJuIChhID09IGIpCmVuZCwKdHJhbnNsYXRlID0gZnVuY3Rpb24oZmllbGQsIGN1cnJlbnQsIF8sIHByb2Nlc3NvcikKaWYgY3VycmVudDpmaW5kKCIqIikgdGhlbgpyZXR1cm4gb3MubWF0Y2hmaWxlcyhjdXJyZW50KQplbmQKcmV0dXJuIHsgY3VycmVudCB9CmVuZAp9KQpwcmVtYWtlLmZpZWxkLmtpbmQoImZ1bmN0aW9uIiwgewpzdG9yZSA9IGZ1bmN0aW9uKGZpZWxkLCBjdXJyZW50LCB2YWx1ZSwgcHJvY2Vzc29yKQpsb2NhbCB0ID0gdHlwZSh2YWx1ZSkKaWYgdCB+PSAiZnVuY3Rpb24iIHRoZW4KZXJyb3IgeyBtc2c9ImV4cGVjdGVkIGZ1bmN0aW9uOyBnb3QgIiAuLiB0IH0KZW5kCnJldHVybiB2YWx1ZQplbmQsCmNvbXBhcmUgPSBmdW5jdGlvbihmaWVsZCwgYSwgYiwgcHJvY2Vzc29yKQpyZXR1cm4gKGEgPT0gYikKZW5kCn0pCnByZW1ha2UuZmllbGQua2luZCgiaW50ZWdlciIsIHsKc3RvcmUgPSBmdW5jdGlvbihmaWVsZCwgY3VycmVudCwgdmFsdWUsIHByb2Nlc3NvcikKbG9jYWwgdCA9IHR5cGUodmFsdWUpCmlmIHQgfj0gIm51bWJlciIgdGhlbgplcnJvciB7IG1zZz0iZXhwZWN0ZWQgbnVtYmVyOyBnb3QgIiAuLiB0IH0KZW5kCmlmIG1hdGguZmxvb3IodmFsdWUpIH49IHZhbHVlIHRoZW4KZXJyb3IgeyBtc2c9ImV4cGVjdGVkIGludGVnZXI7IGdvdCAiIC4uIHRvc3RyaW5nKHZhbHVlKSB9CmVuZApyZXR1cm4gdmFsdWUKZW5kLApjb21wYXJlID0gZnVuY3Rpb24oZmllbGQsIGEsIGIsIHByb2Nlc3NvcikKcmV0dXJuIChhID09IGIpCmVuZAp9KQpsb2NhbCBmdW5jdGlvbiBzdG9yZUtleWVkKGZpZWxkLCBjdXJyZW50LCB2YWx1ZSwgcHJvY2Vzc29yKQpjdXJyZW50ID0gY3VycmVudCBvciB7fQpmb3IgaywgdiBpbiBwYWlycyh2YWx1ZSkgZG8KaWYgcHJvY2Vzc29yIHRoZW4KdiA9IHByb2Nlc3NvcihmaWVsZCwgY3VycmVudFtrXSwgdikKZW5kCmN1cnJlbnRba10gPSB2CmVuZApyZXR1cm4gY3VycmVudAplbmQKbG9jYWwgZnVuY3Rpb24gbWVyZ2VLZXllZChmaWVsZCwgY3VycmVudCwgdmFsdWUsIHByb2Nlc3NvcikKdmFsdWUgPSB2YWx1ZSBvciB7fQpmb3IgaywgdiBpbiBwYWlycyh2YWx1ZSkgZG8KY3VycmVudFtrXSA9IHYKZW5kCnJldHVybiBjdXJyZW50CmVuZApwcmVtYWtlLmZpZWxkLmtpbmQoImtleWVkIiwgewpzdG9yZSA9IHN0b3JlS2V5ZWQsCm1lcmdlID0gbWVyZ2VLZXllZCwKY29tcGFyZSA9IGZ1bmN0aW9uKGZpZWxkLCBhLCBiLCBwcm9jZXNzb3IpCmlmIGEgPT0gbmlsIG9yIGIgPT0gbmlsIHRoZW4KcmV0dXJuIGZhbHNlCmVuZApmb3IgayBpbiBwYWlycyhhKSBkbwppZiBub3QgcHJvY2Vzc29yKGZpZWxkLCBhW2tdLCBiW2tdKSB0aGVuCnJldHVybiBmYWxzZQplbmQKZW5kCnJldHVybiB0cnVlCmVuZCwKdHJhbnNsYXRlID0gZnVuY3Rpb24oZmllbGQsIGN1cnJlbnQsIF8sIHByb2Nlc3NvcikKaWYgbm90IHByb2Nlc3NvciB0aGVuCnJldHVybiB7IGN1cnJlbnQgfQplbmQKZm9yIGssIHYgaW4gcGFpcnMoY3VycmVudCkgZG8KY3VycmVudFtrXSA9IHByb2Nlc3NvcihmaWVsZCwgdiwgbmlsKVsxXQplbmQKcmV0dXJuIHsgY3VycmVudCB9CmVuZAp9KQpsb2NhbCBmdW5jdGlvbiBzdG9yZUxpc3RJdGVtKGN1cnJlbnQsIGl0ZW0sIGFsbG93RHVwbGljYXRlcykKaWYgbm90IGFsbG93RHVwbGljYXRlcyBhbmQgY3VycmVudFtpdGVtXSB0aGVuCnRhYmxlLnJlbW92ZShjdXJyZW50LCB0YWJsZS5pbmRleG9mKGN1cnJlbnQsIGl0ZW0pKQplbmQKdGFibGUuaW5zZXJ0KGN1cnJlbnQsIGl0ZW0pCmN1cnJlbnRbaXRlbV0gPSBpdGVtCmVuZApsb2NhbCBmdW5jdGlvbiBzdG9yZUxpc3QoZmllbGQsIGN1cnJlbnQsIHZhbHVlLCBwcm9jZXNzb3IpCmlmIHR5cGUodmFsdWUpID09ICJ0YWJsZSIgdGhlbgppZiAjdmFsdWUgPiAwIHRoZW4KZm9yIGkgPSAxLCAjdmFsdWUgZG8KY3VycmVudCA9IHN0b3JlTGlzdChmaWVsZCwgY3VycmVudCwgdmFsdWVbaV0sIHByb2Nlc3NvcikKZW5kCnJldHVybiBjdXJyZW50CmVuZAppZiB0YWJsZS5pc2VtcHR5KHZhbHVlKSB0aGVuCnJldHVybiBjdXJyZW50CmVuZAplbmQKY3VycmVudCA9IGN1cnJlbnQgb3Ige30KaWYgcHJvY2Vzc29yIHRoZW4KdmFsdWUgPSBwcm9jZXNzb3IoZmllbGQsIG5pbCwgdmFsdWUpCmVuZAppZiB0eXBlKHZhbHVlKSA9PSAidGFibGUiIHRoZW4KaWYgI3ZhbHVlID4gMCB0aGVuCmZvciBpID0gMSwgI3ZhbHVlIGRvCnN0b3JlTGlzdEl0ZW0oY3VycmVudCwgdmFsdWVbaV0sIGZpZWxkLmFsbG93RHVwbGljYXRlcykKZW5kCmVsc2VpZiBub3QgdGFibGUuaXNlbXB0eSh2YWx1ZSkgdGhlbgpzdG9yZUxpc3RJdGVtKGN1cnJlbnQsIHZhbHVlLCBmaWVsZC5hbGxvd0R1cGxpY2F0ZXMpCmVuZAplbHNlaWYgdmFsdWUgdGhlbgpzdG9yZUxpc3RJdGVtKGN1cnJlbnQsIHZhbHVlLCBmaWVsZC5hbGxvd0R1cGxpY2F0ZXMpCmVuZApyZXR1cm4gY3VycmVudAplbmQKbG9jYWwgZnVuY3Rpb24gbWVyZ2VMaXN0KGZpZWxkLCBjdXJyZW50LCB2YWx1ZSwgcHJvY2Vzc29yKQp2YWx1ZSA9IHZhbHVlIG9yIHt9CmZvciBpID0gMSwgI3ZhbHVlIGRvCnN0b3JlTGlzdEl0ZW0oY3VycmVudCwgdmFsdWVbaV0sIGZpZWxkLmFsbG93RHVwbGljYXRlcykKZW5kCnJldHVybiBjdXJyZW50CmVuZApwcmVtYWtlLmZpZWxkLmtpbmQoImxpc3QiLCB7CnN0b3JlID0gc3RvcmVMaXN0LApyZW1vdmUgPSBzdG9yZUxpc3QsCm1lcmdlID0gbWVyZ2VMaXN0LApjb21wYXJlID0gZnVuY3Rpb24oZmllbGQsIGEsIGIsIHByb2Nlc3NvcikKaWYgYSA9PSBuaWwgb3IgYiA9PSBuaWwgb3IgI2Egfj0gI2IgdGhlbgpyZXR1cm4gZmFsc2UKZW5kCmZvciBpID0gMSwgI2EgZG8KaWYgbm90IHByb2Nlc3NvcihmaWVsZCwgYVtpXSwgYltpXSkgdGhlbgpyZXR1cm4gZmFsc2UKZW5kCmVuZApyZXR1cm4gdHJ1ZQplbmQsCnRyYW5zbGF0ZSA9IGZ1bmN0aW9uKGZpZWxkLCBjdXJyZW50LCBfLCBwcm9jZXNzb3IpCmlmIG5vdCBwcm9jZXNzb3IgdGhlbgpyZXR1cm4geyBjdXJyZW50IH0KZW5kCmxvY2FsIHJldCA9IHt9CmZvciBfLCB2YWx1ZSBpbiBpcGFpcnMoY3VycmVudCkgZG8KZm9yIF8sIHByb2Nlc3NlZCBpbiBpcGFpcnMocHJvY2Vzc29yKGZpZWxkLCB2YWx1ZSwgbmlsKSkgZG8KdGFibGUuaW5zZXJ0KHJldCwgcHJvY2Vzc2VkKQplbmQKZW5kCnJldHVybiB7IHJldCB9CmVuZAp9KQpwcmVtYWtlLmZpZWxkLmtpbmQoIm1peGVkIiwgewpwYXRocyA9IHRydWUsCnN0b3JlID0gZnVuY3Rpb24oZmllbGQsIGN1cnJlbnQsIHZhbHVlLCBwcm9jZXNzb3IpCmlmIHR5cGUodmFsdWUpID09ICJzdHJpbmciIGFuZCB2YWx1ZTpmaW5kKCcvJywgbmlsLCB0cnVlKSB0aGVuCmlmIHN0cmluZy5zdWIodmFsdWUsIDEsIDIpIH49ICIleyIgdGhlbgp2YWx1ZSA9IHBhdGguZ2V0YWJzb2x1dGUodmFsdWUpCmVuZAplbmQKcmV0dXJuIHZhbHVlCmVuZCwKY29tcGFyZSA9IGZ1bmN0aW9uKGZpZWxkLCBhLCBiLCBwcm9jZXNzb3IpCnJldHVybiAoYSA9PSBiKQplbmQKfSkKcHJlbWFrZS5maWVsZC5raW5kKCJudW1iZXIiLCB7CnN0b3JlID0gZnVuY3Rpb24oZmllbGQsIGN1cnJlbnQsIHZhbHVlLCBwcm9jZXNzb3IpCmxvY2FsIHQgPSB0eXBlKHZhbHVlKQppZiB0IH49ICJudW1iZXIiIHRoZW4KZXJyb3IgeyBtc2c9ImV4cGVjdGVkIG51bWJlcjsgZ290ICIgLi4gdCB9CmVuZApyZXR1cm4gdmFsdWUKZW5kLApjb21wYXJlID0gZnVuY3Rpb24oZmllbGQsIGEsIGIsIHByb2Nlc3NvcikKcmV0dXJuIChhID09IGIpCmVuZAp9KQpwcmVtYWtlLmZpZWxkLmtpbmQoInBhdGgiLCB7CnBhdGhzID0gdHJ1ZSwKc3RvcmUgPSBmdW5jdGlvbihmaWVsZCwgY3VycmVudCwgdmFsdWUsIHByb2Nlc3NvcikKaWYgc3RyaW5nLnN1Yih2YWx1ZSwgMSwgMikgPT0gIiV7IiB0aGVuCnJldHVybiB2YWx1ZQplbmQKcmV0dXJuIHBhdGguZ2V0YWJzb2x1dGUodmFsdWUpCmVuZCwKY29tcGFyZSA9IGZ1bmN0aW9uKGZpZWxkLCBhLCBiLCBwcm9jZXNzb3IpCnJldHVybiAoYSA9PSBiKQplbmQKfSkKcHJlbWFrZS5maWVsZC5raW5kKCJzdHJpbmciLCB7CnN0b3JlID0gZnVuY3Rpb24oZmllbGQsIGN1cnJlbnQsIHZhbHVlLCBwcm9jZXNzb3IpCmlmIHR5cGUodmFsdWUpID09ICJ0YWJsZSIgdGhlbgplcnJvciB7IG1zZz0iZXhwZWN0ZWQgc3RyaW5nOyBnb3QgdGFibGUiIH0KZW5kCmlmIHZhbHVlIH49IG5pbCB0aGVuCmxvY2FsIGVycgp2YWx1ZSwgZXJyID0gYXBpLmNoZWNrVmFsdWUoZmllbGQsIHZhbHVlKQppZiBlcnIgdGhlbgplcnJvciB7IG1zZz1lcnIgfQplbmQKZW5kCnJldHVybiB2YWx1ZQplbmQsCmNvbXBhcmUgPSBmdW5jdGlvbihmaWVsZCwgYSwgYiwgcHJvY2Vzc29yKQpyZXR1cm4gKGEgPT0gYikKZW5kCn0pCnByZW1ha2UuZmllbGQua2luZCgidGFibGUiLCB7CnN0b3JlID0gZnVuY3Rpb24oZmllbGQsIGN1cnJlbnQsIHZhbHVlLCBwcm9jZXNzb3IpCmlmIHR5cGUodmFsdWUpIH49ICJ0YWJsZSIgdGhlbgp2YWx1ZSA9IHsgdmFsdWUgfQplbmQKcmV0dXJuIHZhbHVlCmVuZCwKY29tcGFyZSA9IGZ1bmN0aW9uKGZpZWxkLCBhLCBiLCBwcm9jZXNzb3IpCnJldHVybiB0cnVlCmVuZAp9KQpmdW5jdGlvbiBjb25maWd1cmF0aW9uKHRlcm1zKQppZiB0ZXJtcyB0aGVuCmlmICh0eXBlKHRlcm1zKSA9PSAidGFibGUiIGFuZCAjdGVybXMgPT0gMSBhbmQgdGVybXNbMV0gPT0gIioiKSBvciAodGVybXMgPT0gIioiKSB0aGVuCnRlcm1zID0gbmlsCmVuZApjb25maWdzZXQuYWRkYmxvY2soYXBpLnNjb3BlLmN1cnJlbnQsIHt0ZXJtc30sIG9zLmdldGN3ZCgpKQplbmQKcmV0dXJuIGFwaS5zY29wZS5jdXJyZW50CmVuZApmdW5jdGlvbiBmaWx0ZXIodGVybXMpCmlmIHRlcm1zIHRoZW4KaWYgKHR5cGUodGVybXMpID09ICJ0YWJsZSIgYW5kICN0ZXJtcyA9PSAxIGFuZCB0ZXJtc1sxXSA9PSAiKiIpIG9yICh0ZXJtcyA9PSAiKiIpIHRoZW4KdGVybXMgPSBuaWwKZW5kCmxvY2FsIG9rLCBlcnIgPSBjb25maWdzZXQuYWRkRmlsdGVyKGFwaS5zY29wZS5jdXJyZW50LCB7dGVybXN9LCBvcy5nZXRjd2QoKSkKaWYgbm90IG9rIHRoZW4KZXJyb3IoZXJyLCAyKQplbmQKZW5kCmVuZApmdW5jdGlvbiBuZXdhY3Rpb24oYSkKcC5hY3Rpb24uYWRkKGEpCmVuZApmdW5jdGlvbiBuZXdvcHRpb24ob3B0KQpwLm9wdGlvbi5hZGQob3B0KQplbmQKAGxvY2FsIHAgPSBwcmVtYWtlCnAuZ2xvYmFsID0gcC5hcGkuY29udGFpbmVyKCJnbG9iYWwiKQpsb2NhbCBnbG9iYWwgPSBwLmdsb2JhbApmdW5jdGlvbiBnbG9iYWwubmV3KG5hbWUpCnJldHVybiBwLmNvbnRhaW5lci5uZXcocC5nbG9iYWwsIG5hbWUpCmVuZApmdW5jdGlvbiBnbG9iYWwuYmFrZShzZWxmKQpwLmNvbnRhaW5lci5iYWtlQ2hpbGRyZW4oc2VsZikKZW5kCmZ1bmN0aW9uIGdsb2JhbC5lYWNoUnVsZSgpCmxvY2FsIHJvb3QgPSBwLmFwaS5yb290Q29udGFpbmVyKCkKcmV0dXJuIHAuY29udGFpbmVyLmVhY2hDaGlsZChyb290LCBwLnJ1bGUpCmVuZApmdW5jdGlvbiBnbG9iYWwuZWFjaFdvcmtzcGFjZSgpCmxvY2FsIHJvb3QgPSBwLmFwaS5yb290Q29udGFpbmVyKCkKcmV0dXJuIHAuY29udGFpbmVyLmVhY2hDaGlsZChyb290LCBwLndvcmtzcGFjZSkKZW5kCnAuYWxpYXMoZ2xvYmFsLCAiZWFjaFdvcmtzcGFjZSIsICJlYWNoU29sdXRpb24iKQpmdW5jdGlvbiBnbG9iYWwuZ2V0UnVsZShrZXkpCmxvY2FsIHJvb3QgPSBwLmFwaS5yb290Q29udGFpbmVyKCkKcmV0dXJuIHJvb3QucnVsZXNba2V5XQplbmQKZnVuY3Rpb24gZ2xvYmFsLmdldFJ1bGVGb3JGaWxlKGZuYW1lLCBydWxlcykKZm9yIHJ1bGUgaW4gZ2xvYmFsLmVhY2hSdWxlKCkgZG8KaWYgbm90IHJ1bGVzIG9yIHRhYmxlLmNvbnRhaW5zKHJ1bGVzLCBydWxlLm5hbWUpIHRoZW4KaWYgcGF0aC5oYXNleHRlbnNpb24oZm5hbWUsIHJ1bGUuZmlsZWV4dGVuc2lvbikgdGhlbgpyZXR1cm4gcnVsZQplbmQKZW5kCmVuZAplbmQKZnVuY3Rpb24gZ2xvYmFsLmdldFdvcmtzcGFjZShrZXkpCmxvY2FsIHJvb3QgPSBwLmFwaS5yb290Q29udGFpbmVyKCkKcmV0dXJuIHJvb3Qud29ya3NwYWNlc1trZXldCmVuZApwLmFsaWFzKGdsb2JhbCwgImdldFdvcmtzcGFjZSIsICJnZXRTb2x1dGlvbiIpCgAAAAAAbG9jYWwgcCA9IHByZW1ha2UKcC53b3Jrc3BhY2UgPSBwLmFwaS5jb250YWluZXIoIndvcmtzcGFjZSIsIHAuZ2xvYmFsKQpsb2NhbCB3b3Jrc3BhY2UgPSBwLndvcmtzcGFjZQpwLnNvbHV0aW9uID0gd29ya3NwYWNlCndvcmtzcGFjZS5hbGlhcyA9ICJzb2x1dGlvbiIKcC5hbGlhcyhfRywgIndvcmtzcGFjZSIsICJzb2x1dGlvbiIpCnAuYWxpYXMoX0csICJleHRlcm5hbHdvcmtzcGFjZSIsICJleHRlcm5hbHNvbHV0aW9uIikKZnVuY3Rpb24gd29ya3NwYWNlLm5ldyhuYW1lKQpsb2NhbCB3a3MgPSBwLmNvbnRhaW5lci5uZXcod29ya3NwYWNlLCBuYW1lKQpyZXR1cm4gd2tzCmVuZApmdW5jdGlvbiB3b3Jrc3BhY2UuZWFjaGNvbmZpZyhzZWxmKQpzZWxmID0gcC5vdmVuLmJha2VXb3Jrc3BhY2Uoc2VsZikKbG9jYWwgaSA9IDAKcmV0dXJuIGZ1bmN0aW9uKCkKaSA9IGkgKyAxCmlmIGkgPiAjc2VsZi5jb25maWdzIHRoZW4KcmV0dXJuIG5pbAplbHNlCnJldHVybiBzZWxmLmNvbmZpZ3NbaV0KZW5kCmVuZAplbmQKZnVuY3Rpb24gd29ya3NwYWNlLmVhY2hwcm9qZWN0KHNlbGYpCmxvY2FsIGkgPSAwCnJldHVybiBmdW5jdGlvbiAoKQppID0gaSArIDEKaWYgaSA8PSAjc2VsZi5wcm9qZWN0cyB0aGVuCnJldHVybiBwLndvcmtzcGFjZS5nZXRwcm9qZWN0KHNlbGYsIGkpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIHdvcmtzcGFjZS5maW5kcHJvamVjdChzZWxmLCBuYW1lKQpuYW1lID0gbmFtZTpsb3dlcigpCmZvciBfLCBwcmogaW4gaXBhaXJzKHNlbGYucHJvamVjdHMpIGRvCmlmIG5hbWUgPT0gcHJqLm5hbWU6bG93ZXIoKSB0aGVuCnJldHVybiBwcmoKZW5kCmVuZApyZXR1cm4gbmlsCmVuZApmdW5jdGlvbiB3b3Jrc3BhY2UuZ3JvdXB0cmVlKHNlbGYpCmlmIHNlbGYuZ3JvdXB0cmVlIHRoZW4KcmV0dXJuIHNlbGYuZ3JvdXB0cmVlCmVuZApsb2NhbCB0ciA9IHAudHJlZS5uZXcoKQpmb3IgcHJqIGluIHdvcmtzcGFjZS5lYWNocHJvamVjdChzZWxmKSBkbwpsb2NhbCBwcmpwYXRoID0gcGF0aC5qb2luKHByai5ncm91cCwgcHJqLm5hbWUpCmxvY2FsIG5vZGUgPSBwLnRyZWUuYWRkKHRyLCBwcmpwYXRoKQpub2RlLnByb2plY3QgPSBwcmoKZW5kCnAudHJlZS50cmF2ZXJzZSh0ciwgewpvbmJyYW5jaCA9IGZ1bmN0aW9uKG5vZGUpCm5vZGUudXVpZCA9IG9zLnV1aWQoImdyb3VwOiIgLi4gbm9kZS5wYXRoKQplbmQKfSkKc2VsZi5ncm91cHRyZWUgPSB0cgpyZXR1cm4gdHIKZW5kCmZ1bmN0aW9uIHdvcmtzcGFjZS5nZXRwcm9qZWN0KHNlbGYsIGlkeCkKc2VsZiA9IHAub3Zlbi5iYWtlV29ya3NwYWNlKHNlbGYpCnJldHVybiBzZWxmLnByb2plY3RzW2lkeF0KZW5kCmZ1bmN0aW9uIHdvcmtzcGFjZS5oYXNQcm9qZWN0KHNlbGYsIGZ1bmMpCnJldHVybiBwLmNvbnRhaW5lci5oYXNDaGlsZChzZWxmLCBwLnByb2plY3QsIGZ1bmMpCmVuZApmdW5jdGlvbiB3b3Jrc3BhY2UuZ2V0cmVsYXRpdmUoc2VsZiwgZmlsZW5hbWUpCmlmIHR5cGUoZmlsZW5hbWUpID09ICJ0YWJsZSIgdGhlbgpsb2NhbCByZXN1bHQgPSB7fQpmb3IgaSwgbmFtZSBpbiBpcGFpcnMoZmlsZW5hbWUpIGRvCmlmIG5hbWUgYW5kICNuYW1lID4gMCB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsIHdvcmtzcGFjZS5nZXRyZWxhdGl2ZShzZWxmLCBuYW1lKSkKZW5kCmVuZApyZXR1cm4gcmVzdWx0CmVsc2UKaWYgZmlsZW5hbWUgdGhlbgpyZXR1cm4gcGF0aC5nZXRyZWxhdGl2ZShzZWxmLmxvY2F0aW9uLCBmaWxlbmFtZSkKZW5kCmVuZAplbmQKAABsb2NhbCBwID0gcHJlbWFrZQpwLmdyb3VwID0gcC5hcGkuY29udGFpbmVyKCJncm91cCIsIHAud29ya3NwYWNlKQpsb2NhbCBncm91cCA9IHAuZ3JvdXAKZ3JvdXAucGxhY2Vob2xkZXIgPSB0cnVlCmZ1bmN0aW9uIGdyb3VwLm5ldyhuYW1lKQpyZXR1cm4gcC5jb250YWluZXIubmV3KGdyb3VwLCBuYW1lKQplbmQKAAAAAAAAbG9jYWwgcCA9IHByZW1ha2UKcC5wcm9qZWN0ID0gcC5hcGkuY29udGFpbmVyKCJwcm9qZWN0IiwgcC53b3Jrc3BhY2UsIHsgImNvbmZpZyIgfSkKbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApsb2NhbCB0cmVlID0gcC50cmVlCmV4dGVybmFsID0gZXh0ZXJuYWxwcm9qZWN0CmZ1bmN0aW9uIHByb2plY3QubmV3KG5hbWUpCmxvY2FsIHByaiA9IHAuY29udGFpbmVyLm5ldyhwcm9qZWN0LCBuYW1lKQpwcmoudXVpZCA9IG9zLnV1aWQobmFtZSkKaWYgcC5hcGkuc2NvcGUuZ3JvdXAgdGhlbgpwcmouZ3JvdXAgPSBwLmFwaS5zY29wZS5ncm91cC5uYW1lCmVsc2UKcHJqLmdyb3VwID0gIiIKZW5kCnJldHVybiBwcmoKZW5kCmZ1bmN0aW9uIHByb2plY3QuZWFjaGNvbmZpZyhwcmopCmxvY2FsIGNvbmZpZ3MgPSBwcmouX2NmZ2xpc3QKbG9jYWwgY291bnQgPSAjY29uZmlncwpsb2NhbCBzZWVuID0ge30KbG9jYWwgaSA9IDAKcmV0dXJuIGZ1bmN0aW9uICgpCmkgPSBpICsgMQppZiBpIDw9IGNvdW50IHRoZW4KbG9jYWwgY2ZnID0gcHJvamVjdC5nZXRjb25maWcocHJqLCBjb25maWdzW2ldWzFdLCBjb25maWdzW2ldWzJdKQppZiBub3Qgc2VlbltjZmddIHRoZW4Kc2VlbltjZmddID0gdHJ1ZQpyZXR1cm4gY2ZnCmVsc2UKaSA9IGkgKyAxCmVuZAplbmQKZW5kCmVuZApmdW5jdGlvbiBwcm9qZWN0LmZpbmRDbG9zZXN0TWF0Y2gocHJqLCBidWlsZGNmZywgcGxhdGZvcm0pCmJ1aWxkY2ZnID0gcHJvamVjdC5tYXBjb25maWcocHJqLCBidWlsZGNmZylbMV0KcGxhdGZvcm0gPSBwcm9qZWN0Lm1hcGNvbmZpZyhwcmosIHBsYXRmb3JtKVsxXQppZiBub3QgdGFibGUuY29udGFpbnMocHJqLmNvbmZpZ3VyYXRpb25zLCBidWlsZGNmZykgdGhlbgpidWlsZGNmZyA9IHByai5jb25maWd1cmF0aW9uc1sxXQplbmQKaWYgbm90IHRhYmxlLmNvbnRhaW5zKHByai5wbGF0Zm9ybXMsIHBsYXRmb3JtKSB0aGVuCnBsYXRmb3JtID0gcHJqLnBsYXRmb3Jtc1sxXQplbmQKcmV0dXJuIHByb2plY3QuZ2V0Y29uZmlnKHByaiwgYnVpbGRjZmcsIHBsYXRmb3JtKQplbmQKZnVuY3Rpb24gcHJvamVjdC5nZXRjb25maWcocHJqLCBidWlsZGNmZywgcGxhdGZvcm0pCmlmIG5vdCBidWlsZGNmZyB0aGVuCnJldHVybiBwcmoKZW5kCmxvY2FsIHBhaXJpbmcgPSBwcm9qZWN0Lm1hcGNvbmZpZyhwcmosIGJ1aWxkY2ZnLCBwbGF0Zm9ybSkKYnVpbGRjZmcgPSBwYWlyaW5nWzFdCnBsYXRmb3JtID0gcGFpcmluZ1syXQpsb2NhbCBrZXkgPSAoYnVpbGRjZmcgb3IgIioiKSAuLiAocGxhdGZvcm0gb3IgIiIpCnJldHVybiBwcmouY29uZmlnc1trZXldCmVuZApmdW5jdGlvbiBwcm9qZWN0LmdldGRlcGVuZGVuY2llcyhwcmosIG1vZGUpCmlmIG5vdCBwcmouZGVwZW5kZW5jaWVzIHRoZW4KcHJqLmRlcGVuZGVuY2llcyA9IHt9CmVuZApsb2NhbCBtID0gbW9kZSBvciAnYWxsJwpsb2NhbCByZXN1bHQgPSBwcmouZGVwZW5kZW5jaWVzW21dCmlmIHJlc3VsdCB0aGVuCnJldHVybiByZXN1bHQKZW5kCmxvY2FsIGZ1bmN0aW9uIGFkZF90b19wcm9qZWN0X2xpc3QoY2ZnLCBkZXBwcm9qLCByZXN1bHQpCmxvY2FsIGRlcCA9IHAud29ya3NwYWNlLmZpbmRwcm9qZWN0KGNmZy53b3Jrc3BhY2UsIGRlcHByb2opCmlmIGRlcCBhbmQgbm90IHRhYmxlLmNvbnRhaW5zKHJlc3VsdCwgZGVwKSB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsIGRlcCkKZW5kCmVuZApsb2NhbCBsaW5rT25seSA9IG0gPT0gJ2xpbmtPbmx5Jwpsb2NhbCBkZXBzT25seSA9IG0gPT0gJ2RlcGVuZE9ubHknCnJlc3VsdCA9IHt9CmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KaWYgbm90IGRlcHNPbmx5IHRoZW4KZm9yIF8sIGxpbmsgaW4gaXBhaXJzKGNmZy5saW5rcykgZG8KaWYgbGluayB+PSBwcmoubmFtZSB0aGVuCmFkZF90b19wcm9qZWN0X2xpc3QoY2ZnLCBsaW5rLCByZXN1bHQpCmVuZAplbmQKZW5kCmlmIG5vdCBsaW5rT25seSB0aGVuCmZvciBfLCBkZXBwcm9qIGluIGlwYWlycyhjZmcuZGVwZW5kc29uKSBkbwphZGRfdG9fcHJvamVjdF9saXN0KGNmZywgZGVwcHJvaiwgcmVzdWx0KQplbmQKZW5kCmVuZApwcmouZGVwZW5kZW5jaWVzW21dID0gcmVzdWx0CnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIHByb2plY3QuZ2V0Zmlyc3Rjb25maWcocHJqKQpsb2NhbCBpdGVyID0gcHJvamVjdC5lYWNoY29uZmlnKHByaikKbG9jYWwgZmlyc3QgPSBpdGVyKCkKcmV0dXJuIGZpcnN0CmVuZApmdW5jdGlvbiBwcm9qZWN0LmdldHJlbGF0aXZlKHByaiwgZmlsZW5hbWUpCmlmIHR5cGUoZmlsZW5hbWUpID09ICJ0YWJsZSIgdGhlbgpsb2NhbCByZXN1bHQgPSB7fQpmb3IgaSwgbmFtZSBpbiBpcGFpcnMoZmlsZW5hbWUpIGRvCnJlc3VsdFtpXSA9IHByb2plY3QuZ2V0cmVsYXRpdmUocHJqLCBuYW1lKQplbmQKcmV0dXJuIHJlc3VsdAplbHNlCmlmIGZpbGVuYW1lIHRoZW4KcmV0dXJuIHBhdGguZ2V0cmVsYXRpdmUocHJqLmxvY2F0aW9uLCBmaWxlbmFtZSkKZW5kCmVuZAplbmQKZnVuY3Rpb24gcHJvamVjdC5nZXRzb3VyY2V0cmVlKHByaiwgc29ydGVyKQppZiBwcmouXy5zb3VyY2V0cmVlIHRoZW4KcmV0dXJuIHByai5fLnNvdXJjZXRyZWUKZW5kCmxvY2FsIHRyID0gdHJlZS5uZXcocHJqLm5hbWUpCnRhYmxlLmZvcmVhY2hpKHByai5fLmZpbGVzLCBmdW5jdGlvbihmY2ZnKQppZiBmY2ZnLmdlbmVyYXRlZCB0aGVuCnJldHVybjsKZW5kCmxvY2FsIGZsYWdzCmlmIGZjZmcudnBhdGggfj0gZmNmZy5yZWxwYXRoIHRoZW4KZmxhZ3MgPSB7IHRyaW0gPSBmYWxzZSB9CmVuZApsb2NhbCBwYXJlbnQgPSB0cmVlLmFkZCh0ciwgcGF0aC5nZXRkaXJlY3RvcnkoZmNmZy52cGF0aCksIGZsYWdzKQpsb2NhbCBub2RlID0gdHJlZS5pbnNlcnQocGFyZW50LCB0cmVlLm5ldyhwYXRoLmdldG5hbWUoZmNmZy52cGF0aCkpKQpzZXRtZXRhdGFibGUobm9kZSwgeyBfX2luZGV4ID0gZmNmZyB9KQplbmQpCnRhYmxlLmZvcmVhY2hpKHByai5fLmZpbGVzLCBmdW5jdGlvbihmY2ZnKQppZiBub3QgZmNmZy5nZW5lcmF0ZWQgdGhlbgpyZXR1cm47CmVuZApsb2NhbCBwYXJlbnQgPSB0cmVlLmFkZCh0ciwgcGF0aC5nZXRkaXJlY3RvcnkoZmNmZy5kZXBlbmRzT24udnBhdGgpKQpsb2NhbCBub2RlID0gdHJlZS5pbnNlcnQocGFyZW50LCB0cmVlLm5ldyhwYXRoLmdldG5hbWUoZmNmZy52cGF0aCkpKQpzZXRtZXRhdGFibGUobm9kZSwgeyBfX2luZGV4ID0gZmNmZyB9KQplbmQpCnRyZWUudHJpbXJvb3QodHIpCnRyZWUuc29ydCh0ciwgc29ydGVyKQpwcmouXy5zb3VyY2V0cmVlID0gdHIKcmV0dXJuIHRyCmVuZApmdW5jdGlvbiBwcm9qZWN0LmdldHZwYXRoKHByaiwgYWJzcGF0aCkKbG9jYWwgdnBhdGggPSBhYnNwYXRoCmxvY2FsIGZuYW1lID0gcGF0aC5nZXRuYW1lKGFic3BhdGgpCmxvY2FsIG1heCA9IGFic3BhdGg6bGVuKCkgLSBmbmFtZTpsZW4oKQpmb3IgXywgdnBhdGhzIGluIGlwYWlycyhwcmoudnBhdGhzKSBkbwpmb3IgcmVwbGFjZW1lbnQsIHBhdHRlcm5zIGluIHBhaXJzKHZwYXRocykgZG8KZm9yIF8sIHBhdHRlcm4gaW4gaXBhaXJzKHBhdHRlcm5zKSBkbwpsb2NhbCBpID0gYWJzcGF0aDpmaW5kKHBhdGgud2lsZGNhcmRzKHBhdHRlcm4pKQppZiBpID09IDEgdGhlbgppID0gcGF0dGVybjpmaW5kKCIqIiwgMSwgdHJ1ZSkgb3IgKHBhdHRlcm46bGVuKCkgKyAxKQpsb2NhbCBsZWFmCmlmIGkgPCBtYXggdGhlbgpsZWFmID0gYWJzcGF0aDpzdWIoaSkKZWxzZQpsZWFmID0gZm5hbWUKZW5kCmlmIGxlYWY6c3RhcnRzd2l0aCgiLyIpIHRoZW4KbGVhZiA9IGxlYWY6c3ViKDIpCmVuZApsb2NhbCBzdGVtID0gIiIKaWYgcmVwbGFjZW1lbnQ6bGVuKCkgPiAwIHRoZW4Kc3RlbSwgc3RhcnMgPSByZXBsYWNlbWVudDpnc3ViKCIlKiIsICIiKQppZiBzdGFycyA9PSAwIHRoZW4KbGVhZiA9IHBhdGguZ2V0bmFtZShsZWFmKQplbmQKZWxzZQpsZWFmID0gcGF0aC5nZXRuYW1lKGxlYWYpCmVuZAp2cGF0aCA9IHBhdGguam9pbihzdGVtLCBsZWFmKQpyZXR1cm4gdnBhdGgKZW5kCmVuZAplbmQKZW5kCnJldHVybiB2cGF0aAplbmQKZnVuY3Rpb24gcHJvamVjdC5oYXNDb25maWcocHJqLCBmdW5jKQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmlmIGZ1bmMoY2ZnKSB0aGVuCnJldHVybiB0cnVlCmVuZAplbmQKZW5kCmZ1bmN0aW9uIHByb2plY3QuaGFzZmlsZShwcmosIGZpbGVuYW1lKQpyZXR1cm4gKHByai5fLmZpbGVzW2ZpbGVuYW1lXSB+PSBuaWwpCmVuZApmdW5jdGlvbiBwcm9qZWN0LmlzZG90bmV0KHByaikKcmV0dXJuIHAubGFuZ3VhZ2VzLmlzZG90bmV0KHByai5sYW5ndWFnZSkKZW5kCmZ1bmN0aW9uIHByb2plY3QuaXNjKHByaikKcmV0dXJuIHAubGFuZ3VhZ2VzLmlzYyhwcmoubGFuZ3VhZ2UpCmVuZApmdW5jdGlvbiBwcm9qZWN0LmlzY3BwKHByaikKcmV0dXJuIHAubGFuZ3VhZ2VzLmlzY3BwKHByai5sYW5ndWFnZSkKZW5kCmZ1bmN0aW9uIHByb2plY3QuaXNuYXRpdmUocHJqKQpyZXR1cm4gcHJvamVjdC5pc2MocHJqKSBvciBwcm9qZWN0LmlzY3BwKHByaikKZW5kCmZ1bmN0aW9uIHByb2plY3QubWFwY29uZmlnKHByaiwgYnVpbGRjZmcsIHBsYXRmb3JtKQpsb2NhbCBwYWlyaW5nID0geyBidWlsZGNmZywgcGxhdGZvcm0gfQpsb2NhbCB0ZXN0cGF0dGVybiA9IGZ1bmN0aW9uKHBhdHRlcm4sIHBhaXJpbmcsIGkpCmxvY2FsIGogPSAxCndoaWxlIGkgPD0gI3BhaXJpbmcgYW5kIGogPD0gI3BhdHRlcm4gZG8KaWYgcGFpcmluZ1tpXSB+PSBwYXR0ZXJuW2pdIHRoZW4KcmV0dXJuIGZhbHNlCmVuZAppID0gaSArIDEKaiA9IGogKyAxCmVuZApyZXR1cm4gdHJ1ZQplbmQKbG9jYWwgbWFwcyA9IHByai5jb25maWdtYXAgb3Ige30KZm9yIG1pID0gMSwgI21hcHMgZG8KZm9yIHBhdHRlcm4sIHJlcGxhY2VtZW50cyBpbiBwYWlycyhtYXBzW21pXSkgZG8KaWYgdHlwZShwYXR0ZXJuKSB+PSAidGFibGUiIHRoZW4KcGF0dGVybiA9IHsgcGF0dGVybiB9CmVuZApmb3IgaSA9IDEsICNwYWlyaW5nIGRvCmlmIHRlc3RwYXR0ZXJuKHBhdHRlcm4sIHBhaXJpbmcsIGkpIHRoZW4KaWYgI3BhdHRlcm4gPT0gMSBhbmQgI3JlcGxhY2VtZW50cyA9PSAxIHRoZW4KcGFpcmluZ1tpXSA9IHJlcGxhY2VtZW50c1sxXQplbHNlCnBhaXJpbmcgPSB7IHJlcGxhY2VtZW50c1sxXSwgcmVwbGFjZW1lbnRzWzJdIH0KZW5kCmVuZAplbmQKZW5kCmVuZApyZXR1cm4gcGFpcmluZwplbmQKZnVuY3Rpb24gcHJvamVjdC5zeXN0ZW12ZXJzaW9uKHByaikKaWYgcHJqLnN5c3RlbXZlcnNpb24gfj0gbmlsIHRoZW4KbG9jYWwgdmFsdWVzID0gc3RyaW5nLmV4cGxvZGUocHJqLnN5c3RlbXZlcnNpb24sICI6IiwgdHJ1ZSkKcmV0dXJuIHZhbHVlc1sxXSwgdmFsdWVzWzJdCmVuZAplbmQKAAAAAGxvY2FsIHAgPSBwcmVtYWtlCnAuY29uZmlnID0ge30KbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApsb2NhbCBjb25maWcgPSBwLmNvbmZpZwpmdW5jdGlvbiBjb25maWcuYnVpbGR0YXJnZXRpbmZvKGNmZywga2luZCwgZmllbGQpCmxvY2FsIGJhc2VkaXIgPSBjZmcucHJvamVjdC5sb2NhdGlvbgpsb2NhbCB0YXJnZXRkaXIKaWYgY2ZnLnBsYXRmb3JtIHRoZW4KdGFyZ2V0ZGlyID0gcGF0aC5qb2luKGJhc2VkaXIsICdiaW4nLCBjZmcucGxhdGZvcm0sIGNmZy5idWlsZGNmZykKZWxzZQp0YXJnZXRkaXIgPSBwYXRoLmpvaW4oYmFzZWRpciwgJ2JpbicsIGNmZy5idWlsZGNmZykKZW5kCmxvY2FsIGRpcmVjdG9yeSA9IGNmZ1tmaWVsZC4uImRpciJdIG9yIGNmZy50YXJnZXRkaXIgb3IgdGFyZ2V0ZGlyCmxvY2FsIGJhc2VuYW1lID0gY2ZnW2ZpZWxkLi4ibmFtZSJdIG9yIGNmZy50YXJnZXRuYW1lIG9yIGNmZy5wcm9qZWN0Lm5hbWUKbG9jYWwgcHJlZml4ID0gY2ZnW2ZpZWxkLi4icHJlZml4Il0gb3IgY2ZnLnRhcmdldHByZWZpeCBvciAiIgpsb2NhbCBzdWZmaXggPSBjZmdbZmllbGQuLiJzdWZmaXgiXSBvciBjZmcudGFyZ2V0c3VmZml4IG9yICIiCmxvY2FsIGV4dGVuc2lvbiA9IGNmZ1tmaWVsZC4uImV4dGVuc2lvbiJdIG9yIGNmZy50YXJnZXRleHRlbnNpb24gb3IgIiIKbG9jYWwgYnVuZGxlbmFtZSA9ICIiCmxvY2FsIGJ1bmRsZXBhdGggPSAiIgppZiBjZmcuc3lzdGVtID09IHAuTUFDT1NYIGFuZCBraW5kID09IHAuV0lORE9XRURBUFAgdGhlbgpidW5kbGVuYW1lID0gYmFzZW5hbWUgLi4gIi5hcHAiCmJ1bmRsZXBhdGggPSBwYXRoLmpvaW4oYnVuZGxlbmFtZSwgIkNvbnRlbnRzL01hY09TIikKZW5kCmxvY2FsIGluZm8gPSB7fQppbmZvLmRpcmVjdG9yeSAgPSBkaXJlY3RvcnkKaW5mby5iYXNlbmFtZSAgID0gYmFzZW5hbWUgLi4gc3VmZml4CmluZm8ubmFtZSAgICAgICA9IHByZWZpeCAuLiBpbmZvLmJhc2VuYW1lIC4uIGV4dGVuc2lvbgppbmZvLmV4dGVuc2lvbiAgPSBleHRlbnNpb24KaW5mby5hYnNwYXRoICAgID0gcGF0aC5qb2luKGRpcmVjdG9yeSwgaW5mby5uYW1lKQppbmZvLmZ1bGxwYXRoICAgPSBpbmZvLmFic3BhdGgKaW5mby5idW5kbGVuYW1lID0gYnVuZGxlbmFtZQppbmZvLmJ1bmRsZXBhdGggPSBwYXRoLmpvaW4oZGlyZWN0b3J5LCBidW5kbGVwYXRoKQppbmZvLnByZWZpeCAgICAgPSBwcmVmaXgKaW5mby5zdWZmaXggICAgID0gc3VmZml4CnJldHVybiBpbmZvCmVuZApmdW5jdGlvbiBjb25maWcuY2FuTGluayhjZmcsIHRhcmdldCwgbGlua2FnZSkKaWYgdHlwZSh0YXJnZXQpIH49ICJzdHJpbmciIHRoZW4KaWYgdGFyZ2V0LmtpbmQgfj0gIlNoYXJlZExpYiIgYW5kIHRhcmdldC5raW5kIH49ICJTdGF0aWNMaWIiIHRoZW4KcmV0dXJuIGZhbHNlCmVuZApsb2NhbCBjZmdNYW5hZ2VkID0gcHJvamVjdC5pc2RvdG5ldChjZmcucHJvamVjdCkgb3IgKGNmZy5jbHIgfj0gcC5PRkYpCmxvY2FsIHRndE1hbmFnZWQgPSBwcm9qZWN0LmlzZG90bmV0KHRhcmdldC5wcm9qZWN0KSBvciAodGFyZ2V0LmNsciB+PSBwLk9GRikKcmV0dXJuIChjZmdNYW5hZ2VkID09IHRndE1hbmFnZWQpCmVuZAppZiBwcm9qZWN0LmlzZG90bmV0KGNmZy5wcm9qZWN0KSB0aGVuCnJldHVybiB0cnVlCmVuZApsb2NhbCBpc01hbmFnZWQgPSAocGF0aC5nZXRleHRlbnNpb24odGFyZ2V0KSA9PSAiLmRsbCIpCmlmIGlzTWFuYWdlZCBhbmQgY2ZnLmNsciA9PSBwLk9GRiB0aGVuCnJldHVybiBmYWxzZQplbmQKcmV0dXJuIChpc01hbmFnZWQpID09IChsaW5rYWdlID09ICJtYW5hZ2VkIikKZW5kCmZ1bmN0aW9uIGNvbmZpZy5jYW5MaW5rSW5jcmVtZW50YWwoY2ZnKQppZiBjZmcua2luZCA9PSAiU3RhdGljTGliIgpvciBjb25maWcuaXNPcHRpbWl6ZWRCdWlsZChjZmcpCm9yIGNmZy5mbGFncy5Ob0luY3JlbWVudGFsTGluayB0aGVuCnJldHVybiBmYWxzZQplbmQKcmV0dXJuIHRydWUKZW5kCmZ1bmN0aW9uIGNvbmZpZy5maW5kZmlsZShjZmcsIGV4dCkKZm9yIF8sIGZuYW1lIGluIGlwYWlycyhjZmcuZmlsZXMpIGRvCmlmIGZuYW1lOmVuZHN3aXRoKGV4dCkgdGhlbgpyZXR1cm4gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgZm5hbWUpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIGNvbmZpZy5nZXRsaW5raW5mbyhjZmcpCmxvY2FsIGtpbmQgPSBjZmcua2luZAppZiBwcm9qZWN0LmlzbmF0aXZlKGNmZy5wcm9qZWN0KSAgdGhlbgppZiBjZmcuc3lzdGVtID09IHAuV0lORE9XUyBhbmQga2luZCA9PSBwLlNIQVJFRExJQiBhbmQgbm90IGNmZy5mbGFncy5Ob0ltcG9ydExpYiB0aGVuCmtpbmQgPSBwLlNUQVRJQ0xJQgplbmQKZW5kCnJldHVybiBjb25maWcuYnVpbGR0YXJnZXRpbmZvKGNmZywga2luZCwgImltcGxpYiIpCmVuZApmdW5jdGlvbiBjb25maWcuZ2V0bGlua3MoY2ZnLCBraW5kLCBwYXJ0LCBsaW5rYWdlKQpsb2NhbCByZXN1bHQgPSB7fQppZiBwYXJ0ID09ICJkaXJlY3RvcnkiIHRoZW4KdGFibGUuZm9yZWFjaGkoY2ZnLmxpYmRpcnMsIGZ1bmN0aW9uKGRpcikKdGFibGUuaW5zZXJ0KHJlc3VsdCwgcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgZGlyKSkKZW5kKQplbmQKZm9yIGkgPSAxLCAjY2ZnLmxpbmtzIGRvCmxvY2FsIGxpbmsgPSBjZmcubGlua3NbaV0KbG9jYWwgaXRlbQpsb2NhbCBwcmogPSBwLndvcmtzcGFjZS5maW5kcHJvamVjdChjZmcud29ya3NwYWNlLCBsaW5rKQppZiBwcmogYW5kIGtpbmQgfj0gInN5c3RlbSIgdGhlbgpsb2NhbCBwcmpjZmcgPSBwcm9qZWN0LmdldGNvbmZpZyhwcmosIGNmZy5idWlsZGNmZywgY2ZnLnBsYXRmb3JtKQppZiBwcmpjZmcgYW5kIChraW5kID09ICJkZXBlbmRlbmNpZXMiIG9yIGNvbmZpZy5jYW5MaW5rKGNmZywgcHJqY2ZnKSkgdGhlbgppZiBwYXJ0ID09ICJvYmplY3QiIHRoZW4KaXRlbSA9IHByamNmZwplbHNlCml0ZW0gPSBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBwcmpjZmcubGlua3RhcmdldC5mdWxscGF0aCkKZW5kCmVuZAplbHNlaWYgbm90IHByaiBhbmQgKGtpbmQgPT0gInN5c3RlbSIgb3Iga2luZCA9PSAiYWxsIikgdGhlbgppZiBjb25maWcuY2FuTGluayhjZmcsIGxpbmssIGxpbmthZ2UpIHRoZW4KaXRlbSA9IGxpbmsKaWYgaXRlbTpmaW5kKCIvIiwgbmlsLCB0cnVlKSB0aGVuCml0ZW0gPSBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBpdGVtKQplbmQKZW5kCmVuZAppZiBpdGVtIGFuZCBpdGVtIH49IGNmZyB0aGVuCmlmIHBhcnQgPT0gImRpcmVjdG9yeSIgdGhlbgppdGVtID0gcGF0aC5nZXRkaXJlY3RvcnkoaXRlbSkKaWYgaXRlbSA9PSAiLiIgdGhlbgppdGVtID0gbmlsCmVuZAplbHNlaWYgcGFydCA9PSAibmFtZSIgdGhlbgppdGVtID0gcGF0aC5nZXRuYW1lKGl0ZW0pCmVsc2VpZiBwYXJ0ID09ICJiYXNlbmFtZSIgdGhlbgppdGVtID0gcGF0aC5nZXRiYXNlbmFtZShpdGVtKQplbHNlaWYgdHlwZShwYXJ0KSA9PSAiZnVuY3Rpb24iIHRoZW4KcGFydChsaW5rLCBpdGVtKQplbmQKZW5kCmlmIGl0ZW0gYW5kIG5vdCB0YWJsZS5jb250YWlucyhyZXN1bHQsIGl0ZW0pIHRoZW4KdGFibGUuaW5zZXJ0KHJlc3VsdCwgaXRlbSkKZW5kCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBjb25maWcuZ2V0cnVudGltZShjZmcpCmxvY2FsIGxpbmthZ2UgPSBpaWYoY2ZnLmZsYWdzLlN0YXRpY1J1bnRpbWUsICJTdGF0aWMiLCAiU2hhcmVkIikKaWYgbm90IGNmZy5ydW50aW1lIHRoZW4KcmV0dXJuIGxpbmthZ2UgLi4gaWlmKGNvbmZpZy5pc0RlYnVnQnVpbGQoY2ZnKSwgIkRlYnVnIiwgIlJlbGVhc2UiKQplbHNlCnJldHVybiBsaW5rYWdlIC4uIGNmZy5ydW50aW1lCmVuZAplbmQKZnVuY3Rpb24gY29uZmlnLmdldHRhcmdldGluZm8oY2ZnKQpyZXR1cm4gY29uZmlnLmJ1aWxkdGFyZ2V0aW5mbyhjZmcsIGNmZy5raW5kLCAidGFyZ2V0IikKZW5kCmZ1bmN0aW9uIGNvbmZpZy5oYXNGaWxlKHNlbGYsIHRlc3RmbikKbG9jYWwgZmlsZXMgPSBzZWxmLmZpbGVzCmZvciBpID0gMSwgI2ZpbGVzIGRvCmlmIHRlc3RmbihmaWxlc1tpXSkgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKZW5kCnJldHVybiBmYWxzZQplbmQKZnVuY3Rpb24gY29uZmlnLmlzQ29weUxvY2FsKGNmZywgbGlua25hbWUsIGRlZmF1bHQpCmlmIGNmZy5mbGFncy5Ob0NvcHlMb2NhbCB0aGVuCnJldHVybiBmYWxzZQplbmQKaWYgI2NmZy5jb3B5bG9jYWwgPiAwIHRoZW4KcmV0dXJuIHRhYmxlLmNvbnRhaW5zKGNmZy5jb3B5bG9jYWwsIGxpbmtuYW1lKQplbmQKcmV0dXJuIGRlZmF1bHQKZW5kCmZ1bmN0aW9uIGNvbmZpZy5pc0RlYnVnQnVpbGQoY2ZnKQpyZXR1cm4gY2ZnLnN5bWJvbHMgfj0gbmlsIGFuZApjZmcuc3ltYm9scyB+PSBwLk9GRiBhbmQKY2ZnLnN5bWJvbHMgfj0gIkRlZmF1bHQiIGFuZApub3QgY29uZmlnLmlzT3B0aW1pemVkQnVpbGQoY2ZnKQplbmQKZnVuY3Rpb24gY29uZmlnLmlzT3B0aW1pemVkQnVpbGQoY2ZnKQpyZXR1cm4gY2ZnLm9wdGltaXplIH49IG5pbCBhbmQgY2ZnLm9wdGltaXplIH49IHAuT0ZGIGFuZCBjZmcub3B0aW1pemUgfj0gIkRlYnVnIgplbmQKZnVuY3Rpb24gY29uZmlnLmxpbmtzVG9Qcm9qZWN0KGNmZywgcHJqTmFtZSkKcHJqTmFtZSA9IHByak5hbWU6bG93ZXIoKQpsb2NhbCBuID0gI2NmZy5saW5rcwpmb3IgaSA9IDEsbiBkbwppZiBjZmcubGlua3NbaV06bG93ZXIoKSA9PSBwcmpOYW1lIHRoZW4KcmV0dXJuIHRydWUKZW5kCmVuZAplbmQKZnVuY3Rpb24gY29uZmlnLm1hcEZsYWdzKGNmZywgbWFwcGluZ3MpCmxvY2FsIGZsYWdzID0ge30KbG9jYWwgZnVuY3Rpb24gYWRkKHJlcGxhY2VtZW50KQppZiB0eXBlKHJlcGxhY2VtZW50KSA9PSAiZnVuY3Rpb24iIHRoZW4KcmVwbGFjZW1lbnQgPSByZXBsYWNlbWVudChjZmcpCmVuZAp0YWJsZS5pbnNlcnRmbGF0KGZsYWdzLCByZXBsYWNlbWVudCkKZW5kCmZvciBmaWVsZCBpbiBwLmZpZWxkLmVhY2hPcmRlcmVkKCkgZG8KbG9jYWwgbWFwID0gbWFwcGluZ3NbZmllbGQubmFtZV0KaWYgbWFwIHRoZW4KbG9jYWwgdmFsdWVzID0gY2ZnW2ZpZWxkLm5hbWVdCmlmIHR5cGUodmFsdWVzKSA9PSAiYm9vbGVhbiIgdGhlbgp2YWx1ZXMgPSBpaWYodmFsdWVzLCAiT24iLCAiT2ZmIikKZW5kCmlmIHR5cGUodmFsdWVzKSB+PSAidGFibGUiIHRoZW4KdmFsdWVzID0geyB2YWx1ZXMgfQplbmQKbG9jYWwgZm91bmRWYWx1ZSA9IGZhbHNlCnRhYmxlLmZvcmVhY2hpKHZhbHVlcywgZnVuY3Rpb24odmFsdWUpCmxvY2FsIHJlcGxhY2VtZW50ID0gbWFwW3ZhbHVlXQppZiByZXBsYWNlbWVudCB+PSBuaWwgdGhlbgpmb3VuZFZhbHVlID0gdHJ1ZQphZGQocmVwbGFjZW1lbnQpCmVuZAplbmQpCmlmIG5vdCBmb3VuZFZhbHVlIHRoZW4KYWRkKG1hcC5fKQplbmQKZm9yIGtleSwgcmVwbGFjZW1lbnQgaW4gcGFpcnMobWFwKSBkbwppZiAja2V5ID4gMSBhbmQga2V5OnN0YXJ0c3dpdGgoIl8iKSB0aGVuCmtleSA9IGtleTpzdWIoMikKaWYgdmFsdWVzW2tleV0gPT0gbmlsIHRoZW4KYWRkKHJlcGxhY2VtZW50KQplbmQKZW5kCmVuZAplbmQKZW5kCnJldHVybiBmbGFncwplbmQKZnVuY3Rpb24gY29uZmlnLm5vcm1hbGl6ZShjZmcpCmlmIGNmZyBhbmQgY2ZnLmNvbmZpZyB+PSBuaWwgdGhlbgpyZXR1cm4gY2ZnLmNvbmZpZywgY2ZnCmVsc2UKcmV0dXJuIGNmZywgbmlsCmVuZAplbmQKZnVuY3Rpb24gY29uZmlnLnRvb2xzZXQoY2ZnKQppZiBjZmcudG9vbHNldCB0aGVuCnJldHVybiBwLnRvb2xzLmNhbm9uaWNhbChjZmcudG9vbHNldCkKZW5kCmVuZAoAAAAAbG9jYWwgcCA9IHByZW1ha2UKcC5maWxlY29uZmlnID0ge30KbG9jYWwgZmlsZWNvbmZpZyA9IHAuZmlsZWNvbmZpZwpsb2NhbCBjb250ZXh0ID0gcC5jb250ZXh0CmxvY2FsIHByb2plY3QgPSBwLnByb2plY3QKZmlsZWNvbmZpZy5mY2ZnX210ID0ge30KZmlsZWNvbmZpZy5mc3ViX210ID0ge30KZnVuY3Rpb24gZmlsZWNvbmZpZy5uZXcoZm5hbWUsIHByaikKbG9jYWwgZW52aXJvbiA9IHsgfQpsb2NhbCBmY2ZnID0gY29udGV4dC5uZXcocHJqLCBlbnZpcm9uKQpjb250ZXh0LmNvcHlGaWx0ZXJzKGZjZmcsIHByaikKY29udGV4dC5hZGRGaWx0ZXIoZmNmZywgImZpbGVzIiwgZm5hbWU6bG93ZXIoKSkKZm9yIGtleSwgdmFsdWUgaW4gcGFpcnMocHJqLmVudmlyb24pIGRvCmVudmlyb25ba2V5XSA9IHZhbHVlCmVuZAplbnZpcm9uLmZpbGUgPSBmY2ZnCmNvbnRleHQuY29tcGlsZShmY2ZnKQpmY2ZnLnByb2plY3QgICA9IHByagpmY2ZnLndvcmtzcGFjZSA9IHByai53b3Jrc3BhY2UKZmNmZy5jb25maWdzICAgPSB7fQpmY2ZnLmFic3BhdGggICA9IGZuYW1lCmNvbnRleHQuYmFzZWRpcihmY2ZnLCBwcmoubG9jYXRpb24pCnNldG1ldGF0YWJsZShmY2ZnLCBmaWxlY29uZmlnLmZjZmdfbXQpCmxvY2FsIHZwYXRoID0gcHJvamVjdC5nZXR2cGF0aChwcmosIGZuYW1lKQppZiB2cGF0aCB+PSBmY2ZnLmFic3BhdGggdGhlbgpmY2ZnLnZwYXRoID0gdnBhdGgKZW5kCnJldHVybiBmY2ZnCmVuZApmdW5jdGlvbiBmaWxlY29uZmlnLmFkZGNvbmZpZyhmY2ZnLCBjZmcpCmxvY2FsIHByaiA9IGNmZy5wcm9qZWN0CmxvY2FsIHdrcyA9IGNmZy53b3Jrc3BhY2UKbG9jYWwgZW52aXJvbiA9IHt9CmxvY2FsIGZzdWIgPSBjb250ZXh0Lm5ldyhwcmosIGVudmlyb24pCmNvbnRleHQuY29weUZpbHRlcnMoZnN1YiwgY2ZnKQpjb250ZXh0Lm1lcmdlRmlsdGVycyhmc3ViLCBmY2ZnKQpmY2ZnLmNvbmZpZ3NbY2ZnXSA9IGZzdWIKZm9yIGtleSwgdmFsdWUgaW4gcGFpcnMoY2ZnLmVudmlyb24pIGRvCmVudmlyb25ba2V5XSA9IHZhbHVlCmVuZApmb3Iga2V5LCB2YWx1ZSBpbiBwYWlycyhmY2ZnLmVudmlyb24pIGRvCmVudmlyb25ba2V5XSA9IHZhbHVlCmVuZApjb250ZXh0LmNvbXBpbGUoZnN1YikKZnN1Yi5hYnNwYXRoID0gZmNmZy5hYnNwYXRoCmZzdWIudnBhdGggPSBmY2ZnLnZwYXRoCmZzdWIuY29uZmlnID0gY2ZnCmZzdWIucHJvamVjdCA9IHByagpmc3ViLndvcmtzcGFjZSA9IHdrcwpjb250ZXh0LmJhc2VkaXIoZnN1YiwgcHJqLmxvY2F0aW9uKQpzZXRtZXRhdGFibGUoZnN1YiwgZmlsZWNvbmZpZy5mc3ViX210KQplbmQKZnVuY3Rpb24gZmlsZWNvbmZpZy5nZXRjb25maWcoZmNmZywgY2ZnKQpyZXR1cm4gZmNmZy5jb25maWdzW2NmZ10KZW5kCmZ1bmN0aW9uIGZpbGVjb25maWcuaGFzQ3VzdG9tQnVpbGRSdWxlKGZjZmcpCnJldHVybiBmY2ZnIGFuZCAoI2ZjZmcuYnVpbGRjb21tYW5kcyA+IDApIGFuZCAoI2ZjZmcuYnVpbGRvdXRwdXRzID4gMCkKZW5kCmZ1bmN0aW9uIGZpbGVjb25maWcuaGFzRmlsZVNldHRpbmdzKGZjZmcpCmZvciBrZXksIGZpZWxkIGluIHBhaXJzKHAuZmllbGRzKSBkbwppZiBmaWVsZC5zY29wZXNbMV0gPT0gImNvbmZpZyIgdGhlbgpsb2NhbCB2YWx1ZSA9IGZjZmdbZmllbGQubmFtZV0KaWYgdmFsdWUgdGhlbgppZiB0eXBlKHZhbHVlKSA9PSAidGFibGUiIHRoZW4KaWYgI3ZhbHVlID4gMCB0aGVuCnJldHVybiB0cnVlCmVuZAplbHNlCnJldHVybiB0cnVlCmVuZAplbmQKZW5kCmVuZApyZXR1cm4gZmFsc2UKZW5kCmxvY2FsIGZjZmdfbXQgPSBmaWxlY29uZmlnLmZjZmdfbXQKZmNmZ19tdC5fX2luZGV4ID0gZnVuY3Rpb24oZmNmZywga2V5KQppZiB0eXBlKGZjZmdfbXRba2V5XSkgPT0gImZ1bmN0aW9uIiB0aGVuCnJldHVybiBmY2ZnX210W2tleV0oZmNmZykKZW5kCnJldHVybiBjb250ZXh0Ll9fbXQuX19pbmRleChmY2ZnLCBrZXkpCmVuZApmaWxlY29uZmlnLmZzdWJfbXQuX19pbmRleCA9IGZ1bmN0aW9uKGZzdWIsIGtleSkKaWYgdHlwZShmY2ZnX210W2tleV0pID09ICJmdW5jdGlvbiIgdGhlbgpyZXR1cm4gZmNmZ19tdFtrZXldKGZzdWIpCmVuZApyZXR1cm4gY29udGV4dC5fX210Ll9faW5kZXgoZnN1Yiwga2V5KQplbmQKZnVuY3Rpb24gZmNmZ19tdC5iYXNlbmFtZShmY2ZnKQpyZXR1cm4gcGF0aC5nZXRiYXNlbmFtZShmY2ZnLmFic3BhdGgpCmVuZApmdW5jdGlvbiBmY2ZnX210LmRpcmVjdG9yeShmY2ZnKQpyZXR1cm4gcGF0aC5nZXRkaXJlY3RvcnkoZmNmZy5hYnNwYXRoKQplbmQKZnVuY3Rpb24gZmNmZ19tdC5yZWxkaXJlY3RvcnkoZmNmZykKcmV0dXJuIHBhdGguZ2V0ZGlyZWN0b3J5KGZjZmcucmVscGF0aCkKZW5kCmZ1bmN0aW9uIGZjZmdfbXQubmFtZShmY2ZnKQpyZXR1cm4gcGF0aC5nZXRuYW1lKGZjZmcuYWJzcGF0aCkKZW5kCmZ1bmN0aW9uIGZjZmdfbXQub2JqbmFtZShmY2ZnKQppZiBmY2ZnLnNlcXVlbmNlIH49IG5pbCBhbmQgZmNmZy5zZXF1ZW5jZSA+IDAgdGhlbgpyZXR1cm4gZmNmZy5iYXNlbmFtZSAuLiBmY2ZnLnNlcXVlbmNlCmVsc2UKcmV0dXJuIGZjZmcuYmFzZW5hbWUKZW5kCmVuZApmdW5jdGlvbiBmY2ZnX210LnBhdGgoZmNmZykKcmV0dXJuIGZjZmcucmVscGF0aAplbmQKZnVuY3Rpb24gZmNmZ19tdC5yZWxwYXRoKGZjZmcpCnJldHVybiBwcm9qZWN0LmdldHJlbGF0aXZlKGZjZmcucHJvamVjdCwgZmNmZy5hYnNwYXRoKQplbmQKZnVuY3Rpb24gZmNmZ19tdC52cGF0aChmY2ZnKQpyZXR1cm4gZmNmZy5yZWxwYXRoCmVuZApmdW5jdGlvbiBmY2ZnX210LmV4dGVuc2lvbihmY2ZnKQpyZXR1cm4gcGF0aC5nZXRleHRlbnNpb24oZmNmZy5hYnNwYXRoKQplbmQKAGxvY2FsIHAgPSBwcmVtYWtlCnAucnVsZSA9IHAuYXBpLmNvbnRhaW5lcigicnVsZSIsIHAuZ2xvYmFsKQpsb2NhbCBydWxlID0gcC5ydWxlCmZ1bmN0aW9uIHJ1bGUubmV3KG5hbWUpCmxvY2FsIHNlbGYgPSBwLmNvbnRhaW5lci5uZXcocnVsZSwgbmFtZSkKX0dbbmFtZSAuLiAiVmFycyJdID0gZnVuY3Rpb24odmFycykKcnVsZS5zZXRWYXJzKHNlbGYsIHZhcnMpCmVuZApsb2NhbCBsb3dlck5hbWUgPSAgbmFtZTpnc3ViKCJeJXUrIiwgc3RyaW5nLmxvd2VyKQpfR1tsb3dlck5hbWUgLi4gIlZhcnMiXSA9IF9HW25hbWUgLi4gIlZhcnMiXQpyZXR1cm4gc2VsZgplbmQKZnVuY3Rpb24gcnVsZS5lYWNoUHJvcGVydHkoc2VsZikKbG9jYWwgcHJvcHMgPSBzZWxmLnByb3BlcnR5ZGVmaW5pdGlvbgpsb2NhbCBpID0gMApyZXR1cm4gZnVuY3Rpb24gKCkKaSA9IGkgKyAxCmlmIGkgPD0gI3Byb3BzIHRoZW4KcmV0dXJuIHByb3BzW2ldCmVuZAplbmQKZW5kCmZ1bmN0aW9uIHJ1bGUuZ2V0UHJvcGVydHkoc2VsZiwgbmFtZSkKbG9jYWwgcHJvcHMgPSBzZWxmLnByb3BlcnR5ZGVmaW5pdGlvbgpmb3IgaSA9IDEsICNwcm9wcyBkbwpsb2NhbCBwcm9wID0gcHJvcHNbaV0KaWYgcHJvcC5uYW1lID09IG5hbWUgdGhlbgpyZXR1cm4gcHJvcAplbmQKZW5kCmVuZApmdW5jdGlvbiBydWxlLmdldFByb3BlcnR5RmllbGQoc2VsZiwgcHJvcCkKaWYgcHJvcC5fZmllbGQgdGhlbgpyZXR1cm4gcHJvcC5fZmllbGQKZW5kCmxvY2FsIGtpbmQgPSBwcm9wLmtpbmQgb3IgInN0cmluZyIKaWYga2luZCA9PSAibGlzdCIgdGhlbgpraW5kID0gImxpc3Q6c3RyaW5nIgplbmQKbG9jYWwgZmxkID0gcC5maWVsZC5uZXcgewpuYW1lID0gIl9ydWxlXyIgLi4gc2VsZi5uYW1lIC4uICJfIiAuLiBwcm9wLm5hbWUsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSBraW5kLAp0b2tlbnMgPSB0cnVlLAp9CnByb3AuX2ZpZWxkID0gZmxkCnJldHVybiBmbGQKZW5kCmZ1bmN0aW9uIHJ1bGUuZ2V0UHJvcGVydHlTdHJpbmcoc2VsZiwgcHJvcCwgdmFsdWUpCmlmIHR5cGUodmFsdWUpID09ICJ0YWJsZSIgdGhlbgppZiAjdmFsdWUgPiAwIHRoZW4KbG9jYWwgc2VwID0gcHJvcC5zZXBhcmF0b3Igb3IgIiAiCnJldHVybiB0YWJsZS5jb25jYXQodmFsdWUsIHNlcCkKZWxzZQpyZXR1cm4gbmlsCmVuZAplbmQKaWYgcHJvcC52YWx1ZXMgdGhlbgpsb2NhbCBpID0gdGFibGUuaW5kZXhvZihwcm9wLnZhbHVlcywgdmFsdWUpCmlmIGkgfj0gbmlsIHRoZW4KcmV0dXJuIHRvc3RyaW5nKGkpCmVsc2UKcmV0dXJuIG5pbAplbmQKZW5kCnZhbHVlID0gdG9zdHJpbmcodmFsdWUpCmlmICN2YWx1ZSA+IDAgdGhlbgpyZXR1cm4gdmFsdWUKZWxzZQpyZXR1cm4gbmlsCmVuZAplbmQKZnVuY3Rpb24gcnVsZS5leHBhbmRTdHJpbmcoc2VsZiwgcHJvcCwgdmFsdWUpCmlmIG5vdCBwcm9wLnN3aXRjaCB0aGVuCnJldHVybiBydWxlLmdldFByb3BlcnR5U3RyaW5nKHNlbGYsIHByb3AsIHZhbHVlKQplbmQKaWYgdHlwZSh2YWx1ZSkgPT0gInRhYmxlIiB0aGVuCmlmICN2YWx1ZSA+IDAgdGhlbgpyZXR1cm4gcHJvcC5zd2l0Y2ggLi4gdGFibGUuY29uY2F0KHZhbHVlLCAiICIgLi4gcHJvcC5zd2l0Y2gpCmVsc2UKcmV0dXJuIG5pbAplbmQKZW5kCmlmIHByb3AudmFsdWVzIHRoZW4KbG9jYWwgaSA9IHRhYmxlLmluZGV4b2YocHJvcC52YWx1ZXMsIHZhbHVlKQppZiBpIH49IG5pbCB0aGVuCnJldHVybiBwcm9wLnN3aXRjaCAuLiB0b3N0cmluZyhpKQplbHNlCnJldHVybiBuaWwKZW5kCmVuZAp2YWx1ZSA9IHRvc3RyaW5nKHZhbHVlKQppZiAjdmFsdWUgPiAwIHRoZW4KcmV0dXJuIHByb3Auc3dpdGNoIC4uIHZhbHVlCmVsc2UKcmV0dXJuIG5pbAplbmQKZW5kCmZ1bmN0aW9uIHJ1bGUuc2V0VmFycyhzZWxmLCB2YXJzKQpmb3Iga2V5LCB2YWx1ZSBpbiBwYWlycyh2YXJzKSBkbwpsb2NhbCBwcm9wID0gcnVsZS5nZXRQcm9wZXJ0eShzZWxmLCBrZXkpCmlmIG5vdCBwcm9wIHRoZW4KZXJyb3IgKHN0cmluZy5mb3JtYXQoInJ1bGUgJyVzJyBkb2VzIG5vdCBoYXZlIHByb3BlcnR5ICclcyciLCBzZWxmLm5hbWUsIGtleSkpCmVuZApsb2NhbCBmbGQgPSBydWxlLmdldFByb3BlcnR5RmllbGQoc2VsZiwgcHJvcCkKcC5hcGkuc3RvcmVGaWVsZChmbGQsIHZhbHVlKQplbmQKZW5kCmZ1bmN0aW9uIHJ1bGUucHJlcGFyZUVudmlyb25tZW50KHNlbGYsIGVudmlyb24sIGZvcm1hdCkKZm9yIF8sIGRlZiBpbiBpcGFpcnMoc2VsZi5wcm9wZXJ0eWRlZmluaXRpb24pIGRvCmVudmlyb25bZGVmLm5hbWVdID0gc3RyaW5nLmZvcm1hdChmb3JtYXQsIGRlZi5uYW1lKQplbmQKZW5kCmZ1bmN0aW9uIHJ1bGUuY3JlYXRlRW52aXJvbm1lbnQoc2VsZiwgZm9ybWF0KQpsb2NhbCBlbnZpcm9uID0ge30KcnVsZS5wcmVwYXJlRW52aXJvbm1lbnQoc2VsZiwgZW52aXJvbiwgZm9ybWF0KQpyZXR1cm4gZW52aXJvbgplbmQKZnVuY3Rpb24gcnVsZS5wcmVwYXJlUGF0aFZhcnMoc2VsZiwgcGF0aFZhcnMsIGZvcm1hdCkKZm9yIF8sIGRlZiBpbiBpcGFpcnMoc2VsZi5wcm9wZXJ0eWRlZmluaXRpb24pIGRvCnBhdGhWYXJzW2RlZi5uYW1lXSA9IHsgYWJzb2x1dGUgPSB0cnVlLCAgdG9rZW4gPSBzdHJpbmcuZm9ybWF0KGZvcm1hdCwgZGVmLm5hbWUpIH0KZW5kCmVuZApmdW5jdGlvbiBydWxlLmNyZWF0ZVBhdGhWYXJzKHNlbGYsIGZvcm1hdCkKbG9jYWwgcGF0aFZhcnMgPSB7fQpydWxlLnByZXBhcmVQYXRoVmFycyhzZWxmLCBwYXRoVmFycywgZm9ybWF0KQpyZXR1cm4gcGF0aFZhcnMKZW5kCgBsb2NhbCBwID0gcHJlbWFrZQpwLm92ZW4gPSB7fQpsb2NhbCBvdmVuID0gcC5vdmVuCmxvY2FsIGNvbnRleHQgPSBwLmNvbnRleHQKcC5vdmVuLmJ1YmJsZWRGaWVsZHMgPSB7CmNvbmZpZ21hcCA9IHRydWUsCnZwYXRocyA9IHRydWUKfQpmdW5jdGlvbiBvdmVuLmJha2UoKQpsb2NhbCByb290ID0gcC5hcGkucm9vdENvbnRhaW5lcigpCnJvb3QuX2lzQmFrZWQgPSBmYWxzZTsKcC5jb250YWluZXIuYmFrZShyb290KQplbmQKZnVuY3Rpb24gb3Zlbi5iYWtlV29ya3NwYWNlKHdrcykKcmV0dXJuIHAuY29udGFpbmVyLmJha2Uod2tzKQplbmQKcC5hbGlhcyhvdmVuLCAiYmFrZVdvcmtzcGFjZSIsICJiYWtlU29sdXRpb24iKQpsb2NhbCBmdW5jdGlvbiBhZGRDb21tb25Db250ZXh0RmlsdGVycyhzZWxmKQpjb250ZXh0LmFkZEZpbHRlcihzZWxmLCAiX0FDVElPTiIsIF9BQ1RJT04pCmNvbnRleHQuYWRkRmlsdGVyKHNlbGYsICJhY3Rpb24iLCBfQUNUSU9OKQpzZWxmLnN5c3RlbSA9IHNlbGYuc3lzdGVtIG9yIG9zLnRhcmdldCgpCmNvbnRleHQuYWRkRmlsdGVyKHNlbGYsICJzeXN0ZW0iLCBvcy5nZXRTeXN0ZW1UYWdzKHNlbGYuc3lzdGVtKSkKbG9jYWwgb3B0aW9ucyA9IHt9CmZvciBrZXksIHZhbHVlIGluIHBhaXJzKF9PUFRJT05TKSBkbwpsb2NhbCB0ZXJtID0ga2V5CmlmIHZhbHVlIH49ICIiIHRoZW4KdGVybSA9IHRlcm0gLi4gIj0iIC4uIHRvc3RyaW5nKHZhbHVlKQplbmQKdGFibGUuaW5zZXJ0KG9wdGlvbnMsIHRlcm0pCmVuZApjb250ZXh0LmFkZEZpbHRlcihzZWxmLCAiX09QVElPTlMiLCBvcHRpb25zKQpjb250ZXh0LmFkZEZpbHRlcihzZWxmLCAib3B0aW9ucyIsIG9wdGlvbnMpCmVuZApmdW5jdGlvbiBwLndvcmtzcGFjZS5iYWtlKHNlbGYpCmFkZENvbW1vbkNvbnRleHRGaWx0ZXJzKHNlbGYpCnNlbGYuZW52aXJvbiA9IHsKd2tzID0gc2VsZiwKc2xuID0gc2VsZiwKfQpjb250ZXh0LmNvbXBpbGUoc2VsZikKc2VsZi5sb2NhdGlvbiA9IHNlbGYubG9jYXRpb24gb3Igc2VsZi5iYXNlZGlyCmNvbnRleHQuYmFzZWRpcihzZWxmLCBzZWxmLmxvY2F0aW9uKQpwLmNvbnRhaW5lci5iYWtlQ2hpbGRyZW4oc2VsZikKb3Zlbi5iYWtlT2JqRGlycyhzZWxmKQpvdmVuLmFkZEdlbmVyYXRlZEZpbGVzKHNlbGYpCnNlbGYuY29uZmlncyA9IG92ZW4uYmFrZUNvbmZpZ3Moc2VsZikKZW5kCmZ1bmN0aW9uIG92ZW4uYWRkR2VuZXJhdGVkRmlsZXMod2tzKQpsb2NhbCBmdW5jdGlvbiBhZGRHZW5lcmF0ZWRGaWxlKGNmZywgc291cmNlLCBmaWxlbmFtZSkKY2ZnLnByb2plY3QuaGFzR2VuZXJhdGVkRmlsZXMgPSB0cnVlCmxvY2FsIGZpbGVzID0gY2ZnLnByb2plY3QuXy5maWxlcwpsb2NhbCBub2RlID0gZmlsZXNbZmlsZW5hbWVdCmlmIG5vdCBub2RlIHRoZW4Kbm9kZSA9IHAuZmlsZWNvbmZpZy5uZXcoZmlsZW5hbWUsIGNmZy5wcm9qZWN0KQpmaWxlc1tmaWxlbmFtZV0gPSBub2RlCnRhYmxlLmluc2VydChmaWxlcywgbm9kZSkKZW5kCm5vZGUuZGVwZW5kc09uID0gc291cmNlCm5vZGUuZ2VuZXJhdGVkID0gdHJ1ZQppZiBub3QgcC5maWxlY29uZmlnLmdldGNvbmZpZyhub2RlLCBjZmcpIHRoZW4KcC5maWxlY29uZmlnLmFkZGNvbmZpZyhub2RlLCBjZmcpCmVuZAplbmQKbG9jYWwgZnVuY3Rpb24gYWRkRmlsZShjZmcsIG5vZGUpCmxvY2FsIGZpbGVjZmcgPSBwLmZpbGVjb25maWcuZ2V0Y29uZmlnKG5vZGUsIGNmZykKaWYgbm90IGZpbGVjZmcgb3IgZmlsZWNmZy5mbGFncy5FeGNsdWRlRnJvbUJ1aWxkIG9yIG5vdCBmaWxlY2ZnLmNvbXBpbGVidWlsZG91dHB1dHMgdGhlbgpyZXR1cm4KZW5kCmlmIHAuZmlsZWNvbmZpZy5oYXNDdXN0b21CdWlsZFJ1bGUoZmlsZWNmZykgdGhlbgpsb2NhbCBidWlsZG91dHB1dHMgPSBmaWxlY2ZnLmJ1aWxkb3V0cHV0cwppZiBidWlsZG91dHB1dHMgYW5kICNidWlsZG91dHB1dHMgPiAwIHRoZW4KZm9yIF8sIG91dHB1dCBpbiBpcGFpcnMoYnVpbGRvdXRwdXRzKSBkbwppZiBub3QgcGF0aC5pc2xpbmthYmxlKG91dHB1dCkgdGhlbgphZGRHZW5lcmF0ZWRGaWxlKGNmZywgbm9kZSwgb3V0cHV0KQplbmQKZW5kCmVuZAplbmQKZW5kCmZvciBwcmogaW4gcC53b3Jrc3BhY2UuZWFjaHByb2plY3Qod2tzKSBkbwpsb2NhbCBmaWxlcyA9IHRhYmxlLnNoYWxsb3djb3B5KHByai5fLmZpbGVzKQpmb3IgY2ZnIGluIHAucHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KdGFibGUuZm9yZWFjaGkoZmlsZXMsIGZ1bmN0aW9uKG5vZGUpCmFkZEZpbGUoY2ZnLCBub2RlKQplbmQpCmVuZAppZiBwcmouaGFzR2VuZXJhdGVkRmlsZXMgYW5kIHAucHJvamVjdC5pc25hdGl2ZShwcmopIHRoZW4Kb3Zlbi5hc3NpZ25PYmplY3RTZXF1ZW5jZXMocHJqKQplbmQKZW5kCmVuZApmdW5jdGlvbiBwLnByb2plY3QuYmFrZShzZWxmKQp2ZXJib3NlZignICAgIEJha2luZyAlcy4uLicsIHNlbGYubmFtZSkKc2VsZi5zb2x1dGlvbiA9IHNlbGYud29ya3NwYWNlCnNlbGYuZ2xvYmFsID0gc2VsZi53b3Jrc3BhY2UuZ2xvYmFsCmxvY2FsIHdrcyA9IHNlbGYud29ya3NwYWNlCmNvbnRleHQuY29weUZpbHRlcnMoc2VsZiwgd2tzKQpzZWxmLnN5c3RlbSA9IHNlbGYuc3lzdGVtIG9yIG9zLnRhcmdldCgpCmNvbnRleHQuYWRkRmlsdGVyKHNlbGYsICJzeXN0ZW0iLCBvcy5nZXRTeXN0ZW1UYWdzKHNlbGYuc3lzdGVtKSkKY29udGV4dC5hZGRGaWx0ZXIoc2VsZiwgImFyY2hpdGVjdHVyZSIsIHNlbGYuYXJjaGl0ZWN0dXJlKQpjb250ZXh0LmFkZEZpbHRlcihzZWxmLCAidGFncyIsIHNlbGYudGFncykKY29udGV4dC5hZGRGaWx0ZXIoc2VsZiwgImtpbmQiLCBzZWxmLmtpbmQpCnNlbGYucHJvamVjdCA9IHNlbGYKc2VsZi5lbnZpcm9uID0gewp3a3MgPSB3a3MsCnNsbiA9IHdrcywKcHJqID0gc2VsZiwKfQpjb250ZXh0LmNvbXBpbGUoc2VsZikKcC5jb250YWluZXIuYmFrZUNoaWxkcmVuKHNlbGYpCnNlbGYubG9jYXRpb24gPSBzZWxmLmxvY2F0aW9uIG9yIHNlbGYuYmFzZWRpcgpjb250ZXh0LmJhc2VkaXIoc2VsZiwgc2VsZi5sb2NhdGlvbikKbG9jYWwgY2ZncyA9IHRhYmxlLmZvbGQoc2VsZi5jb25maWd1cmF0aW9ucyBvciB7fSwgc2VsZi5wbGF0Zm9ybXMgb3Ige30pCm92ZW4uYnViYmxlRmllbGRzKHNlbGYsIHNlbGYsIGNmZ3MpCnNlbGYuX2NmZ2xpc3QgPSBvdmVuLmJha2VDb25maWdMaXN0KHNlbGYsIGNmZ3MpCmxvY2FsIHByb2plY3RTeXN0ZW0gPSBzZWxmLnN5c3RlbQpzZWxmLnN5c3RlbSA9IG5pbApzZWxmLmNvbmZpZ3MgPSB7fQpmb3IgXywgcGFpcmluZyBpbiBpcGFpcnMoc2VsZi5fY2ZnbGlzdCkgZG8KbG9jYWwgYnVpbGRjZmcgPSBwYWlyaW5nWzFdCmxvY2FsIHBsYXRmb3JtID0gcGFpcmluZ1syXQpsb2NhbCBjZmcgPSBvdmVuLmJha2VDb25maWcod2tzLCBzZWxmLCBidWlsZGNmZywgcGxhdGZvcm0pCmlmIHAuYWN0aW9uLnN1cHBvcnRzY29uZmlnKHAuYWN0aW9uLmN1cnJlbnQoKSwgY2ZnKSB0aGVuCnNlbGYuY29uZmlnc1soYnVpbGRjZmcgb3IgIioiKSAuLiAocGxhdGZvcm0gb3IgIiIpXSA9IGNmZwplbmQKZW5kCnNlbGYuXyA9IHt9CnNlbGYuXy5maWxlcyA9IG92ZW4uYmFrZUZpbGVzKHNlbGYpCmlmIHAucHJvamVjdC5pc25hdGl2ZShzZWxmKSB0aGVuCm92ZW4uYXNzaWduT2JqZWN0U2VxdWVuY2VzKHNlbGYpCmVuZApzZWxmLnN5c3RlbSA9IHByb2plY3RTeXN0ZW0KZW5kCmZ1bmN0aW9uIHAucnVsZS5iYWtlKHNlbGYpCmFkZENvbW1vbkNvbnRleHRGaWx0ZXJzKHNlbGYpCnNlbGYuZW52aXJvbiA9IHsKcnVsZSA9IHNlbGYsCn0KY29udGV4dC5jb21waWxlKHNlbGYpCnRhYmxlLnNvcnQoc2VsZi5wcm9wZXJ0eWRlZmluaXRpb24sIGZ1bmN0aW9uIChhLCBiKQpyZXR1cm4gYS5uYW1lIDwgYi5uYW1lCmVuZCkKc2VsZi5sb2NhdGlvbiA9IHNlbGYubG9jYXRpb24gb3Igc2VsZi5iYXNlZGlyCmNvbnRleHQuYmFzZWRpcihzZWxmLCBzZWxmLmxvY2F0aW9uKQplbmQKZnVuY3Rpb24gb3Zlbi5iYWtlT2JqRGlycyh3a3MpCmxvY2FsIGZ1bmN0aW9uIGdldG9iamRpcnMoY2ZnKQpsb2NhbCBvYmpkaXIgPSBjZmcub2JqZGlyIG9yICJvYmoiCmxvY2FsIGkgPSBvYmpkaXI6ZmluZCgiISIsIDEsIHRydWUpCmlmIGkgdGhlbgpjZmcub2JqZGlyID0gb2JqZGlyOnN1YigxLCBpIC0gMSkgLi4gb2JqZGlyOnN1YihpICsgMSkKcmV0dXJuIG5pbAplbmQKbG9jYWwgZGlycyA9IHt9CmxvY2FsIGRpciA9IHBhdGguZ2V0YWJzb2x1dGUocGF0aC5qb2luKGNmZy5wcm9qZWN0LmxvY2F0aW9uLCBvYmpkaXIpKQp0YWJsZS5pbnNlcnQoZGlycywgZGlyKQppZiBjZmcucGxhdGZvcm0gdGhlbgpkaXIgPSBwYXRoLmpvaW4oZGlyLCBjZmcucGxhdGZvcm0pCnRhYmxlLmluc2VydChkaXJzLCBkaXIpCmVuZApkaXIgPSBwYXRoLmpvaW4oZGlyLCBjZmcuYnVpbGRjZmcpCnRhYmxlLmluc2VydChkaXJzLCBkaXIpCmRpciA9IHBhdGguam9pbihkaXIsIGNmZy5wcm9qZWN0Lm5hbWUpCnRhYmxlLmluc2VydChkaXJzLCBkaXIpCnJldHVybiBkaXJzCmVuZApsb2NhbCBjb3VudHMgPSB7fQpsb2NhbCBjb25maWdzID0ge30KZm9yIHByaiBpbiBwLndvcmtzcGFjZS5lYWNocHJvamVjdCh3a3MpIGRvCmZvciBjZmcgaW4gcC5wcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpsb2NhbCBkaXJzID0gZ2V0b2JqZGlycyhjZmcpCmlmIGRpcnMgdGhlbgpjb25maWdzW2NmZ10gPSBkaXJzCmZvciBfLCBkaXIgaW4gaXBhaXJzKGRpcnMgb3Ige30pIGRvCmNvdW50c1tkaXJdID0gKGNvdW50c1tkaXJdIG9yIDApICsgMQplbmQKZW5kCmVuZAplbmQKZm9yIGNmZywgZGlycyBpbiBwYWlycyhjb25maWdzKSBkbwpmb3IgXywgZGlyIGluIGlwYWlycyhkaXJzKSBkbwppZiBjb3VudHNbZGlyXSA9PSAxIHRoZW4KY2ZnLm9iamRpciA9IGRpcgpicmVhawplbmQKZW5kCmVuZAplbmQKZnVuY3Rpb24gb3Zlbi5iYWtlQ29uZmlncyh3a3MpCmxvY2FsIGJ1aWxkY2ZncyA9IHdrcy5jb25maWd1cmF0aW9ucyBvciB7fQpsb2NhbCBwbGF0Zm9ybXMgPSB3a3MucGxhdGZvcm1zIG9yIHt9CmxvY2FsIGNvbmZpZ3MgPSB7fQpsb2NhbCBwYWlyaW5ncyA9IHRhYmxlLmZvbGQoYnVpbGRjZmdzLCBwbGF0Zm9ybXMpCmZvciBfLCBwYWlyaW5nIGluIGlwYWlycyhwYWlyaW5ncykgZG8KbG9jYWwgY2ZnID0gb3Zlbi5iYWtlQ29uZmlnKHdrcywgbmlsLCBwYWlyaW5nWzFdLCBwYWlyaW5nWzJdKQppZiBwLmFjdGlvbi5zdXBwb3J0c2NvbmZpZyhwLmFjdGlvbi5jdXJyZW50KCksIGNmZykgdGhlbgp0YWJsZS5pbnNlcnQoY29uZmlncywgY2ZnKQplbmQKZW5kCnJldHVybiBjb25maWdzCmVuZApmdW5jdGlvbiBvdmVuLmJ1YmJsZUZpZWxkcyhjdHgsIGNzZXQsIGNmZ3MpCmxvY2FsIGNvbmZpZ3VyYXRpb25zID0ge30KbG9jYWwgcGxhdGZvcm1zID0ge30KZm9yIF8sIGNmZyBpbiBpcGFpcnMoY2ZncykgZG8KaWYgY2ZnWzFdIHRoZW4KdGFibGUuaW5zZXJ0KGNvbmZpZ3VyYXRpb25zLCBjZmdbMV06bG93ZXIoKSkKZW5kCmlmIGNmZ1syXSB0aGVuCnRhYmxlLmluc2VydChwbGF0Zm9ybXMsIGNmZ1syXTpsb3dlcigpKQplbmQKZW5kCmxvY2FsIHRlcm1zID0gdGFibGUuZGVlcGNvcHkoY3R4LnRlcm1zKQp0ZXJtcy5jb25maWd1cmF0aW9ucyA9IGNvbmZpZ3VyYXRpb25zCnRlcm1zLnBsYXRmb3JtcyA9IHBsYXRmb3Jtcwpmb3Iga2V5IGluIHBhaXJzKG92ZW4uYnViYmxlZEZpZWxkcykgZG8KbG9jYWwgZmllbGQgPSBwLmZpZWxkLmdldChrZXkpCmlmIG5vdCBmaWVsZCB0aGVuCmN0eFtrZXldID0gcmF3Z2V0KGN0eCwga2V5KQplbHNlCmxvY2FsIHZhbHVlID0gcC5jb25maWdzZXQuZmV0Y2goY3NldCwgZmllbGQsIHRlcm1zLCBjdHgpCmlmIHZhbHVlIHRoZW4KY3R4W2tleV0gPSB2YWx1ZQplbmQKZW5kCmVuZAplbmQKZnVuY3Rpb24gb3Zlbi5iYWtlQ29uZmlnTGlzdChjdHgsIGNmZ3MpCmZvciBpLCBjZmcgaW4gaXBhaXJzKGNmZ3MpIGRvCmNmZ3NbaV0gPSBwLnByb2plY3QubWFwY29uZmlnKGN0eCwgY2ZnWzFdLCBjZmdbMl0pCmVuZApsb2NhbCBidWlsZGNmZ3MgPSB7fQpsb2NhbCBwbGF0Zm9ybXMgPSB7fQpmb3IgXywgcGFpcmluZyBpbiBpcGFpcnMoY2ZncykgZG8KbG9jYWwgYnVpbGRjZmcgPSBwYWlyaW5nWzFdCmxvY2FsIHBsYXRmb3JtID0gcGFpcmluZ1syXQppZiBub3QgdGFibGUuY29udGFpbnMoYnVpbGRjZmdzLCBidWlsZGNmZykgdGhlbgp0YWJsZS5pbnNlcnQoYnVpbGRjZmdzLCBidWlsZGNmZykKZW5kCmlmIHBsYXRmb3JtIGFuZCBub3QgdGFibGUuY29udGFpbnMocGxhdGZvcm1zLCBwbGF0Zm9ybSkgdGhlbgp0YWJsZS5pbnNlcnQocGxhdGZvcm1zLCBwbGF0Zm9ybSkKZW5kCmVuZApyZXR1cm4gdGFibGUuZm9sZChidWlsZGNmZ3MsIHBsYXRmb3JtcykKZW5kCmZ1bmN0aW9uIG92ZW4uYmFrZUNvbmZpZyh3a3MsIHByaiwgYnVpbGRjZmcsIHBsYXRmb3JtLCBleHRyYUZpbHRlcnMpCmxvY2FsIHN5c3RlbSA9IG9zLnRhcmdldCgpCmxvY2FsIGFyY2hpdGVjdHVyZSA9IG5pbApsb2NhbCB0b29sc2V0ID0gcC5hY3Rpb24uY3VycmVudCgpLnRvb2xzZXQKaWYgcGxhdGZvcm0gdGhlbgpzeXN0ZW0gPSBwLmFwaS5jaGVja1ZhbHVlKHAuZmllbGRzLnN5c3RlbSwgcGxhdGZvcm0pIG9yIHN5c3RlbQphcmNoaXRlY3R1cmUgPSBwLmFwaS5jaGVja1ZhbHVlKHAuZmllbGRzLmFyY2hpdGVjdHVyZSwgcGxhdGZvcm0pIG9yIGFyY2hpdGVjdHVyZQp0b29sc2V0ID0gcC5hcGkuY2hlY2tWYWx1ZShwLmZpZWxkcy50b29sc2V0LCBwbGF0Zm9ybSkgb3IgdG9vbHNldAplbmQKbG9jYWwgZW52aXJvbiA9IHsKd2tzID0gd2tzLApzbG4gPSB3a3MsCnByaiA9IHByaiwKfQpsb2NhbCBjdHggPSBjb250ZXh0Lm5ldyhwcmogb3Igd2tzLCBlbnZpcm9uKQpjdHgucHJvamVjdCA9IHByagpjdHgud29ya3NwYWNlID0gd2tzCmN0eC5zb2x1dGlvbiA9IHdrcwpjdHguZ2xvYmFsID0gd2tzLmdsb2JhbApjdHguYnVpbGRjZmcgPSBidWlsZGNmZwpjdHgucGxhdGZvcm0gPSBwbGF0Zm9ybQpjdHguYWN0aW9uID0gX0FDVElPTgplbnZpcm9uLmNmZyA9IGN0eApjb250ZXh0LmNvcHlGaWx0ZXJzKGN0eCwgd2tzKQpjb250ZXh0LmFkZEZpbHRlcihjdHgsICJjb25maWd1cmF0aW9ucyIsIGJ1aWxkY2ZnKQpjb250ZXh0LmFkZEZpbHRlcihjdHgsICJwbGF0Zm9ybXMiLCBwbGF0Zm9ybSkKaWYgcHJqIHRoZW4KY29udGV4dC5hZGRGaWx0ZXIoY3R4LCAibGFuZ3VhZ2UiLCBwcmoubGFuZ3VhZ2UpCmVuZApjdHguc3lzdGVtID0gY3R4LnN5c3RlbSBvciBzeXN0ZW0KY29udGV4dC5hZGRGaWx0ZXIoY3R4LCAic3lzdGVtIiwgb3MuZ2V0U3lzdGVtVGFncyhjdHguc3lzdGVtKSkKY3R4LmFyY2hpdGVjdHVyZSA9IGN0eC5hcmNoaXRlY3R1cmUgb3IgYXJjaGl0ZWN0dXJlCmNvbnRleHQuYWRkRmlsdGVyKGN0eCwgImFyY2hpdGVjdHVyZSIsIGN0eC5hcmNoaXRlY3R1cmUpCmN0eC50b29sc2V0ID0gX09QVElPTlMuY2Mgb3IgY3R4LnRvb2xzZXQgb3IgdG9vbHNldApjb250ZXh0LmFkZEZpbHRlcihjdHgsICJ0b29sc2V0IiwgY3R4LnRvb2xzZXQpCmNvbnRleHQuYWRkRmlsdGVyKGN0eCwgImtpbmQiLCBjdHgua2luZCkKY29udGV4dC5hZGRGaWx0ZXIoY3R4LCAidGFncyIsIGN0eC50YWdzKQppZiBleHRyYUZpbHRlcnMgdGhlbgpmb3IgaywgdiBpbiBwYWlycyhleHRyYUZpbHRlcnMpIGRvCmNvbnRleHQuYWRkRmlsdGVyKGN0eCwgaywgdikKZW5kCmVuZApjb250ZXh0LmNvbXBpbGUoY3R4KQpjdHgubG9jYXRpb24gPSBjdHgubG9jYXRpb24gb3IgcHJqIGFuZCBwcmoubG9jYXRpb24KY29udGV4dC5iYXNlZGlyKGN0eCwgY3R4LmxvY2F0aW9uKQpvdmVuLmZpbmlzaENvbmZpZyhjdHgpCnJldHVybiBjdHgKZW5kCmZ1bmN0aW9uIG92ZW4uYmFrZUZpbGVzKHByaikKbG9jYWwgZmlsZXMgPSB7fQpmb3IgY2ZnIGluIHAucHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgZnVuY3Rpb24gYWRkRmlsZShmbmFtZSkKbG9jYWwgZmNmZyA9IGZpbGVzW2ZuYW1lXQppZiBub3QgZmNmZyB0aGVuCmZjZmcgPSBwLmZpbGVjb25maWcubmV3KGZuYW1lLCBwcmopCmZpbGVzW2ZuYW1lXSA9IGZjZmcKdGFibGUuaW5zZXJ0KGZpbGVzLCBmY2ZnKQplbmQKcC5maWxlY29uZmlnLmFkZGNvbmZpZyhmY2ZnLCBjZmcpCmVuZAp0YWJsZS5mb3JlYWNoaShjZmcuZmlsZXMsIGFkZEZpbGUpCmlmICNwcmoubnVnZXQgPiAwIHRoZW4KYWRkRmlsZSgicGFja2FnZXMuY29uZmlnIikKZW5kCmVuZAp0YWJsZS5zb3J0KGZpbGVzLCBmdW5jdGlvbihhLGIpCnJldHVybiBhLnZwYXRoIDwgYi52cGF0aAplbmQpCnJldHVybiBmaWxlcwplbmQKZnVuY3Rpb24gb3Zlbi5hc3NpZ25PYmplY3RTZXF1ZW5jZXMocHJqKQpsb2NhbCBiYXNlcyA9IHt9CnRhYmxlLmZvcmVhY2hpKHByai5fLmZpbGVzLCBmdW5jdGlvbihmaWxlKQppZiBub3QgcGF0aC5pc25hdGl2ZWZpbGUoZmlsZS5hYnNwYXRoKSB0aGVuCnJldHVybgplbmQKaWYgbm90IGJhc2VzW2ZpbGUuYmFzZW5hbWVdIHRoZW4KYmFzZXNbZmlsZS5iYXNlbmFtZV0gPSB7fQplbmQKbG9jYWwgc2VxdWVuY2VzID0gYmFzZXNbZmlsZS5iYXNlbmFtZV0KZm9yIGNmZyBpbiBwLnByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmxvY2FsIGZjZmcgPSBwLmZpbGVjb25maWcuZ2V0Y29uZmlnKGZpbGUsIGNmZykKaWYgZmNmZyB+PSBuaWwgYW5kIG5vdCBmY2ZnLmZsYWdzLkV4Y2x1ZGVGcm9tQnVpbGQgdGhlbgpmY2ZnLnNlcXVlbmNlID0gc2VxdWVuY2VzW2NmZ10gb3IgMApzZXF1ZW5jZXNbY2ZnXSA9IGZjZmcuc2VxdWVuY2UgKyAxCmVuZAplbmQKZmlsZS5zZXF1ZW5jZSA9IHNlcXVlbmNlc1twcmpdIG9yIDAKc2VxdWVuY2VzW3Byal0gPSBmaWxlLnNlcXVlbmNlICsgMQplbmQpCmVuZApmdW5jdGlvbiBvdmVuLmZpbmlzaENvbmZpZyhjZmcpCmNmZy5sb25nbmFtZSA9IHRhYmxlLmNvbmNhdCh7IGNmZy5idWlsZGNmZywgY2ZnLnBsYXRmb3JtIH0sICJ8IikKY2ZnLnNob3J0bmFtZSA9IHRhYmxlLmNvbmNhdCh7IGNmZy5idWlsZGNmZywgY2ZnLnBsYXRmb3JtIH0sICIgIikKY2ZnLnNob3J0bmFtZSA9IGNmZy5zaG9ydG5hbWU6Z3N1YigiICIsICJfIik6bG93ZXIoKQpjZmcubmFtZSA9IGNmZy5sb25nbmFtZQppZiBjZmcucHJvamVjdCBhbmQgY2ZnLmtpbmQgdGhlbgpjZmcuYnVpbGR0YXJnZXQgPSBwLmNvbmZpZy5nZXR0YXJnZXRpbmZvKGNmZykKY2ZnLmJ1aWxkdGFyZ2V0LnJlbHBhdGggPSBwLnByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIGNmZy5idWlsZHRhcmdldC5hYnNwYXRoKQpjZmcubGlua3RhcmdldCA9IHAuY29uZmlnLmdldGxpbmtpbmZvKGNmZykKY2ZnLmxpbmt0YXJnZXQucmVscGF0aCA9IHAucHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgY2ZnLmxpbmt0YXJnZXQuYWJzcGF0aCkKZW5kCmVuZApsb2NhbCBwID0gcHJlbWFrZQpwLnZhbGlkYXRpb24gPSB7fQpsb2NhbCBtID0gcC52YWxpZGF0aW9uCm0uZWxlbWVudHMgPSB7fQptLmVsZW1lbnRzLmdsb2JhbCA9IGZ1bmN0aW9uKGdsYikKcmV0dXJuIHsKfQplbmQKZnVuY3Rpb24gcC5nbG9iYWwudmFsaWRhdGUoc2VsZikKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5nbG9iYWwsIHNlbGYpCnAuY29udGFpbmVyLnZhbGlkYXRlQ2hpbGRyZW4oc2VsZikKZW5kCm0uZWxlbWVudHMud29ya3NwYWNlID0gZnVuY3Rpb24od2tzKQpyZXR1cm4gewptLndvcmtzcGFjZUhhc0NvbmZpZ3MsCm0udW5pcXVlUHJvamVjdElkcywKbS51bmlxdWVQcm9qZWN0TG9jYXRpb25zV2l0aE51R2V0LAp9CmVuZApmdW5jdGlvbiBwLndvcmtzcGFjZS52YWxpZGF0ZShzZWxmKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLndvcmtzcGFjZSwgc2VsZikKcC5jb250YWluZXIudmFsaWRhdGVDaGlsZHJlbihzZWxmKQplbmQKbS5lbGVtZW50cy5wcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQpyZXR1cm4gewptLnByb2plY3RIYXNMYW5ndWFnZSwKbS5hY3Rpb25TdXBwb3J0c0xhbmd1YWdlLAptLmFjdGlvblN1cHBvcnRzS2luZCwKbS5wcm9qZWN0UnVsZXNFeGlzdCwKbS5wcm9qZWN0VmFsdWVzSW5TY29wZSwKbS5OdUdldEhhc0hUVFAsCm0uTnVHZXRQYWNrYWdlU3RyaW5ncywKfQplbmQKZnVuY3Rpb24gcC5wcm9qZWN0LnZhbGlkYXRlKHNlbGYpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMucHJvamVjdCwgc2VsZikKZm9yIGNmZyBpbiBwLnByb2plY3QuZWFjaGNvbmZpZyhzZWxmKSBkbwpwLmNvbmZpZy52YWxpZGF0ZShjZmcpCmVuZAplbmQKbS5lbGVtZW50cy5jb25maWcgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7Cm0uY29uZmlnSGFzS2luZCwKbS5jb25maWdTdXBwb3J0c0tpbmQsCm0uY29uZmlnVmFsdWVzSW5TY29wZSwKfQplbmQKZnVuY3Rpb24gcC5jb25maWcudmFsaWRhdGUoc2VsZikKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5jb25maWcsIHNlbGYpCmVuZAptLmVsZW1lbnRzLnJ1bGUgPSBmdW5jdGlvbihydWxlKQpyZXR1cm4gewp9CmVuZApmdW5jdGlvbiBwLnJ1bGUudmFsaWRhdGUoc2VsZikKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5ydWxlLCBzZWxmKQplbmQKZnVuY3Rpb24gcC5jb25maWcudmFsaWRhdGVTY29wZXMoc2VsZiwgY29udGFpbmVyLCBleHBlY3RlZCkKZm9yIGYgaW4gcC5maWVsZC5lYWNoKCkgZG8KbG9jYWwgc2NvcGUKZm9yIGkgPSAxLCAjZi5zY29wZXMgZG8KaWYgZi5zY29wZXNbaV0gPT0gImNvbmZpZyIgb3IgcC5jb250YWluZXIuY2xhc3NJc0EoY29udGFpbmVyLmNsYXNzLCBmLnNjb3Blc1tpXSkgdGhlbgpzY29wZSA9IGYuc2NvcGVzW2ldCmJyZWFrCmVuZAplbmQKbG9jYWwgb2theSA9IChub3Qgc2NvcGUgb3Igc2NvcGUgPT0gImNvbmZpZyIpCm9rYXkgPSBva2F5IG9yIHNjb3BlID09IGV4cGVjdGVkCm9rYXkgPSBva2F5IG9yIHAub3Zlbi5idWJibGVkRmllbGRzW2YubmFtZV0Kb2theSA9IG9rYXkgb3IgcC5maWVsZC5jb21wYXJlKGYsIHNlbGZbc2NvcGVdW2YubmFtZV0sIHNlbGZbZi5uYW1lXSkKaWYgbm90IG9rYXkgdGhlbgpsb2NhbCBrZXkgPSAidmFsaWRhdGUuIiAuLiBmLm5hbWUKcC53YXJuT25jZShrZXksICInJXMnIG9uICVzICclcycgZGlmZmVycyBmcm9tICVzICclcyc7IG1heSBiZSBzZXQgb3V0IG9mIHNjb3BlIiwgZi5uYW1lLCBleHBlY3RlZCwgc2VsZi5uYW1lLCBzY29wZSwgc2VsZltzY29wZV0ubmFtZSkKZW5kCmVuZAplbmQKZnVuY3Rpb24gbS5hY3Rpb25TdXBwb3J0c0tpbmQocHJqKQppZiBub3QgcC5hY3Rpb24uc3VwcG9ydHMocHJqLmtpbmQpIHRoZW4KcC53YXJuKCJVbnN1cHBvcnRlZCBraW5kICclcycgdXNlZCBmb3IgcHJvamVjdCAnJXMnIiwgcHJqLmtpbmQsIHByai5uYW1lKQplbmQKZW5kCmZ1bmN0aW9uIG0uYWN0aW9uU3VwcG9ydHNMYW5ndWFnZShwcmopCmlmIG5vdCBwLmFjdGlvbi5zdXBwb3J0cyhwcmoubGFuZ3VhZ2UpIHRoZW4KcC53YXJuKCJVbnN1cHBvcnRlZCBsYW5ndWFnZSAnJXMnIHVzZWQgZm9yIHByb2plY3QgJyVzJyIsIHByai5sYW5ndWFnZSwgcHJqLm5hbWUpCmVuZAplbmQKZnVuY3Rpb24gbS5jb25maWdIYXNLaW5kKGNmZykKaWYgbm90IGNmZy5raW5kIHRoZW4KcC5lcnJvcigiUHJvamVjdCAnJXMnIG5lZWRzIGEga2luZCBpbiBjb25maWd1cmF0aW9uICclcyciLCBjZmcucHJvamVjdC5uYW1lLCBjZmcubmFtZSkKZW5kCmVuZApmdW5jdGlvbiBtLmNvbmZpZ1N1cHBvcnRzS2luZChjZmcpCmlmIG5vdCBwLmFjdGlvbi5zdXBwb3J0cyhjZmcua2luZCkgdGhlbgpwLndhcm4oIlVuc3VwcG9ydGVkIGtpbmQgJyVzJyB1c2VkIGluIGNvbmZpZ3VyYXRpb24gJyVzJyIsIGNmZy5raW5kLCBjZmcubmFtZSkKZW5kCmlmIChjZmcua2luZCA9PSBwLk1BS0VGSUxFIG9yIGNmZy5raW5kID09IHAuTk9ORSkgYW5kIHAucHJvamVjdC5pc2RvdG5ldChjZmcucHJvamVjdCkgdGhlbgpwLmVycm9yKCJQcm9qZWN0ICclcycgdXNlcyAnJXMnIGtpbmQgaW4gY29uZmlndXJhdGlvbiAnJXMnOyBsYW5ndWFnZSBtdXN0IG5vdCBiZSBDIyIsIGNmZy5wcm9qZWN0Lm5hbWUsIGNmZy5raW5kLCBjZmcubmFtZSkKZW5kCmVuZApmdW5jdGlvbiBtLmNvbmZpZ1ZhbHVlc0luU2NvcGUoY2ZnKQpwLmNvbmZpZy52YWxpZGF0ZVNjb3BlcyhjZmcsIGNmZy5wcm9qZWN0LCAiY29uZmlnIikKZW5kCmZ1bmN0aW9uIG0ucHJvamVjdEhhc0xhbmd1YWdlKHByaikKaWYgbm90IHByai5sYW5ndWFnZSB0aGVuCnAuZXJyb3IoInByb2plY3QgJyVzJyBkb2VzIG5vdCBoYXZlIGEgbGFuZ3VhZ2UiLCBwcmoubmFtZSkKZW5kCmVuZApmdW5jdGlvbiBtLnByb2plY3RSdWxlc0V4aXN0KHByaikKZm9yIGkgPSAxLCAjcHJqLnJ1bGVzIGRvCmxvY2FsIHJ1bGUgPSBwcmoucnVsZXNbaV0KaWYgbm90IHAuZ2xvYmFsLmdldFJ1bGUocnVsZSkgdGhlbgpwLmVycm9yKCJwcm9qZWN0ICclcycgdXNlcyBtaXNzaW5nIHJ1bGUgJyVzJyIsIHByai5uYW1lLCBydWxlKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLnByb2plY3RWYWx1ZXNJblNjb3BlKHByaikKcC5jb25maWcudmFsaWRhdGVTY29wZXMocHJqLCBwcmosICJwcm9qZWN0IikKZW5kCmZ1bmN0aW9uIG0uTnVHZXRIYXNIVFRQKHByaikKaWYgbm90IGh0dHAgYW5kICNwcmoubnVnZXQgPiAwIHRoZW4KcC5lcnJvcigiUHJlbWFrZSB3YXMgY29tcGlsZWQgd2l0aCAtLW5vLWN1cmwsIGJ1dCBDdXJsIGlzIHJlcXVpcmVkIGZvciBOdUdldCBzdXBwb3J0IChwcm9qZWN0ICclcycgaXMgcmVmZXJlbmNpbmcgTnVHZXQgcGFja2FnZXMpIiwgcHJqLm5hbWUpCmVuZAplbmQKZnVuY3Rpb24gbS5OdUdldFBhY2thZ2VTdHJpbmdzKHByaikKZm9yIF8sIHBhY2thZ2UgaW4gaXBhaXJzKHByai5udWdldCkgZG8KbG9jYWwgY29tcG9uZW50cyA9IHBhY2thZ2U6ZXhwbG9kZSgiOiIpCmlmICNjb21wb25lbnRzIH49IDIgb3IgI2NvbXBvbmVudHNbMV0gPT0gMCBvciAjY29tcG9uZW50c1syXSA9PSAwIHRoZW4KcC5lcnJvcigiTnVHZXQgcGFja2FnZSAnJXMnIGluIHByb2plY3QgJyVzJyBpcyBpbnZhbGlkIC0gcGxlYXNlIGdpdmUgcGFja2FnZXMgaW4gdGhlIGZvcm1hdCAnaWQ6dmVyc2lvbicsIGUuZy4gJ05Vbml0OjMuNi4xJyIsIHBhY2thZ2UsIHByai5uYW1lKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLnVuaXF1ZVByb2plY3RJZHMod2tzKQpsb2NhbCB1dWlkcyA9IHt9CmZvciBwcmogaW4gcC53b3Jrc3BhY2UuZWFjaHByb2plY3Qod2tzKSBkbwppZiB1dWlkc1twcmoudXVpZF0gdGhlbgpwLmVycm9yKCJwcm9qZWN0cyAnJXMnIGFuZCAnJXMnIGhhdmUgdGhlIHNhbWUgVVVJRCIsIHV1aWRzW3Byai51dWlkXSwgcHJqLm5hbWUpCmVuZAp1dWlkc1twcmoudXVpZF0gPSBwcmoubmFtZQplbmQKZW5kCmZ1bmN0aW9uIG0udW5pcXVlUHJvamVjdExvY2F0aW9uc1dpdGhOdUdldCh3a3MpCmxvY2FsIGxvY2F0aW9ucyA9IHt9CmZvciBwcmogaW4gcC53b3Jrc3BhY2UuZWFjaHByb2plY3Qod2tzKSBkbwpsb2NhbCBmdW5jdGlvbiBmYWlsKCkKcC5lcnJvcigicHJvamVjdHMgJyVzJyBhbmQgJyVzJyBjYW5ub3QgaGF2ZSB0aGUgc2FtZSBsb2NhdGlvbiB3aGVuIHVzaW5nIE51R2V0IHdpdGggZGlmZmVyZW50IHBhY2thZ2VzIChwYWNrYWdlcy5jb25maWcgY29uZmxpY3QpIiwgbG9jYXRpb25zW3Byai5sb2NhdGlvbl0ubmFtZSwgcHJqLm5hbWUpCmVuZAppZiBsb2NhdGlvbnNbcHJqLmxvY2F0aW9uXSBhbmQgI2xvY2F0aW9uc1twcmoubG9jYXRpb25dLm51Z2V0ID4gMCBhbmQgI3Byai5udWdldCA+IDAgdGhlbgppZiAjbG9jYXRpb25zW3Byai5sb2NhdGlvbl0ubnVnZXQgfj0gI3Byai5udWdldCB0aGVuCmZhaWwoKQplbmQKZm9yIGksIHBhY2thZ2UgaW4gaXBhaXJzKGxvY2F0aW9uc1twcmoubG9jYXRpb25dLm51Z2V0KSBkbwppZiBwcmoubnVnZXRbaV0gfj0gcGFja2FnZSB0aGVuCmZhaWwoKQplbmQKZW5kCmVuZApsb2NhdGlvbnNbcHJqLmxvY2F0aW9uXSA9IHByagplbmQKZW5kCmZ1bmN0aW9uIG0ud29ya3NwYWNlSGFzQ29uZmlncyh3a3MpCmlmIG5vdCB3a3MuY29uZmlndXJhdGlvbnMgb3IgI3drcy5jb25maWd1cmF0aW9ucyA9PSAwIHRoZW4KcC5lcnJvcigid29ya3NwYWNlICclcycgZG9lcyBub3QgY29udGFpbiBhbnkgY29uZmlndXJhdGlvbnMiLCB3a3MubmFtZSkKZW5kCmVuZAoAAABsb2NhbCBwID0gcHJlbWFrZQpsb2NhbCBfY2FwdHVyZWQKbG9jYWwgX2VzYyA9IGZ1bmN0aW9uKHYpIHJldHVybiB2IGVuZApsb2NhbCBfZW9sID0gIlxuIgpsb2NhbCBfaW5kZW50U3RyaW5nID0gIlx0Igpsb2NhbCBfaW5kZW50TGV2ZWwgPSAwCmdsb2JhbCgicm9vdCIpCmZ1bmN0aW9uIHByZW1ha2UuY2FwdHVyZShmbikKbG9jYWwgb2xkID0gX2NhcHR1cmVkCl9jYXB0dXJlZCA9IGJ1ZmZlcmVkLm5ldygpCmZuKCkKbG9jYWwgY2FwdHVyZWQgPSBwLmNhcHR1cmVkKCkKYnVmZmVyZWQuY2xvc2UoX2NhcHR1cmVkKQpfY2FwdHVyZWQgPSBvbGQKcmV0dXJuIGNhcHR1cmVkCmVuZApmdW5jdGlvbiBwcmVtYWtlLmNhcHR1cmVkKCkKaWYgX2NhcHR1cmVkIHRoZW4KcmV0dXJuIGJ1ZmZlcmVkLnRvc3RyaW5nKF9jYXB0dXJlZCkKZWxzZQpyZXR1cm4gIiIKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLmVvbChzKQpfZW9sID0gcyBvciBfZW9sCnJldHVybiBfZW9sCmVuZApmdW5jdGlvbiBwcmVtYWtlLmVzYyh2YWx1ZSkKaWYgdHlwZSh2YWx1ZSkgPT0gInRhYmxlIiB0aGVuCmxvY2FsIHJlc3VsdCA9IHt9CmxvY2FsIG4gPSAjdmFsdWUKZm9yIGkgPSAxLCBuIGRvCnRhYmxlLmluc2VydChyZXN1bHQsIHAuZXNjKHZhbHVlW2ldKSkKZW5kCnJldHVybiByZXN1bHQKZW5kCnJldHVybiBfZXNjKHZhbHVlIG9yICIiKQplbmQKZnVuY3Rpb24gcHJlbWFrZS5lc2NhcGVyKGZ1bmMpCl9lc2MgPSBmdW5jCmlmIG5vdCBfZXNjIHRoZW4KX2VzYyA9IGZ1bmN0aW9uICh2YWx1ZSkgcmV0dXJuIHZhbHVlIGVuZAplbmQKZW5kCmZ1bmN0aW9uIHByZW1ha2UuZ2VuZXJhdGUob2JqLCBleHQsIGNhbGxiYWNrKQpsb2NhbCBvdXRwdXQgPSBwLmNhcHR1cmUoZnVuY3Rpb24gKCkKX2luZGVudExldmVsID0gMApjYWxsYmFjayhvYmopCl9pbmRlbnRMZXZlbCA9IDAKZW5kKQpsb2NhbCBmbiA9IHAuZmlsZW5hbWUob2JqLCBleHQpCmxvY2FsIGRpciA9IHBhdGguZ2V0ZGlyZWN0b3J5KGZuKQpsb2NhbCBvaywgZXJyID0gb3MubWtkaXIoZGlyKQppZiBub3Qgb2sgdGhlbgplcnJvcihlcnIsIDApCmVuZApsb2NhbCBmLCBlcnIgPSBvcy53cml0ZWZpbGVfaWZub3RlcXVhbChvdXRwdXQsIGZuKTsKaWYgKGYgPT0gMCkgdGhlbgpyZXR1cm4gZmFsc2UgLS0gZmlsZSBub3QgbW9kaWZpZWQKZWxzZWlmIChmIDwgMCkgdGhlbgplcnJvcihlcnIsIDApCmVsc2VpZiAoZiA+IDApIHRoZW4KcHJpbnRmKCJHZW5lcmF0ZWQgJXMuLi4iLCBwYXRoLmdldHJlbGF0aXZlKG9zLmdldGN3ZCgpLCBmbikpCnJldHVybiB0cnVlIC0tIGZpbGUgbW9kaWZpZWQKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLnRvdWNoKG9iaiwgZXh0KQpsb2NhbCBmbiA9IHByZW1ha2UuZmlsZW5hbWUob2JqLCBleHQpCmxvY2FsIGRpciA9IHBhdGguZ2V0ZGlyZWN0b3J5KGZuKQpsb2NhbCBvaywgZXJyID0gb3MubWtkaXIoZGlyKQppZiBub3Qgb2sgdGhlbgplcnJvcihlcnIsIDApCmVuZApsb2NhbCBmLCBlcnIgPSBvcy50b3VjaGZpbGUoZm4pOwppZiAoZiA9PSAwKSB0aGVuCnJldHVybiBmYWxzZSAtLSBmaWxlIG1hcmtlZCBhcyBtb2RpZmllZAplbHNlaWYgKGYgPCAwKSB0aGVuCmVycm9yKGVyciwgMCkKZWxzZWlmIChmID4gMCkgdGhlbgpyZXR1cm4gdHJ1ZSAtLSBmaWxlIGNyZWF0ZWQKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLmZpbGVuYW1lKG9iaiwgZXh0KQpsb2NhbCBmbmFtZSA9IG9iai5sb2NhdGlvbiBvciBvYmouYmFzZWRpcgppZiBleHQgYW5kIG5vdCBleHQ6c3RhcnRzd2l0aCgiLiIpIHRoZW4KZm5hbWUgPSBwYXRoLmpvaW4oZm5hbWUsIGV4dCkKZWxzZQpmbmFtZSA9IHBhdGguam9pbihmbmFtZSwgb2JqLmZpbGVuYW1lKQppZiBleHQgdGhlbgpmbmFtZSA9IGZuYW1lIC4uIGV4dAplbmQKZW5kCnJldHVybiBwYXRoLmdldGFic29sdXRlKGZuYW1lKQplbmQKZnVuY3Rpb24gcHJlbWFrZS5pbmRlbnQocywgaSkKX2luZGVudFN0cmluZyA9IHMgb3IgIlx0IgpfaW5kZW50TGV2ZWwgPSBpIG9yIDAKZW5kCmZ1bmN0aW9uIHByZW1ha2Uub3V0KHMpCmlmIG5vdCBfY2FwdHVyZWQgdGhlbgppby53cml0ZShzKQplbHNlCmJ1ZmZlcmVkLndyaXRlKF9jYXB0dXJlZCwgcykKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLm91dGxuKHMpCnAub3V0KHMpCnAub3V0KF9lb2wgb3IgIlxuIikKZW5kCmZ1bmN0aW9uIHByZW1ha2UucG9wKGksIC4uLikKaWYgaSA9PSBuaWwgb3IgdHlwZShpKSA9PSAibnVtYmVyIiB0aGVuCl9pbmRlbnRMZXZlbCA9IF9pbmRlbnRMZXZlbCAtIChpIG9yIDEpCmVsc2UKX2luZGVudExldmVsID0gX2luZGVudExldmVsIC0gMQpwLncoaSwgLi4uKQplbmQKZW5kCmZ1bmN0aW9uIHByZW1ha2UucHVzaChpLCAuLi4pCmlmIGkgPT0gbmlsIG9yIHR5cGUoaSkgPT0gIm51bWJlciIgdGhlbgpfaW5kZW50TGV2ZWwgPSBfaW5kZW50TGV2ZWwgKyAoaSBvciAxKQplbHNlCnAudyhpLCAuLi4pCl9pbmRlbnRMZXZlbCA9IF9pbmRlbnRMZXZlbCArIDEKZW5kCmVuZApmdW5jdGlvbiBwcmVtYWtlLnF1b3RlZCh2YWx1ZSkKbG9jYWwgcSA9IHZhbHVlOmZpbmQoIiAiLCAxLCB0cnVlKQppZiBub3QgcSB0aGVuCnEgPSB2YWx1ZTpmaW5kKCIkJSguLSUpIiwgMSkKZW5kCmlmIHEgdGhlbgp2YWx1ZSA9ICciJyAuLiB2YWx1ZSAuLiAnIicKZW5kCnJldHVybiB2YWx1ZQplbmQKZnVuY3Rpb24gcC51dGY4KCkKcC5vdXQoJ1wyMzlcMTg3XDE5MScpCmVuZApmdW5jdGlvbiBwcmVtYWtlLncoLi4uKQppZiBzZWxlY3QoIiMiLCAuLi4pID4gMCB0aGVuCnAub3V0bG4oc3RyaW5nLnJlcChfaW5kZW50U3RyaW5nIG9yICJcdCIsIF9pbmRlbnRMZXZlbCkgLi4gc3RyaW5nLmZvcm1hdCguLi4pKQplbHNlCnAub3V0bG4oJycpOwplbmQKZW5kCmZ1bmN0aW9uIHByZW1ha2UueChtc2csIC4uLikKbG9jYWwgYXJnID0gey4uLn0KZm9yIGkgPSAxLCAjYXJnIGRvCmFyZ1tpXSA9IHAuZXNjKGFyZ1tpXSkKZW5kCnAudyhtc2csIHRhYmxlLnVucGFjayhhcmcpKQplbmQKZnVuY3Rpb24gcHJlbWFrZS54bWxVdGY4KHVwcGVyKQpsb2NhbCBlbmNvZGluZyA9IGlpZih1cHBlciwgIlVURi04IiwgInV0Zi04IikKcC53KCc8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSIlcyI/PicsIGVuY29kaW5nKQplbmQKZnVuY3Rpb24gX3AoaSwgLi4uKQppZiB0eXBlKGkpID09ICJudW1iZXIiIHRoZW4KX2luZGVudExldmVsID0gaQpwLncoLi4uKQplbHNlCl9pbmRlbnRMZXZlbCA9IDAKcC53KGksIC4uLikKZW5kCmVuZApmdW5jdGlvbiBfeChpLCAuLi4pCmxvY2FsIGFyZyA9IHsuLi59CmZvciBpID0gMiwgI2FyZyBkbwphcmdbaV0gPSBwLmVzYyhhcmdbaV0pCmVuZApfcChpLCB0YWJsZS51bnBhY2soYXJnKSkKZW5kCgAAAAAAZnVuY3Rpb24gcHJlbWFrZS5zaG93aGVscCgpCnByaW50ZigiUHJlbWFrZSAlcywgYSBidWlsZCBzY3JpcHQgZ2VuZXJhdG9yIiwgX1BSRU1BS0VfVkVSU0lPTikKcHJpbnRmKF9QUkVNQUtFX0NPUFlSSUdIVCkKcHJpbnRmKCIlcyAlcyIsIF9WRVJTSU9OLCBfQ09QWVJJR0hUKQpwcmludGYoIiIpCnByaW50ZigiVXNhZ2U6IHByZW1ha2U1IFtvcHRpb25zXSBhY3Rpb24gW2FyZ3VtZW50c10iKQpwcmludGYoIiIpCmxvY2FsIGNhdGVnb3JpZXMgPSB7fQpmb3Igb3B0aW9uIGluIHByZW1ha2Uub3B0aW9uLmVhY2goKSBkbwpsb2NhbCBjYXQgPSAiT1BUSU9OUyAtIEdlbmVyYWwiCmlmIG9wdGlvbi5jYXRlZ29yeSB0aGVuCmNhdCA9ICJPUFRJT05TIC0gIiAuLiBvcHRpb24uY2F0ZWdvcnk7CmVuZAppZiBjYXRlZ29yaWVzW2NhdF0gdGhlbgp0YWJsZS5pbnNlcnQoY2F0ZWdvcmllc1tjYXRdLCBvcHRpb24pCmVsc2UKY2F0ZWdvcmllc1tjYXRdID0ge29wdGlvbn0KZW5kCmVuZApmb3Igaywgb3B0aW9ucyBpbiBzcGFpcnMoY2F0ZWdvcmllcykgZG8KcHJpbnRmKGspCnByaW50ZigiIikKbG9jYWwgbGVuZ3RoID0gMApmb3IgXywgb3B0aW9uIGluIGlwYWlycyhvcHRpb25zKSBkbwpsb2NhbCB0cmlnZ2VyID0gb3B0aW9uLnRyaWdnZXIKaWYgKG9wdGlvbi52YWx1ZSkgdGhlbiB0cmlnZ2VyID0gdHJpZ2dlciAuLiAiPSIgLi4gb3B0aW9uLnZhbHVlIGVuZAppZiAoI3RyaWdnZXIgPiBsZW5ndGgpIHRoZW4gbGVuZ3RoID0gI3RyaWdnZXIgZW5kCmVuZApmb3IgXywgb3B0aW9uIGluIGlwYWlycyhvcHRpb25zKSBkbwpsb2NhbCB0cmlnZ2VyID0gb3B0aW9uLnRyaWdnZXIKbG9jYWwgZGVzY3JpcHRpb24gPSBvcHRpb24uZGVzY3JpcHRpb24KaWYgKG9wdGlvbi52YWx1ZSkgdGhlbiB0cmlnZ2VyID0gdHJpZ2dlciAuLiAiPSIgLi4gb3B0aW9uLnZhbHVlIGVuZAppZiAob3B0aW9uLmFsbG93ZWQpIHRoZW4gZGVzY3JpcHRpb24gPSBkZXNjcmlwdGlvbiAuLiAiOyBvbmUgb2Y6IiBlbmQKcHJpbnRmKCIgLS0lLSIgLi4gbGVuZ3RoIC4uICJzICVzIiwgdHJpZ2dlciwgZGVzY3JpcHRpb24pCmlmIChvcHRpb24uYWxsb3dlZCkgdGhlbgpmb3IgXywgdmFsdWUgaW4gaXBhaXJzKG9wdGlvbi5hbGxvd2VkKSBkbwpwcmludGYoIiAgICAgJS0iIC4uIGxlbmd0aC0xIC4uICJzICVzIiwgdmFsdWVbMV0sIHZhbHVlWzJdKQplbmQKcHJpbnRmKCIiKQplbmQKZW5kCnByaW50ZigiIikKZW5kCnByaW50ZigiQUNUSU9OUyIpCnByaW50ZigiIikKZm9yIGFjdGlvbiBpbiBwcmVtYWtlLmFjdGlvbi5lYWNoKCkgZG8KcHJpbnRmKCIgJS0xN3MgJXMiLCBhY3Rpb24udHJpZ2dlciwgYWN0aW9uLmRlc2NyaXB0aW9uKQplbmQKcHJpbnRmKCIiKQpwcmludGYoIkZvciBhZGRpdGlvbmFsIGluZm9ybWF0aW9uLCBzZWUgaHR0cDovL2luZHVzdHJpb3Vzb25lLmNvbS9wcmVtYWtlIikKZW5kCgAAAAAAAGxvY2FsIHAgPSBwcmVtYWtlCnAudG9vbHMuZG90bmV0ID0ge30KbG9jYWwgZG90bmV0ID0gcC50b29scy5kb3RuZXQKbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApsb2NhbCBjb25maWcgPSBwLmNvbmZpZwpmdW5jdGlvbiBkb3RuZXQuZmlsZWluZm8oZmNmZykKbG9jYWwgaW5mbyA9IHt9CmlmIChmY2ZnID09IG5pbCkgdGhlbgpyZXR1cm4gaW5mbwplbmQKbG9jYWwgZm5hbWUgPSBmY2ZnLmFic3BhdGgKbG9jYWwgZXh0ID0gcGF0aC5nZXRleHRlbnNpb24oZm5hbWUpOmxvd2VyKCkKaWYgZmNmZy5idWlsZGFjdGlvbiA9PSAiQ29tcGlsZSIgb3IgZXh0ID09ICIuY3MiIHRoZW4KaW5mby5hY3Rpb24gPSAiQ29tcGlsZSIKZWxzZWlmIGZjZmcuYnVpbGRhY3Rpb24gPT0gIkVtYmVkIiBvciBleHQgPT0gIi5yZXN4IiB0aGVuCmluZm8uYWN0aW9uID0gIkVtYmVkZGVkUmVzb3VyY2UiCmVsc2VpZiBmY2ZnLmJ1aWxkYWN0aW9uID09ICJDb3B5IiBvciBleHQgPT0gIi5hc2F4IiBvciBleHQgPT0gIi5hc3B4IiBvciBleHQgPT0gIi5kbGwiIG9yIGV4dCA9PSAiLnR0IiB0aGVuCmluZm8uYWN0aW9uID0gIkNvbnRlbnQiCmVsc2VpZiBmY2ZnLmJ1aWxkYWN0aW9uID09ICJSZXNvdXJjZSIgdGhlbgppbmZvLmFjdGlvbiA9ICJSZXNvdXJjZSIKZWxzZWlmIGV4dCA9PSAiLnhhbWwiIHRoZW4KaWYgZmNmZy5idWlsZGFjdGlvbiA9PSAiQXBwbGljYXRpb24iIG9yIHBhdGguZ2V0YmFzZW5hbWUoZm5hbWUpID09ICJBcHAiIHRoZW4KaWYgZmNmZy5wcm9qZWN0LmtpbmQgPT0gcC5TSEFSRURMSUIgdGhlbgppbmZvLmFjdGlvbiA9ICJOb25lIgplbHNlCmluZm8uYWN0aW9uID0gIkFwcGxpY2F0aW9uRGVmaW5pdGlvbiIKZW5kCmVsc2UKaW5mby5hY3Rpb24gPSAiUGFnZSIKZW5kCmVsc2UKaW5mby5hY3Rpb24gPSAiTm9uZSIKZW5kCmlmIGluZm8uYWN0aW9uID09ICJDb21waWxlIiBhbmQgZm5hbWU6ZW5kc3dpdGgoIi5jcyIpIHRoZW4KaWYgZm5hbWU6ZW5kc3dpdGgoIi5EZXNpZ25lci5jcyIpIHRoZW4KbG9jYWwgYmFzZW5hbWUgPSBmbmFtZTpzdWIoMSwgLTEzKQpsb2NhbCB0ZXN0bmFtZSA9IGJhc2VuYW1lIC4uICIucmVzeCIKaWYgcHJvamVjdC5oYXNmaWxlKGZjZmcucHJvamVjdCwgdGVzdG5hbWUpIHRoZW4KaW5mby5BdXRvR2VuID0gIlRydWUiCmluZm8uRGVwZW5kZW50VXBvbiA9IHRlc3RuYW1lCmVuZAp0ZXN0bmFtZSA9IGJhc2VuYW1lIC4uICIuc2V0dGluZ3MiCmlmIHByb2plY3QuaGFzZmlsZShmY2ZnLnByb2plY3QsIHRlc3RuYW1lKSB0aGVuCmluZm8uQXV0b0dlbiA9ICJUcnVlIgppbmZvLkRlcGVuZGVudFVwb24gPSB0ZXN0bmFtZQppbmZvLkRlc2lnblRpbWVTaGFyZWRJbnB1dCA9ICJUcnVlIgplbmQKdGVzdG5hbWUgPSBiYXNlbmFtZSAuLiAiLmNzIgppZiBwcm9qZWN0Lmhhc2ZpbGUoZmNmZy5wcm9qZWN0LCB0ZXN0bmFtZSkgdGhlbgppbmZvLkF1dG9HZW4gPSBuaWwKaW5mby5TdWJUeXBlID0gIkRlcGVuZGVuY3kiCmluZm8uRGVwZW5kZW50VXBvbiA9IHRlc3RuYW1lCmVuZAp0ZXN0bmFtZSA9IGJhc2VuYW1lIC4uICIueHNkIgppZiBwcm9qZWN0Lmhhc2ZpbGUoZmNmZy5wcm9qZWN0LCB0ZXN0bmFtZSkgdGhlbgppbmZvLkF1dG9HZW4gPSAiVHJ1ZSIKaW5mby5EZXNpZ25UaW1lID0gIlRydWUiCmluZm8uRGVwZW5kZW50VXBvbiA9IHRlc3RuYW1lCmVuZAplbHNlaWYgZm5hbWU6ZW5kc3dpdGgoIi54YW1sLmNzIikgdGhlbgppbmZvLlN1YlR5cGUgPSAiQ29kZSIKaW5mby5EZXBlbmRlbnRVcG9uID0gZm5hbWU6c3ViKDEsIC00KQplbHNlCmxvY2FsIGJhc2VuYW1lID0gZm5hbWU6c3ViKDEsIC00KQp0ZXN0bmFtZSA9IGJhc2VuYW1lIC4uICIueHNkIgppZiBwcm9qZWN0Lmhhc2ZpbGUoZmNmZy5wcm9qZWN0LCB0ZXN0bmFtZSkgdGhlbgppbmZvLkRlcGVuZGVudFVwb24gPSB0ZXN0bmFtZQplbmQKdGVzdG5hbWUgPSBiYXNlbmFtZSAuLiAiLkRlc2lnbmVyLmNzIgppZiBwcm9qZWN0Lmhhc2ZpbGUoZmNmZy5wcm9qZWN0LCB0ZXN0bmFtZSkgdGhlbgppbmZvLlN1YlR5cGUgPSAiRm9ybSIKZW5kCnRlc3RuYW1lID0gYmFzZW5hbWUgLi4gIi50dCIKaWYgcHJvamVjdC5oYXNmaWxlKGZjZmcucHJvamVjdCwgdGVzdG5hbWUpIHRoZW4KaW5mby5BdXRvR2VuID0gIlRydWUiCmluZm8uRGVzaWduVGltZSA9ICJUcnVlIgppbmZvLkRlcGVuZGVudFVwb24gPSB0ZXN0bmFtZQplbmQKZW5kCmlmIGZjZmcuYnVpbGRhY3Rpb24gPT0gIkNvbXBvbmVudCIgb3IKICAgZmNmZy5idWlsZGFjdGlvbiA9PSAiRm9ybSIgb3IKICAgZmNmZy5idWlsZGFjdGlvbiA9PSAiVXNlckNvbnRyb2wiCnRoZW4KaW5mby5TdWJUeXBlID0gZmNmZy5idWlsZGFjdGlvbgplbmQKaWYgZmNmZy5mbGFncyBhbmQgZmNmZy5mbGFncy5Db21wb25lbnQgdGhlbgppbmZvLlN1YlR5cGUgPSAiQ29tcG9uZW50IgplbmQKZW5kCmlmIGluZm8uYWN0aW9uID09ICJDb250ZW50IiB0aGVuCmluZm8uQ29weVRvT3V0cHV0RGlyZWN0b3J5ID0gIlByZXNlcnZlTmV3ZXN0IgplbmQKaWYgaW5mby5hY3Rpb24gPT0gIkVtYmVkZGVkUmVzb3VyY2UiIGFuZCBmbmFtZTplbmRzd2l0aCgiLnJlc3giKSB0aGVuCmxvY2FsIGJhc2VuYW1lID0gZm5hbWU6c3ViKDEsIC02KQpsb2NhbCB0ZXN0bmFtZSA9IGJhc2VuYW1lIC4uICIuY3MiCmlmIHByb2plY3QuaGFzZmlsZShmY2ZnLnByb2plY3QsIHRlc3RuYW1lKSB0aGVuCmluZm8uRGVwZW5kZW50VXBvbiA9IHRlc3RuYW1lCmlmIHByb2plY3QuaGFzZmlsZShmY2ZnLnByb2plY3QsIGJhc2VuYW1lIC4uICIuRGVzaWduZXIuY3MiKSB0aGVuCmluZm8uU3ViVHlwZSA9ICJEZXNpZ25lclR5cGUiCmVuZAplbHNlCnRlc3RuYW1lID0gYmFzZW5hbWUgLi4gIi5EZXNpZ25lci5jcyIKaWYgcHJvamVjdC5oYXNmaWxlKGZjZmcucHJvamVjdCwgdGVzdG5hbWUpIHRoZW4KaW5mby5TdWJUeXBlID0gIkRlc2lnbmVyIgpsb2NhbCByZXNvdXJjZUFjY2Vzc0dlbmVyYXRvciA9ICJSZXNYRmlsZUNvZGVHZW5lcmF0b3IiCmlmIGZjZmcucHJvamVjdC5yZXNvdXJjZWdlbmVyYXRvciB0aGVuCmlmIGZjZmcucHJvamVjdC5yZXNvdXJjZWdlbmVyYXRvciA9PSAicHVibGljIiB0aGVuCnJlc291cmNlQWNjZXNzR2VuZXJhdG9yID0gIlB1YmxpY1Jlc1hGaWxlQ29kZUdlbmVyYXRvciIKZW5kCmVuZAppbmZvLkdlbmVyYXRvciA9IHJlc291cmNlQWNjZXNzR2VuZXJhdG9yCmluZm8uTGFzdEdlbk91dHB1dCA9IHBhdGguZ2V0bmFtZSh0ZXN0bmFtZSkKZW5kCmVuZAplbmQKaWYgaW5mby5hY3Rpb24gPT0gIk5vbmUiIGFuZCBmbmFtZTplbmRzd2l0aCgiLnNldHRpbmdzIikgdGhlbgpsb2NhbCB0ZXN0bmFtZSA9IGZuYW1lOnN1YigxLCAtMTApIC4uICIuRGVzaWduZXIuY3MiCmlmIHByb2plY3QuaGFzZmlsZShmY2ZnLnByb2plY3QsIHRlc3RuYW1lKSB0aGVuCmluZm8uR2VuZXJhdG9yID0gIlNldHRpbmdzU2luZ2xlRmlsZUdlbmVyYXRvciIKaW5mby5MYXN0R2VuT3V0cHV0ID0gcGF0aC5nZXRuYW1lKHRlc3RuYW1lKQplbmQKZW5kCmlmIGluZm8uYWN0aW9uID09ICJDb250ZW50IiBhbmQgZm5hbWU6ZW5kc3dpdGgoIi50dCIpIHRoZW4KbG9jYWwgdGVzdG5hbWUgPSBmbmFtZTpzdWIoMSwgLTQpIC4uICIuY3MiCmlmIHByb2plY3QuaGFzZmlsZShmY2ZnLnByb2plY3QsIHRlc3RuYW1lKSB0aGVuCmluZm8uR2VuZXJhdG9yID0gIlRleHRUZW1wbGF0aW5nRmlsZUdlbmVyYXRvciIKaW5mby5MYXN0R2VuT3V0cHV0ID0gcGF0aC5nZXRuYW1lKHRlc3RuYW1lKQppbmZvLkNvcHlUb091dHB1dERpcmVjdG9yeSA9IG5pbAplbmQKZW5kCmlmIGluZm8uYWN0aW9uID09ICJOb25lIiBhbmQgZm5hbWU6ZW5kc3dpdGgoIi54c2QiKSB0aGVuCmxvY2FsIHRlc3RuYW1lID0gZm5hbWU6c3ViKDEsIC01KSAuLiAiLkRlc2lnbmVyLmNzIgppZiBwcm9qZWN0Lmhhc2ZpbGUoZmNmZy5wcm9qZWN0LCB0ZXN0bmFtZSkgdGhlbgppbmZvLlN1YlR5cGUgPSAiRGVzaWduZXIiCmluZm8uR2VuZXJhdG9yID0gIk1TRGF0YVNldEdlbmVyYXRvciIKaW5mby5MYXN0R2VuT3V0cHV0ID0gcGF0aC5nZXRuYW1lKHRlc3RuYW1lKQplbmQKZW5kCmlmIGluZm8uYWN0aW9uID09ICJOb25lIiBhbmQgKGZuYW1lOmVuZHN3aXRoKCIueHNjIikgb3IgZm5hbWU6ZW5kc3dpdGgoIi54c3MiKSkgdGhlbgpsb2NhbCB0ZXN0bmFtZSA9IGZuYW1lOnN1YigxLCAtNSkgLi4gIi54c2QiCmlmIHByb2plY3QuaGFzZmlsZShmY2ZnLnByb2plY3QsIHRlc3RuYW1lKSB0aGVuCmluZm8uRGVwZW5kZW50VXBvbiA9IHRlc3RuYW1lCmVuZAplbmQKaWYgZm5hbWU6ZW5kc3dpdGgoIi54YW1sIikgdGhlbgpsb2NhbCB0ZXN0bmFtZSA9IGZuYW1lIC4uICIuY3MiCmlmIHByb2plY3QuaGFzZmlsZShmY2ZnLnByb2plY3QsIHRlc3RuYW1lKSB0aGVuCmluZm8uU3ViVHlwZSA9ICJEZXNpZ25lciIKaW5mby5HZW5lcmF0b3IgPSAiTVNCdWlsZDpDb21waWxlIgplbmQKZW5kCmlmIGluZm8uRGVwZW5kZW50VXBvbiB0aGVuCmluZm8uRGVwZW5kZW50VXBvbiA9IHBhdGguZ2V0bmFtZShpbmZvLkRlcGVuZGVudFVwb24pCmVuZApyZXR1cm4gaW5mbwplbmQKZnVuY3Rpb24gZG90bmV0LmdldHRvb2xuYW1lKGNmZywgdG9vbCkKbG9jYWwgY29tcGlsZXJzID0gewptc25ldCA9ICJjc2MiLAptb25vID0gIm1jcyIsCnBuZXQgPSAiY3NjYyIsCn0KaWYgdG9vbCA9PSAiY3NjIiB0aGVuCmxvY2FsIHRvb2xzZXQgPSBfT1BUSU9OUy5kb3RuZXQgb3IgaWlmKG9zLmlzdGFyZ2V0KCJ3aW5kb3dzIiksICJtc25ldCIsICJtb25vIikKcmV0dXJuIGNvbXBpbGVyc1t0b29sc2V0XQplbHNlCnJldHVybiAicmVzZ2VuIgplbmQKZW5kCmRvdG5ldC5mbGFncyA9IHsKY2xyID0gewpVbnNhZmUgPSAiL3Vuc2FmZSIsCn0sCmZsYWdzID0gewpGYXRhbFdhcm5pbmcgPSAiL3dhcm5hc2Vycm9yIiwKfSwKb3B0aW1pemUgPSB7Ck9uID0gIi9vcHRpbWl6ZSIsClNpemUgPSAiL29wdGltaXplIiwKU3BlZWQgPSAiL29wdGltaXplIiwKfSwKc3ltYm9scyA9IHsKT24gPSAiL2RlYnVnIiwKfQp9CmZ1bmN0aW9uIGRvdG5ldC5nZXRmbGFncyhjZmcpCmxvY2FsIGZsYWdzID0gY29uZmlnLm1hcEZsYWdzKGNmZywgZG90bmV0LmZsYWdzKQp0YWJsZS5pbnNlcnQoZmxhZ3MsICcvbm9jb25maWcnKQppZiBjZmcucHJvamVjdC5pY29uIHRoZW4KbG9jYWwgZm4gPSBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBjZmcucHJvamVjdC5pY29uKQp0YWJsZS5pbnNlcnQoZmxhZ3MsIHN0cmluZy5mb3JtYXQoJy93aW4zMmljb246IiVzIicsIGZuKSkKZW5kCmlmICNjZmcuZGVmaW5lcyA+IDAgdGhlbgp0YWJsZS5pbnNlcnQoZmxhZ3MsIHRhYmxlLmltcGxvZGUoY2ZnLmRlZmluZXMsICIvZDoiLCAiIiwgIiAiKSkKZW5kCnJldHVybiB0YWJsZS5qb2luKGZsYWdzLCBjZmcuYnVpbGRvcHRpb25zKQplbmQKZnVuY3Rpb24gZG90bmV0LmdldGtpbmQoY2ZnKQppZiAoY2ZnLmtpbmQgPT0gIkNvbnNvbGVBcHAiKSB0aGVuCnJldHVybiAiRXhlIgplbHNlaWYgKGNmZy5raW5kID09ICJXaW5kb3dlZEFwcCIpIHRoZW4KcmV0dXJuICJXaW5FeGUiCmVsc2VpZiAoY2ZnLmtpbmQgPT0gIlNoYXJlZExpYiIpIHRoZW4KcmV0dXJuICJMaWJyYXJ5IgplbHNlCmVycm9yKCJpbnZhbGlkIGRvdG5ldCBraW5kICIgLi4gY2ZnLmtpbmQgLi4gIi4gVmFsaWQga2luZHMgYXJlIENvbnNvbGVBcHAsIFdpbmRvd3NBcHAsIFNoYXJlZExpYiIpCmVuZAplbmQKZnVuY3Rpb24gZG90bmV0LmdldG1ha2VzZXR0aW5ncyhjZmcpCnJldHVybiBuaWwKZW5kCgAAAAAAbG9jYWwgcCA9IHByZW1ha2UKcC50b29scy5nY2MgPSB7fQpsb2NhbCBnY2MgPSBwLnRvb2xzLmdjYwpsb2NhbCBwcm9qZWN0ID0gcC5wcm9qZWN0CmxvY2FsIGNvbmZpZyA9IHAuY29uZmlnCmdjYy5jcHBmbGFncyA9IHsKc3lzdGVtID0gewpoYWlrdSA9ICItTU1EIiwKd2lpID0geyAiLU1NRCIsICItTVAiLCAiLUkkKExJQk9HQ19JTkMpIiwgIiQoTUFDSERFUCkiIH0sCl8gPSB7ICItTU1EIiwgIi1NUCIgfQp9Cn0KZnVuY3Rpb24gZ2NjLmdldGNwcGZsYWdzKGNmZykKbG9jYWwgZmxhZ3MgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBnY2MuY3BwZmxhZ3MpCnJldHVybiBmbGFncwplbmQKZ2NjLnNoYXJlZCA9IHsKYXJjaGl0ZWN0dXJlID0gewp4ODYgPSAiLW0zMiIsCng4Nl82NCA9ICItbTY0IiwKfSwKZmxhZ3MgPSB7CkZhdGFsQ29tcGlsZVdhcm5pbmdzID0gIi1XZXJyb3IiLApMaW5rVGltZU9wdGltaXphdGlvbiA9ICItZmx0byIsCk5vRnJhbWVQb2ludGVyID0gIi1mb21pdC1mcmFtZS1wb2ludGVyIiwKU2hhZG93ZWRWYXJpYWJsZXMgPSAiLVdzaGFkb3ciLApVbmRlZmluZWRJZGVudGlmaWVycyA9ICItV3VuZGVmIiwKfSwKZmxvYXRpbmdwb2ludCA9IHsKRmFzdCA9ICItZmZhc3QtbWF0aCIsClN0cmljdCA9ICItZmZsb2F0LXN0b3JlIiwKfSwKc3RyaWN0YWxpYXNpbmcgPSB7Ck9mZiA9ICItZm5vLXN0cmljdC1hbGlhc2luZyIsCkxldmVsMSA9IHsgIi1mc3RyaWN0LWFsaWFzaW5nIiwgIi1Xc3RyaWN0LWFsaWFzaW5nPTEiIH0sCkxldmVsMiA9IHsgIi1mc3RyaWN0LWFsaWFzaW5nIiwgIi1Xc3RyaWN0LWFsaWFzaW5nPTIiIH0sCkxldmVsMyA9IHsgIi1mc3RyaWN0LWFsaWFzaW5nIiwgIi1Xc3RyaWN0LWFsaWFzaW5nPTMiIH0sCn0sCm9wdGltaXplID0gewpPZmYgPSAiLU8wIiwKT24gPSAiLU8yIiwKRGVidWcgPSAiLU9nIiwKRnVsbCA9ICItTzMiLApTaXplID0gIi1PcyIsClNwZWVkID0gIi1PMyIsCn0sCnBpYyA9IHsKT24gPSAiLWZQSUMiLAp9LAp2ZWN0b3JleHRlbnNpb25zID0gewpBVlggPSAiLW1hdngiLApBVlgyID0gIi1tYXZ4MiIsClNTRSA9ICItbXNzZSIsClNTRTIgPSAiLW1zc2UyIiwKU1NFMyA9ICItbXNzZTMiLApTU1NFMyA9ICItbXNzc2UzIiwKWyJTU0U0LjEiXSA9ICItbXNzZTQuMSIsCn0sCndhcm5pbmdzID0gewpFeHRyYSA9ICItV2FsbCAtV2V4dHJhIiwKSGlnaCA9ICItV2FsbCIsCk9mZiA9ICItdyIsCn0sCnN5bWJvbHMgPSB7Ck9uID0gIi1nIgp9Cn0KZ2NjLmNmbGFncyA9IHsKY2RpYWxlY3QgPSB7ClsiQzg5Il0gPSAiLXN0ZD1jODkiLApbIkM5MCJdID0gIi1zdGQ9YzkwIiwKWyJDOTkiXSA9ICItc3RkPWM5OSIsClsiQzExIl0gPSAiLXN0ZD1jMTEiLApbImdudTg5Il0gPSAiLXN0ZD1nbnU4OSIsClsiZ251OTAiXSA9ICItc3RkPWdudTkwIiwKWyJnbnU5OSJdID0gIi1zdGQ9Z251OTkiLApbImdudTExIl0gPSAiLXN0ZD1nbnUxMSIsCn0KfQpmdW5jdGlvbiBnY2MuZ2V0Y2ZsYWdzKGNmZykKbG9jYWwgc2hhcmVkX2ZsYWdzID0gY29uZmlnLm1hcEZsYWdzKGNmZywgZ2NjLnNoYXJlZCkKbG9jYWwgY2ZsYWdzID0gY29uZmlnLm1hcEZsYWdzKGNmZywgZ2NjLmNmbGFncykKbG9jYWwgZmxhZ3MgPSB0YWJsZS5qb2luKHNoYXJlZF9mbGFncywgY2ZsYWdzKQpmbGFncyA9IHRhYmxlLmpvaW4oZmxhZ3MsIGdjYy5nZXR3YXJuaW5ncyhjZmcpKQpyZXR1cm4gZmxhZ3MKZW5kCmZ1bmN0aW9uIGdjYy5nZXR3YXJuaW5ncyhjZmcpCmxvY2FsIHJlc3VsdCA9IHt9CmZvciBfLCBlbmFibGUgaW4gaXBhaXJzKGNmZy5lbmFibGV3YXJuaW5ncykgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy1XJyAuLiBlbmFibGUpCmVuZApmb3IgXywgZGlzYWJsZSBpbiBpcGFpcnMoY2ZnLmRpc2FibGV3YXJuaW5ncykgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy1Xbm8tJyAuLiBkaXNhYmxlKQplbmQKZm9yIF8sIGZhdGFsIGluIGlwYWlycyhjZmcuZmF0YWx3YXJuaW5ncykgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy1XZXJyb3I9JyAuLiBmYXRhbCkKZW5kCnJldHVybiByZXN1bHQKZW5kCmdjYy5jeHhmbGFncyA9IHsKZXhjZXB0aW9uaGFuZGxpbmcgPSB7Ck9mZiA9ICItZm5vLWV4Y2VwdGlvbnMiCn0sCmZsYWdzID0gewpOb0J1ZmZlclNlY3VyaXR5Q2hlY2sgPSAiLWZuby1zdGFjay1wcm90ZWN0b3IiLAp9LApjcHBkaWFsZWN0ID0gewpbIkMrKzk4Il0gPSAiLXN0ZD1jKys5OCIsClsiQysrMTEiXSA9ICItc3RkPWMrKzExIiwKWyJDKysxNCJdID0gIi1zdGQ9YysrMTQiLApbIkMrKzE3Il0gPSAiLXN0ZD1jKysxeiIsClsiZ251Kys5OCJdID0gIi1zdGQ9Z251Kys5OCIsClsiZ251KysxMSJdID0gIi1zdGQ9Z251KysxMSIsClsiZ251KysxNCJdID0gIi1zdGQ9Z251KysxNCIsClsiZ251KysxNyJdID0gIi1zdGQ9Z251KysxeiIsCn0sCnJ0dGkgPSB7Ck9mZiA9ICItZm5vLXJ0dGkiCn0KfQpmdW5jdGlvbiBnY2MuZ2V0Y3h4ZmxhZ3MoY2ZnKQpsb2NhbCBzaGFyZWRfZmxhZ3MgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBnY2Muc2hhcmVkKQpsb2NhbCBjeHhmbGFncyA9IGNvbmZpZy5tYXBGbGFncyhjZmcsIGdjYy5jeHhmbGFncykKbG9jYWwgZmxhZ3MgPSB0YWJsZS5qb2luKHNoYXJlZF9mbGFncywgY3h4ZmxhZ3MpCmZsYWdzID0gdGFibGUuam9pbihmbGFncywgZ2NjLmdldHdhcm5pbmdzKGNmZykpCnJldHVybiBmbGFncwplbmQKZnVuY3Rpb24gZ2NjLmdldGRlZmluZXMoZGVmaW5lcykKbG9jYWwgcmVzdWx0ID0ge30KZm9yIF8sIGRlZmluZSBpbiBpcGFpcnMoZGVmaW5lcykgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy1EJyAuLiBwLmVzYyhkZWZpbmUpKQplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gZ2NjLmdldHVuZGVmaW5lcyh1bmRlZmluZXMpCmxvY2FsIHJlc3VsdCA9IHt9CmZvciBfLCB1bmRlZmluZSBpbiBpcGFpcnModW5kZWZpbmVzKSBkbwp0YWJsZS5pbnNlcnQocmVzdWx0LCAnLVUnIC4uIHAuZXNjKHVuZGVmaW5lKSkKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIGdjYy5nZXRmb3JjZWluY2x1ZGVzKGNmZykKbG9jYWwgcmVzdWx0ID0ge30KdGFibGUuZm9yZWFjaGkoY2ZnLmZvcmNlaW5jbHVkZXMsIGZ1bmN0aW9uKHZhbHVlKQpsb2NhbCBmbiA9IHByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIHZhbHVlKQp0YWJsZS5pbnNlcnQocmVzdWx0LCBzdHJpbmcuZm9ybWF0KCctaW5jbHVkZSAlcycsIHAucXVvdGVkKGZuKSkpCmVuZCkKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gZ2NjLmdldGluY2x1ZGVkaXJzKGNmZywgZGlycywgc3lzZGlycykKbG9jYWwgcmVzdWx0ID0ge30KZm9yIF8sIGRpciBpbiBpcGFpcnMoZGlycykgZG8KZGlyID0gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgZGlyKQp0YWJsZS5pbnNlcnQocmVzdWx0LCAnLUknIC4uIHAucXVvdGVkKGRpcikpCmVuZApmb3IgXywgZGlyIGluIGlwYWlycyhzeXNkaXJzIG9yIHt9KSBkbwpkaXIgPSBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBkaXIpCnRhYmxlLmluc2VydChyZXN1bHQsICctaXN5c3RlbSAnIC4uIHAucXVvdGVkKGRpcikpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBnY2MuZ2V0cnVucGF0aGRpcnMoY2ZnLCBkaXJzKQpsb2NhbCByZXN1bHQgPSB7fQppZiBub3QgKChjZmcuc3lzdGVtID09IHAuTUFDT1NYKQpvciAoY2ZnLnN5c3RlbSA9PSBwLkxJTlVYKSkgdGhlbgpyZXR1cm4gcmVzdWx0CmVuZApsb2NhbCBycGF0aHMgPSB7fQpmb3IgXywgZnVsbHBhdGggaW4gaXBhaXJzKGNmZy5ydW5wYXRoZGlycykgZG8KbG9jYWwgcnBhdGggPSBwYXRoLmdldHJlbGF0aXZlKGNmZy5idWlsZHRhcmdldC5kaXJlY3RvcnksIGZ1bGxwYXRoKQppZiBub3QgKHRhYmxlLmNvbnRhaW5zKHJwYXRocywgcnBhdGgpKSB0aGVuCnRhYmxlLmluc2VydChycGF0aHMsIHJwYXRoKQplbmQKZW5kCmZvciBfLCBzaWJsaW5nIGluIGlwYWlycyhjb25maWcuZ2V0bGlua3MoY2ZnLCAic2libGluZ3MiLCAib2JqZWN0IikpIGRvCmlmIChzaWJsaW5nLmtpbmQgPT0gcC5TSEFSRURMSUIpIHRoZW4KbG9jYWwgZnVsbHBhdGggPSBzaWJsaW5nLmxpbmt0YXJnZXQuZGlyZWN0b3J5CmxvY2FsIHJwYXRoID0gcGF0aC5nZXRyZWxhdGl2ZShjZmcuYnVpbGR0YXJnZXQuZGlyZWN0b3J5LCBmdWxscGF0aCkKaWYgbm90ICh0YWJsZS5jb250YWlucyhycGF0aHMsIHJwYXRoKSkgdGhlbgp0YWJsZS5pbnNlcnQocnBhdGhzLCBycGF0aCkKZW5kCmVuZAplbmQKZm9yIF8sIHJwYXRoIGluIGlwYWlycyhycGF0aHMpIGRvCmlmIChjZmcuc3lzdGVtID09IHAuTUFDT1NYKSB0aGVuCnJwYXRoID0gIkBsb2FkZXJfcGF0aC8iIC4uIHJwYXRoCmVsc2VpZiAoY2ZnLnN5c3RlbSA9PSBwLkxJTlVYKSB0aGVuCnJwYXRoID0gaWlmKHJwYXRoID09ICIuIiwgIiIsICIvIiAuLiBycGF0aCkKcnBhdGggPSAiJCRPUklHSU4iIC4uIHJwYXRoCmVuZAp0YWJsZS5pbnNlcnQocmVzdWx0LCAiLVdsLC1ycGF0aCwnIiAuLiBycGF0aCAuLiAiJyIpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBnY2MuZ2V0c2hhcmVkbGliYXJnKGNmZykKaWYgY2ZnLnN5c3RlbSA9PSBwLk1BQ09TWCB0aGVuCmlmIGNmZy5zaGFyZWRsaWJ0eXBlID09ICJPU1hCdW5kbGUiIHRoZW4KcmV0dXJuICItYnVuZGxlIgplbHNlaWYgY2ZnLnNoYXJlZGxpYnR5cGUgPT0gIk9TWEZyYW1ld29yayIgdGhlbgpyZXR1cm4gIi1mcmFtZXdvcmsiCmVsc2UKcmV0dXJuICItZHluYW1pY2xpYiIKZW5kCmVsc2UKcmV0dXJuICItc2hhcmVkIgplbmQKZW5kCmZ1bmN0aW9uIGdjYy5sZHN5bWJvbHMoY2ZnKQpyZXR1cm4gaWlmKGNmZy5zeXN0ZW0gPT0gcC5NQUNPU1gsICItV2wsLXgiLCAiLXMiKQplbmQKZ2NjLmxkZmxhZ3MgPSB7CmFyY2hpdGVjdHVyZSA9IHsKeDg2ID0gIi1tMzIiLAp4ODZfNjQgPSAiLW02NCIsCn0sCmZsYWdzID0gewpMaW5rVGltZU9wdGltaXphdGlvbiA9ICItZmx0byIsCn0sCmtpbmQgPSB7ClNoYXJlZExpYiA9IGZ1bmN0aW9uKGNmZykKbG9jYWwgciA9IHsgZ2NjLmdldHNoYXJlZGxpYmFyZyhjZmcpIH0KaWYgY2ZnLnN5c3RlbSA9PSBwLldJTkRPV1MgYW5kIG5vdCBjZmcuZmxhZ3MuTm9JbXBvcnRMaWIgdGhlbgp0YWJsZS5pbnNlcnQociwgJy1XbCwtLW91dC1pbXBsaWI9IicgLi4gY2ZnLmxpbmt0YXJnZXQucmVscGF0aCAuLiAnIicpCmVsc2VpZiBjZmcuc3lzdGVtID09IHAuTElOVVggdGhlbgp0YWJsZS5pbnNlcnQociwgJy1XbCwtc29uYW1lPScgLi4gcC5xdW90ZWQoY2ZnLmxpbmt0YXJnZXQubmFtZSkpCmVsc2VpZiBjZmcuc3lzdGVtID09IHAuTUFDT1NYIHRoZW4KdGFibGUuaW5zZXJ0KHIsICctV2wsLWluc3RhbGxfbmFtZSwnIC4uIHAucXVvdGVkKCdAcnBhdGgvJyAuLiBjZmcubGlua3RhcmdldC5uYW1lKSkKZW5kCnJldHVybiByCmVuZCwKV2luZG93ZWRBcHAgPSBmdW5jdGlvbihjZmcpCmlmIGNmZy5zeXN0ZW0gPT0gcC5XSU5ET1dTIHRoZW4gcmV0dXJuICItbXdpbmRvd3MiIGVuZAplbmQsCn0sCnN5c3RlbSA9IHsKd2lpID0gIiQoTUFDSERFUCkiLAp9LApzeW1ib2xzID0gewpPZmYgPSBnY2MubGRzeW1ib2xzLApEZWZhdWx0ID0gZ2NjLmxkc3ltYm9scywKfQp9CmZ1bmN0aW9uIGdjYy5nZXRsZGZsYWdzKGNmZykKbG9jYWwgZmxhZ3MgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBnY2MubGRmbGFncykKcmV0dXJuIGZsYWdzCmVuZApnY2MubGlicmFyeURpcmVjdG9yaWVzID0gewphcmNoaXRlY3R1cmUgPSB7Cng4NiA9IGZ1bmN0aW9uIChjZmcpCmxvY2FsIHIgPSB7fQppZiBjZmcuc3lzdGVtIH49IHAuTUFDT1NYIHRoZW4KdGFibGUuaW5zZXJ0IChyLCAiLUwvdXNyL2xpYjMyIikKZW5kCnJldHVybiByCmVuZCwKeDg2XzY0ID0gZnVuY3Rpb24gKGNmZykKbG9jYWwgciA9IHt9CmlmIGNmZy5zeXN0ZW0gfj0gcC5NQUNPU1ggdGhlbgp0YWJsZS5pbnNlcnQgKHIsICItTC91c3IvbGliNjQiKQplbmQKcmV0dXJuIHIKZW5kLAp9LApzeXN0ZW0gPSB7CndpaSA9ICItTCQoTElCT0dDX0xJQikiLAp9Cn0KZnVuY3Rpb24gZ2NjLmdldExpYnJhcnlEaXJlY3RvcmllcyhjZmcpCmxvY2FsIGZsYWdzID0gY29uZmlnLm1hcEZsYWdzKGNmZywgZ2NjLmxpYnJhcnlEaXJlY3RvcmllcykKZm9yIF8sIGRpciBpbiBpcGFpcnMoY29uZmlnLmdldGxpbmtzKGNmZywgInN5c3RlbSIsICJkaXJlY3RvcnkiKSkgZG8KdGFibGUuaW5zZXJ0KGZsYWdzLCAnLUwnIC4uIHAucXVvdGVkKGRpcikpCmVuZAppZiBjZmcuZmxhZ3MuUmVsYXRpdmVMaW5rcyB0aGVuCmZvciBfLCBkaXIgaW4gaXBhaXJzKGNvbmZpZy5nZXRsaW5rcyhjZmcsICJzaWJsaW5ncyIsICJkaXJlY3RvcnkiKSkgZG8KbG9jYWwgbGliRmxhZyA9ICItTCIgLi4gcC5wcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBkaXIpCmlmIG5vdCB0YWJsZS5jb250YWlucyhmbGFncywgbGliRmxhZykgdGhlbgp0YWJsZS5pbnNlcnQoZmxhZ3MsIGxpYkZsYWcpCmVuZAplbmQKZW5kCmZvciBfLCBkaXIgaW4gaXBhaXJzKGNmZy5zeXNsaWJkaXJzKSBkbwp0YWJsZS5pbnNlcnQoZmxhZ3MsICctTCcgLi4gcC5xdW90ZWQoZGlyKSkKZW5kCnJldHVybiBmbGFncwplbmQKZnVuY3Rpb24gZ2NjLmdldGxpbmtzKGNmZywgc3lzdGVtb25seSwgbm9ncm91cHMpCmxvY2FsIHJlc3VsdCA9IHt9CmlmIG5vdCBzeXN0ZW1vbmx5IHRoZW4KaWYgY2ZnLmZsYWdzLlJlbGF0aXZlTGlua3MgdGhlbgpsb2NhbCBsaWJGaWxlcyA9IGNvbmZpZy5nZXRsaW5rcyhjZmcsICJzaWJsaW5ncyIsICJiYXNlbmFtZSIpCmZvciBfLCBsaW5rIGluIGlwYWlycyhsaWJGaWxlcykgZG8KaWYgc3RyaW5nLnN0YXJ0c3dpdGgobGluaywgImxpYiIpIHRoZW4KbGluayA9IGxpbms6c3ViKDQpCmVuZAp0YWJsZS5pbnNlcnQocmVzdWx0LCAiLWwiIC4uIGxpbmspCmVuZAplbHNlCnJlc3VsdCA9IGNvbmZpZy5nZXRsaW5rcyhjZmcsICJzaWJsaW5ncyIsICJmdWxscGF0aCIpCmVuZAplbmQKaWYgbm90IG5vZ3JvdXBzIGFuZCAjcmVzdWx0ID4gMSBhbmQgKGNmZy5saW5rZ3JvdXBzID09IHAuT04pIHRoZW4KdGFibGUuaW5zZXJ0KHJlc3VsdCwgMSwgIi1XbCwtLXN0YXJ0LWdyb3VwIikKdGFibGUuaW5zZXJ0KHJlc3VsdCwgIi1XbCwtLWVuZC1ncm91cCIpCmVuZApsb2NhbCBsaW5rcyA9IGNvbmZpZy5nZXRsaW5rcyhjZmcsICJzeXN0ZW0iLCAiZnVsbHBhdGgiKQpsb2NhbCBzdGF0aWNfc3lzbGlicyA9IHsiLVdsLC1Cc3RhdGljIn0KbG9jYWwgc2hhcmVkX3N5c2xpYnMgPSB7fQpmb3IgXywgbGluayBpbiBpcGFpcnMobGlua3MpIGRvCmlmIHBhdGguaXNmcmFtZXdvcmsobGluaykgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCAiLWZyYW1ld29yayIpCnRhYmxlLmluc2VydChyZXN1bHQsIHBhdGguZ2V0YmFzZW5hbWUobGluaykpCmVsc2VpZiBwYXRoLmlzb2JqZWN0ZmlsZShsaW5rKSB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsIGxpbmspCmVsc2UKbG9jYWwgZW5kc3dpdGggPSBmdW5jdGlvbihzLCBwdHJuKQpyZXR1cm4gcHRybiA9PSBzdHJpbmcuc3ViKHMsIC1zdHJpbmcubGVuKHB0cm4pKQplbmQKbG9jYWwgbmFtZSA9IHBhdGguZ2V0bmFtZShsaW5rKQppZiBlbmRzd2l0aChuYW1lLCAiOnN0YXRpYyIpIHRoZW4KbmFtZSA9IHN0cmluZy5zdWIobmFtZSwgMCwgLTgpCnRhYmxlLmluc2VydChzdGF0aWNfc3lzbGlicywgIi1sIiAuLiBuYW1lKQplbHNlaWYgZW5kc3dpdGgobmFtZSwgIjpzaGFyZWQiKSB0aGVuCm5hbWUgPSBzdHJpbmcuc3ViKG5hbWUsIDAsIC04KQp0YWJsZS5pbnNlcnQoc2hhcmVkX3N5c2xpYnMsICItbCIgLi4gbmFtZSkKZWxzZQp0YWJsZS5pbnNlcnQoc2hhcmVkX3N5c2xpYnMsICItbCIgLi4gbmFtZSkKZW5kCmVuZAplbmQKbG9jYWwgbW92ZSA9IGZ1bmN0aW9uKGExLCBhMikKbG9jYWwgdCA9ICNhMgpmb3IgaSA9IDEsICNhMSBkbyBhMlt0ICsgaV0gPSBhMVtpXSBlbmQKZW5kCmlmICNzdGF0aWNfc3lzbGlicyA+IDEgdGhlbgp0YWJsZS5pbnNlcnQoc3RhdGljX3N5c2xpYnMsICItV2wsLUJkeW5hbWljIikKbW92ZShzdGF0aWNfc3lzbGlicywgcmVzdWx0KQplbmQKbW92ZShzaGFyZWRfc3lzbGlicywgcmVzdWx0KQpyZXR1cm4gcmVzdWx0CmVuZApnY2MubWFrZXNldHRpbmdzID0gewpzeXN0ZW0gPSB7CndpaSA9IFtbCiAgaWZlcSAoJChzdHJpcCAkKERFVktJVFBQQykpLCkKICAgICQoZXJyb3IgIkRFVktJVFBQQyBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyBub3Qgc2V0IiknCiAgZW5kaWYKICBpbmNsdWRlICQoREVWS0lUUFBDKS93aWlfcnVsZXMnXV0KfQp9CmZ1bmN0aW9uIGdjYy5nZXRtYWtlc2V0dGluZ3MoY2ZnKQpsb2NhbCBzZXR0aW5ncyA9IGNvbmZpZy5tYXBGbGFncyhjZmcsIGdjYy5tYWtlc2V0dGluZ3MpCnJldHVybiB0YWJsZS5jb25jYXQoc2V0dGluZ3MpCmVuZApnY2MudG9vbHMgPSB7CmNjID0gImdjYyIsCmN4eCA9ICJnKysiLAphciA9ICJhciIsCnJjID0gIndpbmRyZXMiCn0KZnVuY3Rpb24gZ2NjLmdldHRvb2xuYW1lKGNmZywgdG9vbCkKaWYgKGNmZy5nY2NwcmVmaXggYW5kIGdjYy50b29sc1t0b29sXSkgb3IgdG9vbCA9PSAicmMiIHRoZW4KcmV0dXJuIChjZmcuZ2NjcHJlZml4IG9yICIiKSAuLiBnY2MudG9vbHNbdG9vbF0KZW5kCnJldHVybiBuaWwKZW5kCgAAbG9jYWwgcCA9IHByZW1ha2UKcC50b29scy5tc2MgPSB7fQpsb2NhbCBtc2MgPSBwLnRvb2xzLm1zYwpsb2NhbCBwcm9qZWN0ID0gcC5wcm9qZWN0CmxvY2FsIGNvbmZpZyA9IHAuY29uZmlnCmZ1bmN0aW9uIG1zYy5nZXRjcHBmbGFncyhjZmcpCnJldHVybiB7fQplbmQKbXNjLnNoYXJlZCA9IHsKY2xyID0gewpPbiA9ICIvY2xyIiwKVW5zYWZlID0gIi9jbHIiLApQdXJlID0gIi9jbHI6cHVyZSIsClNhZmUgPSAiL2NscjpzYWZlIiwKfSwKZmxhZ3MgPSB7CkZhdGFsQ29tcGlsZVdhcm5pbmdzID0gIi9XWCIsCk11bHRpUHJvY2Vzc29yQ29tcGlsZSA9ICIvTVAiLApOb0ZyYW1lUG9pbnRlciA9ICIvT3kiLApOb01pbmltYWxSZWJ1aWxkID0gIi9HbS0iLApPbWl0RGVmYXVsdExpYnJhcnkgPSAiL1psIiwKU3RhdGljUnVudGltZSA9IGZ1bmN0aW9uKGNmZykgcmV0dXJuIGlpZihjb25maWcuaXNEZWJ1Z0J1aWxkKGNmZyksICIvTVRkIiwgIi9NVCIpIGVuZCwKX1N0YXRpY1J1bnRpbWUgPSBmdW5jdGlvbihjZmcpIHJldHVybiBpaWYoY29uZmlnLmlzRGVidWdCdWlsZChjZmcpLCAiL01EZCIsICIvTUQiKSBlbmQKfSwKZmxvYXRpbmdwb2ludCA9IHsKRmFzdCA9ICIvZnA6ZmFzdCIsClN0cmljdCA9ICIvZnA6c3RyaWN0IiwKfSwKZmxvYXRpbmdwb2ludGV4Y2VwdGlvbnMgPSB7Ck9uICA9ICIvZnA6ZXhjZXB0IiwKT2ZmID0gIi9mcDpleGNlcHQtIiwKfSwKZnVuY3Rpb25sZXZlbGxpbmtpbmcgPSB7Ck9uID0gIi9HeSIsCk9mZiA9ICIvR3ktIiwKfSwKY2FsbGluZ2NvbnZlbnRpb24gPSB7CkNkZWNsID0gIi9HZCIsCkZhc3RDYWxsID0gIi9HciIsClN0ZENhbGwgPSAiL0d6IiwKVmVjdG9yQ2FsbCA9ICIvR3YiLAp9LAppbnRyaW5zaWNzID0gewpPbiA9ICIvT2kiLAp9LApvcHRpbWl6ZSA9IHsKT2ZmID0gIi9PZCIsCk9uID0gIi9PdCIsCkRlYnVnID0gIi9PZCIsCkZ1bGwgPSAiL094IiwKU2l6ZSA9ICIvTzEiLApTcGVlZCA9ICIvTzIiLAp9LAp2ZWN0b3JleHRlbnNpb25zID0gewpBVlggPSAiL2FyY2g6QVZYIiwKQVZYMiA9ICIvYXJjaDpBVlgyIiwKU1NFID0gIi9hcmNoOlNTRSIsClNTRTIgPSAiL2FyY2g6U1NFMiIsClNTRTMgPSAiL2FyY2g6U1NFMiIsClNTU0UzID0gIi9hcmNoOlNTRTIiLApbIlNTRTQuMSJdID0gIi9hcmNoOlNTRTIiLAp9LAp3YXJuaW5ncyA9IHsKRXh0cmEgPSAiL1c0IiwKSGlnaCA9ICIvVzQiLApPZmYgPSAiL1cwIiwKfSwKc3RyaW5ncG9vbGluZyA9IHsKT24gPSAiL0dGIiwKT2ZmID0gIi9HRi0iLAp9LApzeW1ib2xzID0gewpPbiA9ICIvWjciCn0KfQptc2MuY2ZsYWdzID0gewp9CmZ1bmN0aW9uIG1zYy5nZXRjZmxhZ3MoY2ZnKQpsb2NhbCBzaGFyZWQgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBtc2Muc2hhcmVkKQpsb2NhbCBjZmxhZ3MgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBtc2MuY2ZsYWdzKQpsb2NhbCBmbGFncyA9IHRhYmxlLmpvaW4oc2hhcmVkLCBjZmxhZ3MsIG1zYy5nZXR3YXJuaW5ncyhjZmcpKQpyZXR1cm4gZmxhZ3MKZW5kCm1zYy5jeHhmbGFncyA9IHsKZXhjZXB0aW9uaGFuZGxpbmcgPSB7CkRlZmF1bHQgPSAiL0VIc2MiLApPbiA9ICIvRUhzYyIsClNFSCA9ICIvRUhhIiwKfSwKcnR0aSA9IHsKT2ZmID0gIi9HUi0iCn0KfQpmdW5jdGlvbiBtc2MuZ2V0Y3h4ZmxhZ3MoY2ZnKQpsb2NhbCBzaGFyZWQgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBtc2Muc2hhcmVkKQpsb2NhbCBjeHhmbGFncyA9IGNvbmZpZy5tYXBGbGFncyhjZmcsIG1zYy5jeHhmbGFncykKbG9jYWwgZmxhZ3MgPSB0YWJsZS5qb2luKHNoYXJlZCwgY3h4ZmxhZ3MsIG1zYy5nZXR3YXJuaW5ncyhjZmcpKQpyZXR1cm4gZmxhZ3MKZW5kCm1zYy5kZWZpbmVzID0gewpjaGFyYWN0ZXJzZXQgPSB7CkRlZmF1bHQgPSB7ICcvRCJfVU5JQ09ERSInLCAnL0QiVU5JQ09ERSInIH0sCk1CQ1MgPSAnL0QiX01CQ1MiJywKVW5pY29kZSA9IHsgJy9EIl9VTklDT0RFIicsICcvRCJVTklDT0RFIicgfSwKQVNDSUkgPSB7IH0sCn0KfQpmdW5jdGlvbiBtc2MuZ2V0ZGVmaW5lcyhkZWZpbmVzLCBjZmcpCmxvY2FsIHJlc3VsdAppZiBjZmcgYW5kIGRlZmluZXMgdGhlbgpyZXN1bHQgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBtc2MuZGVmaW5lcykKZWxzZQpyZXN1bHQgPSB7fQplbmQKZm9yIF8sIGRlZmluZSBpbiBpcGFpcnMoZGVmaW5lcykgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy9EIicgLi4gZGVmaW5lIC4uICciJykKZW5kCmlmIGNmZyBhbmQgY2ZnLmV4Y2VwdGlvbmhhbmRsaW5nID09IHAuT0ZGIHRoZW4KdGFibGUuaW5zZXJ0KHJlc3VsdCwgIi9EX0hBU19FWENFUFRJT05TPTAiKQplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gbXNjLmdldHVuZGVmaW5lcyh1bmRlZmluZXMpCmxvY2FsIHJlc3VsdCA9IHt9CmZvciBfLCB1bmRlZmluZSBpbiBpcGFpcnModW5kZWZpbmVzKSBkbwp0YWJsZS5pbnNlcnQocmVzdWx0LCAnL1UiJyAuLiB1bmRlZmluZSAuLiAnIicpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBtc2MuZ2V0Zm9yY2VpbmNsdWRlcyhjZmcpCmxvY2FsIHJlc3VsdCA9IHt9CnRhYmxlLmZvcmVhY2hpKGNmZy5mb3JjZWluY2x1ZGVzLCBmdW5jdGlvbih2YWx1ZSkKbG9jYWwgZm4gPSBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCB2YWx1ZSkKdGFibGUuaW5zZXJ0KHJlc3VsdCwgIi9GSSIgLi4gcC5xdW90ZWQoZm4pKQplbmQpCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIG1zYy5nZXRydW5wYXRoZGlycygpCnJldHVybiB7fQplbmQKZnVuY3Rpb24gbXNjLmdldGluY2x1ZGVkaXJzKGNmZywgZGlycywgc3lzZGlycykKbG9jYWwgcmVzdWx0ID0ge30KZGlycyA9IHRhYmxlLmpvaW4oZGlycywgc3lzZGlycykKZm9yIF8sIGRpciBpbiBpcGFpcnMoZGlycykgZG8KZGlyID0gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgZGlyKQp0YWJsZS5pbnNlcnQocmVzdWx0LCAnLUknIC4uICBwLnF1b3RlZChkaXIpKQplbmQKcmV0dXJuIHJlc3VsdAplbmQKbXNjLmxpbmtlckZsYWdzID0gewpmbGFncyA9IHsKRmF0YWxMaW5rV2FybmluZ3MgPSAiL1dYIiwKTGlua1RpbWVPcHRpbWl6YXRpb24gPSAiL0dMIiwKTm9JbmNyZW1lbnRhbExpbmsgPSAiL0lOQ1JFTUVOVEFMOk5PIiwKTm9NYW5pZmVzdCA9ICIvTUFOSUZFU1Q6Tk8iLApPbWl0RGVmYXVsdExpYnJhcnkgPSAiL05PREVGQVVMVExJQiIsCn0sCmtpbmQgPSB7ClNoYXJlZExpYiA9ICIvRExMIiwKfSwKc3ltYm9scyA9IHsKT24gPSAiL0RFQlVHIgp9Cn0KbXNjLmxpYnJhcmlhbkZsYWdzID0gewpmbGFncyA9IHsKRmF0YWxMaW5rV2FybmluZ3MgPSAiL1dYIiwKfQp9CmZ1bmN0aW9uIG1zYy5nZXRsZGZsYWdzKGNmZykKbG9jYWwgbWFwID0gaWlmKGNmZy5raW5kIH49IHAuU1RBVElDTElCLCBtc2MubGlua2VyRmxhZ3MsIG1zYy5saWJyYXJpYW5GbGFncykKbG9jYWwgZmxhZ3MgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBtYXApCnRhYmxlLmluc2VydChmbGFncywgMSwgIi9OT0xPR08iKQpmb3IgaSwgaWdub3JlIGluIGlwYWlycyhjZmcuaWdub3JlZGVmYXVsdGxpYnJhcmllcykgZG8KaWYgbm90IG1zYy5nZXRMaWJyYXJ5RXh0ZW5zaW9ucygpW2lnbm9yZTptYXRjaCgiW14uXSskIildIHRoZW4KaWdub3JlID0gcGF0aC5hcHBlbmRleHRlbnNpb24oaWdub3JlLCAiLmxpYiIpCmVuZAp0YWJsZS5pbnNlcnQoZmxhZ3MsICcvTk9ERUZBVUxUTElCOicgLi4gaWdub3JlKQplbmQKcmV0dXJuIGZsYWdzCmVuZApmdW5jdGlvbiBtc2MuZ2V0TGlicmFyeURpcmVjdG9yaWVzKGNmZykKbG9jYWwgZmxhZ3MgPSB7fQpsb2NhbCBkaXJzID0gdGFibGUuam9pbihjZmcubGliZGlycywgY2ZnLnN5c2xpYmRpcnMpCmZvciBpLCBkaXIgaW4gaXBhaXJzKGRpcnMpIGRvCmRpciA9IHByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIGRpcikKdGFibGUuaW5zZXJ0KGZsYWdzLCAnL0xJQlBBVEg6IicgLi4gZGlyIC4uICciJykKZW5kCnJldHVybiBmbGFncwplbmQKZnVuY3Rpb24gbXNjLmdldExpYnJhcnlFeHRlbnNpb25zKCkKcmV0dXJuIHsKWyJsaWIiXSA9IHRydWUsClsib2JqIl0gPSB0cnVlLAp9CmVuZApmdW5jdGlvbiBtc2MuZ2V0bGlua3MoY2ZnLCBzeXN0ZW1vbmx5LCBub2dyb3VwcykKbG9jYWwgbGlua3MgPSB7fQppZiBub3Qgc3lzdGVtb25seSB0aGVuCmxpbmtzID0gY29uZmlnLmdldGxpbmtzKGNmZywgInNpYmxpbmdzIiwgImZ1bGxwYXRoIikKZW5kCmxvY2FsIHN5c3RlbSA9IGNvbmZpZy5nZXRsaW5rcyhjZmcsICJzeXN0ZW0iLCAiZnVsbHBhdGgiKQpmb3IgaSA9IDEsICNzeXN0ZW0gZG8KbG9jYWwgbGluayA9IHN5c3RlbVtpXQppZiBub3QgcC50b29scy5tc2MuZ2V0TGlicmFyeUV4dGVuc2lvbnMoKVtsaW5rOm1hdGNoKCJbXi5dKyQiKV0gdGhlbgpsaW5rID0gcGF0aC5hcHBlbmRleHRlbnNpb24obGluaywgIi5saWIiKQplbmQKdGFibGUuaW5zZXJ0KGxpbmtzLCBsaW5rKQplbmQKcmV0dXJuIGxpbmtzCmVuZApmdW5jdGlvbiBtc2MuZ2V0bWFrZXNldHRpbmdzKGNmZykKcmV0dXJuIG5pbAplbmQKZnVuY3Rpb24gbXNjLmdldHRvb2xuYW1lKGNmZywgdG9vbCkKcmV0dXJuIG5pbAplbmQKZnVuY3Rpb24gbXNjLmdldHdhcm5pbmdzKGNmZykKbG9jYWwgcmVzdWx0ID0ge30KZm9yIF8sIGRpc2FibGUgaW4gaXBhaXJzKGNmZy5kaXNhYmxld2FybmluZ3MpIGRvCnRhYmxlLmluc2VydChyZXN1bHQsICcvd2QiJyAuLiBkaXNhYmxlIC4uICciJykKZW5kCmZvciBfLCBmYXRhbCBpbiBpcGFpcnMoY2ZnLmZhdGFsd2FybmluZ3MpIGRvCnRhYmxlLmluc2VydChyZXN1bHQsICcvd2UiJyAuLiBmYXRhbCAuLiAnIicpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApsb2NhbCBwID0gcHJlbWFrZQpwLnRvb2xzLnNuYyA9IHt9CmxvY2FsIHNuYyA9IHAudG9vbHMuc25jCmxvY2FsIGdjYyA9IHAudG9vbHMuZ2NjCnNuYy5zaGFyZWQgPSB7CmZsYWdzID0gewpGYXRhbENvbXBpbGVXYXJuaW5ncyA9ICItWHF1aXQ9MiIsCn0sCm9wdGltaXplID0gewpPZmYgPSAiLU8wIiwKT24gPSAiLU8xIiwKRGVidWcgPSAiLU9kIiwKRnVsbCA9ICItTzMiLApTaXplID0gIi1PcyIsClNwZWVkID0gIi1PMiIsCn0sCndhcm5pbmdzID0gewpFeHRyYSA9ICItWGRpYWc9MiIsCn0KfQpzbmMuY2ZsYWdzID0gewp9CmZ1bmN0aW9uIHNuYy5nZXRjZmxhZ3MoY2ZnKQpsb2NhbCBzaGFyZWQgPSBwLmNvbmZpZy5tYXBGbGFncyhjZmcsIHNuYy5zaGFyZWQpCmxvY2FsIGNmbGFncyA9IHAuY29uZmlnLm1hcEZsYWdzKGNmZywgc25jLmNmbGFncykKbG9jYWwgZmxhZ3MgPSB0YWJsZS5qb2luKHNoYXJlZCwgY2ZsYWdzLCBzbmMuZ2V0d2FybmluZ3MoY2ZnKSkKcmV0dXJuIGZsYWdzCmVuZApzbmMuY3h4ZmxhZ3MgPSB7CmV4Y2VwdGlvbmhhbmRsaW5nID0gewpEZWZhdWx0ID0gIi1YYys9ZXhjZXB0aW9ucyIsCk9uID0gIi1YYys9ZXhjZXB0aW9ucyIsClNFSCA9ICItWGMtPWV4Y2VwdGlvbnMiLAp9LApydHRpID0gewpEZWZhdWx0ID0gIi1YYys9cnR0aSIsCk9uID0gIi1YYys9cnR0aSIsClNFSCA9ICItWGMtPXJ0dGkiLAp9Cn0KZnVuY3Rpb24gc25jLmdldGN4eGZsYWdzKGNmZykKbG9jYWwgc2hhcmVkID0gY29uZmlnLm1hcEZsYWdzKGNmZywgc25jLnNoYXJlZCkKbG9jYWwgY3h4ZmxhZ3MgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBzbmMuY3h4ZmxhZ3MpCmxvY2FsIGZsYWdzID0gdGFibGUuam9pbihzaGFyZWQsIGN4eGZsYWdzLCBzbmMuZ2V0d2FybmluZ3MoY2ZnKSkKcmV0dXJuIGZsYWdzCmVuZApmdW5jdGlvbiBzbmMuZ2V0Zm9yY2VpbmNsdWRlcyhjZmcpCmxvY2FsIGZsYWdzID0gZ2NjLmdldGZvcmNlaW5jbHVkZXMoY2ZnKQpyZXR1cm4gZmxhZ3MKZW5kCmZ1bmN0aW9uIHNuYy5nZXRsZGZsYWdzKGNmZykKbG9jYWwgZmxhZ3MgPSB7IH0KaWYgbm90IChjZmcuc3ltYm9scyA9PSBwLk9OKSB0aGVuCnRhYmxlLmluc2VydChmbGFncywgIi1zIikKZW5kCnJldHVybiBmbGFncwplbmQKc25jLmdldGNwcGZsYWdzID0gZ2NjLmdldGNwcGZsYWdzCnNuYy5nZXRkZWZpbmVzID0gZ2NjLmdldGRlZmluZXMKc25jLmdldGluY2x1ZGVkaXJzID0gZ2NjLmdldGluY2x1ZGVkaXJzCnNuYy5nZXRydW5wYXRoZGlycyA9IGdjYy5nZXRydW5wYXRoZGlycwpzbmMuZ2V0TGlicmFyeURpcmVjdG9yaWVzID0gZ2NjLmdldExpYnJhcnlEaXJlY3RvcmllcwpzbmMuZ2V0bGlua3MgPSBnY2MuZ2V0bGlua3MKZnVuY3Rpb24gc25jLmdldG1ha2VzZXR0aW5ncyhjZmcpCnJldHVybiBuaWwKZW5kCnNuYy50b29scyA9IHsKfQpmdW5jdGlvbiBzbmMuZ2V0dG9vbG5hbWUoY2ZnLCB0b29sKQpsb2NhbCBuYW1lcyA9IHNuYy50b29sc1tjZmcuYXJjaGl0ZWN0dXJlXSBvciBzbmMudG9vbHNbY2ZnLnN5c3RlbV0gb3Ige30KcmV0dXJuIG5hbWVzW3Rvb2xdCmVuZAoAAABsb2NhbCBwID0gcHJlbWFrZQpwLnRvb2xzLmNsYW5nID0ge30KbG9jYWwgY2xhbmcgPSBwLnRvb2xzLmNsYW5nCmxvY2FsIGdjYyA9IHAudG9vbHMuZ2NjCmxvY2FsIGNvbmZpZyA9IHAuY29uZmlnCmZ1bmN0aW9uIGNsYW5nLmdldGNwcGZsYWdzKGNmZykKbG9jYWwgZmxhZ3MgPSBnY2MuZ2V0Y3BwZmxhZ3MoY2ZnKQpyZXR1cm4gZmxhZ3MKZW5kCmNsYW5nLnNoYXJlZCA9IHsKYXJjaGl0ZWN0dXJlID0gZ2NjLnNoYXJlZC5hcmNoaXRlY3R1cmUsCmZsYWdzID0gZ2NjLnNoYXJlZC5mbGFncywKZmxvYXRpbmdwb2ludCA9IHsKRmFzdCA9ICItZmZhc3QtbWF0aCIsCn0sCnN0cmljdGFsaWFzaW5nID0gZ2NjLnNoYXJlZC5zdHJpY3RhbGlhc2luZywKb3B0aW1pemUgPSB7Ck9mZiA9ICItTzAiLApPbiA9ICItTzIiLApEZWJ1ZyA9ICItTzAiLApGdWxsID0gIi1PMyIsClNpemUgPSAiLU9zIiwKU3BlZWQgPSAiLU8zIiwKfSwKcGljID0gZ2NjLnNoYXJlZC5waWMsCnZlY3RvcmV4dGVuc2lvbnMgPSBnY2Muc2hhcmVkLnZlY3RvcmV4dGVuc2lvbnMsCndhcm5pbmdzID0gZ2NjLnNoYXJlZC53YXJuaW5ncywKc3ltYm9scyA9IGdjYy5zaGFyZWQuc3ltYm9scwp9CmNsYW5nLmNmbGFncyA9IHRhYmxlLm1lcmdlKGdjYy5jZmxhZ3MsIHsKfSkKZnVuY3Rpb24gY2xhbmcuZ2V0Y2ZsYWdzKGNmZykKbG9jYWwgc2hhcmVkID0gY29uZmlnLm1hcEZsYWdzKGNmZywgY2xhbmcuc2hhcmVkKQpsb2NhbCBjZmxhZ3MgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBjbGFuZy5jZmxhZ3MpCmxvY2FsIGZsYWdzID0gdGFibGUuam9pbihzaGFyZWQsIGNmbGFncykKZmxhZ3MgPSB0YWJsZS5qb2luKGZsYWdzLCBjbGFuZy5nZXR3YXJuaW5ncyhjZmcpKQpyZXR1cm4gZmxhZ3MKZW5kCmZ1bmN0aW9uIGNsYW5nLmdldHdhcm5pbmdzKGNmZykKcmV0dXJuIGdjYy5nZXR3YXJuaW5ncyhjZmcpCmVuZApjbGFuZy5jeHhmbGFncyA9IHRhYmxlLm1lcmdlKGdjYy5jeHhmbGFncywgewp9KQpmdW5jdGlvbiBjbGFuZy5nZXRjeHhmbGFncyhjZmcpCmxvY2FsIHNoYXJlZCA9IGNvbmZpZy5tYXBGbGFncyhjZmcsIGNsYW5nLnNoYXJlZCkKbG9jYWwgY3h4ZmxhZ3MgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBjbGFuZy5jeHhmbGFncykKbG9jYWwgZmxhZ3MgPSB0YWJsZS5qb2luKHNoYXJlZCwgY3h4ZmxhZ3MpCmZsYWdzID0gdGFibGUuam9pbihmbGFncywgY2xhbmcuZ2V0d2FybmluZ3MoY2ZnKSkKcmV0dXJuIGZsYWdzCmVuZApmdW5jdGlvbiBjbGFuZy5nZXRkZWZpbmVzKGRlZmluZXMpCmxvY2FsIGZsYWdzID0gZ2NjLmdldGRlZmluZXMoZGVmaW5lcykKcmV0dXJuIGZsYWdzCmVuZApmdW5jdGlvbiBjbGFuZy5nZXR1bmRlZmluZXModW5kZWZpbmVzKQpsb2NhbCBmbGFncyA9IGdjYy5nZXR1bmRlZmluZXModW5kZWZpbmVzKQpyZXR1cm4gZmxhZ3MKZW5kCmZ1bmN0aW9uIGNsYW5nLmdldGZvcmNlaW5jbHVkZXMoY2ZnKQpsb2NhbCBmbGFncyA9IGdjYy5nZXRmb3JjZWluY2x1ZGVzKGNmZykKcmV0dXJuIGZsYWdzCmVuZApmdW5jdGlvbiBjbGFuZy5nZXRpbmNsdWRlZGlycyhjZmcsIGRpcnMsIHN5c2RpcnMpCmxvY2FsIGZsYWdzID0gZ2NjLmdldGluY2x1ZGVkaXJzKGNmZywgZGlycywgc3lzZGlycykKcmV0dXJuIGZsYWdzCmVuZApjbGFuZy5nZXRydW5wYXRoZGlycyA9IGdjYy5nZXRydW5wYXRoZGlycwpmdW5jdGlvbiBjbGFuZy5nZXRzaGFyZWRsaWJhcmcoY2ZnKQpyZXR1cm4gZ2NjLmdldHNoYXJlZGxpYmFyZyhjZmcpCmVuZApjbGFuZy5sZGZsYWdzID0gewphcmNoaXRlY3R1cmUgPSB7Cng4NiA9ICItbTMyIiwKeDg2XzY0ID0gIi1tNjQiLAp9LApmbGFncyA9IHsKTGlua1RpbWVPcHRpbWl6YXRpb24gPSAiLWZsdG8iLAp9LApraW5kID0gewpTaGFyZWRMaWIgPSBmdW5jdGlvbihjZmcpCmxvY2FsIHIgPSB7IGNsYW5nLmdldHNoYXJlZGxpYmFyZyhjZmcpIH0KaWYgY2ZnLnN5c3RlbSA9PSAid2luZG93cyIgYW5kIG5vdCBjZmcuZmxhZ3MuTm9JbXBvcnRMaWIgdGhlbgp0YWJsZS5pbnNlcnQociwgJy1XbCwtLW91dC1pbXBsaWI9IicgLi4gY2ZnLmxpbmt0YXJnZXQucmVscGF0aCAuLiAnIicpCmVsc2VpZiBjZmcuc3lzdGVtID09IHAuTElOVVggdGhlbgp0YWJsZS5pbnNlcnQociwgJy1XbCwtc29uYW1lPScgLi4gcC5xdW90ZWQoY2ZnLmxpbmt0YXJnZXQubmFtZSkpCmVsc2VpZiBjZmcuc3lzdGVtID09IHAuTUFDT1NYIHRoZW4KdGFibGUuaW5zZXJ0KHIsICctV2wsLWluc3RhbGxfbmFtZSwnIC4uIHAucXVvdGVkKCdAcnBhdGgvJyAuLiBjZmcubGlua3RhcmdldC5uYW1lKSkKZW5kCnJldHVybiByCmVuZCwKV2luZG93ZWRBcHAgPSBmdW5jdGlvbihjZmcpCmlmIGNmZy5zeXN0ZW0gPT0gcC5XSU5ET1dTIHRoZW4gcmV0dXJuICItbXdpbmRvd3MiIGVuZAplbmQsCn0sCnN5c3RlbSA9IHsKd2lpID0gIiQoTUFDSERFUCkiLAp9Cn0KZnVuY3Rpb24gY2xhbmcuZ2V0bGRmbGFncyhjZmcpCmxvY2FsIGZsYWdzID0gY29uZmlnLm1hcEZsYWdzKGNmZywgY2xhbmcubGRmbGFncykKcmV0dXJuIGZsYWdzCmVuZApmdW5jdGlvbiBjbGFuZy5nZXRMaWJyYXJ5RGlyZWN0b3JpZXMoY2ZnKQpsb2NhbCBmbGFncyA9IGdjYy5nZXRMaWJyYXJ5RGlyZWN0b3JpZXMoY2ZnKQpyZXR1cm4gZmxhZ3MKZW5kCmZ1bmN0aW9uIGNsYW5nLmdldGxpbmtzKGNmZywgc3lzdGVtb25seSwgbm9ncm91cHMpCnJldHVybiBnY2MuZ2V0bGlua3MoY2ZnLCBzeXN0ZW1vbmx5LCBub2dyb3VwcykKZW5kCmZ1bmN0aW9uIGNsYW5nLmdldG1ha2VzZXR0aW5ncyhjZmcpCmxvY2FsIGZsYWdzID0gZ2NjLmdldG1ha2VzZXR0aW5ncyhjZmcpCnJldHVybiBmbGFncwplbmQKY2xhbmcudG9vbHMgPSB7CmNjID0gImNsYW5nIiwKY3h4ID0gImNsYW5nKysiLAphciA9ICJhciIKfQpmdW5jdGlvbiBjbGFuZy5nZXR0b29sbmFtZShjZmcsIHRvb2wpCnJldHVybiBjbGFuZy50b29sc1t0b29sXQplbmQKAAAAAAAAcHJlbWFrZS5jbGVhbiA9IHt9Cm5ld2FjdGlvbiB7CnRyaWdnZXIgICAgID0gImNsZWFuIiwKZGVzY3JpcHRpb24gPSAiUmVtb3ZlIGFsbCBiaW5hcmllcyBhbmQgZ2VuZXJhdGVkIGZpbGVzIiwKZXhlY3V0ZSA9IGZ1bmN0aW9uKCkKcHJpbnQoIioqIFRoZSBjbGVhbiBhY3Rpb24gaGFzIG5vdCB5ZXQgYmVlbiBwb3J0ZWQiKQplbmQKfQoAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgYXBpID0gcC5hcGkKbG9jYWwgRE9DX1VSTCA9ICJTZWUgaHR0cHM6Ly9naXRodWIuY29tL3ByZW1ha2UvcHJlbWFrZS1jb3JlL3dpa2kvIgphcGkucmVnaXN0ZXIgewpuYW1lID0gImFyY2hpdGVjdHVyZSIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKYWxsb3dlZCA9IHsKInVuaXZlcnNhbCIsCnAuWDg2LApwLlg4Nl82NCwKcC5BUk0sCn0sCmFsaWFzZXMgPSB7CmkzODYgID0gcC5YODYsCmFtZDY0ID0gcC5YODZfNjQsCngzMiAgID0gcC5YODYsLS0gdGhlc2Ugc2hvdWxkIGJlIERFUFJFQ0FURUQKeDY0ICAgPSBwLlg4Nl82NCwKfSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImF0bCIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJPZmYiLAoiRHluYW1pYyIsCiJTdGF0aWMiLAp9LAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiYmFzZWRpciIsCnNjb3BlID0gInByb2plY3QiLApraW5kID0gInBhdGgiCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJidWlsZGFjdGlvbiIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKYWxsb3dlZCA9IHsKIkFwcGxpY2F0aW9uIiwKIkNvbXBpbGUiLAoiQ29tcG9uZW50IiwKIkNvcHkiLAoiRW1iZWQiLAoiRm9ybSIsCiJOb25lIiwKIlJlc291cmNlIiwKIlVzZXJDb250cm9sIiwKfSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImJ1aWxkY29tbWFuZHMiLApzY29wZSA9IHsgImNvbmZpZyIsICJydWxlIiB9LApraW5kID0gImxpc3Q6c3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKcGF0aFZhcnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiYnVpbGRjdXN0b21pemF0aW9ucyIsCnNjb3BlID0gInByb2plY3QiLApraW5kID0gImxpc3Q6c3RyaW5nIiwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImJ1aWxkZGVwZW5kZW5jaWVzIiwKc2NvcGUgPSB7ICJydWxlIiB9LApraW5kID0gImxpc3Q6c3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKcGF0aFZhcnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiYnVpbGRsb2ciLApzY29wZSA9IHsgImNvbmZpZyIgfSwKa2luZCA9ICJwYXRoIiwKdG9rZW5zID0gdHJ1ZSwKcGF0aFZhcnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiYnVpbGRtZXNzYWdlIiwKc2NvcGUgPSB7ICJjb25maWciLCAicnVsZSIgfSwKa2luZCA9ICJzdHJpbmciLAp0b2tlbnMgPSB0cnVlLApwYXRoVmFycyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJidWlsZG9wdGlvbnMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6c3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKcGF0aFZhcnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiYnVpbGRvdXRwdXRzIiwKc2NvcGUgPSB7ICJjb25maWciLCAicnVsZSIgfSwKa2luZCA9ICJsaXN0OnBhdGgiLAp0b2tlbnMgPSB0cnVlLApwYXRoVmFycyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJidWlsZGlucHV0cyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDpwYXRoIiwKdG9rZW5zID0gdHJ1ZSwKcGF0aFZhcnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiYnVpbGRydWxlIiwgICAgIC0tIERFUFJFQ0FURUQKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJ0YWJsZSIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJjaGFyYWN0ZXJzZXQiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJEZWZhdWx0IiwKIkFTQ0lJIiwKIk1CQ1MiLAoiVW5pY29kZSIsCn0KfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImNsZWFuY29tbWFuZHMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6c3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKcGF0aFZhcnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiY2xlYW5leHRlbnNpb25zIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJjbHIiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJPZmYiLAoiT24iLAoiUHVyZSIsCiJTYWZlIiwKIlVuc2FmZSIsCn0KfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImNvbXBpbGVidWlsZG91dHB1dHMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImJvb2xlYW4iCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJjb21waWxlYXMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJEZWZhdWx0IiwKIkMiLAoiQysrIiwKfQp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiY29uZmlnbWFwIiwKc2NvcGUgPSAicHJvamVjdCIsCmtpbmQgPSAibGlzdDprZXllZDphcnJheTpzdHJpbmciLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiY29uZmlnZmlsZSIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImNvbmZpZ3VyYXRpb25zIiwKc2NvcGUgPSAicHJvamVjdCIsCmtpbmQgPSAibGlzdDpzdHJpbmciLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiY29weWxvY2FsIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0Om1peGVkIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImRlYnVnYXJncyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDpzdHJpbmciLAp0b2tlbnMgPSB0cnVlLApwYXRoVmFycyA9IHRydWUsCmFsbG93RHVwbGljYXRlcyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJkZWJ1Z2NvbW1hbmQiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInBhdGgiLAp0b2tlbnMgPSB0cnVlLApwYXRoVmFycyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJkZWJ1Z2Nvbm5lY3Rjb21tYW5kcyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDpzdHJpbmciLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZGVidWdkaXIiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInBhdGgiLAp0b2tlbnMgPSB0cnVlLApwYXRoVmFycyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJkZWJ1Z2VudnMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6c3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKcGF0aFZhcnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZGVidWdleHRlbmRlZHByb3RvY29sIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJib29sZWFuIiwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImRlYnVnZm9ybWF0IiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAphbGxvd2VkID0gewoiYzciLAp9LAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZGVidWdnZXIiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJEZWZhdWx0IiwKIkdEQiIsCiJMTERCIiwKfQp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZGVidWdnZXJ0eXBlIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAphbGxvd2VkID0gewoiTWl4ZWQiLAoiTmF0aXZlT25seSIsCiJNYW5hZ2VkT25seSIsCn0KfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImRlYnVncGF0aG1hcCIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDprZXllZDpwYXRoIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImRlYnVncG9ydCIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAiaW50ZWdlciIsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJkZWJ1Z3JlbW90ZWhvc3QiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJkZWJ1Z3NlYXJjaHBhdGhzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OnBhdGgiLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZGVidWdzdGFydHVwY29tbWFuZHMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6c3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImRlYnVndG9vbGFyZ3MiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6c3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKcGF0aFZhcnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZGVidWd0b29sY29tbWFuZCIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAicGF0aCIsCnRva2VucyA9IHRydWUsCnBhdGhWYXJzID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImRlZmF1bHRwbGF0Zm9ybSIsCnNjb3BlID0gInByb2plY3QiLApraW5kID0gInN0cmluZyIsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJkZWZpbmVzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJkZXBlbmRzb24iLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6c3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImRlcGxveW1lbnRvcHRpb25zIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJkaXNhYmxld2FybmluZ3MiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6c3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImRpc3BsYXkiLApzY29wZSA9ICJydWxlIiwKa2luZCA9ICJzdHJpbmciLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZWRpdGFuZGNvbnRpbnVlIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAphbGxvd2VkID0gewoiRGVmYXVsdCIsCiJPbiIsCiJPZmYiLAp9LAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZXhjZXB0aW9uaGFuZGxpbmciLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJEZWZhdWx0IiwKIk9uIiwKIk9mZiIsCiJTRUgiCn0sCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJlbmFibGV3YXJuaW5ncyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDpzdHJpbmciLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZW5kaWFuIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAphbGxvd2VkID0gewoiRGVmYXVsdCIsCiJMaXR0bGUiLAoiQmlnIiwKfSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImVudHJ5cG9pbnQiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJmYXRhbHdhcm5pbmdzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJmaWxlZXh0ZW5zaW9uIiwKc2NvcGUgPSAicnVsZSIsCmtpbmQgPSAibGlzdDpzdHJpbmciLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZmlsZW5hbWUiLApzY29wZSA9IHsgInByb2plY3QiLCAicnVsZSIgfSwKa2luZCA9ICJzdHJpbmciLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZmlsZXMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6ZmlsZSIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJmdW5jdGlvbmxldmVsbGlua2luZyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAiYm9vbGVhbiIKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImZsYWdzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCAgPSAibGlzdDpzdHJpbmciLAphbGxvd2VkID0gewoiQ29tcG9uZW50IiwgICAgICAgICAgIC0tIERFUFJFQ0FURUQKIkRlYnVnRW52c0RvbnRNZXJnZSIsCiJEZWJ1Z0VudnNJbmhlcml0IiwKIkVuYWJsZVNTRSIsICAgICAgICAgICAtLSBERVBSRUNBVEVECiJFbmFibGVTU0UyIiwgICAgICAgICAgLS0gREVQUkVDQVRFRAoiRXhjbHVkZUZyb21CdWlsZCIsCiJFeHRyYVdhcm5pbmdzIiwgICAgICAgLS0gREVQUkVDQVRFRAoiRmF0YWxDb21waWxlV2FybmluZ3MiLAoiRmF0YWxMaW5rV2FybmluZ3MiLAoiRmxvYXRGYXN0IiwgICAgICAgICAgIC0tIERFUFJFQ0FURUQKIkZsb2F0U3RyaWN0IiwgICAgICAgICAtLSBERVBSRUNBVEVECiJMaW5rVGltZU9wdGltaXphdGlvbiIsCiJNYW5hZ2VkIiwgICAgICAgICAgICAgLS0gREVQUkVDQVRFRAoiTWFwcyIsCiJNRkMiLAoiTXVsdGlQcm9jZXNzb3JDb21waWxlIiwKIk5hdGl2ZVdDaGFyIiwgICAgICAgICAtLSBERVBSRUNBVEVECiJObzY0Qml0Q2hlY2tzIiwKIk5vQ29weUxvY2FsIiwKIk5vRWRpdEFuZENvbnRpbnVlIiwgICAtLSBERVBSRUNBVEVECiJOb0ZyYW1lUG9pbnRlciIsCiJOb0ltcGxpY2l0TGluayIsCiJOb0ltcG9ydExpYiIsCiJOb0luY3JlbWVudGFsTGluayIsCiJOb01hbmlmZXN0IiwKIk5vTWluaW1hbFJlYnVpbGQiLAoiTm9OYXRpdmVXQ2hhciIsICAgICAgIC0tIERFUFJFQ0FURUQKIk5vUENIIiwKIk5vUnVudGltZUNoZWNrcyIsCiJOb0J1ZmZlclNlY3VyaXR5Q2hlY2siLAoiTm9XYXJuaW5ncyIsICAgICAgICAgIC0tIERFUFJFQ0FURUQKIk9taXREZWZhdWx0TGlicmFyeSIsCiJPcHRpbWl6ZSIsICAgICAgICAgICAgLS0gREVQUkVDQVRFRAoiT3B0aW1pemVTaXplIiwgICAgICAgIC0tIERFUFJFQ0FURUQKIk9wdGltaXplU3BlZWQiLCAgICAgICAtLSBERVBSRUNBVEVECiJSZWxhdGl2ZUxpbmtzIiwKIlJlbGVhc2VSdW50aW1lIiwgICAgICAtLSBERVBSRUNBVEVECiJTaGFkb3dlZFZhcmlhYmxlcyIsCiJTdGF0aWNSdW50aW1lIiwKIlN5bWJvbHMiLCAgICAgICAgICAgICAtLSBERVBSRUNBVEVECiJVbmRlZmluZWRJZGVudGlmaWVycyIsCiJXaW5NYWluIiwgICAgICAgICAgICAgLS0gREVQUkVDQVRFRAoiV1BGIiwKIkMrKzExIiwgICAgICAgICAgICAgICAtLSBERVBSRUNBVEVECiJDKysxNCIsICAgICAgICAgICAgICAgLS0gREVQUkVDQVRFRAoiQzkwIiwgICAgICAgICAgICAgICAgIC0tIERFUFJFQ0FURUQKIkM5OSIsICAgICAgICAgICAgICAgICAtLSBERVBSRUNBVEVECiJDMTEiLCAgICAgICAgICAgICAgICAgLS0gREVQUkVDQVRFRAp9LAphbGlhc2VzID0gewpGYXRhbFdhcm5pbmdzID0geyAiRmF0YWxXYXJuaW5ncyIsICJGYXRhbENvbXBpbGVXYXJuaW5ncyIsICJGYXRhbExpbmtXYXJuaW5ncyIgfSwKT3B0aW1pc2UgPSAnT3B0aW1pemUnLApPcHRpbWlzZVNpemUgPSAnT3B0aW1pemVTaXplJywKT3B0aW1pc2VTcGVlZCA9ICdPcHRpbWl6ZVNwZWVkJywKfSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImZsb2F0aW5ncG9pbnQiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJEZWZhdWx0IiwKIkZhc3QiLAoiU3RyaWN0IiwKfQp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZmxvYXRpbmdwb2ludGV4Y2VwdGlvbnMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImJvb2xlYW4iCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJpbmxpbmluZyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKYWxsb3dlZCA9IHsKIkRlZmF1bHQiLAoiRGlzYWJsZWQiLAoiRXhwbGljaXQiLAoiQXV0byIKfQp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiY2FsbGluZ2NvbnZlbnRpb24iLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJDZGVjbCIsCiJGYXN0Q2FsbCIsCiJTdGRDYWxsIiwKIlZlY3RvckNhbGwiLAp9Cn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJmb3JjZWluY2x1ZGVzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0Om1peGVkIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImZvcmNldXNpbmdzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OmZpbGUiLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZnB1IiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAphbGxvd2VkID0gewoiU29mdHdhcmUiLAoiSGFyZHdhcmUiLAp9Cn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJkb3RuZXRmcmFtZXdvcmsiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJnY2NwcmVmaXgiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJpZ25vcmVkZWZhdWx0bGlicmFyaWVzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0Om1peGVkIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImljb24iLApzY29wZSA9ICJwcm9qZWN0IiwKa2luZCA9ICJmaWxlIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImltYWdlb3B0aW9ucyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDpzdHJpbmciLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiaW1hZ2VwYXRoIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJwYXRoIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImltcGxpYmRpciIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAicGF0aCIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJpbXBsaWJleHRlbnNpb24iLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJpbXBsaWJuYW1lIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiaW1wbGlicHJlZml4IiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiaW1wbGlic3VmZml4IiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiaW5jbHVkZWRpcnMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6ZGlyZWN0b3J5IiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImludHJpbnNpY3MiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImJvb2xlYW4iCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJiaW5kaXJzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OmRpcmVjdG9yeSIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJraW5kIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAphbGxvd2VkID0gewoiQ29uc29sZUFwcCIsCiJNYWtlZmlsZSIsCiJOb25lIiwKIlNoYXJlZExpYiIsCiJTdGF0aWNMaWIiLAoiV2luZG93ZWRBcHAiLAoiVXRpbGl0eSIsCn0sCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJzaGFyZWRsaWJ0eXBlIiwKc2NvcGUgPSAicHJvamVjdCIsCmtpbmQgPSAic3RyaW5nIiwKYWxsb3dlZCA9IHsKIk9TWEJ1bmRsZSIsCiJPU1hGcmFtZXdvcmsiLAp9LAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAibGFuZ3VhZ2UiLApzY29wZSA9ICJwcm9qZWN0IiwKa2luZCA9ICJzdHJpbmciLAphbGxvd2VkID0gewoiQyIsCiJDKysiLAoiQyMiCn0KfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImNkaWFsZWN0IiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAphbGxvd2VkID0gewoiRGVmYXVsdCIsCiJDODkiLAoiQzkwIiwKIkM5OSIsCiJDMTEiLAoiZ251ODkiLAoiZ251OTAiLAoiZ251OTkiLAoiZ251MTEiLAp9Cn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJjcHBkaWFsZWN0IiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAphbGxvd2VkID0gewoiRGVmYXVsdCIsCiJDKys5OCIsCiJDKysxMSIsCiJDKysxNCIsCiJDKysxNyIsCiJnbnUrKzk4IiwKImdudSsrMTEiLAoiZ251KysxNCIsCiJnbnUrKzE3IiwKfQp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAibGliZGlycyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDpkaXJlY3RvcnkiLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZnJhbWV3b3JrZGlycyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDpkaXJlY3RvcnkiLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAibGlua2J1aWxkb3V0cHV0cyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAiYm9vbGVhbiIKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImxpbmtvcHRpb25zIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJsaW5rcyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDptaXhlZCIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJsaW5rZ3JvdXBzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAphbGxvd2VkID0gewoiT2ZmIiwKIk9uIiwKfQp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAibG9jYWxlIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAp0b2tlbnMgPSBmYWxzZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImxvY2F0aW9uIiwKc2NvcGUgPSB7ICJwcm9qZWN0IiwgInJ1bGUiIH0sCmtpbmQgPSAicGF0aCIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJtYWtlc2V0dGluZ3MiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6c3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gIm5hbWVzcGFjZSIsCnNjb3BlID0gInByb2plY3QiLApraW5kID0gInN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJuYXRpdmV3Y2hhciIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKYWxsb3dlZCA9IHsKIkRlZmF1bHQiLAoiT24iLAoiT2ZmIiwKfQp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAibnVnZXQiLApzY29wZSA9ICJwcm9qZWN0IiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJudWdldHNvdXJjZSIsCnNjb3BlID0gInByb2plY3QiLApraW5kID0gInN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJvYmpkaXIiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInBhdGgiLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAib3B0aW1pemUiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJPZmYiLAoiT24iLAoiRGVidWciLAoiU2l6ZSIsCiJTcGVlZCIsCiJGdWxsIiwKfQp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAicnVucGF0aGRpcnMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6cGF0aCIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJydW50aW1lIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAphbGxvd2VkID0gewoiRGVidWciLAoiUmVsZWFzZSIsCn0KfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInBjaGhlYWRlciIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInBjaHNvdXJjZSIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAicGF0aCIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJwaWMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJPZmYiLAoiT24iLAp9Cn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJwbGF0Zm9ybXMiLApzY29wZSA9ICJwcm9qZWN0IiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJwb3N0YnVpbGRjb21tYW5kcyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDpzdHJpbmciLAp0b2tlbnMgPSB0cnVlLApwYXRoVmFycyA9IHRydWUsCmFsbG93RHVwbGljYXRlcyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJwb3N0YnVpbGRtZXNzYWdlIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAp0b2tlbnMgPSB0cnVlLApwYXRoVmFycyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJwcmVidWlsZGNvbW1hbmRzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCnRva2VucyA9IHRydWUsCnBhdGhWYXJzID0gdHJ1ZSwKYWxsb3dEdXBsaWNhdGVzID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInByZWJ1aWxkbWVzc2FnZSIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKcGF0aFZhcnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAicHJlbGlua2NvbW1hbmRzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCnRva2VucyA9IHRydWUsCnBhdGhWYXJzID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInByZWxpbmttZXNzYWdlIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAp0b2tlbnMgPSB0cnVlLApwYXRoVmFycyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJwcm9wZXJ0eWRlZmluaXRpb24iLApzY29wZSA9ICJydWxlIiwKa2luZCA9ICJsaXN0OnRhYmxlIiwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInJlYnVpbGRjb21tYW5kcyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDpzdHJpbmciLAp0b2tlbnMgPSB0cnVlLApwYXRoVmFycyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJyZXNkZWZpbmVzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJyZXNpbmNsdWRlZGlycyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDpkaXJlY3RvcnkiLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAicmVzb3B0aW9ucyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdDpzdHJpbmciLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAicmVzb3VyY2VnZW5lcmF0b3IiLApzY29wZSA9ICJwcm9qZWN0IiwKa2luZCA9ICJzdHJpbmciLAogICAgICAgIGFsbG93ZWQgPSB7CiAgICAgICAgICAgICJpbnRlcm5hbCIsCiAgICAgICAgICAgICJwdWJsaWMiCiAgICAgICAgfQp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAicnR0aSIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKYWxsb3dlZCA9IHsKIkRlZmF1bHQiLAoiT24iLAoiT2ZmIiwKfSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInJ1bGVzIiwKc2NvcGUgPSAicHJvamVjdCIsCmtpbmQgPSAibGlzdDpzdHJpbmciLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAic3RhcnRwcm9qZWN0IiwKc2NvcGUgPSAid29ya3NwYWNlIiwKa2luZCA9ICJzdHJpbmciLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAic3RyaWN0YWxpYXNpbmciLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJPZmYiLAoiTGV2ZWwxIiwKIkxldmVsMiIsCiJMZXZlbDMiLAp9Cn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJzdHJpbmdwb29saW5nIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJib29sZWFuIgp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAic3ltYm9scyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKYWxsb3dlZCA9IHsKIkRlZmF1bHQiLAoiT24iLAoiT2ZmIiwKIkZhc3RMaW5rIiwgICAgLS0gVmlzdWFsIFN0dWRpbyAyMDE1KyBvbmx5LCBjb25zaWRlcmVkICdPbicgZm9yIGFsbCBvdGhlciBjYXNlcy4KIkZ1bGwiLCAgICAgICAgLS0gVmlzdWFsIFN0dWRpbyAyMDE3KyBvbmx5LCBjb25zaWRlcmVkICdPbicgZm9yIGFsbCBvdGhlciBjYXNlcy4KfSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInN5bWJvbHNwYXRoIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJwYXRoIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInN5c2luY2x1ZGVkaXJzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OmRpcmVjdG9yeSIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJzeXNsaWJkaXJzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OmRpcmVjdG9yeSIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJzeXN0ZW0iLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJhaXgiLAoiYnNkIiwKImhhaWt1IiwKImxpbnV4IiwKIm1hY29zeCIsCiJzb2xhcmlzIiwKIndpaSIsCiJ3aW5kb3dzIiwKInhib3gzNjAiLAp9LAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAic3lzdGVtdmVyc2lvbiIsCnNjb3BlID0gInByb2plY3QiLApraW5kID0gInN0cmluZyIsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJ0YWdzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJ0YXJnZXRkaXIiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInBhdGgiLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAidGFyZ2V0ZXh0ZW5zaW9uIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAidGFyZ2V0bmFtZSIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInRhcmdldHByZWZpeCIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInRhcmdldHN1ZmZpeCIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInRvb2xzZXQiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSBmdW5jdGlvbih2YWx1ZSkKdmFsdWUgPSB2YWx1ZTpsb3dlcigpCmxvY2FsIHRvb2wsIHZlcnNpb24gPSBwLnRvb2xzLmNhbm9uaWNhbCh2YWx1ZSkKaWYgdG9vbCB0aGVuCnJldHVybiBwLnRvb2xzLm5vcm1hbGl6ZSh2YWx1ZSkKZWxzZQpyZXR1cm4gbmlsCmVuZAplbmQsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJjdXN0b210b29sbmFtZXNwYWNlIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJzdHJpbmciLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAidW5kZWZpbmVzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJ1c2luZ2RpcnMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6ZGlyZWN0b3J5IiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInV1aWQiLApzY29wZSA9ICJwcm9qZWN0IiwKa2luZCA9ICJzdHJpbmciLAphbGxvd2VkID0gZnVuY3Rpb24odmFsdWUpCmxvY2FsIG9rID0gdHJ1ZQppZiAoI3ZhbHVlIH49IDM2KSB0aGVuIG9rID0gZmFsc2UgZW5kCmZvciBpPTEsMzYgZG8KbG9jYWwgY2ggPSB2YWx1ZTpzdWIoaSxpKQppZiAobm90IGNoOmZpbmQoIltBQkNERUZhYmNkZWYwMTIzNDU2Nzg5LV0iKSkgdGhlbiBvayA9IGZhbHNlIGVuZAplbmQKaWYgKHZhbHVlOnN1Yig5LDkpIH49ICItIikgICB0aGVuIG9rID0gZmFsc2UgZW5kCmlmICh2YWx1ZTpzdWIoMTQsMTQpIH49ICItIikgdGhlbiBvayA9IGZhbHNlIGVuZAppZiAodmFsdWU6c3ViKDE5LDE5KSB+PSAiLSIpIHRoZW4gb2sgPSBmYWxzZSBlbmQKaWYgKHZhbHVlOnN1YigyNCwyNCkgfj0gIi0iKSB0aGVuIG9rID0gZmFsc2UgZW5kCmlmIChub3Qgb2spIHRoZW4KcmV0dXJuIG5pbCwgImludmFsaWQgVVVJRCIKZW5kCnJldHVybiB2YWx1ZTp1cHBlcigpCmVuZAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAidmVjdG9yZXh0ZW5zaW9ucyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKYWxsb3dlZCA9IHsKIkRlZmF1bHQiLAoiQVZYIiwKIkFWWDIiLAoiSUEzMiIsCiJTU0UiLAoiU1NFMiIsCiJTU0UzIiwKIlNTU0UzIiwKIlNTRTQuMSIsCn0KfQphcGkucmVnaXN0ZXIgewpuYW1lID0gInZwYXRocyIsCnNjb3BlID0gInByb2plY3QiLApraW5kID0gImxpc3Q6a2V5ZWQ6bGlzdDpwYXRoIiwKdG9rZW5zID0gdHJ1ZSwKcGF0aFZhcnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAid2FybmluZ3MiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCmFsbG93ZWQgPSB7CiJPZmYiLAoiRGVmYXVsdCIsCiJIaWdoIiwKIkV4dHJhIiwKfQp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAibGFyZ2VhZGRyZXNzYXdhcmUiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImJvb2xlYW4iLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZWRpdG9yaW50ZWdyYXRpb24iLApzY29wZSA9ICJ3b3Jrc3BhY2UiLApraW5kID0gImJvb2xlYW4iLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAicHJlZmVycmVkdG9vbGFyY2hpdGVjdHVyZSIsCnNjb3BlID0gIndvcmtzcGFjZSIsCmtpbmQgPSAic3RyaW5nIiwKYWxsb3dlZCA9IHsKIkRlZmF1bHQiLApwLlg4NiwKcC5YODZfNjQsCn0KfQphcGkuYWxpYXMoImJ1aWxkY29tbWFuZHMiLCAiYnVpbGRDb21tYW5kcyIpCmFwaS5hbGlhcygiYnVpbGRkZXBlbmRlbmNpZXMiLCAiYnVpbGREZXBlbmRlbmNpZXMiKQphcGkuYWxpYXMoImJ1aWxkbWVzc2FnZSIsICJidWlsZE1lc3NhZ2UiKQphcGkuYWxpYXMoImJ1aWxkb3V0cHV0cyIsICJidWlsZE91dHB1dHMiKQphcGkuYWxpYXMoImNsZWFuZXh0ZW5zaW9ucyIsICJjbGVhbkV4dGVuc2lvbnMiKQphcGkuYWxpYXMoImNvbmZpZ2ZpbGUiLCAiY29uZmlnRmlsZSIpCmFwaS5hbGlhcygiZG90bmV0ZnJhbWV3b3JrIiwgImZyYW1ld29yayIpCmFwaS5hbGlhcygiZWRpdGFuZGNvbnRpbnVlIiwgImVkaXRBbmRDb250aW51ZSIpCmFwaS5hbGlhcygiZmlsZWV4dGVuc2lvbiIsICJmaWxlRXh0ZW5zaW9uIikKYXBpLmFsaWFzKCJwcm9wZXJ0eWRlZmluaXRpb24iLCAicHJvcGVydHlEZWZpbml0aW9uIikKYXBpLmFsaWFzKCJyZW1vdmVmaWxlcyIsICJleGNsdWRlcyIpCmFwaS5kZXByZWNhdGVGaWVsZCgiYnVpbGRydWxlIiwgJ1VzZSBgYnVpbGRjb21tYW5kc2AsIGBidWlsZG91dHB1dHNgLCBhbmQgYGJ1aWxkbWVzc2FnZWAgaW5zdGVhZC4nLApmdW5jdGlvbih2YWx1ZSkKaWYgdmFsdWUuZGVzY3JpcHRpb24gdGhlbgpidWlsZG1lc3NhZ2UodmFsdWUuZGVzY3JpcHRpb24pCmVuZApidWlsZGNvbW1hbmRzKHZhbHVlLmNvbW1hbmRzKQpidWlsZG91dHB1dHModmFsdWUub3V0cHV0cykKZW5kKQphcGkuZGVwcmVjYXRlVmFsdWUoImZsYWdzIiwgIkNvbXBvbmVudCIsICdVc2UgYGJ1aWxkYWN0aW9uICJDb21wb25lbnQiYCBpbnN0ZWFkLicsCmZ1bmN0aW9uKHZhbHVlKQpidWlsZGFjdGlvbiAiQ29tcG9uZW50IgplbmQpCmFwaS5kZXByZWNhdGVWYWx1ZSgiZmxhZ3MiLCAiRW5hYmxlU1NFIiwgJ1VzZSBgdmVjdG9yZXh0ZW5zaW9ucyAiU1NFImAgaW5zdGVhZC4nLApmdW5jdGlvbih2YWx1ZSkKdmVjdG9yZXh0ZW5zaW9ucygiU1NFIikKZW5kLApmdW5jdGlvbih2YWx1ZSkKdmVjdG9yZXh0ZW5zaW9ucyAiRGVmYXVsdCIKZW5kKQphcGkuZGVwcmVjYXRlVmFsdWUoImZsYWdzIiwgIkVuYWJsZVNTRTIiLCAnVXNlIGB2ZWN0b3JleHRlbnNpb25zICJTU0UyImAgaW5zdGVhZC4nLApmdW5jdGlvbih2YWx1ZSkKdmVjdG9yZXh0ZW5zaW9ucygiU1NFMiIpCmVuZCwKZnVuY3Rpb24odmFsdWUpCnZlY3RvcmV4dGVuc2lvbnMgIkRlZmF1bHQiCmVuZCkKYXBpLmRlcHJlY2F0ZVZhbHVlKCJmbGFncyIsICJGbG9hdEZhc3QiLCAnVXNlIGBmbG9hdGluZ3BvaW50ICJGYXN0ImAgaW5zdGVhZC4nLApmdW5jdGlvbih2YWx1ZSkKZmxvYXRpbmdwb2ludCgiRmFzdCIpCmVuZCwKZnVuY3Rpb24odmFsdWUpCmZsb2F0aW5ncG9pbnQgIkRlZmF1bHQiCmVuZCkKYXBpLmRlcHJlY2F0ZVZhbHVlKCJmbGFncyIsICJGbG9hdFN0cmljdCIsICdVc2UgYGZsb2F0aW5ncG9pbnQgIlN0cmljdCJgIGluc3RlYWQuJywKZnVuY3Rpb24odmFsdWUpCmZsb2F0aW5ncG9pbnQoIlN0cmljdCIpCmVuZCwKZnVuY3Rpb24odmFsdWUpCmZsb2F0aW5ncG9pbnQgIkRlZmF1bHQiCmVuZCkKYXBpLmRlcHJlY2F0ZVZhbHVlKCJmbGFncyIsICJOYXRpdmVXQ2hhciIsICdVc2UgYG5hdGl2ZXdjaGFyICJPbiJgIGluc3RlYWQuIicsCmZ1bmN0aW9uKHZhbHVlKQpuYXRpdmV3Y2hhcigiT24iKQplbmQsCmZ1bmN0aW9uKHZhbHVlKQpuYXRpdmV3Y2hhciAiRGVmYXVsdCIKZW5kKQphcGkuZGVwcmVjYXRlVmFsdWUoImZsYWdzIiwgIk5vTmF0aXZlV0NoYXIiLCAnVXNlIGBuYXRpdmV3Y2hhciAiT2ZmImAgaW5zdGVhZC4iJywKZnVuY3Rpb24odmFsdWUpCm5hdGl2ZXdjaGFyKCJPZmYiKQplbmQsCmZ1bmN0aW9uKHZhbHVlKQpuYXRpdmV3Y2hhciAiRGVmYXVsdCIKZW5kKQphcGkuZGVwcmVjYXRlVmFsdWUoImZsYWdzIiwgIk9wdGltaXplIiwgJ1VzZSBgb3B0aW1pemUgIk9uImAgaW5zdGVhZC4nLApmdW5jdGlvbih2YWx1ZSkKb3B0aW1pemUgKCJPbiIpCmVuZCwKZnVuY3Rpb24odmFsdWUpCm9wdGltaXplICJPZmYiCmVuZCkKYXBpLmRlcHJlY2F0ZVZhbHVlKCJmbGFncyIsICJPcHRpbWl6ZVNpemUiLCAnVXNlIGBvcHRpbWl6ZSAiU2l6ZSJgIGluc3RlYWQuJywKZnVuY3Rpb24odmFsdWUpCm9wdGltaXplICgiU2l6ZSIpCmVuZCwKZnVuY3Rpb24odmFsdWUpCm9wdGltaXplICJPZmYiCmVuZCkKYXBpLmRlcHJlY2F0ZVZhbHVlKCJmbGFncyIsICJPcHRpbWl6ZVNwZWVkIiwgJ1VzZSBgb3B0aW1pemUgIlNwZWVkImAgaW5zdGVhZC4nLApmdW5jdGlvbih2YWx1ZSkKb3B0aW1pemUgKCJTcGVlZCIpCmVuZCwKZnVuY3Rpb24odmFsdWUpCm9wdGltaXplICJPZmYiCmVuZCkKYXBpLmRlcHJlY2F0ZVZhbHVlKCJmbGFncyIsICJSZWxlYXNlUnVudGltZSIsICdVc2UgYHJ1bnRpbWUgIlJlbGVhc2UiYCBpbnN0ZWFkLicsCmZ1bmN0aW9uKHZhbHVlKQpydW50aW1lICJSZWxlYXNlIgplbmQsCmZ1bmN0aW9uKHZhbHVlKQplbmQpCmFwaS5kZXByZWNhdGVWYWx1ZSgiZmxhZ3MiLCAiRXh0cmFXYXJuaW5ncyIsICdVc2UgYHdhcm5pbmdzICJFeHRyYSJgIGluc3RlYWQuJywKZnVuY3Rpb24odmFsdWUpCndhcm5pbmdzICJFeHRyYSIKZW5kLApmdW5jdGlvbih2YWx1ZSkKd2FybmluZ3MgIkRlZmF1bHQiCmVuZCkKYXBpLmRlcHJlY2F0ZVZhbHVlKCJmbGFncyIsICJOb1dhcm5pbmdzIiwgJ1VzZSBgd2FybmluZ3MgIk9mZiJgIGluc3RlYWQuJywKZnVuY3Rpb24odmFsdWUpCndhcm5pbmdzICJPZmYiCmVuZCwKZnVuY3Rpb24odmFsdWUpCndhcm5pbmdzICJEZWZhdWx0IgplbmQpCmFwaS5kZXByZWNhdGVWYWx1ZSgiZmxhZ3MiLCAiTWFuYWdlZCIsICdVc2UgYGNsciAiT24iYCBpbnN0ZWFkLicsCmZ1bmN0aW9uKHZhbHVlKQpjbHIgIk9uIgplbmQsCmZ1bmN0aW9uKHZhbHVlKQpjbHIgIk9mZiIKZW5kKQphcGkuZGVwcmVjYXRlVmFsdWUoImZsYWdzIiwgIk5vRWRpdEFuZENvbnRpbnVlIiwgJ1VzZSBlZGl0YW5kY29udGludWUgIk9mZiJgIGluc3RlYWQuJywKZnVuY3Rpb24odmFsdWUpCmVkaXRhbmRjb250aW51ZSAiT2ZmIgplbmQsCmZ1bmN0aW9uKHZhbHVlKQplZGl0YW5kY29udGludWUgIk9uIgplbmQpCmFwaS5kZXByZWNhdGVWYWx1ZSgiZmxhZ3MiLCAiU3ltYm9scyIsICdVc2UgYHN5bWJvbHMgIk9uImAgaW5zdGVhZCcsCmZ1bmN0aW9uKHZhbHVlKQpzeW1ib2xzICJPbiIKZW5kLApmdW5jdGlvbih2YWx1ZSkKc3ltYm9scyAiRGVmYXVsdCIKZW5kKQphcGkuZGVwcmVjYXRlVmFsdWUoImZsYWdzIiwgIkMrKzExIiwgJ1VzZSBgY3BwZGlhbGVjdCAiQysrMTEiYCBpbnN0ZWFkJywKZnVuY3Rpb24odmFsdWUpCmNwcGRpYWxlY3QgIkMrKzExIgplbmQsCmZ1bmN0aW9uKHZhbHVlKQpjcHBkaWFsZWN0ICJEZWZhdWx0IgplbmQpCmFwaS5kZXByZWNhdGVWYWx1ZSgiZmxhZ3MiLCAiQysrMTQiLCAnVXNlIGBjcHBkaWFsZWN0ICJDKysxNCJgIGluc3RlYWQnLApmdW5jdGlvbih2YWx1ZSkKY3BwZGlhbGVjdCAiQysrMTQiCmVuZCwKZnVuY3Rpb24odmFsdWUpCmNwcGRpYWxlY3QgIkRlZmF1bHQiCmVuZCkKYXBpLmRlcHJlY2F0ZVZhbHVlKCJmbGFncyIsICJDOTAiLCAgICdVc2UgYGNkaWFsZWN0ICJnbnU5MCJgIGluc3RlYWQnLApmdW5jdGlvbih2YWx1ZSkKY2RpYWxlY3QgImdudTkwIgplbmQsCmZ1bmN0aW9uKHZhbHVlKQpjZGlhbGVjdCAiRGVmYXVsdCIKZW5kKQphcGkuZGVwcmVjYXRlVmFsdWUoImZsYWdzIiwgIkM5OSIsICAgJ1VzZSBgY2RpYWxlY3QgImdudTk5ImAgaW5zdGVhZCcsCmZ1bmN0aW9uKHZhbHVlKQpjZGlhbGVjdCAiZ251OTkiCmVuZCwKZnVuY3Rpb24odmFsdWUpCmNkaWFsZWN0ICJEZWZhdWx0IgplbmQpCmFwaS5kZXByZWNhdGVWYWx1ZSgiZmxhZ3MiLCAiQzExIiwgICAnVXNlIGBjZGlhbGVjdCAiZ251MTEiYCBpbnN0ZWFkJywKZnVuY3Rpb24odmFsdWUpCmNkaWFsZWN0ICJnbnUxMSIKZW5kLApmdW5jdGlvbih2YWx1ZSkKY2RpYWxlY3QgIkRlZmF1bHQiCmVuZCkKYXBpLmRlcHJlY2F0ZVZhbHVlKCJmbGFncyIsICJXaW5NYWluIiwgJ1VzZSBgZW50cnlwb2ludCAiV2luTWFpbkNSVFN0YXJ0dXAiYCBpbnN0ZWFkJywKZnVuY3Rpb24odmFsdWUpCmVudHJ5cG9pbnQgIldpbk1haW5DUlRTdGFydHVwIgplbmQsCmZ1bmN0aW9uKHZhbHVlKQplbnRyeXBvaW50ICJtYWluQ1JUU3RhcnR1cCIKZW5kKQpuZXdvcHRpb24Kewp0cmlnZ2VyICAgICA9ICJjYyIsCnZhbHVlICAgICAgID0gIlZBTFVFIiwKZGVzY3JpcHRpb24gPSAiQ2hvb3NlIGEgQy9DKysgY29tcGlsZXIgc2V0IiwKYWxsb3dlZCA9IHsKeyAiY2xhbmciLCAiQ2xhbmcgKGNsYW5nKSIgfSwKeyAiZ2NjIiwgIkdOVSBHQ0MgKGdjYy9nKyspIiB9LAp9Cn0KbmV3b3B0aW9uCnsKdHJpZ2dlciAgICAgPSAiZG90bmV0IiwKdmFsdWUgICAgICAgPSAiVkFMVUUiLApkZXNjcmlwdGlvbiA9ICJDaG9vc2UgYSAuTkVUIGNvbXBpbGVyIHNldCIsCmFsbG93ZWQgPSB7CnsgIm1zbmV0IiwgICAiTWljcm9zb2Z0IC5ORVQgKGNzYykiIH0sCnsgIm1vbm8iLCAgICAiTm92ZWxsIE1vbm8gKG1jcykiICAgIH0sCnsgInBuZXQiLCAgICAiUG9ydGFibGUuTkVUIChjc2NjKSIgIH0sCn0KfQpuZXdvcHRpb24Kewp0cmlnZ2VyICAgICA9ICJmYXRhbCIsCmRlc2NyaXB0aW9uID0gIlRyZWF0IHdhcm5pbmdzIGZyb20gcHJvamVjdCBzY3JpcHRzIGFzIGVycm9ycyIKfQpuZXdvcHRpb24Kewp0cmlnZ2VyICAgICA9ICJmaWxlIiwKdmFsdWUgICAgICAgPSAiRklMRSIsCmRlc2NyaXB0aW9uID0gIlJlYWQgRklMRSBhcyBhIFByZW1ha2Ugc2NyaXB0OyBkZWZhdWx0IGlzICdwcmVtYWtlNS5sdWEnIgp9Cm5ld29wdGlvbgp7CnRyaWdnZXIgICAgID0gImhlbHAiLApkZXNjcmlwdGlvbiA9ICJEaXNwbGF5IHRoaXMgaW5mb3JtYXRpb24iCn0KbmV3b3B0aW9uCnsKdHJpZ2dlciAgICAgPSAidmVyYm9zZSIsCmRlc2NyaXB0aW9uID0gIkdlbmVyYXRlIGV4dHJhIGRlYnVnIHRleHQgb3V0cHV0Igp9Cm5ld29wdGlvbgp7CnRyaWdnZXIgPSAiaW50ZXJhY3RpdmUiLApkZXNjcmlwdGlvbiA9ICJJbnRlcmFjdGl2ZSBjb21tYW5kIHByb21wdCIKfQpuZXdvcHRpb24Kewp0cmlnZ2VyICAgICA9ICJvcyIsCnZhbHVlICAgICAgID0gIlZBTFVFIiwKZGVzY3JpcHRpb24gPSAiR2VuZXJhdGUgZmlsZXMgZm9yIGEgZGlmZmVyZW50IG9wZXJhdGluZyBzeXN0ZW0iLAphbGxvd2VkID0gewp7ICJhaXgiLCAgICAgICJJQk0gQUlYIiB9LAp7ICJic2QiLCAgICAgICJPcGVuQlNELCBOZXRCU0QsIG9yIEZyZWVCU0QiIH0sCnsgImhhaWt1IiwgICAgIkhhaWt1IiB9LAp7ICJodXJkIiwgICAgICJHTlUvSHVyZCIgfSwKeyAibGludXgiLCAgICAiTGludXgiIH0sCnsgIm1hY29zeCIsICAgIkFwcGxlIE1hYyBPUyBYIiB9LAp7ICJzb2xhcmlzIiwgICJTb2xhcmlzIiB9LAp7ICJ3aW5kb3dzIiwgICJNaWNyb3NvZnQgV2luZG93cyIgfSwKfQp9Cm5ld29wdGlvbgp7CnRyaWdnZXIgICAgID0gInNjcmlwdHMiLAp2YWx1ZSAgICAgICA9ICJQQVRIIiwKZGVzY3JpcHRpb24gPSAiU2VhcmNoIGZvciBhZGRpdGlvbmFsIHNjcmlwdHMgb24gdGhlIGdpdmVuIHBhdGgiCn0KbmV3b3B0aW9uCnsKdHJpZ2dlciAgICAgPSAic3lzdGVtc2NyaXB0IiwKdmFsdWUgICAgICAgPSAiRklMRSIsCmRlc2NyaXB0aW9uID0gIk92ZXJyaWRlIGRlZmF1bHQgc3lzdGVtIHNjcmlwdCAocHJlbWFrZTUtc3lzdGVtLmx1YSkiCn0KbmV3b3B0aW9uCnsKdHJpZ2dlciAgICAgPSAidmVyc2lvbiIsCmRlc2NyaXB0aW9uID0gIkRpc3BsYXkgdmVyc2lvbiBpbmZvcm1hdGlvbiIKfQppZiBodHRwIH49IG5pbCB0aGVuCm5ld29wdGlvbiB7CnRyaWdnZXIgPSAiaW5zZWN1cmUiLApkZXNjcmlwdGlvbiA9ICJmb3JmaXQgU1NIIGNlcnRpZmljYXRpb24gY2hlY2tzLiIKfQplbmQKY2hhcmFjdGVyc2V0ICJEZWZhdWx0IgpjbHIgIk9mZiIKZWRpdG9yaW50ZWdyYXRpb24gIk9mZiIKZXhjZXB0aW9uaGFuZGxpbmcgIkRlZmF1bHQiCnJ0dGkgIkRlZmF1bHQiCnN5bWJvbHMgIkRlZmF1bHQiCm51Z2V0c291cmNlICJodHRwczovL2FwaS5udWdldC5vcmcvdjMvaW5kZXguanNvbiIKbGFuZ3VhZ2UgIkMrKyIKZmlsdGVyIHsgImtpbmQ6U2hhcmVkTGliIiB9CnRhcmdldHByZWZpeCAibGliIgp0YXJnZXRleHRlbnNpb24gIi5zbyIKZmlsdGVyIHsgImtpbmQ6U3RhdGljTGliIiB9CnRhcmdldHByZWZpeCAibGliIgp0YXJnZXRleHRlbnNpb24gIi5hIgpmaWx0ZXIgeyAic3lzdGVtOk1hY09TWCIsICJraW5kOlNoYXJlZExpYiIgfQp0YXJnZXRleHRlbnNpb24gIi5keWxpYiIKZmlsdGVyIHsgInN5c3RlbTpXaW5kb3dzIG9yIGxhbmd1YWdlOkMjIiwgImtpbmQ6Q29uc29sZUFwcCBvciBXaW5kb3dlZEFwcCIgfQp0YXJnZXRleHRlbnNpb24gIi5leGUiCmZpbHRlciB7ICJzeXN0ZW06WGJveDM2MCIsICJraW5kOkNvbnNvbGVBcHAgb3IgV2luZG93ZWRBcHAiIH0KdGFyZ2V0ZXh0ZW5zaW9uICIuZXhlIgpmaWx0ZXIgeyAic3lzdGVtOldpbmRvd3Mgb3IgWGJveDM2MCIsICJraW5kOlNoYXJlZExpYiIgfQp0YXJnZXRwcmVmaXggIiIKdGFyZ2V0ZXh0ZW5zaW9uICIuZGxsIgppbXBsaWJleHRlbnNpb24gIi5saWIiCmZpbHRlciB7ICJzeXN0ZW06V2luZG93cyBvciBYYm94MzYwIiwgImtpbmQ6U3RhdGljTGliIiB9CnRhcmdldHByZWZpeCAiIgp0YXJnZXRleHRlbnNpb24gIi5saWIiCmZpbHRlciB7ICJsYW5ndWFnZTpDIyIsICJraW5kOlNoYXJlZExpYiIgfQp0YXJnZXRwcmVmaXggIiIKdGFyZ2V0ZXh0ZW5zaW9uICIuZGxsIgppbXBsaWJleHRlbnNpb24gIi5kbGwiCmZpbHRlciB7ICJraW5kOlNoYXJlZExpYiIsICJzeXN0ZW06bm90IFdpbmRvd3MiIH0KcGljICJPbiIKZmlsdGVyIHsgInN5c3RlbTptYWNvc3giIH0KdG9vbHNldCAiY2xhbmciCmZpbHRlciB7fQoAAAAAAAAAbG9jYWwgcCA9IHByZW1ha2UKbmV3YWN0aW9uCnsKdHJpZ2dlciAgICAgICAgID0gImNvZGVsaXRlIiwKc2hvcnRuYW1lICAgICAgID0gIkNvZGVMaXRlIiwKZGVzY3JpcHRpb24gICAgID0gIkdlbmVyYXRlIENvZGVMaXRlIHByb2plY3QgZmlsZXMiLAp0b29sc2V0ICAgICAgICAgPSAiY2xhbmciLAp2YWxpZF9raW5kcyAgICAgPSB7ICJDb25zb2xlQXBwIiwgIldpbmRvd2VkQXBwIiwgIk1ha2VmaWxlIiwgIlNoYXJlZExpYiIsICJTdGF0aWNMaWIiLCAiVXRpbGl0eSIgfSwKdmFsaWRfbGFuZ3VhZ2VzID0geyAiQyIsICJDKysiIH0sCnZhbGlkX3Rvb2xzICAgICA9IHsKY2MgPSB7ICJnY2MiLCAiY2xhbmciLCAibXNjIiB9Cn0sCm9uV29ya3NwYWNlID0gZnVuY3Rpb24od2tzKQpwLm1vZHVsZXMuY29kZWxpdGUuZ2VuZXJhdGVXb3Jrc3BhY2Uod2tzKQplbmQsCm9uUHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcC5tb2R1bGVzLmNvZGVsaXRlLmdlbmVyYXRlUHJvamVjdChwcmopCmVuZCwKb25DbGVhbldvcmtzcGFjZSA9IGZ1bmN0aW9uKHdrcykKcC5tb2R1bGVzLmNvZGVsaXRlLmNsZWFuV29ya3NwYWNlKHdrcykKZW5kLApvbkNsZWFuUHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcC5tb2R1bGVzLmNvZGVsaXRlLmNsZWFuUHJvamVjdChwcmopCmVuZCwKb25DbGVhblRhcmdldCA9IGZ1bmN0aW9uKHByaikKcC5tb2R1bGVzLmNvZGVsaXRlLmNsZWFuVGFyZ2V0KHByaikKZW5kLAp9CnJldHVybiBmdW5jdGlvbihjZmcpCnJldHVybiAoX0FDVElPTiA9PSAiY29kZWxpdGUiKQplbmQKAGxvY2FsIHAgPSBwcmVtYWtlCnAubW9kdWxlcy5jb2RlbGl0ZSA9IHt9CnAubW9kdWxlcy5jb2RlbGl0ZS5fVkVSU0lPTiA9IHAuX1ZFUlNJT04KbG9jYWwgY29kZWxpdGUgPSBwLm1vZHVsZXMuY29kZWxpdGUKbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApmdW5jdGlvbiBjb2RlbGl0ZS5jZmduYW1lKGNmZykKbG9jYWwgY2ZnbmFtZSA9IGNmZy5idWlsZGNmZwppZiBjb2RlbGl0ZS53b3Jrc3BhY2UubXVsdGlwbGVQbGF0Zm9ybXMgdGhlbgpjZmduYW1lID0gc3RyaW5nLmZvcm1hdCgiJXN8JXMiLCBjZmcucGxhdGZvcm0sIGNmZy5idWlsZGNmZykKZW5kCnJldHVybiBjZmduYW1lCmVuZApmdW5jdGlvbiBjb2RlbGl0ZS5lc2ModmFsdWUpCmxvY2FsIHJlc3VsdCA9IHZhbHVlOmdzdWIoJyInLCAnXFwmcXVvdDsnKQpyZXN1bHQgPSByZXN1bHQ6Z3N1YignPCcsICcmbHQ7JykKcmVzdWx0ID0gcmVzdWx0OmdzdWIoJz4nLCAnJmd0OycpCiAgICByZXN1bHQgPSByZXN1bHQ6Z3N1YignJicsICcmYW1wOycpCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIGNvZGVsaXRlLmdlbmVyYXRlV29ya3NwYWNlKHdrcykKcC5lb2woIlxyXG4iKQpwLmluZGVudCgiICAiKQpwLmVzY2FwZXIoY29kZWxpdGUuZXNjKQpwLmdlbmVyYXRlKHdrcywgIi53b3Jrc3BhY2UiLCBjb2RlbGl0ZS53b3Jrc3BhY2UuZ2VuZXJhdGUpCmVuZApmdW5jdGlvbiBjb2RlbGl0ZS5nZW5lcmF0ZVByb2plY3QocHJqKQpwLmVvbCgiXHJcbiIpCnAuaW5kZW50KCIgICIpCnAuZXNjYXBlcihjb2RlbGl0ZS5lc2MpCmlmIHByb2plY3QuaXNjKHByaikgb3IgcHJvamVjdC5pc2NwcChwcmopIHRoZW4KcC5nZW5lcmF0ZShwcmosICIucHJvamVjdCIsIGNvZGVsaXRlLnByb2plY3QuZ2VuZXJhdGUpCmVuZAplbmQKZnVuY3Rpb24gY29kZWxpdGUuY2xlYW5Xb3Jrc3BhY2Uod2tzKQpwLmNsZWFuLmZpbGUod2tzLCB3a3MubmFtZSAuLiAiLndvcmtzcGFjZSIpCnAuY2xlYW4uZmlsZSh3a3MsIHdrcy5uYW1lIC4uICJfd3NwLm1rIikKcC5jbGVhbi5maWxlKHdrcywgd2tzLm5hbWUgLi4gIi50YWdzIikKcC5jbGVhbi5maWxlKHdrcywgIi5jbGFuZyIpCmVuZApmdW5jdGlvbiBjb2RlbGl0ZS5jbGVhblByb2plY3QocHJqKQpwLmNsZWFuLmZpbGUocHJqLCBwcmoubmFtZSAuLiAiLnByb2plY3QiKQpwLmNsZWFuLmZpbGUocHJqLCBwcmoubmFtZSAuLiAiLm1rIikKcC5jbGVhbi5maWxlKHByaiwgcHJqLm5hbWUgLi4gIi5saXN0IikKcC5jbGVhbi5maWxlKHByaiwgcHJqLm5hbWUgLi4gIi5vdXQiKQplbmQKZnVuY3Rpb24gY29kZWxpdGUuY2xlYW5UYXJnZXQocHJqKQplbmQKaW5jbHVkZSgiY29kZWxpdGVfd29ya3NwYWNlLmx1YSIpCmluY2x1ZGUoImNvZGVsaXRlX3Byb2plY3QubHVhIikKcmV0dXJuIGNvZGVsaXRlCgAAAAAAAABsb2NhbCBwID0gcHJlbWFrZQpsb2NhbCBwcm9qZWN0ID0gcC5wcm9qZWN0CmxvY2FsIHdvcmtzcGFjZSA9IHAud29ya3NwYWNlCmxvY2FsIHRyZWUgPSBwLnRyZWUKbG9jYWwgY29kZWxpdGUgPSBwLm1vZHVsZXMuY29kZWxpdGUKY29kZWxpdGUud29ya3NwYWNlID0ge30KbG9jYWwgbSA9IGNvZGVsaXRlLndvcmtzcGFjZQpmdW5jdGlvbiBtLmdlbmVyYXRlKHdrcykKcC51dGY4KCkKX3AoJzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+JykKbG9jYWwgdGFnc2RiID0gIiIKX3AoJzxDb2RlTGl0ZV9Xb3Jrc3BhY2UgTmFtZT0iJXMiIERhdGFiYXNlPSIlcyIgU1dUTFc9Ik5vIj4nLCB3a3MubmFtZSwgdGFnc2RiKQpsb2NhbCB0ciA9IHdvcmtzcGFjZS5ncm91cHRyZWUod2tzKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubGVhZiA9IGZ1bmN0aW9uKG4pCmxvY2FsIHByaiA9IG4ucHJvamVjdApsb2NhbCBwcmpwYXRoID0gcC5maWxlbmFtZShwcmosICIucHJvamVjdCIpCnByanBhdGggPSBwYXRoLmdldHJlbGF0aXZlKHByai53b3Jrc3BhY2UubG9jYXRpb24sIHByanBhdGgpCmlmIChwcmoubmFtZSA9PSB3a3Muc3RhcnRwcm9qZWN0KSB0aGVuCl94KDEsICc8UHJvamVjdCBOYW1lPSIlcyIgUGF0aD0iJXMiIEFjdGl2ZT0iWWVzIi8+JywgcHJqLm5hbWUsIHByanBhdGgpCmVsc2UKX3goMSwgJzxQcm9qZWN0IE5hbWU9IiVzIiBQYXRoPSIlcyIvPicsIHByai5uYW1lLCBwcmpwYXRoKQplbmQKZW5kLApvbmJyYW5jaCA9IGZ1bmN0aW9uKG4pCmVuZCwKfSkKbG9jYWwgcGxhdGZvcm1zUHJlc2VudCA9IHt9CmxvY2FsIG51bVBsYXRmb3JtcyA9IDAKZm9yIGNmZyBpbiB3b3Jrc3BhY2UuZWFjaGNvbmZpZyh3a3MpIGRvCmxvY2FsIHBsYXRmb3JtID0gY2ZnLnBsYXRmb3JtCmlmIHBsYXRmb3JtIGFuZCBub3QgcGxhdGZvcm1zUHJlc2VudFtwbGF0Zm9ybV0gdGhlbgpudW1QbGF0Zm9ybXMgPSBudW1QbGF0Zm9ybXMgKyAxCnBsYXRmb3Jtc1ByZXNlbnRbcGxhdGZvcm1dID0gdHJ1ZQplbmQKZW5kCmlmIG51bVBsYXRmb3JtcyA+PSAyIHRoZW4KY29kZWxpdGUud29ya3NwYWNlLm11bHRpcGxlUGxhdGZvcm1zID0gdHJ1ZQplbmQKX3AoMSwgJzxCdWlsZE1hdHJpeD4nKQpmb3IgY2ZnIGluIHdvcmtzcGFjZS5lYWNoY29uZmlnKHdrcykgZG8KbG9jYWwgY2ZnbmFtZSA9IGNvZGVsaXRlLmNmZ25hbWUoY2ZnKQpfcCgyLCAnPFdvcmtzcGFjZUNvbmZpZ3VyYXRpb24gTmFtZT0iJXMiIFNlbGVjdGVkPSJ5ZXMiPicsIGNmZ25hbWUpCmxvY2FsIHRyID0gd29ya3NwYWNlLmdyb3VwdHJlZSh3a3MpCnRyZWUudHJhdmVyc2UodHIsIHsKb25sZWFmID0gZnVuY3Rpb24obikKbG9jYWwgcHJqID0gbi5wcm9qZWN0Cl9wKDMsICc8UHJvamVjdCBOYW1lPSIlcyIgQ29uZmlnTmFtZT0iJXMiLz4nLCBwcmoubmFtZSwgY2ZnbmFtZSkKZW5kCn0pCl9wKDIsICc8L1dvcmtzcGFjZUNvbmZpZ3VyYXRpb24+JykKZW5kCl9wKDEsICc8L0J1aWxkTWF0cml4PicpCl9wKCc8L0NvZGVMaXRlX1dvcmtzcGFjZT4nKQplbmQKAABsb2NhbCBwID0gcHJlbWFrZQpsb2NhbCB0cmVlID0gcC50cmVlCmxvY2FsIHByb2plY3QgPSBwLnByb2plY3QKbG9jYWwgY29uZmlnID0gcC5jb25maWcKbG9jYWwgY29kZWxpdGUgPSBwLm1vZHVsZXMuY29kZWxpdGUKY29kZWxpdGUucHJvamVjdCA9IHt9CmxvY2FsIG0gPSBjb2RlbGl0ZS5wcm9qZWN0CmZ1bmN0aW9uIGNvZGVsaXRlLmdldExpbmtzKGNmZykKcmV0dXJuIGNvbmZpZy5nZXRsaW5rcyhjZmcsICJzeXN0ZW0iLCAiZnVsbHBhdGgiKQplbmQKZnVuY3Rpb24gY29kZWxpdGUuZ2V0U2libGluZ0xpbmtzKGNmZykKcmV0dXJuIGNvbmZpZy5nZXRsaW5rcyhjZmcsICJzaWJsaW5ncyIsICJmdWxscGF0aCIpCmVuZAptLmVsZW1lbnRzID0ge30KbS5jdG9vbHMgPSB7CmdjYyA9ICJnbnUgZ2NjIiwKY2xhbmcgPSAiY2xhbmciLAptc2MgPSAiVmlzdWFsIEMrKyIsCn0KbS5jeHh0b29scyA9IHsKZ2NjID0gImdudSBnKysiLApjbGFuZyA9ICJjbGFuZysrIiwKbXNjID0gIlZpc3VhbCBDKysiLAp9CmZ1bmN0aW9uIG0uZ2V0Y29tcGlsZXJuYW1lKGNmZykKbG9jYWwgdG9vbCA9IF9PUFRJT05TLmNjIG9yIGNmZy50b29sc2V0IG9yIHAuQ0xBTkcKbG9jYWwgdG9vbHNldCA9IHAudG9vbHNbdG9vbF0KaWYgbm90IHRvb2xzZXQgdGhlbgplcnJvcigiSW52YWxpZCB0b29sc2V0ICciICsgKF9PUFRJT05TLmNjIG9yIGNmZy50b29sc2V0KSArICInIikKZW5kCmlmIHAubGFuZ3VhZ2VzLmlzYyhjZmcubGFuZ3VhZ2UpIHRoZW4KcmV0dXJuIG0uY3Rvb2xzW3Rvb2xdCmVsc2VpZiBwLmxhbmd1YWdlcy5pc2NwcChjZmcubGFuZ3VhZ2UpIHRoZW4KcmV0dXJuIG0uY3h4dG9vbHNbdG9vbF0KZW5kCmVuZApmdW5jdGlvbiBtLmdldGNvbXBpbGVyKGNmZykKbG9jYWwgdG9vbHNldCA9IHAudG9vbHNbX09QVElPTlMuY2Mgb3IgY2ZnLnRvb2xzZXQgb3IgcC5DTEFOR10KaWYgbm90IHRvb2xzZXQgdGhlbgplcnJvcigiSW52YWxpZCB0b29sc2V0ICciICsgKF9PUFRJT05TLmNjIG9yIGNmZy50b29sc2V0KSArICInIikKZW5kCnJldHVybiB0b29sc2V0CmVuZApsb2NhbCBmdW5jdGlvbiBjb25maWd1cmF0aW9uX2lzY3VzdG9tYnVpbGQoY2ZnKQpyZXR1cm4gY2ZnIGFuZCAoY2ZnLmtpbmQgPT0gcC5NQUtFRklMRSkgYW5kICgjY2ZnLmJ1aWxkY29tbWFuZHMgPiAwKQplbmQKbG9jYWwgZnVuY3Rpb24gY29uZmlndXJhdGlvbl9pc2ZpbGVsaXN0KGNmZykKcmV0dXJuIGNmZyBhbmQgKGNmZy5idWlsZGFjdGlvbiA9PSAiTm9uZSIpIGFuZCBub3QgY29uZmlndXJhdGlvbl9pc2N1c3RvbWJ1aWxkKGNmZykKZW5kCmxvY2FsIGZ1bmN0aW9uIGNvbmZpZ3VyYXRpb25fbmVlZHJlc29wdGlvbnMoY2ZnKQpyZXR1cm4gY2ZnIGFuZCBjb25maWcuZmluZGZpbGUoY2ZnLCAiLnJjIikgYW5kIG5vdCBjb25maWd1cmF0aW9uX2lzY3VzdG9tYnVpbGQoY2ZnKQplbmQKbS5pbnRlcm5hbFR5cGVNYXAgPSB7CkNvbnNvbGVBcHAgPSAiQ29uc29sZSIsCldpbmRvd2VkQXBwID0gIkNvbnNvbGUiLApNYWtlZmlsZSA9ICIiLApTaGFyZWRMaWIgPSAiTGlicmFyeSIsClN0YXRpY0xpYiA9ICJMaWJyYXJ5Igp9CmZ1bmN0aW9uIG0uaGVhZGVyKHByaikKX3AoJzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04Ij8+JykKbG9jYWwgdHlwZSA9IG0uaW50ZXJuYWxUeXBlTWFwW3Byai5raW5kXSBvciAiIgpfeCgnPENvZGVMaXRlX1Byb2plY3QgTmFtZT0iJXMiIEludGVybmFsVHlwZT0iJXMiPicsIHByai5uYW1lLCB0eXBlKQplbmQKZnVuY3Rpb24gbS5wbHVnaW5zKHByaikKX3AoMSwgJzxQbHVnaW5zLz4nKQplbmQKZnVuY3Rpb24gbS5kZXNjcmlwdGlvbihwcmopCl9wKDEsICc8RGVzY3JpcHRpb24vPicpCmVuZApmdW5jdGlvbiBtLmZpbGVzKHByaikKbG9jYWwgdHIgPSBwcm9qZWN0LmdldHNvdXJjZXRyZWUocHJqKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9uYnJhbmNoZW50ZXIgPSBmdW5jdGlvbihub2RlLCBkZXB0aCkKX3AoZGVwdGgsICc8VmlydHVhbERpcmVjdG9yeSBOYW1lPSIlcyI+Jywgbm9kZS5uYW1lKQplbmQsCm9uYnJhbmNoZXhpdCA9IGZ1bmN0aW9uKG5vZGUsIGRlcHRoKQpfcChkZXB0aCwgJzwvVmlydHVhbERpcmVjdG9yeT4nKQplbmQsCm9ubGVhZiA9IGZ1bmN0aW9uKG5vZGUsIGRlcHRoKQpsb2NhbCBleGNsdWRlc0Zyb21CdWlsZCA9IHt9CmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgY2ZnbmFtZSA9IGNvZGVsaXRlLmNmZ25hbWUoY2ZnKQpsb2NhbCBmY2ZnID0gcC5maWxlY29uZmlnLmdldGNvbmZpZyhub2RlLCBjZmcpCmlmIG5vdCBmY2ZnIG9yIGZjZmcuZmxhZ3MuRXhjbHVkZUZyb21CdWlsZCB0aGVuCnRhYmxlLmluc2VydChleGNsdWRlc0Zyb21CdWlsZCwgY2ZnbmFtZSkKZW5kCmVuZAppZiAjZXhjbHVkZXNGcm9tQnVpbGQgPiAwIHRoZW4KX3AoZGVwdGgsICc8RmlsZSBOYW1lPSIlcyIgRXhjbHVkZVByb2pDb25maWc9IiVzIiAvPicsIG5vZGUucmVscGF0aCwgdGFibGUuY29uY2F0KGV4Y2x1ZGVzRnJvbUJ1aWxkLCAnOycpKQplbHNlCl9wKGRlcHRoLCAnPEZpbGUgTmFtZT0iJXMiLz4nLCBub2RlLnJlbHBhdGgpCmVuZAplbmQsCn0sIGZhbHNlLCAxKQplbmQKZnVuY3Rpb24gbS5kZXBlbmRlbmNpZXMocHJqKQpsb2NhbCBkZXBlbmRlbmNpZXMgPSBwcm9qZWN0LmdldGRlcGVuZGVuY2llcyhwcmopCmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KY2ZnbmFtZSA9IGNvZGVsaXRlLmNmZ25hbWUoY2ZnKQppZiAjZGVwZW5kZW5jaWVzID4gMCB0aGVuCl9wKDEsICc8RGVwZW5kZW5jaWVzIE5hbWU9IiVzIj4nLCBjZmduYW1lKQpmb3IgXywgZGVwZW5kZW5jeSBpbiBpcGFpcnMoZGVwZW5kZW5jaWVzKSBkbwpfcCgyLCAnPFByb2plY3QgTmFtZT0iJXMiLz4nLCBkZXBlbmRlbmN5Lm5hbWUpCmVuZApfcCgxLCAnPC9EZXBlbmRlbmNpZXM+JykKZWxzZQpfcCgxLCAnPERlcGVuZGVuY2llcyBOYW1lPSIlcyIvPicsIGNmZ25hbWUpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0uZ2xvYmFsX2NvbXBpbGVyKHByaikKX3AoMywgJzxDb21waWxlciBPcHRpb25zPSIiIENfT3B0aW9ucz0iIiBBc3NlbWJsZXI9IiI+JykKX3AoNCwgJzxJbmNsdWRlUGF0aCBWYWx1ZT0iLiIvPicpCl9wKDMsICc8L0NvbXBpbGVyPicpCmVuZApmdW5jdGlvbiBtLmdsb2JhbF9saW5rZXIocHJqKQpfcCgzLCAnPExpbmtlciBPcHRpb25zPSIiPicpCl9wKDQsICc8TGlicmFyeVBhdGggVmFsdWU9Ii4iLz4nKQpfcCgzLCAnPC9MaW5rZXI+JykKZW5kCmZ1bmN0aW9uIG0uZ2xvYmFsX3Jlc291cmNlQ29tcGlsZXIocHJqKQpfcCgzLCAnPFJlc291cmNlQ29tcGlsZXIgT3B0aW9ucz0iIi8+JykKZW5kCm0uZWxlbWVudHMuZ2xvYmFsU2V0dGluZ3MgPSBmdW5jdGlvbihwcmopCnJldHVybiB7Cm0uZ2xvYmFsX2NvbXBpbGVyLAptLmdsb2JhbF9saW5rZXIsCm0uZ2xvYmFsX3Jlc291cmNlQ29tcGlsZXIsCn0KZW5kCmZ1bmN0aW9uIG0uY29tcGlsZXIoY2ZnKQppZiBjb25maWd1cmF0aW9uX2lzY3VzdG9tYnVpbGQoY2ZnKSBvciBjb25maWd1cmF0aW9uX2lzZmlsZWxpc3QoY2ZnKSB0aGVuCl9wKDMsICc8Q29tcGlsZXIgUmVxdWlyZWQ9Im5vIi8+JykKcmV0dXJuCmVuZApsb2NhbCB0b29sc2V0ID0gbS5nZXRjb21waWxlcihjZmcpCmxvY2FsIGN4eGZsYWdzID0gdGFibGUuY29uY2F0KHRhYmxlLmpvaW4odG9vbHNldC5nZXRjeHhmbGFncyhjZmcpLCBjZmcuYnVpbGRvcHRpb25zKSwgIjsiKQpsb2NhbCBjZmxhZ3MgICA9IHRhYmxlLmNvbmNhdCh0YWJsZS5qb2luKHRvb2xzZXQuZ2V0Y2ZsYWdzKGNmZyksIGNmZy5idWlsZG9wdGlvbnMpLCAiOyIpCmxvY2FsIGFzbWZsYWdzID0gIiIKbG9jYWwgcGNoICAgICAgPSAiIgpfeCgzLCAnPENvbXBpbGVyIE9wdGlvbnM9IiVzIiBDX09wdGlvbnM9IiVzIiBBc3NlbWJsZXI9IiVzIiBSZXF1aXJlZD0ieWVzIiBQcmVDb21waWxlZEhlYWRlcj0iJXMiIFBDSEluQ29tbWFuZExpbmU9Im5vIiBVc2VEaWZmZXJlbnRQQ0hGbGFncz0ibm8iIFBDSEZsYWdzPSIiPicsIGN4eGZsYWdzLCBjZmxhZ3MsIGFzbWZsYWdzLCBwY2gpCmZvciBfLCBpbmNsdWRlZGlyIGluIGlwYWlycyhjZmcuaW5jbHVkZWRpcnMpIGRvCl94KDQsICc8SW5jbHVkZVBhdGggVmFsdWU9IiVzIi8+JywgcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgaW5jbHVkZWRpcikpCmVuZApmb3IgXywgZGVmaW5lIGluIGlwYWlycyhjZmcuZGVmaW5lcykgZG8KX3goNCwgJzxQcmVwcm9jZXNzb3IgVmFsdWU9IiVzIi8+JywgcC5lc2MoZGVmaW5lKSkKZW5kCl9wKDMsICc8L0NvbXBpbGVyPicpCmVuZApmdW5jdGlvbiBtLmxpbmtlcihjZmcpCmlmIGNvbmZpZ3VyYXRpb25faXNjdXN0b21idWlsZChjZmcpIG9yIGNvbmZpZ3VyYXRpb25faXNmaWxlbGlzdChjZmcpIHRoZW4KX3AoMywgJzxMaW5rZXIgUmVxdWlyZWQ9Im5vIi8+JykKcmV0dXJuCmVuZApsb2NhbCB0b29sc2V0ID0gbS5nZXRjb21waWxlcihjZmcpCmxvY2FsIGZsYWdzICAgPSB0YWJsZS5qb2luKHRvb2xzZXQuZ2V0bGRmbGFncyhjZmcpLCBjZmcubGlua29wdGlvbnMsIHRvb2xzZXQuZ2V0bGlua3MoY2ZnKSkKX3goMywgJzxMaW5rZXIgUmVxdWlyZWQ9InllcyIgT3B0aW9ucz0iJXMiPicsIHRhYmxlLmNvbmNhdChmbGFncywgIjsiKSkKX3AoMywgJzwvTGlua2VyPicpCmVuZApmdW5jdGlvbiBtLnJlc291cmNlQ29tcGlsZXIoY2ZnKQppZiBub3QgY29uZmlndXJhdGlvbl9uZWVkcmVzb3B0aW9ucyhjZmcpIHRoZW4KX3AoMywgJzxSZXNvdXJjZUNvbXBpbGVyIE9wdGlvbnM9IiIgUmVxdWlyZWQ9Im5vIi8+JykKcmV0dXJuCmVuZApsb2NhbCB0b29sc2V0ID0gbS5nZXRjb21waWxlcihjZmcpCmxvY2FsIGRlZmluZXMgPSB0YWJsZS5pbXBsb2RlKHRvb2xzZXQuZ2V0ZGVmaW5lcyh0YWJsZS5qb2luKGNmZy5kZWZpbmVzLCBjZmcucmVzZGVmaW5lcykpLCAiIiwgIjsiLCAiIikKbG9jYWwgb3B0aW9ucyA9IHRhYmxlLmNvbmNhdChjZmcucmVzb3B0aW9ucywgIjsiKQpfeCgzLCAnPFJlc291cmNlQ29tcGlsZXIgT3B0aW9ucz0iJXMlcyIgUmVxdWlyZWQ9InllcyI+JywgZGVmaW5lcywgb3B0aW9ucykKZm9yIF8sIGluY2x1ZGVwYXRoIGluIGlwYWlycyh0YWJsZS5qb2luKGNmZy5pbmNsdWRlZGlycywgY2ZnLnJlc2luY2x1ZGVkaXJzKSkgZG8KX3goNCwgJzxJbmNsdWRlUGF0aCBWYWx1ZT0iJXMiLz4nLCBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBpbmNsdWRlcGF0aCkpCmVuZApfcCgzLCAnPC9SZXNvdXJjZUNvbXBpbGVyPicpCmVuZApmdW5jdGlvbiBtLmdlbmVyYWwoY2ZnKQppZiBjb25maWd1cmF0aW9uX2lzZmlsZWxpc3QoY2ZnKSB0aGVuCl9wKDMsICc8R2VuZXJhbCBJbnRlcm1lZGlhdGVEaXJlY3Rvcnk9Ii4iIFdvcmtpbmdEaXJlY3Rvcnk9Ii4iIFBhdXNlRXhlY1doZW5Qcm9jVGVybWluYXRlcz0ibm8iLz4nKQpyZXR1cm4KZW5kCmxvY2FsIHByaiA9IGNmZy5wcm9qZWN0CmxvY2FsIGlzRXhlID0gcHJqLmtpbmQgPT0gIldpbmRvd2VkQXBwIiBvciBwcmoua2luZCA9PSAiQ29uc29sZUFwcCIKbG9jYWwgdGFyZ2V0cGF0aCA9IHByb2plY3QuZ2V0cmVsYXRpdmUocHJqLCBjZmcuYnVpbGR0YXJnZXQuZGlyZWN0b3J5KQpsb2NhbCBvYmpkaXIgICAgID0gcHJvamVjdC5nZXRyZWxhdGl2ZShwcmosIGNmZy5vYmpkaXIpCmxvY2FsIHRhcmdldG5hbWUgPSBwcm9qZWN0LmdldHJlbGF0aXZlKHByaiwgY2ZnLmJ1aWxkdGFyZ2V0LmFic3BhdGgpCmxvY2FsIHdvcmtpbmdkaXIgPSBjZmcuZGVidWdkaXIgb3IgcHJqLmxvY2F0aW9uCmxvY2FsIGNvbW1hbmQgICAgPSBpaWYoaXNFeGUsIHBhdGguZ2V0cmVsYXRpdmUod29ya2luZ2RpciwgY2ZnLmJ1aWxkdGFyZ2V0LmFic3BhdGgpLCAiIikKbG9jYWwgY21kYXJncyAgICA9IGlpZihpc0V4ZSwgdGFibGUuY29uY2F0KGNmZy5kZWJ1Z2FyZ3MsICIgIiksICIiKSAtLSBUT0RPOiBzaG91bGQgdGhpcyBiZSBkZWJ1Z2FyZ3MgaW5zdGVhZD8KbG9jYWwgdXNlc2VwYXJhdGVkZWJ1Z2FyZ3MgPSAibm8iCmxvY2FsIGRlYnVnYXJncyAgPSAiIgpsb2NhbCB3b3JraW5nZGlyID0gaWlmKGlzRXhlLCBwcm9qZWN0LmdldHJlbGF0aXZlKHByaiwgY2ZnLmRlYnVnZGlyKSwgIiIpCmxvY2FsIHBhdXNlZXhlYyAgPSBpaWYocHJqLmtpbmQgPT0gIkNvbnNvbGVBcHAiLCAieWVzIiwgIm5vIikKbG9jYWwgaXNndWlwcm9ncmFtID0gaWlmKHByai5raW5kID09ICJXaW5kb3dlZEFwcCIsICJ5ZXMiLCAibm8iKQpsb2NhbCBpc2VuYWJsZWQgID0gaWlmKGNmZy5mbGFncy5FeGNsdWRlRnJvbUJ1aWxkLCAibm8iLCAieWVzIikKX3goMywgJzxHZW5lcmFsIE91dHB1dEZpbGU9IiVzIiBJbnRlcm1lZGlhdGVEaXJlY3Rvcnk9IiVzIiBDb21tYW5kPSIlcyIgQ29tbWFuZEFyZ3VtZW50cz0iJXMiIFVzZVNlcGFyYXRlRGVidWdBcmdzPSIlcyIgRGVidWdBcmd1bWVudHM9IiVzIiBXb3JraW5nRGlyZWN0b3J5PSIlcyIgUGF1c2VFeGVjV2hlblByb2NUZXJtaW5hdGVzPSIlcyIgSXNHVUlQcm9ncmFtPSIlcyIgSXNFbmFibGVkPSIlcyIvPicsCnRhcmdldG5hbWUsIG9iamRpciwgY29tbWFuZCwgY21kYXJncywgdXNlc2VwYXJhdGVkZWJ1Z2FyZ3MsIGRlYnVnYXJncywgd29ya2luZ2RpciwgcGF1c2VleGVjLCBpc2d1aXByb2dyYW0sIGlzZW5hYmxlZCkKZW5kCmZ1bmN0aW9uIG0uZW52aXJvbm1lbnQoY2ZnKQpfcCgzLCAnPEVudmlyb25tZW50IEVudlZhclNldE5hbWU9IiZsdDtVc2UgRGVmYXVsdHMmZ3Q7IiBEYmdTZXROYW1lPSImbHQ7VXNlIERlZmF1bHRzJmd0OyI+JykKbG9jYWwgdmFyaWFibGVzID0gIiIKX3goNCwgJzwhW0NEQVRBWyVzXV0+JywgdmFyaWFibGVzKQpfcCgzLCAnPC9FbnZpcm9ubWVudD4nKQplbmQKZnVuY3Rpb24gbS5kZWJ1Z2dlcihjZmcpCl9wKDMsICc8RGVidWdnZXIgSXNSZW1vdGU9IiVzIiBSZW1vdGVIb3N0TmFtZT0iJXMiIFJlbW90ZUhvc3RQb3J0PSIlcyIgRGVidWdnZXJQYXRoPSIiIElzRXh0ZW5kZWQ9IiVzIj4nLCBpaWYoY2ZnLmRlYnVncmVtb3RlaG9zdCwgInllcyIsICJubyIpLCBjZmcuZGVidWdyZW1vdGVob3N0IG9yICIiLCBpaWYoY2ZnLmRlYnVncG9ydCwgdG9zdHJpbmcoY2ZnLmRlYnVncG9ydCksICIiKSwgaWlmKGNmZy5kZWJ1Z2V4dGVuZGVkcHJvdG9jb2wsICJ5ZXMiLCAibm8iKSkKaWYgI2NmZy5kZWJ1Z3NlYXJjaHBhdGhzID4gMCB0aGVuCl9wKDQsICc8RGVidWdnZXJTZWFyY2hQYXRocz4lczwvRGVidWdnZXJTZWFyY2hQYXRocz4nLCB0YWJsZS5jb25jYXQocC5lc2MocHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgY2ZnLmRlYnVnc2VhcmNocGF0aHMpKSwgIlxuIikpCmVsc2UKX3AoNCwgJzxEZWJ1Z2dlclNlYXJjaFBhdGhzLz4nKQplbmQKaWYgI2NmZy5kZWJ1Z2Nvbm5lY3Rjb21tYW5kcyA+IDAgdGhlbgpfcCg0LCAnPFBvc3RDb25uZWN0Q29tbWFuZHM+JXM8L1Bvc3RDb25uZWN0Q29tbWFuZHM+JywgdGFibGUuY29uY2F0KHAuZXNjKGNmZy5kZWJ1Z2Nvbm5lY3Rjb21tYW5kcyksICJcbiIpKQplbHNlCl9wKDQsICc8UG9zdENvbm5lY3RDb21tYW5kcy8+JykKZW5kCmlmICNjZmcuZGVidWdzdGFydHVwY29tbWFuZHMgPiAwIHRoZW4KX3AoNCwgJzxTdGFydHVwQ29tbWFuZHM+JXM8L1N0YXJ0dXBDb21tYW5kcz4nLCB0YWJsZS5jb25jYXQocC5lc2MoY2ZnLmRlYnVnc3RhcnR1cGNvbW1hbmRzKSwgIlxuIikpCmVsc2UKX3AoNCwgJzxTdGFydHVwQ29tbWFuZHMvPicpCmVuZApfcCgzLCAnPC9EZWJ1Z2dlcj4nKQplbmQKZnVuY3Rpb24gbS5wcmVCdWlsZChjZmcpCmlmICNjZmcucHJlYnVpbGRjb21tYW5kcyA+IDAgdGhlbgpfcCgzLCAnPFByZUJ1aWxkPicpCmxvY2FsIGNvbW1hbmRzID0gb3MudHJhbnNsYXRlQ29tbWFuZHNBbmRQYXRocyhjZmcucHJlYnVpbGRjb21tYW5kcywgY2ZnLnByb2plY3QuYmFzZWRpciwgY2ZnLnByb2plY3QubG9jYXRpb24pCmZvciBfLCBjb21tYW5kIGluIGlwYWlycyhjb21tYW5kcykgZG8KX3goNCwgJzxDb21tYW5kIEVuYWJsZWQ9InllcyI+JXM8L0NvbW1hbmQ+JywKcC5lc2MoY29tbWFuZCkpCmVuZApfcCgzLCAnPC9QcmVCdWlsZD4nKQplbmQKZW5kCmZ1bmN0aW9uIG0ucG9zdEJ1aWxkKGNmZykKaWYgI2NmZy5wb3N0YnVpbGRjb21tYW5kcyA+IDAgdGhlbgpfcCgzLCAnPFBvc3RCdWlsZD4nKQpsb2NhbCBjb21tYW5kcyA9IG9zLnRyYW5zbGF0ZUNvbW1hbmRzQW5kUGF0aHMoY2ZnLnBvc3RidWlsZGNvbW1hbmRzLCBjZmcucHJvamVjdC5iYXNlZGlyLCBjZmcucHJvamVjdC5sb2NhdGlvbikKZm9yIF8sIGNvbW1hbmQgaW4gaXBhaXJzKGNvbW1hbmRzKSBkbwpfeCg0LCAnPENvbW1hbmQgRW5hYmxlZD0ieWVzIj4lczwvQ29tbWFuZD4nLApwLmVzYyhjb21tYW5kKSkKZW5kCl9wKDMsICc8L1Bvc3RCdWlsZD4nKQplbmQKZW5kCmZ1bmN0aW9uIG0uY3VzdG9tQnVpbGQoY2ZnKQppZiBub3QgY29uZmlndXJhdGlvbl9pc2N1c3RvbWJ1aWxkKGNmZykgdGhlbgpfcCgzLCAnPEN1c3RvbUJ1aWxkIEVuYWJsZWQ9Im5vIi8+JykKcmV0dXJuCmVuZApsb2NhbCBidWlsZCAgID0gdGFibGUuaW1wbG9kZShjZmcuYnVpbGRjb21tYW5kcywiIiwiIiwiIikKbG9jYWwgY2xlYW4gICA9IHRhYmxlLmltcGxvZGUoY2ZnLmNsZWFuY29tbWFuZHMsIiIsIiIsIiIpCmxvY2FsIHJlYnVpbGQgPSB0YWJsZS5pbXBsb2RlKGNmZy5yZWJ1aWxkY29tbWFuZHMsIiIsIiIsIiIpCl9wKDMsICc8Q3VzdG9tQnVpbGQgRW5hYmxlZD0ieWVzIj4nKQpfeCg0LCAnPEJ1aWxkQ29tbWFuZD4lczwvQnVpbGRDb21tYW5kPicsIGJ1aWxkKQpfeCg0LCAnPENsZWFuQ29tbWFuZD4lczwvQ2xlYW5Db21tYW5kPicsIGNsZWFuKQpfeCg0LCAnPFJlYnVpbGRDb21tYW5kPiVzPC9SZWJ1aWxkQ29tbWFuZD4nLCByZWJ1aWxkKQpfcCg0LCAnPFByZXByb2Nlc3NGaWxlQ29tbWFuZD48L1ByZXByb2Nlc3NGaWxlQ29tbWFuZD4nKQpfcCg0LCAnPFNpbmdsZUZpbGVDb21tYW5kPjwvU2luZ2xlRmlsZUNvbW1hbmQ+JykKX3AoNCwgJzxNYWtlZmlsZUdlbmVyYXRpb25Db21tYW5kPjwvTWFrZWZpbGVHZW5lcmF0aW9uQ29tbWFuZD4nKQpfcCg0LCAnPFRoaXJkUGFydHlUb29sTmFtZT48L1RoaXJkUGFydHlUb29sTmFtZT4nKQpfcCg0LCAnPFdvcmtpbmdEaXJlY3Rvcnk+PC9Xb3JraW5nRGlyZWN0b3J5PicpCl9wKDMsICc8L0N1c3RvbUJ1aWxkPicpCmVuZApmdW5jdGlvbiBtLmFkZGl0aW9uYWxSdWxlcyhjZmcpCmlmIGNvbmZpZ3VyYXRpb25faXNjdXN0b21idWlsZChjZmcpIHRoZW4KX3AoMywgJzxBZGRpdGlvbmFsUnVsZXMvPicpCnJldHVybgplbmQKX3AoMywgJzxBZGRpdGlvbmFsUnVsZXM+JykKX3AoNCwgJzxDdXN0b21Qb3N0QnVpbGQvPicpCl9wKDQsICc8Q3VzdG9tUHJlQnVpbGQvPicpCl9wKDMsICc8L0FkZGl0aW9uYWxSdWxlcz4nKQplbmQKZnVuY3Rpb24gbS5pc0NwcDExKGNmZykKcmV0dXJuIChjZmcuY3BwZGlhbGVjdCA9PSAnZ251KysxMScpIG9yIChjZmcuY3BwZGlhbGVjdCA9PSAnQysrMTEnKQplbmQKZnVuY3Rpb24gbS5pc0NwcDE0KGNmZykKcmV0dXJuIChjZmcuY3BwZGlhbGVjdCA9PSAnZ251KysxNCcpIG9yIChjZmcuY3BwZGlhbGVjdCA9PSAnQysrMTQnKQplbmQKZnVuY3Rpb24gbS5jb21wbGV0aW9uKGNmZykKX3AoMywgJzxDb21wbGV0aW9uIEVuYWJsZUNwcDExPSIlcyIgRW5hYmxlQ3BwMTQ9IiVzIj4nLAppaWYobS5pc0NwcDExKGNmZyksICJ5ZXMiLCAibm8iKSwKaWlmKG0uaXNDcHAxNChjZmcpLCAieWVzIiwgIm5vIikKKQpfcCg0LCAnPENsYW5nQ21wRmxhZ3NDLz4nKQpfcCg0LCAnPENsYW5nQ21wRmxhZ3MvPicpCl9wKDQsICc8Q2xhbmdQUC8+JykgLS0gVE9ETzogd2UgbWlnaHQgd2FudCB0byBzZXQgc3BlY2lhbCBjb2RlIGNvbXBsZXRpb24gbWFjcm9zLi4uPwpfcCg0LCAnPFNlYXJjaFBhdGhzLz4nKSAtLSBUT0RPOiBzZWFyY2ggcGF0aHMgZm9yIGNvZGUgY29tcGxldGlvbj8KX3AoMywgJzwvQ29tcGxldGlvbj4nKQplbmQKbS5lbGVtZW50cy5zZXR0aW5ncyA9IGZ1bmN0aW9uKGNmZykKcmV0dXJuIHsKbS5jb21waWxlciwKbS5saW5rZXIsCm0ucmVzb3VyY2VDb21waWxlciwKbS5nZW5lcmFsLAptLmVudmlyb25tZW50LAptLmRlYnVnZ2VyLAptLnByZUJ1aWxkLAptLnBvc3RCdWlsZCwKbS5jdXN0b21CdWlsZCwKbS5hZGRpdGlvbmFsUnVsZXMsCm0uY29tcGxldGlvbiwKfQplbmQKbS50eXBlcyA9CnsKQ29uc29sZUFwcCAgPSAiRXhlY3V0YWJsZSIsCk1ha2VmaWxlICAgID0gIiIsClNoYXJlZExpYiAgID0gIkR5bmFtaWMgTGlicmFyeSIsClN0YXRpY0xpYiAgID0gIlN0YXRpYyBMaWJyYXJ5IiwKV2luZG93ZWRBcHAgPSAiRXhlY3V0YWJsZSIsClV0aWxpdHkgICAgID0gIiIsCn0KbS5kZWJ1Z2dlcnMgPQp7CkRlZmF1bHQgPSAiR05VIGdkYiBkZWJ1Z2dlciIsCkdEQiA9ICJHTlUgZ2RiIGRlYnVnZ2VyIiwKTExEQiA9ICJMTERCIERlYnVnZ2VyIiwKfQpmdW5jdGlvbiBtLnNldHRpbmdzKHByaikKX3AoMSwgJzxTZXR0aW5ncyBUeXBlPSIlcyI+JywgbS50eXBlc1twcmoua2luZF0gb3IgIiIpCl9wKDIsICc8R2xvYmFsU2V0dGluZ3M+JykKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5nbG9iYWxTZXR0aW5ncywgcHJqKQpfcCgyLCAnPC9HbG9iYWxTZXR0aW5ncz4nKQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmxvY2FsIGNmZ25hbWUgID0gY29kZWxpdGUuY2ZnbmFtZShjZmcpCmxvY2FsIGNvbXBpbGVyID0gbS5nZXRjb21waWxlcm5hbWUoY2ZnKQpsb2NhbCBkZWJ1Z2dlciA9IG0uZGVidWdnZXJzW2NmZy5kZWJ1Z2dlcl0gb3IgbS5kZWJ1Z2dlcnMuRGVmYXVsdApsb2NhbCB0eXBlID0gbS50eXBlc1tjZmcua2luZF0KX3goMiwgJzxDb25maWd1cmF0aW9uIE5hbWU9IiVzIiBDb21waWxlclR5cGU9IiVzIiBEZWJ1Z2dlclR5cGU9IiVzIiBUeXBlPSIlcyIgQnVpbGRDbXBXaXRoR2xvYmFsU2V0dGluZ3M9ImFwcGVuZCIgQnVpbGRMbmtXaXRoR2xvYmFsU2V0dGluZ3M9ImFwcGVuZCIgQnVpbGRSZXNXaXRoR2xvYmFsU2V0dGluZ3M9ImFwcGVuZCI+JywgY2ZnbmFtZSwgY29tcGlsZXIsIGRlYnVnZ2VyLCB0eXBlKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLnNldHRpbmdzLCBjZmcpCl9wKDIsICc8L0NvbmZpZ3VyYXRpb24+JykKZW5kCl9wKDEsICc8L1NldHRpbmdzPicpCmVuZAptLmVsZW1lbnRzLnByb2plY3QgPSBmdW5jdGlvbihwcmopCnJldHVybiB7Cm0uaGVhZGVyLAptLnBsdWdpbnMsCm0uZGVzY3JpcHRpb24sCm0uZmlsZXMsCm0uZGVwZW5kZW5jaWVzLAptLnNldHRpbmdzLAp9CmVuZApmdW5jdGlvbiBtLmdlbmVyYXRlKHByaikKcC51dGY4KCkKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5wcm9qZWN0LCBwcmopCl9wKCc8L0NvZGVMaXRlX1Byb2plY3Q+JykKZW5kCgAAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgYXBpID0gcC5hcGkKcC5EID0gIkQiCmFwaS5hZGRBbGxvd2VkKCJsYW5ndWFnZSIsIHAuRCkKYXBpLmFkZEFsbG93ZWQoImZsb2F0aW5ncG9pbnQiLCAiTm9uZSIpCmFwaS5hZGRBbGxvd2VkKCJmbGFncyIsIHsKIkNvZGVDb3ZlcmFnZSIsCiJEZXByZWNhdGVkIiwKIkRvY3VtZW50YXRpb24iLAoiR2VuZXJhdGVIZWFkZXIiLAoiR2VuZXJhdGVKU09OIiwKIkdlbmVyYXRlTWFwIiwKIk5vQm91bmRzQ2hlY2siLAoiUHJvZmlsZSIsCiJRdWlldCIsCiJSZXRhaW5QYXRocyIsCiJTZXBhcmF0ZUNvbXBpbGF0aW9uIiwKIlN5bWJvbHNMaWtlQyIsCiJVbml0VGVzdCIsCiJWZXJib3NlIiwKfSkKYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJ2ZXJzaW9uY29uc3RhbnRzIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJsaXN0OnN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJ2ZXJzaW9ubGV2ZWwiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImludGVnZXIiLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZGVidWdjb25zdGFudHMiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImxpc3Q6c3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImRlYnVnbGV2ZWwiLApzY29wZSA9ICJjb25maWciLApraW5kID0gImludGVnZXIiLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiZG9jZGlyIiwKc2NvcGUgPSAiY29uZmlnIiwKa2luZCA9ICJwYXRoIiwKdG9rZW5zID0gdHJ1ZSwKfQphcGkucmVnaXN0ZXIgewpuYW1lID0gImRvY25hbWUiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInN0cmluZyIsCnRva2VucyA9IHRydWUsCn0KYXBpLnJlZ2lzdGVyIHsKbmFtZSA9ICJoZWFkZXJkaXIiLApzY29wZSA9ICJjb25maWciLApraW5kID0gInBhdGgiLAp0b2tlbnMgPSB0cnVlLAp9CmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAiaGVhZGVybmFtZSIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAic3RyaW5nIiwKdG9rZW5zID0gdHJ1ZSwKfQpuZXdvcHRpb24Kewp0cmlnZ2VyPSAiZGMiLAp2YWx1ZT0gIlZBTFVFIiwKZGVzY3JpcHRpb249ICJDaG9vc2UgYSBEIGNvbXBpbGVyIiwKYWxsb3dlZCA9IHsKeyAiZG1kIiwgIkRpZ2l0YWwgTWFycyAoZG1kKSIgfSwKeyAiZ2RjIiwgIkdOVSBHREMgKGdkYykiIH0sCnsgImxkYyIsICJMTFZNIExEQyAobGRjMikiIH0sCn0KfQpyZXR1cm4gZnVuY3Rpb24gKGNmZykKcmV0dXJuIChjZmcubGFuZ3VhZ2UgPT0gcC5EKQplbmQKAAAAAGxvY2FsIHAgPSBwcmVtYWtlCnAubW9kdWxlcy5kID0ge30KbG9jYWwgbSA9IHAubW9kdWxlcy5kCm0uX1ZFUlNJT04gPSBwLl9WRVJTSU9OCm0uZWxlbWVudHMgPSB7fQpsb2NhbCBhcGkgPSBwLmFwaQpmdW5jdGlvbiBwLnByb2plY3QuaXNkKHByaikKcmV0dXJuIHByai5sYW5ndWFnZSA9PSBwLkQKZW5kCmZ1bmN0aW9uIHBhdGguaXNkZmlsZShmbmFtZSkKcmV0dXJuIHBhdGguaGFzZXh0ZW5zaW9uKGZuYW1lLCB7ICIuZCIsICIuZGkiIH0pCmVuZAppbmNsdWRlKCAidG9vbHMvZG1kLmx1YSIgKQppbmNsdWRlKCAidG9vbHMvZ2RjLmx1YSIgKQppbmNsdWRlKCAidG9vbHMvbGRjLmx1YSIgKQppbmNsdWRlKCAiYWN0aW9ucy9nbWFrZS5sdWEiICkKaW5jbHVkZSggImFjdGlvbnMvdnN0dWRpby5sdWEiICkKcmV0dXJuIG0KAAAAAAAAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgbSA9IHAubW9kdWxlcy5kCm0ubWFrZSA9IHt9CmxvY2FsIGRtYWtlID0gbS5tYWtlCnJlcXVpcmUgKCJnbWFrZSIpCmxvY2FsIG1ha2UgPSBwLm1ha2UKbG9jYWwgY3BwID0gcC5tYWtlLmNwcApsb2NhbCBwcm9qZWN0ID0gcC5wcm9qZWN0CmxvY2FsIGNvbmZpZyA9IHAuY29uZmlnCmxvY2FsIGZpbGVjb25maWcgPSBwLmZpbGVjb25maWcKbG9jYWwgZ21ha2UgPSBwLmFjdGlvbi5nZXQoICdnbWFrZScgKQppZiBnbWFrZSA9PSBuaWwgdGhlbgplcnJvciggIkZhaWxlZCB0byBsb2NhdGUgcHJlcXVpc2l0ZSBhY3Rpb24gJ2dtYWtlJyIgKQplbmQKZ21ha2UudmFsaWRfbGFuZ3VhZ2VzID0gdGFibGUuam9pbihnbWFrZS52YWxpZF9sYW5ndWFnZXMsIHsgcC5EIH0gKQpnbWFrZS52YWxpZF90b29scy5kYyA9IHsgImRtZCIsICJnZGMiLCAibGRjIiB9CmZ1bmN0aW9uIG0ubWFrZS5zZXBhcmF0ZUNvbXBpbGF0aW9uKHByaikKbG9jYWwgc29tZSA9IGZhbHNlCmxvY2FsIGFsbCA9IHRydWUKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwppZiBjZmcuZmxhZ3MuU2VwYXJhdGVDb21waWxhdGlvbiB0aGVuCnNvbWUgPSB0cnVlCmVsc2UKYWxsID0gZmFsc2UKZW5kCmVuZApyZXR1cm4gaWlmKGFsbCwgImFsbCIsIGlpZihzb21lLCAic29tZSIsICJub25lIikpCmVuZApwLm92ZXJyaWRlKCBnbWFrZSwgIm9uUHJvamVjdCIsIGZ1bmN0aW9uKG9sZGZuLCBwcmopCnAuZXNjYXBlcihtYWtlLmVzYykKaWYgcHJvamVjdC5pc2QocHJqKSB0aGVuCmxvY2FsIG1ha2VmaWxlID0gbWFrZS5nZXRtYWtlZmlsZW5hbWUocHJqLCB0cnVlKQpwLmdlbmVyYXRlKHByaiwgbWFrZWZpbGUsIG0ubWFrZS5nZW5lcmF0ZSkKcmV0dXJuCmVuZApvbGRmbihwcmopCmVuZCkKcC5vdmVycmlkZSggbWFrZSwgIm9iamRpciIsIGZ1bmN0aW9uKG9sZGZuLCBjZmcpCmlmIGNmZy5wcm9qZWN0Lmxhbmd1YWdlIH49ICJEIiBvciBjZmcuZmxhZ3MuU2VwYXJhdGVDb21waWxhdGlvbiB0aGVuCm9sZGZuKGNmZykKZW5kCmVuZCkKcC5vdmVycmlkZSggbWFrZSwgIm9iakRpclJ1bGVzIiwgZnVuY3Rpb24ob2xkZm4sIHByaikKaWYgcHJqLmxhbmd1YWdlIH49ICJEIiBvciBtLm1ha2Uuc2VwYXJhdGVDb21waWxhdGlvbihwcmopIH49ICJub25lIiB0aGVuCm9sZGZuKHByaikKZW5kCmVuZCkKbS5lbGVtZW50cyA9IHt9Cm0uZWxlbWVudHMubWFrZWZpbGUgPSBmdW5jdGlvbihwcmopCnJldHVybiB7Cm1ha2UuaGVhZGVyLAptYWtlLnBob255UnVsZXMsCm0ubWFrZS5jb25maWdzLAptLm1ha2Uub2JqZWN0cywtLSBUT0RPOiBUaGlzIGlzIGJhc2ljYWxseSBpZGVudGljYWwgdG8gbWFrZS5jcHBPYmplY3RzKCksIGFuZCBzaG91bGQgaWRlYWxseSBiZSBtZXJnZWQvc2hhcmVkCm1ha2Uuc2hlbGxUeXBlLAptLm1ha2UudGFyZ2V0UnVsZXMsCm1ha2UudGFyZ2V0RGlyUnVsZXMsCm1ha2Uub2JqRGlyUnVsZXMsCm1ha2UuY3BwQ2xlYW5SdWxlcywtLSBEIGNsZWFuIGNvZGUgaXMgaWRlbnRpY2FsIHRvIEMvQysrCm1ha2UucHJlQnVpbGRSdWxlcywKbWFrZS5wcmVMaW5rUnVsZXMsCm0ubWFrZS5kRmlsZVJ1bGVzLAp9CmVuZApmdW5jdGlvbiBtLm1ha2UuZ2VuZXJhdGUocHJqKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLm1ha2VmaWxlLCBwcmopCmVuZApmdW5jdGlvbiBtLm1ha2UuYnVpbGRSdWxlKHByaikKX3AoJyQoVEFSR0VUKTogJChTT1VSQ0VGSUxFUykgJChMRERFUFMpJykKX3AoJ1x0QGVjaG8gQnVpbGRpbmcgJXMnLCBwcmoubmFtZSkKX3AoJ1x0JChTSUxFTlQpICQoQlVJTERDTUQpJykKX3AoJ1x0JChQT1NUQlVJTERDTURTKScpCmVuZApmdW5jdGlvbiBtLm1ha2UubGlua1J1bGUocHJqKQpfcCgnJChUQVJHRVQpOiAkKE9CSkVDVFMpICQoTERERVBTKScpCl9wKCdcdEBlY2hvIExpbmtpbmcgJXMnLCBwcmoubmFtZSkKX3AoJ1x0JChTSUxFTlQpICQoTElOS0NNRCknKQpfcCgnXHQkKFBPU1RCVUlMRENNRFMpJykKZW5kCmZ1bmN0aW9uIG0ubWFrZS50YXJnZXRSdWxlcyhwcmopCmxvY2FsIHNlcGFyYXRlQ29tcGlsYXRpb24gPSBtLm1ha2Uuc2VwYXJhdGVDb21waWxhdGlvbihwcmopCmlmIHNlcGFyYXRlQ29tcGlsYXRpb24gPT0gImFsbCIgdGhlbgptLm1ha2UubGlua1J1bGUocHJqKQplbHNlaWYgc2VwYXJhdGVDb21waWxhdGlvbiA9PSAibm9uZSIgdGhlbgptLm1ha2UuYnVpbGRSdWxlKHByaikKZWxzZQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCl94KCdpZmVxICgkKGNvbmZpZyksJXMpJywgY2ZnLnNob3J0bmFtZSkKaWYgY2ZnLmZsYWdzLlNlcGFyYXRlQ29tcGlsYXRpb24gdGhlbgptLm1ha2UubGlua1J1bGUocHJqKQplbHNlCm0ubWFrZS5idWlsZFJ1bGUocHJqKQplbmQKX3AoJ2VuZGlmJykKZW5kCmVuZApfcCgnJykKZW5kCmZ1bmN0aW9uIG0ubWFrZS5kRmlsZVJ1bGVzKHByaikKbG9jYWwgc2VwYXJhdGVDb21waWxhdGlvbiA9IG0ubWFrZS5zZXBhcmF0ZUNvbXBpbGF0aW9uKHByaikKaWYgc2VwYXJhdGVDb21waWxhdGlvbiB+PSAibm9uZSIgdGhlbgptYWtlLmNwcEZpbGVSdWxlcyhwcmopCmVuZAplbmQKcC5vdmVycmlkZShjcHAsICJzdGFuZGFyZEZpbGVSdWxlcyIsIGZ1bmN0aW9uKG9sZGZuLCBwcmosIG5vZGUpCmlmIHBhdGguaXNkZmlsZShub2RlLmFic3BhdGgpIHRoZW4KX3goJyQoT0JKRElSKS8lcy5vOiAlcycsIG5vZGUub2JqbmFtZSwgbm9kZS5yZWxwYXRoKQpfcCgnXHRAZWNobyAkKG5vdGRpciAkPCknKQpfcCgnXHQkKFNJTEVOVCkgJChEQykgJChBTExfREZMQUdTKSAkKE9VVFBVVEZMQUcpIC1jICQ8JykKZWxzZQpvbGRmbihwcmosIG5vZGUpCmVuZAplbmQpCm0uZWxlbWVudHMubWFrZWNvbmZpZyA9IGZ1bmN0aW9uKGNmZykKcmV0dXJuIHsKbS5tYWtlLmRUb29scywKbWFrZS50YXJnZXQsCm0ubWFrZS50YXJnZXQsCm1ha2Uub2JqZGlyLAptLm1ha2UudmVyc2lvbnMsCm0ubWFrZS5kZWJ1ZywKbS5tYWtlLmltcG9ydHMsCm0ubWFrZS5kRmxhZ3MsCm1ha2UubGlicywKbWFrZS5sZERlcHMsCm1ha2UubGRGbGFncywKbS5tYWtlLmxpbmtDbWQsCm1ha2UucHJlQnVpbGRDbWRzLAptYWtlLnByZUxpbmtDbWRzLAptYWtlLnBvc3RCdWlsZENtZHMsCm0ubWFrZS5hbGxSdWxlcywKbWFrZS5zZXR0aW5ncywKfQplbmQKZnVuY3Rpb24gbS5tYWtlLmNvbmZpZ3MocHJqKQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmxvY2FsIHRvb2xzZXQgPSBwLnRvb2xzW19PUFRJT05TLmRjIG9yIGNmZy50b29sc2V0IG9yICJkbWQiXQppZiBub3QgdG9vbHNldCB0aGVuCmVycm9yKCJJbnZhbGlkIHRvb2xzZXQgJyIgKyAoX09QVElPTlMuZGMgb3IgY2ZnLnRvb2xzZXQpICsgIiciKQplbmQKX3goJ2lmZXEgKCQoY29uZmlnKSwlcyknLCBjZmcuc2hvcnRuYW1lKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLm1ha2Vjb25maWcsIGNmZywgdG9vbHNldCkKX3AoJ2VuZGlmJykKX3AoJycpCmVuZAplbmQKZnVuY3Rpb24gbS5tYWtlLmRUb29scyhjZmcsIHRvb2xzZXQpCmxvY2FsIHRvb2wgPSB0b29sc2V0LmdldHRvb2xuYW1lKGNmZywgImRjIikKaWYgdG9vbCB0aGVuCl9wKCcgIERDID0gJXMnLCB0b29sKQplbmQKZW5kCmZ1bmN0aW9uIG0ubWFrZS50YXJnZXQoY2ZnLCB0b29sc2V0KQppZiBjZmcuZmxhZ3MuU2VwYXJhdGVDb21waWxhdGlvbiB0aGVuCl9wKCcgIE9VVFBVVEZMQUcgPSAlcycsIHRvb2xzZXQuZ2V0dGFyZ2V0KCciJEAiJykpCmVuZAplbmQKZnVuY3Rpb24gbS5tYWtlLnZlcnNpb25zKGNmZywgdG9vbHNldCkKX3AoJyAgVkVSU0lPTlMgKz0lcycsIG1ha2UubGlzdCh0b29sc2V0LmdldHZlcnNpb25zKGNmZy52ZXJzaW9uY29uc3RhbnRzLCBjZmcudmVyc2lvbmxldmVsKSkpCmVuZApmdW5jdGlvbiBtLm1ha2UuZGVidWcoY2ZnLCB0b29sc2V0KQpfcCgnICBERUJVRyArPSVzJywgbWFrZS5saXN0KHRvb2xzZXQuZ2V0ZGVidWcoY2ZnLmRlYnVnY29uc3RhbnRzLCBjZmcuZGVidWdsZXZlbCkpKQplbmQKZnVuY3Rpb24gbS5tYWtlLmltcG9ydHMoY2ZnLCB0b29sc2V0KQpsb2NhbCBpbmNsdWRlcyA9IHAuZXNjKHRvb2xzZXQuZ2V0aW1wb3J0ZGlycyhjZmcsIGNmZy5pbmNsdWRlZGlycykpCl9wKCcgIElNUE9SVFMgKz0lcycsIG1ha2UubGlzdChpbmNsdWRlcykpCmVuZApmdW5jdGlvbiBtLm1ha2UuZEZsYWdzKGNmZywgdG9vbHNldCkKX3AoJyAgQUxMX0RGTEFHUyArPSAkKERGTEFHUyklcyAkKFZFUlNJT05TKSAkKERFQlVHKSAkKElNUE9SVFMpICQoQVJDSCknLCBtYWtlLmxpc3QodGFibGUuam9pbih0b29sc2V0LmdldGRmbGFncyhjZmcpLCBjZmcuYnVpbGRvcHRpb25zKSkpCmVuZApmdW5jdGlvbiBtLm1ha2UubGlua0NtZChjZmcsIHRvb2xzZXQpCmlmIGNmZy5mbGFncy5TZXBhcmF0ZUNvbXBpbGF0aW9uIHRoZW4KX3AoJyAgTElOS0NNRCA9ICQoREMpICcgLi4gdG9vbHNldC5nZXR0YXJnZXQoIiQoVEFSR0VUKSIpIC4uICcgJChBTExfTERGTEFHUykgJChMSUJTKSAkKE9CSkVDVFMpJykKZWxzZQpfcCgnICBCVUlMRENNRCA9ICQoREMpICcgLi4gdG9vbHNldC5nZXR0YXJnZXQoIiQoVEFSR0VUKSIpIC4uICcgJChBTExfREZMQUdTKSAkKEFMTF9MREZMQUdTKSAkKExJQlMpICQoU09VUkNFRklMRVMpJykKZW5kCmVuZApmdW5jdGlvbiBtLm1ha2UuYWxsUnVsZXMoY2ZnLCB0b29sc2V0KQppZiBjZmcuZmxhZ3MuU2VwYXJhdGVDb21waWxhdGlvbiB0aGVuCl9wKCdhbGw6ICQoVEFSR0VURElSKSAkKE9CSkRJUikgcHJlYnVpbGQgcHJlbGluayAkKFRBUkdFVCknKQplbHNlCl9wKCdhbGw6ICQoVEFSR0VURElSKSBwcmVidWlsZCBwcmVsaW5rICQoVEFSR0VUKScpCmVuZApfcCgnXHRAOicpCmVuZApmdW5jdGlvbiBtLm1ha2Uub2JqZWN0cyhwcmopCmxvY2FsIHJvb3QgPSB7IHNvdXJjZWZpbGVzPXt9LCBvYmplY3RzPXt9IH0KbG9jYWwgY29uZmlncyA9IHt9CmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KY29uZmlnc1tjZmddID0geyBzb3VyY2VmaWxlcz17fSwgb2JqZWN0cz17fSB9CmVuZApsb2NhbCB0ciA9IHByb2plY3QuZ2V0c291cmNldHJlZShwcmopCnAudHJlZS50cmF2ZXJzZSh0ciwgewpvbmxlYWYgPSBmdW5jdGlvbihub2RlLCBkZXB0aCkKbG9jYWwgaW5jZmcgPSB7fQpsb2NhbCBpbmFsbCA9IHRydWUKbG9jYWwgY3VzdG9tID0gZmFsc2UKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpsb2NhbCBmaWxlY2ZnID0gZmlsZWNvbmZpZy5nZXRjb25maWcobm9kZSwgY2ZnKQppZiBmaWxlY2ZnIGFuZCBub3QgZmlsZWNmZy5mbGFncy5FeGNsdWRlRnJvbUJ1aWxkIHRoZW4KaW5jZmdbY2ZnXSA9IGZpbGVjZmcKY3VzdG9tID0gZmlsZWNvbmZpZy5oYXNDdXN0b21CdWlsZFJ1bGUoZmlsZWNmZykKZWxzZQppbmFsbCA9IGZhbHNlCmVuZAplbmQKaWYgbm90IGN1c3RvbSB0aGVuCmlmIG5vdCBwYXRoLmlzZGZpbGUobm9kZS5hYnNwYXRoKSB0aGVuCnJldHVybgplbmQKbG9jYWwgc291cmNlbmFtZSA9IG5vZGUucmVscGF0aApsb2NhbCBvYmplY3RuYW1lID0gIiQoT0JKRElSKS8iIC4uIG5vZGUub2JqbmFtZSAuLiAiLm8iCmlmIGluYWxsIHRoZW4KdGFibGUuaW5zZXJ0KHJvb3Quc291cmNlZmlsZXMsIHNvdXJjZW5hbWUpCnRhYmxlLmluc2VydChyb290Lm9iamVjdHMsIG9iamVjdG5hbWUpCmVsc2UKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwppZiBpbmNmZ1tjZmddIHRoZW4KdGFibGUuaW5zZXJ0KGNvbmZpZ3NbY2ZnXS5zb3VyY2VmaWxlcywgc291cmNlbmFtZSkKdGFibGUuaW5zZXJ0KGNvbmZpZ3NbY2ZnXS5vYmplY3RzLCBvYmplY3RuYW1lKQplbmQKZW5kCmVuZAplbHNlCmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgZmlsZWNmZyA9IGluY2ZnW2NmZ10KaWYgZmlsZWNmZyB0aGVuCmxvY2FsIG91dHB1dCA9IHByb2plY3QuZ2V0cmVsYXRpdmUocHJqLCBmaWxlY2ZnLmJ1aWxkb3V0cHV0c1sxXSkKaWYgcGF0aC5pc29iamVjdGZpbGUob3V0cHV0KSB0aGVuCnRhYmxlLmluc2VydChjb25maWdzW2NmZ10ub2JqZWN0cywgb3V0cHV0KQplbmQKZW5kCmVuZAplbmQKZW5kCn0pCmxvY2FsIHNlcGFyYXRlQ29tcGlsYXRpb24gPSBtLm1ha2Uuc2VwYXJhdGVDb21waWxhdGlvbihwcmopCmZ1bmN0aW9uIGxpc3RvYmplY3RzKHZhciwgbGlzdCkKX3AoJyVzIFxcJywgdmFyKQpmb3IgXywgb2JqZWN0bmFtZSBpbiBpcGFpcnMobGlzdCkgZG8KX3goJ1x0JXMgXFwnLCBvYmplY3RuYW1lKQplbmQKX3AoJycpCmVuZAppZiBzZXBhcmF0ZUNvbXBpbGF0aW9uIH49ICJhbGwiIHRoZW4KbGlzdG9iamVjdHMoJ1NPVVJDRUZJTEVTIDo9Jywgcm9vdC5zb3VyY2VmaWxlcykKZW5kCmlmIHNlcGFyYXRlQ29tcGlsYXRpb24gfj0gIm5vbmUiIHRoZW4KbGlzdG9iamVjdHMoJ09CSkVDVFMgOj0nLCByb290Lm9iamVjdHMsICdvJykKZW5kCmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgZmlsZXMgPSBjb25maWdzW2NmZ10KaWYgKCNmaWxlcy5zb3VyY2VmaWxlcyA+IDAgYW5kIHNlcGFyYXRlQ29tcGlsYXRpb24gfj0gImFsbCIpIG9yICgjZmlsZXMub2JqZWN0cyA+IDAgYW5kIHNlcGFyYXRlQ29tcGlsYXRpb24gfj0gIm5vbmUiKSB0aGVuCl94KCdpZmVxICgkKGNvbmZpZyksJXMpJywgY2ZnLnNob3J0bmFtZSkKaWYgI2ZpbGVzLnNvdXJjZWZpbGVzID4gMCBhbmQgc2VwYXJhdGVDb21waWxhdGlvbiB+PSAiYWxsIiB0aGVuCmxpc3RvYmplY3RzKCcgIFNPVVJDRUZJTEVTICs9JywgZmlsZXMuc291cmNlZmlsZXMpCmVuZAppZiAjZmlsZXMub2JqZWN0cyA+IDAgYW5kIHNlcGFyYXRlQ29tcGlsYXRpb24gfj0gIm5vbmUiIHRoZW4KbGlzdG9iamVjdHMoJyAgT0JKRUNUUyArPScsIGZpbGVzLm9iamVjdHMpCmVuZApfcCgnZW5kaWYnKQplbmQKZW5kCl9wKCcnKQplbmQKAABsb2NhbCBwID0gcHJlbWFrZQpsb2NhbCBtID0gcC5tb2R1bGVzLmQKbS52aXN1YWxkID0ge30KcmVxdWlyZSAoInZzdHVkaW8iKQpsb2NhbCB2c3R1ZGlvID0gcC52c3R1ZGlvCmxvY2FsIHdvcmtzcGFjZSA9IHAud29ya3NwYWNlCmxvY2FsIHByb2plY3QgPSBwLnByb2plY3QKbG9jYWwgY29uZmlnID0gcC5jb25maWcKbG9jYWwgdHJlZSA9IHAudHJlZQpmb3Igayx2IGluIHBhaXJzKHsgInZzMjAwNSIsICJ2czIwMDgiLCAidnMyMDEwIiwgInZzMjAxMiIsICJ2czIwMTMiLCAidnMyMDE1IiwgInZzMjAxNyIgfSkgZG8KbG9jYWwgdnMgPSBwLmFjdGlvbi5nZXQodikKaWYgdnMgfj0gbmlsIHRoZW4KdGFibGUuaW5zZXJ0KCB2cy52YWxpZF9sYW5ndWFnZXMsIHAuRCApCnZzLnZhbGlkX3Rvb2xzLmRjID0geyAiZG1kIiwgImdkYyIsICJsZGMiIH0KcC5vdmVycmlkZSh2cywgIm9uUHJvamVjdCIsIGZ1bmN0aW9uKG9sZGZuLCBwcmopCm9sZGZuKHByaikKaWYgcHJvamVjdC5pc2QocHJqKSB0aGVuCnAuZ2VuZXJhdGUocHJqLCAiLnZpc3VhbGRwcm9qIiwgbS52aXN1YWxkLmdlbmVyYXRlKQplbmQKZW5kKQplbmQKZW5kCnAub3ZlcnJpZGUocHJvamVjdCwgImlzbmF0aXZlIiwgZnVuY3Rpb24ob2xkZm4sIHByaikKcmV0dXJuIHByb2plY3QuaXNkKHByaikgb3Igb2xkZm4ocHJqKQplbmQpCnAub3ZlcnJpZGUodnN0dWRpbywgInByb2plY3RmaWxlIiwgZnVuY3Rpb24ob2xkZm4sIHByaikKaWYgcHJvamVjdC5pc2QocHJqKSB0aGVuCnJldHVybiBwLmZpbGVuYW1lKHByaiwgIi52aXN1YWxkcHJvaiIpCmVuZApyZXR1cm4gb2xkZm4ocHJqKQplbmQpCnAub3ZlcnJpZGUodnN0dWRpbywgInRvb2wiLCBmdW5jdGlvbihvbGRmbiwgcHJqKQppZiBwcm9qZWN0LmlzZChwcmopIHRoZW4KcmV0dXJuICIwMDJBMkRFOS04QkI2LTQ4NEQtOTgwMi03RTRBRDQwODQ3MTUiCmVuZApyZXR1cm4gb2xkZm4ocHJqKQplbmQpCm0uZWxlbWVudHMucHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcmV0dXJuIHsKbS52aXN1YWxkLmhlYWRlciwKbS52aXN1YWxkLmdsb2JhbHMsCm0udmlzdWFsZC5wcm9qZWN0Q29uZmlndXJhdGlvbnMsCm0udmlzdWFsZC5maWxlcywKfQplbmQKZnVuY3Rpb24gbS52aXN1YWxkLmdlbmVyYXRlKHByaikKcC5lb2woIlxyXG4iKQpwLmluZGVudCgiICIpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMucHJvamVjdCwgcHJqKQpfcCgnPC9EUHJvamVjdD4nKQplbmQKZnVuY3Rpb24gbS52aXN1YWxkLmhlYWRlcihwcmopCl9wKCc8RFByb2plY3Q+JykKZW5kCmZ1bmN0aW9uIG0udmlzdWFsZC5nbG9iYWxzKHByaikKX3AoMSwnPFByb2plY3RHdWlkPnslc308L1Byb2plY3RHdWlkPicsIHByai51dWlkKQplbmQKZnVuY3Rpb24gbS52aXN1YWxkLnByb2plY3RDb25maWd1cmF0aW9ucyhwcmopCmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgcHJqUGxhdGZvcm0gPSBwLmVzYyh2c3R1ZGlvLnByb2plY3RQbGF0Zm9ybShjZmcpKQpsb2NhbCBzbG5QbGF0Zm9ybSA9IHZzdHVkaW8uc29sdXRpb25QbGF0Zm9ybShjZmcpCmxvY2FsIGlzNjRiaXQgPSBzbG5QbGF0Zm9ybSA9PSAieDY0IiAtLSBUT0RPOiB0aGlzIHNlZW1zIGxpa2UgYSBoYWNrCl9wKDEsJzxDb25maWcgbmFtZT0iJXMiIHBsYXRmb3JtPSIlcyI+JywgcHJqUGxhdGZvcm0sIHNsblBsYXRmb3JtKQpfcCgyLCc8b2JqPjA8L29iaj4nKQpfcCgyLCc8bGluaz4wPC9saW5rPicpCmxvY2FsIGlzV2luZG93cyA9IGZhbHNlCmxvY2FsIGlzRGVidWcgPSBzdHJpbmcuZmluZChjZmcuYnVpbGRjZmcsICdEZWJ1ZycpIH49IG5pbApsb2NhbCBpc09wdGltaXNlZCA9IGNvbmZpZy5pc09wdGltaXplZEJ1aWxkKGNmZykKaWYgY2ZnLmtpbmQgPT0gcC5DT05TT0xFQVBQIHRoZW4KX3AoMiwnPGxpYj4wPC9saWI+JykKX3AoMiwnPHN1YnN5c3RlbT4xPC9zdWJzeXN0ZW0+JykKZWxzZWlmIGNmZy5raW5kID09IHAuU1RBVElDTElCIHRoZW4KX3AoMiwnPGxpYj4xPC9saWI+JykKX3AoMiwnPHN1YnN5c3RlbT4wPC9zdWJzeXN0ZW0+JykKZWxzZWlmIGNmZy5raW5kID09IHAuU0hBUkVETElCIHRoZW4KX3AoMiwnPGxpYj4yPC9saWI+JykKX3AoMiwnPHN1YnN5c3RlbT4wPC9zdWJzeXN0ZW0+JykgLS0gU0hPVUxEIFRISVMgQkUgJzInICh3aW5kb3dzKT8/CmVsc2UKX3AoMiwnPGxpYj4wPC9saWI+JykKX3AoMiwnPHN1YnN5c3RlbT4yPC9zdWJzeXN0ZW0+JykKaXNXaW5kb3dzID0gdHJ1ZQplbmQKX3AoMiwnPG11bHRpb2JqPjA8L211bHRpb2JqPicpCl9wKDIsJzxzaW5nbGVGaWxlQ29tcGlsYXRpb24+MDwvc2luZ2xlRmlsZUNvbXBpbGF0aW9uPicpCl9wKDIsJzxvbmVvYmo+MDwvb25lb2JqPicpCl9wKDIsJzx0cmFjZT4lczwvdHJhY2U+JywgaWlmKGNmZy5mbGFncy5Qcm9maWxlLCAnMScsICcwJykpCl9wKDIsJzxxdWlldD4lczwvcXVpZXQ+JywgaWlmKGNmZy5mbGFncy5RdWlldCwgJzEnLCAnMCcpKQpfcCgyLCc8dmVyYm9zZT4lczwvdmVyYm9zZT4nLCBpaWYoY2ZnLmZsYWdzLlZlcmJvc2UsICcxJywgJzAnKSkKX3AoMiwnPHZ0bHM+MDwvdnRscz4nKQpfcCgyLCc8c3ltZGVidWc+JXM8L3N5bWRlYnVnPicsIGlpZihjZmcuc3ltYm9scyA9PSBwLk9OIG9yIGNmZy5mbGFncy5TeW1ib2xzTGlrZUMsIGlpZihjZmcuZmxhZ3MuU3ltYm9sc0xpa2VDLCAnMicsICcxJyksICcwJykpCl9wKDIsJzxvcHRpbWl6ZT4lczwvb3B0aW1pemU+JywgaWlmKGlzT3B0aW1pc2VkLCAnMScsICcwJykpCl9wKDIsJzxjcHU+MDwvY3B1PicpCl9wKDIsJzxpc1g4Nl82ND4lczwvaXNYODZfNjQ+JywgaWlmKGlzNjRiaXQsICcxJywgJzAnKSkKX3AoMiwnPGlzTGludXg+MDwvaXNMaW51eD4nKQpfcCgyLCc8aXNPU1g+MDwvaXNPU1g+JykKX3AoMiwnPGlzV2luZG93cz4lczwvaXNXaW5kb3dzPicsIGlpZihpc1dpbmRvd3MsICcxJywgJzAnKSkKX3AoMiwnPGlzRnJlZUJTRD4wPC9pc0ZyZWVCU0Q+JykKX3AoMiwnPGlzU29sYXJpcz4wPC9pc1NvbGFyaXM+JykKX3AoMiwnPHNjaGVkdWxlcj4wPC9zY2hlZHVsZXI+JykKX3AoMiwnPHVzZURlcHJlY2F0ZWQ+JXM8L3VzZURlcHJlY2F0ZWQ+JywgaWlmKGNmZy5mbGFncy5EZXByZWNhdGVkLCAnMScsICcwJykpCl9wKDIsJzxlcnJEZXByZWNhdGVkPjA8L2VyckRlcHJlY2F0ZWQ+JykKX3AoMiwnPHVzZUFzc2VydD4wPC91c2VBc3NlcnQ+JykKX3AoMiwnPHVzZUludmFyaWFudHM+MDwvdXNlSW52YXJpYW50cz4nKQpfcCgyLCc8dXNlSW4+MDwvdXNlSW4+JykKX3AoMiwnPHVzZU91dD4wPC91c2VPdXQ+JykKX3AoMiwnPHVzZUFycmF5Qm91bmRzPjA8L3VzZUFycmF5Qm91bmRzPicpCl9wKDIsJzxub2JvdW5kc2NoZWNrPiVzPC9ub2JvdW5kc2NoZWNrPicsIGlpZihjZmcuZmxhZ3MuTm9Cb3VuZHNDaGVjaywgJzEnLCAnMCcpKQpfcCgyLCc8dXNlU3dpdGNoRXJyb3I+MDwvdXNlU3dpdGNoRXJyb3I+JykKX3AoMiwnPHVzZVVuaXRUZXN0cz4lczwvdXNlVW5pdFRlc3RzPicsIGlpZihjZmcuZmxhZ3MuVW5pdFRlc3QsICcxJywgJzAnKSkKX3AoMiwnPHVzZUlubGluZT4lczwvdXNlSW5saW5lPicsIGlpZihjZmcuZmxhZ3MuSW5saW5lIG9yIGlzT3B0aW1pc2VkLCAnMScsICcwJykpCl9wKDIsJzxyZWxlYXNlPiVzPC9yZWxlYXNlPicsIGlpZihjZmcuZmxhZ3MuUmVsZWFzZSBvciBub3QgaXNEZWJ1ZywgJzEnLCAnMCcpKQpfcCgyLCc8cHJlc2VydmVQYXRocz4wPC9wcmVzZXJ2ZVBhdGhzPicpCl9wKDIsJzx3YXJuaW5ncz4lczwvd2FybmluZ3M+JywgaWlmKGNmZy5mbGFncy5GYXRhbENvbXBpbGVXYXJuaW5ncywgJzEnLCAnMCcpKQpfcCgyLCc8aW5mb3dhcm5pbmdzPiVzPC9pbmZvd2FybmluZ3M+JywgaWlmKGNmZy53YXJuaW5ncyBhbmQgY2ZnLndhcm5pbmdzIH49ICJPZmYiLCAnMScsICcwJykpCl9wKDIsJzxjaGVja1Byb3BlcnR5PjA8L2NoZWNrUHJvcGVydHk+JykKX3AoMiwnPGdlblN0YWNrRnJhbWU+MDwvZ2VuU3RhY2tGcmFtZT4nKQpfcCgyLCc8cGljPiVzPC9waWM+JywgaWlmKGNmZy5waWMgPT0gIk9uIiwgJzEnLCAnMCcpKQpfcCgyLCc8Y292PiVzPC9jb3Y+JywgaWlmKGNmZy5mbGFncy5Db2RlQ292ZXJhZ2UsICcxJywgJzAnKSkKX3AoMiwnPG5vZmxvYXQ+JXM8L25vZmxvYXQ+JywgaWlmKGNmZy5mbG9hdGluZ3BvaW50IGFuZCBjZmcuZmxvYXRpbmdwb2ludCA9PSAiTm9uZSIsICcxJywgJzAnKSkKX3AoMiwnPER2ZXJzaW9uPjI8L0R2ZXJzaW9uPicpCl9wKDIsJzxpZ25vcmVVbnN1cHBvcnRlZFByYWdtYXM+MDwvaWdub3JlVW5zdXBwb3J0ZWRQcmFnbWFzPicpCmxvY2FsIGNvbXBpbGVyID0geyBkbWQ9IjAiLCBnZGM9IjEiLCBsZGM9IjIiIH0KbS52aXN1YWxkLmVsZW1lbnQoMiwgImNvbXBpbGVyIiwgY29tcGlsZXJbX09QVElPTlMuZGMgb3IgY2ZnLnRvb2xzZXQgb3IgImRtZCJdKQptLnZpc3VhbGQuZWxlbWVudCgyLCAib3RoZXJETUQiLCAnMCcpCm0udmlzdWFsZC5lbGVtZW50KDIsICJwcm9ncmFtIiwgJyQoRE1ESW5zdGFsbERpcil3aW5kb3dzXFxiaW5cXGRtZC5leGUnKQptLnZpc3VhbGQuZWxlbWVudCgyLCAiaW1wcGF0aCIsIGNmZy5pbmNsdWRlZGlycykKbS52aXN1YWxkLmVsZW1lbnQoMiwgImZpbGVJbXBwYXRoIikKbS52aXN1YWxkLmVsZW1lbnQoMiwgIm91dGRpciIsIHBhdGgudHJhbnNsYXRlKHByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIGNmZy5idWlsZHRhcmdldC5kaXJlY3RvcnkpKSkKbS52aXN1YWxkLmVsZW1lbnQoMiwgIm9iamRpciIsIHBhdGgudHJhbnNsYXRlKHByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIGNmZy5vYmpkaXIpKSkKbS52aXN1YWxkLmVsZW1lbnQoMiwgIm9iam5hbWUiKQptLnZpc3VhbGQuZWxlbWVudCgyLCAibGlibmFtZSIpCm0udmlzdWFsZC5lbGVtZW50KDIsICJkb0RvY0NvbW1lbnRzIiwgaWlmKGNmZy5mbGFncy5Eb2N1bWVudGF0aW9uLCAnMScsICcwJykpCm0udmlzdWFsZC5lbGVtZW50KDIsICJkb2NkaXIiLCBjZmcuZG9jZGlyKQptLnZpc3VhbGQuZWxlbWVudCgyLCAiZG9jbmFtZSIsIGNmZy5kb2NuYW1lKQptLnZpc3VhbGQuZWxlbWVudCgyLCAibW9kdWxlc19kZG9jIikKbS52aXN1YWxkLmVsZW1lbnQoMiwgImRkb2NmaWxlcyIpCm0udmlzdWFsZC5lbGVtZW50KDIsICJkb0hkckdlbmVyYXRpb24iLCBpaWYoY2ZnLmZsYWdzLkdlbmVyYXRlSGVhZGVyLCAnMScsICcwJykpCm0udmlzdWFsZC5lbGVtZW50KDIsICJoZHJkaXIiLCBjZmcuaGVhZGVyZGlyKQptLnZpc3VhbGQuZWxlbWVudCgyLCAiaGRybmFtZSIsIGNmZy5oZWFkZXJuYW1lKQptLnZpc3VhbGQuZWxlbWVudCgyLCAiZG9YR2VuZXJhdGlvbiIsIGlpZihjZmcuZmxhZ3MuR2VuZXJhdGVKU09OLCAnMScsICcwJykpCm0udmlzdWFsZC5lbGVtZW50KDIsICJ4ZmlsZW5hbWUiLCAnJChJbnREaXIpXFwkKFRhcmdldE5hbWUpLmpzb24nKQptLnZpc3VhbGQuZWxlbWVudCgyLCAiZGVidWdsZXZlbCIsIGlpZihjZmcuZGVidWdsZXZlbCwgdG9zdHJpbmcoY2ZnLmRlYnVnbGV2ZWwpLCAnMCcpKQptLnZpc3VhbGQuZWxlbWVudCgyLCAiZGVidWdpZHMiLCBjZmcuZGVidWdjb25zdGFudHMpCm0udmlzdWFsZC5lbGVtZW50KDIsICJ2ZXJzaW9ubGV2ZWwiLCBpaWYoY2ZnLnZlcnNpb25sZXZlbCwgdG9zdHJpbmcoY2ZnLnZlcnNpb25sZXZlbCksICcwJykpCm0udmlzdWFsZC5lbGVtZW50KDIsICJ2ZXJzaW9uaWRzIiwgY2ZnLnZlcnNpb25jb25zdGFudHMpCl9wKDIsJzxkdW1wX3NvdXJjZT4wPC9kdW1wX3NvdXJjZT4nKQpfcCgyLCc8bWFwdmVyYm9zaXR5PjA8L21hcHZlcmJvc2l0eT4nKQpfcCgyLCc8Y3JlYXRlSW1wbGliPiVzPC9jcmVhdGVJbXBsaWI+JywgaWlmKGNmZy5raW5kIH49IHAuU0hBUkVETElCIG9yIGNmZy5mbGFncy5Ob0ltcG9ydExpYiwgJzAnLCAnMScpKQpfcCgyLCc8ZGVmYXVsdGxpYm5hbWUgLz4nKQpfcCgyLCc8ZGVidWdsaWJuYW1lIC8+JykKX3AoMiwnPG1vZHVsZURlcHNGaWxlIC8+JykKX3AoMiwnPHJ1bj4wPC9ydW4+JykKX3AoMiwnPHJ1bmFyZ3MgLz4nKQpfcCgyLCc8cnVuQ3YycGRiPjE8L3J1bkN2MnBkYj4nKSAtLSB3ZSB3aWxsIGp1c3QgbGVhdmUgdGhpcyBhbHdheXMgZW5hYmxlZCwgc2luY2UgaXQncyBpZ25vcmVkIGlmIG5vIGRlYnVnaW5mbyBpcyB3cml0dGVuCl9wKDIsJzxwYXRoQ3YycGRiPiQoVmlzdWFsREluc3RhbGxEaXIpY3YycGRiXFxjdjJwZGIuZXhlPC9wYXRoQ3YycGRiPicpCl9wKDIsJzxjdjJwZGJQcmUyMDQzPjA8L2N2MnBkYlByZTIwNDM+JykKX3AoMiwnPGN2MnBkYk5vRGVtYW5nbGU+MDwvY3YycGRiTm9EZW1hbmdsZT4nKQpfcCgyLCc8Y3YycGRiRW51bVR5cGU+MDwvY3YycGRiRW51bVR5cGU+JykKX3AoMiwnPGN2MnBkYk9wdGlvbnMgLz4nKQpfcCgyLCc8b2JqZmlsZXMgLz4nKQpfcCgyLCc8bGlua3N3aXRjaGVzIC8+JykKbG9jYWwgbGlua3MKbG9jYWwgZXhwbGljaXQgPSB2c3R1ZGlvLm5lZWRzRXhwbGljaXRMaW5rKGNmZykKbG9jYWwgdG9vbHNldCA9IGNvbmZpZy50b29sc2V0KGNmZykKaWYgdG9vbHNldCB0aGVuCmxpbmtzID0gdG9vbHNldC5nZXRsaW5rcyhjZmcsIG5vdCBleHBsaWNpdCkKZWxzZQpsb2NhbCBzY29wZSA9IGlpZihleHBsaWNpdCwgImFsbCIsICJzeXN0ZW0iKQpsaW5rcyA9IGNvbmZpZy5nZXRsaW5rcyhjZmcsIHNjb3BlLCAiZnVsbHBhdGgiKQplbmQKbS52aXN1YWxkLmVsZW1lbnQoMiwgImxpYmZpbGVzIiwgdGFibGUuY29uY2F0KGxpbmtzLCAiICIpKQptLnZpc3VhbGQuZWxlbWVudCgyLCAibGlicGF0aHMiLCBjZmcubGliZGlycykKX3AoMiwnPGRlZmZpbGUgLz4nKQpfcCgyLCc8cmVzZmlsZSAvPicpCmxvY2FsIHRhcmdldCA9IGNvbmZpZy5nZXR0YXJnZXRpbmZvKGNmZykKX3AoMiwnPGV4ZWZpbGU+JChPdXREaXIpXFwlczwvZXhlZmlsZT4nLCB0YXJnZXQubmFtZSkKX3AoMiwnPHVzZVN0ZExpYlBhdGg+MTwvdXNlU3RkTGliUGF0aD4nKQpsb2NhbCBydW50aW1lID0gMAppZiBub3QgY2ZnLmZsYWdzLk9taXREZWZhdWx0TGlicmFyeSB0aGVuCmlmIGNvbmZpZy5pc0RlYnVnQnVpbGQoY2ZnKSB0aGVuCnJ1bnRpbWUgPSBpaWYoY2ZnLmZsYWdzLlN0YXRpY1J1bnRpbWUsICIyIiwgIjQiKQplbHNlCnJ1bnRpbWUgPSBpaWYoY2ZnLmZsYWdzLlN0YXRpY1J1bnRpbWUsICIxIiwgIjMiKQplbmQKZW5kCm0udmlzdWFsZC5lbGVtZW50KDIsICJjUnVudGltZSIsIHJ1bnRpbWUpCmxvY2FsIGFkZGl0aW9uYWxPcHRpb25zCmlmICNjZmcuYnVpbGRvcHRpb25zID4gMCB0aGVuCmFkZGl0aW9uYWxPcHRpb25zID0gdGFibGUuY29uY2F0KGNmZy5idWlsZG9wdGlvbnMsICIgIikKZW5kCmlmICNjZmcubGlua29wdGlvbnMgPiAwIHRoZW4KbG9jYWwgbGlua09wdHMgPSB0YWJsZS5pbXBsb2RlKGNmZy5saW5rb3B0aW9ucywgIi1MIiwgIiIsICIgIikKaWYgYWRkaXRpb25hbE9wdGlvbnMgdGhlbgphZGRpdGlvbmFsT3B0aW9ucyA9IGFkZGl0aW9uYWxPcHRpb25zIC4uICIgIiAuLiBsaW5rT3B0cwplbHNlCmFkZGl0aW9uYWxPcHRpb25zID0gbGlua09wdHMKZW5kCmVuZAptLnZpc3VhbGQuZWxlbWVudCgyLCAiYWRkaXRpb25hbE9wdGlvbnMiLCBhZGRpdGlvbmFsT3B0aW9ucykKaWYgI2NmZy5wcmVidWlsZGNvbW1hbmRzID4gMCB0aGVuCl9wKDIsJzxwcmVCdWlsZENvbW1hbmQ+JXM8L3ByZUJ1aWxkQ29tbWFuZD4nLHAuZXNjKHRhYmxlLmltcGxvZGUoY2ZnLnByZWJ1aWxkY29tbWFuZHMsICIiLCAiIiwgIlxyXG4iKSkpCmVsc2UKX3AoMiwnPHByZUJ1aWxkQ29tbWFuZCAvPicpCmVuZAppZiAjY2ZnLnBvc3RidWlsZGNvbW1hbmRzID4gMCB0aGVuCl9wKDIsJzxwb3N0QnVpbGRDb21tYW5kPiVzPC9wb3N0QnVpbGRDb21tYW5kPicscC5lc2ModGFibGUuaW1wbG9kZShjZmcucG9zdGJ1aWxkY29tbWFuZHMsICIiLCAiIiwgIlxyXG4iKSkpCmVsc2UKX3AoMiwnPHBvc3RCdWlsZENvbW1hbmQgLz4nKQplbmQKX3AoMiwnPGZpbGVzVG9DbGVhbj4qLm9iajsqLmNtZDsqLmJ1aWxkOyouanNvbjsqLmRlcDsqLm88L2ZpbGVzVG9DbGVhbj4nKQpfcCgxLCc8L0NvbmZpZz4nKQplbmQKZW5kCmZ1bmN0aW9uIG0udmlzdWFsZC5maWxlcyhwcmopCl9wKDEsJzxGb2xkZXIgbmFtZT0iJXMiPicsIHByai5uYW1lKQpsb2NhbCB0ciA9IHByb2plY3QuZ2V0c291cmNldHJlZShwcmopCnRyZWUudHJhdmVyc2UodHIsIHsKb25icmFuY2hlbnRlciA9IGZ1bmN0aW9uKG5vZGUsIGRlcHRoKQpfcChkZXB0aCwgJzxGb2xkZXIgbmFtZT0iJXMiPicsIG5vZGUubmFtZSkKZW5kLApvbmJyYW5jaGV4aXQgPSBmdW5jdGlvbihub2RlLCBkZXB0aCkKX3AoZGVwdGgsICc8L0ZvbGRlcj4nKQplbmQsCm9ubGVhZiA9IGZ1bmN0aW9uKG5vZGUsIGRlcHRoKQpfcChkZXB0aCwgJzxGaWxlIHBhdGg9IiVzIiAvPicsIHBhdGgudHJhbnNsYXRlKG5vZGUucmVscGF0aCkpCmVuZAp9LCBmYWxzZSwgMikKX3AoMSwnPC9Gb2xkZXI+JykKZW5kCmZ1bmN0aW9uIG0udmlzdWFsZC5maWxlQ29uZmlndXJhdGlvbihwcmosIG5vZGUsIGRlcHRoKQplbmQKZnVuY3Rpb24gbS52aXN1YWxkLmVsZW1lbnQoZGVwdGgsIG5hbWUsIHZhbHVlLCAuLi4pCmxvY2FsIGlzVGFibGUgPSB0eXBlKHZhbHVlKSA9PSAidGFibGUiCmlmIG5vdCB2YWx1ZSBvciAoaXNUYWJsZSBhbmQgI3ZhbHVlID09IDApIHRoZW4KX3AoZGVwdGgsICc8JXMgLz4nLCBuYW1lKQplbHNlCmlmIGlzVGFibGUgdGhlbgp2YWx1ZSA9IHAuZXNjKHRhYmxlLmltcGxvZGUodmFsdWUsICIiLCAiIiwgIjsiKSkKX3AoZGVwdGgsICc8JXM+JXM8LyVzPicsIG5hbWUsIHZhbHVlLCBuYW1lKQplbHNlCmlmIHNlbGVjdCgnIycsLi4uKSA9PSAwIHRoZW4KdmFsdWUgPSBwLmVzYyh2YWx1ZSkKZW5kCl94KGRlcHRoLCBzdHJpbmcuZm9ybWF0KCc8JXM+JXM8LyVzPicsIG5hbWUsIHZhbHVlLCBuYW1lKSwgLi4uKQplbmQKZW5kCmVuZAoAAAAAbG9jYWwgdGRtZCA9IHt9CmxvY2FsIHAgPSBwcmVtYWtlCmxvY2FsIHByb2plY3QgPSBwLnByb2plY3QKbG9jYWwgY29uZmlnID0gcC5jb25maWcKbG9jYWwgZCA9IHAubW9kdWxlcy5kCnRkbWQuZ2NjID0ge30KdGRtZC5nY2MuZGMgPSAiZG1kIgp0ZG1kLm9wdGxpbmsgPSB7fQp0ZG1kLm9wdGxpbmsuZGMgPSAiZG1kIgp0ZG1kLmdjYy5sZGZsYWdzID0gewphcmNoaXRlY3R1cmUgPSB7Cng4NiA9IHsgIi1tMzIiIH0sCng4Nl82NCA9IHsgIi1tNjQiIH0sCn0sCmtpbmQgPSB7ClNoYXJlZExpYiA9ICItc2hhcmVkIiwKU3RhdGljTGliID0gIi1saWIiLAp9Cn0KZnVuY3Rpb24gdGRtZC5nY2MuZ2V0bGRmbGFncyhjZmcpCmxvY2FsIGZsYWdzID0gY29uZmlnLm1hcEZsYWdzKGNmZywgdGRtZC5nY2MubGRmbGFncykKcmV0dXJuIGZsYWdzCmVuZAp0ZG1kLmdjYy5saWJyYXJ5RGlyZWN0b3JpZXMgPSB7CmFyY2hpdGVjdHVyZSA9IHsKeDg2ID0gIi1MLUwvdXNyL2xpYiIsCng4Nl82NCA9ICItTC1ML3Vzci9saWI2NCIsCn0KfQpmdW5jdGlvbiB0ZG1kLmdjYy5nZXRMaWJyYXJ5RGlyZWN0b3JpZXMoY2ZnKQpsb2NhbCBmbGFncyA9IGNvbmZpZy5tYXBGbGFncyhjZmcsIHRkbWQuZ2NjLmxpYnJhcnlEaXJlY3RvcmllcykKZm9yIF8sIGRpciBpbiBpcGFpcnMoY29uZmlnLmdldGxpbmtzKGNmZywgInN5c3RlbSIsICJkaXJlY3RvcnkiKSkgZG8KdGFibGUuaW5zZXJ0KGZsYWdzLCAnLUwtTCcgLi4gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgZGlyKSkKZW5kCnJldHVybiBmbGFncwplbmQKZnVuY3Rpb24gdGRtZC5nY2MuZ2V0bGlua3MoY2ZnLCBzeXN0ZW1vbmx5KQpsb2NhbCByZXN1bHQgPSB7fQpsb2NhbCBsaW5rcwppZiBub3Qgc3lzdGVtb25seSB0aGVuCmxpbmtzID0gY29uZmlnLmdldGxpbmtzKGNmZywgInNpYmxpbmdzIiwgIm9iamVjdCIpCmZvciBfLCBsaW5rIGluIGlwYWlycyhsaW5rcykgZG8KaWYgbm90IGxpbmsucHJvamVjdC5leHRlcm5hbCB0aGVuCmlmIGxpbmsua2luZCA9PSBwLlNUQVRJQ0xJQiB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsICItTCIgLi4gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgbGluay5saW5rdGFyZ2V0LmFic3BhdGgpKQplbHNlCnRhYmxlLmluc2VydChyZXN1bHQsICItTC1sIiAuLiBsaW5rLmxpbmt0YXJnZXQuYmFzZW5hbWUpCmVuZAplbmQKZW5kCmVuZApsaW5rcyA9IGNvbmZpZy5nZXRsaW5rcyhjZmcsICJzeXN0ZW0iLCAiZnVsbHBhdGgiKQpmb3IgXywgbGluayBpbiBpcGFpcnMobGlua3MpIGRvCmlmIHBhdGguaXNmcmFtZXdvcmsobGluaykgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCAiLWZyYW1ld29yayAiIC4uIHBhdGguZ2V0YmFzZW5hbWUobGluaykpCmVsc2VpZiBwYXRoLmlzb2JqZWN0ZmlsZShsaW5rKSB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsICItTCIgLi4gbGluaykKZWxzZQp0YWJsZS5pbnNlcnQocmVzdWx0LCAiLUwtbCIgLi4gcGF0aC5nZXRiYXNlbmFtZShsaW5rKSkKZW5kCmVuZApyZXR1cm4gcmVzdWx0CmVuZAp0ZG1kLm9wdGxpbmsubGRmbGFncyA9IHsKYXJjaGl0ZWN0dXJlID0gewp4ODYgPSB7ICItbTMyIiB9LAp4ODZfNjQgPSB7ICItbTY0IiB9LAp9LApraW5kID0gewpTaGFyZWRMaWIgPSAiLXNoYXJlZCIsClN0YXRpY0xpYiA9ICItbGliIiwKfQp9CmZ1bmN0aW9uIHRkbWQub3B0bGluay5nZXRsZGZsYWdzKGNmZykKbG9jYWwgZmxhZ3MgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCB0ZG1kLm9wdGxpbmsubGRmbGFncykKcmV0dXJuIGZsYWdzCmVuZApmdW5jdGlvbiB0ZG1kLm9wdGxpbmsuZ2V0TGlicmFyeURpcmVjdG9yaWVzKGNmZykKbG9jYWwgZmxhZ3MgPSB7fQpmb3IgXywgZGlyIGluIGlwYWlycyhjb25maWcuZ2V0bGlua3MoY2ZnLCAic3lzdGVtIiwgImRpcmVjdG9yeSIpKSBkbwp0YWJsZS5pbnNlcnQoZmxhZ3MsICctTGxpYiAiJyAuLiBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBkaXIpIC4uICciJykKZW5kCnJldHVybiBmbGFncwplbmQKZnVuY3Rpb24gdGRtZC5vcHRsaW5rLmdldGxpbmtzKGNmZykKbG9jYWwgcmVzdWx0ID0ge30KbG9jYWwgbGlua3MgPSBjb25maWcuZ2V0bGlua3MoY2ZnLCAiZGVwZW5kZW5jaWVzIiwgIm9iamVjdCIpCmZvciBfLCBsaW5rIGluIGlwYWlycyhsaW5rcykgZG8KaWYgbm90IGxpbmsucHJvamVjdC5leHRlcm5hbG5hbWUgdGhlbgpsb2NhbCBsaW5raW5mbyA9IGNvbmZpZy5nZXRsaW5raW5mbyhsaW5rKQppZiBsaW5rLmtpbmQgPT0gcC5TVEFUSUNMSUIgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBsaW5raW5mby5hYnNwYXRoKSkKZW5kCmVuZAplbmQKbGlua3MgPSBjb25maWcuZ2V0bGlua3MoY2ZnLCAic3lzdGVtIiwgImJhc2VuYW1lIikKZm9yIF8sIGxpbmsgaW4gaXBhaXJzKGxpbmtzKSBkbwppZiBwYXRoLmlzb2JqZWN0ZmlsZShsaW5rKSB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsIGxpbmspCmVsc2VpZiBwYXRoLmhhc2V4dGVuc2lvbihsaW5rLCBwLnN5c3RlbXNbY2ZnLnN5c3RlbV0uc3RhdGljbGliLmV4dGVuc2lvbikgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCBsaW5rKQplbmQKZW5kCnJldHVybiByZXN1bHQKZW5kCmlmIHN0cmluZy5tYXRjaCggb3MuZ2V0dmVyc2lvbigpLmRlc2NyaXB0aW9uLCAiV2luZG93cyIgKSB+PSBuaWwgdGhlbgpwLnRvb2xzLmRtZCA9IHRkbWQub3B0bGluawplbHNlCnAudG9vbHMuZG1kID0gdGRtZC5nY2MKZW5kCmxvY2FsIGRtZCA9IHAudG9vbHMuZG1kCmRtZC5kZmxhZ3MgPSB7CmFyY2hpdGVjdHVyZSA9IHsKeDg2ID0gIi1tMzIiLAp4ODZfNjQgPSAiLW02NCIsCn0sCmZsYWdzID0gewpDb2RlQ292ZXJhZ2U9ICItY292IiwKRGVwcmVjYXRlZD0gIi1kIiwKRG9jdW1lbnRhdGlvbj0gIi1EIiwKRmF0YWxXYXJuaW5ncz0gIi13IiwKR2VuZXJhdGVIZWFkZXI9ICItSCIsCkdlbmVyYXRlSlNPTj0gIi1YIiwKR2VuZXJhdGVNYXA9ICItbWFwIiwKTm9Cb3VuZHNDaGVjaz0gIi1ub2JvdW5kc2NoZWNrIiwKUHJvZmlsZT0gIi1wcm9maWxlIiwKUXVpZXQ9ICItcXVpZXQiLApSZXRhaW5QYXRocz0gIi1vcCIsClN5bWJvbHNMaWtlQz0gIi1nYyIsClVuaXRUZXN0PSAiLXVuaXR0ZXN0IiwKVmVyYm9zZT0gIi12IiwKfSwKZmxvYXRpbmdwb2ludCA9IHsKTm9uZSA9ICItbm9mbG9hdCIsCn0sCm9wdGltaXplID0gewpPbiA9ICItTyAtaW5saW5lIiwKRnVsbCA9ICItTyAtaW5saW5lIiwKU2l6ZSA9ICItTyAtaW5saW5lIiwKU3BlZWQgPSAiLU8gLWlubGluZSIsCn0sCnBpYyA9IHsKT24gPSAiLWZQSUMiLAp9LAp3YXJuaW5ncyA9IHsKRGVmYXVsdCA9ICItd2kiLApFeHRyYSA9ICItd2kiLAp9LApzeW1ib2xzID0gewpPbiA9ICItZyIsCn0KfQpmdW5jdGlvbiBkbWQuZ2V0ZGZsYWdzKGNmZykKbG9jYWwgZmxhZ3MgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBkbWQuZGZsYWdzKQppZiBjb25maWcuaXNEZWJ1Z0J1aWxkKGNmZykgdGhlbgp0YWJsZS5pbnNlcnQoZmxhZ3MsICItZGVidWciKQplbHNlCnRhYmxlLmluc2VydChmbGFncywgIi1yZWxlYXNlIikKZW5kCmlmIGNmZy5mbGFncy5Eb2N1bWVudGF0aW9uIHRoZW4KaWYgY2ZnLmRvY25hbWUgdGhlbgp0YWJsZS5pbnNlcnQoZmxhZ3MsICItRGYiIC4uIHAucXVvdGVkKGNmZy5kb2NuYW1lKSkKZW5kCmlmIGNmZy5kb2NkaXIgdGhlbgp0YWJsZS5pbnNlcnQoZmxhZ3MsICItRGQiIC4uIHAucXVvdGVkKGNmZy5kb2NkaXIpKQplbmQKZW5kCmlmIGNmZy5mbGFncy5HZW5lcmF0ZUhlYWRlciB0aGVuCmlmIGNmZy5oZWFkZXJuYW1lIHRoZW4KdGFibGUuaW5zZXJ0KGZsYWdzLCAiLUhmIiAuLiBwLnF1b3RlZChjZmcuaGVhZGVybmFtZSkpCmVuZAppZiBjZmcuaGVhZGVyZGlyIHRoZW4KdGFibGUuaW5zZXJ0KGZsYWdzLCAiLUhkIiAuLiBwLnF1b3RlZChjZmcuaGVhZGVyZGlyKSkKZW5kCmVuZApyZXR1cm4gZmxhZ3MKZW5kCmZ1bmN0aW9uIGRtZC5nZXR2ZXJzaW9ucyh2ZXJzaW9ucywgbGV2ZWwpCmxvY2FsIHJlc3VsdCA9IHt9CmZvciBfLCB2ZXJzaW9uIGluIGlwYWlycyh2ZXJzaW9ucykgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy12ZXJzaW9uPScgLi4gdmVyc2lvbikKZW5kCmlmIGxldmVsIHRoZW4KdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy12ZXJzaW9uPScgLi4gbGV2ZWwpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBkbWQuZ2V0ZGVidWcoY29uc3RhbnRzLCBsZXZlbCkKbG9jYWwgcmVzdWx0ID0ge30KZm9yIF8sIGNvbnN0YW50IGluIGlwYWlycyhjb25zdGFudHMpIGRvCnRhYmxlLmluc2VydChyZXN1bHQsICctZGVidWc9JyAuLiBjb25zdGFudCkKZW5kCmlmIGxldmVsIHRoZW4KdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy1kZWJ1Zz0nIC4uIGxldmVsKQplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gZG1kLmdldGltcG9ydGRpcnMoY2ZnLCBkaXJzKQpsb2NhbCByZXN1bHQgPSB7fQpmb3IgXywgZGlyIGluIGlwYWlycyhkaXJzKSBkbwpkaXIgPSBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBkaXIpCnRhYmxlLmluc2VydChyZXN1bHQsICctSScgLi4gcC5xdW90ZWQoZGlyKSkKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIGRtZC5nZXR0YXJnZXQobmFtZSkKcmV0dXJuICItb2YiIC4uIG5hbWUKZW5kCmRtZC5tYWtlc2V0dGluZ3MgPSB7Cn0KZnVuY3Rpb24gZG1kLmdldG1ha2VzZXR0aW5ncyhjZmcpCmxvY2FsIHNldHRpbmdzID0gY29uZmlnLm1hcEZsYWdzKGNmZywgZG1kLm1ha2VzZXR0aW5ncykKcmV0dXJuIHRhYmxlLmNvbmNhdChzZXR0aW5ncykKZW5kCmRtZC50b29scyA9IHsKfQpmdW5jdGlvbiBkbWQuZ2V0dG9vbG5hbWUoY2ZnLCB0b29sKQpsb2NhbCBuYW1lcyA9IGRtZC50b29sc1tjZmcuYXJjaGl0ZWN0dXJlXSBvciBkbWQudG9vbHNbY2ZnLnN5c3RlbV0gb3Ige30KbG9jYWwgbmFtZSA9IG5hbWVzW3Rvb2xdCnJldHVybiBuYW1lIG9yIGRtZFt0b29sXQplbmQKbG9jYWwgcCA9IHByZW1ha2UKcC50b29scy5nZGMgPSB7IH0KbG9jYWwgZ2RjID0gcC50b29scy5nZGMKbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApsb2NhbCBjb25maWcgPSBwLmNvbmZpZwpsb2NhbCBkID0gcC5tb2R1bGVzLmQKZ2RjLmRjID0gImdkYyIKZ2RjLmRmbGFncyA9IHsKYXJjaGl0ZWN0dXJlID0gewp4ODYgPSAiLW0zMiIsCng4Nl82NCA9ICItbTY0IiwKfSwKZmxhZ3MgPSB7CkRlcHJlY2F0ZWQ9ICItZmRlcHJlY2F0ZWQiLApEb2N1bWVudGF0aW9uPSAiLWZkb2MiLApGYXRhbFdhcm5pbmdzPSAiLVdlcnJvciIsCkdlbmVyYXRlSGVhZGVyPSAiLWZpbnRmYyIsCkdlbmVyYXRlSlNPTj0gIi1mWCIsCk5vQm91bmRzQ2hlY2s9ICItZm5vLWJvdW5kcy1jaGVjayIsClJldGFpblBhdGhzPSAiLW9wIiwKU3ltYm9sc0xpa2VDPSAiLWZkZWJ1Zy1jIiwKVW5pdFRlc3Q9ICItZnVuaXR0ZXN0IiwKVmVyYm9zZT0gIi1mZC12ZXJib3NlIiwKfSwKZmxvYXRpbmdwb2ludCA9IHsKRmFzdCA9ICItZmZhc3QtbWF0aCIsClN0cmljdCA9ICItZmZsb2F0LXN0b3JlIiwKfSwKb3B0aW1pemUgPSB7Ck9mZiA9ICItTzAiLApPbiA9ICItTzIgLWZpbmxpbmUtZnVuY3Rpb25zIiwKRGVidWcgPSAiLU9nIiwKRnVsbCA9ICItTzMgLWZpbmxpbmUtZnVuY3Rpb25zIiwKU2l6ZSA9ICItT3MgLWZpbmxpbmUtZnVuY3Rpb25zIiwKU3BlZWQgPSAiLU8zIC1maW5saW5lLWZ1bmN0aW9ucyIsCn0sCnBpYyA9IHsKT24gPSAiLWZQSUMiLAp9LAp2ZWN0b3JleHRlbnNpb25zID0gewpBVlggPSAiLW1hdngiLApTU0UgPSAiLW1zc2UiLApTU0UyID0gIi1tc3NlMiIsCn0sCndhcm5pbmdzID0gewpFeHRyYSA9ICItV2FsbCAtV2V4dHJhIiwKfSwKc3ltYm9scyA9IHsKT24gPSAiLWciLAp9Cn0KZnVuY3Rpb24gZ2RjLmdldGRmbGFncyhjZmcpCmxvY2FsIGZsYWdzID0gY29uZmlnLm1hcEZsYWdzKGNmZywgZ2RjLmRmbGFncykKaWYgY29uZmlnLmlzRGVidWdCdWlsZChjZmcpIHRoZW4KdGFibGUuaW5zZXJ0KGZsYWdzLCAiLWZkZWJ1ZyIpCmVsc2UKdGFibGUuaW5zZXJ0KGZsYWdzLCAiLWZyZWxlYXNlIikKZW5kCmlmIGNmZy5mbGFncy5Eb2N1bWVudGF0aW9uIHRoZW4KaWYgY2ZnLmRvY25hbWUgdGhlbgp0YWJsZS5pbnNlcnQoZmxhZ3MsICItZmRvYy1maWxlPSIgLi4gcC5xdW90ZWQoY2ZnLmRvY25hbWUpKQplbmQKaWYgY2ZnLmRvY2RpciB0aGVuCnRhYmxlLmluc2VydChmbGFncywgIi1mZG9jLWRpcj0iIC4uIHAucXVvdGVkKGNmZy5kb2NkaXIpKQplbmQKZW5kCmlmIGNmZy5mbGFncy5HZW5lcmF0ZUhlYWRlciB0aGVuCmlmIGNmZy5oZWFkZXJuYW1lIHRoZW4KdGFibGUuaW5zZXJ0KGZsYWdzLCAiLWZpbnRmYy1maWxlPSIgLi4gcC5xdW90ZWQoY2ZnLmhlYWRlcm5hbWUpKQplbmQKaWYgY2ZnLmhlYWRlcmRpciB0aGVuCnRhYmxlLmluc2VydChmbGFncywgIi1maW50ZmMtZGlyPSIgLi4gcC5xdW90ZWQoY2ZnLmhlYWRlcmRpcikpCmVuZAplbmQKcmV0dXJuIGZsYWdzCmVuZApmdW5jdGlvbiBnZGMuZ2V0dmVyc2lvbnModmVyc2lvbnMsIGxldmVsKQpsb2NhbCByZXN1bHQgPSB7fQpmb3IgXywgdmVyc2lvbiBpbiBpcGFpcnModmVyc2lvbnMpIGRvCnRhYmxlLmluc2VydChyZXN1bHQsICctZnZlcnNpb249JyAuLiB2ZXJzaW9uKQplbmQKaWYgbGV2ZWwgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCAnLWZ2ZXJzaW9uPScgLi4gbGV2ZWwpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBnZGMuZ2V0ZGVidWcoY29uc3RhbnRzLCBsZXZlbCkKbG9jYWwgcmVzdWx0ID0ge30KZm9yIF8sIGNvbnN0YW50IGluIGlwYWlycyhjb25zdGFudHMpIGRvCnRhYmxlLmluc2VydChyZXN1bHQsICctZmRlYnVnPScgLi4gY29uc3RhbnQpCmVuZAppZiBsZXZlbCB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsICctZmRlYnVnPScgLi4gbGV2ZWwpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBnZGMuZ2V0aW1wb3J0ZGlycyhjZmcsIGRpcnMpCmxvY2FsIHJlc3VsdCA9IHt9CmZvciBfLCBkaXIgaW4gaXBhaXJzKGRpcnMpIGRvCmRpciA9IHByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIGRpcikKdGFibGUuaW5zZXJ0KHJlc3VsdCwgJy1JJyAuLiBwLnF1b3RlZChkaXIpKQplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gZ2RjLmdldHRhcmdldChuYW1lKQpyZXR1cm4gIi1vICIgLi4gbmFtZQplbmQKZ2RjLmxkZmxhZ3MgPSB7CmFyY2hpdGVjdHVyZSA9IHsKeDg2ID0geyAiLW0zMiIgfSwKeDg2XzY0ID0geyAiLW02NCIgfSwKfSwKa2luZCA9IHsKU2hhcmVkTGliID0gZnVuY3Rpb24oY2ZnKQpsb2NhbCByID0geyBpaWYoY2ZnLnN5c3RlbSA9PSBwLk1BQ09TWCwgIi1keW5hbWljbGliIiwgIi1zaGFyZWQiKSB9CmlmIGNmZy5zeXN0ZW0gPT0gIndpbmRvd3MiIGFuZCBub3QgY2ZnLmZsYWdzLk5vSW1wb3J0TGliIHRoZW4KdGFibGUuaW5zZXJ0KHIsICctV2wsLS1vdXQtaW1wbGliPSInIC4uIGNmZy5saW5rdGFyZ2V0LnJlbHBhdGggLi4gJyInKQplbmQKcmV0dXJuIHIKZW5kLApXaW5kb3dlZEFwcCA9IGZ1bmN0aW9uKGNmZykKaWYgY2ZnLnN5c3RlbSA9PSBwLldJTkRPV1MgdGhlbiByZXR1cm4gIi1td2luZG93cyIgZW5kCmVuZCwKfSwKfQpmdW5jdGlvbiBnZGMuZ2V0bGRmbGFncyhjZmcpCmxvY2FsIGZsYWdzID0gY29uZmlnLm1hcEZsYWdzKGNmZywgZ2RjLmxkZmxhZ3MpCnJldHVybiBmbGFncwplbmQKZ2RjLmxpYnJhcnlEaXJlY3RvcmllcyA9IHsKYXJjaGl0ZWN0dXJlID0gewp4ODYgPSAiLUwvdXNyL2xpYiIsCng4Nl82NCA9ICItTC91c3IvbGliNjQiLAp9Cn0KZnVuY3Rpb24gZ2RjLmdldExpYnJhcnlEaXJlY3RvcmllcyhjZmcpCmxvY2FsIGZsYWdzID0gY29uZmlnLm1hcEZsYWdzKGNmZywgZ2RjLmxpYnJhcnlEaXJlY3RvcmllcykKZm9yIF8sIGRpciBpbiBpcGFpcnMoY29uZmlnLmdldGxpbmtzKGNmZywgInN5c3RlbSIsICJkaXJlY3RvcnkiKSkgZG8KdGFibGUuaW5zZXJ0KGZsYWdzLCAnLVdsLC1MJyAuLiBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBkaXIpKQplbmQKcmV0dXJuIGZsYWdzCmVuZApmdW5jdGlvbiBnZGMuZ2V0bGlua3MoY2ZnLCBzeXN0ZW1vbmx5KQpsb2NhbCByZXN1bHQgPSB7fQpsb2NhbCBsaW5rcwppZiBub3Qgc3lzdGVtb25seSB0aGVuCmxpbmtzID0gY29uZmlnLmdldGxpbmtzKGNmZywgInNpYmxpbmdzIiwgIm9iamVjdCIpCmZvciBfLCBsaW5rIGluIGlwYWlycyhsaW5rcykgZG8KaWYgbm90IGxpbmsucHJvamVjdC5leHRlcm5hbCB0aGVuCmlmIGxpbmsua2luZCA9PSBwLlNUQVRJQ0xJQiB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsICItV2wsIiAuLiBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBsaW5rLmxpbmt0YXJnZXQuYWJzcGF0aCkpCmVsc2UKdGFibGUuaW5zZXJ0KHJlc3VsdCwgIi1XbCwtbCIgLi4gbGluay5saW5rdGFyZ2V0LmJhc2VuYW1lKQplbmQKZW5kCmVuZAplbmQKbGlua3MgPSBjb25maWcuZ2V0bGlua3MoY2ZnLCAic3lzdGVtIiwgImZ1bGxwYXRoIikKZm9yIF8sIGxpbmsgaW4gaXBhaXJzKGxpbmtzKSBkbwppZiBwYXRoLmlzZnJhbWV3b3JrKGxpbmspIHRoZW4KdGFibGUuaW5zZXJ0KHJlc3VsdCwgIi1mcmFtZXdvcmsgIiAuLiBwYXRoLmdldGJhc2VuYW1lKGxpbmspKQplbHNlaWYgcGF0aC5pc29iamVjdGZpbGUobGluaykgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCAiLVdsLCIgLi4gbGluaykKZWxzZQp0YWJsZS5pbnNlcnQocmVzdWx0LCAiLVdsLC1sIiAuLiBwYXRoLmdldGJhc2VuYW1lKGxpbmspKQplbmQKZW5kCnJldHVybiByZXN1bHQKZW5kCmdkYy5tYWtlc2V0dGluZ3MgPSB7Cn0KZnVuY3Rpb24gZ2RjLmdldG1ha2VzZXR0aW5ncyhjZmcpCmxvY2FsIHNldHRpbmdzID0gY29uZmlnLm1hcEZsYWdzKGNmZywgZ2RjLm1ha2VzZXR0aW5ncykKcmV0dXJuIHRhYmxlLmNvbmNhdChzZXR0aW5ncykKZW5kCmdkYy50b29scyA9IHsKcHMzID0gewpkYyA9ICJwcHUtbHYyLWdkYyIsCmFyID0gInBwdS1sdjItYXIiLAp9LAp9CmZ1bmN0aW9uIGdkYy5nZXR0b29sbmFtZShjZmcsIHRvb2wpCmxvY2FsIG5hbWVzID0gZ2RjLnRvb2xzW2NmZy5hcmNoaXRlY3R1cmVdIG9yIGdkYy50b29sc1tjZmcuc3lzdGVtXSBvciB7fQpsb2NhbCBuYW1lID0gbmFtZXNbdG9vbF0KcmV0dXJuIG5hbWUgb3IgZ2RjW3Rvb2xdCmVuZAoAAABsb2NhbCBwID0gcHJlbWFrZQpwLnRvb2xzLmxkYyA9IHsgfQpsb2NhbCBsZGMgPSBwLnRvb2xzLmxkYwpsb2NhbCBwcm9qZWN0ID0gcC5wcm9qZWN0CmxvY2FsIGNvbmZpZyA9IHAuY29uZmlnCmxvY2FsIGQgPSBwLm1vZHVsZXMuZApsZGMubmFtZXN0eWxlID0gInBvc2l4IgpsZGMuZGZsYWdzID0gewphcmNoaXRlY3R1cmUgPSB7Cng4NiA9ICItbTMyIiwKeDg2XzY0ID0gIi1tNjQiLAp9LApmbGFncyA9IHsKRGVwcmVjYXRlZD0gIi1kIiwKRG9jdW1lbnRhdGlvbj0gIi1EIiwKRmF0YWxXYXJuaW5ncz0gIi13IiwgLS0gVXNlIExMVk0gZmxhZz8gOiAiLWZhdGFsLWFzc2VtYmxlci13YXJuaW5ncyIsCkdlbmVyYXRlSGVhZGVyPSAiLUgiLApHZW5lcmF0ZUpTT049ICItWCIsCk5vQm91bmRzQ2hlY2s9ICItZGlzYWJsZS1ib3VuZHNjaGVjayIsClJldGFpblBhdGhzPSAiLW9wIiwKU3ltYm9sc0xpa2VDPSAiLWdjIiwKVW5pdFRlc3Q9ICItdW5pdHRlc3QiLApWZXJib3NlPSAiLXYiLAp9LApmbG9hdGluZ3BvaW50ID0gewpGYXN0ID0gIi1mcC1jb250cmFjdD1mYXN0IC1lbmFibGUtdW5zYWZlLWZwLW1hdGgiLAp9LApvcHRpbWl6ZSA9IHsKT2ZmID0gIi1PMCIsCk9uID0gIi1PMiIsCkRlYnVnID0gIi1PMCIsCkZ1bGwgPSAiLU8zIiwKU2l6ZSA9ICItT3oiLApTcGVlZCA9ICItTzMiLAp9LApwaWMgPSB7Ck9uID0gIi1yZWxvY2F0aW9uLW1vZGVsPXBpYyIsCn0sCnZlY3RvcmV4dGVuc2lvbnMgPSB7CkFWWCA9ICItbWF0dHI9K2F2eCIsClNTRSA9ICItbWF0dHI9K3NzZSIsClNTRTIgPSAiLW1hdHRyPStzc2UyIiwKfSwKd2FybmluZ3MgPSB7CkRlZmF1bHQgPSAiLXdpIiwKRXh0cmEgPSAiLXdpIiwtLSBUT0RPOiBpcyB0aGVyZSBhIHdheSB0byBnZXQgZXh0cmEgd2FybmluZ3M/Cn0sCnN5bWJvbHMgPSB7Ck9uID0gIi1nIiwKfQp9CmZ1bmN0aW9uIGxkYy5nZXRkZmxhZ3MoY2ZnKQpsb2NhbCBmbGFncyA9IGNvbmZpZy5tYXBGbGFncyhjZmcsIGxkYy5kZmxhZ3MpCmlmIGNvbmZpZy5pc0RlYnVnQnVpbGQoY2ZnKSB0aGVuCnRhYmxlLmluc2VydChmbGFncywgIi1kLWRlYnVnIikKZWxzZQp0YWJsZS5pbnNlcnQoZmxhZ3MsICItcmVsZWFzZSIpCmVuZAppZiBjZmcuZmxhZ3MuRG9jdW1lbnRhdGlvbiB0aGVuCmlmIGNmZy5kb2NuYW1lIHRoZW4KdGFibGUuaW5zZXJ0KGZsYWdzLCAiLURmPSIgLi4gcC5xdW90ZWQoY2ZnLmRvY25hbWUpKQplbmQKaWYgY2ZnLmRvY2RpciB0aGVuCnRhYmxlLmluc2VydChmbGFncywgIi1EZD0iIC4uIHAucXVvdGVkKGNmZy5kb2NkaXIpKQplbmQKZW5kCmlmIGNmZy5mbGFncy5HZW5lcmF0ZUhlYWRlciB0aGVuCmlmIGNmZy5oZWFkZXJuYW1lIHRoZW4KdGFibGUuaW5zZXJ0KGZsYWdzLCAiLUhmPSIgLi4gcC5xdW90ZWQoY2ZnLmhlYWRlcm5hbWUpKQplbmQKaWYgY2ZnLmhlYWRlcmRpciB0aGVuCnRhYmxlLmluc2VydChmbGFncywgIi1IZD0iIC4uIHAucXVvdGVkKGNmZy5oZWFkZXJkaXIpKQplbmQKZW5kCnJldHVybiBmbGFncwplbmQKZnVuY3Rpb24gbGRjLmdldHZlcnNpb25zKHZlcnNpb25zLCBsZXZlbCkKbG9jYWwgcmVzdWx0ID0ge30KZm9yIF8sIHZlcnNpb24gaW4gaXBhaXJzKHZlcnNpb25zKSBkbwp0YWJsZS5pbnNlcnQocmVzdWx0LCAnLWQtdmVyc2lvbj0nIC4uIHZlcnNpb24pCmVuZAppZiBsZXZlbCB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsICctZC12ZXJzaW9uPScgLi4gbGV2ZWwpCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBsZGMuZ2V0ZGVidWcoY29uc3RhbnRzLCBsZXZlbCkKbG9jYWwgcmVzdWx0ID0ge30KZm9yIF8sIGNvbnN0YW50IGluIGlwYWlycyhjb25zdGFudHMpIGRvCnRhYmxlLmluc2VydChyZXN1bHQsICctZC1kZWJ1Zz0nIC4uIGNvbnN0YW50KQplbmQKaWYgbGV2ZWwgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCAnLWQtZGVidWc9JyAuLiBsZXZlbCkKZW5kCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIGxkYy5nZXRpbXBvcnRkaXJzKGNmZywgZGlycykKbG9jYWwgcmVzdWx0ID0ge30KZm9yIF8sIGRpciBpbiBpcGFpcnMoZGlycykgZG8KZGlyID0gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgZGlyKQp0YWJsZS5pbnNlcnQocmVzdWx0LCAnLUk9JyAuLiBwLnF1b3RlZChkaXIpKQplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gbGRjLmdldHRhcmdldChuYW1lKQpyZXR1cm4gIi1vZj0iIC4uIG5hbWUKZW5kCmxkYy5sZGZsYWdzID0gewphcmNoaXRlY3R1cmUgPSB7Cng4NiA9IHsgIi1tMzIiIH0sCng4Nl82NCA9IHsgIi1tNjQiIH0sCn0sCmtpbmQgPSB7ClNoYXJlZExpYiA9ICItc2hhcmVkIiwKU3RhdGljTGliID0gIi1saWIiLAp9LAp9CmZ1bmN0aW9uIGxkYy5nZXRsZGZsYWdzKGNmZykKbG9jYWwgZmxhZ3MgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBsZGMubGRmbGFncykKcmV0dXJuIGZsYWdzCmVuZApsZGMubGlicmFyeURpcmVjdG9yaWVzID0gewphcmNoaXRlY3R1cmUgPSB7Cng4NiA9ICItTD0tTC91c3IvbGliIiwKeDg2XzY0ID0gIi1MPS1ML3Vzci9saWI2NCIsCn0KfQpmdW5jdGlvbiBsZGMuZ2V0TGlicmFyeURpcmVjdG9yaWVzKGNmZykKbG9jYWwgZmxhZ3MgPSBjb25maWcubWFwRmxhZ3MoY2ZnLCBsZGMubGlicmFyeURpcmVjdG9yaWVzKQpmb3IgXywgZGlyIGluIGlwYWlycyhjb25maWcuZ2V0bGlua3MoY2ZnLCAic3lzdGVtIiwgImRpcmVjdG9yeSIpKSBkbwp0YWJsZS5pbnNlcnQoZmxhZ3MsICctTD0tTCcgLi4gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgZGlyKSkKZW5kCnJldHVybiBmbGFncwplbmQKZnVuY3Rpb24gbGRjLmdldGxpbmtzKGNmZywgc3lzdGVtb25seSkKbG9jYWwgcmVzdWx0ID0ge30KbG9jYWwgbGlua3MKaWYgbm90IHN5c3RlbW9ubHkgdGhlbgpsaW5rcyA9IGNvbmZpZy5nZXRsaW5rcyhjZmcsICJzaWJsaW5ncyIsICJvYmplY3QiKQpmb3IgXywgbGluayBpbiBpcGFpcnMobGlua3MpIGRvCmlmIG5vdCBsaW5rLnByb2plY3QuZXh0ZXJuYWwgdGhlbgppZiBsaW5rLmtpbmQgPT0gcC5TVEFUSUNMSUIgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCAiLUw9IiAuLiBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBsaW5rLmxpbmt0YXJnZXQuYWJzcGF0aCkpCmVsc2UKdGFibGUuaW5zZXJ0KHJlc3VsdCwgIi1MPS1sIiAuLiBsaW5rLmxpbmt0YXJnZXQuYmFzZW5hbWUpCmVuZAplbmQKZW5kCmVuZApsaW5rcyA9IGNvbmZpZy5nZXRsaW5rcyhjZmcsICJzeXN0ZW0iLCAiZnVsbHBhdGgiKQpmb3IgXywgbGluayBpbiBpcGFpcnMobGlua3MpIGRvCmlmIHBhdGguaXNmcmFtZXdvcmsobGluaykgdGhlbgp0YWJsZS5pbnNlcnQocmVzdWx0LCAiLWZyYW1ld29yayAiIC4uIHBhdGguZ2V0YmFzZW5hbWUobGluaykpCmVsc2VpZiBwYXRoLmlzb2JqZWN0ZmlsZShsaW5rKSB0aGVuCnRhYmxlLmluc2VydChyZXN1bHQsICItTD0iIC4uIGxpbmspCmVsc2UKdGFibGUuaW5zZXJ0KHJlc3VsdCwgIi1MPS1sIiAuLiBwYXRoLmdldGJhc2VuYW1lKGxpbmspKQplbmQKZW5kCnJldHVybiByZXN1bHQKZW5kCmxkYy5tYWtlc2V0dGluZ3MgPSB7Cn0KZnVuY3Rpb24gbGRjLmdldG1ha2VzZXR0aW5ncyhjZmcpCmxvY2FsIHNldHRpbmdzID0gY29uZmlnLm1hcEZsYWdzKGNmZywgbGRjLm1ha2VzZXR0aW5ncykKcmV0dXJuIHRhYmxlLmNvbmNhdChzZXR0aW5ncykKZW5kCmxkYy50b29scyA9IHsKZGMgPSAibGRjMiIsCmFyID0gImFyIiwKfQpmdW5jdGlvbiBsZGMuZ2V0dG9vbG5hbWUoY2ZnLCB0b29sKQpyZXR1cm4gbGRjLnRvb2xzW3Rvb2xdCmVuZAoAAAAAAAAAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApuZXdhY3Rpb24gewp0cmlnZ2VyICAgICAgICAgPSAiZ21ha2UiLApzaG9ydG5hbWUgICAgICAgPSAiR05VIE1ha2UiLApkZXNjcmlwdGlvbiAgICAgPSAiR2VuZXJhdGUgR05VIG1ha2VmaWxlcyBmb3IgUE9TSVgsIE1pbkdXLCBhbmQgQ3lnd2luIiwKdG9vbHNldCAgICAgICAgID0gImdjYyIsCnZhbGlkX2tpbmRzICAgICA9IHsgIkNvbnNvbGVBcHAiLCAiV2luZG93ZWRBcHAiLCAiU3RhdGljTGliIiwgIlNoYXJlZExpYiIsICJVdGlsaXR5IiwgIk1ha2VmaWxlIiB9LAp2YWxpZF9sYW5ndWFnZXMgPSB7ICJDIiwgIkMrKyIsICJDIyIgfSwKdmFsaWRfdG9vbHMgICAgID0gewpjYyAgICAgPSB7ICJjbGFuZyIsICJnY2MiIH0sCmRvdG5ldCA9IHsgIm1vbm8iLCAibXNuZXQiLCAicG5ldCIgfQp9LApvbldvcmtzcGFjZSA9IGZ1bmN0aW9uKHdrcykKcC5lc2NhcGVyKHAubWFrZS5lc2MpCnAuZ2VuZXJhdGUod2tzLCBwLm1ha2UuZ2V0bWFrZWZpbGVuYW1lKHdrcywgZmFsc2UpLCBwLm1ha2UuZ2VuZXJhdGVfd29ya3NwYWNlKQplbmQsCm9uUHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcC5lc2NhcGVyKHAubWFrZS5lc2MpCmxvY2FsIG1ha2VmaWxlID0gcC5tYWtlLmdldG1ha2VmaWxlbmFtZShwcmosIHRydWUpCmlmIHByai5raW5kID09IHAuVVRJTElUWSB0aGVuCnAuZ2VuZXJhdGUocHJqLCBtYWtlZmlsZSwgcC5tYWtlLnV0aWxpdHkuZ2VuZXJhdGUpCmVsc2VpZiBwcmoua2luZCA9PSBwLk1BS0VGSUxFIHRoZW4KcC5nZW5lcmF0ZShwcmosIG1ha2VmaWxlLCBwLm1ha2UubWFrZWZpbGUuZ2VuZXJhdGUpCmVsc2UKaWYgcHJvamVjdC5pc2RvdG5ldChwcmopIHRoZW4KcC5nZW5lcmF0ZShwcmosIG1ha2VmaWxlLCBwLm1ha2UuY3MuZ2VuZXJhdGUpCmVsc2VpZiBwcm9qZWN0LmlzYyhwcmopIG9yIHByb2plY3QuaXNjcHAocHJqKSB0aGVuCnAuZ2VuZXJhdGUocHJqLCBtYWtlZmlsZSwgcC5tYWtlLmNwcC5nZW5lcmF0ZSkKZW5kCmVuZAplbmQsCm9uQ2xlYW5Xb3Jrc3BhY2UgPSBmdW5jdGlvbih3a3MpCnAuY2xlYW4uZmlsZSh3a3MsIHAubWFrZS5nZXRtYWtlZmlsZW5hbWUod2tzLCBmYWxzZSkpCmVuZCwKb25DbGVhblByb2plY3QgPSBmdW5jdGlvbihwcmopCnAuY2xlYW4uZmlsZShwcmosIHAubWFrZS5nZXRtYWtlZmlsZW5hbWUocHJqLCB0cnVlKSkKZW5kCn0KcmV0dXJuIGZ1bmN0aW9uKGNmZykKcmV0dXJuIChfQUNUSU9OID09ICJnbWFrZSIpCmVuZAoAAAAAbG9jYWwgcCA9IHByZW1ha2UKcC5tb2R1bGVzLmdtYWtlID0ge30KcC5tb2R1bGVzLmdtYWtlLl9WRVJTSU9OID0gcC5fVkVSU0lPTgpwLm1ha2UgPSBwLm1vZHVsZXMuZ21ha2UKbG9jYWwgbWFrZSA9IHAubWFrZQpsb2NhbCBwcm9qZWN0ID0gcC5wcm9qZWN0CmZ1bmN0aW9uIG1ha2UuZGVmYXVsdGNvbmZpZyh0YXJnZXQpCmxvY2FsIGVhY2hjb25maWcgPSBpaWYodGFyZ2V0LnByb2plY3QsIHByb2plY3QuZWFjaGNvbmZpZywgcC53b3Jrc3BhY2UuZWFjaGNvbmZpZykKbG9jYWwgaXRlciA9IGVhY2hjb25maWcodGFyZ2V0KQpsb2NhbCBjZmcgPSBpdGVyKCkKaWYgY2ZnIHRoZW4KX3AoJ2lmbmRlZiBjb25maWcnKQpfeCgnICBjb25maWc9JXMnLCBjZmcuc2hvcnRuYW1lKQpfcCgnZW5kaWYnKQpfcCgnJykKZW5kCmVuZApmdW5jdGlvbiBtYWtlLmVzYyh2YWx1ZSkKcmVzdWx0ID0gdmFsdWU6Z3N1YigiXFwiLCAiXFxcXCIpCnJlc3VsdCA9IHJlc3VsdDpnc3ViKCJcIiIsICJcXFwiIikKcmVzdWx0ID0gcmVzdWx0OmdzdWIoIiAiLCAiXFwgIikKcmVzdWx0ID0gcmVzdWx0OmdzdWIoIiUoIiwgIlxcKCIpCnJlc3VsdCA9IHJlc3VsdDpnc3ViKCIlKSIsICJcXCkiKQpyZXN1bHQgPSByZXN1bHQ6Z3N1YigiJFxcJSgoLi0pXFwlKSIsICIkKCUxKSIpCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIG1ha2UuZ2V0bWFrZWZpbGVuYW1lKHRoaXMsIHNlYXJjaHByanMpCmxvY2FsIGNvdW50ID0gMApmb3Igd2tzIGluIHAuZ2xvYmFsLmVhY2hXb3Jrc3BhY2UoKSBkbwppZiB3a3MubG9jYXRpb24gPT0gdGhpcy5sb2NhdGlvbiB0aGVuCmNvdW50ID0gY291bnQgKyAxCmVuZAppZiBzZWFyY2hwcmpzIHRoZW4KZm9yIF8sIHByaiBpbiBpcGFpcnMod2tzLnByb2plY3RzKSBkbwppZiBwcmoubG9jYXRpb24gPT0gdGhpcy5sb2NhdGlvbiB0aGVuCmNvdW50ID0gY291bnQgKyAxCmVuZAplbmQKZW5kCmVuZAppZiBjb3VudCA9PSAxIHRoZW4KcmV0dXJuICJNYWtlZmlsZSIKZWxzZQpyZXR1cm4gIi5tYWtlIgplbmQKZW5kCmZ1bmN0aW9uIG1ha2UuaGVhZGVyKHRhcmdldCkKbG9jYWwga2luZCA9IGlpZih0YXJnZXQucHJvamVjdCwgInByb2plY3QiLCAid29ya3NwYWNlIikKX3AoJyMgJXMgJXMgbWFrZWZpbGUgYXV0b2dlbmVyYXRlZCBieSBQcmVtYWtlJywgcC5hY3Rpb24uY3VycmVudCgpLnNob3J0bmFtZSwga2luZCkKX3AoJycpCmlmIGtpbmQgPT0gIndvcmtzcGFjZSIgdGhlbgpsb2NhbCBoYXNwY2ggPSBmYWxzZQpmb3IgXywgcHJqIGluIGlwYWlycyh0YXJnZXQucHJvamVjdHMpIGRvCmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KaWYgY2ZnLnBjaGhlYWRlciB0aGVuCmhhc3BjaCA9IHRydWUKZW5kCmVuZAplbmQKaWYgaGFzcGNoIHRoZW4KX3AoJy5OT1RQQVJBTExFTDonKQpfcCgnJykKZW5kCmVuZAptYWtlLmRlZmF1bHRjb25maWcodGFyZ2V0KQpfcCgnaWZuZGVmIHZlcmJvc2UnKQpfcCgnICBTSUxFTlQgPSBAJykKX3AoJ2VuZGlmJykKX3AoJycpCmVuZApmdW5jdGlvbiBtYWtlLm1rZGlyKGRpcm5hbWUpCl9wKCdpZmVxIChwb3NpeCwkKFNIRUxMVFlQRSkpJykKX3AoJ1x0JChTSUxFTlQpIG1rZGlyIC1wICVzJywgZGlybmFtZSkKX3AoJ2Vsc2UnKQpfcCgnXHQkKFNJTEVOVCkgbWtkaXIgJChzdWJzdCAvLFxcXFwsJXMpJywgZGlybmFtZSkKX3AoJ2VuZGlmJykKZW5kCmZ1bmN0aW9uIG1ha2UubWtkaXJSdWxlcyhkaXJuYW1lKQpfcCgnJXM6JywgZGlybmFtZSkKX3AoJ1x0QGVjaG8gQ3JlYXRpbmcgJXMnLCBkaXJuYW1lKQptYWtlLm1rZGlyKGRpcm5hbWUpCl9wKCcnKQplbmQKZnVuY3Rpb24gbWFrZS5saXN0KHZhbHVlLCBxdW90ZWQpCnF1b3RlZCA9IGZhbHNlCmlmICN2YWx1ZSA+IDAgdGhlbgppZiBxdW90ZWQgdGhlbgpsb2NhbCByZXN1bHQgPSAiIgpmb3IgXywgdiBpbiBpcGFpcnMgKHZhbHVlKSBkbwppZiAjcmVzdWx0IHRoZW4KcmVzdWx0ID0gcmVzdWx0IC4uICIgIgplbmQKcmVzdWx0ID0gcmVzdWx0IC4uIHAucXVvdGVkKHYpCmVuZApyZXR1cm4gcmVzdWx0CmVsc2UKcmV0dXJuICIgIiAuLiB0YWJsZS5jb25jYXQodmFsdWUsICIgIikKZW5kCmVsc2UKcmV0dXJuICIiCmVuZAplbmQKZnVuY3Rpb24gbWFrZS50b3Zhcih2YWx1ZSkKdmFsdWUgPSB2YWx1ZTpnc3ViKCJbIC1dIiwgIl8iKQp2YWx1ZSA9IHZhbHVlOmdzdWIoIlsoKV0iLCAiIikKcmV0dXJuIHZhbHVlCmVuZApmdW5jdGlvbiBtYWtlLm9iamRpcihjZmcpCl94KCcgIE9CSkRJUiA9ICVzJywgcC5lc2MocHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgY2ZnLm9iamRpcikpKQplbmQKZnVuY3Rpb24gbWFrZS5vYmpEaXJSdWxlcyhwcmopCm1ha2UubWtkaXJSdWxlcygiJChPQkpESVIpIikKZW5kCmZ1bmN0aW9uIG1ha2UucGhvbnlSdWxlcyhwcmopCl9wKCcuUEhPTlk6IGNsZWFuIHByZWJ1aWxkIHByZWxpbmsnKQpfcCgnJykKZW5kCmZ1bmN0aW9uIG1ha2UuYnVpbGRDbWRzKGNmZywgZXZlbnQpCl9wKCcgIGRlZmluZSAlc0NNRFMnLCBldmVudDp1cHBlcigpKQpsb2NhbCBzdGVwcyA9IGNmZ1tldmVudCAuLiAiY29tbWFuZHMiXQpsb2NhbCBtc2cgPSBjZmdbZXZlbnQgLi4gIm1lc3NhZ2UiXQppZiAjc3RlcHMgPiAwIHRoZW4Kc3RlcHMgPSBvcy50cmFuc2xhdGVDb21tYW5kc0FuZFBhdGhzKHN0ZXBzLCBjZmcucHJvamVjdC5iYXNlZGlyLCBjZmcucHJvamVjdC5sb2NhdGlvbikKbXNnID0gbXNnIG9yIHN0cmluZy5mb3JtYXQoIlJ1bm5pbmcgJXMgY29tbWFuZHMiLCBldmVudCkKX3AoJ1x0QGVjaG8gJXMnLCBtc2cpCl9wKCdcdCVzJywgdGFibGUuaW1wbG9kZShzdGVwcywgIiIsICIiLCAiXG5cdCIpKQplbmQKX3AoJyAgZW5kZWYnKQplbmQKZnVuY3Rpb24gbWFrZS5wcmVCdWlsZENtZHMoY2ZnLCB0b29sc2V0KQptYWtlLmJ1aWxkQ21kcyhjZmcsICJwcmVidWlsZCIpCmVuZApmdW5jdGlvbiBtYWtlLnByZUJ1aWxkUnVsZXMocHJqKQpfcCgncHJlYnVpbGQ6JykKX3AoJ1x0JChQUkVCVUlMRENNRFMpJykKX3AoJycpCmVuZApmdW5jdGlvbiBtYWtlLnByZUxpbmtDbWRzKGNmZywgdG9vbHNldCkKbWFrZS5idWlsZENtZHMoY2ZnLCAicHJlbGluayIpCmVuZApmdW5jdGlvbiBtYWtlLnByZUxpbmtSdWxlcyhwcmopCl9wKCdwcmVsaW5rOicpCl9wKCdcdCQoUFJFTElOS0NNRFMpJykKX3AoJycpCmVuZApmdW5jdGlvbiBtYWtlLnBvc3RCdWlsZENtZHMoY2ZnLCB0b29sc2V0KQptYWtlLmJ1aWxkQ21kcyhjZmcsICJwb3N0YnVpbGQiKQplbmQKZnVuY3Rpb24gbWFrZS5zZXR0aW5ncyhjZmcsIHRvb2xzZXQpCmlmICNjZmcubWFrZXNldHRpbmdzID4gMCB0aGVuCmZvciBfLCB2YWx1ZSBpbiBpcGFpcnMoY2ZnLm1ha2VzZXR0aW5ncykgZG8KX3AodmFsdWUpCmVuZAplbmQKbG9jYWwgdmFsdWUgPSB0b29sc2V0LmdldG1ha2VzZXR0aW5ncyhjZmcpCmlmIHZhbHVlIHRoZW4KX3AodmFsdWUpCmVuZAplbmQKZnVuY3Rpb24gbWFrZS5zaGVsbFR5cGUoKQpfcCgnU0hFTExUWVBFIDo9IG1zZG9zJykKX3AoJ2lmZXEgKCwkKENvbVNwZWMpJChDT01TUEVDKSknKQpfcCgnICBTSEVMTFRZUEUgOj0gcG9zaXgnKQpfcCgnZW5kaWYnKQpfcCgnaWZlcSAoL2JpbiwkKGZpbmRzdHJpbmcgL2JpbiwkKFNIRUxMKSkpJykKX3AoJyAgU0hFTExUWVBFIDo9IHBvc2l4JykKX3AoJ2VuZGlmJykKX3AoJycpCmVuZApmdW5jdGlvbiBtYWtlLnRhcmdldChjZmcpCl94KCcgIFRBUkdFVERJUiA9ICVzJywgcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgY2ZnLmJ1aWxkdGFyZ2V0LmRpcmVjdG9yeSkpCl94KCcgIFRBUkdFVCA9ICQoVEFSR0VURElSKS8lcycsIGNmZy5idWlsZHRhcmdldC5uYW1lKQplbmQKZnVuY3Rpb24gbWFrZS50YXJnZXREaXJSdWxlcyhwcmopCm1ha2UubWtkaXJSdWxlcygiJChUQVJHRVRESVIpIikKZW5kCmluY2x1ZGUoImdtYWtlX2NwcC5sdWEiKQppbmNsdWRlKCJnbWFrZV9jc2hhcnAubHVhIikKaW5jbHVkZSgiZ21ha2VfbWFrZWZpbGUubHVhIikKaW5jbHVkZSgiZ21ha2VfdXRpbGl0eS5sdWEiKQppbmNsdWRlKCJnbWFrZV93b3Jrc3BhY2UubHVhIikKcmV0dXJuIHAubW9kdWxlcy5nbWFrZQoAAGxvY2FsIHAgPSBwcmVtYWtlCnAubWFrZS5jcHAgPSB7fQpsb2NhbCBtYWtlID0gcC5tYWtlCmxvY2FsIGNwcCA9IHAubWFrZS5jcHAKbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApsb2NhbCBjb25maWcgPSBwLmNvbmZpZwpsb2NhbCBmaWxlY29uZmlnID0gcC5maWxlY29uZmlnCmNwcC5lbGVtZW50cyA9IHt9CmNwcC5lbGVtZW50cy5tYWtlZmlsZSA9IGZ1bmN0aW9uKHByaikKcmV0dXJuIHsKbWFrZS5oZWFkZXIsCm1ha2UucGhvbnlSdWxlcywKbWFrZS5jcHBDb25maWdzLAptYWtlLmNwcE9iamVjdHMsCm1ha2Uuc2hlbGxUeXBlLAptYWtlLmNwcFRhcmdldFJ1bGVzLAptYWtlLmNwcENsZWFuUnVsZXMsCm1ha2UucHJlQnVpbGRSdWxlcywKbWFrZS5wcmVMaW5rUnVsZXMsCm1ha2UucGNoUnVsZXMsCm1ha2UuY3BwRmlsZVJ1bGVzLAptYWtlLmNwcERlcGVuZGVuY2llcywKfQplbmQKZnVuY3Rpb24gbWFrZS5jcHAuZ2VuZXJhdGUocHJqKQpwLmVvbCgiXG4iKQpwLmNhbGxBcnJheShjcHAuZWxlbWVudHMubWFrZWZpbGUsIHByaikKZW5kCmNwcC5lbGVtZW50cy5jb25maWd1cmF0aW9uID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4gewptYWtlLmNwcFRvb2xzLAptYWtlLnRhcmdldCwKbWFrZS5vYmpkaXIsCm1ha2UucGNoLAptYWtlLmRlZmluZXMsCm1ha2UuaW5jbHVkZXMsCm1ha2UuZm9yY2VJbmNsdWRlLAptYWtlLmNwcEZsYWdzLAptYWtlLmNGbGFncywKbWFrZS5jeHhGbGFncywKbWFrZS5yZXNGbGFncywKbWFrZS5saWJzLAptYWtlLmxkRGVwcywKbWFrZS5sZEZsYWdzLAptYWtlLmxpbmtDbWQsCm1ha2UuZXhlUGF0aHMsCm1ha2UucHJlQnVpbGRDbWRzLAptYWtlLnByZUxpbmtDbWRzLAptYWtlLnBvc3RCdWlsZENtZHMsCm1ha2UuY3BwQWxsUnVsZXMsCm1ha2Uuc2V0dGluZ3MsCn0KZW5kCmZ1bmN0aW9uIG1ha2UuY3BwQ29uZmlncyhwcmopCmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgdG9vbHNldCA9IHAudG9vbHNbX09QVElPTlMuY2Mgb3IgY2ZnLnRvb2xzZXQgb3IgImdjYyJdCmlmIG5vdCB0b29sc2V0IHRoZW4KZXJyb3IoIkludmFsaWQgdG9vbHNldCAnIiAuLiBjZmcudG9vbHNldCAuLiAiJyIpCmVuZApfeCgnaWZlcSAoJChjb25maWcpLCVzKScsIGNmZy5zaG9ydG5hbWUpCnAuY2FsbEFycmF5KGNwcC5lbGVtZW50cy5jb25maWd1cmF0aW9uLCBjZmcsIHRvb2xzZXQpCl9wKCdlbmRpZicpCl9wKCcnKQplbmQKZW5kCmZ1bmN0aW9uIG1ha2UuZXhlUGF0aHMoY2ZnKQpsb2NhbCBkaXJzID0gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgY2ZnLmJpbmRpcnMpCmlmICNkaXJzID4gMCB0aGVuCl9wKCcgIEVYRUNVVEFCTEVfUEFUSFMgPSAiJXMiJywgdGFibGUuY29uY2F0KGRpcnMsICI6IikpCl9wKCcgIEVYRV9QQVRIUyA9IGV4cG9ydCBQQVRIPSQoRVhFQ1VUQUJMRV9QQVRIUyk6JCRQQVRIOycpCmVuZAplbmQKZnVuY3Rpb24gY3BwLmJ1aWxkY29tbWFuZChwcmosIG9iamV4dCwgbm9kZSkKbG9jYWwgaXNjZmlsZSA9IG5vZGUgYW5kIHBhdGguaXNjZmlsZShub2RlLmFic3BhdGgpIG9yIGZhbHNlCmxvY2FsIGZsYWdzID0gaWlmKHByai5sYW5ndWFnZSA9PSAiQyIgb3IgaXNjZmlsZSwgJyQoQ0MpICQoQUxMX0NGTEFHUyknLCAnJChDWFgpICQoQUxMX0NYWEZMQUdTKScpCl9wKCdcdCQoU0lMRU5UKSAlcyAkKEZPUkNFX0lOQ0xVREUpIC1vICIkQCIgLU1GICIkKEA6JSUuJXM9JSUuZCkiIC1jICIkPCInLCBmbGFncywgb2JqZXh0KQplbmQKZnVuY3Rpb24gbWFrZS5jcHBGaWxlUnVsZXMocHJqKQpsb2NhbCB0ciA9IHByb2plY3QuZ2V0c291cmNldHJlZShwcmopCnAudHJlZS50cmF2ZXJzZSh0ciwgewpvbmxlYWYgPSBmdW5jdGlvbihub2RlLCBkZXB0aCkKbG9jYWwgcnVsZXMKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpsb2NhbCBmaWxlY2ZnID0gZmlsZWNvbmZpZy5nZXRjb25maWcobm9kZSwgY2ZnKQppZiBmaWxlY29uZmlnLmhhc0N1c3RvbUJ1aWxkUnVsZShmaWxlY2ZnKSB0aGVuCnJ1bGVzID0gdHJ1ZQpicmVhawplbmQKZW5kCmlmIHJ1bGVzIHRoZW4KY3BwLmN1c3RvbUZpbGVSdWxlcyhwcmosIG5vZGUpCmVsc2UKY3BwLnN0YW5kYXJkRmlsZVJ1bGVzKHByaiwgbm9kZSkKZW5kCmVuZAp9KQpfcCgnJykKZW5kCmZ1bmN0aW9uIGNwcC5zdGFuZGFyZEZpbGVSdWxlcyhwcmosIG5vZGUpCmlmIHBhdGguaXNjcHBmaWxlKG5vZGUuYWJzcGF0aCkgdGhlbgpfeCgnJChPQkpESVIpLyVzLm86ICVzJywgbm9kZS5vYmpuYW1lLCBub2RlLnJlbHBhdGgpCl9wKCdcdEBlY2hvICQobm90ZGlyICQ8KScpCm1ha2UubWtkaXIoJyQoT0JKRElSKScpCmNwcC5idWlsZGNvbW1hbmQocHJqLCAibyIsIG5vZGUpCmVsc2VpZiBwYXRoLmlzcmVzb3VyY2VmaWxlKG5vZGUuYWJzcGF0aCkgdGhlbgpfeCgnJChPQkpESVIpLyVzLnJlczogJXMnLCBub2RlLm9iam5hbWUsIG5vZGUucmVscGF0aCkKX3AoJ1x0QGVjaG8gJChub3RkaXIgJDwpJykKbWFrZS5ta2RpcignJChPQkpESVIpJykKX3AoJ1x0JChTSUxFTlQpICQoUkVTQ09NUCkgJDwgLU8gY29mZiAtbyAiJEAiICQoQUxMX1JFU0ZMQUdTKScpCmVuZAplbmQKZnVuY3Rpb24gY3BwLmN1c3RvbUZpbGVSdWxlcyhwcmosIG5vZGUpCmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgZmlsZWNmZyA9IGZpbGVjb25maWcuZ2V0Y29uZmlnKG5vZGUsIGNmZykKaWYgZmlsZWNmZyB0aGVuCl94KCdpZmVxICgkKGNvbmZpZyksJXMpJywgY2ZnLnNob3J0bmFtZSkKbG9jYWwgb3V0cHV0ID0gcHJvamVjdC5nZXRyZWxhdGl2ZShwcmosIGZpbGVjZmcuYnVpbGRvdXRwdXRzWzFdKQpsb2NhbCBkZXBlbmRlbmNpZXMgPSBmaWxlY2ZnLnJlbHBhdGgKaWYgZmlsZWNmZy5idWlsZGlucHV0cyBhbmQgI2ZpbGVjZmcuYnVpbGRpbnB1dHMgPiAwIHRoZW4KbG9jYWwgaW5wdXRzID0gcHJvamVjdC5nZXRyZWxhdGl2ZShwcmosIGZpbGVjZmcuYnVpbGRpbnB1dHMpCmRlcGVuZGVuY2llcyA9IGRlcGVuZGVuY2llcyAuLiAiICIgLi4gdGFibGUuY29uY2F0KHAuZXNjKGlucHV0cyksICIgIikKZW5kCl9wKCclczogJXMnLCBvdXRwdXQsIGRlcGVuZGVuY2llcykKX3AoJ1x0QGVjaG8gIiVzIicsIGZpbGVjZmcuYnVpbGRtZXNzYWdlIG9yICgiQnVpbGRpbmcgIiAuLiBmaWxlY2ZnLnJlbHBhdGgpKQpsb2NhbCBjbWRzID0gb3MudHJhbnNsYXRlQ29tbWFuZHNBbmRQYXRocyhmaWxlY2ZnLmJ1aWxkY29tbWFuZHMsIGNmZy5wcm9qZWN0LmJhc2VkaXIsIGNmZy5wcm9qZWN0LmxvY2F0aW9uKQpmb3IgXywgY21kIGluIGlwYWlycyhjbWRzKSBkbwppZiBjZmcuYmluZGlycyBhbmQgI2NmZy5iaW5kaXJzID4gMCB0aGVuCl9wKCdcdCQoU0lMRU5UKSAkKEVYRV9QQVRIUykgJXMnLCBjbWQpCmVsc2UKX3AoJ1x0JChTSUxFTlQpICVzJywgY21kKQplbmQKZW5kCl9wKCdlbmRpZicpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG1ha2UuY3BwT2JqZWN0cyhwcmopCmxvY2FsIHJvb3QgPSB7IG9iamVjdHM9e30sIHJlc291cmNlcz17fSwgY3VzdG9tZmlsZXM9e30gfQpsb2NhbCBjb25maWdzID0ge30KZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpjb25maWdzW2NmZ10gPSB7IG9iamVjdHM9e30sIHJlc291cmNlcz17fSwgY3VzdG9tZmlsZXM9e30gfQplbmQKbG9jYWwgdHIgPSBwcm9qZWN0LmdldHNvdXJjZXRyZWUocHJqKQpwLnRyZWUudHJhdmVyc2UodHIsIHsKb25sZWFmID0gZnVuY3Rpb24obm9kZSwgZGVwdGgpCmxvY2FsIGluY2ZnID0ge30KbG9jYWwgaW5hbGwgPSB0cnVlCmxvY2FsIGN1c3RvbSA9IGZhbHNlCmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgZmlsZWNmZyA9IGZpbGVjb25maWcuZ2V0Y29uZmlnKG5vZGUsIGNmZykKaWYgZmlsZWNmZyBhbmQgbm90IGZpbGVjZmcuZmxhZ3MuRXhjbHVkZUZyb21CdWlsZCB0aGVuCmluY2ZnW2NmZ10gPSBmaWxlY2ZnCmN1c3RvbSA9IGZpbGVjb25maWcuaGFzQ3VzdG9tQnVpbGRSdWxlKGZpbGVjZmcpCmVsc2UKaW5hbGwgPSBmYWxzZQplbmQKZW5kCmlmIG5vdCBjdXN0b20gdGhlbgpsb2NhbCBraW5kCmlmIHBhdGguaXNjcHBmaWxlKG5vZGUuYWJzcGF0aCkgdGhlbgpraW5kID0gIm9iamVjdHMiCmVsc2VpZiBwYXRoLmlzcmVzb3VyY2VmaWxlKG5vZGUuYWJzcGF0aCkgdGhlbgpraW5kID0gInJlc291cmNlcyIKZW5kCmlmIG5vdCBjdXN0b20gYW5kIG5vdCBraW5kIHRoZW4KcmV0dXJuCmVuZApvYmplY3RuYW1lID0gIiQoT0JKRElSKS8iIC4uIG5vZGUub2JqbmFtZSAuLiBpaWYoa2luZCA9PSAib2JqZWN0cyIsICIubyIsICIucmVzIikKaWYgaW5hbGwgdGhlbgp0YWJsZS5pbnNlcnQocm9vdFtraW5kXSwgb2JqZWN0bmFtZSkKZWxzZQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmlmIGluY2ZnW2NmZ10gdGhlbgp0YWJsZS5pbnNlcnQoY29uZmlnc1tjZmddW2tpbmRdLCBvYmplY3RuYW1lKQplbmQKZW5kCmVuZAplbHNlCmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgZmlsZWNmZyA9IGluY2ZnW2NmZ10KaWYgZmlsZWNmZyB0aGVuCmxvY2FsIG91dHB1dCA9IHByb2plY3QuZ2V0cmVsYXRpdmUocHJqLCBmaWxlY2ZnLmJ1aWxkb3V0cHV0c1sxXSkKaWYgcGF0aC5pc29iamVjdGZpbGUob3V0cHV0KSBhbmQgKGZpbGVjZmcubGlua2J1aWxkb3V0cHV0cyA9PSB0cnVlIG9yIGZpbGVjZmcubGlua2J1aWxkb3V0cHV0cyA9PSBuaWwpIHRoZW4KdGFibGUuaW5zZXJ0KGNvbmZpZ3NbY2ZnXS5vYmplY3RzLCBvdXRwdXQpCmVsc2UKdGFibGUuaW5zZXJ0KGNvbmZpZ3NbY2ZnXS5jdXN0b21maWxlcywgb3V0cHV0KQplbmQKZW5kCmVuZAplbmQKZW5kCn0pCmZ1bmN0aW9uIGxpc3RvYmplY3RzKHZhciwgbGlzdCkKX3AoJyVzIFxcJywgdmFyKQpmb3IgXywgb2JqZWN0bmFtZSBpbiBpcGFpcnMobGlzdCkgZG8KX3goJ1x0JXMgXFwnLCBvYmplY3RuYW1lKQplbmQKX3AoJycpCmVuZApsaXN0b2JqZWN0cygnT0JKRUNUUyA6PScsIHJvb3Qub2JqZWN0cywgJ28nKQpsaXN0b2JqZWN0cygnUkVTT1VSQ0VTIDo9Jywgcm9vdC5yZXNvdXJjZXMsICdyZXMnKQpsaXN0b2JqZWN0cygnQ1VTVE9NRklMRVMgOj0nLCByb290LmN1c3RvbWZpbGVzKQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmxvY2FsIGZpbGVzID0gY29uZmlnc1tjZmddCmlmICNmaWxlcy5vYmplY3RzID4gMCBvciAjZmlsZXMucmVzb3VyY2VzID4gMCBvciAjZmlsZXMuY3VzdG9tZmlsZXMgPiAwIHRoZW4KX3goJ2lmZXEgKCQoY29uZmlnKSwlcyknLCBjZmcuc2hvcnRuYW1lKQppZiAjZmlsZXMub2JqZWN0cyA+IDAgdGhlbgpsaXN0b2JqZWN0cygnICBPQkpFQ1RTICs9JywgZmlsZXMub2JqZWN0cykKZW5kCmlmICNmaWxlcy5yZXNvdXJjZXMgPiAwIHRoZW4KbGlzdG9iamVjdHMoJyAgUkVTT1VSQ0VTICs9JywgZmlsZXMucmVzb3VyY2VzKQplbmQKaWYgI2ZpbGVzLmN1c3RvbWZpbGVzID4gMCB0aGVuCmxpc3RvYmplY3RzKCcgIENVU1RPTUZJTEVTICs9JywgZmlsZXMuY3VzdG9tZmlsZXMpCmVuZApfcCgnZW5kaWYnKQpfcCgnJykKZW5kCmVuZAplbmQKZnVuY3Rpb24gbWFrZS5jRmxhZ3MoY2ZnLCB0b29sc2V0KQpfcCgnICBBTExfQ0ZMQUdTICs9ICQoQ0ZMQUdTKSAkKEFMTF9DUFBGTEFHUyklcycsIG1ha2UubGlzdCh0YWJsZS5qb2luKHRvb2xzZXQuZ2V0Y2ZsYWdzKGNmZyksIGNmZy5idWlsZG9wdGlvbnMpKSkKZW5kCmZ1bmN0aW9uIG1ha2UuY3BwQWxsUnVsZXMoY2ZnLCB0b29sc2V0KQppZiBjZmcuc3lzdGVtID09IHAuTUFDT1NYIGFuZCBjZmcua2luZCA9PSBwLldJTkRPV0VEQVBQIHRoZW4KX3AoJ2FsbDogcHJlYnVpbGQgcHJlbGluayAkKFRBUkdFVCkgJChkaXIgJChUQVJHRVRESVIpKVBrZ0luZm8gJChkaXIgJChUQVJHRVRESVIpKUluZm8ucGxpc3QnKQpfcCgnXHRAOicpCl9wKCcnKQpfcCgnJChkaXIgJChUQVJHRVRESVIpKVBrZ0luZm86JykKX3AoJyQoZGlyICQoVEFSR0VURElSKSlJbmZvLnBsaXN0OicpCmVsc2UKX3AoJ2FsbDogcHJlYnVpbGQgcHJlbGluayAkKFRBUkdFVCknKQpfcCgnXHRAOicpCmVuZAplbmQKZnVuY3Rpb24gbWFrZS5jcHBGbGFncyhjZmcsIHRvb2xzZXQpCl9wKCcgIEFMTF9DUFBGTEFHUyArPSAkKENQUEZMQUdTKSVzICQoREVGSU5FUykgJChJTkNMVURFUyknLCBtYWtlLmxpc3QodG9vbHNldC5nZXRjcHBmbGFncyhjZmcpKSkKZW5kCmZ1bmN0aW9uIG1ha2UuY3h4RmxhZ3MoY2ZnLCB0b29sc2V0KQpfcCgnICBBTExfQ1hYRkxBR1MgKz0gJChDWFhGTEFHUykgJChBTExfQ1BQRkxBR1MpJXMnLCBtYWtlLmxpc3QodGFibGUuam9pbih0b29sc2V0LmdldGN4eGZsYWdzKGNmZyksIGNmZy5idWlsZG9wdGlvbnMpKSkKZW5kCmZ1bmN0aW9uIG1ha2UuY3BwQ2xlYW5SdWxlcyhwcmopCl9wKCdjbGVhbjonKQpfcCgnXHRAZWNobyBDbGVhbmluZyAlcycsIHByai5uYW1lKQpfcCgnaWZlcSAocG9zaXgsJChTSEVMTFRZUEUpKScpCl9wKCdcdCQoU0lMRU5UKSBybSAtZiAgJChUQVJHRVQpJykKX3AoJ1x0JChTSUxFTlQpIHJtIC1yZiAkKE9CSkRJUiknKQpfcCgnZWxzZScpCl9wKCdcdCQoU0lMRU5UKSBpZiBleGlzdCAkKHN1YnN0IC8sXFxcXCwkKFRBUkdFVCkpIGRlbCAkKHN1YnN0IC8sXFxcXCwkKFRBUkdFVCkpJykKX3AoJ1x0JChTSUxFTlQpIGlmIGV4aXN0ICQoc3Vic3QgLyxcXFxcLCQoT0JKRElSKSkgcm1kaXIgL3MgL3EgJChzdWJzdCAvLFxcXFwsJChPQkpESVIpKScpCl9wKCdlbmRpZicpCl9wKCcnKQplbmQKZnVuY3Rpb24gbWFrZS5jcHBEZXBlbmRlbmNpZXMocHJqKQpfcCgnLWluY2x1ZGUgJChPQkpFQ1RTOiUlLm89JSUuZCknKQpfcCgnaWZuZXEgKCwkKFBDSCkpJykKX3AoJyAgLWluY2x1ZGUgJChPQkpESVIpLyQobm90ZGlyICQoUENIKSkuZCcpCl9wKCdlbmRpZicpCmVuZApmdW5jdGlvbiBtYWtlLmNwcFRhcmdldFJ1bGVzKHByaikKX3AoJyQoVEFSR0VUKTogJChHQ0gpICR7Q1VTVE9NRklMRVN9ICQoT0JKRUNUUykgJChMRERFUFMpICQoUkVTT1VSQ0VTKScpCl9wKCdcdEBlY2hvIExpbmtpbmcgJXMnLCBwcmoubmFtZSkKbWFrZS5ta2RpcignJChUQVJHRVRESVIpJykKX3AoJ1x0JChTSUxFTlQpICQoTElOS0NNRCknKQpfcCgnXHQkKFBPU1RCVUlMRENNRFMpJykKX3AoJycpCmVuZApmdW5jdGlvbiBtYWtlLmNwcFRvb2xzKGNmZywgdG9vbHNldCkKbG9jYWwgdG9vbCA9IHRvb2xzZXQuZ2V0dG9vbG5hbWUoY2ZnLCAiY2MiKQppZiB0b29sIHRoZW4KX3AoJyAgaWZlcSAoJChvcmlnaW4gQ0MpLCBkZWZhdWx0KScpCl9wKCcgICAgQ0MgPSAlcycsIHRvb2wpCl9wKCcgIGVuZGlmJyApCmVuZAp0b29sID0gdG9vbHNldC5nZXR0b29sbmFtZShjZmcsICJjeHgiKQppZiB0b29sIHRoZW4KX3AoJyAgaWZlcSAoJChvcmlnaW4gQ1hYKSwgZGVmYXVsdCknKQpfcCgnICAgIENYWCA9ICVzJywgdG9vbCkKX3AoJyAgZW5kaWYnICkKZW5kCnRvb2wgPSB0b29sc2V0LmdldHRvb2xuYW1lKGNmZywgImFyIikKaWYgdG9vbCB0aGVuCl9wKCcgIGlmZXEgKCQob3JpZ2luIEFSKSwgZGVmYXVsdCknKQpfcCgnICAgIEFSID0gJXMnLCB0b29sKQpfcCgnICBlbmRpZicgKQplbmQKdG9vbCA9IHRvb2xzZXQuZ2V0dG9vbG5hbWUoY2ZnLCAicmMiKQppZiB0b29sIHRoZW4KX3AoJyAgUkVTQ09NUCA9ICVzJywgdG9vbCkKZW5kCmVuZApmdW5jdGlvbiBtYWtlLmRlZmluZXMoY2ZnLCB0b29sc2V0KQpfcCgnICBERUZJTkVTICs9JXMnLCBtYWtlLmxpc3QodGFibGUuam9pbih0b29sc2V0LmdldGRlZmluZXMoY2ZnLmRlZmluZXMsIGNmZyksIHRvb2xzZXQuZ2V0dW5kZWZpbmVzKGNmZy51bmRlZmluZXMpKSkpCmVuZApmdW5jdGlvbiBtYWtlLmZvcmNlSW5jbHVkZShjZmcsIHRvb2xzZXQpCmxvY2FsIGluY2x1ZGVzID0gdG9vbHNldC5nZXRmb3JjZWluY2x1ZGVzKGNmZykKaWYgbm90IGNmZy5mbGFncy5Ob1BDSCBhbmQgY2ZnLnBjaGhlYWRlciB0aGVuCnRhYmxlLmluc2VydChpbmNsdWRlcywgMSwgIi1pbmNsdWRlICQoT0JKRElSKS8kKG5vdGRpciAkKFBDSCkpIikKZW5kCl94KCcgIEZPUkNFX0lOQ0xVREUgKz0lcycsIG1ha2UubGlzdChpbmNsdWRlcykpCmVuZApmdW5jdGlvbiBtYWtlLmluY2x1ZGVzKGNmZywgdG9vbHNldCkKbG9jYWwgaW5jbHVkZXMgPSB0b29sc2V0LmdldGluY2x1ZGVkaXJzKGNmZywgY2ZnLmluY2x1ZGVkaXJzLCBjZmcuc3lzaW5jbHVkZWRpcnMpCl9wKCcgIElOQ0xVREVTICs9JXMnLCBtYWtlLmxpc3QoaW5jbHVkZXMpKQplbmQKZnVuY3Rpb24gbWFrZS5sZERlcHMoY2ZnLCB0b29sc2V0KQpsb2NhbCBkZXBzID0gY29uZmlnLmdldGxpbmtzKGNmZywgInNpYmxpbmdzIiwgImZ1bGxwYXRoIikKX3AoJyAgTERERVBTICs9JXMnLCBtYWtlLmxpc3QocC5lc2MoZGVwcykpKQplbmQKZnVuY3Rpb24gbWFrZS5sZEZsYWdzKGNmZywgdG9vbHNldCkKbG9jYWwgZmxhZ3MgPSB0YWJsZS5qb2luKHRvb2xzZXQuZ2V0TGlicmFyeURpcmVjdG9yaWVzKGNmZyksIHRvb2xzZXQuZ2V0cnVucGF0aGRpcnMoY2ZnLCBjZmcucnVucGF0aGRpcnMpLCB0b29sc2V0LmdldGxkZmxhZ3MoY2ZnKSwgY2ZnLmxpbmtvcHRpb25zKQpfcCgnICBBTExfTERGTEFHUyArPSAkKExERkxBR1MpJXMnLCBtYWtlLmxpc3QoZmxhZ3MpKQplbmQKZnVuY3Rpb24gbWFrZS5saWJzKGNmZywgdG9vbHNldCkKbG9jYWwgZmxhZ3MgPSB0b29sc2V0LmdldGxpbmtzKGNmZykKX3AoJyAgTElCUyArPSVzJywgbWFrZS5saXN0KGZsYWdzLCB0cnVlKSkKZW5kCmZ1bmN0aW9uIG1ha2UubGlua0NtZChjZmcsIHRvb2xzZXQpCmlmIGNmZy5raW5kID09IHAuU1RBVElDTElCIHRoZW4KaWYgY2ZnLmFyY2hpdGVjdHVyZSA9PSBwLlVOSVZFUlNBTCB0aGVuCl9wKCcgIExJTktDTUQgPSBsaWJ0b29sIC1vICIkQCIgJChPQkpFQ1RTKScpCmVsc2UKX3AoJyAgTElOS0NNRCA9ICQoQVIpICcgLi4gKHRvb2xzZXQuYXJhcmdzIG9yICctcmNzJykgLi4nICIkQCIgJChPQkpFQ1RTKScpCmVuZAplbHNlaWYgY2ZnLmtpbmQgPT0gcC5VVElMSVRZIHRoZW4KX3AoJyAgTElOS0NNRCA9JykKZWxzZQpsb2NhbCBjYyA9IGlpZihwLmxhbmd1YWdlcy5pc2MoY2ZnLmxhbmd1YWdlKSwgIkNDIiwgIkNYWCIpCl9wKCcgIExJTktDTUQgPSAkKCVzKSAtbyAiJEAiICQoT0JKRUNUUykgJChSRVNPVVJDRVMpICQoQUxMX0xERkxBR1MpICQoTElCUyknLCBjYykKZW5kCmVuZApmdW5jdGlvbiBtYWtlLnBjaChjZmcsIHRvb2xzZXQpCmlmIG5vdCBjZmcucGNoaGVhZGVyIG9yIGNmZy5mbGFncy5Ob1BDSCB0aGVuCnJldHVybgplbmQKbG9jYWwgcGNoID0gY2ZnLnBjaGhlYWRlcgpsb2NhbCBmb3VuZCA9IGZhbHNlCmxvY2FsIHRlc3RuYW1lID0gcGF0aC5qb2luKGNmZy5wcm9qZWN0LmJhc2VkaXIsIHBjaCkKaWYgb3MuaXNmaWxlKHRlc3RuYW1lKSB0aGVuCnBjaCA9IHByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIHRlc3RuYW1lKQpmb3VuZCA9IHRydWUKZWxzZQpmb3IgXywgaW5jZGlyIGluIGlwYWlycyhjZmcuaW5jbHVkZWRpcnMpIGRvCnRlc3RuYW1lID0gcGF0aC5qb2luKGluY2RpciwgcGNoKQppZiBvcy5pc2ZpbGUodGVzdG5hbWUpIHRoZW4KcGNoID0gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgdGVzdG5hbWUpCmZvdW5kID0gdHJ1ZQpicmVhawplbmQKZW5kCmVuZAppZiBub3QgZm91bmQgdGhlbgpwY2ggPSBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBwYXRoLmdldGFic29sdXRlKHBjaCkpCmVuZApfeCgnICBQQ0ggPSAlcycsIHBjaCkKX3AoJyAgR0NIID0gJChPQkpESVIpLyQobm90ZGlyICQoUENIKSkuZ2NoJykKZW5kCmZ1bmN0aW9uIG1ha2UucGNoUnVsZXMocHJqKQpfcCgnaWZuZXEgKCwkKFBDSCkpJykKX3AoJyQoT0JKRUNUUyk6ICQoR0NIKSAkKFBDSCknKQpfcCgnJChHQ0gpOiAkKFBDSCknKQpfcCgnXHRAZWNobyAkKG5vdGRpciAkPCknKQptYWtlLm1rZGlyKCckKE9CSkRJUiknKQpsb2NhbCBjbWQgPSBpaWYocHJqLmxhbmd1YWdlID09ICJDIiwgIiQoQ0MpIC14IGMtaGVhZGVyICQoQUxMX0NGTEFHUykiLCAiJChDWFgpIC14IGMrKy1oZWFkZXIgJChBTExfQ1hYRkxBR1MpIikKX3AoJ1x0JChTSUxFTlQpICVzIC1vICIkQCIgLU1GICIkKEA6JSUuZ2NoPSUlLmQpIiAtYyAiJDwiJywgY21kKQpfcCgnZW5kaWYnKQpfcCgnJykKZW5kCmZ1bmN0aW9uIG1ha2UucmVzRmxhZ3MoY2ZnLCB0b29sc2V0KQpsb2NhbCByZXNmbGFncyA9IHRhYmxlLmpvaW4odG9vbHNldC5nZXRkZWZpbmVzKGNmZy5yZXNkZWZpbmVzKSwgdG9vbHNldC5nZXRpbmNsdWRlZGlycyhjZmcsIGNmZy5yZXNpbmNsdWRlZGlycyksIGNmZy5yZXNvcHRpb25zKQpfcCgnICBBTExfUkVTRkxBR1MgKz0gJChSRVNGTEFHUykgJChERUZJTkVTKSAkKElOQ0xVREVTKSVzJywgbWFrZS5saXN0KHJlc2ZsYWdzKSkKZW5kCgAAAABsb2NhbCBwID0gcHJlbWFrZQpwLm1ha2UuY3MgPSB7fQpsb2NhbCBtYWtlID0gcC5tYWtlCmxvY2FsIGNzID0gcC5tYWtlLmNzCmxvY2FsIHByb2plY3QgPSBwLnByb2plY3QKbG9jYWwgY29uZmlnID0gcC5jb25maWcKbG9jYWwgZmlsZWNvbmZpZyA9IHAuZmlsZWNvbmZpZwpjcy5lbGVtZW50cyA9IHt9CmNzLmVsZW1lbnRzLm1ha2VmaWxlID0gZnVuY3Rpb24ocHJqKQpyZXR1cm4gewptYWtlLmhlYWRlciwKbWFrZS5waG9ueVJ1bGVzLAptYWtlLmNzQ29uZmlncywKbWFrZS5jc1Byb2plY3RDb25maWcsCm1ha2UuY3NTb3VyY2VzLAptYWtlLmNzRW1iZWRGaWxlcywKbWFrZS5jc0NvcHlGaWxlcywKbWFrZS5jc1Jlc3BvbnNlRmlsZSwKbWFrZS5zaGVsbFR5cGUsCm1ha2UuY3NBbGxSdWxlcywKbWFrZS5jc1RhcmdldFJ1bGVzLAptYWtlLnRhcmdldERpclJ1bGVzLAptYWtlLmNzUmVzcG9uc2VSdWxlcywKbWFrZS5vYmpEaXJSdWxlcywKbWFrZS5jc0NsZWFuUnVsZXMsCm1ha2UucHJlQnVpbGRSdWxlcywKbWFrZS5wcmVMaW5rUnVsZXMsCm1ha2UuY3NGaWxlUnVsZXMsCn0KZW5kCmZ1bmN0aW9uIG1ha2UuY3MuZ2VuZXJhdGUocHJqKQpwLmVvbCgiXG4iKQpsb2NhbCB0b29sc2V0ID0gcC50b29scy5kb3RuZXQKcC5jYWxsQXJyYXkoY3MuZWxlbWVudHMubWFrZWZpbGUsIHByaiwgdG9vbHNldCkKZW5kCmNzLmVsZW1lbnRzLmNvbmZpZ3VyYXRpb24gPSBmdW5jdGlvbihjZmcpCnJldHVybiB7Cm1ha2UuY3NUb29scywKbWFrZS50YXJnZXQsCm1ha2Uub2JqZGlyLAptYWtlLmNzRmxhZ3MsCm1ha2UuY3NMaW5rQ21kLAptYWtlLnByZUJ1aWxkQ21kcywKbWFrZS5wcmVMaW5rQ21kcywKbWFrZS5wb3N0QnVpbGRDbWRzLAptYWtlLnNldHRpbmdzLAp9CmVuZApmdW5jdGlvbiBtYWtlLmNzQ29uZmlncyhwcmosIHRvb2xzZXQpCmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KX3goJ2lmZXEgKCQoY29uZmlnKSwlcyknLCBjZmcuc2hvcnRuYW1lKQpwLmNhbGxBcnJheShjcy5lbGVtZW50cy5jb25maWd1cmF0aW9uLCBjZmcsIHRvb2xzZXQpCl9wKCdlbmRpZicpCl9wKCcnKQplbmQKZW5kCmZ1bmN0aW9uIGNzLmdldHJlc291cmNlZmlsZW5hbWUoY2ZnLCBmbmFtZSkKaWYgcGF0aC5nZXRleHRlbnNpb24oZm5hbWUpID09ICIucmVzeCIgdGhlbgpsb2NhbCBuYW1lID0gY2ZnLmJ1aWxkdGFyZ2V0LmJhc2VuYW1lIC4uICIuIgpsb2NhbCBkaXIgPSBwYXRoLmdldGRpcmVjdG9yeShmbmFtZSkKaWYgZGlyIH49ICIuIiB0aGVuCm5hbWUgPSBuYW1lIC4uIHBhdGgudHJhbnNsYXRlKGRpciwgIi4iKSAuLiAiLiIKZW5kCnJldHVybiAiJChPQkpESVIpLyIgLi4gcC5lc2MobmFtZSAuLiBwYXRoLmdldGJhc2VuYW1lKGZuYW1lKSkgLi4gIi5yZXNvdXJjZXMiCmVsc2UKcmV0dXJuIGZuYW1lCmVuZAplbmQKZnVuY3Rpb24gY3MubGlzdHNvdXJjZXMocHJqLCBzZWxlY3RvcikKbG9jYWwgdHIgPSBwcm9qZWN0LmdldHNvdXJjZXRyZWUocHJqKQpwLnRyZWUudHJhdmVyc2UodHIsIHsKb25sZWFmID0gZnVuY3Rpb24obm9kZSwgZGVwdGgpCmxvY2FsIHZhbHVlID0gc2VsZWN0b3Iobm9kZSkKaWYgdmFsdWUgdGhlbgpfeCgnXHQlcyBcXCcsIHZhbHVlKQplbmQKZW5kCn0pCmVuZApmdW5jdGlvbiBtYWtlLmNzQWxsUnVsZXMocHJqLCB0b29sc2V0KQpfcCgnYWxsOiAkKFRBUkdFVERJUikgJChPQkpESVIpIHByZWJ1aWxkICQoRU1CRURGSUxFUykgJChDT1BZRklMRVMpIHByZWxpbmsgJChUQVJHRVQpJykKX3AoJycpCmVuZApmdW5jdGlvbiBtYWtlLmNzQ2xlYW5SdWxlcyhwcmosIHRvb2xzZXQpCmVuZApmdW5jdGlvbiBtYWtlLmNzQ29weUZpbGVzKHByaiwgdG9vbHNldCkKZW5kCmZ1bmN0aW9uIG1ha2UuY3MuZ2V0cmVzcG9uc2VmaWxlbmFtZShwcmopCnJldHVybiAnJChPQkpESVIpLycgLi4gcHJqLmZpbGVuYW1lIC4uICcucnNwJwplbmQKZnVuY3Rpb24gbWFrZS5jc1Jlc3BvbnNlRmlsZShwcmosIHRvb2xzZXQpCl94KCdSRVNQT05TRSArPSAnIC4uIG1ha2UuY3MuZ2V0cmVzcG9uc2VmaWxlbmFtZShwcmopKQplbmQKZnVuY3Rpb24gbWFrZS5jc1Jlc3BvbnNlUnVsZXMocHJqKQpsb2NhbCB0b29sc2V0ID0gcC50b29scy5kb3RuZXQKbG9jYWwgZXh0ID0gbWFrZS5nZXRtYWtlZmlsZW5hbWUocHJqLCB0cnVlKQpsb2NhbCBtYWtlZmlsZSA9IHBhdGguZ2V0bmFtZShwLmZpbGVuYW1lKHByaiwgZXh0KSkKbG9jYWwgcmVzcG9uc2UgPSBtYWtlLmNzLmdldHJlc3BvbnNlZmlsZW5hbWUocHJqKQpfcCgnJChSRVNQT05TRSk6ICVzJywgbWFrZWZpbGUpCl9wKCdcdEBlY2hvIEdlbmVyYXRpbmcgcmVzcG9uc2UgZmlsZScsIHByai5uYW1lKQpfcCgnaWZlcSAocG9zaXgsJChTSEVMTFRZUEUpKScpCl94KCdcdCQoU0lMRU5UKSBybSAtZiAkKFJFU1BPTlNFKScpCl9wKCdlbHNlJykKX3goJ1x0JChTSUxFTlQpIGlmIGV4aXN0ICQoUkVTUE9OU0UpIGRlbCAlcycsIHBhdGgudHJhbnNsYXRlKHJlc3BvbnNlLCAnXFwnKSkKX3AoJ2VuZGlmJykKbG9jYWwgc2VwID0gb3MuaXN0YXJnZXQoIndpbmRvd3MiKSBhbmQgIlxcIiBvciAiLyIKbG9jYWwgdHIgPSBwcm9qZWN0LmdldHNvdXJjZXRyZWUocHJqKQpwLnRyZWUudHJhdmVyc2UodHIsIHsKb25sZWFmID0gZnVuY3Rpb24obm9kZSwgZGVwdGgpCmlmIHRvb2xzZXQuZmlsZWluZm8obm9kZSkuYWN0aW9uID09ICJDb21waWxlIiB0aGVuCl94KCdcdEBlY2hvICVzID4+ICQoUkVTUE9OU0UpJywgcGF0aC50cmFuc2xhdGUobm9kZS5yZWxwYXRoLCBzZXApKQplbmQKZW5kCn0pCl9wKCcnKQplbmQKZnVuY3Rpb24gbWFrZS5jc0VtYmVkRmlsZXMocHJqLCB0b29sc2V0KQpsb2NhbCBjZmcgPSBwcm9qZWN0LmdldGZpcnN0Y29uZmlnKHByaikKX3AoJ0VNQkVERklMRVMgKz0gXFwnKQpjcy5saXN0c291cmNlcyhwcmosIGZ1bmN0aW9uKG5vZGUpCmxvY2FsIGZjZmcgPSBmaWxlY29uZmlnLmdldGNvbmZpZyhub2RlLCBjZmcpCmxvY2FsIGluZm8gPSB0b29sc2V0LmZpbGVpbmZvKGZjZmcpCmlmIGluZm8uYWN0aW9uID09ICJFbWJlZGRlZFJlc291cmNlIiB0aGVuCnJldHVybiBjcy5nZXRyZXNvdXJjZWZpbGVuYW1lKGNmZywgbm9kZS5yZWxwYXRoKQplbmQKZW5kKQpfcCgnJykKZW5kCmZ1bmN0aW9uIG1ha2UuY3NGaWxlUnVsZXMocHJqLCB0b29sc2V0KQplbmQKZnVuY3Rpb24gbWFrZS5jc0ZsYWdzKGNmZywgdG9vbHNldCkKX3AoJyAgRkxBR1MgPSVzJywgbWFrZS5saXN0KHRvb2xzZXQuZ2V0ZmxhZ3MoY2ZnKSkpCmVuZApmdW5jdGlvbiBtYWtlLmNzTGlua0NtZChjZmcsIHRvb2xzZXQpCmxvY2FsIGRlcHMgPSBwLmVzYyhjb25maWcuZ2V0bGlua3MoY2ZnLCAiZGVwZW5kZW5jaWVzIiwgImZ1bGxwYXRoIikpCl9wKCcgIERFUEVORFMgPSVzJywgbWFrZS5saXN0KGRlcHMpKQpfcCgnICBSRUZFUkVOQ0VTID0gJXMnLCB0YWJsZS5pbXBsb2RlKGRlcHMsICIvcjoiLCAiIiwgIiAiKSkKZW5kCmZ1bmN0aW9uIG1ha2UuY3NQcm9qZWN0Q29uZmlnKHByaiwgdG9vbHNldCkKbG9jYWwgY2ZnID0gcHJvamVjdC5nZXRmaXJzdGNvbmZpZyhwcmopCmxvY2FsIGtpbmRmbGFnID0gIi90OiIgLi4gdG9vbHNldC5nZXRraW5kKGNmZyk6bG93ZXIoKQpsb2NhbCBsaWJkaXJzID0gdGFibGUuaW1wbG9kZShwLmVzYyhjZmcubGliZGlycyksICIvbGliOiIsICIiLCAiICIpCl9wKCdGTEFHUyArPSAlcycsIHRhYmxlLmNvbmNhdCh0YWJsZS5qb2luKGtpbmRmbGFnLCBsaWJkaXJzKSwgIiAiKSkKbG9jYWwgcmVmcyA9IHAuZXNjKGNvbmZpZy5nZXRsaW5rcyhjZmcsICJzeXN0ZW0iLCAiZnVsbHBhdGgiKSkKX3AoJ1JFRkVSRU5DRVMgKz0gJXMnLCB0YWJsZS5pbXBsb2RlKHJlZnMsICIvcjoiLCAiIiwgIiAiKSkKX3AoJycpCmVuZApmdW5jdGlvbiBtYWtlLmNzU291cmNlcyhwcmosIHRvb2xzZXQpCmxvY2FsIGNmZyA9IHByb2plY3QuZ2V0Zmlyc3Rjb25maWcocHJqKQpfcCgnU09VUkNFUyArPSBcXCcpCmNzLmxpc3Rzb3VyY2VzKHByaiwgZnVuY3Rpb24obm9kZSkKbG9jYWwgZmNmZyA9IGZpbGVjb25maWcuZ2V0Y29uZmlnKG5vZGUsIGNmZykKbG9jYWwgaW5mbyA9IHRvb2xzZXQuZmlsZWluZm8oZmNmZykKaWYgaW5mby5hY3Rpb24gPT0gIkNvbXBpbGUiIHRoZW4KcmV0dXJuIG5vZGUucmVscGF0aAplbmQKZW5kKQpfcCgnJykKZW5kCmZ1bmN0aW9uIG1ha2UuY3NUYXJnZXRSdWxlcyhwcmosIHRvb2xzZXQpCl9wKCckKFRBUkdFVCk6ICQoU09VUkNFUykgJChFTUJFREZJTEVTKSAkKERFUEVORFMpICQoUkVTUE9OU0UpJykKX3AoJ1x0JChTSUxFTlQpICQoQ1NDKSAvbm9sb2dvIC9vdXQ6JEAgJChGTEFHUykgJChSRUZFUkVOQ0VTKSBAJChSRVNQT05TRSkgJChwYXRzdWJzdCAlJSwvcmVzb3VyY2U6JSUsJChFTUJFREZJTEVTKSknKQpfcCgnXHQkKFBPU1RCVUlMRENNRFMpJykKX3AoJycpCmVuZApmdW5jdGlvbiBtYWtlLmNzVG9vbHMoY2ZnLCB0b29sc2V0KQpfcCgnICBDU0MgPSAlcycsIHRvb2xzZXQuZ2V0dG9vbG5hbWUoY2ZnLCAiY3NjIikpCl9wKCcgIFJFU0dFTiA9ICVzJywgdG9vbHNldC5nZXR0b29sbmFtZShjZmcsICJyZXNnZW4iKSkKZW5kCgAAAAAAAABsb2NhbCBwID0gcHJlbWFrZQpwLm1ha2UubWFrZWZpbGUgPSB7fQpsb2NhbCBtYWtlICAgICAgID0gcC5tYWtlCmxvY2FsIG1ha2VmaWxlICAgPSBwLm1ha2UubWFrZWZpbGUKbG9jYWwgcHJvamVjdCAgICA9IHAucHJvamVjdApsb2NhbCBjb25maWcgICAgID0gcC5jb25maWcKbG9jYWwgZmlsZWNvbmZpZyA9IHAuZmlsZWNvbmZpZwptYWtlZmlsZS5lbGVtZW50cyA9IHt9Cm1ha2VmaWxlLmVsZW1lbnRzLm1ha2VmaWxlID0gewoiaGVhZGVyIiwKInBob255UnVsZXMiLAoibWFrZWZpbGVDb25maWdzIiwKIm1ha2VmaWxlVGFyZ2V0UnVsZXMiCn0KZnVuY3Rpb24gbWFrZS5tYWtlZmlsZS5nZW5lcmF0ZShwcmopCnAuZW9sKCJcbiIpCnAuY2FsbGFycmF5KG1ha2UsIG1ha2VmaWxlLmVsZW1lbnRzLm1ha2VmaWxlLCBwcmopCmVuZAptYWtlZmlsZS5lbGVtZW50cy5jb25maWd1cmF0aW9uID0gewoidGFyZ2V0IiwKImJ1aWxkQ29tbWFuZHMiLAoiY2xlYW5Db21tYW5kcyIsCn0KZnVuY3Rpb24gbWFrZS5tYWtlZmlsZUNvbmZpZ3MocHJqKQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmxvY2FsIHRvb2xzZXQgPSBwLnRvb2xzW2NmZy50b29sc2V0IG9yICJnY2MiXQppZiBub3QgdG9vbHNldCB0aGVuCmVycm9yKCJJbnZhbGlkIHRvb2xzZXQgJyIgLi4gY2ZnLnRvb2xzZXQgLi4gIiciKQplbmQKX3goJ2lmZXEgKCQoY29uZmlnKSwlcyknLCBjZmcuc2hvcnRuYW1lKQpwLmNhbGxhcnJheShtYWtlLCBtYWtlZmlsZS5lbGVtZW50cy5jb25maWd1cmF0aW9uLCBjZmcsIHRvb2xzZXQpCl9wKCdlbmRpZicpCl9wKCcnKQplbmQKZW5kCmZ1bmN0aW9uIG1ha2UubWFrZWZpbGVUYXJnZXRSdWxlcyhwcmopCl9wKCckKFRBUkdFVCk6JykKX3AoJ1x0JChCVUlMRENNRFMpJykKX3AoJycpCl9wKCdjbGVhbjonKQpfcCgnXHQkKENMRUFOQ01EUyknKQpfcCgnJykKZW5kCmZ1bmN0aW9uIG1ha2UuYnVpbGRDb21tYW5kcyhjZmcpCl9wKCcgIGRlZmluZSBCVUlMRENNRFMnKQpsb2NhbCBzdGVwcyA9IGNmZy5idWlsZGNvbW1hbmRzCmlmICNzdGVwcyA+IDAgdGhlbgpzdGVwcyA9IG9zLnRyYW5zbGF0ZUNvbW1hbmRzQW5kUGF0aHMoc3RlcHMsIGNmZy5wcm9qZWN0LmJhc2VkaXIsIGNmZy5wcm9qZWN0LmxvY2F0aW9uKQpfcCgnXHRAZWNobyBSdW5uaW5nIGJ1aWxkIGNvbW1hbmRzJykKX3AoJ1x0JXMnLCB0YWJsZS5pbXBsb2RlKHN0ZXBzLCAiIiwgIiIsICJcblx0IikpCmVuZApfcCgnICBlbmRlZicpCmVuZApmdW5jdGlvbiBtYWtlLmNsZWFuQ29tbWFuZHMoY2ZnKQpfcCgnICBkZWZpbmUgQ0xFQU5DTURTJykKbG9jYWwgc3RlcHMgPSBjZmcuY2xlYW5jb21tYW5kcwppZiAjc3RlcHMgPiAwIHRoZW4Kc3RlcHMgPSBvcy50cmFuc2xhdGVDb21tYW5kc0FuZFBhdGhzKHN0ZXBzLCBjZmcucHJvamVjdC5iYXNlZGlyLCBjZmcucHJvamVjdC5sb2NhdGlvbikKX3AoJ1x0QGVjaG8gUnVubmluZyBjbGVhbiBjb21tYW5kcycpCl9wKCdcdCVzJywgdGFibGUuaW1wbG9kZShzdGVwcywgIiIsICIiLCAiXG5cdCIpKQplbmQKX3AoJyAgZW5kZWYnKQplbmQKAABsb2NhbCBwID0gcHJlbWFrZQpwLm1ha2UudXRpbGl0eSA9IHt9CmxvY2FsIG1ha2UgICAgICAgPSBwLm1ha2UKbG9jYWwgdXRpbGl0eSAgICA9IHAubWFrZS51dGlsaXR5CmxvY2FsIHByb2plY3QgICAgPSBwLnByb2plY3QKbG9jYWwgY29uZmlnICAgICA9IHAuY29uZmlnCmxvY2FsIGZpbGVjb25maWcgPSBwLmZpbGVjb25maWcKdXRpbGl0eS5lbGVtZW50cyA9IHt9CnV0aWxpdHkuZWxlbWVudHMubWFrZWZpbGUgPSB7CiJoZWFkZXIiLAoicGhvbnlSdWxlcyIsCiJ1dGlsaXR5Q29uZmlncyIsCiJ1dGlsaXR5VGFyZ2V0UnVsZXMiCn0KZnVuY3Rpb24gbWFrZS51dGlsaXR5LmdlbmVyYXRlKHByaikKcC5lb2woIlxuIikKcC5jYWxsYXJyYXkobWFrZSwgdXRpbGl0eS5lbGVtZW50cy5tYWtlZmlsZSwgcHJqKQplbmQKdXRpbGl0eS5lbGVtZW50cy5jb25maWd1cmF0aW9uID0gewoidGFyZ2V0IiwKInByZUJ1aWxkQ21kcyIsCiJwb3N0QnVpbGRDbWRzIiwKfQpmdW5jdGlvbiBtYWtlLnV0aWxpdHlDb25maWdzKHByaikKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpsb2NhbCB0b29sc2V0ID0gcC50b29sc1tjZmcudG9vbHNldCBvciAiZ2NjIl0KaWYgbm90IHRvb2xzZXQgdGhlbgplcnJvcigiSW52YWxpZCB0b29sc2V0ICciIC4uIGNmZy50b29sc2V0IC4uICInIikKZW5kCl94KCdpZmVxICgkKGNvbmZpZyksJXMpJywgY2ZnLnNob3J0bmFtZSkKcC5jYWxsYXJyYXkobWFrZSwgdXRpbGl0eS5lbGVtZW50cy5jb25maWd1cmF0aW9uLCBjZmcsIHRvb2xzZXQpCl9wKCdlbmRpZicpCl9wKCcnKQplbmQKZW5kCmZ1bmN0aW9uIG1ha2UudXRpbGl0eVRhcmdldFJ1bGVzKHByaikKX3AoJyQoVEFSR0VUKTonKQpfcCgnXHQkKFBSRUJVSUxEQ01EUyknKQpfcCgnXHQkKFBPU1RCVUlMRENNRFMpJykKX3AoJycpCmVuZAoAAAAAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgbWFrZSA9IHAubWFrZQpsb2NhbCB0cmVlID0gcC50cmVlCmxvY2FsIHByb2plY3QgPSBwLnByb2plY3QKZnVuY3Rpb24gbWFrZS5nZW5lcmF0ZV93b3Jrc3BhY2Uod2tzKQpwLmVvbCgiXG4iKQptYWtlLmhlYWRlcih3a3MpCm1ha2UuY29uZmlnbWFwKHdrcykKbWFrZS5wcm9qZWN0cyh3a3MpCm1ha2Uud29ya3NwYWNlUGhvbnlSdWxlKHdrcykKbWFrZS5ncm91cFJ1bGVzKHdrcykKbWFrZS5wcm9qZWN0cnVsZXMod2tzKQptYWtlLmNsZWFucnVsZXMod2tzKQptYWtlLmhlbHBydWxlKHdrcykKZW5kCmZ1bmN0aW9uIG1ha2UuY29uZmlnbWFwKHdrcykKZm9yIGNmZyBpbiBwLndvcmtzcGFjZS5lYWNoY29uZmlnKHdrcykgZG8KX3AoJ2lmZXEgKCQoY29uZmlnKSwlcyknLCBjZmcuc2hvcnRuYW1lKQpmb3IgcHJqIGluIHAud29ya3NwYWNlLmVhY2hwcm9qZWN0KHdrcykgZG8KbG9jYWwgcHJqY2ZnID0gcHJvamVjdC5nZXRjb25maWcocHJqLCBjZmcuYnVpbGRjZmcsIGNmZy5wbGF0Zm9ybSkKaWYgcHJqY2ZnIHRoZW4KX3AoJyAgJXNfY29uZmlnID0gJXMnLCBtYWtlLnRvdmFyKHByai5uYW1lKSwgcHJqY2ZnLnNob3J0bmFtZSkKZW5kCmVuZApfcCgnZW5kaWYnKQplbmQKX3AoJycpCmVuZApmdW5jdGlvbiBtYWtlLmNsZWFucnVsZXMod2tzKQpfcCgnY2xlYW46JykKZm9yIHByaiBpbiBwLndvcmtzcGFjZS5lYWNocHJvamVjdCh3a3MpIGRvCmxvY2FsIHByanBhdGggPSBwLmZpbGVuYW1lKHByaiwgbWFrZS5nZXRtYWtlZmlsZW5hbWUocHJqLCB0cnVlKSkKbG9jYWwgcHJqZGlyID0gcGF0aC5nZXRkaXJlY3RvcnkocGF0aC5nZXRyZWxhdGl2ZSh3a3MubG9jYXRpb24sIHByanBhdGgpKQpsb2NhbCBwcmpuYW1lID0gcGF0aC5nZXRuYW1lKHByanBhdGgpCl94KDEsJ0Ake01BS0V9IC0tbm8tcHJpbnQtZGlyZWN0b3J5IC1DICVzIC1mICVzIGNsZWFuJywgcHJqZGlyLCBwcmpuYW1lKQplbmQKX3AoJycpCmVuZApmdW5jdGlvbiBtYWtlLmhlbHBydWxlKHdrcykKX3AoJ2hlbHA6JykKX3AoMSwnQGVjaG8gIlVzYWdlOiBtYWtlIFtjb25maWc9bmFtZV0gW3RhcmdldF0iJykKX3AoMSwnQGVjaG8gIiInKQpfcCgxLCdAZWNobyAiQ09ORklHVVJBVElPTlM6IicpCmZvciBjZmcgaW4gcC53b3Jrc3BhY2UuZWFjaGNvbmZpZyh3a3MpIGRvCl94KDEsICdAZWNobyAiICAlcyInLCBjZmcuc2hvcnRuYW1lKQplbmQKX3AoMSwnQGVjaG8gIiInKQpfcCgxLCdAZWNobyAiVEFSR0VUUzoiJykKX3AoMSwnQGVjaG8gIiAgIGFsbCAoZGVmYXVsdCkiJykKX3AoMSwnQGVjaG8gIiAgIGNsZWFuIicpCmZvciBwcmogaW4gcC53b3Jrc3BhY2UuZWFjaHByb2plY3Qod2tzKSBkbwpfcCgxLCdAZWNobyAiICAgJXMiJywgcHJqLm5hbWUpCmVuZApfcCgxLCdAZWNobyAiIicpCl9wKDEsJ0BlY2hvICJGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIGh0dHA6Ly9pbmR1c3RyaW91c29uZS5jb20vcHJlbWFrZS9xdWljay1zdGFydCInKQplbmQKZnVuY3Rpb24gbWFrZS5wcm9qZWN0cyh3a3MpCl9wKCdQUk9KRUNUUyA6PSAlcycsIHRhYmxlLmNvbmNhdChwLmVzYyh0YWJsZS5leHRyYWN0KHdrcy5wcm9qZWN0cywgIm5hbWUiKSksICIgIikpCl9wKCcnKQplbmQKZnVuY3Rpb24gbWFrZS53b3Jrc3BhY2VQaG9ueVJ1bGUod2tzKQpsb2NhbCBncm91cHMgPSB7fQpsb2NhbCB0ciA9IHAud29ya3NwYWNlLmdyb3VwdHJlZSh3a3MpCnRyZWUudHJhdmVyc2UodHIsIHsKb25icmFuY2ggPSBmdW5jdGlvbihuKQp0YWJsZS5pbnNlcnQoZ3JvdXBzLCBuLnBhdGgpCmVuZAp9KQpfcCgnLlBIT05ZOiBhbGwgY2xlYW4gaGVscCAkKFBST0pFQ1RTKSAnIC4uIHRhYmxlLmltcGxvZGUoZ3JvdXBzLCAnJywgJycsICcgJykpCl9wKCcnKQpfcCgnYWxsOiAkKFBST0pFQ1RTKScpCl9wKCcnKQplbmQKZnVuY3Rpb24gbWFrZS5ncm91cFJ1bGVzKHdrcykKbG9jYWwgdHIgPSBwLndvcmtzcGFjZS5ncm91cHRyZWUod2tzKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9uYnJhbmNoID0gZnVuY3Rpb24obikKbG9jYWwgcnVsZSA9IG4ucGF0aCAuLiAiOiIKbG9jYWwgcHJvamVjdFRhcmdldHMgPSB7fQpsb2NhbCBncm91cFRhcmdldHMgPSB7fQpmb3IgaSwgYyBpbiBwYWlycyhuLmNoaWxkcmVuKQpkbwppZiB0eXBlKGkpID09ICJzdHJpbmciCnRoZW4KaWYgYy5wcm9qZWN0CnRoZW4KdGFibGUuaW5zZXJ0KHByb2plY3RUYXJnZXRzLCBjLm5hbWUpCmVsc2UKdGFibGUuaW5zZXJ0KGdyb3VwVGFyZ2V0cywgYy5wYXRoKQplbmQKZW5kCmVuZAppZiAjZ3JvdXBUYXJnZXRzID4gMCB0aGVuCnRhYmxlLnNvcnQoZ3JvdXBUYXJnZXRzKQpydWxlID0gcnVsZSAuLiAiICIgLi4gdGFibGUuY29uY2F0KGdyb3VwVGFyZ2V0cywgIiAiKQplbmQKaWYgI3Byb2plY3RUYXJnZXRzID4gMCB0aGVuCnRhYmxlLnNvcnQocHJvamVjdFRhcmdldHMpCnJ1bGUgPSBydWxlIC4uICIgIiAuLiB0YWJsZS5jb25jYXQocHJvamVjdFRhcmdldHMsICIgIikKZW5kCl9wKHJ1bGUpCl9wKCcnKQplbmQKfSkKZW5kCmZ1bmN0aW9uIG1ha2UucHJvamVjdHJ1bGVzKHdrcykKZm9yIHByaiBpbiBwLndvcmtzcGFjZS5lYWNocHJvamVjdCh3a3MpIGRvCmxvY2FsIGRlcHMgPSBwcm9qZWN0LmdldGRlcGVuZGVuY2llcyhwcmopCmRlcHMgPSB0YWJsZS5leHRyYWN0KGRlcHMsICJuYW1lIikKX3AoJyVzOiVzJywgcC5lc2MocHJqLm5hbWUpLCBtYWtlLmxpc3QoZGVwcykpCmxvY2FsIGNmZ3ZhciA9IG1ha2UudG92YXIocHJqLm5hbWUpCl9wKCdpZm5lcSAoLCQoJXNfY29uZmlnKSknLCBjZmd2YXIpCl9wKDEsJ0BlY2hvICI9PT09IEJ1aWxkaW5nICVzICgkKCVzX2NvbmZpZykpID09PT0iJywgcHJqLm5hbWUsIGNmZ3ZhcikKbG9jYWwgcHJqcGF0aCA9IHAuZmlsZW5hbWUocHJqLCBtYWtlLmdldG1ha2VmaWxlbmFtZShwcmosIHRydWUpKQpsb2NhbCBwcmpkaXIgPSBwYXRoLmdldGRpcmVjdG9yeShwYXRoLmdldHJlbGF0aXZlKHdrcy5sb2NhdGlvbiwgcHJqcGF0aCkpCmxvY2FsIHByam5hbWUgPSBwYXRoLmdldG5hbWUocHJqcGF0aCkKX3goMSwnQCR7TUFLRX0gLS1uby1wcmludC1kaXJlY3RvcnkgLUMgJXMgLWYgJXMgY29uZmlnPSQoJXNfY29uZmlnKScsIHByamRpciwgcHJqbmFtZSwgY2ZndmFyKQpfcCgnZW5kaWYnKQpfcCgnJykKZW5kCmVuZAoAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApuZXdhY3Rpb24gewp0cmlnZ2VyICAgICAgICAgPSAiZ21ha2UyIiwKc2hvcnRuYW1lICAgICAgID0gIkFsdGVybmF0aXZlIEdOVSBNYWtlIiwKZGVzY3JpcHRpb24gICAgID0gIkdlbmVyYXRlIEdOVSBtYWtlZmlsZXMgZm9yIFBPU0lYLCBNaW5HVywgYW5kIEN5Z3dpbiIsCnZhbGlkX2tpbmRzICAgICA9IHsgIkNvbnNvbGVBcHAiLCAiV2luZG93ZWRBcHAiLCAiU3RhdGljTGliIiwgIlNoYXJlZExpYiIsICJVdGlsaXR5IiwgIk1ha2VmaWxlIiB9LAp2YWxpZF9sYW5ndWFnZXMgPSB7ICJDIiwgIkMrKyIsICJDIyIgfSwKdmFsaWRfdG9vbHMgICAgID0gewpjYyAgICAgPSB7ICJjbGFuZyIsICJnY2MiIH0sCmRvdG5ldCA9IHsgIm1vbm8iLCAibXNuZXQiLCAicG5ldCIgfQp9LApvbkluaXRpYWxpemUgPSBmdW5jdGlvbigpCnJlcXVpcmUoImdtYWtlMiIpCnAubW9kdWxlcy5nbWFrZTIuY3BwLmluaXRpYWxpemUoKQplbmQsCm9uV29ya3NwYWNlID0gZnVuY3Rpb24od2tzKQpwLmVzY2FwZXIocC5tb2R1bGVzLmdtYWtlMi5lc2MpCnAuZ2VuZXJhdGUod2tzLCBwLm1vZHVsZXMuZ21ha2UyLmdldG1ha2VmaWxlbmFtZSh3a3MsIGZhbHNlKSwgcC5tb2R1bGVzLmdtYWtlMi5nZW5lcmF0ZV93b3Jrc3BhY2UpCmVuZCwKb25Qcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQpwLmVzY2FwZXIocC5tb2R1bGVzLmdtYWtlMi5lc2MpCmxvY2FsIG1ha2VmaWxlID0gcC5tb2R1bGVzLmdtYWtlMi5nZXRtYWtlZmlsZW5hbWUocHJqLCB0cnVlKQppZiBwcmoua2luZCA9PSBwLlVUSUxJVFkgdGhlbgpwLmdlbmVyYXRlKHByaiwgbWFrZWZpbGUsIHAubW9kdWxlcy5nbWFrZTIudXRpbGl0eS5nZW5lcmF0ZSkKZWxzZWlmIHByai5raW5kID09IHAuTUFLRUZJTEUgdGhlbgpwLmdlbmVyYXRlKHByaiwgbWFrZWZpbGUsIHAubW9kdWxlcy5nbWFrZTIubWFrZWZpbGUuZ2VuZXJhdGUpCmVsc2UKaWYgcHJvamVjdC5pc2RvdG5ldChwcmopIHRoZW4KcC5nZW5lcmF0ZShwcmosIG1ha2VmaWxlLCBwLm1vZHVsZXMuZ21ha2UyLmNzLmdlbmVyYXRlKQplbHNlaWYgcHJvamVjdC5pc2MocHJqKSBvciBwcm9qZWN0LmlzY3BwKHByaikgdGhlbgpwLmdlbmVyYXRlKHByaiwgbWFrZWZpbGUsIHAubW9kdWxlcy5nbWFrZTIuY3BwLmdlbmVyYXRlKQplbmQKZW5kCmVuZCwKb25DbGVhbldvcmtzcGFjZSA9IGZ1bmN0aW9uKHdrcykKcC5jbGVhbi5maWxlKHdrcywgcC5tb2R1bGVzLmdtYWtlMi5nZXRtYWtlZmlsZW5hbWUod2tzLCBmYWxzZSkpCmVuZCwKb25DbGVhblByb2plY3QgPSBmdW5jdGlvbihwcmopCnAuY2xlYW4uZmlsZShwcmosIHAubW9kdWxlcy5nbWFrZTIuZ2V0bWFrZWZpbGVuYW1lKHByaiwgdHJ1ZSkpCmVuZAp9CnJldHVybiBmdW5jdGlvbihjZmcpCnJldHVybiAoX0FDVElPTiA9PSAiZ21ha2UyIikKZW5kCgAAAAAAAGxvY2FsIHAgICAgICAgPSBwcmVtYWtlCmxvY2FsIHByb2plY3QgPSBwLnByb2plY3QKcC5tb2R1bGVzLmdtYWtlMiA9IHt9CnAubW9kdWxlcy5nbWFrZTIuX1ZFUlNJT04gPSBwLl9WRVJTSU9OCmxvY2FsIGdtYWtlMiA9IHAubW9kdWxlcy5nbWFrZTIKZnVuY3Rpb24gZ21ha2UyLmRlZmF1bHRjb25maWcodGFyZ2V0KQpsb2NhbCBlYWNoY29uZmlnID0gaWlmKHRhcmdldC5wcm9qZWN0LCBwcm9qZWN0LmVhY2hjb25maWcsIHAud29ya3NwYWNlLmVhY2hjb25maWcpCmxvY2FsIGl0ZXIgPSBlYWNoY29uZmlnKHRhcmdldCkKbG9jYWwgY2ZnID0gaXRlcigpCmlmIGNmZyB0aGVuCl9wKCdpZm5kZWYgY29uZmlnJykKX3goJyAgY29uZmlnPSVzJywgY2ZnLnNob3J0bmFtZSkKX3AoJ2VuZGlmJykKX3AoJycpCmVuZAplbmQKZnVuY3Rpb24gZ21ha2UyLmVzYyh2YWx1ZSkKcmVzdWx0ID0gdmFsdWU6Z3N1YigiXFwiLCAiXFxcXCIpCnJlc3VsdCA9IHJlc3VsdDpnc3ViKCJcIiIsICJcXFwiIikKcmVzdWx0ID0gcmVzdWx0OmdzdWIoIiAiLCAiXFwgIikKcmVzdWx0ID0gcmVzdWx0OmdzdWIoIiUoIiwgIlxcKCIpCnJlc3VsdCA9IHJlc3VsdDpnc3ViKCIlKSIsICJcXCkiKQpyZXN1bHQgPSByZXN1bHQ6Z3N1YigiJFxcJSgoLi0pXFwlKSIsICIkKCUxKSIpCnJldHVybiByZXN1bHQKZW5kCmZ1bmN0aW9uIGdtYWtlMi5nZXRtYWtlZmlsZW5hbWUodGhpcywgc2VhcmNocHJqcykKbG9jYWwgY291bnQgPSAwCmZvciB3a3MgaW4gcC5nbG9iYWwuZWFjaFdvcmtzcGFjZSgpIGRvCmlmIHdrcy5sb2NhdGlvbiA9PSB0aGlzLmxvY2F0aW9uIHRoZW4KY291bnQgPSBjb3VudCArIDEKZW5kCmlmIHNlYXJjaHByanMgdGhlbgpmb3IgXywgcHJqIGluIGlwYWlycyh3a3MucHJvamVjdHMpIGRvCmlmIHByai5sb2NhdGlvbiA9PSB0aGlzLmxvY2F0aW9uIHRoZW4KY291bnQgPSBjb3VudCArIDEKZW5kCmVuZAplbmQKZW5kCmlmIGNvdW50ID09IDEgdGhlbgpyZXR1cm4gIk1ha2VmaWxlIgplbHNlCnJldHVybiAiLm1ha2UiCmVuZAplbmQKZnVuY3Rpb24gZ21ha2UyLmhlYWRlcih0YXJnZXQpCmxvY2FsIGtpbmQgPSBpaWYodGFyZ2V0LnByb2plY3QsICJwcm9qZWN0IiwgIndvcmtzcGFjZSIpCl9wKCcjICVzICVzIG1ha2VmaWxlIGF1dG9nZW5lcmF0ZWQgYnkgUHJlbWFrZScsIHAuYWN0aW9uLmN1cnJlbnQoKS5zaG9ydG5hbWUsIGtpbmQpCl9wKCcnKQppZiBraW5kID09ICJ3b3Jrc3BhY2UiIHRoZW4KbG9jYWwgaGFzcGNoID0gZmFsc2UKZm9yIF8sIHByaiBpbiBpcGFpcnModGFyZ2V0LnByb2plY3RzKSBkbwpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmlmIGNmZy5wY2hoZWFkZXIgdGhlbgpoYXNwY2ggPSB0cnVlCmVuZAplbmQKZW5kCmlmIGhhc3BjaCB0aGVuCl9wKCcuTk9UUEFSQUxMRUw6JykKX3AoJycpCmVuZAplbmQKZ21ha2UyLmRlZmF1bHRjb25maWcodGFyZ2V0KQpfcCgnaWZuZGVmIHZlcmJvc2UnKQpfcCgnICBTSUxFTlQgPSBAJykKX3AoJ2VuZGlmJykKX3AoJycpCmVuZApmdW5jdGlvbiBnbWFrZTIubWtkaXIoZGlybmFtZSkKX3AoJ2lmZXEgKHBvc2l4LCQoU0hFTExUWVBFKSknKQpfcCgnXHQkKFNJTEVOVCkgbWtkaXIgLXAgJXMnLCBkaXJuYW1lKQpfcCgnZWxzZScpCl9wKCdcdCQoU0lMRU5UKSBta2RpciAkKHN1YnN0IC8sXFxcXCwlcyknLCBkaXJuYW1lKQpfcCgnZW5kaWYnKQplbmQKZnVuY3Rpb24gZ21ha2UyLm1rZGlyUnVsZXMoZGlybmFtZSkKX3AoJyVzOicsIGRpcm5hbWUpCl9wKCdcdEBlY2hvIENyZWF0aW5nICVzJywgZGlybmFtZSkKZ21ha2UyLm1rZGlyKGRpcm5hbWUpCl9wKCcnKQplbmQKZnVuY3Rpb24gZ21ha2UyLmxpc3QodmFsdWUsIHF1b3RlZCkKcXVvdGVkID0gZmFsc2UKaWYgI3ZhbHVlID4gMCB0aGVuCmlmIHF1b3RlZCB0aGVuCmxvY2FsIHJlc3VsdCA9ICIiCmZvciBfLCB2IGluIGlwYWlycyAodmFsdWUpIGRvCmlmICNyZXN1bHQgdGhlbgpyZXN1bHQgPSByZXN1bHQgLi4gIiAiCmVuZApyZXN1bHQgPSByZXN1bHQgLi4gcC5xdW90ZWQodikKZW5kCnJldHVybiByZXN1bHQKZWxzZQpyZXR1cm4gIiAiIC4uIHRhYmxlLmNvbmNhdCh2YWx1ZSwgIiAiKQplbmQKZWxzZQpyZXR1cm4gIiIKZW5kCmVuZApmdW5jdGlvbiBnbWFrZTIudG92YXIodmFsdWUpCnZhbHVlID0gdmFsdWU6Z3N1YigiWyAtXSIsICJfIikKdmFsdWUgPSB2YWx1ZTpnc3ViKCJbKCldIiwgIiIpCnJldHVybiB2YWx1ZQplbmQKZnVuY3Rpb24gZ21ha2UyLnBhdGgoY2ZnLCB2YWx1ZSkKY2ZnID0gY2ZnLnByb2plY3Qgb3IgY2ZnCmxvY2FsIGRpcnMgPSBwYXRoLnRyYW5zbGF0ZShwcm9qZWN0LmdldHJlbGF0aXZlKGNmZywgdmFsdWUpKQppZiB0eXBlKGRpcnMpID09ICd0YWJsZScgdGhlbgpkaXJzID0gdGFibGUuZmlsdGVyZW1wdHkoZGlycykKZW5kCnJldHVybiBkaXJzCmVuZApmdW5jdGlvbiBnbWFrZTIuZ2V0VG9vbFNldChjZmcpCmxvY2FsIGRlZmF1bHQgPSBpaWYoY2ZnLnN5c3RlbSA9PSBwLk1BQ09TWCwgImNsYW5nIiwgImdjYyIpCmxvY2FsIHRvb2xzZXQgPSBwLnRvb2xzW19PUFRJT05TLmNjIG9yIGNmZy50b29sc2V0IG9yIGRlZmF1bHRdCmlmIG5vdCB0b29sc2V0IHRoZW4KZXJyb3IoIkludmFsaWQgdG9vbHNldCAnIiAuLiBjZmcudG9vbHNldCAuLiAiJyIpCmVuZApyZXR1cm4gdG9vbHNldAplbmQKZnVuY3Rpb24gZ21ha2UyLm91dHB1dFNlY3Rpb24ocHJqLCBjYWxsYmFjaykKbG9jYWwgcm9vdCA9IHt9CmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgdG9vbHNldCA9IGdtYWtlMi5nZXRUb29sU2V0KGNmZykKbG9jYWwgc2V0dGluZ3MgPSB7fQpsb2NhbCBmdW5jcyA9IGNhbGxiYWNrKGNmZykKZm9yIGkgPSAxLCAjZnVuY3MgZG8KbG9jYWwgYyA9IHAuY2FwdHVyZShmdW5jdGlvbiAoKQpmdW5jc1tpXShjZmcsIHRvb2xzZXQpCmVuZCkKaWYgI2MgPiAwIHRoZW4KdGFibGUuaW5zZXJ0KHNldHRpbmdzLCBjKQplbmQKZW5kCmlmIG5vdCByb290LnNldHRpbmdzIHRoZW4Kcm9vdC5zZXR0aW5ncyA9IHRhYmxlLmFycmF5Y29weShzZXR0aW5ncykKZWxzZQpyb290LnNldHRpbmdzID0gdGFibGUuaW50ZXJzZWN0KHJvb3Quc2V0dGluZ3MsIHNldHRpbmdzKQplbmQKcm9vdFtjZmddID0gc2V0dGluZ3MKZW5kCmlmICNyb290LnNldHRpbmdzID4gMCB0aGVuCmZvciBfLCB2IGluIGlwYWlycyhyb290LnNldHRpbmdzKSBkbwpwLm91dGxuKHYpCmVuZApwLm91dGxuKCcnKQplbmQKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpsb2NhbCBzZXR0aW5ncyA9IHRhYmxlLmRpZmZlcmVuY2Uocm9vdFtjZmddLCByb290LnNldHRpbmdzKQppZiAjc2V0dGluZ3MgPiAwIHRoZW4KX3goJ2lmZXEgKCQoY29uZmlnKSwlcyknLCBjZmcuc2hvcnRuYW1lKQpmb3IgaywgdiBpbiBpcGFpcnMoc2V0dGluZ3MpIGRvCnAub3V0bG4odikKZW5kCnAub3V0bG4oJ2VuZGlmJykKcC5vdXRsbignJykKZW5kCmVuZAplbmQKZnVuY3Rpb24gZ21ha2UyLnBob255UnVsZXMocHJqKQpfcCgnLlBIT05ZOiBjbGVhbiBwcmVidWlsZCBwcmVsaW5rJykKX3AoJycpCmVuZApmdW5jdGlvbiBnbWFrZTIuc2hlbGxUeXBlKCkKX3AoJ1NIRUxMVFlQRSA6PSBtc2RvcycpCl9wKCdpZmVxICgsJChDb21TcGVjKSQoQ09NU1BFQykpJykKX3AoJyAgU0hFTExUWVBFIDo9IHBvc2l4JykKX3AoJ2VuZGlmJykKX3AoJ2lmZXEgKC9iaW4sJChmaW5kc3RyaW5nIC9iaW4sJChTSEVMTCkpKScpCl9wKCcgIFNIRUxMVFlQRSA6PSBwb3NpeCcpCl9wKCdlbmRpZicpCl9wKCcnKQplbmQKZnVuY3Rpb24gZ21ha2UyLnRhcmdldChjZmcsIHRvb2xzZXQpCnAub3V0bG4oJ1RBUkdFVERJUiA9ICcgLi4gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgY2ZnLmJ1aWxkdGFyZ2V0LmRpcmVjdG9yeSkpCnAub3V0bG4oJ1RBUkdFVCA9ICQoVEFSR0VURElSKS8nIC4uIGNmZy5idWlsZHRhcmdldC5uYW1lKQplbmQKZnVuY3Rpb24gZ21ha2UyLm9iamRpcihjZmcsIHRvb2xzZXQpCnAub3V0bG4oJ09CSkRJUiA9ICcgLi4gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgY2ZnLm9iamRpcikpCmVuZApmdW5jdGlvbiBnbWFrZTIuc2V0dGluZ3MoY2ZnLCB0b29sc2V0KQppZiAjY2ZnLm1ha2VzZXR0aW5ncyA+IDAgdGhlbgpmb3IgXywgdmFsdWUgaW4gaXBhaXJzKGNmZy5tYWtlc2V0dGluZ3MpIGRvCnAub3V0bG4odmFsdWUpCmVuZAplbmQKbG9jYWwgdmFsdWUgPSB0b29sc2V0LmdldG1ha2VzZXR0aW5ncyhjZmcpCmlmIHZhbHVlIHRoZW4KcC5vdXRsbih2YWx1ZSkKZW5kCmVuZApmdW5jdGlvbiBnbWFrZTIuYnVpbGRDbWRzKGNmZywgZXZlbnQpCl9wKCdkZWZpbmUgJXNDTURTJywgZXZlbnQ6dXBwZXIoKSkKbG9jYWwgc3RlcHMgPSBjZmdbZXZlbnQgLi4gImNvbW1hbmRzIl0KbG9jYWwgbXNnID0gY2ZnW2V2ZW50IC4uICJtZXNzYWdlIl0KaWYgI3N0ZXBzID4gMCB0aGVuCnN0ZXBzID0gb3MudHJhbnNsYXRlQ29tbWFuZHNBbmRQYXRocyhzdGVwcywgY2ZnLnByb2plY3QuYmFzZWRpciwgY2ZnLnByb2plY3QubG9jYXRpb24pCm1zZyA9IG1zZyBvciBzdHJpbmcuZm9ybWF0KCJSdW5uaW5nICVzIGNvbW1hbmRzIiwgZXZlbnQpCl9wKCdcdEBlY2hvICVzJywgbXNnKQpfcCgnXHQlcycsIHRhYmxlLmltcGxvZGUoc3RlcHMsICIiLCAiIiwgIlxuXHQiKSkKZW5kCl9wKCdlbmRlZicpCmVuZApmdW5jdGlvbiBnbWFrZTIucHJlQnVpbGRDbWRzKGNmZywgdG9vbHNldCkKZ21ha2UyLmJ1aWxkQ21kcyhjZmcsICJwcmVidWlsZCIpCmVuZApmdW5jdGlvbiBnbWFrZTIucHJlTGlua0NtZHMoY2ZnLCB0b29sc2V0KQpnbWFrZTIuYnVpbGRDbWRzKGNmZywgInByZWxpbmsiKQplbmQKZnVuY3Rpb24gZ21ha2UyLnBvc3RCdWlsZENtZHMoY2ZnLCB0b29sc2V0KQpnbWFrZTIuYnVpbGRDbWRzKGNmZywgInBvc3RidWlsZCIpCmVuZApmdW5jdGlvbiBnbWFrZTIudGFyZ2V0RGlyUnVsZXMoY2ZnLCB0b29sc2V0KQpnbWFrZTIubWtkaXJSdWxlcygiJChUQVJHRVRESVIpIikKZW5kCmZ1bmN0aW9uIGdtYWtlMi5vYmpEaXJSdWxlcyhjZmcsIHRvb2xzZXQpCmdtYWtlMi5ta2RpclJ1bGVzKCIkKE9CSkRJUikiKQplbmQKZnVuY3Rpb24gZ21ha2UyLnByZUJ1aWxkUnVsZXMoY2ZnLCB0b29sc2V0KQpfcCgncHJlYnVpbGQ6JykKX3AoJ1x0JChQUkVCVUlMRENNRFMpJykKX3AoJycpCmVuZApmdW5jdGlvbiBnbWFrZTIucHJlTGlua1J1bGVzKGNmZywgdG9vbHNldCkKX3AoJ3ByZWxpbms6JykKX3AoJ1x0JChQUkVMSU5LQ01EUyknKQpfcCgnJykKZW5kCmluY2x1ZGUoImdtYWtlMl9jcHAubHVhIikKaW5jbHVkZSgiZ21ha2UyX2NzaGFycC5sdWEiKQppbmNsdWRlKCJnbWFrZTJfbWFrZWZpbGUubHVhIikKaW5jbHVkZSgiZ21ha2UyX3V0aWxpdHkubHVhIikKaW5jbHVkZSgiZ21ha2UyX3dvcmtzcGFjZS5sdWEiKQpyZXR1cm4gZ21ha2UyCgAAAGxvY2FsIHAgPSBwcmVtYWtlCmxvY2FsIGdtYWtlMiA9IHAubW9kdWxlcy5nbWFrZTIKZ21ha2UyLmNwcCAgICAgICA9IHt9CmxvY2FsIGNwcCAgICAgICAgPSBnbWFrZTIuY3BwCmxvY2FsIHByb2plY3QgICAgPSBwLnByb2plY3QKbG9jYWwgY29uZmlnICAgICA9IHAuY29uZmlnCmxvY2FsIGZpbGVjb25maWcgPSBwLmZpbGVjb25maWcKY3BwLmVsZW1lbnRzID0ge30KY3BwLmVsZW1lbnRzLm1ha2VmaWxlID0gZnVuY3Rpb24ocHJqKQpyZXR1cm4gewpnbWFrZTIuaGVhZGVyLApnbWFrZTIucGhvbnlSdWxlcywKZ21ha2UyLnNoZWxsVHlwZSwKY3BwLmNyZWF0ZVJ1bGVUYWJsZSwKY3BwLm91dHB1dENvbmZpZ3VyYXRpb25TZWN0aW9uLApjcHAub3V0cHV0UGVyRmlsZUNvbmZpZ3VyYXRpb25TZWN0aW9uLApjcHAuY3JlYXRlRmlsZVRhYmxlLApjcHAub3V0cHV0RmlsZXNTZWN0aW9uLApjcHAub3V0cHV0UnVsZXNTZWN0aW9uLApjcHAub3V0cHV0RmlsZVJ1bGVTZWN0aW9uLApjcHAuZGVwZW5kZW5jaWVzLAp9CmVuZApmdW5jdGlvbiBjcHAuZ2VuZXJhdGUocHJqKQpwLmVvbCgiXG4iKQpwLmNhbGxBcnJheShjcHAuZWxlbWVudHMubWFrZWZpbGUsIHByaikKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpjZmcuX2dtYWtlID0gbmlsCmVuZApwcmouX2dtYWtlID0gbmlsCmVuZApmdW5jdGlvbiBjcHAuaW5pdGlhbGl6ZSgpCnJ1bGUgJ2NwcCcKZmlsZUV4dGVuc2lvbiB7Ii5jYyIsICIuY3BwIiwgIi5jeHgiLCAiLm1tIn0KYnVpbGRvdXRwdXRzICB7JyQoT0JKRElSKS8le2ZpbGUub2JqbmFtZX0ubyd9CmJ1aWxkbWVzc2FnZSAgJyQobm90ZGlyICQ8KScKYnVpbGRjb21tYW5kcyB7JyQoQ1hYKSAkKCV7cHJlbWFrZS5tb2R1bGVzLmdtYWtlMi5jcHAuZmlsZUZsYWdzKGNmZywgZmlsZSl9KSAkKEZPUkNFX0lOQ0xVREUpIC1vICIkQCIgLU1GICIkKEA6JS5vPSUuZCkiIC1jICIkPCInfQpydWxlICdjYycKZmlsZUV4dGVuc2lvbiB7Ii5jIiwgIi5zIiwgIi5tIn0KYnVpbGRvdXRwdXRzICB7JyQoT0JKRElSKS8le2ZpbGUub2JqbmFtZX0ubyd9CmJ1aWxkbWVzc2FnZSAgJyQobm90ZGlyICQ8KScKYnVpbGRjb21tYW5kcyB7JyQoQ0MpICQoJXtwcmVtYWtlLm1vZHVsZXMuZ21ha2UyLmNwcC5maWxlRmxhZ3MoY2ZnLCBmaWxlKX0pICQoRk9SQ0VfSU5DTFVERSkgLW8gIiRAIiAtTUYgIiQoQDolLm89JS5kKSIgLWMgIiQ8Iid9CnJ1bGUgJ3Jlc291cmNlJwpmaWxlRXh0ZW5zaW9uICIucmMiCmJ1aWxkb3V0cHV0cyAgeyckKE9CSkRJUikvJXtmaWxlLm9iam5hbWV9LnJlcyd9CmJ1aWxkbWVzc2FnZSAgJyQobm90ZGlyICQ8KScKYnVpbGRjb21tYW5kcyB7JyQoUkVTQ09NUCkgJDwgLU8gY29mZiAtbyAiJEAiICQoQUxMX1JFU0ZMQUdTKSd9Cmdsb2JhbChuaWwpCmVuZApmdW5jdGlvbiBjcHAuY3JlYXRlUnVsZVRhYmxlKHByaikKbG9jYWwgcnVsZXMgPSB7fQpsb2NhbCBmdW5jdGlvbiBhZGRSdWxlKGV4dGVuc2lvbiwgcnVsZSkKaWYgdHlwZShleHRlbnNpb24pID09ICd0YWJsZScgdGhlbgpmb3IgXywgdmFsdWUgaW4gaXBhaXJzKGV4dGVuc2lvbikgZG8KYWRkUnVsZSh2YWx1ZSwgcnVsZSkKZW5kCmVsc2UKcnVsZXNbZXh0ZW5zaW9uXSA9IHJ1bGUKZW5kCmVuZApsb2NhbCB1c2VkUnVsZXMgPSB0YWJsZS5qb2luKHsnY3BwJywgJ2NjJywgJ3Jlc291cmNlJ30sIHByai5ydWxlcykKZm9yIF8sIG5hbWUgaW4gaXBhaXJzKHVzZWRSdWxlcykgZG8KbG9jYWwgcnVsZSA9IHAuZ2xvYmFsLmdldFJ1bGUobmFtZSkKYWRkUnVsZShydWxlLmZpbGVFeHRlbnNpb24sIHJ1bGUpCmVuZApsb2NhbCBmaWxlc2V0cyA9IHsKWycubyddICAgPSAnT0JKRUNUUycsClsnLm9iaiddID0gJ09CSkVDVFMnLApbJy5jYyddICA9ICdTT1VSQ0VTJywKWycuY3BwJ10gPSAnU09VUkNFUycsClsnLmN4eCddID0gJ1NPVVJDRVMnLApbJy5tbSddICA9ICdTT1VSQ0VTJywKWycuYyddICAgPSAnU09VUkNFUycsClsnLnMnXSAgID0gJ1NPVVJDRVMnLApbJy5tJ10gICA9ICdTT1VSQ0VTJywKWycucmMnXSAgPSAnUkVTT1VSQ0VTJywKfQpwcmouX2dtYWtlID0gcHJqLl9nbWFrZSBvciB7fQpwcmouX2dtYWtlLnJ1bGVzID0gcnVsZXMKcHJqLl9nbWFrZS5maWxlc2V0cyA9IGZpbGVzZXRzCmVuZApmdW5jdGlvbiBjcHAuY3JlYXRlRmlsZVRhYmxlKHByaikKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpjZmcuX2dtYWtlID0gY2ZnLl9nbWFrZSBvciB7fQpjZmcuX2dtYWtlLmZpbGVzZXRzID0ge30KY2ZnLl9nbWFrZS5maWxlUnVsZXMgPSB7fQpsb2NhbCBmaWxlcyA9IHRhYmxlLnNoYWxsb3djb3B5KHByai5fLmZpbGVzKQp0YWJsZS5mb3JlYWNoaShmaWxlcywgZnVuY3Rpb24obm9kZSkKY3BwLmFkZEZpbGUoY2ZnLCBub2RlKQplbmQpCmZvciBfLCBmIGluIHBhaXJzKGNmZy5fZ21ha2UuZmlsZXNldHMpIGRvCnRhYmxlLnNvcnQoZikKZW5kCmNmZy5fZ21ha2Uua2luZHMgPSB0YWJsZS5rZXlzKGNmZy5fZ21ha2UuZmlsZXNldHMpCnRhYmxlLnNvcnQoY2ZnLl9nbWFrZS5raW5kcykKcHJqLl9nbWFrZS5raW5kcyA9IHRhYmxlLmpvaW4ocHJqLl9nbWFrZS5raW5kcyBvciB7fSwgY2ZnLl9nbWFrZS5raW5kcykKZW5kCmlmIHByai5oYXNHZW5lcmF0ZWRGaWxlcyBhbmQgcC5wcm9qZWN0LmlzY3BwKHByaikgdGhlbgpwLm92ZW4uYXNzaWduT2JqZWN0U2VxdWVuY2VzKHByaikKZW5kCnByai5fZ21ha2Uua2luZHMgPSB0YWJsZS51bmlxdWUocHJqLl9nbWFrZS5raW5kcykKdGFibGUuc29ydChwcmouX2dtYWtlLmtpbmRzKQplbmQKZnVuY3Rpb24gY3BwLmFkZEZpbGUoY2ZnLCBub2RlKQpsb2NhbCBmaWxlY2ZnID0gZmlsZWNvbmZpZy5nZXRjb25maWcobm9kZSwgY2ZnKQppZiBub3QgZmlsZWNmZyBvciBmaWxlY2ZnLmZsYWdzLkV4Y2x1ZGVGcm9tQnVpbGQgdGhlbgpyZXR1cm4KZW5kCmlmIG5vZGUuZ2VuZXJhdGVkIHRoZW4KcmV0dXJuCmVuZAppZiBmaWxlY29uZmlnLmhhc0N1c3RvbUJ1aWxkUnVsZShmaWxlY2ZnKSB0aGVuCmxvY2FsIGVudiA9IHRhYmxlLnNoYWxsb3djb3B5KGZpbGVjZmcuZW52aXJvbikKZW52LlBhdGhWYXJzID0gewpbImZpbGUuYmFzZW5hbWUiXSAgICAgPSB7IGFic29sdXRlID0gZmFsc2UsIHRva2VuID0gbm9kZS5iYXNlbmFtZSB9LApbImZpbGUuYWJzcGF0aCJdICAgICAgPSB7IGFic29sdXRlID0gdHJ1ZSwgIHRva2VuID0gbm9kZS5hYnNwYXRoIH0sClsiZmlsZS5yZWxwYXRoIl0gICAgICA9IHsgYWJzb2x1dGUgPSBmYWxzZSwgdG9rZW4gPSBub2RlLnJlbHBhdGggfSwKWyJmaWxlLm5hbWUiXSAgICAgICAgID0geyBhYnNvbHV0ZSA9IGZhbHNlLCB0b2tlbiA9IG5vZGUubmFtZSB9LApbImZpbGUub2JqbmFtZSJdICAgICAgPSB7IGFic29sdXRlID0gZmFsc2UsIHRva2VuID0gbm9kZS5vYmpuYW1lIH0sClsiZmlsZS5wYXRoIl0gICAgICAgICA9IHsgYWJzb2x1dGUgPSB0cnVlLCAgdG9rZW4gPSBub2RlLnBhdGggfSwKWyJmaWxlLmRpcmVjdG9yeSJdICAgID0geyBhYnNvbHV0ZSA9IHRydWUsICB0b2tlbiA9IHBhdGguZ2V0ZGlyZWN0b3J5KG5vZGUuYWJzcGF0aCkgfSwKWyJmaWxlLnJlbGRpcmVjdG9yeSJdID0geyBhYnNvbHV0ZSA9IGZhbHNlLCB0b2tlbiA9IHBhdGguZ2V0ZGlyZWN0b3J5KG5vZGUucmVscGF0aCkgfSwKfQpsb2NhbCBzaGFkb3dDb250ZXh0ID0gcC5jb250ZXh0LmV4dGVudChmaWxlY2ZnLCBlbnYpCmxvY2FsIGJ1aWxkb3V0cHV0cyA9IHAucHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgc2hhZG93Q29udGV4dC5idWlsZG91dHB1dHMpCmlmIGJ1aWxkb3V0cHV0cyBhbmQgI2J1aWxkb3V0cHV0cyA+IDAgdGhlbgpsb2NhbCBmaWxlID0gewpidWlsZG91dHB1dHMgID0gYnVpbGRvdXRwdXRzLApzb3VyY2UgICAgICAgID0gbm9kZS5yZWxwYXRoLApidWlsZG1lc3NhZ2UgID0gc2hhZG93Q29udGV4dC5idWlsZG1lc3NhZ2UsCmJ1aWxkY29tbWFuZHMgPSBzaGFkb3dDb250ZXh0LmJ1aWxkY29tbWFuZHMsCmJ1aWxkaW5wdXRzICAgPSBwLnByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIHNoYWRvd0NvbnRleHQuYnVpbGRpbnB1dHMpCn0KdGFibGUuaW5zZXJ0KGNmZy5fZ21ha2UuZmlsZVJ1bGVzLCBmaWxlKQpmb3IgXywgb3V0cHV0IGluIGlwYWlycyhidWlsZG91dHB1dHMpIGRvCmNwcC5hZGRHZW5lcmF0ZWRGaWxlKGNmZywgbm9kZSwgb3V0cHV0KQplbmQKZW5kCmVsc2UKY3BwLmFkZFJ1bGVGaWxlKGNmZywgbm9kZSkKZW5kCmVuZApmdW5jdGlvbiBjcHAuYWRkR2VuZXJhdGVkRmlsZShjZmcsIHNvdXJjZSwgZmlsZW5hbWUpCmNmZy5wcm9qZWN0Lmhhc0dlbmVyYXRlZEZpbGVzID0gdHJ1ZQpsb2NhbCBmaWxlcyA9IGNmZy5wcm9qZWN0Ll8uZmlsZXMKbG9jYWwgbm9kZSA9IGZpbGVzW2ZpbGVuYW1lXQppZiBub3Qgbm9kZSB0aGVuCm5vZGUgPSBmaWxlY29uZmlnLm5ldyhmaWxlbmFtZSwgY2ZnLnByb2plY3QpCmZpbGVzW2ZpbGVuYW1lXSA9IG5vZGUKdGFibGUuaW5zZXJ0KGZpbGVzLCBub2RlKQplbmQKbm9kZS5kZXBlbmRzT24gPSBzb3VyY2UKbm9kZS5nZW5lcmF0ZWQgPSB0cnVlCmlmIG5vdCBmaWxlY29uZmlnLmdldGNvbmZpZyhub2RlLCBjZmcpIHRoZW4KZmlsZWNvbmZpZy5hZGRjb25maWcobm9kZSwgY2ZnKQplbmQKbG9jYWwgZmlsZXNldHMgPSBjZmcucHJvamVjdC5fZ21ha2UuZmlsZXNldHMKbG9jYWwga2luZCAgICAgPSBmaWxlc2V0c1twYXRoLmdldGV4dGVuc2lvbihmaWxlbmFtZSk6bG93ZXIoKV0gb3IgIkNVU1RPTSIKaWYgcGF0aC5pc29iamVjdGZpbGUoZmlsZW5hbWUpIGFuZCBzb3VyY2UubGlua2J1aWxkb3V0cHV0cyA9PSBmYWxzZSB0aGVuCmtpbmQgPSAiQ1VTVE9NIgplbmQKbG9jYWwgZmlsZXNldCA9IGNmZy5fZ21ha2UuZmlsZXNldHNba2luZF0gb3Ige30KdGFibGUuaW5zZXJ0KGZpbGVzZXQsIGZpbGVuYW1lKQpjZmcuX2dtYWtlLmZpbGVzZXRzW2tpbmRdID0gZmlsZXNldApjcHAuYWRkUnVsZUZpbGUoY2ZnLCBub2RlKQplbmQKZnVuY3Rpb24gY3BwLmFkZFJ1bGVGaWxlKGNmZywgbm9kZSkKbG9jYWwgcnVsZXMgPSBjZmcucHJvamVjdC5fZ21ha2UucnVsZXMKbG9jYWwgcnVsZSA9IHJ1bGVzW3BhdGguZ2V0ZXh0ZW5zaW9uKG5vZGUuYWJzcGF0aCk6bG93ZXIoKV0KaWYgcnVsZSB0aGVuCmxvY2FsIGZpbGVjZmcgPSBmaWxlY29uZmlnLmdldGNvbmZpZyhub2RlLCBjZmcpCmxvY2FsIGVudmlyb24gPSB0YWJsZS5zaGFsbG93Y29weShmaWxlY2ZnLmVudmlyb24pCmlmIHJ1bGUucHJvcGVydHlkZWZpbml0aW9uIHRoZW4KcC5ydWxlLnByZXBhcmVFbnZpcm9ubWVudChydWxlLCBlbnZpcm9uLCAiJCglcykiKQplbmQKbG9jYWwgc2hhZG93Q29udGV4dCA9IHAuY29udGV4dC5leHRlbnQocnVsZSwgZW52aXJvbikKbG9jYWwgYnVpbGRvdXRwdXRzICA9IHNoYWRvd0NvbnRleHQuYnVpbGRvdXRwdXRzCmxvY2FsIGJ1aWxkbWVzc2FnZSAgPSBzaGFkb3dDb250ZXh0LmJ1aWxkbWVzc2FnZQpsb2NhbCBidWlsZGNvbW1hbmRzID0gc2hhZG93Q29udGV4dC5idWlsZGNvbW1hbmRzCmxvY2FsIGJ1aWxkaW5wdXRzICAgPSBzaGFkb3dDb250ZXh0LmJ1aWxkaW5wdXRzCmJ1aWxkb3V0cHV0cyA9IHAucHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgYnVpbGRvdXRwdXRzKQppZiBidWlsZG91dHB1dHMgYW5kICNidWlsZG91dHB1dHMgPiAwIHRoZW4KbG9jYWwgZmlsZSA9IHsKYnVpbGRvdXRwdXRzICA9IGJ1aWxkb3V0cHV0cywKc291cmNlICAgICAgICA9IG5vZGUucmVscGF0aCwKYnVpbGRtZXNzYWdlICA9IGJ1aWxkbWVzc2FnZSwKYnVpbGRjb21tYW5kcyA9IGJ1aWxkY29tbWFuZHMsCmJ1aWxkaW5wdXRzICAgPSBidWlsZGlucHV0cwp9CnRhYmxlLmluc2VydChjZmcuX2dtYWtlLmZpbGVSdWxlcywgZmlsZSkKZm9yIF8sIG91dHB1dCBpbiBpcGFpcnMoYnVpbGRvdXRwdXRzKSBkbwpjcHAuYWRkR2VuZXJhdGVkRmlsZShjZmcsIG5vZGUsIG91dHB1dCkKZW5kCmVuZAplbmQKZW5kCmNwcC5lbGVtZW50cy5jb25maWd1cmF0aW9uID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4gewpjcHAudG9vbHMsCmdtYWtlMi50YXJnZXQsCmdtYWtlMi5vYmpkaXIsCmNwcC5wY2gsCmNwcC5kZWZpbmVzLApjcHAuaW5jbHVkZXMsCmNwcC5mb3JjZUluY2x1ZGUsCmNwcC5jcHBGbGFncywKY3BwLmNGbGFncywKY3BwLmN4eEZsYWdzLApjcHAucmVzRmxhZ3MsCmNwcC5saWJzLApjcHAubGREZXBzLApjcHAubGRGbGFncywKY3BwLmxpbmtDbWQsCmNwcC5iaW5kaXJzLApjcHAuZXhlcGF0aHMsCmNwcC5ydWxlUHJvcGVydGllcywKZ21ha2UyLnNldHRpbmdzLApnbWFrZTIucHJlQnVpbGRDbWRzLApnbWFrZTIucHJlTGlua0NtZHMsCmdtYWtlMi5wb3N0QnVpbGRDbWRzLAp9CmVuZApmdW5jdGlvbiBjcHAub3V0cHV0Q29uZmlndXJhdGlvblNlY3Rpb24ocHJqKQpfcCgnIyBDb25maWd1cmF0aW9ucycpCl9wKCcjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIycpCl9wKCcnKQpnbWFrZTIub3V0cHV0U2VjdGlvbihwcmosIGNwcC5lbGVtZW50cy5jb25maWd1cmF0aW9uKQplbmQKZnVuY3Rpb24gY3BwLnRvb2xzKGNmZywgdG9vbHNldCkKbG9jYWwgdG9vbCA9IHRvb2xzZXQuZ2V0dG9vbG5hbWUoY2ZnLCAiY2MiKQppZiB0b29sIHRoZW4KX3AoJ2lmZXEgKCQob3JpZ2luIENDKSwgZGVmYXVsdCknKQpfcCgnICBDQyA9ICVzJywgdG9vbCkKX3AoJ2VuZGlmJyApCmVuZAp0b29sID0gdG9vbHNldC5nZXR0b29sbmFtZShjZmcsICJjeHgiKQppZiB0b29sIHRoZW4KX3AoJ2lmZXEgKCQob3JpZ2luIENYWCksIGRlZmF1bHQpJykKX3AoJyAgQ1hYID0gJXMnLCB0b29sKQpfcCgnZW5kaWYnICkKZW5kCnRvb2wgPSB0b29sc2V0LmdldHRvb2xuYW1lKGNmZywgImFyIikKaWYgdG9vbCB0aGVuCl9wKCdpZmVxICgkKG9yaWdpbiBBUiksIGRlZmF1bHQpJykKX3AoJyAgQVIgPSAlcycsIHRvb2wpCl9wKCdlbmRpZicgKQplbmQKdG9vbCA9IHRvb2xzZXQuZ2V0dG9vbG5hbWUoY2ZnLCAicmMiKQppZiB0b29sIHRoZW4KX3AoJ1JFU0NPTVAgPSAlcycsIHRvb2wpCmVuZAplbmQKZnVuY3Rpb24gY3BwLnBjaChjZmcsIHRvb2xzZXQpCmlmIG5vdCBjZmcucGNoaGVhZGVyIG9yIGNmZy5mbGFncy5Ob1BDSCB0aGVuCnJldHVybgplbmQKbG9jYWwgcGNoID0gY2ZnLnBjaGhlYWRlcgpsb2NhbCBmb3VuZCA9IGZhbHNlCmxvY2FsIHRlc3RuYW1lID0gcGF0aC5qb2luKGNmZy5wcm9qZWN0LmJhc2VkaXIsIHBjaCkKaWYgb3MuaXNmaWxlKHRlc3RuYW1lKSB0aGVuCnBjaCA9IHByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIHRlc3RuYW1lKQpmb3VuZCA9IHRydWUKZWxzZQpmb3IgXywgaW5jZGlyIGluIGlwYWlycyhjZmcuaW5jbHVkZWRpcnMpIGRvCnRlc3RuYW1lID0gcGF0aC5qb2luKGluY2RpciwgcGNoKQppZiBvcy5pc2ZpbGUodGVzdG5hbWUpIHRoZW4KcGNoID0gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgdGVzdG5hbWUpCmZvdW5kID0gdHJ1ZQpicmVhawplbmQKZW5kCmVuZAppZiBub3QgZm91bmQgdGhlbgpwY2ggPSBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBwYXRoLmdldGFic29sdXRlKHBjaCkpCmVuZApwLm91dGxuKCdQQ0ggPSAnIC4uIHBjaCkKcC5vdXRsbignUENIX1BMQUNFSE9MREVSID0gJChPQkpESVIpLyQobm90ZGlyICQoUENIKSknKQpwLm91dGxuKCdHQ0ggPSAkKFBDSF9QTEFDRUhPTERFUikuZ2NoJykKZW5kCmZ1bmN0aW9uIGNwcC5kZWZpbmVzKGNmZywgdG9vbHNldCkKcC5vdXRsbignREVGSU5FUyArPScgLi4gZ21ha2UyLmxpc3QodGFibGUuam9pbih0b29sc2V0LmdldGRlZmluZXMoY2ZnLmRlZmluZXMsIGNmZyksIHRvb2xzZXQuZ2V0dW5kZWZpbmVzKGNmZy51bmRlZmluZXMpKSkpCmVuZApmdW5jdGlvbiBjcHAuaW5jbHVkZXMoY2ZnLCB0b29sc2V0KQpsb2NhbCBpbmNsdWRlcyA9IHRvb2xzZXQuZ2V0aW5jbHVkZWRpcnMoY2ZnLCBjZmcuaW5jbHVkZWRpcnMsIGNmZy5zeXNpbmNsdWRlZGlycykKcC5vdXRsbignSU5DTFVERVMgKz0nIC4uIGdtYWtlMi5saXN0KGluY2x1ZGVzKSkKZW5kCmZ1bmN0aW9uIGNwcC5mb3JjZUluY2x1ZGUoY2ZnLCB0b29sc2V0KQpsb2NhbCBpbmNsdWRlcyA9IHRvb2xzZXQuZ2V0Zm9yY2VpbmNsdWRlcyhjZmcpCmlmIG5vdCBjZmcuZmxhZ3MuTm9QQ0ggYW5kIGNmZy5wY2hoZWFkZXIgdGhlbgp0YWJsZS5pbnNlcnQoaW5jbHVkZXMsICItaW5jbHVkZSAkKFBDSF9QTEFDRUhPTERFUikiKQplbmQKcC5vdXRsbignRk9SQ0VfSU5DTFVERSArPScgLi4gZ21ha2UyLmxpc3QoaW5jbHVkZXMpKQplbmQKZnVuY3Rpb24gY3BwLmNwcEZsYWdzKGNmZywgdG9vbHNldCkKbG9jYWwgZmxhZ3MgPSBnbWFrZTIubGlzdCh0b29sc2V0LmdldGNwcGZsYWdzKGNmZykpCnAub3V0bG4oJ0FMTF9DUFBGTEFHUyArPSAkKENQUEZMQUdTKScgLi4gZmxhZ3MgLi4gJyAkKERFRklORVMpICQoSU5DTFVERVMpJykKZW5kCmZ1bmN0aW9uIGNwcC5jRmxhZ3MoY2ZnLCB0b29sc2V0KQpsb2NhbCBmbGFncyA9IGdtYWtlMi5saXN0KHRhYmxlLmpvaW4odG9vbHNldC5nZXRjZmxhZ3MoY2ZnKSwgY2ZnLmJ1aWxkb3B0aW9ucykpCnAub3V0bG4oJ0FMTF9DRkxBR1MgKz0gJChDRkxBR1MpICQoQUxMX0NQUEZMQUdTKScgLi4gZmxhZ3MpCmVuZApmdW5jdGlvbiBjcHAuY3h4RmxhZ3MoY2ZnLCB0b29sc2V0KQpsb2NhbCBmbGFncyA9IGdtYWtlMi5saXN0KHRhYmxlLmpvaW4odG9vbHNldC5nZXRjeHhmbGFncyhjZmcpLCBjZmcuYnVpbGRvcHRpb25zKSkKcC5vdXRsbignQUxMX0NYWEZMQUdTICs9ICQoQ1hYRkxBR1MpICQoQUxMX0NQUEZMQUdTKScgLi4gZmxhZ3MpCmVuZApmdW5jdGlvbiBjcHAucmVzRmxhZ3MoY2ZnLCB0b29sc2V0KQpsb2NhbCByZXNmbGFncyA9IHRhYmxlLmpvaW4odG9vbHNldC5nZXRkZWZpbmVzKGNmZy5yZXNkZWZpbmVzKSwgdG9vbHNldC5nZXRpbmNsdWRlZGlycyhjZmcsIGNmZy5yZXNpbmNsdWRlZGlycyksIGNmZy5yZXNvcHRpb25zKQpwLm91dGxuKCdBTExfUkVTRkxBR1MgKz0gJChSRVNGTEFHUykgJChERUZJTkVTKSAkKElOQ0xVREVTKScgLi4gZ21ha2UyLmxpc3QocmVzZmxhZ3MpKQplbmQKZnVuY3Rpb24gY3BwLmxpYnMoY2ZnLCB0b29sc2V0KQpsb2NhbCBmbGFncyA9IHRvb2xzZXQuZ2V0bGlua3MoY2ZnKQpwLm91dGxuKCdMSUJTICs9JyAuLiBnbWFrZTIubGlzdChmbGFncywgdHJ1ZSkpCmVuZApmdW5jdGlvbiBjcHAubGREZXBzKGNmZywgdG9vbHNldCkKbG9jYWwgZGVwcyA9IGNvbmZpZy5nZXRsaW5rcyhjZmcsICJzaWJsaW5ncyIsICJmdWxscGF0aCIpCnAub3V0bG4oJ0xEREVQUyArPScgLi4gZ21ha2UyLmxpc3QocC5lc2MoZGVwcykpKQplbmQKZnVuY3Rpb24gY3BwLmxkRmxhZ3MoY2ZnLCB0b29sc2V0KQpsb2NhbCBmbGFncyA9IHRhYmxlLmpvaW4odG9vbHNldC5nZXRMaWJyYXJ5RGlyZWN0b3JpZXMoY2ZnKSwgdG9vbHNldC5nZXRydW5wYXRoZGlycyhjZmcsIGNmZy5ydW5wYXRoZGlycyksIHRvb2xzZXQuZ2V0bGRmbGFncyhjZmcpLCBjZmcubGlua29wdGlvbnMpCnAub3V0bG4oJ0FMTF9MREZMQUdTICs9ICQoTERGTEFHUyknIC4uIGdtYWtlMi5saXN0KGZsYWdzKSkKZW5kCmZ1bmN0aW9uIGNwcC5saW5rQ21kKGNmZywgdG9vbHNldCkKaWYgY2ZnLmtpbmQgPT0gcC5TVEFUSUNMSUIgdGhlbgppZiBjZmcuYXJjaGl0ZWN0dXJlID09IHAuVU5JVkVSU0FMIHRoZW4KcC5vdXRsbignTElOS0NNRCA9IGxpYnRvb2wgLW8gIiRAIiAkKE9CSkVDVFMpJykKZWxzZQpwLm91dGxuKCdMSU5LQ01EID0gJChBUikgLXJjcyAiJEAiICQoT0JKRUNUUyknKQplbmQKZWxzZWlmIGNmZy5raW5kID09IHAuVVRJTElUWSB0aGVuCnAub3V0bG4oJ0xJTktDTUQgPScpCmVsc2UKbG9jYWwgY2MgPSBpaWYocC5sYW5ndWFnZXMuaXNjKGNmZy5sYW5ndWFnZSksICJDQyIsICJDWFgiKQpwLm91dGxuKCdMSU5LQ01EID0gJCgnIC4uIGNjIC4uICcpIC1vICIkQCIgJChPQkpFQ1RTKSAkKFJFU09VUkNFUykgJChBTExfTERGTEFHUykgJChMSUJTKScpCmVuZAplbmQKZnVuY3Rpb24gY3BwLmJpbmRpcnMoY2ZnLCB0b29sc2V0KQpsb2NhbCBkaXJzID0gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgY2ZnLmJpbmRpcnMpCmlmICNkaXJzID4gMCB0aGVuCnAub3V0bG4oJ0VYRUNVVEFCTEVfUEFUSFMgPSAiJyAuLiB0YWJsZS5jb25jYXQoZGlycywgIjoiKSAuLiAnIicpCmVuZAplbmQKZnVuY3Rpb24gY3BwLmV4ZXBhdGhzKGNmZywgdG9vbHNldCkKbG9jYWwgZGlycyA9IHByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIGNmZy5iaW5kaXJzKQppZiAjZGlycyA+IDAgdGhlbgpwLm91dGxuKCdFWEVfUEFUSFMgPSBleHBvcnQgUEFUSD0kKEVYRUNVVEFCTEVfUEFUSFMpOiQkUEFUSDsnKQplbmQKZW5kCmZ1bmN0aW9uIGNwcC5ydWxlUHJvcGVydGllcyhjZmcsIHRvb2xzZXQpCmZvciBpID0gMSwgI2NmZy5ydWxlcyBkbwpsb2NhbCBydWxlID0gcC5nbG9iYWwuZ2V0UnVsZShjZmcucnVsZXNbaV0pCmZvciBwcm9wIGluIHAucnVsZS5lYWNoUHJvcGVydHkocnVsZSkgZG8KbG9jYWwgZmxkID0gcC5ydWxlLmdldFByb3BlcnR5RmllbGQocnVsZSwgcHJvcCkKbG9jYWwgdmFsdWUgPSBjZmdbZmxkLm5hbWVdCmlmIHZhbHVlIH49IG5pbCB0aGVuCmlmIGZsZC5raW5kID09ICJwYXRoIiB0aGVuCnZhbHVlID0gZ21ha2UyLnBhdGgoY2ZnLCB2YWx1ZSkKZWxzZWlmIGZsZC5raW5kID09ICJsaXN0OnBhdGgiIHRoZW4KdmFsdWUgPSBnbWFrZTIucGF0aChjZmcsIHZhbHVlKQplbmQKdmFsdWUgPSBwLnJ1bGUuZXhwYW5kU3RyaW5nKHJ1bGUsIHByb3AsIHZhbHVlKQppZiB2YWx1ZSB+PSBuaWwgYW5kICN2YWx1ZSA+IDAgdGhlbgpwLm91dGxuKHByb3AubmFtZSAuLiAnID0gJyAuLiBwLmVzYyh2YWx1ZSkpCmVuZAplbmQKZW5kCmVuZAplbmQKZnVuY3Rpb24gY3BwLm91dHB1dFBlckZpbGVDb25maWd1cmF0aW9uU2VjdGlvbihwcmopCl9wKCcjIFBlciBGaWxlIENvbmZpZ3VyYXRpb25zJykKX3AoJyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjJykKX3AoJycpCmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KdGFibGUuZm9yZWFjaGkoY2ZnLnByb2plY3QuXy5maWxlcywgZnVuY3Rpb24obm9kZSkKbG9jYWwgZmNmZyA9IGZpbGVjb25maWcuZ2V0Y29uZmlnKG5vZGUsIGNmZykKaWYgZmNmZyB0aGVuCmNwcC5wZXJGaWxlRmxhZ3MoY2ZnLCBmY2ZnKQplbmQKZW5kKQplbmQKX3AoJycpCmVuZApsb2NhbCBmdW5jdGlvbiBtYWtlVmFyTmFtZShwcmosIHZhbHVlLCBzYWx0VmFsdWUpCnByai5fZ21ha2UudmFybGlzdCA9IHByai5fZ21ha2UudmFybGlzdCBvciB7fQpwcmouX2dtYWtlLnZhcmxpc3RsZW5ndGggPSBwcmouX2dtYWtlLnZhcmxpc3RsZW5ndGggb3IgMApsb2NhbCBjYWNoZSA9IHByai5fZ21ha2UudmFybGlzdApsb2NhbCBsZW5ndGggPSBwcmouX2dtYWtlLnZhcmxpc3RsZW5ndGgKbG9jYWwga2V5ID0gdmFsdWUgLi4gc2FsdFZhbHVlCmlmIChjYWNoZVtrZXldIH49IG5pbCkgdGhlbgpyZXR1cm4gY2FjaGVba2V5XSwgZmFsc2UKZW5kCmxvY2FsIHZhciA9IHN0cmluZy5mb3JtYXQoIlBFUkZJTEVfRkxBR1NfJWQiLCBsZW5ndGgpCmNhY2hlW2tleV0gPSB2YXIKcHJqLl9nbWFrZS52YXJsaXN0bGVuZ3RoID0gbGVuZ3RoICsgMQpyZXR1cm4gdmFyLCB0cnVlCmVuZApmdW5jdGlvbiBjcHAucGVyRmlsZUZsYWdzKGNmZywgZmNmZykKbG9jYWwgdG9vbHNldCA9IGdtYWtlMi5nZXRUb29sU2V0KGNmZykKbG9jYWwgdmFsdWUgPSBnbWFrZTIubGlzdCh0YWJsZS5qb2luKHRvb2xzZXQuZ2V0Y2ZsYWdzKGZjZmcpLCBmY2ZnLmJ1aWxkb3B0aW9ucykpCmlmIGZjZmcuZGVmaW5lcyBvciBmY2ZnLnVuZGVmaW5lcyB0aGVuCmxvY2FsIGRlZnMgPSB0YWJsZS5qb2luKHRvb2xzZXQuZ2V0ZGVmaW5lcyhmY2ZnLmRlZmluZXMsIGNmZyksIHRvb2xzZXQuZ2V0dW5kZWZpbmVzKGZjZmcudW5kZWZpbmVzKSkKaWYgI2RlZnMgPiAwIHRoZW4KdmFsdWUgPSB2YWx1ZSAuLiBnbWFrZTIubGlzdChkZWZzKQplbmQKZW5kCmlmIGZjZmcuaW5jbHVkZWRpcnMgb3IgZmNmZy5zeXNpbmNsdWRlZGlycyB0aGVuCmxvY2FsIGluY2x1ZGVzID0gdG9vbHNldC5nZXRpbmNsdWRlZGlycyhjZmcsIGZjZmcuaW5jbHVkZWRpcnMsIGZjZmcuc3lzaW5jbHVkZWRpcnMpCmlmICNpbmNsdWRlcyA+IDAgdGhlbgp2YWx1ZSA9IHZhbHVlIC4uICBnbWFrZTIubGlzdChpbmNsdWRlcykKZW5kCmVuZAppZiAjdmFsdWUgPiAwIHRoZW4KbG9jYWwgbmV3UGVyRmlsZUZsYWcgPSBmYWxzZQpmY2ZnLmZsYWdzVmFyaWFibGUsIG5ld1BlckZpbGVGbGFnID0gbWFrZVZhck5hbWUoY2ZnLnByb2plY3QsIHZhbHVlLCBpaWYocGF0aC5pc2NmaWxlKGZjZmcubmFtZSksICdfQycsICdfQ1BQJykpCmlmIG5ld1BlckZpbGVGbGFnIHRoZW4KaWYgcGF0aC5pc2NmaWxlKGZjZmcubmFtZSkgdGhlbgpfcCgnJXMgPSAkKEFMTF9DRkxBR1MpJXMnLCBmY2ZnLmZsYWdzVmFyaWFibGUsIHZhbHVlKQplbHNlCl9wKCclcyA9ICQoQUxMX0NYWEZMQUdTKSVzJywgZmNmZy5mbGFnc1ZhcmlhYmxlLCB2YWx1ZSkKZW5kCmVuZAplbmQKZW5kCmZ1bmN0aW9uIGNwcC5maWxlRmxhZ3MoY2ZnLCBmaWxlKQpsb2NhbCBmY2ZnID0gZmlsZWNvbmZpZy5nZXRjb25maWcoZmlsZSwgY2ZnKQppZiBmY2ZnIGFuZCBmY2ZnLmZsYWdzVmFyaWFibGUgdGhlbgpyZXR1cm4gZmNmZy5mbGFnc1ZhcmlhYmxlCmVuZAppZiBwYXRoLmlzY2ZpbGUoZmlsZS5uYW1lKSB0aGVuCnJldHVybiAnQUxMX0NGTEFHUycKZWxzZQpyZXR1cm4gJ0FMTF9DWFhGTEFHUycKZW5kCmVuZApjcHAuZWxlbWVudHMuZmlsZXNldHMgPSBmdW5jdGlvbihjZmcpCmxvY2FsIHJlc3VsdCA9IHt9CmZvciBfLCBraW5kIGluIGlwYWlycyhjZmcuX2dtYWtlLmtpbmRzKSBkbwpmb3IgXywgZiBpbiBpcGFpcnMoY2ZnLl9nbWFrZS5maWxlc2V0c1traW5kXSkgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgZnVuY3Rpb24oY2ZnLCB0b29sc2V0KQpjcHAub3V0cHV0RmlsZXNldChjZmcsIGtpbmQsIGYpCmVuZCkKZW5kCmVuZApyZXR1cm4gcmVzdWx0CmVuZApmdW5jdGlvbiBjcHAub3V0cHV0RmlsZXNTZWN0aW9uKHByaikKX3AoJyMgRmlsZSBzZXRzJykKX3AoJyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjJykKX3AoJycpCmZvciBfLCBraW5kIGluIGlwYWlycyhwcmouX2dtYWtlLmtpbmRzKSBkbwpfeCgnJXMgOj0nLCBraW5kKQplbmQKX3goJycpCmdtYWtlMi5vdXRwdXRTZWN0aW9uKHByaiwgY3BwLmVsZW1lbnRzLmZpbGVzZXRzKQplbmQKZnVuY3Rpb24gY3BwLm91dHB1dEZpbGVzZXQoY2ZnLCBraW5kLCBmaWxlKQpfeCgnJXMgKz0gJXMnLCBraW5kLCBmaWxlKQplbmQKY3BwLmVsZW1lbnRzLnJ1bGVzID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4gewpjcHAuYWxsUnVsZXMsCmNwcC50YXJnZXRSdWxlcywKZ21ha2UyLnRhcmdldERpclJ1bGVzLApnbWFrZTIub2JqRGlyUnVsZXMsCmNwcC5jbGVhblJ1bGVzLApnbWFrZTIucHJlQnVpbGRSdWxlcywKZ21ha2UyLnByZUxpbmtSdWxlcywKY3BwLnBjaFJ1bGVzLAp9CmVuZApmdW5jdGlvbiBjcHAub3V0cHV0UnVsZXNTZWN0aW9uKHByaikKX3AoJyMgUnVsZXMnKQpfcCgnIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMnKQpfcCgnJykKZ21ha2UyLm91dHB1dFNlY3Rpb24ocHJqLCBjcHAuZWxlbWVudHMucnVsZXMpCmVuZApmdW5jdGlvbiBjcHAuYWxsUnVsZXMoY2ZnLCB0b29sc2V0KQppZiBjZmcuc3lzdGVtID09IHAuTUFDT1NYIGFuZCBjZmcua2luZCA9PSBwLldJTkRPV0VEQVBQIHRoZW4KX3AoJ2FsbDogcHJlYnVpbGQgcHJlbGluayAkKFRBUkdFVCkgJChkaXIgJChUQVJHRVRESVIpKVBrZ0luZm8gJChkaXIgJChUQVJHRVRESVIpKUluZm8ucGxpc3QgfCAkKFRBUkdFVERJUikgJChPQkpESVIpJykKX3AoJ1x0QDonKQpfcCgnJykKX3AoJyQoZGlyICQoVEFSR0VURElSKSlQa2dJbmZvOicpCl9wKCckKGRpciAkKFRBUkdFVERJUikpSW5mby5wbGlzdDonKQplbHNlCl9wKCdhbGw6IHByZWJ1aWxkIHByZWxpbmsgJChUQVJHRVQpIHwgJChUQVJHRVRESVIpICQoT0JKRElSKScpCl9wKCdcdEA6JykKZW5kCl9wKCcnKQplbmQKZnVuY3Rpb24gY3BwLnRhcmdldFJ1bGVzKGNmZywgdG9vbHNldCkKbG9jYWwgdGFyZ2V0cyA9ICckKEdDSCkgJwpmb3IgXywga2luZCBpbiBpcGFpcnMoY2ZnLl9nbWFrZS5raW5kcykgZG8KaWYga2luZCB+PSAnT0JKRUNUUycgYW5kIGtpbmQgfj0gJ1JFU09VUkNFUycgdGhlbgp0YXJnZXRzID0gdGFyZ2V0cyAuLiAnJCgnIC4uIGtpbmQgLi4gJykgJwplbmQKZW5kCnRhcmdldHMgPSB0YXJnZXRzIC4uICckKE9CSkVDVFMpICQoTERERVBTKScKaWYgY2ZnLl9nbWFrZS5maWxlc2V0c1snUkVTT1VSQ0VTJ10gdGhlbgp0YXJnZXRzID0gdGFyZ2V0cyAuLiAnICQoUkVTT1VSQ0VTKScKZW5kCl9wKCckKFRBUkdFVCk6ICVzIHwgJChUQVJHRVRESVIpJywgdGFyZ2V0cykKX3AoJ1x0QGVjaG8gTGlua2luZyAlcycsIGNmZy5wcm9qZWN0Lm5hbWUpCl9wKCdcdCQoU0lMRU5UKSAkKExJTktDTUQpJykKX3AoJ1x0JChQT1NUQlVJTERDTURTKScpCl9wKCcnKQplbmQKZnVuY3Rpb24gY3BwLmNsZWFuUnVsZXMoY2ZnLCB0b29sc2V0KQpfcCgnY2xlYW46JykKX3AoJ1x0QGVjaG8gQ2xlYW5pbmcgJXMnLCBjZmcucHJvamVjdC5uYW1lKQpfcCgnaWZlcSAocG9zaXgsJChTSEVMTFRZUEUpKScpCl9wKCdcdCQoU0lMRU5UKSBybSAtZiAgJChUQVJHRVQpJykKX3AoJ1x0JChTSUxFTlQpIHJtIC1yZiAkKE9CSkRJUiknKQpfcCgnZWxzZScpCl9wKCdcdCQoU0lMRU5UKSBpZiBleGlzdCAkKHN1YnN0IC8sXFxcXCwkKFRBUkdFVCkpIGRlbCAkKHN1YnN0IC8sXFxcXCwkKFRBUkdFVCkpJykKX3AoJ1x0JChTSUxFTlQpIGlmIGV4aXN0ICQoc3Vic3QgLyxcXFxcLCQoT0JKRElSKSkgcm1kaXIgL3MgL3EgJChzdWJzdCAvLFxcXFwsJChPQkpESVIpKScpCl9wKCdlbmRpZicpCl9wKCcnKQplbmQKZnVuY3Rpb24gY3BwLnBjaFJ1bGVzKGNmZywgdG9vbHNldCkKX3AoJ2lmbmVxICgsJChQQ0gpKScpCl9wKCckKE9CSkVDVFMpOiAkKEdDSCkgJChQQ0gpIHwgJChPQkpESVIpICQoUENIX1BMQUNFSE9MREVSKScpCl9wKCckKEdDSCk6ICQoUENIKSB8ICQoT0JKRElSKScpCl9wKCdcdEBlY2hvICQobm90ZGlyICQ8KScpCmxvY2FsIGNtZCA9IGlpZihwLmxhbmd1YWdlcy5pc2MoY2ZnLmxhbmd1YWdlKSwgIiQoQ0MpIC14IGMtaGVhZGVyICQoQUxMX0NGTEFHUykiLCAiJChDWFgpIC14IGMrKy1oZWFkZXIgJChBTExfQ1hYRkxBR1MpIikKX3AoJ1x0JChTSUxFTlQpICVzIC1vICIkQCIgLU1GICIkKEA6JSUuZ2NoPSUlLmQpIiAtYyAiJDwiJywgY21kKQpfcCgnJChQQ0hfUExBQ0VIT0xERVIpOiAkKEdDSCkgfCAkKE9CSkRJUiknKQpfcCgnXHQkKFNJTEVOVCkgdG91Y2ggIiRAIicpCl9wKCdlbHNlJykKX3AoJyQoT0JKRUNUUyk6IHwgJChPQkpESVIpJykKX3AoJ2VuZGlmJykKX3AoJycpCmVuZApjcHAuZWxlbWVudHMuZmlsZVJ1bGVzID0gZnVuY3Rpb24oY2ZnKQpsb2NhbCBmdW5jcyA9IHt9CmZvciBfLCBmaWxlUnVsZSBpbiBpcGFpcnMoY2ZnLl9nbWFrZS5maWxlUnVsZXMpIGRvCnRhYmxlLmluc2VydChmdW5jcywgZnVuY3Rpb24oY2ZnLCB0b29sc2V0KQpjcHAub3V0cHV0RmlsZVJ1bGVzKGNmZywgZmlsZVJ1bGUpCmVuZCkKZW5kCnJldHVybiBmdW5jcwplbmQKZnVuY3Rpb24gY3BwLm91dHB1dEZpbGVSdWxlU2VjdGlvbihwcmopCl9wKCcjIEZpbGUgUnVsZXMnKQpfcCgnIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMnKQpfcCgnJykKZ21ha2UyLm91dHB1dFNlY3Rpb24ocHJqLCBjcHAuZWxlbWVudHMuZmlsZVJ1bGVzKQplbmQKZnVuY3Rpb24gY3BwLm91dHB1dEZpbGVSdWxlcyhjZmcsIGZpbGUpCmxvY2FsIG91dHB1dHMgPSB0YWJsZS5jb25jYXQoZmlsZS5idWlsZG91dHB1dHMsICcgJykKbG9jYWwgZGVwZW5kZW5jaWVzID0gcC5lc2MoZmlsZS5zb3VyY2UpCmlmIGZpbGUuYnVpbGRpbnB1dHMgYW5kICNmaWxlLmJ1aWxkaW5wdXRzID4gMCB0aGVuCmRlcGVuZGVuY2llcyA9IGRlcGVuZGVuY2llcyAuLiAiICIgLi4gdGFibGUuY29uY2F0KHAuZXNjKGZpbGUuYnVpbGRpbnB1dHMpLCAiICIpCmVuZApfcCgnJXM6ICVzJywgb3V0cHV0cywgZGVwZW5kZW5jaWVzKQppZiBmaWxlLmJ1aWxkbWVzc2FnZSB0aGVuCl9wKCdcdEBlY2hvICVzJywgZmlsZS5idWlsZG1lc3NhZ2UpCmVuZAppZiBmaWxlLmJ1aWxkY29tbWFuZHMgdGhlbgpsb2NhbCBjbWRzID0gb3MudHJhbnNsYXRlQ29tbWFuZHNBbmRQYXRocyhmaWxlLmJ1aWxkY29tbWFuZHMsIGNmZy5wcm9qZWN0LmJhc2VkaXIsIGNmZy5wcm9qZWN0LmxvY2F0aW9uKQpmb3IgXywgY21kIGluIGlwYWlycyhjbWRzKSBkbwppZiBjZmcuYmluZGlycyBhbmQgI2NmZy5iaW5kaXJzID4gMCB0aGVuCl9wKCdcdCQoU0lMRU5UKSAkKEVYRV9QQVRIUykgJXMnLCBjbWQpCmVsc2UKX3AoJ1x0JChTSUxFTlQpICVzJywgY21kKQplbmQKZW5kCmVuZAplbmQKZnVuY3Rpb24gY3BwLmRlcGVuZGVuY2llcyhwcmopCl9wKCctaW5jbHVkZSAkKE9CSkVDVFM6JSUubz0lJS5kKScpCl9wKCdpZm5lcSAoLCQoUENIKSknKQpfcCgnICAtaW5jbHVkZSAiJChQQ0hfUExBQ0VIT0xERVIpLmQiJykKX3AoJ2VuZGlmJykKZW5kCgAAAAAAAABsb2NhbCBwID0gcHJlbWFrZQpsb2NhbCBnbWFrZTIgPSBwLm1vZHVsZXMuZ21ha2UyCmdtYWtlMi5jcyAgICAgICAgPSB7fQpsb2NhbCBjcyAgICAgICAgID0gZ21ha2UyLmNzCmxvY2FsIHByb2plY3QgICAgPSBwLnByb2plY3QKbG9jYWwgY29uZmlnICAgICA9IHAuY29uZmlnCmxvY2FsIGZpbGVjb25maWcgPSBwLmZpbGVjb25maWcKY3MuZWxlbWVudHMgPSB7fQpjcy5lbGVtZW50cy5tYWtlZmlsZSA9IGZ1bmN0aW9uKHByaikKcmV0dXJuIHsKZ21ha2UyLmhlYWRlciwKZ21ha2UyLnBob255UnVsZXMsCmdtYWtlMi5jc0NvbmZpZ3MsCmdtYWtlMi5jc1Byb2plY3RDb25maWcsCmdtYWtlMi5jc1NvdXJjZXMsCmdtYWtlMi5jc0VtYmVkRmlsZXMsCmdtYWtlMi5jc0NvcHlGaWxlcywKZ21ha2UyLmNzUmVzcG9uc2VGaWxlLApnbWFrZTIuc2hlbGxUeXBlLApnbWFrZTIuY3NBbGxSdWxlcywKZ21ha2UyLmNzVGFyZ2V0UnVsZXMsCmdtYWtlMi50YXJnZXREaXJSdWxlcywKZ21ha2UyLmNzUmVzcG9uc2VSdWxlcywKZ21ha2UyLm9iakRpclJ1bGVzLApnbWFrZTIuY3NDbGVhblJ1bGVzLApnbWFrZTIucHJlQnVpbGRSdWxlcywKZ21ha2UyLnByZUxpbmtSdWxlcywKZ21ha2UyLmNzRmlsZVJ1bGVzLAp9CmVuZApmdW5jdGlvbiBjcy5nZW5lcmF0ZShwcmopCnAuZW9sKCJcbiIpCmxvY2FsIHRvb2xzZXQgPSBwLnRvb2xzLmRvdG5ldApwLmNhbGxBcnJheShjcy5lbGVtZW50cy5tYWtlZmlsZSwgcHJqLCB0b29sc2V0KQplbmQKY3MuZWxlbWVudHMuY29uZmlndXJhdGlvbiA9IGZ1bmN0aW9uKGNmZykKcmV0dXJuIHsKZ21ha2UyLmNzVG9vbHMsCmdtYWtlMi50YXJnZXQsCmdtYWtlMi5vYmpkaXIsCmdtYWtlMi5jc0ZsYWdzLApnbWFrZTIuY3NMaW5rQ21kLApnbWFrZTIucHJlQnVpbGRDbWRzLApnbWFrZTIucHJlTGlua0NtZHMsCmdtYWtlMi5wb3N0QnVpbGRDbWRzLApnbWFrZTIuc2V0dGluZ3MsCn0KZW5kCmZ1bmN0aW9uIGdtYWtlMi5jc0NvbmZpZ3MocHJqLCB0b29sc2V0KQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCl94KCdpZmVxICgkKGNvbmZpZyksJXMpJywgY2ZnLnNob3J0bmFtZSkKcC5jYWxsQXJyYXkoY3MuZWxlbWVudHMuY29uZmlndXJhdGlvbiwgY2ZnLCB0b29sc2V0KQpfcCgnZW5kaWYnKQpfcCgnJykKZW5kCmVuZApmdW5jdGlvbiBjcy5nZXRyZXNvdXJjZWZpbGVuYW1lKGNmZywgZm5hbWUpCmlmIHBhdGguZ2V0ZXh0ZW5zaW9uKGZuYW1lKSA9PSAiLnJlc3giIHRoZW4KbG9jYWwgbmFtZSA9IGNmZy5idWlsZHRhcmdldC5iYXNlbmFtZSAuLiAiLiIKbG9jYWwgZGlyID0gcGF0aC5nZXRkaXJlY3RvcnkoZm5hbWUpCmlmIGRpciB+PSAiLiIgdGhlbgpuYW1lID0gbmFtZSAuLiBwYXRoLnRyYW5zbGF0ZShkaXIsICIuIikgLi4gIi4iCmVuZApyZXR1cm4gIiQoT0JKRElSKS8iIC4uIHAuZXNjKG5hbWUgLi4gcGF0aC5nZXRiYXNlbmFtZShmbmFtZSkpIC4uICIucmVzb3VyY2VzIgplbHNlCnJldHVybiBmbmFtZQplbmQKZW5kCmZ1bmN0aW9uIGNzLmxpc3Rzb3VyY2VzKHByaiwgc2VsZWN0b3IpCmxvY2FsIHRyID0gcHJvamVjdC5nZXRzb3VyY2V0cmVlKHByaikKcC50cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubGVhZiA9IGZ1bmN0aW9uKG5vZGUsIGRlcHRoKQpsb2NhbCB2YWx1ZSA9IHNlbGVjdG9yKG5vZGUpCmlmIHZhbHVlIHRoZW4KX3goJ1x0JXMgXFwnLCB2YWx1ZSkKZW5kCmVuZAp9KQplbmQKZnVuY3Rpb24gZ21ha2UyLmNzQWxsUnVsZXMocHJqLCB0b29sc2V0KQpfcCgnYWxsOiAkKFRBUkdFVERJUikgJChPQkpESVIpIHByZWJ1aWxkICQoRU1CRURGSUxFUykgJChDT1BZRklMRVMpIHByZWxpbmsgJChUQVJHRVQpJykKX3AoJycpCmVuZApmdW5jdGlvbiBnbWFrZTIuY3NDbGVhblJ1bGVzKHByaiwgdG9vbHNldCkKZW5kCmZ1bmN0aW9uIGdtYWtlMi5jc0NvcHlGaWxlcyhwcmosIHRvb2xzZXQpCmVuZApmdW5jdGlvbiBjcy5nZXRyZXNwb25zZWZpbGVuYW1lKHByaikKcmV0dXJuICckKE9CSkRJUikvJyAuLiBwcmouZmlsZW5hbWUgLi4gJy5yc3AnCmVuZApmdW5jdGlvbiBnbWFrZTIuY3NSZXNwb25zZUZpbGUocHJqLCB0b29sc2V0KQpfeCgnUkVTUE9OU0UgKz0gJyAuLiBnbWFrZTIuY3MuZ2V0cmVzcG9uc2VmaWxlbmFtZShwcmopKQplbmQKZnVuY3Rpb24gZ21ha2UyLmNzUmVzcG9uc2VSdWxlcyhwcmopCmxvY2FsIHRvb2xzZXQgPSBwLnRvb2xzLmRvdG5ldApsb2NhbCBleHQgPSBnbWFrZTIuZ2V0bWFrZWZpbGVuYW1lKHByaiwgdHJ1ZSkKbG9jYWwgbWFrZWZpbGUgPSBwYXRoLmdldG5hbWUocC5maWxlbmFtZShwcmosIGV4dCkpCmxvY2FsIHJlc3BvbnNlID0gZ21ha2UyLmNzLmdldHJlc3BvbnNlZmlsZW5hbWUocHJqKQpfcCgnJChSRVNQT05TRSk6ICVzJywgbWFrZWZpbGUpCl9wKCdcdEBlY2hvIEdlbmVyYXRpbmcgcmVzcG9uc2UgZmlsZScsIHByai5uYW1lKQpfcCgnaWZlcSAocG9zaXgsJChTSEVMTFRZUEUpKScpCl94KCdcdCQoU0lMRU5UKSBybSAtZiAkKFJFU1BPTlNFKScpCl9wKCdlbHNlJykKX3goJ1x0JChTSUxFTlQpIGlmIGV4aXN0ICQoUkVTUE9OU0UpIGRlbCAlcycsIHBhdGgudHJhbnNsYXRlKHJlc3BvbnNlLCAnXFwnKSkKX3AoJ2VuZGlmJykKbG9jYWwgc2VwID0gb3MuaXN0YXJnZXQoIndpbmRvd3MiKSBhbmQgIlxcIiBvciAiLyIKbG9jYWwgdHIgPSBwcm9qZWN0LmdldHNvdXJjZXRyZWUocHJqKQpwLnRyZWUudHJhdmVyc2UodHIsIHsKb25sZWFmID0gZnVuY3Rpb24obm9kZSwgZGVwdGgpCmlmIHRvb2xzZXQuZmlsZWluZm8obm9kZSkuYWN0aW9uID09ICJDb21waWxlIiB0aGVuCl94KCdcdEBlY2hvICVzID4+ICQoUkVTUE9OU0UpJywgcGF0aC50cmFuc2xhdGUobm9kZS5yZWxwYXRoLCBzZXApKQplbmQKZW5kCn0pCl9wKCcnKQplbmQKZnVuY3Rpb24gZ21ha2UyLmNzRW1iZWRGaWxlcyhwcmosIHRvb2xzZXQpCmxvY2FsIGNmZyA9IHByb2plY3QuZ2V0Zmlyc3Rjb25maWcocHJqKQpfcCgnRU1CRURGSUxFUyArPSBcXCcpCmNzLmxpc3Rzb3VyY2VzKHByaiwgZnVuY3Rpb24obm9kZSkKbG9jYWwgZmNmZyA9IGZpbGVjb25maWcuZ2V0Y29uZmlnKG5vZGUsIGNmZykKbG9jYWwgaW5mbyA9IHRvb2xzZXQuZmlsZWluZm8oZmNmZykKaWYgaW5mby5hY3Rpb24gPT0gIkVtYmVkZGVkUmVzb3VyY2UiIHRoZW4KcmV0dXJuIGNzLmdldHJlc291cmNlZmlsZW5hbWUoY2ZnLCBub2RlLnJlbHBhdGgpCmVuZAplbmQpCl9wKCcnKQplbmQKZnVuY3Rpb24gZ21ha2UyLmNzRmlsZVJ1bGVzKHByaiwgdG9vbHNldCkKZW5kCmZ1bmN0aW9uIGdtYWtlMi5jc0ZsYWdzKGNmZywgdG9vbHNldCkKX3AoJyAgRkxBR1MgPSVzJywgZ21ha2UyLmxpc3QodG9vbHNldC5nZXRmbGFncyhjZmcpKSkKZW5kCmZ1bmN0aW9uIGdtYWtlMi5jc0xpbmtDbWQoY2ZnLCB0b29sc2V0KQpsb2NhbCBkZXBzID0gcC5lc2MoY29uZmlnLmdldGxpbmtzKGNmZywgImRlcGVuZGVuY2llcyIsICJmdWxscGF0aCIpKQpfcCgnICBERVBFTkRTID0lcycsIGdtYWtlMi5saXN0KGRlcHMpKQpfcCgnICBSRUZFUkVOQ0VTID0gJXMnLCB0YWJsZS5pbXBsb2RlKGRlcHMsICIvcjoiLCAiIiwgIiAiKSkKZW5kCmZ1bmN0aW9uIGdtYWtlMi5jc1Byb2plY3RDb25maWcocHJqLCB0b29sc2V0KQpsb2NhbCBjZmcgPSBwcm9qZWN0LmdldGZpcnN0Y29uZmlnKHByaikKbG9jYWwga2luZGZsYWcgPSAiL3Q6IiAuLiB0b29sc2V0LmdldGtpbmQoY2ZnKTpsb3dlcigpCmxvY2FsIGxpYmRpcnMgPSB0YWJsZS5pbXBsb2RlKHAuZXNjKGNmZy5saWJkaXJzKSwgIi9saWI6IiwgIiIsICIgIikKX3AoJ0ZMQUdTICs9ICVzJywgdGFibGUuY29uY2F0KHRhYmxlLmpvaW4oa2luZGZsYWcsIGxpYmRpcnMpLCAiICIpKQpsb2NhbCByZWZzID0gcC5lc2MoY29uZmlnLmdldGxpbmtzKGNmZywgInN5c3RlbSIsICJmdWxscGF0aCIpKQpfcCgnUkVGRVJFTkNFUyArPSAlcycsIHRhYmxlLmltcGxvZGUocmVmcywgIi9yOiIsICIiLCAiICIpKQpfcCgnJykKZW5kCmZ1bmN0aW9uIGdtYWtlMi5jc1NvdXJjZXMocHJqLCB0b29sc2V0KQpsb2NhbCBjZmcgPSBwcm9qZWN0LmdldGZpcnN0Y29uZmlnKHByaikKX3AoJ1NPVVJDRVMgKz0gXFwnKQpjcy5saXN0c291cmNlcyhwcmosIGZ1bmN0aW9uKG5vZGUpCmxvY2FsIGZjZmcgPSBmaWxlY29uZmlnLmdldGNvbmZpZyhub2RlLCBjZmcpCmxvY2FsIGluZm8gPSB0b29sc2V0LmZpbGVpbmZvKGZjZmcpCmlmIGluZm8uYWN0aW9uID09ICJDb21waWxlIiB0aGVuCnJldHVybiBub2RlLnJlbHBhdGgKZW5kCmVuZCkKX3AoJycpCmVuZApmdW5jdGlvbiBnbWFrZTIuY3NUYXJnZXRSdWxlcyhwcmosIHRvb2xzZXQpCl9wKCckKFRBUkdFVCk6ICQoU09VUkNFUykgJChFTUJFREZJTEVTKSAkKERFUEVORFMpICQoUkVTUE9OU0UpJykKX3AoJ1x0JChTSUxFTlQpICQoQ1NDKSAvbm9sb2dvIC9vdXQ6JEAgJChGTEFHUykgJChSRUZFUkVOQ0VTKSBAJChSRVNQT05TRSkgJChwYXRzdWJzdCAlJSwvcmVzb3VyY2U6JSUsJChFTUJFREZJTEVTKSknKQpfcCgnXHQkKFBPU1RCVUlMRENNRFMpJykKX3AoJycpCmVuZApmdW5jdGlvbiBnbWFrZTIuY3NUb29scyhjZmcsIHRvb2xzZXQpCl9wKCcgIENTQyA9ICVzJywgdG9vbHNldC5nZXR0b29sbmFtZShjZmcsICJjc2MiKSkKX3AoJyAgUkVTR0VOID0gJXMnLCB0b29sc2V0LmdldHRvb2xuYW1lKGNmZywgInJlc2dlbiIpKQplbmQKAAAAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgZ21ha2UyID0gcC5tb2R1bGVzLmdtYWtlMgpnbWFrZTIubWFrZWZpbGUgID0ge30KbG9jYWwgbWFrZWZpbGUgICA9IGdtYWtlMi5tYWtlZmlsZQpsb2NhbCBwcm9qZWN0ICAgID0gcC5wcm9qZWN0CmxvY2FsIGNvbmZpZyAgICAgPSBwLmNvbmZpZwpsb2NhbCBmaWxlY29uZmlnID0gcC5maWxlY29uZmlnCm1ha2VmaWxlLmVsZW1lbnRzID0ge30KbWFrZWZpbGUuZWxlbWVudHMubWFrZWZpbGUgPSBmdW5jdGlvbihwcmopCnJldHVybiB7CmdtYWtlMi5oZWFkZXIsCmdtYWtlMi5waG9ueVJ1bGVzLAptYWtlZmlsZS5jb25maWdzLAptYWtlZmlsZS50YXJnZXRSdWxlcwp9CmVuZApmdW5jdGlvbiBtYWtlZmlsZS5nZW5lcmF0ZShwcmopCnAuZW9sKCJcbiIpCnAuY2FsbGFycmF5KG1ha2UsIG1ha2VmaWxlLmVsZW1lbnRzLm1ha2VmaWxlLCBwcmopCmVuZAptYWtlZmlsZS5lbGVtZW50cy5jb25maWd1cmF0aW9uID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4gewpnbWFrZTIudGFyZ2V0LApnbWFrZTIuYnVpbGRDb21tYW5kcywKZ21ha2UyLmNsZWFuQ29tbWFuZHMsCn0KZW5kCmZ1bmN0aW9uIG1ha2VmaWxlLmNvbmZpZ3MocHJqKQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmxvY2FsIHRvb2xzZXQgPSBwLnRvb2xzW2NmZy50b29sc2V0IG9yICJnY2MiXQppZiBub3QgdG9vbHNldCB0aGVuCmVycm9yKCJJbnZhbGlkIHRvb2xzZXQgJyIgLi4gY2ZnLnRvb2xzZXQgLi4gIiciKQplbmQKX3goJ2lmZXEgKCQoY29uZmlnKSwlcyknLCBjZmcuc2hvcnRuYW1lKQpwLmNhbGxhcnJheShtYWtlLCBtYWtlZmlsZS5lbGVtZW50cy5jb25maWd1cmF0aW9uLCBjZmcsIHRvb2xzZXQpCl9wKCdlbmRpZicpCl9wKCcnKQplbmQKZW5kCmZ1bmN0aW9uIG1ha2VmaWxlLnRhcmdldFJ1bGVzKHByaikKX3AoJyQoVEFSR0VUKTonKQpfcCgnXHQkKEJVSUxEQ01EUyknKQpfcCgnJykKX3AoJ2NsZWFuOicpCl9wKCdcdCQoQ0xFQU5DTURTKScpCl9wKCcnKQplbmQKZnVuY3Rpb24gZ21ha2UyLmJ1aWxkQ29tbWFuZHMoY2ZnKQpfcCgnICBkZWZpbmUgQlVJTERDTURTJykKbG9jYWwgc3RlcHMgPSBjZmcuYnVpbGRjb21tYW5kcwppZiAjc3RlcHMgPiAwIHRoZW4Kc3RlcHMgPSBvcy50cmFuc2xhdGVDb21tYW5kc0FuZFBhdGhzKHN0ZXBzLCBjZmcucHJvamVjdC5iYXNlZGlyLCBjZmcucHJvamVjdC5sb2NhdGlvbikKX3AoJ1x0QGVjaG8gUnVubmluZyBidWlsZCBjb21tYW5kcycpCl9wKCdcdCVzJywgdGFibGUuaW1wbG9kZShzdGVwcywgIiIsICIiLCAiXG5cdCIpKQplbmQKX3AoJyAgZW5kZWYnKQplbmQKZnVuY3Rpb24gZ21ha2UyLmNsZWFuQ29tbWFuZHMoY2ZnKQpfcCgnICBkZWZpbmUgQ0xFQU5DTURTJykKbG9jYWwgc3RlcHMgPSBjZmcuY2xlYW5jb21tYW5kcwppZiAjc3RlcHMgPiAwIHRoZW4Kc3RlcHMgPSBvcy50cmFuc2xhdGVDb21tYW5kc0FuZFBhdGhzKHN0ZXBzLCBjZmcucHJvamVjdC5iYXNlZGlyLCBjZmcucHJvamVjdC5sb2NhdGlvbikKX3AoJ1x0QGVjaG8gUnVubmluZyBjbGVhbiBjb21tYW5kcycpCl9wKCdcdCVzJywgdGFibGUuaW1wbG9kZShzdGVwcywgIiIsICIiLCAiXG5cdCIpKQplbmQKX3AoJyAgZW5kZWYnKQplbmQKAAAAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgZ21ha2UyID0gcC5tb2R1bGVzLmdtYWtlMgpnbWFrZTIudXRpbGl0eSAgID0ge30KbG9jYWwgdXRpbGl0eSAgICA9IGdtYWtlMi51dGlsaXR5CmxvY2FsIHByb2plY3QgICAgPSBwLnByb2plY3QKbG9jYWwgY29uZmlnICAgICA9IHAuY29uZmlnCmxvY2FsIGZpbGVjb25maWcgPSBwLmZpbGVjb25maWcKdXRpbGl0eS5lbGVtZW50cyA9IHt9CnV0aWxpdHkuZWxlbWVudHMubWFrZWZpbGUgPSBmdW5jdGlvbihwcmopCnJldHVybiB7CmdtYWtlMi5oZWFkZXIsCmdtYWtlMi5waG9ueVJ1bGVzLApnbWFrZTIuc2hlbGxUeXBlLAp1dGlsaXR5LmluaXRpYWxpemUsCnV0aWxpdHkuY3JlYXRlRmlsZVRhYmxlLAp1dGlsaXR5Lm91dHB1dEZpbGVzU2VjdGlvbiwKdXRpbGl0eS5vdXRwdXRSdWxlc1NlY3Rpb24sCnV0aWxpdHkub3V0cHV0RmlsZVJ1bGVTZWN0aW9uLAp9CmVuZApmdW5jdGlvbiB1dGlsaXR5LmdlbmVyYXRlKHByaikKcC5lb2woIlxuIikKcC5jYWxsQXJyYXkodXRpbGl0eS5lbGVtZW50cy5tYWtlZmlsZSwgcHJqKQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmNmZy5fZ21ha2UgPSBuaWwKZW5kCnByai5fZ21ha2UgPSBuaWwKZW5kCmZ1bmN0aW9uIHV0aWxpdHkuaW5pdGlhbGl6ZShwcmopCnByai5fZ21ha2UgPSBwcmouX2dtYWtlIG9yIHt9CnByai5fZ21ha2UucnVsZXMgPSBwcmoucnVsZXMKcHJqLl9nbWFrZS5maWxlc2V0cyA9IHsgfQplbmQKZnVuY3Rpb24gdXRpbGl0eS5jcmVhdGVGaWxlVGFibGUocHJqKQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmNmZy5fZ21ha2UgPSBjZmcuX2dtYWtlIG9yIHt9CmNmZy5fZ21ha2UuZmlsZXNldHMgPSB7fQpjZmcuX2dtYWtlLmZpbGVSdWxlcyA9IHt9CmxvY2FsIGZpbGVzID0gdGFibGUuc2hhbGxvd2NvcHkocHJqLl8uZmlsZXMpCnRhYmxlLmZvcmVhY2hpKGZpbGVzLCBmdW5jdGlvbihub2RlKQp1dGlsaXR5LmFkZEZpbGUoY2ZnLCBub2RlLCBwcmopCmVuZCkKZm9yIF8sIGYgaW4gcGFpcnMoY2ZnLl9nbWFrZS5maWxlc2V0cykgZG8KdGFibGUuc29ydChmKQplbmQKY2ZnLl9nbWFrZS5raW5kcyA9IHRhYmxlLmtleXMoY2ZnLl9nbWFrZS5maWxlc2V0cykKdGFibGUuc29ydChjZmcuX2dtYWtlLmtpbmRzKQpwcmouX2dtYWtlLmtpbmRzID0gdGFibGUuam9pbihwcmouX2dtYWtlLmtpbmRzIG9yIHt9LCBjZmcuX2dtYWtlLmtpbmRzKQplbmQKcHJqLl9nbWFrZS5raW5kcyA9IHRhYmxlLnVuaXF1ZShwcmouX2dtYWtlLmtpbmRzKQp0YWJsZS5zb3J0KHByai5fZ21ha2Uua2luZHMpCmVuZApmdW5jdGlvbiB1dGlsaXR5LmFkZEZpbGUoY2ZnLCBub2RlLCBwcmopCmxvY2FsIGZpbGVjZmcgPSBmaWxlY29uZmlnLmdldGNvbmZpZyhub2RlLCBjZmcpCmlmIG5vdCBmaWxlY2ZnIG9yIGZpbGVjZmcuZmxhZ3MuRXhjbHVkZUZyb21CdWlsZCB0aGVuCnJldHVybgplbmQKaWYgbm9kZS5nZW5lcmF0ZWQgdGhlbgpyZXR1cm4KZW5kCmlmIGZpbGVjb25maWcuaGFzQ3VzdG9tQnVpbGRSdWxlKGZpbGVjZmcpIHRoZW4KbG9jYWwgZW52ID0gdGFibGUuc2hhbGxvd2NvcHkoZmlsZWNmZy5lbnZpcm9uKQplbnYuUGF0aFZhcnMgPSB7ClsiZmlsZS5iYXNlbmFtZSJdID0geyBhYnNvbHV0ZSA9IGZhbHNlLCB0b2tlbiA9IG5vZGUuYmFzZW5hbWUgfSwKWyJmaWxlLmFic3BhdGgiXSAgPSB7IGFic29sdXRlID0gdHJ1ZSwgIHRva2VuID0gbm9kZS5hYnNwYXRoIH0sClsiZmlsZS5yZWxwYXRoIl0gID0geyBhYnNvbHV0ZSA9IGZhbHNlLCB0b2tlbiA9IG5vZGUucmVscGF0aCB9LApbImZpbGUubmFtZSJdICAgICA9IHsgYWJzb2x1dGUgPSBmYWxzZSwgdG9rZW4gPSBub2RlLm5hbWUgfSwKWyJmaWxlLnBhdGgiXSAgICAgPSB7IGFic29sdXRlID0gdHJ1ZSwgIHRva2VuID0gbm9kZS5wYXRoIH0sCn0KbG9jYWwgc2hhZG93Q29udGV4dCA9IHAuY29udGV4dC5leHRlbnQoZmlsZWNmZywgZW52KQpsb2NhbCBidWlsZG91dHB1dHMgPSBwLnByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIHNoYWRvd0NvbnRleHQuYnVpbGRvdXRwdXRzKQppZiBidWlsZG91dHB1dHMgYW5kICNidWlsZG91dHB1dHMgPiAwIHRoZW4KbG9jYWwgZmlsZSA9IHsKYnVpbGRvdXRwdXRzICA9IGJ1aWxkb3V0cHV0cywKc291cmNlICAgICAgICA9IG5vZGUucmVscGF0aCwKYnVpbGRtZXNzYWdlICA9IHNoYWRvd0NvbnRleHQuYnVpbGRtZXNzYWdlLApidWlsZGNvbW1hbmRzID0gc2hhZG93Q29udGV4dC5idWlsZGNvbW1hbmRzLApidWlsZGlucHV0cyAgID0gcC5wcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBzaGFkb3dDb250ZXh0LmJ1aWxkaW5wdXRzKQp9CnRhYmxlLmluc2VydChjZmcuX2dtYWtlLmZpbGVSdWxlcywgZmlsZSkKZm9yIF8sIG91dHB1dCBpbiBpcGFpcnMoYnVpbGRvdXRwdXRzKSBkbwp1dGlsaXR5LmFkZEdlbmVyYXRlZEZpbGUoY2ZnLCBub2RlLCBvdXRwdXQpCmVuZAplbmQKZWxzZQp1dGlsaXR5LmFkZFJ1bGVGaWxlKGNmZywgbm9kZSkKZW5kCmVuZApmdW5jdGlvbiB1dGlsaXR5LmFkZEdlbmVyYXRlZEZpbGUoY2ZnLCBzb3VyY2UsIGZpbGVuYW1lKQpjZmcucHJvamVjdC5oYXNHZW5lcmF0ZWRGaWxlcyA9IHRydWUKbG9jYWwgZmlsZXMgPSBjZmcucHJvamVjdC5fLmZpbGVzCmxvY2FsIG5vZGUgPSBmaWxlc1tmaWxlbmFtZV0KaWYgbm90IG5vZGUgdGhlbgpub2RlID0gZmlsZWNvbmZpZy5uZXcoZmlsZW5hbWUsIGNmZy5wcm9qZWN0KQpmaWxlc1tmaWxlbmFtZV0gPSBub2RlCnRhYmxlLmluc2VydChmaWxlcywgbm9kZSkKZW5kCm5vZGUuZGVwZW5kc09uID0gc291cmNlCm5vZGUuZ2VuZXJhdGVkID0gdHJ1ZQppZiBub3QgZmlsZWNvbmZpZy5nZXRjb25maWcobm9kZSwgY2ZnKSB0aGVuCmZpbGVjb25maWcuYWRkY29uZmlnKG5vZGUsIGNmZykKZW5kCmxvY2FsIGZpbGVzZXRzID0gY2ZnLnByb2plY3QuX2dtYWtlLmZpbGVzZXRzCmxvY2FsIGtpbmQgPSAiQ1VTVE9NIgpsb2NhbCBmaWxlc2V0ID0gY2ZnLl9nbWFrZS5maWxlc2V0c1traW5kXSBvciB7fQp0YWJsZS5pbnNlcnQoZmlsZXNldCwgZmlsZW5hbWUpCmNmZy5fZ21ha2UuZmlsZXNldHNba2luZF0gPSBmaWxlc2V0CnV0aWxpdHkuYWRkUnVsZUZpbGUoY2ZnLCBub2RlKQplbmQKZnVuY3Rpb24gdXRpbGl0eS5hZGRSdWxlRmlsZShjZmcsIG5vZGUpCmxvY2FsIHJ1bGVzID0gY2ZnLnByb2plY3QuX2dtYWtlLnJ1bGVzCmxvY2FsIHJ1bGUgPSBydWxlc1twYXRoLmdldGV4dGVuc2lvbihub2RlLmFic3BhdGgpOmxvd2VyKCldCmlmIHJ1bGUgdGhlbgpsb2NhbCBmaWxlY2ZnID0gZmlsZWNvbmZpZy5nZXRjb25maWcobm9kZSwgY2ZnKQpsb2NhbCBlbnZpcm9uID0gdGFibGUuc2hhbGxvd2NvcHkoZmlsZWNmZy5lbnZpcm9uKQppZiBydWxlLnByb3BlcnR5ZGVmaW5pdGlvbiB0aGVuCnAucnVsZS5wcmVwYXJlRW52aXJvbm1lbnQocnVsZSwgZW52aXJvbiwgIiQoJXMpIikKZW5kCmxvY2FsIHNoYWRvd0NvbnRleHQgPSBwLmNvbnRleHQuZXh0ZW50KHJ1bGUsIGVudmlyb24pCmxvY2FsIGJ1aWxkb3V0cHV0cyAgPSBzaGFkb3dDb250ZXh0LmJ1aWxkb3V0cHV0cwpsb2NhbCBidWlsZG1lc3NhZ2UgID0gc2hhZG93Q29udGV4dC5idWlsZG1lc3NhZ2UKbG9jYWwgYnVpbGRjb21tYW5kcyA9IHNoYWRvd0NvbnRleHQuYnVpbGRjb21tYW5kcwpsb2NhbCBidWlsZGlucHV0cyAgID0gc2hhZG93Q29udGV4dC5idWlsZGlucHV0cwpidWlsZG91dHB1dHMgPSBwLnByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIGJ1aWxkb3V0cHV0cykKaWYgYnVpbGRvdXRwdXRzIGFuZCAjYnVpbGRvdXRwdXRzID4gMCB0aGVuCmxvY2FsIGZpbGUgPSB7CmJ1aWxkb3V0cHV0cyAgPSBidWlsZG91dHB1dHMsCnNvdXJjZSAgICAgICAgPSBub2RlLnJlbHBhdGgsCmJ1aWxkbWVzc2FnZSAgPSBidWlsZG1lc3NhZ2UsCmJ1aWxkY29tbWFuZHMgPSBidWlsZGNvbW1hbmRzLApidWlsZGlucHV0cyAgID0gYnVpbGRpbnB1dHMKfQp0YWJsZS5pbnNlcnQoY2ZnLl9nbWFrZS5maWxlUnVsZXMsIGZpbGUpCmZvciBfLCBvdXRwdXQgaW4gaXBhaXJzKGJ1aWxkb3V0cHV0cykgZG8KdXRpbGl0eS5hZGRHZW5lcmF0ZWRGaWxlKGNmZywgbm9kZSwgb3V0cHV0KQplbmQKZW5kCmVuZAplbmQKdXRpbGl0eS5lbGVtZW50cy5jb25maWd1cmF0aW9uID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4gewp1dGlsaXR5LnJ1bGVQcm9wZXJ0aWVzLApnbWFrZTIuc2V0dGluZ3MsCmdtYWtlMi5wcmVCdWlsZENtZHMsCmdtYWtlMi5wcmVMaW5rQ21kcywKZ21ha2UyLnBvc3RCdWlsZENtZHMsCn0KZW5kCmZ1bmN0aW9uIHV0aWxpdHkucnVsZVByb3BlcnRpZXMoY2ZnLCB0b29sc2V0KQpmb3IgaSA9IDEsICNjZmcucnVsZXMgZG8KbG9jYWwgcnVsZSA9IHAuZ2xvYmFsLmdldFJ1bGUoY2ZnLnJ1bGVzW2ldKQpmb3IgcHJvcCBpbiBwLnJ1bGUuZWFjaFByb3BlcnR5KHJ1bGUpIGRvCmxvY2FsIGZsZCA9IHAucnVsZS5nZXRQcm9wZXJ0eUZpZWxkKHJ1bGUsIHByb3ApCmxvY2FsIHZhbHVlID0gY2ZnW2ZsZC5uYW1lXQppZiB2YWx1ZSB+PSBuaWwgdGhlbgppZiBmbGQua2luZCA9PSAicGF0aCIgdGhlbgp2YWx1ZSA9IGdtYWtlMi5wYXRoKGNmZywgdmFsdWUpCmVsc2VpZiBmbGQua2luZCA9PSAibGlzdDpwYXRoIiB0aGVuCnZhbHVlID0gZ21ha2UyLnBhdGgoY2ZnLCB2YWx1ZSkKZW5kCnZhbHVlID0gcC5ydWxlLmV4cGFuZFN0cmluZyhydWxlLCBwcm9wLCB2YWx1ZSkKaWYgdmFsdWUgfj0gbmlsIGFuZCAjdmFsdWUgPiAwIHRoZW4KcC5vdXRsbihwcm9wLm5hbWUgLi4gJyA9ICcgLi4gcC5lc2ModmFsdWUpKQplbmQKZW5kCmVuZAplbmQKZW5kCnV0aWxpdHkuZWxlbWVudHMuZmlsZXNldHMgPSBmdW5jdGlvbihjZmcpCmxvY2FsIHJlc3VsdCA9IHt9CmZvciBfLCBraW5kIGluIGlwYWlycyhjZmcuX2dtYWtlLmtpbmRzKSBkbwpmb3IgXywgZiBpbiBpcGFpcnMoY2ZnLl9nbWFrZS5maWxlc2V0c1traW5kXSkgZG8KdGFibGUuaW5zZXJ0KHJlc3VsdCwgZnVuY3Rpb24oY2ZnLCB0b29sc2V0KQp1dGlsaXR5Lm91dHB1dEZpbGVzZXQoY2ZnLCBraW5kLCBmKQplbmQpCmVuZAplbmQKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gdXRpbGl0eS5vdXRwdXRGaWxlc1NlY3Rpb24ocHJqKQpfcCgnIyBGaWxlIHNldHMnKQpfcCgnIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMnKQpfcCgnJykKZm9yIF8sIGtpbmQgaW4gaXBhaXJzKHByai5fZ21ha2Uua2luZHMpIGRvCl94KCclcyA6PScsIGtpbmQpCmVuZApfeCgnJykKZ21ha2UyLm91dHB1dFNlY3Rpb24ocHJqLCB1dGlsaXR5LmVsZW1lbnRzLmZpbGVzZXRzKQplbmQKZnVuY3Rpb24gdXRpbGl0eS5vdXRwdXRGaWxlc2V0KGNmZywga2luZCwgZmlsZSkKX3goJyVzICs9ICVzJywga2luZCwgZmlsZSkKZW5kCnV0aWxpdHkuZWxlbWVudHMucnVsZXMgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7CnV0aWxpdHkuYWxsUnVsZXMsCnV0aWxpdHkudGFyZ2V0UnVsZXMsCmdtYWtlMi50YXJnZXREaXJSdWxlcywKdXRpbGl0eS5jbGVhblJ1bGVzLApnbWFrZTIucHJlQnVpbGRSdWxlcywKZ21ha2UyLnByZUxpbmtSdWxlcywKfQplbmQKZnVuY3Rpb24gdXRpbGl0eS5vdXRwdXRSdWxlc1NlY3Rpb24ocHJqKQpfcCgnIyBSdWxlcycpCl9wKCcjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIycpCl9wKCcnKQpnbWFrZTIub3V0cHV0U2VjdGlvbihwcmosIHV0aWxpdHkuZWxlbWVudHMucnVsZXMpCmVuZApmdW5jdGlvbiB1dGlsaXR5LmFsbFJ1bGVzKGNmZywgdG9vbHNldCkKbG9jYWwgYWxsVGFyZ2V0cyA9ICdhbGw6ICQoVEFSR0VURElSKSBwcmVidWlsZCBwcmVsaW5rICQoVEFSR0VUKScKZm9yIF8sIGtpbmQgaW4gaXBhaXJzKGNmZy5fZ21ha2Uua2luZHMpIGRvCmFsbFRhcmdldHMgPSBhbGxUYXJnZXRzIC4uICcgJCgnIC4uIGtpbmQgLi4gJyknCmVuZApfcChhbGxUYXJnZXRzKQpfcCgnXHRAOicpCl9wKCcnKQplbmQKZnVuY3Rpb24gdXRpbGl0eS50YXJnZXRSdWxlcyhjZmcsIHRvb2xzZXQpCmxvY2FsIHRhcmdldHMgPSAnJwpmb3IgXywga2luZCBpbiBpcGFpcnMoY2ZnLl9nbWFrZS5raW5kcykgZG8KdGFyZ2V0cyA9IHRhcmdldHMgLi4gJyQoJyAuLiBraW5kIC4uICcpICcKZW5kCl9wKCckKFRBUkdFVCk6ICVzJywgdGFyZ2V0cykKX3AoJ1x0JChQT1NUQlVJTERDTURTKScpCl9wKCcnKQplbmQKZnVuY3Rpb24gdXRpbGl0eS5jbGVhblJ1bGVzKGNmZywgdG9vbHNldCkKX3AoJ2NsZWFuOicpCl9wKCdcdEBlY2hvIENsZWFuaW5nICVzJywgY2ZnLnByb2plY3QubmFtZSkKX3AoJycpCmVuZAp1dGlsaXR5LmVsZW1lbnRzLmZpbGVSdWxlcyA9IGZ1bmN0aW9uKGNmZykKbG9jYWwgZnVuY3MgPSB7fQpmb3IgXywgZmlsZVJ1bGUgaW4gaXBhaXJzKGNmZy5fZ21ha2UuZmlsZVJ1bGVzKSBkbwp0YWJsZS5pbnNlcnQoZnVuY3MsIGZ1bmN0aW9uKGNmZywgdG9vbHNldCkKdXRpbGl0eS5vdXRwdXRGaWxlUnVsZXMoY2ZnLCBmaWxlUnVsZSkKZW5kKQplbmQKcmV0dXJuIGZ1bmNzCmVuZApmdW5jdGlvbiB1dGlsaXR5Lm91dHB1dEZpbGVSdWxlU2VjdGlvbihwcmopCl9wKCcjIEZpbGUgUnVsZXMnKQpfcCgnIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMnKQpfcCgnJykKZ21ha2UyLm91dHB1dFNlY3Rpb24ocHJqLCB1dGlsaXR5LmVsZW1lbnRzLmZpbGVSdWxlcykKZW5kCmZ1bmN0aW9uIHV0aWxpdHkub3V0cHV0RmlsZVJ1bGVzKGNmZywgZmlsZSkKbG9jYWwgb3V0cHV0cyA9IHRhYmxlLmNvbmNhdChmaWxlLmJ1aWxkb3V0cHV0cywgJyAnKQpsb2NhbCBkZXBlbmRlbmNpZXMgPSBmaWxlLnNvdXJjZQppZiBmaWxlLmJ1aWxkaW5wdXRzIGFuZCAjZmlsZS5idWlsZGlucHV0cyA+IDAgdGhlbgpkZXBlbmRlbmNpZXMgPSBkZXBlbmRlbmNpZXMgLi4gIiAiIC4uIHRhYmxlLmNvbmNhdChwLmVzYyhmaWxlLmJ1aWxkaW5wdXRzKSwgIiAiKQplbmQKX3AoJyVzOiAlcycsIG91dHB1dHMsIGRlcGVuZGVuY2llcykKaWYgZmlsZS5idWlsZG1lc3NhZ2UgdGhlbgpfcCgnXHRAZWNobyAlcycsIGZpbGUuYnVpbGRtZXNzYWdlKQplbmQKaWYgZmlsZS5idWlsZGNvbW1hbmRzIHRoZW4KbG9jYWwgY21kcyA9IG9zLnRyYW5zbGF0ZUNvbW1hbmRzQW5kUGF0aHMoZmlsZS5idWlsZGNvbW1hbmRzLCBjZmcucHJvamVjdC5iYXNlZGlyLCBjZmcucHJvamVjdC5sb2NhdGlvbikKZm9yIF8sIGNtZCBpbiBpcGFpcnMoY21kcykgZG8KX3AoJ1x0JChTSUxFTlQpICVzJywgY21kKQplbmQKZW5kCmVuZApsb2NhbCBwID0gcHJlbWFrZQpsb2NhbCBnbWFrZTIgPSBwLm1vZHVsZXMuZ21ha2UyCmxvY2FsIHRyZWUgICAgPSBwLnRyZWUKbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApmdW5jdGlvbiBnbWFrZTIuZ2VuZXJhdGVfd29ya3NwYWNlKHdrcykKcC5lb2woIlxuIikKZ21ha2UyLmhlYWRlcih3a3MpCmdtYWtlMi5jb25maWdtYXAod2tzKQpnbWFrZTIucHJvamVjdHMod2tzKQpnbWFrZTIud29ya3NwYWNlUGhvbnlSdWxlKHdrcykKZ21ha2UyLmdyb3VwUnVsZXMod2tzKQpnbWFrZTIucHJvamVjdHJ1bGVzKHdrcykKZ21ha2UyLmNsZWFucnVsZXMod2tzKQpnbWFrZTIuaGVscHJ1bGUod2tzKQplbmQKZnVuY3Rpb24gZ21ha2UyLmNvbmZpZ21hcCh3a3MpCmZvciBjZmcgaW4gcC53b3Jrc3BhY2UuZWFjaGNvbmZpZyh3a3MpIGRvCl9wKCdpZmVxICgkKGNvbmZpZyksJXMpJywgY2ZnLnNob3J0bmFtZSkKZm9yIHByaiBpbiBwLndvcmtzcGFjZS5lYWNocHJvamVjdCh3a3MpIGRvCmxvY2FsIHByamNmZyA9IHByb2plY3QuZ2V0Y29uZmlnKHByaiwgY2ZnLmJ1aWxkY2ZnLCBjZmcucGxhdGZvcm0pCmlmIHByamNmZyB0aGVuCl9wKCcgICVzX2NvbmZpZyA9ICVzJywgZ21ha2UyLnRvdmFyKHByai5uYW1lKSwgcHJqY2ZnLnNob3J0bmFtZSkKZW5kCmVuZApfcCgnZW5kaWYnKQplbmQKX3AoJycpCmVuZApmdW5jdGlvbiBnbWFrZTIuY2xlYW5ydWxlcyh3a3MpCl9wKCdjbGVhbjonKQpmb3IgcHJqIGluIHAud29ya3NwYWNlLmVhY2hwcm9qZWN0KHdrcykgZG8KbG9jYWwgcHJqcGF0aCA9IHAuZmlsZW5hbWUocHJqLCBnbWFrZTIuZ2V0bWFrZWZpbGVuYW1lKHByaiwgdHJ1ZSkpCmxvY2FsIHByamRpciA9IHBhdGguZ2V0ZGlyZWN0b3J5KHBhdGguZ2V0cmVsYXRpdmUod2tzLmxvY2F0aW9uLCBwcmpwYXRoKSkKbG9jYWwgcHJqbmFtZSA9IHBhdGguZ2V0bmFtZShwcmpwYXRoKQpfeCgxLCdAJHtNQUtFfSAtLW5vLXByaW50LWRpcmVjdG9yeSAtQyAlcyAtZiAlcyBjbGVhbicsIHByamRpciwgcHJqbmFtZSkKZW5kCl9wKCcnKQplbmQKZnVuY3Rpb24gZ21ha2UyLmhlbHBydWxlKHdrcykKX3AoJ2hlbHA6JykKX3AoMSwnQGVjaG8gIlVzYWdlOiBtYWtlIFtjb25maWc9bmFtZV0gW3RhcmdldF0iJykKX3AoMSwnQGVjaG8gIiInKQpfcCgxLCdAZWNobyAiQ09ORklHVVJBVElPTlM6IicpCmZvciBjZmcgaW4gcC53b3Jrc3BhY2UuZWFjaGNvbmZpZyh3a3MpIGRvCl94KDEsICdAZWNobyAiICAlcyInLCBjZmcuc2hvcnRuYW1lKQplbmQKX3AoMSwnQGVjaG8gIiInKQpfcCgxLCdAZWNobyAiVEFSR0VUUzoiJykKX3AoMSwnQGVjaG8gIiAgIGFsbCAoZGVmYXVsdCkiJykKX3AoMSwnQGVjaG8gIiAgIGNsZWFuIicpCmZvciBwcmogaW4gcC53b3Jrc3BhY2UuZWFjaHByb2plY3Qod2tzKSBkbwpfcCgxLCdAZWNobyAiICAgJXMiJywgcHJqLm5hbWUpCmVuZApfcCgxLCdAZWNobyAiIicpCl9wKDEsJ0BlY2hvICJGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIGh0dHA6Ly9pbmR1c3RyaW91c29uZS5jb20vcHJlbWFrZS9xdWljay1zdGFydCInKQplbmQKZnVuY3Rpb24gZ21ha2UyLnByb2plY3RzKHdrcykKX3AoJ1BST0pFQ1RTIDo9ICVzJywgdGFibGUuY29uY2F0KHAuZXNjKHRhYmxlLmV4dHJhY3Qod2tzLnByb2plY3RzLCAibmFtZSIpKSwgIiAiKSkKX3AoJycpCmVuZApmdW5jdGlvbiBnbWFrZTIud29ya3NwYWNlUGhvbnlSdWxlKHdrcykKbG9jYWwgZ3JvdXBzID0ge30KbG9jYWwgdHIgPSBwLndvcmtzcGFjZS5ncm91cHRyZWUod2tzKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9uYnJhbmNoID0gZnVuY3Rpb24obikKdGFibGUuaW5zZXJ0KGdyb3Vwcywgbi5wYXRoKQplbmQKfSkKX3AoJy5QSE9OWTogYWxsIGNsZWFuIGhlbHAgJChQUk9KRUNUUykgJyAuLiB0YWJsZS5pbXBsb2RlKGdyb3VwcywgJycsICcnLCAnICcpKQpfcCgnJykKX3AoJ2FsbDogJChQUk9KRUNUUyknKQpfcCgnJykKZW5kCmZ1bmN0aW9uIGdtYWtlMi5ncm91cFJ1bGVzKHdrcykKbG9jYWwgdHIgPSBwLndvcmtzcGFjZS5ncm91cHRyZWUod2tzKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9uYnJhbmNoID0gZnVuY3Rpb24obikKbG9jYWwgcnVsZSA9IG4ucGF0aCAuLiAiOiIKbG9jYWwgcHJvamVjdFRhcmdldHMgPSB7fQpsb2NhbCBncm91cFRhcmdldHMgPSB7fQpmb3IgaSwgYyBpbiBwYWlycyhuLmNoaWxkcmVuKQpkbwppZiB0eXBlKGkpID09ICJzdHJpbmciCnRoZW4KaWYgYy5wcm9qZWN0CnRoZW4KdGFibGUuaW5zZXJ0KHByb2plY3RUYXJnZXRzLCBjLm5hbWUpCmVsc2UKdGFibGUuaW5zZXJ0KGdyb3VwVGFyZ2V0cywgYy5wYXRoKQplbmQKZW5kCmVuZAppZiAjZ3JvdXBUYXJnZXRzID4gMCB0aGVuCnRhYmxlLnNvcnQoZ3JvdXBUYXJnZXRzKQpydWxlID0gcnVsZSAuLiAiICIgLi4gdGFibGUuY29uY2F0KGdyb3VwVGFyZ2V0cywgIiAiKQplbmQKaWYgI3Byb2plY3RUYXJnZXRzID4gMCB0aGVuCnRhYmxlLnNvcnQocHJvamVjdFRhcmdldHMpCnJ1bGUgPSBydWxlIC4uICIgIiAuLiB0YWJsZS5jb25jYXQocHJvamVjdFRhcmdldHMsICIgIikKZW5kCl9wKHJ1bGUpCl9wKCcnKQplbmQKfSkKZW5kCmZ1bmN0aW9uIGdtYWtlMi5wcm9qZWN0cnVsZXMod2tzKQpmb3IgcHJqIGluIHAud29ya3NwYWNlLmVhY2hwcm9qZWN0KHdrcykgZG8KbG9jYWwgZGVwcyA9IHByb2plY3QuZ2V0ZGVwZW5kZW5jaWVzKHByaikKZGVwcyA9IHRhYmxlLmV4dHJhY3QoZGVwcywgIm5hbWUiKQpfcCgnJXM6JXMnLCBwLmVzYyhwcmoubmFtZSksIGdtYWtlMi5saXN0KGRlcHMpKQpsb2NhbCBjZmd2YXIgPSBnbWFrZTIudG92YXIocHJqLm5hbWUpCl9wKCdpZm5lcSAoLCQoJXNfY29uZmlnKSknLCBjZmd2YXIpCl9wKDEsJ0BlY2hvICI9PT09IEJ1aWxkaW5nICVzICgkKCVzX2NvbmZpZykpID09PT0iJywgcHJqLm5hbWUsIGNmZ3ZhcikKbG9jYWwgcHJqcGF0aCA9IHAuZmlsZW5hbWUocHJqLCBnbWFrZTIuZ2V0bWFrZWZpbGVuYW1lKHByaiwgdHJ1ZSkpCmxvY2FsIHByamRpciA9IHBhdGguZ2V0ZGlyZWN0b3J5KHBhdGguZ2V0cmVsYXRpdmUod2tzLmxvY2F0aW9uLCBwcmpwYXRoKSkKbG9jYWwgcHJqbmFtZSA9IHBhdGguZ2V0bmFtZShwcmpwYXRoKQpfeCgxLCdAJHtNQUtFfSAtLW5vLXByaW50LWRpcmVjdG9yeSAtQyAlcyAtZiAlcyBjb25maWc9JCglc19jb25maWcpJywgcHJqZGlyLCBwcmpuYW1lLCBjZmd2YXIpCl9wKCdlbmRpZicpCl9wKCcnKQplbmQKZW5kCm5ld2FjdGlvbgp7CnRyaWdnZXIgICAgICAgICA9ICJyYXciLApzaG9ydG5hbWUgICAgICAgPSAiUmF3IG91dHB1dCIsCmRlc2NyaXB0aW9uICAgICA9ICJHZW5lcmF0ZSByYXcgcmVwcmVzZW50YXRpb24gb2YgUHJlbWFrZSBzdHJ1Y3R1cmVzIiwKb25zb2x1dGlvbiA9IGZ1bmN0aW9uKHNsbikKcmVxdWlyZSgncmF3JykKcHJlbWFrZS5nZW5lcmF0ZShzbG4sICIucmF3IiwgcHJlbWFrZS5yYXcud29ya3NwYWNlKQplbmQsCn0KcmV0dXJuIGZ1bmN0aW9uKGNmZykKcmV0dXJuIChfQUNUSU9OID09ICJyYXciKQplbmQKAAAAbG9jYWwgcCA9IHByZW1ha2UKcC5tb2R1bGVzLnJhdyA9IHt9CmxvY2FsIG0gPSBwLm1vZHVsZXMucmF3Cm0uZWxlbWVudHMgPSB7fQpkb2ZpbGUoIl9wcmVsb2FkLmx1YSIpCmRvZmlsZSgicmF3X2FjdGlvbi5sdWEiKQpyZXR1cm4gbQoAAGxvY2FsIHAgPSBwcmVtYWtlCnAucmF3ID0geyB9CmxvY2FsIHJhdyA9IHAucmF3CmxvY2FsIGd2aXNpdGVkID0geyB9CmZ1bmN0aW9uIHJhdy53b3Jrc3BhY2Uod2tzKQppZiBub3QgZ3Zpc2l0ZWRbd2tzLmdsb2JhbF0gdGhlbgpndmlzaXRlZFt3a3MuZ2xvYmFsXSA9IHRydWUKcmF3LnByaW50VGFibGUoeyBnbG9iYWwgPSB3a3MuZ2xvYmFsIH0pCmVuZAplbmQKZnVuY3Rpb24gcmF3LnByaW50VGFibGUodCwgaSkKaSA9IGkgb3IgMApwbGFjZW1lbnQgPSByYXcuX2NyZWF0ZVBsYWNlbWVudCh0KQpyYXcuX3ByaW50VGFibGVSZWN1cnNpdmUodCwgaSwgcGxhY2VtZW50KQplbmQKZnVuY3Rpb24gcmF3Ll9wcmludFRhYmxlUmVjdXJzaXZlKHQsIGksIHBsYWNlbWVudCkKZWxlbWVudHMgPSB7IH0KZm9yIGssIHYgaW4gcGFpcnModCkgZG8KdGFibGUuaW5zZXJ0KGVsZW1lbnRzLCB7IGtleSA9IGssIHZhbHVlID0gdiB9KQplbmQKdGFibGUuc29ydChlbGVtZW50cywgZnVuY3Rpb24oYSwgYikKbG9jYWwgbjEgPSB0eXBlKGEua2V5KSA9PSAibnVtYmVyIgpsb2NhbCBuMiA9IHR5cGUoYi5rZXkpID09ICJudW1iZXIiCmlmIG4xIH49IG4yIHRoZW4KcmV0dXJuIG4xCmVuZApsb2NhbCBrMSA9IG4xIGFuZCBhLmtleSBvciByYXcuX2VuY29kZShhLmtleSkKbG9jYWwgazIgPSBuMiBhbmQgYi5rZXkgb3IgcmF3Ll9lbmNvZGUoYi5rZXkpCnJldHVybiBrMSA8IGsyCmVuZCkKZm9yIF8sIGVsZW0gaW4gaXBhaXJzKGVsZW1lbnRzKSBkbwpwID0gcGxhY2VtZW50W2VsZW0udmFsdWVdCmlmIHAgYW5kIGVsZW0ua2V5ID09IHAua2V5IGFuZCB0ID09IHAucGFyZW50IHRoZW4KX3AoaSwgIiVzIiwgcmF3Ll9lbmNvZGUoZWxlbS5rZXkpIC4uICc6ICcgLi4gcmF3Ll9lbmNvZGUoZWxlbS52YWx1ZSkgLi4gJyB7JykKcmF3Ll9wcmludFRhYmxlUmVjdXJzaXZlKGVsZW0udmFsdWUsIGkgKyAxLCBwbGFjZW1lbnQpCl9wKGksICd9ICMgJyAuLiByYXcuX2VuY29kZShlbGVtLmtleSkpCmVsc2UKX3AoaSwgIiVzIiwgcmF3Ll9lbmNvZGUoZWxlbS5rZXkpIC4uICc6ICcgLi4gcmF3Ll9lbmNvZGUoZWxlbS52YWx1ZSkpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIHJhdy5fY3JlYXRlUGxhY2VtZW50KHRibCkKcGxhY2VtZW50ID0geyB9CnBsYWNlbWVudExpc3QgPSB7IHRibCB9CndoaWxlICNwbGFjZW1lbnRMaXN0IH49IDAgZG8KcGFyZW50TGlzdCA9IHsgfQpmb3IgXywgcGFyZW50IGluIGlwYWlycyhwbGFjZW1lbnRMaXN0KSBkbwpmb3IgaywgdiBpbiBwYWlycyhwYXJlbnQpIGRvCmlmIHR5cGUodikgPT0gInRhYmxlIiBhbmQgbm90IHBsYWNlbWVudFt2XSB0aGVuCnRhYmxlLmluc2VydChwYXJlbnRMaXN0LCB2KQpwbGFjZW1lbnRbdl0gPSB7CnBhcmVudCA9IHBhcmVudCwKa2V5ID0gawp9CmVuZAplbmQKZW5kCnBsYWNlbWVudExpc3QgPSBwYXJlbnRMaXN0CmVuZApyZXR1cm4gcGxhY2VtZW50CmVuZApmdW5jdGlvbiByYXcuX2VuY29kZSh2KQppZiB0eXBlKHYpID09ICJzdHJpbmciIHRoZW4KcmV0dXJuICciJyAuLiB2IC4uICciJwplbHNlCnJldHVybiB0b3N0cmluZyh2KQplbmQKZW5kCgAAAABsb2NhbCBwID0gcHJlbWFrZQpwLm1vZHVsZXMuc2VsZl90ZXN0ID0ge30KbG9jYWwgbSA9IHAubW9kdWxlcy5zZWxmX3Rlc3QKbS5fVkVSU0lPTiA9IHAuX1ZFUlNJT04KbmV3YWN0aW9uIHsKdHJpZ2dlciA9ICJzZWxmLXRlc3QiLApzaG9ydG5hbWUgID0gIlRlc3QgUHJlbWFrZSIsCmRlc2NyaXB0aW9uID0gIlJ1biBQcmVtYWtlJ3Mgb3duIGxvY2FsIHVuaXQgdGVzdCBzdWl0ZXMiLApleGVjdXRlID0gZnVuY3Rpb24oKQptLmV4ZWN1dGVTZWxmVGVzdCgpCmVuZAp9Cm5ld29wdGlvbiB7CnRyaWdnZXIgPSAidGVzdC1vbmx5IiwKdmFsdWUgPSAic3VpdGVbLnRlc3RdIiwKZGVzY3JpcHRpb24gPSAiRm9yIHNlbGYtdGVzdCBhY3Rpb247IHJ1biBzcGVjaWZpYyBzdWl0ZSBvciB0ZXN0Igp9CmZ1bmN0aW9uIG0uZXhlY3V0ZVNlbGZUZXN0KCkKbS5sb2FkVGVzdHNGcm9tTWFuaWZlc3RzKCkKbG9jYWwgdGVzdCwgZXJyID0gbS5nZXRUZXN0V2l0aElkZW50aWZpZXIoX09QVElPTlNbInRlc3Qtb25seSJdKQppZiBlcnIgdGhlbgplcnJvcihlcnIsIDApCmVuZApsb2NhbCBzdGFydFRpbWUgPSBvcy5jbG9jaygpCmxvY2FsIHBhc3NlZCwgZmFpbGVkID0gbS5ydW5UZXN0KHRlc3QpCmxvY2FsIGVsYXBzZWQgPSBvcy5jbG9jaygpIC0gc3RhcnRUaW1lCnByaW50ZigiJWQgdGVzdHMgcGFzc2VkLCAlZCBmYWlsZWQgaW4gJTAuMDJmIHNlY29uZHMiLCBwYXNzZWQsIGZhaWxlZCwgZWxhcHNlZCkKaWYgZmFpbGVkID4gMCB0aGVuCm9zLmV4aXQoNSkKZW5kCmVuZApmdW5jdGlvbiBtLmxvYWRUZXN0c0Zyb21NYW5pZmVzdHMoKQpsb2NhbCBtYXNrID0gcGF0aC5qb2luKF9NQUlOX1NDUklQVF9ESVIsICIqKi90ZXN0cy9fdGVzdHMubHVhIikKbG9jYWwgbWFuaWZlc3RzID0gb3MubWF0Y2hmaWxlcyhtYXNrKQpsb2NhbCB0b3AgPSBwYXRoLmpvaW4oX01BSU5fU0NSSVBUX0RJUiwgInRlc3RzL190ZXN0cy5sdWEiKQppZiBvcy5pc2ZpbGUodG9wKSB0aGVuCnRhYmxlLmluc2VydChtYW5pZmVzdHMsIDEsIHRvcCkKZW5kCmZvciBpID0gMSwgI21hbmlmZXN0cyBkbwpsb2NhbCBtYW5pZmVzdCA9IG1hbmlmZXN0c1tpXQpfVEVTVFNfRElSID0gcGF0aC5nZXRkaXJlY3RvcnkobWFuaWZlc3QpCmxvY2FsIGZpbGVzID0gZG9maWxlKG1hbmlmZXN0KQpmb3IgaSA9IDEsICNmaWxlcyBkbwpsb2NhbCBmaWxlbmFtZSA9IHBhdGguam9pbihfVEVTVFNfRElSLCBmaWxlc1tpXSkKZG9maWxlKGZpbGVuYW1lKQplbmQKZW5kCmVuZApkb2ZpbGUoInRlc3RfYXNzZXJ0aW9ucy5sdWEiKQpkb2ZpbGUoInRlc3RfZGVjbGFyZS5sdWEiKQpkb2ZpbGUoInRlc3RfaGVscGVycy5sdWEiKQpkb2ZpbGUoInRlc3RfcnVubmVyLmx1YSIpCnJldHVybiBtCgAAAAAAAGxvY2FsIHAgPSBwcmVtYWtlCmxvY2FsIG0gPSBwLm1vZHVsZXMuc2VsZl90ZXN0CmxvY2FsIF8gPSB7fQpmdW5jdGlvbiBtLmNhcHR1cmUoZXhwZWN0ZWQpCmxvY2FsIGFjdHVhbCA9IHAuY2FwdHVyZWQoKSAuLiBwLmVvbCgpCmxvY2FsIGFpdCA9IGFjdHVhbDpnbWF0Y2goIiguLSkiIC4uIHAuZW9sKCkpCmxvY2FsIGVpdCA9IGV4cGVjdGVkOmdtYXRjaCgiKC4tKVxuIikKbG9jYWwgbGluZW51bSA9IDEKbG9jYWwgYXR4dCA9IGFpdCgpCmxvY2FsIGV0eHQgPSBlaXQoKQp3aGlsZSBldHh0IGRvCmlmIChldHh0IH49IGF0eHQpIHRoZW4KbS5mYWlsKCIoJWQpIGV4cGVjdGVkOlxuJXNcbi4uLmJ1dCB3YXM6XG4lc1xuZnVsbHRleHQ6XG4lcyIsIGxpbmVudW0sIGV0eHQsIGF0eHQsIGFjdHVhbCkKZW5kCmxpbmVudW0gPSBsaW5lbnVtICsgMQphdHh0ID0gYWl0KCkKZXR4dCA9IGVpdCgpCmVuZAplbmQKZnVuY3Rpb24gbS5jbG9zZWRmaWxlKGV4cGVjdGVkKQppZiBleHBlY3RlZCBhbmQgbm90IG0udmFsdWVfY2xvc2VkZmlsZSB0aGVuCm0uZmFpbCgiZXhwZWN0ZWQgZmlsZSB0byBiZSBjbG9zZWQiKQplbHNlaWYgbm90IGV4cGVjdGVkIGFuZCBtLnZhbHVlX2Nsb3NlZGZpbGUgdGhlbgptLmZhaWwoImV4cGVjdGVkIGZpbGUgdG8gcmVtYWluIG9wZW4iKQplbmQKZW5kCmZ1bmN0aW9uIG0uY29udGFpbnMoZXhwZWN0ZWQsIGFjdHVhbCkKaWYgdHlwZShleHBlY3RlZCkgPT0gInRhYmxlIiB0aGVuCmZvciBpLCB2IGluIGlwYWlycyhleHBlY3RlZCkgZG8KbS5jb250YWlucyh2LCBhY3R1YWwpCmVuZAplbHNlaWYgbm90IHRhYmxlLmNvbnRhaW5zKGFjdHVhbCwgZXhwZWN0ZWQpIHRoZW4KbS5mYWlsKCJleHBlY3RlZCB2YWx1ZSAlcyBub3QgZm91bmQiLCBleHBlY3RlZCkKZW5kCmVuZApmdW5jdGlvbiBtLmV4Y2x1ZGVzKGV4cGVjdGVkLCBhY3R1YWwpCmlmIHR5cGUoZXhwZWN0ZWQpID09ICJ0YWJsZSIgdGhlbgpmb3IgaSwgdiBpbiBpcGFpcnMoZXhwZWN0ZWQpIGRvCm0uZXhjbHVkZXModiwgYWN0dWFsKQplbmQKZWxzZWlmIHRhYmxlLmNvbnRhaW5zKGFjdHVhbCwgZXhwZWN0ZWQpIHRoZW4KbS5mYWlsKCJleGNsdWRlZCB2YWx1ZSAlcyBmb3VuZCIsIGV4cGVjdGVkKQplbmQKZW5kCmZ1bmN0aW9uIG0uZmFpbChmb3JtYXQsIC4uLikKbG9jYWwgZGVwdGggPSAzCmxvY2FsIGFyZyA9IHsuLi59CmlmIHR5cGUoZm9ybWF0KSA9PSAibnVtYmVyIiB0aGVuCmRlcHRoID0gZGVwdGggKyBmb3JtYXQKZm9ybWF0ID0gdGFibGUucmVtb3ZlKGFyZywgMSkKZW5kCmZvciBpID0gMSwgI2FyZyBkbwppZiAoYXJnW2ldID09IG5pbCkgdGhlbgphcmdbaV0gPSAiKG5pbCkiCmVsc2VpZiAodHlwZShhcmdbaV0pID09ICJ0YWJsZSIpIHRoZW4KYXJnW2ldID0gInsiIC4uIHRhYmxlLmNvbmNhdChhcmdbaV0sICIsICIpIC4uICJ9IgplbmQKZW5kCmxvY2FsIG1zZyA9IHN0cmluZy5mb3JtYXQoZm9ybWF0LCB0YWJsZS51bnBhY2soYXJnKSkKZXJyb3IoZGVidWcudHJhY2ViYWNrKG1zZywgZGVwdGgpLCBkZXB0aCkKZW5kCmZ1bmN0aW9uIG0uZmlsZWNvbnRhaW5zKGV4cGVjdGVkLCBmbikKbG9jYWwgZiA9IGlvLm9wZW4oZm4pCmxvY2FsIGFjdHVhbCA9IGY6cmVhZCgiKmEiKQpmOmNsb3NlKCkKaWYgKGV4cGVjdGVkIH49IGFjdHVhbCkgdGhlbgptLmZhaWwoImV4cGVjdGVkICVzIGJ1dCB3YXMgJXMiLCBleHBlY3RlZCwgYWN0dWFsKQplbmQKZW5kCmZ1bmN0aW9uIG0uaGFzb3V0cHV0KCkKbG9jYWwgYWN0dWFsID0gcC5jYXB0dXJlZCgpCmlmIGFjdHVhbCA9PSAiIiB0aGVuCm0uZmFpbCgiZXhwZWN0ZWQgb3V0cHV0LCByZWNlaXZlZCBub25lIik7CmVuZAplbmQKZnVuY3Rpb24gbS5pc2VtcHR5Y2FwdHVyZSgpCmxvY2FsIGFjdHVhbCA9IHAuY2FwdHVyZWQoKQppZiBhY3R1YWwgfj0gIiIgdGhlbgptLmZhaWwoImV4cGVjdGVkIGVtcHR5IGNhcHR1cmUsIGJ1dCB3YXMgJXMiLCBhY3R1YWwpOwplbmQKZW5kCmZ1bmN0aW9uIG0uaXNlcXVhbChleHBlY3RlZCwgYWN0dWFsLCBkZXB0aCkKZGVwdGggPSBkZXB0aCBvciAwCmlmIHR5cGUoZXhwZWN0ZWQpID09ICJ0YWJsZSIgdGhlbgppZiBleHBlY3RlZCBhbmQgbm90IGFjdHVhbCB0aGVuCm0uZmFpbChkZXB0aCwgImV4cGVjdGVkIHRhYmxlLCBnb3QgbmlsIikKZW5kCmlmICNleHBlY3RlZCA8ICNhY3R1YWwgdGhlbgptLmZhaWwoZGVwdGgsICJleHBlY3RlZCAlZCBpdGVtcywgZ290ICVkIiwgI2V4cGVjdGVkLCAjYWN0dWFsKQplbmQKZm9yIGssdiBpbiBwYWlycyhleHBlY3RlZCkgZG8KbS5pc2VxdWFsKGV4cGVjdGVkW2tdLCBhY3R1YWxba10sIGRlcHRoICsgMSkKZW5kCmVsc2UKaWYgKGV4cGVjdGVkIH49IGFjdHVhbCkgdGhlbgptLmZhaWwoZGVwdGgsICJleHBlY3RlZCAlcyBidXQgd2FzICVzIiwgZXhwZWN0ZWQsIGFjdHVhbCBvciAibmlsIikKZW5kCmVuZApyZXR1cm4gdHJ1ZQplbmQKZnVuY3Rpb24gbS5pc2ZhbHNlKHZhbHVlKQppZiAodmFsdWUpIHRoZW4KbS5mYWlsKCJleHBlY3RlZCBmYWxzZSBidXQgd2FzIHRydWUiKQplbmQKZW5kCmZ1bmN0aW9uIG0uaXNuaWwodmFsdWUpCmlmICh2YWx1ZSB+PSBuaWwpIHRoZW4KbS5mYWlsKCJleHBlY3RlZCBuaWwgYnV0IHdhcyAiIC4uIHRvc3RyaW5nKHZhbHVlKSkKZW5kCmVuZApmdW5jdGlvbiBtLmlzbm90bmlsKHZhbHVlKQppZiAodmFsdWUgPT0gbmlsKSB0aGVuCm0uZmFpbCgiZXhwZWN0ZWQgbm90IG5pbCIpCmVuZAplbmQKZnVuY3Rpb24gbS5pc3NhbWUoZXhwZWN0ZWQsIGFjdGlvbikKaWYgZXhwZWN0ZWQgfj0gYWN0aW9uIHRoZW4KbS5mYWlsKCJleHBlY3RlZCBzYW1lIHZhbHVlIikKZW5kCmVuZApmdW5jdGlvbiBtLmlzdHJ1ZSh2YWx1ZSkKaWYgKG5vdCB2YWx1ZSkgdGhlbgptLmZhaWwoImV4cGVjdGVkIHRydWUgYnV0IHdhcyBmYWxzZSIpCmVuZAplbmQKZnVuY3Rpb24gbS5taXNzaW5nKHZhbHVlLCBhY3R1YWwpCmlmIHRhYmxlLmNvbnRhaW5zKGFjdHVhbCwgdmFsdWUpIHRoZW4KbS5mYWlsKCJ1bmV4cGVjdGVkIHZhbHVlICVzIGZvdW5kIiwgdmFsdWUpCmVuZAplbmQKZnVuY3Rpb24gbS5vcGVuZWRmaWxlKGZuYW1lKQppZiBmbmFtZSB+PSBtLnZhbHVlX29wZW5lZGZpbGVuYW1lIHRoZW4KbG9jYWwgbXNnID0gImV4cGVjdGVkIHRvIG9wZW4gZmlsZSAnIiAuLiBmbmFtZSAuLiAiJyIKaWYgbS52YWx1ZV9vcGVuZWRmaWxlbmFtZSB0aGVuCm1zZyA9IG1zZyAuLiAiLCBnb3QgJyIgLi4gbS52YWx1ZV9vcGVuZWRmaWxlbmFtZSAuLiAiJyIKZW5kCm0uZmFpbChtc2cpCmVuZAplbmQKZnVuY3Rpb24gbS5zdWNjZXNzKGZuLCAuLi4pCmxvY2FsIG9rLCBlcnIgPSBwY2FsbChmbiwgLi4uKQppZiBub3Qgb2sgdGhlbgptLmZhaWwoImNhbGwgZmFpbGVkOiAiIC4uIGVycikKZW5kCmVuZApmdW5jdGlvbiBtLnN0ZGVycihleHBlY3RlZCkKaWYgbm90IGV4cGVjdGVkIGFuZCBtLnN0ZGVycl9jYXB0dXJlIHRoZW4KbS5mYWlsKCJVbmV4cGVjdGVkOiAiIC4uIG0uc3RkZXJyX2NhcHR1cmUpCmVsc2VpZiBleHBlY3RlZCB0aGVuCmlmIG5vdCBtLnN0ZGVycl9jYXB0dXJlIG9yIG5vdCBtLnN0ZGVycl9jYXB0dXJlOmZpbmQoZXhwZWN0ZWQpIHRoZW4KbS5mYWlsKHN0cmluZy5mb3JtYXQoImV4cGVjdGVkICclcyc7IGdvdCAlcyIsIGV4cGVjdGVkLCBtLnN0ZGVycl9jYXB0dXJlIG9yICIobmlsKSIpKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLm5vdHN0ZGVycihleHBlY3RlZCkKaWYgbm90IGV4cGVjdGVkIGFuZCBub3QgbS5zdGRlcnJfY2FwdHVyZSB0aGVuCm0uZmFpbCgiRXhwZWN0ZWQgb3V0cHV0IG9uIHN0ZGVycjsgbm9uZSByZWNlaXZlZCIpCmVsc2VpZiBleHBlY3RlZCB0aGVuCmlmIG0uc3RkZXJyX2NhcHR1cmUgYW5kIG0uc3RkZXJyX2NhcHR1cmU6ZmluZChleHBlY3RlZCkgdGhlbgptLmZhaWwoc3RyaW5nLmZvcm1hdCgic3RkZXJyIGNvbnRhaW5zICclcyc7IHdhcyAlcyIsIGV4cGVjdGVkLCBtLnN0ZGVycl9jYXB0dXJlKSkKZW5kCmVuZAplbmQKAABsb2NhbCBwID0gcHJlbWFrZQpsb2NhbCBtID0gcC5tb2R1bGVzLnNlbGZfdGVzdApsb2NhbCBfID0ge30KXy5zdWl0ZXMgPSB7fQpfLnN1cHByZXNzZWQgPSB7fQpmdW5jdGlvbiBtLmRlY2xhcmUoc3VpdGVOYW1lKQppZiBfLnN1aXRlc1tzdWl0ZU5hbWVdIHRoZW4KZXJyb3IoJ0R1cGxpY2F0ZSB0ZXN0IHN1aXRlICInLi4gc3VpdGVOYW1lIC4uICciJywgMikKZW5kCmxvY2FsIHN1aXRlID0ge30Kc3VpdGUuX1NDUklQVF9ESVIgPSBfU0NSSVBUX0RJUgpzdWl0ZS5fVEVTVFNfRElSID0gX1RFU1RTX0RJUgpfLnN1aXRlc1tzdWl0ZU5hbWVdID0gc3VpdGUKcmV0dXJuIHN1aXRlCmVuZApmdW5jdGlvbiBtLnN1cHByZXNzKGlkZW50aWZpZXIpCmlmIHR5cGUoaWRlbnRpZmllcikgPT0gInRhYmxlIiB0aGVuCmZvciBpID0gMSwgI2lkZW50aWZpZXIgZG8KbS5zdXBwcmVzcyhpZGVudGlmaWVyW2ldKQplbmQKZWxzZQpfLnN1cHByZXNzZWRbaWRlbnRpZmllcl0gPSB0cnVlCmVuZAplbmQKZnVuY3Rpb24gbS5pc1N1cHByZXNzZWQoaWRlbnRpZmllcikKcmV0dXJuIF8uc3VwcHJlc3NlZFtpZGVudGlmaWVyXQplbmQKZnVuY3Rpb24gbS5pc1ZhbGlkKHRlc3QpCmlmIHR5cGUodGVzdC50ZXN0RnVuY3Rpb24pIH49ICJmdW5jdGlvbiIgdGhlbgpyZXR1cm4gZmFsc2UKZW5kCmlmIHRlc3QudGVzdE5hbWUgPT0gInNldHVwIiBvciB0ZXN0LnRlc3ROYW1lID09ICJ0ZWFyZG93biIgdGhlbgpyZXR1cm4gZmFsc2UKZW5kCnJldHVybiB0cnVlCmVuZApmdW5jdGlvbiBtLmdldFN1aXRlcygpCnJldHVybiBfLnN1aXRlcwplbmQKZnVuY3Rpb24gbS5nZXRUZXN0V2l0aElkZW50aWZpZXIoaWRlbnRpZmllcikKbG9jYWwgc3VpdGVOYW1lLCB0ZXN0TmFtZSA9IG0ucGFyc2VUZXN0SWRlbnRpZmllcihpZGVudGlmaWVyKQpsb2NhbCBzdWl0ZSwgdGVzdCwgZXJyID0gXy5jaGVja1Rlc3RJZGVudGlmaWVyKF8uc3VpdGVzLCBzdWl0ZU5hbWUsIHRlc3ROYW1lKQppZiBlcnIgdGhlbgpyZXR1cm4gbmlsLCBlcnIKZW5kCnJldHVybiB7CnN1aXRlTmFtZSA9IHN1aXRlTmFtZSwKc3VpdGUgPSBzdWl0ZSwKdGVzdE5hbWUgPSB0ZXN0TmFtZSwKdGVzdEZ1bmN0aW9uID0gdGVzdAp9CmVuZApmdW5jdGlvbiBtLnBhcnNlVGVzdElkZW50aWZpZXIoaWRlbnRpZmllcikKbG9jYWwgc3VpdGVOYW1lLCB0ZXN0TmFtZQppZiBpZGVudGlmaWVyIHRoZW4KbG9jYWwgcGFydHMgPSBzdHJpbmcuZXhwbG9kZShpZGVudGlmaWVyLCAiLiIsIHRydWUpCnN1aXRlTmFtZSA9IGlpZihwYXJ0c1sxXSB+PSAiIiwgcGFydHNbMV0sIG5pbCkKdGVzdE5hbWUgPSBpaWYocGFydHNbMl0gfj0gIiIsIHBhcnRzWzJdLCBuaWwpCmVuZApyZXR1cm4gc3VpdGVOYW1lLCB0ZXN0TmFtZQplbmQKZnVuY3Rpb24gXy5jaGVja1Rlc3RJZGVudGlmaWVyKHN1aXRlcywgc3VpdGVOYW1lLCB0ZXN0TmFtZSkKbG9jYWwgc3VpdGUsIHRlc3QKaWYgc3VpdGVOYW1lIHRoZW4Kc3VpdGUgPSBzdWl0ZXNbc3VpdGVOYW1lXQppZiBub3Qgc3VpdGUgdGhlbgpyZXR1cm4gbmlsLCBuaWwsICJObyBzdWNoIHRlc3Qgc3VpdGUgJyIgLi4gc3VpdGVOYW1lIC4uICInIgplbmQKaWYgdGVzdE5hbWUgdGhlbgp0ZXN0ID0gc3VpdGVbdGVzdE5hbWVdCmlmIG5vdCBfLmlzVmFsaWRUZXN0UGFpcih0ZXN0TmFtZSwgdGVzdCkgdGhlbgpyZXR1cm4gbmlsLCBuaWwsICJObyBzdWNoIHRlc3QgJyIgLi4gc3VpdGVOYW1lIC4uICIuIiAuLiB0ZXN0TmFtZSAuLiAiJyIKZW5kCmVuZAplbmQKcmV0dXJuIHN1aXRlLCB0ZXN0CmVuZApmdW5jdGlvbiBfLmlzVmFsaWRUZXN0UGFpcih0ZXN0TmFtZSwgdGVzdEZ1bmMpCmlmIHR5cGUodGVzdEZ1bmMpIH49ICJmdW5jdGlvbiIgdGhlbgpyZXR1cm4gZmFsc2UKZW5kCmlmIHRlc3ROYW1lID09ICJzZXR1cCIgb3IgdGVzdE5hbWUgPT0gInRlYXJkb3duIiB0aGVuCnJldHVybiBmYWxzZQplbmQKcmV0dXJuIHRydWUKZW5kCgBsb2NhbCBwID0gcHJlbWFrZQpsb2NhbCBtID0gcC5tb2R1bGVzLnNlbGZfdGVzdApmdW5jdGlvbiBtLmNyZWF0ZVdvcmtzcGFjZSgpCmxvY2FsIHdrcyA9IHdvcmtzcGFjZSgiTXlXb3Jrc3BhY2UiKQpjb25maWd1cmF0aW9ucyB7ICJEZWJ1ZyIsICJSZWxlYXNlIiB9CmxvY2FsIHByaiA9IG0uY3JlYXRlUHJvamVjdCh3a3MpCnJldHVybiB3a3MsIHByagplbmQKZnVuY3Rpb24gbS5jcmVhdGVzb2x1dGlvbigpCmxvY2FsIHdrcyA9IHdvcmtzcGFjZSgiTXlTb2x1dGlvbiIpCmNvbmZpZ3VyYXRpb25zIHsgIkRlYnVnIiwgIlJlbGVhc2UiIH0KbG9jYWwgcHJqID0gbS5jcmVhdGVwcm9qZWN0KHdrcykKcmV0dXJuIHdrcywgcHJqCmVuZApmdW5jdGlvbiBtLmNyZWF0ZVByb2plY3Qod2tzKQpsb2NhbCBuID0gI3drcy5wcm9qZWN0cyArIDEKaWYgbiA9PSAxIHRoZW4gbiA9ICIiIGVuZApsb2NhbCBwcmogPSBwcm9qZWN0ICgiTXlQcm9qZWN0IiAuLiBuKQpsYW5ndWFnZSAiQysrIgpraW5kICJDb25zb2xlQXBwIgpyZXR1cm4gcHJqCmVuZApmdW5jdGlvbiBtLmNyZWF0ZUdyb3VwKHdrcykKbG9jYWwgcHJqID0gZ3JvdXAgKCJNeUdyb3VwIiAuLiAoI3drcy5ncm91cHMgKyAxKSkKcmV0dXJuIHByagplbmQKZnVuY3Rpb24gbS5nZXRXb3Jrc3BhY2Uod2tzKQpwLm92ZW4uYmFrZSgpCnJldHVybiBwLmdsb2JhbC5nZXRXb3Jrc3BhY2Uod2tzLm5hbWUpCmVuZApmdW5jdGlvbiBtLmdldFJ1bGUobmFtZSkKcC5vdmVuLmJha2UoKQpyZXR1cm4gcC5nbG9iYWwuZ2V0UnVsZShuYW1lKQplbmQKZnVuY3Rpb24gbS5nZXRQcm9qZWN0KHdrcywgaSkKd2tzID0gbS5nZXRXb3Jrc3BhY2Uod2tzKQpyZXR1cm4gcC53b3Jrc3BhY2UuZ2V0cHJvamVjdCh3a3MsIGkgb3IgMSkKZW5kCmZ1bmN0aW9uIG0uZ2V0Q29uZmlnKHByaiwgYnVpbGRjZmcsIHBsYXRmb3JtKQpsb2NhbCB3a3MgPSBtLmdldFdvcmtzcGFjZShwcmoud29ya3NwYWNlKQpwcmogPSBwLndvcmtzcGFjZS5nZXRwcm9qZWN0KHdrcywgcHJqLm5hbWUpCnJldHVybiBwLnByb2plY3QuZ2V0Y29uZmlnKHByaiwgYnVpbGRjZmcsIHBsYXRmb3JtKQplbmQKbS5wcmludCA9IHByaW50CnAuYWxpYXMobSwgImNyZWF0ZVByb2plY3QiLCAiY3JlYXRlcHJvamVjdCIpCnAuYWxpYXMobSwgImdldENvbmZpZyIsICJnZXRjb25maWciKQpwLmFsaWFzKG0sICJnZXRQcm9qZWN0IiwgImdldHByb2plY3QiKQpwLmFsaWFzKG0sICJnZXRXb3Jrc3BhY2UiLCAiZ2V0c29sdXRpb24iKQoAAGxvY2FsIHAgPSBwcmVtYWtlCmxvY2FsIG0gPSBwLm1vZHVsZXMuc2VsZl90ZXN0CmxvY2FsIF8gPSB7fQpmdW5jdGlvbiBtLnJ1blRlc3QodGVzdCkKbG9jYWwgc2NvcGVkVGVzdENhbGwKaWYgdGVzdC50ZXN0RnVuY3Rpb24gdGhlbgpzY29wZWRUZXN0Q2FsbCA9IF8ucnVuVGVzdAplbHNlaWYgdGVzdC5zdWl0ZSB0aGVuCnNjb3BlZFRlc3RDYWxsID0gXy5ydW5UZXN0U3VpdGUKZWxzZQpzY29wZWRUZXN0Q2FsbCA9IF8ucnVuQWxsVGVzdHMKZW5kCnJldHVybiBzY29wZWRUZXN0Q2FsbCh0ZXN0KQplbmQKZnVuY3Rpb24gXy5ydW5BbGxUZXN0cygpCmxvY2FsIHBhc3NlZCA9IDAKbG9jYWwgZmFpbGVkID0gMApsb2NhbCBzdWl0ZXMgPSBtLmdldFN1aXRlcygpCmZvciBzdWl0ZU5hbWUsIHN1aXRlIGluIHBhaXJzKHN1aXRlcykgZG8KaWYgbm90IG0uaXNTdXBwcmVzc2VkKHN1aXRlTmFtZSkgdGhlbgpsb2NhbCB0ZXN0ID0ge30KdGVzdC5zdWl0ZU5hbWUgPSBzdWl0ZU5hbWUKdGVzdC5zdWl0ZSA9IHN1aXRlCmxvY2FsIHN1aXRlUGFzc2VkLCBzdWl0ZUZhaWxlZCA9IF8ucnVuVGVzdFN1aXRlKHRlc3QpCnBhc3NlZCA9IHBhc3NlZCArIHN1aXRlUGFzc2VkCmZhaWxlZCA9IGZhaWxlZCArIHN1aXRlRmFpbGVkCmVuZAplbmQKcmV0dXJuIHBhc3NlZCwgZmFpbGVkCmVuZApmdW5jdGlvbiBfLnJ1blRlc3RTdWl0ZSh0ZXN0KQpsb2NhbCBwYXNzZWQgPSAwCmxvY2FsIGZhaWxlZCA9IDAKZm9yIHRlc3ROYW1lLCB0ZXN0RnVuY3Rpb24gaW4gcGFpcnModGVzdC5zdWl0ZSkgZG8KdGVzdC50ZXN0TmFtZSA9IHRlc3ROYW1lCnRlc3QudGVzdEZ1bmN0aW9uID0gdGVzdEZ1bmN0aW9uCmlmIG0uaXNWYWxpZCh0ZXN0KSBhbmQgbm90IG0uaXNTdXBwcmVzc2VkKHRlc3Quc3VpdGVOYW1lIC4uICIuIiAuLiB0ZXN0LnRlc3ROYW1lKSB0aGVuCmxvY2FsIG5wLCBuZiA9IF8ucnVuVGVzdCh0ZXN0KQpwYXNzZWQgPSBwYXNzZWQgKyBucApmYWlsZWQgPSBmYWlsZWQgKyBuZgplbmQKZW5kCnJldHVybiBwYXNzZWQsIGZhaWxlZAplbmQKZnVuY3Rpb24gXy5ydW5UZXN0KHRlc3QpCmxvY2FsIGN3ZCA9IG9zLmdldGN3ZCgpCmxvY2FsIGhvb2tzID0gXy5pbnN0YWxsVGVzdGluZ0hvb2tzKCkKX1RFU1RTX0RJUiA9IHRlc3Quc3VpdGUuX1RFU1RTX0RJUgpfU0NSSVBUX0RJUiA9IHRlc3Quc3VpdGUuX1NDUklQVF9ESVIKbS5zdWl0ZU5hbWUgPSB0ZXN0LnN1aXRlTmFtZQptLnRlc3ROYW1lID0gdGVzdC50ZXN0TmFtZQpsb2NhbCBvaywgZXJyID0gXy5zZXR1cFRlc3QodGVzdCkKaWYgb2sgdGhlbgpvaywgZXJyID0gXy5leGVjdXRlVGVzdCh0ZXN0KQplbmQKbG9jYWwgdG9rLCB0ZXJyID0gXy50ZWFyZG93blRlc3QodGVzdCkKb2sgPSBvayBhbmQgdG9rCmVyciA9IGVyciBvciB0ZXJyCl8ucmVtb3ZlVGVzdGluZ0hvb2tzKGhvb2tzKQpvcy5jaGRpcihjd2QpCmlmIG9rIHRoZW4KcmV0dXJuIDEsIDAKZWxzZQptLnByaW50KHN0cmluZy5mb3JtYXQoIiVzLiVzOiAlcyIsIHRlc3Quc3VpdGVOYW1lLCB0ZXN0LnRlc3ROYW1lLCBlcnIpKQpyZXR1cm4gMCwgMQplbmQKZW5kCmZ1bmN0aW9uIF8uaW5zdGFsbFRlc3RpbmdIb29rcygpCmxvY2FsIGhvb2tzID0ge30KaG9va3MuYWN0aW9uID0gX0FDVElPTgpob29rcy5vcHRpb25zID0gX09QVElPTlMKaG9va3MudGFyZ2V0T3MgPSBfVEFSR0VUX09TCmhvb2tzLmlvX29wZW4gPSBpby5vcGVuCmhvb2tzLmlvX291dHB1dCA9IGlvLm91dHB1dApob29rcy5vc193cml0ZWZpbGVfaWZub3RlcXVhbCA9IG9zLndyaXRlZmlsZV9pZm5vdGVxdWFsCmhvb2tzLnBfdXRmOCA9IHAudXRmOApob29rcy5wcmludCA9IHByaW50Cmhvb2tzLnNldFRleHRDb2xvciA9IHRlcm0uc2V0VGV4dENvbG9yCmxvY2FsIG10ID0gZ2V0bWV0YXRhYmxlKGlvLnN0ZGVycikKXy5idWlsdGluX3dyaXRlID0gbXQud3JpdGUKbXQud3JpdGUgPSBfLnN0dWJfc3RkZXJyX3dyaXRlCl9PUFRJT05TID0gdGFibGUuc2hhbGxvd2NvcHkoX09QVElPTlMpIG9yIHt9CnNldG1ldGF0YWJsZShfT1BUSU9OUywgZ2V0bWV0YXRhYmxlKGhvb2tzLm9wdGlvbnMpKQppby5vcGVuID0gXy5zdHViX2lvX29wZW4KaW8ub3V0cHV0ID0gXy5zdHViX2lvX291dHB1dApvcy53cml0ZWZpbGVfaWZub3RlcXVhbCA9IF8uc3R1Yl9vc193cml0ZWZpbGVfaWZub3RlcXVhbApwcmludCA9IF8uc3R1Yl9wcmludApwLnV0ZjggPSBfLnN0dWJfdXRmOAp0ZXJtLnNldFRleHRDb2xvciA9IF8uc3R1Yl9zZXRUZXh0Q29sb3IKc3RkZXJyX2NhcHR1cmUgPSBuaWwKcC5jbGVhcldhcm5pbmdzKCkKcC5lb2woIlxuIikKcC5lc2NhcGVyKG5pbCkKcC5pbmRlbnQoIlx0IikKcC5hcGkucmVzZXQoKQptLnN0ZGVycl9jYXB0dXJlID0gbmlsCm0udmFsdWVfb3BlbmVkZmlsZW5hbWUgPSBuaWwKbS52YWx1ZV9vcGVuZWRmaWxlbW9kZSA9IG5pbAptLnZhbHVlX2Nsb3NlZGZpbGUgPSBmYWxzZQpyZXR1cm4gaG9va3MKZW5kCmZ1bmN0aW9uIF8ucmVtb3ZlVGVzdGluZ0hvb2tzKGhvb2tzKQpwLmFjdGlvbi5zZXQoaG9va3MuYWN0aW9uKQpfT1BUSU9OUyA9IGhvb2tzLm9wdGlvbnMKX1RBUkdFVF9PUyA9IGhvb2tzLnRhcmdldE9zCmlvLm9wZW4gPSBob29rcy5pb19vcGVuCmlvLm91dHB1dCA9IGhvb2tzLmlvX291dHB1dApvcy53cml0ZWZpbGVfaWZub3RlcXVhbCA9IGhvb2tzLm9zX3dyaXRlZmlsZV9pZm5vdGVxdWFsCnAudXRmOCA9IGhvb2tzLnBfdXRmOApwcmludCA9IGhvb2tzLnByaW50CnRlcm0uc2V0VGV4dENvbG9yID0gaG9va3Muc2V0VGV4dENvbG9yCmxvY2FsIG10ID0gZ2V0bWV0YXRhYmxlKGlvLnN0ZGVycikKbXQud3JpdGUgPSBfLmJ1aWx0aW5fd3JpdGUKZW5kCmZ1bmN0aW9uIF8uc2V0dXBUZXN0KHRlc3QpCmlmIHR5cGUodGVzdC5zdWl0ZS5zZXR1cCkgPT0gImZ1bmN0aW9uIiB0aGVuCnJldHVybiB4cGNhbGwodGVzdC5zdWl0ZS5zZXR1cCwgXy5lcnJvckhhbmRsZXIpCmVsc2UKcmV0dXJuIHRydWUKZW5kCmVuZApmdW5jdGlvbiBfLmV4ZWN1dGVUZXN0KHRlc3QpCmxvY2FsIHJlc3VsdCwgZXJyCnAuY2FwdHVyZShmdW5jdGlvbigpCnJlc3VsdCwgZXJyID0geHBjYWxsKHRlc3QudGVzdEZ1bmN0aW9uLCBfLmVycm9ySGFuZGxlcikKZW5kKQpyZXR1cm4gcmVzdWx0LCBlcnIKZW5kCmZ1bmN0aW9uIF8udGVhcmRvd25UZXN0KHRlc3QpCmlmIHR5cGUodGVzdC5zdWl0ZS50ZWFyZG93bikgPT0gImZ1bmN0aW9uIiB0aGVuCnJldHVybiB4cGNhbGwodGVzdC5zdWl0ZS50ZWFyZG93biwgXy5lcnJvckhhbmRsZXIpCmVsc2UKcmV0dXJuIHRydWUKZW5kCmVuZApmdW5jdGlvbiBfLmVycm9ySGFuZGxlcihlcnIpCmxvY2FsIG1zZyA9IGVycgppZiBub3QgbXNnOmZpbmQoInN0YWNrIHRyYWNlYmFjazoiLCAxLCB0cnVlKSB0aGVuCm1zZyA9IGRlYnVnLnRyYWNlYmFjayhlcnIsIDIpCmVuZApsb2NhbCBpID0gbXNnOmZpbmQoIltDXTogaW4gZnVuY3Rpb24gJ3hwY2FsbCciLCAxLCB0cnVlKQppZiBpIHRoZW4KbXNnID0gbXNnOnN1YigxLCBpIC0gMykKZW5kCmxvY2FsIG4gPSBzZWxlY3QoMiwgbXNnOmdzdWIoJ1xuJywgJ1xuJykpCmlmIG4gPT0gMiB0aGVuCm1zZyA9IG1zZzpzdWIoMSwgbXNnOmZpbmQoJ1xuJywgMSwgdHJ1ZSkgLSAxKQplbmQKcmV0dXJuIG1zZwplbmQKZnVuY3Rpb24gXy5zdHViX2lvX29wZW4oZm5hbWUsIG1vZGUpCm0udmFsdWVfb3BlbmVkZmlsZW5hbWUgPSBmbmFtZQptLnZhbHVlX29wZW5lZGZpbGVtb2RlID0gbW9kZQpyZXR1cm4gewpyZWFkID0gZnVuY3Rpb24oKQplbmQsCmNsb3NlID0gZnVuY3Rpb24oKQptLnZhbHVlX2Nsb3NlZGZpbGUgPSB0cnVlCmVuZAp9CmVuZApmdW5jdGlvbiBfLnN0dWJfaW9fb3V0cHV0KGYpCmVuZApmdW5jdGlvbiBfLnN0dWJfb3Nfd3JpdGVmaWxlX2lmbm90ZXF1YWwoY29udGVudCwgZm5hbWUpCm0udmFsdWVfb3BlbmVkZmlsZW5hbWUgPSBmbmFtZQptLnZhbHVlX2Nsb3NlZGZpbGUgPSB0cnVlCnJldHVybiAwCmVuZApmdW5jdGlvbiBfLnN0dWJfcHJpbnQocykKZW5kCmZ1bmN0aW9uIF8uc3R1Yl9zdGRlcnJfd3JpdGUoLi4uKQppZiBzZWxlY3QoMSwgLi4uKSA9PSBpby5zdGRlcnIgdGhlbgptLnN0ZGVycl9jYXB0dXJlID0gKG0uc3RkZXJyX2NhcHR1cmUgb3IgIiIpIC4uIHNlbGVjdCgyLCAuLi4pCmVsc2UKcmV0dXJuIF8uYnVpbHRpbl93cml0ZSguLi4pCmVuZAplbmQKZnVuY3Rpb24gXy5zdHViX3V0ZjgoKQplbmQKZnVuY3Rpb24gXy5zdHViX3NldFRleHRDb2xvcigpCmVuZAoAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApwLm1vZHVsZXMudnN0dWRpbyA9IHAubW9kdWxlcy52c3R1ZGlvIG9yIHt9CnAubW9kdWxlcy52c3R1ZGlvLl9WRVJTSU9OID0gcC5fVkVSU0lPTgpwLnZzdHVkaW8gPSBwLm1vZHVsZXMudnN0dWRpbwppbmNsdWRlKCJ2czIwMDUubHVhIikKaW5jbHVkZSgidnMyMDA4Lmx1YSIpCmluY2x1ZGUoInZzMjAxMC5sdWEiKQppbmNsdWRlKCJ2czIwMTIubHVhIikKaW5jbHVkZSgidnMyMDEzLmx1YSIpCmluY2x1ZGUoInZzMjAxNS5sdWEiKQppbmNsdWRlKCJ2czIwMTcubHVhIikKcmV0dXJuIGZ1bmN0aW9uKGNmZykKcmV0dXJuCl9BQ1RJT04gPT0gInZzMjAwNSIgb3IKX0FDVElPTiA9PSAidnMyMDA4IiBvcgpfQUNUSU9OID09ICJ2czIwMTAiIG9yCl9BQ1RJT04gPT0gInZzMjAxMiIgb3IKX0FDVElPTiA9PSAidnMyMDEzIiBvcgpfQUNUSU9OID09ICJ2czIwMTUiIG9yCl9BQ1RJT04gPT0gInZzMjAxNyI7CmVuZAoAbG9jYWwgcCA9IHByZW1ha2UKcC5tb2R1bGVzLnZzdHVkaW8gPSBwLm1vZHVsZXMudnN0dWRpbyBvciB7fQpwLm1vZHVsZXMudnN0dWRpby5fVkVSU0lPTiA9IHAuX1ZFUlNJT04KcC52c3R1ZGlvID0gcC5tb2R1bGVzLnZzdHVkaW8KbG9jYWwgdnN0dWRpbyA9IHAudnN0dWRpbwpsb2NhbCBwcm9qZWN0ID0gcC5wcm9qZWN0CmxvY2FsIGNvbmZpZyA9IHAuY29uZmlnCnZzdHVkaW8udnMyMDB4X2FyY2hpdGVjdHVyZXMgPQp7CndpbjMyICAgPSAieDg2IiwKeDg2ICAgICA9ICJ4ODYiLAp4ODZfNjQgID0gIng2NCIsCnhib3gzNjAgPSAiWGJveCAzNjAiLApBUk0gICAgID0gIkFSTSIsCn0KdnN0dWRpby52czIwMTBfYXJjaGl0ZWN0dXJlcyA9CnsKd2luMzIgICA9ICJ4ODYiLAp9CmxvY2FsIGZ1bmN0aW9uIGFyY2hpdGVjdHVyZShzeXN0ZW0sIGFyY2gpCmxvY2FsIHJlc3VsdAppZiBfQUNUSU9OID49ICJ2czIwMTAiIHRoZW4KcmVzdWx0ID0gdnN0dWRpby52czIwMTBfYXJjaGl0ZWN0dXJlc1thcmNoXSBvciB2c3R1ZGlvLnZzMjAxMF9hcmNoaXRlY3R1cmVzW3N5c3RlbV0KZW5kCnJldHVybiByZXN1bHQgb3IgdnN0dWRpby52czIwMHhfYXJjaGl0ZWN0dXJlc1thcmNoXSBvciB2c3R1ZGlvLnZzMjAweF9hcmNoaXRlY3R1cmVzW3N5c3RlbV0KZW5kCnZzdHVkaW8uX2N1bHR1cmVzID0gewpbImFmIl0gPSAweDAwMzYsClsiYWYtWkEiXSA9IDB4MDQzNiwKWyJzcSJdID0gMHgwMDFDLApbInNxLUFMIl0gPSAweDA0MUMsClsiYXIiXSA9IDB4MDAwMSwKWyJhci1EWiJdID0gMHgxNDAxLApbImFyLUJIIl0gPSAweDNDMDEsClsiYXItRUciXSA9IDB4MEMwMSwKWyJhci1JUSJdID0gMHgwODAxLApbImFyLUpPIl0gPSAweDJDMDEsClsiYXItS1ciXSA9IDB4MzQwMSwKWyJhci1MQiJdID0gMHgzMDAxLApbImFyLUxZIl0gPSAweDEwMDEsClsiYXItTUEiXSA9IDB4MTgwMSwKWyJhci1PTSJdID0gMHgyMDAxLApbImFyLVFBIl0gPSAweDQwMDEsClsiYXItU0EiXSA9IDB4MDQwMSwKWyJhci1TWSJdID0gMHgyODAxLApbImFyLVROIl0gPSAweDFDMDEsClsiYXItQUUiXSA9IDB4MzgwMSwKWyJhci1ZRSJdID0gMHgyNDAxLApbImh5Il0gPSAweDAwMkIsClsiaHktQU0iXSA9IDB4MDQyQiwKWyJheiJdID0gMHgwMDJDLApbImF6LUN5cmwtQVoiXSA9IDB4MDgyQywKWyJhei1MYXRuLUFaIl0gPSAweDA0MkMsClsiZXUiXSA9IDB4MDAyRCwKWyJldS1FUyJdID0gMHgwNDJELApbImJlIl0gPSAweDAwMjMsClsiYmUtQlkiXSA9IDB4MDQyMywKWyJiZyJdID0gMHgwMDAyLApbImJnLUJHIl0gPSAweDA0MDIsClsiY2EiXSA9IDB4MDAwMywKWyJjYS1FUyJdID0gMHgwNDAzLApbInpoLUhLIl0gPSAweDBDMDQsClsiemgtTU8iXSA9IDB4MTQwNCwKWyJ6aC1DTiJdID0gMHgwODA0LApbInpoLUhhbnMiXSA9IDB4MDAwNCwKWyJ6aC1TRyJdID0gMHgxMDA0LApbInpoLVRXIl0gPSAweDA0MDQsClsiemgtSGFudCJdID0gMHg3QzA0LApbImhyIl0gPSAweDAwMUEsClsiaHItSFIiXSA9IDB4MDQxQSwKWyJjcyJdID0gMHgwMDA1LApbImNzLUNaIl0gPSAweDA0MDUsClsiZGEiXSA9IDB4MDAwNiwKWyJkYS1ESyJdID0gMHgwNDA2LApbImR2Il0gPSAweDAwNjUsClsiZHYtTVYiXSA9IDB4MDQ2NSwKWyJubCJdID0gMHgwMDEzLApbIm5sLUJFIl0gPSAweDA4MTMsClsibmwtTkwiXSA9IDB4MDQxMywKWyJlbiJdID0gMHgwMDA5LApbImVuLUFVIl0gPSAweDBDMDksClsiZW4tQloiXSA9IDB4MjgwOSwKWyJlbi1DQSJdID0gMHgxMDA5LApbImVuLTAyOSJdID0gMHgyNDA5LApbImVuLUlFIl0gPSAweDE4MDksClsiZW4tSk0iXSA9IDB4MjAwOSwKWyJlbi1OWiJdID0gMHgxNDA5LApbImVuLVBIIl0gPSAweDM0MDksClsiZW4tWkEiXSA9IDB4MUMwOSwKWyJlbi1UVCJdID0gMHgyQzA5LApbImVuLUdCIl0gPSAweDA4MDksClsiZW4tVVMiXSA9IDB4MDQwOSwKWyJlbi1aVyJdID0gMHgzMDA5LApbImV0Il0gPSAweDAwMjUsClsiZXQtRUUiXSA9IDB4MDQyNSwKWyJmbyJdID0gMHgwMDM4LApbImZvLUZPIl0gPSAweDA0MzgsClsiZmEiXSA9IDB4MDAyOSwKWyJmYS1JUiJdID0gMHgwNDI5LApbImZpIl0gPSAweDAwMEIsClsiZmktRkkiXSA9IDB4MDQwQiwKWyJmciJdID0gMHgwMDBDLApbImZyLUJFIl0gPSAweDA4MEMsClsiZnItQ0EiXSA9IDB4MEMwQywKWyJmci1GUiJdID0gMHgwNDBDLApbImZyLUxVIl0gPSAweDE0MEMsClsiZnItTUMiXSA9IDB4MTgwQywKWyJmci1DSCJdID0gMHgxMDBDLApbImdsIl0gPSAweDAwNTYsClsiZ2wtRVMiXSA9IDB4MDQ1NiwKWyJrYSJdID0gMHgwMDM3LApbImthLUdFIl0gPSAweDA0MzcsClsiZGUiXSA9IDB4MDAwNywKWyJkZS1BVCJdID0gMHgwQzA3LApbImRlLURFIl0gPSAweDA0MDcsClsiZGUtTEkiXSA9IDB4MTQwNywKWyJkZS1MVSJdID0gMHgxMDA3LApbImRlLUNIIl0gPSAweDA4MDcsClsiZWwiXSA9IDB4MDAwOCwKWyJlbC1HUiJdID0gMHgwNDA4LApbImd1Il0gPSAweDAwNDcsClsiZ3UtSU4iXSA9IDB4MDQ0NywKWyJoZSJdID0gMHgwMDBELApbImhlLUlMIl0gPSAweDA0MEQsClsiaGkiXSA9IDB4MDAzOSwKWyJoaS1JTiJdID0gMHgwNDM5LApbImh1Il0gPSAweDAwMEUsClsiaHUtSFUiXSA9IDB4MDQwRSwKWyJpcyJdID0gMHgwMDBGLApbImlzLUlTIl0gPSAweDA0MEYsClsiaWQiXSA9IDB4MDAyMSwKWyJpZC1JRCJdID0gMHgwNDIxLApbIml0Il0gPSAweDAwMTAsClsiaXQtSVQiXSA9IDB4MDQxMCwKWyJpdC1DSCJdID0gMHgwODEwLApbImphIl0gPSAweDAwMTEsClsiamEtSlAiXSA9IDB4MDQxMSwKWyJrbiJdID0gMHgwMDRCLApbImtuLUlOIl0gPSAweDA0NEIsClsia2siXSA9IDB4MDAzRiwKWyJray1LWiJdID0gMHgwNDNGLApbImtvayJdID0gMHgwMDU3LApbImtvay1JTiJdID0gMHgwNDU3LApbImtvIl0gPSAweDAwMTIsClsia28tS1IiXSA9IDB4MDQxMiwKWyJreSJdID0gMHgwMDQwLApbImt5LUtHIl0gPSAweDA0NDAsClsibHYiXSA9IDB4MDAyNiwKWyJsdi1MViJdID0gMHgwNDI2LApbImx0Il0gPSAweDAwMjcsClsibHQtTFQiXSA9IDB4MDQyNywKWyJtayJdID0gMHgwMDJGLApbIm1rLU1LIl0gPSAweDA0MkYsClsibXMiXSA9IDB4MDAzRSwKWyJtcy1CTiJdID0gMHgwODNFLApbIm1zLU1ZIl0gPSAweDA0M0UsClsibXIiXSA9IDB4MDA0RSwKWyJtci1JTiJdID0gMHgwNDRFLApbIm1uIl0gPSAweDAwNTAsClsibW4tTU4iXSA9IDB4MDQ1MCwKWyJubyJdID0gMHgwMDE0LApbIm5iLU5PIl0gPSAweDA0MTQsClsibm4tTk8iXSA9IDB4MDgxNCwKWyJwbCJdID0gMHgwMDE1LApbInBsLVBMIl0gPSAweDA0MTUsClsicHQiXSA9IDB4MDAxNiwKWyJwdC1CUiJdID0gMHgwNDE2LApbInB0LVBUIl0gPSAweDA4MTYsClsicGEiXSA9IDB4MDA0NiwKWyJwYS1JTiJdID0gMHgwNDQ2LApbInJvIl0gPSAweDAwMTgsClsicm8tUk8iXSA9IDB4MDQxOCwKWyJydSJdID0gMHgwMDE5LApbInJ1LVJVIl0gPSAweDA0MTksClsic2EiXSA9IDB4MDA0RiwKWyJzYS1JTiJdID0gMHgwNDRGLApbInNyLUN5cmwtQ1MiXSA9IDB4MEMxQSwKWyJzci1MYXRuLUNTIl0gPSAweDA4MUEsClsic2siXSA9IDB4MDAxQiwKWyJzay1TSyJdID0gMHgwNDFCLApbInNsIl0gPSAweDAwMjQsClsic2wtU0kiXSA9IDB4MDQyNCwKWyJlcyJdID0gMHgwMDBBLApbImVzLUFSIl0gPSAweDJDMEEsClsiZXMtQk8iXSA9IDB4NDAwQSwKWyJlcy1DTCJdID0gMHgzNDBBLApbImVzLUNPIl0gPSAweDI0MEEsClsiZXMtQ1IiXSA9IDB4MTQwQSwKWyJlcy1ETyJdID0gMHgxQzBBLApbImVzLUVDIl0gPSAweDMwMEEsClsiZXMtU1YiXSA9IDB4NDQwQSwKWyJlcy1HVCJdID0gMHgxMDBBLApbImVzLUhOIl0gPSAweDQ4MEEsClsiZXMtTVgiXSA9IDB4MDgwQSwKWyJlcy1OSSJdID0gMHg0QzBBLApbImVzLVBBIl0gPSAweDE4MEEsClsiZXMtUFkiXSA9IDB4M0MwQSwKWyJlcy1QRSJdID0gMHgyODBBLApbImVzLVBSIl0gPSAweDUwMEEsClsiZXMtRVMiXSA9IDB4MEMwQSwKWyJlcy1FU190cmFkbmwiXT0gMHgwNDBBLApbImVzLVVZIl0gPSAweDM4MEEsClsiZXMtVkUiXSA9IDB4MjAwQSwKWyJzdyJdID0gMHgwMDQxLApbInN3LUtFIl0gPSAweDA0NDEsClsic3YiXSA9IDB4MDAxRCwKWyJzdi1GSSJdID0gMHgwODFELApbInN2LVNFIl0gPSAweDA0MUQsClsic3lyIl0gPSAweDAwNUEsClsic3lyLVNZIl0gPSAweDA0NUEsClsidGEiXSA9IDB4MDA0OSwKWyJ0YS1JTiJdID0gMHgwNDQ5LApbInR0Il0gPSAweDAwNDQsClsidHQtUlUiXSA9IDB4MDQ0NCwKWyJ0ZSJdID0gMHgwMDRBLApbInRlLUlOIl0gPSAweDA0NEEsClsidGgiXSA9IDB4MDAxRSwKWyJ0aC1USCJdID0gMHgwNDFFLApbInRyIl0gPSAweDAwMUYsClsidHItVFIiXSA9IDB4MDQxRiwKWyJ1ayJdID0gMHgwMDIyLApbInVrLVVBIl0gPSAweDA0MjIsClsidXIiXSA9IDB4MDAyMCwKWyJ1ci1QSyJdID0gMHgwNDIwLApbInV6Il0gPSAweDAwNDMsClsidXotQ3lybC1VWiJdID0gMHgwODQzLApbInV6LUxhdG4tVVoiXSA9IDB4MDQ0MywKWyJ2aSJdID0gMHgwMDJBLApbInZpLVZOIl0gPSAweDA0MkEsCn0KZnVuY3Rpb24gdnN0dWRpby5hcmNoRnJvbUNvbmZpZyhjZmcsIHdpbjMyKQpsb2NhbCBpc25hdGl2ZSA9IHByb2plY3QuaXNuYXRpdmUoY2ZnLnByb2plY3QpCmxvY2FsIGFyY2ggPSBhcmNoaXRlY3R1cmUoY2ZnLnN5c3RlbSwgY2ZnLmFyY2hpdGVjdHVyZSkKaWYgbm90IGFyY2ggdGhlbgphcmNoID0gaWlmKGlzbmF0aXZlLCAieDg2IiwgIkFueSBDUFUiKQplbmQKaWYgd2luMzIgYW5kIGlzbmF0aXZlIGFuZCBhcmNoID09ICJ4ODYiIHRoZW4KYXJjaCA9ICJXaW4zMiIKZW5kCnJldHVybiBhcmNoCmVuZApmdW5jdGlvbiB2c3R1ZGlvLmFyY2hGcm9tUGxhdGZvcm0ocGxhdGZvcm0pCmxvY2FsIHN5c3RlbSA9IHAuYXBpLmNoZWNrVmFsdWUocC5maWVsZHMuc3lzdGVtLCBwbGF0Zm9ybSkKbG9jYWwgYXJjaCA9IHAuYXBpLmNoZWNrVmFsdWUocC5maWVsZHMuYXJjaGl0ZWN0dXJlLCBwbGF0Zm9ybSkKcmV0dXJuIGFyY2hpdGVjdHVyZShzeXN0ZW0sIGFyY2ggb3IgcGxhdGZvcm06bG93ZXIoKSkKZW5kCmZ1bmN0aW9uIHZzdHVkaW8uY3VsdHVyZUZvckxvY2FsZShsb2NhbGUpCmlmIGxvY2FsZSB0aGVuCmxvY2FsIGN1bHR1cmUgPSB2c3R1ZGlvLl9jdWx0dXJlc1tsb2NhbGVdCmlmIG5vdCBjdWx0dXJlIHRoZW4KcC53YXJuT25jZSgiTG9jYWxlIiAuLiBsb2NhbGUsICdVbnN1cHBvcnRlZCBsb2NhbGUgIiVzIicsIGxvY2FsZSkKZW5kCnJldHVybiBjdWx0dXJlCmVuZAplbmQKZnVuY3Rpb24gdnN0dWRpby5nZXRMaW5rcyhjZmcsIGV4cGxpY2l0KQpyZXR1cm4gcC50b29scy5tc2MuZ2V0bGlua3MoY2ZnLCBub3QgZXhwbGljaXQpCmVuZApmdW5jdGlvbiB2c3R1ZGlvLmlzTWFrZWZpbGUoY2ZnKQpyZXR1cm4gKGNmZy5raW5kID09IHAuTUFLRUZJTEUgb3IgY2ZnLmtpbmQgPT0gcC5OT05FKQplbmQKZnVuY3Rpb24gdnN0dWRpby5uZWVkc0V4cGxpY2l0TGluayhjZmcpCmlmIG5vdCBjZmcuX25lZWRzRXhwbGljaXRMaW5rIHRoZW4KbG9jYWwgZXggPSBjZmcuZmxhZ3MuTm9JbXBsaWNpdExpbmsKaWYgbm90IGV4IHRoZW4KbG9jYWwgcHJqZGVwcyA9IHByb2plY3QuZ2V0ZGVwZW5kZW5jaWVzKGNmZy5wcm9qZWN0LCAibGlua09ubHkiKQpsb2NhbCBjZmdkZXBzID0gY29uZmlnLmdldGxpbmtzKGNmZywgImRlcGVuZGVuY2llcyIsICJvYmplY3QiKQpleCA9ICNwcmpkZXBzIH49ICNjZmdkZXBzCmVuZApjZmcuX25lZWRzRXhwbGljaXRMaW5rID0gZXgKZW5kCnJldHVybiBjZmcuX25lZWRzRXhwbGljaXRMaW5rCmVuZApmdW5jdGlvbiB2c3R1ZGlvLnBhdGgoY2ZnLCB2YWx1ZSkKY2ZnID0gY2ZnLnByb2plY3Qgb3IgY2ZnCmxvY2FsIGRpcnMgPSBwYXRoLnRyYW5zbGF0ZShwcm9qZWN0LmdldHJlbGF0aXZlKGNmZywgdmFsdWUpKQppZiB0eXBlKGRpcnMpID09ICd0YWJsZScgdGhlbgpkaXJzID0gdGFibGUuZmlsdGVyZW1wdHkoZGlycykKZW5kCnJldHVybiBkaXJzCmVuZApmdW5jdGlvbiB2c3R1ZGlvLnByb2plY3RDb25maWcoY2ZnLCBhcmNoKQpsb2NhbCBwbGF0Zm9ybSA9IHZzdHVkaW8ucHJvamVjdFBsYXRmb3JtKGNmZykKbG9jYWwgYXJjaGl0ZWN0dXJlID0gYXJjaCBvciB2c3R1ZGlvLmFyY2hGcm9tQ29uZmlnKGNmZywgdHJ1ZSkKcmV0dXJuIHBsYXRmb3JtIC4uICJ8IiAuLiBhcmNoaXRlY3R1cmUKZW5kCmZ1bmN0aW9uIHZzdHVkaW8ucHJvamVjdEVsZW1lbnQoKQpwLnB1c2goJzxQcm9qZWN0IHhtbG5zPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL2RldmVsb3Blci9tc2J1aWxkLzIwMDMiPicpCmVuZApmdW5jdGlvbiB2c3R1ZGlvLnByb2plY3RmaWxlKHByaikKbG9jYWwgZXh0ZW5zaW9uCmlmIHByb2plY3QuaXNkb3RuZXQocHJqKSB0aGVuCmV4dGVuc2lvbiA9ICIuY3Nwcm9qIgplbHNlaWYgcHJvamVjdC5pc2MocHJqKSBvciBwcm9qZWN0LmlzY3BwKHByaikgdGhlbgpleHRlbnNpb24gPSBpaWYoX0FDVElPTiA+ICJ2czIwMDgiLCAiLnZjeHByb2oiLCAiLnZjcHJvaiIpCmVuZApyZXR1cm4gcC5maWxlbmFtZShwcmosIGV4dGVuc2lvbikKZW5kCmZ1bmN0aW9uIHZzdHVkaW8ucHJvamVjdFBsYXRmb3JtKGNmZykKbG9jYWwgcGxhdGZvcm0gPSBjZmcucGxhdGZvcm0KaWYgcGxhdGZvcm0gdGhlbgpsb2NhbCBwbHRhcmNoID0gdnN0dWRpby5hcmNoRnJvbVBsYXRmb3JtKGNmZy5wbGF0Zm9ybSkgb3IgcGxhdGZvcm0KbG9jYWwgY2ZnYXJjaCA9IHZzdHVkaW8uYXJjaEZyb21Db25maWcoY2ZnKQppZiBwbHRhcmNoID09IGNmZ2FyY2ggdGhlbgpwbGF0Zm9ybSA9IG5pbAplbmQKZW5kCmlmIHBsYXRmb3JtIHRoZW4KcmV0dXJuIGNmZy5idWlsZGNmZyAuLiAiICIgLi4gcGxhdGZvcm0KZWxzZQpyZXR1cm4gY2ZnLmJ1aWxkY2ZnCmVuZAplbmQKZnVuY3Rpb24gdnN0dWRpby5zb2x1dGlvblBsYXRmb3JtKGNmZykKbG9jYWwgcGxhdGZvcm0gPSBjZmcucGxhdGZvcm0KbG9jYWwgcGxhdGFyY2gKaWYgcGxhdGZvcm0gdGhlbgpwbGF0Zm9ybSA9IHZzdHVkaW8uYXJjaEZyb21QbGF0Zm9ybShwbGF0Zm9ybSkgb3IgcGxhdGZvcm0KaWYgcGxhdGZvcm0gfj0gIng4NiIgdGhlbgpyZXR1cm4gcGxhdGZvcm0KZW5kCmVuZApsb2NhbCBoYXNuYXRpdmUgPSBmYWxzZQpsb2NhbCBoYXNuZXQgPSBmYWxzZQpsb2NhbCBzbG5hcmNoCmZvciBwcmogaW4gcC53b3Jrc3BhY2UuZWFjaHByb2plY3QoY2ZnLndvcmtzcGFjZSkgZG8KaGFzbmF0aXZlID0gaGFzbmF0aXZlIG9yIHByb2plY3QuaXNuYXRpdmUocHJqKQpoYXNuZXQgICAgPSBoYXNuZXQgICAgb3IgcHJvamVjdC5pc2RvdG5ldChwcmopCmxvY2FsIHByamNmZyA9IHByb2plY3QuZ2V0Y29uZmlnKHByaiwgY2ZnLmJ1aWxkY2ZnLCBjZmcucGxhdGZvcm0pCmlmIHByamNmZyB0aGVuCmxvY2FsIHByamFyY2ggPSB2c3R1ZGlvLmFyY2hGcm9tQ29uZmlnKHByamNmZykKaWYgbm90IHNsbmFyY2ggdGhlbgpzbG5hcmNoID0gcHJqYXJjaAplbHNlaWYgc2xuYXJjaCB+PSBwcmphcmNoIHRoZW4Kc2xuYXJjaCA9ICJNaXhlZCBQbGF0Zm9ybXMiCmVuZAplbmQKZW5kCmlmIHBsYXRmb3JtIHRoZW4KcmV0dXJuIGlpZihoYXNuZXQsICJ4ODYiLCAiV2luMzIiKQplbHNlaWYgc2xuYXJjaCB0aGVuCnJldHVybiBpaWYoc2xuYXJjaCA9PSAieDg2IiBhbmQgbm90IGhhc25ldCwgIldpbjMyIiwgc2xuYXJjaCkKZWxzZWlmIGhhc25ldCBhbmQgaGFzbmF0aXZlIHRoZW4KcmV0dXJuICJNaXhlZCBQbGF0Zm9ybXMiCmVsc2VpZiBoYXNuZXQgdGhlbgpyZXR1cm4gIkFueSBDUFUiCmVsc2UKcmV0dXJuICJXaW4zMiIKZW5kCmVuZApmdW5jdGlvbiB2c3R1ZGlvLnNvbHV0aW9uYXJjaChjZmcpCmxvY2FsIGhhc25hdGl2ZSA9IGZhbHNlCmxvY2FsIGhhc2RvdG5ldCA9IGZhbHNlCmxvY2FsIGFyY2ggPSBjZmcucGxhdGZvcm0KZm9yIHByaiBpbiBwLndvcmtzcGFjZS5lYWNocHJvamVjdChjZmcud29ya3NwYWNlKSBkbwpoYXNuYXRpdmUgPSBoYXNuYXRpdmUgb3IgcHJvamVjdC5pc25hdGl2ZShwcmopCmhhc25ldCAgICA9IGhhc25ldCAgICBvciBwcm9qZWN0LmlzZG90bmV0KHByaikKaWYgaGFzbmF0aXZlIGFuZCBoYXNkb3RuZXQgdGhlbgpyZXR1cm4gIk1peGVkIFBsYXRmb3JtcyIKZW5kCmlmIG5vdCBhcmNoIHRoZW4KbG9jYWwgcHJqY2ZnID0gcHJvamVjdC5nZXRjb25maWcocHJqLCBjZmcuYnVpbGRjZmcsIGNmZy5wbGF0Zm9ybSkKaWYgcHJqY2ZnIHRoZW4KaWYgcHJqY2ZnLmFyY2hpdGVjdHVyZSB0aGVuCmFyY2ggPSB2c3R1ZGlvLmFyY2hGcm9tQ29uZmlnKHByamNmZykKZW5kCmVuZAplbmQKZW5kCmFyY2ggPSBhcmNoIG9yIGlpZihoYXNuYXRpdmUsICJXaW4zMiIsICJBbnkgQ1BVIikKcmV0dXJuIGFyY2gKZW5kCmZ1bmN0aW9uIHZzdHVkaW8uc29sdXRpb25jb25maWcoY2ZnKQpsb2NhbCBwbGF0Zm9ybSA9IGNmZy5wbGF0Zm9ybQppZiBub3QgcGxhdGZvcm0gdGhlbgpwbGF0Zm9ybSA9IHZzdHVkaW8uc29sdXRpb25hcmNoKGNmZykKZW5kCnJldHVybiBzdHJpbmcuZm9ybWF0KCIlc3wlcyIsIGNmZy5idWlsZGNmZywgcGxhdGZvcm0pCmVuZApmdW5jdGlvbiB2c3R1ZGlvLnRvb2wocHJqKQppZiBwcm9qZWN0LmlzZG90bmV0KHByaikgdGhlbgpyZXR1cm4gIkZBRTA0RUMwLTMwMUYtMTFEMy1CRjRCLTAwQzA0Rjc5RUZCQyIKZWxzZWlmIHByb2plY3QuaXNjKHByaikgb3IgcHJvamVjdC5pc2NwcChwcmopIHRoZW4KcmV0dXJuICI4QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDIiCmVuZAplbmQKaW5jbHVkZSgidnMyMDB4X3ZjcHJvai5sdWEiKQppbmNsdWRlKCJ2czIwMHhfdmNwcm9qX3VzZXIubHVhIikKaW5jbHVkZSgidnMyMDA1X3NvbHV0aW9uLmx1YSIpCmluY2x1ZGUoInZzMjAwNV9jc3Byb2oubHVhIikKaW5jbHVkZSgidnMyMDA1X2NzcHJval91c2VyLmx1YSIpCmluY2x1ZGUoInZzMjAxMF9udWdldC5sdWEiKQppbmNsdWRlKCJ2czIwMTBfdmN4cHJvai5sdWEiKQppbmNsdWRlKCJ2czIwMTBfdmN4cHJval91c2VyLmx1YSIpCmluY2x1ZGUoInZzMjAxMF92Y3hwcm9qX2ZpbHRlcnMubHVhIikKaW5jbHVkZSgidnMyMDEwX3J1bGVzX3Byb3BzLmx1YSIpCmluY2x1ZGUoInZzMjAxMF9ydWxlc190YXJnZXRzLmx1YSIpCmluY2x1ZGUoInZzMjAxMF9ydWxlc194bWwubHVhIikKcmV0dXJuIHAubW9kdWxlcy52c3R1ZGlvCgAAAGxvY2FsIHAgPSBwcmVtYWtlCnAudnN0dWRpby52czIwMDUgPSB7fQpsb2NhbCB2czIwMDUgPSBwLnZzdHVkaW8udnMyMDA1CmxvY2FsIHZzdHVkaW8gPSBwLnZzdHVkaW8KZnVuY3Rpb24gdnMyMDA1LmdlbmVyYXRlU29sdXRpb24od2tzKQpwLmluZGVudCgiXHQiKQpwLmVvbCgiXHJcbiIpCnAuZXNjYXBlcih2czIwMDUuZXNjKQpwLmdlbmVyYXRlKHdrcywgIi5zbG4iLCB2c3R1ZGlvLnNsbjIwMDUuZ2VuZXJhdGUpCmVuZApmdW5jdGlvbiB2czIwMDUuZ2VuZXJhdGVQcm9qZWN0KHByaikKcC5pbmRlbnQoIiAgIikKcC5lb2woIlxyXG4iKQpwLmVzY2FwZXIodnMyMDA1LmVzYykKaWYgcC5wcm9qZWN0LmlzZG90bmV0KHByaikgdGhlbgpwLmdlbmVyYXRlKHByaiwgIi5jc3Byb2oiLCB2c3R1ZGlvLmNzMjAwNS5nZW5lcmF0ZSkKbG9jYWwgdXNlciA9IHAuY2FwdHVyZShmdW5jdGlvbigpIHZzdHVkaW8uY3MyMDA1LmdlbmVyYXRlVXNlcihwcmopIGVuZCkKaWYgI3VzZXIgPiAwIHRoZW4KcC5nZW5lcmF0ZShwcmosICIuY3Nwcm9qLnVzZXIiLCBmdW5jdGlvbigpIHAub3V0bG4odXNlcikgZW5kKQplbmQKZWxzZQpwLmdlbmVyYXRlKHByaiwgIi52Y3Byb2oiLCB2c3R1ZGlvLnZjMjAweC5nZW5lcmF0ZSkKbG9jYWwgdXNlciA9IHAuY2FwdHVyZShmdW5jdGlvbigpIHZzdHVkaW8udmMyMDB4LmdlbmVyYXRlVXNlcihwcmopIGVuZCkKaWYgI3VzZXIgPiAwIHRoZW4KcC5nZW5lcmF0ZShwcmosICIudmNwcm9qLnVzZXIiLCBmdW5jdGlvbigpIHAub3V0bG4odXNlcikgZW5kKQplbmQKZW5kCmVuZApmdW5jdGlvbiB2czIwMDUuZXNjKHZhbHVlKQp2YWx1ZSA9IHN0cmluZy5nc3ViKHZhbHVlLCAnJicsICAiJmFtcDsiKQp2YWx1ZSA9IHZhbHVlOmdzdWIoJyInLCAgIiZxdW90OyIpCnZhbHVlID0gdmFsdWU6Z3N1YigiJyIsICAiJmFwb3M7IikKdmFsdWUgPSB2YWx1ZTpnc3ViKCc8JywgICImbHQ7IikKdmFsdWUgPSB2YWx1ZTpnc3ViKCc+JywgICImZ3Q7IikKdmFsdWUgPSB2YWx1ZTpnc3ViKCdccicsICImI3gwRDsiKQp2YWx1ZSA9IHZhbHVlOmdzdWIoJ1xuJywgIiYjeDBBOyIpCnJldHVybiB2YWx1ZQplbmQKbmV3YWN0aW9uIHsKdHJpZ2dlciAgICAgPSAidnMyMDA1IiwKc2hvcnRuYW1lICAgPSAiVmlzdWFsIFN0dWRpbyAyMDA1IiwKZGVzY3JpcHRpb24gPSAiR2VuZXJhdGUgVmlzdWFsIFN0dWRpbyAyMDA1IHByb2plY3QgZmlsZXMiLAp0YXJnZXRvcyA9ICJ3aW5kb3dzIiwKdG9vbHNldCAgPSAibXNjLXY4MCIsCnZhbGlkX2tpbmRzICAgICA9IHsgIkNvbnNvbGVBcHAiLCAiV2luZG93ZWRBcHAiLCAiU3RhdGljTGliIiwgIlNoYXJlZExpYiIsICJNYWtlZmlsZSIsICJOb25lIiB9LAp2YWxpZF9sYW5ndWFnZXMgPSB7ICJDIiwgIkMrKyIsICJDIyIgfSwKdmFsaWRfdG9vbHMgICAgID0gewpjYyAgICAgPSB7ICJtc2MiICAgfSwKZG90bmV0ID0geyAibXNuZXQiIH0sCn0sCm9uV29ya3NwYWNlID0gdnN0dWRpby52czIwMDUuZ2VuZXJhdGVTb2x1dGlvbiwKb25Qcm9qZWN0ICAgPSB2c3R1ZGlvLnZzMjAwNS5nZW5lcmF0ZVByb2plY3QsCm9uQ2xlYW5Xb3Jrc3BhY2UgPSB2c3R1ZGlvLmNsZWFuU29sdXRpb24sCm9uQ2xlYW5Qcm9qZWN0ICAgPSB2c3R1ZGlvLmNsZWFuUHJvamVjdCwKb25DbGVhblRhcmdldCAgICA9IHZzdHVkaW8uY2xlYW5UYXJnZXQsCnZzdHVkaW8gPSB7CmNzcHJvalNjaGVtYVZlcnNpb24gPSAiMi4wIiwKcHJvZHVjdFZlcnNpb24gICAgICA9ICI4LjAuNTA3MjciLApzb2x1dGlvblZlcnNpb24gICAgID0gIjkiLAp2ZXJzaW9uTmFtZSAgICAgICAgID0gIjIwMDUiLAp9Cn0KAABsb2NhbCBwID0gcHJlbWFrZQpwLnZzdHVkaW8udnMyMDA4ID0ge30KbG9jYWwgdnMyMDA4ID0gcC52c3R1ZGlvLnZzMjAwOApsb2NhbCB2c3R1ZGlvID0gcC52c3R1ZGlvCm5ld2FjdGlvbiB7CnRyaWdnZXIgICAgID0gInZzMjAwOCIsCnNob3J0bmFtZSAgID0gIlZpc3VhbCBTdHVkaW8gMjAwOCIsCmRlc2NyaXB0aW9uID0gIkdlbmVyYXRlIFZpc3VhbCBTdHVkaW8gMjAwOCBwcm9qZWN0IGZpbGVzIiwKdGFyZ2V0b3MgPSAid2luZG93cyIsCnRvb2xzZXQgID0gIm1zYy12OTAiLAp2YWxpZF9raW5kcyAgICAgPSB7ICJDb25zb2xlQXBwIiwgIldpbmRvd2VkQXBwIiwgIlN0YXRpY0xpYiIsICJTaGFyZWRMaWIiLCAiTWFrZWZpbGUiLCAiTm9uZSIgfSwKdmFsaWRfbGFuZ3VhZ2VzID0geyAiQyIsICJDKysiLCAiQyMiIH0sCnZhbGlkX3Rvb2xzICAgICA9IHsKY2MgICAgID0geyAibXNjIiAgIH0sCmRvdG5ldCA9IHsgIm1zbmV0IiB9LAp9LApvbldvcmtzcGFjZSA9IHZzdHVkaW8udnMyMDA1LmdlbmVyYXRlU29sdXRpb24sCm9uUHJvamVjdCAgID0gdnN0dWRpby52czIwMDUuZ2VuZXJhdGVQcm9qZWN0LApvbkNsZWFuV29ya3NwYWNlID0gdnN0dWRpby5jbGVhblNvbHV0aW9uLApvbkNsZWFuUHJvamVjdCAgID0gdnN0dWRpby5jbGVhblByb2plY3QsCm9uQ2xlYW5UYXJnZXQgICAgPSB2c3R1ZGlvLmNsZWFuVGFyZ2V0LAp2c3R1ZGlvID0gewpjc3Byb2pTY2hlbWFWZXJzaW9uID0gIjIuMCIsCnByb2R1Y3RWZXJzaW9uICAgICAgPSAiOS4wLjMwNzI5IiwKc29sdXRpb25WZXJzaW9uICAgICA9ICIxMCIsCnZlcnNpb25OYW1lICAgICAgICAgPSAiMjAwOCIsCnRvb2xzVmVyc2lvbiAgICAgICAgPSAiMy41IiwKfQp9CgAAAABsb2NhbCBwID0gcHJlbWFrZQpwLnZzdHVkaW8udmMyMDB4ID0ge30KbG9jYWwgbSA9IHAudnN0dWRpby52YzIwMHgKbG9jYWwgdnN0dWRpbyA9IHAudnN0dWRpbwpsb2NhbCBjb250ZXh0ID0gcC5jb250ZXh0CmxvY2FsIHByb2plY3QgPSBwLnByb2plY3QKbG9jYWwgY29uZmlnID0gcC5jb25maWcKbG9jYWwgZmlsZWNvbmZpZyA9IHAuZmlsZWNvbmZpZwptLmVsZW1lbnRzID0ge30KbS5lbGVtZW50cy5wcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQpyZXR1cm4gewptLnhtbEVsZW1lbnQsCm0udmlzdWFsU3R1ZGlvUHJvamVjdCwKbS5wbGF0Zm9ybXMsCm0udG9vbEZpbGVzLAptLmNvbmZpZ3VyYXRpb25zLAptLnJlZmVyZW5jZXMsCm0uZmlsZXMsCm0uZ2xvYmFscwp9CmVuZApmdW5jdGlvbiBtLmdlbmVyYXRlKHByaikKcC5pbmRlbnQoIlx0IikKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5wcm9qZWN0LCBwcmopCnAucG9wKCc8L1Zpc3VhbFN0dWRpb1Byb2plY3Q+JykKcC53KCkKZW5kCm0uZWxlbWVudHMudmlzdWFsU3R1ZGlvUHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcmV0dXJuIHsKbS5wcm9qZWN0VHlwZSwKbS52ZXJzaW9uLAptLnByb2plY3ROYW1lLAptLnByb2plY3RHVUlELAptLnJvb3ROYW1lc3BhY2UsCm0ua2V5d29yZCwKbS50YXJnZXRGcmFtZXdvcmtWZXJzaW9uCn0KZW5kCmZ1bmN0aW9uIG0udmlzdWFsU3R1ZGlvUHJvamVjdChwcmopCnAucHVzaCgnPFZpc3VhbFN0dWRpb1Byb2plY3QnKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLnZpc3VhbFN0dWRpb1Byb2plY3QsIHByaikKcC53KCc+JykKZW5kCmZ1bmN0aW9uIG0uY29uZmlndXJhdGlvbnMocHJqKQpwLnB1c2goJzxDb25maWd1cmF0aW9ucz4nKQpsb2NhbCBtYXBwaW5nID0ge30KZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpsb2NhbCBuYW1lID0gdnN0dWRpby5wcm9qZWN0Q29uZmlnKGNmZykKbWFwcGluZ1tjZmddID0gbmFtZQptYXBwaW5nW25hbWVdID0gY2ZnCmVuZApmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmZvciBpLCBhcmNoIGluIGlwYWlycyhhcmNoaXRlY3R1cmVzKSBkbwpsb2NhbCB0YXJnZXQKbG9jYWwgdGVzdE5hbWUgPSB2c3R1ZGlvLnByb2plY3RDb25maWcoY2ZnLCBhcmNoKQppZiB0ZXN0TmFtZSA9PSBtYXBwaW5nW2NmZ10gdGhlbgp0YXJnZXQgPSBjZmcKZWxzZWlmIG5vdCBtYXBwaW5nW3Rlc3ROYW1lXSB0aGVuCnRhcmdldCA9IHsgZmFrZSA9IHRydWUgfQplbmQKaWYgdGFyZ2V0IHRoZW4KbS5jb25maWd1cmF0aW9uKHRhcmdldCwgdGVzdE5hbWUpCm0udG9vbHModGFyZ2V0KQpwLnBvcCgnPC9Db25maWd1cmF0aW9uPicpCmVuZAplbmQKZW5kCnAucG9wKCc8L0NvbmZpZ3VyYXRpb25zPicpCmVuZAptLmVsZW1lbnRzLmNvbmZpZ3VyYXRpb24gPSBmdW5jdGlvbihjZmcpCmlmIGNmZy5mYWtlIHRoZW4KcmV0dXJuIHsKbS5pbnRlcm1lZGlhdGVEaXJlY3RvcnksCm0uY29uZmlndXJhdGlvblR5cGUKfQplbHNlCnJldHVybiB7Cm0ub3V0cHV0RGlyZWN0b3J5LAptLmludGVybWVkaWF0ZURpcmVjdG9yeSwKbS5jb25maWd1cmF0aW9uVHlwZSwKbS51c2VPZk1GQywKbS5jaGFyYWN0ZXJTZXQsCm0ubWFuYWdlZEV4dGVuc2lvbnMsCn0KZW5kCmVuZApmdW5jdGlvbiBtLmNvbmZpZ3VyYXRpb24oY2ZnLCBuYW1lKQpwLnB1c2goJzxDb25maWd1cmF0aW9uJykKcC53KCdOYW1lPSIlcyInLCBuYW1lKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLmNvbmZpZ3VyYXRpb24sIGNmZykKcC53KCc+JykKZW5kCm0uZWxlbWVudHMudG9vbHMgPSBmdW5jdGlvbihjZmcpCmlmIHZzdHVkaW8uaXNNYWtlZmlsZShjZmcpIGFuZCBub3QgY2ZnLmZha2UgdGhlbgpyZXR1cm4gewptLlZDTk1ha2VUb29sCn0KZW5kCmlmIGNmZy5zeXN0ZW0gPT0gcC5YQk9YMzYwIHRoZW4KcmV0dXJuIHsKbS5WQ1ByZUJ1aWxkRXZlbnRUb29sLAptLlZDQ3VzdG9tQnVpbGRUb29sLAptLlZDWE1MRGF0YUdlbmVyYXRvclRvb2wsCm0uVkNXZWJTZXJ2aWNlUHJveHlHZW5lcmF0b3JUb29sLAptLlZDTUlETFRvb2wsCm0uVkNDTENvbXBpbGVyVG9vbCwKbS5WQ01hbmFnZWRSZXNvdXJjZUNvbXBpbGVyVG9vbCwKbS5WQ1Jlc291cmNlQ29tcGlsZXJUb29sLAptLlZDUHJlTGlua0V2ZW50VG9vbCwKbS5WQ0xpbmtlclRvb2wsCm0uVkNBTGlua1Rvb2wsCm0uVkNYMzYwSW1hZ2VUb29sLAptLlZDQnNjTWFrZVRvb2wsCm0uVkNYMzYwRGVwbG95bWVudFRvb2wsCm0uVkNQb3N0QnVpbGRFdmVudFRvb2wsCm0uRGVidWdnZXJUb29sLAp9CmVsc2UKcmV0dXJuIHsKbS5WQ1ByZUJ1aWxkRXZlbnRUb29sLAptLlZDQ3VzdG9tQnVpbGRUb29sLAptLlZDWE1MRGF0YUdlbmVyYXRvclRvb2wsCm0uVkNXZWJTZXJ2aWNlUHJveHlHZW5lcmF0b3JUb29sLAptLlZDTUlETFRvb2wsCm0uVkNDTENvbXBpbGVyVG9vbCwKbS5WQ01hbmFnZWRSZXNvdXJjZUNvbXBpbGVyVG9vbCwKbS5WQ1Jlc291cmNlQ29tcGlsZXJUb29sLAptLlZDUHJlTGlua0V2ZW50VG9vbCwKbS5WQ0xpbmtlclRvb2wsCm0uVkNBTGlua1Rvb2wsCm0uVkNNYW5pZmVzdFRvb2wsCm0uVkNYRENNYWtlVG9vbCwKbS5WQ0JzY01ha2VUb29sLAptLlZDRnhDb3BUb29sLAptLlZDQXBwVmVyaWZpZXJUb29sLAptLlZDUG9zdEJ1aWxkRXZlbnRUb29sLAp9CmVuZAplbmQKZnVuY3Rpb24gbS50b29scyhjZmcpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMudG9vbHMsIGNmZywgY29uZmlnLnRvb2xzZXQoY2ZnKSkKZW5kCm0uZWxlbWVudHMucmVmZXJlbmNlcyA9IGZ1bmN0aW9uKHByaikKcmV0dXJuIHsKbS5hc3NlbWJseVJlZmVyZW5jZXMsCm0ucHJvamVjdFJlZmVyZW5jZXMsCn0KZW5kCmZ1bmN0aW9uIG0ucmVmZXJlbmNlcyhwcmopCnAucHVzaCgnPFJlZmVyZW5jZXM+JykKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5yZWZlcmVuY2VzLCBwcmopCnAucG9wKCc8L1JlZmVyZW5jZXM+JykKZW5kCmZ1bmN0aW9uIG0uZmlsZXMocHJqKQpsb2NhbCB0ciA9IG0uZmlsZXNTb3J0ZWQocHJqKQpwLnB1c2goJzxGaWxlcz4nKQpwLnRyZWUudHJhdmVyc2UodHIsIHsKb25icmFuY2hlbnRlciA9IG0uZmlsZXNGaWx0ZXJTdGFydCwKb25icmFuY2hleGl0ID0gbS5maWxlc0ZpbHRlckVuZCwKb25sZWFmID0gbS5maWxlc0ZpbGUsCn0sIGZhbHNlKQpwLnBvcCgnPC9GaWxlcz4nKQplbmQKZnVuY3Rpb24gbS5maWxlc1NvcnRlZChwcmopCnJldHVybiBwcm9qZWN0LmdldHNvdXJjZXRyZWUocHJqLCBmdW5jdGlvbihhLGIpCmxvY2FsIGlzdG9wID0gKGEucGFyZW50LnBhcmVudCA9PSBuaWwpCmxvY2FsIGFTb3J0TmFtZSA9IGEubmFtZQpsb2NhbCBiU29ydE5hbWUgPSBiLm5hbWUKaWYgYS5yZWxwYXRoIHRoZW4KaWYgbm90IGIucmVscGF0aCB0aGVuCnJldHVybiBub3QgaXN0b3AKZW5kCmFTb3J0TmFtZSA9IGEucmVscGF0aDpnc3ViKCIlLiUuJS8iLCAiIikKZW5kCmlmIGIucmVscGF0aCB0aGVuCmlmIG5vdCBhLnJlbHBhdGggdGhlbgpyZXR1cm4gaXN0b3AKZW5kCmJTb3J0TmFtZSA9IGIucmVscGF0aDpnc3ViKCIlLiUuJS8iLCAiIikKZW5kCnJldHVybiBhU29ydE5hbWUgPCBiU29ydE5hbWUKZW5kKQplbmQKZnVuY3Rpb24gbS5maWxlc0ZpbHRlclN0YXJ0KG5vZGUpCnAucHVzaCgnPEZpbHRlcicpCnAudygnTmFtZT0iJXMiJywgbm9kZS5uYW1lKQpwLncoJz4nKQplbmQKZnVuY3Rpb24gbS5maWxlc0ZpbHRlckVuZChub2RlKQpwLnBvcCgnPC9GaWx0ZXI+JykKZW5kCmZ1bmN0aW9uIG0uZmlsZXNGaWxlKG5vZGUpCnAucHVzaCgnPEZpbGUnKQpwLncoJ1JlbGF0aXZlUGF0aD0iJXMiJywgcGF0aC50cmFuc2xhdGUobm9kZS5yZWxwYXRoKSkKcC53KCc+JykKbG9jYWwgcHJqID0gbm9kZS5wcm9qZWN0CmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbS5maWxlQ29uZmlndXJhdGlvbihjZmcsIG5vZGUpCmVuZApwLnBvcCgnPC9GaWxlPicpCmVuZAptLmVsZW1lbnRzLmZpbGVDb25maWd1cmF0aW9uQXR0cmlidXRlcyA9IGZ1bmN0aW9uKGZpbGVjZmcpCnJldHVybiB7Cm0uZXhjbHVkZWRGcm9tQnVpbGQsCn0KZW5kCmZ1bmN0aW9uIG0uZmlsZUNvbmZpZ3VyYXRpb24oY2ZnLCBub2RlKQpsb2NhbCBmaWxlY2ZnID0gZmlsZWNvbmZpZy5nZXRjb25maWcobm9kZSwgY2ZnKQpsb2NhbCBjb25maWdBdHRyaWJzID0gcC5jYXB0dXJlKGZ1bmN0aW9uICgpCnAucHVzaCgpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMuZmlsZUNvbmZpZ3VyYXRpb25BdHRyaWJ1dGVzLCBmaWxlY2ZnKQpwLnBvcCgpCmVuZCkKbG9jYWwgY29tcGlsZXJBdHRyaWJzID0gcC5jYXB0dXJlKGZ1bmN0aW9uICgpCnAucHVzaCgpCm0uVkNDTENvbXBpbGVyVG9vbChmaWxlY2ZnKQpwLnBvcCgpCmVuZCkKaWYgI2NvbmZpZ0F0dHJpYnMgPiAwIG9yIGNvbXBpbGVyQXR0cmliczpsaW5lcygpID4gMyB0aGVuCnAucHVzaCgnPEZpbGVDb25maWd1cmF0aW9uJykKcC53KCdOYW1lPSIlcyInLCB2c3R1ZGlvLnByb2plY3RDb25maWcoY2ZnKSkKaWYgI2NvbmZpZ0F0dHJpYnMgPiAwIHRoZW4KcC5vdXRsbihjb25maWdBdHRyaWJzKQplbmQKcC53KCc+JykKcC5vdXRsbihjb21waWxlckF0dHJpYnMpCnAucG9wKCc8L0ZpbGVDb25maWd1cmF0aW9uPicpCmVuZAplbmQKbS5lbGVtZW50cy5nbG9iYWxzID0gZnVuY3Rpb24ocHJqKQpyZXR1cm4ge30KZW5kCmZ1bmN0aW9uIG0uZ2xvYmFscyhwcmopCnAucHVzaCgnPEdsb2JhbHM+JykKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5nbG9iYWxzLCBwcmopCnAucG9wKCc8L0dsb2JhbHM+JykKZW5kCmZ1bmN0aW9uIG0uVkNUb29sKG5hbWUsIGNmZywgLi4uKQpwLnB1c2goJzxUb29sJykKbG9jYWwgbmFtZUZ1bmMgPSBtW25hbWUgLi4gIk5hbWUiXQpsb2NhbCBjYWxsRnVuYyA9IG0uZWxlbWVudHNbbmFtZV0KaWYgbmFtZUZ1bmMgdGhlbgpuYW1lID0gbmFtZUZ1bmMoY2ZnLCAuLi4pCmVuZApwLncoJ05hbWU9IiVzIicsIG5hbWUpCmlmIGNmZyBhbmQgbm90IGNmZy5mYWtlIHRoZW4KcC5jYWxsQXJyYXkoY2FsbEZ1bmMsIGNmZywgLi4uKQplbmQKcC5wb3AoJy8+JykKZW5kCm0uZWxlbWVudHMuRGVidWdnZXJUb29sID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4ge30KZW5kCmZ1bmN0aW9uIG0uRGVidWdnZXJUb29sKGNmZykKcC5wdXNoKCc8RGVidWdnZXJUb29sJykKcC5wb3AoJy8+JykKZW5kCm0uZWxlbWVudHMuVkNBTGlua1Rvb2wgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7fQplbmQKZnVuY3Rpb24gbS5WQ0FMaW5rVG9vbChjZmcpCm0uVkNUb29sKCJWQ0FMaW5rVG9vbCIsIGNmZykKZW5kCm0uZWxlbWVudHMuVkNBcHBWZXJpZmllclRvb2wgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7fQplbmQKZnVuY3Rpb24gbS5WQ0FwcFZlcmlmaWVyVG9vbChjZmcpCmlmIGNmZy5raW5kIH49IHAuU1RBVElDTElCIHRoZW4KbS5WQ1Rvb2woIlZDQXBwVmVyaWZpZXJUb29sIiwgY2ZnKQplbmQKZW5kCm0uZWxlbWVudHMuVkNCc2NNYWtlVG9vbCA9IGZ1bmN0aW9uKGNmZykKcmV0dXJuIHt9CmVuZApmdW5jdGlvbiBtLlZDQnNjTWFrZVRvb2woY2ZnKQptLlZDVG9vbCgiVkNCc2NNYWtlVG9vbCIsIGNmZykKZW5kCm0uZWxlbWVudHMuVkNDTENvbXBpbGVyVG9vbCA9IGZ1bmN0aW9uKGNmZywgdG9vbHNldCkKaWYgbm90IHRvb2xzZXQgdGhlbgpyZXR1cm4gewptLmN1c3RvbUJ1aWxkVG9vbCwKbS5vYmplY3RGaWxlLAptLmFkZGl0aW9uYWxDb21waWxlck9wdGlvbnMsCm0ub3B0aW1pemF0aW9uLAptLmFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXMsCm0ud2hvbGVQcm9ncmFtT3B0aW1pemF0aW9uLAptLnByZXByb2Nlc3NvckRlZmluaXRpb25zLAptLnVuZGVmaW5lUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMsCm0ubWluaW1hbFJlYnVpbGQsCm0uYmFzaWNSdW50aW1lQ2hlY2tzLAptLmJ1ZmZlclNlY3VyaXR5Q2hlY2ssCm0uc3RyaW5nUG9vbGluZywKbS5leGNlcHRpb25IYW5kbGluZywKbS5ydW50aW1lTGlicmFyeSwKbS5lbmFibGVGdW5jdGlvbkxldmVsTGlua2luZywKbS5lbmFibGVFbmhhbmNlZEluc3RydWN0aW9uU2V0LAptLmZsb2F0aW5nUG9pbnRNb2RlbCwKbS5ydW50aW1lVHlwZUluZm8sCm0udHJlYXRXQ2hhcl90QXNCdWlsdEluVHlwZSwKbS51c2VQcmVjb21waWxlZEhlYWRlciwKbS5wcm9ncmFtRGF0YUJhc2VGaWxlTmFtZSwKbS53YXJuaW5nTGV2ZWwsCm0ud2FybkFzRXJyb3IsCm0uZGV0ZWN0NjRCaXRQb3J0YWJpbGl0eVByb2JsZW1zLAptLmRlYnVnSW5mb3JtYXRpb25Gb3JtYXQsCm0uY29tcGlsZUFzLAptLmRpc2FibGVTcGVjaWZpY1dhcm5pbmdzLAptLmZvcmNlZEluY2x1ZGVGaWxlcywKbS5vbWl0RGVmYXVsdExpYiwKfQplbHNlCnJldHVybiB7Cm0uYWRkaXRpb25hbEV4dGVybmFsQ29tcGlsZXJPcHRpb25zLAptLmFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXMsCm0ucHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMsCm0udW5kZWZpbmVQcmVwcm9jZXNzb3JEZWZpbml0aW9ucywKbS51c2VQcmVjb21waWxlZEhlYWRlciwKbS5wcm9ncmFtRGF0YUJhc2VGaWxlTmFtZSwKbS5kZWJ1Z0luZm9ybWF0aW9uRm9ybWF0LAptLmNvbXBpbGVBcywKbS5mb3JjZWRJbmNsdWRlRmlsZXMsCn0KZW5kCmVuZApmdW5jdGlvbiBtLlZDQ0xDb21waWxlclRvb2xOYW1lKGNmZykKbG9jYWwgcHJqY2ZnLCBmaWxlY2ZnID0gY29uZmlnLm5vcm1hbGl6ZShjZmcpCmlmIGZpbGVjZmcgYW5kIGZpbGVjb25maWcuaGFzQ3VzdG9tQnVpbGRSdWxlKGZpbGVjZmcpIHRoZW4KcmV0dXJuICJWQ0N1c3RvbUJ1aWxkVG9vbCIKZWxzZWlmIHByamNmZyBhbmQgcHJqY2ZnLnN5c3RlbSA9PSBwLlhCT1gzNjAgdGhlbgpyZXR1cm4gIlZDQ0xYMzYwQ29tcGlsZXJUb29sIgplbHNlCnJldHVybiAiVkNDTENvbXBpbGVyVG9vbCIKZW5kCmVuZApmdW5jdGlvbiBtLlZDQ0xDb21waWxlclRvb2woY2ZnLCB0b29sc2V0KQptLlZDVG9vbCgiVkNDTENvbXBpbGVyVG9vbCIsIGNmZywgdG9vbHNldCkKZW5kCm0uZWxlbWVudHMuVkNDdXN0b21CdWlsZFRvb2wgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7fQplbmQKZnVuY3Rpb24gbS5WQ0N1c3RvbUJ1aWxkVG9vbChjZmcpCm0uVkNUb29sKCJWQ0N1c3RvbUJ1aWxkVG9vbCIsIGNmZykKZW5kCm0uZWxlbWVudHMuVkNGeENvcFRvb2wgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7fQplbmQKZnVuY3Rpb24gbS5WQ0Z4Q29wVG9vbChjZmcpCm0uVkNUb29sKCJWQ0Z4Q29wVG9vbCIsIGNmZykKZW5kCm0uZWxlbWVudHMuVkNMaW5rZXJUb29sID0gZnVuY3Rpb24oY2ZnLCB0b29sc2V0KQppZiBjZmcua2luZCB+PSBwLlNUQVRJQ0xJQiB0aGVuCnJldHVybiB7Cm0ubGlua0xpYnJhcnlEZXBlbmRlbmNpZXMsCm0uaWdub3JlSW1wb3J0TGlicmFyeSwKbS5hZGRpdGlvbmFsTGlua2VyT3B0aW9ucywKbS5hZGRpdGlvbmFsRGVwZW5kZW5jaWVzLAptLm91dHB1dEZpbGUsCm0ubGlua0luY3JlbWVudGFsLAptLmFkZGl0aW9uYWxMaWJyYXJ5RGlyZWN0b3JpZXMsCm0ubW9kdWxlRGVmaW5pdGlvbkZpbGUsCm0uZ2VuZXJhdGVNYW5pZmVzdCwKbS5nZW5lcmF0ZURlYnVnSW5mb3JtYXRpb24sCm0ucHJvZ3JhbURhdGFiYXNlRmlsZSwKbS5zdWJTeXN0ZW0sCm0ubGFyZ2VBZGRyZXNzQXdhcmUsCm0ub3B0aW1pemVSZWZlcmVuY2VzLAptLmVuYWJsZUNPTURBVEZvbGRpbmcsCm0uZW50cnlQb2ludFN5bWJvbCwKbS5pbXBvcnRMaWJyYXJ5LAptLnRhcmdldE1hY2hpbmUsCn0KZWxzZQpyZXR1cm4gewptLmFkZGl0aW9uYWxMaW5rZXJPcHRpb25zLAptLmFkZGl0aW9uYWxEZXBlbmRlbmNpZXMsCm0ub3V0cHV0RmlsZSwKbS5hZGRpdGlvbmFsTGlicmFyeURpcmVjdG9yaWVzLAp9CmVuZAplbmQKZnVuY3Rpb24gbS5WQ0xpbmtlclRvb2xOYW1lKGNmZykKaWYgY2ZnLmtpbmQgPT0gcC5TVEFUSUNMSUIgdGhlbgpyZXR1cm4gIlZDTGlicmFyaWFuVG9vbCIKZWxzZWlmIGNmZy5zeXN0ZW0gPT0gcC5YQk9YMzYwIHRoZW4KcmV0dXJuICJWQ1gzNjBMaW5rZXJUb29sIgplbHNlCnJldHVybiAiVkNMaW5rZXJUb29sIgplbmQKZW5kCmZ1bmN0aW9uIG0uVkNMaW5rZXJUb29sKGNmZywgdG9vbHNldCkKbS5WQ1Rvb2woIlZDTGlua2VyVG9vbCIsIGNmZywgdG9vbHNldCkKZW5kCm0uZWxlbWVudHMuVkNNYW5hZ2VkUmVzb3VyY2VDb21waWxlclRvb2wgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7fQplbmQKZnVuY3Rpb24gbS5WQ01hbmFnZWRSZXNvdXJjZUNvbXBpbGVyVG9vbChjZmcpCm0uVkNUb29sKCJWQ01hbmFnZWRSZXNvdXJjZUNvbXBpbGVyVG9vbCIsIGNmZykKZW5kCm0uZWxlbWVudHMuVkNNYW5pZmVzdFRvb2wgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7Cm0uYWRkaXRpb25hbE1hbmlmZXN0RmlsZXMsCn0KZW5kCmZ1bmN0aW9uIG0uVkNNYW5pZmVzdFRvb2woY2ZnKQppZiBjZmcua2luZCB+PSBwLlNUQVRJQ0xJQiB0aGVuCm0uVkNUb29sKCJWQ01hbmlmZXN0VG9vbCIsIGNmZykKZW5kCmVuZAptLmVsZW1lbnRzLlZDTUlETFRvb2wgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7Cm0udGFyZ2V0RW52aXJvbm1lbnQKfQplbmQKZnVuY3Rpb24gbS5WQ01JRExUb29sKGNmZykKbS5WQ1Rvb2woIlZDTUlETFRvb2wiLCBjZmcpCmVuZAptLmVsZW1lbnRzLlZDTk1ha2VUb29sID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4gewptLmJ1aWxkQ29tbWFuZExpbmUsCm0ucmVCdWlsZENvbW1hbmRMaW5lLAptLmNsZWFuQ29tbWFuZExpbmUsCm0ub3V0cHV0LAptLnByZXByb2Nlc3NvckRlZmluaXRpb25zLAptLnVuZGVmaW5lUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMsCm0uaW5jbHVkZVNlYXJjaFBhdGgsCm0uZm9yY2VkSW5jbHVkZXMsCm0uYXNzZW1ibHlTZWFyY2hQYXRoLAptLmZvcmNlZFVzaW5nQXNzZW1ibGllcywKbS5jb21waWxlQXNNYW5hZ2VkLAp9CmVuZApmdW5jdGlvbiBtLlZDTk1ha2VUb29sKGNmZykKbS5WQ1Rvb2woIlZDTk1ha2VUb29sIiwgY2ZnKQplbmQKbS5lbGVtZW50cy5WQ0J1aWxkVG9vbCA9IGZ1bmN0aW9uKGNmZywgc3RhZ2UpCnJldHVybiB7Cm0uY29tbWFuZExpbmUsCn0KZW5kCmZ1bmN0aW9uIG0uVkNCdWlsZFRvb2xOYW1lKGNmZywgc3RhZ2UpCnJldHVybiAiVkMiIC4uIHN0YWdlIC4uICJFdmVudFRvb2wiCmVuZApmdW5jdGlvbiBtLlZDUHJlQnVpbGRFdmVudFRvb2woY2ZnKQptLlZDVG9vbCgiVkNCdWlsZFRvb2wiLCBjZmcsICJQcmVCdWlsZCIpCmVuZApmdW5jdGlvbiBtLlZDUHJlTGlua0V2ZW50VG9vbChjZmcpCm0uVkNUb29sKCJWQ0J1aWxkVG9vbCIsIGNmZywgIlByZUxpbmsiKQplbmQKZnVuY3Rpb24gbS5WQ1Bvc3RCdWlsZEV2ZW50VG9vbChjZmcpCm0uVkNUb29sKCJWQ0J1aWxkVG9vbCIsIGNmZywgIlBvc3RCdWlsZCIpCmVuZAptLmVsZW1lbnRzLlZDUmVzb3VyY2VDb21waWxlclRvb2wgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7Cm0uYWRkaXRpb25hbFJlc291cmNlT3B0aW9ucywKbS5yZXNvdXJjZVByZXByb2Nlc3NvckRlZmluaXRpb25zLAptLmFkZGl0aW9uYWxSZXNvdXJjZUluY2x1ZGVEaXJlY3RvcmllcywKbS5jdWx0dXJlLAp9CmVuZApmdW5jdGlvbiBtLlZDUmVzb3VyY2VDb21waWxlclRvb2woY2ZnKQptLlZDVG9vbCgiVkNSZXNvdXJjZUNvbXBpbGVyVG9vbCIsIGNmZykKZW5kCm0uZWxlbWVudHMuVkNXZWJTZXJ2aWNlUHJveHlHZW5lcmF0b3JUb29sID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4ge30KZW5kCmZ1bmN0aW9uIG0uVkNXZWJTZXJ2aWNlUHJveHlHZW5lcmF0b3JUb29sKGNmZykKbS5WQ1Rvb2woIlZDV2ViU2VydmljZVByb3h5R2VuZXJhdG9yVG9vbCIsIGNmZykKZW5kCm0uZWxlbWVudHMuVkNYMzYwRGVwbG95bWVudFRvb2wgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7Cm0uZGVwbG95bWVudFR5cGUsCm0uYWRkaXRpb25hbERlcGxveW1lbnRPcHRpb25zLAp9CmVuZApmdW5jdGlvbiBtLlZDWDM2MERlcGxveW1lbnRUb29sKGNmZykKbS5WQ1Rvb2woIlZDWDM2MERlcGxveW1lbnRUb29sIiwgY2ZnKQplbmQKbS5lbGVtZW50cy5WQ1gzNjBJbWFnZVRvb2wgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7Cm0uYWRkaXRpb25hbEltYWdlT3B0aW9ucywKbS5vdXRwdXRGaWxlTmFtZSwKfQplbmQKZnVuY3Rpb24gbS5WQ1gzNjBJbWFnZVRvb2woY2ZnKQptLlZDVG9vbCgiVkNYMzYwSW1hZ2VUb29sIiwgY2ZnKQplbmQKbS5lbGVtZW50cy5WQ1hEQ01ha2VUb29sID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4ge30KZW5kCmZ1bmN0aW9uIG0uVkNYRENNYWtlVG9vbChjZmcpCm0uVkNUb29sKCJWQ1hEQ01ha2VUb29sIiwgY2ZnKQplbmQKbS5lbGVtZW50cy5WQ1hNTERhdGFHZW5lcmF0b3JUb29sID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4ge30KZW5kCmZ1bmN0aW9uIG0uVkNYTUxEYXRhR2VuZXJhdG9yVG9vbChjZmcpCm0uVkNUb29sKCJWQ1hNTERhdGFHZW5lcmF0b3JUb29sIiwgY2ZnKQplbmQKZnVuY3Rpb24gbS5zeW1ib2xzKGNmZykKaWYgbm90IChjZmcuc3ltYm9scyA9PSBwLk9OKSB0aGVuCnJldHVybiAwCmVsc2VpZiBjZmcuZGVidWdmb3JtYXQgPT0gImM3IiB0aGVuCnJldHVybiAxCmVsc2UKaWYgY2ZnLmVkaXRhbmRjb250aW51ZSA9PSBwLk9GRiBvcgogICBjb25maWcuaXNPcHRpbWl6ZWRCdWlsZChjZmcpIG9yCiAgIGNmZy5jbHIgfj0gcC5PRkYgb3IKICAgY2ZnLmFyY2hpdGVjdHVyZSA9PSBwLlg4Nl82NAp0aGVuCnJldHVybiAzCmVsc2UKcmV0dXJuIDQKZW5kCmVuZAplbmQKZnVuY3Rpb24gbS5hZGRpdGlvbmFsQ29tcGlsZXJPcHRpb25zKGNmZykKbG9jYWwgb3B0cyA9IGNmZy5idWlsZG9wdGlvbnMKaWYgY2ZnLmZsYWdzLk11bHRpUHJvY2Vzc29yQ29tcGlsZSB0aGVuCnRhYmxlLmluc2VydChvcHRzLCAiL01QIikKZW5kCmlmICNvcHRzID4gMCB0aGVuCnAueCgnQWRkaXRpb25hbE9wdGlvbnM9IiVzIicsIHRhYmxlLmNvbmNhdChvcHRzLCAiICIpKQplbmQKZW5kCmZ1bmN0aW9uIG0uYWRkaXRpb25hbERlcGVuZGVuY2llcyhjZmcsIHRvb2xzZXQpCmlmICNjZmcubGlua3MgPT0gMCB0aGVuIHJldHVybiBlbmQKbG9jYWwgZXggPSB2c3R1ZGlvLm5lZWRzRXhwbGljaXRMaW5rKGNmZykKbG9jYWwgbGlua3MKaWYgbm90IHRvb2xzZXQgdGhlbgpsaW5rcyA9IHZzdHVkaW8uZ2V0TGlua3MoY2ZnLCBleCkKZm9yIGksIGxpbmsgaW4gaXBhaXJzKGxpbmtzKSBkbwppZiBsaW5rOmZpbmQoIiAiLCAxLCB0cnVlKSB0aGVuCmxpbmsgPSAnIicgLi4gbGluayAuLiAnIicKZW5kCmxpbmtzW2ldID0gcGF0aC50cmFuc2xhdGUobGluaykKZW5kCmVsc2UKbGlua3MgPSBwYXRoLnRyYW5zbGF0ZSh0b29sc2V0LmdldGxpbmtzKGNmZywgbm90IGV4KSkKZW5kCmlmICNsaW5rcyA+IDAgdGhlbgpwLngoJ0FkZGl0aW9uYWxEZXBlbmRlbmNpZXM9IiVzIicsIHRhYmxlLmNvbmNhdChsaW5rcywgIiAiKSkKZW5kCmVuZApmdW5jdGlvbiBtLmFkZGl0aW9uYWxEZXBsb3ltZW50T3B0aW9ucyhjZmcpCmlmICNjZmcuZGVwbG95bWVudG9wdGlvbnMgPiAwIHRoZW4KcC54KCdBZGRpdGlvbmFsT3B0aW9ucz0iJXMiJywgdGFibGUuY29uY2F0KGNmZy5kZXBsb3ltZW50b3B0aW9ucywgIiAiKSkKZW5kCmVuZApmdW5jdGlvbiBtLmFkZGl0aW9uYWxFeHRlcm5hbENvbXBpbGVyT3B0aW9ucyhjZmcsIHRvb2xzZXQpCmxvY2FsIGJ1aWxkb3B0aW9ucyA9IHRhYmxlLmpvaW4odG9vbHNldC5nZXRjeHhmbGFncyhjZmcpLCBjZmcuYnVpbGRvcHRpb25zKQppZiBub3QgY2ZnLmZsYWdzLk5vUENIIGFuZCBjZmcucGNoaGVhZGVyIHRoZW4KdGFibGUuaW5zZXJ0KGJ1aWxkb3B0aW9ucywgJy0tdXNlX3BjaD0iJChJbnREaXIpLyQoVGFyZ2V0TmFtZSkucGNoIicpCmVuZAppZiAjYnVpbGRvcHRpb25zID4gMCB0aGVuCnAueCgnQWRkaXRpb25hbE9wdGlvbnM9IiVzIicsIHRhYmxlLmNvbmNhdChidWlsZG9wdGlvbnMsICIgIikpCmVuZAplbmQKZnVuY3Rpb24gbS5hZGRpdGlvbmFsSW1hZ2VPcHRpb25zKGNmZykKaWYgI2NmZy5pbWFnZW9wdGlvbnMgPiAwIHRoZW4KcC54KCdBZGRpdGlvbmFsT3B0aW9ucz0iJXMiJywgdGFibGUuY29uY2F0KGNmZy5pbWFnZW9wdGlvbnMsICIgIikpCmVuZAplbmQKZnVuY3Rpb24gbS5hZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzKGNmZykKaWYgI2NmZy5pbmNsdWRlZGlycyA+IDAgdGhlbgpsb2NhbCBkaXJzID0gdnN0dWRpby5wYXRoKGNmZywgY2ZnLmluY2x1ZGVkaXJzKQpwLngoJ0FkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiVzIicsIHRhYmxlLmNvbmNhdChkaXJzLCAiOyIpKQplbmQKZW5kCmZ1bmN0aW9uIG0uYWRkaXRpb25hbExpYnJhcnlEaXJlY3RvcmllcyhjZmcpCmlmICNjZmcubGliZGlycyA+IDAgdGhlbgpsb2NhbCBkaXJzID0gdnN0dWRpby5wYXRoKGNmZywgY2ZnLmxpYmRpcnMpCnAueCgnQWRkaXRpb25hbExpYnJhcnlEaXJlY3Rvcmllcz0iJXMiJywgdGFibGUuY29uY2F0KGRpcnMsICI7IikpCmVuZAplbmQKZnVuY3Rpb24gbS5hZGRpdGlvbmFsTGlua2VyT3B0aW9ucyhjZmcsIHRvb2xzZXQpCmxvY2FsIGZsYWdzCmlmIHRvb2xzZXQgdGhlbgpmbGFncyA9IHRhYmxlLmpvaW4odG9vbHNldC5nZXRsZGZsYWdzKGNmZyksIGNmZy5saW5rb3B0aW9ucykKZWxzZQpmbGFncyA9IGNmZy5saW5rb3B0aW9ucwplbmQKaWYgI2ZsYWdzID4gMCB0aGVuCnAueCgnQWRkaXRpb25hbE9wdGlvbnM9IiVzIicsIHRhYmxlLmNvbmNhdChmbGFncywgIiAiKSkKZW5kCmVuZApmdW5jdGlvbiBtLmFkZGl0aW9uYWxNYW5pZmVzdEZpbGVzKGNmZykKbG9jYWwgbWFuaWZlc3RzID0ge30KZm9yIGksIGZuYW1lIGluIGlwYWlycyhjZmcuZmlsZXMpIGRvCmlmIHBhdGguZ2V0ZXh0ZW5zaW9uKGZuYW1lKSA9PSAiLm1hbmlmZXN0IiB0aGVuCnRhYmxlLmluc2VydChtYW5pZmVzdHMsIHByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIGZuYW1lKSkKZW5kCmVuZAppZiAjbWFuaWZlc3RzID4gMCB0aGVuCnAueCgnQWRkaXRpb25hbE1hbmlmZXN0RmlsZXM9IiVzIicsIHRhYmxlLmNvbmNhdChtYW5pZmVzdHMsICI7IikpCmVuZAplbmQKZnVuY3Rpb24gbS5hZGRpdGlvbmFsUmVzb3VyY2VJbmNsdWRlRGlyZWN0b3JpZXMoY2ZnKQpsb2NhbCBkaXJzID0gdGFibGUuam9pbihjZmcuaW5jbHVkZWRpcnMsIGNmZy5yZXNpbmNsdWRlZGlycykKaWYgI2RpcnMgPiAwIHRoZW4KZGlycyA9IHZzdHVkaW8ucGF0aChjZmcsIGRpcnMpCnAueCgnQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJXMiJywgdGFibGUuY29uY2F0KGRpcnMsICI7IikpCmVuZAplbmQKZnVuY3Rpb24gbS5hZGRpdGlvbmFsUmVzb3VyY2VPcHRpb25zKGNmZykKaWYgI2NmZy5yZXNvcHRpb25zID4gMCB0aGVuCnAueCgnQWRkaXRpb25hbE9wdGlvbnM9IiVzIicsIHRhYmxlLmNvbmNhdChjZmcucmVzb3B0aW9ucywgIiAiKSkKZW5kCmVuZApmdW5jdGlvbiBtLmFzc2VtYmx5UmVmZXJlbmNlcyhwcmopCmxvY2FsIGNmZyA9IHByb2plY3QuZ2V0Zmlyc3Rjb25maWcocHJqKQpsb2NhbCByZWZzID0gY29uZmlnLmdldGxpbmtzKGNmZywgInN5c3RlbSIsICJmdWxscGF0aCIsICJtYW5hZ2VkIikKdGFibGUuZm9yZWFjaGkocmVmcywgZnVuY3Rpb24odmFsdWUpCnAucHVzaCgnPEFzc2VtYmx5UmVmZXJlbmNlJykKcC54KCdSZWxhdGl2ZVBhdGg9IiVzIicsIHBhdGgudHJhbnNsYXRlKHZhbHVlKSkKcC5wb3AoJy8+JykKZW5kKQplbmQKZnVuY3Rpb24gbS5hc3NlbWJseVNlYXJjaFBhdGgoY2ZnKQpwLncoJ0Fzc2VtYmx5U2VhcmNoUGF0aD0iIicpCmVuZApmdW5jdGlvbiBtLmJhc2ljUnVudGltZUNoZWNrcyhjZmcpCmxvY2FsIGNmZywgZmlsZWNmZyA9IGNvbmZpZy5ub3JtYWxpemUoY2ZnKQppZiBub3QgZmlsZWNmZwphbmQgbm90IGNvbmZpZy5pc09wdGltaXplZEJ1aWxkKGNmZykKYW5kIGNmZy5jbHIgPT0gcC5PRkYKYW5kIG5vdCBjZmcuZmxhZ3MuTm9SdW50aW1lQ2hlY2tzCnRoZW4KcC53KCdCYXNpY1J1bnRpbWVDaGVja3M9IjMiJykKZW5kCmVuZApmdW5jdGlvbiBtLmJ1ZmZlclNlY3VyaXR5Q2hlY2soY2ZnKQppZiBjZmcuZmxhZ3MuTm9CdWZmZXJTZWN1cml0eUNoZWNrIHRoZW4KcC53KCdCdWZmZXJTZWN1cml0eUNoZWNrPSJmYWxzZSInKQplbmQKZW5kCmZ1bmN0aW9uIG0uYnVpbGRDb21tYW5kTGluZShjZmcpCmxvY2FsIGNtZHMgPSBvcy50cmFuc2xhdGVDb21tYW5kc0FuZFBhdGhzKGNmZy5idWlsZGNvbW1hbmRzLCBjZmcucHJvamVjdC5iYXNlZGlyLCBjZmcucHJvamVjdC5sb2NhdGlvbikKcC54KCdCdWlsZENvbW1hbmRMaW5lPSIlcyInLCB0YWJsZS5jb25jYXQoY21kcywgIlxyXG4iKSkKZW5kCmZ1bmN0aW9uIG0uY2hhcmFjdGVyU2V0KGNmZykKaWYgbm90IHZzdHVkaW8uaXNNYWtlZmlsZShjZmcpIHRoZW4KcC53KCdDaGFyYWN0ZXJTZXQ9IiVzIicsIGlpZihjZmcuY2hhcmFjdGVyc2V0ID09IHAuTUJDUywgMiwgMSkpCmVuZAplbmQKZnVuY3Rpb24gbS5jbGVhbkNvbW1hbmRMaW5lKGNmZykKbG9jYWwgY21kcyA9IG9zLnRyYW5zbGF0ZUNvbW1hbmRzQW5kUGF0aHMoY2ZnLmNsZWFuY29tbWFuZHMsIGNmZy5wcm9qZWN0LmJhc2VkaXIsIGNmZy5wcm9qZWN0LmxvY2F0aW9uKQpjbWRzID0gdGFibGUuY29uY2F0KGNtZHMsICJcclxuIikKcC54KCdDbGVhbkNvbW1hbmRMaW5lPSIlcyInLCBjbWRzKQplbmQKZnVuY3Rpb24gbS5jb21tYW5kTGluZShjZmcsIHN0YWdlKQpsb2NhbCBmaWVsZCA9IHN0YWdlOmxvd2VyKCkKbG9jYWwgc3RlcHMgPSBjZmdbZmllbGQgLi4gImNvbW1hbmRzIl0KbG9jYWwgbXNnID0gY2ZnW2ZpZWxkIC4uICJtZXNzYWdlIl0KaWYgI3N0ZXBzID4gMCB0aGVuCmlmIG1zZyB0aGVuCnAueCgnRGVzY3JpcHRpb249IiVzIicsIG1zZykKZW5kCnN0ZXBzID0gb3MudHJhbnNsYXRlQ29tbWFuZHNBbmRQYXRocyhzdGVwcywgY2ZnLnByb2plY3QuYmFzZWRpciwgY2ZnLnByb2plY3QubG9jYXRpb24pCnAueCgnQ29tbWFuZExpbmU9IiVzIicsIHRhYmxlLmltcGxvZGUoc3RlcHMsICIiLCAiIiwgIlxyXG4iKSkKZW5kCmVuZApmdW5jdGlvbiBtLmNvbXBpbGVBcyhjZmcsIHRvb2xzZXQpCmxvY2FsIGNmZywgZmlsZWNmZyA9IGNvbmZpZy5ub3JtYWxpemUoY2ZnKQpsb2NhbCBjID0gcC5sYW5ndWFnZXMuaXNjKGNmZy5sYW5ndWFnZSkKaWYgZmlsZWNmZyB0aGVuCmlmIHBhdGguaXNjZmlsZShmaWxlY2ZnLm5hbWUpIH49IGMgdGhlbgppZiBwYXRoLmlzY3BwZmlsZShmaWxlY2ZnLm5hbWUpIHRoZW4KbG9jYWwgdmFsdWUgPSBpaWYoYywgMiwgMSkKcC53KCdDb21waWxlQXM9IiVzIicsIHZhbHVlKQplbmQKZW5kCmVsc2UKbG9jYWwgY29tcGlsZUFzCmlmIHRvb2xzZXQgdGhlbgpjb21waWxlQXMgPSAiMCIKZWxzZWlmIGMgdGhlbgpjb21waWxlQXMgPSAiMSIKZW5kCmlmIGNvbXBpbGVBcyB0aGVuCnAudygnQ29tcGlsZUFzPSIlcyInLCBjb21waWxlQXMpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0uZGlzYWJsZVNwZWNpZmljV2FybmluZ3MoY2ZnKQppZiAjY2ZnLmRpc2FibGV3YXJuaW5ncyA+IDAgdGhlbgpwLngoJ0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPSIlcyInLCB0YWJsZS5jb25jYXQoY2ZnLmRpc2FibGV3YXJuaW5ncywgIjsiKSkKZW5kCmVuZApmdW5jdGlvbiBtLmNvbXBpbGVBc01hbmFnZWQoY2ZnKQpwLncoJ0NvbXBpbGVBc01hbmFnZWQ9IiInKQplbmQKZnVuY3Rpb24gbS5jb25maWd1cmF0aW9uVHlwZShjZmcpCmxvY2FsIGNmZ3R5cGVzID0gewpNYWtlZmlsZSA9IDAsCk5vbmUgPSAwLApTaGFyZWRMaWIgPSAyLApTdGF0aWNMaWIgPSA0LAp9CnAudygnQ29uZmlndXJhdGlvblR5cGU9IiVzIicsIGNmZ3R5cGVzW2NmZy5raW5kXSBvciAxKQplbmQKZnVuY3Rpb24gbS5jdWx0dXJlKGNmZykKbG9jYWwgdmFsdWUgPSB2c3R1ZGlvLmN1bHR1cmVGb3JMb2NhbGUoY2ZnLmxvY2FsZSkKaWYgdmFsdWUgdGhlbgpwLncoJ0N1bHR1cmU9IiVkIicsIHZhbHVlKQplbmQKZW5kCmZ1bmN0aW9uIG0uY3VzdG9tQnVpbGRUb29sKGNmZykKbG9jYWwgY2ZnLCBmaWxlY2ZnID0gY29uZmlnLm5vcm1hbGl6ZShjZmcpCmlmIGZpbGVjZmcgYW5kIGZpbGVjb25maWcuaGFzQ3VzdG9tQnVpbGRSdWxlKGZpbGVjZmcpIHRoZW4KbG9jYWwgY21kcyA9IG9zLnRyYW5zbGF0ZUNvbW1hbmRzQW5kUGF0aHMoZmlsZWNmZy5idWlsZGNvbW1hbmRzLCBmaWxlY2ZnLnByb2plY3QuYmFzZWRpciwgZmlsZWNmZy5wcm9qZWN0LmxvY2F0aW9uKQpwLngoJ0NvbW1hbmRMaW5lPSIlcyInLCB0YWJsZS5jb25jYXQoY21kcywnXHJcbicpKQpsb2NhbCBvdXRwdXRzID0gcHJvamVjdC5nZXRyZWxhdGl2ZShmaWxlY2ZnLnByb2plY3QsIGZpbGVjZmcuYnVpbGRvdXRwdXRzKQpwLngoJ091dHB1dHM9IiVzIicsIHRhYmxlLmNvbmNhdChvdXRwdXRzLCAnOycpKQppZiBmaWxlY2ZnLmJ1aWxkaW5wdXRzIGFuZCAjZmlsZWNmZy5idWlsZGlucHV0cyA+IDAgdGhlbgpsb2NhbCBpbnB1dHMgPSBwcm9qZWN0LmdldHJlbGF0aXZlKGZpbGVjZmcucHJvamVjdCwgZmlsZWNmZy5idWlsZGlucHV0cykKcC54KCdBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPSIlcyInLCB0YWJsZS5jb25jYXQoaW5wdXRzLCAnOycpKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLmRlYnVnSW5mb3JtYXRpb25Gb3JtYXQoY2ZnLCB0b29sc2V0KQpsb2NhbCBwcmpjZmcsIGZpbGVjZmcgPSBjb25maWcubm9ybWFsaXplKGNmZykKaWYgbm90IGZpbGVjZmcgdGhlbgpsb2NhbCBmbXQgPSBpaWYodG9vbHNldCwgIjAiLCBtLnN5bWJvbHMoY2ZnKSkKcC53KCdEZWJ1Z0luZm9ybWF0aW9uRm9ybWF0PSIlcyInLCBmbXQpCmVuZAplbmQKZnVuY3Rpb24gbS5kZXBsb3ltZW50VHlwZShjZmcpCnAudygnRGVwbG95bWVudFR5cGU9IjAiJykKZW5kCmZ1bmN0aW9uIG0uZGV0ZWN0NjRCaXRQb3J0YWJpbGl0eVByb2JsZW1zKGNmZykKbG9jYWwgcHJqY2ZnLCBmaWxlY2ZnID0gY29uZmlnLm5vcm1hbGl6ZShjZmcpCmlmIF9BQ1RJT04gPCAidnMyMDA4IiBhbmQgY2ZnLmNsciA9PSBwLk9GRiBhbmQgY2ZnLndhcm5pbmdzIH49IHAuT0ZGIGFuZCBub3QgZmlsZWNmZyB0aGVuCnAudygnRGV0ZWN0NjRCaXRQb3J0YWJpbGl0eVByb2JsZW1zPSIlcyInLCB0b3N0cmluZyhub3QgY2ZnLmZsYWdzLk5vNjRCaXRDaGVja3MpKQplbmQKZW5kCmZ1bmN0aW9uIG0uZW5hYmxlQ09NREFURm9sZGluZyhjZmcsIHRvb2xzZXQpCmlmIGNvbmZpZy5pc09wdGltaXplZEJ1aWxkKGNmZykgYW5kIG5vdCB0b29sc2V0IHRoZW4KcC53KCdFbmFibGVDT01EQVRGb2xkaW5nPSIyIicpCmVuZAplbmQKZnVuY3Rpb24gbS5sYXJnZUFkZHJlc3NBd2FyZShjZmcpCmlmIChjZmcubGFyZ2VhZGRyZXNzYXdhcmUgPT0gdHJ1ZSkgdGhlbgpwLncoJ0xhcmdlQWRkcmVzc0F3YXJlPSIyIicpCmVuZAplbmQKZnVuY3Rpb24gbS5lbmFibGVFbmhhbmNlZEluc3RydWN0aW9uU2V0KGNmZykKbG9jYWwgbWFwID0geyBTU0UgPSAiMSIsIFNTRTIgPSAiMiIgfQpsb2NhbCB2YWx1ZSA9IG1hcFtjZmcudmVjdG9yZXh0ZW5zaW9uc10KaWYgdmFsdWUgYW5kIGNmZy5zeXN0ZW0gfj0gIlhib3gzNjAiIGFuZCBjZmcuYXJjaGl0ZWN0dXJlIH49ICJ4ODZfNjQiIHRoZW4KcC53KCdFbmFibGVFbmhhbmNlZEluc3RydWN0aW9uU2V0PSIlZCInLCB2YWx1ZSkKZW5kCmVuZApmdW5jdGlvbiBtLmVuYWJsZUZ1bmN0aW9uTGV2ZWxMaW5raW5nKGNmZykKbG9jYWwgY2ZnLCBmaWxlY2ZnID0gY29uZmlnLm5vcm1hbGl6ZShjZmcpCmlmIG5vdCBmaWxlY2ZnIHRoZW4KcC53KCdFbmFibGVGdW5jdGlvbkxldmVsTGlua2luZz0idHJ1ZSInKQplbmQKZW5kCmZ1bmN0aW9uIG0uZW50cnlQb2ludFN5bWJvbChjZmcsIHRvb2xzZXQpCmlmIGNmZy5lbnRyeXBvaW50IHRoZW4KcC53KCdFbnRyeVBvaW50U3ltYm9sPSIlcyInLCBjZmcuZW50cnlwb2ludCkKZW5kCmVuZApmdW5jdGlvbiBtLmV4Y2VwdGlvbkhhbmRsaW5nKGNmZykKaWYgY2ZnLmV4Y2VwdGlvbmhhbmRsaW5nID09IHAuT0ZGIHRoZW4KcC53KCdFeGNlcHRpb25IYW5kbGluZz0iJXMiJywgaWlmKF9BQ1RJT04gPCAidnMyMDA1IiwgIkZBTFNFIiwgMCkpCmVsc2VpZiBjZmcuZXhjZXB0aW9uaGFuZGxpbmcgPT0gIlNFSCIgYW5kIF9BQ1RJT04gPiAidnMyMDAzIiB0aGVuCnAudygnRXhjZXB0aW9uSGFuZGxpbmc9IjIiJykKZW5kCmVuZApmdW5jdGlvbiBtLmV4Y2x1ZGVkRnJvbUJ1aWxkKGZpbGVjZmcpCmlmIG5vdCBmaWxlY2ZnIG9yIGZpbGVjZmcuZmxhZ3MuRXhjbHVkZUZyb21CdWlsZCB0aGVuCnAudygnRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiJykKZW5kCmVuZApmdW5jdGlvbiBtLmZsb2F0aW5nUG9pbnRNb2RlbChjZmcpCmxvY2FsIG1hcCA9IHsgU3RyaWN0ID0gIjEiLCBGYXN0ID0gIjIiIH0KbG9jYWwgdmFsdWUgPSBtYXBbY2ZnLmZsb2F0aW5ncG9pbnRdCmlmIHZhbHVlIHRoZW4KcC53KCdGbG9hdGluZ1BvaW50TW9kZWw9IiVkIicsIHZhbHVlKQplbmQKZW5kCmZ1bmN0aW9uIG0uZm9yY2VkSW5jbHVkZUZpbGVzKGNmZykKaWYgI2NmZy5mb3JjZWluY2x1ZGVzID4gMCB0aGVuCmxvY2FsIGluY2x1ZGVzID0gdnN0dWRpby5wYXRoKGNmZywgY2ZnLmZvcmNlaW5jbHVkZXMpCnAudygnRm9yY2VkSW5jbHVkZUZpbGVzPSIlcyInLCB0YWJsZS5jb25jYXQoaW5jbHVkZXMsICc7JykpCmVuZAppZiAjY2ZnLmZvcmNldXNpbmdzID4gMCB0aGVuCmxvY2FsIHVzaW5ncyA9IHZzdHVkaW8ucGF0aChjZmcsIGNmZy5mb3JjZXVzaW5ncykKcC53KCdGb3JjZWRVc2luZ0ZpbGVzPSIlcyInLCB0YWJsZS5jb25jYXQodXNpbmdzLCAnOycpKQplbmQKZW5kCmZ1bmN0aW9uIG0uZm9yY2VkSW5jbHVkZXMoY2ZnKQpwLncoJ0ZvcmNlZEluY2x1ZGVzPSIiJykKZW5kCmZ1bmN0aW9uIG0uZm9yY2VkVXNpbmdBc3NlbWJsaWVzKGNmZykKcC53KCdGb3JjZWRVc2luZ0Fzc2VtYmxpZXM9IiInKQplbmQKZnVuY3Rpb24gbS5rZXl3b3JkKHByaikKbG9jYWwgd2luZG93cywgbWFuYWdlZCwgbWFrZWZpbGUKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwppZiBjZmcuc3lzdGVtID09IHAuV0lORE9XUyB0aGVuIHdpbmRvd3MgPSB0cnVlIGVuZAppZiBjZmcuY2xyIH49IHAuT0ZGIHRoZW4gbWFuYWdlZCA9IHRydWUgZW5kCmlmIHZzdHVkaW8uaXNNYWtlZmlsZShjZmcpIHRoZW4gbWFrZWZpbGUgPSB0cnVlIGVuZAplbmQKaWYgd2luZG93cyB0aGVuCmxvY2FsIGtleXdvcmQgPSAiV2luMzJQcm9qIgppZiBtYW5hZ2VkIHRoZW4Ka2V5d29yZCA9ICJNYW5hZ2VkQ1Byb2oiCmVuZAppZiBtYWtlZmlsZSB0aGVuCmtleXdvcmQgPSAiTWFrZUZpbGVQcm9qIgplbmQKcC53KCdLZXl3b3JkPSIlcyInLCBrZXl3b3JkKQplbmQKZW5kCmZ1bmN0aW9uIG0uZ2VuZXJhdGVEZWJ1Z0luZm9ybWF0aW9uKGNmZywgdG9vbHNldCkKaWYgbm90IHRvb2xzZXQgdGhlbgpwLncoJ0dlbmVyYXRlRGVidWdJbmZvcm1hdGlvbj0iJXMiJywgdG9zdHJpbmcobS5zeW1ib2xzKGNmZykgfj0gMCkpCmVuZAplbmQKZnVuY3Rpb24gbS5nZW5lcmF0ZU1hbmlmZXN0KGNmZywgdG9vbHNldCkKaWYgY2ZnLmZsYWdzLk5vTWFuaWZlc3Qgb3IgdG9vbHNldCB0aGVuCnAudygnR2VuZXJhdGVNYW5pZmVzdD0iZmFsc2UiJykKZW5kCmVuZApmdW5jdGlvbiBtLmlnbm9yZUltcG9ydExpYnJhcnkoY2ZnLCB0b29sc2V0KQppZiBjZmcuZmxhZ3MuTm9JbXBvcnRMaWIgYW5kIG5vdCB0b29sc2V0IHRoZW4KcC53KCdJZ25vcmVJbXBvcnRMaWJyYXJ5PSJ0cnVlIicpCmVuZAplbmQKZnVuY3Rpb24gbS5pbXBvcnRMaWJyYXJ5KGNmZywgdG9vbHNldCkKaWYgY2ZnLmtpbmQgPT0gcC5TSEFSRURMSUIgYW5kIG5vdCB0b29sc2V0IHRoZW4KbG9jYWwgaW1wbGliZGlyID0gY2ZnLmxpbmt0YXJnZXQuYWJzcGF0aAppZiBjZmcuZmxhZ3MuTm9JbXBvcnRMaWIgdGhlbgppbXBsaWJkaXIgPSBwYXRoLmpvaW4oY2ZnLm9iamRpciwgcGF0aC5nZXRuYW1lKGltcGxpYmRpcikpCmVuZAppbXBsaWJkaXIgPSB2c3R1ZGlvLnBhdGgoY2ZnLCBpbXBsaWJkaXIpCnAueCgnSW1wb3J0TGlicmFyeT0iJXMiJywgaW1wbGliZGlyKQplbmQKZW5kCmZ1bmN0aW9uIG0uaW5jbHVkZVNlYXJjaFBhdGgoY2ZnKQpwLncoJ0luY2x1ZGVTZWFyY2hQYXRoPSIiJykKZW5kCmZ1bmN0aW9uIG0uaW50ZXJtZWRpYXRlRGlyZWN0b3J5KGNmZykKbG9jYWwgb2JqZGlyCmlmIG5vdCBjZmcuZmFrZSB0aGVuCm9iamRpciA9IHZzdHVkaW8ucGF0aChjZmcsIGNmZy5vYmpkaXIpCmVsc2UKb2JqZGlyID0gIiQoUGxhdGZvcm1OYW1lKVxcJChDb25maWd1cmF0aW9uTmFtZSkiCmVuZApwLngoJ0ludGVybWVkaWF0ZURpcmVjdG9yeT0iJXMiJywgb2JqZGlyKQplbmQKZnVuY3Rpb24gbS5saW5rSW5jcmVtZW50YWwoY2ZnLCB0b29sc2V0KQpsb2NhbCB2YWx1ZQppZiBub3QgdG9vbHNldCB0aGVuCnZhbHVlID0gaWlmKGNvbmZpZy5jYW5MaW5rSW5jcmVtZW50YWwoY2ZnKSAsIDIsIDEpCmVsc2UKdmFsdWUgPSAwCmVuZApwLncoJ0xpbmtJbmNyZW1lbnRhbD0iJXMiJywgdmFsdWUpCmVuZApmdW5jdGlvbiBtLmxpbmtMaWJyYXJ5RGVwZW5kZW5jaWVzKGNmZywgdG9vbHNldCkKaWYgdnN0dWRpby5uZWVkc0V4cGxpY2l0TGluayhjZmcpIGFuZCBub3QgdG9vbHNldCB0aGVuCnAudygnTGlua0xpYnJhcnlEZXBlbmRlbmNpZXM9ImZhbHNlIicpCmVuZAplbmQKZnVuY3Rpb24gbS5tYW5hZ2VkRXh0ZW5zaW9ucyhjZmcpCmlmIGNmZy5jbHIgfj0gcC5PRkYgdGhlbgpwLncoJ01hbmFnZWRFeHRlbnNpb25zPSIxIicpCmVuZAplbmQKZnVuY3Rpb24gbS5taW5pbWFsUmVidWlsZChjZmcpCmlmIGNvbmZpZy5pc0RlYnVnQnVpbGQoY2ZnKSBhbmQKICAgY2ZnLmRlYnVnZm9ybWF0IH49ICJjNyIgYW5kCiAgIG5vdCBjZmcuZmxhZ3MuTm9NaW5pbWFsUmVidWlsZCBhbmQKICAgY2ZnLmNsciA9PSBwLk9GRiBhbmQKICAgbm90IGNmZy5mbGFncy5NdWx0aVByb2Nlc3NvckNvbXBpbGUKdGhlbgpwLncoJ01pbmltYWxSZWJ1aWxkPSJ0cnVlIicpCmVuZAplbmQKZnVuY3Rpb24gbS5tb2R1bGVEZWZpbml0aW9uRmlsZShjZmcsIHRvb2xzZXQpCmlmIG5vdCB0b29sc2V0IHRoZW4KbG9jYWwgZGVmZmlsZSA9IGNvbmZpZy5maW5kZmlsZShjZmcsICIuZGVmIikKaWYgZGVmZmlsZSB0aGVuCnAudygnTW9kdWxlRGVmaW5pdGlvbkZpbGU9IiVzIicsIGRlZmZpbGUpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0ub2JqZWN0RmlsZShjZmcpCmxvY2FsIGNmZywgZmlsZWNmZyA9IGNvbmZpZy5ub3JtYWxpemUoY2ZnKQppZiBmaWxlY2ZnIGFuZCBwYXRoLmlzY3BwZmlsZShmaWxlY2ZnLm5hbWUpIHRoZW4KaWYgZmlsZWNmZy5vYmpuYW1lIH49IHBhdGguZ2V0YmFzZW5hbWUoZmlsZWNmZy5hYnNwYXRoKSB0aGVuCnAueCgnT2JqZWN0RmlsZT0iJChJbnREaXIpXFwlcy5vYmoiJywgZmlsZWNmZy5vYmpuYW1lKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLm9taXREZWZhdWx0TGliKGNmZykKaWYgY2ZnLmZsYWdzLk9taXREZWZhdWx0TGlicmFyeSB0aGVuCnAudygnT21pdERlZmF1bHRMaWJOYW1lPSJ0cnVlIicpCmVuZAplbmQKZnVuY3Rpb24gbS5vbWl0RnJhbWVQb2ludGVycyhjZmcpCmlmIGNmZy5mbGFncy5Ob0ZyYW1lUG9pbnRlciB0aGVuCnAudygnT21pdEZyYW1lUG9pbnRlcnM9InRydWUiJykKZW5kCmVuZApmdW5jdGlvbiBtLm9wdGltaXphdGlvbihjZmcpCmxvY2FsIG1hcCA9IHsgT2ZmPTAsIE9uPTMsIERlYnVnPTAsIEZ1bGw9MywgU2l6ZT0xLCBTcGVlZD0yIH0KbG9jYWwgdmFsdWUgPSBtYXBbY2ZnLm9wdGltaXplXQppZiB2YWx1ZSBvciBub3QgY2ZnLmFic3BhdGggdGhlbgpwLncoJ09wdGltaXphdGlvbj0iJXMiJywgdmFsdWUgb3IgMCkKZW5kCmVuZApmdW5jdGlvbiBtLm9wdGltaXplUmVmZXJlbmNlcyhjZmcsIHRvb2xzZXQpCmlmIGNvbmZpZy5pc09wdGltaXplZEJ1aWxkKGNmZykgYW5kIG5vdCB0b29sc2V0IHRoZW4KcC53KCdPcHRpbWl6ZVJlZmVyZW5jZXM9IjIiJykKZW5kCmVuZApmdW5jdGlvbiBtLm91dHB1dChjZmcpCnAudygnT3V0cHV0PSIkKE91dERpciklcyInLCBjZmcuYnVpbGR0YXJnZXQubmFtZSkKZW5kCmZ1bmN0aW9uIG0ub3V0cHV0RGlyZWN0b3J5KGNmZykKbG9jYWwgb3V0ZGlyID0gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgY2ZnLmJ1aWxkdGFyZ2V0LmRpcmVjdG9yeSkKcC54KCdPdXRwdXREaXJlY3Rvcnk9IiVzIicsIHBhdGgudHJhbnNsYXRlKG91dGRpcikpCmVuZApmdW5jdGlvbiBtLm91dHB1dEZpbGUoY2ZnKQpwLngoJ091dHB1dEZpbGU9IiQoT3V0RGlyKVxcJXMiJywgY2ZnLmJ1aWxkdGFyZ2V0Lm5hbWUpCmVuZApmdW5jdGlvbiBtLm91dHB1dEZpbGVOYW1lKGNmZykKaWYgY2ZnLmltYWdlcGF0aCB+PSBuaWwgdGhlbgpwLngoJ091dHB1dEZpbGVOYW1lPSIlcyInLCBwYXRoLnRyYW5zbGF0ZShjZmcuaW1hZ2VwYXRoKSkKZW5kCmVuZApmdW5jdGlvbiBtLnBsYXRmb3JtcyhwcmopCmFyY2hpdGVjdHVyZXMgPSB7fQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmxvY2FsIGFyY2ggPSB2c3R1ZGlvLmFyY2hGcm9tQ29uZmlnKGNmZywgdHJ1ZSkKaWYgbm90IHRhYmxlLmNvbnRhaW5zKGFyY2hpdGVjdHVyZXMsIGFyY2gpIHRoZW4KdGFibGUuaW5zZXJ0KGFyY2hpdGVjdHVyZXMsIGFyY2gpCmVuZAplbmQKcC5wdXNoKCc8UGxhdGZvcm1zPicpCnRhYmxlLmZvcmVhY2hpKGFyY2hpdGVjdHVyZXMsIGZ1bmN0aW9uKGFyY2gpCnAucHVzaCgnPFBsYXRmb3JtJykKcC53KCdOYW1lPSIlcyInLCBhcmNoKQpwLnBvcCgnLz4nKQplbmQpCnAucG9wKCc8L1BsYXRmb3Jtcz4nKQplbmQKZnVuY3Rpb24gbS5wcmVwcm9jZXNzb3JEZWZpbml0aW9ucyhjZmcpCmlmICNjZmcuZGVmaW5lcyA+IDAgb3IgdnN0dWRpby5pc01ha2VmaWxlKGNmZykgdGhlbgpwLngoJ1ByZXByb2Nlc3NvckRlZmluaXRpb25zPSIlcyInLCB0YWJsZS5jb25jYXQoY2ZnLmRlZmluZXMsICI7IikpCmVuZAplbmQKZnVuY3Rpb24gbS51bmRlZmluZVByZXByb2Nlc3NvckRlZmluaXRpb25zKGNmZykKaWYgI2NmZy51bmRlZmluZXMgPiAwIHRoZW4KcC54KCdVbmRlZmluZVByZXByb2Nlc3NvckRlZmluaXRpb25zPSIlcyInLCB0YWJsZS5jb25jYXQoY2ZnLnVuZGVmaW5lcywgIjsiKSkKZW5kCmVuZApmdW5jdGlvbiBtLnByb2dyYW1EYXRhYmFzZUZpbGUoY2ZnLCB0b29sc2V0KQppZiB0b29sc2V0IHRoZW4KcC53KCdQcm9ncmFtRGF0YWJhc2VGaWxlPSIiJykKZW5kCmVuZApmdW5jdGlvbiBtLnByb2dyYW1EYXRhQmFzZUZpbGVOYW1lKGNmZywgdG9vbHNldCkKaWYgdG9vbHNldCB0aGVuCnAudygnUHJvZ3JhbURhdGFCYXNlRmlsZU5hbWU9IiInKQplbmQKZW5kCmZ1bmN0aW9uIG0ucHJvamVjdEdVSUQocHJqKQpwLncoJ1Byb2plY3RHVUlEPSJ7JXN9IicsIHByai51dWlkKQplbmQKZnVuY3Rpb24gbS5wcm9qZWN0TmFtZShwcmopCnAueCgnTmFtZT0iJXMiJywgcHJqLm5hbWUpCmVuZApmdW5jdGlvbiBtLnByb2plY3RSZWZlcmVuY2VzKHByaikKbG9jYWwgZGVwcyA9IHByb2plY3QuZ2V0ZGVwZW5kZW5jaWVzKHByaikKaWYgI2RlcHMgPiAwIHRoZW4KZm9yIGksIGRlcCBpbiBpcGFpcnMoZGVwcykgZG8KbG9jYWwgcmVscGF0aCA9IHZzdHVkaW8ucGF0aChwcmoud29ya3NwYWNlLCB2c3R1ZGlvLnByb2plY3RmaWxlKGRlcCkpCmlmIG5vdCByZWxwYXRoOnN0YXJ0c3dpdGgoIi4iKSB0aGVuCnJlbHBhdGggPSAiLlxcIiAuLiByZWxwYXRoCmVuZApwLnB1c2goJzxQcm9qZWN0UmVmZXJlbmNlJykKcC53KCdSZWZlcmVuY2VkUHJvamVjdElkZW50aWZpZXI9Inslc30iJywgZGVwLnV1aWQpCnAudygnUmVsYXRpdmVQYXRoVG9Qcm9qZWN0PSIlcyInLCByZWxwYXRoKQpwLnBvcCgnLz4nKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLnByb2plY3RUeXBlKHByaikKcC53KCdQcm9qZWN0VHlwZT0iVmlzdWFsIEMrKyInKQplbmQKZnVuY3Rpb24gbS5yZUJ1aWxkQ29tbWFuZExpbmUoY2ZnKQpjb21tYW5kcyA9IHRhYmxlLmNvbmNhdChjZmcucmVidWlsZGNvbW1hbmRzLCAiXHJcbiIpCnAueCgnUmVCdWlsZENvbW1hbmRMaW5lPSIlcyInLCBjb21tYW5kcykKZW5kCmZ1bmN0aW9uIG0ucmVzb3VyY2VQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyhjZmcpCmxvY2FsIGRlZnMgPSB0YWJsZS5qb2luKGNmZy5kZWZpbmVzLCBjZmcucmVzZGVmaW5lcykKaWYgI2RlZnMgPiAwIHRoZW4KcC54KCdQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iJXMiJywgdGFibGUuY29uY2F0KGRlZnMsICI7IikpCmVuZAplbmQKZnVuY3Rpb24gbS5yb290TmFtZXNwYWNlKHByaikKbG9jYWwgaGFzV2luZG93cyA9IHByb2plY3QuaGFzQ29uZmlnKHByaiwgZnVuY3Rpb24oY2ZnKQpyZXR1cm4gY2ZnLnN5c3RlbSA9PSBwLldJTkRPV1MKZW5kKQppZiBoYXNXaW5kb3dzIGFuZCBfQUNUSU9OID4gInZzMjAwMyIgdGhlbgpwLngoJ1Jvb3ROYW1lc3BhY2U9IiVzIicsIHByai5uYW1lKQplbmQKZW5kCmZ1bmN0aW9uIG0ucnVudGltZUxpYnJhcnkoY2ZnKQpsb2NhbCBjZmcsIGZpbGVjZmcgPSBjb25maWcubm9ybWFsaXplKGNmZykKaWYgbm90IGZpbGVjZmcgdGhlbgpsb2NhbCBydW50aW1lcyA9IHsKU3RhdGljUmVsZWFzZSA9IDAsClN0YXRpY0RlYnVnID0gMSwKU2hhcmVkUmVsZWFzZSA9IDIsClNoYXJlZERlYnVnID0gMywKfQpwLncoJ1J1bnRpbWVMaWJyYXJ5PSIlcyInLCBydW50aW1lc1tjb25maWcuZ2V0cnVudGltZShjZmcpXSkKZW5kCmVuZApmdW5jdGlvbiBtLnJ1bnRpbWVUeXBlSW5mbyhjZmcpCmlmIGNmZy5ydHRpID09IHAuT0ZGIGFuZCBjZmcuY2xyID09IHAuT0ZGIHRoZW4KcC53KCdSdW50aW1lVHlwZUluZm89ImZhbHNlIicpCmVsc2VpZiBjZmcucnR0aSA9PSBwLk9OIHRoZW4KcC53KCdSdW50aW1lVHlwZUluZm89InRydWUiJykKZW5kCmVuZApmdW5jdGlvbiBtLnN0cmluZ1Bvb2xpbmcoY2ZnKQppZiBjb25maWcuaXNPcHRpbWl6ZWRCdWlsZChjZmcpIHRoZW4KcC53KCdTdHJpbmdQb29saW5nPSJ0cnVlIicpCmVuZAplbmQKZnVuY3Rpb24gbS5zdWJTeXN0ZW0oY2ZnLCB0b29sc2V0KQppZiBub3QgdG9vbHNldCB0aGVuCnAudygnU3ViU3lzdGVtPSIlcyInLCBpaWYoY2ZnLmtpbmQgPT0gIkNvbnNvbGVBcHAiLCAxLCAyKSkKZW5kCmVuZApmdW5jdGlvbiBtLnRhcmdldEVudmlyb25tZW50KGNmZykKaWYgY2ZnLmFyY2hpdGVjdHVyZSA9PSAieDg2XzY0IiB0aGVuCnAudygnVGFyZ2V0RW52aXJvbm1lbnQ9IjMiJykKZW5kCmVuZApmdW5jdGlvbiBtLnRhcmdldEZyYW1ld29ya1ZlcnNpb24ocHJqKQpsb2NhbCB3aW5kb3dzLCBtYWtlZmlsZQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmlmIGNmZy5zeXN0ZW0gPT0gcC5XSU5ET1dTIHRoZW4gd2luZG93cyA9IHRydWUgZW5kCmlmIHZzdHVkaW8uaXNNYWtlZmlsZShjZmcpIHRoZW4gbWFrZWZpbGUgPSB0cnVlIGVuZAplbmQKbG9jYWwgdmVyc2lvbiA9IDAKaWYgbWFrZWZpbGUgb3Igbm90IHdpbmRvd3MgdGhlbgp2ZXJzaW9uID0gMTk2NjEzCmVuZApwLncoJ1RhcmdldEZyYW1ld29ya1ZlcnNpb249IiVkIicsIHZlcnNpb24pCmVuZApmdW5jdGlvbiBtLnRhcmdldE1hY2hpbmUoY2ZnLCB0b29sc2V0KQppZiBub3QgdG9vbHNldCB0aGVuCnAudygnVGFyZ2V0TWFjaGluZT0iJWQiJywgaWlmKGNmZy5hcmNoaXRlY3R1cmUgPT0gIng4Nl82NCIsIDE3LCAxKSkKZW5kCmVuZApmdW5jdGlvbiBtLnRvb2xGaWxlcyhwcmopCmlmIF9BQ1RJT04gPiAidnMyMDAzIiB0aGVuCnAudygnPFRvb2xGaWxlcz4nKQpwLncoJzwvVG9vbEZpbGVzPicpCmVuZAplbmQKZnVuY3Rpb24gbS50cmVhdFdDaGFyX3RBc0J1aWx0SW5UeXBlKGNmZykKbG9jYWwgbWFwID0geyBPbiA9ICJ0cnVlIiwgT2ZmID0gImZhbHNlIiB9CmxvY2FsIHZhbHVlID0gbWFwW2NmZy5uYXRpdmV3Y2hhcl0KaWYgdmFsdWUgdGhlbgpwLncoJ1RyZWF0V0NoYXJfdEFzQnVpbHRJblR5cGU9IiVzIicsIHZhbHVlKQplbmQKZW5kCmZ1bmN0aW9uIG0udXNlT2ZNRkMoY2ZnKQppZiAoY2ZnLmZsYWdzLk1GQykgdGhlbgpwLncoJ1VzZU9mTUZDPSIlZCInLCBpaWYoY2ZnLmZsYWdzLlN0YXRpY1J1bnRpbWUsIDEsIDIpKQplbmQKZW5kCmZ1bmN0aW9uIG0udXNlUHJlY29tcGlsZWRIZWFkZXIoY2ZnKQpsb2NhbCBwcmosIGZpbGUgPSBjb25maWcubm9ybWFsaXplKGNmZykKaWYgZmlsZSB0aGVuCmlmIHByai5wY2hzb3VyY2UgPT0gZmlsZS5hYnNwYXRoIGFuZAogICBub3QgcHJqLmZsYWdzLk5vUENIIGFuZAogICBwcmouc3lzdGVtID09IHAuV0lORE9XUwp0aGVuCnAudygnVXNlUHJlY29tcGlsZWRIZWFkZXI9IjEiJykKZWxzZWlmIGZpbGUuZmxhZ3MuTm9QQ0ggdGhlbgpwLncoJ1VzZVByZWNvbXBpbGVkSGVhZGVyPSIwIicpCmVuZAplbHNlCmlmIG5vdCBwcmouZmxhZ3MuTm9QQ0ggYW5kIHByai5wY2hoZWFkZXIgdGhlbgpwLncoJ1VzZVByZWNvbXBpbGVkSGVhZGVyPSIlcyInLCBpaWYoX0FDVElPTiA8ICJ2czIwMDUiLCAzLCAyKSkKcC54KCdQcmVjb21waWxlZEhlYWRlclRocm91Z2g9IiVzIicsIHByai5wY2hoZWFkZXIpCmVsc2UKcC53KCdVc2VQcmVjb21waWxlZEhlYWRlcj0iJXMiJywgaWlmKF9BQ1RJT04gPiAidnMyMDAzIiBvciBwcmouZmxhZ3MuTm9QQ0gsIDAsIDIpKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLnZlcnNpb24ocHJqKQpsb2NhbCBtYXAgPSB7CnZzMjAwMiA9ICc3LjAnLAp2czIwMDMgPSAnNy4xJywKdnMyMDA1ID0gJzguMCcsCnZzMjAwOCA9ICc5LjAnCn0KcC53KCdWZXJzaW9uPSIlczAiJywgbWFwW19BQ1RJT05dKQplbmQKZnVuY3Rpb24gbS53YXJuQXNFcnJvcihjZmcpCmlmIGNmZy5mbGFncy5GYXRhbENvbXBpbGVXYXJuaW5ncyBhbmQgY2ZnLndhcm5pbmdzIH49IHAuT0ZGIHRoZW4KcC53KCdXYXJuQXNFcnJvcj0idHJ1ZSInKQplbmQKZW5kCmZ1bmN0aW9uIG0ud2FybmluZ0xldmVsKGNmZykKbG9jYWwgcHJqY2ZnLCBmaWxlY2ZnID0gY29uZmlnLm5vcm1hbGl6ZShjZmcpCmxvY2FsIGxldmVsCmlmIGNmZy53YXJuaW5ncyA9PSBwLk9GRiB0aGVuCmxldmVsID0gIjAiCmVsc2VpZiBjZmcud2FybmluZ3MgPT0gIkV4dHJhIiB0aGVuCmxldmVsID0gIjQiCmVsc2VpZiBub3QgZmlsZWNmZyB0aGVuCmxldmVsID0gIjMiCmVuZAppZiBsZXZlbCB0aGVuCnAudygnV2FybmluZ0xldmVsPSIlcyInLCBsZXZlbCkKZW5kCmVuZApmdW5jdGlvbiBtLndob2xlUHJvZ3JhbU9wdGltaXphdGlvbihjZmcpCmlmIGNmZy5mbGFncy5MaW5rVGltZU9wdGltaXphdGlvbiB0aGVuCnAueCgnV2hvbGVQcm9ncmFtT3B0aW1pemF0aW9uPSJ0cnVlIicpCmVuZAplbmQKZnVuY3Rpb24gbS54bWxFbGVtZW50KCkKcC53KCc8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJXaW5kb3dzLTEyNTIiPz4nKQplbmQKAAAAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgbSA9IHAudnN0dWRpby52YzIwMHgKbS5lbGVtZW50cy51c2VyID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4gewptLmRlYnVnU2V0dGluZ3MsCn0KZW5kCmZ1bmN0aW9uIG0uZ2VuZXJhdGVVc2VyKHByaikKcC5pbmRlbnQoIlx0IikKbG9jYWwgY29udGVudHMgPSB7fQpsb2NhbCBzaXplID0gMApmb3IgY2ZnIGluIHAucHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KY29udGVudHNbY2ZnXSA9IHAuY2FwdHVyZShmdW5jdGlvbigpCnAucHVzaCg0KQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLnVzZXIsIGNmZykKcC5wb3AoNCkKZW5kKQpzaXplID0gc2l6ZSArICNjb250ZW50c1tjZmddCmVuZAppZiBzaXplID4gMCB0aGVuCm0ueG1sRWxlbWVudCgpCm0udmlzdWFsU3R1ZGlvVXNlckZpbGUoKQpwLnB1c2goJzxDb25maWd1cmF0aW9ucz4nKQpmb3IgY2ZnIGluIHAucHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbS51c2VyQ29uZmlndXJhdGlvbihjZmcpCnAucHVzaCgnPERlYnVnU2V0dGluZ3MnKQppZiAjY29udGVudHNbY2ZnXSA+IDAgdGhlbgpwLm91dGxuKGNvbnRlbnRzW2NmZ10pCmVuZApwLnBvcCgnLz4nKQpwLnBvcCgnPC9Db25maWd1cmF0aW9uPicpCmVuZApwLnBvcCgnPC9Db25maWd1cmF0aW9ucz4nKQpwLnBvcCgnPC9WaXN1YWxTdHVkaW9Vc2VyRmlsZT4nKQplbmQKZW5kCmZ1bmN0aW9uIG0udmlzdWFsU3R1ZGlvVXNlckZpbGUoKQpwLnB1c2goJzxWaXN1YWxTdHVkaW9Vc2VyRmlsZScpCnAudygnUHJvamVjdFR5cGU9IlZpc3VhbCBDKysiJykKbS52ZXJzaW9uKCkKcC53KCdTaG93QWxsRmlsZXM9ImZhbHNlIicpCnAudygnPicpCmVuZApmdW5jdGlvbiBtLnVzZXJDb25maWd1cmF0aW9uKGNmZykKcC5wdXNoKCc8Q29uZmlndXJhdGlvbicpCnAueCgnTmFtZT0iJXMiJywgcC52c3R1ZGlvLnByb2plY3RDb25maWcoY2ZnKSkKcC53KCc+JykKZW5kCm0uZWxlbWVudHMuZGVidWdTZXR0aW5ncyA9IGZ1bmN0aW9uKGNmZykKcmV0dXJuIHsKbS5kZWJ1Z0NvbW1hbmQsCm0uZGVidWdEaXIsCm0uZGVidWdBcmdzLAptLmRlYnVnRW52aXJvbm1lbnQsCn0KZW5kCmZ1bmN0aW9uIG0uZGVidWdTZXR0aW5ncyhjZmcpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMuZGVidWdTZXR0aW5ncywgY2ZnKQplbmQKZnVuY3Rpb24gbS5kZWJ1Z0FyZ3MoY2ZnKQppZiAjY2ZnLmRlYnVnYXJncyA+IDAgdGhlbgpwLngoJ0NvbW1hbmRBcmd1bWVudHM9IiVzIicsIHRhYmxlLmNvbmNhdChjZmcuZGVidWdhcmdzLCAiICIpKQplbmQKZW5kCmZ1bmN0aW9uIG0uZGVidWdDb21tYW5kKGNmZykKaWYgY2ZnLmRlYnVnY29tbWFuZCB0aGVuCnAueCgnQ29tbWFuZD0iJXMiJywgcC52c3R1ZGlvLnBhdGgoY2ZnLCBjZmcuZGVidWdjb21tYW5kKSkKZW5kCmVuZApmdW5jdGlvbiBtLmRlYnVnRGlyKGNmZykKaWYgY2ZnLmRlYnVnZGlyIHRoZW4KcC54KCdXb3JraW5nRGlyZWN0b3J5PSIlcyInLCBwLnZzdHVkaW8ucGF0aChjZmcsIGNmZy5kZWJ1Z2RpcikpCmVuZAplbmQKZnVuY3Rpb24gbS5kZWJ1Z0Vudmlyb25tZW50KGNmZykKaWYgI2NmZy5kZWJ1Z2VudnMgPiAwIHRoZW4KcC54KCdFbnZpcm9ubWVudD0iJXMiJywgdGFibGUuY29uY2F0KGNmZy5kZWJ1Z2VudnMsICJcbiIpKQppZiBjZmcuZmxhZ3MuRGVidWdFbnZzRG9udE1lcmdlIHRoZW4KcC54KCdFbnZpcm9ubWVudE1lcmdlPSJmYWxzZSInKQplbmQKZW5kCmVuZAoAAAAAAAAAbG9jYWwgcCA9IHByZW1ha2UKcC52c3R1ZGlvLnNsbjIwMDUgPSB7fQpsb2NhbCB2c3R1ZGlvID0gcC52c3R1ZGlvCmxvY2FsIHNsbjIwMDUgPSBwLnZzdHVkaW8uc2xuMjAwNQpsb2NhbCBwcm9qZWN0ID0gcC5wcm9qZWN0CmxvY2FsIHRyZWUgPSBwLnRyZWUKc2xuMjAwNS5lbGVtZW50cyA9IHt9CmZ1bmN0aW9uIHNsbjIwMDUuc29sdXRpb25TZWN0aW9ucyh3a3MpCnJldHVybiB7CiJDb25maWd1cmF0aW9uUGxhdGZvcm1zIiwKIlNvbHV0aW9uUHJvcGVydGllcyIsCiJOZXN0ZWRQcm9qZWN0cyIsCiJFeHRlbnNpYmlsaXR5R2xvYmFscyIKfQplbmQKZnVuY3Rpb24gc2xuMjAwNS5nZW5lcmF0ZSh3a3MpCnAudXRmOCgpCnAub3V0bG4oJycpCnNsbjIwMDUucmVvcmRlclByb2plY3RzKHdrcykKc2xuMjAwNS5oZWFkZXIoKQpzbG4yMDA1LnByb2plY3RzKHdrcykKcC5wdXNoKCdHbG9iYWwnKQpzbG4yMDA1LnNlY3Rpb25zKHdrcykKcC5wb3AoJ0VuZEdsb2JhbCcpCnAudygpCmVuZApmdW5jdGlvbiBzbG4yMDA1LmhlYWRlcigpCmxvY2FsIGFjdGlvbiA9IHAuYWN0aW9uLmN1cnJlbnQoKQpwLncoJ01pY3Jvc29mdCBWaXN1YWwgU3R1ZGlvIFNvbHV0aW9uIEZpbGUsIEZvcm1hdCBWZXJzaW9uICVkLjAwJywgYWN0aW9uLnZzdHVkaW8uc29sdXRpb25WZXJzaW9uKQpwLncoJyMgVmlzdWFsIFN0dWRpbyAlcycsIGFjdGlvbi52c3R1ZGlvLnZlcnNpb25OYW1lKQplbmQKZnVuY3Rpb24gc2xuMjAwNS5yZW9yZGVyUHJvamVjdHMod2tzKQppZiB3a3Muc3RhcnRwcm9qZWN0IHRoZW4KbG9jYWwgbnAKbG9jYWwgdHIgPSBwLndvcmtzcGFjZS5ncm91cHRyZWUod2tzKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubGVhZiA9IGZ1bmN0aW9uKG4pCmlmIG4ucHJvamVjdC5uYW1lID09IHdrcy5zdGFydHByb2plY3QgdGhlbgpucCA9IG4KZW5kCmVuZAp9KQp3aGlsZSBucCBhbmQgbnAucGFyZW50IGRvCmxvY2FsIHAgPSBucC5wYXJlbnQKbG9jYWwgaSA9IHRhYmxlLmluZGV4b2YocC5jaGlsZHJlbiwgbnApCnRhYmxlLnJlbW92ZShwLmNoaWxkcmVuLCBpKQp0YWJsZS5pbnNlcnQocC5jaGlsZHJlbiwgMSwgbnApCm5wID0gcAplbmQKZW5kCmVuZApmdW5jdGlvbiBzbG4yMDA1LnByb2plY3RzKHdrcykKbG9jYWwgdHIgPSBwLndvcmtzcGFjZS5ncm91cHRyZWUod2tzKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubGVhZiA9IGZ1bmN0aW9uKG4pCmxvY2FsIHByaiA9IG4ucHJvamVjdApsb2NhbCBwcmpwYXRoID0gdnN0dWRpby5wcm9qZWN0ZmlsZShwcmopCnByanBhdGggPSB2c3R1ZGlvLnBhdGgocHJqLndvcmtzcGFjZSwgcHJqcGF0aCkKcHJqcGF0aCA9IHByanBhdGg6Z3N1YigiJCUoKC4tKSUpIiwgIiUlJTElJSIpCnAueCgnUHJvamVjdCgieyVzfSIpID0gIiVzIiwgIiVzIiwgInslc30iJywgdnN0dWRpby50b29sKHByaiksIHByai5uYW1lLCBwcmpwYXRoLCBwcmoudXVpZCkKcC5wdXNoKCkKc2xuMjAwNS5wcm9qZWN0ZGVwZW5kZW5jaWVzKHByaikKcC5wb3AoJ0VuZFByb2plY3QnKQplbmQsCm9uYnJhbmNoID0gZnVuY3Rpb24obikKcC5wdXNoKCdQcm9qZWN0KCJ7MjE1MEUzMzMtOEZEQy00MkEzLTk0NzQtMUEzOTU2RDQ2REU4fSIpID0gIiVzIiwgIiVzIiwgInslc30iJywgbi5uYW1lLCBuLm5hbWUsIG4udXVpZCkKcC5wb3AoJ0VuZFByb2plY3QnKQplbmQsCn0pCmVuZApmdW5jdGlvbiBzbG4yMDA1LnByb2plY3RkZXBlbmRlbmNpZXMocHJqKQpsb2NhbCBkZXBzID0gcHJvamVjdC5nZXRkZXBlbmRlbmNpZXMocHJqLCAnZGVwZW5kT25seScpCmlmICNkZXBzID4gMCB0aGVuCnAucHVzaCgnUHJvamVjdFNlY3Rpb24oUHJvamVjdERlcGVuZGVuY2llcykgPSBwb3N0UHJvamVjdCcpCmZvciBfLCBkZXAgaW4gaXBhaXJzKGRlcHMpIGRvCnAudygneyVzfSA9IHslc30nLCBkZXAudXVpZCwgZGVwLnV1aWQpCmVuZApwLnBvcCgnRW5kUHJvamVjdFNlY3Rpb24nKQplbmQKZW5kCnNsbjIwMDUuZWxlbWVudHMucHJvamVjdENvbmZpZ3VyYXRpb25QbGF0Zm9ybXMgPSBmdW5jdGlvbihjZmcsIGNvbnRleHQpCnJldHVybiB7CnNsbjIwMDUuYWN0aXZlQ2ZnLApzbG4yMDA1LmJ1aWxkMCwKfQplbmQKZnVuY3Rpb24gc2xuMjAwNS5wcm9qZWN0Q29uZmlndXJhdGlvblBsYXRmb3Jtcyh3a3MsIHNvcnRlZCwgZGVzY3JpcHRvcnMpCnAudygiR2xvYmFsU2VjdGlvbihQcm9qZWN0Q29uZmlndXJhdGlvblBsYXRmb3JtcykgPSBwb3N0U29sdXRpb24iKQpsb2NhbCB0ciA9IHAud29ya3NwYWNlLmdyb3VwdHJlZSh3a3MpCnRyZWUudHJhdmVyc2UodHIsIHsKb25sZWFmID0gZnVuY3Rpb24obikKbG9jYWwgcHJqID0gbi5wcm9qZWN0CnRhYmxlLmZvcmVhY2hpKHNvcnRlZCwgZnVuY3Rpb24oY2ZnKQpsb2NhbCBjb250ZXh0ID0ge30KY29udGV4dC5wcmogPSBwcmoKY29udGV4dC5wcmpDZmcgPSBwcm9qZWN0LmdldGNvbmZpZyhwcmosIGNmZy5idWlsZGNmZywgY2ZnLnBsYXRmb3JtKQpjb250ZXh0LmV4Y2x1ZGVkID0gKGNvbnRleHQucHJqQ2ZnID09IG5pbCBvciBjb250ZXh0LnByakNmZy5mbGFncy5FeGNsdWRlRnJvbUJ1aWxkKQppZiBjb250ZXh0LnByakNmZyA9PSBuaWwgdGhlbgpjb250ZXh0LnByakNmZyA9IHByb2plY3QuZmluZENsb3Nlc3RNYXRjaChwcmosIGNmZy5idWlsZGNmZywgY2ZnLnBsYXRmb3JtKQplbmQKY29udGV4dC5kZXNjcmlwdG9yID0gZGVzY3JpcHRvcnNbY2ZnXQpjb250ZXh0LnBsYXRmb3JtID0gdnN0dWRpby5wcm9qZWN0UGxhdGZvcm0oY29udGV4dC5wcmpDZmcpCmNvbnRleHQuYXJjaGl0ZWN0dXJlID0gdnN0dWRpby5hcmNoRnJvbUNvbmZpZyhjb250ZXh0LnByakNmZywgdHJ1ZSkKcC5wdXNoKCkKcC5jYWxsQXJyYXkoc2xuMjAwNS5lbGVtZW50cy5wcm9qZWN0Q29uZmlndXJhdGlvblBsYXRmb3JtcywgY2ZnLCBjb250ZXh0KQpwLnBvcCgpCmVuZCkKZW5kCn0pCnAudygiRW5kR2xvYmFsU2VjdGlvbiIpCmVuZApmdW5jdGlvbiBzbG4yMDA1LmFjdGl2ZUNmZyhjZmcsIGNvbnRleHQpCnAudygneyVzfS4lcy5BY3RpdmVDZmcgPSAlc3wlcycsIGNvbnRleHQucHJqLnV1aWQsIGNvbnRleHQuZGVzY3JpcHRvciwgY29udGV4dC5wbGF0Zm9ybSwgY29udGV4dC5hcmNoaXRlY3R1cmUpCmVuZApmdW5jdGlvbiBzbG4yMDA1LmJ1aWxkMChjZmcsIGNvbnRleHQpCmlmIG5vdCBjb250ZXh0LmV4Y2x1ZGVkIGFuZCBjb250ZXh0LnByakNmZy5raW5kIH49IHAuTk9ORSB0aGVuCnAudygneyVzfS4lcy5CdWlsZC4wID0gJXN8JXMnLCBjb250ZXh0LnByai51dWlkLCBjb250ZXh0LmRlc2NyaXB0b3IsIGNvbnRleHQucGxhdGZvcm0sIGNvbnRleHQuYXJjaGl0ZWN0dXJlKQplbmQKZW5kCmZ1bmN0aW9uIHNsbjIwMDUuY29uZmlndXJhdGlvblBsYXRmb3Jtcyh3a3MpCmxvY2FsIGRlc2NyaXB0b3JzID0ge30KbG9jYWwgc29ydGVkID0ge30KZm9yIGNmZyBpbiBwLndvcmtzcGFjZS5lYWNoY29uZmlnKHdrcykgZG8KbG9jYWwgcGxhdGZvcm0gPSB2c3R1ZGlvLnNvbHV0aW9uUGxhdGZvcm0oY2ZnKQpkZXNjcmlwdG9yc1tjZmddID0gc3RyaW5nLmZvcm1hdCgiJXN8JXMiLCBjZmcuYnVpbGRjZmcsIHBsYXRmb3JtKQp0YWJsZS5pbnNlcnQoc29ydGVkLCBjZmcpCmVuZAp0YWJsZS5zb3J0KHNvcnRlZCwgZnVuY3Rpb24oY2ZnMCwgY2ZnMSkKcmV0dXJuIGRlc2NyaXB0b3JzW2NmZzBdOmxvd2VyKCkgPCBkZXNjcmlwdG9yc1tjZmcxXTpsb3dlcigpCmVuZCkKaWYgd2tzLmRlZmF1bHRwbGF0Zm9ybSB0aGVuCnAucHVzaCgnR2xvYmFsU2VjdGlvbihTb2x1dGlvbkNvbmZpZ3VyYXRpb25QbGF0Zm9ybXMpID0gcHJlU29sdXRpb24nKQp0YWJsZS5mb3JlYWNoaShzb3J0ZWQsIGZ1bmN0aW9uIChjZmcpCmlmIGNmZy5wbGF0Zm9ybSA9PSB3a3MuZGVmYXVsdHBsYXRmb3JtIHRoZW4KcC53KCclcyA9ICVzJywgZGVzY3JpcHRvcnNbY2ZnXSwgZGVzY3JpcHRvcnNbY2ZnXSkKZW5kCmVuZCkKcC5wb3AoIkVuZEdsb2JhbFNlY3Rpb24iKQplbmQKcC5wdXNoKCdHbG9iYWxTZWN0aW9uKFNvbHV0aW9uQ29uZmlndXJhdGlvblBsYXRmb3JtcykgPSBwcmVTb2x1dGlvbicpCnRhYmxlLmZvcmVhY2hpKHNvcnRlZCwgZnVuY3Rpb24gKGNmZykKaWYgbm90IHdrcy5kZWZhdWx0cGxhdGZvcm0gb3IgY2ZnLnBsYXRmb3JtIH49IHdrcy5kZWZhdWx0cGxhdGZvcm0gdGhlbgpwLncoJyVzID0gJXMnLCBkZXNjcmlwdG9yc1tjZmddLCBkZXNjcmlwdG9yc1tjZmddKQplbmQKZW5kKQpwLnBvcCgiRW5kR2xvYmFsU2VjdGlvbiIpCnNsbjIwMDUucHJvamVjdENvbmZpZ3VyYXRpb25QbGF0Zm9ybXMod2tzLCBzb3J0ZWQsIGRlc2NyaXB0b3JzKQplbmQKZnVuY3Rpb24gc2xuMjAwNS5wcm9wZXJ0aWVzKHdrcykKcC5wdXNoKCdHbG9iYWxTZWN0aW9uKFNvbHV0aW9uUHJvcGVydGllcykgPSBwcmVTb2x1dGlvbicpCnAudygnSGlkZVNvbHV0aW9uTm9kZSA9IEZBTFNFJykKcC5wb3AoJ0VuZEdsb2JhbFNlY3Rpb24nKQplbmQKZnVuY3Rpb24gc2xuMjAwNS5uZXN0ZWRQcm9qZWN0cyh3a3MpCmxvY2FsIHRyID0gcC53b3Jrc3BhY2UuZ3JvdXB0cmVlKHdrcykKaWYgdHJlZS5oYXNicmFuY2hlcyh0cikgdGhlbgpwLnB1c2goJ0dsb2JhbFNlY3Rpb24oTmVzdGVkUHJvamVjdHMpID0gcHJlU29sdXRpb24nKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubm9kZSA9IGZ1bmN0aW9uKG4pCmlmIG4ucGFyZW50LnV1aWQgdGhlbgpwLncoJ3slc30gPSB7JXN9JywgKG4ucHJvamVjdCBvciBuKS51dWlkLCBuLnBhcmVudC51dWlkKQplbmQKZW5kCn0pCnAucG9wKCdFbmRHbG9iYWxTZWN0aW9uJykKZW5kCmVuZApmdW5jdGlvbiBzbG4yMDA1LnByZW1ha2VFeHRlbnNpYmlsaXR5R2xvYmFscyh3a3MpCmlmIHdrcy5lZGl0b3JpbnRlZ3JhdGlvbiB0aGVuCmxvY2FsIGFyZ3MgPSB7fQpmb3IgXywgYXJnIGluIGlwYWlycyhfQVJHVikgZG8KaWYgbm90IChhcmc6c3RhcnRzd2l0aCgiLS1maWxlIikgb3IgYXJnOnN0YXJ0c3dpdGgoIi9maWxlIikpIHRoZW4KdGFibGUuaW5zZXJ0KGFyZ3MsIGFyZyk7CmVuZAplbmQKcC53KCdQcmVtYWtlQmluYXJ5ID0gJXMnLCBfUFJFTUFLRV9DT01NQU5EKQpwLncoJ1ByZW1ha2VTY3JpcHQgPSAlcycsIHAud29ya3NwYWNlLmdldHJlbGF0aXZlKHdrcywgX01BSU5fU0NSSVBUKSkKcC53KCdQcmVtYWtlQXJndW1lbnRzID0gJXMnLCB0YWJsZS5jb25jYXQoYXJncywgJyAnKSkKZW5kCmVuZApzbG4yMDA1LmVsZW1lbnRzLmV4dGVuc2liaWxpdHlHbG9iYWxzID0gZnVuY3Rpb24od2tzKQpyZXR1cm4gewpzbG4yMDA1LnByZW1ha2VFeHRlbnNpYmlsaXR5R2xvYmFscywKfQplbmQKZnVuY3Rpb24gc2xuMjAwNS5leHRlbnNpYmlsaXR5R2xvYmFscyh3a3MpCmxvY2FsIGNvbnRlbnRzID0gcC5jYXB0dXJlKGZ1bmN0aW9uICgpCnAucHVzaCgpCnAuY2FsbEFycmF5KHNsbjIwMDUuZWxlbWVudHMuZXh0ZW5zaWJpbGl0eUdsb2JhbHMsIHdrcykKcC5wb3AoKQplbmQpCmlmICNjb250ZW50cyA+IDAgdGhlbgpwLnB1c2goJ0dsb2JhbFNlY3Rpb24oRXh0ZW5zaWJpbGl0eUdsb2JhbHMpID0gcG9zdFNvbHV0aW9uJykKcC5vdXRsbihjb250ZW50cykKcC5wb3AoJ0VuZEdsb2JhbFNlY3Rpb24nKQplbmQKZW5kCnNsbjIwMDUuZWxlbWVudHMuc2VjdGlvbnMgPSBmdW5jdGlvbih3a3MpCnJldHVybiB7CnNsbjIwMDUuY29uZmlndXJhdGlvblBsYXRmb3JtcywKc2xuMjAwNS5wcm9wZXJ0aWVzLApzbG4yMDA1Lm5lc3RlZFByb2plY3RzLApzbG4yMDA1LmV4dGVuc2liaWxpdHlHbG9iYWxzLAp9CmVuZApmdW5jdGlvbiBzbG4yMDA1LnNlY3Rpb25zKHdrcykKcC5jYWxsQXJyYXkoc2xuMjAwNS5lbGVtZW50cy5zZWN0aW9ucywgd2tzKQplbmQKbG9jYWwgcCA9IHByZW1ha2UKcC52c3R1ZGlvLmNzMjAwNSA9IHt9CmxvY2FsIHZzdHVkaW8gPSBwLnZzdHVkaW8KbG9jYWwgY3MyMDA1ICA9IHAudnN0dWRpby5jczIwMDUKbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApsb2NhbCBjb25maWcgPSBwLmNvbmZpZwpsb2NhbCBmaWxlY29uZmlnID0gcC5maWxlY29uZmlnCmxvY2FsIGRvdG5ldCA9IHAudG9vbHMuZG90bmV0CmNzMjAwNS5lbGVtZW50cyA9IHt9CmNzMjAwNS5lbGVtZW50cy5wcm9qZWN0ID0gewoieG1sRGVjbGFyYXRpb24iLAoicHJvamVjdEVsZW1lbnQiLAoiY29tbW9uUHJvcGVydGllcyIsCiJwcm9qZWN0UHJvcGVydGllcyIsCiJjb25maWd1cmF0aW9ucyIsCiJhcHBsaWNhdGlvbkljb24iLAoicmVmZXJlbmNlcyIsCn0KZnVuY3Rpb24gY3MyMDA1LmdlbmVyYXRlKHByaikKcC51dGY4KCkKcC5jYWxsYXJyYXkoY3MyMDA1LCBjczIwMDUuZWxlbWVudHMucHJvamVjdCwgcHJqKQpfcCgxLCc8SXRlbUdyb3VwPicpCmNzMjAwNS5maWxlcyhwcmopCl9wKDEsJzwvSXRlbUdyb3VwPicpCmNzMjAwNS5wcm9qZWN0UmVmZXJlbmNlcyhwcmopCmNzMjAwNS50YXJnZXRzKHByaikKY3MyMDA1LmJ1aWxkRXZlbnRzKHByaikKcC5vdXQoJzwvUHJvamVjdD4nKQplbmQKZnVuY3Rpb24gY3MyMDA1LnByb2plY3RFbGVtZW50KHByaikKbG9jYWwgdmVyID0gJycKbG9jYWwgYWN0aW9uID0gcC5hY3Rpb24uY3VycmVudCgpCmlmIGFjdGlvbi52c3R1ZGlvLnRvb2xzVmVyc2lvbiB0aGVuCnZlciA9IHN0cmluZy5mb3JtYXQoJyBUb29sc1ZlcnNpb249IiVzIicsIGFjdGlvbi52c3R1ZGlvLnRvb2xzVmVyc2lvbikKZW5kCl9wKCc8UHJvamVjdCVzIERlZmF1bHRUYXJnZXRzPSJCdWlsZCIgeG1sbnM9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vZGV2ZWxvcGVyL21zYnVpbGQvMjAwMyI+JywgdmVyKQplbmQKY3MyMDA1LmVsZW1lbnRzLnByb2plY3RQcm9wZXJ0aWVzID0gewoiY29uZmlndXJhdGlvbkNvbmRpdGlvbiIsCiJwbGF0Zm9ybUNvbmRpdGlvbiIsCiJwcm9kdWN0VmVyc2lvbiIsCiJzY2hlbWFWZXJzaW9uIiwKInByb2plY3RHdWlkIiwKIm91dHB1dFR5cGUiLAoiYXBwRGVzaWduZXJGb2xkZXIiLAoicm9vdE5hbWVzcGFjZSIsCiJhc3NlbWJseU5hbWUiLAoidGFyZ2V0RnJhbWV3b3JrVmVyc2lvbiIsCiJ0YXJnZXRGcmFtZXdvcmtQcm9maWxlIiwKImZpbGVBbGlnbm1lbnQiLAoicHJvamVjdFR5cGVHdWlkcyIsCn0KZnVuY3Rpb24gY3MyMDA1LnByb2plY3RQcm9wZXJ0aWVzKHByaikKX3AoMSwnPFByb3BlcnR5R3JvdXA+JykKbG9jYWwgY2ZnID0gcHJvamVjdC5nZXRmaXJzdGNvbmZpZyhwcmopCnAuY2FsbGFycmF5KGNzMjAwNSwgY3MyMDA1LmVsZW1lbnRzLnByb2plY3RQcm9wZXJ0aWVzLCBjZmcpCl9wKDEsJzwvUHJvcGVydHlHcm91cD4nKQplbmQKY3MyMDA1LmVsZW1lbnRzLmNvbmZpZ3VyYXRpb24gPSB7CiJwcm9wZXJ0eUdyb3VwIiwKImRlYnVnUHJvcHMiLAoib3V0cHV0UHJvcHMiLAoiY29tcGlsZXJQcm9wcyIsCn0KZnVuY3Rpb24gY3MyMDA1LmNvbmZpZ3VyYXRpb25zKHByaikKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpjczIwMDUuY29uZmlndXJhdGlvbihjZmcpCmVuZAplbmQKZnVuY3Rpb24gY3MyMDA1LmNvbmZpZ3VyYXRpb24oY2ZnKQpwLmNhbGxhcnJheShjczIwMDUsIGNzMjAwNS5lbGVtZW50cy5jb25maWd1cmF0aW9uLCBjZmcpCl9wKDEsJzwvUHJvcGVydHlHcm91cD4nKQplbmQKZnVuY3Rpb24gY3MyMDA1LmRvZmlsZShub2RlLCBjZmcsIGNvbmRpdGlvbikKbG9jYWwgZmlsZWNmZyA9IGZpbGVjb25maWcuZ2V0Y29uZmlnKG5vZGUsIGNmZykKaWYgZmlsZWNmZyB0aGVuCmxvY2FsIGZuYW1lID0gcGF0aC50cmFuc2xhdGUobm9kZS5yZWxwYXRoKQpsb2NhbCBsaW5rLCBjb3VudCA9IG5vZGUucmVscGF0aDpnc3ViKCIlLiUuJS8iLCAiIikKbG9jYWwgZXh0ZXJuYWwgPSAoY291bnQgPiAwKQppZiBleHRlcm5hbCBhbmQgbm9kZS52cGF0aCB+PSBub2RlLnJlbHBhdGggdGhlbgpsaW5rID0gbm9kZS52cGF0aAplbmQKbG9jYWwgaW5mbyA9IGRvdG5ldC5maWxlaW5mbyhmaWxlY2ZnKQpsb2NhbCBjb250ZW50cyA9IHAuY2FwdHVyZShmdW5jdGlvbiAoKQpsb2NhbCBlbGVtZW50cyA9IHsKIkF1dG9HZW4iLAoiQ29weVRvT3V0cHV0RGlyZWN0b3J5IiwKIkRlc2lnblRpbWUiLAoiRGVwZW5kZW50VXBvbiIsCiJEZXNpZ25UaW1lU2hhcmVkSW5wdXQiLAoiR2VuZXJhdG9yIiwKIkxhc3RHZW5PdXRwdXQiLAoiU3ViVHlwZSIsCn0KZm9yIF8sIGVsIGluIGlwYWlycyhlbGVtZW50cykgZG8KbG9jYWwgdmFsdWUgPSBpbmZvW2VsXQppZiB2YWx1ZSB0aGVuCl9wKDMsIjwlcz4lczwvJXM+IiwgZWwsIHZhbHVlLCBlbCkKZW5kCmVuZAppZiBpbmZvLmFjdGlvbiA9PSAiRW1iZWRkZWRSZXNvdXJjZSIgYW5kIGNmZy5jdXN0b210b29sbmFtZXNwYWNlIHRoZW4KX3AoMywiPEN1c3RvbVRvb2xOYW1lc3BhY2U+JXM8L0N1c3RvbVRvb2xOYW1lc3BhY2U+IiwgY2ZnLmN1c3RvbXRvb2xuYW1lc3BhY2UpCmVuZAplbmQpCmlmICNjb250ZW50cyA+IDAgb3IgZXh0ZXJuYWwgdGhlbgpfcCgyLCc8JXMlcyBJbmNsdWRlPSIlcyI+JywgaW5mby5hY3Rpb24sIGNvbmRpdGlvbiwgZm5hbWUpCmlmIGV4dGVybmFsIHRoZW4KX3AoMywnPExpbms+JXM8L0xpbms+JywgcGF0aC50cmFuc2xhdGUobGluaykpCmVuZAppZiAjY29udGVudHMgPiAwIHRoZW4KX3AoIiVzIiwgY29udGVudHMpCmVuZApfcCgyLCc8LyVzPicsIGluZm8uYWN0aW9uKQplbHNlCl9wKDIsJzwlcyVzIEluY2x1ZGU9IiVzIiAvPicsIGluZm8uYWN0aW9uLCBjb25kaXRpb24sIGZuYW1lKQplbmQKZW5kCmVuZApmdW5jdGlvbiBjczIwMDUuZmlsZXMocHJqKQpsb2NhbCBmaXJzdGNmZyA9IHByb2plY3QuZ2V0Zmlyc3Rjb25maWcocHJqKQpsb2NhbCB0ciA9IHByb2plY3QuZ2V0c291cmNldHJlZShwcmopCnAudHJlZS50cmF2ZXJzZSh0ciwgewpvbmxlYWYgPSBmdW5jdGlvbihub2RlLCBkZXB0aCkKbG9jYWwgYWxsc2FtZSA9IHRydWUKbG9jYWwgZmlyc3QgPSBuaWwKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpsb2NhbCBmaWxlY2ZnID0gZmlsZWNvbmZpZy5nZXRjb25maWcobm9kZSwgY2ZnKQpsb2NhbCBpbmZvID0gZG90bmV0LmZpbGVpbmZvKGZpbGVjZmcpCmlmIGZpcnN0ID09IG5pbCB0aGVuCmZpcnN0ID0gaW5mbwplbHNlaWYgbm90IHRhYmxlLmVxdWFscyhmaXJzdCwgaW5mbykgdGhlbgphbGxzYW1lID0gZmFsc2UKZW5kCmVuZAppZiBhbGxzYW1lIHRoZW4KY3MyMDA1LmRvZmlsZShub2RlLCBmaXJzdGNmZywgJycpCmVsc2UKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpjczIwMDUuZG9maWxlKG5vZGUsIGNmZywgJyAnIC4uIGNzMjAwNS5jb25kaXRpb24oY2ZnKSkKZW5kCmVuZAplbmQKfSwgZmFsc2UpCmVuZApmdW5jdGlvbiBjczIwMDUuYnVpbGRFdmVudHMocHJqKQpsb2NhbCBmdW5jdGlvbiBvdXRwdXQobmFtZSwgc3RlcHMpCmlmICNzdGVwcyA+IDAgdGhlbgpzdGVwcyA9IG9zLnRyYW5zbGF0ZUNvbW1hbmRzQW5kUGF0aHMoc3RlcHMsIHByai5iYXNlZGlyLCBwcmoubG9jYXRpb24pCnN0ZXBzID0gdGFibGUuaW1wbG9kZShzdGVwcywgIiIsICIiLCAiXHJcbiIpCl94KDIsJzwlc0J1aWxkRXZlbnQ+JXM8LyVzQnVpbGRFdmVudD4nLCBuYW1lLCBzdGVwcywgbmFtZSkKZW5kCmVuZApsb2NhbCBjZmcgPSBwcm9qZWN0LmdldGZpcnN0Y29uZmlnKHByaikKaWYgI2NmZy5wcmVidWlsZGNvbW1hbmRzID4gMCBvciAjY2ZnLnBvc3RidWlsZGNvbW1hbmRzID4gMCB0aGVuCl9wKDEsJzxQcm9wZXJ0eUdyb3VwPicpCm91dHB1dCgiUHJlIiwgY2ZnLnByZWJ1aWxkY29tbWFuZHMpCm91dHB1dCgiUG9zdCIsIGNmZy5wb3N0YnVpbGRjb21tYW5kcykKX3AoMSwnPC9Qcm9wZXJ0eUdyb3VwPicpCmVuZAplbmQKZnVuY3Rpb24gY3MyMDA1LmNvbXBpbGVyUHJvcHMoY2ZnKQpfeCgyLCc8RGVmaW5lQ29uc3RhbnRzPiVzPC9EZWZpbmVDb25zdGFudHM+JywgdGFibGUuY29uY2F0KGNmZy5kZWZpbmVzLCAiOyIpKQpfcCgyLCc8RXJyb3JSZXBvcnQ+cHJvbXB0PC9FcnJvclJlcG9ydD4nKQpfcCgyLCc8V2FybmluZ0xldmVsPjQ8L1dhcm5pbmdMZXZlbD4nKQppZiBjZmcuY2xyID09ICJVbnNhZmUiIHRoZW4KX3AoMiwnPEFsbG93VW5zYWZlQmxvY2tzPnRydWU8L0FsbG93VW5zYWZlQmxvY2tzPicpCmVuZAppZiBjZmcuZmxhZ3MuRmF0YWxDb21waWxlV2FybmluZ3MgdGhlbgpfcCgyLCc8VHJlYXRXYXJuaW5nc0FzRXJyb3JzPnRydWU8L1RyZWF0V2FybmluZ3NBc0Vycm9ycz4nKQplbmQKY3MyMDA1LmRlYnVnQ29tbWFuZFBhcmFtZXRlcnMoY2ZnKQplbmQKZnVuY3Rpb24gY3MyMDA1LmRlYnVnQ29tbWFuZFBhcmFtZXRlcnMoY2ZnKQppZiAjY2ZnLmRlYnVnYXJncyA+IDAgdGhlbgpfeCgyLCc8Q29tbWFuZGxpbmVwYXJhbWV0ZXJzPiVzPC9Db21tYW5kbGluZXBhcmFtZXRlcnM+JywgdGFibGUuY29uY2F0KGNmZy5kZWJ1Z2FyZ3MsICIgIikpCmVuZAplbmQKZnVuY3Rpb24gY3MyMDA1LmRlYnVnUHJvcHMoY2ZnKQppZiBjZmcuc3ltYm9scyA9PSBwLk9OIHRoZW4KX3AoMiwnPERlYnVnU3ltYm9scz50cnVlPC9EZWJ1Z1N5bWJvbHM+JykKX3AoMiwnPERlYnVnVHlwZT5mdWxsPC9EZWJ1Z1R5cGU+JykKZWxzZQpfcCgyLCc8RGVidWdUeXBlPnBkYm9ubHk8L0RlYnVnVHlwZT4nKQplbmQKX3AoMiwnPE9wdGltaXplPiVzPC9PcHRpbWl6ZT4nLCBpaWYoY29uZmlnLmlzT3B0aW1pemVkQnVpbGQoY2ZnKSwgInRydWUiLCAiZmFsc2UiKSkKZW5kCmZ1bmN0aW9uIGNzMjAwNS5vdXRwdXRQcm9wcyhjZmcpCmxvY2FsIG91dGRpciA9IHZzdHVkaW8ucGF0aChjZmcsIGNmZy5idWlsZHRhcmdldC5kaXJlY3RvcnkpCl94KDIsJzxPdXRwdXRQYXRoPiVzXFw8L091dHB1dFBhdGg+Jywgb3V0ZGlyKQpsb2NhbCBvYmpkaXIgPSB2c3R1ZGlvLnBhdGgoY2ZnLCBjZmcub2JqZGlyKQppZiBfQUNUSU9OID4gInZzMjAwOCIgdGhlbgpfeCgyLCc8QmFzZUludGVybWVkaWF0ZU91dHB1dFBhdGg+JXNcXDwvQmFzZUludGVybWVkaWF0ZU91dHB1dFBhdGg+Jywgb2JqZGlyKQpfcCgyLCc8SW50ZXJtZWRpYXRlT3V0cHV0UGF0aD4kKEJhc2VJbnRlcm1lZGlhdGVPdXRwdXRQYXRoKTwvSW50ZXJtZWRpYXRlT3V0cHV0UGF0aD4nKQplbHNlCl94KDIsJzxJbnRlcm1lZGlhdGVPdXRwdXRQYXRoPiVzXFw8L0ludGVybWVkaWF0ZU91dHB1dFBhdGg+Jywgb2JqZGlyKQplbmQKZW5kCmNzMjAwNS5lbGVtZW50cy5yZWZlcmVuY2VzID0gZnVuY3Rpb24ocHJqKQpyZXR1cm4gewpjczIwMDUuYXNzZW1ibHlSZWZlcmVuY2VzLApjczIwMDUubnVHZXRSZWZlcmVuY2VzLAp9CmVuZApmdW5jdGlvbiBjczIwMDUucmVmZXJlbmNlcyhwcmopCl9wKDEsJzxJdGVtR3JvdXA+JykKcC5jYWxsQXJyYXkoY3MyMDA1LmVsZW1lbnRzLnJlZmVyZW5jZXMsIHByaikKX3AoMSwnPC9JdGVtR3JvdXA+JykKZW5kCmZ1bmN0aW9uIGNzMjAwNS5hc3NlbWJseVJlZmVyZW5jZXMocHJqKQpsb2NhbCBjZmcgPSBwcm9qZWN0LmdldGZpcnN0Y29uZmlnKHByaikKY29uZmlnLmdldGxpbmtzKGNmZywgInN5c3RlbSIsIGZ1bmN0aW9uKG9yaWdpbmFsLCBkZWNvcmF0ZWQpCmxvY2FsIG5hbWUgPSBwYXRoLmdldG5hbWUoZGVjb3JhdGVkKQppZiBwYXRoLmdldGV4dGVuc2lvbihuYW1lKSA9PSAiLmRsbCIgdGhlbgpuYW1lID0gbmFtZS5zdWIobmFtZSwgMSwgLTUpCmVuZAppZiBkZWNvcmF0ZWQ6ZmluZCgiLyIsIG5pbCwgdHJ1ZSkgdGhlbgpfeCgyLCc8UmVmZXJlbmNlIEluY2x1ZGU9IiVzIj4nLCBuYW1lKQpsb2NhbCBkZWNQYXRoLCBkZWNWYXJzID0gZGVjb3JhdGVkOm1hdGNoKCIoLi0pLCIpCmlmIG5vdCBkZWNQYXRoIHRoZW4KZGVjUGF0aCA9IGRlY29yYXRlZAplbmQKX3goMywnPEhpbnRQYXRoPiVzPC9IaW50UGF0aD4nLCBwYXRoLmFwcGVuZGV4dGVuc2lvbihwYXRoLnRyYW5zbGF0ZShkZWNQYXRoKSwgIi5kbGwiKSkKaWYgbm90IGNvbmZpZy5pc0NvcHlMb2NhbChwcmosIG9yaWdpbmFsLCB0cnVlKSB0aGVuCl9wKDMsIjxQcml2YXRlPkZhbHNlPC9Qcml2YXRlPiIpCmVuZApfcCgyLCc8L1JlZmVyZW5jZT4nKQplbHNlCl94KDIsJzxSZWZlcmVuY2UgSW5jbHVkZT0iJXMiIC8+JywgbmFtZSkKZW5kCmVuZCkKZW5kCmZ1bmN0aW9uIGNzMjAwNS5tYWtlVmVyc2lvbkNvbXBhcmFibGUodmVyc2lvbikKbG9jYWwgbnVtYmVycyA9ICIiCmZvciBudW1iZXIgaW4gdmVyc2lvbjpnbWF0Y2goIiVkIikgZG8KbnVtYmVycyA9IG51bWJlcnMgLi4gbnVtYmVyCmVuZApyZXR1cm4gc3RyaW5nLmZvcm1hdCgiJS0xMGQiLCBudW1iZXJzKTpnc3ViKCIgIiwgIjAiKQplbmQKZnVuY3Rpb24gY3MyMDA1LmZyYW1ld29ya1ZlcnNpb25Gb3JGb2xkZXIoZm9sZGVyKQppZiBmb2xkZXI6bWF0Y2goIl5uZXQlZCskIikgb3IgZm9sZGVyOm1hdGNoKCJeWzAtOSUuXSskIikgdGhlbgpyZXR1cm4gY3MyMDA1Lm1ha2VWZXJzaW9uQ29tcGFyYWJsZShmb2xkZXIpCmVsc2VpZiBmb2xkZXIgPT0gIm5ldCIgdGhlbgpyZXR1cm4gY3MyMDA1Lm1ha2VWZXJzaW9uQ29tcGFyYWJsZSgiMCIpCmVuZAplbmQKZnVuY3Rpb24gY3MyMDA1Lm51R2V0UmVmZXJlbmNlcyhwcmopCmlmIF9BQ1RJT04gPj0gInZzMjAxMCIgdGhlbgpmb3IgXywgcGFja2FnZSBpbiBpcGFpcnMocHJqLm51Z2V0KSBkbwpsb2NhbCBpZCA9IHZzdHVkaW8ubnVnZXQyMDEwLnBhY2thZ2VJZChwYWNrYWdlKQpsb2NhbCBwYWNrYWdlQVBJSW5mbyA9IHZzdHVkaW8ubnVnZXQyMDEwLnBhY2thZ2VBUElJbmZvKHByaiwgcGFja2FnZSkKbG9jYWwgY2ZnID0gcC5wcm9qZWN0LmdldGZpcnN0Y29uZmlnKHByaikKbG9jYWwgYWN0aW9uID0gcC5hY3Rpb24uY3VycmVudCgpCmxvY2FsIHRhcmdldEZyYW1ld29yayA9IGNmZy5kb3RuZXRmcmFtZXdvcmsgb3IgYWN0aW9uLnZzdHVkaW8udGFyZ2V0RnJhbWV3b3JrCmxvY2FsIHRhcmdldFZlcnNpb24gPSBjczIwMDUubWFrZVZlcnNpb25Db21wYXJhYmxlKHRhcmdldEZyYW1ld29yaykKbG9jYWwgZmlsZXMgPSB7fQpsb2NhbCBiZXN0VmVyc2lvbiwgYmVzdEZvbGRlcgpmb3IgXywgZmlsZSBpbiBpcGFpcnMocGFja2FnZUFQSUluZm8ucGFja2FnZUVudHJpZXMpIGRvCmxvY2FsIGZvbGRlciA9IGZpbGU6bWF0Y2goIl5saWJbXFwvXSguKylbXFwvXSIpCmlmIGZvbGRlciBhbmQgcGF0aC5oYXNleHRlbnNpb24oZmlsZSwgIi5kbGwiKSB0aGVuCmxvY2FsIHZlcnNpb24gPSBjczIwMDUuZnJhbWV3b3JrVmVyc2lvbkZvckZvbGRlcihmb2xkZXIpCmlmIHZlcnNpb24gdGhlbgpmaWxlc1tmb2xkZXJdID0gZmlsZXNbZm9sZGVyXSBvciB7fQp0YWJsZS5pbnNlcnQoZmlsZXNbZm9sZGVyXSwgZmlsZSkKaWYgdmVyc2lvbiA8PSB0YXJnZXRWZXJzaW9uIGFuZCAobm90IGJlc3RWZXJzaW9uIG9yIHZlcnNpb24gPiBiZXN0VmVyc2lvbikgdGhlbgpiZXN0VmVyc2lvbiA9IHZlcnNpb24KYmVzdEZvbGRlciA9IGZvbGRlcgplbmQKZW5kCmVuZAplbmQKaWYgbm90IGJlc3RWZXJzaW9uIHRoZW4KcC5lcnJvcigiTnVHZXQgcGFja2FnZSAnJXMnIGlzIG5vdCBjb21wYXRpYmxlIHdpdGggcHJvamVjdCAnJXMnIC5ORVQgRnJhbWV3b3JrIHZlcnNpb24gJyVzJyIsIGlkLCBwcmoubmFtZSwgdGFyZ2V0RnJhbWV3b3JrKQplbmQKZm9yIF8sIGZpbGUgaW4gaXBhaXJzKGZpbGVzW2Jlc3RGb2xkZXJdKSBkbwpfeCgyLCAnPFJlZmVyZW5jZSBJbmNsdWRlPSIlcyI+JywgcGF0aC5nZXRiYXNlbmFtZShmaWxlKSkKX3goMywgJzxIaW50UGF0aD4lczwvSGludFBhdGg+JywgdnN0dWRpby5wYXRoKHByaiwgcC5maWxlbmFtZShwcmoud29ya3NwYWNlLCBzdHJpbmcuZm9ybWF0KCJwYWNrYWdlc1xcJXMuJXNcXCVzIiwgaWQsIHBhY2thZ2VBUElJbmZvLnZlcmJhdGltVmVyc2lvbiBvciBwYWNrYWdlQVBJSW5mby52ZXJzaW9uLCBmaWxlKSkpKQppZiBjb25maWcuaXNDb3B5TG9jYWwocHJqLCBwYWNrYWdlLCB0cnVlKSB0aGVuCl9wKDMsICc8UHJpdmF0ZT5UcnVlPC9Qcml2YXRlPicpCmVsc2UKX3AoMywgJzxQcml2YXRlPkZhbHNlPC9Qcml2YXRlPicpCmVuZApfcCgyLCAnPC9SZWZlcmVuY2U+JykKZW5kCmVuZAplbmQKZW5kCmZ1bmN0aW9uIGNzMjAwNS5wcm9qZWN0UmVmZXJlbmNlcyhwcmopCl9wKDEsJzxJdGVtR3JvdXA+JykKbG9jYWwgZGVwcyA9IHByb2plY3QuZ2V0ZGVwZW5kZW5jaWVzKHByaiwgJ2xpbmtPbmx5JykKaWYgI2RlcHMgPiAwIHRoZW4KZm9yIF8sIGRlcCBpbiBpcGFpcnMoZGVwcykgZG8KbG9jYWwgcmVscGF0aCA9IHZzdHVkaW8ucGF0aChwcmosIHZzdHVkaW8ucHJvamVjdGZpbGUoZGVwKSkKX3goMiwnPFByb2plY3RSZWZlcmVuY2UgSW5jbHVkZT0iJXMiPicsIHJlbHBhdGgpCl9wKDMsJzxQcm9qZWN0Pnslc308L1Byb2plY3Q+JywgZGVwLnV1aWQpCl94KDMsJzxOYW1lPiVzPC9OYW1lPicsIGRlcC5uYW1lKQppZiBub3QgY29uZmlnLmlzQ29weUxvY2FsKHByaiwgZGVwLm5hbWUsIHRydWUpIHRoZW4KX3AoMywiPFByaXZhdGU+RmFsc2U8L1ByaXZhdGU+IikKZW5kCl9wKDIsJzwvUHJvamVjdFJlZmVyZW5jZT4nKQplbmQKZW5kCl9wKDEsJzwvSXRlbUdyb3VwPicpCmVuZApmdW5jdGlvbiBjczIwMDUuYXJjaChjZmcpCmxvY2FsIGFyY2ggPSB2c3R1ZGlvLmFyY2hGcm9tQ29uZmlnKGNmZykKaWYgYXJjaCA9PSAiQW55IENQVSIgdGhlbgphcmNoID0gIkFueUNQVSIKZW5kCnJldHVybiBhcmNoCmVuZApmdW5jdGlvbiBjczIwMDUucHJvcGVydHlHcm91cChjZmcpCnAucHVzaCgnPFByb3BlcnR5R3JvdXAgJXM+JywgY3MyMDA1LmNvbmRpdGlvbihjZmcpKQpsb2NhbCBhcmNoID0gY3MyMDA1LmFyY2goY2ZnKQppZiBhcmNoIH49ICJBbnlDUFUiIG9yIF9BQ1RJT04gPiAidnMyMDA4IiB0aGVuCnAueCgnPFBsYXRmb3JtVGFyZ2V0PiVzPC9QbGF0Zm9ybVRhcmdldD4nLCBhcmNoKQplbmQKZW5kCmZ1bmN0aW9uIGNzMjAwNS5hcHBsaWNhdGlvbkljb24ocHJqKQppZiBwcmouaWNvbiB0aGVuCmxvY2FsIGljb24gPSB2c3R1ZGlvLnBhdGgocHJqLCBwcmouaWNvbikKX3AoMSwnPFByb3BlcnR5R3JvdXA+JykKX3goMiwnPEFwcGxpY2F0aW9uSWNvbj4lczwvQXBwbGljYXRpb25JY29uPicsIGljb24pCl9wKDEsJzwvUHJvcGVydHlHcm91cD4nKQplbmQKZW5kCmZ1bmN0aW9uIGNzMjAwNS5jb25kaXRpb24oY2ZnKQpsb2NhbCBwbGF0Zm9ybSA9IHZzdHVkaW8ucHJvamVjdFBsYXRmb3JtKGNmZykKbG9jYWwgYXJjaCA9IGNzMjAwNS5hcmNoKGNmZykKcmV0dXJuIHN0cmluZy5mb3JtYXQoJ0NvbmRpdGlvbj0iIFwnJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKVwnID09IFwnJXN8JXNcJyAiJywgcGxhdGZvcm0sIGFyY2gpCmVuZApmdW5jdGlvbiBjczIwMDUuZm9ybWF0TnVHZXRGcmFtZXdvcmtWZXJzaW9uKGZyYW1ld29yaykKcmV0dXJuICJuZXQiIC4uIGZyYW1ld29yazpnc3ViKCIlLiIsICIiKQplbmQKZnVuY3Rpb24gY3MyMDA1LmFwcERlc2lnbmVyRm9sZGVyKGNmZykKX3AoMiwnPEFwcERlc2lnbmVyRm9sZGVyPlByb3BlcnRpZXM8L0FwcERlc2lnbmVyRm9sZGVyPicpCmVuZApmdW5jdGlvbiBjczIwMDUuYXNzZW1ibHlOYW1lKGNmZykKX3AoMiwnPEFzc2VtYmx5TmFtZT4lczwvQXNzZW1ibHlOYW1lPicsIGNmZy5idWlsZHRhcmdldC5iYXNlbmFtZSkKZW5kCmZ1bmN0aW9uIGNzMjAwNS5jb21tb25Qcm9wZXJ0aWVzKHByaikKaWYgX0FDVElPTiA+ICJ2czIwMTAiIHRoZW4KX3AoMSwnPEltcG9ydCBQcm9qZWN0PSIkKE1TQnVpbGRFeHRlbnNpb25zUGF0aClcXCQoTVNCdWlsZFRvb2xzVmVyc2lvbilcXE1pY3Jvc29mdC5Db21tb24ucHJvcHMiIENvbmRpdGlvbj0iRXhpc3RzKFwnJChNU0J1aWxkRXh0ZW5zaW9uc1BhdGgpXFwkKE1TQnVpbGRUb29sc1ZlcnNpb24pXFxNaWNyb3NvZnQuQ29tbW9uLnByb3BzXCcpIiAvPicpCmVuZAplbmQKZnVuY3Rpb24gY3MyMDA1LmNvbmZpZ3VyYXRpb25Db25kaXRpb24oY2ZnKQpfeCgyLCc8Q29uZmlndXJhdGlvbiBDb25kaXRpb249IiBcJyQoQ29uZmlndXJhdGlvbilcJyA9PSBcJ1wnICI+JXM8L0NvbmZpZ3VyYXRpb24+JywgY2ZnLmJ1aWxkY2ZnKQplbmQKZnVuY3Rpb24gY3MyMDA1LmZpbGVBbGlnbm1lbnQoY2ZnKQppZiBfQUNUSU9OID49ICJ2czIwMTAiIHRoZW4KX3AoMiwnPEZpbGVBbGlnbm1lbnQ+NTEyPC9GaWxlQWxpZ25tZW50PicpCmVuZAplbmQKZnVuY3Rpb24gY3MyMDA1Lm91dHB1dFR5cGUoY2ZnKQpfcCgyLCc8T3V0cHV0VHlwZT4lczwvT3V0cHV0VHlwZT4nLCBkb3RuZXQuZ2V0a2luZChjZmcpKQplbmQKZnVuY3Rpb24gY3MyMDA1LnBsYXRmb3JtQ29uZGl0aW9uKGNmZykKX3AoMiwnPFBsYXRmb3JtIENvbmRpdGlvbj0iIFwnJChQbGF0Zm9ybSlcJyA9PSBcJ1wnICI+JXM8L1BsYXRmb3JtPicsIGNzMjAwNS5hcmNoKGNmZy5wcm9qZWN0KSkKZW5kCmZ1bmN0aW9uIGNzMjAwNS5wcm9kdWN0VmVyc2lvbihjZmcpCmxvY2FsIGFjdGlvbiA9IHAuYWN0aW9uLmN1cnJlbnQoKQppZiBhY3Rpb24udnN0dWRpby5wcm9kdWN0VmVyc2lvbiB0aGVuCl9wKDIsJzxQcm9kdWN0VmVyc2lvbj4lczwvUHJvZHVjdFZlcnNpb24+JywgYWN0aW9uLnZzdHVkaW8ucHJvZHVjdFZlcnNpb24pCmVuZAplbmQKZnVuY3Rpb24gY3MyMDA1LnByb2plY3RHdWlkKGNmZykKX3AoMiwnPFByb2plY3RHdWlkPnslc308L1Byb2plY3RHdWlkPicsIGNmZy51dWlkKQplbmQKZnVuY3Rpb24gY3MyMDA1LnByb2plY3RUeXBlR3VpZHMoY2ZnKQppZiBjZmcuZmxhZ3MuV1BGIHRoZW4KX3AoMiwnPFByb2plY3RUeXBlR3VpZHM+ezYwZGM4MTM0LWViYTUtNDNiOC1iY2M5LWJiNGJjMTZjMjU0OH07e0ZBRTA0RUMwLTMwMUYtMTFEMy1CRjRCLTAwQzA0Rjc5RUZCQ308L1Byb2plY3RUeXBlR3VpZHM+JykKZW5kCmVuZApmdW5jdGlvbiBjczIwMDUucm9vdE5hbWVzcGFjZShjZmcpCl9wKDIsJzxSb290TmFtZXNwYWNlPiVzPC9Sb290TmFtZXNwYWNlPicsIGNmZy5uYW1lc3BhY2Ugb3IgY2ZnLmJ1aWxkdGFyZ2V0LmJhc2VuYW1lKQplbmQKZnVuY3Rpb24gY3MyMDA1LnNjaGVtYVZlcnNpb24oY2ZnKQpsb2NhbCBhY3Rpb24gPSBwLmFjdGlvbi5jdXJyZW50KCkKaWYgYWN0aW9uLnZzdHVkaW8uY3Nwcm9qU2NoZW1hVmVyc2lvbiB0aGVuCl9wKDIsJzxTY2hlbWFWZXJzaW9uPiVzPC9TY2hlbWFWZXJzaW9uPicsIGFjdGlvbi52c3R1ZGlvLmNzcHJvalNjaGVtYVZlcnNpb24pCmVuZAplbmQKZnVuY3Rpb24gY3MyMDA1LnRhcmdldEZyYW1ld29ya1ZlcnNpb24oY2ZnKQpsb2NhbCBhY3Rpb24gPSBwLmFjdGlvbi5jdXJyZW50KCkKbG9jYWwgZnJhbWV3b3JrID0gY2ZnLmRvdG5ldGZyYW1ld29yayBvciBhY3Rpb24udnN0dWRpby50YXJnZXRGcmFtZXdvcmsKaWYgZnJhbWV3b3JrIHRoZW4KX3AoMiwnPFRhcmdldEZyYW1ld29ya1ZlcnNpb24+diVzPC9UYXJnZXRGcmFtZXdvcmtWZXJzaW9uPicsIGZyYW1ld29yaykKZW5kCmVuZApmdW5jdGlvbiBjczIwMDUudGFyZ2V0RnJhbWV3b3JrUHJvZmlsZShjZmcpCmlmIF9BQ1RJT04gPT0gInZzMjAxMCIgdGhlbgpfcCgyLCc8VGFyZ2V0RnJhbWV3b3JrUHJvZmlsZT4nKQpfcCgyLCc8L1RhcmdldEZyYW1ld29ya1Byb2ZpbGU+JykKZW5kCmVuZApmdW5jdGlvbiBjczIwMDUudGFyZ2V0cyhwcmopCmxvY2FsIGJpbiA9IGlpZihfQUNUSU9OIDw9ICJ2czIwMTAiLCAiTVNCdWlsZEJpblBhdGgiLCAiTVNCdWlsZFRvb2xzUGF0aCIpCl9wKDEsJzxJbXBvcnQgUHJvamVjdD0iJCglcylcXE1pY3Jvc29mdC5DU2hhcnAudGFyZ2V0cyIgLz4nLCBiaW4pCl9wKDEsJzwhLS0gVG8gbW9kaWZ5IHlvdXIgYnVpbGQgcHJvY2VzcywgYWRkIHlvdXIgdGFzayBpbnNpZGUgb25lIG9mIHRoZSB0YXJnZXRzIGJlbG93IGFuZCB1bmNvbW1lbnQgaXQuJykKX3AoMSwnICAgICBPdGhlciBzaW1pbGFyIGV4dGVuc2lvbiBwb2ludHMgZXhpc3QsIHNlZSBNaWNyb3NvZnQuQ29tbW9uLnRhcmdldHMuJykKX3AoMSwnPFRhcmdldCBOYW1lPSJCZWZvcmVCdWlsZCI+JykKX3AoMSwnPC9UYXJnZXQ+JykKX3AoMSwnPFRhcmdldCBOYW1lPSJBZnRlckJ1aWxkIj4nKQpfcCgxLCc8L1RhcmdldD4nKQpfcCgxLCctLT4nKQplbmQKZnVuY3Rpb24gY3MyMDA1LnhtbERlY2xhcmF0aW9uKCkKaWYgX0FDVElPTiA+ICJ2czIwMDgiIHRoZW4KcC54bWxVdGY4KCkKZW5kCmVuZAoAAABsb2NhbCBwID0gcHJlbWFrZQpsb2NhbCBtID0gcC52c3R1ZGlvLmNzMjAwNQptLmVsZW1lbnRzLnVzZXJQcm9qZWN0UHJvcGVydHlHcm91cCA9IGZ1bmN0aW9uKCkKcmV0dXJuIHsKbS5yZWZlcmVuY2VQYXRoLAp9CmVuZAptLmVsZW1lbnRzLnVzZXJDb25maWdQcm9wZXJ0eUdyb3VwID0gZnVuY3Rpb24oKQpyZXR1cm4gewptLmxvY2FsRGVidWdnZXJDb21tYW5kQXJndW1lbnRzLAp9CmVuZApmdW5jdGlvbiBtLmdlbmVyYXRlVXNlcihwcmopCmxvY2FsIHByakdyb3VwID0gcC5jYXB0dXJlKGZ1bmN0aW9uKCkKcC5wdXNoKDIpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMudXNlclByb2plY3RQcm9wZXJ0eUdyb3VwLCBwcmopCnAucG9wKDIpCmVuZCkKbG9jYWwgY29udGVudHMgPSB7fQpsb2NhbCBzaXplID0gMApmb3IgY2ZnIGluIHAucHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KY29udGVudHNbY2ZnXSA9IHAuY2FwdHVyZShmdW5jdGlvbigpCnAucHVzaCgyKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLnVzZXJDb25maWdQcm9wZXJ0eUdyb3VwLCBjZmcpCnAucG9wKDIpCmVuZCkKc2l6ZSA9IHNpemUgKyAjY29udGVudHNbY2ZnXQplbmQKaWYgI3Byakdyb3VwID4gMCBvciBzaXplID4gMCB0aGVuCnAudnN0dWRpby5wcm9qZWN0RWxlbWVudCgpCmlmICNwcmpHcm91cCA+IDAgdGhlbgpwLnB1c2goJzxQcm9wZXJ0eUdyb3VwPicpCnAub3V0bG4ocHJqR3JvdXApCnAucG9wKCc8L1Byb3BlcnR5R3JvdXA+JykKZW5kCmZvciBjZmcgaW4gcC5wcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwppZiAjY29udGVudHNbY2ZnXSA+IDAgdGhlbgpwLnB1c2goJzxQcm9wZXJ0eUdyb3VwICVzPicsIG0uY29uZGl0aW9uKGNmZykpCnAub3V0bG4oY29udGVudHNbY2ZnXSkKcC5wb3AoJzwvUHJvcGVydHlHcm91cD4nKQplbmQKZW5kCnAucG9wKCc8L1Byb2plY3Q+JykKZW5kCmVuZApmdW5jdGlvbiBtLnJlZmVyZW5jZVBhdGgocHJqKQpsb2NhbCBjZmcgPSBwLnByb2plY3QuZ2V0Zmlyc3Rjb25maWcocHJqKQpsb2NhbCBwYXRocyA9IHAudnN0dWRpby5wYXRoKHByaiwgY2ZnLmxpYmRpcnMpCmlmICNwYXRocyA+IDAgdGhlbgpwLncoJzxSZWZlcmVuY2VQYXRoPiVzPC9SZWZlcmVuY2VQYXRoPicsIHRhYmxlLmNvbmNhdChwYXRocywgIjsiKSkKZW5kCmVuZApmdW5jdGlvbiBtLmxvY2FsRGVidWdnZXJDb21tYW5kQXJndW1lbnRzKGNmZykKaWYgI2NmZy5kZWJ1Z2FyZ3MgPiAwIHRoZW4KcC54KCc8U3RhcnRBcmd1bWVudHM+JXM8L1N0YXJ0QXJndW1lbnRzPicsIHRhYmxlLmNvbmNhdChjZmcuZGVidWdhcmdzLCAiICIpKQplbmQKZW5kAAAAAABsb2NhbCBwID0gcHJlbWFrZQpwLnZzdHVkaW8udnMyMDEwID0ge30KbG9jYWwgdnMyMDEwID0gcC52c3R1ZGlvLnZzMjAxMApsb2NhbCB2c3R1ZGlvID0gcC52c3R1ZGlvCmxvY2FsIHByb2plY3QgPSBwLnByb2plY3QKbG9jYWwgdHJlZSA9IHAudHJlZQp2czIwMTAucGF0aFZhcnMgPSB7ClsiY2ZnLm9iamRpciJdICAgICAgICAgICAgICAgICAgPSB7IGFic29sdXRlID0gdHJ1ZSwgIHRva2VuID0gIiQoSW50RGlyKSIgfSwKWyJwcmoubG9jYXRpb24iXSAgICAgICAgICAgICAgICA9IHsgYWJzb2x1dGUgPSB0cnVlLCAgdG9rZW4gPSAiJChQcm9qZWN0RGlyKSIgfSwKWyJwcmoubmFtZSJdICAgICAgICAgICAgICAgICAgICA9IHsgYWJzb2x1dGUgPSBmYWxzZSwgdG9rZW4gPSAiJChQcm9qZWN0TmFtZSkiIH0sClsic2xuLmxvY2F0aW9uIl0gICAgICAgICAgICAgICAgPSB7IGFic29sdXRlID0gdHJ1ZSwgIHRva2VuID0gIiQoU29sdXRpb25EaXIpIiB9LApbInNsbi5uYW1lIl0gICAgICAgICAgICAgICAgICAgID0geyBhYnNvbHV0ZSA9IGZhbHNlLCB0b2tlbiA9ICIkKFNvbHV0aW9uTmFtZSkiIH0sClsid2tzLmxvY2F0aW9uIl0gICAgICAgICAgICAgICAgPSB7IGFic29sdXRlID0gdHJ1ZSwgIHRva2VuID0gIiQoU29sdXRpb25EaXIpIiB9LApbIndrcy5uYW1lIl0gICAgICAgICAgICAgICAgICAgID0geyBhYnNvbHV0ZSA9IGZhbHNlLCB0b2tlbiA9ICIkKFNvbHV0aW9uTmFtZSkiIH0sClsiY2ZnLmJ1aWxkdGFyZ2V0LmRpcmVjdG9yeSJdICAgPSB7IGFic29sdXRlID0gZmFsc2UsIHRva2VuID0gIiQoVGFyZ2V0RGlyKSIgfSwKWyJjZmcuYnVpbGR0YXJnZXQubmFtZSJdICAgICAgICA9IHsgYWJzb2x1dGUgPSBmYWxzZSwgdG9rZW4gPSAiJChUYXJnZXRGaWxlTmFtZSkiIH0sClsiY2ZnLmJ1aWxkdGFyZ2V0LmJhc2VuYW1lIl0gICAgPSB7IGFic29sdXRlID0gZmFsc2UsIHRva2VuID0gIiQoVGFyZ2V0TmFtZSkiIH0sClsiZmlsZS5iYXNlbmFtZSJdICAgICAgICAgICAgICAgPSB7IGFic29sdXRlID0gZmFsc2UsIHRva2VuID0gIiUoRmlsZW5hbWUpIiB9LApbImZpbGUuYWJzcGF0aCJdICAgICAgICAgICAgICAgID0geyBhYnNvbHV0ZSA9IHRydWUsICB0b2tlbiA9ICIlKEZ1bGxQYXRoKSIgfSwKWyJmaWxlLnJlbHBhdGgiXSAgICAgICAgICAgICAgICA9IHsgYWJzb2x1dGUgPSBmYWxzZSwgdG9rZW4gPSAiJShJZGVudGl0eSkiIH0sClsiZmlsZS5wYXRoIl0gICAgICAgICAgICAgICAgICAgPSB7IGFic29sdXRlID0gZmFsc2UsIHRva2VuID0gIiUoSWRlbnRpdHkpIiB9LApbImZpbGUuZGlyZWN0b3J5Il0gICAgICAgICAgICAgID0geyBhYnNvbHV0ZSA9IHRydWUsICB0b2tlbiA9ICIlKFJvb3REaXIpJShEaXJlY3RvcnkpIiB9LApbImZpbGUucmVsZGlyZWN0b3J5Il0gICAgICAgICAgID0geyBhYnNvbHV0ZSA9IGZhbHNlLCB0b2tlbiA9ICIlKFJlbGF0aXZlRGlyKSIgfSwKWyJmaWxlLmV4dGVuc2lvbiJdICAgICAgICAgICAgICA9IHsgYWJzb2x1dGUgPSBmYWxzZSwgdG9rZW4gPSAiJShFeHRlbnNpb24pIiB9LAp9CmZ1bmN0aW9uIHZzMjAxMC5nZW5lcmF0ZVByb2plY3QocHJqKQpwLmVvbCgiXHJcbiIpCnAuaW5kZW50KCIgICIpCnAuZXNjYXBlcih2czIwMTAuZXNjKQppZiBwLnByb2plY3QuaXNkb3RuZXQocHJqKSB0aGVuCnAuZ2VuZXJhdGUocHJqLCAiLmNzcHJvaiIsIHZzdHVkaW8uY3MyMDA1LmdlbmVyYXRlKQpsb2NhbCB1c2VyID0gcC5jYXB0dXJlKGZ1bmN0aW9uKCkgdnN0dWRpby5jczIwMDUuZ2VuZXJhdGVVc2VyKHByaikgZW5kKQppZiAjdXNlciA+IDAgdGhlbgpwLmdlbmVyYXRlKHByaiwgIi5jc3Byb2oudXNlciIsIGZ1bmN0aW9uKCkgcC5vdXRsbih1c2VyKSBlbmQpCmVuZAplbHNlaWYgcC5wcm9qZWN0LmlzYyhwcmopIG9yIHAucHJvamVjdC5pc2NwcChwcmopIHRoZW4KbG9jYWwgcHJvakZpbGVNb2RpZmllZCA9IHAuZ2VuZXJhdGUocHJqLCAiLnZjeHByb2oiLCB2c3R1ZGlvLnZjMjAxMC5nZW5lcmF0ZSkKbG9jYWwgdXNlciA9IHAuY2FwdHVyZShmdW5jdGlvbigpIHZzdHVkaW8udmMyMDEwLmdlbmVyYXRlVXNlcihwcmopIGVuZCkKaWYgI3VzZXIgPiAwIHRoZW4KcC5nZW5lcmF0ZShwcmosICIudmN4cHJvai51c2VyIiwgZnVuY3Rpb24oKSBwLm91dGxuKHVzZXIpIGVuZCkKZW5kCmlmIHRyZWUuaGFzYnJhbmNoZXMocHJvamVjdC5nZXRzb3VyY2V0cmVlKHByaikpIHRoZW4KaWYgcC5nZW5lcmF0ZShwcmosICIudmN4cHJvai5maWx0ZXJzIiwgdnN0dWRpby52YzIwMTAuZ2VuZXJhdGVGaWx0ZXJzKSA9PSB0cnVlIGFuZCBwcm9qRmlsZU1vZGlmaWVkID09IGZhbHNlIHRoZW4KcC50b3VjaChwcmosICIudmN4cHJvaiIpCmVuZAplbmQKZW5kCmxvY2FsIHBhY2thZ2VzID0gcC5jYXB0dXJlKGZ1bmN0aW9uKCkgdnN0dWRpby5udWdldDIwMTAuZ2VuZXJhdGVQYWNrYWdlc0NvbmZpZyhwcmopIGVuZCkKaWYgI3BhY2thZ2VzID4gMCB0aGVuCnAuZ2VuZXJhdGUocHJqLCAicGFja2FnZXMuY29uZmlnIiwgZnVuY3Rpb24oKSBwLm91dGxuKHBhY2thZ2VzKSBlbmQpCmVuZApsb2NhbCBjb25maWcgPSBwLmNhcHR1cmUoZnVuY3Rpb24oKSB2c3R1ZGlvLm51Z2V0MjAxMC5nZW5lcmF0ZU51R2V0Q29uZmlnKHByaikgZW5kKQppZiAjY29uZmlnID4gMCB0aGVuCnAuZ2VuZXJhdGUocHJqLCAiTnVHZXQuQ29uZmlnIiwgZnVuY3Rpb24oKSBwLm91dGxuKGNvbmZpZykgZW5kKQplbmQKZW5kCmZ1bmN0aW9uIHZzMjAxMC5nZW5lcmF0ZVJ1bGUocnVsZSkKcC5lb2woIlxyXG4iKQpwLmluZGVudCgiICAiKQpwLmVzY2FwZXIodnMyMDEwLmVzYykKcC5nZW5lcmF0ZShydWxlLCAiLnByb3BzIiwgdnMyMDEwLnJ1bGVzLnByb3BzLmdlbmVyYXRlKQpwLmdlbmVyYXRlKHJ1bGUsICIudGFyZ2V0cyIsIHZzMjAxMC5ydWxlcy50YXJnZXRzLmdlbmVyYXRlKQpwLmdlbmVyYXRlKHJ1bGUsICIueG1sIiwgdnMyMDEwLnJ1bGVzLnhtbC5nZW5lcmF0ZSkKZW5kCmZ1bmN0aW9uIHZzMjAxMC5lc2ModmFsdWUpCnZhbHVlID0gdmFsdWU6Z3N1YignJicsICAiJmFtcDsiKQp2YWx1ZSA9IHZhbHVlOmdzdWIoJzwnLCAgIiZsdDsiKQp2YWx1ZSA9IHZhbHVlOmdzdWIoJz4nLCAgIiZndDsiKQpyZXR1cm4gdmFsdWUKZW5kCm5ld2FjdGlvbiB7CnRyaWdnZXIgICAgID0gInZzMjAxMCIsCnNob3J0bmFtZSAgID0gIlZpc3VhbCBTdHVkaW8gMjAxMCIsCmRlc2NyaXB0aW9uID0gIkdlbmVyYXRlIFZpc3VhbCBTdHVkaW8gMjAxMCBwcm9qZWN0IGZpbGVzIiwKdGFyZ2V0b3MgPSAid2luZG93cyIsCnRvb2xzZXQgID0gIm1zYy12MTAwIiwKdmFsaWRfa2luZHMgICAgID0geyAiQ29uc29sZUFwcCIsICJXaW5kb3dlZEFwcCIsICJTdGF0aWNMaWIiLCAiU2hhcmVkTGliIiwgIk1ha2VmaWxlIiwgIk5vbmUiLCAiVXRpbGl0eSIgfSwKdmFsaWRfbGFuZ3VhZ2VzID0geyAiQyIsICJDKysiLCAiQyMiIH0sCnZhbGlkX3Rvb2xzICAgICA9IHsKY2MgICAgID0geyAibXNjIiAgIH0sCmRvdG5ldCA9IHsgIm1zbmV0IiB9LAp9LApvbldvcmtzcGFjZSA9IGZ1bmN0aW9uKHdrcykKdnN0dWRpby52czIwMDUuZ2VuZXJhdGVTb2x1dGlvbih3a3MpCmVuZCwKb25Qcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQp2c3R1ZGlvLnZzMjAxMC5nZW5lcmF0ZVByb2plY3QocHJqKQplbmQsCm9uUnVsZSA9IGZ1bmN0aW9uKHJ1bGUpCnZzdHVkaW8udnMyMDEwLmdlbmVyYXRlUnVsZShydWxlKQplbmQsCm9uQ2xlYW5Xb3Jrc3BhY2UgPSBmdW5jdGlvbih3a3MpCnZzdHVkaW8uY2xlYW5Tb2x1dGlvbih3a3MpCmVuZCwKb25DbGVhblByb2plY3QgPSBmdW5jdGlvbihwcmopCnZzdHVkaW8uY2xlYW5Qcm9qZWN0KHByaikKZW5kLApvbkNsZWFuVGFyZ2V0ID0gZnVuY3Rpb24ocHJqKQp2c3R1ZGlvLmNsZWFuVGFyZ2V0KHByaikKZW5kLApwYXRoVmFycyAgICAgICAgPSB2czIwMTAucGF0aFZhcnMsCnZzdHVkaW8gPSB7CmNzcHJvalNjaGVtYVZlcnNpb24gPSAiMi4wIiwKcHJvZHVjdFZlcnNpb24gICAgICA9ICI4LjAuMzA3MDMiLApzb2x1dGlvblZlcnNpb24gICAgID0gIjExIiwKdmVyc2lvbk5hbWUgICAgICAgICA9ICIyMDEwIiwKdGFyZ2V0RnJhbWV3b3JrICAgICA9ICI0LjAiLAp0b29sc1ZlcnNpb24gICAgICAgID0gIjQuMCIsCn0KfQoAbG9jYWwgcCA9IHByZW1ha2UKcC52c3R1ZGlvLm51Z2V0MjAxMCA9IHt9CmxvY2FsIHZzdHVkaW8gPSBwLnZzdHVkaW8KbG9jYWwgbnVnZXQyMDEwID0gcC52c3R1ZGlvLm51Z2V0MjAxMApsb2NhbCBjczIwMDUgPSBwLnZzdHVkaW8uY3MyMDA1CmxvY2FsIHBhY2thZ2VBUElJbmZvcyA9IHt9CmxvY2FsIHBhY2thZ2VTb3VyY2VJbmZvcyA9IHt9CmZ1bmN0aW9uIG51Z2V0MjAxMC5wYWNrYWdlSWQocGFja2FnZSkKcmV0dXJuIHBhY2thZ2U6c3ViKDAsIHBhY2thZ2U6ZmluZCgiOiIpIC0gMSkKZW5kCmZ1bmN0aW9uIG51Z2V0MjAxMC5wYWNrYWdlVmVyc2lvbihwYWNrYWdlKQpyZXR1cm4gcGFja2FnZTpzdWIocGFja2FnZTpmaW5kKCI6IikgKyAxLCAtMSkKZW5kCmZ1bmN0aW9uIG51Z2V0MjAxMC5wYWNrYWdlRnJhbWV3b3JrKHByaikKaWYgcC5wcm9qZWN0LmlzZG90bmV0KHByaikgdGhlbgpsb2NhbCBjZmcgPSBwLnByb2plY3QuZ2V0Zmlyc3Rjb25maWcocHJqKQpsb2NhbCBhY3Rpb24gPSBwLmFjdGlvbi5jdXJyZW50KCkKbG9jYWwgZnJhbWV3b3JrID0gY2ZnLmRvdG5ldGZyYW1ld29yayBvciBhY3Rpb24udnN0dWRpby50YXJnZXRGcmFtZXdvcmsKcmV0dXJuIGNzMjAwNS5mb3JtYXROdUdldEZyYW1ld29ya1ZlcnNpb24oZnJhbWV3b3JrKQplbHNlCnJldHVybiAibmF0aXZlIgplbmQKZW5kCmZ1bmN0aW9uIG51Z2V0MjAxMC5wYWNrYWdlQVBJSW5mbyhwcmosIHBhY2thZ2UpCmxvY2FsIGlkID0gbnVnZXQyMDEwLnBhY2thZ2VJZChwYWNrYWdlKQpsb2NhbCB2ZXJzaW9uID0gbnVnZXQyMDEwLnBhY2thZ2VWZXJzaW9uKHBhY2thZ2UpCmxvY2FsIGZ1bmN0aW9uIGV4YW1pbmVQYWNrYWdlRnJvbUNhY2hlKCkKaWYgbm90IG9zLmlzaG9zdCgid2luZG93cyIpIHRoZW4KcmV0dXJuCmVuZApsb2NhbCBjYWNoZVBhdGggPSBwYXRoLnRyYW5zbGF0ZShwYXRoLmpvaW4ob3MuZ2V0ZW52KCJ1c2VycHJvZmlsZSIpLCAiLm51Z2V0L3BhY2thZ2VzIiwgaWQpKQppZiBvcy5pc2RpcihjYWNoZVBhdGgpIHRoZW4KbG9jYWwgcGFja2FnZUFQSUluZm8gPSB7fQpwcmludGYoIkV4YW1pbmluZyBjYWNoZWQgTnVHZXQgcGFja2FnZSAnJXMnLi4uIiwgaWQpCmlvLmZsdXNoKCkKbG9jYWwgdmVyc2lvblBhdGggPSBwYXRoLnRyYW5zbGF0ZShwYXRoLmpvaW4oY2FjaGVQYXRoLCB2ZXJzaW9uKSkKbG9jYWwgbnVzcGVjUGF0aCA9IHBhdGgudHJhbnNsYXRlKHBhdGguam9pbih2ZXJzaW9uUGF0aCwgaWQgLi4gIi5udXNwZWMiKSkKaWYgbm90IG9zLmlzZmlsZShudXNwZWNQYXRoKSB0aGVuCnJldHVybgplbmQKbG9jYWwgbnVzcGVjID0gaW8ucmVhZGZpbGUobnVzcGVjUGF0aCkKaWYgbm90IG51c3BlYyB0aGVuCnJldHVybgplbmQKcGFja2FnZUFQSUluZm8udmVyYmF0aW1WZXJzaW9uID0gbnVzcGVjOm1hdGNoKCI8dmVyc2lvbj4oLispPC92ZXJzaW9uPiIpCnBhY2thZ2VBUElJbmZvLnZlcnNpb24gPSB2ZXJzaW9uCmlmIG5vdCBwYWNrYWdlQVBJSW5mby52ZXJiYXRpbVZlcnNpb24gdGhlbgpyZXR1cm4KZW5kCmlmIHAucHJvamVjdC5pc2RvdG5ldChwcmopIHRoZW4KcGFja2FnZUFQSUluZm8ucGFja2FnZUVudHJpZXMgPSB7fQpmb3IgXywgZmlsZSBpbiBpcGFpcnMob3MubWF0Y2hmaWxlcyhwYXRoLnRyYW5zbGF0ZShwYXRoLmpvaW4odmVyc2lvblBhdGgsICIqKiIpKSkpIGRvCmxvY2FsIGV4dGVuc2lvbiA9IHBhdGguZ2V0ZXh0ZW5zaW9uKGZpbGUpCmlmIGV4dGVuc2lvbiB+PSAiLm51cGtnIiBhbmQgZXh0ZW5zaW9uIH49ICIuc2hhNTEyIiB0aGVuCnRhYmxlLmluc2VydChwYWNrYWdlQVBJSW5mby5wYWNrYWdlRW50cmllcywgcGF0aC50cmFuc2xhdGUocGF0aC5nZXRyZWxhdGl2ZSh2ZXJzaW9uUGF0aCwgZmlsZSkpKQplbmQKZW5kCmlmICNwYWNrYWdlQVBJSW5mby5wYWNrYWdlRW50cmllcyA9PSAwIHRoZW4KcmV0dXJuCmVuZAppZiBudXNwZWM6bWF0Y2goIjxmcmFtZXdvcmtBc3NlbWJsaWVzPiguKyk8L2ZyYW1ld29ya0Fzc2VtYmxpZXM+IikgdGhlbgpwLndhcm4oIk51R2V0IHBhY2thZ2UgJyVzJyBtYXkgZGVwZW5kIG9uIC5ORVQgRnJhbWV3b3JrIGFzc2VtYmxpZXMgLSBwYWNrYWdlIGRlcGVuZGVuY2llcyBhcmUgY3VycmVudGx5IHVuaW1wbGVtZW50ZWQiLCBpZCkKZW5kCmVuZAppZiBudXNwZWM6bWF0Y2goIjxkZXBlbmRlbmNpZXM+KC4rKTwvZGVwZW5kZW5jaWVzPiIpIHRoZW4KcC53YXJuKCJOdUdldCBwYWNrYWdlICclcycgbWF5IGRlcGVuZCBvbiBvdGhlciBwYWNrYWdlcyAtIHBhY2thZ2UgZGVwZW5kZW5jaWVzIGFyZSBjdXJyZW50bHkgdW5pbXBsZW1lbnRlZCIsIGlkKQplbmQKcGFja2FnZUFQSUluZm9zW3BhY2thZ2VdID0gcGFja2FnZUFQSUluZm8KZW5kCmVuZAppZiBub3QgcGFja2FnZUFQSUluZm9zW3BhY2thZ2VdIHRoZW4KZXhhbWluZVBhY2thZ2VGcm9tQ2FjaGUoKQplbmQKaWYgbm90IHBhY2thZ2VBUElJbmZvc1twYWNrYWdlXSB0aGVuCmlmIG5vdCBwYWNrYWdlU291cmNlSW5mb3NbcHJqLm51Z2V0c291cmNlXSB0aGVuCmxvY2FsIHBhY2thZ2VTb3VyY2VJbmZvID0ge30KcHJpbnRmKCJFeGFtaW5pbmcgTnVHZXQgcGFja2FnZSBzb3VyY2UgJyVzJy4uLiIsIHByai5udWdldHNvdXJjZSkKaW8uZmx1c2goKQpsb2NhbCByZXNwb25zZSwgZXJyLCBjb2RlID0gaHR0cC5nZXQocHJqLm51Z2V0c291cmNlKQppZiBlcnIgfj0gIk9LIiB0aGVuCnAuZXJyb3IoIk51R2V0IEFQSSBlcnJvciAoJWQpXG4lcyIsIGNvZGUsIGVycikKZW5kCnJlc3BvbnNlLCBlcnIgPSBqc29uLmRlY29kZShyZXNwb25zZSkKaWYgbm90IHJlc3BvbnNlIHRoZW4KcC5lcnJvcigiRmFpbGVkIHRvIGRlY29kZSBOdUdldCBBUEkgcmVzcG9uc2UgKCVzKSIsIGVycikKZW5kCmlmIG5vdCByZXNwb25zZS5yZXNvdXJjZXMgdGhlbgpwLmVycm9yKCJGYWlsZWQgdG8gdW5kZXJzdGFuZCBOdUdldCBBUEkgcmVzcG9uc2UgKG5vIHJlc291cmNlcyBpbiByZXNwb25zZSkiLCBpZCkKZW5kCmxvY2FsIHBhY2thZ2VEaXNwbGF5TWV0YWRhdGFVcmlUZW1wbGF0ZSwgY2F0YWxvZwpmb3IgXywgcmVzb3VyY2UgaW4gaXBhaXJzKHJlc3BvbnNlLnJlc291cmNlcykgZG8KaWYgbm90IHJlc291cmNlWyJAaWQiXSB0aGVuCnAuZXJyb3IoIkZhaWxlZCB0byB1bmRlcnN0YW5kIE51R2V0IEFQSSByZXNwb25zZSAobm8gcmVzb3VyY2VbJ0BpZCddKSIpCmVuZAppZiBub3QgcmVzb3VyY2VbIkB0eXBlIl0gdGhlbgpwLmVycm9yKCJGYWlsZWQgdG8gdW5kZXJzdGFuZCBOdUdldCBBUEkgcmVzcG9uc2UgKG5vIHJlc291cmNlWydAdHlwZSddKSIpCmVuZAppZiByZXNvdXJjZVsiQHR5cGUiXTpmaW5kKCJQYWNrYWdlRGlzcGxheU1ldGFkYXRhVXJpVGVtcGxhdGUiKSA9PSAxIHRoZW4KcGFja2FnZURpc3BsYXlNZXRhZGF0YVVyaVRlbXBsYXRlID0gcmVzb3VyY2UKZW5kCmlmIHJlc291cmNlWyJAdHlwZSJdOmZpbmQoIkNhdGFsb2ciKSA9PSAxIHRoZW4KY2F0YWxvZyA9IHJlc291cmNlCmVuZAplbmQKaWYgbm90IHBhY2thZ2VEaXNwbGF5TWV0YWRhdGFVcmlUZW1wbGF0ZSB0aGVuCnAuZXJyb3IoIkZhaWxlZCB0byB1bmRlcnN0YW5kIE51R2V0IEFQSSByZXNwb25zZSAobm8gUGFja2FnZURpc3BsYXlNZXRhZGF0YVVyaVRlbXBsYXRlIHJlc291cmNlKSIpCmVuZAppZiBub3QgY2F0YWxvZyB0aGVuCmlmIHByai5udWdldHNvdXJjZSA9PSAiaHR0cHM6Ly9hcGkubnVnZXQub3JnL3YzL2luZGV4Lmpzb24iIHRoZW4KcC5lcnJvcigiRmFpbGVkIHRvIHVuZGVyc3RhbmQgTnVHZXQgQVBJIHJlc3BvbnNlIChubyBDYXRhbG9nIHJlc291cmNlKSIpCmVsc2UKcC5lcnJvcigiUGFja2FnZSBzb3VyY2UgaXMgbm90IGEgTnVHZXQgZ2FsbGVyeSAtIG5vbi1nYWxsZXJ5IHNvdXJjZXMgYXJlIGN1cnJlbnRseSB1bnN1cHBvcnRlZCIsIHByai5udWdldHNvdXJjZSwgcHJqLm5hbWUpCmVuZAplbmQKcGFja2FnZVNvdXJjZUluZm8ucGFja2FnZURpc3BsYXlNZXRhZGF0YVVyaVRlbXBsYXRlID0gcGFja2FnZURpc3BsYXlNZXRhZGF0YVVyaVRlbXBsYXRlCnBhY2thZ2VTb3VyY2VJbmZvLmNhdGFsb2cgPSBjYXRhbG9nCnBhY2thZ2VTb3VyY2VJbmZvc1twcmoubnVnZXRzb3VyY2VdID0gcGFja2FnZVNvdXJjZUluZm8KZW5kCmxvY2FsIHBhY2thZ2VBUElJbmZvID0ge30KcHJpbnRmKCJFeGFtaW5pbmcgTnVHZXQgcGFja2FnZSAnJXMnLi4uIiwgaWQpCmlvLmZsdXNoKCkKbG9jYWwgcmVzcG9uc2UsIGVyciwgY29kZSA9IGh0dHAuZ2V0KHBhY2thZ2VTb3VyY2VJbmZvc1twcmoubnVnZXRzb3VyY2VdLnBhY2thZ2VEaXNwbGF5TWV0YWRhdGFVcmlUZW1wbGF0ZVsiQGlkIl06Z3N1Yigie2lkJS1sb3dlcn0iLCBpZDpsb3dlcigpKSkKaWYgZXJyIH49ICJPSyIgdGhlbgppZiBjb2RlID09IDQwNCB0aGVuCnAuZXJyb3IoIk51R2V0IHBhY2thZ2UgJyVzJyBmb3IgcHJvamVjdCAnJXMnIGNvdWxkbid0IGJlIGZvdW5kIGluIHRoZSByZXBvc2l0b3J5IiwgaWQsIHByai5uYW1lKQplbHNlCnAuZXJyb3IoIk51R2V0IEFQSSBlcnJvciAoJWQpXG4lcyIsIGNvZGUsIGVycikKZW5kCmVuZApyZXNwb25zZSwgZXJyID0ganNvbi5kZWNvZGUocmVzcG9uc2UpCmlmIG5vdCByZXNwb25zZSB0aGVuCnAuZXJyb3IoIkZhaWxlZCB0byBkZWNvZGUgTnVHZXQgQVBJIHJlc3BvbnNlICglcykiLCBlcnIpCmVuZAppZiBub3QgcmVzcG9uc2UuaXRlbXMgb3IgI3Jlc3BvbnNlLml0ZW1zID09IDAgdGhlbgpwLmVycm9yKCJGYWlsZWQgdG8gdW5kZXJzdGFuZCBOdUdldCBBUEkgcmVzcG9uc2UgKG5vIHBhZ2VzIGZvciBwYWNrYWdlICclcycpIiwgaWQpCmVuZApsb2NhbCBpdGVtcyA9IHt9CmZvciBfLCBwYWdlIGluIGlwYWlycyhyZXNwb25zZS5pdGVtcykgZG8KaWYgbm90IHBhZ2UuaXRlbXMgb3IgI3BhZ2UuaXRlbXMgPT0gMCB0aGVuCnAuZXJyb3IoIkZhaWxlZCB0byB1bmRlcnN0YW5kIE51R2V0IEFQSSByZXNwb25zZSAoZ290IGEgcGFnZSB3aXRoIG5vIGl0ZW1zIGZvciBwYWNrYWdlICclcycpIiwgaWQpCmVuZApmb3IgXywgaXRlbSBpbiBpcGFpcnMocGFnZS5pdGVtcykgZG8KdGFibGUuaW5zZXJ0KGl0ZW1zLCBpdGVtKQplbmQKZW5kCmxvY2FsIHZlcnNpb25zID0ge30KZm9yIF8sIGl0ZW0gaW4gaXBhaXJzKGl0ZW1zKSBkbwppZiBub3QgaXRlbS5jYXRhbG9nRW50cnkgdGhlbgpwLmVycm9yKCJGYWlsZWQgdG8gdW5kZXJzdGFuZCBOdUdldCBBUEkgcmVzcG9uc2UgKHN1Yml0ZW0gb2YgcGFja2FnZSAnJXMnIGhhcyBubyBjYXRhbG9nRW50cnkpIiwgaWQpCmVuZAppZiBub3QgaXRlbS5jYXRhbG9nRW50cnkudmVyc2lvbiB0aGVuCnAuZXJyb3IoIkZhaWxlZCB0byB1bmRlcnN0YW5kIE51R2V0IEFQSSByZXNwb25zZSAoc3ViaXRlbSBvZiBwYWNrYWdlICclcycgaGFzIG5vIGNhdGFsb2dFbnRyeS52ZXJzaW9uKSIsIGlkKQplbmQKaWYgbm90IGl0ZW0uY2F0YWxvZ0VudHJ5WyJAaWQiXSB0aGVuCnAuZXJyb3IoIkZhaWxlZCB0byB1bmRlcnN0YW5kIE51R2V0IEFQSSByZXNwb25zZSAoc3ViaXRlbSBvZiBwYWNrYWdlICclcycgaGFzIG5vIGNhdGFsb2dFbnRyeVsnQGlkJ10pIiwgaWQpCmVuZAp0YWJsZS5pbnNlcnQodmVyc2lvbnMsIGl0ZW0uY2F0YWxvZ0VudHJ5LnZlcnNpb24pCmVuZAppZiBub3QgdGFibGUuY29udGFpbnModmVyc2lvbnMsIHZlcnNpb24pIHRoZW4KbG9jYWwgb3B0aW9ucyA9IHRhYmxlLnRyYW5zbGF0ZSh2ZXJzaW9ucywgZnVuY3Rpb24odmFsdWUpIHJldHVybiAiJyIgLi4gdmFsdWUgLi4gIiciIGVuZCkKb3B0aW9ucyA9IHRhYmxlLmNvbmNhdChvcHRpb25zLCAiLCAiKQpwLmVycm9yKCInJXMnIGlzIG5vdCBhIHZhbGlkIHZlcnNpb24gZm9yIE51R2V0IHBhY2thZ2UgJyVzJyAob3B0aW9ucyBhcmU6ICVzKSIsIHZlcnNpb24sIGlkLCBvcHRpb25zKQplbmQKZm9yIF8sIGl0ZW0gaW4gaXBhaXJzKGl0ZW1zKSBkbwppZiBpdGVtLmNhdGFsb2dFbnRyeS52ZXJzaW9uID09IHZlcnNpb24gdGhlbgpsb2NhbCByZXNwb25zZSwgZXJyLCBjb2RlID0gaHR0cC5nZXQoaXRlbS5jYXRhbG9nRW50cnlbIkBpZCJdKQppZiBlcnIgfj0gIk9LIiB0aGVuCmlmIGNvZGUgPT0gNDA0IHRoZW4KcC5lcnJvcigiTnVHZXQgcGFja2FnZSAnJXMnIHZlcnNpb24gJyVzJyBjb3VsZG4ndCBiZSBmb3VuZCBpbiB0aGUgcmVwb3NpdG9yeSBldmVuIHRob3VnaCB0aGUgQVBJIHJlcG9ydGVkIHRoYXQgaXQgZXhpc3RzIiwgaWQsIHZlcnNpb24pCmVsc2UKcC5lcnJvcigiTnVHZXQgQVBJIGVycm9yICglZClcbiVzIiwgY29kZSwgZXJyKQplbmQKZW5kCnJlc3BvbnNlLCBlcnIgPSBqc29uLmRlY29kZShyZXNwb25zZSkKaWYgbm90IHJlc3BvbnNlIHRoZW4KcC5lcnJvcigiRmFpbGVkIHRvIGRlY29kZSBOdUdldCBBUEkgcmVzcG9uc2UgKCVzKSIsIGVycikKZW5kCmlmIG5vdCByZXNwb25zZS52ZXJiYXRpbVZlcnNpb24gYW5kIG5vdCByZXNwb25zZS52ZXJzaW9uIHRoZW4KcC5lcnJvcigiRmFpbGVkIHRvIHVuZGVyc3RhbmQgTnVHZXQgQVBJIHJlc3BvbnNlIChwYWNrYWdlICclcycgdmVyc2lvbiAnJXMnIGhhcyBubyB2ZXJiYXRpbVZlcnNpb24gb3IgdmVyc2lvbikiLCBpZCwgdmVyc2lvbikKZW5kCnBhY2thZ2VBUElJbmZvLnZlcmJhdGltVmVyc2lvbiA9IHJlc3BvbnNlLnZlcmJhdGltVmVyc2lvbgpwYWNrYWdlQVBJSW5mby52ZXJzaW9uID0gcmVzcG9uc2UudmVyc2lvbgppZiBwcmoubGFuZ3VhZ2UgPT0gIkMjIiBhbmQgbm90IHJlc3BvbnNlLnBhY2thZ2VFbnRyaWVzIHRoZW4KcC5lcnJvcigiTnVHZXQgcGFja2FnZSAnJXMnIHZlcnNpb24gJyVzJyBoYXMgbm8gZmlsZSBsaXN0aW5nLiBUaGlzIHBhY2thZ2UgbWlnaHQgYmUgdG9vIG9sZCB0byBiZSB1c2luZyB0aGlzIEFQSSBvciBpdCBtaWdodCBiZSBhIEMrKyBwYWNrYWdlIGluc3RlYWQgb2YgYSAuTkVUIEZyYW1ld29yayBwYWNrYWdlLiIsIGlkLCByZXNwb25zZS52ZXJzaW9uKQplbmQKaWYgcHJqLmxhbmd1YWdlID09ICJDIyIgdGhlbgpwYWNrYWdlQVBJSW5mby5wYWNrYWdlRW50cmllcyA9IHt9CmZvciBfLCBpdGVtIGluIGlwYWlycyhyZXNwb25zZS5wYWNrYWdlRW50cmllcykgZG8KaWYgbm90IGl0ZW0uZnVsbE5hbWUgdGhlbgpwLmVycm9yKCJGYWlsZWQgdG8gdW5kZXJzdGFuZCBOdUdldCBBUEkgcmVzcG9uc2UgKHBhY2thZ2UgJyVzJyB2ZXJzaW9uICclcycgcGFja2FnZUVudHJ5IGhhcyBubyBmdWxsTmFtZSkiLCBpZCwgdmVyc2lvbikKZW5kCnRhYmxlLmluc2VydChwYWNrYWdlQVBJSW5mby5wYWNrYWdlRW50cmllcywgcGF0aC50cmFuc2xhdGUoaXRlbS5mdWxsTmFtZSkpCmVuZAppZiAjcGFja2FnZUFQSUluZm8ucGFja2FnZUVudHJpZXMgPT0gMCB0aGVuCnAuZXJyb3IoIk51R2V0IHBhY2thZ2UgJyVzJyBmaWxlIGxpc3RpbmcgaXMgZW1wdHkiLCBpZCkKZW5kCmlmIHJlc3BvbnNlLmZyYW1ld29ya0Fzc2VtYmx5R3JvdXAgdGhlbgpwLndhcm4oIk51R2V0IHBhY2thZ2UgJyVzJyBtYXkgZGVwZW5kIG9uIC5ORVQgRnJhbWV3b3JrIGFzc2VtYmxpZXMgLSBwYWNrYWdlIGRlcGVuZGVuY2llcyBhcmUgY3VycmVudGx5IHVuaW1wbGVtZW50ZWQiLCBpZCkKZW5kCmVuZAppZiByZXNwb25zZS5kZXBlbmRlbmN5R3JvdXBzIHRoZW4KcC53YXJuKCJOdUdldCBwYWNrYWdlICclcycgbWF5IGRlcGVuZCBvbiBvdGhlciBwYWNrYWdlcyAtIHBhY2thZ2UgZGVwZW5kZW5jaWVzIGFyZSBjdXJyZW50bHkgdW5pbXBsZW1lbnRlZCIsIGlkKQplbmQKYnJlYWsKZW5kCmVuZApwYWNrYWdlQVBJSW5mb3NbcGFja2FnZV0gPSBwYWNrYWdlQVBJSW5mbwplbmQKcmV0dXJuIHBhY2thZ2VBUElJbmZvc1twYWNrYWdlXQplbmQKZnVuY3Rpb24gbnVnZXQyMDEwLmdlbmVyYXRlUGFja2FnZXNDb25maWcocHJqKQppZiAjcHJqLm51Z2V0ID4gMCB0aGVuCnAudygnPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4nKQpwLnB1c2goJzxwYWNrYWdlcz4nKQpmb3IgXywgcGFja2FnZSBpbiBpcGFpcnMocHJqLm51Z2V0KSBkbwpwLngoJzxwYWNrYWdlIGlkPSIlcyIgdmVyc2lvbj0iJXMiIHRhcmdldEZyYW1ld29yaz0iJXMiIC8+JywgbnVnZXQyMDEwLnBhY2thZ2VJZChwYWNrYWdlKSwgbnVnZXQyMDEwLnBhY2thZ2VWZXJzaW9uKHBhY2thZ2UpLCBudWdldDIwMTAucGFja2FnZUZyYW1ld29yayhwcmopKQplbmQKcC5wb3AoJzwvcGFja2FnZXM+JykKZW5kCmVuZApmdW5jdGlvbiBudWdldDIwMTAuZ2VuZXJhdGVOdUdldENvbmZpZyhwcmopCmlmICNwcmoubnVnZXQgPT0gMCB0aGVuCnJldHVybgplbmQKaWYgcHJqLm51Z2V0c291cmNlID09ICJodHRwczovL2FwaS5udWdldC5vcmcvdjMvaW5kZXguanNvbiIgdGhlbgpyZXR1cm4KZW5kCnAudygnPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4nKQpwLnB1c2goJzxjb25maWd1cmF0aW9uPicpCnAucHVzaCgnPHBhY2thZ2VTb3VyY2VzPicpCnAueCgnPGNsZWFyIC8+JykKcC54KCc8YWRkIGtleT0iJXMiIHZhbHVlPSIlcyIgLz4nLCBwcmoubnVnZXRzb3VyY2UsIHByai5udWdldHNvdXJjZSkKcC5wb3AoJzwvcGFja2FnZVNvdXJjZXM+JykKcC5wb3AoJzwvY29uZmlndXJhdGlvbj4nKQplbmQKbG9jYWwgcCA9IHByZW1ha2UKcC52c3R1ZGlvLnZjMjAxMCA9IHt9CmxvY2FsIHZzdHVkaW8gPSBwLnZzdHVkaW8KbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApsb2NhbCBjb25maWcgPSBwLmNvbmZpZwpsb2NhbCBmaWxlY29uZmlnID0gcC5maWxlY29uZmlnCmxvY2FsIHRyZWUgPSBwLnRyZWUKbG9jYWwgbSA9IHAudnN0dWRpby52YzIwMTAKbS5lbGVtZW50cyA9IHt9Cm0uY29uZGl0aW9uYWxFbGVtZW50cyA9IHt9Cm0uZWxlbWVudHMucHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcmV0dXJuIHsKbS54bWxEZWNsYXJhdGlvbiwKbS5wcm9qZWN0LAptLnByb2plY3RDb25maWd1cmF0aW9ucywKbS5nbG9iYWxzLAptLmltcG9ydERlZmF1bHRQcm9wcywKbS5jb25maWd1cmF0aW9uUHJvcGVydGllc0dyb3VwLAptLmltcG9ydExhbmd1YWdlU2V0dGluZ3MsCm0uaW1wb3J0RXh0ZW5zaW9uU2V0dGluZ3MsCm0ucHJvcGVydHlTaGVldEdyb3VwLAptLnVzZXJNYWNyb3MsCm0ub3V0cHV0UHJvcGVydGllc0dyb3VwLAptLml0ZW1EZWZpbml0aW9uR3JvdXBzLAptLmFzc2VtYmx5UmVmZXJlbmNlcywKbS5maWxlcywKbS5wcm9qZWN0UmVmZXJlbmNlcywKbS5pbXBvcnRMYW5ndWFnZVRhcmdldHMsCm0uaW1wb3J0RXh0ZW5zaW9uVGFyZ2V0cywKbS5lbnN1cmVOdUdldFBhY2thZ2VCdWlsZEltcG9ydHMsCn0KZW5kCmZ1bmN0aW9uIG0uZ2VuZXJhdGUocHJqKQpwLnV0ZjgoKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLnByb2plY3QsIHByaikKcC5vdXQoJzwvUHJvamVjdD4nKQplbmQKZnVuY3Rpb24gbS5wcm9qZWN0KHByaikKbG9jYWwgYWN0aW9uID0gcC5hY3Rpb24uY3VycmVudCgpCnAucHVzaCgnPFByb2plY3QgRGVmYXVsdFRhcmdldHM9IkJ1aWxkIiBUb29sc1ZlcnNpb249IiVzIiB4bWxucz0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9kZXZlbG9wZXIvbXNidWlsZC8yMDAzIj4nLAphY3Rpb24udnN0dWRpby50b29sc1ZlcnNpb24pCmVuZApmdW5jdGlvbiBtLnByb2plY3RDb25maWd1cmF0aW9ucyhwcmopCmxvY2FsIHBsYXRmb3JtcyA9IHt9CmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgYXJjaCA9IHZzdHVkaW8uYXJjaEZyb21Db25maWcoY2ZnLCB0cnVlKQppZiBub3QgdGFibGUuY29udGFpbnMocGxhdGZvcm1zLCBhcmNoKSB0aGVuCnRhYmxlLmluc2VydChwbGF0Zm9ybXMsIGFyY2gpCmVuZAplbmQKbG9jYWwgY29uZmlncyA9IHt9CnAucHVzaCgnPEl0ZW1Hcm91cCBMYWJlbD0iUHJvamVjdENvbmZpZ3VyYXRpb25zIj4nKQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmZvciBfLCBhcmNoIGluIGlwYWlycyhwbGF0Zm9ybXMpIGRvCmxvY2FsIHByamNmZyA9IHZzdHVkaW8ucHJvamVjdENvbmZpZyhjZmcsIGFyY2gpCmlmIG5vdCBjb25maWdzW3ByamNmZ10gdGhlbgpjb25maWdzW3ByamNmZ10gPSBwcmpjZmcKcC5wdXNoKCc8UHJvamVjdENvbmZpZ3VyYXRpb24gSW5jbHVkZT0iJXMiPicsIHZzdHVkaW8ucHJvamVjdENvbmZpZyhjZmcsIGFyY2gpKQpwLngoJzxDb25maWd1cmF0aW9uPiVzPC9Db25maWd1cmF0aW9uPicsIHZzdHVkaW8ucHJvamVjdFBsYXRmb3JtKGNmZykpCnAudygnPFBsYXRmb3JtPiVzPC9QbGF0Zm9ybT4nLCBhcmNoKQpwLnBvcCgnPC9Qcm9qZWN0Q29uZmlndXJhdGlvbj4nKQplbmQKZW5kCmVuZApwLnBvcCgnPC9JdGVtR3JvdXA+JykKZW5kCmZ1bmN0aW9uIG0udGFyZ2V0RnJhbWV3b3JrKHByaikKbG9jYWwgYWN0aW9uID0gcC5hY3Rpb24uY3VycmVudCgpCmxvY2FsIHRvb2xzID0gc3RyaW5nLmZvcm1hdCgnIFRvb2xzVmVyc2lvbj0iJXMiJywgYWN0aW9uLnZzdHVkaW8udG9vbHNWZXJzaW9uKQpsb2NhbCBmcmFtZXdvcmsgPSBwcmouZG90bmV0ZnJhbWV3b3JrIG9yIGFjdGlvbi52c3R1ZGlvLnRhcmdldEZyYW1ld29yayBvciAiNC4wIgpwLncoJzxUYXJnZXRGcmFtZXdvcmtWZXJzaW9uPnYlczwvVGFyZ2V0RnJhbWV3b3JrVmVyc2lvbj4nLCBmcmFtZXdvcmspCmVuZAptLmVsZW1lbnRzLmdsb2JhbHMgPSBmdW5jdGlvbihwcmopCnJldHVybiB7Cm0ucHJvamVjdEd1aWQsCm0uaWdub3JlV2FybkR1cGxpY2F0ZUZpbGVuYW1lLAptLmtleXdvcmQsCm0ucHJvamVjdE5hbWUsCm0udGFyZ2V0UGxhdGZvcm1WZXJzaW9uLAptLnByZWZlcnJlZFRvb2xBcmNoaXRlY3R1cmUKfQplbmQKZnVuY3Rpb24gbS5nbG9iYWxzKHByaikKbS5wcm9wZXJ0eUdyb3VwKG5pbCwgIkdsb2JhbHMiKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLmdsb2JhbHMsIHByaikKcC5wb3AoJzwvUHJvcGVydHlHcm91cD4nKQplbmQKbS5lbGVtZW50cy5jb25maWd1cmF0aW9uUHJvcGVydGllcyA9IGZ1bmN0aW9uKGNmZykKaWYgY2ZnLmtpbmQgPT0gcC5VVElMSVRZIHRoZW4KcmV0dXJuIHsKbS5jb25maWd1cmF0aW9uVHlwZSwKbS5wbGF0Zm9ybVRvb2xzZXQsCn0KZWxzZQpyZXR1cm4gewptLmNvbmZpZ3VyYXRpb25UeXBlLAptLnVzZURlYnVnTGlicmFyaWVzLAptLnVzZU9mTWZjLAptLnVzZU9mQXRsLAptLmNsclN1cHBvcnQsCm0uY2hhcmFjdGVyU2V0LAptLnBsYXRmb3JtVG9vbHNldCwKbS53aG9sZVByb2dyYW1PcHRpbWl6YXRpb24sCm0ubm1ha2VPdXREaXJzLAptLndpbmRvd3NTREtEZXNrdG9wQVJNU3VwcG9ydCwKfQplbmQKZW5kCmZ1bmN0aW9uIG0uY29uZmlndXJhdGlvblByb3BlcnRpZXMoY2ZnKQptLnByb3BlcnR5R3JvdXAoY2ZnLCAiQ29uZmlndXJhdGlvbiIpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMuY29uZmlndXJhdGlvblByb3BlcnRpZXMsIGNmZykKcC5wb3AoJzwvUHJvcGVydHlHcm91cD4nKQplbmQKZnVuY3Rpb24gbS5jb25maWd1cmF0aW9uUHJvcGVydGllc0dyb3VwKHByaikKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwptLmNvbmZpZ3VyYXRpb25Qcm9wZXJ0aWVzKGNmZykKZW5kCmVuZAptLmVsZW1lbnRzLm91dHB1dFByb3BlcnRpZXMgPSBmdW5jdGlvbihjZmcpCmlmIGNmZy5raW5kID09IHAuVVRJTElUWSB0aGVuCnJldHVybiB7Cm0ub3V0RGlyLAptLmludERpciwKbS5leHRlbnNpb25zVG9EZWxldGVPbkNsZWFuLAp9CmVsc2UKcmV0dXJuIHsKbS5saW5rSW5jcmVtZW50YWwsCm0uaWdub3JlSW1wb3J0TGlicmFyeSwKbS5vdXREaXIsCm0ub3V0cHV0RmlsZSwKbS5pbnREaXIsCm0udGFyZ2V0TmFtZSwKbS50YXJnZXRFeHQsCm0uaW5jbHVkZVBhdGgsCm0ubGlicmFyeVBhdGgsCm0uaW1hZ2VYZXhPdXRwdXQsCm0uZ2VuZXJhdGVNYW5pZmVzdCwKbS5leHRlbnNpb25zVG9EZWxldGVPbkNsZWFuLAptLmV4ZWN1dGFibGVQYXRoLAp9CmVuZAplbmQKZnVuY3Rpb24gbS5vdXRwdXRQcm9wZXJ0aWVzKGNmZykKaWYgbm90IHZzdHVkaW8uaXNNYWtlZmlsZShjZmcpIHRoZW4KbS5wcm9wZXJ0eUdyb3VwKGNmZykKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5vdXRwdXRQcm9wZXJ0aWVzLCBjZmcpCnAucG9wKCc8L1Byb3BlcnR5R3JvdXA+JykKZW5kCmVuZAptLmVsZW1lbnRzLm5tYWtlUHJvcGVydGllcyA9IGZ1bmN0aW9uKGNmZykKcmV0dXJuIHsKbS5ubWFrZU91dHB1dCwKbS5ubWFrZUJ1aWxkQ29tbWFuZHMsCm0ubm1ha2VSZWJ1aWxkQ29tbWFuZHMsCm0ubm1ha2VDbGVhbkNvbW1hbmRzLAptLm5tYWtlUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMsCm0ubm1ha2VJbmNsdWRlRGlycwp9CmVuZApmdW5jdGlvbiBtLm5tYWtlUHJvcGVydGllcyhjZmcpCmlmIHZzdHVkaW8uaXNNYWtlZmlsZShjZmcpIHRoZW4KbS5wcm9wZXJ0eUdyb3VwKGNmZykKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5ubWFrZVByb3BlcnRpZXMsIGNmZykKcC5wb3AoJzwvUHJvcGVydHlHcm91cD4nKQplbmQKZW5kCmZ1bmN0aW9uIG0ub3V0cHV0UHJvcGVydGllc0dyb3VwKHByaikKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwptLm91dHB1dFByb3BlcnRpZXMoY2ZnKQptLm5tYWtlUHJvcGVydGllcyhjZmcpCmVuZAplbmQKbS5lbGVtZW50cy5pdGVtRGVmaW5pdGlvbkdyb3VwID0gZnVuY3Rpb24oY2ZnKQppZiBjZmcua2luZCA9PSBwLlVUSUxJVFkgdGhlbgpyZXR1cm4gewptLnJ1bGVWYXJzLAptLmJ1aWxkRXZlbnRzLAptLmJ1aWxkTG9nLAp9CmVsc2UKcmV0dXJuIHsKbS5jbENvbXBpbGUsCm0ucmVzb3VyY2VDb21waWxlLAptLmxpbmtlciwKbS5tYW5pZmVzdCwKbS5idWlsZEV2ZW50cywKbS5pbWFnZVhleCwKbS5kZXBsb3ksCm0ucnVsZVZhcnMsCm0uYnVpbGRMb2csCn0KZW5kCmVuZApmdW5jdGlvbiBtLml0ZW1EZWZpbml0aW9uR3JvdXAoY2ZnKQppZiBub3QgdnN0dWRpby5pc01ha2VmaWxlKGNmZykgdGhlbgpwLnB1c2goJzxJdGVtRGVmaW5pdGlvbkdyb3VwICVzPicsIG0uY29uZGl0aW9uKGNmZykpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMuaXRlbURlZmluaXRpb25Hcm91cCwgY2ZnKQpwLnBvcCgnPC9JdGVtRGVmaW5pdGlvbkdyb3VwPicpCmVsc2UKaWYgY2ZnID09IHByb2plY3QuZ2V0Zmlyc3Rjb25maWcoY2ZnLnByb2plY3QpIHRoZW4KcC53KCc8SXRlbURlZmluaXRpb25Hcm91cD4nKQpwLncoJzwvSXRlbURlZmluaXRpb25Hcm91cD4nKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLml0ZW1EZWZpbml0aW9uR3JvdXBzKHByaikKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwptLml0ZW1EZWZpbml0aW9uR3JvdXAoY2ZnKQplbmQKZW5kCm0uZWxlbWVudHMuY2xDb21waWxlID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4gewptLnByZWNvbXBpbGVkSGVhZGVyLAptLndhcm5pbmdMZXZlbCwKbS50cmVhdFdhcm5pbmdBc0Vycm9yLAptLmRpc2FibGVTcGVjaWZpY1dhcm5pbmdzLAptLnRyZWF0U3BlY2lmaWNXYXJuaW5nc0FzRXJyb3JzLAptLmJhc2ljUnVudGltZUNoZWNrcywKbS5jbENvbXBpbGVQcmVwcm9jZXNzb3JEZWZpbml0aW9ucywKbS5jbENvbXBpbGVVbmRlZmluZVByZXByb2Nlc3NvckRlZmluaXRpb25zLAptLmNsQ29tcGlsZUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXMsCm0uY2xDb21waWxlQWRkaXRpb25hbFVzaW5nRGlyZWN0b3JpZXMsCm0uZm9yY2VJbmNsdWRlcywKbS5kZWJ1Z0luZm9ybWF0aW9uRm9ybWF0LAptLm9wdGltaXphdGlvbiwKbS5mdW5jdGlvbkxldmVsTGlua2luZywKbS5pbnRyaW5zaWNGdW5jdGlvbnMsCm0ubWluaW1hbFJlYnVpbGQsCm0ub21pdEZyYW1lUG9pbnRlcnMsCm0uc3RyaW5nUG9vbGluZywKbS5ydW50aW1lTGlicmFyeSwKbS5vbWl0RGVmYXVsdExpYiwKbS5leGNlcHRpb25IYW5kbGluZywKbS5ydW50aW1lVHlwZUluZm8sCm0uYnVmZmVyU2VjdXJpdHlDaGVjaywKbS50cmVhdFdDaGFyX3RBc0J1aWx0SW5UeXBlLAptLmZsb2F0aW5nUG9pbnRNb2RlbCwKbS5mbG9hdGluZ1BvaW50RXhjZXB0aW9ucywKbS5pbmxpbmVGdW5jdGlvbkV4cGFuc2lvbiwKbS5lbmFibGVFbmhhbmNlZEluc3RydWN0aW9uU2V0LAptLm11bHRpUHJvY2Vzc29yQ29tcGlsYXRpb24sCm0uYWRkaXRpb25hbENvbXBpbGVPcHRpb25zLAptLmNvbXBpbGVBcywKbS5jYWxsaW5nQ29udmVudGlvbiwKbS5sYW5ndWFnZVN0YW5kYXJkLAp9CmVuZApmdW5jdGlvbiBtLmNsQ29tcGlsZShjZmcpCnAucHVzaCgnPENsQ29tcGlsZT4nKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLmNsQ29tcGlsZSwgY2ZnKQpwLnBvcCgnPC9DbENvbXBpbGU+JykKZW5kCm0uZWxlbWVudHMucmVzb3VyY2VDb21waWxlID0gZnVuY3Rpb24oY2ZnKQpyZXR1cm4gewptLnJlc291cmNlUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMsCm0ucmVzb3VyY2VBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzLAptLmN1bHR1cmUsCn0KZW5kCmZ1bmN0aW9uIG0ucmVzb3VyY2VDb21waWxlKGNmZykKaWYgY2ZnLnN5c3RlbSB+PSBwLlhCT1gzNjAgYW5kIHAuY29uZmlnLmhhc0ZpbGUoY2ZnLCBwYXRoLmlzcmVzb3VyY2VmaWxlKSB0aGVuCmxvY2FsIGNvbnRlbnRzID0gcC5jYXB0dXJlKGZ1bmN0aW9uICgpCnAucHVzaCgpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMucmVzb3VyY2VDb21waWxlLCBjZmcpCnAucG9wKCkKZW5kKQppZiAjY29udGVudHMgPiAwIHRoZW4KcC5wdXNoKCc8UmVzb3VyY2VDb21waWxlPicpCnAub3V0bG4oY29udGVudHMpCnAucG9wKCc8L1Jlc291cmNlQ29tcGlsZT4nKQplbmQKZW5kCmVuZAptLmVsZW1lbnRzLmxpbmtlciA9IGZ1bmN0aW9uKGNmZywgZXhwbGljaXQpCnJldHVybiB7Cm0ubGluaywKbS5saWIsCm0ubGlua0xpYnJhcnlEZXBlbmRlbmNpZXMsCn0KZW5kCmZ1bmN0aW9uIG0ubGlua2VyKGNmZykKbG9jYWwgZXhwbGljaXQgPSB2c3R1ZGlvLm5lZWRzRXhwbGljaXRMaW5rKGNmZykKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5saW5rZXIsIGNmZywgZXhwbGljaXQpCmVuZAptLmVsZW1lbnRzLmxpbmsgPSBmdW5jdGlvbihjZmcsIGV4cGxpY2l0KQppZiBjZmcua2luZCA9PSBwLlNUQVRJQ0xJQiB0aGVuCnJldHVybiB7Cm0uc3ViU3lzdGVtLAptLmZ1bGxQcm9ncmFtRGF0YWJhc2VGaWxlLAptLmdlbmVyYXRlRGVidWdJbmZvcm1hdGlvbiwKbS5vcHRpbWl6ZVJlZmVyZW5jZXMsCn0KZWxzZQpyZXR1cm4gewptLnN1YlN5c3RlbSwKbS5mdWxsUHJvZ3JhbURhdGFiYXNlRmlsZSwKbS5nZW5lcmF0ZURlYnVnSW5mb3JtYXRpb24sCm0ub3B0aW1pemVSZWZlcmVuY2VzLAptLmFkZGl0aW9uYWxEZXBlbmRlbmNpZXMsCm0uYWRkaXRpb25hbExpYnJhcnlEaXJlY3RvcmllcywKbS5pbXBvcnRMaWJyYXJ5LAptLmVudHJ5UG9pbnRTeW1ib2wsCm0uZ2VuZXJhdGVNYXBGaWxlLAptLm1vZHVsZURlZmluaXRpb25GaWxlLAptLnRyZWF0TGlua2VyV2FybmluZ0FzRXJyb3JzLAptLmlnbm9yZURlZmF1bHRMaWJyYXJpZXMsCm0ubGFyZ2VBZGRyZXNzQXdhcmUsCm0udGFyZ2V0TWFjaGluZSwKbS5hZGRpdGlvbmFsTGlua09wdGlvbnMsCm0ucHJvZ3JhbURhdGFiYXNlRmlsZSwKfQplbmQKZW5kCmZ1bmN0aW9uIG0ubGluayhjZmcsIGV4cGxpY2l0KQpsb2NhbCBjb250ZW50cyA9IHAuY2FwdHVyZShmdW5jdGlvbiAoKQpwLnB1c2goKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLmxpbmssIGNmZywgZXhwbGljaXQpCnAucG9wKCkKZW5kKQppZiAjY29udGVudHMgPiAwIHRoZW4KcC5wdXNoKCc8TGluaz4nKQpwLm91dGxuKGNvbnRlbnRzKQpwLnBvcCgnPC9MaW5rPicpCmVuZAplbmQKbS5lbGVtZW50cy5saWIgPSBmdW5jdGlvbihjZmcsIGV4cGxpY2l0KQppZiBjZmcua2luZCA9PSBwLlNUQVRJQ0xJQiB0aGVuCnJldHVybiB7Cm0uYWRkaXRpb25hbERlcGVuZGVuY2llcywKbS5hZGRpdGlvbmFsTGlicmFyeURpcmVjdG9yaWVzLAptLnRyZWF0TGlua2VyV2FybmluZ0FzRXJyb3JzLAptLnRhcmdldE1hY2hpbmUsCm0uYWRkaXRpb25hbExpbmtPcHRpb25zLAp9CmVsc2UKcmV0dXJuIHt9CmVuZAplbmQKZnVuY3Rpb24gbS5saWIoY2ZnLCBleHBsaWNpdCkKbG9jYWwgY29udGVudHMgPSBwLmNhcHR1cmUoZnVuY3Rpb24gKCkKcC5wdXNoKCkKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5saWIsIGNmZywgZXhwbGljaXQpCnAucG9wKCkKZW5kKQppZiAjY29udGVudHMgPiAwIHRoZW4KcC5wdXNoKCc8TGliPicpCnAub3V0bG4oY29udGVudHMpCnAucG9wKCc8L0xpYj4nKQplbmQKZW5kCmZ1bmN0aW9uIG0ubWFuaWZlc3QoY2ZnKQppZiBjZmcua2luZCB+PSBwLlNUQVRJQ0xJQiB0aGVuCmxvY2FsIG1hbmlmZXN0cyA9IHt9CmZvciBfLCBmbmFtZSBpbiBpcGFpcnMoY2ZnLmZpbGVzKSBkbwppZiBwYXRoLmdldGV4dGVuc2lvbihmbmFtZSkgPT0gIi5tYW5pZmVzdCIgdGhlbgp0YWJsZS5pbnNlcnQobWFuaWZlc3RzLCBwcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBmbmFtZSkpCmVuZAplbmQKaWYgI21hbmlmZXN0cyA+IDAgdGhlbgpwLnB1c2goJzxNYW5pZmVzdD4nKQptLmVsZW1lbnQoIkFkZGl0aW9uYWxNYW5pZmVzdEZpbGVzIiwgbmlsLCAiJXMgJSUoQWRkaXRpb25hbE1hbmlmZXN0RmlsZXMpIiwgdGFibGUuY29uY2F0KG1hbmlmZXN0cywgIiAiKSkKcC5wb3AoJzwvTWFuaWZlc3Q+JykKZW5kCmVuZAplbmQKZnVuY3Rpb24gbS5idWlsZEV2ZW50cyhjZmcpCmxvY2FsIHdyaXRlID0gZnVuY3Rpb24gKGV2ZW50KQpsb2NhbCBuYW1lID0gZXZlbnQgLi4gIkV2ZW50Igpsb2NhbCBmaWVsZCA9IGV2ZW50Omxvd2VyKCkKbG9jYWwgc3RlcHMgPSBjZmdbZmllbGQgLi4gImNvbW1hbmRzIl0KbG9jYWwgbXNnID0gY2ZnW2ZpZWxkIC4uICJtZXNzYWdlIl0KaWYgI3N0ZXBzID4gMCB0aGVuCnN0ZXBzID0gb3MudHJhbnNsYXRlQ29tbWFuZHNBbmRQYXRocyhzdGVwcywgY2ZnLnByb2plY3QuYmFzZWRpciwgY2ZnLnByb2plY3QubG9jYXRpb24pCnAucHVzaCgnPCVzPicsIG5hbWUpCnAueCgnPENvbW1hbmQ+JXM8L0NvbW1hbmQ+JywgdGFibGUuaW1wbG9kZShzdGVwcywgIiIsICIiLCAiXHJcbiIpKQppZiBtc2cgdGhlbgpwLngoJzxNZXNzYWdlPiVzPC9NZXNzYWdlPicsIG1zZykKZW5kCnAucG9wKCc8LyVzPicsIG5hbWUpCmVuZAplbmQKd3JpdGUoIlByZUJ1aWxkIikKd3JpdGUoIlByZUxpbmsiKQp3cml0ZSgiUG9zdEJ1aWxkIikKZW5kCmZ1bmN0aW9uIG0ucnVsZVZhcnMoY2ZnKQpmb3IgaSA9IDEsICNjZmcucnVsZXMgZG8KbG9jYWwgcnVsZSA9IHAuZ2xvYmFsLmdldFJ1bGUoY2ZnLnJ1bGVzW2ldKQpsb2NhbCBjb250ZW50cyA9IHAuY2FwdHVyZShmdW5jdGlvbiAoKQpwLnB1c2goKQpmb3IgcHJvcCBpbiBwLnJ1bGUuZWFjaFByb3BlcnR5KHJ1bGUpIGRvCmxvY2FsIGZsZCA9IHAucnVsZS5nZXRQcm9wZXJ0eUZpZWxkKHJ1bGUsIHByb3ApCmxvY2FsIHZhbHVlID0gY2ZnW2ZsZC5uYW1lXQppZiB2YWx1ZSB+PSBuaWwgdGhlbgppZiBmbGQua2luZCA9PSAibGlzdDpwYXRoIiB0aGVuCnZhbHVlID0gdGFibGUuY29uY2F0KHZzdHVkaW8ucGF0aChjZmcsIHZhbHVlKSwgJzsnKQplbHNlaWYgZmxkLmtpbmQgPT0gInBhdGgiIHRoZW4KdmFsdWUgPSB2c3R1ZGlvLnBhdGgoY2ZnLCB2YWx1ZSkKZWxzZQp2YWx1ZSA9IHAucnVsZS5nZXRQcm9wZXJ0eVN0cmluZyhydWxlLCBwcm9wLCB2YWx1ZSkKZW5kCmlmIHZhbHVlIH49IG5pbCBhbmQgI3ZhbHVlID4gMCB0aGVuCm0uZWxlbWVudChwcm9wLm5hbWUsIG5pbCwgJyVzJywgdmFsdWUpCmVuZAplbmQKZW5kCnAucG9wKCkKZW5kKQppZiAjY29udGVudHMgPiAwIHRoZW4KcC5wdXNoKCc8JXM+JywgcnVsZS5uYW1lKQpwLm91dGxuKGNvbnRlbnRzKQpwLnBvcCgnPC8lcz4nLCBydWxlLm5hbWUpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0uYXNzZW1ibHlSZWZlcmVuY2VzKHByaikKbG9jYWwgY2ZnID0gcHJvamVjdC5nZXRmaXJzdGNvbmZpZyhwcmopCmxvY2FsIHJlZnMgPSBjb25maWcuZ2V0bGlua3MoY2ZnLCAic3lzdGVtIiwgImZ1bGxwYXRoIiwgIm1hbmFnZWQiKQppZiAjcmVmcyA+IDAgdGhlbgpwLnB1c2goJzxJdGVtR3JvdXA+JykKZm9yIGkgPSAxLCAjcmVmcyBkbwpsb2NhbCB2YWx1ZSA9IHJlZnNbaV0KaWYgdmFsdWU6ZmluZCgnLycsIDEsIHRydWUpIHRoZW4KcC5wdXNoKCc8UmVmZXJlbmNlIEluY2x1ZGU9IiVzIj4nLCBwYXRoLmdldGJhc2VuYW1lKHZhbHVlKSkKcC54KCc8SGludFBhdGg+JXM8L0hpbnRQYXRoPicsIHBhdGgudHJhbnNsYXRlKHZhbHVlKSkKcC5wb3AoJzwvUmVmZXJlbmNlPicpCmVsc2UKcC54KCc8UmVmZXJlbmNlIEluY2x1ZGU9IiVzIiAvPicsIHBhdGguZ2V0YmFzZW5hbWUodmFsdWUpKQplbmQKZW5kCnAucG9wKCc8L0l0ZW1Hcm91cD4nKQplbmQKZW5kCmZ1bmN0aW9uIG0uZ2VuZXJhdGVkRmlsZShjZmcsIGZpbGUpCmlmIGZpbGUuZ2VuZXJhdGVkIHRoZW4KbG9jYWwgcGF0aCA9IHBhdGgudHJhbnNsYXRlKGZpbGUuZGVwZW5kc09uLnJlbHBhdGgpCm0uZWxlbWVudCgiQXV0b0dlbiIsIG5pbCwgJ3RydWUnKQptLmVsZW1lbnQoIkRlcGVuZGVudFVwb24iLCBuaWwsIHBhdGgpCmVuZAplbmQKZnVuY3Rpb24gbS5maWxlcyhwcmopCmxvY2FsIGdyb3VwcyA9IG0uY2F0ZWdvcml6ZVNvdXJjZXMocHJqKQpmb3IgXywgZ3JvdXAgaW4gaXBhaXJzKGdyb3VwcykgZG8KZ3JvdXAuY2F0ZWdvcnkuZW1pdEZpbGVzKHByaiwgZ3JvdXApCmVuZAplbmQKbS5jYXRlZ29yaWVzID0ge30KbS5jYXRlZ29yaWVzLkNsSW5jbHVkZSA9IHsKbmFtZSAgICAgICA9ICJDbEluY2x1ZGUiLApleHRlbnNpb25zID0geyAiLmgiLCAiLmhoIiwgIi5ocHAiLCAiLmh4eCIsICIuaW5sIiB9LApwcmlvcml0eSAgID0gMSwKZW1pdEZpbGVzID0gZnVuY3Rpb24ocHJqLCBncm91cCkKbS5lbWl0RmlsZXMocHJqLCBncm91cCwgIkNsSW5jbHVkZSIsIHttLmdlbmVyYXRlZEZpbGV9KQplbmQsCmVtaXRGaWx0ZXIgPSBmdW5jdGlvbihwcmosIGdyb3VwKQptLmZpbHRlckdyb3VwKHByaiwgZ3JvdXAsICJDbEluY2x1ZGUiKQplbmQKfQptLmNhdGVnb3JpZXMuQ2xDb21waWxlID0gewpuYW1lICAgICAgID0gIkNsQ29tcGlsZSIsCmV4dGVuc2lvbnMgPSB7ICIuY2MiLCAiLmNwcCIsICIuY3h4IiwgIi5jIiwgIi5zIiwgIi5tIiwgIi5tbSIgfSwKcHJpb3JpdHkgICA9IDIsCmVtaXRGaWxlcyA9IGZ1bmN0aW9uKHByaiwgZ3JvdXApCmxvY2FsIGZpbGVDZmdGdW5jID0gZnVuY3Rpb24oZmNmZywgY29uZGl0aW9uKQppZiBmY2ZnIHRoZW4KcmV0dXJuIHsKbS5leGNsdWRlZEZyb21CdWlsZCwKbS5vYmplY3RGaWxlTmFtZSwKbS5jbENvbXBpbGVQcmVwcm9jZXNzb3JEZWZpbml0aW9ucywKbS5jbENvbXBpbGVVbmRlZmluZVByZXByb2Nlc3NvckRlZmluaXRpb25zLAptLm9wdGltaXphdGlvbiwKbS5mb3JjZUluY2x1ZGVzLAptLnByZWNvbXBpbGVkSGVhZGVyLAptLmVuYWJsZUVuaGFuY2VkSW5zdHJ1Y3Rpb25TZXQsCm0uYWRkaXRpb25hbENvbXBpbGVPcHRpb25zLAptLmRpc2FibGVTcGVjaWZpY1dhcm5pbmdzLAptLnRyZWF0U3BlY2lmaWNXYXJuaW5nc0FzRXJyb3JzLAptLmJhc2ljUnVudGltZUNoZWNrcywKbS5leGNlcHRpb25IYW5kbGluZywKbS5jb21waWxlQXNNYW5hZ2VkLAptLnJ1bnRpbWVUeXBlSW5mbywKfQplbHNlCnJldHVybiB7Cm0uZXhjbHVkZWRGcm9tQnVpbGQKfQplbmQKZW5kCm0uZW1pdEZpbGVzKHByaiwgZ3JvdXAsICJDbENvbXBpbGUiLCB7bS5nZW5lcmF0ZWRGaWxlfSwgZmlsZUNmZ0Z1bmMpCmVuZCwKZW1pdEZpbHRlciA9IGZ1bmN0aW9uKHByaiwgZ3JvdXApCm0uZmlsdGVyR3JvdXAocHJqLCBncm91cCwgIkNsQ29tcGlsZSIpCmVuZAp9Cm0uY2F0ZWdvcmllcy5Ob25lID0gewpuYW1lID0gIk5vbmUiLApwcmlvcml0eSA9IDMsCmVtaXRGaWxlcyA9IGZ1bmN0aW9uKHByaiwgZ3JvdXApCm0uZW1pdEZpbGVzKHByaiwgZ3JvdXAsICJOb25lIiwge20uZ2VuZXJhdGVkRmlsZX0pCmVuZCwKZW1pdEZpbHRlciA9IGZ1bmN0aW9uKHByaiwgZ3JvdXApCm0uZmlsdGVyR3JvdXAocHJqLCBncm91cCwgIk5vbmUiKQplbmQKfQptLmNhdGVnb3JpZXMuUmVzb3VyY2VDb21waWxlID0gewpuYW1lICAgICAgID0gIlJlc291cmNlQ29tcGlsZSIsCmV4dGVuc2lvbnMgPSAiLnJjIiwKcHJpb3JpdHkgICA9IDQsCmVtaXRGaWxlcyA9IGZ1bmN0aW9uKHByaiwgZ3JvdXApCmxvY2FsIGZpbGVDZmdGdW5jID0gewptLmV4Y2x1ZGVkRnJvbUJ1aWxkCn0KbS5lbWl0RmlsZXMocHJqLCBncm91cCwgIlJlc291cmNlQ29tcGlsZSIsIG5pbCwgZmlsZUNmZ0Z1bmMsIGZ1bmN0aW9uKGNmZykKcmV0dXJuIGNmZy5zeXN0ZW0gPT0gcC5XSU5ET1dTCmVuZCkKZW5kLAplbWl0RmlsdGVyID0gZnVuY3Rpb24ocHJqLCBncm91cCkKbS5maWx0ZXJHcm91cChwcmosIGdyb3VwLCAiUmVzb3VyY2VDb21waWxlIikKZW5kCn0KbS5jYXRlZ29yaWVzLkN1c3RvbUJ1aWxkID0gewpuYW1lID0gIkN1c3RvbUJ1aWxkIiwKcHJpb3JpdHkgPSA1LAplbWl0RmlsZXMgPSBmdW5jdGlvbihwcmosIGdyb3VwKQpsb2NhbCBmaWxlRnVuYyA9IHsKbS5maWxlVHlwZQp9CmxvY2FsIGZpbGVDZmdGdW5jID0gewptLmV4Y2x1ZGVkRnJvbUJ1aWxkLAptLmJ1aWxkQ29tbWFuZHMsCm0uYnVpbGRPdXRwdXRzLAptLmxpbmtPYmplY3RzLAptLmJ1aWxkTWVzc2FnZSwKbS5idWlsZEFkZGl0aW9uYWxJbnB1dHMKfQptLmVtaXRGaWxlcyhwcmosIGdyb3VwLCAiQ3VzdG9tQnVpbGQiLCBmaWxlRnVuYywgZmlsZUNmZ0Z1bmMsIGZ1bmN0aW9uIChjZmcsIGZjZmcpCnJldHVybiBmaWxlY29uZmlnLmhhc0N1c3RvbUJ1aWxkUnVsZShmY2ZnKQplbmQpCmVuZCwKZW1pdEZpbHRlciA9IGZ1bmN0aW9uKHByaiwgZ3JvdXApCm0uZmlsdGVyR3JvdXAocHJqLCBncm91cCwgIkN1c3RvbUJ1aWxkIikKZW5kCn0KbS5jYXRlZ29yaWVzLk1pZGwgPSB7Cm5hbWUgICAgICAgPSAiTWlkbCIsCmV4dGVuc2lvbnMgPSAiLmlkbCIsCnByaW9yaXR5ICAgPSA2LAplbWl0RmlsZXMgPSBmdW5jdGlvbihwcmosIGdyb3VwKQpsb2NhbCBmaWxlQ2ZnRnVuYyA9IHsKbS5leGNsdWRlZEZyb21CdWlsZAp9Cm0uZW1pdEZpbGVzKHByaiwgZ3JvdXAsICJNaWRsIiwgbmlsLCBmaWxlQ2ZnRnVuYywgZnVuY3Rpb24oY2ZnKQpyZXR1cm4gY2ZnLnN5c3RlbSA9PSBwLldJTkRPV1MKZW5kKQplbmQsCmVtaXRGaWx0ZXIgPSBmdW5jdGlvbihwcmosIGdyb3VwKQptLmZpbHRlckdyb3VwKHByaiwgZ3JvdXAsICJNaWRsIikKZW5kCn0KbS5jYXRlZ29yaWVzLk1hc20gPSB7Cm5hbWUgICAgICAgPSAiTWFzbSIsCmV4dGVuc2lvbnMgPSAiLmFzbSIsCnByaW9yaXR5ICAgPSA3LAplbWl0RmlsZXMgPSBmdW5jdGlvbihwcmosIGdyb3VwKQpsb2NhbCBmaWxlQ2ZnRnVuYyA9IGZ1bmN0aW9uKGZjZmcsIGNvbmRpdGlvbikKaWYgZmNmZyB0aGVuCnJldHVybiB7Cm0uZXhjbHVkZWRGcm9tQnVpbGQsCm0uZXhjZXB0aW9uSGFuZGxpbmdTRUgsCn0KZWxzZQpyZXR1cm4gewptLmV4Y2x1ZGVkRnJvbUJ1aWxkCn0KZW5kCmVuZAptLmVtaXRGaWxlcyhwcmosIGdyb3VwLCAiTWFzbSIsIG5pbCwgZmlsZUNmZ0Z1bmMpCmVuZCwKZW1pdEZpbHRlciA9IGZ1bmN0aW9uKHByaiwgZ3JvdXApCm0uZmlsdGVyR3JvdXAocHJqLCBncm91cCwgIk1hc20iKQplbmQsCmVtaXRFeHRlbnNpb25TZXR0aW5ncyA9IGZ1bmN0aW9uKHByaiwgZ3JvdXApCnAudygnPEltcG9ydCBQcm9qZWN0PSIkKFZDVGFyZ2V0c1BhdGgpXFxCdWlsZEN1c3RvbWl6YXRpb25zXFxtYXNtLnByb3BzIiAvPicpCmVuZCwKZW1pdEV4dGVuc2lvblRhcmdldHMgPSBmdW5jdGlvbihwcmosIGdyb3VwKQpwLncoJzxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxcQnVpbGRDdXN0b21pemF0aW9uc1xcbWFzbS50YXJnZXRzIiAvPicpCmVuZAp9Cm0uY2F0ZWdvcmllcy5JbWFnZSA9IHsKbmFtZSAgICAgICA9ICJJbWFnZSIsCmV4dGVuc2lvbnMgPSB7ICIuZ2lmIiwgIi5qcGciLCAiLmpwZSIsICIucG5nIiwgIi5ibXAiLCAiLmRpYiIsICIqLnRpZiIsICIqLndtZiIsICIqLnJhcyIsICIqLmVwcyIsICIqLnBjeCIsICIqLnBjZCIsICIqLnRnYSIsICIqLmRkcyIgfSwKcHJpb3JpdHkgICA9IDgsCmVtaXRGaWxlcyA9IGZ1bmN0aW9uKHByaiwgZ3JvdXApCmxvY2FsIGZpbGVDZmdGdW5jID0gZnVuY3Rpb24oZmNmZywgY29uZGl0aW9uKQpyZXR1cm4gewptLmV4Y2x1ZGVkRnJvbUJ1aWxkCn0KZW5kCm0uZW1pdEZpbGVzKHByaiwgZ3JvdXAsICJJbWFnZSIsIG5pbCwgZmlsZUNmZ0Z1bmMpCmVuZCwKZW1pdEZpbHRlciA9IGZ1bmN0aW9uKHByaiwgZ3JvdXApCm0uZmlsdGVyR3JvdXAocHJqLCBncm91cCwgIkltYWdlIikKZW5kCn0KZnVuY3Rpb24gbS5jYXRlZ29yaXplU291cmNlcyhwcmopCmlmIHByai5fdmMyMDEwX3NvdXJjZXMgdGhlbgpyZXR1cm4gcHJqLl92YzIwMTBfc291cmNlcwplbmQKbG9jYWwgcmVzdWx0ID0ge30KbG9jYWwgZ3JvdXBzID0ge30KcHJqLl92YzIwMTBfc291cmNlcyA9IHJlc3VsdApsb2NhbCB0ciA9IHByb2plY3QuZ2V0c291cmNldHJlZShwcmopCnRyZWUudHJhdmVyc2UodHIsIHsKb25sZWFmID0gZnVuY3Rpb24obm9kZSkKbG9jYWwgY2F0ID0gbS5jYXRlZ29yaXplRmlsZShwcmosIG5vZGUpCmdyb3Vwc1tjYXQubmFtZV0gPSBncm91cHNbY2F0Lm5hbWVdIG9yIHsKY2F0ZWdvcnkgPSBjYXQsCmZpbGVzID0ge30KfQp0YWJsZS5pbnNlcnQoZ3JvdXBzW2NhdC5uYW1lXS5maWxlcywgbm9kZSkKZW5kCn0pCmZvciBuYW1lLCBncm91cCBpbiBwYWlycyhncm91cHMpIGRvCnRhYmxlLnNvcnQoZ3JvdXAuZmlsZXMsIGZ1bmN0aW9uIChhLCBiKQpyZXR1cm4gYS5yZWxwYXRoIDwgYi5yZWxwYXRoCmVuZCkKdGFibGUuaW5zZXJ0KHJlc3VsdCwgZ3JvdXApCmVuZAp0YWJsZS5zb3J0KHJlc3VsdCwgZnVuY3Rpb24gKGEsIGIpCmlmIChhLmNhdGVnb3J5LnByaW9yaXR5ID09IGIuY2F0ZWdvcnkucHJpb3JpdHkpIHRoZW4KcmV0dXJuIGEuY2F0ZWdvcnkubmFtZSA8IGIuY2F0ZWdvcnkubmFtZQplbmQKcmV0dXJuIGEuY2F0ZWdvcnkucHJpb3JpdHkgPCBiLmNhdGVnb3J5LnByaW9yaXR5CmVuZCkKcmV0dXJuIHJlc3VsdAplbmQKZnVuY3Rpb24gbS5jYXRlZ29yaXplRmlsZShwcmosIGZpbGUpCmZvciBjZmcgaW4gcHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgZmNmZyA9IGZpbGVjb25maWcuZ2V0Y29uZmlnKGZpbGUsIGNmZykKaWYgZmlsZWNvbmZpZy5oYXNDdXN0b21CdWlsZFJ1bGUoZmNmZykgdGhlbgpyZXR1cm4gbS5jYXRlZ29yaWVzLkN1c3RvbUJ1aWxkCmVuZAplbmQKbG9jYWwgcnVsZSA9IHAuZ2xvYmFsLmdldFJ1bGVGb3JGaWxlKGZpbGUubmFtZSwgcHJqLnJ1bGVzKQppZiBydWxlIHRoZW4KcmV0dXJuIHsKbmFtZSAgICAgID0gcnVsZS5uYW1lLApwcmlvcml0eSAgPSAxMDAsCnJ1bGUgICAgICA9IHJ1bGUsCmVtaXRGaWxlcyA9IGZ1bmN0aW9uKHByaiwgZ3JvdXApCm0uZW1pdFJ1bGVGaWxlcyhwcmosIGdyb3VwKQplbmQsCmVtaXRGaWx0ZXIgPSBmdW5jdGlvbihwcmosIGdyb3VwKQptLmZpbHRlckdyb3VwKHByaiwgZ3JvdXAsIGdyb3VwLmNhdGVnb3J5Lm5hbWUpCmVuZAp9CmVuZApmb3IgXywgY2F0IGluIHBhaXJzKG0uY2F0ZWdvcmllcykgZG8KaWYgY2F0LmV4dGVuc2lvbnMgYW5kIHBhdGguaGFzZXh0ZW5zaW9uKGZpbGUubmFtZSwgY2F0LmV4dGVuc2lvbnMpIHRoZW4KcmV0dXJuIGNhdAplbmQKZW5kCnJldHVybiBtLmNhdGVnb3JpZXMuTm9uZQplbmQKZnVuY3Rpb24gbS5jb25maWdQYWlyKGNmZykKcmV0dXJuIHZzdHVkaW8ucHJvamVjdFBsYXRmb3JtKGNmZykgLi4gInwiIC4uIHZzdHVkaW8uYXJjaEZyb21Db25maWcoY2ZnLCB0cnVlKQplbmQKZnVuY3Rpb24gbS5nZXRUb3RhbENmZ0NvdW50KHByaikKaWYgcHJqLl90b3RhbENmZ0NvdW50IHRoZW4KcmV0dXJuIHByai5fdG90YWxDZmdDb3VudAplbHNlCmxvY2FsIHJlc3VsdCA9IDAKZm9yIF8gaW4gcC5wcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpyZXN1bHQgPSByZXN1bHQgKyAxCmVuZApwcmouX3RvdGFsQ2ZnQ291bnQgPSByZXN1bHQKcmV0dXJuIHJlc3VsdAplbmQKZW5kCmZ1bmN0aW9uIG0uaW5kZXhDb25kaXRpb25hbEVsZW1lbnRzKCkKbG9jYWwgbmFtZU1hcCwgbmFtZUxpc3QsIHNldHRpbmdMaXN0Cm5hbWVNYXAgPSB7fQpuYW1lTGlzdCA9IHt9IC0tIHRvIHByZXNlcnZlIG9yZGVyaW5nCnNldHRpbmdMaXN0ID0ge30gLS0gdG8gcHJlc2VydmUgb3JkZXJpbmcKZm9yIF8sIGVsZW1lbnQgaW4gaXBhaXJzKG0uY29uZGl0aW9uYWxFbGVtZW50cykgZG8KbG9jYWwgc2V0dGluZ01hcCA9IG5hbWVNYXBbZWxlbWVudC5uYW1lXQppZiBub3Qgc2V0dGluZ01hcCB0aGVuCnNldHRpbmdNYXAgPSB7fQpuYW1lTWFwW2VsZW1lbnQubmFtZV0gPSBzZXR0aW5nTWFwCmlmIG5vdCB0YWJsZS5jb250YWlucyhuYW1lTGlzdCwgZWxlbWVudC5uYW1lKSB0aGVuCnRhYmxlLmluc2VydChuYW1lTGlzdCwgZWxlbWVudC5uYW1lKQplbmQKZW5kCmxvY2FsIGVsZW1lbnRTZXQgPSBzZXR0aW5nTWFwW2VsZW1lbnQuc2V0dGluZ10KaWYgZWxlbWVudFNldCB0aGVuCnRhYmxlLmluc2VydChlbGVtZW50U2V0LCBlbGVtZW50KQplbHNlCmVsZW1lbnRTZXQgPSB7ZWxlbWVudH0Kc2V0dGluZ01hcFtlbGVtZW50LnNldHRpbmddID0gZWxlbWVudFNldAppZiBub3QgdGFibGUuY29udGFpbnMoc2V0dGluZ0xpc3QsIGVsZW1lbnQuc2V0dGluZykgdGhlbgp0YWJsZS5pbnNlcnQoc2V0dGluZ0xpc3QsIGVsZW1lbnQuc2V0dGluZykKZW5kCmVuZAplbmQKcmV0dXJuIG5hbWVNYXAsIG5hbWVMaXN0LCBzZXR0aW5nTGlzdAplbmQKZnVuY3Rpb24gbS5lbWl0Q29uZGl0aW9uYWxFbGVtZW50cyhwcmopCmxvY2FsIGtleUNvdW50ID0gZnVuY3Rpb24odGJsKQpsb2NhbCBjb3VudCA9IDAKZm9yIF8gaW4gcGFpcnModGJsKSBkbyBjb3VudCA9IGNvdW50ICsgMSBlbmQKcmV0dXJuIGNvdW50CmVuZApsb2NhbCBuYW1lTWFwLCBuYW1lTGlzdCwgc2V0dGluZ0xpc3QKbmFtZU1hcCwgbmFtZUxpc3QsIHNldHRpbmdMaXN0ID0gbS5pbmRleENvbmRpdGlvbmFsRWxlbWVudHMoKQpsb2NhbCB0b3RhbENmZ0NvdW50ID0gbS5nZXRUb3RhbENmZ0NvdW50KHByaikKZm9yIF8sIG5hbWUgaW4gaXBhaXJzKG5hbWVMaXN0KSBkbwpsb2NhbCBzZXR0aW5nTWFwID0gbmFtZU1hcFtuYW1lXQpsb2NhbCBkb25lID0gZmFsc2UKaWYga2V5Q291bnQoc2V0dGluZ01hcCk9PTEgdGhlbgpmb3IgXywgc2V0dGluZyBpbiBpcGFpcnMoc2V0dGluZ0xpc3QpIGRvCmxvY2FsIGVsZW1lbnRzID0gc2V0dGluZ01hcFtzZXR0aW5nXQppZiBlbGVtZW50c349bmlsIGFuZCAjZWxlbWVudHM9PXRvdGFsQ2ZnQ291bnQgdGhlbgpsb2NhbCBlbGVtZW50ID0gZWxlbWVudHNbMV0KbG9jYWwgZm9ybWF0ID0gc3RyaW5nLmZvcm1hdCgnPCVzPiVzPC8lcz4nLCBuYW1lLCBlbGVtZW50LnZhbHVlLCBuYW1lKQpwLncoZm9ybWF0LCB0YWJsZS51bnBhY2soZWxlbWVudC5hcmdzKSkKZG9uZSA9IHRydWUKZW5kCmVuZAplbmQKaWYgbm90IGRvbmUgdGhlbgpmb3IgXywgc2V0dGluZyBpbiBpcGFpcnMoc2V0dGluZ0xpc3QpIGRvCmxvY2FsIGVsZW1lbnRzID0gc2V0dGluZ01hcFtzZXR0aW5nXQppZiBlbGVtZW50cyB0aGVuCmZvciBfLCBlbGVtZW50IGluIGlwYWlycyhlbGVtZW50cykgZG8KbG9jYWwgZm9ybWF0ID0gc3RyaW5nLmZvcm1hdCgnPCVzICVzPiVzPC8lcz4nLCBuYW1lLCBtLmNvbmRpdGlvbkZyb21Db25maWdUZXh0KGVsZW1lbnQuY29uZGl0aW9uKSwgZWxlbWVudC52YWx1ZSwgbmFtZSkKcC53KGZvcm1hdCwgdGFibGUudW5wYWNrKGVsZW1lbnQuYXJncykpCmVuZAplbmQKZW5kCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0uZW1pdEZpbGVzKHByaiwgZ3JvdXAsIHRhZywgZmlsZUZ1bmMsIGZpbGVDZmdGdW5jLCBjaGVja0Z1bmMpCmxvY2FsIGZpbGVzID0gZ3JvdXAuZmlsZXMKaWYgZmlsZXMgYW5kICNmaWxlcyA+IDAgdGhlbgpwLnB1c2goJzxJdGVtR3JvdXA+JykKZm9yIF8sIGZpbGUgaW4gaXBhaXJzKGZpbGVzKSBkbwpsb2NhbCBjb250ZW50cyA9IHAuY2FwdHVyZShmdW5jdGlvbiAoKQpwLnB1c2goKQpwLmNhbGxBcnJheShmaWxlRnVuYywgY2ZnLCBmaWxlKQptLmNvbmRpdGlvbmFsRWxlbWVudHMgPSB7fQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmxvY2FsIGZjZmcgPSBmaWxlY29uZmlnLmdldGNvbmZpZyhmaWxlLCBjZmcpCmlmIG5vdCBjaGVja0Z1bmMgb3IgY2hlY2tGdW5jKGNmZywgZmNmZykgdGhlbgpwLmNhbGxBcnJheShmaWxlQ2ZnRnVuYywgZmNmZywgbS5jb25maWdQYWlyKGNmZykpCmVuZAplbmQKaWYgI20uY29uZGl0aW9uYWxFbGVtZW50cyA+IDAgdGhlbgptLmVtaXRDb25kaXRpb25hbEVsZW1lbnRzKHByaikKZW5kCnAucG9wKCkKZW5kKQpsb2NhbCByZWwgPSBwYXRoLnRyYW5zbGF0ZShmaWxlLnJlbHBhdGgpCmlmICNjb250ZW50cyA+IDAgdGhlbgpwLnB1c2goJzwlcyBJbmNsdWRlPSIlcyI+JywgdGFnLCByZWwpCnAub3V0bG4oY29udGVudHMpCnAucG9wKCc8LyVzPicsIHRhZykKZWxzZQpwLngoJzwlcyBJbmNsdWRlPSIlcyIgLz4nLCB0YWcsIHJlbCkKZW5kCmVuZApwLnBvcCgnPC9JdGVtR3JvdXA+JykKZW5kCmVuZApmdW5jdGlvbiBtLmVtaXRSdWxlRmlsZXMocHJqLCBncm91cCkKbG9jYWwgZmlsZXMgPSBncm91cC5maWxlcwpsb2NhbCBydWxlID0gZ3JvdXAuY2F0ZWdvcnkucnVsZQppZiBmaWxlcyBhbmQgI2ZpbGVzID4gMCB0aGVuCnAucHVzaCgnPEl0ZW1Hcm91cD4nKQpmb3IgXywgZmlsZSBpbiBpcGFpcnMoZmlsZXMpIGRvCmxvY2FsIGNvbnRlbnRzID0gcC5jYXB0dXJlKGZ1bmN0aW9uKCkKcC5wdXNoKCkKZm9yIHByb3AgaW4gcC5ydWxlLmVhY2hQcm9wZXJ0eShydWxlKSBkbwpsb2NhbCBmbGQgPSBwLnJ1bGUuZ2V0UHJvcGVydHlGaWVsZChydWxlLCBwcm9wKQptLmNvbmRpdGlvbmFsRWxlbWVudHMgPSB7fQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCmxvY2FsIGZjZmcgPSBmaWxlY29uZmlnLmdldGNvbmZpZyhmaWxlLCBjZmcpCmlmIGZjZmcgYW5kIGZjZmdbZmxkLm5hbWVdIHRoZW4KbG9jYWwgdmFsdWUgPSBwLnJ1bGUuZ2V0UHJvcGVydHlTdHJpbmcocnVsZSwgcHJvcCwgZmNmZ1tmbGQubmFtZV0pCmlmIHZhbHVlIGFuZCAjdmFsdWUgPiAwIHRoZW4KbS5lbGVtZW50KHByb3AubmFtZSwgbS5jb25maWdQYWlyKGNmZyksICclcycsIHZhbHVlKQplbmQKZW5kCmVuZAppZiAjbS5jb25kaXRpb25hbEVsZW1lbnRzID4gMCB0aGVuCm0uZW1pdENvbmRpdGlvbmFsRWxlbWVudHMocHJqKQplbmQKZW5kCnAucG9wKCkKZW5kKQppZiAjY29udGVudHMgPiAwIHRoZW4KcC5wdXNoKCc8JXMgSW5jbHVkZT1cIiVzXCI+JywgcnVsZS5uYW1lLCBwYXRoLnRyYW5zbGF0ZShmaWxlLnJlbHBhdGgpKQpwLm91dGxuKGNvbnRlbnRzKQpwLnBvcCgnPC8lcz4nLCBydWxlLm5hbWUpCmVsc2UKcC54KCc8JXMgSW5jbHVkZT1cIiVzXCIgLz4nLCBydWxlLm5hbWUsIHBhdGgudHJhbnNsYXRlKGZpbGUucmVscGF0aCkpCmVuZAplbmQKcC5wb3AoJzwvSXRlbUdyb3VwPicpCmVuZAplbmQKZnVuY3Rpb24gbS5pc0Nsck1peGVkKHByaikKbG9jYWwgaXNNaXhlZCA9IGZhbHNlCmlmIG5vdCBwcmouY2xyIG9yIHByai5jbHIgPT0gcC5PRkYgdGhlbgppZiBwcmouX2lzQ2xyTWl4ZWQgfj0gbmlsIHRoZW4KaXNNaXhlZCA9IHByai5faXNDbHJNaXhlZAplbHNlCnRhYmxlLmZvcmVhY2hpKHByai5fLmZpbGVzLCBmdW5jdGlvbihmaWxlKQpmb3IgY2ZnIGluIHAucHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KbG9jYWwgZmNmZyA9IHAuZmlsZWNvbmZpZy5nZXRjb25maWcoZmlsZSwgY2ZnKQppZiBmY2ZnIGFuZCBmY2ZnLmNsciBhbmQgZmNmZy5jbHIgfj0gcC5PRkYgdGhlbgppc01peGVkID0gdHJ1ZQplbmQKZW5kCmVuZCkKcHJqLl9pc0Nsck1peGVkID0gaXNNaXhlZCAtLSBjYWNoZSB0aGUgcmVzdWx0cwplbmQKZW5kCnJldHVybiBpc01peGVkCmVuZAptLmVsZW1lbnRzLnByb2plY3RSZWZlcmVuY2VzID0gZnVuY3Rpb24ocHJqLCByZWYpCmlmIHByai5jbHIgfj0gcC5PRkYgb3IgKG0uaXNDbHJNaXhlZChwcmopIGFuZCByZWYgYW5kIHJlZi5raW5kIH49cC5TVEFUSUNMSUIpIHRoZW4KcmV0dXJuIHsKbS5yZWZlcmVuY2VQcm9qZWN0LAptLnJlZmVyZW5jZVByaXZhdGUsCm0ucmVmZXJlbmNlT3V0cHV0QXNzZW1ibHksCm0ucmVmZXJlbmNlQ29weUxvY2FsU2F0ZWxsaXRlQXNzZW1ibGllcywKbS5yZWZlcmVuY2VMaW5rTGlicmFyeURlcGVuZGVuY2llcywKbS5yZWZlcmVuY2VVc2VMaWJyYXJ5RGVwZW5kZW5jZXMsCn0KZWxzZQpyZXR1cm4gewptLnJlZmVyZW5jZVByb2plY3QsCn0KZW5kCmVuZApmdW5jdGlvbiBtLnByb2plY3RSZWZlcmVuY2VzKHByaikKbG9jYWwgcmVmcyA9IHByb2plY3QuZ2V0ZGVwZW5kZW5jaWVzKHByaiwgJ2xpbmtPbmx5JykKaWYgI3JlZnMgPiAwIHRoZW4KcC5wdXNoKCc8SXRlbUdyb3VwPicpCmZvciBfLCByZWYgaW4gaXBhaXJzKHJlZnMpIGRvCmxvY2FsIHJlbHBhdGggPSB2c3R1ZGlvLnBhdGgocHJqLCB2c3R1ZGlvLnByb2plY3RmaWxlKHJlZikpCnAucHVzaCgnPFByb2plY3RSZWZlcmVuY2UgSW5jbHVkZT1cIiVzXCI+JywgcmVscGF0aCkKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5wcm9qZWN0UmVmZXJlbmNlcywgcHJqLCByZWYpCnAucG9wKCc8L1Byb2plY3RSZWZlcmVuY2U+JykKZW5kCnAucG9wKCc8L0l0ZW1Hcm91cD4nKQplbmQKZW5kCmZ1bmN0aW9uIG0uYWRkaXRpb25hbERlcGVuZGVuY2llcyhjZmcsIGV4cGxpY2l0KQpsb2NhbCBsaW5rcwpsb2NhbCB0b29sc2V0ID0gY29uZmlnLnRvb2xzZXQoY2ZnKQppZiB0b29sc2V0IHRoZW4KbGlua3MgPSB0b29sc2V0LmdldGxpbmtzKGNmZywgbm90IGV4cGxpY2l0KQplbHNlCmxpbmtzID0gdnN0dWRpby5nZXRMaW5rcyhjZmcsIGV4cGxpY2l0KQplbmQKaWYgI2xpbmtzID4gMCB0aGVuCmxpbmtzID0gcGF0aC50cmFuc2xhdGUodGFibGUuY29uY2F0KGxpbmtzLCAiOyIpKQptLmVsZW1lbnQoIkFkZGl0aW9uYWxEZXBlbmRlbmNpZXMiLCBuaWwsICIlczslJShBZGRpdGlvbmFsRGVwZW5kZW5jaWVzKSIsIGxpbmtzKQplbmQKZW5kCmZ1bmN0aW9uIG0uYWRkaXRpb25hbEluY2x1ZGVEaXJlY3RvcmllcyhjZmcsIGluY2x1ZGVkaXJzKQppZiAjaW5jbHVkZWRpcnMgPiAwIHRoZW4KbG9jYWwgZGlycyA9IHZzdHVkaW8ucGF0aChjZmcsIGluY2x1ZGVkaXJzKQppZiAjZGlycyA+IDAgdGhlbgptLmVsZW1lbnQoIkFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXMiLCBuaWwsICIlczslJShBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzKSIsIHRhYmxlLmNvbmNhdChkaXJzLCAiOyIpKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLmFkZGl0aW9uYWxMaWJyYXJ5RGlyZWN0b3JpZXMoY2ZnKQppZiAjY2ZnLmxpYmRpcnMgPiAwIHRoZW4KbG9jYWwgZGlycyA9IHRhYmxlLmNvbmNhdCh2c3R1ZGlvLnBhdGgoY2ZnLCBjZmcubGliZGlycyksICI7IikKbS5lbGVtZW50KCJBZGRpdGlvbmFsTGlicmFyeURpcmVjdG9yaWVzIiwgbmlsLCAiJXM7JSUoQWRkaXRpb25hbExpYnJhcnlEaXJlY3RvcmllcykiLCBkaXJzKQplbmQKZW5kCmZ1bmN0aW9uIG0uYWRkaXRpb25hbFVzaW5nRGlyZWN0b3JpZXMoY2ZnKQppZiAjY2ZnLnVzaW5nZGlycyA+IDAgdGhlbgpsb2NhbCBkaXJzID0gdnN0dWRpby5wYXRoKGNmZywgY2ZnLnVzaW5nZGlycykKaWYgI2RpcnMgPiAwIHRoZW4KbS5lbGVtZW50KCJBZGRpdGlvbmFsVXNpbmdEaXJlY3RvcmllcyIsIG5pbCwgIiVzOyUlKEFkZGl0aW9uYWxVc2luZ0RpcmVjdG9yaWVzKSIsIHRhYmxlLmNvbmNhdChkaXJzLCAiOyIpKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLmxhcmdlQWRkcmVzc0F3YXJlKGNmZykKaWYgKGNmZy5sYXJnZWFkZHJlc3Nhd2FyZSA9PSB0cnVlKSB0aGVuCm0uZWxlbWVudCgiTGFyZ2VBZGRyZXNzQXdhcmUiLCBuaWwsICd0cnVlJykKZW5kCmVuZApmdW5jdGlvbiBtLmxhbmd1YWdlU3RhbmRhcmQoY2ZnKQppZiBfQUNUSU9OID49ICJ2czIwMTciIHRoZW4KaWYgKGNmZy5jcHBkaWFsZWN0ID09ICJDKysxNCIpIHRoZW4KbS5lbGVtZW50KCJMYW5ndWFnZVN0YW5kYXJkIiwgbmlsLCAnc3RkY3BwMTQnKQplbHNlaWYgKGNmZy5jcHBkaWFsZWN0ID09ICJDKysxNyIpIHRoZW4KbS5lbGVtZW50KCJMYW5ndWFnZVN0YW5kYXJkIiwgbmlsLCAnc3RkY3BwbGF0ZXN0JykKZW5kCmVuZAplbmQKZnVuY3Rpb24gbS5hZGRpdGlvbmFsQ29tcGlsZU9wdGlvbnMoY2ZnLCBjb25kaXRpb24pCmxvY2FsIG9wdHMgPSBjZmcuYnVpbGRvcHRpb25zCmlmIF9BQ1RJT04gPT0gInZzMjAxNSIgdGhlbgppZiAoY2ZnLmNwcGRpYWxlY3QgPT0gIkMrKzE0IikgdGhlbgp0YWJsZS5pbnNlcnQob3B0cywgIi9zdGQ6YysrMTQiKQplbHNlaWYgKGNmZy5jcHBkaWFsZWN0ID09ICJDKysxNyIpIHRoZW4KdGFibGUuaW5zZXJ0KG9wdHMsICIvc3RkOmMrK2xhdGVzdCIpCmVuZAplbmQKaWYgI29wdHMgPiAwIHRoZW4Kb3B0cyA9IHRhYmxlLmNvbmNhdChvcHRzLCAiICIpCm0uZWxlbWVudCgiQWRkaXRpb25hbE9wdGlvbnMiLCBjb25kaXRpb24sICclcyAlJShBZGRpdGlvbmFsT3B0aW9ucyknLCBvcHRzKQplbmQKZW5kCmZ1bmN0aW9uIG0uYWRkaXRpb25hbExpbmtPcHRpb25zKGNmZykKaWYgI2NmZy5saW5rb3B0aW9ucyA+IDAgdGhlbgpsb2NhbCBvcHRzID0gdGFibGUuY29uY2F0KGNmZy5saW5rb3B0aW9ucywgIiAiKQptLmVsZW1lbnQoIkFkZGl0aW9uYWxPcHRpb25zIiwgbmlsLCAiJXMgJSUoQWRkaXRpb25hbE9wdGlvbnMpIiwgb3B0cykKZW5kCmVuZApmdW5jdGlvbiBtLmNvbXBpbGVBc01hbmFnZWQoZmNmZywgY29uZGl0aW9uKQppZiBmY2ZnLmNsciBhbmQgZmNmZyB+PSBwLk9GRiB0aGVuCm0uZWxlbWVudCgiQ29tcGlsZUFzTWFuYWdlZCIsIGNvbmRpdGlvbiwgInRydWUiKQplbmQKZW5kCmZ1bmN0aW9uIG0uYmFzaWNSdW50aW1lQ2hlY2tzKGNmZywgY29uZGl0aW9uKQpsb2NhbCBwcmpjZmcsIGZpbGVjZmcgPSBwLmNvbmZpZy5ub3JtYWxpemUoY2ZnKQpsb2NhbCBydW50aW1lID0gY29uZmlnLmdldHJ1bnRpbWUocHJqY2ZnKQppZiBmaWxlY2ZnIHRoZW4KaWYgZmlsZWNmZy5mbGFncy5Ob1J1bnRpbWVDaGVja3Mgb3IgKGNvbmZpZy5pc09wdGltaXplZEJ1aWxkKGZpbGVjZmcpIGFuZCBydW50aW1lOmVuZHN3aXRoKCJEZWJ1ZyIpKSB0aGVuCm0uZWxlbWVudCgiQmFzaWNSdW50aW1lQ2hlY2tzIiwgY29uZGl0aW9uLCAiRGVmYXVsdCIpCmVuZAplbHNlCmlmIHByamNmZy5mbGFncy5Ob1J1bnRpbWVDaGVja3Mgb3IgKGNvbmZpZy5pc09wdGltaXplZEJ1aWxkKHByamNmZykgYW5kIHJ1bnRpbWU6ZW5kc3dpdGgoIkRlYnVnIikpIHRoZW4KbS5lbGVtZW50KCJCYXNpY1J1bnRpbWVDaGVja3MiLCBuaWwsICJEZWZhdWx0IikKZW5kCmVuZAplbmQKZnVuY3Rpb24gbS5idWlsZEFkZGl0aW9uYWxJbnB1dHMoZmNmZywgY29uZGl0aW9uKQppZiBmY2ZnLmJ1aWxkaW5wdXRzIGFuZCAjZmNmZy5idWlsZGlucHV0cyA+IDAgdGhlbgpsb2NhbCBpbnB1dHMgPSBwcm9qZWN0LmdldHJlbGF0aXZlKGZjZmcucHJvamVjdCwgZmNmZy5idWlsZGlucHV0cykKbS5lbGVtZW50KCJBZGRpdGlvbmFsSW5wdXRzIiwgY29uZGl0aW9uLCAnJXMnLCB0YWJsZS5jb25jYXQoaW5wdXRzLCAiOyIpKQplbmQKZW5kCmZ1bmN0aW9uIG0uYnVpbGRDb21tYW5kcyhmY2ZnLCBjb25kaXRpb24pCmxvY2FsIGNvbW1hbmRzID0gb3MudHJhbnNsYXRlQ29tbWFuZHNBbmRQYXRocyhmY2ZnLmJ1aWxkY29tbWFuZHMsIGZjZmcucHJvamVjdC5iYXNlZGlyLCBmY2ZnLnByb2plY3QubG9jYXRpb24pCmNvbW1hbmRzID0gdGFibGUuY29uY2F0KGNvbW1hbmRzLCdcclxuJykKbS5lbGVtZW50KCJDb21tYW5kIiwgY29uZGl0aW9uLCAnJXMnLCBjb21tYW5kcykKZW5kCmZ1bmN0aW9uIG0uYnVpbGRMb2coY2ZnKQppZiBjZmcuYnVpbGRsb2cgYW5kICNjZmcuYnVpbGRsb2cgPiAwIHRoZW4KcC5wdXNoKCc8QnVpbGRMb2c+JykKbS5lbGVtZW50KCJQYXRoIiwgbmlsLCAiJXMiLCB2c3R1ZGlvLnBhdGgoY2ZnLCBjZmcuYnVpbGRsb2cpKQpwLnBvcCgnPC9CdWlsZExvZz4nKQplbmQKZW5kCmZ1bmN0aW9uIG0uYnVpbGRNZXNzYWdlKGZjZmcsIGNvbmRpdGlvbikKaWYgZmNmZy5idWlsZG1lc3NhZ2UgdGhlbgptLmVsZW1lbnQoIk1lc3NhZ2UiLCBjb25kaXRpb24sICclcycsIGZjZmcuYnVpbGRtZXNzYWdlKQplbmQKZW5kCmZ1bmN0aW9uIG0uYnVpbGRPdXRwdXRzKGZjZmcsIGNvbmRpdGlvbikKbG9jYWwgb3V0cHV0cyA9IHByb2plY3QuZ2V0cmVsYXRpdmUoZmNmZy5wcm9qZWN0LCBmY2ZnLmJ1aWxkb3V0cHV0cykKbS5lbGVtZW50KCJPdXRwdXRzIiwgY29uZGl0aW9uLCAnJXMnLCB0YWJsZS5jb25jYXQob3V0cHV0cywgIjsiKSkKZW5kCmZ1bmN0aW9uIG0ubGlua09iamVjdHMoZmNmZywgY29uZGl0aW9uKQppZiBmY2ZnLmxpbmtidWlsZG91dHB1dHMgfj0gbmlsIHRoZW4KbS5lbGVtZW50KCJMaW5rT2JqZWN0cyIsIGNvbmRpdGlvbiwgdG9zdHJpbmcoZmNmZy5saW5rYnVpbGRvdXRwdXRzKSkKZW5kCmVuZApmdW5jdGlvbiBtLmNoYXJhY3RlclNldChjZmcpCmlmIG5vdCB2c3R1ZGlvLmlzTWFrZWZpbGUoY2ZnKSB0aGVuCmxvY2FsIGNoYXJhY3RlcnNldHMgPSB7CkFTQ0lJID0gIk5vdFNldCIsCk1CQ1MgPSAiTXVsdGlCeXRlIiwKVW5pY29kZSA9ICJVbmljb2RlIiwKRGVmYXVsdCA9ICJVbmljb2RlIgp9Cm0uZWxlbWVudCgiQ2hhcmFjdGVyU2V0IiwgbmlsLCBjaGFyYWN0ZXJzZXRzW2NmZy5jaGFyYWN0ZXJzZXRdKQplbmQKZW5kCmZ1bmN0aW9uIG0ud2hvbGVQcm9ncmFtT3B0aW1pemF0aW9uKGNmZykKaWYgY2ZnLmZsYWdzLkxpbmtUaW1lT3B0aW1pemF0aW9uIHRoZW4KbS5lbGVtZW50KCJXaG9sZVByb2dyYW1PcHRpbWl6YXRpb24iLCBuaWwsICJ0cnVlIikKZW5kCmVuZApmdW5jdGlvbiBtLmNsQ29tcGlsZUFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXMoY2ZnKQptLmFkZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXMoY2ZnLCBjZmcuaW5jbHVkZWRpcnMpCmVuZApmdW5jdGlvbiBtLmNsQ29tcGlsZUFkZGl0aW9uYWxVc2luZ0RpcmVjdG9yaWVzKGNmZykKbS5hZGRpdGlvbmFsVXNpbmdEaXJlY3RvcmllcyhjZmcsIGNmZy51c2luZ2RpcnMpCmVuZApmdW5jdGlvbiBtLmNsQ29tcGlsZVByZXByb2Nlc3NvckRlZmluaXRpb25zKGNmZywgY29uZGl0aW9uKQpsb2NhbCBkZWZpbmVzID0gY2ZnLmRlZmluZXMKaWYgY2ZnLmV4Y2VwdGlvbmhhbmRsaW5nID09IHAuT0ZGIGFuZCBfQUNUSU9OID49ICJ2czIwMTMiIHRoZW4KZGVmaW5lcyA9IHRhYmxlLmpvaW4oZGVmaW5lcywgIl9IQVNfRVhDRVBUSU9OUz0wIikKZW5kCm0ucHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMoY2ZnLCBkZWZpbmVzLCBmYWxzZSwgY29uZGl0aW9uKQplbmQKZnVuY3Rpb24gbS5jbENvbXBpbGVVbmRlZmluZVByZXByb2Nlc3NvckRlZmluaXRpb25zKGNmZywgY29uZGl0aW9uKQptLnVuZGVmaW5lUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMoY2ZnLCBjZmcudW5kZWZpbmVzLCBmYWxzZSwgY29uZGl0aW9uKQplbmQKZnVuY3Rpb24gbS5jbHJTdXBwb3J0KGNmZykKbG9jYWwgdmFsdWUKaWYgY2ZnLmNsciA9PSAiT24iIG9yIGNmZy5jbHIgPT0gIlVuc2FmZSIgdGhlbgp2YWx1ZSA9ICJ0cnVlIgplbHNlaWYgY2ZnLmNsciB+PSBwLk9GRiB0aGVuCnZhbHVlID0gY2ZnLmNscgplbmQKaWYgdmFsdWUgdGhlbgptLmVsZW1lbnQoIkNMUlN1cHBvcnQiLCBuaWwsIHZhbHVlKQplbmQKZW5kCmZ1bmN0aW9uIG0uY29tcGlsZUFzKGNmZykKaWYgcC5sYW5ndWFnZXMuaXNjKGNmZy5jb21waWxlYXMpIHRoZW4KbS5lbGVtZW50KCJDb21waWxlQXMiLCBuaWwsICJDb21waWxlQXNDIikKZWxzZWlmIHAubGFuZ3VhZ2VzLmlzY3BwKGNmZy5jb21waWxlYXMpIHRoZW4KbS5lbGVtZW50KCJDb21waWxlQXMiLCBuaWwsICJDb21waWxlQXNDcHAiKQplbmQKZW5kCmZ1bmN0aW9uIG0uY29uZmlndXJhdGlvblR5cGUoY2ZnKQpsb2NhbCB0eXBlcyA9IHsKU2hhcmVkTGliID0gIkR5bmFtaWNMaWJyYXJ5IiwKU3RhdGljTGliID0gIlN0YXRpY0xpYnJhcnkiLApDb25zb2xlQXBwID0gIkFwcGxpY2F0aW9uIiwKV2luZG93ZWRBcHAgPSAiQXBwbGljYXRpb24iLApNYWtlZmlsZSA9ICJNYWtlZmlsZSIsCk5vbmUgPSAiTWFrZWZpbGUiLApVdGlsaXR5ID0gIlV0aWxpdHkiLAp9Cm0uZWxlbWVudCgiQ29uZmlndXJhdGlvblR5cGUiLCBuaWwsIHR5cGVzW2NmZy5raW5kXSkKZW5kCmZ1bmN0aW9uIG0uY3VsdHVyZShjZmcpCmxvY2FsIHZhbHVlID0gdnN0dWRpby5jdWx0dXJlRm9yTG9jYWxlKGNmZy5sb2NhbGUpCmlmIHZhbHVlIHRoZW4KbS5lbGVtZW50KCJDdWx0dXJlIiwgbmlsLCAiMHglMDR4IiwgdG9zdHJpbmcodmFsdWUpKQplbmQKZW5kCmZ1bmN0aW9uIG0uZGVidWdJbmZvcm1hdGlvbkZvcm1hdChjZmcpCmxvY2FsIHZhbHVlCmxvY2FsIHRvb2wsIHRvb2xWZXJzaW9uID0gcC5jb25maWcudG9vbHNldChjZmcpCmlmIChjZmcuc3ltYm9scyA9PSBwLk9OKSBvciAoY2ZnLnN5bWJvbHMgPT0gIkZhc3RMaW5rIikgdGhlbgppZiBjZmcuZGVidWdmb3JtYXQgPT0gImM3IiB0aGVuCnZhbHVlID0gIk9sZFN0eWxlIgplbHNlaWYgKGNmZy5hcmNoaXRlY3R1cmUgPT0gIng4Nl82NCIgYW5kIF9BQ1RJT04gPCAidnMyMDE1Iikgb3IKICAgY2ZnLmNsciB+PSBwLk9GRiBvcgogICBjb25maWcuaXNPcHRpbWl6ZWRCdWlsZChjZmcpIG9yCiAgIGNmZy5lZGl0YW5kY29udGludWUgPT0gcC5PRkYgb3IKICAgKHRvb2xWZXJzaW9uIGFuZCB0b29sVmVyc2lvbjpzdGFydHN3aXRoKCJMTFZNLXZzIikpCnRoZW4KdmFsdWUgPSAiUHJvZ3JhbURhdGFiYXNlIgplbHNlCnZhbHVlID0gIkVkaXRBbmRDb250aW51ZSIKZW5kCm0uZWxlbWVudCgiRGVidWdJbmZvcm1hdGlvbkZvcm1hdCIsIG5pbCwgdmFsdWUpCmVsc2VpZiBjZmcuc3ltYm9scyA9PSBwLk9GRiB0aGVuCmlmIF9BQ1RJT04gPCAidnMyMDE1IiB0aGVuCnZhbHVlID0gIiIKZWxzZQp2YWx1ZSA9ICJOb25lIgplbmQKbS5lbGVtZW50KCJEZWJ1Z0luZm9ybWF0aW9uRm9ybWF0IiwgbmlsLCB2YWx1ZSkKZW5kCmVuZApmdW5jdGlvbiBtLmRlcGxveShjZmcpCmlmIGNmZy5zeXN0ZW0gPT0gcC5YQk9YMzYwIHRoZW4KcC5wdXNoKCc8RGVwbG95PicpCm0uZWxlbWVudCgiRGVwbG95bWVudFR5cGUiLCBuaWwsICJDb3B5VG9IYXJkRHJpdmUiKQptLmVsZW1lbnQoIkR2ZEVtdWxhdGlvblR5cGUiLCBuaWwsICJaZXJvU2Vla1RpbWVzIikKbS5lbGVtZW50KCJEZXBsb3ltZW50RmlsZXMiLCBuaWwsICIkKFJlbW90ZVJvb3QpPSQoSW1hZ2VQYXRoKTsiKQpwLnBvcCgnPC9EZXBsb3k+JykKZW5kCmVuZApmdW5jdGlvbiBtLmVuYWJsZUVuaGFuY2VkSW5zdHJ1Y3Rpb25TZXQoY2ZnLCBjb25kaXRpb24pCmxvY2FsIHYKbG9jYWwgeCA9IGNmZy52ZWN0b3JleHRlbnNpb25zCmlmIHggPT0gIkFWWCIgYW5kIF9BQ1RJT04gPiAidnMyMDEwIiB0aGVuCnYgPSAiQWR2YW5jZWRWZWN0b3JFeHRlbnNpb25zIgplbHNlaWYgeCA9PSAiQVZYMiIgYW5kIF9BQ1RJT04gPiAidnMyMDEyIiB0aGVuCnYgPSAiQWR2YW5jZWRWZWN0b3JFeHRlbnNpb25zMiIKZWxzZWlmIGNmZy5hcmNoaXRlY3R1cmUgfj0gIng4Nl82NCIgdGhlbgppZiB4ID09ICJTU0UyIiBvciB4ID09ICJTU0UzIiBvciB4ID09ICJTU1NFMyIgb3IgeCA9PSAiU1NFNC4xIiB0aGVuCnYgPSAiU3RyZWFtaW5nU0lNREV4dGVuc2lvbnMyIgplbHNlaWYgeCA9PSAiU1NFIiB0aGVuCnYgPSAiU3RyZWFtaW5nU0lNREV4dGVuc2lvbnMiCmVsc2VpZiB4ID09ICJJQTMyIiBhbmQgX0FDVElPTiA+ICJ2czIwMTAiIHRoZW4KdiA9ICJOb0V4dGVuc2lvbnMiCmVuZAplbmQKaWYgdiB0aGVuCm0uZWxlbWVudCgnRW5hYmxlRW5oYW5jZWRJbnN0cnVjdGlvblNldCcsIGNvbmRpdGlvbiwgdikKZW5kCmVuZApmdW5jdGlvbiBtLmVudHJ5UG9pbnRTeW1ib2woY2ZnKQppZiBjZmcuZW50cnlwb2ludCB0aGVuCm0uZWxlbWVudCgiRW50cnlQb2ludFN5bWJvbCIsIG5pbCwgY2ZnLmVudHJ5cG9pbnQpCmVuZAplbmQKZnVuY3Rpb24gbS5leGNlcHRpb25IYW5kbGluZyhjZmcsIGNvbmRpdGlvbikKaWYgY2ZnLmV4Y2VwdGlvbmhhbmRsaW5nID09IHAuT0ZGIHRoZW4KbS5lbGVtZW50KCJFeGNlcHRpb25IYW5kbGluZyIsIGNvbmRpdGlvbiwgImZhbHNlIikKZWxzZWlmIGNmZy5leGNlcHRpb25oYW5kbGluZyA9PSAiU0VIIiB0aGVuCm0uZWxlbWVudCgiRXhjZXB0aW9uSGFuZGxpbmciLCBjb25kaXRpb24sICJBc3luYyIpCmVuZAplbmQKZnVuY3Rpb24gbS5leGNsdWRlZEZyb21CdWlsZChmaWxlY2ZnLCBjb25kaXRpb24pCmlmIG5vdCBmaWxlY2ZnIG9yIGZpbGVjZmcuZmxhZ3MuRXhjbHVkZUZyb21CdWlsZCB0aGVuCm0uZWxlbWVudCgiRXhjbHVkZWRGcm9tQnVpbGQiLCBjb25kaXRpb24sICJ0cnVlIikKZW5kCmVuZApmdW5jdGlvbiBtLmV4Y2VwdGlvbkhhbmRsaW5nU0VIKGZpbGVjZmcsIGNvbmRpdGlvbikKaWYgbm90IGZpbGVjZmcgb3IgZmlsZWNmZy5leGNlcHRpb25oYW5kbGluZyA9PSAiU0VIIiB0aGVuCm0uZWxlbWVudCgiVXNlU2FmZUV4Y2VwdGlvbkhhbmRsZXJzIiwgY29uZGl0aW9uLCAidHJ1ZSIpCmVuZAplbmQKZnVuY3Rpb24gbS5leHRlbnNpb25zVG9EZWxldGVPbkNsZWFuKGNmZykKaWYgI2NmZy5jbGVhbmV4dGVuc2lvbnMgPiAwIHRoZW4KbG9jYWwgdmFsdWUgPSB0YWJsZS5pbXBsb2RlKGNmZy5jbGVhbmV4dGVuc2lvbnMsICIqIiwgIjsiLCAiIikKbS5lbGVtZW50KCJFeHRlbnNpb25zVG9EZWxldGVPbkNsZWFuIiwgbmlsLCB2YWx1ZSAuLiAiJChFeHRlbnNpb25zVG9EZWxldGVPbkNsZWFuKSIpCmVuZAplbmQKZnVuY3Rpb24gbS5maWxlVHlwZShjZmcsIGZpbGUpCm0uZWxlbWVudCgiRmlsZVR5cGUiLCBuaWwsICJEb2N1bWVudCIpCmVuZApmdW5jdGlvbiBtLmZsb2F0aW5nUG9pbnRNb2RlbChjZmcpCmlmIGNmZy5mbG9hdGluZ3BvaW50IGFuZCBjZmcuZmxvYXRpbmdwb2ludCB+PSAiRGVmYXVsdCIgdGhlbgptLmVsZW1lbnQoIkZsb2F0aW5nUG9pbnRNb2RlbCIsIG5pbCwgY2ZnLmZsb2F0aW5ncG9pbnQpCmVuZAplbmQKZnVuY3Rpb24gbS5mbG9hdGluZ1BvaW50RXhjZXB0aW9ucyhjZmcpCmlmIGNmZy5mbG9hdGluZ3BvaW50ZXhjZXB0aW9ucyB+PSBuaWwgdGhlbgppZiBjZmcuZmxvYXRpbmdwb2ludGV4Y2VwdGlvbnMgdGhlbgptLmVsZW1lbnQoIkZsb2F0aW5nUG9pbnRFeGNlcHRpb25zIiwgbmlsLCAidHJ1ZSIpCmVsc2UKbS5lbGVtZW50KCJGbG9hdGluZ1BvaW50RXhjZXB0aW9ucyIsIG5pbCwgImZhbHNlIikKZW5kCmVuZAplbmQKZnVuY3Rpb24gbS5pbmxpbmVGdW5jdGlvbkV4cGFuc2lvbihjZmcpCmlmIGNmZy5pbmxpbmluZyB0aGVuCmxvY2FsIHR5cGVzID0gewpEZWZhdWx0ID0gIkRlZmF1bHQiLApEaXNhYmxlZCA9ICJEaXNhYmxlZCIsCkV4cGxpY2l0ID0gIk9ubHlFeHBsaWNpdElubGluZSIsCkF1dG8gPSAiQW55U3VpdGFibGUiLAp9Cm0uZWxlbWVudCgiSW5saW5lRnVuY3Rpb25FeHBhbnNpb24iLCBuaWwsIHR5cGVzW2NmZy5pbmxpbmluZ10pCmVuZAplbmQKZnVuY3Rpb24gbS5mb3JjZUluY2x1ZGVzKGNmZywgY29uZGl0aW9uKQppZiAjY2ZnLmZvcmNlaW5jbHVkZXMgPiAwIHRoZW4KbG9jYWwgaW5jbHVkZXMgPSB2c3R1ZGlvLnBhdGgoY2ZnLCBjZmcuZm9yY2VpbmNsdWRlcykKaWYgI2luY2x1ZGVzID4gMCB0aGVuCm0uZWxlbWVudCgiRm9yY2VkSW5jbHVkZUZpbGVzIiwgY29uZGl0aW9uLCB0YWJsZS5jb25jYXQoaW5jbHVkZXMsICc7JykpCmVuZAplbmQKaWYgI2NmZy5mb3JjZXVzaW5ncyA+IDAgdGhlbgpsb2NhbCB1c2luZ3MgPSB2c3R1ZGlvLnBhdGgoY2ZnLCBjZmcuZm9yY2V1c2luZ3MpCmlmICN1c2luZ3MgPiAwIHRoZW4KbS5lbGVtZW50KCJGb3JjZWRVc2luZ0ZpbGVzIiwgY29uZGl0aW9uLCB0YWJsZS5jb25jYXQodXNpbmdzLCAnOycpKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLmZ1bGxQcm9ncmFtRGF0YWJhc2VGaWxlKGNmZykKaWYgX0FDVElPTiA+PSAidnMyMDE1IiBhbmQgY2ZnLnN5bWJvbHMgPT0gIkZhc3RMaW5rIiB0aGVuCm0uZWxlbWVudCgiRnVsbFByb2dyYW1EYXRhYmFzZUZpbGUiLCBuaWwsICJ0cnVlIikKZW5kCmVuZApmdW5jdGlvbiBtLmZ1bmN0aW9uTGV2ZWxMaW5raW5nKGNmZykKaWYgY2ZnLmZ1bmN0aW9ubGV2ZWxsaW5raW5nIH49IG5pbCB0aGVuCmlmIGNmZy5mdW5jdGlvbmxldmVsbGlua2luZyB0aGVuCm0uZWxlbWVudCgiRnVuY3Rpb25MZXZlbExpbmtpbmciLCBuaWwsICJ0cnVlIikKZWxzZQptLmVsZW1lbnQoIkZ1bmN0aW9uTGV2ZWxMaW5raW5nIiwgbmlsLCAiZmFsc2UiKQplbmQKZWxzZWlmIGNvbmZpZy5pc09wdGltaXplZEJ1aWxkKGNmZykgdGhlbgptLmVsZW1lbnQoIkZ1bmN0aW9uTGV2ZWxMaW5raW5nIiwgbmlsLCAidHJ1ZSIpCmVuZAplbmQKZnVuY3Rpb24gbS5nZW5lcmF0ZURlYnVnSW5mb3JtYXRpb24oY2ZnKQpsb2NhbCBsb29rdXAgPSB7fQppZiBfQUNUSU9OID49ICJ2czIwMTciIHRoZW4KbG9va3VwW3AuT05dICAgICAgID0gInRydWUiCmxvb2t1cFtwLk9GRl0gICAgICA9ICJmYWxzZSIKbG9va3VwWyJGYXN0TGluayJdID0gIkRlYnVnRmFzdExpbmsiCmxvb2t1cFsiRnVsbCJdICAgICA9ICJEZWJ1Z0Z1bGwiCmVsc2VpZiBfQUNUSU9OID09ICJ2czIwMTUiIHRoZW4KbG9va3VwW3AuT05dICAgICAgID0gInRydWUiCmxvb2t1cFtwLk9GRl0gICAgICA9ICJmYWxzZSIKbG9va3VwWyJGYXN0TGluayJdID0gIkRlYnVnRmFzdExpbmsiCmxvb2t1cFsiRnVsbCJdICAgICA9ICJ0cnVlIgplbHNlCmxvb2t1cFtwLk9OXSAgICAgICA9ICJ0cnVlIgpsb29rdXBbcC5PRkZdICAgICAgPSAiZmFsc2UiCmxvb2t1cFsiRmFzdExpbmsiXSA9ICJ0cnVlIgpsb29rdXBbIkZ1bGwiXSAgICAgPSAidHJ1ZSIKZW5kCmxvY2FsIHZhbHVlID0gbG9va3VwW2NmZy5zeW1ib2xzXQppZiB2YWx1ZSB0aGVuCm0uZWxlbWVudCgiR2VuZXJhdGVEZWJ1Z0luZm9ybWF0aW9uIiwgbmlsLCB2YWx1ZSkKZW5kCmVuZApmdW5jdGlvbiBtLmdlbmVyYXRlTWFuaWZlc3QoY2ZnKQppZiBjZmcuZmxhZ3MuTm9NYW5pZmVzdCB0aGVuCm0uZWxlbWVudCgiR2VuZXJhdGVNYW5pZmVzdCIsIG5pbCwgImZhbHNlIikKZW5kCmVuZApmdW5jdGlvbiBtLmdlbmVyYXRlTWFwRmlsZShjZmcpCmlmIGNmZy5mbGFncy5NYXBzIHRoZW4KbS5lbGVtZW50KCJHZW5lcmF0ZU1hcEZpbGUiLCBuaWwsICJ0cnVlIikKZW5kCmVuZApmdW5jdGlvbiBtLmlnbm9yZURlZmF1bHRMaWJyYXJpZXMoY2ZnKQppZiAjY2ZnLmlnbm9yZWRlZmF1bHRsaWJyYXJpZXMgPiAwIHRoZW4KbG9jYWwgaWdub3JlZCA9IGNmZy5pZ25vcmVkZWZhdWx0bGlicmFyaWVzCmZvciBpID0gMSwgI2lnbm9yZWQgZG8KaWYgbm90IHAudG9vbHMubXNjLmdldExpYnJhcnlFeHRlbnNpb25zKClbaWdub3JlZFtpXTptYXRjaCgiW14uXSskIildIHRoZW4KaWdub3JlZFtpXSA9IHBhdGguYXBwZW5kZXh0ZW5zaW9uKGlnbm9yZWRbaV0sICIubGliIikKZW5kCmVuZAptLmVsZW1lbnQoIklnbm9yZVNwZWNpZmljRGVmYXVsdExpYnJhcmllcyIsIGNvbmRpdGlvbiwgdGFibGUuY29uY2F0KGlnbm9yZWQsICc7JykpCmVuZAplbmQKZnVuY3Rpb24gbS5pZ25vcmVXYXJuRHVwbGljYXRlRmlsZW5hbWUocHJqKQppZiBfQUNUSU9OID4gInZzMjAxMiIgdGhlbgptLmVsZW1lbnQoIklnbm9yZVdhcm5Db21waWxlRHVwbGljYXRlZEZpbGVuYW1lIiwgbmlsLCAidHJ1ZSIpCmVuZAplbmQKZnVuY3Rpb24gbS5pZ25vcmVJbXBvcnRMaWJyYXJ5KGNmZykKaWYgY2ZnLmtpbmQgPT0gcC5TSEFSRURMSUIgYW5kIGNmZy5mbGFncy5Ob0ltcG9ydExpYiB0aGVuCm0uZWxlbWVudCgiSWdub3JlSW1wb3J0TGlicmFyeSIsIG5pbCwgInRydWUiKQplbmQKZW5kCmZ1bmN0aW9uIG0uaW1hZ2VYZXgoY2ZnKQppZiBjZmcuc3lzdGVtID09IHAuWEJPWDM2MCB0aGVuCnAucHVzaCgnPEltYWdlWGV4PicpCmlmIGNmZy5jb25maWdmaWxlIHRoZW4KbS5lbGVtZW50KCJDb25maWd1cmF0aW9uRmlsZSIsIG5pbCwgIiVzIiwgY2ZnLmNvbmZpZ2ZpbGUpCmVsc2UKcC53KCc8Q29uZmlndXJhdGlvbkZpbGU+JykKcC53KCc8L0NvbmZpZ3VyYXRpb25GaWxlPicpCmVuZApwLncoJzxBZGRpdGlvbmFsU2VjdGlvbnM+JykKcC53KCc8L0FkZGl0aW9uYWxTZWN0aW9ucz4nKQpwLnBvcCgnPC9JbWFnZVhleD4nKQplbmQKZW5kCmZ1bmN0aW9uIG0uaW1hZ2VYZXhPdXRwdXQoY2ZnKQppZiBjZmcuc3lzdGVtID09IHAuWEJPWDM2MCB0aGVuCm0uZWxlbWVudCgiSW1hZ2VYZXhPdXRwdXQiLCBuaWwsICIlcyIsICIkKE91dERpcikkKFRhcmdldE5hbWUpLnhleCIpCmVuZAplbmQKZnVuY3Rpb24gbS5pbXBvcnRMYW5ndWFnZVRhcmdldHMocHJqKQpwLncoJzxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxcTWljcm9zb2Z0LkNwcC50YXJnZXRzIiAvPicpCmVuZAptLmVsZW1lbnRzLmltcG9ydEV4dGVuc2lvblRhcmdldHMgPSBmdW5jdGlvbihwcmopCnJldHVybiB7Cm0uaW1wb3J0R3JvdXBUYXJnZXRzLAptLmltcG9ydFJ1bGVUYXJnZXRzLAptLmltcG9ydE51R2V0VGFyZ2V0cywKbS5pbXBvcnRCdWlsZEN1c3RvbWl6YXRpb25zVGFyZ2V0cwp9CmVuZApmdW5jdGlvbiBtLmltcG9ydEV4dGVuc2lvblRhcmdldHMocHJqKQpwLnB1c2goJzxJbXBvcnRHcm91cCBMYWJlbD0iRXh0ZW5zaW9uVGFyZ2V0cyI+JykKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5pbXBvcnRFeHRlbnNpb25UYXJnZXRzLCBwcmopCnAucG9wKCc8L0ltcG9ydEdyb3VwPicpCmVuZApmdW5jdGlvbiBtLmltcG9ydEdyb3VwVGFyZ2V0cyhwcmopCmxvY2FsIGdyb3VwcyA9IG0uY2F0ZWdvcml6ZVNvdXJjZXMocHJqKQpmb3IgXywgZ3JvdXAgaW4gaXBhaXJzKGdyb3VwcykgZG8KaWYgZ3JvdXAuY2F0ZWdvcnkuZW1pdEV4dGVuc2lvblRhcmdldHMgdGhlbgpncm91cC5jYXRlZ29yeS5lbWl0RXh0ZW5zaW9uVGFyZ2V0cyhwcmosIGdyb3VwKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLmltcG9ydFJ1bGVUYXJnZXRzKHByaikKZm9yIGkgPSAxLCAjcHJqLnJ1bGVzIGRvCmxvY2FsIHJ1bGUgPSBwLmdsb2JhbC5nZXRSdWxlKHByai5ydWxlc1tpXSkKbG9jYWwgbG9jID0gdnN0dWRpby5wYXRoKHByaiwgcC5maWxlbmFtZShydWxlLCAiLnRhcmdldHMiKSkKcC54KCc8SW1wb3J0IFByb2plY3Q9IiVzIiAvPicsIGxvYykKZW5kCmVuZApsb2NhbCBmdW5jdGlvbiBudUdldFRhcmdldHNGaWxlKHByaiwgcGFja2FnZSkKbG9jYWwgcGFja2FnZUFQSUluZm8gPSB2c3R1ZGlvLm51Z2V0MjAxMC5wYWNrYWdlQVBJSW5mbyhwcmosIHBhY2thZ2UpCnJldHVybiBwLnZzdHVkaW8ucGF0aChwcmosIHAuZmlsZW5hbWUocHJqLndvcmtzcGFjZSwgc3RyaW5nLmZvcm1hdCgicGFja2FnZXNcXCVzLiVzXFxidWlsZFxcbmF0aXZlXFwlcy50YXJnZXRzIiwgdnN0dWRpby5udWdldDIwMTAucGFja2FnZUlkKHBhY2thZ2UpLCBwYWNrYWdlQVBJSW5mby52ZXJiYXRpbVZlcnNpb24gb3IgcGFja2FnZUFQSUluZm8udmVyc2lvbiwgdnN0dWRpby5udWdldDIwMTAucGFja2FnZUlkKHBhY2thZ2UpKSkpCmVuZApmdW5jdGlvbiBtLmltcG9ydE51R2V0VGFyZ2V0cyhwcmopCmZvciBpID0gMSwgI3Byai5udWdldCBkbwpsb2NhbCB0YXJnZXRzRmlsZSA9IG51R2V0VGFyZ2V0c0ZpbGUocHJqLCBwcmoubnVnZXRbaV0pCnAueCgnPEltcG9ydCBQcm9qZWN0PSIlcyIgQ29uZGl0aW9uPSJFeGlzdHMoXCclc1wnKSIgLz4nLCB0YXJnZXRzRmlsZSwgdGFyZ2V0c0ZpbGUpCmVuZAplbmQKZnVuY3Rpb24gbS5pbXBvcnRCdWlsZEN1c3RvbWl6YXRpb25zVGFyZ2V0cyhwcmopCmZvciBpLCBidWlsZCBpbiBpcGFpcnMocHJqLmJ1aWxkY3VzdG9taXphdGlvbnMpIGRvCnAudygnPEltcG9ydCBQcm9qZWN0PSIkKFZDVGFyZ2V0c1BhdGgpXFwlcy50YXJnZXRzIiAvPicsIHBhdGgudHJhbnNsYXRlKGJ1aWxkKSkKZW5kCmVuZApmdW5jdGlvbiBtLmVuc3VyZU51R2V0UGFja2FnZUJ1aWxkSW1wb3J0cyhwcmopCmlmICNwcmoubnVnZXQgPiAwIHRoZW4KcC5wdXNoKCc8VGFyZ2V0IE5hbWU9IkVuc3VyZU51R2V0UGFja2FnZUJ1aWxkSW1wb3J0cyIgQmVmb3JlVGFyZ2V0cz0iUHJlcGFyZUZvckJ1aWxkIj4nKQpwLnB1c2goJzxQcm9wZXJ0eUdyb3VwPicpCnAueCgnPEVycm9yVGV4dD5UaGlzIHByb2plY3QgcmVmZXJlbmNlcyBOdUdldCBwYWNrYWdlKHMpIHRoYXQgYXJlIG1pc3Npbmcgb24gdGhpcyBjb21wdXRlci4gVXNlIE51R2V0IFBhY2thZ2UgUmVzdG9yZSB0byBkb3dubG9hZCB0aGVtLiAgRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBodHRwOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP0xpbmtJRD0zMjIxMDUuIFRoZSBtaXNzaW5nIGZpbGUgaXMgezB9LjwvRXJyb3JUZXh0PicpCnAucG9wKCc8L1Byb3BlcnR5R3JvdXA+JykKZm9yIGkgPSAxLCAjcHJqLm51Z2V0IGRvCmxvY2FsIHRhcmdldHNGaWxlID0gbnVHZXRUYXJnZXRzRmlsZShwcmosIHByai5udWdldFtpXSkKcC54KCc8RXJyb3IgQ29uZGl0aW9uPSIhRXhpc3RzKFwnJXNcJykiIFRleHQ9IiQoW1N5c3RlbS5TdHJpbmddOjpGb3JtYXQoXCckKEVycm9yVGV4dClcJywgXCclc1wnKSkiIC8+JywgdGFyZ2V0c0ZpbGUsIHRhcmdldHNGaWxlKQplbmQKcC5wb3AoJzwvVGFyZ2V0PicpCmVuZAplbmQKZnVuY3Rpb24gbS5pbXBvcnREZWZhdWx0UHJvcHMocHJqKQpwLncoJzxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxcTWljcm9zb2Z0LkNwcC5EZWZhdWx0LnByb3BzIiAvPicpCmVuZApmdW5jdGlvbiBtLmltcG9ydExhbmd1YWdlU2V0dGluZ3MocHJqKQpwLncoJzxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxcTWljcm9zb2Z0LkNwcC5wcm9wcyIgLz4nKQplbmQKbS5lbGVtZW50cy5pbXBvcnRFeHRlbnNpb25TZXR0aW5ncyA9IGZ1bmN0aW9uKHByaikKcmV0dXJuIHsKbS5pbXBvcnRHcm91cFNldHRpbmdzLAptLmltcG9ydFJ1bGVTZXR0aW5ncywKbS5pbXBvcnRCdWlsZEN1c3RvbWl6YXRpb25zUHJvcHMKfQplbmQKZnVuY3Rpb24gbS5pbXBvcnRFeHRlbnNpb25TZXR0aW5ncyhwcmopCnAucHVzaCgnPEltcG9ydEdyb3VwIExhYmVsPSJFeHRlbnNpb25TZXR0aW5ncyI+JykKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5pbXBvcnRFeHRlbnNpb25TZXR0aW5ncywgcHJqKQpwLnBvcCgnPC9JbXBvcnRHcm91cD4nKQplbmQKZnVuY3Rpb24gbS5pbXBvcnRHcm91cFNldHRpbmdzKHByaikKbG9jYWwgZ3JvdXBzID0gbS5jYXRlZ29yaXplU291cmNlcyhwcmopCmZvciBfLCBncm91cCBpbiBpcGFpcnMoZ3JvdXBzKSBkbwppZiBncm91cC5jYXRlZ29yeS5lbWl0RXh0ZW5zaW9uU2V0dGluZ3MgdGhlbgpncm91cC5jYXRlZ29yeS5lbWl0RXh0ZW5zaW9uU2V0dGluZ3MocHJqLCBncm91cCkKZW5kCmVuZAplbmQKZnVuY3Rpb24gbS5pbXBvcnRSdWxlU2V0dGluZ3MocHJqKQpmb3IgaSA9IDEsICNwcmoucnVsZXMgZG8KbG9jYWwgcnVsZSA9IHAuZ2xvYmFsLmdldFJ1bGUocHJqLnJ1bGVzW2ldKQpsb2NhbCBsb2MgPSB2c3R1ZGlvLnBhdGgocHJqLCBwLmZpbGVuYW1lKHJ1bGUsICIucHJvcHMiKSkKcC54KCc8SW1wb3J0IFByb2plY3Q9IiVzIiAvPicsIGxvYykKZW5kCmVuZApmdW5jdGlvbiBtLmltcG9ydEJ1aWxkQ3VzdG9taXphdGlvbnNQcm9wcyhwcmopCmZvciBpLCBidWlsZCBpbiBpcGFpcnMocHJqLmJ1aWxkY3VzdG9taXphdGlvbnMpIGRvCnAudygnPEltcG9ydCBQcm9qZWN0PSIkKFZDVGFyZ2V0c1BhdGgpXFwlcy5wcm9wcyIgLz4nLCBwYXRoLnRyYW5zbGF0ZShidWlsZCkpCmVuZAplbmQKZnVuY3Rpb24gbS5pbXBvcnRMaWJyYXJ5KGNmZykKaWYgY2ZnLmtpbmQgPT0gcC5TSEFSRURMSUIgdGhlbgptLmVsZW1lbnQoIkltcG9ydExpYnJhcnkiLCBuaWwsICIlcyIsIHBhdGgudHJhbnNsYXRlKGNmZy5saW5rdGFyZ2V0LnJlbHBhdGgpKQplbmQKZW5kCmZ1bmN0aW9uIG0uaW5jbHVkZVBhdGgoY2ZnKQpsb2NhbCBkaXJzID0gdnN0dWRpby5wYXRoKGNmZywgY2ZnLnN5c2luY2x1ZGVkaXJzKQppZiAjZGlycyA+IDAgdGhlbgptLmVsZW1lbnQoIkluY2x1ZGVQYXRoIiwgbmlsLCAiJXM7JChJbmNsdWRlUGF0aCkiLCB0YWJsZS5jb25jYXQoZGlycywgIjsiKSkKZW5kCmVuZApmdW5jdGlvbiBtLmludERpcihjZmcpCmxvY2FsIG9iamRpciA9IHZzdHVkaW8ucGF0aChjZmcsIGNmZy5vYmpkaXIpCm0uZWxlbWVudCgiSW50RGlyIiwgbmlsLCAiJXNcXCIsIG9iamRpcikKZW5kCmZ1bmN0aW9uIG0uaW50cmluc2ljRnVuY3Rpb25zKGNmZykKaWYgY2ZnLmludHJpbnNpY3Mgfj0gbmlsIHRoZW4KaWYgY2ZnLmludHJpbnNpY3MgdGhlbgptLmVsZW1lbnQoIkludHJpbnNpY0Z1bmN0aW9ucyIsIG5pbCwgInRydWUiKQplbHNlCm0uZWxlbWVudCgiSW50cmluc2ljRnVuY3Rpb25zIiwgbmlsLCAiZmFsc2UiKQplbmQKZWxzZWlmIGNvbmZpZy5pc09wdGltaXplZEJ1aWxkKGNmZykgdGhlbgptLmVsZW1lbnQoIkludHJpbnNpY0Z1bmN0aW9ucyIsIG5pbCwgInRydWUiKQplbmQKZW5kCmZ1bmN0aW9uIG0ua2V5d29yZChwcmopCmxvY2FsIGlzV2luLCBpc01hbmFnZWQsIGlzTWFrZWZpbGUKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwppZiBjZmcuc3lzdGVtID09IHAuV0lORE9XUyB0aGVuCmlzV2luID0gdHJ1ZQplbmQKaWYgY2ZnLmNsciB+PSBwLk9GRiB0aGVuCmlzTWFuYWdlZCA9IHRydWUKZW5kCmlmIHZzdHVkaW8uaXNNYWtlZmlsZShjZmcpIHRoZW4KaXNNYWtlZmlsZSA9IHRydWUKZW5kCmVuZAppZiBpc1dpbiB0aGVuCmlmIGlzTWFrZWZpbGUgdGhlbgptLmVsZW1lbnQoIktleXdvcmQiLCBuaWwsICJNYWtlRmlsZVByb2oiKQplbHNlCmlmIGlzTWFuYWdlZCBvciBtLmlzQ2xyTWl4ZWQocHJqKSB0aGVuCm0udGFyZ2V0RnJhbWV3b3JrKHByaikKZW5kCmlmIGlzTWFuYWdlZCB0aGVuCm0uZWxlbWVudCgiS2V5d29yZCIsIG5pbCwgIk1hbmFnZWRDUHJvaiIpCmVsc2UKbS5lbGVtZW50KCJLZXl3b3JkIiwgbmlsLCAiV2luMzJQcm9qIikKZW5kCm0uZWxlbWVudCgiUm9vdE5hbWVzcGFjZSIsIG5pbCwgIiVzIiwgcHJqLm5hbWUpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0ubGlicmFyeVBhdGgoY2ZnKQpsb2NhbCBkaXJzID0gdnN0dWRpby5wYXRoKGNmZywgY2ZnLnN5c2xpYmRpcnMpCmlmICNkaXJzID4gMCB0aGVuCm0uZWxlbWVudCgiTGlicmFyeVBhdGgiLCBuaWwsICIlczskKExpYnJhcnlQYXRoKSIsIHRhYmxlLmNvbmNhdChkaXJzLCAiOyIpKQplbmQKZW5kCmZ1bmN0aW9uIG0ubGlua0luY3JlbWVudGFsKGNmZykKaWYgY2ZnLmtpbmQgfj0gcC5TVEFUSUNMSUIgdGhlbgptLmVsZW1lbnQoIkxpbmtJbmNyZW1lbnRhbCIsIG5pbCwgIiVzIiwgdG9zdHJpbmcoY29uZmlnLmNhbkxpbmtJbmNyZW1lbnRhbChjZmcpKSkKZW5kCmVuZApmdW5jdGlvbiBtLmxpbmtMaWJyYXJ5RGVwZW5kZW5jaWVzKGNmZywgZXhwbGljaXQpCmlmIGV4cGxpY2l0IHRoZW4KcC5wdXNoKCc8UHJvamVjdFJlZmVyZW5jZT4nKQptLmVsZW1lbnQoIkxpbmtMaWJyYXJ5RGVwZW5kZW5jaWVzIiwgbmlsLCAiZmFsc2UiKQpwLnBvcCgnPC9Qcm9qZWN0UmVmZXJlbmNlPicpCmVuZAplbmQKZnVuY3Rpb24gbS5taW5pbWFsUmVidWlsZChjZmcpCmlmIGNvbmZpZy5pc09wdGltaXplZEJ1aWxkKGNmZykgb3IKICAgY2ZnLmZsYWdzLk5vTWluaW1hbFJlYnVpbGQgb3IKICAgY2ZnLmZsYWdzLk11bHRpUHJvY2Vzc29yQ29tcGlsZSBvcgogICBjZmcuZGVidWdmb3JtYXQgPT0gcC5DNwp0aGVuCm0uZWxlbWVudCgiTWluaW1hbFJlYnVpbGQiLCBuaWwsICJmYWxzZSIpCmVuZAplbmQKZnVuY3Rpb24gbS5tb2R1bGVEZWZpbml0aW9uRmlsZShjZmcpCmxvY2FsIGRmID0gY29uZmlnLmZpbmRmaWxlKGNmZywgIi5kZWYiKQppZiBkZiB0aGVuCm0uZWxlbWVudCgiTW9kdWxlRGVmaW5pdGlvbkZpbGUiLCBuaWwsICIlcyIsIGRmKQplbmQKZW5kCmZ1bmN0aW9uIG0ubXVsdGlQcm9jZXNzb3JDb21waWxhdGlvbihjZmcpCmlmIGNmZy5mbGFncy5NdWx0aVByb2Nlc3NvckNvbXBpbGUgdGhlbgptLmVsZW1lbnQoIk11bHRpUHJvY2Vzc29yQ29tcGlsYXRpb24iLCBuaWwsICJ0cnVlIikKZW5kCmVuZApmdW5jdGlvbiBtLm5tYWtlQnVpbGRDb21tYW5kcyhjZmcpCm0ubm1ha2VDb21tYW5kTGluZShjZmcsIGNmZy5idWlsZGNvbW1hbmRzLCAiQnVpbGQiKQplbmQKZnVuY3Rpb24gbS5ubWFrZUNsZWFuQ29tbWFuZHMoY2ZnKQptLm5tYWtlQ29tbWFuZExpbmUoY2ZnLCBjZmcuY2xlYW5jb21tYW5kcywgIkNsZWFuIikKZW5kCmZ1bmN0aW9uIG0ubm1ha2VDb21tYW5kTGluZShjZmcsIGNvbW1hbmRzLCBwaGFzZSkKaWYgI2NvbW1hbmRzID4gMCB0aGVuCmNvbW1hbmRzID0gb3MudHJhbnNsYXRlQ29tbWFuZHNBbmRQYXRocyhjb21tYW5kcywgY2ZnLnByb2plY3QuYmFzZWRpciwgY2ZnLnByb2plY3QubG9jYXRpb24pCmNvbW1hbmRzID0gdGFibGUuY29uY2F0KHAuZXNjKGNvbW1hbmRzKSwgcC5lb2woKSkKcC53KCc8Tk1ha2Ulc0NvbW1hbmRMaW5lPiVzPC9OTWFrZSVzQ29tbWFuZExpbmU+JywgcGhhc2UsIGNvbW1hbmRzLCBwaGFzZSkKZW5kCmVuZApmdW5jdGlvbiBtLm5tYWtlSW5jbHVkZURpcnMoY2ZnKQppZiBjZmcua2luZCB+PSBwLk5PTkUgYW5kICNjZmcuaW5jbHVkZWRpcnMgPiAwIHRoZW4KbG9jYWwgZGlycyA9IHZzdHVkaW8ucGF0aChjZmcsIGNmZy5pbmNsdWRlZGlycykKaWYgI2RpcnMgPiAwIHRoZW4KbS5lbGVtZW50KCJOTWFrZUluY2x1ZGVTZWFyY2hQYXRoIiwgbmlsLCAiJXMiLCB0YWJsZS5jb25jYXQoZGlycywgIjsiKSkKZW5kCmVuZAplbmQKZnVuY3Rpb24gbS5ubWFrZU91dERpcnMoY2ZnKQppZiB2c3R1ZGlvLmlzTWFrZWZpbGUoY2ZnKSB0aGVuCm0ub3V0RGlyKGNmZykKbS5pbnREaXIoY2ZnKQplbmQKZW5kCmZ1bmN0aW9uIG0ud2luZG93c1NES0Rlc2t0b3BBUk1TdXBwb3J0KGNmZykKaWYgY2ZnLmFyY2hpdGVjdHVyZSA9PSBwLkFSTSB0aGVuCnAudygnPFdpbmRvd3NTREtEZXNrdG9wQVJNU3VwcG9ydD50cnVlPC9XaW5kb3dzU0RLRGVza3RvcEFSTVN1cHBvcnQ+JykKZW5kCmVuZApmdW5jdGlvbiBtLm5tYWtlT3V0cHV0KGNmZykKbS5lbGVtZW50KCJOTWFrZU91dHB1dCIsIG5pbCwgIiQoT3V0RGlyKSVzIiwgY2ZnLmJ1aWxkdGFyZ2V0Lm5hbWUpCmVuZApmdW5jdGlvbiBtLm5tYWtlUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMoY2ZnKQppZiBjZmcua2luZCB+PSBwLk5PTkUgYW5kICNjZmcuZGVmaW5lcyA+IDAgdGhlbgpsb2NhbCBkZWZpbmVzID0gdGFibGUuY29uY2F0KGNmZy5kZWZpbmVzLCAiOyIpCmRlZmluZXMgPSBkZWZpbmVzIC4uICI7JChOTWFrZVByZXByb2Nlc3NvckRlZmluaXRpb25zKSIKbS5lbGVtZW50KCdOTWFrZVByZXByb2Nlc3NvckRlZmluaXRpb25zJywgbmlsLCBkZWZpbmVzKQplbmQKZW5kCmZ1bmN0aW9uIG0ubm1ha2VSZWJ1aWxkQ29tbWFuZHMoY2ZnKQptLm5tYWtlQ29tbWFuZExpbmUoY2ZnLCBjZmcucmVidWlsZGNvbW1hbmRzLCAiUmVCdWlsZCIpCmVuZApmdW5jdGlvbiBtLm9iamVjdEZpbGVOYW1lKGZjZmcpCmlmIGZjZmcub2JqbmFtZSB+PSBmY2ZnLmJhc2VuYW1lIHRoZW4KbS5lbGVtZW50KCJPYmplY3RGaWxlTmFtZSIsIG0uY29uZmlnUGFpcihmY2ZnLmNvbmZpZyksICIkKEludERpcilcXCVzLm9iaiIsIGZjZmcub2JqbmFtZSkKZW5kCmVuZApmdW5jdGlvbiBtLm9taXREZWZhdWx0TGliKGNmZykKaWYgY2ZnLmZsYWdzLk9taXREZWZhdWx0TGlicmFyeSB0aGVuCm0uZWxlbWVudCgiT21pdERlZmF1bHRMaWJOYW1lIiwgbmlsLCAidHJ1ZSIpCmVuZAplbmQKZnVuY3Rpb24gbS5vbWl0RnJhbWVQb2ludGVycyhjZmcpCmlmIGNmZy5mbGFncy5Ob0ZyYW1lUG9pbnRlciB0aGVuCm0uZWxlbWVudCgiT21pdEZyYW1lUG9pbnRlcnMiLCBuaWwsICJ0cnVlIikKZW5kCmVuZApmdW5jdGlvbiBtLm9wdGltaXplUmVmZXJlbmNlcyhjZmcpCmlmIGNvbmZpZy5pc09wdGltaXplZEJ1aWxkKGNmZykgdGhlbgptLmVsZW1lbnQoIkVuYWJsZUNPTURBVEZvbGRpbmciLCBuaWwsICJ0cnVlIikKbS5lbGVtZW50KCJPcHRpbWl6ZVJlZmVyZW5jZXMiLCBuaWwsICJ0cnVlIikKZW5kCmVuZApmdW5jdGlvbiBtLm9wdGltaXphdGlvbihjZmcsIGNvbmRpdGlvbikKbG9jYWwgbWFwID0geyBPZmY9IkRpc2FibGVkIiwgT249IkZ1bGwiLCBEZWJ1Zz0iRGlzYWJsZWQiLCBGdWxsPSJGdWxsIiwgU2l6ZT0iTWluU3BhY2UiLCBTcGVlZD0iTWF4U3BlZWQiIH0KbG9jYWwgdmFsdWUgPSBtYXBbY2ZnLm9wdGltaXplXQppZiB2YWx1ZSBvciBub3QgY29uZGl0aW9uIHRoZW4KbS5lbGVtZW50KCdPcHRpbWl6YXRpb24nLCBjb25kaXRpb24sIHZhbHVlIG9yICJEaXNhYmxlZCIpCmVuZAplbmQKZnVuY3Rpb24gbS5vdXREaXIoY2ZnKQpsb2NhbCBvdXRkaXIgPSB2c3R1ZGlvLnBhdGgoY2ZnLCBjZmcuYnVpbGR0YXJnZXQuZGlyZWN0b3J5KQptLmVsZW1lbnQoIk91dERpciIsIG5pbCwgIiVzXFwiLCBvdXRkaXIpCmVuZApmdW5jdGlvbiBtLm91dHB1dEZpbGUoY2ZnKQppZiBjZmcuc3lzdGVtID09IHAuWEJPWDM2MCB0aGVuCm0uZWxlbWVudCgiT3V0cHV0RmlsZSIsIG5pbCwgIiQoT3V0RGlyKSVzIiwgY2ZnLmJ1aWxkdGFyZ2V0Lm5hbWUpCmVuZAplbmQKZnVuY3Rpb24gbS5leGVjdXRhYmxlUGF0aChjZmcpCmxvY2FsIGRpcnMgPSB2c3R1ZGlvLnBhdGgoY2ZnLCBjZmcuYmluZGlycykKaWYgI2RpcnMgPiAwIHRoZW4KZGlycyA9IHRhYmxlLnRyYW5zbGF0ZShkaXJzLCBmdW5jdGlvbihkaXIpCmlmIHBhdGguaXNhYnNvbHV0ZShkaXIpIHRoZW4KcmV0dXJuIGRpcgplbmQKcmV0dXJuICIkKFByb2plY3REaXIpIiAuLiBkaXIKZW5kKQptLmVsZW1lbnQoIkV4ZWN1dGFibGVQYXRoIiwgbmlsLCAiJXM7JChFeGVjdXRhYmxlUGF0aCkiLCB0YWJsZS5jb25jYXQoZGlycywgIjsiKSkKZW5kCmVuZApmdW5jdGlvbiBtLnBsYXRmb3JtVG9vbHNldChjZmcpCmxvY2FsIHRvb2wsIHZlcnNpb24gPSBwLmNvbmZpZy50b29sc2V0KGNmZykKaWYgbm90IHZlcnNpb24gdGhlbgpsb2NhbCB2YWx1ZSA9IHAuYWN0aW9uLmN1cnJlbnQoKS50b29sc2V0CnRvb2wsIHZlcnNpb24gPSBwLnRvb2xzLmNhbm9uaWNhbCh2YWx1ZSkKZW5kCmlmIHZlcnNpb24gdGhlbgppZiBjZmcua2luZCA9PSBwLk5PTkUgb3IgY2ZnLmtpbmQgPT0gcC5NQUtFRklMRSB0aGVuCmlmIHAuY29uZmlnLmhhc0ZpbGUoY2ZnLCBwYXRoLmlzY3BwZmlsZSkgdGhlbgptLmVsZW1lbnQoIlBsYXRmb3JtVG9vbHNldCIsIG5pbCwgdmVyc2lvbikKZW5kCmVsc2UKbS5lbGVtZW50KCJQbGF0Zm9ybVRvb2xzZXQiLCBuaWwsIHZlcnNpb24pCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0ucHJlY29tcGlsZWRIZWFkZXIoY2ZnLCBjb25kaXRpb24pCnByamNmZywgZmlsZWNmZyA9IHAuY29uZmlnLm5vcm1hbGl6ZShjZmcpCmlmIGZpbGVjZmcgdGhlbgppZiBwcmpjZmcucGNoc291cmNlID09IGZpbGVjZmcuYWJzcGF0aCBhbmQgbm90IHByamNmZy5mbGFncy5Ob1BDSCB0aGVuCm0uZWxlbWVudCgnUHJlY29tcGlsZWRIZWFkZXInLCBjb25kaXRpb24sICdDcmVhdGUnKQplbHNlaWYgZmlsZWNmZy5mbGFncy5Ob1BDSCB0aGVuCm0uZWxlbWVudCgnUHJlY29tcGlsZWRIZWFkZXInLCBjb25kaXRpb24sICdOb3RVc2luZycpCmVuZAplbHNlCmlmIG5vdCBwcmpjZmcuZmxhZ3MuTm9QQ0ggYW5kIHByamNmZy5wY2hoZWFkZXIgdGhlbgptLmVsZW1lbnQoIlByZWNvbXBpbGVkSGVhZGVyIiwgbmlsLCAiVXNlIikKbS5lbGVtZW50KCJQcmVjb21waWxlZEhlYWRlckZpbGUiLCBuaWwsICIlcyIsIHByamNmZy5wY2hoZWFkZXIpCmVsc2UKbS5lbGVtZW50KCJQcmVjb21waWxlZEhlYWRlciIsIG5pbCwgIk5vdFVzaW5nIikKZW5kCmVuZAplbmQKZnVuY3Rpb24gbS5wcmVwcm9jZXNzb3JEZWZpbml0aW9ucyhjZmcsIGRlZmluZXMsIGVzY2FwZVF1b3RlcywgY29uZGl0aW9uKQppZiAjZGVmaW5lcyA+IDAgdGhlbgpkZWZpbmVzID0gdGFibGUuY29uY2F0KGRlZmluZXMsICI7IikKaWYgZXNjYXBlUXVvdGVzIHRoZW4KZGVmaW5lcyA9IGRlZmluZXM6Z3N1YignIicsICdcXCInKQplbmQKZGVmaW5lcyA9IGRlZmluZXMgLi4gIjslJShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucykiCm0uZWxlbWVudCgnUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMnLCBjb25kaXRpb24sIGRlZmluZXMpCmVuZAplbmQKZnVuY3Rpb24gbS51bmRlZmluZVByZXByb2Nlc3NvckRlZmluaXRpb25zKGNmZywgdW5kZWZpbmVzLCBlc2NhcGVRdW90ZXMsIGNvbmRpdGlvbikKaWYgI3VuZGVmaW5lcyA+IDAgdGhlbgp1bmRlZmluZXMgPSB0YWJsZS5jb25jYXQodW5kZWZpbmVzLCAiOyIpCmlmIGVzY2FwZVF1b3RlcyB0aGVuCnVuZGVmaW5lcyA9IHVuZGVmaW5lczpnc3ViKCciJywgJ1xcIicpCmVuZAp1bmRlZmluZXMgPSB1bmRlZmluZXMgLi4gIjslJShVbmRlZmluZVByZXByb2Nlc3NvckRlZmluaXRpb25zKSIKbS5lbGVtZW50KCdVbmRlZmluZVByZXByb2Nlc3NvckRlZmluaXRpb25zJywgY29uZGl0aW9uLCB1bmRlZmluZXMpCmVuZAplbmQKZnVuY3Rpb24gbS5wcm9ncmFtRGF0YWJhc2VGaWxlKGNmZykKaWYgY2ZnLnN5bWJvbHNwYXRoIGFuZCBjZmcuc3ltYm9scyA9PSBwLk9OIGFuZCBjZmcuZGVidWdmb3JtYXQgfj0gImM3IiB0aGVuCm0uZWxlbWVudCgiUHJvZ3JhbURhdGFiYXNlRmlsZSIsIG5pbCwgcC5wcm9qZWN0LmdldHJlbGF0aXZlKGNmZy5wcm9qZWN0LCBjZmcuc3ltYm9sc3BhdGgpKQplbmQKZW5kCmZ1bmN0aW9uIG0ucHJvamVjdEd1aWQocHJqKQptLmVsZW1lbnQoIlByb2plY3RHdWlkIiwgbmlsLCAieyVzfSIsIHByai51dWlkKQplbmQKZnVuY3Rpb24gbS5wcm9qZWN0TmFtZShwcmopCmlmIHByai5uYW1lIH49IHByai5maWxlbmFtZSB0aGVuCm0uZWxlbWVudCgiUHJvamVjdE5hbWUiLCBuaWwsICIlcyIsIHByai5uYW1lKQplbmQKZW5kCmZ1bmN0aW9uIG0ucHJvcGVydHlHcm91cChjZmcsIGxhYmVsKQpsb2NhbCBjb25kCmlmIGNmZyB0aGVuCmNvbmQgPSBzdHJpbmcuZm9ybWF0KCcgJXMnLCBtLmNvbmRpdGlvbihjZmcpKQplbmQKaWYgbGFiZWwgdGhlbgpsYWJlbCA9IHN0cmluZy5mb3JtYXQoJyBMYWJlbD0iJXMiJywgbGFiZWwpCmVuZApwLnB1c2goJzxQcm9wZXJ0eUdyb3VwJXMlcz4nLCBjb25kIG9yICIiLCBsYWJlbCBvciAiIikKZW5kCmZ1bmN0aW9uIG0ucHJvcGVydHlTaGVldHMoY2ZnKQpwLnB1c2goJzxJbXBvcnRHcm91cCBMYWJlbD0iUHJvcGVydHlTaGVldHMiICVzPicsIG0uY29uZGl0aW9uKGNmZykpCnAudygnPEltcG9ydCBQcm9qZWN0PSIkKFVzZXJSb290RGlyKVxcTWljcm9zb2Z0LkNwcC4kKFBsYXRmb3JtKS51c2VyLnByb3BzIiBDb25kaXRpb249ImV4aXN0cyhcJyQoVXNlclJvb3REaXIpXFxNaWNyb3NvZnQuQ3BwLiQoUGxhdGZvcm0pLnVzZXIucHJvcHNcJykiIExhYmVsPSJMb2NhbEFwcERhdGFQbGF0Zm9ybSIgLz4nKQpwLnBvcCgnPC9JbXBvcnRHcm91cD4nKQplbmQKZnVuY3Rpb24gbS5wcm9wZXJ0eVNoZWV0R3JvdXAocHJqKQpmb3IgY2ZnIGluIHByb2plY3QuZWFjaGNvbmZpZyhwcmopIGRvCm0ucHJvcGVydHlTaGVldHMoY2ZnKQplbmQKZW5kCmZ1bmN0aW9uIG0ucmVmZXJlbmNlQ29weUxvY2FsU2F0ZWxsaXRlQXNzZW1ibGllcyhwcmosIHJlZikKbS5lbGVtZW50KCJDb3B5TG9jYWxTYXRlbGxpdGVBc3NlbWJsaWVzIiwgbmlsLCAiZmFsc2UiKQplbmQKZnVuY3Rpb24gbS5yZWZlcmVuY2VMaW5rTGlicmFyeURlcGVuZGVuY2llcyhwcmosIHJlZikKbS5lbGVtZW50KCJMaW5rTGlicmFyeURlcGVuZGVuY2llcyIsIG5pbCwgInRydWUiKQplbmQKZnVuY3Rpb24gbS5yZWZlcmVuY2VPdXRwdXRBc3NlbWJseShwcmosIHJlZikKbS5lbGVtZW50KCJSZWZlcmVuY2VPdXRwdXRBc3NlbWJseSIsIG5pbCwgInRydWUiKQplbmQKZnVuY3Rpb24gbS5yZWZlcmVuY2VQcml2YXRlKHByaiwgcmVmKQptLmVsZW1lbnQoIlByaXZhdGUiLCBuaWwsICJ0cnVlIikKZW5kCmZ1bmN0aW9uIG0ucmVmZXJlbmNlUHJvamVjdChwcmosIHJlZikKbS5lbGVtZW50KCJQcm9qZWN0IiwgbmlsLCAieyVzfSIsIHJlZi51dWlkKQplbmQKZnVuY3Rpb24gbS5yZWZlcmVuY2VVc2VMaWJyYXJ5RGVwZW5kZW5jZXMocHJqLCByZWYpCm0uZWxlbWVudCgiVXNlTGlicmFyeURlcGVuZGVuY3lJbnB1dHMiLCBuaWwsICJmYWxzZSIpCmVuZApmdW5jdGlvbiBtLnJlc291cmNlQWRkaXRpb25hbEluY2x1ZGVEaXJlY3RvcmllcyhjZmcpCm0uYWRkaXRpb25hbEluY2x1ZGVEaXJlY3RvcmllcyhjZmcsIHRhYmxlLmpvaW4oY2ZnLmluY2x1ZGVkaXJzLCBjZmcucmVzaW5jbHVkZWRpcnMpKQplbmQKZnVuY3Rpb24gbS5yZXNvdXJjZVByZXByb2Nlc3NvckRlZmluaXRpb25zKGNmZykKbG9jYWwgZGVmaW5lcyA9IHRhYmxlLmpvaW4oY2ZnLmRlZmluZXMsIGNmZy5yZXNkZWZpbmVzKQppZiBjZmcuZXhjZXB0aW9uaGFuZGxpbmcgPT0gcC5PRkYgYW5kIF9BQ1RJT04gPj0gInZzMjAxMyIgdGhlbgp0YWJsZS5pbnNlcnQoZGVmaW5lcywgIl9IQVNfRVhDRVBUSU9OUz0wIikKZW5kCm0ucHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMoY2ZnLCBkZWZpbmVzLCB0cnVlKQplbmQKZnVuY3Rpb24gbS5ydW50aW1lTGlicmFyeShjZmcpCmxvY2FsIHJ1bnRpbWVzID0gewpTdGF0aWNEZWJ1ZyAgID0gIk11bHRpVGhyZWFkZWREZWJ1ZyIsClN0YXRpY1JlbGVhc2UgPSAiTXVsdGlUaHJlYWRlZCIsCn0KbG9jYWwgcnVudGltZSA9IHJ1bnRpbWVzW2NvbmZpZy5nZXRydW50aW1lKGNmZyldCmlmIHJ1bnRpbWUgdGhlbgptLmVsZW1lbnQoIlJ1bnRpbWVMaWJyYXJ5IiwgbmlsLCBydW50aW1lKQplbmQKZW5kCmZ1bmN0aW9uIG0uY2FsbGluZ0NvbnZlbnRpb24oY2ZnKQppZiBjZmcuY2FsbGluZ2NvbnZlbnRpb24gdGhlbgptLmVsZW1lbnQoIkNhbGxpbmdDb252ZW50aW9uIiwgbmlsLCBjZmcuY2FsbGluZ2NvbnZlbnRpb24pCmVuZAplbmQKZnVuY3Rpb24gbS5ydW50aW1lVHlwZUluZm8oY2ZnLCBjb25kaXRpb24pCmlmIGNmZy5ydHRpID09IHAuT0ZGIGFuZCAoKG5vdCBjZmcuY2xyKSBvciBjZmcuY2xyID09IHAuT0ZGKSB0aGVuCm0uZWxlbWVudCgiUnVudGltZVR5cGVJbmZvIiwgY29uZGl0aW9uLCAiZmFsc2UiKQplbHNlaWYgY2ZnLnJ0dGkgPT0gcC5PTiB0aGVuCm0uZWxlbWVudCgiUnVudGltZVR5cGVJbmZvIiwgY29uZGl0aW9uLCAidHJ1ZSIpCmVuZAplbmQKZnVuY3Rpb24gbS5idWZmZXJTZWN1cml0eUNoZWNrKGNmZykKbG9jYWwgdG9vbCwgdG9vbFZlcnNpb24gPSBwLmNvbmZpZy50b29sc2V0KGNmZykKaWYgY2ZnLmZsYWdzLk5vQnVmZmVyU2VjdXJpdHlDaGVjayBvciAodG9vbFZlcnNpb24gYW5kIHRvb2xWZXJzaW9uOnN0YXJ0c3dpdGgoIkxMVk0tdnMiKSkgdGhlbgptLmVsZW1lbnQoIkJ1ZmZlclNlY3VyaXR5Q2hlY2siLCBuaWwsICJmYWxzZSIpCmVuZAplbmQKZnVuY3Rpb24gbS5zdHJpbmdQb29saW5nKGNmZykKaWYgY2ZnLnN0cmluZ3Bvb2xpbmcgfj0gbmlsIHRoZW4KaWYgY2ZnLnN0cmluZ3Bvb2xpbmcgdGhlbgptLmVsZW1lbnQoIlN0cmluZ1Bvb2xpbmciLCBuaWwsICJ0cnVlIikKZWxzZQptLmVsZW1lbnQoIlN0cmluZ1Bvb2xpbmciLCBuaWwsICJmYWxzZSIpCmVuZAplbHNlaWYgY29uZmlnLmlzT3B0aW1pemVkQnVpbGQoY2ZnKSB0aGVuCm0uZWxlbWVudCgiU3RyaW5nUG9vbGluZyIsIG5pbCwgInRydWUiKQplbmQKZW5kCmZ1bmN0aW9uIG0uc3ViU3lzdGVtKGNmZykKaWYgY2ZnLnN5c3RlbSB+PSBwLlhCT1gzNjAgdGhlbgpsb2NhbCBzdWJzeXN0ZW0gPSBpaWYoY2ZnLmtpbmQgPT0gcC5DT05TT0xFQVBQLCAiQ29uc29sZSIsICJXaW5kb3dzIikKbS5lbGVtZW50KCJTdWJTeXN0ZW0iLCBuaWwsIHN1YnN5c3RlbSkKZW5kCmVuZApmdW5jdGlvbiBtLnRhcmdldEV4dChjZmcpCmxvY2FsIGV4dCA9IGNmZy5idWlsZHRhcmdldC5leHRlbnNpb24KaWYgZXh0IH49ICIiIHRoZW4KbS5lbGVtZW50KCJUYXJnZXRFeHQiLCBuaWwsICIlcyIsIGV4dCkKZWxzZQpwLncoJzxUYXJnZXRFeHQ+JykKcC53KCc8L1RhcmdldEV4dD4nKQplbmQKZW5kCmZ1bmN0aW9uIG0udGFyZ2V0TWFjaGluZShjZmcpCmxvY2FsIHRhcmdldG1hY2hpbmUgPSB7Cng4NiA9ICJNYWNoaW5lWDg2IiwKeDg2XzY0ID0gIk1hY2hpbmVYNjQiLAp9CmlmIGNmZy5raW5kID09IHAuU1RBVElDTElCIGFuZCBjb25maWcuaGFzRmlsZShjZmcsIHBhdGguaXNyZXNvdXJjZWZpbGUpIHRoZW4KbG9jYWwgdmFsdWUgPSB0YXJnZXRtYWNoaW5lW2NmZy5hcmNoaXRlY3R1cmVdCmlmIHZhbHVlIH49IG5pbCB0aGVuCm0uZWxlbWVudCgiVGFyZ2V0TWFjaGluZSIsIG5pbCwgJyVzJywgdmFsdWUpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0udGFyZ2V0TmFtZShjZmcpCm0uZWxlbWVudCgiVGFyZ2V0TmFtZSIsIG5pbCwgIiVzJXMiLCBjZmcuYnVpbGR0YXJnZXQucHJlZml4LCBjZmcuYnVpbGR0YXJnZXQuYmFzZW5hbWUpCmVuZApmdW5jdGlvbiBtLnRhcmdldFBsYXRmb3JtVmVyc2lvbihwcmopCmxvY2FsIG1pbiA9IHByb2plY3Quc3lzdGVtdmVyc2lvbihwcmopCmlmIG1pbiB+PSBuaWwgYW5kIF9BQ1RJT04gPj0gInZzMjAxNSIgdGhlbgptLmVsZW1lbnQoIldpbmRvd3NUYXJnZXRQbGF0Zm9ybVZlcnNpb24iLCBuaWwsIG1pbikKZW5kCmVuZApmdW5jdGlvbiBtLnByZWZlcnJlZFRvb2xBcmNoaXRlY3R1cmUocHJqKQppZiBfQUNUSU9OID49ICJ2czIwMTMiIHRoZW4KaWYgcHJqLnByZWZlcnJlZHRvb2xhcmNoaXRlY3R1cmUgPT0gcC5YODZfNjQgdGhlbgptLmVsZW1lbnQoIlByZWZlcnJlZFRvb2xBcmNoaXRlY3R1cmUiLCBuaWwsICd4NjQnKQplbHNlaWYgcHJqLnByZWZlcnJlZHRvb2xhcmNoaXRlY3R1cmUgPT0gcC5YODYgdGhlbgptLmVsZW1lbnQoIlByZWZlcnJlZFRvb2xBcmNoaXRlY3R1cmUiLCBuaWwsICd4ODYnKQplbmQKZWxzZQppZiBwcmoucHJlZmVycmVkdG9vbGFyY2hpdGVjdHVyZSA9PSBwLlg4Nl82NCB0aGVuCm0uZWxlbWVudCgiVXNlTmF0aXZlRW52aXJvbm1lbnQiLCBuaWwsICd0cnVlJykKZW5kCmVuZAplbmQKZnVuY3Rpb24gbS50cmVhdExpbmtlcldhcm5pbmdBc0Vycm9ycyhjZmcpCmlmIGNmZy5mbGFncy5GYXRhbExpbmtXYXJuaW5ncyB0aGVuCmxvY2FsIGVsID0gaWlmKGNmZy5raW5kID09IHAuU1RBVElDTElCLCAiTGliIiwgIkxpbmtlciIpCm0uZWxlbWVudCgiVHJlYXQiIC4uIGVsIC4uICJXYXJuaW5nQXNFcnJvcnMiLCBuaWwsICJ0cnVlIikKZW5kCmVuZApmdW5jdGlvbiBtLnRyZWF0V0NoYXJfdEFzQnVpbHRJblR5cGUoY2ZnKQpsb2NhbCBtYXAgPSB7IE9uID0gInRydWUiLCBPZmYgPSAiZmFsc2UiIH0KbG9jYWwgdmFsdWUgPSBtYXBbY2ZnLm5hdGl2ZXdjaGFyXQppZiB2YWx1ZSB0aGVuCm0uZWxlbWVudCgiVHJlYXRXQ2hhcl90QXNCdWlsdEluVHlwZSIsIG5pbCwgdmFsdWUpCmVuZAplbmQKZnVuY3Rpb24gbS50cmVhdFdhcm5pbmdBc0Vycm9yKGNmZykKaWYgY2ZnLmZsYWdzLkZhdGFsQ29tcGlsZVdhcm5pbmdzIGFuZCBjZmcud2FybmluZ3Mgfj0gcC5PRkYgdGhlbgptLmVsZW1lbnQoIlRyZWF0V2FybmluZ0FzRXJyb3IiLCBuaWwsICJ0cnVlIikKZW5kCmVuZApmdW5jdGlvbiBtLmRpc2FibGVTcGVjaWZpY1dhcm5pbmdzKGNmZywgY29uZGl0aW9uKQppZiAjY2ZnLmRpc2FibGV3YXJuaW5ncyA+IDAgdGhlbgpsb2NhbCB3YXJuaW5ncyA9IHRhYmxlLmNvbmNhdChjZmcuZGlzYWJsZXdhcm5pbmdzLCAiOyIpCndhcm5pbmdzID0gd2FybmluZ3MgLi4gIjslJShEaXNhYmxlU3BlY2lmaWNXYXJuaW5ncykiCm0uZWxlbWVudCgnRGlzYWJsZVNwZWNpZmljV2FybmluZ3MnLCBjb25kaXRpb24sIHdhcm5pbmdzKQplbmQKZW5kCmZ1bmN0aW9uIG0udHJlYXRTcGVjaWZpY1dhcm5pbmdzQXNFcnJvcnMoY2ZnLCBjb25kaXRpb24pCmlmICNjZmcuZmF0YWx3YXJuaW5ncyA+IDAgdGhlbgpsb2NhbCBmYXRhbCA9IHRhYmxlLmNvbmNhdChjZmcuZmF0YWx3YXJuaW5ncywgIjsiKQpmYXRhbCA9IGZhdGFsIC4uICI7JSUoVHJlYXRTcGVjaWZpY1dhcm5pbmdzQXNFcnJvcnMpIgptLmVsZW1lbnQoJ1RyZWF0U3BlY2lmaWNXYXJuaW5nc0FzRXJyb3JzJywgY29uZGl0aW9uLCBmYXRhbCkKZW5kCmVuZApmdW5jdGlvbiBtLnVzZURlYnVnTGlicmFyaWVzKGNmZykKbG9jYWwgcnVudGltZSA9IGNvbmZpZy5nZXRydW50aW1lKGNmZykKbS5lbGVtZW50KCJVc2VEZWJ1Z0xpYnJhcmllcyIsIG5pbCwgdG9zdHJpbmcocnVudGltZTplbmRzd2l0aCgiRGVidWciKSkpCmVuZApmdW5jdGlvbiBtLnVzZU9mTWZjKGNmZykKaWYgY2ZnLmZsYWdzLk1GQyB0aGVuCm0uZWxlbWVudCgiVXNlT2ZNZmMiLCBuaWwsIGlpZihjZmcuZmxhZ3MuU3RhdGljUnVudGltZSwgIlN0YXRpYyIsICJEeW5hbWljIikpCmVuZAplbmQKZnVuY3Rpb24gbS51c2VPZkF0bChjZmcpCmlmIGNmZy5hdGwgdGhlbgptLmVsZW1lbnQoIlVzZU9mQVRMIiwgbmlsLCBjZmcuYXRsKQplbmQKZW5kCmZ1bmN0aW9uIG0udXNlck1hY3JvcyhjZmcpCnAudygnPFByb3BlcnR5R3JvdXAgTGFiZWw9IlVzZXJNYWNyb3MiIC8+JykKZW5kCmZ1bmN0aW9uIG0ud2FybmluZ0xldmVsKGNmZykKbG9jYWwgbWFwID0geyBPZmYgPSAiVHVybk9mZkFsbFdhcm5pbmdzIiwgRXh0cmEgPSAiTGV2ZWw0IiB9Cm0uZWxlbWVudCgiV2FybmluZ0xldmVsIiwgbmlsLCAiJXMiLCBtYXBbY2ZnLndhcm5pbmdzXSBvciAiTGV2ZWwzIikKZW5kCmZ1bmN0aW9uIG0ueG1sRGVjbGFyYXRpb24oKQpwLnhtbFV0ZjgoKQplbmQKZnVuY3Rpb24gbS5jb25kaXRpb25Gcm9tQ29uZmlnVGV4dChjZmdUZXh0KQpyZXR1cm4gc3RyaW5nLmZvcm1hdCgnQ29uZGl0aW9uPSJcJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSlcJz09XCclc1wnIicsIHAuZXNjKGNmZ1RleHQpKQplbmQKZnVuY3Rpb24gbS5jb25kaXRpb24oY2ZnKQpyZXR1cm4gbS5jb25kaXRpb25Gcm9tQ29uZmlnVGV4dCh2c3R1ZGlvLnByb2plY3RDb25maWcoY2ZnKSkKZW5kCmZ1bmN0aW9uIG0uZWxlbWVudChuYW1lLCBjb25kaXRpb24sIHZhbHVlLCAuLi4pCmxvY2FsIGFyZyA9IHsuLi59CmlmIHNlbGVjdCgnIycsLi4uKSA9PSAwIHRoZW4KdmFsdWUgPSBwLmVzYyh2YWx1ZSkKZWxzZQpmb3IgaSA9IDEsICNhcmcgZG8KYXJnW2ldID0gcC5lc2MoYXJnW2ldKQplbmQKZW5kCmlmIGNvbmRpdGlvbiB0aGVuCmxvY2FsIGVsZW1lbnQgPSB7fQplbGVtZW50Lm5hbWUgPSBuYW1lCmVsZW1lbnQuY29uZGl0aW9uID0gY29uZGl0aW9uCmVsZW1lbnQudmFsdWUgPSB2YWx1ZQplbGVtZW50LmFyZ3MgPSBhcmcKaWYgLi4uIHRoZW4KaWYgdmFsdWUgPT0gJyVzJyB0aGVuCmVsZW1lbnQuc2V0dGluZyA9IHRhYmxlLmNvbmNhdChhcmcpCmVsc2UKZWxlbWVudC5zZXR0aW5nID0gdmFsdWUgLi4gdGFibGUuY29uY2F0KGFyZykKZW5kCmVsc2UKZWxlbWVudC5zZXR0aW5nID0gZWxlbWVudC52YWx1ZQplbmQKdGFibGUuaW5zZXJ0KG0uY29uZGl0aW9uYWxFbGVtZW50cywgZWxlbWVudCkKZWxzZQpsb2NhbCBmb3JtYXQgPSBzdHJpbmcuZm9ybWF0KCc8JXM+JXM8LyVzPicsIG5hbWUsIHZhbHVlLCBuYW1lKQpwLncoZm9ybWF0LCB0YWJsZS51bnBhY2soYXJnKSkKZW5kCmVuZApsb2NhbCBwID0gcHJlbWFrZQpsb2NhbCBtID0gcC52c3R1ZGlvLnZjMjAxMAptLmVsZW1lbnRzLnVzZXIgPSBmdW5jdGlvbihjZmcpCnJldHVybiB7Cm0uZGVidWdTZXR0aW5ncywKfQplbmQKZnVuY3Rpb24gbS5nZW5lcmF0ZVVzZXIocHJqKQpsb2NhbCBjb250ZW50cyA9IHt9CmxvY2FsIHNpemUgPSAwCmZvciBjZmcgaW4gcC5wcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpjb250ZW50c1tjZmddID0gcC5jYXB0dXJlKGZ1bmN0aW9uKCkKcC5wdXNoKDIpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMudXNlciwgY2ZnKQpwLnBvcCgyKQplbmQpCnNpemUgPSBzaXplICsgI2NvbnRlbnRzW2NmZ10KZW5kCmlmIHNpemUgPiAwIHRoZW4KbS54bWxEZWNsYXJhdGlvbigpCm0udXNlclByb2plY3QoKQpmb3IgY2ZnIGluIHAucHJvamVjdC5lYWNoY29uZmlnKHByaikgZG8KcC5wdXNoKCc8UHJvcGVydHlHcm91cCAlcz4nLCBtLmNvbmRpdGlvbihjZmcpKQppZiAjY29udGVudHNbY2ZnXSA+IDAgdGhlbgpwLm91dGxuKGNvbnRlbnRzW2NmZ10pCmVuZApwLnBvcCgnPC9Qcm9wZXJ0eUdyb3VwPicpCmVuZApwLnBvcCgnPC9Qcm9qZWN0PicpCmVuZAplbmQKZnVuY3Rpb24gbS51c2VyUHJvamVjdCgpCmxvY2FsIGFjdGlvbiA9IHAuYWN0aW9uLmN1cnJlbnQoKQpwLnB1c2goJzxQcm9qZWN0IFRvb2xzVmVyc2lvbj0iJXMiIHhtbG5zPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL2RldmVsb3Blci9tc2J1aWxkLzIwMDMiPicsCmFjdGlvbi52c3R1ZGlvLnRvb2xzVmVyc2lvbikKZW5kCm0uZWxlbWVudHMuZGVidWdTZXR0aW5ncyA9IGZ1bmN0aW9uKGNmZykKcmV0dXJuIHsKbS5sb2NhbERlYnVnZ2VyQ29tbWFuZCwKbS5sb2NhbERlYnVnZ2VyV29ya2luZ0RpcmVjdG9yeSwKbS5kZWJ1Z2dlckZsYXZvciwKbS5sb2NhbERlYnVnZ2VyQ29tbWFuZEFyZ3VtZW50cywKbS5sb2NhbERlYnVnZ2VyRGVidWdnZXJUeXBlLAptLmxvY2FsRGVidWdnZXJFbnZpcm9ubWVudCwKbS5sb2NhbERlYnVnZ2VyTWVyZ2VFbnZpcm9ubWVudCwKfQplbmQKZnVuY3Rpb24gbS5kZWJ1Z1NldHRpbmdzKGNmZykKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5kZWJ1Z1NldHRpbmdzLCBjZmcpCmVuZApmdW5jdGlvbiBtLmRlYnVnZ2VyRmxhdm9yKGNmZykKaWYgY2ZnLmRlYnVnZGlyIG9yIGNmZy5kZWJ1Z2NvbW1hbmQgdGhlbgpwLncoJzxEZWJ1Z2dlckZsYXZvcj5XaW5kb3dzTG9jYWxEZWJ1Z2dlcjwvRGVidWdnZXJGbGF2b3I+JykKZW5kCmVuZApmdW5jdGlvbiBtLmxvY2FsRGVidWdnZXJDb21tYW5kKGNmZykKaWYgY2ZnLmRlYnVnY29tbWFuZCB0aGVuCmxvY2FsIGRpciA9IHBhdGgudHJhbnNsYXRlKGNmZy5kZWJ1Z2NvbW1hbmQpCnAudygnPExvY2FsRGVidWdnZXJDb21tYW5kPiVzPC9Mb2NhbERlYnVnZ2VyQ29tbWFuZD4nLCBkaXIpCmVuZAplbmQKZnVuY3Rpb24gbS5sb2NhbERlYnVnZ2VyRGVidWdnZXJUeXBlKGNmZykKaWYgY2ZnLmRlYnVnZ2VydHlwZSB0aGVuCnAudygnPExvY2FsRGVidWdnZXJEZWJ1Z2dlclR5cGU+JXM8L0xvY2FsRGVidWdnZXJEZWJ1Z2dlclR5cGU+JywgY2ZnLmRlYnVnZ2VydHlwZSkKZW5kCmVuZApmdW5jdGlvbiBtLmxvY2FsRGVidWdnZXJDb21tYW5kQXJndW1lbnRzKGNmZykKaWYgI2NmZy5kZWJ1Z2FyZ3MgPiAwIHRoZW4KcC54KCc8TG9jYWxEZWJ1Z2dlckNvbW1hbmRBcmd1bWVudHM+JXM8L0xvY2FsRGVidWdnZXJDb21tYW5kQXJndW1lbnRzPicsIHRhYmxlLmNvbmNhdChjZmcuZGVidWdhcmdzLCAiICIpKQplbmQKZW5kCmZ1bmN0aW9uIG0ubG9jYWxEZWJ1Z2dlcldvcmtpbmdEaXJlY3RvcnkoY2ZnKQppZiBjZmcuZGVidWdkaXIgdGhlbgpsb2NhbCBkaXIgPSBwLnZzdHVkaW8ucGF0aChjZmcsIGNmZy5kZWJ1Z2RpcikKcC54KCc8TG9jYWxEZWJ1Z2dlcldvcmtpbmdEaXJlY3Rvcnk+JXM8L0xvY2FsRGVidWdnZXJXb3JraW5nRGlyZWN0b3J5PicsIGRpcikKZW5kCmVuZApmdW5jdGlvbiBtLmxvY2FsRGVidWdnZXJFbnZpcm9ubWVudChjZmcpCmlmICNjZmcuZGVidWdlbnZzID4gMCB0aGVuCmxvY2FsIGVudnMgPSB0YWJsZS5jb25jYXQoY2ZnLmRlYnVnZW52cywgIlxuIikKaWYgY2ZnLmZsYWdzLkRlYnVnRW52c0luaGVyaXQgdGhlbgplbnZzID0gZW52cyAuLiAiXG4kKExvY2FsRGVidWdnZXJFbnZpcm9ubWVudCkiCmVuZApwLncoJzxMb2NhbERlYnVnZ2VyRW52aXJvbm1lbnQ+JXM8L0xvY2FsRGVidWdnZXJFbnZpcm9ubWVudD4nLCBlbnZzKQppZiBjZmcuZmxhZ3MuRGVidWdFbnZzRG9udE1lcmdlIHRoZW4KcC53KDIsJzxMb2NhbERlYnVnZ2VyTWVyZ2VFbnZpcm9ubWVudD5mYWxzZTwvTG9jYWxEZWJ1Z2dlck1lcmdlRW52aXJvbm1lbnQ+JykKZW5kCmVuZAplbmQKZnVuY3Rpb24gbS5sb2NhbERlYnVnZ2VyTWVyZ2VFbnZpcm9ubWVudChjZmcpCmlmICNjZmcuZGVidWdlbnZzID4gMCBhbmQgY2ZnLmZsYWdzLkRlYnVnRW52c0RvbnRNZXJnZSB0aGVuCnAudygyLCc8TG9jYWxEZWJ1Z2dlck1lcmdlRW52aXJvbm1lbnQ+ZmFsc2U8L0xvY2FsRGVidWdnZXJNZXJnZUVudmlyb25tZW50PicpCmVuZAplbmQKAAAAAABsb2NhbCBwID0gcHJlbWFrZQpsb2NhbCBwcm9qZWN0ID0gcC5wcm9qZWN0CmxvY2FsIHRyZWUgPSBwLnRyZWUKbG9jYWwgbSA9IHAudnN0dWRpby52YzIwMTAKZnVuY3Rpb24gbS5nZW5lcmF0ZUZpbHRlcnMocHJqKQptLnhtbERlY2xhcmF0aW9uKCkKbS5maWx0ZXJzUHJvamVjdCgpCm0udW5pcXVlSWRlbnRpZmllcnMocHJqKQptLmZpbHRlckdyb3VwcyhwcmopCnAub3V0KCc8L1Byb2plY3Q+JykKZW5kCmZ1bmN0aW9uIG0uZmlsdGVyc1Byb2plY3QoKQpsb2NhbCBhY3Rpb24gPSBwLmFjdGlvbi5jdXJyZW50KCkKcC5wdXNoKCc8UHJvamVjdCBUb29sc1ZlcnNpb249IiVzIiB4bWxucz0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9kZXZlbG9wZXIvbXNidWlsZC8yMDAzIj4nLAphY3Rpb24udnN0dWRpby5maWx0ZXJUb29sc1ZlcnNpb24gb3IgYWN0aW9uLnZzdHVkaW8udG9vbHNWZXJzaW9uKQplbmQKZnVuY3Rpb24gbS5maWx0ZXJHcm91cHMocHJqKQpsb2NhbCBncm91cHMgPSBtLmNhdGVnb3JpemVTb3VyY2VzKHByaikKZm9yIF8sIGdyb3VwIGluIGlwYWlycyhncm91cHMpIGRvCmdyb3VwLmNhdGVnb3J5LmVtaXRGaWx0ZXIocHJqLCBncm91cCkKZW5kCmVuZApmdW5jdGlvbiBtLnVuaXF1ZUlkZW50aWZpZXJzKHByaikKbG9jYWwgdHIgPSBwcm9qZWN0LmdldHNvdXJjZXRyZWUocHJqKQpsb2NhbCBjb250ZW50cyA9IHAuY2FwdHVyZShmdW5jdGlvbigpCnAucHVzaCgpCnRyZWUudHJhdmVyc2UodHIsIHsKb25icmFuY2ggPSBmdW5jdGlvbihub2RlLCBkZXB0aCkKcC5wdXNoKCc8RmlsdGVyIEluY2x1ZGU9IiVzIj4nLCBwYXRoLnRyYW5zbGF0ZShub2RlLnBhdGgsICdcXCcpKQpwLncoJzxVbmlxdWVJZGVudGlmaWVyPnslc308L1VuaXF1ZUlkZW50aWZpZXI+Jywgb3MudXVpZChub2RlLnBhdGgpKQpwLnBvcCgnPC9GaWx0ZXI+JykKZW5kCn0sIGZhbHNlKQpwLnBvcCgpCmVuZCkKaWYgI2NvbnRlbnRzID4gMCB0aGVuCnAucHVzaCgnPEl0ZW1Hcm91cD4nKQpwLm91dGxuKGNvbnRlbnRzKQpwLnBvcCgnPC9JdGVtR3JvdXA+JykKZW5kCmVuZApmdW5jdGlvbiBtLmZpbHRlckdyb3VwKHByaiwgZ3JvdXAsIHRhZykKbG9jYWwgZmlsZXMgPSBncm91cC5maWxlcwppZiBmaWxlcyBhbmQgI2ZpbGVzID4gMCB0aGVuCnAucHVzaCgnPEl0ZW1Hcm91cD4nKQpmb3IgXywgZmlsZSBpbiBpcGFpcnMoZmlsZXMpIGRvCmlmIGZpbGUucGFyZW50LnBhdGggdGhlbgpwLnB1c2goJzwlcyBJbmNsdWRlPVwiJXNcIj4nLCB0YWcsIHBhdGgudHJhbnNsYXRlKGZpbGUucmVscGF0aCkpCnAudygnPEZpbHRlcj4lczwvRmlsdGVyPicsIHBhdGgudHJhbnNsYXRlKGZpbGUucGFyZW50LnBhdGgsICdcXCcpKQpwLnBvcCgnPC8lcz4nLCB0YWcpCmVsc2UKcC53KCc8JXMgSW5jbHVkZT1cIiVzXCIgLz4nLCB0YWcsIHBhdGgudHJhbnNsYXRlKGZpbGUucmVscGF0aCkpCmVuZAplbmQKcC5wb3AoJzwvSXRlbUdyb3VwPicpCmVuZAplbmQKAABsb2NhbCBwID0gcHJlbWFrZQpwLnZzdHVkaW8udnMyMDEwLnJ1bGVzID0ge30KcC52c3R1ZGlvLnZzMjAxMC5ydWxlcy5wcm9wcyA9IHt9CmxvY2FsIG0gPSBwLnZzdHVkaW8udnMyMDEwLnJ1bGVzLnByb3BzCm0uZWxlbWVudHMgPSB7fQptLmVsZW1lbnRzLnByb2plY3QgPSBmdW5jdGlvbihyKQpyZXR1cm4gewpwLnZzdHVkaW8ucHJvamVjdEVsZW1lbnQsCm0udGFyZ2V0c0dyb3VwLAptLmRlcGVuZHNPbkdyb3VwLAptLnJ1bGVHcm91cCwKfQplbmQKZnVuY3Rpb24gbS5nZW5lcmF0ZShyKQpwLnhtbFV0ZjgoKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLnByb2plY3QsIHIpCnAucG9wKCkKcC5vdXQoJzwvUHJvamVjdD4nKQplbmQKbS5lbGVtZW50cy50YXJnZXRzR3JvdXAgPSBmdW5jdGlvbihyKQpyZXR1cm4gewptLmJlZm9yZVRhcmdldHMsCm0uYWZ0ZXJUYXJnZXRzLAp9CmVuZApmdW5jdGlvbiBtLnRhcmdldHNHcm91cChyKQpwLncoJzxQcm9wZXJ0eUdyb3VwJykKcC5wdXNoKCcgIENvbmRpdGlvbj0iXCckKCVzQmVmb3JlVGFyZ2V0cylcJyA9PSBcJ1wnIGFuZCBcJyQoJXNBZnRlclRhcmdldHMpXCcgPT0gXCdcJyBhbmQgXCckKENvbmZpZ3VyYXRpb25UeXBlKVwnICE9IFwnTWFrZWZpbGVcJyI+JywKci5uYW1lLCByLm5hbWUpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMudGFyZ2V0c0dyb3VwLCByKQpwLnBvcCgnPC9Qcm9wZXJ0eUdyb3VwPicpCmVuZAptLmVsZW1lbnRzLmRlcGVuZHNPbkdyb3VwID0gZnVuY3Rpb24ocikKcmV0dXJuIHsKbS5kZXBlbmRzT24sCn0KZW5kCmZ1bmN0aW9uIG0uZGVwZW5kc09uR3JvdXAocikKcC5wdXNoKCc8UHJvcGVydHlHcm91cD4nKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLmRlcGVuZHNPbkdyb3VwLCByKQpwLnBvcCgnPC9Qcm9wZXJ0eUdyb3VwPicpCmVuZAptLmVsZW1lbnRzLnJ1bGVHcm91cCA9IGZ1bmN0aW9uKHIpCnJldHVybiB7Cm0ucHJvcGVydHlEZWZhdWx0cywKbS5jb21tYW5kTGluZVRlbXBsYXRlcywKbS5leGVjdXRpb25EZXNjcmlwdGlvbiwKbS5hZGRpdGlvbmFsRGVwZW5kZW5jaWVzLAp9CmVuZApmdW5jdGlvbiBtLnJ1bGVHcm91cChyKQpwLnB1c2goJzxJdGVtRGVmaW5pdGlvbkdyb3VwPicpCnAucHVzaCgnPCVzPicsIHIubmFtZSkKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5ydWxlR3JvdXAsIHIpCnAucG9wKCc8LyVzPicsIHIubmFtZSkKcC5wb3AoJzwvSXRlbURlZmluaXRpb25Hcm91cD4nKQplbmQKZnVuY3Rpb24gbS5wcm9wZXJ0eURlZmF1bHRzKHIpCmxvY2FsIGRlZnMgPSByLnByb3BlcnR5ZGVmaW5pdGlvbgpmb3IgaSA9IDEsICNkZWZzIGRvCmxvY2FsIGRlZiA9IGRlZnNbaV0KbG9jYWwgdmFsdWUgPSBkZWYudmFsdWUKaWYgdmFsdWUgdGhlbgppZiBkZWYua2luZCA9PSAicGF0aCIgdGhlbgp2YWx1ZSA9IHBhdGgudHJhbnNsYXRlKHZhbHVlKQplbmQKcC53KCc8JXM+JXM8LyVzPicsIGRlZi5uYW1lLCB2YWx1ZSwgZGVmLm5hbWUpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0uYWRkaXRpb25hbERlcGVuZGVuY2llcyhyKQpsb2NhbCBkZXBzID0gdGFibGUuY29uY2F0KHIuYnVpbGRkZXBlbmRlbmNpZXMsICI7IikKcC54KCc8QWRkaXRpb25hbERlcGVuZGVuY2llcz4lczwvQWRkaXRpb25hbERlcGVuZGVuY2llcz4nLCBkZXBzKQplbmQKZnVuY3Rpb24gbS5hZnRlclRhcmdldHMocikKcC53KCc8JXNBZnRlclRhcmdldHM+Q3VzdG9tQnVpbGQ8LyVzQWZ0ZXJUYXJnZXRzPicsIHIubmFtZSwgci5uYW1lKQplbmQKZnVuY3Rpb24gbS5iZWZvcmVUYXJnZXRzKHIpCnAudygnPCVzQmVmb3JlVGFyZ2V0cz5NaWRsPC8lc0JlZm9yZVRhcmdldHM+Jywgci5uYW1lLCByLm5hbWUpCmVuZApmdW5jdGlvbiBtLmNvbW1hbmRMaW5lVGVtcGxhdGVzKHIpCmxvY2FsIGVudiA9IHAucnVsZS5jcmVhdGVFbnZpcm9ubWVudChyLCAiWyVzXSIpCmxvY2FsIGN0eCA9IHAuY29udGV4dC5leHRlbnQociwgZW52KQpsb2NhbCBidWlsZGNvbW1hbmRzID0gY3R4LmJ1aWxkY29tbWFuZHMKaWYgYnVpbGRjb21tYW5kcyBhbmQgI2J1aWxkY29tbWFuZHMgPiAwIHRoZW4KbG9jYWwgY21kcyA9IG9zLnRyYW5zbGF0ZUNvbW1hbmRzKGJ1aWxkY29tbWFuZHMsIHAuV0lORE9XUykKY21kcyA9IHRhYmxlLmNvbmNhdChjbWRzLCBwLmVvbCgpKQpwLngoJzxDb21tYW5kTGluZVRlbXBsYXRlPiVzPC9Db21tYW5kTGluZVRlbXBsYXRlPicsIGNtZHMpCmVuZAplbmQKZnVuY3Rpb24gbS5kZXBlbmRzT24ocikKcC53KCc8JXNEZXBlbmRzT24nLCByLm5hbWUpCnAudygnICBDb25kaXRpb249IlwnJChDb25maWd1cmF0aW9uVHlwZSlcJyAhPSBcJ01ha2VmaWxlXCciPl9TZWxlY3RlZEZpbGVzOyQoJXNEZXBlbmRzT24pPC8lc0RlcGVuZHNPbj4nLApyLm5hbWUsIHIubmFtZSwgci5uYW1lKQplbmQKZnVuY3Rpb24gbS5leGVjdXRpb25EZXNjcmlwdGlvbihyKQpsb2NhbCBlbnYgPSBwLnJ1bGUuY3JlYXRlRW52aXJvbm1lbnQociwgIiUlKCVzKSIpCmxvY2FsIGN0eCA9IHAuY29udGV4dC5leHRlbnQociwgZW52KQpsb2NhbCBidWlsZG1lc3NhZ2UgPSBjdHguYnVpbGRtZXNzYWdlCmlmIGJ1aWxkbWVzc2FnZSBhbmQgI2J1aWxkbWVzc2FnZSA+IDAgdGhlbgpwLngoJzxFeGVjdXRpb25EZXNjcmlwdGlvbj4lczwvRXhlY3V0aW9uRGVzY3JpcHRpb24+JywgYnVpbGRtZXNzYWdlKQplbmQKZW5kCgAAAAAAbG9jYWwgcCA9IHByZW1ha2UKcC52c3R1ZGlvLnZzMjAxMC5ydWxlcy50YXJnZXRzID0ge30KbG9jYWwgbSA9IHAudnN0dWRpby52czIwMTAucnVsZXMudGFyZ2V0cwptLmVsZW1lbnRzID0ge30KbS5lbGVtZW50cy5wcm9qZWN0ID0gZnVuY3Rpb24ocikKcmV0dXJuIHsKcC52c3R1ZGlvLnByb2plY3RFbGVtZW50LAptLmF2YWlsYWJsZUl0ZW1Hcm91cCwKbS5jb21wdXRlZFByb3BlcnRpZXMsCm0uY29tcHV0ZUlucHV0c0dyb3VwLAptLnVzaW5nVGFzaywKbS5ydWxlVGFyZ2V0LAptLmNvbXB1dGVPdXRwdXRUYXJnZXQsCn0KZW5kCmZ1bmN0aW9uIG0uZ2VuZXJhdGUocikKcC54bWxVdGY4KCkKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5wcm9qZWN0LCByKQpwLnBvcCgpCnAub3V0KCc8L1Byb2plY3Q+JykKZW5kCm0uZWxlbWVudHMuYXZhaWxhYmxlSXRlbUdyb3VwID0gZnVuY3Rpb24ocikKcmV0dXJuIHsKbS5wcm9wZXJ0eVBhZ2VTY2hlbWEsCm0uYXZhaWxhYmxlSXRlbU5hbWUsCn0KZW5kCmZ1bmN0aW9uIG0uYXZhaWxhYmxlSXRlbUdyb3VwKHIpCnAucHVzaCgnPEl0ZW1Hcm91cD4nKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLmF2YWlsYWJsZUl0ZW1Hcm91cCwgcikKcC5wb3AoJzwvSXRlbUdyb3VwPicpCmVuZApmdW5jdGlvbiBtLmNvbXB1dGVkUHJvcGVydGllcyhyKQpsb2NhbCBwYXRoVmFycyA9IHAucnVsZS5jcmVhdGVQYXRoVmFycyhyLCAiJSUoJXMpIikKbG9jYWwgY3R4ID0gcC5jb250ZXh0LmV4dGVudChyLCB7IHBhdGhWYXJzID0gcGF0aFZhcnMgfSkKbG9jYWwgYnVpbGRvdXRwdXRzID0gY3R4LmJ1aWxkb3V0cHV0cwppZiBidWlsZG91dHB1dHMgYW5kICNidWlsZG91dHB1dHMgPiAwIHRoZW4KbG9jYWwgb3V0cHV0cyA9IHRhYmxlLmNvbmNhdChidWlsZG91dHB1dHMsICI7IikKcC5wdXNoKCc8SXRlbURlZmluaXRpb25Hcm91cD4nKQpwLnB1c2goJzwlcz4nLCByLm5hbWUpCnAueCgnPE91dHB1dHM+JXM8L091dHB1dHM+JywgcGF0aC50cmFuc2xhdGUob3V0cHV0cykpCnAucG9wKCc8LyVzPicsIHIubmFtZSkKcC5wb3AoJzwvSXRlbURlZmluaXRpb25Hcm91cD4nKQplbmQKZW5kCm0uZWxlbWVudHMuY29tcHV0ZUlucHV0c0dyb3VwID0gZnVuY3Rpb24ocikKcmV0dXJuIHsKbS5jb21wdXRlQ29tcGlsZUlucHV0c1RhcmdldHMsCm0uY29tcHV0ZUxpbmtJbnB1dHNUYXJnZXRzLAptLmNvbXB1dGVMaWJJbnB1dHNUYXJnZXRzLAp9CmVuZApmdW5jdGlvbiBtLmNvbXB1dGVJbnB1dHNHcm91cChyKQpwLnB1c2goJzxQcm9wZXJ0eUdyb3VwPicpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMuY29tcHV0ZUlucHV0c0dyb3VwLCByKQpwLnBvcCgnPC9Qcm9wZXJ0eUdyb3VwPicpCmVuZAptLmVsZW1lbnRzLnJ1bGVUYXJnZXRBdHRyaWJ1dGVzID0gZnVuY3Rpb24ocikKcmV0dXJuIHsKbS50YXJnZXROYW1lLAptLmJlZm9yZVRhcmdldHMsCm0uYWZ0ZXJUYXJnZXRzLAptLnRhcmdldENvbmRpdGlvbiwKbS50YXJnZXRPdXRwdXRzLAptLnRhcmdldElucHV0cywKbS5kZXBlbmRzT25UYXJnZXRzLAp9CmVuZAptLmVsZW1lbnRzLnJ1bGVUYXJnZXQgPSBmdW5jdGlvbihyKQpyZXR1cm4gewptLnNlbGVjdGVkRmlsZXMsCm0udGxvZywKbS5tZXNzYWdlLAptLnRsb2dXcml0ZSwKbS50bG9nUmVhZCwKbS5ydWxlLAp9CmVuZApmdW5jdGlvbiBtLnJ1bGVUYXJnZXQocikKbG9jYWwgYXR0cmlicyA9IHAuY2FwdHVyZShmdW5jdGlvbigpCnAucHVzaCgpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMucnVsZVRhcmdldEF0dHJpYnV0ZXMsIHIpCnAucG9wKCkKZW5kKQpwLnB1c2goJzxUYXJnZXQnKQpwLm91dGxuKGF0dHJpYnMgLi4gJz4nKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLnJ1bGVUYXJnZXQsIHIpCnAucG9wKCc8L1RhcmdldD4nKQplbmQKbS5lbGVtZW50cy50bG9nID0gZnVuY3Rpb24ocikKcmV0dXJuIHsKbS50bG9nU291cmNlLAptLnRsb2dJbnB1dHMsCm0udGxvZ1Byb3BlcnRpZXMsCn0KZW5kCmZ1bmN0aW9uIG0udGxvZyhyKQpwLnB1c2goJzxJdGVtR3JvdXA+JykKcC5wdXNoKCc8JXNfdGxvZycsIHIubmFtZSkKcC53KCdJbmNsdWRlPSIlJSglcy5PdXRwdXRzKSInLCByLm5hbWUpCnAudygnQ29uZGl0aW9uPSJcJyUlKCVzLk91dHB1dHMpXCcgIT0gXCdcJyBhbmQgXCclJSglcy5FeGNsdWRlZEZyb21CdWlsZClcJyAhPSBcJ3RydWVcJyI+Jywgci5uYW1lLCByLm5hbWUpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMudGxvZywgcikKcC5wb3AoJzwvJXNfdGxvZz4nLCByLm5hbWUpCnAucG9wKCc8L0l0ZW1Hcm91cD4nKQplbmQKbS5lbGVtZW50cy5ydWxlQXR0cmlidXRlcyA9IGZ1bmN0aW9uKHIpCnJldHVybiB7Cm0ucnVsZUNvbmRpdGlvbiwKbS5jb21tYW5kTGluZVRlbXBsYXRlLAptLnByb3BlcnRpZXMsCm0uYWRkaXRpb25hbE9wdGlvbnMsCm0uaW5wdXRzLAptLnN0YW5kYXJkT3V0cHV0SW1wb3J0YW5jZSwKfQplbmQKZnVuY3Rpb24gbS5ydWxlKHIpCmxvY2FsIGF0dHJpYnMgPSBwLmNhcHR1cmUoZnVuY3Rpb24oKQpwLnB1c2goKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLnJ1bGVBdHRyaWJ1dGVzLCByKQpwLnBvcCgpCmVuZCkKcC53KCc8JXMnLCByLm5hbWUpCnAub3V0bG4oYXR0cmlicyAuLiAnIC8+JykKZW5kCm0uZWxlbWVudHMuY29tcHV0ZU91dHB1dEl0ZW1zID0gZnVuY3Rpb24ocikKcmV0dXJuIHsKbS5vdXRwdXRzLAptLmxpbmtMaWIsCn0KZW5kCm0uZWxlbWVudHMuY29tcHV0ZU91dHB1dFRhcmdldCA9IGZ1bmN0aW9uKHIpCnJldHVybiB7Cm0ubWFrZURpciwKfQplbmQKZnVuY3Rpb24gbS5jb21wdXRlT3V0cHV0VGFyZ2V0KHIpCnAucHVzaCgnPFRhcmdldCcpCnAudygnTmFtZT0iQ29tcHV0ZSVzT3V0cHV0IicsIHIubmFtZSkKcC53KCdDb25kaXRpb249IlwnQCglcylcJyAhPSBcJ1wnIj4nLCByLm5hbWUpCnAucHVzaCgnPEl0ZW1Hcm91cD4nKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLmNvbXB1dGVPdXRwdXRJdGVtcywgcikKcC5wb3AoJzwvSXRlbUdyb3VwPicpCnAuY2FsbEFycmF5KG0uZWxlbWVudHMuY29tcHV0ZU91dHB1dFRhcmdldCwgcikKcC5wb3AoJzwvVGFyZ2V0PicpCmVuZApmdW5jdGlvbiBtLmFkZGl0aW9uYWxPcHRpb25zKHIpCnAudygnQWRkaXRpb25hbE9wdGlvbnM9IiUlKCVzLkFkZGl0aW9uYWxPcHRpb25zKSInLCByLm5hbWUpCmVuZApmdW5jdGlvbiBtLmNvbW1hbmRMaW5lVGVtcGxhdGUocikKcC53KCdDb21tYW5kTGluZVRlbXBsYXRlPSIlJSglcy5Db21tYW5kTGluZVRlbXBsYXRlKSInLCByLm5hbWUpCmVuZApmdW5jdGlvbiBtLmFmdGVyVGFyZ2V0cyhyKQpwLncoJ0FmdGVyVGFyZ2V0cz0iJCglc0FmdGVyVGFyZ2V0cykiJywgci5uYW1lKQplbmQKZnVuY3Rpb24gbS5hdmFpbGFibGVJdGVtTmFtZShyKQpwLnB1c2goJzxBdmFpbGFibGVJdGVtTmFtZSBJbmNsdWRlPSIlcyI+Jywgci5uYW1lKQpwLncoJzxUYXJnZXRzPl8lczwvVGFyZ2V0cz4nLCByLm5hbWUpCnAucG9wKCc8L0F2YWlsYWJsZUl0ZW1OYW1lPicpCmVuZApmdW5jdGlvbiBtLmJlZm9yZVRhcmdldHMocikKcC53KCdCZWZvcmVUYXJnZXRzPSIkKCVzQmVmb3JlVGFyZ2V0cykiJywgci5uYW1lKQplbmQKZnVuY3Rpb24gbS5jb21wdXRlTGliSW5wdXRzVGFyZ2V0cyhyKQpwLnB1c2goJzxDb21wdXRlTGliSW5wdXRzVGFyZ2V0cz4nKQpwLncoJyQoQ29tcHV0ZUxpYklucHV0c1RhcmdldHMpOycpCnAudygnQ29tcHV0ZSVzT3V0cHV0OycsIHIubmFtZSkKcC5wb3AoJzwvQ29tcHV0ZUxpYklucHV0c1RhcmdldHM+JykKZW5kCmZ1bmN0aW9uIG0uY29tcHV0ZUxpbmtJbnB1dHNUYXJnZXRzKHIpCnAucHVzaCgnPENvbXB1dGVMaW5rSW5wdXRzVGFyZ2V0cz4nKQpwLncoJyQoQ29tcHV0ZUxpbmtJbnB1dHNUYXJnZXRzKTsnKQpwLncoJ0NvbXB1dGUlc091dHB1dDsnLCByLm5hbWUpCnAucG9wKCc8L0NvbXB1dGVMaW5rSW5wdXRzVGFyZ2V0cz4nKQplbmQKZnVuY3Rpb24gbS5jb21wdXRlQ29tcGlsZUlucHV0c1RhcmdldHMocikKcC5wdXNoKCc8Q29tcHV0ZUNvbXBpbGVJbnB1dHNUYXJnZXRzPicpCnAudygnJChDb21wdXRlQ29tcGlsZUlucHV0c1RhcmdldHMpOycpCnAudygnQ29tcHV0ZSVzT3V0cHV0OycsIHIubmFtZSkKcC5wb3AoJzwvQ29tcHV0ZUNvbXBpbGVJbnB1dHNUYXJnZXRzPicpCmVuZApmdW5jdGlvbiBtLmRlcGVuZHNPblRhcmdldHMocikKcC53KCdEZXBlbmRzT25UYXJnZXRzPSIkKCVzRGVwZW5kc09uKTtDb21wdXRlJXNPdXRwdXQiJywgci5uYW1lLCByLm5hbWUpCmVuZApmdW5jdGlvbiBtLmlucHV0cyhyKQpwLncoJ0lucHV0cz0iJSUoJXMuSWRlbnRpdHkpIicsIHIubmFtZSkKZW5kCmZ1bmN0aW9uIG0ubGlua0xpYihyKQpsb2NhbCBwYXRoVmFycyA9IHAucnVsZS5jcmVhdGVQYXRoVmFycyhyLCAiJSUoJXMpIikKbG9jYWwgY3R4ID0gcC5jb250ZXh0LmV4dGVudChyLCB7IHBhdGhWYXJzID0gcGF0aFZhcnMgfSkKbG9jYWwgYnVpbGRvdXRwdXRzID0gY3R4LmJ1aWxkb3V0cHV0cwpsb2NhbCBsaW5rYWJsZSwgY29tcGlsZWFibGUKZm9yIGkgPSAxLCAjYnVpbGRvdXRwdXRzIGRvCmlmIChwYXRoLmlzbGlua2FibGUoYnVpbGRvdXRwdXRzW2ldKSkgdGhlbgpsaW5rYWJsZSA9IHRydWUKZW5kCmlmIChwYXRoLmlzY3BwZmlsZShidWlsZG91dHB1dHNbaV0pKSB0aGVuCmNvbXBpbGVhYmxlID0gdHJ1ZQplbmQKZW5kCmlmIGxpbmthYmxlIHRoZW4KZm9yIGksIGVsIGluIHBhaXJzIHsgJ0xpbmsnLCAnTGliJywgJ0ltcExpYicgfSBkbwpwLnB1c2goJzwlcycsIGVsKQpwLncoJ0luY2x1ZGU9IiUlKCVzT3V0cHV0cy5JZGVudGl0eSkiJywgci5uYW1lKQpwLncoJ0NvbmRpdGlvbj0iXCclJShFeHRlbnNpb24pXCc9PVwnLm9ialwnIG9yIFwnJSUoRXh0ZW5zaW9uKVwnPT1cJy5yZXNcJyBvciBcJyUlKEV4dGVuc2lvbilcJz09XCcucnNjXCcgb3IgXCclJShFeHRlbnNpb24pXCc9PVwnLmxpYlwnIiAvPicpCnAucG9wKCkKZW5kCmVuZAppZiBjb21waWxlYWJsZSB0aGVuCnAucHVzaCgnPENsQ29tcGlsZScsIGVsKQpwLncoJ0luY2x1ZGU9IiUlKCVzT3V0cHV0cy5JZGVudGl0eSkiJywgci5uYW1lKQpwLncoJ0NvbmRpdGlvbj0iXCclJShFeHRlbnNpb24pXCc9PVwnLmNjXCcgb3IgXCclJShFeHRlbnNpb24pXCc9PVwnLmNwcFwnIG9yIFwnJSUoRXh0ZW5zaW9uKVwnPT1cJy5jeHhcJyBvciBcJyUlKEV4dGVuc2lvbilcJz09XCcuY1wnIiAvPicpCnAucG9wKCkKZW5kCmVuZApmdW5jdGlvbiBtLm1ha2VEaXIocikKcC53KCc8TWFrZURpciBEaXJlY3Rvcmllcz0iQCglc091dHB1dHMtPlwnJSUoUm9vdERpciklJShEaXJlY3RvcnkpXCcpIiAvPicsIHIubmFtZSkKZW5kCmZ1bmN0aW9uIG0ubWVzc2FnZShyKQpwLncoJzxNZXNzYWdlJykKcC53KCcgIEltcG9ydGFuY2U9IkhpZ2giJykKcC53KCcgIFRleHQ9IiUlKCVzLkV4ZWN1dGlvbkRlc2NyaXB0aW9uKSIgLz4nLCByLm5hbWUpCmVuZApmdW5jdGlvbiBtLm91dHB1dHMocikKcC53KCc8JXNPdXRwdXRzJywgci5uYW1lKQpwLncoJyAgQ29uZGl0aW9uPSJcJ0AoJXMpXCcgIT0gXCdcJyBhbmQgXCclJSglcy5FeGNsdWRlZEZyb21CdWlsZClcJyAhPSBcJ3RydWVcJyInLCByLm5hbWUsIHIubmFtZSkKcC53KCcgIEluY2x1ZGU9IiUlKCVzLk91dHB1dHMpIiAvPicsIHIubmFtZSkKZW5kCmZ1bmN0aW9uIG0ucHJvcGVydGllcyhyKQpsb2NhbCBkZWZzID0gci5wcm9wZXJ0eWRlZmluaXRpb24KZm9yIGkgPSAxLCAjZGVmcyBkbwpsb2NhbCBuYW1lID0gZGVmc1tpXS5uYW1lCnAudygnJXM9IiUlKCVzLiVzKSInLCBuYW1lLCByLm5hbWUsIG5hbWUpCmVuZAplbmQKZnVuY3Rpb24gbS5wcm9wZXJ0eVBhZ2VTY2hlbWEocikKcC53KCc8UHJvcGVydHlQYWdlU2NoZW1hJykKcC53KCcgIEluY2x1ZGU9IiQoTVNCdWlsZFRoaXNGaWxlRGlyZWN0b3J5KSQoTVNCdWlsZFRoaXNGaWxlTmFtZSkueG1sIiAvPicpCmVuZApmdW5jdGlvbiBtLnJ1bGVDb25kaXRpb24ocikKcC53KCdDb25kaXRpb249IlwnQCglcylcJyAhPSBcJ1wnIGFuZCBcJyUlKCVzLkV4Y2x1ZGVkRnJvbUJ1aWxkKVwnICE9IFwndHJ1ZVwnIicsIHIubmFtZSwgci5uYW1lKQplbmQKZnVuY3Rpb24gbS5zZWxlY3RlZEZpbGVzKHIpCnAucHVzaCgnPEl0ZW1Hcm91cCBDb25kaXRpb249IlwnQChTZWxlY3RlZEZpbGVzKVwnICE9IFwnXCciPicpCnAudygnPCVzIFJlbW92ZT0iQCglcykiIENvbmRpdGlvbj0iXCclJShJZGVudGl0eSlcJyAhPSBcJ0AoU2VsZWN0ZWRGaWxlcylcJyIgLz4nLCByLm5hbWUsIHIubmFtZSkKcC5wb3AoJzwvSXRlbUdyb3VwPicpCmVuZApmdW5jdGlvbiBtLnN0YW5kYXJkT3V0cHV0SW1wb3J0YW5jZShyKQpwLncoJ1N0YW5kYXJkT3V0cHV0SW1wb3J0YW5jZT0iSGlnaCInKQpwLncoJ1N0YW5kYXJkRXJyb3JJbXBvcnRhbmNlPSJIaWdoIicpCmVuZApmdW5jdGlvbiBtLnRhcmdldENvbmRpdGlvbihyKQpwLncoJ0NvbmRpdGlvbj0iXCdAKCVzKVwnICE9IFwnXCciJywgci5uYW1lKQplbmQKZnVuY3Rpb24gbS50YXJnZXRJbnB1dHMocikKbG9jYWwgZXh0cmEgPSB7fQpsb2NhbCBkZWZzID0gci5wcm9wZXJ0eWRlZmluaXRpb24KZm9yIGkgPSAxLCAjZGVmcyBkbwpsb2NhbCBkZWYgPSBkZWZzW2ldCmlmIGRlZi5kZXBlbmRlbmN5IHRoZW4KdGFibGUuaW5zZXJ0KGV4dHJhLCBzdHJpbmcuZm9ybWF0KCIlJSglcy4lcyk7Iiwgci5uYW1lLCBkZWYubmFtZSkpCmVuZAplbmQKZXh0cmEgPSB0YWJsZS5jb25jYXQoZXh0cmEpCnAudygnSW5wdXRzPSIlJSglcy5JZGVudGl0eSk7JSUoJXMuQWRkaXRpb25hbERlcGVuZGVuY2llcyk7JXMkKE1TQnVpbGRQcm9qZWN0RmlsZSkiJywgci5uYW1lLCByLm5hbWUsIGV4dHJhKQplbmQKZnVuY3Rpb24gbS50YXJnZXROYW1lKHIpCnAudygnTmFtZT0iXyVzIicsIHIubmFtZSkKZW5kCmZ1bmN0aW9uIG0udGFyZ2V0T3V0cHV0cyhyKQpwLncoJ091dHB1dHM9IiUlKCVzLk91dHB1dHMpIicsIHIubmFtZSkKZW5kCmZ1bmN0aW9uIG0udGxvZ0lucHV0cyhyKQpwLncoIjxJbnB1dHM+QCglcywgJzsnKTwvSW5wdXRzPiIsIHIubmFtZSkKZW5kCmZ1bmN0aW9uIG0udGxvZ1Byb3BlcnRpZXMocikKbG9jYWwgZGVmcyA9IHIucHJvcGVydHlkZWZpbml0aW9uCmZvciBpID0gMSwgI2RlZnMgZG8KbG9jYWwgZGVmID0gZGVmc1tpXQppZiBkZWYuZGVwZW5kZW5jeSB0aGVuCnAudygnPCVzPiUlKCVzLiVzKTwvJXM+JywgZGVmLm5hbWUsIHIubmFtZSwgZGVmLm5hbWUsIGRlZi5uYW1lKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLnRsb2dSZWFkKHIpCmxvY2FsIGV4dHJhID0ge30KbG9jYWwgZGVmcyA9IHIucHJvcGVydHlkZWZpbml0aW9uCmZvciBpID0gMSwgI2RlZnMgZG8KbG9jYWwgZGVmID0gZGVmc1tpXQppZiBkZWYuZGVwZW5kZW5jeSB0aGVuCnRhYmxlLmluc2VydChleHRyYSwgc3RyaW5nLmZvcm1hdCgiJSUoJXNfdGxvZy4lcyk7Iiwgci5uYW1lLCBkZWYubmFtZSkpCmVuZAplbmQKZXh0cmEgPSB0YWJsZS5jb25jYXQoZXh0cmEpCnAudygnPFdyaXRlTGluZXNUb0ZpbGUnKQpwLncoJyAgQ29uZGl0aW9uPSJcJ0AoJXNfdGxvZylcJyAhPSBcJ1wnIGFuZCBcJyUlKCVzX3Rsb2cuRXhjbHVkZWRGcm9tQnVpbGQpXCcgIT0gXCd0cnVlXCciJywgci5uYW1lLCByLm5hbWUpCnAudygnICBGaWxlPSIkKEludERpcikkKFByb2plY3ROYW1lKS5yZWFkLjEudGxvZyInKQpwLncoJyAgTGluZXM9Il4lJSglc190bG9nLklucHV0cyk7JXMkKE1TQnVpbGRQcm9qZWN0RnVsbFBhdGgpOyUlKCVzX3Rsb2cuRnVsbHBhdGgpIiAvPicsIHIubmFtZSwgZXh0cmEsIHIubmFtZSkKZW5kCmZ1bmN0aW9uIG0udGxvZ1dyaXRlKHIpCnAudygnPFdyaXRlTGluZXNUb0ZpbGUnKQpwLncoJyAgQ29uZGl0aW9uPSJcJ0AoJXNfdGxvZylcJyAhPSBcJ1wnIGFuZCBcJyUlKCVzX3Rsb2cuRXhjbHVkZWRGcm9tQnVpbGQpXCcgIT0gXCd0cnVlXCciJywgci5uYW1lLCByLm5hbWUpCnAudygnICBGaWxlPSIkKEludERpcikkKFByb2plY3ROYW1lKS53cml0ZS4xLnRsb2ciJykKcC53KCcgIExpbmVzPSJeJSUoJXNfdGxvZy5Tb3VyY2UpOyUlKCVzX3Rsb2cuRnVsbHBhdGgpIiAvPicsIHIubmFtZSwgci5uYW1lKQplbmQKZnVuY3Rpb24gbS50bG9nU291cmNlKHIpCnAudygiPFNvdXJjZT5AKCVzLCAnfCcpPC9Tb3VyY2U+Iiwgci5uYW1lKQplbmQKZnVuY3Rpb24gbS51c2luZ1Rhc2socikKcC5wdXNoKCc8VXNpbmdUYXNrJykKcC53KCdUYXNrTmFtZT0iJXMiJywgci5uYW1lKQpwLncoJ1Rhc2tGYWN0b3J5PSJYYW1sVGFza0ZhY3RvcnkiJykKcC53KCdBc3NlbWJseU5hbWU9Ik1pY3Jvc29mdC5CdWlsZC5UYXNrcy52NC4wIj4nKQpwLncoJzxUYXNrPiQoTVNCdWlsZFRoaXNGaWxlRGlyZWN0b3J5KSQoTVNCdWlsZFRoaXNGaWxlTmFtZSkueG1sPC9UYXNrPicpCnAucG9wKCc8L1VzaW5nVGFzaz4nKQplbmQKAAAAAAAAbG9jYWwgcCA9IHByZW1ha2UKcC52c3R1ZGlvLnZzMjAxMC5ydWxlcy54bWwgPSB7fQpsb2NhbCBtID0gcC52c3R1ZGlvLnZzMjAxMC5ydWxlcy54bWwKbS5lbGVtZW50cyA9IHt9Cm0uZWxlbWVudHMucHJvamVjdCA9IGZ1bmN0aW9uKHIpCnJldHVybiB7Cm0ucHJvamVjdFNjaGVtYURlZmluaXRpb25zLAptLnJ1bGUsCm0ucnVsZUl0ZW0sCm0uZmlsZUV4dGVuc2lvbiwKbS5jb250ZW50VHlwZSwKfQplbmQKZnVuY3Rpb24gbS5nZW5lcmF0ZShyKQpwLnhtbFV0ZjgoKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLnByb2plY3QsIHIpCnAub3V0KCc8L1Byb2plY3RTY2hlbWFEZWZpbml0aW9ucz4nKQplbmQKbS5lbGVtZW50cy5ydWxlID0gZnVuY3Rpb24ocikKcmV0dXJuIHsKbS5kYXRhU291cmNlLAptLmNhdGVnb3JpZXMsCm0uaW5wdXRzLAptLnByb3BlcnRpZXMsCm0uY29tbWFuZExpbmVUZW1wbGF0ZSwKbS5iZWZvcmVUYXJnZXRzLAptLmFmdGVyVGFyZ2V0cywKbS5vdXRwdXRzLAptLmV4ZWN1dGlvbkRlc2NyaXB0aW9uLAptLmFkZGl0aW9uYWxEZXBlbmRlbmNpZXMsCm0uYWRkaXRpb25hbE9wdGlvbnMsCn0KZW5kCmZ1bmN0aW9uIG0ucnVsZShyKQpwLnB1c2goJzxSdWxlJykKcC53KCdOYW1lPSIlcyInLCByLm5hbWUpCnAudygnUGFnZVRlbXBsYXRlPSJ0b29sIicpCnAudygnRGlzcGxheU5hbWU9IiVzIicsIHIuZGlzcGxheSBvciByLm5hbWUpCnAudygnT3JkZXI9IjIwMCI+JykKcC5jYWxsQXJyYXkobS5lbGVtZW50cy5ydWxlLCByKQpwLnBvcCgnPC9SdWxlPicpCmVuZApmdW5jdGlvbiBtLmNhdGVnb3JpZXMocikKbG9jYWwgY2F0ZWdvcmllcyA9IHsKWzFdID0geyBuYW1lPSJHZW5lcmFsIiB9LApbMl0gPSB7IG5hbWU9IkNvbW1hbmQgTGluZSIsIHN1YnR5cGU9IkNvbW1hbmRMaW5lIiB9LAp9CnAucHVzaCgnPFJ1bGUuQ2F0ZWdvcmllcz4nKQpmb3IgaSA9IDEsICNjYXRlZ29yaWVzIGRvCm0uY2F0ZWdvcnkoY2F0ZWdvcmllc1tpXSkKZW5kCnAucG9wKCc8L1J1bGUuQ2F0ZWdvcmllcz4nKQplbmQKZnVuY3Rpb24gbS5jYXRlZ29yeShjYXQpCmxvY2FsIGF0dHJpYnMgPSBwLmNhcHR1cmUoZnVuY3Rpb24oKQpwLnB1c2goKQpwLncoJ05hbWU9IiVzIicsIGNhdC5uYW1lKQppZiBjYXQuc3VidHlwZSB0aGVuCnAudygnU3VidHlwZT0iJXMiJywgY2F0LnN1YnR5cGUpCmVuZApwLnBvcCgpCmVuZCkKcC5wdXNoKCc8Q2F0ZWdvcnknKQpwLm91dGxuKGF0dHJpYnMgLi4gJz4nKQpwLnB1c2goJzxDYXRlZ29yeS5EaXNwbGF5TmFtZT4nKQpwLncoJzxzeXM6U3RyaW5nPiVzPC9zeXM6U3RyaW5nPicsIGNhdC5uYW1lKQpwLnBvcCgnPC9DYXRlZ29yeS5EaXNwbGF5TmFtZT4nKQpwLnBvcCgnPC9DYXRlZ29yeT4nKQplbmQKZnVuY3Rpb24gbS5wcm9wZXJ0aWVzKHIpCmxvY2FsIGRlZnMgPSByLnByb3BlcnR5ZGVmaW5pdGlvbgpmb3IgaSA9IDEsICNkZWZzIGRvCmxvY2FsIGRlZiA9IGRlZnNbaV0KaWYgZGVmLmtpbmQgPT0gImJvb2xlYW4iIHRoZW4KbS5ib29sUHJvcGVydHkoZGVmKQplbHNlaWYgZGVmLmtpbmQgPT0gImxpc3QiIHRoZW4KbS5zdHJpbmdMaXN0UHJvcGVydHkoZGVmKQplbHNlaWYgdHlwZShkZWYudmFsdWVzKSA9PSAidGFibGUiIHRoZW4KbS5lbnVtUHJvcGVydHkoZGVmKQplbHNlaWYgZGVmLmtpbmQgYW5kIGRlZi5raW5kOnN0YXJ0c3dpdGgoImxpc3Q6IikgdGhlbgptLnN0cmluZ0xpc3RQcm9wZXJ0eShkZWYpCmVsc2UKbS5zdHJpbmdQcm9wZXJ0eShkZWYpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0uYmFzZVByb3BlcnR5KGRlZiwgc3VmZml4KQpsb2NhbCBjID0gcC5jYXB0dXJlKGZ1bmN0aW9uICgpCnAudygnTmFtZT0iJXMiJywgZGVmLm5hbWUpCnAudygnSGVscENvbnRleHQ9IjAiJykKcC53KCdEaXNwbGF5TmFtZT0iJXMiJywgZGVmLmRpc3BsYXkgb3IgZGVmLm5hbWUpCmlmIGRlZi5kZXNjcmlwdGlvbiB0aGVuCnAudygnRGVzY3JpcHRpb249IiVzIicsIGRlZi5kZXNjcmlwdGlvbikKZW5kCmVuZCkKaWYgc3VmZml4IHRoZW4KYyA9IGMgLi4gc3VmZml4CmVuZApwLm91dGxuKGMpCmVuZApmdW5jdGlvbiBtLmJvb2xQcm9wZXJ0eShkZWYpCnAucHVzaCgnPEJvb2xQcm9wZXJ0eScpCm0uYmFzZVByb3BlcnR5KGRlZikKaWYgZGVmLnN3aXRjaCB0aGVuCnAudygnU3dpdGNoPSIlcyInLCBkZWYuc3dpdGNoKQplbmQKcC53KCcvPicpCnAucG9wKCkKZW5kCmZ1bmN0aW9uIG0uZW51bVByb3BlcnR5KGRlZikKcC5wdXNoKCc8RW51bVByb3BlcnR5JykKbS5iYXNlUHJvcGVydHkoZGVmLCAnPicpCmxvY2FsIHZhbHVlcyA9IGRlZi52YWx1ZXMKbG9jYWwgc3dpdGNoZXMgPSBkZWYuc3dpdGNoIG9yIHt9CmxvY2FsIGtleXMgPSB0YWJsZS5rZXlzKGRlZi52YWx1ZXMpCnRhYmxlLnNvcnQoa2V5cykKZm9yIF8sIGtleSBpbiBwYWlycyhrZXlzKSBkbwpwLnB1c2goJzxFbnVtVmFsdWUnKQpwLncoJ05hbWU9IiVkIicsIGtleSkKaWYgc3dpdGNoZXNba2V5XSB0aGVuCnAudygnRGlzcGxheU5hbWU9IiVzIicsIHZhbHVlc1trZXldKQppZiBzd2l0Y2hlc1trZXldIHRoZW4KcC53KCdTd2l0Y2g9IiVzIicsIHN3aXRjaGVzW2tleV0pCmVuZAplbHNlCnAudygnRGlzcGxheU5hbWU9IiVzIicsIHZhbHVlc1trZXldKQplbmQKcC53KCcvPicpCnAucG9wKCkKZW5kCnAucG9wKCc8L0VudW1Qcm9wZXJ0eT4nKQplbmQKZnVuY3Rpb24gbS5zdHJpbmdQcm9wZXJ0eShkZWYpCnAucHVzaCgnPFN0cmluZ1Byb3BlcnR5JykKbS5iYXNlUHJvcGVydHkoZGVmKQppZiBkZWYuc3dpdGNoIHRoZW4KcC53KCdTd2l0Y2g9IiVzIicsIGRlZi5zd2l0Y2gpCmVuZApwLncoJy8+JykKcC5wb3AoKQplbmQKZnVuY3Rpb24gbS5zdHJpbmdMaXN0UHJvcGVydHkoZGVmKQpwLnB1c2goJzxTdHJpbmdMaXN0UHJvcGVydHknKQptLmJhc2VQcm9wZXJ0eShkZWYpCmlmIGRlZi5zZXBhcmF0b3IgdGhlbgpwLncoJ1NlcGFyYXRvcj0iJXMiJywgZGVmLnNlcGFyYXRvcikKZW5kCmlmIGRlZi5zd2l0Y2ggdGhlbgpwLncoJ1N3aXRjaD0iJXMiJywgZGVmLnN3aXRjaCkKZW5kCnAudygnLz4nKQpwLnBvcCgpCmVuZApmdW5jdGlvbiBtLmFkZGl0aW9uYWxEZXBlbmRlbmNpZXMocikKcC5wdXNoKCc8U3RyaW5nTGlzdFByb3BlcnR5JykKcC53KCdOYW1lPSJBZGRpdGlvbmFsRGVwZW5kZW5jaWVzIicpCnAudygnRGlzcGxheU5hbWU9IkFkZGl0aW9uYWwgRGVwZW5kZW5jaWVzIicpCnAudygnSW5jbHVkZUluQ29tbWFuZExpbmU9IkZhbHNlIicpCnAudygnVmlzaWJsZT0iZmFsc2UiIC8+JykKcC5wb3AoKQplbmQKZnVuY3Rpb24gbS5hZGRpdGlvbmFsT3B0aW9ucyhyKQpwLnB1c2goJzxTdHJpbmdQcm9wZXJ0eScpCnAudygnU3VidHlwZT0iQWRkaXRpb25hbE9wdGlvbnMiJykKcC53KCdOYW1lPSJBZGRpdGlvbmFsT3B0aW9ucyInKQpwLncoJ0NhdGVnb3J5PSJDb21tYW5kIExpbmUiPicpCnAucHVzaCgnPFN0cmluZ1Byb3BlcnR5LkRpc3BsYXlOYW1lPicpCnAudygnPHN5czpTdHJpbmc+QWRkaXRpb25hbCBPcHRpb25zPC9zeXM6U3RyaW5nPicpCnAucG9wKCc8L1N0cmluZ1Byb3BlcnR5LkRpc3BsYXlOYW1lPicpCnAucHVzaCgnPFN0cmluZ1Byb3BlcnR5LkRlc2NyaXB0aW9uPicpCnAudygnPHN5czpTdHJpbmc+QWRkaXRpb25hbCBPcHRpb25zPC9zeXM6U3RyaW5nPicpCnAucG9wKCc8L1N0cmluZ1Byb3BlcnR5LkRlc2NyaXB0aW9uPicpCnAucG9wKCc8L1N0cmluZ1Byb3BlcnR5PicpCmVuZApmdW5jdGlvbiBtLmFmdGVyVGFyZ2V0cyhyKQpwLnB1c2goJzxEeW5hbWljRW51bVByb3BlcnR5JykKcC53KCdOYW1lPSIlc0FmdGVyVGFyZ2V0cyInLCByLm5hbWUpCnAudygnQ2F0ZWdvcnk9IkdlbmVyYWwiJykKcC53KCdFbnVtUHJvdmlkZXI9IlRhcmdldHMiJykKcC53KCdJbmNsdWRlSW5Db21tYW5kTGluZT0iRmFsc2UiPicpCnAucHVzaCgnPER5bmFtaWNFbnVtUHJvcGVydHkuRGlzcGxheU5hbWU+JykKcC53KCc8c3lzOlN0cmluZz5FeGVjdXRlIEFmdGVyPC9zeXM6U3RyaW5nPicpCnAucG9wKCc8L0R5bmFtaWNFbnVtUHJvcGVydHkuRGlzcGxheU5hbWU+JykKcC5wdXNoKCc8RHluYW1pY0VudW1Qcm9wZXJ0eS5EZXNjcmlwdGlvbj4nKQpwLncoJzxzeXM6U3RyaW5nPlNwZWNpZmllcyB0aGUgdGFyZ2V0cyBmb3IgdGhlIGJ1aWxkIGN1c3RvbWl6YXRpb24gdG8gcnVuIGFmdGVyLjwvc3lzOlN0cmluZz4nKQpwLnBvcCgnPC9EeW5hbWljRW51bVByb3BlcnR5LkRlc2NyaXB0aW9uPicpCnAucHVzaCgnPER5bmFtaWNFbnVtUHJvcGVydHkuUHJvdmlkZXJTZXR0aW5ncz4nKQpwLnB1c2goJzxOYW1lVmFsdWVQYWlyJykKcC53KCdOYW1lPSJFeGNsdWRlIicpCnAudygnVmFsdWU9Il4lc0FmdGVyVGFyZ2V0c3xeQ29tcHV0ZSIgLz4nLCByLm5hbWUpCnAucG9wKCkKcC5wb3AoJzwvRHluYW1pY0VudW1Qcm9wZXJ0eS5Qcm92aWRlclNldHRpbmdzPicpCnAucHVzaCgnPER5bmFtaWNFbnVtUHJvcGVydHkuRGF0YVNvdXJjZT4nKQpwLnB1c2goJzxEYXRhU291cmNlJykKcC53KCdQZXJzaXN0ZW5jZT0iUHJvamVjdEZpbGUiJykKcC53KCdJdGVtVHlwZT0iIicpCnAudygnSGFzQ29uZmlndXJhdGlvbkNvbmRpdGlvbj0idHJ1ZSIgLz4nKQpwLnBvcCgpCnAucG9wKCc8L0R5bmFtaWNFbnVtUHJvcGVydHkuRGF0YVNvdXJjZT4nKQpwLnBvcCgnPC9EeW5hbWljRW51bVByb3BlcnR5PicpCmVuZApmdW5jdGlvbiBtLmJlZm9yZVRhcmdldHMocikKcC5wdXNoKCc8RHluYW1pY0VudW1Qcm9wZXJ0eScpCnAudygnTmFtZT0iJXNCZWZvcmVUYXJnZXRzIicsIHIubmFtZSkKcC53KCdDYXRlZ29yeT0iR2VuZXJhbCInKQpwLncoJ0VudW1Qcm92aWRlcj0iVGFyZ2V0cyInKQpwLncoJ0luY2x1ZGVJbkNvbW1hbmRMaW5lPSJGYWxzZSI+JykKcC5wdXNoKCc8RHluYW1pY0VudW1Qcm9wZXJ0eS5EaXNwbGF5TmFtZT4nKQpwLncoJzxzeXM6U3RyaW5nPkV4ZWN1dGUgQmVmb3JlPC9zeXM6U3RyaW5nPicpCnAucG9wKCc8L0R5bmFtaWNFbnVtUHJvcGVydHkuRGlzcGxheU5hbWU+JykKcC5wdXNoKCc8RHluYW1pY0VudW1Qcm9wZXJ0eS5EZXNjcmlwdGlvbj4nKQpwLncoJzxzeXM6U3RyaW5nPlNwZWNpZmllcyB0aGUgdGFyZ2V0cyBmb3IgdGhlIGJ1aWxkIGN1c3RvbWl6YXRpb24gdG8gcnVuIGJlZm9yZS48L3N5czpTdHJpbmc+JykKcC5wb3AoJzwvRHluYW1pY0VudW1Qcm9wZXJ0eS5EZXNjcmlwdGlvbj4nKQpwLnB1c2goJzxEeW5hbWljRW51bVByb3BlcnR5LlByb3ZpZGVyU2V0dGluZ3M+JykKcC5wdXNoKCc8TmFtZVZhbHVlUGFpcicpCnAudygnTmFtZT0iRXhjbHVkZSInKQpwLncoJ1ZhbHVlPSJeJXNCZWZvcmVUYXJnZXRzfF5Db21wdXRlIiAvPicsIHIubmFtZSkKcC5wb3AoKQpwLnBvcCgnPC9EeW5hbWljRW51bVByb3BlcnR5LlByb3ZpZGVyU2V0dGluZ3M+JykKcC5wdXNoKCc8RHluYW1pY0VudW1Qcm9wZXJ0eS5EYXRhU291cmNlPicpCnAucHVzaCgnPERhdGFTb3VyY2UnKQpwLncoJ1BlcnNpc3RlbmNlPSJQcm9qZWN0RmlsZSInKQpwLncoJ0hhc0NvbmZpZ3VyYXRpb25Db25kaXRpb249InRydWUiIC8+JykKcC5wb3AoKQpwLnBvcCgnPC9EeW5hbWljRW51bVByb3BlcnR5LkRhdGFTb3VyY2U+JykKcC5wb3AoJzwvRHluYW1pY0VudW1Qcm9wZXJ0eT4nKQplbmQKZnVuY3Rpb24gbS5jb21tYW5kTGluZVRlbXBsYXRlKHIpCnAucHVzaCgnPFN0cmluZ1Byb3BlcnR5JykKcC53KCdOYW1lPSJDb21tYW5kTGluZVRlbXBsYXRlIicpCnAudygnRGlzcGxheU5hbWU9IkNvbW1hbmQgTGluZSInKQpwLncoJ1Zpc2libGU9IkZhbHNlIicpCnAudygnSW5jbHVkZUluQ29tbWFuZExpbmU9IkZhbHNlIiAvPicpCnAucG9wKCkKZW5kCmZ1bmN0aW9uIG0uY29udGVudFR5cGUocikKcC5wdXNoKCc8Q29udGVudFR5cGUnKQpwLncoJ05hbWU9IiVzIicsIHIubmFtZSkKcC53KCdEaXNwbGF5TmFtZT0iJXMiJywgci5kaXNwbGF5IG9yIHIubmFtZSkKcC53KCdJdGVtVHlwZT0iJXMiIC8+Jywgci5uYW1lKQpwLnBvcCgpCmVuZApmdW5jdGlvbiBtLmRhdGFTb3VyY2UocikKcC5wdXNoKCc8UnVsZS5EYXRhU291cmNlPicpCnAucHVzaCgnPERhdGFTb3VyY2UnKQpwLncoJ1BlcnNpc3RlbmNlPSJQcm9qZWN0RmlsZSInKQpwLncoJ0l0ZW1UeXBlPSIlcyIgLz4nLCByLm5hbWUpCnAucG9wKCkKcC5wb3AoJzwvUnVsZS5EYXRhU291cmNlPicpCmVuZApmdW5jdGlvbiBtLmV4ZWN1dGlvbkRlc2NyaXB0aW9uKHIpCnAucHVzaCgnPFN0cmluZ1Byb3BlcnR5JykKcC53KCdOYW1lPSJFeGVjdXRpb25EZXNjcmlwdGlvbiInKQpwLncoJ0Rpc3BsYXlOYW1lPSJFeGVjdXRpb24gRGVzY3JpcHRpb24iJykKcC53KCdWaXNpYmxlPSJGYWxzZSInKQpwLncoJ0luY2x1ZGVJbkNvbW1hbmRMaW5lPSJGYWxzZSIgLz4nKQpwLnBvcCgpCmVuZApmdW5jdGlvbiBtLmZpbGVFeHRlbnNpb24ocikKZm9yIF8sIHYgaW4gaXBhaXJzKHIuZmlsZWV4dGVuc2lvbikgZG8KcC5wdXNoKCc8RmlsZUV4dGVuc2lvbicpCnAudygnTmFtZT0iKiVzIicsIHYpCnAudygnQ29udGVudFR5cGU9IiVzIiAvPicsIHIubmFtZSkKcC5wb3AoKQplbmQKZW5kCmZ1bmN0aW9uIG0uaW5wdXRzKHIpCnAucHVzaCgnPFN0cmluZ0xpc3RQcm9wZXJ0eScpCnAudygnTmFtZT0iSW5wdXRzIicpCnAudygnQ2F0ZWdvcnk9IkNvbW1hbmQgTGluZSInKQpwLncoJ0lzUmVxdWlyZWQ9InRydWUiJykKcC53KCdTd2l0Y2g9IiAiPicpCnAucHVzaCgnPFN0cmluZ0xpc3RQcm9wZXJ0eS5EYXRhU291cmNlPicpCnAucHVzaCgnPERhdGFTb3VyY2UnKQpwLncoJ1BlcnNpc3RlbmNlPSJQcm9qZWN0RmlsZSInKQpwLncoJ0l0ZW1UeXBlPSIlcyInLCByLm5hbWUpCnAudygnU291cmNlVHlwZT0iSXRlbSIgLz4nKQpwLnBvcCgpCnAucG9wKCc8L1N0cmluZ0xpc3RQcm9wZXJ0eS5EYXRhU291cmNlPicpCnAucG9wKCc8L1N0cmluZ0xpc3RQcm9wZXJ0eT4nKQplbmQKZnVuY3Rpb24gbS5vdXRwdXRzKHIpCnAucHVzaCgnPFN0cmluZ0xpc3RQcm9wZXJ0eScpCnAudygnTmFtZT0iT3V0cHV0cyInKQpwLncoJ0Rpc3BsYXlOYW1lPSJPdXRwdXRzIicpCnAudygnVmlzaWJsZT0iRmFsc2UiJykKcC53KCdJbmNsdWRlSW5Db21tYW5kTGluZT0iRmFsc2UiIC8+JykKcC5wb3AoKQplbmQKZnVuY3Rpb24gbS5ydWxlSXRlbShyKQpwLnB1c2goJzxJdGVtVHlwZScpCnAudygnTmFtZT0iJXMiJywgci5uYW1lKQpwLncoJ0Rpc3BsYXlOYW1lPSIlcyIgLz4nLCByLmRpc3BsYXkgb3Igci5uYW1lKQpwLnBvcCgpCmVuZApmdW5jdGlvbiBtLnByb2plY3RTY2hlbWFEZWZpbml0aW9ucyhyKQpwLnB1c2goJzxQcm9qZWN0U2NoZW1hRGVmaW5pdGlvbnMgeG1sbnM9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vYnVpbGQvMjAwOS9wcm9wZXJ0aWVzIiB4bWxuczp4PSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL3dpbmZ4LzIwMDYveGFtbCIgeG1sbnM6c3lzPSJjbHItbmFtZXNwYWNlOlN5c3RlbTthc3NlbWJseT1tc2NvcmxpYiI+JykKZW5kCgAAAAAAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgdnN0dWRpbyA9IHAudnN0dWRpbwpuZXdhY3Rpb24gewp0cmlnZ2VyICAgICA9ICJ2czIwMTIiLApzaG9ydG5hbWUgICA9ICJWaXN1YWwgU3R1ZGlvIDIwMTIiLApkZXNjcmlwdGlvbiA9ICJHZW5lcmF0ZSBWaXN1YWwgU3R1ZGlvIDIwMTIgcHJvamVjdCBmaWxlcyIsCnRhcmdldG9zID0gIndpbmRvd3MiLAp0b29sc2V0ICA9ICJtc2MtdjExMCIsCnZhbGlkX2tpbmRzICAgICA9IHsgIkNvbnNvbGVBcHAiLCAiV2luZG93ZWRBcHAiLCAiU3RhdGljTGliIiwgIlNoYXJlZExpYiIsICJNYWtlZmlsZSIsICJOb25lIiwgIlV0aWxpdHkiIH0sCnZhbGlkX2xhbmd1YWdlcyA9IHsgIkMiLCAiQysrIiwgIkMjIiB9LAp2YWxpZF90b29scyAgICAgPSB7CmNjICAgICA9IHsgIm1zYyIgICB9LApkb3RuZXQgPSB7ICJtc25ldCIgfSwKfSwKb25Xb3Jrc3BhY2UgPSBmdW5jdGlvbih3a3MpCnZzdHVkaW8udnMyMDA1LmdlbmVyYXRlU29sdXRpb24od2tzKQplbmQsCm9uUHJvamVjdCA9IGZ1bmN0aW9uKHByaikKdnN0dWRpby52czIwMTAuZ2VuZXJhdGVQcm9qZWN0KHByaikKZW5kLApvblJ1bGUgPSBmdW5jdGlvbihydWxlKQp2c3R1ZGlvLnZzMjAxMC5nZW5lcmF0ZVJ1bGUocnVsZSkKZW5kLApvbkNsZWFuV29ya3NwYWNlID0gZnVuY3Rpb24od2tzKQp2c3R1ZGlvLmNsZWFuU29sdXRpb24od2tzKQplbmQsCm9uQ2xlYW5Qcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQp2c3R1ZGlvLmNsZWFuUHJvamVjdChwcmopCmVuZCwKb25DbGVhblRhcmdldCA9IGZ1bmN0aW9uKHByaikKdnN0dWRpby5jbGVhblRhcmdldChwcmopCmVuZCwKcGF0aFZhcnMgPSB2c3R1ZGlvLnZzMjAxMC5wYXRoVmFycywKdnN0dWRpbyA9IHsKc29sdXRpb25WZXJzaW9uID0gIjEyIiwKdmVyc2lvbk5hbWUgICAgID0gIjIwMTIiLAp0YXJnZXRGcmFtZXdvcmsgPSAiNC41IiwKdG9vbHNWZXJzaW9uICAgID0gIjQuMCIsCn0KfQoAAGxvY2FsIHAgPSBwcmVtYWtlCmxvY2FsIHZzdHVkaW8gPSBwLnZzdHVkaW8KbmV3YWN0aW9uIHsKdHJpZ2dlciAgICAgPSAidnMyMDEzIiwKc2hvcnRuYW1lICAgPSAiVmlzdWFsIFN0dWRpbyAyMDEzIiwKZGVzY3JpcHRpb24gPSAiR2VuZXJhdGUgVmlzdWFsIFN0dWRpbyAyMDEzIHByb2plY3QgZmlsZXMiLAp0YXJnZXRvcyA9ICJ3aW5kb3dzIiwKdG9vbHNldCAgPSAibXNjLXYxMjAiLAp2YWxpZF9raW5kcyAgICAgPSB7ICJDb25zb2xlQXBwIiwgIldpbmRvd2VkQXBwIiwgIlN0YXRpY0xpYiIsICJTaGFyZWRMaWIiLCAiTWFrZWZpbGUiLCAiTm9uZSIsICJVdGlsaXR5IiB9LAp2YWxpZF9sYW5ndWFnZXMgPSB7ICJDIiwgIkMrKyIsICJDIyIgfSwKdmFsaWRfdG9vbHMgICAgID0gewpjYyAgICAgPSB7ICJtc2MiICAgfSwKZG90bmV0ID0geyAibXNuZXQiIH0sCn0sCm9uV29ya3NwYWNlID0gZnVuY3Rpb24od2tzKQp2c3R1ZGlvLnZzMjAwNS5nZW5lcmF0ZVNvbHV0aW9uKHdrcykKZW5kLApvblByb2plY3QgPSBmdW5jdGlvbihwcmopCnZzdHVkaW8udnMyMDEwLmdlbmVyYXRlUHJvamVjdChwcmopCmVuZCwKb25SdWxlID0gZnVuY3Rpb24ocnVsZSkKdnN0dWRpby52czIwMTAuZ2VuZXJhdGVSdWxlKHJ1bGUpCmVuZCwKb25DbGVhbldvcmtzcGFjZSA9IGZ1bmN0aW9uKHdrcykKdnN0dWRpby5jbGVhblNvbHV0aW9uKHdrcykKZW5kLApvbkNsZWFuUHJvamVjdCA9IGZ1bmN0aW9uKHByaikKdnN0dWRpby5jbGVhblByb2plY3QocHJqKQplbmQsCm9uQ2xlYW5UYXJnZXQgPSBmdW5jdGlvbihwcmopCnZzdHVkaW8uY2xlYW5UYXJnZXQocHJqKQplbmQsCnBhdGhWYXJzID0gdnN0dWRpby52czIwMTAucGF0aFZhcnMsCnZzdHVkaW8gPSB7CnNvbHV0aW9uVmVyc2lvbiA9ICIxMiIsCnZlcnNpb25OYW1lICAgICA9ICIyMDEzIiwKdGFyZ2V0RnJhbWV3b3JrID0gIjQuNSIsCnRvb2xzVmVyc2lvbiAgICA9ICIxMi4wIiwKZmlsdGVyVG9vbHNWZXJzaW9uID0gIjQuMCIsCn0KfQoAAAAAAGxvY2FsIHAgPSBwcmVtYWtlCmxvY2FsIHZzdHVkaW8gPSBwLnZzdHVkaW8KbmV3YWN0aW9uIHsKdHJpZ2dlciAgICAgPSAidnMyMDE1IiwKc2hvcnRuYW1lICAgPSAiVmlzdWFsIFN0dWRpbyAyMDE1IiwKZGVzY3JpcHRpb24gPSAiR2VuZXJhdGUgVmlzdWFsIFN0dWRpbyAyMDE1IHByb2plY3QgZmlsZXMiLAp0YXJnZXRvcyA9ICJ3aW5kb3dzIiwKdG9vbHNldCAgPSAibXNjLXYxNDAiLAp2YWxpZF9raW5kcyAgICAgPSB7ICJDb25zb2xlQXBwIiwgIldpbmRvd2VkQXBwIiwgIlN0YXRpY0xpYiIsICJTaGFyZWRMaWIiLCAiTWFrZWZpbGUiLCAiTm9uZSIsICJVdGlsaXR5IiB9LAp2YWxpZF9sYW5ndWFnZXMgPSB7ICJDIiwgIkMrKyIsICJDIyIgfSwKdmFsaWRfdG9vbHMgICAgID0gewpjYyAgICAgPSB7ICJtc2MiICAgfSwKZG90bmV0ID0geyAibXNuZXQiIH0sCn0sCm9uV29ya3NwYWNlID0gZnVuY3Rpb24od2tzKQp2c3R1ZGlvLnZzMjAwNS5nZW5lcmF0ZVNvbHV0aW9uKHdrcykKZW5kLApvblByb2plY3QgPSBmdW5jdGlvbihwcmopCnZzdHVkaW8udnMyMDEwLmdlbmVyYXRlUHJvamVjdChwcmopCmVuZCwKb25SdWxlID0gZnVuY3Rpb24ocnVsZSkKdnN0dWRpby52czIwMTAuZ2VuZXJhdGVSdWxlKHJ1bGUpCmVuZCwKb25DbGVhbldvcmtzcGFjZSA9IGZ1bmN0aW9uKHdrcykKdnN0dWRpby5jbGVhblNvbHV0aW9uKHdrcykKZW5kLApvbkNsZWFuUHJvamVjdCA9IGZ1bmN0aW9uKHByaikKdnN0dWRpby5jbGVhblByb2plY3QocHJqKQplbmQsCm9uQ2xlYW5UYXJnZXQgPSBmdW5jdGlvbihwcmopCnZzdHVkaW8uY2xlYW5UYXJnZXQocHJqKQplbmQsCnBhdGhWYXJzID0gdnN0dWRpby52czIwMTAucGF0aFZhcnMsCnZzdHVkaW8gPSB7CnNvbHV0aW9uVmVyc2lvbiA9ICIxMiIsCnZlcnNpb25OYW1lICAgICA9ICIxNCIsCnRhcmdldEZyYW1ld29yayA9ICI0LjUiLAp0b29sc1ZlcnNpb24gICAgPSAiMTQuMCIsCmZpbHRlclRvb2xzVmVyc2lvbiA9ICI0LjAiLAp9Cn0KAAAAAAAAAGxvY2FsIHAgPSBwcmVtYWtlCmxvY2FsIHZzdHVkaW8gPSBwLnZzdHVkaW8KbmV3YWN0aW9uIHsKdHJpZ2dlciAgICAgPSAidnMyMDE3IiwKc2hvcnRuYW1lICAgPSAiVmlzdWFsIFN0dWRpbyAyMDE3IiwKZGVzY3JpcHRpb24gPSAiR2VuZXJhdGUgVmlzdWFsIFN0dWRpbyAyMDE3IHByb2plY3QgZmlsZXMiLAp0YXJnZXRvcyA9ICJ3aW5kb3dzIiwKdG9vbHNldCAgPSAibXNjLXYxNDEiLAp2YWxpZF9raW5kcyAgICAgPSB7ICJDb25zb2xlQXBwIiwgIldpbmRvd2VkQXBwIiwgIlN0YXRpY0xpYiIsICJTaGFyZWRMaWIiLCAiTWFrZWZpbGUiLCAiTm9uZSIsICJVdGlsaXR5IiB9LAp2YWxpZF9sYW5ndWFnZXMgPSB7ICJDIiwgIkMrKyIsICJDIyIgfSwKdmFsaWRfdG9vbHMgICAgID0gewpjYyAgICAgPSB7ICJtc2MiICAgfSwKZG90bmV0ID0geyAibXNuZXQiIH0sCn0sCm9uV29ya3NwYWNlID0gZnVuY3Rpb24od2tzKQpwLnZzdHVkaW8udnMyMDA1LmdlbmVyYXRlU29sdXRpb24od2tzKQplbmQsCm9uUHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcC52c3R1ZGlvLnZzMjAxMC5nZW5lcmF0ZVByb2plY3QocHJqKQplbmQsCm9uUnVsZSA9IGZ1bmN0aW9uKHJ1bGUpCnAudnN0dWRpby52czIwMTAuZ2VuZXJhdGVSdWxlKHJ1bGUpCmVuZCwKb25DbGVhbldvcmtzcGFjZSA9IGZ1bmN0aW9uKHdrcykKcC52c3R1ZGlvLmNsZWFuU29sdXRpb24od2tzKQplbmQsCm9uQ2xlYW5Qcm9qZWN0ID0gZnVuY3Rpb24ocHJqKQpwLnZzdHVkaW8uY2xlYW5Qcm9qZWN0KHByaikKZW5kLApvbkNsZWFuVGFyZ2V0ID0gZnVuY3Rpb24ocHJqKQpwLnZzdHVkaW8uY2xlYW5UYXJnZXQocHJqKQplbmQsCnBhdGhWYXJzID0gdnN0dWRpby52czIwMTAucGF0aFZhcnMsCnZzdHVkaW8gPSB7CnNvbHV0aW9uVmVyc2lvbiA9ICIxMiIsCnZlcnNpb25OYW1lICAgICA9ICIxNSIsCnRhcmdldEZyYW1ld29yayA9ICI0LjUuMiIsCnRvb2xzVmVyc2lvbiAgICA9ICIxNS4wIiwKZmlsdGVyVG9vbHNWZXJzaW9uID0gIjQuMCIsCn0KfQoAbG9jYWwgcCA9IHByZW1ha2UKcC5hcGkucmVnaXN0ZXIgewpuYW1lID0gInhjb2RlYnVpbGRzZXR0aW5ncyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAia2V5LWFycmF5IiwKfQpwLmFwaS5yZWdpc3RlciB7Cm5hbWUgPSAieGNvZGVidWlsZHJlc291cmNlcyIsCnNjb3BlID0gImNvbmZpZyIsCmtpbmQgPSAibGlzdCIsCn0KbmV3YWN0aW9uIHsKdHJpZ2dlciAgICAgPSAieGNvZGU0IiwKc2hvcnRuYW1lICAgPSAiQXBwbGUgWGNvZGUgNCIsCmRlc2NyaXB0aW9uID0gIkdlbmVyYXRlIEFwcGxlIFhjb2RlIDQgcHJvamVjdCBmaWxlcyIsCnRhcmdldG9zID0gIm1hY29zeCIsCnRvb2xzZXQgID0gImNsYW5nIiwKdmFsaWRfa2luZHMgICAgID0geyAiQ29uc29sZUFwcCIsICJXaW5kb3dlZEFwcCIsICJTaGFyZWRMaWIiLCAiU3RhdGljTGliIiwgIk1ha2VmaWxlIiwgIk5vbmUiIH0sCnZhbGlkX2xhbmd1YWdlcyA9IHsgIkMiLCAiQysrIiB9LAp2YWxpZF90b29scyAgICAgPSB7CmNjID0geyAiZ2NjIiwgImNsYW5nIiB9LAp9LApvbldvcmtzcGFjZSA9IGZ1bmN0aW9uKHdrcykKcC5nZW5lcmF0ZSh3a3MsICIueGN3b3Jrc3BhY2UvY29udGVudHMueGN3b3Jrc3BhY2VkYXRhIiwgcC5tb2R1bGVzLnhjb2RlLmdlbmVyYXRlV29ya3NwYWNlKQplbmQsCm9uUHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcC5nZW5lcmF0ZShwcmosICIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiIsIHAubW9kdWxlcy54Y29kZS5nZW5lcmF0ZVByb2plY3QpCmVuZCwKfQpyZXR1cm4gZnVuY3Rpb24oY2ZnKQpyZXR1cm4gKF9BQ1RJT04gPT0gInhjb2RlNCIpCmVuZAoAAAAAAABsb2NhbCBwID0gcHJlbWFrZQpwLm1vZHVsZXMueGNvZGUgPSB7fQpsb2NhbCBtID0gcC5tb2R1bGVzLnhjb2RlCm0uX1ZFUlNJT04gPSBwLl9WRVJTSU9OCm0uZWxlbWVudHMgPSB7fQppbmNsdWRlKCJ4Y29kZV9jb21tb24ubHVhIikKaW5jbHVkZSgieGNvZGU0X3dvcmtzcGFjZS5sdWEiKQppbmNsdWRlKCJ4Y29kZV9wcm9qZWN0Lmx1YSIpCnJldHVybiBtCgAAAAAAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgbSA9IHAubW9kdWxlcy54Y29kZQpsb2NhbCB0cmVlID0gcC50cmVlCm0uZWxlbWVudHMud29ya3NwYWNlID0gZnVuY3Rpb24od2tzKQpyZXR1cm4gewptLnhtbERlY2xhcmF0aW9uLAptLndvcmtzcGFjZSwKbS53b3Jrc3BhY2VGaWxlUmVmcywKbS53b3Jrc3BhY2VUYWlsLAp9CmVuZApmdW5jdGlvbiBtLmdlbmVyYXRlV29ya3NwYWNlKHdrcykKbS5wcmVwYXJlV29ya3NwYWNlKHdrcykKcC5jYWxsQXJyYXkobS5lbGVtZW50cy53b3Jrc3BhY2UsIHdrcykKZW5kCmZ1bmN0aW9uIG0ud29ya3NwYWNlKCkKcC5wdXNoKCc8V29ya3NwYWNlJykKcC53KCd2ZXJzaW9uID0gIjEuMCI+JykKZW5kCmZ1bmN0aW9uIG0ud29ya3NwYWNlVGFpbCgpCnAub3V0KCc8L1dvcmtzcGFjZT4nKQplbmQKbS5lbGVtZW50cy53b3Jrc3BhY2VGaWxlUmVmID0gZnVuY3Rpb24ocHJqKQpyZXR1cm4gewptLndvcmtzcGFjZUxvY2F0aW9uLAp9CmVuZApmdW5jdGlvbiBtLndvcmtzcGFjZUZpbGVSZWZzKHdrcykKbG9jYWwgdHIgPSBwLndvcmtzcGFjZS5ncm91cHRyZWUod2tzKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubGVhZiA9IGZ1bmN0aW9uKG4pCmxvY2FsIHByaiA9IG4ucHJvamVjdApwLnB1c2goJzxGaWxlUmVmJykKbG9jYWwgY29udGVudHMgPSBwLmNhcHR1cmUoZnVuY3Rpb24oKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLndvcmtzcGFjZUZpbGVSZWYsIHByaikKZW5kKQpwLm91dGxuKGNvbnRlbnRzIC4uICI+IikKcC5wb3AoJzwvRmlsZVJlZj4nKQplbmQsCm9uYnJhbmNoZW50ZXIgPSBmdW5jdGlvbihuKQpsb2NhbCBwcmogPSBuLnByb2plY3QKcC5wdXNoKCc8R3JvdXAnKQpwLncoJ2xvY2F0aW9uID0gImNvbnRhaW5lcjoiJykKcC53KCduYW1lID0gIiVzIj4nLCBuLm5hbWUpCmVuZCwKb25icmFuY2hleGl0ID0gZnVuY3Rpb24obikKcC5wb3AoJzwvR3JvdXA+JykKZW5kLAp9KQplbmQKZnVuY3Rpb24gbS53b3Jrc3BhY2VMb2NhdGlvbihwcmopCmxvY2FsIGZuYW1lID0gcC5maWxlbmFtZShwcmosICIueGNvZGVwcm9qIikKZm5hbWUgPSBwYXRoLmdldHJlbGF0aXZlKHByai53b3Jrc3BhY2UubG9jYXRpb24sIGZuYW1lKQpwLncoJ2xvY2F0aW9uID0gImdyb3VwOiVzIicsIGZuYW1lKQplbmQKZnVuY3Rpb24gbS54bWxEZWNsYXJhdGlvbigpCnAueG1sVXRmOCh0cnVlKQplbmQKAAAAAAAAbG9jYWwgcCA9IHByZW1ha2UKbG9jYWwgeGNvZGUgPSBwLm1vZHVsZXMueGNvZGUKbG9jYWwgdHJlZSAgPSBwLnRyZWUKbG9jYWwgd29ya3NwYWNlID0gcC53b3Jrc3BhY2UKbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApsb2NhbCBjb25maWcgPSBwLmNvbmZpZwpsb2NhbCBmaWxlY29uZmlnID0gcC5maWxlY29uZmlnCmZ1bmN0aW9uIHhjb2RlLmdldGJ1aWxkY2F0ZWdvcnkobm9kZSkKbG9jYWwgY2F0ZWdvcmllcyA9IHsKWyIuYSJdID0gIkZyYW1ld29ya3MiLApbIi5jIl0gPSAiU291cmNlcyIsClsiLmNjIl0gPSAiU291cmNlcyIsClsiLmNwcCJdID0gIlNvdXJjZXMiLApbIi5jeHgiXSA9ICJTb3VyY2VzIiwKWyIuZHlsaWIiXSA9ICJGcmFtZXdvcmtzIiwKWyIuZnJhbWV3b3JrIl0gPSAiRnJhbWV3b3JrcyIsClsiLm0iXSA9ICJTb3VyY2VzIiwKWyIubW0iXSA9ICJTb3VyY2VzIiwKWyIuc3RyaW5ncyJdID0gIlJlc291cmNlcyIsClsiLm5pYiJdID0gIlJlc291cmNlcyIsClsiLnhpYiJdID0gIlJlc291cmNlcyIsClsiLnN0b3J5Ym9hcmQiXSA9ICJSZXNvdXJjZXMiLApbIi5pY25zIl0gPSAiUmVzb3VyY2VzIiwKWyIucyJdID0gIlNvdXJjZXMiLApbIi5TIl0gPSAiU291cmNlcyIsCn0KaWYgbm9kZS5pc1Jlc291cmNlIHRoZW4KcmV0dXJuICJSZXNvdXJjZXMiCmVuZApyZXR1cm4gY2F0ZWdvcmllc1twYXRoLmdldGV4dGVuc2lvbihub2RlLm5hbWUpXQplbmQKZnVuY3Rpb24geGNvZGUuaXNJdGVtUmVzb3VyY2UocHJvamVjdCwgbm9kZSkKbG9jYWwgcmVzOwppZiBwcm9qZWN0IGFuZCBwcm9qZWN0Lnhjb2RlYnVpbGRyZXNvdXJjZXMgdGhlbgppZiB0eXBlKHByb2plY3QueGNvZGVidWlsZHJlc291cmNlcykgPT0gInRhYmxlIiB0aGVuCnJlcyA9IHByb2plY3QueGNvZGVidWlsZHJlc291cmNlcwplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIGNoZWNrSXRlbUluTGlzdChpdGVtLCBsaXN0KQppZiBpdGVtIHRoZW4KaWYgbGlzdCB0aGVuCmlmIHR5cGUobGlzdCkgPT0gInRhYmxlIiB0aGVuCmZvciBfLHYgaW4gcGFpcnMobGlzdCkgZG8KaWYgc3RyaW5nLmZpbmQoaXRlbSwgdikgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKZW5kCmVuZAplbmQKZW5kCnJldHVybiBmYWxzZQplbmQKaWYgKGNoZWNrSXRlbUluTGlzdChub2RlLnBhdGgsIHJlcykpIHRoZW4KcmV0dXJuIHRydWUKZW5kCnJldHVybiBmYWxzZQplbmQKZnVuY3Rpb24geGNvZGUuZ2V0ZmlsZXR5cGUobm9kZSwgY2ZnKQppZiBub2RlLmNvbmZpZ3MgdGhlbgpsb2NhbCBmaWxlY2ZnID0gZmlsZWNvbmZpZy5nZXRjb25maWcobm9kZSwgY2ZnKQppZiBmaWxlY2ZnIHRoZW4KaWYgZmlsZWNmZy5sYW5ndWFnZSA9PSAiT2JqQyIgdGhlbgpyZXR1cm4gInNvdXJjZWNvZGUuYy5vYmpjIgplbHNlaWYgZmlsZWNmZy5sYW5ndWFnZSA9PSAiT2JqQ3BwIiB0aGVuCnJldHVybiAic291cmNlY29kZS5jcHAub2JqY3BwIgplbmQKZW5kCmVuZApsb2NhbCB0eXBlcyA9IHsKWyIuYyJdICAgICAgICAgPSAic291cmNlY29kZS5jLmMiLApbIi5jYyJdICAgICAgICA9ICJzb3VyY2Vjb2RlLmNwcC5jcHAiLApbIi5jcHAiXSAgICAgICA9ICJzb3VyY2Vjb2RlLmNwcC5jcHAiLApbIi5jc3MiXSAgICAgICA9ICJ0ZXh0LmNzcyIsClsiLmN4eCJdICAgICAgID0gInNvdXJjZWNvZGUuY3BwLmNwcCIsClsiLlMiXSAgICAgICAgID0gInNvdXJjZWNvZGUuYXNtLmFzbSIsClsiLmZyYW1ld29yayJdID0gIndyYXBwZXIuZnJhbWV3b3JrIiwKWyIuZ2lmIl0gICAgICAgPSAiaW1hZ2UuZ2lmIiwKWyIuaCJdICAgICAgICAgPSAic291cmNlY29kZS5jLmgiLApbIi5odG1sIl0gICAgICA9ICJ0ZXh0Lmh0bWwiLApbIi5sdWEiXSAgICAgICA9ICJzb3VyY2Vjb2RlLmx1YSIsClsiLm0iXSAgICAgICAgID0gInNvdXJjZWNvZGUuYy5vYmpjIiwKWyIubW0iXSAgICAgICAgPSAic291cmNlY29kZS5jcHAub2JqYyIsClsiLm5pYiJdICAgICAgID0gIndyYXBwZXIubmliIiwKWyIuc3Rvcnlib2FyZCJdID0gImZpbGUuc3Rvcnlib2FyZCIsClsiLnBjaCJdICAgICAgID0gInNvdXJjZWNvZGUuYy5oIiwKWyIucGxpc3QiXSAgICAgPSAidGV4dC5wbGlzdC54bWwiLApbIi5zdHJpbmdzIl0gICA9ICJ0ZXh0LnBsaXN0LnN0cmluZ3MiLApbIi54aWIiXSAgICAgICA9ICJmaWxlLnhpYiIsClsiLmljbnMiXSAgICAgID0gImltYWdlLmljbnMiLApbIi5zIl0gICAgICAgICA9ICJzb3VyY2Vjb2RlLmFzbSIsClsiLmJtcCJdICAgICAgID0gImltYWdlLmJtcCIsClsiLndhdiJdICAgICAgID0gImF1ZGlvLndhdiIsClsiLnhjYXNzZXRzIl0gID0gImZvbGRlci5hc3NldGNhdGFsb2ciLAp9CnJldHVybiB0eXBlc1twYXRoLmdldGV4dGVuc2lvbihub2RlLnBhdGgpXSBvciAidGV4dCIKZW5kCmxvY2FsIGZ1bmN0aW9uIHhjb2RlUHJpbnRVc2VyQ29uZmlnUmVmZXJlbmNlcyhvZmZzZXQsIGNmZywgdHIsIGtpbmQpCmxvY2FsIHJlZmVyZW5jZU5hbWUKaWYga2luZCA9PSAicHJvamVjdCIgdGhlbgpyZWZlcmVuY2VOYW1lID0gY2ZnLnhjb2RlY29uZmlncmVmZXJlbmNlcHJvamVjdAplbHNlaWYga2luZCA9PSAidGFyZ2V0IiB0aGVuCnJlZmVyZW5jZU5hbWUgPSBjZmcueGNvZGVjb25maWdyZWZlcmVuY2V0YXJnZXQKZW5kCnRyZWUudHJhdmVyc2UodHIsIHsKb25sZWFmID0gZnVuY3Rpb24obm9kZSkKZmlsZW5hbWUgPSBub2RlLm5hbWUKaWYgbm9kZS5pZCBhbmQgcGF0aC5nZXRleHRlbnNpb24oZmlsZW5hbWUpID09ICIueGNjb25maWciIHRoZW4KaWYgZmlsZW5hbWUgPT0gcmVmZXJlbmNlTmFtZSB0aGVuCl9wKG9mZnNldCwgJ2Jhc2VDb25maWd1cmF0aW9uUmVmZXJlbmNlID0gJXMgLyogJXMgKi87Jywgbm9kZS5pZCwgZmlsZW5hbWUpCnJldHVybgplbmQKZW5kCmVuZAp9LCBmYWxzZSkKZW5kCmxvY2FsIGVzY2FwZVNwZWNpYWxDaGFycyA9IHsKWydcbiddID0gJ1xcbicsClsnXHInXSA9ICdcXHInLApbJ1x0J10gPSAnXFx0JywKfQpsb2NhbCBmdW5jdGlvbiBlc2NhcGVDaGFyKGMpCnJldHVybiBlc2NhcGVTcGVjaWFsQ2hhcnNbY10gb3IgJ1xcJy4uYwplbmQKbG9jYWwgZnVuY3Rpb24gZXNjYXBlQXJnKHZhbHVlKQp2YWx1ZSA9IHZhbHVlOmdzdWIoJ1tcJyJcXFxuXHJcdCBdJywgZXNjYXBlQ2hhcikKcmV0dXJuIHZhbHVlCmVuZApsb2NhbCBmdW5jdGlvbiBlc2NhcGVTZXR0aW5nKHZhbHVlKQp2YWx1ZSA9IHZhbHVlOmdzdWIoJ1siXFxcblxyXHRdJywgZXNjYXBlQ2hhcikKcmV0dXJuIHZhbHVlCmVuZApsb2NhbCBmdW5jdGlvbiBzdHJpbmdpZnlTZXR0aW5nKHZhbHVlKQp2YWx1ZSA9IHZhbHVlLi4nJwppZiBub3QgdmFsdWU6bWF0Y2goJ15bJWElZF8uL10rJCcpIHRoZW4KdmFsdWUgPSAnIicuLmVzY2FwZVNldHRpbmcodmFsdWUpLi4nIicKZW5kCnJldHVybiB2YWx1ZQplbmQKbG9jYWwgZnVuY3Rpb24gY3VzdG9tU3RyaW5naWZ5U2V0dGluZyh2YWx1ZSkKdmFsdWUgPSB2YWx1ZS4uJycKbG9jYWwgdGVzdCA9IHZhbHVlOm1hdGNoKCdeWyVhJWRfLi8lK10rJCcpCmlmIHRlc3QgdGhlbgp2YWx1ZSA9ICciJy4uZXNjYXBlU2V0dGluZyh2YWx1ZSkuLiciJwplbmQKcmV0dXJuIHZhbHVlCmVuZApsb2NhbCBmdW5jdGlvbiBwcmludFNldHRpbmcobGV2ZWwsIG5hbWUsIHZhbHVlKQppZiB0eXBlKHZhbHVlKSA9PSAnZnVuY3Rpb24nIHRoZW4KdmFsdWUobGV2ZWwsIG5hbWUpCmVsc2VpZiB0eXBlKHZhbHVlKSB+PSAndGFibGUnIHRoZW4KX3AobGV2ZWwsICclcyA9ICVzOycsIHN0cmluZ2lmeVNldHRpbmcobmFtZSksIHN0cmluZ2lmeVNldHRpbmcodmFsdWUpKQplbHNlaWYgI3ZhbHVlID49IDEgdGhlbgpfcChsZXZlbCwgJyVzID0gKCcsIHN0cmluZ2lmeVNldHRpbmcobmFtZSkpCmZvciBfLCBpdGVtIGluIGlwYWlycyh2YWx1ZSkgZG8KX3AobGV2ZWwgKyAxLCAnJXMsJywgc3RyaW5naWZ5U2V0dGluZyhpdGVtKSkKZW5kCl9wKGxldmVsLCAnKTsnKQplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIHByaW50U2V0dGluZ3NUYWJsZShsZXZlbCwgc2V0dGluZ3MpCmxvY2FsIGtleXMgPSB0YWJsZS5rZXlzKHNldHRpbmdzKQp0YWJsZS5zb3J0KGtleXMpCmZvciBfLCBrIGluIGlwYWlycyhrZXlzKSBkbwpwcmludFNldHRpbmcobGV2ZWwsIGssIHNldHRpbmdzW2tdKQplbmQKZW5kCmxvY2FsIGZ1bmN0aW9uIG92ZXJyaWRlU2V0dGluZ3Moc2V0dGluZ3MsIG92ZXJyaWRlcykKaWYgdHlwZShvdmVycmlkZXMpID09ICd0YWJsZScgdGhlbgpmb3IgbmFtZSwgdmFsdWUgaW4gcGFpcnMob3ZlcnJpZGVzKSBkbwpzZXR0aW5nc1tuYW1lXSA9IGlpZih2YWx1ZSB+PSBmYWxzZSwgdmFsdWUsIG5pbCkKZW5kCmVuZAplbmQKZnVuY3Rpb24geGNvZGUuZ2V0cHJvZHVjdHR5cGUobm9kZSkKbG9jYWwgdHlwZXMgPSB7CkNvbnNvbGVBcHAgID0gImNvbS5hcHBsZS5wcm9kdWN0LXR5cGUudG9vbCIsCldpbmRvd2VkQXBwID0gImNvbS5hcHBsZS5wcm9kdWN0LXR5cGUuYXBwbGljYXRpb24iLApTdGF0aWNMaWIgICA9ICJjb20uYXBwbGUucHJvZHVjdC10eXBlLmxpYnJhcnkuc3RhdGljIiwKU2hhcmVkTGliICAgPSAiY29tLmFwcGxlLnByb2R1Y3QtdHlwZS5saWJyYXJ5LmR5bmFtaWMiLAp9CnJldHVybiB0eXBlc1tub2RlLmNmZy5raW5kXQplbmQKZnVuY3Rpb24geGNvZGUuZ2V0dGFyZ2V0dHlwZShub2RlKQpsb2NhbCB0eXBlcyA9IHsKQ29uc29sZUFwcCAgPSAiXCJjb21waWxlZC5tYWNoLW8uZXhlY3V0YWJsZVwiIiwKV2luZG93ZWRBcHAgPSAid3JhcHBlci5hcHBsaWNhdGlvbiIsClN0YXRpY0xpYiAgID0gImFyY2hpdmUuYXIiLApTaGFyZWRMaWIgICA9ICJcImNvbXBpbGVkLm1hY2gtby5keWxpYlwiIiwKfQpyZXR1cm4gdHlwZXNbbm9kZS5jZmcua2luZF0KZW5kCmZ1bmN0aW9uIHhjb2RlLmdldHhjb2RlcHJvam5hbWUocHJqKQpsb2NhbCBmbmFtZSA9IHAuZmlsZW5hbWUocHJqLCAiLnhjb2RlcHJvaiIpCnJldHVybiBmbmFtZQplbmQKZnVuY3Rpb24geGNvZGUuaXNmcmFtZXdvcmsoZm5hbWUpCnJldHVybiAocGF0aC5nZXRleHRlbnNpb24oZm5hbWUpID09ICIuZnJhbWV3b3JrIikKZW5kCmZ1bmN0aW9uIHhjb2RlLm5ld2lkKC4uLikKbG9jYWwgbmFtZSA9ICcnCmxvY2FsIGFyZyA9IHsuLi59CmZvciBpLCB2IGluIHBhaXJzKGFyZykgZG8KbmFtZSA9IG5hbWUuLnYuLicqKioqJwplbmQKcmV0dXJuICgiJTA4WCUwOFglMDhYIik6Zm9ybWF0KG5hbWU6aGFzaCgxNjc3NzYxOSksIG5hbWU6aGFzaCgyMTY2MTM2MjYxKSwgbmFtZTpoYXNoKDQ2NTc3NjE5KSkKZW5kCmZ1bmN0aW9uIHhjb2RlLnByZXBhcmVXb3Jrc3BhY2Uod2tzKQp3a3MueGNvZGUgPSB7IH0KZm9yIHByaiBpbiBwLndvcmtzcGFjZS5lYWNocHJvamVjdCh3a3MpIGRvCmxvY2FsIGNmZyA9IHByb2plY3QuZ2V0Y29uZmlnKHByaiwgcHJqLmNvbmZpZ3VyYXRpb25zWzFdLCBwcmoucGxhdGZvcm1zWzFdKQpsb2NhbCBidW5kbGVwYXRoID0gY2ZnLmJ1aWxkdGFyZ2V0LmJ1bmRsZW5hbWUgfj0gIiIgYW5kIGNmZy5idWlsZHRhcmdldC5idW5kbGVuYW1lIG9yIGNmZy5idWlsZHRhcmdldC5uYW1lOwppZiAocHJqLmV4dGVybmFsKSB0aGVuCmJ1bmRsZXBhdGggPSBjZmcucHJvamVjdC5uYW1lCmVuZApsb2NhbCBub2RlID0gcC50cmVlLm5ldyhwYXRoLmdldG5hbWUoYnVuZGxlcGF0aCkpCm5vZGUuY2ZnID0gY2ZnCm5vZGUuaWQgPSB4Y29kZS5uZXdpZChub2RlLm5hbWUsICJwcm9kdWN0IikKbm9kZS50YXJnZXRpZCA9IHhjb2RlLm5ld2lkKG5vZGUubmFtZSwgInRhcmdldCIpCnByai54Y29kZSA9IHt9CnByai54Y29kZS5wcm9qZWN0bm9kZSA9IG5vZGUKZW5kCmVuZApmdW5jdGlvbiB4Y29kZS5QQlhCdWlsZEZpbGUodHIpCmxvY2FsIHNldHRpbmdzID0ge307CnRyZWUudHJhdmVyc2UodHIsIHsKb25ub2RlID0gZnVuY3Rpb24obm9kZSkKaWYgbm9kZS5idWlsZGlkIHRoZW4Kc2V0dGluZ3Nbbm9kZS5idWlsZGlkXSA9IGZ1bmN0aW9uKGxldmVsKQpfcChsZXZlbCwnJXMgLyogJXMgaW4gJXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gJXMgLyogJXMgKi87IH07JywKbm9kZS5idWlsZGlkLCBub2RlLm5hbWUsIHhjb2RlLmdldGJ1aWxkY2F0ZWdvcnkobm9kZSksIG5vZGUuaWQsIG5vZGUubmFtZSkKZW5kCmVuZAplbmQKfSkKaWYgbm90IHRhYmxlLmlzZW1wdHkoc2V0dGluZ3MpIHRoZW4KX3AoJy8qIEJlZ2luIFBCWEJ1aWxkRmlsZSBzZWN0aW9uICovJykKcHJpbnRTZXR0aW5nc1RhYmxlKDIsIHNldHRpbmdzKTsKX3AoJy8qIEVuZCBQQlhCdWlsZEZpbGUgc2VjdGlvbiAqLycpCl9wKCcnKQplbmQKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWENvbnRhaW5lckl0ZW1Qcm94eSh0cikKbG9jYWwgc2V0dGluZ3MgPSB7fQpmb3IgXywgbm9kZSBpbiBpcGFpcnModHIucHJvamVjdHMuY2hpbGRyZW4pIGRvCnNldHRpbmdzW25vZGUucHJvZHVjdHByb3h5aWRdID0gZnVuY3Rpb24oKQpfcCgyLCclcyAvKiBQQlhDb250YWluZXJJdGVtUHJveHkgKi8gPSB7Jywgbm9kZS5wcm9kdWN0cHJveHlpZCkKX3AoMywnaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OycpCl9wKDMsJ2NvbnRhaW5lclBvcnRhbCA9ICVzIC8qICVzICovOycsIG5vZGUuaWQsIHBhdGguZ2V0cmVsYXRpdmUobm9kZS5wYXJlbnQucGFyZW50LnByb2plY3QubG9jYXRpb24sIG5vZGUucGF0aCkpCl9wKDMsJ3Byb3h5VHlwZSA9IDI7JykKX3AoMywncmVtb3RlR2xvYmFsSURTdHJpbmcgPSAlczsnLCBub2RlLnByb2plY3QueGNvZGUucHJvamVjdG5vZGUuaWQpCl9wKDMsJ3JlbW90ZUluZm8gPSAlczsnLCBzdHJpbmdpZnlTZXR0aW5nKG5vZGUucHJvamVjdC54Y29kZS5wcm9qZWN0bm9kZS5uYW1lKSkKX3AoMiwnfTsnKQplbmQKc2V0dGluZ3Nbbm9kZS50YXJnZXRwcm94eWlkXSA9IGZ1bmN0aW9uKCkKX3AoMiwnJXMgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovID0geycsIG5vZGUudGFyZ2V0cHJveHlpZCkKX3AoMywnaXNhID0gUEJYQ29udGFpbmVySXRlbVByb3h5OycpCl9wKDMsJ2NvbnRhaW5lclBvcnRhbCA9ICVzIC8qICVzICovOycsIG5vZGUuaWQsIHBhdGguZ2V0cmVsYXRpdmUobm9kZS5wYXJlbnQucGFyZW50LnByb2plY3QubG9jYXRpb24sIG5vZGUucGF0aCkpCl9wKDMsJ3Byb3h5VHlwZSA9IDE7JykKX3AoMywncmVtb3RlR2xvYmFsSURTdHJpbmcgPSAlczsnLCBub2RlLnByb2plY3QueGNvZGUucHJvamVjdG5vZGUudGFyZ2V0aWQpCl9wKDMsJ3JlbW90ZUluZm8gPSAlczsnLCBzdHJpbmdpZnlTZXR0aW5nKG5vZGUucHJvamVjdC54Y29kZS5wcm9qZWN0bm9kZS5uYW1lKSkKX3AoMiwnfTsnKQplbmQKZW5kCmlmIG5vdCB0YWJsZS5pc2VtcHR5KHNldHRpbmdzKSB0aGVuCl9wKCcvKiBCZWdpbiBQQlhDb250YWluZXJJdGVtUHJveHkgc2VjdGlvbiAqLycpCnByaW50U2V0dGluZ3NUYWJsZSgyLCBzZXR0aW5ncyk7Cl9wKCcvKiBFbmQgUEJYQ29udGFpbmVySXRlbVByb3h5IHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmVuZApmdW5jdGlvbiB4Y29kZS5QQlhGaWxlUmVmZXJlbmNlKHRyKQpsb2NhbCBjZmcgPSBwcm9qZWN0LmdldGZpcnN0Y29uZmlnKHRyLnByb2plY3QpCmxvY2FsIHNldHRpbmdzID0ge30KdHJlZS50cmF2ZXJzZSh0ciwgewpvbmxlYWYgPSBmdW5jdGlvbihub2RlKQppZiBub3Qgbm9kZS5wYXRoIHRoZW4KcmV0dXJuCmVuZAppZiBub2RlLmtpbmQgPT0gInByb2R1Y3QiIHRoZW4Kc2V0dGluZ3Nbbm9kZS5pZF0gPSBmdW5jdGlvbihsZXZlbCkKX3AobGV2ZWwsJyVzIC8qICVzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGV4cGxpY2l0RmlsZVR5cGUgPSAlczsgaW5jbHVkZUluSW5kZXggPSAwOyBuYW1lID0gJXM7IHBhdGggPSAlczsgc291cmNlVHJlZSA9IEJVSUxUX1BST0RVQ1RTX0RJUjsgfTsnLApub2RlLmlkLCBub2RlLm5hbWUsIHhjb2RlLmdldHRhcmdldHR5cGUobm9kZSksIHN0cmluZ2lmeVNldHRpbmcobm9kZS5uYW1lKSwgc3RyaW5naWZ5U2V0dGluZyhwYXRoLmdldG5hbWUobm9kZS5jZmcuYnVpbGR0YXJnZXQuYnVuZGxlbmFtZSB+PSAiIiBhbmQgbm9kZS5jZmcuYnVpbGR0YXJnZXQuYnVuZGxlbmFtZSBvciBub2RlLmNmZy5idWlsZHRhcmdldC5yZWxwYXRoKSkpCmVuZAplbHNlaWYgbm9kZS5wYXJlbnQucGFyZW50ID09IHRyLnByb2plY3RzIHRoZW4Kc2V0dGluZ3Nbbm9kZS5wYXJlbnQuaWRdID0gZnVuY3Rpb24obGV2ZWwpCmxvY2FsIHJlbHBhdGggPSBwYXRoLmdldHJlbGF0aXZlKHBhdGguZ2V0YWJzb2x1dGUodHIucHJvamVjdC5sb2NhdGlvbiksIHBhdGguZ2V0YWJzb2x1dGUobm9kZS5wYXJlbnQucHJvamVjdC5sb2NhdGlvbikpCl9wKGxldmVsLCclcyAvKiAlcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9ICJ3cmFwcGVyLnBiLXByb2plY3QiOyBuYW1lID0gJXM7IHBhdGggPSAlczsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OycsCm5vZGUucGFyZW50LmlkLCBub2RlLm5hbWUsIGN1c3RvbVN0cmluZ2lmeVNldHRpbmcobm9kZS5wYXJlbnQubmFtZSksIHN0cmluZ2lmeVNldHRpbmcocGF0aC5qb2luKHJlbHBhdGgsIG5vZGUucGFyZW50Lm5hbWUpKSkKZW5kCmVsc2UKc2V0dGluZ3Nbbm9kZS5pZF0gPSBmdW5jdGlvbihsZXZlbCkKbG9jYWwgcHRoLCBzcmMKaWYgeGNvZGUuaXNmcmFtZXdvcmsobm9kZS5wYXRoKSB0aGVuCmxvY2FsIG5vZGVQYXRoID0gbm9kZS5wYXRoCmxvY2FsIF8sIG1hdGNoRW5kLCB2YXJpYWJsZSA9IHN0cmluZy5maW5kKG5vZGVQYXRoLCAiXiUkJSgoLispJSkvIikKaWYgdmFyaWFibGUgdGhlbgpub2RlUGF0aCA9IHN0cmluZy5zdWIobm9kZVBhdGgsIG1hdGNoRW5kICsgMSkKZW5kCmlmIHN0cmluZy5maW5kKG5vZGVQYXRoLCcvJykgIHRoZW4KaWYgc3RyaW5nLmZpbmQobm9kZVBhdGgsJ14lLicpdGhlbgpwdGggPSBwYXRoLmdldHJlbGF0aXZlKHRyLnByb2plY3QubG9jYXRpb24sIG5vZGUucGF0aCkKc3JjID0gIlNPVVJDRV9ST09UIgp2YXJpYWJsZSA9IHNyYwplbHNlCnB0aCA9IG5vZGVQYXRoCnNyYyA9ICI8YWJzb2x1dGU+IgplbmQKZW5kCmlmIHZhcmlhYmxlIHRoZW4Kc3JjID0gdmFyaWFibGUKaWYgc3RyaW5nLmZpbmQocHRoLCAnXi8nKSB0aGVuCnB0aCA9IHN0cmluZy5zdWIocHRoLCAyKQplbmQKZWxzZQpwdGggPSAiU3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy8iIC4uIG5vZGUucGF0aApzcmMgPSAiU0RLUk9PVCIKZW5kCmVsc2UKc3JjID0gIjxncm91cD4iCmlmIG5vZGUuYWJzcGF0aCB0aGVuCnB0aCA9IHBhdGguZ2V0cmVsYXRpdmUodHIucHJvamVjdC5sb2NhdGlvbiwgbm9kZS5hYnNwYXRoKQplbHNlCnB0aCA9IG5vZGUucGF0aAplbmQKZW5kCl9wKGxldmVsLCclcyAvKiAlcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9ICVzOyBuYW1lID0gJXM7IHBhdGggPSAlczsgc291cmNlVHJlZSA9ICVzOyB9OycsCm5vZGUuaWQsIG5vZGUubmFtZSwgeGNvZGUuZ2V0ZmlsZXR5cGUobm9kZSwgY2ZnKSwgc3RyaW5naWZ5U2V0dGluZyhub2RlLm5hbWUpLCBzdHJpbmdpZnlTZXR0aW5nKHB0aCksIHN0cmluZ2lmeVNldHRpbmcoc3JjKSkKZW5kCmVuZAplbmQKfSkKaWYgbm90IHRhYmxlLmlzZW1wdHkoc2V0dGluZ3MpIHRoZW4KX3AoJy8qIEJlZ2luIFBCWEZpbGVSZWZlcmVuY2Ugc2VjdGlvbiAqLycpCnByaW50U2V0dGluZ3NUYWJsZSgyLCBzZXR0aW5ncykKX3AoJy8qIEVuZCBQQlhGaWxlUmVmZXJlbmNlIHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmVuZApmdW5jdGlvbiB4Y29kZS5QQlhGcmFtZXdvcmtzQnVpbGRQaGFzZSh0cikKX3AoJy8qIEJlZ2luIFBCWEZyYW1ld29ya3NCdWlsZFBoYXNlIHNlY3Rpb24gKi8nKQpfcCgyLCclcyAvKiBGcmFtZXdvcmtzICovID0geycsIHRyLnByb2R1Y3RzLmNoaWxkcmVuWzFdLmZ4c3RhZ2VpZCkKX3AoMywnaXNhID0gUEJYRnJhbWV3b3Jrc0J1aWxkUGhhc2U7JykKX3AoMywnYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsnKQpfcCgzLCdmaWxlcyA9ICgnKQp0cmVlLnRyYXZlcnNlKHRyLmZyYW1ld29ya3MsIHsKb25sZWFmID0gZnVuY3Rpb24obm9kZSkKaWYgbm9kZS5idWlsZGlkIHRoZW4KX3AoNCwnJXMgLyogJXMgaW4gRnJhbWV3b3JrcyAqLywnLCBub2RlLmJ1aWxkaWQsIG5vZGUubmFtZSkKZW5kCmVuZAp9KQp0cmVlLnRyYXZlcnNlKHRyLnByb2plY3RzLCB7Cm9ubGVhZiA9IGZ1bmN0aW9uKG5vZGUpCmlmIG5vZGUuYnVpbGRpZCB0aGVuCl9wKDQsJyVzIC8qICVzIGluIEZyYW1ld29ya3MgKi8sJywgbm9kZS5idWlsZGlkLCBub2RlLm5hbWUpCmVuZAplbmQKfSkKX3AoMywnKTsnKQpfcCgzLCdydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsnKQpfcCgyLCd9OycpCl9wKCcvKiBFbmQgUEJYRnJhbWV3b3Jrc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLycpCl9wKCcnKQplbmQKZnVuY3Rpb24geGNvZGUuUEJYR3JvdXAodHIpCmxvY2FsIHNldHRpbmdzID0ge30KdHJlZS50cmF2ZXJzZSh0ciwgewpvbm5vZGUgPSBmdW5jdGlvbihub2RlKQppZiAobm9kZS5wYXRoIGFuZCAjbm9kZS5jaGlsZHJlbiA9PSAwKSBvciBub2RlLmtpbmQgPT0gInZncm91cCIgdGhlbgpyZXR1cm4KZW5kCnNldHRpbmdzW25vZGUucHJvZHVjdGdyb3VwaWQgb3Igbm9kZS5pZF0gPSBmdW5jdGlvbigpCmlmIG5vZGUucGFyZW50ID09IHRyLnByb2plY3RzIHRoZW4KX3AoMiwnJXMgLyogUHJvZHVjdHMgKi8gPSB7Jywgbm9kZS5wcm9kdWN0Z3JvdXBpZCkKZWxzZQpfcCgyLCclcyAvKiAlcyAqLyA9IHsnLCBub2RlLmlkLCBub2RlLm5hbWUpCmVuZApfcCgzLCdpc2EgPSBQQlhHcm91cDsnKQpfcCgzLCdjaGlsZHJlbiA9ICgnKQpmb3IgXywgY2hpbGRub2RlIGluIGlwYWlycyhub2RlLmNoaWxkcmVuKSBkbwpfcCg0LCclcyAvKiAlcyAqLywnLCBjaGlsZG5vZGUuaWQsIGNoaWxkbm9kZS5uYW1lKQplbmQKX3AoMywnKTsnKQppZiBub2RlLnBhcmVudCA9PSB0ci5wcm9qZWN0cyB0aGVuCl9wKDMsJ25hbWUgPSBQcm9kdWN0czsnKQplbHNlCl9wKDMsJ25hbWUgPSAlczsnLCBzdHJpbmdpZnlTZXR0aW5nKG5vZGUubmFtZSkpCmxvY2FsIHZwYXRoID0gcHJvamVjdC5nZXR2cGF0aCh0ci5wcm9qZWN0LCBub2RlLm5hbWUpCmlmIG5vZGUucGF0aCBhbmQgbm9kZS5uYW1lIH49IHZwYXRoIHRoZW4KbG9jYWwgcCA9IG5vZGUucGF0aAppZiBub2RlLnBhcmVudC5wYXRoIHRoZW4KcCA9IHBhdGguZ2V0cmVsYXRpdmUobm9kZS5wYXJlbnQucGF0aCwgbm9kZS5wYXRoKQplbmQKX3AoMywncGF0aCA9ICVzOycsIHN0cmluZ2lmeVNldHRpbmcocCkpCmVuZAplbmQKX3AoMywnc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsnKQpfcCgyLCd9OycpCmVuZAplbmQKfSwgdHJ1ZSkKaWYgbm90IHRhYmxlLmlzZW1wdHkoc2V0dGluZ3MpIHRoZW4KX3AoJy8qIEJlZ2luIFBCWEdyb3VwIHNlY3Rpb24gKi8nKQpwcmludFNldHRpbmdzVGFibGUoMiwgc2V0dGluZ3MpCl9wKCcvKiBFbmQgUEJYR3JvdXAgc2VjdGlvbiAqLycpCl9wKCcnKQplbmQKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWE5hdGl2ZVRhcmdldCh0cikKX3AoJy8qIEJlZ2luIFBCWE5hdGl2ZVRhcmdldCBzZWN0aW9uICovJykKZm9yIF8sIG5vZGUgaW4gaXBhaXJzKHRyLnByb2R1Y3RzLmNoaWxkcmVuKSBkbwpsb2NhbCBuYW1lID0gdHIucHJvamVjdC5uYW1lCmxvY2FsIGZ1bmN0aW9uIGhhc0J1aWxkQ29tbWFuZHMod2hpY2gpCmlmICN0ci5wcm9qZWN0W3doaWNoXSA+IDAgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKZm9yIF8sIGNmZyBpbiBpcGFpcnModHIuY29uZmlncykgZG8KaWYgI2NmZ1t3aGljaF0gPiAwIHRoZW4KcmV0dXJuIHRydWUKZW5kCmVuZAplbmQKX3AoMiwnJXMgLyogJXMgKi8gPSB7Jywgbm9kZS50YXJnZXRpZCwgbmFtZSkKX3AoMywnaXNhID0gUEJYTmF0aXZlVGFyZ2V0OycpCl9wKDMsJ2J1aWxkQ29uZmlndXJhdGlvbkxpc3QgPSAlcyAvKiBCdWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWE5hdGl2ZVRhcmdldCAiJXMiICovOycsIG5vZGUuY2Znc2VjdGlvbiwgZXNjYXBlU2V0dGluZyhuYW1lKSkKX3AoMywnYnVpbGRQaGFzZXMgPSAoJykKaWYgaGFzQnVpbGRDb21tYW5kcygncHJlYnVpbGRjb21tYW5kcycpIHRoZW4KX3AoNCwnOTYwN0FFMTAxMEM4NTdFNTAwQ0QxMzc2IC8qIFByZWJ1aWxkICovLCcpCmVuZApfcCg0LCclcyAvKiBSZXNvdXJjZXMgKi8sJywgbm9kZS5yZXNzdGFnZWlkKQpfcCg0LCclcyAvKiBTb3VyY2VzICovLCcsIG5vZGUuc291cmNlc2lkKQppZiBoYXNCdWlsZENvbW1hbmRzKCdwcmVsaW5rY29tbWFuZHMnKSB0aGVuCl9wKDQsJzk2MDdBRTM1MTBDODVFN0UwMENEMTM3NiAvKiBQcmVsaW5rICovLCcpCmVuZApfcCg0LCclcyAvKiBGcmFtZXdvcmtzICovLCcsIG5vZGUuZnhzdGFnZWlkKQppZiBoYXNCdWlsZENvbW1hbmRzKCdwb3N0YnVpbGRjb21tYW5kcycpIHRoZW4KX3AoNCwnOTYwN0FFMzcxMEM4NUU4RjAwQ0QxMzc2IC8qIFBvc3RidWlsZCAqLywnKQplbmQKX3AoMywnKTsnKQpfcCgzLCdidWlsZFJ1bGVzID0gKCcpCl9wKDMsJyk7JykKX3AoMywnZGVwZW5kZW5jaWVzID0gKCcpCmZvciBfLCBub2RlIGluIGlwYWlycyh0ci5wcm9qZWN0cy5jaGlsZHJlbikgZG8KX3AoNCwnJXMgLyogUEJYVGFyZ2V0RGVwZW5kZW5jeSAqLywnLCBub2RlLnRhcmdldGRlcGVuZGlkKQplbmQKX3AoMywnKTsnKQpfcCgzLCduYW1lID0gJXM7Jywgc3RyaW5naWZ5U2V0dGluZyhuYW1lKSkKbG9jYWwgcAppZiBub2RlLmNmZy5raW5kID09ICJDb25zb2xlQXBwIiB0aGVuCnAgPSAiJChIT01FKS9iaW4iCmVsc2VpZiBub2RlLmNmZy5raW5kID09ICJXaW5kb3dlZEFwcCIgdGhlbgpwID0gIiQoSE9NRSkvQXBwbGljYXRpb25zIgplbmQKaWYgcCB0aGVuCl9wKDMsJ3Byb2R1Y3RJbnN0YWxsUGF0aCA9ICVzOycsIHN0cmluZ2lmeVNldHRpbmcocCkpCmVuZApfcCgzLCdwcm9kdWN0TmFtZSA9ICVzOycsIHN0cmluZ2lmeVNldHRpbmcobmFtZSkpCl9wKDMsJ3Byb2R1Y3RSZWZlcmVuY2UgPSAlcyAvKiAlcyAqLzsnLCBub2RlLmlkLCBub2RlLm5hbWUpCl9wKDMsJ3Byb2R1Y3RUeXBlID0gJXM7Jywgc3RyaW5naWZ5U2V0dGluZyh4Y29kZS5nZXRwcm9kdWN0dHlwZShub2RlKSkpCl9wKDIsJ307JykKZW5kCl9wKCcvKiBFbmQgUEJYTmF0aXZlVGFyZ2V0IHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWFByb2plY3QodHIpCl9wKCcvKiBCZWdpbiBQQlhQcm9qZWN0IHNlY3Rpb24gKi8nKQpfcCgyLCcwOEZCNzc5M0ZFODQxNTVEQzAyQUFDMDcgLyogUHJvamVjdCBvYmplY3QgKi8gPSB7JykKX3AoMywnaXNhID0gUEJYUHJvamVjdDsnKQpfcCgzLCdidWlsZENvbmZpZ3VyYXRpb25MaXN0ID0gMURFQjkyODkwODczM0REODAwMTBFOUNEIC8qIEJ1aWxkIGNvbmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYUHJvamVjdCAiJXMiICovOycsIHRyLm5hbWUpCl9wKDMsJ2NvbXBhdGliaWxpdHlWZXJzaW9uID0gIlhjb2RlIDMuMiI7JykKX3AoMywnaGFzU2Nhbm5lZEZvckVuY29kaW5ncyA9IDE7JykKX3AoMywnbWFpbkdyb3VwID0gJXMgLyogJXMgKi87JywgdHIuaWQsIHRyLm5hbWUpCl9wKDMsJ3Byb2plY3REaXJQYXRoID0gIiI7JykKaWYgI3RyLnByb2plY3RzLmNoaWxkcmVuID4gMCB0aGVuCl9wKDMsJ3Byb2plY3RSZWZlcmVuY2VzID0gKCcpCmZvciBfLCBub2RlIGluIGlwYWlycyh0ci5wcm9qZWN0cy5jaGlsZHJlbikgZG8KX3AoNCwneycpCl9wKDUsJ1Byb2R1Y3RHcm91cCA9ICVzIC8qIFByb2R1Y3RzICovOycsIG5vZGUucHJvZHVjdGdyb3VwaWQpCl9wKDUsJ1Byb2plY3RSZWYgPSAlcyAvKiAlcyAqLzsnLCBub2RlLmlkLCBwYXRoLmdldG5hbWUobm9kZS5wYXRoKSkKX3AoNCwnfSwnKQplbmQKX3AoMywnKTsnKQplbmQKX3AoMywncHJvamVjdFJvb3QgPSAiIjsnKQpfcCgzLCd0YXJnZXRzID0gKCcpCmZvciBfLCBub2RlIGluIGlwYWlycyh0ci5wcm9kdWN0cy5jaGlsZHJlbikgZG8KX3AoNCwnJXMgLyogJXMgKi8sJywgbm9kZS50YXJnZXRpZCwgbm9kZS5uYW1lKQplbmQKX3AoMywnKTsnKQpfcCgyLCd9OycpCl9wKCcvKiBFbmQgUEJYUHJvamVjdCBzZWN0aW9uICovJykKX3AoJycpCmVuZApmdW5jdGlvbiB4Y29kZS5QQlhSZWZlcmVuY2VQcm94eSh0cikKbG9jYWwgc2V0dGluZ3MgPSB7fQp0cmVlLnRyYXZlcnNlKHRyLnByb2plY3RzLCB7Cm9ubGVhZiA9IGZ1bmN0aW9uKG5vZGUpCnNldHRpbmdzW25vZGUuaWRdID0gZnVuY3Rpb24oKQpfcCgyLCclcyAvKiAlcyAqLyA9IHsnLCBub2RlLmlkLCBub2RlLm5hbWUpCl9wKDMsJ2lzYSA9IFBCWFJlZmVyZW5jZVByb3h5OycpCl9wKDMsJ2ZpbGVUeXBlID0gJXM7JywgeGNvZGUuZ2V0dGFyZ2V0dHlwZShub2RlKSkKX3AoMywncGF0aCA9ICVzOycsIHN0cmluZ2lmeVNldHRpbmcobm9kZS5uYW1lKSkKX3AoMywncmVtb3RlUmVmID0gJXMgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovOycsIG5vZGUucGFyZW50LnByb2R1Y3Rwcm94eWlkKQpfcCgzLCdzb3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOycpCl9wKDIsJ307JykKZW5kCmVuZAp9KQppZiBub3QgdGFibGUuaXNlbXB0eShzZXR0aW5ncykgdGhlbgpfcCgnLyogQmVnaW4gUEJYUmVmZXJlbmNlUHJveHkgc2VjdGlvbiAqLycpCnByaW50U2V0dGluZ3NUYWJsZSgyLCBzZXR0aW5ncykKX3AoJy8qIEVuZCBQQlhSZWZlcmVuY2VQcm94eSBzZWN0aW9uICovJykKX3AoJycpCmVuZAplbmQKZnVuY3Rpb24geGNvZGUuUEJYUmVzb3VyY2VzQnVpbGRQaGFzZSh0cikKX3AoJy8qIEJlZ2luIFBCWFJlc291cmNlc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLycpCmZvciBfLCB0YXJnZXQgaW4gaXBhaXJzKHRyLnByb2R1Y3RzLmNoaWxkcmVuKSBkbwpfcCgyLCclcyAvKiBSZXNvdXJjZXMgKi8gPSB7JywgdGFyZ2V0LnJlc3N0YWdlaWQpCl9wKDMsJ2lzYSA9IFBCWFJlc291cmNlc0J1aWxkUGhhc2U7JykKX3AoMywnYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsnKQpfcCgzLCdmaWxlcyA9ICgnKQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9ubm9kZSA9IGZ1bmN0aW9uKG5vZGUpCmlmIHhjb2RlLmdldGJ1aWxkY2F0ZWdvcnkobm9kZSkgPT0gIlJlc291cmNlcyIgdGhlbgpfcCg0LCclcyAvKiAlcyBpbiBSZXNvdXJjZXMgKi8sJywgbm9kZS5idWlsZGlkLCBub2RlLm5hbWUpCmVuZAplbmQKfSkKX3AoMywnKTsnKQpfcCgzLCdydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsnKQpfcCgyLCd9OycpCmVuZApfcCgnLyogRW5kIFBCWFJlc291cmNlc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLycpCl9wKCcnKQplbmQKZnVuY3Rpb24geGNvZGUuUEJYU2hlbGxTY3JpcHRCdWlsZFBoYXNlKHRyKQpsb2NhbCB3cmFwcGVyV3JpdHRlbiA9IGZhbHNlCmxvY2FsIGZ1bmN0aW9uIGRvYmxvY2soaWQsIG5hbWUsIHdoaWNoKQpsb2NhbCBwcmpjbWRzID0gdHIucHJvamVjdFt3aGljaF0KbG9jYWwgY29tbWFuZHMgPSB0YWJsZS5qb2luKHByamNtZHMsIHt9KQpmb3IgXywgY2ZnIGluIGlwYWlycyh0ci5jb25maWdzKSBkbwpsb2NhbCBjZmdjbWRzID0gY2ZnW3doaWNoXQppZiAjY2ZnY21kcyA+ICNwcmpjbWRzIHRoZW4KdGFibGUuaW5zZXJ0KGNvbW1hbmRzLCAnaWYgWyAiJHtDT05GSUdVUkFUSU9OfSIgPSAiJyAuLiBjZmcuYnVpbGRjZmcgLi4gJyIgXTsgdGhlbicpCmZvciBpID0gI3ByamNtZHMgKyAxLCAjY2ZnY21kcyBkbwp0YWJsZS5pbnNlcnQoY29tbWFuZHMsIGNmZ2NtZHNbaV0pCmVuZAp0YWJsZS5pbnNlcnQoY29tbWFuZHMsICdmaScpCmVuZAplbmQKaWYgI2NvbW1hbmRzID4gMCB0aGVuCmNvbW1hbmRzID0gb3MudHJhbnNsYXRlQ29tbWFuZHMoY29tbWFuZHMsIHAuTUFDT1NYKQppZiBub3Qgd3JhcHBlcldyaXR0ZW4gdGhlbgpfcCgnLyogQmVnaW4gUEJYU2hlbGxTY3JpcHRCdWlsZFBoYXNlIHNlY3Rpb24gKi8nKQp3cmFwcGVyV3JpdHRlbiA9IHRydWUKZW5kCl9wKDIsJyVzIC8qICVzICovID0geycsIGlkLCBuYW1lKQpfcCgzLCdpc2EgPSBQQlhTaGVsbFNjcmlwdEJ1aWxkUGhhc2U7JykKX3AoMywnYnVpbGRBY3Rpb25NYXNrID0gMjE0NzQ4MzY0NzsnKQpfcCgzLCdmaWxlcyA9ICgnKQpfcCgzLCcpOycpCl9wKDMsJ2lucHV0UGF0aHMgPSAoJyk7Cl9wKDMsJyk7Jyk7Cl9wKDMsJ25hbWUgPSAlczsnLCBuYW1lKTsKX3AoMywnb3V0cHV0UGF0aHMgPSAoJyk7Cl9wKDMsJyk7Jyk7Cl9wKDMsJ3J1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOycpOwpfcCgzLCdzaGVsbFBhdGggPSAvYmluL3NoOycpOwpfcCgzLCdzaGVsbFNjcmlwdCA9ICVzOycsIHN0cmluZ2lmeVNldHRpbmcodGFibGUuY29uY2F0KGNvbW1hbmRzLCAnXG4nKSkpCl9wKDIsJ307JykKZW5kCmVuZApkb2Jsb2NrKCI5NjA3QUUxMDEwQzg1N0U1MDBDRDEzNzYiLCAiUHJlYnVpbGQiLCAicHJlYnVpbGRjb21tYW5kcyIpCmRvYmxvY2soIjk2MDdBRTM1MTBDODVFN0UwMENEMTM3NiIsICJQcmVsaW5rIiwgInByZWxpbmtjb21tYW5kcyIpCmRvYmxvY2soIjk2MDdBRTM3MTBDODVFOEYwMENEMTM3NiIsICJQb3N0YnVpbGQiLCAicG9zdGJ1aWxkY29tbWFuZHMiKQppZiB3cmFwcGVyV3JpdHRlbiB0aGVuCl9wKCcvKiBFbmQgUEJYU2hlbGxTY3JpcHRCdWlsZFBoYXNlIHNlY3Rpb24gKi8nKQplbmQKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWFNvdXJjZXNCdWlsZFBoYXNlKHRyKQpfcCgnLyogQmVnaW4gUEJYU291cmNlc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLycpCmZvciBfLCB0YXJnZXQgaW4gaXBhaXJzKHRyLnByb2R1Y3RzLmNoaWxkcmVuKSBkbwpfcCgyLCclcyAvKiBTb3VyY2VzICovID0geycsIHRhcmdldC5zb3VyY2VzaWQpCl9wKDMsJ2lzYSA9IFBCWFNvdXJjZXNCdWlsZFBoYXNlOycpCl9wKDMsJ2J1aWxkQWN0aW9uTWFzayA9IDIxNDc0ODM2NDc7JykKX3AoMywnZmlsZXMgPSAoJykKdHJlZS50cmF2ZXJzZSh0ciwgewpvbmxlYWYgPSBmdW5jdGlvbihub2RlKQppZiB4Y29kZS5nZXRidWlsZGNhdGVnb3J5KG5vZGUpID09ICJTb3VyY2VzIiB0aGVuCl9wKDQsJyVzIC8qICVzIGluIFNvdXJjZXMgKi8sJywgbm9kZS5idWlsZGlkLCBub2RlLm5hbWUpCmVuZAplbmQKfSkKX3AoMywnKTsnKQpfcCgzLCdydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsnKQpfcCgyLCd9OycpCmVuZApfcCgnLyogRW5kIFBCWFNvdXJjZXNCdWlsZFBoYXNlIHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmZ1bmN0aW9uIHhjb2RlLlBCWFZhcmlhbnRHcm91cCh0cikKbG9jYWwgc2V0dGluZ3MgPSB7fQp0cmVlLnRyYXZlcnNlKHRyLCB7Cm9uYnJhbmNoID0gZnVuY3Rpb24obm9kZSkKc2V0dGluZ3Nbbm9kZS5pZF0gPSBmdW5jdGlvbigpCmlmIG5vZGUua2luZCA9PSAidmdyb3VwIiB0aGVuCl9wKDIsJyVzIC8qICVzICovID0geycsIG5vZGUuaWQsIG5vZGUubmFtZSkKX3AoMywnaXNhID0gUEJYVmFyaWFudEdyb3VwOycpCl9wKDMsJ2NoaWxkcmVuID0gKCcpCmZvciBfLCBsYW5nIGluIGlwYWlycyhub2RlLmNoaWxkcmVuKSBkbwpfcCg0LCclcyAvKiAlcyAqLywnLCBsYW5nLmlkLCBsYW5nLm5hbWUpCmVuZApfcCgzLCcpOycpCl9wKDMsJ25hbWUgPSAlczsnLCBub2RlLm5hbWUpCl9wKDMsJ3NvdXJjZVRyZWUgPSAiPGdyb3VwPiI7JykKX3AoMiwnfTsnKQplbmQKZW5kCmVuZAp9KQppZiBub3QgdGFibGUuaXNlbXB0eShzZXR0aW5ncykgdGhlbgpfcCgnLyogQmVnaW4gUEJYVmFyaWFudEdyb3VwIHNlY3Rpb24gKi8nKQpwcmludFNldHRpbmdzVGFibGUoMiwgc2V0dGluZ3MpCl9wKCcvKiBFbmQgUEJYVmFyaWFudEdyb3VwIHNlY3Rpb24gKi8nKQpfcCgnJykKZW5kCmVuZApmdW5jdGlvbiB4Y29kZS5QQlhUYXJnZXREZXBlbmRlbmN5KHRyKQpsb2NhbCBzZXR0aW5ncyA9IHt9CnRyZWUudHJhdmVyc2UodHIucHJvamVjdHMsIHsKb25sZWFmID0gZnVuY3Rpb24obm9kZSkKc2V0dGluZ3Nbbm9kZS5wYXJlbnQudGFyZ2V0ZGVwZW5kaWRdID0gZnVuY3Rpb24oKQpfcCgyLCclcyAvKiBQQlhUYXJnZXREZXBlbmRlbmN5ICovID0geycsIG5vZGUucGFyZW50LnRhcmdldGRlcGVuZGlkKQpfcCgzLCdpc2EgPSBQQlhUYXJnZXREZXBlbmRlbmN5OycpCl9wKDMsJ25hbWUgPSAlczsnLCBzdHJpbmdpZnlTZXR0aW5nKG5vZGUubmFtZSkpCl9wKDMsJ3RhcmdldFByb3h5ID0gJXMgLyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovOycsIG5vZGUucGFyZW50LnRhcmdldHByb3h5aWQpCl9wKDIsJ307JykKZW5kCmVuZAp9KQppZiBub3QgdGFibGUuaXNlbXB0eShzZXR0aW5ncykgdGhlbgpfcCgnLyogQmVnaW4gUEJYVGFyZ2V0RGVwZW5kZW5jeSBzZWN0aW9uICovJykKcHJpbnRTZXR0aW5nc1RhYmxlKDIsIHNldHRpbmdzKQpfcCgnLyogRW5kIFBCWFRhcmdldERlcGVuZGVuY3kgc2VjdGlvbiAqLycpCl9wKCcnKQplbmQKZW5kCmZ1bmN0aW9uIHhjb2RlLlhDQnVpbGRDb25maWd1cmF0aW9uX1RhcmdldCh0ciwgdGFyZ2V0LCBjZmcpCmxvY2FsIHNldHRpbmdzID0ge30Kc2V0dGluZ3NbJ0FMV0FZU19TRUFSQ0hfVVNFUl9QQVRIUyddID0gJ05PJwppZiBjZmcuc3ltYm9scyB+PSBwLk9GRiB0aGVuCnNldHRpbmdzWydERUJVR19JTkZPUk1BVElPTl9GT1JNQVQnXSA9ICdkd2FyZi13aXRoLWRzeW0nCmVuZAppZiBjZmcua2luZCB+PSAiU3RhdGljTGliIiBhbmQgY2ZnLmJ1aWxkdGFyZ2V0LnByZWZpeCB+PSAnJyB0aGVuCnNldHRpbmdzWydFWEVDVVRBQkxFX1BSRUZJWCddID0gY2ZnLmJ1aWxkdGFyZ2V0LnByZWZpeAplbmQKbG9jYWwgb3V0ZGlyID0gcGF0aC5nZXRyZWxhdGl2ZSh0ci5wcm9qZWN0LmxvY2F0aW9uLCBwYXRoLmdldGRpcmVjdG9yeShjZmcuYnVpbGR0YXJnZXQucmVscGF0aCkpCmlmIG91dGRpciB+PSAiLiIgdGhlbgpzZXR0aW5nc1snQ09ORklHVVJBVElPTl9CVUlMRF9ESVInXSA9IG91dGRpcgplbmQKc2V0dGluZ3NbJ0dDQ19EWU5BTUlDX05PX1BJQyddID0gJ05PJwppZiB0ci5pbmZvcGxpc3QgdGhlbgpzZXR0aW5nc1snSU5GT1BMSVNUX0ZJTEUnXSA9IGNvbmZpZy5maW5kZmlsZShjZmcsIHBhdGguZ2V0ZXh0ZW5zaW9uKHRyLmluZm9wbGlzdC5uYW1lKSkKZW5kCmluc3RhbGxwYXRocyA9IHsKQ29uc29sZUFwcCA9ICcvdXNyL2xvY2FsL2JpbicsCldpbmRvd2VkQXBwID0gJyIkKEhPTUUpL0FwcGxpY2F0aW9ucyInLApTaGFyZWRMaWIgPSAnL3Vzci9sb2NhbC9saWInLApTdGF0aWNMaWIgPSAnL3Vzci9sb2NhbC9saWInLAp9CnNldHRpbmdzWydJTlNUQUxMX1BBVEgnXSA9IGluc3RhbGxwYXRoc1tjZmcua2luZF0KbG9jYWwgZmlsZU5hbWVMaXN0ID0ge30KbG9jYWwgZmlsZV90cmVlID0gcHJvamVjdC5nZXRzb3VyY2V0cmVlKHRyLnByb2plY3QpCnRyZWUudHJhdmVyc2UodHIsIHsKb25ub2RlID0gZnVuY3Rpb24obm9kZSkKaWYgbm9kZS5idWlsZGlkIGFuZCBub3Qgbm9kZS5pc1Jlc291cmNlIGFuZCBub2RlLmFic3BhdGggdGhlbgpsb2NhbCBmaWxlY2ZnID0gZmlsZWNvbmZpZy5nZXRjb25maWcobm9kZSwgY2ZnKQppZiBmaWxlY2ZnIGFuZCBmaWxlY2ZnLmZsYWdzLkV4Y2x1ZGVGcm9tQnVpbGQgdGhlbgp0YWJsZS5pbnNlcnQoZmlsZU5hbWVMaXN0LCBlc2NhcGVBcmcobm9kZS5uYW1lKSkKZW5kCmVuZAplbmQKfSkKaWYgbm90IHRhYmxlLmlzZW1wdHkoZmlsZU5hbWVMaXN0KSB0aGVuCnNldHRpbmdzWydFWENMVURFRF9TT1VSQ0VfRklMRV9OQU1FUyddID0gZmlsZU5hbWVMaXN0CmVuZApzZXR0aW5nc1snUFJPRFVDVF9OQU1FJ10gPSBjZmcuYnVpbGR0YXJnZXQuYmFzZW5hbWUKb3ZlcnJpZGVTZXR0aW5ncyhzZXR0aW5ncywgY2ZnLnhjb2RlYnVpbGRzZXR0aW5ncykKX3AoMiwnJXMgLyogJXMgKi8gPSB7JywgY2ZnLnhjb2RlLnRhcmdldGlkLCBjZmcuYnVpbGRjZmcpCl9wKDMsJ2lzYSA9IFhDQnVpbGRDb25maWd1cmF0aW9uOycpCl9wKDMsJ2J1aWxkU2V0dGluZ3MgPSB7JykKcHJpbnRTZXR0aW5nc1RhYmxlKDQsIHNldHRpbmdzKQpfcCgzLCd9OycpCnByaW50U2V0dGluZygzLCAnbmFtZScsIGNmZy5idWlsZGNmZyk7Cl9wKDIsJ307JykKZW5kCmZ1bmN0aW9uIHhjb2RlLlhDQnVpbGRDb25maWd1cmF0aW9uX0NMYW5ndWFnZVN0YW5kYXJkKHNldHRpbmdzLCBjZmcpCmlmIGNmZy5jZGlhbGVjdCBhbmQgY2ZnLmNkaWFsZWN0IH49ICJEZWZhdWx0IiB0aGVuCnNldHRpbmdzWydHQ0NfQ19MQU5HVUFHRV9TVEFOREFSRCddID0gY2ZnLmNkaWFsZWN0CmVsc2UKc2V0dGluZ3NbJ0dDQ19DX0xBTkdVQUdFX1NUQU5EQVJEJ10gPSAnZ251OTknCmVuZAplbmQKZnVuY3Rpb24geGNvZGUuWENCdWlsZENvbmZpZ3VyYXRpb25fQ3BwTGFuZ3VhZ2VTdGFuZGFyZChzZXR0aW5ncywgY2ZnKQppZiBjZmcuY3BwZGlhbGVjdCBhbmQgY2ZnLmNwcGRpYWxlY3Qgfj0gIkRlZmF1bHQiIHRoZW4Kc2V0dGluZ3NbJ0NMQU5HX0NYWF9MQU5HVUFHRV9TVEFOREFSRCddID0gY2ZnLmNwcGRpYWxlY3QKZW5kCmVuZApmdW5jdGlvbiB4Y29kZS5YQ0J1aWxkQ29uZmlndXJhdGlvbl9Qcm9qZWN0KHRyLCBjZmcpCmxvY2FsIHNldHRpbmdzID0ge30KbG9jYWwgYXJjaHMgPSB7Ck5hdGl2ZSA9ICIkKE5BVElWRV9BUkNIX0FDVFVBTCkiLAp4ODYgICAgPSAiaTM4NiIsCng4Nl82NCA9ICJ4ODZfNjQiLApVbml2ZXJzYWwzMiA9ICIkKEFSQ0hTX1NUQU5EQVJEXzMyX0JJVCkiLApVbml2ZXJzYWw2NCA9ICIkKEFSQ0hTX1NUQU5EQVJEXzY0X0JJVCkiLApVbml2ZXJzYWwgPSAiJChBUkNIU19TVEFOREFSRF8zMl82NF9CSVQpIiwKfQpzZXR0aW5nc1snQVJDSFMnXSA9IGFyY2hzW2NmZy5wbGF0Zm9ybSBvciAiTmF0aXZlIl0KbG9jYWwgdGFyZ2V0ZGlyID0gcGF0aC5nZXRkaXJlY3RvcnkoY2ZnLmJ1aWxkdGFyZ2V0LnJlbHBhdGgpCmlmIHRhcmdldGRpciB+PSAiLiIgdGhlbgpzZXR0aW5nc1snQ09ORklHVVJBVElPTl9CVUlMRF9ESVInXSA9ICckKFNZTVJPT1QpJwplbmQKc2V0dGluZ3NbJ0NPTkZJR1VSQVRJT05fVEVNUF9ESVInXSA9ICckKE9CSlJPT1QpJwppZiBjb25maWcuaXNEZWJ1Z0J1aWxkKGNmZykgdGhlbgpzZXR0aW5nc1snQ09QWV9QSEFTRV9TVFJJUCddID0gJ05PJwplbmQKeGNvZGUuWENCdWlsZENvbmZpZ3VyYXRpb25fQ0xhbmd1YWdlU3RhbmRhcmQoc2V0dGluZ3MsIGNmZykKeGNvZGUuWENCdWlsZENvbmZpZ3VyYXRpb25fQ3BwTGFuZ3VhZ2VTdGFuZGFyZChzZXR0aW5ncywgY2ZnKQppZiBjZmcuZXhjZXB0aW9uaGFuZGxpbmcgPT0gcC5PRkYgdGhlbgpzZXR0aW5nc1snR0NDX0VOQUJMRV9DUFBfRVhDRVBUSU9OUyddID0gJ05PJwplbmQKaWYgY2ZnLnJ0dGkgPT0gcC5PRkYgdGhlbgpzZXR0aW5nc1snR0NDX0VOQUJMRV9DUFBfUlRUSSddID0gJ05PJwplbmQKaWYgY2ZnLnN5bWJvbHMgPT0gcC5PTiBhbmQgY2ZnLmVkaXRhbmRjb250aW51ZSB+PSAiT2ZmIiB0aGVuCnNldHRpbmdzWydHQ0NfRU5BQkxFX0ZJWF9BTkRfQ09OVElOVUUnXSA9ICdZRVMnCmVuZAppZiBjZmcuZXhjZXB0aW9uaGFuZGxpbmcgPT0gcC5PRkYgdGhlbgpzZXR0aW5nc1snR0NDX0VOQUJMRV9PQkpDX0VYQ0VQVElPTlMnXSA9ICdOTycKZW5kCmxvY2FsIG9wdGltaXplTWFwID0geyBPbiA9IDMsIFNpemUgPSAncycsIFNwZWVkID0gMywgRnVsbCA9ICdmYXN0JywgRGVidWcgPSAxIH0Kc2V0dGluZ3NbJ0dDQ19PUFRJTUlaQVRJT05fTEVWRUwnXSA9IG9wdGltaXplTWFwW2NmZy5vcHRpbWl6ZV0gb3IgMAppZiBjZmcucGNoaGVhZGVyIGFuZCBub3QgY2ZnLmZsYWdzLk5vUENIIHRoZW4Kc2V0dGluZ3NbJ0dDQ19QUkVDT01QSUxFX1BSRUZJWF9IRUFERVInXSA9ICdZRVMnCnNldHRpbmdzWydHQ0NfUFJFRklYX0hFQURFUiddID0gY2ZnLnBjaGhlYWRlcgplbmQKbG9jYWwgZXNjYXBlZERlZmluZXMgPSB7IH0KZm9yIGksdiBpbiBpcGFpcnMoY2ZnLmRlZmluZXMpIGRvCmVzY2FwZWREZWZpbmVzW2ldID0gZXNjYXBlQXJnKHYpCmVuZApzZXR0aW5nc1snR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyddID0gZXNjYXBlZERlZmluZXMKc2V0dGluZ3NbIkdDQ19TWU1CT0xTX1BSSVZBVEVfRVhURVJOIl0gPSAnTk8nCmlmIGNmZy5mbGFncy5GYXRhbFdhcm5pbmdzIHRoZW4Kc2V0dGluZ3NbJ0dDQ19UUkVBVF9XQVJOSU5HU19BU19FUlJPUlMnXSA9ICdZRVMnCmVuZApzZXR0aW5nc1snR0NDX1dBUk5fQUJPVVRfUkVUVVJOX1RZUEUnXSA9ICdZRVMnCnNldHRpbmdzWydHQ0NfV0FSTl9VTlVTRURfVkFSSUFCTEUnXSA9ICdZRVMnCmxvY2FsIGluY2x1ZGVkaXJzID0gcHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgY2ZnLmluY2x1ZGVkaXJzKQpmb3IgaSx2IGluIGlwYWlycyhpbmNsdWRlZGlycykgZG8KY2ZnLmluY2x1ZGVkaXJzW2ldID0gcC5xdW90ZWQodikKZW5kCnNldHRpbmdzWydVU0VSX0hFQURFUl9TRUFSQ0hfUEFUSFMnXSA9IGNmZy5pbmNsdWRlZGlycwpsb2NhbCBzeXNpbmNsdWRlZGlycyA9IHByb2plY3QuZ2V0cmVsYXRpdmUoY2ZnLnByb2plY3QsIGNmZy5zeXNpbmNsdWRlZGlycykKZm9yIGksdiBpbiBpcGFpcnMoc3lzaW5jbHVkZWRpcnMpIGRvCmNmZy5zeXNpbmNsdWRlZGlyc1tpXSA9IHAucXVvdGVkKHYpCmVuZAppZiBub3QgdGFibGUuaXNlbXB0eShjZmcuc3lzaW5jbHVkZWRpcnMpIHRoZW4KdGFibGUuaW5zZXJ0KGNmZy5zeXNpbmNsdWRlZGlycywgIiQoaW5oZXJpdGVkKSIpCmVuZApzZXR0aW5nc1snSEVBREVSX1NFQVJDSF9QQVRIUyddID0gY2ZnLnN5c2luY2x1ZGVkaXJzCmZvciBpLHYgaW4gaXBhaXJzKGNmZy5saWJkaXJzKSBkbwpjZmcubGliZGlyc1tpXSA9IHAucHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgY2ZnLmxpYmRpcnNbaV0pCmVuZApzZXR0aW5nc1snTElCUkFSWV9TRUFSQ0hfUEFUSFMnXSA9IGNmZy5saWJkaXJzCmZvciBpLHYgaW4gaXBhaXJzKGNmZy5mcmFtZXdvcmtkaXJzKSBkbwpjZmcuZnJhbWV3b3JrZGlyc1tpXSA9IHAucHJvamVjdC5nZXRyZWxhdGl2ZShjZmcucHJvamVjdCwgY2ZnLmZyYW1ld29ya2RpcnNbaV0pCmVuZApzZXR0aW5nc1snRlJBTUVXT1JLX1NFQVJDSF9QQVRIUyddID0gY2ZnLmZyYW1ld29ya2RpcnMKbG9jYWwgb2JqRGlyID0gcGF0aC5nZXRyZWxhdGl2ZSh0ci5wcm9qZWN0LmxvY2F0aW9uLCBjZmcub2JqZGlyKQpzZXR0aW5nc1snT0JKUk9PVCddID0gb2JqRGlyCnNldHRpbmdzWydPTkxZX0FDVElWRV9BUkNIJ10gPSBpaWYocC5jb25maWcuaXNEZWJ1Z0J1aWxkKGNmZyksICdZRVMnLCAnTk8nKQpsb2NhbCBjaGVja3MgPSB7ClsiLWZmYXN0LW1hdGgiXSAgICAgICAgICA9IGNmZy5mbG9hdGluZ3BvaW50ID09ICJGYXN0IiwKWyItZmZsb2F0LXN0b3JlIl0gICAgICAgID0gY2ZnLmZsb2F0aW5ncG9pbnQgPT0gIlN0cmljdCIsClsiLWZvbWl0LWZyYW1lLXBvaW50ZXIiXSA9IGNmZy5mbGFncy5Ob0ZyYW1lUG9pbnRlciwKfQpsb2NhbCBmbGFncyA9IHsgfQpmb3IgZmxhZywgY2hlY2sgaW4gcGFpcnMoY2hlY2tzKSBkbwppZiBjaGVjayB0aGVuCnRhYmxlLmluc2VydChmbGFncywgZmxhZykKZW5kCmVuZApzZXR0aW5nc1snT1RIRVJfQ0ZMQUdTJ10gPSB0YWJsZS5qb2luKGZsYWdzLCBjZmcuYnVpbGRvcHRpb25zKQpmbGFncyA9IHsgfQpmb3IgXywgbGliIGluIGlwYWlycyhjb25maWcuZ2V0bGlua3MoY2ZnLCAic3lzdGVtIikpIGRvCmlmIG5vdCB4Y29kZS5pc2ZyYW1ld29yayhsaWIpIHRoZW4KdGFibGUuaW5zZXJ0KGZsYWdzLCAiLWwiIC4uIGxpYikKZW5kCmVuZApmb3IgXywgbGliIGluIGlwYWlycyhjb25maWcuZ2V0bGlua3MoY2ZnLCAiZGVwZW5kZW5jaWVzIiwgIm9iamVjdCIpKSBkbwppZiAobGliLmV4dGVybmFsKSB0aGVuCmlmIG5vdCB4Y29kZS5pc2ZyYW1ld29yayhsaWIubGlua3RhcmdldC5iYXNlbmFtZSkgdGhlbgp0YWJsZS5pbnNlcnQoZmxhZ3MsICItbCIgLi4gZXNjYXBlQXJnKGxpYi5saW5rdGFyZ2V0LmJhc2VuYW1lKSkKZW5kCmVuZAplbmQKc2V0dGluZ3NbJ09USEVSX0xERkxBR1MnXSA9IHRhYmxlLmpvaW4oZmxhZ3MsIGNmZy5saW5rb3B0aW9ucykKaWYgY2ZnLmZsYWdzLlN0YXRpY1J1bnRpbWUgdGhlbgpzZXR0aW5nc1snU1RBTkRBUkRfQ19QTFVTX1BMVVNfTElCUkFSWV9UWVBFJ10gPSAnc3RhdGljJwplbmQKaWYgdGFyZ2V0ZGlyIH49ICIuIiB0aGVuCnNldHRpbmdzWydTWU1ST09UJ10gPSBwYXRoLmdldHJlbGF0aXZlKHRyLnByb2plY3QubG9jYXRpb24sIHRhcmdldGRpcikKZW5kCmlmIGNmZy53YXJuaW5ncyA9PSAiRXh0cmEiIHRoZW4Kc2V0dGluZ3NbJ1dBUk5JTkdfQ0ZMQUdTJ10gPSAnLVdhbGwgLVdleHRyYScKZW5kCm92ZXJyaWRlU2V0dGluZ3Moc2V0dGluZ3MsIGNmZy54Y29kZWJ1aWxkc2V0dGluZ3MpCl9wKDIsJyVzIC8qICVzICovID0geycsIGNmZy54Y29kZS5wcm9qZWN0aWQsIGNmZy5idWlsZGNmZykKX3AoMywnaXNhID0gWENCdWlsZENvbmZpZ3VyYXRpb247JykKX3AoMywnYnVpbGRTZXR0aW5ncyA9IHsnKQpwcmludFNldHRpbmdzVGFibGUoNCwgc2V0dGluZ3MpCl9wKDMsJ307JykKcHJpbnRTZXR0aW5nKDMsICduYW1lJywgY2ZnLmJ1aWxkY2ZnKTsKX3AoMiwnfTsnKQplbmQKZnVuY3Rpb24geGNvZGUuWENCdWlsZENvbmZpZ3VyYXRpb24odHIpCmxvY2FsIHNldHRpbmdzID0ge30KZm9yIF8sIHRhcmdldCBpbiBpcGFpcnModHIucHJvZHVjdHMuY2hpbGRyZW4pIGRvCmZvciBfLCBjZmcgaW4gaXBhaXJzKHRyLmNvbmZpZ3MpIGRvCnNldHRpbmdzW2NmZy54Y29kZS50YXJnZXRpZF0gPSBmdW5jdGlvbigpCnhjb2RlLlhDQnVpbGRDb25maWd1cmF0aW9uX1RhcmdldCh0ciwgdGFyZ2V0LCBjZmcpCmVuZAplbmQKZW5kCmZvciBfLCBjZmcgaW4gaXBhaXJzKHRyLmNvbmZpZ3MpIGRvCnNldHRpbmdzW2NmZy54Y29kZS5wcm9qZWN0aWRdID0gZnVuY3Rpb24oKQp4Y29kZS5YQ0J1aWxkQ29uZmlndXJhdGlvbl9Qcm9qZWN0KHRyLCBjZmcpCmVuZAplbmQKaWYgbm90IHRhYmxlLmlzZW1wdHkoc2V0dGluZ3MpIHRoZW4KX3AoJy8qIEJlZ2luIFhDQnVpbGRDb25maWd1cmF0aW9uIHNlY3Rpb24gKi8nKQpwcmludFNldHRpbmdzVGFibGUoMCwgc2V0dGluZ3MpCl9wKCcvKiBFbmQgWENCdWlsZENvbmZpZ3VyYXRpb24gc2VjdGlvbiAqLycpCl9wKCcnKQplbmQKZW5kCmZ1bmN0aW9uIHhjb2RlLlhDQnVpbGRDb25maWd1cmF0aW9uTGlzdCh0cikKbG9jYWwgd2tzID0gdHIucHJvamVjdC53b3Jrc3BhY2UKbG9jYWwgZGVmYXVsdENmZ05hbWUgPSBzdHJpbmdpZnlTZXR0aW5nKHRyLmNvbmZpZ3NbMV0uYnVpbGRjZmcpCmxvY2FsIHNldHRpbmdzID0ge30KZm9yIF8sIHRhcmdldCBpbiBpcGFpcnModHIucHJvZHVjdHMuY2hpbGRyZW4pIGRvCnNldHRpbmdzW3RhcmdldC5jZmdzZWN0aW9uXSA9IGZ1bmN0aW9uKCkKX3AoMiwnJXMgLyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhOYXRpdmVUYXJnZXQgIiVzIiAqLyA9IHsnLCB0YXJnZXQuY2Znc2VjdGlvbiwgdGFyZ2V0Lm5hbWUpCl9wKDMsJ2lzYSA9IFhDQ29uZmlndXJhdGlvbkxpc3Q7JykKX3AoMywnYnVpbGRDb25maWd1cmF0aW9ucyA9ICgnKQpmb3IgXywgY2ZnIGluIGlwYWlycyh0ci5jb25maWdzKSBkbwpfcCg0LCclcyAvKiAlcyAqLywnLCBjZmcueGNvZGUudGFyZ2V0aWQsIGNmZy5idWlsZGNmZykKZW5kCl9wKDMsJyk7JykKX3AoMywnZGVmYXVsdENvbmZpZ3VyYXRpb25Jc1Zpc2libGUgPSAwOycpCl9wKDMsJ2RlZmF1bHRDb25maWd1cmF0aW9uTmFtZSA9ICVzOycsIGRlZmF1bHRDZmdOYW1lKQpfcCgyLCd9OycpCmVuZAplbmQKc2V0dGluZ3NbJzFERUI5Mjg5MDg3MzNERDgwMDEwRTlDRCddID0gZnVuY3Rpb24oKQpfcCgyLCcxREVCOTI4OTA4NzMzREQ4MDAxMEU5Q0QgLyogQnVpbGQgY29uZmlndXJhdGlvbiBsaXN0IGZvciBQQlhQcm9qZWN0ICIlcyIgKi8gPSB7JywgdHIubmFtZSkKX3AoMywnaXNhID0gWENDb25maWd1cmF0aW9uTGlzdDsnKQpfcCgzLCdidWlsZENvbmZpZ3VyYXRpb25zID0gKCcpCmZvciBfLCBjZmcgaW4gaXBhaXJzKHRyLmNvbmZpZ3MpIGRvCl9wKDQsJyVzIC8qICVzICovLCcsIGNmZy54Y29kZS5wcm9qZWN0aWQsIGNmZy5idWlsZGNmZykKZW5kCl9wKDMsJyk7JykKX3AoMywnZGVmYXVsdENvbmZpZ3VyYXRpb25Jc1Zpc2libGUgPSAwOycpCl9wKDMsJ2RlZmF1bHRDb25maWd1cmF0aW9uTmFtZSA9ICVzOycsIGRlZmF1bHRDZmdOYW1lKQpfcCgyLCd9OycpCmVuZApfcCgnLyogQmVnaW4gWENDb25maWd1cmF0aW9uTGlzdCBzZWN0aW9uICovJykKcHJpbnRTZXR0aW5nc1RhYmxlKDIsIHNldHRpbmdzKQpfcCgnLyogRW5kIFhDQ29uZmlndXJhdGlvbkxpc3Qgc2VjdGlvbiAqLycpCmVuZAoAAGxvY2FsIHAgPSBwcmVtYWtlCmxvY2FsIG0gPSBwLm1vZHVsZXMueGNvZGUKbG9jYWwgeGNvZGUgPSBwLm1vZHVsZXMueGNvZGUKbG9jYWwgcHJvamVjdCA9IHAucHJvamVjdApsb2NhbCBjb25maWcgPSBwLmNvbmZpZwpsb2NhbCBmaWxlY29uZmlnID0gcC5maWxlY29uZmlnCmxvY2FsIHRyZWUgPSBwLnRyZWUKZnVuY3Rpb24geGNvZGUuYnVpbGRwcmp0cmVlKHByaikKbG9jYWwgdHIgPSBwcm9qZWN0LmdldHNvdXJjZXRyZWUocHJqLCBuaWwgLCBmYWxzZSkKdHIucHJvamVjdCA9IHByagp0ci5jb25maWdzID0ge30KZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpjZmcueGNvZGUgPSB7fQpjZmcueGNvZGUudGFyZ2V0aWQgPSB4Y29kZS5uZXdpZChwcmoueGNvZGUucHJvamVjdG5vZGUubmFtZSwgY2ZnLmJ1aWxkY2ZnLCAidGFyZ2V0IikKY2ZnLnhjb2RlLnByb2plY3RpZCA9IHhjb2RlLm5ld2lkKHRyLm5hbWUsIGNmZy5idWlsZGNmZykKdGFibGUuaW5zZXJ0KHRyLmNvbmZpZ3MsIGNmZykKZW5kCnRyZWUudHJhdmVyc2UodHIsIHsKb25icmFuY2ggPSBmdW5jdGlvbihub2RlKQppZiBwYXRoLmdldGV4dGVuc2lvbihub2RlLm5hbWUpID09ICIubHByb2oiIHRoZW4KbG9jYWwgbGFuZyA9IHBhdGguZ2V0YmFzZW5hbWUobm9kZS5uYW1lKSAgLS0gIkVuZ2xpc2giLCAiRnJlbmNoIiwgZXRjLgpmb3IgXywgZmlsZW5vZGUgaW4gaXBhaXJzKG5vZGUuY2hpbGRyZW4pIGRvCmxvY2FsIGdycG5vZGUgPSBub2RlLnBhcmVudC5jaGlsZHJlbltmaWxlbm9kZS5uYW1lXQppZiBub3QgZ3Jwbm9kZSB0aGVuCmdycG5vZGUgPSB0cmVlLmluc2VydChub2RlLnBhcmVudCwgdHJlZS5uZXcoZmlsZW5vZGUubmFtZSkpCmdycG5vZGUua2luZCA9ICJ2Z3JvdXAiCmVuZApmaWxlbm9kZS5uYW1lID0gcGF0aC5nZXRiYXNlbmFtZShsYW5nKQp0cmVlLmluc2VydChncnBub2RlLCBmaWxlbm9kZSkKZW5kCnRyZWUucmVtb3ZlKG5vZGUpCmVuZAplbmQKfSkKdHIuZnJhbWV3b3JrcyA9IHRyZWUubmV3KCJGcmFtZXdvcmtzIikKZm9yIGNmZyBpbiBwcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwpmb3IgXywgbGluayBpbiBpcGFpcnMoY29uZmlnLmdldGxpbmtzKGNmZywgInN5c3RlbSIsICJmdWxscGF0aCIpKSBkbwpsb2NhbCBuYW1lID0gcGF0aC5nZXRuYW1lKGxpbmspCmlmIHhjb2RlLmlzZnJhbWV3b3JrKG5hbWUpIGFuZCBub3QgdHIuZnJhbWV3b3Jrcy5jaGlsZHJlbltuYW1lXSB0aGVuCm5vZGUgPSB0cmVlLmluc2VydCh0ci5mcmFtZXdvcmtzLCB0cmVlLm5ldyhuYW1lKSkKbm9kZS5wYXRoID0gbGluawplbmQKZW5kCmVuZAppZiAjdHIuZnJhbWV3b3Jrcy5jaGlsZHJlbiA+IDAgdGhlbgp0cmVlLmluc2VydCh0ciwgdHIuZnJhbWV3b3JrcykKZW5kCnRyLnByb2R1Y3RzID0gdHJlZS5pbnNlcnQodHIsIHRyZWUubmV3KCJQcm9kdWN0cyIpKQp0ci5wcm9qZWN0cyA9IHRyZWUubmV3KCJQcm9qZWN0cyIpCmZvciBfLCBkZXAgaW4gaXBhaXJzKHByb2plY3QuZ2V0ZGVwZW5kZW5jaWVzKHByaiwgImxpbmtPbmx5IikpIGRvCnhjb2RlLmFkZERlcGVuZGVuY3kocHJqLCB0ciwgZGVwLCB0cnVlKQplbmQKZm9yIF8sIGRlcCBpbiBpcGFpcnMocHJvamVjdC5nZXRkZXBlbmRlbmNpZXMocHJqLCAiZGVwZW5kT25seSIpKSBkbwp4Y29kZS5hZGREZXBlbmRlbmN5KHByaiwgdHIsIGRlcCwgZmFsc2UpCmVuZAppZiAjdHIucHJvamVjdHMuY2hpbGRyZW4gPiAwIHRoZW4KdHJlZS5pbnNlcnQodHIsIHRyLnByb2plY3RzKQplbmQKdHJlZS50cmF2ZXJzZSh0ciwgewpvbm5vZGUgPSBmdW5jdGlvbihub2RlKQpub2RlLmlkID0geGNvZGUubmV3aWQobm9kZS5uYW1lLCBuaWwsIG5vZGUucGF0aCkKbm9kZS5pc1Jlc291cmNlID0geGNvZGUuaXNJdGVtUmVzb3VyY2UocHJqLCBub2RlKQppZiB4Y29kZS5nZXRidWlsZGNhdGVnb3J5KG5vZGUpIGFuZCBub3Qgbm9kZS5leGNsdWRlZnJvbWJ1aWxkIHRoZW4Kbm9kZS5idWlsZGlkID0geGNvZGUubmV3aWQobm9kZS5uYW1lLCAiYnVpbGQiLCBub2RlLnBhdGgpCmVuZAppZiBzdHJpbmcuZW5kc3dpdGgobm9kZS5uYW1lLCAiSW5mby5wbGlzdCIpIHRoZW4KdHIuaW5mb3BsaXN0ID0gbm9kZQplbmQKZW5kCn0sIHRydWUpCm5vZGUgPSB0cmVlLmluc2VydCh0ci5wcm9kdWN0cywgcHJqLnhjb2RlLnByb2plY3Rub2RlKQpub2RlLmtpbmQgPSAicHJvZHVjdCIKbm9kZS5wYXRoID0gbm9kZS5jZmcuYnVpbGR0YXJnZXQuZnVsbHBhdGgKbm9kZS5jZmdzZWN0aW9uID0geGNvZGUubmV3aWQobm9kZS5uYW1lLCAiY2ZnIikKbm9kZS5yZXNzdGFnZWlkID0geGNvZGUubmV3aWQobm9kZS5uYW1lLCAicmV6IikKbm9kZS5zb3VyY2VzaWQgID0geGNvZGUubmV3aWQobm9kZS5uYW1lLCAic3JjIikKbm9kZS5meHN0YWdlaWQgID0geGNvZGUubmV3aWQobm9kZS5uYW1lLCAiZnhzIikKcmV0dXJuIHRyCmVuZApmdW5jdGlvbiB4Y29kZS5hZGREZXBlbmRlbmN5KHByaiwgdHIsIGRlcCwgYnVpbGQpCmxvY2FsIHhjcGF0aCA9IHhjb2RlLmdldHhjb2RlcHJvam5hbWUoZGVwKQpsb2NhbCB4Y25vZGUgPSB0cmVlLmluc2VydCh0ci5wcm9qZWN0cywgdHJlZS5uZXcocGF0aC5nZXRuYW1lKHhjcGF0aCkpKQp4Y25vZGUucGF0aCA9IHhjcGF0aAp4Y25vZGUucHJvamVjdCA9IGRlcAp4Y25vZGUucHJvZHVjdGdyb3VwaWQgPSB4Y29kZS5uZXdpZCh4Y25vZGUubmFtZSwgInByb2RncnAiKQp4Y25vZGUucHJvZHVjdHByb3h5aWQgPSB4Y29kZS5uZXdpZCh4Y25vZGUubmFtZSwgInByb2Rwcm94IikKeGNub2RlLnRhcmdldHByb3h5aWQgID0geGNvZGUubmV3aWQoeGNub2RlLm5hbWUsICJ0YXJncHJveCIpCnhjbm9kZS50YXJnZXRkZXBlbmRpZCA9IHhjb2RlLm5ld2lkKHhjbm9kZS5uYW1lLCAidGFyZ2RlcCIpCmxvY2FsIGxwcmogPSBwLndvcmtzcGFjZS5maW5kcHJvamVjdChwcmoud29ya3NwYWNlLCBkZXAubmFtZSkKbG9jYWwgY2ZnID0gcHJvamVjdC5maW5kQ2xvc2VzdE1hdGNoKGxwcmosIHByai5jb25maWd1cmF0aW9uc1sxXSkKbm9kZSA9IHRyZWUuaW5zZXJ0KHhjbm9kZSwgdHJlZS5uZXcoY2ZnLmxpbmt0YXJnZXQubmFtZSkpCm5vZGUucGF0aCA9IGNmZy5saW5rdGFyZ2V0LmZ1bGxwYXRoCm5vZGUuY2ZnID0gY2ZnCmlmIGJ1aWxkID09IGZhbHNlIHRoZW4Kbm9kZS5leGNsdWRlZnJvbWJ1aWxkID0gdHJ1ZQplbmQKZW5kCm0uZWxlbWVudHMucHJvamVjdCA9IGZ1bmN0aW9uKHByaikKcmV0dXJuIHsKbS5oZWFkZXIsCn0KZW5kCmZ1bmN0aW9uIG0uZ2VuZXJhdGVQcm9qZWN0KHByaikKbG9jYWwgdHIgPSB4Y29kZS5idWlsZHByanRyZWUocHJqKQpwLmNhbGxBcnJheShtLmVsZW1lbnRzLnByb2plY3QsIHByaikKeGNvZGUuUEJYQnVpbGRGaWxlKHRyKQp4Y29kZS5QQlhDb250YWluZXJJdGVtUHJveHkodHIpCnhjb2RlLlBCWEZpbGVSZWZlcmVuY2UodHIpCnhjb2RlLlBCWEZyYW1ld29ya3NCdWlsZFBoYXNlKHRyKQp4Y29kZS5QQlhHcm91cCh0cikKeGNvZGUuUEJYTmF0aXZlVGFyZ2V0KHRyKQp4Y29kZS5QQlhQcm9qZWN0KHRyKQp4Y29kZS5QQlhSZWZlcmVuY2VQcm94eSh0cikKeGNvZGUuUEJYUmVzb3VyY2VzQnVpbGRQaGFzZSh0cikKeGNvZGUuUEJYU2hlbGxTY3JpcHRCdWlsZFBoYXNlKHRyKQp4Y29kZS5QQlhTb3VyY2VzQnVpbGRQaGFzZSh0cikKeGNvZGUuUEJYVGFyZ2V0RGVwZW5kZW5jeSh0cikKeGNvZGUuUEJYVmFyaWFudEdyb3VwKHRyKQp4Y29kZS5YQ0J1aWxkQ29uZmlndXJhdGlvbih0cikKeGNvZGUuWENCdWlsZENvbmZpZ3VyYXRpb25MaXN0KHRyKQp4Y29kZS5mb290ZXIocHJqKQplbmQKZnVuY3Rpb24gbS5oZWFkZXIocHJqKQpwLncoJy8vICEkKlVURjgqJCEnKQpwLnB1c2goJ3snKQpwLncoJ2FyY2hpdmVWZXJzaW9uID0gMTsnKQpwLncoJ2NsYXNzZXMgPSB7JykKcC53KCd9OycpCnAudygnb2JqZWN0VmVyc2lvbiA9IDQ2OycpCnAucHVzaCgnb2JqZWN0cyA9IHsnKQpwLncoKQplbmQKZnVuY3Rpb24geGNvZGUuZm9vdGVyKHByaikKcC5wb3AoJ307JykKcC53KCdyb290T2JqZWN0ID0gMDhGQjc3OTNGRTg0MTU1REMwMkFBQzA3IC8qIFByb2plY3Qgb2JqZWN0ICovOycpCnAucG9wKCd9JykKZW5kCgAAAAAAbG9jYWwgc2hvcnRoZWxwICAgICA9ICJUeXBlICdwcmVtYWtlNSAtLWhlbHAnIGZvciBoZWxwIgpsb2NhbCB2ZXJzaW9uaGVscCAgID0gInByZW1ha2U1IChQcmVtYWtlIEJ1aWxkIFNjcmlwdCBHZW5lcmF0b3IpICVzIgpsb2NhbCBzdGFydFRpbWUgICAgID0gb3MuY2xvY2soKQpfUFJFTUFLRV9TVEFSVFRJTUUgPSBzdGFydFRpbWUKbG9jYWwgbW9kdWxlcyA9IGRvZmlsZSgiX21vZHVsZXMubHVhIikKbG9jYWwgbWFuaWZlc3QgPSBkb2ZpbGUoIl9tYW5pZmVzdC5sdWEiKQpmb3IgaSA9IDEsICNtYW5pZmVzdCBkbwpkb2ZpbGUobWFuaWZlc3RbaV0pCmVuZApsb2NhbCBwID0gcHJlbWFrZQpwLm1haW4gPSB7fQpsb2NhbCBtID0gcC5tYWluCm0uX3ByZWxvYWRlZCA9IHt9CmZ1bmN0aW9uIG0uaW5zdGFsbE1vZHVsZUxvYWRlcigpCmlmIG5vdCBvcy5pc2hvc3QoJ3dpbmRvd3MnKSB0aGVuCmxvY2FsIHByZW1ha2VEaXIgPSBwYXRoLmdldGRpcmVjdG9yeShfUFJFTUFLRV9DT01NQU5EKQpwYWNrYWdlLmNwYXRoID0gcGFja2FnZS5jcGF0aCAuLiAnOycgLi4gcHJlbWFrZURpciAuLiAnLz8uc28nCmVuZAp0YWJsZS5pbnNlcnQocGFja2FnZS5zZWFyY2hlcnMsIDIsIG0ubW9kdWxlTG9hZGVyKQplbmQKZnVuY3Rpb24gbS5tb2R1bGVMb2FkZXIobmFtZSkKbG9jYWwgZGlyID0gcGF0aC5nZXRkaXJlY3RvcnkobmFtZSkKbG9jYWwgYmFzZSA9IHBhdGguZ2V0bmFtZShuYW1lKQppZiBkaXIgfj0gIi4iIHRoZW4KZGlyID0gZGlyIC4uICIvIiAuLiBiYXNlCmVsc2UKZGlyID0gYmFzZQplbmQKbG9jYWwgZnVsbCA9IGRpciAuLiAiLyIgLi4gYmFzZSAuLiAiLmx1YSIKbG9jYWwgcGF0aHMgPSB7CiIubW9kdWxlcy8iIC4uIGZ1bGwsCiJtb2R1bGVzLyIgLi4gZnVsbCwKZnVsbCwKbmFtZSAuLiAiLmx1YSIKfQpmb3IgXywgcCBpbiBpcGFpcnMocGF0aHMpIGRvCmxvY2FsIGZpbGUgPSBvcy5sb2NhdGUocCkKaWYgZmlsZSB0aGVuCmxvY2FsIGNodW5rLCBlcnIgPSBsb2FkZmlsZShmaWxlKQppZiBjaHVuayB0aGVuCnJldHVybiBjaHVuawplbmQKaWYgZXJyIHRoZW4KcmV0dXJuICJcblx0bG9hZCBlcnJvciAiIC4uIGVycgplbmQKZW5kCmVuZApmb3IgXywgcCBpbiBpcGFpcnMocGF0aHMpIGRvCmxvY2FsIGNodW5rLCBlcnIgPSBsb2FkZmlsZSgiJC8iIC4uIHApCmlmIGNodW5rIHRoZW4KcmV0dXJuIGNodW5rCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0ucHJlcGFyZUVudmlyb25tZW50KCkKbWF0aC5yYW5kb21zZWVkKG9zLnRpbWUoKSkKX1BSRU1BS0VfRElSID0gcGF0aC5nZXRkaXJlY3RvcnkoX1BSRU1BS0VfQ09NTUFORCkKcC5wYXRoID0gcC5wYXRoIC4uICI7IiAuLiBfUFJFTUFLRV9ESVIgLi4gIjsiIC4uIF9NQUlOX1NDUklQVF9ESVIKZW5kCmZ1bmN0aW9uIG0ucHJlbG9hZE1vZHVsZXMoKQpmb3IgaSA9IDEsICNtb2R1bGVzIGRvCmxvY2FsIG5hbWUgPSBtb2R1bGVzW2ldCmxvY2FsIHByZWxvYWRlciA9IG5hbWUgLi4gIi9fcHJlbG9hZC5sdWEiCnByZWxvYWRlciA9IG9zLmxvY2F0ZSgibW9kdWxlcy8iIC4uIHByZWxvYWRlcikgb3Igb3MubG9jYXRlKHByZWxvYWRlcikKaWYgcHJlbG9hZGVyIHRoZW4KbS5fcHJlbG9hZGVkW25hbWVdID0gaW5jbHVkZShwcmVsb2FkZXIpCmlmIG5vdCBtLl9wcmVsb2FkZWRbbmFtZV0gdGhlbgpwLndhcm4oIm1vZHVsZSAnJXMnIHNob3VsZCByZXR1cm4gZnVuY3Rpb24gZnJvbSBfcHJlbG9hZC5sdWEiLCBuYW1lKQplbmQKZWxzZQpyZXF1aXJlKG5hbWUpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0ucnVuU3lzdGVtU2NyaXB0KCkKZG9maWxlb3B0KF9PUFRJT05TWyJzeXN0ZW1zY3JpcHQiXSBvciB7ICJwcmVtYWtlNS1zeXN0ZW0ubHVhIiwgInByZW1ha2Utc3lzdGVtLmx1YSIgfSkKZmlsdGVyIHt9CmVuZApmdW5jdGlvbiBtLmxvY2F0ZVVzZXJTY3JpcHQoKQpsb2NhbCBkZWZhdWx0cyA9IHsgInByZW1ha2U1Lmx1YSIsICJwcmVtYWtlNC5sdWEiIH0KZm9yIGkgPSAxLCAjZGVmYXVsdHMgZG8KaWYgb3MuaXNmaWxlKGRlZmF1bHRzW2ldKSB0aGVuCl9NQUlOX1NDUklQVCA9IGRlZmF1bHRzW2ldCmJyZWFrCmVuZAplbmQKaWYgbm90IF9NQUlOX1NDUklQVCB0aGVuCl9NQUlOX1NDUklQVCA9IGRlZmF1bHRzWzFdCmVuZAppZiBfT1BUSU9OUy5maWxlIHRoZW4KX01BSU5fU0NSSVBUID0gX09QVElPTlMuZmlsZQplbmQKX01BSU5fU0NSSVBUID0gcGF0aC5nZXRhYnNvbHV0ZShfTUFJTl9TQ1JJUFQpCl9NQUlOX1NDUklQVF9ESVIgPSBwYXRoLmdldGRpcmVjdG9yeShfTUFJTl9TQ1JJUFQpCmVuZApmdW5jdGlvbiBtLnByZXBhcmVBY3Rpb24oKQppZiBfQUNUSU9OIGFuZCBfQUNUSU9OOmVuZHN3aXRoKCJuZyIpIHRoZW4KcC53YXJuT25jZShfQUNUSU9OLCAiJyVzJyBoYXMgYmVlbiBkZXByZWNhdGVkOyB1c2UgJyVzJyBpbnN0ZWFkIiwgX0FDVElPTiwgX0FDVElPTjpzdWIoMSwgLTMpKQplbmQKcC5hY3Rpb24uc2V0KF9BQ1RJT04pCmxvY2FsIGFjdGlvbiA9IHAuYWN0aW9uLmN1cnJlbnQoKQppZiBhY3Rpb24gdGhlbgpwLmFjdGlvbi5pbml0aWFsaXplKGFjdGlvbi50cmlnZ2VyKQplbmQKZW5kCmZ1bmN0aW9uIG0ucnVuVXNlclNjcmlwdCgpCmlmIG9zLmlzZmlsZShfTUFJTl9TQ1JJUFQpIHRoZW4KZG9maWxlKF9NQUlOX1NDUklQVCkKZW5kCmVuZApmdW5jdGlvbiBtLmNoZWNrSW50ZXJhY3RpdmUoKQppZiBfT1BUSU9OUy5pbnRlcmFjdGl2ZSB0aGVuCmRlYnVnLnByb21wdCgpCmVuZAplbmQKZnVuY3Rpb24gbS5wcm9jZXNzQ29tbWFuZExpbmUoKQppZiAoX09QVElPTlNbInZlcnNpb24iXSkgdGhlbgpwcmludGYodmVyc2lvbmhlbHAsIF9QUkVNQUtFX1ZFUlNJT04pCm9zLmV4aXQoMCkKZW5kCmlmIChfT1BUSU9OU1siaGVscCJdKSB0aGVuCnAuc2hvd2hlbHAoKQpvcy5leGl0KDEpCmVuZApvaywgZXJyID0gcC5vcHRpb24udmFsaWRhdGUoX09QVElPTlMpCmlmIG5vdCBvayB0aGVuCnByaW50KCJFcnJvcjogIiAuLiBlcnIpCm9zLmV4aXQoMSkKZW5kCmlmIG5vdCBfT1BUSU9OUy5pbnRlcmFjdGl2ZSB0aGVuCmlmIG5vdCBfQUNUSU9OIHRoZW4KcHJpbnQoc2hvcnRoZWxwKQpvcy5leGl0KDEpCmVuZApsb2NhbCBhY3Rpb24gPSBwLmFjdGlvbi5jdXJyZW50KCkKaWYgbm90IGFjdGlvbiB0aGVuCnByaW50KCJFcnJvcjogbm8gc3VjaCBhY3Rpb24gJyIgLi4gX0FDVElPTiAuLiAiJyIpCm9zLmV4aXQoMSkKZW5kCmlmIHAuYWN0aW9uLmlzQ29uZmlndXJhYmxlKCkgYW5kIG5vdCBvcy5pc2ZpbGUoX01BSU5fU0NSSVBUKSB0aGVuCnByaW50KHN0cmluZy5mb3JtYXQoIk5vIFByZW1ha2Ugc2NyaXB0ICglcykgZm91bmQhIiwgcGF0aC5nZXRuYW1lKF9NQUlOX1NDUklQVCkpKQpvcy5leGl0KDEpCmVuZAplbmQKZW5kCmZ1bmN0aW9uIG0ucHJlQmFrZSgpCmlmIHAuYWN0aW9uLmlzQ29uZmlndXJhYmxlKCkgdGhlbgpwcmludCgiQnVpbGRpbmcgY29uZmlndXJhdGlvbnMuLi4iKQplbmQKZW5kCmZ1bmN0aW9uIG0uYmFrZSgpCmlmIHAuYWN0aW9uLmlzQ29uZmlndXJhYmxlKCkgdGhlbgpwLm92ZW4uYmFrZSgpCmVuZAplbmQKZnVuY3Rpb24gbS5wb3N0QmFrZSgpCmxvY2FsIGZ1bmN0aW9uIHNob3VsZExvYWQoZnVuYykKZm9yIHdrcyBpbiBwLmdsb2JhbC5lYWNoV29ya3NwYWNlKCkgZG8KZm9yIHByaiBpbiBwLndvcmtzcGFjZS5lYWNocHJvamVjdCh3a3MpIGRvCmZvciBjZmcgaW4gcC5wcm9qZWN0LmVhY2hjb25maWcocHJqKSBkbwppZiBmdW5jKGNmZykgdGhlbgpyZXR1cm4gdHJ1ZQplbmQKZW5kCmVuZAplbmQKZW5kCmZvciBtb2R1bGUsIGZ1bmMgaW4gcGFpcnMobS5fcHJlbG9hZGVkKSBkbwppZiBub3QgcGFja2FnZS5sb2FkZWRbbW9kdWxlXSBhbmQgc2hvdWxkTG9hZChmdW5jKSB0aGVuCnJlcXVpcmUobW9kdWxlKQplbmQKZW5kCmVuZApmdW5jdGlvbiBtLnZhbGlkYXRlKCkKaWYgcC5hY3Rpb24uaXNDb25maWd1cmFibGUoKSB0aGVuCnAuY29udGFpbmVyLnZhbGlkYXRlKHAuYXBpLnJvb3RDb250YWluZXIoKSkKZW5kCmVuZApmdW5jdGlvbiBtLnByZUFjdGlvbigpCmxvY2FsIGFjdGlvbiA9IHAuYWN0aW9uLmN1cnJlbnQoKQpwcmludGYoIlJ1bm5pbmcgYWN0aW9uICclcycuLi4iLCBhY3Rpb24udHJpZ2dlcikKZW5kCmZ1bmN0aW9uIG0uY2FsbEFjdGlvbigpCmxvY2FsIGFjdGlvbiA9IHAuYWN0aW9uLmN1cnJlbnQoKQpwLmFjdGlvbi5jYWxsKGFjdGlvbi50cmlnZ2VyKQplbmQKZnVuY3Rpb24gbS5wb3N0QWN0aW9uKCkKaWYgcC5hY3Rpb24uaXNDb25maWd1cmFibGUoKSB0aGVuCmxvY2FsIGR1cmF0aW9uID0gbWF0aC5mbG9vcigob3MuY2xvY2soKSAtIHN0YXJ0VGltZSkgKiAxMDAwKTsKcHJpbnRmKCJEb25lICglZG1zKS4iLCBkdXJhdGlvbikKZW5kCmVuZAptLmVsZW1lbnRzID0gewptLmluc3RhbGxNb2R1bGVMb2FkZXIsCm0ubG9jYXRlVXNlclNjcmlwdCwKbS5wcmVwYXJlRW52aXJvbm1lbnQsCm0ucHJlbG9hZE1vZHVsZXMsCm0ucnVuU3lzdGVtU2NyaXB0LAptLnByZXBhcmVBY3Rpb24sCm0ucnVuVXNlclNjcmlwdCwKbS5jaGVja0ludGVyYWN0aXZlLAptLnByb2Nlc3NDb21tYW5kTGluZSwKbS5wcmVCYWtlLAptLmJha2UsCm0ucG9zdEJha2UsCm0udmFsaWRhdGUsCm0ucHJlQWN0aW9uLAptLmNhbGxBY3Rpb24sCm0ucG9zdEFjdGlvbiwKfQpmdW5jdGlvbiBfcHJlbWFrZV9tYWluKCkKcC5jYWxsQXJyYXkobS5lbGVtZW50cykKcmV0dXJuIDAKZW5kCgAAAAAAAHJldHVybgp7CiJiYXNlL19mb3VuZGF0aW9uLmx1YSIsCiJiYXNlL3N0cmluZy5sdWEiLAoiYmFzZS90YWJsZS5sdWEiLAoiYmFzZS9wYXRoLmx1YSIsCiJiYXNlL29zLmx1YSIsCiJiYXNlL2lvLmx1YSIsCiJiYXNlL3Rvb2xzLmx1YSIsCiJiYXNlL3RyZWUubHVhIiwKImJhc2UvZ2xvYmFscy5sdWEiLAoiYmFzZS9tb2R1bGVkb3dubG9hZGVyLmx1YSIsCiJiYXNlL3NlbXZlci5sdWEiLAoiYmFzZS9odHRwLmx1YSIsCiJiYXNlL2pzb24ubHVhIiwKImJhc2UvanNvbndyYXBwZXIubHVhIiwKImJhc2UvbGFuZ3VhZ2VzLmx1YSIsCiJiYXNlL3Rlcm0ubHVhIiwKImJhc2UvZmllbGQubHVhIiwKImJhc2UvY3JpdGVyaWEubHVhIiwKImJhc2UvZGV0b2tlbi5sdWEiLAoiYmFzZS9jb25maWdzZXQubHVhIiwKImJhc2UvY29udGV4dC5sdWEiLAoiYmFzZS9jb250YWluZXIubHVhIiwKImJhc2Uvb3B0aW9uLmx1YSIsCiJiYXNlL2FjdGlvbi5sdWEiLAoiYmFzZS9hcGkubHVhIiwKImJhc2UvZ2xvYmFsLmx1YSIsCiJiYXNlL3dvcmtzcGFjZS5sdWEiLAoiYmFzZS9ncm91cC5sdWEiLAoiYmFzZS9wcm9qZWN0Lmx1YSIsCiJiYXNlL2NvbmZpZy5sdWEiLAoiYmFzZS9maWxlY29uZmlnLmx1YSIsCiJiYXNl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ICVkIGJ5dGVzIHdlcmUgYXR0ZW1wdGVkIHRvIGJlIHdyaXR0ZW4KICAgIEZpbGUgbWF5IGJlIGNvcnJ1cHQKAHNyYy9fbW9kdWxlcy5sdWEAAAAAc3JjL19tYW5pZmVzdC5sdWEAAAB4Y29kZS94Y29kZV9wcm9qZWN0Lmx1YQB4Y29kZS94Y29kZV9jb21tb24ubHVhAAB4Y29kZS94Y29kZTRfd29ya3NwYWNlLmx1YQAAeGNvZGUveGNvZGUubHVhAHhjb2RlL19wcmVsb2FkLmx1YQAAdnN0dWRpby92czIwMTcubHVhAAB2c3R1ZGlvL3ZzMjAxNS5sdWEAAHZzdHVkaW8vdnMyMDEzLmx1YQAAdnN0dWRpby92czIwMTIubHVhAAB2c3R1ZGlvL3ZzMjAxMF9ydWxlc194bWwubHVhAAAAAHZzdHVkaW8vdnMyMDEwX3J1bGVzX3RhcmdldHMubHVhAAAAAHZzdHVkaW8vdnMyMDEwX3J1bGVzX3Byb3BzLmx1YQAAdnN0dWRpby92czIwMTBfdmN4cHJval9maWx0ZXJzLmx1YQAAdnN0dWRpby92czIwMTBfdmN4cHJval91c2VyLmx1YQB2c3R1ZGlvL3ZzMjAxMF92Y3hwcm9qLmx1YQAAdnN0dWRpby92czIwMTBfbnVnZXQubHVhAAAAAHZzdHVkaW8vdnMyMDEwLmx1YQAAdnN0dWRpby92czIwMDVfY3Nwcm9qX3VzZXIubHVhAAB2c3R1ZGlvL3ZzMjAwNV9jc3Byb2oubHVhAAAAdnN0dWRpby92czIwMDVfc29sdXRpb24ubHVhAHZzdHVkaW8vdnMyMDB4X3ZjcHJval91c2VyLmx1YQAAdnN0dWRpby92czIwMHhfdmNwcm9qLmx1YQAAAHZzdHVkaW8vdnMyMDA4Lmx1YQAAdnN0dWRpby92czIwMDUubHVhAAB2c3R1ZGlvL3ZzdHVkaW8ubHVhAHZzdHVkaW8vX3ByZWxvYWQubHVhAAAAAHNlbGYtdGVzdC90ZXN0X3J1bm5lci5sdWEAAABzZWxmLXRlc3QvdGVzdF9oZWxwZXJzLmx1YQAAc2VsZi10ZXN0L3Rlc3RfZGVjbGFyZS5sdWEAAHNlbGYtdGVzdC90ZXN0X2Fzc2VydGlvbnMubHVhAAAAc2VsZi10ZXN0L3NlbGYtdGVzdC5sdWEAcmF3L3Jhd19hY3Rpb24ubHVhAAByYXcvcmF3Lmx1YQByYXcvX3ByZWxvYWQubHVhAAAAAGdtYWtlMi9nbWFrZTJfd29ya3NwYWNlLmx1YQBnbWFrZTIvZ21ha2UyX3V0aWxpdHkubHVhAAAAZ21ha2UyL2dtYWtlMl9tYWtlZmlsZS5sdWEAAGdtYWtlMi9nbWFrZTJfY3NoYXJwLmx1YQAAAABnbWFrZTIvZ21ha2UyX2NwcC5sdWEAAABnbWFrZTIvZ21ha2UyLmx1YQAAAGdtYWtlMi9fcHJlbG9hZC5sdWEAZ21ha2UvZ21ha2Vfd29ya3NwYWNlLmx1YQAAAGdtYWtlL2dtYWtlX3V0aWxpdHkubHVhAGdtYWtlL2dtYWtlX21ha2VmaWxlLmx1YQAAAABnbWFrZS9nbWFrZV9jc2hhcnAubHVhAABnbWFrZS9nbWFrZV9jcHAubHVhAGdtYWtlL2dtYWtlLmx1YQBnbWFrZS9fcHJlbG9hZC5sdWEAAGQvdG9vbHMvbGRjLmx1YQBkL3Rvb2xzL2dkYy5sdWEAZC90b29scy9kbWQubHVhAGQvYWN0aW9ucy92c3R1ZGlvLmx1YQAAAGQvYWN0aW9ucy9nbWFrZS5sdWEAZC9kLmx1YQBkL19wcmVsb2FkLmx1YQAAY29kZWxpdGUvY29kZWxpdGVfcHJvamVjdC5sdWEAAABjb2RlbGl0ZS9jb2RlbGl0ZV93b3Jrc3BhY2UubHVhAGNvZGVsaXRlL2NvZGVsaXRlLmx1YQAAAGNvZGVsaXRlL19wcmVsb2FkLmx1YQAAAHNyYy9fcHJlbWFrZV9pbml0Lmx1YQAAAHNyYy9hY3Rpb25zL2NsZWFuL19jbGVhbi5sdWEAAAAAc3JjL3Rvb2xzL2NsYW5nLmx1YQBzcmMvdG9vbHMvc25jLmx1YQAAAHNyYy90b29scy9tc2MubHVhAAAAc3JjL3Rvb2xzL2djYy5sdWEAAABzcmMvdG9vbHMvZG90bmV0Lmx1YQAAAABzcmMvYmFzZS9oZWxwLmx1YQAAAHNyYy9iYXNlL3ByZW1ha2UubHVhAAAAAHNyYy9iYXNlL3ZhbGlkYXRpb24ubHVhAHNyYy9iYXNlL292ZW4ubHVhAAAAc3JjL2Jhc2UvcnVsZS5sdWEAAABzcmMvYmFzZS9maWxlY29uZmlnLmx1YQBzcmMvYmFzZS9jb25maWcubHVhAHNyYy9iYXNlL3Byb2plY3QubHVhAAAAAHNyYy9iYXNlL2dyb3VwLmx1YQAAc3JjL2Jhc2Uvd29ya3NwYWNlLmx1YQAAc3JjL2Jhc2UvZ2xvYmFsLmx1YQBzcmMvYmFzZS9hcGkubHVhAAAAAHNyYy9iYXNlL2FjdGlvbi5sdWEAc3JjL2Jhc2Uvb3B0aW9uLmx1YQBzcmMvYmFzZS9jb250YWluZXIubHVhAABzcmMvYmFzZS9jb250ZXh0Lmx1YQAAAABzcmMvYmFzZS9jb25maWdzZXQubHVhAABzcmMvYmFzZS9kZXRva2VuLmx1YQAAAABzcmMvYmFzZS9jcml0ZXJpYS5sdWEAAABzcmMvYmFzZS9maWVsZC5sdWEAAHNyYy9iYXNlL3Rlcm0ubHVhAAAAc3JjL2Jhc2UvbGFuZ3VhZ2VzLmx1YQAAc3JjL2Jhc2UvanNvbndyYXBwZXIubHVhAAAAAHNyYy9iYXNlL2pzb24ubHVhAAAAc3JjL2Jhc2UvaHR0cC5sdWEAAABzcmMvYmFzZS9zZW12ZXIubHVhAHNyYy9iYXNlL21vZHVsZWRvd25sb2FkZXIubHVhAAAAc3JjL2Jhc2UvZ2xvYmFscy5sdWEAAAAAc3JjL2Jhc2UvdHJlZS5sdWEAAABzcmMvYmFzZS90b29scy5sdWEAAHNyYy9iYXNlL2lvLmx1YQBzcmMvYmFzZS9vcy5sdWEAc3JjL2Jhc2UvcGF0aC5sdWEAAABzcmMvYmFzZS90YWJsZS5sdWEAAHNyYy9iYXNlL3N0cmluZy5sdWEAc3JjL2Jhc2UvX2ZvdW5kYXRpb24ubHVhAAAAACgqbm8gbmFtZSkAACgqdmFyYXJnKQAAACgqdGVtcG9yYXJ5KQAAAAA9W0NdAAAAAEMAAAA9PwAAbWFpbgAAAABMdWEAbWV0YW1ldGhvZAAAbG9jYWwAAABfRU5WAAAAAGdsb2JhbAAAZmllbGQAAAB1cHZhbHVlAGNvbnN0YW50AAAAAGhvb2sAAAAAZm9yIGl0ZXJhdG9yAAAAACAoJXMgJyVzJykAAGF0dGVtcHQgdG8gJXMgYSAlcyB2YWx1ZSVzAABjb25jYXRlbmF0ZQBudW1iZXIlcyBoYXMgbm8gaW50ZWdlciByZXByZXNlbnRhdGlvbgAAYXR0ZW1wdCB0byBjb21wYXJlIHR3byAlcyB2YWx1ZXMAAAAAYXR0ZW1wdCB0byBjb21wYXJlICVzIHdpdGggJXMAAAAlczolZDogJXMAAAB1dGY4AAAAAG1hdGgAAAAAaW8AAHRhYmxlAAAAY29yb3V0aW5lAAAAcGFja2FnZQBfRwAAZXJyb3IgaW4gZXJyb3IgaGFuZGxpbmcAY2FsbAAAAABDIHN0YWNrIG92ZXJmbG93AAAAAGNhbm5vdCByZXN1bWUgbm9uLXN1c3BlbmRlZCBjb3JvdXRpbmUAAABjYW5ub3QgcmVzdW1lIGRlYWQgY29yb3V0aW5lAAAAAGF0dGVtcHQgdG8geWllbGQgYWNyb3NzIGEgQy1jYWxsIGJvdW5kYXJ5AAAAYXR0ZW1wdCB0byB5aWVsZCBmcm9tIG91dHNpZGUgYSBjb3JvdXRpbmUAAABhdHRlbXB0IHRvIGxvYWQgYSAlcyBjaHVuayAobW9kZSBpcyAnJXMnKQAAAGJpbmFyeQAAdGV4dAAAAABpbmRleAAAACdfX2luZGV4JyBjaGFpbiB0b28gbG9uZzsgcG9zc2libGUgbG9vcAAnX19uZXdpbmRleCcgY2hhaW4gdG9vIGxvbmc7IHBvc3NpYmxlIGxvb3AAAHN0cmluZyBsZW5ndGggb3ZlcmZsb3cAAGdldCBsZW5ndGggb2YAAABhdHRlbXB0IHRvIGRpdmlkZSBieSB6ZXJvAAAAYXR0ZW1wdCB0byBwZXJmb3JtICduJSUwJwAAACdmb3InIGxpbWl0IG11c3QgYmUgYSBudW1iZXIAAAAAJ2Zvcicgc3RlcCBtdXN0IGJlIGEgbnVtYmVyACdmb3InIGluaXRpYWwgdmFsdWUgbXVzdCBiZSBhIG51bWJlcgAAAAAZkw0KGgoAAGludmFsaWQga2V5IHRvICduZXh0JwAAAHRhYmxlIG92ZXJmbG93AAB0YWJsZSBpbmRleCBpcyBuaWwAAHRhYmxlIGluZGV4IGlzIE5hTgAAbm90IGVub3VnaCBtZW1vcnkAAAAueFhuTgAAACVsbGQAAAAAJS4xNGcAAAAtMDEyMzQ1Njc4OQAobnVsbCkAADxcJWQ+AAAAJXAAACUAAABpbnZhbGlkIG9wdGlvbiAnJSUlYycgdG8gJ2x1YV9wdXNoZnN0cmluZycAAC4uLgBbc3RyaW5nICIAAAAiXQAAbm8gbWVzc2FnZQAAZXJyb3IgaW4gX19nYyBtZXRhbWV0aG9kICglcykAAABfX2NhbGwAAF9fY29uY2F0AAAAAF9fbGUAAAAAX19sdAAAAABfX2Jub3QAAF9fdW5tAAAAX19zaHIAAABfX3NobAAAAF9fYnhvcgAAX19ib3IAAABfX2JhbmQAAF9faWRpdgAAX19kaXYAAABfX3BvdwAAAF9fbW9kAAAAX19tdWwAAABfX3N1YgAAAF9fYWRkAAAAX19lcQAAAABfX2xlbgAAAF9fbW9kZQAAX19uZXdpbmRleAAAX19pbmRleABwcm90bwAAAHRocmVhZAAAZnVuY3Rpb24AAAAAbnVtYmVyAABib29sZWFuAG5vIHZhbHVlAAAAAHBlcmZvcm0gYml0d2lzZSBvcGVyYXRpb24gb24AAAAAcGVyZm9ybSBhcml0aG1ldGljIG9uAAAARVhUUkFBUkcAAAAAVkFSQVJHAABDTE9TVVJFAFNFVExJU1QAVEZPUkxPT1AAAAAAVEZPUkNBTEwAAAAARk9SUFJFUABGT1JMT09QAFJFVFVSTgAAVEFJTENBTEwAAAAAQ0FMTAAAAABURVNUU0VUAFRFU1QAAAAATEUAAExUAABFUQAASk1QAENPTkNBVAAATEVOAE5PVABCTk9UAAAAAFVOTQBTSFIAU0hMAEJYT1IAAAAAQk9SAEJBTkQAAAAASURJVgAAAABESVYAUE9XAE1PRABNVUwAU1VCAEFERABTRUxGAAAAAE5FV1RBQkxFAAAAAFNFVFRBQkxFAAAAAFNFVFVQVkFMAAAAAFNFVFRBQlVQAAAAAEdFVFRBQkxFAAAAAEdFVFRBQlVQAAAAAEdFVFVQVkFMAAAAAExPQUROSUwATE9BREJPT0wAAAAATE9BREtYAABMT0FESwAAAE1PVkUAAAAAdHJhY2ViYWNrAAAAc2V0dXB2YWx1ZQAAc2V0bWV0YXRhYmxlAAAAAHNldGxvY2FsAAAAAHNldGhvb2sAc2V0dXNlcnZhbHVlAAAAAHVwdmFsdWVpZAAAAHVwdmFsdWVqb2luAGdldHVwdmFsdWUAAGdldG1ldGF0YWJsZQAAAABnZXRyZWdpc3RyeQBnZXRsb2NhbAAAAABnZXRpbmZvAGdldGhvb2sAZ2V0dXNlcnZhbHVlAAAAAHRhaWwgY2FsbAAAAGNvdW50AAAAbGluZQAAAAByZXR1cm4AAG5pbCBvciB0YWJsZSBleHBlY3RlZAAAAGZsblN0dQAAPiVzAGludmFsaWQgb3B0aW9uAABzb3VyY2UAAHNob3J0X3NyYwAAAGxpbmVkZWZpbmVkAGxhc3RsaW5lZGVmaW5lZAB3aGF0AAAAAGN1cnJlbnRsaW5lAG51cHMAAAAAbnBhcmFtcwBpc3ZhcmFyZwAAAABuYW1lAAAAAG5hbWV3aGF0AAAAAGlzdGFpbGNhbGwAAGFjdGl2ZWxpbmVzAGZ1bmMAAAAAbGV2ZWwgb3V0IG9mIHJhbmdlAABpbnZhbGlkIHVwdmFsdWUgaW5kZXgAAABMdWEgZnVuY3Rpb24gZXhwZWN0ZWQAAABrAAAAZXh0ZXJuYWwgaG9vawAAAGx1YV9kZWJ1Zz4gACVzAABjb250CgAAAD0oZGVidWcgY29tbWFuZCkAAAAAY2hhcnBhdHRlcm4AY29kZXMAAABsZW4AY2hhcgAAAABjb2RlcG9pbnQAAABvZmZzZXQAAGluaXRpYWwgcG9zaXRpb24gb3V0IG9mIHN0cmluZwAAZmluYWwgcG9zaXRpb24gb3V0IG9mIHN0cmluZwAAAABvdXQgb2YgcmFuZ2UAAAAAc3RyaW5nIHNsaWNlIHRvbyBsb25nAAAAaW52YWxpZCBVVEYtOCBjb2RlAAB2YWx1ZSBvdXQgb2YgcmFuZ2UAACVVAABwb3NpdGlvbiBvdXQgb2YgcmFuZ2UAAABpbml0aWFsIHBvc2l0aW9uIGlzIGEgY29udGludWF0aW9uIGJ5dGUAWwAtf8It9F1bgC2/XSoAAGlzeWllbGRhYmxlAHlpZWxkAAAAd3JhcAAAAABzdGF0dXMAAHJlc3VtZQAAY3JlYXRlAAB0aHJlYWQgZXhwZWN0ZWQAdG9vIG1hbnkgYXJndW1lbnRzIHRvIHJlc3VtZQAAAAB0b28gbWFueSByZXN1bHRzIHRvIHJlc3VtZQAAcnVubmluZwBzdXNwZW5kZWQAAABub3JtYWwAAGRlYWQAAAAAbWluaW50ZWdlcgAAbWF4aW50ZWdlcgAAaHVnZQAAAABwaQAAdHlwZQAAAAB0YW4Ac3FydAAAAABzaW4AcmFuZG9tc2VlZAAAcmFuZG9tAAByYWQAbW9kZgAAAABtaW4AbWF4AGxvZwB1bHQAZm1vZAAAAABmbG9vcgAAAHRvaW50ZWdlcgAAAGV4cABkZWcAY29zAGNlaWwAAAAAYXRhbgAAAABhc2luAAAAAGFjb3MAAAAAYWJzAHplcm8AAAAAd3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cwAAAGludGVydmFsIGlzIGVtcHR5AAAAaW50ZXJ2YWwgdG9vIGxhcmdlAABpbnRlZ2VyAGZsb2F0AAAAdW5wYWNrAABwYWNrc2l6ZQAAAABwYWNrAAAAAHVwcGVyAAAAc3ViAHJldmVyc2UAcmVwAGxvd2VyAAAAZ3N1YgAAAABnbWF0Y2gAAGZvcm1hdAAAZmluZAAAAABkdW1wAAAAAGJ5dGUAAAAAcmVzdWx0aW5nIHN0cmluZyB0b28gbGFyZ2UAAHVuYWJsZSB0byBkdW1wIGdpdmVuIGZ1bmN0aW9uAAAAaW52YWxpZCBjYXB0dXJlIGluZGV4ICUlJWQAAGludmFsaWQgcGF0dGVybiBjYXB0dXJlAG1hbGZvcm1lZCBwYXR0ZXJuIChlbmRzIHdpdGggJyUlJykAAG1hbGZvcm1lZCBwYXR0ZXJuIChtaXNzaW5nICddJykAbWFsZm9ybWVkIHBhdHRlcm4gKG1pc3NpbmcgYXJndW1lbnRzIHRvICclJWInKQAAdG9vIG1hbnkgY2FwdHVyZXMAAABwYXR0ZXJuIHRvbyBjb21wbGV4AG1pc3NpbmcgJ1snIGFmdGVyICclJWYnIGluIHBhdHRlcm4AAHVuZmluaXNoZWQgY2FwdHVyZQAAXiQqKz8uKFslLQAAaW52YWxpZCB1c2Ugb2YgJyVjJyBpbiByZXBsYWNlbWVudCBzdHJpbmcAAABpbnZhbGlkIHJlcGxhY2VtZW50IHZhbHVlIChhICVzKQAAAABzdHJpbmcvZnVuY3Rpb24vdGFibGUgZXhwZWN0ZWQAACUuMTRneDBwKzAAAHAlK2QAAAAAbW9kaWZpZXJzIGZvciBmb3JtYXQgJyUlYScvJyUlQScgbm90IGltcGxlbWVudGVkAAAAAFwlZABcJTAzZAAAACVhAAAweCVsbHgAAHZhbHVlIGhhcyBubyBsaXRlcmFsIGZvcm0AAAAtKyAjMAAAAGludmFsaWQgZm9ybWF0IChyZXBlYXRlZCBmbGFncykAaW52YWxpZCBmb3JtYXQgKHdpZHRoIG9yIHByZWNpc2lvbiB0b28gbG9uZykAAAAAbGwAAHN0cmluZyBjb250YWlucyB6ZXJvcwAAAGludmFsaWQgb3B0aW9uICclJSVjJyB0byAnZm9ybWF0JwAAAGludGVncmFsIHNpemUgKCVkKSBvdXQgb2YgbGltaXRzIFsxLCVkXQBtaXNzaW5nIHNpemUgZm9yIGZvcm1hdCBvcHRpb24gJ2MnAABpbnZhbGlkIGZvcm1hdCBvcHRpb24gJyVjJwAAaW52YWxpZCBuZXh0IG9wdGlvbiBmb3Igb3B0aW9uICdYJwAAZm9ybWF0IGFza3MgZm9yIGFsaWdubWVudCBub3QgcG93ZXIgb2YgMgAAAABpbnRlZ2VyIG92ZXJmbG93AAAAAHVuc2lnbmVkIG92ZXJmbG93AAAAc3RyaW5nIGxvbmdlciB0aGFuIGdpdmVuIHNpemUAAABzdHJpbmcgbGVuZ3RoIGRvZXMgbm90IGZpdCBpbiBnaXZlbiBzaXplAAAAAGZvcm1hdCByZXN1bHQgdG9vIGxhcmdlAHZhcmlhYmxlLWxlbmd0aCBmb3JtYXQAACVkLWJ5dGUgaW50ZWdlciBkb2VzIG5vdCBmaXQgaW50byBMdWEgSW50ZWdlcgAAAGRhdGEgc3RyaW5nIHRvbyBzaG9ydAAAAHRvbyBtYW55IHJlc3VsdHMAAAAAX1ZFUlNJT04AAAAAeHBjYWxsAAB0b251bWJlcgAAAABzZWxlY3QAAHJhd3NldAAAcmF3Z2V0AAByYXdsZW4AAHJhd2VxdWFsAAAAAHBjYWxsAAAAcGFpcnMAAABuZXh0AAAAAGxvYWQAAAAAbG9hZGZpbGUAAAAAaXBhaXJzAABlcnJvcgAAAGRvZmlsZQAAY29sbGVjdGdhcmJhZ2UAAGFzc2VydAAAaXNydW5uaW5nAAAAc2V0c3RlcG11bAAAc2V0cGF1c2UAAAAAc3RlcAAAAABjb2xsZWN0AHJlc3RhcnQAc3RvcAAAAAAndG9zdHJpbmcnIG11c3QgcmV0dXJuIGEgc3RyaW5nIHRvICdwcmludCcAAAkAAAAgDAoNCQsAAGJhc2Ugb3V0IG9mIHJhbmdlAAAAX19tZXRhdGFibGUAY2Fubm90IGNoYW5nZSBhIHByb3RlY3RlZCBtZXRhdGFibGUAdGFibGUgb3Igc3RyaW5nIGV4cGVjdGVkAAAAAF9fcGFpcnMAdG9vIG1hbnkgbmVzdGVkIGZ1bmN0aW9ucwAAAHJlYWRlciBmdW5jdGlvbiBtdXN0IHJldHVybiBhIHN0cmluZwAAAABidAAAPShsb2FkKQBhc3NlcnRpb24gZmFpbGVkIQAAAGluZGV4IG91dCBvZiByYW5nZQAATHVhIDUuMwBzZXR2YnVmAHNlZWsAAAAAdG1wZmlsZQBwb3BlbgAAAG91dHB1dAAAbGluZXMAAABpbnB1dAAAAGZsdXNoAAAAZnVsbAAAAABubwAAZW5kAGN1cgBzZXQAcndhAGIAAABGSUxFKgAAAGNsb3NlZCBmaWxlAGZpbGUAAAAAZmlsZSAoY2xvc2VkKQAAAGZpbGUgKCVwKQAAAGF0dGVtcHQgdG8gdXNlIGEgY2xvc2VkIGZpbGUAAAAAX0lPX291dHB1dAAAY2Fubm90IG9wZW4gZmlsZSAnJXMnICglcykAAGludmFsaWQgbW9kZQAAAABzdGFuZGFyZCAlcyBmaWxlIGlzIGNsb3NlZAAAX0lPX2lucHV0AAAAdwAAAHRvbyBtYW55IGFyZ3VtZW50cwAALSsAADAwAAB4WAAAcFAAAGVFAABpbnZhbGlkIGZvcm1hdAAAZmlsZSBpcyBhbHJlYWR5IGNsb3NlZAAAY2Fubm90IGNsb3NlIHN0YW5kYXJkIGZpbGUAAHN0ZGluAAAAc3Rkb3V0AABzdGRlcnIAAHRtcG5hbWUAc2V0bG9jYWxlAAAAZ2V0ZW52AABleGVjdXRlAGRpZmZ0aW1lAAAAAGRhdGUAAAAAY2xvY2sAAAB0aW1lAAAAAG51bWVyaWMAbW9uZXRhcnkAAAAAY3R5cGUAAABjb2xsYXRlAGFsbAB1bmFibGUgdG8gZ2VuZXJhdGUgYSB1bmlxdWUgZmlsZW5hbWUAAAAAc2VjAGhvdXIAAAAAZGF5AG1vbnRoAAAAeWVhcgAAAAB3ZGF5AAAAAHlkYXkAAAAAaXNkc3QAAABmaWVsZCAnJXMnIGlzIG5vdCBhbiBpbnRlZ2VyAAAAAGZpZWxkICclcycgbWlzc2luZyBpbiBkYXRlIHRhYmxlAAAAAGZpZWxkICclcycgaXMgb3V0LW9mLWJvdW5kAABhQWJCY2RISWptTXBTVXdXeFh5WXpaJXx8I2MjeCNkI0gjSSNqI20jTSNTI1UjdyNXI3kjWQAAAGludmFsaWQgY29udmVyc2lvbiBzcGVjaWZpZXIgJyUlJXMnACVjAAB0aW1lIHJlc3VsdCBjYW5ub3QgYmUgcmVwcmVzZW50ZWQgaW4gdGhpcyBpbnN0YWxsYXRpb24AACp0AABsb2FkZWQAAHByZWxvYWQAc2VhcmNocGF0aAAAbG9hZGxpYgB1bmFibGUgdG8gZ2V0IE1vZHVsZUZpbGVOYW1lAAAAACEAAABzeXN0ZW0gZXJyb3IgJWQKAAAAAF81XzMAAAAAJXMlcwAAAAA7ATsAOzsAAAEAAABpbml0AAAAAAoJbm8gZmlsZSAnJXMnAAAncGFja2FnZS4lcycgbXVzdCBiZSBhIHN0cmluZwAAAGVycm9yIGxvYWRpbmcgbW9kdWxlICclcycgZnJvbSBmaWxlICclcyc6CgklcwAAAF8AAABsdWFvcGVuXyVzAABjcGF0aAAAAAoJbm8gbW9kdWxlICclcycgaW4gZmlsZSAnJXMnAAAAX1BSRUxPQUQAAAAACglubyBmaWVsZCBwYWNrYWdlLnByZWxvYWRbJyVzJ10AAAAAc2VhcmNoZXJzAAAAJ3BhY2thZ2Uuc2VhcmNoZXJzJyBtdXN0IGJlIGEgdGFibGUAbW9kdWxlICclcycgbm90IGZvdW5kOiVzAAAAACFcbHVhXD8ubHVhOyFcbHVhXD9caW5pdC5sdWE7IVw/Lmx1YTshXD9caW5pdC5sdWE7IVwuLlxzaGFyZVxsdWFcNS4zXD8ubHVhOyFcLi5cc2hhcmVcbHVhXDUuM1w/XGluaXQubHVhOy5cPy5sdWE7Llw/XGluaXQubHVhAAAATFVBX1BBVEgAAAAAIVw/LmRsbDshXC4uXGxpYlxsdWFcNS4zXD8uZGxsOyFcbG9hZGFsbC5kbGw7Llw/LmRsbAAAAABMVUFfQ1BBVEgAAABcCjsKPwohCi0KAABjb25maWcAAHNvcnQAAAAAbW92ZQAAAABpbnNlcnQAAGNvbmNhdAAAcG9zaXRpb24gb3V0IG9mIGJvdW5kcwAAd3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cyB0byAnaW5zZXJ0JwAAAHRvbyBtYW55IGVsZW1lbnRzIHRvIG1vdmUAAABkZXN0aW5hdGlvbiB3cmFwIGFyb3VuZABpbnZhbGlkIHZhbHVlICglcykgYXQgaW5kZXggJWQgaW4gdGFibGUgZm9yICdjb25jYXQnAAAAAHRvbyBtYW55IHJlc3VsdHMgdG8gdW5wYWNrAABpbnZhbGlkIG9yZGVyIGZ1bmN0aW9uIGZvciBzb3J0aW5nAABhcnJheSB0b28gYmlnAAAAPHN0cmluZz4AAAAAPG5hbWU+AAA8aW50ZWdlcj4AAAA8bnVtYmVyPgAAAAA6OgAAPj4AADw8AAB+PQAAPD0AAD49AAA9PQAALy8AAHdoaWxlAAAAdW50aWwAAAB0aGVuAAAAAHJlcGVhdAAAb3IAAG5vdABpbgAAaWYAAGdvdG8AAAAAZm9yAGVsc2VpZgAAZWxzZQAAAABkbwAAYnJlYWsAAABhbmQAbGV4aWNhbCBlbGVtZW50IHRvbyBsb25nAAAAACclYycAAAAAJyVzJwAAAAAlcyBuZWFyICVzAABjaHVuayBoYXMgdG9vIG1hbnkgbGluZXMAAAAARWUAAFBwAABtYWxmb3JtZWQgbnVtYmVyAAAAAGNvbW1lbnQAdW5maW5pc2hlZCBsb25nICVzIChzdGFydGluZyBhdCBsaW5lICVkKQAAAABoZXhhZGVjaW1hbCBkaWdpdCBleHBlY3RlZAAAbWlzc2luZyAneycAVVRGLTggdmFsdWUgdG9vIGxhcmdlAAAAbWlzc2luZyAnfScAZGVjaW1hbCBlc2NhcGUgdG9vIGxhcmdlAAAAAHVuZmluaXNoZWQgc3RyaW5nAAAAaW52YWxpZCBlc2NhcGUgc2VxdWVuY2UAaW52YWxpZCBsb25nIHN0cmluZyBkZWxpbWl0ZXIAAAB0b28gbWFueSAlcyAobGltaXQgaXMgJWQpAAAAbWVtb3J5IGFsbG9jYXRpb24gZXJyb3I6IGJsb2NrIHRvbyBiaWcAACVzIGV4cGVjdGVkAG1haW4gZnVuY3Rpb24AAABmdW5jdGlvbiBhdCBsaW5lICVkAHRvbyBtYW55ICVzIChsaW1pdCBpcyAlZCkgaW4gJXMAJXMgZXhwZWN0ZWQgKHRvIGNsb3NlICVzIGF0IGxpbmUgJWQpAAAAAGxvY2FsIHZhcmlhYmxlcwB1cHZhbHVlcwAAAABDIGxldmVscwAAAAA8Z290byAlcz4gYXQgbGluZSAlZCBqdW1wcyBpbnRvIHRoZSBzY29wZSBvZiBsb2NhbCAnJXMnAGxhYmVscy9nb3RvcwAAAAA8JXM+IGF0IGxpbmUgJWQgbm90IGluc2lkZSBhIGxvb3AAAABubyB2aXNpYmxlIGxhYmVsICclcycgZm9yIDxnb3RvPiBhdCBsaW5lICVkAGZ1bmN0aW9ucwAAAGl0ZW1zIGluIGEgY29uc3RydWN0b3IAADxuYW1lPiBvciAnLi4uJyBleHBlY3RlZAAAAABzZWxmAAAAAGZ1bmN0aW9uIGFyZ3VtZW50cyBleHBlY3RlZAB1bmV4cGVjdGVkIHN5bWJvbAAAAGNhbm5vdCB1c2UgJy4uLicgb3V0c2lkZSBhIHZhcmFyZyBmdW5jdGlvbgAAc3ludGF4IGVycm9yAAAAAGxhYmVsICclcycgYWxyZWFkeSBkZWZpbmVkIG9uIGxpbmUgJWQAAAAoZm9yIGluZGV4KQAoZm9yIGxpbWl0KQAoZm9yIHN0ZXApAAAoZm9yIGdlbmVyYXRvcikAKGZvciBzdGF0ZSkAKGZvciBjb250cm9sKQAAACc9JyBvciAnaW4nIGV4cGVjdGVkAAAAACVzOiAlcyBwcmVjb21waWxlZCBjaHVuawAAAAB0cnVuY2F0ZWQAAAAlcyBzaXplIG1pc21hdGNoIGluAG5vdCBhAAAAdmVyc2lvbiBtaXNtYXRjaCBpbgBmb3JtYXQgbWlzbWF0Y2ggaW4AAGNvcnJ1cHRlZAAAAGludABzaXplX3QAAEluc3RydWN0aW9uAGx1YV9JbnRlZ2VyAGx1YV9OdW1iZXIAAGVuZGlhbm5lc3MgbWlzbWF0Y2ggaW4AAGZsb2F0IGZvcm1hdCBtaXNtYXRjaCBpbgAAAABiaW5hcnkgc3RyaW5nAAAAY29udHJvbCBzdHJ1Y3R1cmUgdG9vIGxvbmcAAG9wY29kZXMAZnVuY3Rpb24gb3IgZXhwcmVzc2lvbiBuZWVkcyB0b28gbWFueSByZWdpc3RlcnMAY29uc3RhbnRzAAAAY29uc3RydWN0b3IgdG9vIGxvbmcAAAAAUEsFBgAAAABQSwYHAAAAAFRPUlJFTlRaSVBQRUQtAABQSwYGAAAAAFRPUlJFTlRaSVBQRUQtWFhYWFhYWFgAACUwOGxYAAAAJXMvLnppcC5YWFhYWFgAACVzLlhYWFhYWAAAAHIrYgBQSwMEAAAAAFBLAQIAAAAAV3JvbmcgcGFzc3dvcmQgcHJvdmlkZWQATm8gcGFzc3dvcmQgcHJvdmlkZWQAAAAAUmVhZC1vbmx5IGFyY2hpdmUAAABFbmNyeXB0aW9uIG1ldGhvZCBub3Qgc3VwcG9ydGVkAEVudHJ5IGhhcyBiZWVuIGRlbGV0ZWQAAENhbid0IHJlbW92ZSBmaWxlAAAAWmlwIGFyY2hpdmUgaW5jb25zaXN0ZW50AAAAAEludGVybmFsIGVycm9yAABOb3QgYSB6aXAgYXJjaGl2ZQAAAEludmFsaWQgYXJndW1lbnQAAAAAUHJlbWF0dXJlIEVPRgAAAENvbXByZXNzaW9uIG1ldGhvZCBub3Qgc3VwcG9ydGVkAAAAAEVudHJ5IGhhcyBiZWVuIGNoYW5nZWQAAE1hbGxvYyBmYWlsdXJlAABabGliIGVycm9yAABGYWlsdXJlIHRvIGNyZWF0ZSB0ZW1wb3JhcnkgZmlsZQAAAABDYW4ndCBvcGVuIGZpbGUARmlsZSBhbHJlYWR5IGV4aXN0cwBObyBzdWNoIGZpbGUAAAAAQ29udGFpbmluZyB6aXAgYXJjaGl2ZSB3YXMgY2xvc2VkAAAAQ1JDIGVycm9yAAAAV3JpdGUgZXJyb3IAUmVhZCBlcnJvcgAAU2VlayBlcnJvcgAAQ2xvc2luZyB6aXAgYXJjaGl2ZSBmYWlsZWQAAFJlbmFtaW5nIHRlbXBvcmFyeSBmaWxlIGZhaWxlZAAATXVsdGktZGlzayB6aXAgYXJjaGl2ZXMgbm90IHN1cHBvcnRlZAAAAE5vIGVycm9yAAAAAGluY29ycmVjdCBoZWFkZXIgY2hlY2sAAHVua25vd24gY29tcHJlc3Npb24gbWV0aG9kAABpbnZhbGlkIHdpbmRvdyBzaXplAHVua25vd24gaGVhZGVyIGZsYWdzIHNldAAAAABoZWFkZXIgY3JjIG1pc21hdGNoAGludmFsaWQgYmxvY2sgdHlwZQAAaW52YWxpZCBzdG9yZWQgYmxvY2sgbGVuZ3RocwAAAAB0b28gbWFueSBsZW5ndGggb3IgZGlzdGFuY2Ugc3ltYm9scwBpbnZhbGlkIGNvZGUgbGVuZ3RocyBzZXQAAAAAaW52YWxpZCBiaXQgbGVuZ3RoIHJlcGVhdAAAAGludmFsaWQgY29kZSAtLSBtaXNzaW5nIGVuZC1vZi1ibG9jawAAAABpbnZhbGlkIGxpdGVyYWwvbGVuZ3RocyBzZXQAaW52YWxpZCBkaXN0YW5jZXMgc2V0AAAAaW52YWxpZCBsaXRlcmFsL2xlbmd0aCBjb2RlAGludmFsaWQgZGlzdGFuY2UgY29kZQAAAGludmFsaWQgZGlzdGFuY2UgdG9vIGZhciBiYWNrAAAAaW5jb3JyZWN0IGRhdGEgY2hlY2sAAAAAaW5jb3JyZWN0IGxlbmd0aCBjaGVjawAAaW5jb21wYXRpYmxlIHZlcnNpb24AAAAAYnVmZmVyIGVycm9yAAAAAGluc3VmZmljaWVudCBtZW1vcnkAZGF0YSBlcnJvcgAAc3RyZWFtIGVycm9yAAAAAGZpbGUgZXJyb3IAAHN0cmVhbSBlbmQAAG5lZWQgZGljdGlvbmFyeQBlYXN5IGhhbmRsZSBhbHJlYWR5IHVzZWQgaW4gbXVsdGkgaGFuZGxlAAAAAFVuc3VwcG9ydGVkIHByb3RvY29sAAAAAEZhaWxlZCBpbml0aWFsaXphdGlvbgAAAFVSTCB1c2luZyBiYWQvaWxsZWdhbCBmb3JtYXQgb3IgbWlzc2luZyBVUkwAAAAAAEEgcmVxdWVzdGVkIGZlYXR1cmUsIHByb3RvY29sIG9yIG9wdGlvbiB3YXMgbm90IGZvdW5kIGJ1aWx0LWluIGluIHRoaXMgbGliY3VybCBkdWUgdG8gYSBidWlsZC10aW1lIGRlY2lzaW9uLgAAAABDb3VsZG4ndCByZXNvbHZlIHByb3h5IG5hbWUAQ291bGRuJ3QgcmVzb2x2ZSBob3N0IG5hbWUAAENvdWxkbid0IGNvbm5lY3QgdG8gc2VydmVyAABXZWlyZCBzZXJ2ZXIgcmVwbHkAAEFjY2VzcyBkZW5pZWQgdG8gcmVtb3RlIHJlc291cmNlAAAAAEZUUDogVGhlIHNlcnZlciBmYWlsZWQgdG8gY29ubmVjdCB0byBkYXRhIHBvcnQAAEZUUDogQWNjZXB0aW5nIHNlcnZlciBjb25uZWN0IGhhcyB0aW1lZCBvdXQARlRQOiBUaGUgc2VydmVyIGRpZCBub3QgYWNjZXB0IHRoZSBQUkVUIGNvbW1hbmQuAAAAAEZUUDogdW5rbm93biBQQVNTIHJlcGx5AEZUUDogdW5rbm93biBQQVNWIHJlcGx5AEZUUDogdW5rbm93biAyMjcgcmVzcG9uc2UgZm9ybWF0AAAAAEZUUDogY2FuJ3QgZmlndXJlIG91dCB0aGUgaG9zdCBpbiB0aGUgUEFTViByZXNwb25zZQBFcnJvciBpbiB0aGUgSFRUUDIgZnJhbWluZyBsYXllcgAAAABGVFA6IGNvdWxkbid0IHNldCBmaWxlIHR5cGUAVHJhbnNmZXJyZWQgYSBwYXJ0aWFsIGZpbGUAAEZUUDogY291bGRuJ3QgcmV0cmlldmUgKFJFVFIgZmFpbGVkKSB0aGUgc3BlY2lmaWVkIGZpbGUAUXVvdGUgY29tbWFuZCByZXR1cm5lZCBlcnJvcgAAAABIVFRQIHJlc3BvbnNlIGNvZGUgc2FpZCBlcnJvcgAAAEZhaWxlZCB3cml0aW5nIHJlY2VpdmVkIGRhdGEgdG8gZGlzay9hcHBsaWNhdGlvbgAAAABVcGxvYWQgZmFpbGVkIChhdCBzdGFydC9iZWZvcmUgaXQgdG9vayBvZmYpAEZhaWxlZCB0byBvcGVuL3JlYWQgbG9jYWwgZGF0YSBmcm9tIGZpbGUvYXBwbGljYXRpb24AAAAAT3V0IG9mIG1lbW9yeQAAAFRpbWVvdXQgd2FzIHJlYWNoZWQARlRQOiBjb21tYW5kIFBPUlQgZmFpbGVkAAAAAEZUUDogY29tbWFuZCBSRVNUIGZhaWxlZAAAAABSZXF1ZXN0ZWQgcmFuZ2Ugd2FzIG5vdCBkZWxpdmVyZWQgYnkgdGhlIHNlcnZlcgBJbnRlcm5hbCBwcm9ibGVtIHNldHRpbmcgdXAgdGhlIFBPU1QAAAAAU1NMIGNvbm5lY3QgZXJyb3IAAABDb3VsZG4ndCByZXN1bWUgZG93bmxvYWQAAAAAQ291bGRuJ3QgcmVhZCBhIGZpbGU6Ly8gZmlsZQAAAABMREFQOiBjYW5ub3QgYmluZAAAAExEQVA6IHNlYXJjaCBmYWlsZWQAQSByZXF1aXJlZCBmdW5jdGlvbiBpbiB0aGUgbGlicmFyeSB3YXMgbm90IGZvdW5kAAAAAE9wZXJhdGlvbiB3YXMgYWJvcnRlZCBieSBhbiBhcHBsaWNhdGlvbiBjYWxsYmFjawAAAABBIGxpYmN1cmwgZnVuY3Rpb24gd2FzIGdpdmVuIGEgYmFkIGFyZ3VtZW50AEZhaWxlZCBiaW5kaW5nIGxvY2FsIGNvbm5lY3Rpb24gZW5kAE51bWJlciBvZiByZWRpcmVjdHMgaGl0IG1heGltdW0gYW1vdW50AABBbiB1bmtub3duIG9wdGlvbiB3YXMgcGFzc2VkIGluIHRvIGxpYmN1cmwAAE1hbGZvcm1lZCB0ZWxuZXQgb3B0aW9uAFNTTCBwZWVyIGNlcnRpZmljYXRlIG9yIFNTSCByZW1vdGUga2V5IHdhcyBub3QgT0sAAABTZXJ2ZXIgcmV0dXJuZWQgbm90aGluZyAobm8gaGVhZGVycywgbm8gZGF0YSkAAABTU0wgY3J5cHRvIGVuZ2luZSBub3QgZm91bmQAQ2FuIG5vdCBzZXQgU1NMIGNyeXB0byBlbmdpbmUgYXMgZGVmYXVsdAAAAABGYWlsZWQgdG8gaW5pdGlhbGlzZSBTU0wgY3J5cHRvIGVuZ2luZQAARmFpbGVkIHNlbmRpbmcgZGF0YSB0byB0aGUgcGVlcgBGYWlsdXJlIHdoZW4gcmVjZWl2aW5nIGRhdGEgZnJvbSB0aGUgcGVlcgAAAFByb2JsZW0gd2l0aCB0aGUgbG9jYWwgU1NMIGNlcnRpZmljYXRlAABDb3VsZG4ndCB1c2Ugc3BlY2lmaWVkIFNTTCBjaXBoZXIAAAAAAAAAUGVlciBjZXJ0aWZpY2F0ZSBjYW5ub3QgYmUgYXV0aGVudGljYXRlZCB3aXRoIGdpdmVuIENBIGNlcnRpZmljYXRlcwBQcm9ibGVtIHdpdGggdGhlIFNTTCBDQSBjZXJ0IChwYXRoPyBhY2Nlc3MgcmlnaHRzPykAVW5yZWNvZ25pemVkIG9yIGJhZCBIVFRQIENvbnRlbnQgb3IgVHJhbnNmZXItRW5jb2RpbmcAAABJbnZhbGlkIExEQVAgVVJMAAAAAE1heGltdW0gZmlsZSBzaXplIGV4Y2VlZGVkAABSZXF1ZXN0ZWQgU1NMIGxldmVsIGZhaWxlZAAARmFpbGVkIHRvIHNodXQgZG93biB0aGUgU1NMIGNvbm5lY3Rpb24AAEZhaWxlZCB0byBsb2FkIENSTCBmaWxlIChwYXRoPyBhY2Nlc3MgcmlnaHRzPywgZm9ybWF0PykASXNzdWVyIGNoZWNrIGFnYWluc3QgcGVlciBjZXJ0aWZpY2F0ZSBmYWlsZWQAAAAAU2VuZCBmYWlsZWQgc2luY2UgcmV3aW5kaW5nIG9mIHRoZSBkYXRhIHN0cmVhbSBmYWlsZWQAAABMb2dpbiBkZW5pZWQAAAAAVEZUUDogRmlsZSBOb3QgRm91bmQAAAAAVEZUUDogQWNjZXNzIFZpb2xhdGlvbgAARGlzayBmdWxsIG9yIGFsbG9jYXRpb24gZXhjZWVkZWQAAAAAVEZUUDogSWxsZWdhbCBvcGVyYXRpb24AVEZUUDogVW5rbm93biB0cmFuc2ZlciBJRAAAAFJlbW90ZSBmaWxlIGFscmVhZHkgZXhpc3RzAABURlRQOiBObyBzdWNoIHVzZXIAAENvbnZlcnNpb24gZmFpbGVkAAAAQ2FsbGVyIG11c3QgcmVnaXN0ZXIgQ1VSTE9QVF9DT05WXyBjYWxsYmFjayBvcHRpb25zAFJlbW90ZSBmaWxlIG5vdCBmb3VuZAAAAEVycm9yIGluIHRoZSBTU0ggbGF5ZXIAAFNvY2tldCBub3QgcmVhZHkgZm9yIHNlbmQvcmVjdgAAUlRTUCBDU2VxIG1pc21hdGNoIG9yIGludmFsaWQgQ1NlcQAAUlRTUCBzZXNzaW9uIGVycm9yAABVbmFibGUgdG8gcGFyc2UgRlRQIGZpbGUgbGlzdAAAAENodW5rIGNhbGxiYWNrIGZhaWxlZAAAAFRoZSBtYXggY29ubmVjdGlvbiBsaW1pdCBpcyByZWFjaGVkAFNTTCBwdWJsaWMga2V5IGRvZXMgbm90IG1hdGNoIHBpbm5lZCBwdWJsaWMga2V5AFNTTCBzZXJ2ZXIgY2VydGlmaWNhdGUgc3RhdHVzIHZlcmlmaWNhdGlvbiBGQUlMRUQAAABTdHJlYW0gZXJyb3IgaW4gdGhlIEhUVFAvMiBmcmFtaW5nIGxheWVyAAAAAFVua25vd24gZXJyb3IAAABDYWxsIGludGVycnVwdGVkAAAAAEJhZCBmaWxlAAAAAEJhZCBhY2Nlc3MAAEJhZCBhcmd1bWVudAAAAABJbnZhbGlkIGFyZ3VtZW50cwAAAE91dCBvZiBmaWxlIGRlc2NyaXB0b3JzAENhbGwgd291bGQgYmxvY2sAAAAAQmxvY2tpbmcgY2FsbCBpbiBwcm9ncmVzcwAAAERlc2NyaXB0b3IgaXMgbm90IGEgc29ja2V0AABOZWVkIGRlc3RpbmF0aW9uIGFkZHJlc3MAAAAAQmFkIG1lc3NhZ2Ugc2l6ZQAAAABCYWQgcHJvdG9jb2wAAAAAUHJvdG9jb2wgb3B0aW9uIGlzIHVuc3VwcG9ydGVkAABQcm90b2NvbCBpcyB1bnN1cHBvcnRlZABTb2NrZXQgaXMgdW5zdXBwb3J0ZWQAAABPcGVyYXRpb24gbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkAAAAAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAAAAQWRkcmVzcyBhbHJlYWR5IGluIHVzZQAAQWRkcmVzcyBub3QgYXZhaWxhYmxlAAAATmV0d29yayBkb3duAAAAAE5ldHdvcmsgdW5yZWFjaGFibGUATmV0d29yayBoYXMgYmVlbiByZXNldAAAQ29ubmVjdGlvbiB3YXMgYWJvcnRlZAAAQ29ubmVjdGlvbiB3YXMgcmVzZXQAAAAATm8gYnVmZmVyIHNwYWNlAFNvY2tldCBpcyBhbHJlYWR5IGNvbm5lY3RlZABTb2NrZXQgaXMgbm90IGNvbm5lY3RlZABTb2NrZXQgaGFzIGJlZW4gc2h1dCBkb3duAAAAVG9vIG1hbnkgcmVmZXJlbmNlcwBUaW1lZCBvdXQAAABDb25uZWN0aW9uIHJlZnVzZWQAAExvb3A/PwAATmFtZSB0b28gbG9uZwAAAEhvc3QgZG93bgAAAEhvc3QgdW5yZWFjaGFibGUAAAAATm90IGVtcHR5AAAAUHJvY2VzcyBsaW1pdCByZWFjaGVkAAAAVG9vIG1hbnkgdXNlcnMAAEJhZCBxdW90YQAAAFNvbWV0aGluZyBpcyBzdGFsZQAAUmVtb3RlIGVycm9yAAAAAERpc2Nvbm5lY3RlZAAAAABXaW5zb2NrIGxpYnJhcnkgaXMgbm90IHJlYWR5AAAAAFdpbnNvY2sgbGlicmFyeSBub3QgaW5pdGlhbGlzZWQAV2luc29jayB2ZXJzaW9uIG5vdCBzdXBwb3J0ZWQAAABIb3N0IG5vdCBmb3VuZAAASG9zdCBub3QgZm91bmQsIHRyeSBhZ2FpbgAAAFVucmVjb3ZlcmFibGUgZXJyb3IgaW4gY2FsbCB0byBuYW1lc2VydmVyAAAATm8gZGF0YSByZWNvcmQgb2YgcmVxdWVzdGVkIHR5cGUAAAAAVW5rbm93biBlcnJvciAlZCAoJSN4KQAAQ1JZUFRfRV9SRVZPS0VEAFNFQ19FX0FMR09SSVRITV9NSVNNQVRDSAAAAABTRUNfRV9CQURfQklORElOR1MAAFNFQ19FX0JBRF9QS0dJRABTRUNfRV9CVUZGRVJfVE9PX1NNQUxMAABTRUNfRV9DQU5OT1RfSU5TVEFMTAAAAABTRUNfRV9DQU5OT1RfUEFDSwAAAFNFQ19FX0NFUlRfRVhQSVJFRAAAU0VDX0VfQ0VSVF9VTktOT1dOAABTRUNfRV9DRVJUX1dST05HX1VTQUdFAABTRUNfRV9DT05URVhUX0VYUElSRUQAAABTRUNfRV9DUk9TU1JFQUxNX0RFTEVHQVRJT05fRkFJTFVSRQBTRUNfRV9DUllQVE9fU1lTVEVNX0lOVkFMSUQAU0VDX0VfREVDUllQVF9GQUlMVVJFAAAAU0VDX0VfREVMRUdBVElPTl9QT0xJQ1kAU0VDX0VfREVMRUdBVElPTl9SRVFVSVJFRAAAAFNFQ19FX0RPV05HUkFERV9ERVRFQ1RFRAAAAABTRUNfRV9FTkNSWVBUX0ZBSUxVUkUAAABTRUNfRV9JTExFR0FMX01FU1NBR0UAAABTRUNfRV9JTkNPTVBMRVRFX0NSRURFTlRJQUxTAAAAAFNFQ19FX0lOQ09NUExFVEVfTUVTU0FHRQAAAABTRUNfRV9JTlNVRkZJQ0lFTlRfTUVNT1JZAAAAU0VDX0VfSU5URVJOQUxfRVJST1IAAAAAU0VDX0VfSU5WQUxJRF9IQU5ETEUAAAAAU0VDX0VfSU5WQUxJRF9QQVJBTUVURVIAU0VDX0VfSU5WQUxJRF9UT0tFTgBTRUNfRV9JU1NVSU5HX0NBX1VOVFJVU1RFRAAAU0VDX0VfSVNTVUlOR19DQV9VTlRSVVNURURfS0RDAABTRUNfRV9LRENfQ0VSVF9FWFBJUkVEAABTRUNfRV9LRENfQ0VSVF9SRVZPS0VEAABTRUNfRV9LRENfSU5WQUxJRF9SRVFVRVNUAAAAU0VDX0VfS0RDX1VOQUJMRV9UT19SRUZFUgAAAFNFQ19FX0tEQ19VTktOT1dOX0VUWVBFAFNFQ19FX0xPR09OX0RFTklFRAAAU0VDX0VfTUFYX1JFRkVSUkFMU19FWENFRURFRAAAAABTRUNfRV9NRVNTQUdFX0FMVEVSRUQAAABTRUNfRV9NVUxUSVBMRV9BQ0NPVU5UUwBTRUNfRV9NVVNUX0JFX0tEQwAAAFNFQ19FX05PVF9PV05FUgBTRUNfRV9OT19BVVRIRU5USUNBVElOR19BVVRIT1JJVFkAAABTRUNfRV9OT19DUkVERU5USUFMUwAAAABTRUNfRV9OT19JTVBFUlNPTkFUSU9OAABTRUNfRV9OT19JUF9BRERSRVNTRVMAAABTRUNfRV9OT19LRVJCX0tFWQAAAFNFQ19FX05PX1BBX0RBVEEAAAAAU0VDX0VfTk9fUzRVX1BST1RfU1VQUE9SVAAAAFNFQ19FX05PX1RHVF9SRVBMWQAAU0VDX0VfT1VUX09GX1NFUVVFTkNFAAAAU0VDX0VfUEtJTklUX0NMSUVOVF9GQUlMVVJFAFNFQ19FX1BLSU5JVF9OQU1FX01JU01BVENIAABTRUNfRV9QT0xJQ1lfTkxUTV9PTkxZAABTRUNfRV9RT1BfTk9UX1NVUFBPUlRFRABTRUNfRV9SRVZPQ0FUSU9OX09GRkxJTkVfQwAAU0VDX0VfUkVWT0NBVElPTl9PRkZMSU5FX0tEQwAAAABTRUNfRV9TRUNQS0dfTk9UX0ZPVU5EAABTRUNfRV9TRUNVUklUWV9RT1NfRkFJTEVEAAAAU0VDX0VfU0hVVERPV05fSU5fUFJPR1JFU1MAAFNFQ19FX1NNQVJUQ0FSRF9DRVJUX0VYUElSRUQAAAAAU0VDX0VfU01BUlRDQVJEX0NFUlRfUkVWT0tFRAAAAABTRUNfRV9TTUFSVENBUkRfTE9HT05fUkVRVUlSRUQAAFNFQ19FX1NUUk9OR19DUllQVE9fTk9UX1NVUFBPUlRFRAAAAFNFQ19FX1RBUkdFVF9VTktOT1dOAAAAAFNFQ19FX1RJTUVfU0tFVwBTRUNfRV9UT09fTUFOWV9QUklOQ0lQQUxTAAAAU0VDX0VfVU5GSU5JU0hFRF9DT05URVhUX0RFTEVURUQAAAAAU0VDX0VfVU5LTk9XTl9DUkVERU5USUFMUwAAAFNFQ19FX1VOU1VQUE9SVEVEX0ZVTkNUSU9OAABTRUNfRV9VTlNVUFBPUlRFRF9QUkVBVVRIAAAAU0VDX0VfVU5UUlVTVEVEX1JPT1QAAAAAU0VDX0VfV1JPTkdfQ1JFREVOVElBTF9IQU5ETEUAAABTRUNfRV9XUk9OR19QUklOQ0lQQUwAAABTRUNfSV9DT01QTEVURV9BTkRfQ09OVElOVUUAU0VDX0lfQ09NUExFVEVfTkVFREVEAAAAU0VDX0lfQ09OVEVYVF9FWFBJUkVEAAAAU0VDX0lfQ09OVElOVUVfTkVFREVEAAAAU0VDX0lfSU5DT01QTEVURV9DUkVERU5USUFMUwAAAABTRUNfSV9MT0NBTF9MT0dPTgAAAFNFQ19JX05PX0xTQV9DT05URVhUAAAAAFNFQ19JX1JFTkVHT1RJQVRFAAAAU0VDX0lfU0lHTkFUVVJFX05FRURFRAAAAAAAAFNFQ19FX0lMTEVHQUxfTUVTU0FHRSAoMHglMDhYKSAtIFRoaXMgZXJyb3IgdXN1YWxseSBvY2N1cnMgd2hlbiBhIGZhdGFsIFNTTC9UTFMgYWxlcnQgaXMgcmVjZWl2ZWQgKGUuZy4gaGFuZHNoYWtlIGZhaWxlZCkuIE1vcmUgZGV0YWlsIG1heSBiZSBhdmFpbGFibGUgaW4gdGhlIFdpbmRvd3MgU3lzdGVtIGV2ZW50IGxvZy4AAAAAJXMgKDB4JTA4WCkAJXMgLSAlcwBDb25uZWN0aW9uIGNhY2hlIGlzIGZ1bGwsIGNsb3NpbmcgdGhlIG9sZGVzdCBvbmUuCgAAQ29ubmVjdGlvbiAjJWxkIHRvIGhvc3QgJXMgbGVmdCBpbnRhY3QKAFJlLXVzZWQgY29ubmVjdGlvbiBzZWVtcyBkZWFkLCBnZXQgYSBuZXcgb25lCgAAAFBpcGUgYnJva2U6IGhhbmRsZSAlcCwgdXJsID0gJXMKAAAAAEluIHN0YXRlICVkIHdpdGggbm8gZWFzeV9jb25uLCBiYWlsIG91dCEKAAAAUmVzb2x2aW5nIHRpbWVkIG91dCBhZnRlciAlbGQgbWlsbGlzZWNvbmRzAABDb25uZWN0aW9uIHRpbWVkIG91dCBhZnRlciAlbGQgbWlsbGlzZWNvbmRzAAAAAABPcGVyYXRpb24gdGltZWQgb3V0IGFmdGVyICVsZCBtaWxsaXNlY29uZHMgd2l0aCAlSTY0ZCBvdXQgb2YgJUk2NGQgYnl0ZXMgcmVjZWl2ZWQAAAAAAAAAT3BlcmF0aW9uIHRpbWVkIG91dCBhZnRlciAlbGQgbWlsbGlzZWNvbmRzIHdpdGggJUk2NGQgYnl0ZXMgcmVjZWl2ZWQAAAAASG9zdG5hbWUgJyVzJyB3YXMgZm91bmQgaW4gRE5TIGNhY2hlCgAAAEludGVybmFsIGVycm9yIHJlbW92aW5nIHNwbGF5IG5vZGUgPSAlZAoAAAAASW50ZXJuYWwgZXJyb3IgY2xlYXJpbmcgc3BsYXkgbm9kZSA9ICVkCgAAAAA8bm8gcHJvdG9jb2w+AAAAaWRlbnRpdHkAAAAAQUxMAFNFU1MAAAAARkxVU0gAAABSRUxPQUQAAFNldC1Db29raWU6AENVUkxPUFRfU1NMX1ZFUklGWUhPU1Qgbm8gbG9uZ2VyIHN1cHBvcnRzIDEgYXMgdmFsdWUhAAAAQ2xvc2luZyBjb25uZWN0aW9uICVsZAoAQ29ubmVjdGlvbiAlbGQgc2VlbXMgdG8gYmUgZGVhZCEKAAAAY2FuIHBpcGVsaW5lAAAAAGNhbiBtdWx0aXBsZXgAAABzZXJpYWxseQAAAABGb3VuZCBidW5kbGUgZm9yIGhvc3QgJXM6ICVwIFslc10KAABTZXJ2ZXIgZG9lc24ndCBzdXBwb3J0IG11bHRpLXVzZSB5ZXQsIHdhaXQKAFNlcnZlciBkb2Vzbid0IHN1cHBvcnQgbXVsdGktdXNlICh5ZXQpCgBDb3VsZCBwaXBlbGluZSwgYnV0IG5vdCBhc2tlZCB0byEKAABDb3VsZCBtdWx0aXBsZXgsIGJ1dCBub3QgYXNrZWQgdG8hCgBDb25uZWN0aW9uICMlbGQgaXMgc3RpbGwgbmFtZSByZXNvbHZpbmcsIGNhbid0IHJldXNlCgAAAENvbm5lY3Rpb24gIyVsZCBpc24ndCBvcGVuIGVub3VnaCwgY2FuJ3QgcmV1c2UKAFBpcGUgaXMgZnVsbCwgc2tpcCAoJXp1KQoAAABQZW5hbGl6ZWQsIHNraXAKAAAAAE11bHRpcGxleGVkIGNvbm5lY3Rpb24gZm91bmQhCgAARm91bmQgcGVuZGluZyBjYW5kaWRhdGUgZm9yIHJldXNlIGFuZCBDVVJMT1BUX1BJUEVXQUlUIGlzIHNldAoAAHVua25vd24gcHJveHl0eXBlIG9wdGlvbiBnaXZlbgAAQ29ubmVjdGVkIHRvICVzICglcykgcG9ydCAlbGQgKCMlbGQpCgAAAElETiBzdXBwb3J0IG5vdCBwcmVzZW50LCBjYW4ndCBwYXJzZSBVbmljb2RlIGRvbWFpbnMKAAAAUHJvdG9jb2wgIiVzIiBub3Qgc3VwcG9ydGVkIG9yIGRpc2FibGVkIGluIGxpYmN1cmwAAElsbGVnYWwgY2hhcmFjdGVycyBmb3VuZCBpbiBVUkwAQmFkIFVSTCwgY29sb24gaXMgZmlyc3QgY2hhcmFjdGVyAAAAZmlsZToAAAAlKjE1W14KLzpdOiVbXgpdAAAAACVbXgpdAAAAQmFkIFVSTABsb2NhbGhvc3QvAAAxMjcuMC4wLjEvAABJbnZhbGlkIGZpbGU6Ly9ob3N0bmFtZS8sIGV4cGVjdGVkIGxvY2FsaG9zdCBvciAxMjcuMC4wLjEgb3Igbm9uZQAAACUxNVteCi86XTolM1svXSVbXgovPyNdJVteCl0AAAAAJVteCi8/I10lW14KXQAAADx1cmw+IG1hbGZvcm1lZABGVFAuAAAAAGZ0cABESUNULgAAAERJQ1QAAAAATERBUC4AAABMREFQAAAAAElNQVAuAAAASU1BUAAAAABTTVRQLgAAAHNtdHAAAAAAUE9QMy4AAABwb3AzAAAAAGVzAABVbndpbGxpbmdseSBhY2NlcHRlZCBpbGxlZ2FsIFVSTCB1c2luZyAlZCBzbGFzaCVzIQoAJXM6Ly8lcyVzAAAAUmVidWlsdCBVUkwgdG86ICVzCgAlMjUAUGxlYXNlIFVSTCBlbmNvZGUgJSUgYXMgJSUyNSwgc2VlIFJGQyA2ODc0LgoAAAAASW52YWxpZCBJUHY2IGFkZHJlc3MgZm9ybWF0CgAAAAAlSTY0dS0AACwgAAAqAAAAX3Byb3h5AABodHRwX3Byb3h5AABhbGxfcHJveHkAAABBTExfUFJPWFkAAAA6Ly8AaHR0cHMAAABzb2NrczVoAHNvY2tzNQAAc29ja3M0YQBzb2NrczQAAHNvY2tzAAAAaHR0cDoAAABVbnN1cHBvcnRlZCBwcm94eSBzY2hlbWUgZm9yICclcycAAABVbnN1cHBvcnRlZCBwcm94eSAnJXMnLCBsaWJjdXJsIGlzIGJ1aWx0IHdpdGhvdXQgdGhlIEhUVFBTLXByb3h5IHN1cHBvcnQuAAAATm8gdmFsaWQgcG9ydCBudW1iZXIgaW4gcHJveHkgc3RyaW5nICglcykKAABbJSo0NVswMTIzNDU2Nzg5YWJjZGVmQUJDREVGOi5dJWMAAAA7dHlwZT0lYwAAAABdAAAAWwAAACVzOi8vJXMlcyVzOiVodSVzJXMlcwAAAFBvcnQgbnVtYmVyIG91dCBvZiByYW5nZQAAAABJbGxlZ2FsIHBvcnQgbnVtYmVyAENvdWxkbid0IGZpbmQgaG9zdCAlcyBpbiB0aGUgX25ldHJjIGZpbGU7IHVzaW5nIGRlZmF1bHRzCgAAAGFub255bW91cwAAAGZ0cEBleGFtcGxlLmNvbQBObyB2YWxpZCBwb3J0IG51bWJlciBpbiBjb25uZWN0IHRvIGhvc3Qgc3RyaW5nICglcykKAAAAACVzJXMlcwAAQ29ubmVjdGluZyB0byBob3N0bmFtZTogJXMKAENvbm5lY3RpbmcgdG8gcG9ydDogJWQKAENvdWxkbid0IHJlc29sdmUgaG9zdCAnJXMnAABDb3VsZG4ndCByZXNvbHZlIHByb3h5ICclcycAJXM6Ly8lcwBtZW1vcnkgc2hvcnRhZ2UAbm9fcHJveHkAAAAATk9fUFJPWFkAAAAARm91bmQgY29ubmVjdGlvbiAlbGQsIHdpdGggcmVxdWVzdHMgaW4gdGhlIHBpcGUgKCV6dSkKAABXZSBjYW4gcmV1c2UsIGJ1dCB3ZSB3YW50IGEgbmV3IGNvbm5lY3Rpb24gYW55d2F5CgAAcHJveHkAAABSZS11c2luZyBleGlzdGluZyBjb25uZWN0aW9uISAoIyVsZCkgd2l0aCAlcyAlcwoAAAAATm8gbW9yZSBjb25uZWN0aW9ucyBhbGxvd2VkIHRvIGhvc3Q6ICVkCgAAAABObyBjb25uZWN0aW9ucyBhdmFpbGFibGUgaW4gY2FjaGUKAABObyBjb25uZWN0aW9ucyBhdmFpbGFibGUuCgAATlRMTSBwaWNrZWQgQU5EIGF1dGggZG9uZSBzZXQsIGNsZWFyIHBpY2tlZCEKAAAATlRMTS1wcm94eSBwaWNrZWQgQU5EIGF1dGggZG9uZSBzZXQsIGNsZWFyIHBpY2tlZCEKAFVzZXItQWdlbnQ6ICVzDQoAAAAAaG9zdCEAAABpZiEARmFpbGVkIHRvIHNldCBTT19LRUVQQUxJVkUgb24gZmQgJWQKAAAAAEZhaWxlZCB0byBzZXQgU0lPX0tFRVBBTElWRV9WQUxTIG9uIGZkICVkOiAlZAoAAENvdWxkbid0IGJpbmQgdG8gaW50ZXJmYWNlICclcycATmFtZSAnJXMnIGZhbWlseSAlaSByZXNvbHZlZCB0byAnJXMnIGZhbWlseSAlaQoAQ291bGRuJ3QgYmluZCB0byAnJXMnAAAAZ2V0c29ja25hbWUoKSBmYWlsZWQgd2l0aCBlcnJubyAlZDogJXMAAExvY2FsIHBvcnQ6ICVodQoAAAAAQmluZCB0byBsb2NhbCBwb3J0ICVodSBmYWlsZWQsIHRyeWluZyBuZXh0CgBiaW5kIGZhaWxlZCB3aXRoIGVycm5vICVkOiAlcwAAAGdldHBlZXJuYW1lKCkgZmFpbGVkIHdpdGggZXJybm8gJWQ6ICVzAABzc3JlbSBpbmV0X250b3AoKSBmYWlsZWQgd2l0aCBlcnJubyAlZDogJXMAAHNzbG9jIGluZXRfbnRvcCgpIGZhaWxlZCB3aXRoIGVycm5vICVkOiAlcwAAQ29ubmVjdGlvbiB0aW1lLW91dABBZnRlciAlbGRtcyBjb25uZWN0IHRpbWUsIG1vdmUgb24hCgBDb25uZWN0aW9uIGZhaWxlZAoAAGNvbm5lY3QgdG8gJXMgcG9ydCAlbGQgZmFpbGVkOiAlcwoAAEZhaWxlZCB0byBjb25uZWN0IHRvICVzIHBvcnQgJWxkOiAlcwAAAABDb3VsZCBub3Qgc2V0IFRDUF9OT0RFTEFZOiAlcwoAAFRDUF9OT0RFTEFZIHNldAoAAAAAc2FfYWRkciBpbmV0X250b3AoKSBmYWlsZWQgd2l0aCBlcnJubyAlZDogJXMAAAAAICBUcnlpbmcgJXMuLi4KAEltbWVkaWF0ZSBjb25uZWN0IGZhaWwgZm9yICVzOiAlcwoAACVzOiVkAAAASG9zdG5hbWUgaW4gRE5TIGNhY2hlIHdhcyBzdGFsZSwgemFwcGVkCgAAAABIb3N0bmFtZSAlcyB3YXMgZm91bmQgaW4gRE5TIGNhY2hlCgAlMjU1W146XTolZABDb3VsZG4ndCBwYXJzZSBDVVJMT1BUX1JFU09MVkUgcmVtb3ZhbCBlbnRyeSAnJXMnIQoAJTI1NVteOl06JWQ6JTI1NXMAAABDb3VsZG4ndCBwYXJzZSBDVVJMT1BUX1JFU09MVkUgZW50cnkgJyVzJyEKAEFkZHJlc3MgaW4gJyVzJyBmb3VuZCBpbGxlZ2FsIQoAQWRkZWQgJXM6JWQ6JXMgdG8gRE5TIGNhY2hlCgAAAAAlZAAAQ291bGQgbm90IHJlc29sdmUgJXM6ICVzAAAAAGluaXRfcmVzb2x2ZV90aHJlYWQoKSBmYWlsZWQgZm9yICVzOyAlcwoAAAAAZ2V0YWRkcmluZm8oKSBmYWlsZWQgZm9yICVzOiVkOyAlcwoAU2VuZCBmYWlsdXJlOiAlcwAAAABSZWN2IGZhaWx1cmU6ICVzAAAAAFdyaXRlIGNhbGxiYWNrIGFza2VkIGZvciBQQVVTRSB3aGVuIG5vdCBzdXBwb3J0ZWQhAABGYWlsZWQgd3JpdGluZyBib2R5ICglenUgIT0gJXp1KQAAAABGYWlsZWQgd3JpdGluZyBoZWFkZXIAAABEYXRhAAAAAEhlYWRlcgAAZnJvbQAAAAB0bwAAWyVzICVzICVzXQAAaTM4Ni1wYy13aW4zMgAAADcuNTMuMS1ERVYAAGxpYmN1cmwvNy41My4xLURFVgAAVW5yZWNvZ25pemVkIHBhcmFtZXRlciB2YWx1ZSBwYXNzZWQgdmlhIENVUkxPUFRfU1NMVkVSU0lPTgAAJXM6AGlnbm9yaW5nIGZhaWxlZCBjb29raWVfaW5pdCBmb3IgJXMKACUxMDIzW147DQo9XSA9JTQ5OTlbXjsNCl0AAABzZWN1cmUAAGh0dHBvbmx5AAAAAGRvbWFpbgAAbG9jYWxob3N0AAAAOgAAAHNraXBwZWQgY29va2llIHdpdGggYmFkIHRhaWxtYXRjaCBkb21haW46ICVzCgAAAHZlcnNpb24AbWF4LWFnZQBleHBpcmVzACNIdHRwT25seV8AAFRSVUUAAAAARkFMU0UAAABSZXBsYWNlZAAAAABBZGRlZAAAACVzIGNvb2tpZSAlcz0iJXMiIGZvciBkb21haW4gJXMsIHBhdGggJXMsIGV4cGlyZSAlSTY0ZAoAbm9uZQAAAABydAAAdW5rbm93bgAlcyVzJXMJJXMJJXMJJXMJJUk2NGQJJXMJJXMAd3QAAAAAAAAjIE5ldHNjYXBlIEhUVFAgQ29va2llIEZpbGUKIyBodHRwczovL2N1cmwuaGF4eC5zZS9kb2NzL2h0dHAtY29va2llcy5odG1sCiMgVGhpcyBmaWxlIHdhcyBnZW5lcmF0ZWQgYnkgbGliY3VybCEgRWRpdCBhdCB5b3VyIG93biByaXNrLgoKAAAAACMKIyBGYXRhbCBsaWJjdXJsIGVycm9yCgAAAABXQVJOSU5HOiBmYWlsZWQgdG8gc2F2ZSBjb29raWVzIGluICVzCgAAcwBlAGMAdQByAGkAdAB5AC4AZABsAGwAAAAAAHMAZQBjAHUAcgAzADIALgBkAGwAbAAAAEluaXRTZWN1cml0eUludGVyZmFjZVcAAAAAAABJMzIASTY0ACVsZAAuJWxkAAAAAAAAAABDb25uOiAlbGQgKCVwKSBSZWNlaXZlIHBpcGUgd2VpZ2h0OiAoJUk2NGQvJXp1KSwgcGVuYWxpemVkOiAlcwoAU2l0ZSAlczolZCBpcyBwaXBlbGluZSBibGFja2xpc3RlZAoAU2VydmVyICVzIGlzIGJsYWNrbGlzdGVkCgAAAG9wZXJhdGlvbiBhYm9ydGVkIGJ5IGNhbGxiYWNrAAAAUmVhZCBjYWxsYmFjayBhc2tlZCBmb3IgUEFVU0Ugd2hlbiBub3Qgc3VwcG9ydGVkIQAAAHJlYWQgZnVuY3Rpb24gcmV0dXJuZWQgZnVubnkgdmFsdWUAACV4JXMAAAAAc2VlayBjYWxsYmFjayByZXR1cm5lZCBlcnJvciAlZAB0aGUgaW9jdGwgY2FsbGJhY2sgcmV0dXJuZWQgJWQKAGlvY3RsIGNhbGxiYWNrIHJldHVybmVkIGVycm9yICVkAAAAAG5lY2Vzc2FyeSBkYXRhIHJld2luZCB3YXNuJ3QgcG9zc2libGUAAABUaGUgcmVxdWVzdGVkIGRvY3VtZW50IGlzIG5vdCBuZXcgZW5vdWdoCgAAAFRoZSByZXF1ZXN0ZWQgZG9jdW1lbnQgaXMgbm90IG9sZCBlbm91Z2gKAAAAUmV3aW5kaW5nIHN0cmVhbSBieSA6ICV6ZCBieXRlcyBvbiB1cmwgJXMgKHplcm8tbGVuZ3RoIGJvZHkpCgAAAAAAAABFeGNlc3MgZm91bmQgaW4gYSBub24gcGlwZWxpbmVkIHJlYWQ6IGV4Y2VzcyA9ICV6ZCB1cmwgPSAlcyAoemVyby1sZW5ndGggYm9keSkKAElnbm9yaW5nIHRoZSByZXNwb25zZS1ib2R5CgBUaGUgZW50aXJlIGRvY3VtZW50IGlzIGFscmVhZHkgZG93bmxvYWRlZAAAAEhUVFAgc2VydmVyIGRvZXNuJ3Qgc2VlbSB0byBzdXBwb3J0IGJ5dGUgcmFuZ2VzLiBDYW5ub3QgcmVzdW1lLgBTaW11bGF0ZSBhIEhUVFAgMzA0IHJlc3BvbnNlIQoAAEZhaWxlZCB3cml0aW5nIGRhdGEAJXMgaW4gY2h1bmtlZC1lbmNvZGluZwAATGVmdG92ZXJzIGFmdGVyIGNodW5raW5nOiAlenUgYnl0ZXMKAAAAAFJld2luZGluZyAlenUgYnl0ZXMKAAAAAAAAAABSZXdpbmRpbmcgc3RyZWFtIGJ5IDogJXp1IGJ5dGVzIG9uIHVybCAlcyAoc2l6ZSA9ICVJNjRkLCBtYXhkb3dubG9hZCA9ICVJNjRkLCBieXRlY291bnQgPSAlSTY0ZCwgbnJlYWQgPSAlemQpCgAARXhjZXNzIGZvdW5kIGluIGEgbm9uIHBpcGVsaW5lZCByZWFkOiBleGNlc3MgPSAlenUsIHNpemUgPSAlSTY0ZCwgbWF4ZG93bmxvYWQgPSAlSTY0ZCwgYnl0ZWNvdW50ID0gJUk2NGQKAAAAd2UgYXJlIGRvbmUgcmVhZGluZyBhbmQgdGhpcyBpcyBzZXQgdG8gY2xvc2UsIHN0b3Agc2VuZAoAAAAARmFpbGVkIHRvIGFsbG9jIHNjcmF0Y2ggYnVmZmVyIQBXZSBhcmUgY29tcGxldGVseSB1cGxvYWRlZCBhbmQgZmluZQoAAAAAc2VsZWN0L3BvbGwgcmV0dXJuZWQgZXJyb3IAAERvbmUgd2FpdGluZyBmb3IgMTAwLWNvbnRpbnVlCgAAdHJhbnNmZXIgY2xvc2VkIHdpdGggJUk2NGQgYnl0ZXMgcmVtYWluaW5nIHRvIHJlYWQAAHRyYW5zZmVyIGNsb3NlZCB3aXRoIG91dHN0YW5kaW5nIHJlYWQgZGF0YSByZW1haW5pbmcAAAAATm8gVVJMIHNldCEAJSUlMDJ4AAAlMTVbXj8mLzpdOi8vJWMATWF4aW11bSAoJWxkKSByZWRpcmVjdHMgZm9sbG93ZWQAAAAASXNzdWUgYW5vdGhlciByZXF1ZXN0IHRvIHRoaXMgVVJMOiAnJXMnCgAAAABTd2l0Y2ggZnJvbSBQT1NUIHRvIEdFVAoAAAAASEVBRAAAAABHRVQARGlzYWJsZXMgUE9TVCwgZ29lcyB3aXRoICVzCgAAAABDb25uZWN0aW9uIGRpZWQsIHJldHJ5aW5nIGEgZnJlc2ggY29ubmVjdAoAACVzOiVsZAAALS06LS06LS0AAAAAJTJJNjRkOiUwMkk2NGQ6JTAySTY0ZAAAJTNJNjRkZCAlMDJJNjRkaAAAAAAlN0k2NGRkACU1STY0ZAAAJTRJNjRkawAlMkk2NGQuJTBJNjRkTQAAJTRJNjRkTQAlMkk2NGQuJTBJNjRkRwAAJTRJNjRkRwAlNEk2NGRUACU0STY0ZFAAQ2FsbGJhY2sgYWJvcnRlZAAAAAAqKiBSZXN1bWluZyB0cmFuc2ZlciBmcm9tIGJ5dGUgcG9zaXRpb24gJUk2NGQKAAAAAAAAICAlJSBUb3RhbCAgICAlJSBSZWNlaXZlZCAlJSBYZmVyZCAgQXZlcmFnZSBTcGVlZCAgIFRpbWUgICAgVGltZSAgICAgVGltZSAgQ3VycmVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEbG9hZCAgVXBsb2FkICAgVG90YWwgICBTcGVudCAgICBMZWZ0ICBTcGVlZAoAAAANJTNJNjRkICVzICAlM0k2NGQgJXMgICUzSTY0ZCAlcyAgJXMgICVzICVzICVzICVzICVzAAAAAEhUVFBTAAAASFRUUAAAAAAlczolcwAAAFByb3h5LQAAJXNBdXRob3JpemF0aW9uOiBCYXNpYyAlcw0KAFJld2luZCBzdHJlYW0gYWZ0ZXIgc2VuZAoAAABOVExNIHNlbmQsIGNsb3NlIGluc3RlYWQgb2Ygc2VuZGluZyAlSTY0ZCBieXRlcwoAAAAAVGhlIHJlcXVlc3RlZCBVUkwgcmV0dXJuZWQgZXJyb3I6ICVkAAAAAE5lZ290aWF0ZQAAAE5UTE0AAAAARGlnZXN0AABQcm94eS1hdXRob3JpemF0aW9uOgAAAABBdXRob3JpemF0aW9uOgAAQmFzaWMAAABQcm94eQAAAFNlcnZlcgAAJXMgYXV0aCB1c2luZyAlcyB3aXRoIHVzZXIgJyVzJwoAAAAAQXV0aGVudGljYXRpb24gcHJvYmxlbS4gSWdub3JpbmcgdGhpcy4KAElnbm9yaW5nIGR1cGxpY2F0ZSBkaWdlc3QgYXV0aCBoZWFkZXIuCgBFbXB0eSByZXBseSBmcm9tIHNlcnZlcgAxLjEAMS4wAEV4cGVjdDoAMTAwLWNvbnRpbnVlAAAAAEV4cGVjdDogMTAwLWNvbnRpbnVlDQoAAEhvc3Q6AAAAQ29udGVudC1UeXBlOgAAAENvbnRlbnQtTGVuZ3RoAABDb25uZWN0aW9uAABUcmFuc2Zlci1FbmNvZGluZzoAACVzDQoAAAAASW52YWxpZCBUSU1FVkFMVUUAAAAlcywgJTAyZCAlcyAlNGQgJTAyZDolMDJkOiUwMmQgR01UAABJZi1Nb2RpZmllZC1TaW5jZTogJXMNCgBJZi1Vbm1vZGlmaWVkLVNpbmNlOiAlcw0KAAAATGFzdC1Nb2RpZmllZDogJXMNCgBQT1NUAAAAAFBVVABVc2VyLUFnZW50OgBSZWZlcmVyOgAAAABSZWZlcmVyOiAlcw0KAAAAQ29va2llOgBBY2NlcHQtRW5jb2Rpbmc6AAAAAEFjY2VwdC1FbmNvZGluZzogJXMNCgAAAGNodW5rZWQAQ2h1bmt5IHVwbG9hZCBpcyBub3Qgc3VwcG9ydGVkIGJ5IEhUVFAgMS4wAABUcmFuc2Zlci1FbmNvZGluZzogY2h1bmtlZA0KAAAAAEhvc3Q6ICVzJXMlcw0KAABIb3N0OiAlcyVzJXM6JWh1DQoAAGZ0cDovLwAAO3R5cGU9AABBY2NlcHQ6AEFjY2VwdDogKi8qDQoAAABDb3VsZCBub3Qgc2VlayBzdHJlYW0AAABDb3VsZCBvbmx5IHJlYWQgJUk2NGQgYnl0ZXMgZnJvbSB0aGUgaW5wdXQAAEZpbGUgYWxyZWFkeSBjb21wbGV0ZWx5IHVwbG9hZGVkAAAAAFJhbmdlOgAAUmFuZ2U6IGJ5dGVzPSVzDQoAAABDb250ZW50LVJhbmdlOgAAQ29udGVudC1SYW5nZTogYnl0ZXMgMC0lSTY0ZC8lSTY0ZA0KAAAAAENvbnRlbnQtUmFuZ2U6IGJ5dGVzICVzJUk2NGQvJUk2NGQNCgAAAABDb250ZW50LVJhbmdlOiBieXRlcyAlcy8lSTY0ZA0KACVzIABmdHA6Ly8lczolc0AlcwAAUHJveHktQ29ubmVjdGlvbjoAAABQcm94eS1Db25uZWN0aW9uOiBLZWVwLUFsaXZlDQoAACVzIEhUVFAvJXMNCiVzJXMlcyVzJXMlcyVzJXMlcyVzJXMAAENvb2tpZTogAAAAADsgAAAlcyVzPSVzAENvbnRlbnQtTGVuZ3RoOiAwDQoNCgAAAEZhaWxlZCBzZW5kaW5nIFBPU1QgcmVxdWVzdABJbnRlcm5hbCBIVFRQIFBPU1QgZXJyb3IhAAAAQ29udGVudC1MZW5ndGg6AENvbnRlbnQtTGVuZ3RoOiAlSTY0ZA0KAENvdWxkIG5vdCBnZXQgQ29udGVudC1UeXBlIGhlYWRlciBsaW5lIQBGYWlsZWQgc2VuZGluZyBQVVQgcmVxdWVzdAAAQ29udGVudC1UeXBlOiBhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQNCgAAACV4DQoAAAAAMA0KDQoAAABGYWlsZWQgc2VuZGluZyBIVFRQIFBPU1QgcmVxdWVzdAAAAABGYWlsZWQgc2VuZGluZyBIVFRQIHJlcXVlc3QAdXBsb2FkIGNvbXBsZXRlbHkgc2VudCBvZmY6ICVJNjRkIG91dCBvZiAlSTY0ZCBieXRlcwoAAABIVFRQLwAAAEF2b2lkZWQgZ2lhbnQgcmVhbGxvYyBmb3IgaGVhZGVyIChtYXggaXMgJWQpIQAAAEZhaWxlZCB0byBhbGxvYyBtZW1vcnkgZm9yIGJpZyBoZWFkZXIhAABUaGUgcmVxdWVzdGVkIFVSTCByZXR1cm5lZCBlcnJvcjogJXMAAAAAUmVjZWl2ZWQgMTAxCgAAAG5vIGNodW5rLCBubyBjbG9zZSwgbm8gc2l6ZS4gQXNzdW1lIGNsb3NlIHRvIHNpZ25hbCBlbmQKAAAAAENvbm5lY3Rpb24gY2xvc3VyZSB3aGlsZSBuZWdvdGlhdGluZyBhdXRoIChIVFRQIDEuMD8pCgAASFRUUCBlcnJvciBiZWZvcmUgZW5kIG9mIHNlbmQsIGtlZXAgc2VuZGluZwoAAAAASFRUUCBlcnJvciBiZWZvcmUgZW5kIG9mIHNlbmQsIHN0b3Agc2VuZGluZwoAAAAAS2VlcCBzZW5kaW5nIGRhdGEgdG8gZ2V0IHRvc3NlZCBhd2F5IQoAACBIVFRQLyVkLiVkICVkAAAgSFRUUC8yICVkAABMeWluZyBzZXJ2ZXIsIG5vdCBzZXJ2aW5nIEhUVFAvMgoAAAAgSFRUUCAlM2QAAAAgUlRTUC8lZC4lZCAlM2QASFRUUCAxLjAsIGFzc3VtZSBjbG9zZSBhZnRlciBib2R5CgAATmVnYXRpdmUgY29udGVudC1sZW5ndGg6ICVJNjRkLCBjbG9zaW5nIGFmdGVyIHRyYW5zZmVyCgBTZXJ2ZXI6AGtlZXAtYWxpdmUAAEhUVFAvMS4wIHByb3h5IGNvbm5lY3Rpb24gc2V0IHRvIGtlZXAgYWxpdmUhCgAAAEhUVFAvMS4xIHByb3h5IGNvbm5lY3Rpb24gc2V0IGNsb3NlIQoAAABDb25uZWN0aW9uOgBIVFRQLzEuMCBjb25uZWN0aW9uIHNldCB0byBrZWVwIGFsaXZlIQoAZGVmbGF0ZQBnemlwAAAAAHgtZ3ppcAAAQ29udGVudC1FbmNvZGluZzoAAABMYXN0LU1vZGlmaWVkOgAAV1dXLUF1dGhlbnRpY2F0ZToAAABQcm94eS1hdXRoZW50aWNhdGU6AExvY2F0aW9uOgAAAAAAAABPcGVyYXRpb24gdG9vIHNsb3cuIExlc3MgdGhhbiAlbGQgYnl0ZXMvc2VjIHRyYW5zZmVycmVkIHRoZSBsYXN0ICVsZCBzZWNvbmRzAAAAACUuKnMAAAAAJXNBdXRob3JpemF0aW9uOiBEaWdlc3QgJXMNCgAAAABhAAAAU09DS1M0JXM6IGNvbm5lY3RpbmcgdG8gSFRUUCBwcm94eSAlcyBwb3J0ICVkCgAAU09DS1M0IGNvbW11bmljYXRpb24gdG8gJXM6JWQKAABTT0NLUzQgY29ubmVjdCB0byBJUHY0ICVzIChsb2NhbGx5IHJlc29sdmVkKQoAAABTT0NLUzQgY29ubmVjdGlvbiB0byAlcyBub3Qgc3VwcG9ydGVkCgAARmFpbGVkIHRvIHJlc29sdmUgIiVzIiBmb3IgU09DS1M0IGNvbm5lY3QuAABUb28gbG9uZyBTT0NLUyBwcm94eSBuYW1lLCBjYW4ndCB1c2UhCgAARmFpbGVkIHRvIHNlbmQgU09DS1M0IGNvbm5lY3QgcmVxdWVzdC4AAEZhaWxlZCB0byByZWNlaXZlIFNPQ0tTNCBjb25uZWN0IHJlcXVlc3QgYWNrLgAAAFNPQ0tTNCByZXBseSBoYXMgd3JvbmcgdmVyc2lvbiwgdmVyc2lvbiBzaG91bGQgYmUgNC4AAAAAU09DS1M0JXMgcmVxdWVzdCBncmFudGVkLgoAAAAAAABDYW4ndCBjb21wbGV0ZSBTT0NLUzQgY29ubmVjdGlvbiB0byAlZC4lZC4lZC4lZDolZC4gKCVkKSwgcmVxdWVzdCByZWplY3RlZCBvciBmYWlsZWQuAAAAQ2FuJ3QgY29tcGxldGUgU09DS1M0IGNvbm5lY3Rpb24gdG8gJWQuJWQuJWQuJWQ6JWQuICglZCksIHJlcXVlc3QgcmVqZWN0ZWQgYmVjYXVzZSBTT0NLUyBzZXJ2ZXIgY2Fubm90IGNvbm5lY3QgdG8gaWRlbnRkIG9uIHRoZSBjbGllbnQuAENhbid0IGNvbXBsZXRlIFNPQ0tTNCBjb25uZWN0aW9uIHRvICVkLiVkLiVkLiVkOiVkLiAoJWQpLCByZXF1ZXN0IHJlamVjdGVkIGJlY2F1c2UgdGhlIGNsaWVudCBwcm9ncmFtIGFuZCBpZGVudGQgcmVwb3J0IGRpZmZlcmVudCB1c2VyLWlkcy4AAAAAAENhbid0IGNvbXBsZXRlIFNPQ0tTNCBjb25uZWN0aW9uIHRvICVkLiVkLiVkLiVkOiVkLiAoJWQpLCBVbmtub3duLgAAU09DS1M1OiBjb25uZWN0aW5nIHRvIEhUVFAgcHJveHkgJXMgcG9ydCAlZAoAAAAAAAAAAFNPQ0tTNTogc2VydmVyIHJlc29sdmluZyBkaXNhYmxlZCBmb3IgaG9zdG5hbWVzIG9mIGxlbmd0aCA+IDI1NSBbYWN0dWFsIGxlbj0lenVdCgAAAFNPQ0tTNTogbm8gY29ubmVjdGlvbiBoZXJlAABTT0NLUzU6IGNvbm5lY3Rpb24gdGltZW91dAAAU09DS1M1OiBlcnJvciBvY2N1cnJlZCBkdXJpbmcgY29ubmVjdGlvbgAAAABTT0NLUzUgY29tbXVuaWNhdGlvbiB0byAlczolZAoAAFVuYWJsZSB0byBzZW5kIGluaXRpYWwgU09DS1M1IHJlcXVlc3QuAABTT0NLUzUgbm90aGluZyB0byByZWFkAABTT0NLUzUgcmVhZCB0aW1lb3V0AFNPQ0tTNSByZWFkIGVycm9yIG9jY3VycmVkAABVbmFibGUgdG8gcmVjZWl2ZSBpbml0aWFsIFNPQ0tTNSByZXNwb25zZS4AAFJlY2VpdmVkIGludmFsaWQgdmVyc2lvbiBpbiBpbml0aWFsIFNPQ0tTNSByZXNwb25zZS4AAAAAVW5hYmxlIHRvIG5lZ290aWF0ZSBTT0NLUzUgR1NTLUFQSSBjb250ZXh0LgBGYWlsZWQgdG8gc2VuZCBTT0NLUzUgc3ViLW5lZ290aWF0aW9uIHJlcXVlc3QuAABVbmFibGUgdG8gcmVjZWl2ZSBTT0NLUzUgc3ViLW5lZ290aWF0aW9uIHJlc3BvbnNlLgAAVXNlciB3YXMgcmVqZWN0ZWQgYnkgdGhlIFNPQ0tTNSBzZXJ2ZXIgKCVkICVkKS4AAAAAAE5vIGF1dGhlbnRpY2F0aW9uIG1ldGhvZCB3YXMgYWNjZXB0YWJsZS4gKEl0IGlzIHF1aXRlIGxpa2VseSB0aGF0IHRoZSBTT0NLUzUgc2VydmVyIHdhbnRlZCBhIHVzZXJuYW1lL3Bhc3N3b3JkLCBzaW5jZSBub25lIHdhcyBzdXBwbGllZCB0byB0aGUgc2VydmVyIG9uIHRoaXMgY29ubmVjdGlvbi4pAABObyBhdXRoZW50aWNhdGlvbiBtZXRob2Qgd2FzIGFjY2VwdGFibGUuAAAAAFVuZG9jdW1lbnRlZCBTT0NLUzUgbW9kZSBhdHRlbXB0ZWQgdG8gYmUgdXNlZCBieSBzZXJ2ZXIuAAAAAFNPQ0tTNSBjb25uZWN0IHRvIElQdjQgJXMgKGxvY2FsbHkgcmVzb2x2ZWQpCgAAAFNPQ0tTNSBjb25uZWN0aW9uIHRvICVzIG5vdCBzdXBwb3J0ZWQKAABGYWlsZWQgdG8gcmVzb2x2ZSAiJXMiIGZvciBTT0NLUzUgY29ubmVjdC4AAFNPQ0tTNSBHU1MtQVBJIHByb3RlY3Rpb24gbm90IHlldCBpbXBsZW1lbnRlZC4AAEZhaWxlZCB0byBzZW5kIFNPQ0tTNSBjb25uZWN0IHJlcXVlc3QuAABGYWlsZWQgdG8gcmVjZWl2ZSBTT0NLUzUgY29ubmVjdCByZXF1ZXN0IGFjay4AAABTT0NLUzUgcmVwbHkgaGFzIHdyb25nIHZlcnNpb24sIHZlcnNpb24gc2hvdWxkIGJlIDUuAAAAAENhbid0IGNvbXBsZXRlIFNPQ0tTNSBjb25uZWN0aW9uIHRvICVkLiVkLiVkLiVkOiVkLiAoJWQpAAAAAENhbid0IGNvbXBsZXRlIFNPQ0tTNSBjb25uZWN0aW9uIHRvICVzOiVkLiAoJWQpAAAAAABDYW4ndCBjb21wbGV0ZSBTT0NLUzUgY29ubmVjdGlvbiB0byAlMDJ4JTAyeDolMDJ4JTAyeDolMDJ4JTAyeDolMDJ4JTAyeDolMDJ4JTAyeDolMDJ4JTAyeDolMDJ4JTAyeDolMDJ4JTAyeDolZC4gKCVkKQAAAABTT0NLUzUgcmVxdWVzdCBncmFudGVkLgoAAAAAX25ldHJjAAAgCQoAbWFjaGluZQBkZWZhdWx0AGxvZ2luAAAARXN0YWJsaXNoIEhUVFAgcHJveHkgdHVubmVsIHRvICVzOiVodQoAACVzOiVodQAAQ09OTkVDVAAlcyVzJXM6JWh1AABIb3N0OiAlcw0KAABDT05ORUNUICVzIEhUVFAvJXMNCiVzJXMlcyVzAAAAAEZhaWxlZCBzZW5kaW5nIENPTk5FQ1QgdG8gcHJveHkAUHJveHkgQ09OTkVDVCBhYm9ydGVkIGR1ZSB0byB0aW1lb3V0AAAAAENPTk5FQ1QgcmVzcG9uc2UgdG9vIGxhcmdlIQBQcm94eSBDT05ORUNUIGFib3J0ZWQgZHVlIHRvIHNlbGVjdC9wb2xsIGVycm9yAABQcm94eSBDT05ORUNUIGNvbm5lY3Rpb24gY2xvc2VkCgAAAABQcm94eSBDT05ORUNUIGFib3J0ZWQAAABjaHVuayByZWFkaW5nIERPTkUKAElnbm9yZSAlSTY0ZCBieXRlcyBvZiByZXNwb25zZS1ib2R5CgAAAABJZ25vcmUgY2h1bmtlZCByZXNwb25zZS1ib2R5CgAAAENvbnRlbnQtTGVuZ3RoOiBpbiAlMDNkIHJlc3BvbnNlAAAAAFRyYW5zZmVyLUVuY29kaW5nOiBpbiAlMDNkIHJlc3BvbnNlAENPTk5FQ1QgcmVzcG9uZGVkIGNodW5rZWQKAABIVFRQLzEuJWQgJWQAAAAAVFVOTkVMX1NUQVRFIHN3aXRjaGVkIHRvOiAlZAoAAABDb25uZWN0IG1lIGFnYWluIHBsZWFzZQoAAAAAUmVjZWl2ZWQgSFRUUCBjb2RlICVkIGZyb20gcHJveHkgYWZ0ZXIgQ09OTkVDVAAAUHJveHkgcmVwbGllZCBPSyB0byBDT05ORUNUIHJlcXVlc3QKAAAAAE5UTE0gYXV0aCByZXN0YXJ0ZWQKAAAAAE5UTE0gaGFuZHNoYWtlIHJlamVjdGVkCgAAAABOVExNIGhhbmRzaGFrZSBmYWlsdXJlIChpbnRlcm5hbCBlcnJvcikKAAAAACVzQXV0aG9yaXphdGlvbjogTlRMTSAlcw0KAAAvLi8ALy4AAC8uLi8AAAAALy4uAExvYWRMaWJyYXJ5RXhXAABcAC8AAAAAAEFkZERsbERpcmVjdG9yeQBcAAAAJWQuJWQuJWQuJWQAc2NoYW5uZWw6IFNTTC9UTFMgY29ubmVjdGlvbiB3aXRoICVzIHBvcnQgJWh1IChzdGVwIDEvMykKAAAAc2NoYW5uZWw6IFdpblNTTCB2ZXJzaW9uIGlzIG9sZCBhbmQgbWF5IG5vdCBiZSBhYmxlIHRvIGNvbm5lY3QgdG8gc29tZSBzZXJ2ZXJzIGR1ZSB0byBsYWNrIG9mIFNOSSwgYWxnb3JpdGhtcywgZXRjLgoAAAAAc2NoYW5uZWw6IHJlLXVzaW5nIGV4aXN0aW5nIGNyZWRlbnRpYWwgaGFuZGxlCgAAc2NoYW5uZWw6IGluY3JlbWVudGVkIGNyZWRlbnRpYWwgaGFuZGxlIHJlZmNvdW50ID0gJWQKAABzY2hhbm5lbDogZGlzYWJsZWQgc2VydmVyIGNlcnRpZmljYXRlIHJldm9jYXRpb24gY2hlY2tzCgAAAABzY2hhbm5lbDogY2hlY2tpbmcgc2VydmVyIGNlcnRpZmljYXRlIHJldm9jYXRpb24KAAAAc2NoYW5uZWw6IHZlcmlmeWhvc3Qgc2V0dGluZyBwcmV2ZW50cyBTY2hhbm5lbCBmcm9tIGNvbXBhcmluZyB0aGUgc3VwcGxpZWQgdGFyZ2V0IG5hbWUgd2l0aCB0aGUgc3ViamVjdCBuYW1lcyBpbiBzZXJ2ZXIgY2VydGlmaWNhdGVzLgoAAFNjaGFubmVsOiBUTFMgMS4zIGlzIG5vdCB5ZXQgc3VwcG9ydGVkAABVbnJlY29nbml6ZWQgcGFyYW1ldGVyIHBhc3NlZCB2aWEgQ1VSTE9QVF9TU0xWRVJTSU9OAAAAAHNjaGFubmVsOiB1bmFibGUgdG8gYWxsb2NhdGUgbWVtb3J5AAAAAABNAGkAYwByAG8AcwBvAGYAdAAgAFUAbgBpAGYAaQBlAGQAIABTAGUAYwB1AHIAaQB0AHkAIABQAHIAbwB0AG8AYwBvAGwAIABQAHIAbwB2AGkAZABlAHIAAAAAAHNjaGFubmVsOiBTTkkgb3IgY2VydGlmaWNhdGUgY2hlY2sgZmFpbGVkOiAlcwAAAHNjaGFubmVsOiBBY3F1aXJlQ3JlZGVudGlhbHNIYW5kbGUgZmFpbGVkOiAlcwAAAHNjaGFubmVsOiB1c2luZyBJUCBhZGRyZXNzLCBTTkkgaXMgbm90IHN1cHBvcnRlZCBieSBPUy4KAAAAAHNjaGFubmVsOiBpbml0aWFsIEluaXRpYWxpemVTZWN1cml0eUNvbnRleHQgZmFpbGVkOiAlcwAAc2NoYW5uZWw6IHNlbmRpbmcgaW5pdGlhbCBoYW5kc2hha2UgZGF0YTogc2VuZGluZyAlbHUgYnl0ZXMuLi4KAHNjaGFubmVsOiBmYWlsZWQgdG8gc2VuZCBpbml0aWFsIGhhbmRzaGFrZSBkYXRhOiBzZW50ICV6ZCBvZiAlbHUgYnl0ZXMAAHNjaGFubmVsOiBzZW50IGluaXRpYWwgaGFuZHNoYWtlIGRhdGE6IHNlbnQgJXpkIGJ5dGVzCgAAc2NoYW5uZWw6IFNTTC9UTFMgY29ubmVjdGlvbiB3aXRoICVzIHBvcnQgJWh1IChzdGVwIDIvMykKAAAAc2NoYW5uZWw6IHVuYWJsZSB0byByZS1hbGxvY2F0ZSBtZW1vcnkAAHNjaGFubmVsOiBmYWlsZWQgdG8gcmVjZWl2ZSBoYW5kc2hha2UsIG5lZWQgbW9yZSBkYXRhCgAAAAAAAHNjaGFubmVsOiBmYWlsZWQgdG8gcmVjZWl2ZSBoYW5kc2hha2UsIFNTTC9UTFMgY29ubmVjdGlvbiBmYWlsZWQAAAAAc2NoYW5uZWw6IGVuY3J5cHRlZCBkYXRhIGJ1ZmZlcjogb2Zmc2V0ICV6dSBsZW5ndGggJXp1CgBzY2hhbm5lbDogcmVjZWl2ZWQgaW5jb21wbGV0ZSBtZXNzYWdlLCBuZWVkIG1vcmUgZGF0YQoAAHNjaGFubmVsOiBhIGNsaWVudCBjZXJ0aWZpY2F0ZSBoYXMgYmVlbiByZXF1ZXN0ZWQKAABzY2hhbm5lbDogc2VuZGluZyBuZXh0IGhhbmRzaGFrZSBkYXRhOiBzZW5kaW5nICVsdSBieXRlcy4uLgoAAAAAc2NoYW5uZWw6IGZhaWxlZCB0byBzZW5kIG5leHQgaGFuZHNoYWtlIGRhdGE6IHNlbnQgJXpkIG9mICVsdSBieXRlcwBzY2hhbm5lbDogbmV4dCBJbml0aWFsaXplU2VjdXJpdHlDb250ZXh0IGZhaWxlZDogJXMAc2NoYW5uZWw6IGVuY3J5cHRlZCBkYXRhIGxlbmd0aDogJWx1CgAAAHNjaGFubmVsOiBTU0wvVExTIGhhbmRzaGFrZSBjb21wbGV0ZQoAAABzY2hhbm5lbDogU1NML1RMUyBjb25uZWN0aW9uIHdpdGggJXMgcG9ydCAlaHUgKHN0ZXAgMy8zKQoAAABzY2hhbm5lbDogZmFpbGVkIHRvIHNldHVwIHNlcXVlbmNlIGRldGVjdGlvbgAAAABzY2hhbm5lbDogZmFpbGVkIHRvIHNldHVwIHJlcGxheSBkZXRlY3Rpb24AAHNjaGFubmVsOiBmYWlsZWQgdG8gc2V0dXAgY29uZmlkZW50aWFsaXR5AAAAc2NoYW5uZWw6IGZhaWxlZCB0byBzZXR1cCBtZW1vcnkgYWxsb2NhdGlvbgBzY2hhbm5lbDogZmFpbGVkIHRvIHNldHVwIHN0cmVhbSBvcmllbnRhdGlvbgAAAABzY2hhbm5lbDogb2xkIGNyZWRlbnRpYWwgaGFuZGxlIGlzIHN0YWxlLCByZW1vdmluZwoAc2NoYW5uZWw6IGZhaWxlZCB0byBzdG9yZSBjcmVkZW50aWFsIGhhbmRsZQBzY2hhbm5lbDogc3RvcmVkIGNyZWRlbnRpYWwgaGFuZGxlIGluIHNlc3Npb24gY2FjaGUKAAAAAHNjaGFubmVsOiBmYWlsZWQgdG8gcmV0cmlldmUgcmVtb3RlIGNlcnQgY29udGV4dAAAAABTU0wvVExTIGNvbm5lY3Rpb24gdGltZW91dAAAc2VsZWN0L3BvbGwgb24gU1NML1RMUyBzb2NrZXQsIGVycm5vOiAlZAAAAABzY2hhbm5lbDogdGltZWQgb3V0IHNlbmRpbmcgZGF0YSAoYnl0ZXMgc2VudDogJXpkKQAAc2VsZWN0L3BvbGwgb24gU1NMIHNvY2tldCwgZXJybm86ICVkAAAAAHNjaGFubmVsOiBjbGllbnQgd2FudHMgdG8gcmVhZCAlenUgYnl0ZXMKAAAAc2NoYW5uZWw6IGVub3VnaCBkZWNyeXB0ZWQgZGF0YSBpcyBhbHJlYWR5IGF2YWlsYWJsZQoAAABzY2hhbm5lbDogYW4gdW5yZWNvdmVyYWJsZSBlcnJvciBvY2N1cnJlZCBpbiBhIHByaW9yIGNhbGwKAABzY2hhbm5lbDogc2VydmVyIGluZGljYXRlZCBzaHV0ZG93biBpbiBhIHByaW9yIGNhbGwKAAAAAHNjaGFubmVsOiBlbmNkYXRhX2J1ZmZlciByZXNpemVkICV6dQoAAABzY2hhbm5lbDogQ3VybF9yZWFkX3BsYWluIHJldHVybmVkIENVUkxFX0FHQUlOCgBzY2hhbm5lbDogQ3VybF9yZWFkX3BsYWluIHJldHVybmVkIENVUkxFX1JFQ1ZfRVJST1IKAAAAAHNjaGFubmVsOiBDdXJsX3JlYWRfcGxhaW4gcmV0dXJuZWQgZXJyb3IgJWQKAAAAAHNjaGFubmVsOiBzZXJ2ZXIgY2xvc2VkIHRoZSBjb25uZWN0aW9uCgBzY2hhbm5lbDogZW5jcnlwdGVkIGRhdGEgZ290ICV6ZAoAAABzY2hhbm5lbDogZGVjcnlwdGVkIGRhdGEgbGVuZ3RoOiAlbHUKAAAAc2NoYW5uZWw6IGRlY3J5cHRlZCBkYXRhIGFkZGVkOiAlenUKAAAAAHNjaGFubmVsOiBkZWNyeXB0ZWQgZGF0YSBjYWNoZWQ6IG9mZnNldCAlenUgbGVuZ3RoICV6dQoAc2NoYW5uZWw6IGVuY3J5cHRlZCBkYXRhIGNhY2hlZDogb2Zmc2V0ICV6dSBsZW5ndGggJXp1CgBzY2hhbm5lbDogcmVtb3RlIHBhcnR5IHJlcXVlc3RzIHJlbmVnb3RpYXRpb24KAABzY2hhbm5lbDogY2FuJ3QgcmVub2dvdGlhdGUsIGFuIGVycm9yIGlzIHBlbmRpbmcKAAAAc2NoYW5uZWw6IGNhbid0IHJlbm9nb3RpYXRlLCBlbmNyeXB0ZWQgZGF0YSBhdmFpbGFibGUKAABzY2hhbm5lbDogcmVuZWdvdGlhdGluZyBTU0wvVExTIGNvbm5lY3Rpb24KAHNjaGFubmVsOiByZW5lZ290aWF0aW9uIGZhaWxlZAoAc2NoYW5uZWw6IFNTTC9UTFMgY29ubmVjdGlvbiByZW5lZ290aWF0ZWQKAABzY2hhbm5lbDogZmFpbGVkIHRvIGRlY3J5cHQgZGF0YSwgbmVlZCBtb3JlIGRhdGEKAAAAc2NoYW5uZWw6IGZhaWxlZCB0byByZWFkIGRhdGEgZnJvbSBzZXJ2ZXI6ICVzCgAAc2NoYW5uZWw6IGRlY3J5cHRlZCBkYXRhIGJ1ZmZlcjogb2Zmc2V0ICV6dSBsZW5ndGggJXp1CgBzY2hhbm5lbDogc2NoYW5uZWxfcmVjdiBjbGVhbnVwCgAAAABzY2hhbm5lbDogc2VydmVyIGNsb3NlZCBhYnJ1cHRseSAobWlzc2luZyBjbG9zZV9ub3RpZnkpCgAAAABzY2hhbm5lbDogZGVjcnlwdGVkIGRhdGEgcmV0dXJuZWQgJXp1CgAAc2NoYW5uZWw6IHNodXR0aW5nIGRvd24gU1NML1RMUyBjb25uZWN0aW9uIHdpdGggJXMgcG9ydCAlaHUKAAAAAHNjaGFubmVsOiBBcHBseUNvbnRyb2xUb2tlbiBmYWlsdXJlOiAlcwBzY2hhbm5lbDogZmFpbGVkIHRvIHNlbmQgY2xvc2UgbXNnOiAlcyAoYnl0ZXMgd3JpdHRlbjogJXpkKQoAAAAAc2NoYW5uZWw6IGNsZWFyIHNlY3VyaXR5IGNvbnRleHQgaGFuZGxlCgAAAABXaW5TU0wAACVjJWM9PQAAJWMlYyVjPQAlYyVjJWMlYwAAAABEZWMATm92AE9jdABTZXAAQXVnAEp1bABKdW4ATWF5AEFwcgBNYXIARmViAEphbgBTdW5kYXkAAFNhdHVyZGF5AAAAAEZyaWRheQAAVGh1cnNkYXkAAAAAV2VkbmVzZGF5AAAAVHVlc2RheQBNb25kYXkAAFN1bgBTYXQARnJpAFRodQBXZWQAVHVlAE1vbgAlMzFbQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5el0AAAAlMDJkOiUwMmQ6JTAyZCVuAAAAACUwMmQ6JTAyZCVuAFRvbyBsb25nIGhleGFkZWNpbWFsIG51bWJlcgBJbGxlZ2FsIG9yIG1pc3NpbmcgaGV4YWRlY2ltYWwgc2VxdWVuY2UATWFsZm9ybWVkIGVuY29kaW5nIGZvdW5kAAAAAEJhZCBjb250ZW50LWVuY29kaW5nIGZvdW5kAABOAGUAZwBvAHQAaQBhAHQAZQAAAFNQTkVHTyBoYW5kc2hha2UgZmFpbHVyZSAoZW1wdHkgY2hhbGxlbmdlIG1lc3NhZ2UpCgAlc0F1dGhvcml6YXRpb246IE5lZ290aWF0ZSAlcw0KAGFwcGxpY2F0aW9uL3htbAAueG1sAAAAAHRleHQvaHRtbAAAAC5odG1sAAAAdGV4dC9wbGFpbgAALnR4dAAAAAAuanBlZwAAAGltYWdlL2pwZWcAAC5qcGcAAAAAaW1hZ2UvZ2lmAAAALmdpZgAAAAA7IGZpbGVuYW1lPSIlcyIAQ29udGVudC1UeXBlOiBtdWx0aXBhcnQvZm9ybS1kYXRhAAAAJXM7IGJvdW5kYXJ5PSVzDQoAAAAtLSVzDQoAAENvbnRlbnQtRGlzcG9zaXRpb246IGZvcm0tZGF0YTsgbmFtZT0iAAAiAAAADQpDb250ZW50LVR5cGU6IG11bHRpcGFydC9taXhlZDsgYm91bmRhcnk9JXMNCgAADQotLSVzDQpDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50AA0KQ29udGVudC1UeXBlOiAlcwAADQolcwAAAAANCg0KAAAAAGNvdWxkbid0IG9wZW4gZmlsZSAiJXMiAA0KLS0lcy0tAAAAAA0KLS0lcy0tDQoAAC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSUwOHglMDh4AAAAAE4AVABMAE0AAAAAAE5UTE0gaGFuZHNoYWtlIGZhaWx1cmUgKGVtcHR5IHR5cGUtMiBtZXNzYWdlKQoAAE5UTE0gaGFuZHNoYWtlIGZhaWx1cmUgKHR5cGUtMyBtZXNzYWdlKTogU3RhdHVzPSV4CgBXAEQAaQBnAGUAcwB0AAAAcmVhbG0AAABzdGFsZQAAAGRpZ2VzdF9zc3BpOiBNYWtlU2lnbmF0dXJlIGZhaWxlZCwgZXJyb3IgMHglMDhseAoAAABTU1BJIGVycm9yOiAlcyBmYWlsZWQ6ICVzAAAAcmNtZAAAAABLAGUAcgBiAGUAcgBvAHMAAAAAAEFjcXVpcmVDcmVkZW50aWFsc0hhbmRsZQAAAABGYWlsZWQgdG8gYWNxdWlyZSBjcmVkZW50aWFscy4AAEluaXRpYWxpemVTZWN1cml0eUNvbnRleHQAAABGYWlsZWQgdG8gaW5pdGlhbGlzZSBzZWN1cml0eSBjb250ZXh0LgAARmFpbGVkIHRvIHNlbmQgU1NQSSBhdXRoZW50aWNhdGlvbiByZXF1ZXN0LgBGYWlsZWQgdG8gc2VuZCBTU1BJIGF1dGhlbnRpY2F0aW9uIHRva2VuLgAAAEZhaWxlZCB0byByZWNlaXZlIFNTUEkgYXV0aGVudGljYXRpb24gcmVzcG9uc2UuAFVzZXIgd2FzIHJlamVjdGVkIGJ5IHRoZSBTT0NLUzUgc2VydmVyICgldSAldSkuAEludmFsaWQgU1NQSSBhdXRoZW50aWNhdGlvbiByZXNwb25zZSB0eXBlICgldSAldSkuAABGYWlsZWQgdG8gcmVjZWl2ZSBTU1BJIGF1dGhlbnRpY2F0aW9uIHRva2VuLgAAAABRdWVyeUNyZWRlbnRpYWxBdHRyaWJ1dGVzAAAARmFpbGVkIHRvIGRldGVybWluZSB1c2VyIG5hbWUuAABTT0NLUzUgc2VydmVyIGF1dGhlbmN0aWNhdGVkIHVzZXIgJXMgd2l0aCBHU1MtQVBJLgoAaW50ZWdyaXR5AAAAY29uZmlkZW50aWFsaXR5AFNPQ0tTNSBzZXJ2ZXIgc3VwcG9ydHMgR1NTLUFQSSAlcyBkYXRhIHByb3RlY3Rpb24uCgBRdWVyeUNvbnRleHRBdHRyaWJ1dGVzAABGYWlsZWQgdG8gcXVlcnkgc2VjdXJpdHkgY29udGV4dCBhdHRyaWJ1dGVzLgAAAABFbmNyeXB0TWVzc2FnZQAARmFpbGVkIHRvIHNlbmQgU1NQSSBlbmNyeXB0aW9uIHJlcXVlc3QuAEZhaWxlZCB0byBzZW5kIFNTUEkgZW5jcnlwdGlvbiB0eXBlLgAAAABGYWlsZWQgdG8gcmVjZWl2ZSBTU1BJIGVuY3J5cHRpb24gcmVzcG9uc2UuAEludmFsaWQgU1NQSSBlbmNyeXB0aW9uIHJlc3BvbnNlIHR5cGUgKCV1ICV1KS4AAEZhaWxlZCB0byByZWNlaXZlIFNTUEkgZW5jcnlwdGlvbiB0eXBlLgBEZWNyeXB0TWVzc2FnZQAASW52YWxpZCBTU1BJIGVuY3J5cHRpb24gcmVzcG9uc2UgbGVuZ3RoICglbHUpLgAAb3V0IEdTUy1BUEkgZGF0YQAAAAAgR1NTLUFQSSBpbnRlZ3JpdHkAACBHU1MtQVBJIGNvbmZpZGVudGlhbGl0eQAAAABTT0NLUzUgYWNjZXNzIHdpdGglcyBwcm90ZWN0aW9uIGdyYW50ZWQuCgAAAHNoYTUxMgAAMi4xNi44NDAuMS4xMDEuMy40LjIuMwAAc2hhMzg0AAAyLjE2Ljg0MC4xLjEwMS4zLjQuMi4yAABzaGEyNTYAADIuMTYuODQwLjEuMTAxLjMuNC4yLjEAAHNoYTIyNAAAMi4xNi44NDAuMS4xMDEuMy40LjIuNAAAYmFzaWNDb25zdHJhaW50cwAAAAAyLjUuMjkuMTkAAABpc3N1ZXJBbHROYW1lAAAAMi41LjI5LjE4AAAAc3ViamVjdEFsdE5hbWUAAHJvbGUAAAAAMi41LjQuNzIAAAAAZW1haWxBZGRyZXNzAAAAADEuMi44NDAuMTEzNTQ5LjEuOS4xAAAAAHBzZXVkb255bQAAADIuNS40LjY1AAAAAGRuUXVhbGlmaWVyADIuNS40LjQ2AAAAAFg1MDBVbmlxdWVJZGVudGlmaWVyAAAAADIuNS40LjQ1AAAAAGdlbmVyYXRpb25RdWFsaWZpZXIAMi41LjQuNDQAAAAAaW5pdGlhbHMAAAAAMi41LjQuNDMAAAAAZ2l2ZW5OYW1lAAAAMi41LjQuNDIAAAAAMi41LjQuNDEAAAAAcG9zdGFsQ29kZQAAMi41LjQuMTcAAAAAMi41LjQuMTMAAAAAdGl0bGUAAAAyLjUuNC4xMgAAAABPVQAAMi41LjQuMTEAAAAATwAAADIuNS40LjEwAAAAAHN0cmVldEFk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YbSQPQAAQFT7Ibk/c3ADLooZYzsAAAAAAABgQwAAAAAAAIA8////////7z8AAAAAAAAAgAAAAAAAAPA/AAAAAAAA8L8FYXRhbjIAAAAAAAAAAhAAHOdIAJjnSAD/vEgAdedIAHXnSAB150gA/7xIAHXnSAD9vEgA/bxIACe9SAD9vEgAmOdIAJjnSAD/vEgAZr1IAEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALi2UgBwklIAAwAAAAAAAAAAAAAAMHYHAHChBwBg3AcAAAAAAAAAAAAAAAAAAAAAAAAAAAD+////AAAAAMz///8AAAAA/v///2/MRgCDzEYAAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAOLORgAAAAAA/v///wAAAADQ////AAAAAP7///8AAAAAUNBGAAAAAAD+////AAAAAND///8AAAAA/v///wAAAACo0kYAAAAAAP7///8AAAAA0P///wAAAAD+////AAAAABDVRgAAAAAA/v///wAAAADA////AAAAAP7///8AAAAAr9ZGAAAAAAD+////AAAAAMz///8AAAAA/v///wAAAABy2EYAAAAAAAAAAAA+2EYA/v///wAAAADU////AAAAAP7///8AAAAAxNhGAAAAAAD+////AAAAAMz///8AAAAA/v///wAAAAAE2kYAAAAAAP7///8AAAAA1P///wAAAAD+////AAAAABHbRgAAAAAA/v///wAAAADU////AAAAAP7///8AAAAACN1GAAAAAAD+////AAAAAND///8AAAAA/v///wAAAAAK3kYAAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAOHeRgAAAAAA/v///wAAAADU////AAAAAP7///8AAAAASOBGAAAAAAD+////AAAAANT///8AAAAA/v///wAAAAA/4UYAAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAEHmRgAAAAAA/v///wAAAADU////AAAAAP7///8AAAAAX+dGAAAAAAD+////AAAAANT///8AAAAA/v///wAAAAAq6UYAAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAFftRgAAAAAA/v///wAAAADU////AAAAAP7///8AAAAAZ+9GAAAAAAD+////AAAAANT///8AAAAA/v///wAAAABv8EYAAAAAAP7///8AAAAA0P///wAAAAD+////AAAAAOIBRwAAAAAA/v///wAAAADU////AAAAAP7///8AAAAAcQtHAAAAAAD+////AAAAAND///8AAAAA/v///wAAAAClF0cAAAAAAP7///8AAAAAxP///wAAAAD+////AAAAAL0ZRwAAAAAA/v///wAAAADQ////AAAAAP7///8AAAAAoB1HAAAAAAD+////AAAAADz///8AAAAA/v///wAAAADHIkcAAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAJIjRwAAAAAA/v///wAAAADU////AAAAAP7///8AAAAA3SRHAAAAAAD+////AAAAANT///8AAAAA/v///wAAAAD4JUcAAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAO4mRwAAAAAA/v///wAAAADY////AAAAAP7///8AAAAAkSdHAAAAAAD+////AAAAAMz///8AAAAA/v///wAAAAAhRUcAAAAAAAAAAADeREcAAAAAAAAAAADwREcAAAAAAP7///8AAAAAwP///wAAAAD+////AAAAAIlKRwAAAAAA/v///wAAAADQ////AAAAAP7///8AAAAA809HAAAAAAD+////AAAAAND///8AAAAA/v///wAAAABTUUcAAAAAAP7///8AAAAA2P///wAAAAD+////AAAAAMlSRwAAAAAA/v///wAAAADU////AAAAAP7///8AAAAAxVNHAAAAAADk////AAAAAHj///8AAAAA/v///wAAAACOWEcAAAAAAP7///8AAAAA1P///wAAAAD+////sGBHAMRgRwAAAAAA/v///wAAAADY////AAAAAP7///8AAAAA3HFHAP7///8AAAAA63FHAP7///8AAAAA2P///wAAAAD+////AAAAAJ5zRwD+////AAAAAKpzRwD+////AAAAAND///8AAAAA/v///wAAAAAOfkcAAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAIh/RwAAAAAA/v///wAAAADQ////AAAAAP7///8AAAAA94pHAAAAAAD+////AAAAAND///8AAAAA/v///wAAAADQi0cAAAAAAP7///8AAAAA0P///wAAAAD+////AAAAAMegRwAAAAAA/v///wAAAADQ////AAAAAP7///8AAAAAuqlHAAAAAAD+////AAAAANT///8AAAAA/v///wAAAAB1rUcAAAAAAP7///8AAAAAzP///wAAAAD+////AAAAAEexRwAAAAAA/v///wAAAADU////AAAAAP7///8AAAAAy7RHAAAAAAD+////AAAAAND///8AAAAA/v///wAAAACGuUcAAAAAAP7///8AAAAAzP///wAAAAD+////AAAAAIPCRwAAAAAA/v///wAAAADU////AAAAAP7///8AAAAAbclHAAAAAAD+////AAAAAMz///8AAAAA/v///wAAAAAT00cAAAAAAP7///8AAAAA1P///wAAAAD+////AAAAABrWRwAAAAAA/v///wAAAADI////AAAAAP7///8AAAAA39dHAAAAAAAAAAAAG9dHAP7///8AAAAAzP///wAAAAD+////AAAAAE3ZRwAAAAAA/v///wAAAADU////AAAAAP7///+V3UcAqd1HAAAAAAD+////AAAAANj///8AAAAA/v///23rRwCJ60cAAAAAAP7///8AAAAA0P///wAAAAD+////AAAAAB30RwAAAAAAAAAAAPLzRwD+////AAAAALT///8AAAAA/v///wAAAADa90cA/v///wAAAADn90cA/v///wAAAAC0////AAAAAP7///8AAAAAXfxHAAAAAAD+////AAAAANj///8AAAAA/v///wAAAAAGAUgAAAAAAP7///8AAAAA1P///wAAAAD+////AAAAAEcBSAAAAAAA/v///wAAAADY////AAAAAP7///+sPEgAsDxIAAAAAAD+////AAAAANj///8AAAAA/v///+s/SAD+P0gAAAAAAOT///8AAAAAeP///wAAAAD+////AAAAAFBXSAAAAAAA/v///wAAAADU////AAAAAP7///8AAAAAdGxIAKSeEgAAAAAAAAAAALyeEgCk8ggAAJwSAAAAAAAAAAAA+J4SAADwCAA0nBIAAAAAAAAAAADsoBIANPAIACycEgAAAAAAAAAAABihEgAs8AgAOJ4SAAAAAAAAAAAAZqESADjyCABInhIAAAAAAAAAAACcoRIASPIIAAAAAAAAAAAAAAAAAAAAAAAAAAAAIqISAA6iEgDGnhIA2p4SAOqeEgD8oRIA6KESANahEgDAoRIAqKESAAAAAAD6oBIAAAAAAJCfEgCinxIAsp8SAMKfEgDWnxIA6p8SAPyfEgASoBIAJKASADCgEgBAoBIAUqASAGKgEgBwoBIAfKASAIqgEgCeoBIAtKASAM6gEgB+nxIAbp8SAGqpEgBaqRIARKkSADKpEgAgqRIACqkSAPCoEgDaqBIAzKgSALCoEgCeqBIAjKgSAHyoEgBsqBIAXqgSAEqoEgA8qBIAKqgSABioEgAMqBIAAqgSAPanEgDipxIA0qcSAL6nEgCqpxIAVp8SAECfEgA0nxIAHJ8SAAafEgB8qRIAjKMSADKiEgBAohIAUqISAGiiEgB6ohIAiKISAJiiEgCiohIAvqISANaiEgDuohIABqMSAA6jEgAeoxIAOqMSAFCjEgBmoxIAdqMSAIypEgCioxIAsKMSAMKjEgDYoxIA5KMSAPCjEgAApBIAEKQSACikEgA2pBIATKQSAGKkEgB6pBIAlKQSAKSkEgC4pBIAzKQSAOCkEgDwpBIABKUSABSlEgAmpRIAQKUSAEylEgBYpRIAaqUSAHylEgCIpRIAlqUSAKilEgC6pRIA0qUSAOqlEgD4pRIAFqYSACamEgA0phIAQqYSAFimEgBophIAhqYSAJKmEgCsphIAxqYSANimEgAApxIAEqcSAB6nEgAspxIAOqcSAESnEgBSpxIAbKcSAIKnEgCOpxIAAAAAACShEgBQoRIANqESAAAAAAATAACAEgAAgJcAAIAFAACAcqESAAQAAIBvAACACQAAgA8AAIAKAACAFQAAgBAAAIACAACAFwAAgHAAAIADAACABwAAgHMAAIB0AACAfqESAI6hEgAGAACAAAAAAKyeEgAAAAAADwBDb0NyZWF0ZUd1aWQAAG9sZTMyLmRsbABtAlJlZ1F1ZXJ5VmFsdWVFeEEAAGACUmVnT3BlbktleUV4QQAwAlJlZ0Nsb3NlS2V5AEFEVkFQSTMyLmRsbAAAZwNNdWx0aUJ5dGVUb1dpZGVDaGFyAE0EU2V0Q3VycmVudERpcmVjdG9yeVcAAHUAQ29weUZpbGVXABEFV2lkZUNoYXJUb011bHRpQnl0ZQC/AUdldEN1cnJlbnREaXJlY3RvcnlXAAC0A1JlYWRDb25zb2xlQQAArAFHZXRDb25zb2xlTW9kZQAAPQRTZXRDb25zb2xlTW9kZQAAZAJHZXRTdGRIYW5kbGUAABoFV3JpdGVDb25zb2xlQQDAAUdldEN1cnJlbnRQcm9jZXNzABgCR2V0TW9kdWxlSGFuZGxlVwAARQJHZXRQcm9jQWRkcmVzcwAA6gFHZXRGaWxlQXR0cmlidXRlc1cAADkBRmluZEZpcnN0RmlsZVcAAC4BRmluZENsb3NlAEUBRmluZE5leHRGaWxlVwBeAUZvcm1hdE1lc3NhZ2VXAAACAkdldExhc3RFcnJvcgAA1gBEZWxldGVGaWxlVwBIA0xvY2FsRnJlZQBgA01vdmVGaWxlRXhXAAMEUmVtb3ZlRGlyZWN0b3J5VwAAFAJHZXRNb2R1bGVGaWxlTmFtZVcAAEYEU2V0Q29uc29sZVRleHRBdHRyaWJ1dGUAsgFHZXRDb25zb2xlU2NyZWVuQnVmZmVySW5mbwAAS0VSTkVMMzIuZGxsAABAAENlcnRGcmVlQ2VydGlmaWNhdGVDb250ZXh0AABDUllQVDMyLmRsbAANAFZlclF1ZXJ5VmFsdWVBAAADAEdldEZpbGVWZXJzaW9uSW5mb1NpemVBAAAAR2V0RmlsZVZlcnNpb25JbmZvQQBWRVJTSU9OLmRsbAA2AFdTQUlvY3RsAACIAGZyZWVhZGRyaW5mbwAAiQBnZXRhZGRyaW5mbwBXUzJfMzIuZGxsAACxAENyeXB0QWNxdWlyZUNvbnRleHRXAADLAENyeXB0UmVsZWFzZUNvbnRleHQAwQBDcnlwdEdlblJhbmRvbQAAxABDcnlwdEdldEhhc2hQYXJhbQCzAENyeXB0Q3JlYXRlSGFzaAC2AENyeXB0RGVzdHJveUhhc2gAAMgAQ3J5cHRIYXNoRGF0YQBiAUZyZWVMaWJyYXJ5AF0BRm9ybWF0TWVzc2FnZUEAABMCR2V0TW9kdWxlRmlsZU5hbWVBAAA9A0xvYWRMaWJyYXJ5RXhBAABfA01vdmVGaWxlRXhBAHMEU2V0TGFzdEVycm9yAAC1BFNsZWVwRXgA4gJJbml0aWFsaXplQ3JpdGljYWxTZWN0aW9uADkDTGVhdmVDcml0aWNhbFNlY3Rpb24AAO4ARW50ZXJDcml0aWNhbFNlY3Rpb24AANEARGVsZXRlQ3JpdGljYWxTZWN0aW9uALIEU2xlZXAAkwJHZXRUaWNrQ291bnQAABwBRXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzQQDkBFZlclNldENvbmRpdGlvbk1hc2sAcAJHZXRTeXN0ZW1EaXJlY3RvcnlXAD8DTG9hZExpYnJhcnlXAADoBFZlcmlmeVZlcnNpb25JbmZvVwAA+QRXYWl0Rm9yU2luZ2xlT2JqZWN0AFIAQ2xvc2VIYW5kbGUAhgFHZXRDb21tYW5kTGluZUEA0wJIZWFwU2V0SW5mb3JtYXRpb24AAM8CSGVhcEZyZWUAAMsCSGVhcEFsbG9jAOoARW5jb2RlUG9pbnRlcgDKAERlY29kZVBvaW50ZXIALQRTZXRDb25zb2xlQ3RybEhhbmRsZXIA0gJIZWFwUmVBbGxvYwBeBFNldEZpbGVBdHRyaWJ1dGVzQQAA5QFHZXRGaWxlQXR0cmlidXRlc0EAACUBRmlsZVRpbWVUb1N5c3RlbVRpbWUAACQBRmlsZVRpbWVUb0xvY2FsRmlsZVRpbWUA0gFHZXREcml2ZVR5cGVBADMBRmluZEZpcnN0RmlsZUV4QQAAfABDcmVhdGVEaXJlY3RvcnlBAAD4AUdldEZ1bGxQYXRoTmFtZUEAANMBR2V0RHJpdmVUeXBlVwA0AUZpbmRGaXJzdEZpbGVFeFcAAFMEU2V0RW5kT2ZGaWxlAABKAkdldFByb2Nlc3NIZWFwAAB5AkdldFN5c3RlbVRpbWVBc0ZpbGVUaW1lABgEUnRsVW53aW5kAMADUmVhZEZpbGUAAKQAQ3JlYXRlUHJvY2Vzc0EAAOgARHVwbGljYXRlSGFuZGxlAF4DTW92ZUZpbGVBANMARGVsZXRlRmlsZUEAlQJHZXRUaW1lRm9ybWF0QQAAxgFHZXREYXRlRm9ybWF0QQAA6wJJbnRlcmxvY2tlZERlY3JlbWVudAAA7wJJbnRlcmxvY2tlZEluY3JlbWVudAAAGQFFeGl0UHJvY2VzcwDsAUdldEZpbGVJbmZvcm1hdGlvbkJ5SGFuZGxlAACNA1BlZWtOYW1lZFBpcGUA8wFHZXRGaWxlVHlwZQAaAUV4aXRUaHJlYWQAAMUBR2V0Q3VycmVudFRocmVhZElkAAC1AENyZWF0ZVRocmVhZAAApQRTZXRVbmhhbmRsZWRFeGNlcHRpb25GaWx0ZXIAJQVXcml0ZUZpbGUAYQFGcmVlRW52aXJvbm1lbnRTdHJpbmdzVwDaAUdldEVudmlyb25tZW50U3RyaW5nc1cAAG8EU2V0SGFuZGxlQ291bnQAAOMCSW5pdGlhbGl6ZUNyaXRpY2FsU2VjdGlvbkFuZFNwaW5Db3VudABjAkdldFN0YXJ0dXBJbmZvVwDFBFRsc0FsbG9jAADHBFRsc0dldFZhbHVlAMgEVGxzU2V0VmFsdWUAxgRUbHNGcmVlAM0CSGVhcENyZWF0ZQAApwNRdWVyeVBlcmZvcm1hbmNlQ291bnRlcgDBAUdldEN1cnJlbnRQcm9jZXNzSWQA1AJIZWFwU2l6ZQAA0wRVbmhhbmRsZWRFeGNlcHRpb25GaWx0ZXIAAAADSXNEZWJ1Z2dlclByZXNlbnQAwARUZXJtaW5hdGVQcm9jZXNzAACaAUdldENvbnNvbGVDUAAAVwFGbHVzaEZpbGVCdWZmZXJzAAByAUdldENQSW5mbwBoAUdldEFDUAAANwJHZXRPRU1DUAAACgNJc1ZhbGlkQ29kZVBhZ2UAZgRTZXRGaWxlUG9pbnRlcgAAiABDcmVhdGVGaWxlQQD7AUdldEZ1bGxQYXRoTmFtZVcAAI8AQ3JlYXRlRmlsZVcAhwRTZXRTdGRIYW5kbGUAAC0DTENNYXBTdHJpbmdXAABkAENvbXBhcmVTdHJpbmdXAACxA1JhaXNlRXhjZXB0aW9uAAAEA0lzUHJvY2Vzc29yRmVhdHVyZVByZXNlbnQAoQBDcmVhdGVQaXBlAADfAUdldEV4aXRDb2RlUHJvY2VzcwAAmAJHZXRUaW1lWm9uZUluZm9ybWF0aW9uAACbAkdldFVzZXJEZWZhdWx0TENJRAAABgJHZXRMb2NhbGVJbmZvVwAABAJHZXRMb2NhbGVJbmZvQQAADQFFbnVtU3lzdGVtTG9jYWxlc0EAAAwDSXNWYWxpZExvY2FsZQBpAkdldFN0cmluZ1R5cGVXAAAkBVdyaXRlQ29uc29sZVcAVgRTZXRFbnZpcm9ubWVudFZhcmlhYmxlQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAODYUgAAAAAA4NhSAAEBAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAWAAAAAgAAAAIAAAADAAAAAgAAAAQAAAAYAAAABQAAAA0AAAAGAAAACQAAAAcAAAAMAAAACAAAAAwAAAAJAAAADAAAAAoAAAAHAAAACwAAAAgAAAAMAAAAFgAAAA0AAAAWAAAADwAAAAIAAAAQAAAADQAAABEAAAASAAAAEgAAAAIAAAAhAAAADQAAADUAAAACAAAAQQAAAA0AAABDAAAAAgAAAFAAAAARAAAAUgAAAA0AAABTAAAADQAAAFcAAAAWAAAAWQAAAAsAAABsAAAADQAAAG0AAAAgAAAAcAAAABwAAAByAAAACQAAAAYAAAAWAAAAgAAAAAoAAACBAAAACgAAAIIAAAAJAAAAgwAAABYAAACEAAAA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2DPcM+Az5DPoM+wz8DP0M/gz/DMANAQ0CDQMNBA0FDQYNBw0IDQkNCg0LDQwNDQ0ODQ8NEA0RDRINEw0UDRUNFg0XDRgNGQ0aDRsNHA0dDR4NHw0gDSENIg0jDSQNJQ0mDScNKA0pDSoNKw0sDS0NLg0vDTANMQ0yDTMNNA01DTYNNw04DTkNOg07DTwNPQ0+DT8NAA1BDUINQw1EDUUNRg1HDUgNSQ1KDUsNTA1NDU4NTw1QDVENUg1TDVQNVQ1WDVcNWA1XDZgNmQ2aDZsNnA2dDZ4Nnw2gDaENog2jDaQNpQ2mDacNqA2pDaoNqw2sDa0Nrg2vDbANsQ2yDbMNtA21DbYNtw24DbkNug27DbwNvQ2+Db8NgA3BDcINww3EDcUNxg3HDcgNyQ3KDcsNzA3NDc4Nzw3QDdEN0g3TDfoN+w38Df0N/g3/DcAOAQ4CDgMOBA4FDgYOBw4IDgkOCg4LDgwODQ4ODg8OEA4RDhIOEw4UDhUOFg4XDhgOGQ4aDhsOHA4dDh4OHw4gDjoOOw48Dj0OPg4/DgAOQQ5CDkMORA5FDkYORw5IDkkOSg5LDkwOQQ6CDoMOhA6FDoYOlA6fDq9Ouk6HDt3O407ozu5O8875Tv7OxE8Jzw9PFM8aTx/PJU8qzzBPNc87TwDPRk9Lz1FPVs9cT2HPdA99j2dPrw/xz/RP/E/AAAA4AQARAAAAFYyjzIpNBc1SzW4Nas24DbqNvE2Ejc1N0A3ZDd8N+o3nDiDPaM9JD5GPms+Bj9RP3A/dD94P3w/1j8AAADwBACgAAAA4DAeMWYxejHwMgkzHjMxM0YzbjPeM+sz8jMHNBQ0hzT+NBs1QTV7NbA1vzXWNfU1KDZSNmk2hDbqNv82DTdQN3g3izeiN7U3zDffN/Y3CTggODM4SjhWOGE4lTifOKY4xTjZOBY6MzqzOgE7GDucO7A7CTyhPL081DwcPTM9wD02Pl4+CD8OPxQ/LD9fP3I/qj/iP+4/AAAAAAUApAAAAA4wMjBJMGowizCsMMEw1jDoMBkxvzHTMTkynDIlM14zmzOhM+gz+DMSNB80qzXaNQk2GDYiNiw2Fzc2N0o3bjeCN4w3wDfxNx84UjgoOUI5STlUOV05iTmkObw5PDpZOoE6kTqzOsM64TrxOj07iTuPO6E7pzu8O9M7DTxmPLk8zTwrPYE9lD2sPcs9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tTTJNNU04TQ4NWI1ajWHNZc1ozWyNWI2ajZ2NtQ24TYNNxU3ODdTNwQ4HDgwOEA4TDhVONk45TjtOPk4dzl/OYc5kzmfOcY56Dk0Ozw7YTtpO8I7yjvWOzQ8QTxtPHU8mDwFPRY9VT1hPYE9kT2dPaY9GT4lPi0+nj6rPrc+8z4iPyo/Mj9nPwDgCABgAAAAljCeMKYwXTFtMXkxhTGTMbIxzTHWMd4xyzJDM0szWzO5M8Uz1TPhM/4zBDQZND40gzSPNA41aTV1NYU1kTWuNbQ1yTXuNTM2Pza6NtA24DZwN8Y3ujgAAADwCABAAAAAuDK8MsAyxDLIMswy0DLcMuAy5DIQNBg0HDQgNCQ0KDQsNDA0NDQ4NDw0QDRENEg0TDRQNFQ0AAAAAAkAOAAAAJwwpDCsMLQwvDDEMMww1DDcMOQw7DD0MPwwBDEMMRQxHDEkMSwxNDE8MUQxODcAAAAQCQC8AAAACDUQNRg1IDUoNTA1ODVANUg1UDVYNWA1aDVwNXg1gDWINZA1mDWgNag1sDW4NcA1yDXQNdg14DXoNfA1+DUANgg2EDYYNiA2KDYwNjg2QDZINlA2WDZgNmg2cDZ4NoA2iDaQNpg2oDaoNrA2uDbANsg20DbYNuA26DbwNvg2ADcINxA3GDcgNyg3MDc4N0A3SDdQN1g3YDdoN3A3eDeAN4g3kDeYN6A3qDewN7g3wDfUONg4ACAJAFQBAACsNrA2tDa4Nrw2wDbENsg2zDbQNtQ22DbcNuA25DboNuw28Db0Nvg2/DYANwQ3CDcMNxA3FDcYNxw3IDckNyg3LDcwNzQ3ODc8N0A3RDdIN0w3UDdUN1g3XDdgN2Q3aDdsN3A3dDd4N3w3gDeEN4g3jDeQN5Q3mDecN6A3pDeoN6w3sDe0N7g3vDfAN8Q3yDfMN9A31DfYN9w34DfkN+g37DfwN/Q3+Df8NwA4BDgIOAw4EDgUOBg4HDggOCQ4KDgsODA4NDhAOEQ4SDhMOFA4VDhYOFw4YDhkOGg4bDhwOHQ4eDh8OIA4hDiIOIw4kDiUOJg4nDigOKQ4qDisOLA4tDi4OLw4wDjEOLw8wDzEPOA85DzoPOw89DwEPSQ9KD0wPTQ9OD08PUQ9SD1QPVQ9/D0APgg+aD5kP2g/bD9wP3Q/eD98P4A/hD+IPwAwCQAQAAAA5DnoOew58DkAQAkAKAAAAFwzYDNkM2gzbDNwM4AzjDOYM6QzsDO8M8gz1DPgM+wzAGAJAHgDAAD4M/wzADQENAg0DDQQNBQ0GDQcNCA0JDQoNCw0MDQ0NDg0PDRANEQ0SDRMNFA0VDRYNFw0YDRkNPQ3+DcQOBQ4GDgcOCA4JDgoOCw4MDg0ODg4PDhAOEQ4SDhMOFA4VDhYOFw4YDhkOGg4bDhwOHQ4eDh8OIA4hDiIOIw4kDiUOJg4nDigOLA4tDi4OLw4wDjEOMg4zDjQONQ42DjcOOA45DjwOPQ4+Dj8OAA5CDkQORg5IDlIOUw5UDlUOVg5XDlgOWQ5aDlsOXA5dDl4OXw5gDmEOYg5jDmQOZQ5mDmcOag5rDmwObg5vDnAOcg5zDnQOdQ52DncOeA55DnoOew58Dn0Ofg5/DkAOgQ6CDoMOhA6FDoYOhw6KDosOjA6NDo4Ojw6QDpEOkg6TDpQOlQ6WDpcOmA6ZDpoOmw6eDp8OoA6hDqIOow6kDqUOsA6xDrIOsw60DrUOtg63DrgOuQ66DrsOvA69Dr4Ovw6ADsEOwg7DDsQOxQ7GDscOyA7JDsoOyw7MDs0Ozg7PDtAO0Q7SDtMO1A7VDtYO1w7YDtkO2g7bDtwO3g7iDuMO5A7lDuYO5w7oDukO6g7rDuwO7Q7uDu8O8A7xDvIO8w70DvUO9g73DvgO+Q76DvsO/A79Dv4O/w7ADwEPAg8DDwYPBw8IDwkPCg8LDwwPDQ8ODw8PEA8RDxIPEw8UDxUPFg8XDxgPGQ8aDxsPHA8dDx4PHw8gDyEPIg8jDyQPJQ8mDycPKA8pDyoPKw8sDy0PLg8vDzAPMQ8yDzMPNA82DzgPOg8+Dz8PAA9BD0IPQw9ED0UPRg9HD0gPSQ9KD0sPUg9TD1QPVQ9WD1cPWA9ZD1oPWw9cD2EPYg9jD2QPZQ9mD2cPaA9pD2oPaw9sD20Pbg9vD3APcQ9yD3MPdA91D3YPdw94D3kPeg97D3wPfQ9+D38PQA+BD4IPgw+ED4UPiA+JD4oPiw+MD40Pjg+PD5APkQ+SD5MPlA+VD5YPlw+YD5kPmg+bD5wPnQ+eD58PoA+hD6IPow+kD6UPpg+nD6gPqQ+qD6sPrA+tD64Prw+wD7EPsg+zD7QPtQ+2D4cPyA/JD8oPyw/MD80Pzg/PD9AP0Q/SD9MP1A/VD9YP1w/YD9kP2g/bD9wP3Q/eD98P4A/hD+IP4w/kD+UP5g/nD+gP6Q/AHAJADwAAADYMNww4DDkMOgw7DDwMPQw+DD8MAAxBDEIMQwxEDEUMRgxHDEgMSQx9DH4MfwxADIEMggyAEARAIQCAAD4MPwwBDEIMRAxFDEcMSAxKDEsMTQxODFAMUQxTDFQMVgxXDFkMWgxcDF0MXwxgDGIMYwxlDGYMaAxpDGsMbAxuDG8McQxyDHQMdQx3DHgMegx7DH0MfgxADIEMgwyEDIYMhwyJDIoMjAyNDI8MkAySDJMMlQyWDJgMmQybDJwMngyfDKEMogykDKUMpwyoDKoMqwytDK4MsAyxDLMMtAy2DLcMuQy6DLwMvQy/DIAMwgzDDMUMxgzIDMkMywzMDM4MzwzRDNIM1AzVDNcM2AzaDNsM3QzeDOAM4QzjDOQM5gznDOkM6gzsDO0M7wzwDPIM8wz1DPYM+Az5DPsM/Az+DP8MwQ0CDQQNBQ0HDQgNCg0LDQ0NDg0QDRENEw0UDRYNFw0ZDRoNHA0dDR8NIA0iDSMNJQ0mDSgNKQ0rDSwNLg0vDTENMg00DTUNNw04DToNOw09DT4NAA1BDUMNRA1GDUcNSQ1KDUwNTQ1PDVANUg1TDVUNVg1YDVkNWw1cDV4NXw1hDWINZA1lDWcNaA1qDWsNbQ1uDXANcQ1zDXQNdg13DXwNfQ1ADYENgg2DDYQNhQ2GDYcNiA2JDYoNiw2MDY0NkA2RDZINkw2UDZUNlg2XDZgNmQ2aDZsNnA2dDZ4Nnw2gDaENog2jDaQNpQ2mDacNqA2pDaoNqw2sDa0Nrg2vDbANsQ2yDbMNtA21DbYNtw24DbkNug27DbwNvQ2+Db8NgA3BDcINww3EDcUNxg3HDcgNyQ3KDcsNzg3PDdIN0w3UDdUN1g3XDdgN2Q3cDd0N3g3fDeAN4Q3iDeMN5A3lDegN6Q3qDesN7g3vDfAN8Q3yDfMN9g33DcA4BEAKAAAADA4NDg4ODw4QDhEOEg4TDhQOFQ4WDhcOGA4ZDhoOGw4ACASABAAAABaMl4yYjJmMgCQEgDUAAAA4DHkMegx7DHwMfQx+DH8MQAyBDIIMgwyEDIUMhgyHDJcMmAypDKoMsgy6DIIMygzSDNoM3QzkDOwM9Az8DMQNDA0UDRwNJA0sDTQNPA0EDUwNVA1cDWQNbA10DXwNRA2MDZQNnA2kDawNrw2yDboNgg3KDdIN2g3iDekN6g3yDfUN/A3/DcYODg4WDh4OJg4uDjYOPg4GDk4OVg5eDmYObg52DnkOQA6HDogOjw6QDpgOmw6iDqUOrA60DrwOgw7EDssOzA7UDtwOwAAALASAHwBAAAIMBAwGDQcNCA0JDQoNCw0MDQ0NDg0PDRINEw0UDRUNFg0XDRgNGQ0aDSANIg0jDSQNJQ0mDScNKA0pDSoNKw0sDS0NLg0vDTANMQ0yDTMNNA01DTYNNw04DTkNOg07DTwNPQ0+DT8NAA1BDUINQw1EDUUNRg1HDUgNSQ1KDUsNTA1NDWwNrQ26DvoPOw88Dz0PPg8/DwAPQQ9CD0MPRA9FD0YPRw9ID0kPSg9LD0wPTQ9OD08PUA9RD1IPUw9UD1UPVg9XD1gPWQ9aD1sPXA9dD14PXw9gD2EPYg9jD2QPaA9pD2oPaw9sD20Pbg9vD3APcQ9yD3MPdA91D3YPdw94D3kPeg97D3wPfQ9+D38PQA+BD4IPgw+ED4UPhg+HD4gPiQ+KD4sPjA+ND44Pjw+QD5EPkg+qD64Psg+2D7oPgw/GD8cPyA/JD8oPyw/MD98P4Q/jD+UP5w/pD+sP7Q/vD/EP8w/1D/cP+Q/7D/0P/w/AAAAwBIAdAEAAAQwDDAUMBwwJDAsMDQwPDBEMEwwVDBcMCAxJDGwMbQxuDG8McAxxDHUMdgx3DHgMeQx6DHsMfAx9DH4MQQ1DDUgNTg1PDVANUQ1SDVMNVA1VDVYNVw1bDVwNYQ1lDWYNZw1oDWkNag1rDWwNbQ1uDW8NcA1xDXINcw10DXUNdg13DXgNeQ16DXsNfA19DX4Nfw1ADYENgg2DDYQNhQ2GDYcNiA2JDYoNiw2MDY0Njg2PDZANkQ2SDZMNlA2VDZYNlw2YDZkNmg2bDZwNnQ2eDZ8NoA2hDaINow2kDaUNpg2nDagNqQ2qDasNrA2tDa4Nrw2wDbENsg2zDbQNtQ22DbcNuA25DboNuw28Db0Nvg2/DYANwQ3CDcMNxA3FDcYNxw3IDckNyg3LDcwNzQ3ODc8N0A3RDdIN0w3UDdUN1g3XDdgN2Q3aDdsN3A3dDd4N3w3gDeEN4g3jDeQN5Q3mDecN6A3pDeoN6w3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=