wao 0.15.0 → 0.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/armem-base.js +13 -20
- package/cjs/armem-web.js +11 -2
- package/cjs/lua/aos2_0_1.js +1 -0
- package/cjs/lua/aos2_0_3.js +1 -0
- package/cjs/lua/sqlite.js +1 -0
- package/esm/armem-base.js +9 -22
- package/esm/armem-web.js +6 -3
- package/esm/lua/aos2_0_1.js +1 -0
- package/esm/lua/aos2_0_3.js +1 -0
- package/esm/lua/sqlite.js +1 -0
- package/package.json +1 -1
- package/cjs/lua/aos1_x.wasm +0 -0
- package/cjs/lua/weavedb-lite.js +0 -1
- package/esm/lua/aos1_x.wasm +0 -0
- package/esm/lua/weavedb-lite.js +0 -1
- /package/cjs/lua/{aos_mainnet.wasm → aos2_0_3.wasm} +0 -0
- /package/esm/lua/{aos_mainnet.wasm → aos2_0_3.wasm} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default "AGFzbQEAAAABwwRUYAF+AX9gAn5+AGAEfn5+fgF/YAN+fn4BfmACfn8AYAF+AGACfn4BfmADfn5+AGACfn4Bf2ABfgF+YAR+fn5+AX5gA35+fgF/YAJ+fwF/YAN+fn8AYAN+f34Bf2ADfn5/AX9gA35/fgF+YAJ+fwF+YAV+fn5+fgBgA35+fwF+YAN+f38AYAAAYAN+f34AYAABfmABfAF8YAR+fn5+AGAFfn5+fn4Bf2ABfwF/YAR/fn9+AX9gBH5+fn8AYAN+f38Bf2ACfHwBfGABfwBgBH9+fn4Bf2AAAX9gBH5+f38AYAN+f38BfmAFfn9/f38AYAR+f39/AGACf34AYAZ+fH9/f38Bf2ADf39+AX9gBH5/fn4BfmAEfn5+fwF/YAV+f39/fwF/YAR+f39/AX9gBH5/fn4Bf2AEfn9/fgBgBH5/fn4AYAJ/fwF/YAJ/fgF/YAJ/fgF+YAN8fH8BfGACfn4BfGADf35+AX9gAAF8YAN/f38Bf2ADf35/AX9gBn5+fn5+fwBgBX5+fn5/AX9gBX5+fn5/AGAEfn5/fgF+YAR+f39+AX5gBn5+fn5/fgF+YAV+f35+fwBgA35/fgF8YAZ+f39/fn4Bf2ACfn8BfGAEfn5/fgBgBX5+fn5+AX5gAnx+AX9gAnx+AXxgAnx/AXxgAX8BfmAHfn5+fn5+fgF/YAJ+fABgA39+fgF+YAN/fn4AYAR/fn5+AX5gBX9+fn5+AX5gBX9+fn5+AX9gAn9/AGAEf35+fwF+YAd/fnx/f39/AX8CrAYfA2VudgppbnZva2VfdmpqAAcDZW52CHN0cmZ0aW1lAAoDZW52BGV4aXQAIANlbnYaX19hc3luY2pzX193ZWF2ZWRyaXZlX29wZW4ACANlbnYaX19hc3luY2pzX193ZWF2ZWRyaXZlX3JlYWQANgNlbnYbX19hc3luY2pzX193ZWF2ZWRyaXZlX2Nsb3NlABsDZW52EV9fc3lzY2FsbF9mY250bDY0ACkDZW52D19fc3lzY2FsbF9pb2N0bAApFndhc2lfc25hcHNob3RfcHJldmlldzEIZmRfY2xvc2UAGxZ3YXNpX3NuYXBzaG90X3ByZXZpZXcxB2ZkX3JlYWQAIRZ3YXNpX3NuYXBzaG90X3ByZXZpZXcxCGZkX3dyaXRlACEDZW52CV9hYm9ydF9qcwAVA2VudhVfZW1zY3JpcHRlbl9tZW1jcHlfanMABwNlbnYTZW1zY3JpcHRlbl9kYXRlX25vdwA3A2VudiBfZW1zY3JpcHRlbl9nZXRfbm93X2lzX21vbm90b25pYwAiA2Vudg5fX3N5c2NhbGxfZHVwMwA4Fndhc2lfc25hcHNob3RfcHJldmlldzERZW52aXJvbl9zaXplc19nZXQACBZ3YXNpX3NuYXBzaG90X3ByZXZpZXcxC2Vudmlyb25fZ2V0AAgWd2FzaV9zbmFwc2hvdF9wcmV2aWV3MQdmZF9zZWVrABwDZW52Cl9ta3RpbWVfanMACQNlbnYNX2xvY2FsdGltZV9qcwABA2VudgpfZ210aW1lX2pzAAEDZW52El9fc3lzY2FsbF91bmxpbmthdAA5A2Vudg9fX3N5c2NhbGxfcm1kaXIAAANlbnYSX19zeXNjYWxsX3JlbmFtZWF0ABwDZW52El9lbXNjcmlwdGVuX3N5c3RlbQAAA2VudhBfX3N5c2NhbGxfb3BlbmF0ABwDZW52FF9fc3lzY2FsbF9yZWFkbGlua2F0ACEDZW52CV90enNldF9qcwAZA2VudhZlbXNjcmlwdGVuX3Jlc2l6ZV9oZWFwAAADZW52GV9lbXNjcmlwdGVuX3Rocm93X2xvbmdqbXAAFQPfBN0EFRsbKgYBAwMBCA8SEgsLCwQHBgUGIwMGGQMJBgYGABATBjo7PCsAAxEBDQMFCAUADQwABAgBCQUFCQYBBQUHAQEBEAcDBAkFBQgHBQQBEQEJJCMOEz0LPgcGBwUZBz8KBQQDBgYHAQkMLAAtFAQUJRQECAsNAQENDQgBAQgHAQ8sAQcuQCYLBQUEFgUPBAENCAEWASMvAQEmJQENHQQLBAQFFCsPDQ0BARoBBwEMAQ0EFAQEDAwMDAweLQZBEAwQEREREQMBAw0BDggMDggUDAcWFgQBAQQvQgEaHgAMBAYkJAsIFg4eBA4MCAUJFi4qEBQEQxEQBgYABwUBBQMLCAMaAwgMCRANAQcKFwoABQAAAAAADgAAAEQAAAMAAAAOAAAAAAAAAAAAAAAAAAAAAAAZAAsARQsAAAAADwAAAAAAAAAAFAAAAAAAACYeAAAAAAAHAAcEAAAAAAAADwAAAA8ADwAAAAAAAAAAAAAAAQAAAAAAAAAADwAAAAAAAgAMAAAAAAMwAAAAAAAAAAAaAAAxAgsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGAAAgATIGAwAJMwADEwMYGB9GNB8DECIXGBgAAAAGAB8LAAQnRw8JAwoACQAYGBALHwABBUgxMycCExERCAZJCQsGBgYAGR0SCTU0BRUnGkoHADAGJSgBAwwJCQUJARIdAgsSBARLBAQdEhISNQUJFxUXFxdMTTJOTxxQUVJTBRUFFSIEBwFwAcwBzAEFBwEFwAyAgAEGIgZ+AUKQ8pYwC38BQQALfgFCAAt+AUIAC38BQQALfgFCAAsH2gQgBm1lbW9yeQIAEV9fd2FzbV9jYWxsX2N0b3JzAB8GaGFuZGxlAPgDGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAARmcmVlANQEBmZmbHVzaACTBARtYWluAP0DBm1hbGxvYwCBBARzYnJrANIECHNldFRocmV3ANwEFWVtc2NyaXB0ZW5fc3RhY2tfaW5pdADpBBllbXNjcmlwdGVuX3N0YWNrX2dldF9mcmVlAOoEGWVtc2NyaXB0ZW5fc3RhY2tfZ2V0X2Jhc2UA6wQYZW1zY3JpcHRlbl9zdGFja19nZXRfZW5kAOwEGV9lbXNjcmlwdGVuX3N0YWNrX3Jlc3RvcmUA5gQXX2Vtc2NyaXB0ZW5fc3RhY2tfYWxsb2MA5wQcZW1zY3JpcHRlbl9zdGFja19nZXRfY3VycmVudADoBAtkeW5DYWxsX2pqagDtBAtkeW5DYWxsX3ZqagDuBApkeW5DYWxsX2lqAO8EDGR5bkNhbGxfampqagDwBA1keW5DYWxsX2pqampqAPEEDGR5bkNhbGxfaWppagDyBA1keW5DYWxsX2lqampqAPMECmR5bkNhbGxfdmkA9AQMZHluQ2FsbF9qamppAPUED2R5bkNhbGxfaWpkaWlpaQD2BBVhc3luY2lmeV9zdGFydF91bndpbmQA9wQUYXN5bmNpZnlfc3RvcF91bndpbmQA+AQVYXN5bmNpZnlfc3RhcnRfcmV3aW5kAPkEFGFzeW5jaWZ5X3N0b3BfcmV3aW5kAPoEEmFzeW5jaWZ5X2dldF9zdGF0ZQD7BAmaAwEAQQELywFZWmzGAccByQHNAfgBlwKf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AkEBIwRBAUYNARogAiEBCyMERQRAIAMtAFQhBSABQQg6ABAgASAFQQNxOgARIAEgAykDWDcDCCADIAFCCHwiBDcDWCAAKQMQIgJByAA2AgggAiAENwMAIAAgACkDEEIQfDcDECABQgA3A0AgASADNwMgIAFCADcDKCABQQA7ARIgAUIANwNgIAEgBDcDWCABQgA3A7ABIAFBAToA1AEgAUIANwPAASABQgE3AswBIAFCADcDSCABQgA3A7gBIAFBADoAFCABIAAoAsgBNgLQASABIAAoArwBIgU2AsQBIAApA6gBIQIgASAFNgLIASABIAI3A7ABIAEgAykDyAFCCH0pAAA3AAALIwRFIAZBAkZyBEAgAEIAQgBCgAUQfiECQQIjBEEBRg0BGiACIQALIwRFBEAgAUEoNgLAASABIAA3A0AgAEEANgL4BCAAQQA2AugEIABBADYC2AQgAEEANgLIBCAAQQA2ArgEIABBADYCqAQgAEEANgKYBCAAQQA2AogEIABBADYC+AMgAEEANgLoAyAAQQA2AtgDIABBADYCyAMgAEEANgK4AyAAQQA2AqgDIABBADYCmAMgAEEANgKIAyAAQQA2AvgCIABBADYC6AIgAEEANgLYAiAAQQA2AsgCIABBADYCuAIgAEEANgKoAiAAQQA2ApgCIABBADYCiAIgAEEANgL4ASAAQQA2AugBIABBADYC2AEgAEEANgLIASAAQQA2ArgBIABBADYCqAEgAEEANgKYASAAQQA2AogBIABBADYCeCAAQQA2AmggAEEANgJYIABBADYCSCAAQQA2AjggAEEANgIoIABBADYCGCABQQA7AaoBIAEgAEKwBHw3AzggAUIANwN4IAFCADcDgAEgASAANwNoIAEgAEIQfDcDGCAAQQA2AgggASABQugAfDcDKCABIABC0AJ8NwNwIAQPCwALIQUjBSkDACAFNgIAIwUjBSkDAEIEfDcDACMFKQMAIgIgADcCACACIAE3AgggAiADNwIQIAIgBDcCGCMFIwUpAwBCIHw3AwBCAAuGBgIEfgN/IwRBAkYEQCMFIwUpAwBCLH03AwAjBSkDACIDKQIAIQAgAykCCCEBIAMpAhAhAiADKAIYIQYgAykCHCEEIAMpAiQhAwsCfyMEQQJGBEAjBSMFKQMAQgR9NwMAIwUpAwAoAgAhBwsjBEUE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CiEDIAQpAwAiACgCCEEWRg0BQogKIAApAwAiAEHX80IgAWutQgSGfEIgfCAALQAKQdjzQiABa0kbIQMLCyMEBH4gAAUgAkIAUgRAIAICfiADKQMAIgAtAAhBBEYEQCAAMQALDAELIAApAxALNwMACyADKQMAQhh8CwshACMERQRAIAAPCwALIQYjBSkDACAGNgIAIwUjBSkDAEIEfDcDACMFKQMAIgQgADcCACAEIAE2AgggBCACNwIMIAQgAzcCFCAEIAU2AhwjBSMFKQMAQiB8NwMAQgALhgICAX4CfyMEIQMgACkDICECAn4gAUEASgRAQogKIAIpAwAgAa1CBIZ8IgIgAiAAKQMQWhsMAQsgAUHZ80JOBEAgACkDECABrEIEhnwMAQsgAUHY80JGBEAgACkDGEJAfQwBC0KICiACKQMAIgIoAghBFkYNABpCiAogAikDACIAQdfzQiABa61CBIZ8QiB8IAAtAApB2PNCIAFrSRsLIQBCACECAkACQAJAAkACQCAAKAIIQT9xQQRrDhEAAwQCBAQEBAQEBAQEBAQEAQQLIAApAwAxAAsPCyAAKQMAKQMQDwsgACkDACkDGA8LIAApAwAQPSEEIwQgA0cEQAALIASsIQILIAIL0wECAX4BfyMEIQMgACkDICECAn4gAUEASgRAQogKIAIpAwAgAa1CBIZ8IgIgAiAAKQMQWhsMAQsgAUHZ80JOBEAgACkDECABrEIEhnwMAQsgAUHY80JGBEAgACkDGEJAfQwBC0KICiACKQMAIgIoAghBFkYNABpCiAogAikDACIAQdfzQiABa61CBIZ8QiB8IAAtAApB2PNCIAFrSRsLIQBCACECAkACQAJAIAAoAghBD3FBAmsOBgECAgICAAILIAApAwBCKHwPCyAAKQMAIQILIAILuAECAX4BfyMEIQMgACkDICECAn4gAUEASgRAQogKIAIpAwAgAa1CBIZ8IgIgAiAAKQMQWhsMAQsgAUHZ80JOBEAgACkDECABrEIEhnwMAQsgAUHY80JGBEAgACkDGEJAfQwBC0KICiACKQMAIgIoAghBFkYNABpCiAogAikDACIAQdfzQiABa61CBIZ8QiB8IAAtAApB2PNCIAFrSRsLIQBCACECIAAoAghByABGBH4gACkDAAVCAAsL8gECAX4BfyMEIQMgACkDICECAn4g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gICAgIDAgIB/VCALUBtFBEAgA0IAUiAKQoCAgICAgMD//wB9IgxCgICAgICAwICAf1YgDEKAgICAgIDAgIB/URsNAQsgBSALQoCAgICAgMD//wBUIAtCgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhBCABIQMMAgsgA1AgCkKAgICAgIDA//8AVCAKQoCAgICAgMD//wBRG0UEQCAEQoCAgICAgCCEIQQMAgsgASALQoCAgICAgMD//wCFhFAEQEKAgICAgIDg//8AIAIgASADhSACIASFQoCAgICAgICAgH+FhFAiBRshBEIAIAEgBRshAwwCCyADIApCgICAgICAwP//AIWEUA0BIAEgC4RQBEAgAyAKhEIAUg0CIAEgA4MhAyACIASDIQQMAgsgAyAKhEIAUg0AIAEhAyACIQQMAQsgAyABIAEgA1QgCiALViAKIAtRGyIHGyELIAQgAiAHGyINQv///////z+DIQogAiAEIAcbIgxCMIinQf//AXEhBiANQjCIp0H//wFxIgVFBEAgCULgAHwgCyAKIAsgCiAKUCIFG3kgBUEGdK18pyIFQQ9rENgEIwQgCEcEQAALIAkpA2ghCiAJKQNgIQtBECAFayEFCyABIAMgBxshAyAMQv///////z+DIQEgBgR+IAEFIAlC0AB8IAMgASADIAEgAVAiBht5IAZBBnStfKciBkEPaxDYBCMEIAhHBEAAC0EQIAZrIQYgCSkDUCEDIAkpA1gLQgOGIANCPYiEQoCAgICAgIAEhCEBIApCA4YgC0I9iIQhDCACIASFIQQCfiADQgOGIgIgBSAGRg0AGiAFIAZrIgZB/wBLBEBCACEBQgEMAQsgCUJAfSACIAFBgAEgBmsQ2AQjBCAIRwRAAAsgCUIwfCACIAEgBhDhBCMEIAhHBEAACyAJKQM4IQEgCSkDMCAJKQNAIAkpA0iEQgBSrYQLIQogDEKAgICAgICABIQhDCALQgOGIQsCQCAEQgBTBEBCACEDQgAhBCAKIAuFIAEgDIWEUA0CIAsgCn0hAiAMIAF9IAogC1atfSIEQv////////8DVg0BIAlCIHwgAiAEIAIgBCAEUCIGG3kgBkEGdK18p0EMayIGENgEIwQgCEcEQAALIAUgBmshBSAJKQMoIQQgCSkDICECDAELIAogC3wiAiAKVK0gASAMfHwiBEKAgICAgICACINQDQAgCkIBgyAEQj+GIAJCAYiEhCECIAVBAWohBSAEQgGIIQQLIA1CgICAgICAgICAf4MhAyAFQf//AU4EQCADQoCAgICAgMD//wCEIQRCACEDDAELQQAhBgJAIAVBAEoEQCAFIQYMAQsgCUIQfCACIARBgAFBASAFayIFaxDYBCMEIAhHBEAACyAJIAIgBCAFEOEEIwQgCEcEQAALIAkpAwAgCSkDECAJKQMYhEIAUq2EIQIgCSkDCCEECyAEQj2GIAJCA4iEIQEgBEIDiEL///////8/gyAGrUIwhoQgA4QhBAJAAkAgAqdBB3EiBUEERwRAIAQgASABIAVBBEutfCIDVq18IQQMAQsgBCABIAEgAUIBg3wiA1atfCEEDAELIAVFDQELCyAAIAM3AwAgACAENwMIIAlC8AB8JAALVgIBfgF/IwQhBQJAIANBwABxBEAgASADQUBqrYYhAkIAIQEMAQsgA0UNACACIAOtIgSGIAFBwAAgA2utiIQhAiABIASGIQELIAAgATcDACAAIAI3AwgL3wECAn8CfiMEIQVBASEEAkAgAEIAUiABQv///////////wCDIgZCgICAgICAwP//AFYgBkKAgICAgIDA//8AURsNACACQgBSIANC////////////AIMiB0KAgICAgIDA//8AViAHQoCAgICAgMD//wBRGw0AIAAgAoQgBiAHhIRQBEBBAA8LIAEgA4NCAFkEQEF/IQQgACACVCABIANTIAEgA1EbDQEgACAChSABIAOFhEIAUg8LQX8hBCAAIAJWIAEgA1UgASADURsNACAAIAKFIAEgA4WEQgBSIQQLIAQLxAECAn8CfiMEIQRBfyEDAkAgAEIAUiABQv///////////wCDIgVCgICAgICAwP//AFYgBUKAgICAgIDA//8AURsNACACQv///////////wCDIgZCgICAgICAwP//AFYgBkKAgICAgIDA//8AUnENACAAIAUgBoSEUARAQQAPCyABIAKDQgBZBEAgASACUiABIAJTcQ0BIAAgASAChYRCAFIPCyAAQgBSIAEgAlUgASACURsNACAAIAEgAoWEQgBSIQMLIAML/xACEH4FfyMEIRkjAELQAn0iBSQAIARC////////P4MhBiACQv///////z+DIQcgAiAEhUKAgICAgICAgIB/gyEIIARCMIinQf//AXEhFwJAAkAgAkIwiKdB//8BcSIYQf//AWtBgoB+TwRAIBdB//8Ba0GBgH5LDQELIAFQIAJC////////////AIMiCUKAgICAgIDA//8AVCAJQoCAgICAgMD//wBRG0UEQCACQoCAgICAgCCEIQgMAgsgA1AgBEL///////////8AgyICQoCAgICAgMD//wBUIAJCgICAgICAwP//AFEbRQRAIARCgICAgICAIIQhCCADIQEMAgsgASAJQoCAgICAgMD//wCFhFAEQCADIAJCgICAgICAwP//AIWEUARAQgAhAUKAgICAgIDg//8AIQgMAwsgCEKAgICAgIDA//8AhCEIQgAhAQwCCyADIAJCgICAgICAwP//AIWEUARAQgAhAQwCCyABIAmEUARAQoCAgICAgOD//wAgCCACIAOEUBshCEIAIQEMAgsgAiADhFAEQCAIQoCAgICAgMD//wCEIQhCACEBDAILIAlC////////P1gEQCAFQsACfCABIAcgASAHIAdQIhUbeSAVQQZ0rXynIhVBD2sQ2AQjBCAZRwRAAAtBECAVayEVIAUpA8gCIQcgBSkDwAIhAQsgAkL///////8/Vg0AIAVCsAJ8IAMgBiADIAYgBlAiFht5IBZBBnStfKciFkEPaxDYBCMEIBlHBEAACyAVIBZqQRBrIRUgBSkDuAIhBiAFKQOwAiEDCyAFQqACfCAGQoCAgICAgMAAhCIOQg+GIANCMYiEIgJCAEKAgICAsOa8gvUAIAJ9IgRCABDjBCMEIBlHBEAACyAFQpACfEIAIAUpA6gCfUIAIARCABDjBCMEIBlHBEAACyAFQoACfCAFKQOYAkIBhiAFKQOQAkI/iIQiBEIAIAJCABDjBCMEIBlHBEAACyAFQvABfCAEQgBCACAFKQOIAn1CABDjBCMEIBlHBEAACyAFQuABfCAFKQP4AUIBhiAFKQPwAUI/iIQiBEIAIAJCABDjBCMEIBlHBEAACyAFQtABfCAEQgBCACAFKQPoAX1CABDjBCMEIBlHBEAACyAFQsABfCAFKQPYAUIBhiAFKQPQAUI/iIQiBEIAIAJCABDjBCMEIBlHBEAACyAFQrABfCAEQgBCACAFKQPIAX1CABDjBCMEIBlHBEAACyAFQqABfCACQgAgBSkDuAFCAYYgBSkDsAFC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IwQhBQJAIANBwABxBEAgAiADQUBqrYghAUIAIQIMAQsgA0UNACACQcAAIANrrYYgASADrSIEiIQhASACIASIIQILIAAgATcDACAAIAI3AwgLgwsCEH4FfyMEIRkjAELgAH0iBSQAIARC////////P4MhCCACIASFQoCAgICAgICAgH+DIQYgAkL///////8/gyIJQiCIIQogBEIwiKdB//8BcSEWAkACQCACQjCIp0H//wFxIhhB//8Ba0GCgH5PBEAgFkH//wFrQYGAfksNAQsgAVAgAkL///////////8AgyIHQoCAgICAgMD//wBUIAdCgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhBgwCCyADUCAEQv///////////wCDIgJCgICAgICAwP//AFQgAkKAgICAgIDA//8AURtFBEAgBEKAgICAgIAghCEGIAMhAQwCCyABIAdCgICAgICAwP//AIWEUARAIAIgA4RQBEBCgICAgICA4P//ACEGQgAhAQwDCyAGQoCAgICAgMD//wCEIQZCACEBDAILIAMgAkKAgICAgIDA//8AhYRQBEAgASAHhCECQgAhASACUARAQoCAgICAgOD//wAhBgwDCyAGQoCAgICAgMD//wCEIQYMAgsgASAHhFAEQEIAIQEMAgsgAiADhFAEQEIAIQEMAgsgB0L///////8/WARAIAVC0AB8IAEgCSABIAkgCVAiFRt5IBVBBnStfKciFUEPaxDYBCMEIBlHBEAAC0EQIBVrIRUgBSkDWCIJQiCIIQogBSkDUCEBCyACQv///////z9WDQAgBUJAfSADIAggAyAIIAhQIhcbeSAXQQZ0rXynIhdBD2sQ2AQjBCAZRwRAAAsgFSAXa0EQaiEVIAUpA0ghCCAFKQNAIQMLIANCD4YiB0KAgP7/D4MiAiABQiCIIgR+IgwgB0IgiCIPIAFC/////w+DIgF+fCILQiCGIg0gASACfnwiByANVK0gAiAJQv////8PgyIJfiIRIAQgD358Ig0gCEIPhiIOIANCMYiEQv////8PgyIDIAF+fCIQIAsgDFStQiCGIAtCIIiEfCILIAIgCkKAgASEIgh+IhIgCSAPfnwiCiAOQiCIQoCAgIAIhCICIAF+fCIMIAMgBH58Ig5CIIZ8IhN8IQEgFiAYaiAVakH//wBrIRUCQCACIAR+IhQgCCAPfnwiBCAUVK0gBCAEIAMgCX58IgRWrXwgAiAIfnwgBCAEIA0gEVStIA0gEFatfHwiBFatfCADIAh+IgMgAiAJfnwiAiADVK1CIIYgAkIgiIR8IAQgAkIghnwiAiAEVK18IAIgAiAMIA5WrSAKIBJUrSAKIAxWrXx8QiCGIA5CIIiEfCICVq18IAIgAiALIBBUrSALIBNWrXx8IgJWrXwiBEKAgICAgIDAAINCAFIEQCAVQQFqIRUMAQsgB0I/iCEDIARCAYYgAkI/iIQhBCACQgGGIAFCP4iEIQIgB0IBhiEHIAMgAUIBhoQhAQsgFUH//wFOBEAgBkKAgICAgIDA//8AhCEGQgAhAQwBCwJ+IBVBAEwEQEEBIBVrIhZB/wBNBEAgBUIwfCAHIAEgFUH/AGoiFRDYBCMEIBlHBEAACyAFQiB8IAIgBCAVENgEIwQgGUcEQAALIAVCEHwgByABIBYQ4QQjBCAZRwRAAAsgBSACIAQgFhDhBCMEIBlHBEAACyAFKQMwIAUpAziEQgBSrSAFKQMgIAUpAxCEhCEHIAUpAyggBSkDGIQhASAFKQMAIQIgBSkDCAwCC0IAIQEMAgsgBEL///////8/gyAVrUIwhoQLIAaEIQYgB1AgAUIAWSABQoCAgICAgICAgH9RG0UEQCAGIAJCAXwiAVCtfCEGDAELIAcgAUKAgICAgICAgIB/hYRCAFIEQCACIQEMAQsgBiACIAJCAYN8IgEgAlStfCEGCyAAIAE3AwAgACAGNwMIIAVC4AB8JAALewIBfgF/IwQhBiAAIAEgBH4gAiADfnwgA0IgiCICIAFCIIgiBH58IANC/////w+DIgMgAUL/////D4MiAX4iBUIgiCADIAR+fCIDQiCIfCABIAJ+IANC/////w+DfCIBQiCIfDcDCCAAIAVC/////w+DIAFCIIaENwMAC1QCAX4BfyMEIQYjAEIQfSIFJAAgBSABIAIgAyAEQoCAgICAgICAgH+FENcEIwQgBkcEQAALIAUpAwAhASAAIAUpAwg3AwggACABNwMAIAVCEHwkAAuBBAIEfgV/IwQhCiMAQiB9IgMkACABQv///////z+DIQICfiABQjCIQv//AYMiBKciBkGB+ABrQf0PTQRAIAJCBIYgAEI8iIQhAiAGQYD4AGutIQQCQCAAQv//////////D4MiAEKBgICAgICAgAhaBEAgAkIBfCECDAELIABCgICAgICAgIAIUg0AIAJCAYMgAnwhAgtCACACIAJC/////////wdWIgYbIQUgBq0gBHwMAQsCQCAAIAKEUA0AIARC//8BUg0AIAJCBIYgAEI8iIRCgICAgICAgASEIQVC/w8MAQsgBkH+hwFLBEBC/w8MAQtCAEGA+ABBgfgAIARQIggbIgkgBmsiB0HwAEoNABogA0IQfCAAIAIgAkKAgICAgIDAAIQgCBsiAkGAASAHaxDYBCMEIApHBEAACyADIAAgAiAHEOEEIwQgCkcEQAALIAMpAwhCBIYgAykDACICQjyIhCEAAkAgBiAJRyADKQMQIAMpAxiEQgBSca0gAkL//////////w+DhCICQoGAgICAgICACFoEQCAAQgF8IQAMAQsgAkKAgICAgICAgAhSDQAgAEIBgyAAfCEACyAAQoCAgICAgIAIhSAAIABC/////////wdWIgYbIQUgBq0LIQQgA0IgfCQAIAFCgICAgICAgICAf4MgBEI0hoQgBYS/CwwBAX8jBCEBIAAkAAsWAQF/IwQhASMAIAB9QnCDIgAkACAACwoBAX8jBCEAIwALFQEBfyMEIQBCkPKWMCQDQpDyFiQCCw0BAX8jBCEAIwAjAn0LCgEBfyMEIQAjAwsKAQF/IwQhACMCC8UBAgF+AX8jBEECRgRAIwUjBSkDAEIUfTcDACMFKQMAIgIoAgAhACACKQIEIQEgAikCDCECCwJ/IwRFIwRBAkYEfyMFIwUpAwBCBH03AwAjBSkDACgCAAUgBAtFcgRAIAEgAiAAEQYAIQNBACMEQQFGDQEaIAMhAQsjBEUEQCABDwsACyEEIwUpAwAgBDYCACMFIwUpAwBCBHw3AwAjBSkDACIDIAA2AgAgAyABNwIEIAMgAjcCDCMFIwUpAwBCFHw3AwBCAAu0AQIBfwF+IwRBAkYEQCMFIwUpAwBCFH03AwAjBSkDACICKAIAIQAgAikCBCEBIAIpAgwhAgsCfyMERSMEQQJGBH8jBSMFKQMAQgR9NwMAIwUpAwAoAgAFIAMLRXIEQCABIAIgABEBAEEAIwRBAUYNARoLDwshAyMFKQMAIAM2AgAjBSMFKQMAQgR8NwMAIwUpAwAiBCAANgIAIAQgATcCBCAEIAI3AgwjBSMFKQMAQhR8NwMAC7UBAgF/AX4jBEECRgRAIwUjBSkDAEIMfTcDACMFKQMAIgEoAgAhACABKQIEIQELAn8jBEUjBEECRgR/IwUjBSkDAEIEfTcDACMFKQMAKAIABSACC0VyBEAgASAAEQAAIQJBACMEQQFGDQEaIAIhAAsjBEUEQCAADwsACyECIwUpAwAgAjYCACMFIwUpAwBCBHw3AwAjBSkDACIDIAA2AgAgAyABNwIEIwUjBSkDAEIMfDcDAEEAC9UBAgF+AX8jBEECRgRAIwUjBSkDAEIcfTcDACMFKQMAIgMoAgAhACADKQIEIQEgAykCDCECIAMpAhQhAwsCfyMERSMEQQJGBH8jBSMFKQMAQgR9NwMAIwUpAwAoAgAFIAULRXIEQCABIAIgAyAAEQMAIQRBACMEQQFGDQEaIAQhAQsjBEUEQCABDwsACyEFIwUpAwAgBTYCACMFIwUpAwBCBHw3AwAjBSkDACIEIAA2AgAgBCABNwIEIAQgAjcCDCAEIAM3AhQjBSMFKQMAQhx8NwMAQgAL5QECAX4BfyMEQQJGBEAjBSMFKQMAQiR9NwMAIwUpAwAiBCgCACEAIAQpAgQhASAEKQIMIQIgBCkCFCEDIAQpAhwhBAsCfyMERSMEQQJGBH8jBSMFKQMAQgR9NwMAIwUpAwAoAgAFIAYLRXIEQCABIAIgAyAEIAARCgAhBUEAIwRBAUYNARogBSEBCyMERQRAIAEPCwALIQYjBSkDACAGNgIAIwUjBSkDAEIEfDcDACMFKQMAIgUgADYCACAFIAE3AgQgBSACNwIMIAUgAzcCFCAFIAQ3AhwjBSMFKQMAQiR8NwMAQgAL1QECAX8BfiMEQQJGBEAjBSMFKQMAQhh9NwMAIwUpAwAiAygCACEAIAMpAgQhASADKAIMIQIgAykCECEDCwJ/IwRFIwRBAkYEfyMFIwUpAwBCBH03AwAjBSkDACgCAAUgBAtFcgRAIAEgAiADIAARDgAhBEEAIwRBAUYNARogBCEACyMERQRAIAAPCwALIQQjBSkDACAENgIAIwUjBSkDAEIEfDcDACMFKQMAIgUgADYCACAFIAE3AgQgBSACNgIMIAUgAzcCECMFIwUpAwBCGHw3AwBBAAvlAQIBfwF+IwRBAkYEQCMFIwUpAwBCJH03AwAjBSkDACIEKAIAIQAgBCkCBCEBIAQpAgwhAiAEKQIUIQMgBCkCHCEECwJ/IwRFIwRBAkYEfyMFIwUpAwBCBH03AwAjBSkDACgCAAUgBQtFcgRAIAEgAiADIAQgABECACEFQQAjBEEBRg0BGiAFIQALIwRFBEAgAA8LAAshBSMFKQMAIAU2AgAjBSMFKQMAQgR8NwMAIwUpAwAiBiAANgIAIAYgATcCBCAGIAI3AgwgBiADNwIUIAYgBDcCHCMFIwUpAwBCJHw3AwBBAAukAQIBfgF/IwRBAkYEQCMFIwUpAwBCCH03AwAjBSkDACICKAIAIQAgAigCBCEBCwJ/IwRFIwRBAkYEfyMFIwUpAwBCBH03AwAjBSkDACgCAAUgAwtFcgRAIAEgABEgAEEAIwRBAUYNARoLDwshAyMFKQMAIAM2AgAjBSMFKQMAQgR8NwMAIwUpAwAiAiAANgIAIAIgATYCBCMFIwUpAwBCCHw3AwAL1QECAX4BfyMEQQJGBEAjBSMFKQMAQhh9NwMAIwUpAwAiBCgCACEAIAQpAgwhAiAEKAIUIQMgBCkCBCEBCwJ/IwRFIwRBAkYEfyMFIwUpAwBCBH03AwAjBSkDACgCAAUgBQtFcgRAIAEgAiADIAAREwAhBEEAIwRBAUYNARogBCEBCyMERQRAIAEPCwALIQUjBSkDACAFNgIAIwUjBSkDAEIEfDcDACMFKQMAIgQgADYCACAEIAE3AgQgBCACNwIMIAQgAzYCFCMFIwUpAwBCGHw3AwBCAAuFAgIBfgF/IwRBAkYEQCMFIwUpAwBCJH03AwAjBSkDACIHKAIAIQAgBysCDCECIAcoAhQhAyAHKAIYIQQgBygCHCEFIAcoAiAhBiAHKQIEIQELAn8jBEUjBEECRgR/IwUjBSkDAEIEfTcDACMFKQMAKAIABSAIC0VyBEAgASACIAMgBCAFIAYgABEoACEIQQAjBEEBRg0BGiAIIQALIwRFBEAgAA8LAAshCCMFKQMAIAg2AgAjBSMFKQMAQgR8NwMAIwUpAwAiByAANgIAIAcgATcCBCAHIAI5AgwgByADNgIUIAcgBDYCGCAHIAU2AhwgByAGNgIgIwUjBSkDAEIkfDcDAEEACxkAQQEkBCAAJAUjBSkDACMFKQMIVgRAAAsLFQBBACQEIwUpAwAjBSkDCFYEQAALCxkAQQIkBCAAJAUjBSkDACMFKQMIVgRAAAsLFQBBACQEIwUpAwAjBSkDCFYEQAALCwQAIwQLC47rFeMBAEKKCAsFCAgICAgAQqEIC18MBAQEBAQEBAQEBAQEBAQEFhYWFhYWFhYWFgQEBAQEBAQVFRUVFRUFBQUFBQUFBQUFBQUFBQUFBQUFBQQEBAQFBBUVFRUVFQUFBQUFBQUFBQUFBQUFBQUFBQUFBAQEBABCoQoLoUcBAgIDAwMDBAQEBAQEBAQFBQUFBQUFBQUFBQUFBQUFBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgucHJldHR5AGludGVydmFsIGlzIGVtcHR5AGluZmluaXR5AGdldHJlZ2lzdHJ5AG5vdCBlbm91Z2ggbWVtb3J5AG1vbmV0YXJ5AGJpbmFyeQBhdHRlbXB0IHRvIHlpZWxkIGFjcm9zcyBhIEMtY2FsbCBib3VuZGFyeQAuc3RyaW5naWZ5AC5jcnlwdG8udXRpbC5hcnJheQB5ZGF5AHdkYXkAYUFiQmNDZERlRmdHaEhJam1NbnByUlN0VHVVVndXeFh5WXpaJXx8RWNFQ0V4RVhFeUVZT2RPZU9IT0lPbU9NT1NPdU9VT1ZPd09XT3kALmNyeXB0by5jaXBoZXIubm9yeAAweCVsbHgAcGF0dGVybiB0b28gY29tcGxleAAuY3J5cHRvLnV0aWwuaGV4AF9fbmV3aW5kZXgAX19pbmRleABpbnZhbGlkIHVwdmFsdWUgaW5kZXgAbWF4AC0rICAgMFgweAAtMFgrMFggMFgtMHgrMHggMHgAX19wb3cAaW50ZWdlciBvdmVyZmxvdwBDIHN0YWNrIG92ZXJmbG93AHN0cmluZyBsZW5ndGggb3ZlcmZsb3cAdGFibGUgb3ZlcmZsb3cAdW5zaWduZWQgb3ZlcmZsb3cAZ2V0ZW52AF9faWRpdgBfX2RpdgBmbG5TdHUAdGV4dABuZXh0AF9JT19vdXRwdXQAX0lPX2lucHV0AHN0ZG91dABidGVzdABpc2RzdABzcXJ0AHNvcnQAZGF0YSBzdHJpbmcgdG9vIHNob3J0AGFzc2VydABpbnNlcnQAcmVzdGFydAAuYm9vdABfX2Jub3QAY291bnQAU2xudABwcmludABjb2RlcG9pbnQALmJpbnQAYWJzZW50AC5hc3NpZ25tZW50AGNvbW1lbnQAY29uc3RhbnQALmRlZmF1bHQAX19sdABleGl0AC5jcnlwdG8uZGlnZXN0LmluaXQALmNyeXB0by5jaXBoZXIuaW5pdAAuY3J5cHRvLmluaXQALmNyeXB0by51dGlsLmluaXQALmNyeXB0by5rZGYuaW5pdAAuY3J5cHRvLm1hYy5pbml0AC5jcnlwdG8udXRpbC5iaXQAYXJzaGlmdABsc2hpZnQAcmF3c2V0AG9mZnNldAByYXdnZXQAY29sbGVjdABzZWxlY3QAZXh0cmFjdABidABmbG9hdAB2YXJpYWJsZS1sZW5ndGggZm9ybWF0AGludmFsaWQgZm9ybWF0AG5hbWV3aGF0AHJlcGVhdABfX2NvbmNhdABzaXplX3QAKnQAc3RhdHVzAC5jcnlwdG8uY2lwaGVyLm1vcnVzAHRvbyBtYW55IGFyZ3VtZW50cwB3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzAGNvbnN0YW50cwB0b28gbWFueSByZXN1bHRzAHRyeWluZyB0byBhY2Nlc3Mgbm9uLWV4aXN0ZW50IGJpdHMALnByb2Nlc3MAX19pcGFpcnMAX19wYWlycwBmdW5jdGlvbiBvciBleHByZXNzaW9uIG5lZWRzIHRvbyBtYW55IHJlZ2lzdGVycwAuaGFuZGxlcnMAc2VhcmNoZXJzAG51cHMAbGFiZWxzL2dvdG9zAHN0cmluZyBjb250YWlucyB6ZXJvcwBhY29zAHRvbyBtYW55IG5lc3RlZCBmdW5jdGlvbnMAbnBhcmFtcwAudXRpbHMALmhhbmRsZXJzLXV0aWxzAEMgbGV2ZWxzAHRvbyBtYW55IHVwdmFsdWVzAGF0dGVtcHQgdG8gY29tcGFyZSB0d28gJXMgdmFsdWVzAHRvbyBtYW55IGNhcHR1cmVzAGNvcmUgYW5kIGxpYnJhcnkgaGF2ZSBpbmNvbXBhdGlibGUgbnVtZXJpYyB0eXBlcwBhY3RpdmVsaW5lcwBjaHVuayBoYXMgdG9vIG1hbnkgbGluZXMAbG9jYWwgdmFyaWFibGVzAG9wY29kZXMALmNyeXB0by5jaXBoZXIuYWVzAHBvc2l0aW9uIG91dCBvZiBib3VuZHMAYWJzACVzJXMAYXR0ZW1wdCB0byAlcyBhICVzIHZhbHVlJXMAbHVhb3Blbl8lcwBAJXMAPiVzAG1vZHVsZSAnJXMnIG5vdCBmb3VuZDolcwAlcyBleHBlY3RlZCwgZ290ICVzACVzIG5lYXIgJXMAdG9vIG1hbnkgJXMgKGxpbWl0IGlzICVkKSBpbiAlcwBhdHRlbXB0IHRvIGNvbXBhcmUgJXMgd2l0aCAlcwBjYW5ub3QgJXMgJXM6ICVzACVzOiVkOiAlcwBlcnJvciBsb2FkaW5nIG1vZHVsZSAnJXMnIGZyb20gZmlsZSAnJXMnOgoJJXMAaG91cgBjdXIALmNyeXB0by5jaXBoZXIubW9kZS5jdHIAc3RkZXJyAF9fYnhvcgBmb3IgaXRlcmF0b3IAc3ludGF4IGVycm9yAGZsb29yAGZvcgBfX2JvcgBfX3NocgBsb3dlcgBpbnZhbGlkIGxvbmcgc3RyaW5nIGRlbGltaXRlcgB1cHBlcgBtYXhpbnRlZ2VyAHRvaW50ZWdlcgBtaW5pbnRlZ2VyAG9iamVjdCBsZW5ndGggaXMgbm90IGFuIGludGVnZXIAZmllbGQgJyVzJyBpcyBub3QgYW4gaW50ZWdlcgBsdWFfSW50ZWdlcgAlZC1ieXRlIGludGVnZXIgZG9lcyBub3QgZml0IGludG8gTHVhIEludGVnZXIAdG9udW1iZXIAbWFsZm9ybWVkIG51bWJlcgAnZm9yJyBsaW1pdCBtdXN0IGJlIGEgbnVtYmVyACdmb3InIHN0ZXAgbXVzdCBiZSBhIG51bWJlcgAnZm9yJyBpbml0aWFsIHZhbHVlIG11c3QgYmUgYSBudW1iZXIAbHVhX051bWJlcgBjaGFyAHllYXIAX19lcQBmcmV4cABsZGV4cABzdG9wACdfX25ld2luZGV4JyBjaGFpbiB0b28gbG9uZzsgcG9zc2libGUgbG9vcAAnX19pbmRleCcgY2hhaW4gdG9vIGxvbmc7IHBvc3NpYmxlIGxvb3AAPCVzPiBhdCBsaW5lICVkIG5vdCBpbnNpZGUgYSBsb29wAC5kdW1wAHN0ZXAAcmVwAHdyYXAAUHAAJXM6ICVwAHByb3RvAGdvdG8AL3Vzci9sb2NhbC9saWIvbHVhLzUuMy8/LnNvOy91c3IvbG9jYWwvbGliL2x1YS81LjMvbG9hZGFsbC5zbzsuLz8uc28ALmNyeXB0by5wYWRkaW5nLnplcm8AYXR0ZW1wdCB0byBkaXZpZGUgYnkgemVybwBubwBpbwBnZXRpbmZvAGRvAC5hbwByZXR1cm4AY2hhcnBhdHRlcm4AbWlzc2luZyAnWycgYWZ0ZXIgJyUlZicgaW4gcGF0dGVybgBqc29uAGludmFsaWQgb3B0aW9uAEluc3RydWN0aW9uAG1haW4gZnVuY3Rpb24AdW5hYmxlIHRvIGR1bXAgZ2l2ZW4gZnVuY3Rpb24AY2Fubm90IHVzZSAnLi4uJyBvdXRzaWRlIGEgdmFyYXJnIGZ1bmN0aW9uAGZhaWxlZCB0byBjYWxsIGhhbmRsZSBmdW5jdGlvbgBudW1iZXIlcyBoYXMgbm8gaW50ZWdlciByZXByZXNlbnRhdGlvbgBudW1iZXIgaGFzIG5vIGludGVnZXIgcmVwcmVzZW50YXRpb24AdGltZSByZXN1bHQgY2Fubm90IGJlIHJlcHJlc2VudGVkIGluIHRoaXMgaW5zdGFsbGF0aW9uAGR5bmFtaWMgbGlicmFyaWVzIG5vdCBlbmFibGVkOyBjaGVjayB5b3VyIEx1YSBpbnN0YWxsYXRpb24Abm90IGVub3VnaCBtZW1vcnkgZm9yIGJ1ZmZlciBhbGxvY2F0aW9uAHBlcmZvcm0gYml0d2lzZSBvcGVyYXRpb24gb24AcGVyZm9ybSBhcml0aG1ldGljIG9uAGFzaW4AdXB2YWx1ZWpvaW4AbWluAD1zdGRpbgBtYWluAGZsb2F0IGZvcm1hdCBtaXNtYXRjaCBpbgBlbmRpYW5uZXNzIG1pc21hdGNoIGluAHZlcnNpb24gbWlzbWF0Y2ggaW4AJXMgc2l6ZSBtaXNtYXRjaCBpbgBwb3BlbgByZW9wZW4AcmF3bGVuAF9fbGVuAHRoZW4AYXRhbgBuYW4AYm9vbGVhbgBmYWlsZWQgdG8gYm9vdCBsdWEgcnVudGltZVxuAHZhbHVlIGhhcyBubyBsaXRlcmFsIGZvcm0AcmFuZG9tAF9fdW5tAC5jcnlwdG8udXRpbC5zdHJlYW0Ac2V0c3RlcG11bABfX211bAB1bmV4cGVjdGVkIHN5bWJvbABmdWxsAHhwY2FsbABpc3RhaWxjYWxsAF9fY2FsbAB0YWlsIGNhbGwAdW50aWwAdGFibGUgaW5kZXggaXMgbmlsAGNlaWwAX19zaGwALmV2YWwAcmF3ZXF1YWwAbm9ybWFsAHNldGxvY2FsAGdldGxvY2FsAGdsb2JhbABTbABzZXRob29rAGdldGhvb2sAZXh0ZXJuYWwgaG9vawBtYWluIGNodW5rACVzOiAlcyBwcmVjb21waWxlZCBjaHVuawBzZWVrAGNsb2NrAHRvbyBtYW55IHJlc3VsdHMgdG8gdW5wYWNrAHRyYWNlYmFjawBicmVhawBwaQBtb250aABzZWFyY2hwYXRoAGNwYXRoAG1hdGgAZmx1c2gAY29zaABzaW5oAHRhbmgAZ21hdGNoAGRlYnVnAGlzdmFyYXJnAGxvZwBsZXhpY2FsIGVsZW1lbnQgdG9vIGxvbmcAY29udHJvbCBzdHJ1Y3R1cmUgdG9vIGxvbmcAc3RyaW5nIHNsaWNlIHRvbyBsb25nAGludmFsaWQgb3JkZXIgZnVuY3Rpb24gZm9yIHNvcnRpbmcAX190b3N0cmluZwBiaW5hcnkgc3RyaW5nAGludmFsaWQgdXNlIG9mICclYycgaW4gcmVwbGFjZW1lbnQgc3RyaW5nAGZpbmFsIHBvc2l0aW9uIG91dCBvZiBzdHJpbmcAaW5pdGlhbCBwb3NpdGlvbiBvdXQgb2Ygc3RyaW5nAHVuZmluaXNoZWQgc3RyaW5nAHJlYWRlciBmdW5jdGlvbiBtdXN0IHJldHVybiBhIHN0cmluZwAnX190b3N0cmluZycgbXVzdCByZXR1cm4gYSBzdHJpbmcAJ3BhY2thZ2UuJXMnIG11c3QgYmUgYSBzdHJpbmcAaXNydW5uaW5nAGVycm9yIGluIGVycm9yIGhhbmRsaW5nAGNvbmZpZwBhcnJheSB0b28gYmlnAG1lbW9yeSBhbGxvY2F0aW9uIGVycm9yOiBibG9jayB0b28gYmlnAGRlZwAlLjE0ZwBzZXR2YnVmAGdldCBsZW5ndGggb2YAaW5mAHNlbGYAZWxzZWlmAG1vZGYAdmVyc2lvbiBtaXNtYXRjaDogYXBwLiBuZWVkcyAlZiwgTHVhIGNvcmUgcHJvdmlkZXMgJWYAcGFja3NpemUAc3RyaW5nIGxlbmd0aCBkb2VzIG5vdCBmaXQgaW4gZ2l2ZW4gc2l6ZQBzdHJpbmcgbG9uZ2VyIHRoYW4gZ2l2ZW4gc2l6ZQByZW1vdmUAdG9vIG1hbnkgZWxlbWVudHMgdG8gbW92ZQB3aWR0aCBtdXN0IGJlIHBvc2l0aXZlAGZpZWxkIGNhbm5vdCBiZSBuZWdhdGl2ZQB0cnVlAHNldHVzZXJ2YWx1ZQBnZXR1c2VydmFsdWUAc2V0dXB2YWx1ZQBnZXR1cHZhbHVlAG5vIHZhbHVlAC5jcnlwdG8udXRpbC5xdWV1ZQBpbml0aWFsIHBvc2l0aW9uIGlzIGEgY29udGludWF0aW9uIGJ5dGUAZXhlY3V0ZQB3cml0ZQBycm90YXRlAGxyb3RhdGUAY29uY2F0ZW5hdGUAY29sbGF0ZQBjcmVhdGUAZGF0ZQBzZXRwYXVzZQByZXZlcnNlAGNsb3NlAGVsc2UAZmFsc2UAaW52YWxpZCBwYXR0ZXJuIGNhcHR1cmUAdW5maW5pc2hlZCBjYXB0dXJlAHJlcXVpcmUAY3R5cGUAY2Fubm90IHJlc3VtZSBub24tc3VzcGVuZGVkIGNvcm91dGluZQBjYW5ub3QgcmVzdW1lIGRlYWQgY29yb3V0aW5lAGF0dGVtcHQgdG8geWllbGQgZnJvbSBvdXRzaWRlIGEgY29yb3V0aW5lAGN1cnJlbnRsaW5lAHRvbyBtYW55IGFyZ3VtZW50cyB0byByZXN1bWUAdG9vIG1hbnkgcmVzdWx0cyB0byByZXN1bWUAZnVuY3Rpb24gaGFuZGxlIGlzIG5vdCBkZWZpbmVkIGdsb2JhbHkgaW4gbHVhIHJ1bnRpbWUAZGlmZnRpbWUAdG1wbmFtZQByZW5hbWUAdW5hYmxlIHRvIGdlbmVyYXRlIGEgdW5pcXVlIGZpbGVuYW1lAF9fbmFtZQB3aGlsZQB0bXBmaWxlAGRvZmlsZQBsb2FkZmlsZQBjYW5ub3QgY2xvc2Ugc3RhbmRhcmQgZmlsZQBhdHRlbXB0IHRvIHVzZSBhIGNsb3NlZCBmaWxlAGhhbmRsZQBzZXRtZXRhdGFibGUAZ2V0bWV0YXRhYmxlAF9fbWV0YXRhYmxlAGNhbm5vdCBjaGFuZ2UgYSBwcm90ZWN0ZWQgbWV0YXRhYmxlAGZpZWxkICclcycgbWlzc2luZyBpbiBkYXRlIHRhYmxlACdwYWNrYWdlLnNlYXJjaGVycycgbXVzdCBiZSBhIHRhYmxlAGlzeWllbGRhYmxlAHNldGxvY2FsZQBfX2xlAGh1Z2UAZm9ybWF0IHJlc3VsdCB0b28gbGFyZ2UAYnVmZmVyIHRvbyBsYXJnZQBpbnRlcnZhbCB0b28gbGFyZ2UAcmVzdWx0aW5nIHN0cmluZyB0b28gbGFyZ2UAVVRGLTggdmFsdWUgdG9vIGxhcmdlAGRlY2ltYWwgZXNjYXBlIHRvbyBsYXJnZQBpbmRleCBvdXQgb2YgcmFuZ2UAcG9zaXRpb24gb3V0IG9mIHJhbmdlAGxldmVsIG91dCBvZiByYW5nZQB2YWx1ZSBvdXQgb2YgcmFuZ2UAYmFzZSBvdXQgb2YgcmFuZ2UAbm8gbWVzc2FnZQBwYWNrYWdlAGNvbGxlY3RnYXJiYWdlAF9fbW9kZQBpbnZhbGlkIG1vZGUAaW52YWxpZCBVVEYtOCBjb2RlAHNvdXJjZQBpbnZhbGlkIGVzY2FwZSBzZXF1ZW5jZQAuY2hhbmNlAHJlcGxhY2UARWUAZm1vZABfX21vZABtZXRhbWV0aG9kAGRlc3RpbmF0aW9uIHdyYXAgYXJvdW5kAGZpZWxkICclcycgaXMgb3V0LW9mLWJvdW5kAGZpbmQAZW5kAF9fYmFuZAAlbGxkAHlpZWxkAGZpZWxkAHVwdmFsdWVpZAAncG9wZW4nIG5vdCBzdXBwb3J0ZWQAY29ycnVwdGVkAG11bHRpcGxlIEx1YSBWTXMgZGV0ZWN0ZWQAaGV4YWRlY2ltYWwgZGlnaXQgZXhwZWN0ZWQAZnVuY3Rpb24gYXJndW1lbnRzIGV4cGVjdGVkACVzIGV4cGVjdGVkAEx1YSBmdW5jdGlvbiBleHBlY3RlZAB0YWJsZSBvciBzdHJpbmcgZXhwZWN0ZWQAdmFsdWUgZXhwZWN0ZWQAc3RyaW5nL2Z1bmN0aW9uL3RhYmxlIGV4cGVjdGVkAG5pbCBvciB0YWJsZSBleHBlY3RlZAB0aHJlYWQgZXhwZWN0ZWQAJz0nIG9yICdpbicgZXhwZWN0ZWQAPG5hbWU+IG9yICcuLi4nIGV4cGVjdGVkAHRydW5jYXRlZABmaWxlIGlzIGFscmVhZHkgY2xvc2VkAHN0YW5kYXJkICVzIGZpbGUgaXMgY2xvc2VkAGxhc3RsaW5lZGVmaW5lZAByYW5kb21zZWVkAHN1c3BlbmRlZABsb2FkZWQAX19hZGQAcmFkAHByZWxvYWQAdGhyZWFkAGRlYWQAXCUwM2QAXCVkAGludmFsaWQgY2FwdHVyZSBpbmRleCAlJSVkAGZ1bmN0aW9uIGF0IGxpbmUgJWQAbm8gdmlzaWJsZSBsYWJlbCAnJXMnIGZvciA8Z290bz4gYXQgbGluZSAlZABsYWJlbCAnJXMnIGFscmVhZHkgZGVmaW5lZCBvbiBsaW5lICVkAHNob3J0X3NyYwBmdW5jAG51bWVyaWMAX19nYwBzZWMALmNyeXB0by5jaXBoZXIubW9kZS5jYmMALmNyeXB0by5jaXBoZXIuaXNzYWMALmNyeXB0by5tYWMuaG1hYwAlYwBnc3ViAF9fc3ViAHJiAGxvYWRsaWIALmNyeXB0by5jaXBoZXIubW9kZS5vZmIALmNyeXB0by5jaXBoZXIubW9kZS5jZmIALmNyeXB0by5jaXBoZXIubW9kZS5lY2IALmNyeXB0by5kaWdlc3QuYmxha2UyYgByd2EAL3Vzci9sb2NhbC9zaGFyZS9sdWEvNS4zLz8ubHVhOy91c3IvbG9jYWwvc2hhcmUvbHVhLzUuMy8/L2luaXQubHVhOy91c3IvbG9jYWwvbGliL2x1YS81LjMvPy5sdWE7L3Vzci9sb2NhbC9saWIvbHVhLzUuMy8/L2luaXQubHVhOy4vPy5sdWE7Li8/L2luaXQubHVhABtMdWEAbGlnaHQgdXNlcmRhdGEAJWEAbm90IGEAX19sdWFfd2ViYXNzZW1ibHlfXwBpbnRlZ3JhbCBzaXplICglZCkgb3V0IG9mIGxpbWl0cyBbMSwlZF0APVtDXQAKCW5vIGZpZWxkIHBhY2thZ2UucHJlbG9hZFsnJXMnXQAiXQB4WABMVUFCT1gAUE9TSVgAX0VOVgBMVUFfTk9FTlYAJVUAR01UAHBQAC54WG5OAHRhYmxlIGluZGV4IGlzIE5hTgBfVkVSU0lPTgBOQU4ATENfQUxMACVJAExVQV9QQVRIAExVQV9DUEFUSABfRwBMQU5HAElORgBlRQBfTE9BREVEAF9QUkVMT0FEAEMAPT8APGludGVnZXI+ADxudW1iZXI+ADxzdHJpbmc+ADxlb2Y+ADxuYW1lPgA8XCVkPgBmdW5jdGlvbiA8JXM6JWQ+AD4+AH49AD49AD09ADw9ADw8ADs7ADsBOwAKCSVzOgBzdGFjayB0cmFjZWJhY2s6ACVkOgA6OgAtMDEyMzQ1Njc4OQB1dGY4AC5jcnlwdG8uY2lwaGVyLmFlczEyOABDLlVURi04AC5jcnlwdG8uY2lwaGVyLmFlczI1NgAuY3J5cHRvLmRpZ2VzdC5zaGEyXzI1NgAuY3J5cHRvLmRpZ2VzdC5tZDUALmNyeXB0by5kaWdlc3QubWQ0AC5iYXNlNjQALmNyeXB0by5kaWdlc3Quc2hhMwBfNV8zAEx1YSA1LjMAYXRhbjIALmNyeXB0by5rZGYucGJrZGYyAC5jcnlwdG8uZGlnZXN0Lm1kMgAuY3J5cHRvLmNpcGhlci5hZXMxOTIAYml0MzIALmNyeXB0by5kaWdlc3Quc2hhMl81MTIAZm9ybWF0IGFza3MgZm9yIGFsaWdubWVudCBub3QgcG93ZXIgb2YgMgAuY3J5cHRvLmRpZ2VzdC5zaGExAGxvZzEwAC8vAF9HLgAKCS4uLgBeJCorPy4oWyUtAHcrAC0rAEZJTEUqACgqdGVtcG9yYXJ5KQAoZm9yIGluZGV4KQAoZm9yIGxpbWl0KQBpbnZhbGlkIGZvcm1hdCAocmVwZWF0ZWQgZmxhZ3MpAHN0YWNrIG92ZXJmbG93ICglcykAY2FsbGluZyAnJXMnIG9uIGJhZCBzZWxmICglcykAZXJyb3IgaW4gX19nYyBtZXRhbWV0aG9kICglcykAYmFkIGFyZ3VtZW50ICMlZCAoJXMpAGJhZCBhcmd1bWVudCAjJWQgdG8gJyVzJyAoJXMpAGNhbm5vdCBvcGVuIGZpbGUgJyVzJyAoJXMpAGludmFsaWQgcmVwbGFjZW1lbnQgdmFsdWUgKGEgJXMpAChmb3IgZ2VuZXJhdG9yKQAoZm9yIHN0ZXApAGZpbGUgKCVwKQAoZm9yIGNvbnRyb2wpAChudWxsKQAoKnZhcmFyZykAaW52YWxpZCBmb3JtYXQgKHdpZHRoIG9yIHByZWNpc2lvbiB0b28gbG9uZykAKGVycm9yIG9iamVjdCBpcyBhICVzIHZhbHVlKQAoZm9yIHN0YXRlKQAoKm5vIG5hbWUpAD0oZGVidWcgY29tbWFuZCkAZmlsZSAoY2xvc2VkKQA9KGxvYWQpAHRvbyBtYW55ICVzIChsaW1pdCBpcyAlZCkAJXMgZXhwZWN0ZWQgKHRvIGNsb3NlICVzIGF0IGxpbmUgJWQpAHVuZmluaXNoZWQgbG9uZyAlcyAoc3RhcnRpbmcgYXQgbGluZSAlZCkACgkoLi4udGFpbCBjYWxscy4uLikAYXR0ZW1wdCB0byBsb2FkIGEgJXMgY2h1bmsgKG1vZGUgaXMgJyVzJykAICglcyAnJXMnKQBtYWxmb3JtZWQgcGF0dGVybiAobWlzc2luZyBhcmd1bWVudHMgdG8gJyUlYicpAG1hbGZvcm1lZCBwYXR0ZXJuIChtaXNzaW5nICddJykAbWFsZm9ybWVkIHBhdHRlcm4gKGVuZHMgd2l0aCAnJSUnKQBtaXNzaW5nICd9JwBtaXNzaW5nICd7JwBpbnZhbGlkIGtleSB0byAnbmV4dCcAd3JvbmcgbnVtYmVyIG9mIGFyZ3VtZW50cyB0byAnaW5zZXJ0JwAndG9zdHJpbmcnIG11c3QgcmV0dXJuIGEgc3RyaW5nIHRvICdwcmludCcAaW52YWxpZCBvcHRpb24gJyUlJWMnIHRvICdmb3JtYXQnAGludmFsaWQgdmFsdWUgKCVzKSBhdCBpbmRleCAlZCBpbiB0YWJsZSBmb3IgJ2NvbmNhdCcAJXMgJyVzJwBpbnZhbGlkIG9wdGlvbiAnJXMnAGZ1bmN0aW9uICclcycAPGdvdG8gJXM+IGF0IGxpbmUgJWQganVtcHMgaW50byB0aGUgc2NvcGUgb2YgbG9jYWwgJyVzJwAKCW5vIGZpbGUgJyVzJwAKCW5vIG1vZHVsZSAnJXMnIGluIGZpbGUgJyVzJwBpbnZhbGlkIGNvbnZlcnNpb24gc3BlY2lmaWVyICclJSVzJwBpbnZhbGlkIG9wdGlvbiAnJSUlYycgdG8gJ2x1YV9wdXNoZnN0cmluZycAbWlzc2luZyBzaXplIGZvciBmb3JtYXQgb3B0aW9uICdjJwBpbnZhbGlk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ICBlbHNlCiAgICAgICAgICAgIGVycm9yKCgiZXJyb3IgbG9hZGluZyBtb2R1bGUgJXM6ICVzIik6Zm9ybWF0KG5hbWUsIGVyciksIDApCiAgICAgICAgZW5kCiAgICBlbHNlaWYgdHlwZShtb2QpID09ICdmdW5jdGlvbicgdGhlbgogICAgICAgIHJldHVybiBtb2QKICAgIGVuZAplbmQKCnRhYmxlLmluc2VydChwYWNrYWdlLmxvYWRlcnMgb3IgcGFja2FnZS5zZWFyY2hlcnMsIDIsIF9pbmxpbmVfbG9hZGVyKQoKLS0gVGhlIF9fbHVhX3dlYmFzc2VtYmx5X18gbW9kdWxlIHdpbGwgYmUgaW5qZWN0IHZpYSBDIHByb2dyYW0uCmxvY2FsIG1haW4gPSBfaW5saW5lX2xvYWRlcignX19sdWFfd2ViYXNzZW1ibHlfXycpCm1haW4oKQoKLS0gRXhwb3J0IGZ1bmN0aW9uIGNhbGwgd3JhcHBlcgotLSBmdW5jdGlvbiBsdWFfY2FsbChmdW5jdGlvbl9uYW1lLCAuLi4pCi0tICAgZm9yIGssIHYgaW4gcGFpcnMoZXhwb3J0cykgZG8KLS0gICAgIHByaW50KGspCi0tICAgZW5kCi0tICAgcHJpbnQoZXhwb3J0c1snaGVsbG9fd29ybGQnXSkKLS0gICBwcmludCgjZnVuY3Rpb25fbmFtZSkKLS0gICBwcmludChmdW5jdGlvbl9uYW1lID09ICdoZWxsb193b3JsZCcpCi0tICAgcHJpbnQoZnVuY3Rpb25fbmFtZSA9PSAnaGVsbG9fd29ybGQnKQotLSAgIHByaW50KHR5cGUoZnVuY3Rpb25fbmFtZSkpCi0tIAotLSAgIGxvY2FsIG1vZCA9IGV4cG9ydHNbZnVuY3Rpb25fbmFtZV0KLS0gICBpZiBub3QgbW9kIHRoZW4KLS0gICAgIHByaW50KCgiTW9kdWxlICVzIGlzbid0IGV4cG9ydGVkIik6Zm9ybWF0KGZ1bmN0aW9uX25hbWUpKQotLSAgICAgcmV0dXJuCi0tICAgZWxzZWlmIHR5cGUobW9kKSB+PSAndGFibGUnIHRoZW4KLS0gICAgIHByaW50KCgiTW9kdWxlICVzIGV4cG9ydGVkIGJ1dCBub3QgYW4gdGFibGUiKTpmb3JtYXQoZnVuY3Rpb25fbmFtZSkpCi0tICAgICByZXR1cm4KLS0gICBlbmQKLS0gCi0tICAgbG9jYWwgZm4gPSBtb2QuZm4KLS0gICBpZiBub3QgZm4gdGhlbgotLSAgICAgcHJpbnQoKCJNb2R1bGUgJXMuZm4gaXMgbm90IGRlZmluZWQiKTpmb3JtYXQoZnVuY3Rpb25fbmFtZSkpCi0tICAgICByZXR1cm4KLS0gICBlbHNlaWYgdHlwZShmbikgfj0gJ2Z1bmN0aW9uJyB0aGVuCi0tICAgICBwcmludCgoIk1vZHVsZSAlcy5mbiBpcyBub3QgYSBmdW5jdGlvbiIpOmZvcm1hdChmdW5jdGlvbl9uYW1lKSkKLS0gICAgIHJldHVybgotLSAgIGVuZAotLSAgIC0tIENhbGwgZXhwb3J0ZWQgZnVuY3Rpb24KLS0gICBsb2NhbCBhcmd1bWVudHMgPSB7c2VsZWN0KDEsIC4uLil9Ci0tICAgcmV0dXJuIGZuKHRhYmxlLnVucGFjayhhcmd1bWVudHMpKQotLSBlbmQKAELAgAELsgRsb2NhbCBqc29uID0gcmVxdWlyZSAianNvbiIKCmZ1bmN0aW9uIGhhbmRsZShtc2dKU09OLCBhb0pTT04pCiAgICAtLSBieSByZXF1aXJpbmcgJy5wcm9jZXNzJyBoZXJlIHdlIGFyZSBhYmxlIHRvIHJlbG9hZCB2aWEgLnVwZGF0ZXMKICAgIGxvY2FsIHByb2Nlc3MgPSByZXF1aXJlICIucHJvY2VzcyIKICAgIC0tIGRlY29kZSBpbnB1dHMKICAgIGxvY2FsIG1zZyA9IGpzb24uZGVjb2RlKG1zZ0pTT04pCiAgICBsb2NhbCBlbnYgPSBqc29uLmRlY29kZShhb0pTT04pCgogICAgLS0gaGFuZGxlIHByb2Nlc3MKICAgIGxvY2FsIHN0YXR1cywgcmVzcG9uc2UgPSBwY2FsbChmdW5jdGlvbigpCiAgICAgICAgcmV0dXJuIChwcm9jZXNzLmhhbmRsZShtc2csIGVudikpCiAgICBlbmQpCgogICAgLS0gZW5jb2RlIG91dHB1dAogICAgbG9jYWwgcmVzcG9uc2VKU09OID0ganNvbi5lbmNvZGUoe29rID0gc3RhdHVzLCByZXNwb25zZSA9IHJlc3BvbnNlfSkKICAgIC0tIGZyZWUgCiAgICByZXNwb25zZSA9IG5pbAogICAgY29sbGVjdGdhcmJhZ2UoKQogICAgcmV0dXJuIHJlc3BvbnNlSlNPTgplbmQKAEKAhQEL1GwtLS0gVGhlIEFPIG1vZHVsZSBwcm92aWRlcyBmdW5jdGlvbmFsaXR5IGZvciBtYW5hZ2luZyB0aGUgQU8gZW52aXJvbm1lbnQgYW5kIGhhbmRsaW5nIG1lc3NhZ2VzLiBSZXR1cm5zIHRoZSBhbyB0YWJsZS4KCi0tIEBtb2R1bGUgYW8KCgoKbG9jYWwgb2xkYW8gPSBhbyBvciB7fQoKCgotLS0gVGhlIEFPIG1vZHVsZQoKLS0gQHRhYmxlIGFvCgotLSBAZmllbGQgX3ZlcnNpb24gVGhlIHZlcnNpb24gbnVtYmVyIG9mIHRoZSBhbyBtb2R1bGUKCi0tIEBmaWVsZCBfbW9kdWxlIFRoZSBtb2R1bGUgaWQgb2YgdGhlIHByb2Nlc3MKCi0tIEBmaWVsZCBpZCBUaGUgaWQgb2YgdGhlIHByb2Nlc3MKCi0tIEBmaWVsZCBhdXRob3JpdGllcyBBIHRhYmxlIG9mIGF1dGhvcml0aWVzIG9mIHRoZSBwcm9jZXNzCgotLSBAZmllbGQgcmVmZXJlbmNlIFRoZSByZWZlcmVuY2UgbnVtYmVyIG9mIHRoZSBwcm9jZXNzCgotLSBAZmllbGQgb3V0Ym94IFRoZSBvdXRib3ggb2YgdGhlIHByb2Nlc3MKCi0tIEBmaWVsZCBub25FeHRyYWN0YWJsZVRhZ3MgVGhlIG5vbi1leHRyYWN0YWJsZSB0YWdzCgotLSBAZmllbGQgbm9uRm9yd2FyZGFibGVUYWdzIFRoZSBub24tZm9yd2FyZGFibGUgdGFncwoKLS0gQGZpZWxkIGNsb25lIFRoZSBjbG9uZSBmdW5jdGlvbgoKLS0gQGZpZWxkIG5vcm1hbGl6ZSBUaGUgbm9ybWFsaXplIGZ1bmN0aW9uCgotLSBAZmllbGQgc2FuaXRpemUgVGhlIHNhbml0aXplIGZ1bmN0aW9uCgotLSBAZmllbGQgaW5pdCBUaGUgaW5pdCBmdW5jdGlvbgoKLS0gQGZpZWxkIGxvZyBUaGUgbG9nIGZ1bmN0aW9uCgotLSBAZmllbGQgY2xlYXJPdXRib3ggVGhlIGNsZWFyT3V0Ym94IGZ1bmN0aW9uCgotLSBAZmllbGQgc2VuZCBUaGUgc2VuZCBmdW5jdGlvbgoKLS0gQGZpZWxkIHNwYXduIFRoZSBzcGF3biBmdW5jdGlvbgoKLS0gQGZpZWxkIGFzc2lnbiBUaGUgYXNzaWduIGZ1bmN0aW9uCgotLSBAZmllbGQgaXNUcnVzdGVkIFRoZSBpc1RydXN0ZWQgZnVuY3Rpb24KCi0tIEBmaWVsZCByZXN1bHQgVGhlIHJlc3VsdCBmdW5jdGlvbgoKbG9jYWwgYW8gPSB7CgogICAgX3ZlcnNpb24gPSAiMC4wLjYiLAoKICAgIGlkID0gb2xkYW8uaWQgb3IgIiIsCgogICAgX21vZHVsZSA9IG9sZGFvLl9tb2R1bGUgb3IgIiIsCgogICAgYXV0aG9yaXRpZXMgPSBvbGRhby5hdXRob3JpdGllcyBvciB7fSwKCiAgICByZWZlcmVuY2UgPSBvbGRhby5yZWZlcmVuY2Ugb3IgMCwKCiAgICBvdXRib3ggPSBvbGRhby5vdXRib3ggb3IKCiAgICAgICAge091dHB1dCA9IHt9LCBNZXNzYWdlcyA9IHt9LCBTcGF3bnMgPSB7fSwgQXNzaWdubWVudHMgPSB7fX0sCgogICAgbm9uRXh0cmFjdGFibGVUYWdzID0gewoKICAgICAgICAnRGF0YS1Qcm90b2NvbCcsICdWYXJpYW50JywgJ0Zyb20tUHJvY2VzcycsICdGcm9tLU1vZHVsZScsICdUeXBlJywKCiAgICAgICAgJ0Zyb20nLCAnT3duZXInLCAnQW5jaG9yJywgJ1RhcmdldCcsICdEYXRhJywgJ1RhZ3MnCgogICAgfSwKCiAgICBub25Gb3J3YXJkYWJsZVRhZ3MgPSB7CgogICAgICAgICdEYXRhLVByb3RvY29sJywgJ1ZhcmlhbnQnLCAnRnJvbS1Qcm9jZXNzJywgJ0Zyb20tTW9kdWxlJywgJ1R5cGUnLAoKICAgICAgICAnRnJvbScsICdPd25lcicsICdBbmNob3InLCAnVGFyZ2V0JywgJ1RhZ3MnLCAnVGFnQXJyYXknLCAnSGFzaC1DaGFpbicsCgogICAgICAgICdUaW1lc3RhbXAnLCAnTm9uY2UnLCAnRXBvY2gnLCAnU2lnbmF0dXJlJywgJ0ZvcndhcmRlZC1CeScsCgogICAgICAgICdQdXNoZWQtRm9yJywgJ1JlYWQtT25seScsICdDcm9uJywgJ0Jsb2NrLUhlaWdodCcsICdSZWZlcmVuY2UnLCAnSWQnLAoKICAgICAgICAnUmVwbHktVG8nCgogICAgfQoKfQoKCgotLS0gQ2hlY2tzIGlmIGEga2V5IGV4aXN0cyBpbiBhIGxpc3QuCgotLSBAbGZ1bmN0aW9uIF9pbmNsdWRlcwoKLS0gQHRwYXJhbSB7dGFibGV9IGxpc3QgVGhlIGxpc3QgdG8gY2hlY2sgYWdhaW5zdAoKLS0gQHRyZXR1cm4ge2Z1bmN0aW9ufSBBIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYSBrZXkgYW5kIHJldHVybnMgdHJ1ZSBpZiB0aGUga2V5IGV4aXN0cyBpbiB0aGUgbGlzdAoKbG9jYWwgZnVuY3Rpb24gX2luY2x1ZGVzKGxpc3QpCgogICAgcmV0dXJuIGZ1bmN0aW9uKGtleSkKCiAgICAgICAgbG9jYWwgZXhpc3RzID0gZmFsc2UKCiAgICAgICAgZm9yIF8sIGxpc3RLZXkgaW4gaXBhaXJzKGxpc3QpIGRvCgogICAgICAgICAgICBpZiBrZXkgPT0gbGlzdEtleSB0aGVuCgogICAgICAgICAgICAgICAgZXhpc3RzID0gdHJ1ZQoKICAgICAgICAgICAgICAgIGJyZWFrCgogICAgICAgICAgICBlbmQKCiAgICAgICAgZW5kCgogICAgICAgIGlmIG5vdCBleGlzdHMgdGhlbiByZXR1cm4gZmFsc2UgZW5kCgogICAgICAgIHJldHVybiB0cnVlCgogICAgZW5kCgplbmQKCgoKLS0tIENoZWNrcyBpZiBhIHRhYmxlIGlzIGFuIGFycmF5LgoKLS0gQGxmdW5jdGlvbiBpc0FycmF5CgotLSBAdHBhcmFtIHt0YWJsZX0gdGFibGUgVGhlIHRhYmxlIHRvIGNoZWNrCgotLSBAdHJldHVybiB7Ym9vbGVhbn0gVHJ1ZSBpZiB0aGUgdGFibGUgaXMgYW4gYXJyYXksIGZhbHNlIG90aGVyd2lzZQoKbG9jYWwgZnVuY3Rpb24gaXNBcnJheSh0YWJsZSkKCiAgICBpZiB0eXBlKHRhYmxlKSA9PSAidGFibGUiIHRoZW4KCiAgICAgICAgbG9jYWwgbWF4SW5kZXggPSAwCgogICAgICAgIGZvciBrLCB2IGluIHBhaXJzKHRhYmxlKSBkbwoKICAgICAgICAgICAgaWYgdHlwZShrKSB+PSAibnVtYmVyIiBvciBrIDwgMSBvciBtYXRoLmZsb29yKGspIH49IGsgdGhlbgoKICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZSAtLSBJZiB0aGVyZSdzIGEgbm9uLWludGVnZXIga2V5LCBpdCdzIG5vdCBhbiBhcnJheQoKICAgICAgICAgICAgZW5kCgogICAgICAgICAgICBtYXhJbmRleCA9IG1hdGgubWF4KG1heEluZGV4LCBrKQoKICAgICAgICBlbmQKCiAgICAgICAgLS0gSWYgdGhlIGhpZ2hlc3QgbnVtZXJpYyBpbmRleCBpcyBlcXVhbCB0byB0aGUgbnVtYmVyIG9mIGVsZW1lbnRzLCBpdCdzIGFuIGFycmF5CgogICAgICAgIHJldHVybiBtYXhJbmRleCA9PSAjdGFibGUKCiAgICBlbmQKCiAgICByZXR1cm4gZmFsc2UKCmVuZAoKCgotLS0gUGFkcyBhIG51bWJlciB3aXRoIGxlYWRpbmcgemVyb3MgdG8gMzIgZGlnaXRzLgoKLS0gQGxmdW5jdGlvbiBwYWRaZXJvMzIKCi0tIEB0cGFyYW0ge251bWJlcn0gbnVtIFRoZSBudW1iZXIgdG8gcGFkCgotLSBAdHJldHVybiB7c3RyaW5nfSBUaGUgcGFkZGVkIG51bWJlciBhcyBhIHN0cmluZwoKbG9jYWwgZnVuY3Rpb24gcGFkWmVybzMyKG51bSkgcmV0dXJuIHN0cmluZy5mb3JtYXQoIiUwMzJkIiwgbnVtKSBlbmQKCgoKLS0tIENsb25lcyBhIHRhYmxlIHJlY3Vyc2l2ZWx5LgoKLS0gQGZ1bmN0aW9uIGNsb25lCgotLSBAdHBhcmFtIHthbnl9IG9iaiBUaGUgb2JqZWN0IHRvIGNsb25lCgotLSBAdHBhcmFtIHt0YWJsZX0gc2VlbiBUaGUgdGFibGUgb2Ygc2VlbiBvYmplY3RzIChkZWZhdWx0IGlzIG5pbCkKCi0tIEB0cmV0dXJuIHthbnl9IFRoZSBjbG9uZWQgb2JqZWN0CgpmdW5jdGlvbiBhby5jbG9uZShvYmosIHNlZW4pCgogICAgLS0gSGFuZGxlIG5vbi10YWJsZXMgYW5kIHByZXZpb3VzbHktc2VlbiB0YWJsZXMuCgogICAgaWYgdHlwZShvYmopIH49ICd0YWJsZScgdGhlbiByZXR1cm4gb2JqIGVuZAoKICAgIGlmIHNlZW4gYW5kIHNlZW5bb2JqXSB0aGVuIHJldHVybiBzZWVuW29ial0gZW5kCgoKCiAgICAtLSBOZXcgdGFibGU7IG1hcmsgaXQgYXMgc2VlbiBhbmQgY29weSByZWN1cnNpdmVseS4KCiAgICBsb2NhbCBzID0gc2VlbiBvciB7fQoKICAgIGxvY2FsIHJlcyA9IHt9CgogICAgc1tvYmpdID0gcmVzCgogICAgZm9yIGssIHYgaW4gcGFpcnMob2JqKSBkbyByZXNbYW8uY2xvbmUoaywgcyldID0gYW8uY2xvbmUodiwgcykgZW5kCgogICAgcmV0dXJuIHNldG1ldGF0YWJsZShyZXMsIGdldG1ldGF0YWJsZShvYmopKQoKZW5kCgoKCi0tLSBOb3JtYWxpemVzIGEgbWVzc2FnZSBieSBleHRyYWN0aW5nIHRhZ3MuCgotLSBAZnVuY3Rpb24gbm9ybWFsaXplCgotLSBAdHBhcmFtIHt0YWJsZX0gbXNnIFRoZSBtZXNzYWdlIHRvIG5vcm1hbGl6ZQoKLS0gQHRyZXR1cm4ge3RhYmxlfSBUaGUgbm9ybWFsaXplZCBtZXNzYWdlCgpmdW5jdGlvbiBhby5ub3JtYWxpemUobXNnKQoKICAgIGZvciBfLCBvIGluIGlwYWlycyhtc2cuVGFncykgZG8KCiAgICAgICAgaWYgbm90IF9pbmNsdWRlcyhhby5ub25FeHRyYWN0YWJsZVRhZ3MpKG8ubmFtZSkgdGhlbgoKICAgICAgICAgICAgbXNnW28ubmFtZV0gPSBvLnZhbHVlCgogICAgICAgIGVuZAoKICAgIGVuZAoKICAgIHJldHVybiBtc2cKCmVuZAoKCgotLS0gU2FuaXRpemVzIGEgbWVzc2FnZSBieSByZW1vdmluZyBub24tZm9yd2FyZGFibGUgdGFncy4KCi0tIEBmdW5jdGlvbiBzYW5pdGl6ZQoKLS0gQHRwYXJhbSB7dGFibGV9IG1zZyBUaGUgbWVzc2FnZSB0byBzYW5pdGl6ZQoKLS0gQHRyZXR1cm4ge3RhYmxlfSBUaGUgc2FuaXRpemVkIG1lc3NhZ2UKCmZ1bmN0aW9uIGFvLnNhbml0aXplKG1zZykKCiAgICBsb2NhbCBuZXdNc2cgPSBhby5jbG9uZShtc2cpCgoKCiAgICBmb3IgaywgXyBpbiBwYWlycyhuZXdNc2cpIGRvCgogICAgICAgIGlmIF9pbmNsdWRlcyhhby5ub25Gb3J3YXJkYWJsZVRhZ3MpKGspIHRoZW4gbmV3TXNnW2tdID0gbmlsIGVuZAoKICAgIGVuZAoKCgogICAgcmV0dXJuIG5ld01zZwoKZW5kCgoKCi0tLSBJbml0aWFsaXplcyB0aGUgQU8gZW52aXJvbm1lbnQsIGluY2x1ZGluZyBJRCwgbW9kdWxlLCBhdXRob3JpdGllcywgb3V0Ym94LCBhbmQgZW52aXJvbm1lbnQuCgotLSBAZnVuY3Rpb24gaW5pdAoKLS0gQHRwYXJhbSB7dGFibGV9IGVudiBUaGUgZW52aXJvbm1lbnQgb2JqZWN0CgpmdW5jdGlvbiBhby5pbml0KGVudikKCiAgICBpZiBhby5pZCA9PSAiIiB0aGVuIGFvLmlkID0gZW52LlByb2Nlc3MuSWQgZW5kCgoKCiAgICBpZiBhby5fbW9kdWxlID09ICIiIHRoZW4KCiAgICAgICAgZm9yIF8sIG8gaW4gaXBhaXJzKGVudi5Qcm9jZXNzLlRhZ3MpIGRvCgogICAgICAgICAgICBpZiBvLm5hbWUgPT0gIk1vZHVsZSIgdGhlbiBhby5fbW9kdWxlID0gby52YWx1ZSBlbmQKCiAgICAgICAgZW5kCgogICAgZW5kCgoKCiAgICBpZiAjYW8uYXV0aG9yaXRpZXMgPCAxIHRoZW4KCiAgICAgICAgZm9yIF8sIG8gaW4gaXBhaXJzKGVudi5Qcm9jZXNzLlRhZ3MpIGRvCgogICAgICAgICAgICBpZiBvLm5hbWUgPT0gIkF1dGhvcml0eSIgdGhlbgoKICAgICAgICAgICAgICAgIHRhYmxlLmluc2VydChhby5hdXRob3JpdGllcywgby52YWx1ZSkKCiAgICAgICAgICAgIGVuZAoKICAgICAgICBlbmQKCiAgICBlbmQKCgoKICAgIGFvLm91dGJveCA9IHtPdXRwdXQgPSB7fSwgTWVzc2FnZXMgPSB7fSwgU3Bhd25zID0ge30sIEFzc2lnbm1lbnRzID0ge319CgogICAgYW8uZW52ID0gZW52CgoKCmVuZAoKCgotLS0gTG9ncyBhIG1lc3NhZ2UgdG8gdGhlIG91dHB1dC4KCi0tIEBmdW5jdGlvbiBsb2cKCi0tIEB0cGFyYW0ge3N0cmluZ30gdHh0IFRoZSBtZXNzYWdlIHRvIGxvZwoKZnVuY3Rpb24gYW8ubG9nKHR4dCkKCiAgICBpZiB0eXBlKGFvLm91dGJveC5PdXRwdXQpID09ICdzdHJpbmcnIHRoZW4KCiAgICAgICAgYW8ub3V0Ym94Lk91dHB1dCA9IHthby5vdXRib3guT3V0cHV0fQoKICAgIGVuZAoKICAgIHRhYmxlLmluc2VydChhby5vdXRib3guT3V0cHV0LCB0eHQpCgplbmQKCgoKLS0tIENsZWFycyB0aGUgb3V0Ym94LgoKLS0gQGZ1bmN0aW9uIGNsZWFyT3V0Ym94CgpmdW5jdGlvbiBhby5jbGVhck91dGJveCgpCgogICAgYW8ub3V0Ym94ID0ge091dHB1dCA9IHt9LCBNZXNzYWdlcyA9IHt9LCBTcGF3bnMgPSB7fSwgQXNzaWdubWVudHMgPSB7fX0KCmVuZAoKCgotLS0gU2VuZHMgYSBtZXNzYWdlLgoKLS0gQGZ1bmN0aW9uIHNlbmQKCi0tIEB0cGFyYW0ge3RhYmxlfSBtc2cgVGhlIG1lc3NhZ2UgdG8gc2VuZAoKZnVuY3Rpb24gYW8uc2VuZChtc2cpCgogICAgYXNzZXJ0KHR5cGUobXNnKSA9PSAndGFibGUnLCAnbXNnIHNob3VsZCBiZSBhIHRhYmxlJykKCiAgICBhby5yZWZlcmVuY2UgPSBhby5yZWZlcmVuY2UgKyAxCgogICAgbG9jYWwgcmVmZXJlbmNlU3RyaW5nID0gdG9zdHJpbmcoYW8ucmVmZXJlbmNlKQoKCgogICAgbG9jYWwgbWVzc2FnZSA9IHsKCiAgICAgICAgVGFyZ2V0ID0gbXNnLlRhcmdldCwKCiAgICAgICAgRGF0YSA9IG1zZy5EYXRhLAoKICAgICAgICBBbmNob3IgPSBwYWRaZXJvMzIoYW8ucmVmZXJlbmNlKSwKCiAgICAgICAgVGFncyA9IHsKCiAgICAgICAgICAgIHtuYW1lID0gIkRhdGEtUHJvdG9jb2wiLCB2YWx1ZSA9ICJhbyJ9LAoKICAgICAgICAgICAge25hbWUgPSAiVmFyaWFudCIsIHZhbHVlID0gImFvLlROLjEifSwKCiAgICAgICAgICAgIHtuYW1lID0gIlR5cGUiLCB2YWx1ZSA9ICJNZXNzYWdlIn0sCgogICAgICAgICAgICB7bmFtZSA9ICJSZWZlcmVuY2UiLCB2YWx1ZSA9IHJlZmVyZW5jZVN0cmluZ30KCiAgICAgICAgfQoKICAgIH0KCgoKICAgIC0tIGlmIGN1c3RvbSB0YWdzIGluIHJvb3QgbW92ZSB0aGVtIHRvIHRhZ3MKCiAgICBmb3IgaywgdiBpbiBwYWlycyhtc2cpIGRvCgogICAgICAgIGlmIG5vdCBfaW5jbHVkZXMoeyJUYXJnZXQiLCAiRGF0YSIsICJBbmNob3IiLCAiVGFncyIsICJGcm9tIn0pKGspIHRoZW4KCiAgICAgICAgICAgIHRhYmxlLmluc2VydChtZXNzYWdlLlRhZ3MsIHtuYW1lID0gaywgdmFsdWUgPSB2fSkKCiAgICAgICAgZW5kCgogICAgZW5kCgoKCiAgICBpZiBtc2cuVGFncyB0aGVuCgogICAgICAgIGlmIGlzQXJyYXkobXNnLlRhZ3MpIHRoZW4KCiAgICAgICAgICAgIGZvciBfLCBvIGluIGlwYWlycyhtc2cuVGFncykgZG8KCiAgICAgICAgICAgICAgICB0YWJsZS5pbnNlcnQobWVzc2FnZS5UYWdzLCBvKQoKICAgICAgICAgICAgZW5kCgogICAgICAgIGVsc2UKCiAgICAgICAgICAgIGZvciBrLCB2IGluIHBhaXJzKG1zZy5UYWdzKSBkbwoKICAgICAgICAgICAgICAgIHRhYmxlLmluc2VydChtZXNzYWdlLlRhZ3MsIHtuYW1lID0gaywgdmFsdWUgPSB2fSkKCiAgICAgICAgICAgIGVuZAoKICAgICAgICBlbmQKCiAgICBlbmQKCgoKICAgIC0tIElmIHJ1bm5pbmcgaW4gYW4gZW52aXJvbm1lbnQgd2l0aG91dCB0aGUgQU9TIEhhbmRsZXJzIG1vZHVsZSwgZG8gbm90IGFkZAoKICAgIC0tIHRoZSBvblJlcGx5IGFuZCByZWNlaXZlIGZ1bmN0aW9ucyB0byB0aGUgbWVzc2FnZS4KCiAgICBpZiBub3QgSGFuZGxlcnMgdGhlbiByZXR1cm4gbWVzc2FnZSBlbmQKCgoKICAgIC0tIGNsb25lIG1lc3NhZ2UgaW5mbyBhbmQgYWRkIHRvIG91dGJveAoKICAgIGxvY2FsIGV4dE1lc3NhZ2UgPSB7fQoKICAgIGZvciBrLCB2IGluIHBhaXJzKG1lc3NhZ2UpIGRvIGV4dE1lc3NhZ2Vba10gPSB2IGVuZAoKCgogICAgLS0gYWRkIG1lc3NhZ2UgdG8gb3V0Ym94CgogICAgdGFibGUuaW5zZXJ0KGFvLm91dGJveC5NZXNzYWdlcywgZXh0TWVzc2FnZSkKCgoKICAgIC0tIGFkZCBjYWxsYmFjayBmb3Igb25SZXBseSBoYW5kbGVyKHMpCgogICAgbWVzc2FnZS5vblJlcGx5ID0KCiAgICAgICAgZnVuY3Rpb24oLi4uKSAtLSBUYWtlcyBlaXRoZXIgKEFkZHJlc3NUaGF0V2lsbFJlcGx5LCBoYW5kbGVyKHMpKSBvciAoaGFuZGxlcihzKSkKCiAgICAgICAgICAgIGxvY2FsIGZyb20sIHJlc29sdmVyCgogICAgICAgICAgICBpZiBzZWxlY3QoIiMiLCAuLi4pID09IDIgdGhlbgoKICAgICAgICAgICAgICAgIGZyb20gPSBzZWxlY3QoMSwgLi4uKQoKICAgICAgICAgICAgICAgIHJlc29sdmVyID0gc2VsZWN0KDIsIC4uLikKCiAgICAgICAgICAgIGVsc2UKCiAgICAgICAgICAgICAgICBmcm9tID0gbWVzc2FnZS5UYXJnZXQKCiAgICAgICAgICAgICAgICByZXNvbHZlciA9IHNlbGVjdCgxLCAuLi4pCgogICAgICAgICAgICBlbmQKCgoKICAgICAgICAgICAgLS0gQWRkIGEgb25lLXRpbWUgY2FsbGJhY2sgdGhhdCBydW5zIHRoZSB1c2VyJ3MgKG1hdGNoaW5nKSByZXNvbHZlciBvbiByZXBseQoKICAgICAgICAgICAgSGFuZGxlcnMub25jZSh7RnJvbSA9IGZyb20sIFsiWC1SZWZlcmVuY2UiXSA9IHJlZmVyZW5jZVN0cmluZ30sCgogICAgICAgICAgICAgICAgICAgICAgICAgIHJlc29sdmVyKQoKICAgICAgICBlbmQKCgoKICAgIG1lc3NhZ2UucmVjZWl2ZSA9IGZ1bmN0aW9uKC4uLikKCiAgICAgICAgbG9jYWwgZnJvbSA9IG1lc3NhZ2UuVGFyZ2V0CgogICAgICAgIGlmIHNlbGVjdCgiIyIsIC4uLikgPT0gMSB0aGVuIGZyb20gPSBzZWxlY3QoMSwgLi4uKSBlbmQKCiAgICAgICAgcmV0dXJuCgogICAgICAgICAgICBIYW5kbGVycy5yZWNlaXZlKHtGcm9tID0gZnJvbSwgWyJYLVJlZmVyZW5jZSJdID0gcmVmZXJlbmNlU3RyaW5nfSkKCiAgICBlbmQKCgoKICAgIHJldHVybiBtZXNzYWdlCgplbmQKCgoKLS0tIFNwYXducyBhIHByb2Nlc3MuCgotLSBAZnVuY3Rpb24gc3Bhd24KCi0tIEB0cGFyYW0ge3N0cmluZ30gbW9kdWxlIFRoZSBtb2R1bGUgc291cmNlIGlkCgotLSBAdHBhcmFtIHt0YWJsZX0gbXNnIFRoZSBtZXNzYWdlIHRvIHNlbmQKCmZ1bmN0aW9uIGFvLnNwYXduKG1vZHVsZSwgbXNnKQoKICAgIGFzc2VydCh0eXBlKG1vZHVsZSkgPT0gInN0cmluZyIsICJNb2R1bGUgc291cmNlIGlkIGlzIHJlcXVpcmVkISIpCgogICAgYXNzZXJ0KHR5cGUobXNnKSA9PSAndGFibGUnLCAnTWVzc2FnZSBtdXN0IGJlIGEgdGFibGUnKQoKICAgIC0tIGluYyBzcGF3biByZWZlcmVuY2UKCiAgICBhby5yZWZlcmVuY2UgPSBhby5yZWZlcmVuY2UgKyAxCgogICAgbG9jYWwgc3Bhd25SZWYgPSB0b3N0cmluZyhhby5yZWZlcmVuY2UpCgoKCiAgICBsb2NhbCBzcGF3biA9IHsKCiAgICAgICAgRGF0YSA9IG1zZy5EYXRhIG9yICJOT0RBVEEiLAoKICAgICAgICBBbmNob3IgPSBwYWRaZXJvMzIoYW8ucmVmZXJlbmNlKSwKCiAgICAgICAgVGFncyA9IHsKCiAgICAgICAgICAgIHtuYW1lID0gIkRhdGEtUHJvdG9jb2wiLCB2YWx1ZSA9ICJhbyJ9LAoKICAgICAgICAgICAge25hbWUgPSAiVmFyaWFudCIsIHZhbHVlID0gImFvLlROLjEifSwKCiAgICAgICAgICAgIHtuYW1lID0gIlR5cGUiLCB2YWx1ZSA9ICJQcm9jZXNzIn0sCgogICAgICAgICAgICB7bmFtZSA9ICJGcm9tLVByb2Nlc3MiLCB2YWx1ZSA9IGFvLmlkfSwKCiAgICAgICAgICAgIHtuYW1lID0gIkZyb20tTW9kdWxlIiwgdmFsdWUgPSBhby5fbW9kdWxlfSwKCiAgICAgICAgICAgIHtuYW1lID0gIk1vZHVsZSIsIHZhbHVlID0gbW9kdWxlfSwKCiAgICAgICAgICAgIHtuYW1lID0gIlJlZmVyZW5jZSIsIHZhbHVlID0gc3Bhd25SZWZ9CgogICAgICAgIH0KCiAgICB9CgoKCiAgICAtLSBpZiBjdXN0b20gdGFncyBpbiByb290IG1vdmUgdGhlbSB0byB0YWdzCgogICAgZm9yIGssIHYgaW4gcGFpcnMobXNnKSBkbwoKICAgICAgICBpZiBub3QgX2luY2x1ZGVzKHsiVGFyZ2V0IiwgIkRhdGEiLCAiQW5jaG9yIiwgIlRhZ3MiLCAiRnJvbSJ9KShrKSB0aGVuCgogICAgICAgICAgICB0YWJsZS5pbnNlcnQoc3Bhd24uVGFncywge25hbWUgPSBrLCB2YWx1ZSA9IHZ9KQoKICAgICAgICBlbmQKCiAgICBlbmQKCgoKICAgIGlmIG1zZy5UYWdzIHRoZW4KCiAgICAgICAgaWYgaXNBcnJheShtc2cuVGFncykgdGhlbgoKICAgICAgICAgICAgZm9yIF8sIG8gaW4gaXBhaXJzKG1zZy5UYWdzKSBkbwoKICAgICAgICAgICAgICAgIHRhYmxlLmluc2VydChzcGF3bi5UYWdzLCBvKQoKICAgICAgICAgICAgZW5kCgogICAgICAgIGVsc2UKCiAgICAgICAgICAgIGZvciBrLCB2IGluIHBhaXJzKG1zZy5UYWdzKSBkbwoKICAgICAgICAgICAgICAgIHRhYmxlLmluc2VydChzcGF3bi5UYWdzLCB7bmFtZSA9IGssIHZhbHVlID0gdn0pCgogICAgICAgICAgICBlbmQKCiAgICAgICAgZW5kCgogICAgZW5kCgoKCiAgICAtLSBJZiBydW5uaW5nIGluIGFuIGVudmlyb25tZW50IHdpdGhvdXQgdGhlIEFPUyBIYW5kbGVycyBtb2R1bGUsIGRvIG5vdCBhZGQKCiAgICAtLSB0aGUgYWZ0ZXIgYW5kIHJlY2VpdmUgZnVuY3Rpb25zIHRvIHRoZSBzcGF3bi4KCiAgICBpZiBub3QgSGFuZGxlcnMgdGhlbiByZXR1cm4gc3Bhd24gZW5kCgoKCiAgICAtLSBjbG9uZSBzcGF3biBpbmZvIGFuZCBhZGQgdG8gb3V0Ym94CgogICAgbG9jYWwgZXh0U3Bhd24gPSB7fQoKICAgIGZvciBrLCB2IGluIHBhaXJzKHNwYXduKSBkbyBleHRTcGF3bltrXSA9IHYgZW5kCgoKCiAgICB0YWJsZS5pbnNlcnQoYW8ub3V0Ym94LlNwYXducywgZXh0U3Bhd24pCgoKCiAgICAtLSBhZGQgJ2FmdGVyJyBjYWxsYmFjayB0byByZXR1cm5lZCB0YWJsZQoKICAgIC0tIGxvY2FsIHJlc3VsdCA9IHt9CgogICAgc3Bhd24ub25SZXBseSA9IGZ1bmN0aW9uKGNhbGxiYWNrKQoKICAgICAgICBIYW5kbGVycy5vbmNlKHsKCiAgICAgICAgICAgIEFjdGlvbiA9ICJTcGF3bmVkIiwKCiAgICAgICAgICAgIEZyb20gPSBhby5pZCwKCiAgICAgICAgICAgIFsiUmVmZXJlbmNlIl0gPSBzcGF3blJlZgoKICAgICAgICB9LCBjYWxsYmFjaykKCiAgICBlbmQKCgoKICAgIHNwYXduLnJlY2VpdmUgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBIYW5kbGVycy5yZWNlaXZlKHsKCiAgICAgICAgICAgIEFjdGlvbiA9ICJTcGF3bmVkIiwKCiAgICAgICAgICAgIEZyb20gPSBhby5pZCwKCiAgICAgICAgICAgIFsiUmVmZXJlbmNlIl0gPSBzcGF3blJlZgoKICAgICAgICB9KQoKCgogICAgZW5kCgoKCiAgICByZXR1cm4gc3Bhd24KCmVuZAoKCgotLS0gQXNzaWducyBhIG1lc3NhZ2UgdG8gYSBwcm9jZXNzLgoKLS0gQGZ1bmN0aW9uIGFzc2lnbgoKLS0gQHRwYXJhbSB7dGFibGV9IGFzc2lnbm1lbnQgVGhlIGFzc2lnbm1lbnQgdG8gYXNzaWduCgpmdW5jdGlvbiBhby5hc3NpZ24oYXNzaWdubWVudCkKCiAgICBhc3NlcnQodHlwZShhc3NpZ25tZW50KSA9PSAndGFibGUnLCAnYXNzaWdubWVudCBzaG91bGQgYmUgYSB0YWJsZScpCgogICAgYXNzZXJ0KHR5cGUoYXNzaWdubWVudC5Qcm9jZXNzZXMpID09ICd0YWJsZScsICdQcm9jZXNzZXMgc2hvdWxkIGJlIGEgdGFibGUnKQoKICAgIGFzc2VydCh0eXBlKGFzc2lnbm1lbnQuTWVzc2FnZSkgPT0gInN0cmluZyIsICJNZXNzYWdlIHNob3VsZCBiZSBhIHN0cmluZyIpCgogICAgdGFibGUuaW5zZXJ0KGFvLm91dGJveC5Bc3NpZ25tZW50cywgYXNzaWdubWVudCkKCmVuZAoKCgotLS0gQ2hlY2tzIGlmIGEgbWVzc2FnZSBpcyB0cnVzdGVkLgoKLS0gVGhlIGRlZmF1bHQgc2VjdXJpdHkgbW9kZWwgb2YgQU9TIHByb2Nlc3NlczogVHJ1c3QgYWxsIGFuZCAqb25seSogdGhvc2Ugb24gdGhlIGFvLmF1dGhvcml0aWVzIGxpc3QuCgotLSBAZnVuY3Rpb24gaXNUcnVzdGVkCgotLSBAdHBhcmFtIHt0YWJsZX0gbXNnIFRoZSBtZXNzYWdlIHRvIGNoZWNrCgotLSBAdHJldHVybiB7Ym9vbGVhbn0gVHJ1ZSBpZiB0aGUgbWVzc2FnZSBpcyB0cnVzdGVkLCBmYWxzZSBvdGhlcndpc2UKCmZ1bmN0aW9uIGFvLmlzVHJ1c3RlZChtc2cpCgogICAgZm9yIF8sIGF1dGhvcml0eSBpbiBpcGFpcnMoYW8uYXV0aG9yaXRpZXMpIGRvCgogICAgICAgIGlmIG1zZy5Gcm9tID09IGF1dGhvcml0eSB0aGVuIHJldHVybiB0cnVlIGVuZAoKICAgICAgICBpZiBtc2cuT3duZXIgPT0gYXV0aG9yaXR5IHRoZW4gcmV0dXJuIHRydWUgZW5kCgogICAgZW5kCgogICAgcmV0dXJuIGZhbHNlCgplbmQKCgoKLS0tIFJldHVybnMgdGhlIHJlc3VsdCBvZiB0aGUgcHJvY2Vzcy4KCi0tIEBmdW5jdGlvbiByZXN1bHQKCi0tIEB0cGFyYW0ge3RhYmxlfSByZXN1bHQgVGhlIHJlc3VsdCBvZiB0aGUgcHJvY2VzcwoKLS0gQHRyZXR1cm4ge3RhYmxlfSBUaGUgcmVzdWx0IG9mIHRoZSBwcm9jZXNzLCBpbmNsdWRpbmcgT3V0cHV0LCBNZXNzYWdlcywgU3Bhd25zLCBhbmQgQXNzaWdubWVudHMKCmZ1bmN0aW9uIGFvLnJlc3VsdChyZXN1bHQpCgogICAgLS0gaWYgZXJyb3IgdGhlbiBvbmx5IHNlbmQgdGhlIEVycm9yIHRvIENVCgogICAgaWYgYW8ub3V0Ym94LkVycm9yIG9yIHJlc3VsdC5FcnJvciB0aGVuCgogICAgICAgIHJldHVybiB7RXJyb3IgPSByZXN1bHQuRXJyb3Igb3IgYW8ub3V0Ym94LkVycm9yfQoKICAgIGVuZAoKICAgIHJldHVybiB7CgogICAgICAgIE91dHB1dCA9IHJlc3VsdC5PdXRwdXQgb3IgYW8ub3V0Ym94Lk91dHB1dCwKCiAgICAgICAgTWVzc2FnZXMgPSBhby5vdXRib3guTWVzc2FnZXMsCgogICAgICAgIFNwYXducyA9IGFvLm91dGJveC5TcGF3bnMsCgogICAgICAgIEFzc2lnbm1lbnRzID0gYW8ub3V0Ym94LkFzc2lnbm1lbnRzCgogICAgfQoKZW5kCgoKCgoKLS0tIEFkZCB0aGUgTWF0Y2hTcGVjIHRvIHRoZSBhby5hc3NpZ25hYmxlcyB0YWJsZS4gQSBvcHRpb25hbCBuYW1lIG1heSBiZSBwcm92aWRlZC4KCi0tIFRoaXMgaW1wbGllcyB0aGF0IGFvLmFzc2lnbmFibGVzIG1heSBoYXZlIGJvdGggbnVtYmVyIGFuZCBzdHJpbmcgaW5kaWNlcy4KCi0tIEFkZGVkIGluIHRoZSBhc3NpZ25tZW50IG1vZHVsZS4KCi0tIEBmdW5jdGlvbiBhZGRBc3NpZ25hYmxlCgotLSBAdHBhcmFtID9zdHJpbmd8bnVtYmVyfGFueSBuYW1lT3JNYXRjaFNwZWMgVGhlIG5hbWUgb2YgdGhlIE1hdGNoU3BlYwoKLS0gICAgICAgIHRvIGJlIGFkZGVkIHRvIGFvLmFzc2lnbmFibGVzLiBpZiBhIE1hdGNoU3BlYyBpcyBwcm92aWRlZCwgdGhlbgoKLS0gICAgICAgIG5vIG5hbWUgaXMgaW5jbHVkZWQKCi0tIEB0cGFyYW0gP2FueSBtYXRjaFNwZWMgVGhlIE1hdGNoU3BlYyB0byBiZSBhZGRlZCB0byBhby5hc3NpZ25hYmxlcy4gT25seSBwcm92aWRlZAoKLS0gICAgICAgIGlmIGl0cyBuYW1lIGlzIHBhc3NlZCBhcyB0aGUgZmlyc3QgcGFyYW1ldGVyCgotLSBAdHJldHVybiA/c3RyaW5nfG51bWJlciBuYW1lIFRoZSBuYW1lIG9mIHRoZSBNYXRjaFNwZWMsIGVpdGhlciBhcyBwcm92aWRlZAoKLS0gICAgICAgICAgYXMgYW4gYXJndW1lbnQgb3IgYXMgaW5jcmVtZW50ZWQKCi0tIEBzZWUgYXNzaWdubWVudAoKCgotLS0gUmVtb3ZlIHRoZSBNYXRjaFNwZWMsIGVpdGhlciBieSBuYW1lIG9yIGJ5IGluZGV4CgotLSBJZiB0aGUgbmFtZSBpcyBub3QgZm91bmQsIG9yIGlmIHRoZSBpbmRleCBkb2VzIG5vdCBleGlzdCwgdGhlbiBkbyBub3RoaW5nLgoKLS0gQWRkZWQgaW4gdGhlIGFzc2lnbm1lbnQgbW9kdWxlLgoKLS0gQGZ1bmN0aW9uIHJlbW92ZUFzc2lnbmFibGUKCi0tIEB0cGFyYW0ge3N0cmluZ3xudW1iZXJ9IG5hbWUgVGhlIG5hbWUgb3IgaW5kZXggb2YgdGhlIE1hdGNoU3BlYyB0byBiZSByZW1vdmVkCgotLSBAc2VlIGFzc2lnbm1lbnQKCgoKLS0tIFJldHVybiB3aGV0aGVyIHRoZSBtc2cgaXMgYW4gYXNzaWdubWVudCBvciBub3QuIFRoaXMgY2FuIGJlIGRldGVybWluZWQgYnkgc2ltcGx5IGNoZWNrIHdoZXRoZXIgdGhlIG1zZydzIFRhcmdldCBpcyB0aGlzIHByb2Nlc3MnIGlkCgotLSBBZGRlZCBpbiB0aGUgYXNzaWdubWVudCBtb2R1bGUuCgotLSBAZnVuY3Rpb24gaXNBc3NpZ25tZW50CgotLSBAcGFyYW0gbXNnIFRoZSBtc2cgdG8gYmUgY2hlY2tlZAoKLS0gQHRyZXR1cm4gYm9vbGVhbiBpc0Fzc2lnbm1lbnQKCi0tIEBzZWUgYXNzaWdubWVudAoKCgotLS0gQ2hlY2sgd2hldGhlciB0aGUgbXNnIG1hdGNoZXMgYW55IGFzc2lnbmFibGUgTWF0Y2hTcGVjLgoKLS0gSWYgbm90IGFzc2lnbmFibGVzIGFyZSBjb25maWd1cmVkLCB0aGUgbXNnIGlzIGRlZW1lZCBub3QgYXNzaWduYWJsZSwgYnkgZGVmYXVsdC4KCi0tIEFkZGVkIGluIHRoZSBhc3NpZ25tZW50IG1vZHVsZS4KCi0tIEBmdW5jdGlvbiBpc0Fzc2lnbmFibGUKCi0tIEBwYXJhbSBtc2cgVGhlIG1zZyB0byBiZSBjaGVja2VkCgotLSBAdHJldHVybiBib29sZWFuIGlzQXNzaWduYWJsZQoKLS0gQHNlZSBhc3NpZ25tZW50CgoKCnJldHVybiBhbwoAQuDxAQvkFi0tLSBUaGUgQXNzaWdubWVudCBtb2R1bGUgcHJvdmlkZXMgZnVuY3Rpb25hbGl0eSBmb3IgaGFuZGxpbmcgYXNzaWdubWVudHMuIFJldHVybnMgdGhlIEFzc2lnbm1lbnQgdGFibGUuCgotLSBAbW9kdWxlIGFzc2lnbm1lbnQKCgoKLS0tIFRoZSBBc3NpZ25tZW50IG1vZHVsZQoKLS0gQHRhYmxlIEFzc2lnbm1lbnQKCi0tIEBmaWVsZCBfdmVyc2lvbiBUaGUgdmVyc2lvbiBudW1iZXIgb2YgdGhlIGFzc2lnbm1lbnQgbW9kdWxlCgotLSBAZmllbGQgaW5pdCBUaGUgaW5pdCBmdW5jdGlvbgoKbG9jYWwgQXNzaWdubWVudCA9IHsgX3ZlcnNpb24gPSAiMC4xLjAiIH0KCmxvY2FsIHV0aWxzID0gcmVxdWlyZSgnLnV0aWxzJykKCgoKLS0tIEltcGxlbWVudCBhc3NpZ25hYmxlIHBvbHlmaWxscyBvbiBhby4KCi0tIENyZWF0ZXMgYWRkQXNzaWduYWJsZSwgcmVtb3ZlQXNzaWduYWJsZSwgaXNBc3NpZ25tZW50LCBhbmQgaXNBc3NpZ25hYmxlIGZpZWxkcyBvbiBhby4KCi0tIEBmdW5jdGlvbiBpbml0CgotLSBAdHBhcmFtIHt0YWJsZX0gYW8gVGhlIGFvIGVudmlyb25tZW50IG9iamVjdAoKLS0gQHNlZSBhby5hZGRBc3NpZ25hYmxlCgotLSBAc2VlIGFvLnJlbW92ZUFzc2lnbmFibGUKCi0tIEBzZWUgYW8uaXNBc3NpZ25tZW50CgotLSBAc2VlIGFvLmlzQXNzaWduYWJsZQoKZnVuY3Rpb24gQXNzaWdubWVudC5pbml0IChhbykKCiAgLS0gRmluZCB0aGUgaW5kZXggb2YgYW4gb2JqZWN0IGluIGFuIGFycmF5IGJ5IGEgZ2l2ZW4gcHJvcGVydHkKCiAgLS0gQGxmdW5jdGlvbiBmaW5kSW5kZXhCeVByb3AKCiAgLS0gQHRwYXJhbSB7dGFibGV9IGFycmF5IFRoZSBhcnJheSB0byBzZWFyY2gKCiAgLS0gQHRwYXJhbSB7c3RyaW5nfSBwcm9wIFRoZSBwcm9wZXJ0eSB0byBzZWFyY2ggYnkKCiAgLS0gQHRwYXJhbSB7YW55fSB2YWx1ZSBUaGUgdmFsdWUgdG8gc2VhcmNoIGZvcgoKICAtLSBAdHJldHVybiB7bnVtYmVyfG5pbH0gVGhlIGluZGV4IG9mIHRoZSBvYmplY3QsIG9yIG5pbCBpZiBub3QgZm91bmQKCiAgbG9jYWwgZnVuY3Rpb24gZmluZEluZGV4QnlQcm9wKGFycmF5LCBwcm9wLCB2YWx1ZSkKCiAgICBmb3IgaW5kZXgsIG9iamVjdCBpbiBpcGFpcnMoYXJyYXkpIGRvCgogICAgICBpZiBvYmplY3RbcHJvcF0gPT0gdmFsdWUgdGhlbiByZXR1cm4gaW5kZXggZW5kCgogICAgZW5kCgoKCiAgICByZXR1cm4gbmlsCgogIGVuZAoKCgogIGFvLmFzc2lnbmFibGVzID0gYW8uYXNzaWduYWJsZXMgb3Ige30KCgoKICBhby5hZGRBc3NpZ25hYmxlID0gYW8uYWRkQXNzaWduYWJsZSBvciBmdW5jdGlvbiAoLi4uKQoKICAgIGxvY2FsIG5hbWUgPSBuaWwKCiAgICBsb2NhbCBtYXRjaFNwZWMgPSBuaWwKCgoKICAgIGxvY2FsIGlkeCA9IG5pbAoKCgogICAgLS0gSW5pdGlhbGl6ZSB0aGUgcGFyYW1ldGVycyBiYXNlZCBvbiBhcmd1bWVudHMKCiAgICBpZiBzZWxlY3QoIiMiLCAuLi4pID09IDEgdGhlbgoKICAgICAgbWF0Y2hTcGVjID0gc2VsZWN0KDEsIC4uLikKCiAgICBlbHNlCgogICAgICBuYW1lID0gc2VsZWN0KDEsIC4uLikKCiAgICAgIG1hdGNoU3BlYyA9IHNlbGVjdCgyLCAuLi4pCgogICAgICBhc3NlcnQodHlwZShuYW1lKSA9PSAnc3RyaW5nJywgJ01hdGNoU3BlYyBuYW1lIE1VU1QgYmUgYSBzdHJpbmcnKQoKICAgIGVuZAoKCgogICAgaWYgbmFtZSB0aGVuIGlkeCA9IGZpbmRJbmRleEJ5UHJvcChhby5hc3NpZ25hYmxlcywgIm5hbWUiLCBuYW1lKSBlbmQKCgoKICAgIGlmIGlkeCB+PSBuaWwgYW5kIGlkeCA+IDAgdGhlbgoKICAgICAgLS0gZm91bmQgdXBkYXRlCgogICAgICBhby5hc3NpZ25hYmxlc1tpZHhdLnBhdHRlcm4gPSBtYXRjaFNwZWMKCiAgICBlbHNlCgogICAgICAtLSBhcHBlbmQgdGhlIG5ldyBhc3NpZ25hYmxlLCBpbmNsdWRpbmcgcG90ZW50aWFsbHkgbmlsIG5hbWUKCiAgICAgIHRhYmxlLmluc2VydChhby5hc3NpZ25hYmxlcywgeyBwYXR0ZXJuID0gbWF0Y2hTcGVjLCBuYW1lID0gbmFtZSB9KQoKICAgIGVuZAoKICBlbmQKCgoKICBhby5yZW1vdmVBc3NpZ25hYmxlID0gYW8ucmVtb3ZlQXNzaWduYWJsZSBvciBmdW5jdGlvbiAobmFtZSkKCiAgICBsb2NhbCBpZHggPSBuaWwKCgoKICAgIGlmIHR5cGUobmFtZSkgPT0gJ3N0cmluZycgdGhlbiBpZHggPSBmaW5kSW5kZXhCeVByb3AoYW8uYXNzaWduYWJsZXMsICJuYW1lIiwgbmFtZSkKCiAgICBlbHNlCgogICAgICBhc3NlcnQodHlwZShuYW1lKSA9PSAnbnVtYmVyJywgJ2luZGV4IE1VU1QgYmUgYSBudW1iZXInKQoKICAgICAgaWR4ID0gbmFtZQoKICAgIGVuZAoKCgogICAgaWYgaWR4ID09IG5pbCBvciBpZHggPD0gMCBvciBpZHggPiAjYW8uYXNzaWduYWJsZXMgdGhlbiByZXR1cm4gZW5kCgoKCiAgICB0YWJsZS5yZW1vdmUoYW8uYXNzaWduYWJsZXMsIGlkeCkKCiAgZW5kCgoKCiAgYW8uaXNBc3NpZ25tZW50ID0gYW8uaXNBc3NpZ25tZW50IG9yIGZ1bmN0aW9uIChtc2cpIHJldHVybiBtc2cuVGFyZ2V0IH49IGFvLmlkIGVuZAoKCgogIGFvLmlzQXNzaWduYWJsZSA9IGFvLmlzQXNzaWduYWJsZSBvciBmdW5jdGlvbiAobXNnKQoKICAgIGZvciBfLCBhc3NpZ25hYmxlIGluIHBhaXJzKGFvLmFzc2lnbmFibGVzKSBkbwoKICAgICAgaWYgdXRpbHMubWF0Y2hlc1NwZWMobXNnLCBhc3NpZ25hYmxlLnBhdHRlcm4pIHRoZW4gcmV0dXJuIHRydWUgZW5kCgogICAgZW5kCgoKCiAgICAtLSBJZiBhc3NpZ25hYmxlcyBpcyBlbXB0eSwgdGhlIHRoZSBhYm92ZSBsb29wIHdpbGwgbm9vcCwKCiAgICAtLSBhbmQgdGhpcyBleHByZXNzaW9uIHdpbGwgZXhlY3V0ZS4KCiAgICAtLQoKICAgIC0tIEluIG90aGVyIHdvcmRzLCBhbGwgbXNncyBhcmUgbm90IGFzc2lnbmFibGUsIGJ5IGRlZmF1bHQuCgogICAgcmV0dXJuIGZhbHNlCgogIGVuZAoKZW5kCgoKCnJldHVybiBBc3NpZ25tZW50CgBC0IgCC9M5LS1bWwoKCgogYmFzZTY0IC0tIHYxLjUuMyBwdWJsaWMgZG9tYWluIEx1YSBiYXNlNjQgZW5jb2Rlci9kZWNvZGVyCgogbm8gd2FycmFudHkgaW1wbGllZDsgdXNlIGF0IHlvdXIgb3duIHJpc2sKCgoKIE5lZWRzIGJpdDMyLmV4dHJhY3QgZnVuY3Rpb24uIElmIG5vdCBwcmVzZW50IGl0J3MgaW1wbGVtZW50ZWQgdXNpbmcgQml0T3AKCiBvciBMdWEgNS4zIG5hdGl2ZSBiaXQgb3BlcmF0b3JzLiBGb3IgTHVhIDUuMSBmYWxsYmFja3MgdG8gcHVyZSBMdWEKCiBpbXBsZW1lbnRhdGlvbiBpbnNwaXJlZCBieSBSaWNpIExha2UncyBwb3N0OgoKICAgaHR0cDovL3JpY2lsYWtlLmJsb2dzcG90LmNvLnVrLzIwMDcvMTAvaXRlcmF0aW5nLWJpdHMtaW4tbHVhLmh0bWwKCgoKIGF1dGhvcjogSWx5YSBLb2xiaW4gKGlza29sYmluQGdtYWlsLmNvbSkKCiB1cmw6IGdpdGh1Yi5jb20vaXNrb2xiaW4vbGJhc2U2NAoKCgogQ09NUEFUSUJJTElUWQoKCgogTHVhIDUuMSssIEx1YUpJVAoKCgogTElDRU5TRQoKCgogU2VlIGVuZCBvZiBmaWxlIGZvciBsaWNlbnNlIGluZm9ybWF0aW9uLgoKCgotLV1dCgoKCgoKbG9jYWwgYmFzZTY0ID0ge30KCgoKbG9jYWwgZXh0cmFjdCA9IF9HLmJpdDMyIGFuZCBfRy5iaXQzMi5leHRyYWN0IC0tIEx1YSA1LjIvTHVhIDUuMyBpbiBjb21wYXRpYmlsaXR5IG1vZGUKCmlmIG5vdCBleHRyYWN0IHRoZW4KCglpZiBfRy5iaXQgdGhlbiAtLSBMdWFKSVQKCgkJbG9jYWwgc2hsLCBzaHIsIGJhbmQgPSBfRy5iaXQubHNoaWZ0LCBfRy5iaXQucnNoaWZ0LCBfRy5iaXQuYmFuZAoKCQlleHRyYWN0ID0gZnVuY3Rpb24oIHYsIGZyb20sIHdpZHRoICkKCgkJCXJldHVybiBiYW5kKCBzaHIoIHYsIGZyb20gKSwgc2hsKCAxLCB3aWR0aCApIC0gMSApCgoJCWVuZAoKCWVsc2VpZiBfRy5fVkVSU0lPTiA9PSAiTHVhIDUuMSIgdGhlbgoKCQlleHRyYWN0ID0gZnVuY3Rpb24oIHYsIGZyb20sIHdpZHRoICkKCgkJCWxvY2FsIHcgPSAwCgoJCQlsb2NhbCBmbGFnID0gMl5mcm9tCgoJCQlmb3IgaSA9IDAsIHdpZHRoLTEgZG8KCgkJCQlsb2NhbCBmbGFnMiA9IGZsYWcgKyBmbGFnCgoJCQkJaWYgdiAlIGZsYWcyID49IGZsYWcgdGhlbgoKCQkJCQl3ID0gdyArIDJeaQoKCQkJCWVuZAoKCQkJCWZsYWcgPSBmbGFnMgoKCQkJZW5kCgoJCQlyZXR1cm4gdwoKCQllbmQKCgllbHNlIC0tIEx1YSA1LjMrCgoJCWV4dHJhY3QgPSBsb2FkW1tyZXR1cm4gZnVuY3Rpb24oIHYsIGZyb20sIHdpZHRoICkKCgkJCXJldHVybiAoIHYgPj4gZnJvbSApICYgKCgxIDw8IHdpZHRoKSAtIDEpCgoJCWVuZF1dKCkKCgllbmQKCmVuZAoKCgoKCmZ1bmN0aW9uIGJhc2U2NC5tYWtlZW5jb2RlciggczYyLCBzNjMsIHNwYWQgKQoKCWxvY2FsIGVuY29kZXIgPSB7fQoKCWZvciBiNjRjb2RlLCBjaGFyIGluIHBhaXJze1swXT0nQScsJ0InLCdDJywnRCcsJ0UnLCdGJywnRycsJ0gnLCdJJywnSicsCgoJCSdLJywnTCcsJ00nLCdOJywnTycsJ1AnLCdRJywnUicsJ1MnLCdUJywnVScsJ1YnLCdXJywnWCcsJ1knLAoKCQknWicsJ2EnLCdiJywnYycsJ2QnLCdlJywnZicsJ2cnLCdoJywnaScsJ2onLCdrJywnbCcsJ20nLCduJywKCgkJJ28nLCdwJywncScsJ3InLCdzJywndCcsJ3UnLCd2JywndycsJ3gnLCd5JywneicsJzAnLCcxJywnMicsCgoJCSczJywnNCcsJzUnLCc2JywnNycsJzgnLCc5JyxzNjIgb3IgJysnLHM2MyBvcicvJyxzcGFkIG9yJz0nfSBkbwoKCQllbmNvZGVyW2I2NGNvZGVdID0gY2hhcjpieXRlKCkKCgllbmQKCglyZXR1cm4gZW5jb2RlcgoKZW5kCgoKCmZ1bmN0aW9uIGJhc2U2NC5tYWtlZGVjb2RlciggczYyLCBzNjMsIHNwYWQgKQoKCWxvY2FsIGRlY29kZXIgPSB7fQoKCWZvciBiNjRjb2RlLCBjaGFyY29kZSBpbiBwYWlycyggYmFzZTY0Lm1ha2VlbmNvZGVyKCBzNjIsIHM2Mywgc3BhZCApKSBkbwoKCQlkZWNvZGVyW2NoYXJjb2RlXSA9IGI2NGNvZGUKCgllbmQKCglyZXR1cm4gZGVjb2RlcgoKZW5kCgoKCmxvY2FsIERFRkFVTFRfRU5DT0RFUiA9IGJhc2U2NC5tYWtlZW5jb2RlcigpCgpsb2NhbCBERUZBVUxUX0RFQ09ERVIgPSBiYXNlNjQubWFrZWRlY29kZXIoKQoKCgpsb2NhbCBjaGFyLCBjb25jYXQgPSBzdHJpbmcuY2hhciwgdGFibGUuY29uY2F0CgoKCmZ1bmN0aW9uIGJhc2U2NC5lbmNvZGUoIHN0ciwgZW5jb2RlciwgdXNlY2FjaGluZyApCgoJZW5jb2RlciA9IGVuY29kZXIgb3IgREVGQVVMVF9FTkNPREVSCgoJbG9jYWwgdCwgaywgbiA9IHt9LCAxLCAjc3RyCgoJbG9jYWwgbGFzdG4gPSBuICUgMwoKCWxvY2FsIGNhY2hlID0ge30KCglmb3IgaSA9IDEsIG4tbGFzdG4sIDMgZG8KCgkJbG9jYWwgYSwgYiwgYyA9IHN0cjpieXRlKCBpLCBpKzIgKQoKCQlsb2NhbCB2ID0gYSoweDEwMDAwICsgYioweDEwMCArIGMKCgkJbG9jYWwgcwoKCQlpZiB1c2VjYWNoaW5nIHRoZW4KCgkJCXMgPSBjYWNoZVt2XQoKCQkJaWYgbm90IHMgdGhlbgoKCQkJCXMgPSBjaGFyKGVuY29kZXJbZXh0cmFjdCh2LDE4LDYpXSwgZW5jb2RlcltleHRyYWN0KHYsMTIsNildLCBlbmNvZGVyW2V4dHJhY3Qodiw2LDYpXSwgZW5jb2RlcltleHRyYWN0KHYsMCw2KV0pCgoJCQkJY2FjaGVbdl0gPSBzCgoJCQllbmQKCgkJZWxzZQoKCQkJcyA9IGNoYXIoZW5jb2RlcltleHRyYWN0KHYsMTgsNildLCBlbmNvZGVyW2V4dHJhY3QodiwxMiw2KV0sIGVuY29kZXJbZXh0cmFjdCh2LDYsNildLCBlbmNvZGVyW2V4dHJhY3QodiwwLDYpXSkKCgkJZW5kCgoJCXRba10gPSBzCgoJCWsgPSBrICsgMQoKCWVuZAoKCWlmIGxhc3RuID09IDIgdGhlbgoKCQlsb2NhbCBhLCBiID0gc3RyOmJ5dGUoIG4tMSwgbiApCgoJCWxvY2FsIHYgPSBhKjB4MTAwMDAgKyBiKjB4MTAwCgoJCXRba10gPSBjaGFyKGVuY29kZXJbZXh0cmFjdCh2LDE4LDYpXSwgZW5jb2RlcltleHRyYWN0KHYsMTIsNildLCBlbmNvZGVyW2V4dHJhY3Qodiw2LDYpXSwgZW5jb2Rlcls2NF0pCgoJZWxzZWlmIGxhc3RuID09IDEgdGhlbgoKCQlsb2NhbCB2ID0gc3RyOmJ5dGUoIG4gKSoweDEwMDAwCgoJCXRba10gPSBjaGFyKGVuY29kZXJbZXh0cmFjdCh2LDE4LDYpXSwgZW5jb2RlcltleHRyYWN0KHYsMTIsNildLCBlbmNvZGVyWzY0XSwgZW5jb2Rlcls2NF0pCgoJZW5kCgoJcmV0dXJuIGNvbmNhdCggdCApCgplbmQKCgoKZnVuY3Rpb24gYmFzZTY0LmRlY29kZSggYjY0LCBkZWNvZGVyLCB1c2VjYWNoaW5nICkKCglkZWNvZGVyID0gZGVjb2RlciBvciBERUZBVUxUX0RFQ09ERVIKCglsb2NhbCBwYXR0ZXJuID0gJ1teJXclKyUvJT1dJwoKCWlmIGRlY29kZXIgdGhlbgoKCQlsb2NhbCBzNjIsIHM2MwoKCQlmb3IgY2hhcmNvZGUsIGI2NGNvZGUgaW4gcGFpcnMoIGRlY29kZXIgKSBkbwoKCQkJaWYgYjY0Y29kZSA9PSA2MiB0aGVuIHM2MiA9IGNoYXJjb2RlCgoJCQllbHNlaWYgYjY0Y29kZSA9PSA2MyB0aGVuIHM2MyA9IGNoYXJjb2RlCgoJCQllbmQKCgkJZW5kCgoJCXBhdHRlcm4gPSAoJ1teJSV3JSUlcyUlJXMlJT1dJyk6Zm9ybWF0KCBjaGFyKHM2MiksIGNoYXIoczYzKSApCgoJZW5kCgoJYjY0ID0gYjY0OmdzdWIoIHBhdHRlcm4sICcnICkKCglsb2NhbCBjYWNoZSA9IHVzZWNhY2hpbmcgYW5kIHt9CgoJbG9jYWwgdCwgayA9IHt9LCAxCgoJbG9jYWwgbiA9ICNiNjQKCglsb2NhbCBwYWRkaW5nID0gYjY0OnN1YigtMikgPT0gJz09JyBhbmQgMiBvciBiNjQ6c3ViKC0xKSA9PSAnPScgYW5kIDEgb3IgMAoKCWZvciBpID0gMSwgcGFkZGluZyA+IDAgYW5kIG4tNCBvciBuLCA0IGRvCgoJCWxvY2FsIGEsIGIsIGMsIGQgPSBiNjQ6Ynl0ZSggaSwgaSszICkKCgkJbG9jYWwgcwoKCQlpZiB1c2VjYWNoaW5nIHRoZW4KCgkJCWxvY2FsIHYwID0gYSoweDEwMDAwMDAgKyBiKjB4MTAwMDAgKyBjKjB4MTAwICsgZAoKCQkJcyA9IGNhY2hlW3YwXQoKCQkJaWYgbm90IHMgdGhlbgoKCQkJCWxvY2FsIHYgPSBkZWNvZGVyW2FdKjB4NDAwMDAgKyBkZWNvZGVyW2JdKjB4MTAwMCArIGRlY29kZXJbY10qMHg0MCArIGRlY29kZXJbZF0KCgkJCQlzID0gY2hhciggZXh0cmFjdCh2LDE2LDgpLCBleHRyYWN0KHYsOCw4KSwgZXh0cmFjdCh2LDAsOCkpCgoJCQkJY2FjaGVbdjBdID0gcwoKCQkJZW5kCgoJCWVsc2UKCgkJCWxvY2FsIHYgPSBkZWNvZGVyW2FdKjB4NDAwMDAgKyBkZWNvZGVyW2JdKjB4MTAwMCArIGRlY29kZXJbY10qMHg0MCArIGRlY29kZXJbZF0KCgkJCXMgPSBjaGFyKCBleHRyYWN0KHYsMTYsOCksIGV4dHJhY3Qodiw4LDgpLCBleHRyYWN0KHYsMCw4KSkKCgkJZW5kCgoJCXRba10gPSBzCgoJCWsgPSBrICsgMQoKCWVuZAoKCWlmIHBhZGRpbmcgPT0gMSB0aGVuCgoJCWxvY2FsIGEsIGIsIGMgPSBiNjQ6Ynl0ZSggbi0zLCBuLTEgKQoKCQlsb2NhbCB2ID0gZGVjb2RlclthXSoweDQwMDAwICsgZGVjb2RlcltiXSoweDEwMDAgKyBkZWNvZGVyW2NdKjB4NDAKCgkJdFtrXSA9IGNoYXIoIGV4dHJhY3QodiwxNiw4KSwgZXh0cmFjdCh2LDgsOCkpCgoJZWxzZWlmIHBhZGRpbmcgPT0gMiB0aGVuCgoJCWxvY2FsIGEsIGIgPSBiNjQ6Ynl0ZSggbi0zLCBuLTIgKQoKCQlsb2NhbCB2ID0gZGVjb2RlclthXSoweDQwMDAwICsgZGVjb2RlcltiXSoweDEwMDAKCgkJdFtrXSA9IGNoYXIoIGV4dHJhY3QodiwxNiw4KSkKCgllbmQKCglyZXR1cm4gY29uY2F0KCB0ICkKCmVuZAoKCgpyZXR1cm4gYmFzZTY0CgoKCi0tW1sKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKVGhpcyBzb2Z0d2FyZSBpcyBhdmFpbGFibGUgdW5kZXIgMiBsaWNlbnNlcyAtLSBjaG9vc2Ugd2hpY2hldmVyIHlvdSBwcmVmZXIuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCkFMVEVSTkFUSVZFIEEgLSBNSVQgTGljZW5zZQoKQ29weXJpZ2h0IChjKSAyMDE4IElseWEgS29sYmluCgpQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5IG9mCgp0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8gZGVhbCBpbgoKdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cyB0bwoKdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbCBjb3BpZXMKCm9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzIGZ1cm5pc2hlZCB0byBkbwoKc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsCgpjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKCklNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAoKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCgpBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCgpMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLAoKT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKClNPRlRXQVJFLgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpBTFRFUk5BVElWRSBCIC0gUHVibGljIERvbWFpbiAod3d3LnVubGljZW5zZS5vcmcpCgpUaGlzIGlzIGZyZWUgYW5kIHVuZW5jdW1iZXJlZCBzb2Z0d2FyZSByZWxlYXNlZCBpbnRvIHRoZSBwdWJsaWMgZG9tYWluLgoKQW55b25lIGlzIGZyZWUgdG8gY29weSwgbW9kaWZ5LCBwdWJsaXNoLCB1c2UsIGNvbXBpbGUsIHNlbGwsIG9yIGRpc3RyaWJ1dGUgdGhpcwoKc29mdHdhcmUsIGVpdGhlciBpbiBzb3VyY2UgY29kZSBmb3JtIG9yIGFzIGEgY29tcGlsZWQgYmluYXJ5LCBmb3IgYW55IHB1cnBvc2UsCgpjb21tZXJjaWFsIG9yIG5vbi1jb21tZXJjaWFsLCBhbmQgYnkgYW55IG1lYW5zLgoKSW4ganVyaXNkaWN0aW9ucyB0aGF0IHJlY29nbml6ZSBjb3B5cmlnaHQgbGF3cywgdGhlIGF1dGhvciBvciBhdXRob3JzIG9mIHRoaXMKCnNvZnR3YXJlIGRlZGljYXRlIGFueSBhbmQgYWxsIGNvcHlyaWdodCBpbnRlcmVzdCBpbiB0aGUgc29mdHdhcmUgdG8gdGhlIHB1YmxpYwoKZG9tYWluLiBXZSBtYWtlIHRoaXMgZGVkaWNhdGlvbiBmb3IgdGhlIGJlbmVmaXQgb2YgdGhlIHB1YmxpYyBhdCBsYXJnZSBhbmQgdG8KCnRoZSBkZXRyaW1lbnQgb2Ygb3VyIGhlaXJzIGFuZCBzdWNjZXNzb3JzLiBXZSBpbnRlbmQgdGhpcyBkZWRpY2F0aW9uIHRvIGJlIGFuCgpvdmVydCBhY3Qgb2YgcmVsaW5xdWlzaG1lbnQgaW4gcGVycGV0dWl0eSBvZiBhbGwgcHJlc2VudCBhbmQgZnV0dXJlIHJpZ2h0cyB0bwoKdGhpcyBzb2Z0d2FyZSB1bmRlciBjb3B5cmlnaHQgbGF3LgoKVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEICJBUyBJUyIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1IKCklNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLAoKRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFCgpBVVRIT1JTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTgoKQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTgoKV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCi0tXV0AQrDCAgujlAMtLVtbLS0KCmx1YS1iaW50IC0gdjAuNS4xIC0gMjYvSnVuLzIwMjMKCkVkdWFyZG8gQmFydCAtIGVkdWI0cnRAZ21haWwuY29tCgpodHRwczovL2dpdGh1Yi5jb20vZWR1YmFydC9sdWEtYmludAoKCgpTbWFsbCBwb3J0YWJsZSBhcmJpdHJhcnktcHJlY2lzaW9uIGludGVnZXIgYXJpdGhtZXRpYyBsaWJyYXJ5IGluIHB1cmUgTHVhIGZvcgoKY29tcHV0aW5nIHdpdGggbGFyZ2UgaW50ZWdlcnMuCgoKCkRpZmZlcmVudCBmcm9tIG1vc3QgYXJiaXRyYXJ5LXByZWNpc2lvbiBpbnRlZ2VyIGxpYnJhcmllcyBpbiBwdXJlIEx1YSBvdXQgdGhlcmUgdGhpcyBvbmUKCnVzZXMgYW4gYXJyYXkgb2YgbHVhIGludGVnZXJzIGFzIHVuZGVybHlpbmcgZGF0YS10eXBlIGluIGl0cyBpbXBsZW1lbnRhdGlvbiBpbnN0ZWFkIG9mCgp1c2luZyBzdHJpbmdzIG9yIGxhcmdlIHRhYmxlcywgdGhpcyBtYWtlIGl0IGVmZmljaWVudCBmb3Igd29ya2luZyB3aXRoIGZpeGVkIHdpZHRoIGludGVnZXJzCgphbmQgdG8gbWFrZSBiaXR3aXNlIG9wZXJhdGlvbnMuCgoKCiMjIERlc2lnbiBnb2FscwoKCgpUaGUgbWFpbiBkZXNpZ24gZ29hbCBvZiB0aGlzIGxpYnJhcnkgaXMgdG8gYmUgc21hbGwsIGNvcnJlY3QsIHNlbGYgY29udGFpbmVkIGFuZCB1c2UgZmV3CgpyZXNvdXJjZXMgd2hpbGUgcmV0YWluaW5nIGFjY2VwdGFibGUgcGVyZm9ybWFuY2UgYW5kIGZlYXR1cmUgY29tcGxldGVuZXNzLgoKCgpUaGUgbGlicmFyeSBpcyBkZXNpZ25lZCB0byBmb2xsb3cgcmVjZW50IEx1YSBpbnRlZ2VyIHNlbWFudGljcywgdGhpcyBtZWFucyB0aGF0CgppbnRlZ2VyIG92ZXJmbG93IHdhcnBzIGFyb3VuZCwKCnNpZ25lZCBpbnRlZ2VycyBhcmUgaW1wbGVtZW50ZWQgdXNpbmcgdHdvLWNvbXBsZW1lbnQgYXJpdGhtZXRpYyBydWxlcywKCmludGVnZXIgZGl2aXNpb24gb3BlcmF0aW9ucyByb3VuZHMgdG93YXJkcyBtaW51cyBpbmZpbml0eSwKCmFueSBtaXhlZCBvcGVyYXRpb25zIHdpdGggZmxvYXQgbnVtYmVycyBwcm9tb3RlcyB0aGUgdmFsdWUgdG8gYSBmbG9hdCwKCmFuZCB0aGUgdXN1YWwgZGl2aXNpb24vcG93ZXIgb3BlcmF0aW9uIGFsd2F5cyBwcm9tb3RlcyB0byBmbG9hdHMuCgoKClRoZSBsaWJyYXJ5IGlzIGRlc2lnbmVkIHRvIGJlIHBvc3NpYmxlIHRvIHdvcmsgd2l0aCBvbmx5IHVuc2lnbmVkIGludGVnZXIgYXJpdGhtZXRpYwoKd2hlbiB1c2luZyB0aGUgcHJvcGVyIG1ldGhvZHMuCgoKCkFsbCB0aGUgbHVhIGFyaXRobWV0aWMgb3BlcmF0b3JzICgrLCAtLCAqLCAvLywgLywgJSkgYW5kIGJpdHdpc2Ugb3BlcmF0b3JzICgmLCB8LCB+LCA8PCwgPj4pCgphcmUgaW1wbGVtZW50ZWQgYXMgbWV0YW1ldGhvZHMuCgoKClRoZSBpbnRlZ2VyIHNpemUgbXVzdCBiZSBmaXhlZCBpbiBhZHZhbmNlIGFuZCB0aGUgbGlicmFyeSBpcyBkZXNpZ25lZCB0byBiZSBtb3JlIGVmZmljaWVudCB3aGVuCgp3b3JraW5nIHdpdGggaW50ZWdlcnMgb2Ygc2l6ZXMgYmV0d2VlbiA2NC00MDk2IGJpdHMuIElmIHlvdSBuZWVkIHRvIHdvcmsgd2l0aCByZWFsbHkgaHVnZSBudW1iZXJzCgp3aXRob3V0IHNpemUgcmVzdHJpY3Rpb25zIHRoZW4gdXNlIGFub3RoZXIgbGlicmFyeS4gVGhpcyBjaG9pY2UgaGFzIGJlZW4gbWFkZSB0byBoYXZlIG1vcmUgZWZmaWNpZW5jeQoKaW4gdGhhdCBzcGVjaWZpYyBzaXplIHJhbmdlLgoKCgojIyBVc2FnZQoKCgpGaXJzdCBvbiB5b3Ugc2hvdWxkIHJlcXVpcmUgdGhlIGJpbnQgZmlsZSBpbmNsdWRpbmcgaG93IG1hbnkgYml0cyB0aGUgYmludCBtb2R1bGUgd2lsbCB3b3JrIHdpdGgsCgpieSBjYWxsaW5nIHRoZSByZXR1cm5lZCBmdW5jdGlvbiBmcm9tIHRoZSByZXF1aXJlLCBmb3IgZXhhbXBsZToKCgoKYGBgbHVhCgpsb2NhbCBiaW50ID0gcmVxdWlyZSAnYmludCcoMTAyNCkKCmBgYAoKCgpGb3IgbW9yZSBpbmZvcm1hdGlvbiBhYm91dCBpdHMgYXJndW1lbnRzIHNlZSBAe25ld21vZHVsZX0uCgpUaGVuIHdoZW4geW91IG5lZWQgY3JlYXRlIGEgYmludCwgeW91IGNhbiB1c2Ugb25lIG9mIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb25zOgoKCgoqIEB7YmludC5mcm9tdWludGVnZXJ9IChjb252ZXJ0IGZyb20gbHVhIGludGVnZXJzLCBidXQgcmVhZCBhcyB1bnNpZ25lZCBpbnRlZ2VyKQoKKiBAe2JpbnQuZnJvbWludGVnZXJ9IChjb252ZXJ0IGZyb20gbHVhIGludGVnZXJzLCBwcmVzZXJ2aW5nIHRoZSBzaWduKQoKKiBAe2JpbnQuZnJvbWJhc2V9IChjb252ZXJ0IGZyb20gYXJiaXRyYXJ5IGJhc2VzLCBsaWtlIGhleGFkZWNpbWFsKQoKKiBAe2JpbnQuZnJvbXN0cmluZ30gKGNvbnZlcnQgZnJvbSBhcmJpdHJhcnkgc3RyaW5nLCBzdXBwb3J0IGJpbmFyeS9oZXhhZGVjaW1hbC9kZWNpbWFsKQoKKiBAe2JpbnQudHJ1bmN9IChjb252ZXJ0IGZyb20gbHVhIG51bWJlcnMsIHRydW5jYXRpbmcgdGhlIGZyYWN0aW9uYWwgcGFydCkKCiogQHtiaW50Lm5ld30gKGNvbnZlcnQgZnJvbSBhbnl0aGluZywgYXNzZXJ0cyBvbiBpbnZhbGlkIGludGVnZXJzKQoKKiBAe2JpbnQudG9iaW50fSAoY29udmVydCBmcm9tIGFueXRoaW5nLCByZXR1cm5zIG5pbCBvbiBpbnZhbGlkIGludGVnZXJzKQoKKiBAe2JpbnQucGFyc2V9IChjb252ZXJ0IGZyb20gYW55dGhpbmcsIHJldHVybnMgYSBsdWEgbnVtYmVyIGFzIGZhbGxiYWNrKQoKKiBAe2JpbnQuemVyb30KCiogQHtiaW50Lm9uZX0KCiogYGJpbnRgCgoKCllvdSBjYW4gYWxzbyBjYWxsIGBiaW50YCBhcyBpdCBpcyBhbiBhbGlhcyB0byBgYmludC5uZXdgLgoKSW4gZG91YnQgdXNlIEB7YmludC5uZXd9IHRvIGNyZWF0ZSBhIG5ldyBiaW50LgoKCgpUaGVuIHlvdSBjYW4gdXNlIGFsbCB0aGUgdXN1YWwgbHVhIG51bWVyaWMgb3BlcmF0aW9ucyBvbiBpdCwKCmFsbCB0aGUgYXJpdGhtZXRpYyBtZXRhbWV0aG9kcyBhcmUgaW1wbGVtZW50ZWQuCgpXaGVuIHlvdSBhcmUgZG9uZSBjb21wdXRpbmcgYW5kIG5lZWQgdG8gZ2V0IHRoZSByZXN1bHQsCgpnZXQgdGhlIG91dHB1dCBmcm9tIG9uZSBvZiB0aGUgZm9sbG93aW5nIGZ1bmN0aW9uczoKCgoKKiBAe2JpbnQudG91aW50ZWdlcn0gKGNvbnZlcnQgdG8gYSBsdWEgaW50ZWdlciwgd3JhcHMgYXJvdW5kIGFzIGFuIHVuc2lnbmVkIGludGVnZXIpCgoqIEB7YmludC50b2ludGVnZXJ9IChjb252ZXJ0IHRvIGEgbHVhIGludGVnZXIsIHdyYXBzIGFyb3VuZCwgcHJlc2VydmVzIHRoZSBzaWduKQoKKiBAe2JpbnQudG9udW1iZXJ9IChjb252ZXJ0IHRvIGx1YSBmbG9hdCwgbG9zaW5nIHByZWNpc2lvbikKCiogQHtiaW50LnRvYmFzZX0gKGNvbnZlcnQgdG8gYSBzdHJpbmcgaW4gYW55IGJhc2UpCgoqIEB7YmludC5fX3Rvc3RyaW5nfSAoY29udmVydCB0byBhIHN0cmluZyBpbiBiYXNlIDEwKQoKCgpUbyBvdXRwdXQgYSB2ZXJ5IGxhcmdlIGludGVnZXIgd2l0aCBubyBsb3NzIHlvdSBwcm9iYWJseSB3YW50IHRvIHVzZSBAe2JpbnQudG9iYXNlfQoKb3IgY2FsbCBgdG9zdHJpbmdgIHRvIGdldCBhIHN0cmluZyByZXByZXNlbnRhdGlvbi4KCgoKIyMgUHJlY2F1dGlvbnMKCgoKQWxsIGxpYnJhcnkgZnVuY3Rpb25zIGNhbiBiZSBtaXhlZCB3aXRoIGx1YSBudW1iZXJzLAoKdGhpcyBtYWtlcyBlYXN5IHRvIG1peCBvcGVyYXRpb25zIGJldHdlZW4gYmludHMgYW5kIGx1YSBudW1iZXJzLAoKaG93ZXZlciB0aGUgdXNlciBzaG91bGQgdGFrZSBjYXJlIGluIHNvbWUgc2l0dWF0aW9uczoKCgoKKiBEb24ndCBtaXggaW50ZWdlcnMgYW5kIGZsb2F0IG9wZXJhdGlvbnMgaWYgeW91IHdhbnQgdG8gd29yayB3aXRoIGludGVnZXJzIG9ubHkuCgoqIERvbid0IHVzZSB0aGUgcmVndWxhciBlcXVhbCBvcGVyYXRvciAoJz09JykgdG8gY29tcGFyZSB2YWx1ZXMgZnJvbSB0aGlzIGxpYnJhcnksCgp1bmxlc3MgeW91IGtub3cgaW4gYWR2YW5jZSB0aGF0IGJvdGggdmFsdWVzIGFyZSBvZiB0aGUgc2FtZSBwcmltaXRpdmUgdHlwZSwKCm90aGVyd2lzZSBpdCB3aWxsIGFsd2F5cyByZXR1cm4gZmFsc2UsIHVzZSBAe2JpbnQuZXF9IHRvIGJlIHNhZmUuCgoqIERvbid0IHBhc3MgZnJhY3Rpb25hbCBudW1iZXJzIHRvIGZ1bmN0aW9ucyB0aGF0IGFuIGludGVnZXIgaXMgZXhwZWN0ZWQKCiogRG9uJ3QgbWl4IG9wZXJhdGlvbnMgYmV0d2VlbiBiaW50IGNsYXNzZXMgd2l0aCBkaWZmZXJlbnQgc2l6ZXMgYXMgdGhpcyBpcyBub3Qgc3VwcG9ydGVkLCB0aGlzCgp3aWxsIHRocm93IGFzc2VydGlvbnMuCgoqIFJlbWVtYmVyIHRoYXQgY2FzdGluZyBiYWNrIHRvIGx1YSBpbnRlZ2VycyBvciBudW1iZXJzIHByZWNpc2lvbiBjYW4gYmUgbG9zdC4KCiogRm9yIGRpdmlkaW5nIHdoaWxlIHByZXNlcnZpbmcgaW50ZWdlcnMgdXNlIHRoZSBAe2JpbnQuX19pZGl2fSAodGhlICcvLycgb3BlcmF0b3IpLgoKKiBGb3IgZG9pbmcgcG93ZXIgb3BlcmF0aW9uIHByZXNlcnZpbmcgaW50ZWdlcnMgdXNlIHRoZSBAe2JpbnQuaXBvd30gZnVuY3Rpb24uCgoqIENvbmZpZ3VyZSB0aGUgcHJvcGVyIGludGVnZXIgc2l6ZSB5b3UgaW50ZW5kIHRvIHdvcmsgd2l0aCwgb3RoZXJ3aXNlIGxhcmdlIGludGVnZXJzIG1heSB3cmFwIGFyb3VuZC4KCgoKXV0KCgoKLS0gUmV0dXJucyBudW1iZXIgb2YgYml0cyBvZiB0aGUgaW50ZXJuYWwgbHVhIGludGVnZXIgdHlwZS4KCmxvY2FsIGZ1bmN0aW9uIGx1YWludGVnZXJfYml0c2l6ZSgpCgogIGxvY2FsIG4sIGkgPSAtMSwgMAoKICByZXBlYXQKCiAgICBuLCBpID0gbiA+PiAxNiwgaSArIDE2CgogIHVudGlsIG49PTAKCiAgcmV0dXJuIGkKCmVuZAoKCgpsb2NhbCBtYXRoX3R5cGUgPSBtYXRoLnR5cGUKCmxvY2FsIG1hdGhfZmxvb3IgPSBtYXRoLmZsb29yCgpsb2NhbCBtYXRoX2FicyA9IG1hdGguYWJzCgpsb2NhbCBtYXRoX2NlaWwgPSBtYXRoLmNlaWwKCmxvY2FsIG1hdGhfbW9kZiA9IG1hdGgubW9kZgoKbG9jYWwgbWF0aF9taW5pbnRlZ2VyID0gbWF0aC5taW5pbnRlZ2VyCgpsb2NhbCBtYXRoX21heGludGVnZXIgPSBtYXRoLm1heGludGVnZXIKCmxvY2FsIG1hdGhfbWF4ID0gbWF0aC5tYXgKCmxvY2FsIG1hdGhfbWluID0gbWF0aC5taW4KCmxvY2FsIHN0cmluZ19mb3JtYXQgPSBzdHJpbmcuZm9ybWF0Cgpsb2NhbCB0YWJsZV9pbnNlcnQgPSB0YWJsZS5pbnNlcnQKCmxvY2FsIHRhYmxlX2NvbmNhdCA9IHRhYmxlLmNvbmNhdAoKbG9jYWwgdGFibGVfdW5wYWNrID0gdGFibGUudW5wYWNrCgoKCmxvY2FsIG1lbW8gPSB7fQoKCgotLS0gQ3JlYXRlIGEgbmV3IGJpbnQgbW9kdWxlIHJlcHJlc2VudGluZyBpbnRlZ2VycyBvZiB0aGUgZGVzaXJlZCBiaXQgc2l6ZS4KCi0tIFRoaXMgaXMgdGhlIHJldHVybmVkIGZ1bmN0aW9uIHdoZW4gYHJlcXVpcmUgJ2JpbnQnYCBpcyBjYWxsZWQuCgotLSBAZnVuY3Rpb24gbmV3bW9kdWxlCgotLSBAcGFyYW0gYml0cyBOdW1iZXIgb2YgYml0cyBmb3IgdGhlIGludGVnZXIgcmVwcmVzZW50YXRpb24sIG11c3QgYmUgbXVsdGlwbGUgb2Ygd29yZGJpdHMgYW5kCgotLSBhdCBsZWFzdCA2NC4KCi0tIEBwYXJhbVtvcHRdIHdvcmRiaXRzIE51bWJlciBvZiB0aGUgYml0cyBmb3IgdGhlIGludGVybmFsIHdvcmQsCgotLSBkZWZhdWx0cyB0byBoYWxmIG9mIEx1YSdzIGludGVnZXIgc2l6ZS4KCmxvY2FsIGZ1bmN0aW9uIG5ld21vZHVsZShiaXRzLCB3b3JkYml0cykKCgoKbG9jYWwgaW50Yml0cyA9IGx1YWludGVnZXJfYml0c2l6ZSgpCgpiaXRzID0gYml0cyBvciAyNTYKCndvcmRiaXRzID0gd29yZGJpdHMgb3IgKGludGJpdHMgLy8gMikKCgoKLS0gTWVtb2l6ZSBiaW50IG1vZHVsZXMKCmxvY2FsIG1lbW9pbmRleCA9IGJpdHMgKiA2NCArIHdvcmRiaXRzCgppZiBtZW1vW21lbW9pbmRleF0gdGhlbgoKICByZXR1cm4gbWVtb1ttZW1vaW5kZXhdCgplbmQKCgoKLS0gVmFsaWRhdGUKCmFzc2VydChiaXRzICUgd29yZGJpdHMgPT0gMCwgJ2JpdHNpemUgaXMgbm90IG11bHRpcGxlIG9mIHdvcmQgYml0c2l6ZScpCgphc3NlcnQoMip3b3JkYml0cyA8PSBpbnRiaXRzLCAnd29yZCBiaXRzaXplIG11c3QgYmUgaGFsZiBvZiB0aGUgbHVhIGludGVnZXIgYml0c2l6ZScpCgphc3NlcnQoYml0cyA+PSA2NCwgJ2JpdHNpemUgbXVzdCBiZSA+PSA2NCcpCgphc3NlcnQod29yZGJpdHMgPj0gOCwgJ3dvcmRiaXRzIG11c3QgYmUgYXQgbGVhc3QgOCcpCgphc3NlcnQoYml0cyAlIDggPT0gMCwgJ2JpdHNpemUgbXVzdCBiZSBtdWx0aXBsZSBvZiA4JykKCgoKLS0gQ3JlYXRlIGJpbnQgbW9kdWxlCgpsb2NhbCBiaW50ID0ge30KCmJpbnQuX19pbmRleCA9IGJpbnQKCgoKLS0tIE51bWJlciBvZiBiaXRzIHJlcHJlc2VudGluZyBhIGJpbnQgaW5zdGFuY2UuCgpiaW50LmJpdHMgPSBiaXRzCgoKCi0tIENvbnN0YW50cyB1c2VkIGludGVybmFsbHkKCmxvY2FsIEJJTlRfQklUUyA9IGJpdHMKCmxvY2FsIEJJTlRfQllURVMgPSBiaXRzIC8vIDgKCmxvY2FsIEJJTlRfV09SREJJVFMgPSB3b3JkYml0cwoKbG9jYWwgQklOVF9TSVpFID0gQklOVF9CSVRTIC8vIEJJTlRfV09SREJJVFMKCmxvY2FsIEJJTlRfV09SRE1BWCA9ICgxIDw8IEJJTlRfV09SREJJVFMpIC0gMQoKbG9jYWwgQklOVF9XT1JETVNCID0gKDEgPDwgKEJJTlRfV09SREJJVFMgLSAxKSkKCmxvY2FsIEJJTlRfTEVQQUNLRk1UID0gJzwnLi4oJ0knLi4od29yZGJpdHMgLy8gOCkpOnJlcChCSU5UX1NJWkUpCgpsb2NhbCBCSU5UX01BVEhNSU5JTlRFR0VSLCBCSU5UX01BVEhNQVhJTlRFR0VSCgpsb2NhbCBCSU5UX01JTklOVEVHRVIKCgoKLS0tIENyZWF0ZSBhIG5ldyBiaW50IHdpdGggMCB2YWx1ZS4KCmZ1bmN0aW9uIGJpbnQuemVybygpCgogIGxvY2FsIHggPSBzZXRtZXRhdGFibGUoe30sIGJpbnQpCgogIGZvciBpPTEsQklOVF9TSVpFIGRvCgogICAgeFtpXSA9IDAKCiAgZW5kCgogIHJldHVybiB4CgplbmQKCmxvY2FsIGJpbnRfemVybyA9IGJpbnQuemVybwoKCgotLS0gQ3JlYXRlIGEgbmV3IGJpbnQgd2l0aCAxIHZhbHVlLgoKZnVuY3Rpb24gYmludC5vbmUoKQoKICBsb2NhbCB4ID0gc2V0bWV0YXRhYmxlKHt9LCBiaW50KQoKICB4WzFdID0gMQoKICBmb3IgaT0yLEJJTlRfU0laRSBkbwoKICAgIHhbaV0gPSAwCgogIGVuZAoKICByZXR1cm4geAoKZW5kCgpsb2NhbCBiaW50X29uZSA9IGJpbnQub25lCgoKCi0tIENvbnZlcnQgYSB2YWx1ZSB0byBhIGx1YSBpbnRlZ2VyIHdpdGhvdXQgbG9zaW5nIHByZWNpc2lvbi4KCmxvY2FsIGZ1bmN0aW9uIHRvaW50ZWdlcih4KQoKICB4ID0gdG9udW1iZXIoeCkKCiAgbG9jYWwgdHkgPSBtYXRoX3R5cGUoeCkKCiAgaWYgdHkgPT0gJ2Zsb2F0JyB0aGVuCgogICAgbG9jYWwgZmxvb3J4ID0gbWF0aF9mbG9vcih4KQoKICAgIGlmIGZsb29yeCA9PSB4IHRoZW4KCiAgICAgIHggPSBmbG9vcngKCiAgICAgIHR5ID0gbWF0aF90eXBlKHgpCgogICAgZW5kCgogIGVuZAoKICBpZiB0eSA9PSAnaW50ZWdlcicgdGhlbgoKICAgIHJldHVybiB4CgogIGVuZAoKZW5kCgoKCi0tLSBDcmVhdGUgYSBiaW50IGZyb20gYW4gdW5zaWduZWQgaW50ZWdlci4KCi0tIFRyZWF0cyBzaWduZWQgaW50ZWdlcnMgYXMgYW4gdW5zaWduZWQgaW50ZWdlci4KCi0tIEBwYXJhbSB4IEEgdmFsdWUgdG8gaW5pdGlhbGl6ZSBmcm9tIGNvbnZlcnRpYmxlIHRvIGEgbHVhIGludGVnZXIuCgotLSBAcmV0dXJuIEEgbmV3IGJpbnQgb3IgbmlsIGluIGNhc2UgdGhlIGlucHV0IGNhbm5vdCBiZSByZXByZXNlbnRlZCBieSBhbiBpbnRlZ2VyLgoKLS0gQHNlZSBiaW50LmZyb21pbnRlZ2VyCgpmdW5jdGlvbiBiaW50LmZyb211aW50ZWdlcih4KQoKICB4ID0gdG9pbnRlZ2VyKHgpCgogIGlmIHggdGhlbgoKICAgIGlmIHggPT0gMSB0aGVuCgogICAgICByZXR1cm4gYmludF9vbmUoKQoKICAgIGVsc2VpZiB4ID09IDAgdGhlbgoKICAgICAgcmV0dXJuIGJpbnRfemVybygpCgogICAgZW5kCgogICAgbG9jYWwgbiA9IHNldG1ldGF0YWJsZSh7fSwgYmludCkKCiAgICBmb3IgaT0xLEJJTlRfU0laRSBkbwoKICAgICAgbltpXSA9IHggJiBCSU5UX1dPUkRNQVgKCiAgICAgIHggPSB4ID4+IEJJTlRfV09SREJJVFMKCiAgICBlbmQKCiAgICByZXR1cm4gbgoKICBlbmQKCmVuZAoKbG9jYWwgYmludF9mcm9tdWludGVnZXIgPSBiaW50LmZyb211aW50ZWdlcgoKCgotLS0gQ3JlYXRlIGEgYmludCBmcm9tIGEgc2lnbmVkIGludGVnZXIuCgotLSBAcGFyYW0geCBBIHZhbHVlIHRvIGluaXRpYWxpemUgZnJvbSBjb252ZXJ0aWJsZSB0byBhIGx1YSBpbnRlZ2VyLgoKLS0gQHJldHVybiBBIG5ldyBiaW50IG9yIG5pbCBpbiBjYXNlIHRoZSBpbnB1dCBjYW5ub3QgYmUgcmVwcmVzZW50ZWQgYnkgYW4gaW50ZWdlci4KCi0tIEBzZWUgYmludC5mcm9tdWludGVnZXIKCmZ1bmN0aW9uIGJpbnQuZnJvbWludGVnZXIoeCkKCiAgeCA9IHRvaW50ZWdlcih4KQoKICBpZiB4IHRoZW4KCiAgICBpZiB4ID09IDEgdGhlbgoKICAgICAgcmV0dXJuIGJpbnRfb25lKCkKCiAgICBlbHNlaWYgeCA9PSAwIHRoZW4KCiAgICAgIHJldHVybiBiaW50X3plcm8oKQoKICAgIGVuZAoKICAgIGxvY2FsIG5lZyA9IGZhbHNlCgogICAgaWYgeCA8IDAgdGhlbgoKICAgICAgeCA9IG1hdGhfYWJzKHgpCgogICAgICBuZWcgPSB0cnVlCgogICAgZW5kCgogICAgbG9jYWwgbiA9IHNldG1ldGF0YWJsZSh7fSwgYmludCkKCiAgICBmb3IgaT0xLEJJTlRfU0laRSBkbwoKICAgICAgbltpXSA9IHggJiBCSU5UX1dPUkRNQVgKCiAgICAgIHggPSB4ID4+IEJJTlRfV09SREJJVFMKCiAgICBlbmQKCiAgICBpZiBuZWcgdGhlbgoKICAgICAgbjpfdW5tKCkKCiAgICBlbmQKCiAgICByZXR1cm4gbgoKICBlbmQKCmVuZAoKbG9jYWwgYmludF9mcm9taW50ZWdlciA9IGJpbnQuZnJvbWludGVnZXIKCgoKbG9jYWwgYmFzZXN0ZXBzID0ge30KCgoKLS0gQ29tcHV0ZSB0aGUgcmVhZCBzdGVwIGZvciBmcm9tYmFzZSBmdW5jdGlvbgoKbG9jYWwgZnVuY3Rpb24gZ2V0YmFzZXN0ZXAoYmFzZSkKCiAgbG9jYWwgc3RlcCA9IGJhc2VzdGVwc1tiYXNlXQoKICBpZiBzdGVwIHRoZW4KCiAgICByZXR1cm4gc3RlcAoKICBlbmQKCiAgc3RlcCA9IDAKCiAgbG9jYWwgZG1heCA9IDEKCiAgbG9jYWwgbGltaXQgPSBtYXRoX21heGludGVnZXIgLy8gYmFzZQoKICByZXBlYXQKCiAgICBzdGVwID0gc3RlcCArIDEKCiAgICBkbWF4ID0gZG1heCAqIGJhc2UKCiAgdW50aWwgZG1heCA+PSBsaW1pdAoKICBiYXNlc3RlcHNbYmFzZV0gPSBzdGVwCgogIHJldHVybiBzdGVwCgplbmQKCgoKLS0gQ29tcHV0ZSBwb3dlciB3aXRoIGx1YSBpbnRlZ2Vycy4KCmxvY2FsIGZ1bmN0aW9uIGlwb3coeSwgeCwgbikKCiAgaWYgbiA9PSAxIHRoZW4KCiAgICByZXR1cm4geSAqIHgKCiAgZWxzZWlmIG4gJiAxID09IDAgdGhlbiAtLWV2ZW4KCiAgICByZXR1cm4gaXBvdyh5LCB4ICogeCwgbiAvLyAyKQoKICBlbmQKCiAgcmV0dXJuIGlwb3coeCAqIHksIHggKiB4LCAobi0xKSAvLyAyKQoKZW5kCgoKCi0tLSBDcmVhdGUgYSBiaW50IGZyb20gYSBzdHJpbmcgb2YgdGhlIGRlc2lyZWQgYmFzZS4KCi0tIEBwYXJhbSBzIFRoZSBzdHJpbmcgdG8gYmUgY29udmVydGVkIGZyb20sCgotLSBtdXN0IGhhdmUgb25seSBhbHBoYW51bWVyaWMgYW5kICcrLScgY2hhcmFjdGVycy4KCi0tIEBwYXJhbVtvcHRdIGJhc2UgQmFzZSB0aGF0IHRoZSBudW1iZXIgaXMgcmVwcmVzZW50ZWQsIGRlZmF1bHRzIHRvIDEwLgoKLS0gTXVzdCBiZSBhdCBsZWFzdCAyIGFuZCBhdCBtb3N0IDM2LgoKLS0gQHJldHVybiBBIG5ldyBiaW50IG9yIG5pbCBpbiBjYXNlIHRoZSBjb252ZXJzaW9uIGZhaWxlZC4KCmZ1bmN0aW9uIGJpbnQuZnJvbWJhc2UocywgYmFzZSkKCiAgaWYgdHlwZShzKSB+PSAnc3RyaW5nJyB0aGVuCgogICAgcmV0dXJuCgogIGVuZAoKICBiYXNlID0gYmFzZSBvciAxMAoKICBpZiBub3QgKGJhc2UgPj0gMiBhbmQgYmFzZSA8PSAzNikgdGhlbgoKICAgIC0tIG51bWJlciBiYXNlIGlzIHRvbyBsYXJnZQoKICAgIHJldHVybgoKICBlbmQKCiAgbG9jYWwgc3RlcCA9IGdldGJhc2VzdGVwKGJhc2UpCgogIGlmICNzIDwgc3RlcCB0aGVuCgogICAgLS0gc3RyaW5nIGlzIHNtYWxsLCB1c2UgdG9udW1iZXIgKGZhc3RlcikKCiAgICByZXR1cm4gYmludF9mcm9taW50ZWdlcih0b251bWJlcihzLCBiYXNlKSkKCiAgZW5kCgogIGxvY2FsIHNpZ24sIGludCA9IHM6bG93ZXIoKTptYXRjaCgnXihbKy1dPykoJXcrKSQnKQoKICBpZiBub3QgKHNpZ24gYW5kIGludCkgdGhlbgoKICAgIC0tIGludmFsaWQgaW50ZWdlciBzdHJpbmcgcmVwcmVzZW50YXRpb24KCiAgICByZXR1cm4KCiAgZW5kCgogIGxvY2FsIG4gPSBiaW50X3plcm8oKQoKICBmb3IgaT0xLCNpbnQsc3RlcCBkbwoKICAgIGxvY2FsIHBhcnQgPSBpbnQ6c3ViKGksaStzdGVwLTEpCgogICAgbG9jYWwgZCA9IHRvbnVtYmVyKHBhcnQsIGJhc2UpCgogICAgaWYgbm90IGQgdGhlbgoKICAgICAgLS0gaW52YWxpZCBpbnRlZ2VyIHN0cmluZyByZXByZXNlbnRhdGlvbgoKICAgICAgcmV0dXJuCgogICAgZW5kCgogICAgaWYgaSA+IDEgdGhlbgoKICAgICAgbiA9IG4gKiBpcG93KDEsIGJhc2UsICNwYXJ0KQoKICAgIGVuZAoKICAgIGlmIGQgfj0gMCB0aGVuCgogICAgICBuOl9hZGQoZCkKCiAgICBlbmQKCiAgZW5kCgogIGlmIHNpZ24gPT0gJy0nIHRoZW4KCiAgICBuOl91bm0oKQoKICBlbmQKCiAgcmV0dXJuIG4KCmVuZAoKbG9jYWwgYmludF9mcm9tYmFzZSA9IGJpbnQuZnJvbWJhc2UKCgoKLS0tIENyZWF0ZSBhIG5ldyBiaW50IGZyb20gYSBzdHJpbmcuCgotLSBUaGUgc3RyaW5nIGNhbiBieSBhIGRlY2ltYWwgbnVtYmVyLCBiaW5hcnkgbnVtYmVyIHByZWZpeGVkIHdpdGggJzBiJyBvciBoZXhhZGVjaW1hbCBudW1iZXIgcHJlZml4ZWQgd2l0aCAnMHgnLgoKLS0gQHBhcmFtIHMgQSBzdHJpbmcgY29udmVydGlibGUgdG8gYSBiaW50LgoKLS0gQHJldHVybiBBIG5ldyBiaW50IG9yIG5pbCBpbiBjYXNlIHRoZSBjb252ZXJzaW9uIGZhaWxlZC4KCi0tIEBzZWUgYmludC5mcm9tYmFzZQoKZnVuY3Rpb24gYmludC5mcm9tc3RyaW5nKHMpCgogIGlmIHR5cGUocykgfj0gJ3N0cmluZycgdGhlbgoKICAgIHJldHVybgoKICBlbmQKCiAgaWYgczpmaW5kKCdeWystXT9bMC05XSskJykgdGhlbgoKICAgIHJldHVybiBiaW50X2Zyb21iYXNlKHMsIDEwKQoKICBlbHNlaWYgczpmaW5kKCdeWystXT8wW3hYXVswLTlhLWZBLUZdKyQnKSB0aGVuCgogICAgcmV0dXJuIGJpbnRfZnJvbWJhc2Uoczpnc3ViKCcwW3hYXScsICcnLCAxKSwgMTYpCgogIGVsc2VpZiBzOmZpbmQoJ15bKy1dPzBbYkJdWzAxXSskJykgdGhlbgoKICAgIHJldHVybiBiaW50X2Zyb21iYXNlKHM6Z3N1YignMFtiQl0nLCAnJywgMSksIDIpCgogIGVuZAoKZW5kCgpsb2NhbCBiaW50X2Zyb21zdHJpbmcgPSBiaW50LmZyb21zdHJpbmcKCgoKLS0tIENyZWF0ZSBhIG5ldyBiaW50IGZyb20gYSBidWZmZXIgb2YgbGl0dGxlLWVuZGlhbiBieXRlcy4KCi0tIEBwYXJhbSBidWZmZXIgQnVmZmVyIG9mIGJ5dGVzLCBleHRyYSBieXRlcyBhcmUgdHJpbW1lZCBmcm9tIHRoZSByaWdodCwgbWlzc2luZyBieXRlcyBhcmUgcGFkZGVkIHRvIHRoZSByaWdodC4KCi0tIEByYWlzZSBBbiBhc3NlcnQgaXMgdGhyb3duIGluIGNhc2UgYnVmZmVyIGlzIG5vdCBhbiBzdHJpbmcuCgotLSBAcmV0dXJuIEEgYmludC4KCmZ1bmN0aW9uIGJpbnQuZnJvbWxlKGJ1ZmZlcikKCiAgYXNzZXJ0KHR5cGUoYnVmZmVyKSA9PSAnc3RyaW5nJywgJ2J1ZmZlciBpcyBub3QgYSBzdHJpbmcnKQoKICBpZiAjYnVmZmVyID4gQklOVF9CWVRFUyB0aGVuIC0tIHRyaW0gZXh0cmEgYnl0ZXMgZnJvbSB0aGUgcmlnaHQKCiAgICBidWZmZXIgPSBidWZmZXI6c3ViKDEsIEJJTlRfQllURVMpCgogIGVsc2VpZiAjYnVmZmVyIDwgQklOVF9CWVRFUyB0aGVuIC0tIGFkZCBtaXNzaW5nIGJ5dGVzIHRvIHRoZSByaWdodAoKICAgIGJ1ZmZlciA9IGJ1ZmZlci4uKCdceDAwJyk6cmVwKEJJTlRfQllURVMgLSAjYnVmZmVyKQoKICBlbmQKCiAgcmV0dXJuIHNldG1ldGF0YWJsZSh7QklOVF9MRVBBQ0tGTVQ6dW5wYWNrKGJ1ZmZlcil9LCBiaW50KQoKZW5kCgoKCi0tLSBDcmVhdGUgYSBuZXcgYmludCBmcm9tIGEgYnVmZmVyIG9mIGJpZy1lbmRpYW4gYnl0ZXMuCgotLSBAcGFyYW0gYnVmZmVyIEJ1ZmZlciBvZiBieXRlcywgZXh0cmEgYnl0ZXMgYXJlIHRyaW1tZWQgZnJvbSB0aGUgbGVmdCwgbWlzc2luZyBieXRlcyBhcmUgcGFkZGVkIHRvIHRoZSBsZWZ0LgoKLS0gQHJhaXNlIEFuIGFzc2VydCBpcyB0aHJvd24gaW4gY2FzZSBidWZmZXIgaXMgbm90IGFuIHN0cmluZy4KCi0tIEByZXR1cm4gQSBiaW50LgoKZnVuY3Rpb24gYmludC5mcm9tYmUoYnVmZmVyKQoKICBhc3NlcnQodHlwZShidWZmZXIpID09ICdzdHJpbmcnLCAnYnVmZmVyIGlzIG5vdCBhIHN0cmluZycpCgogIGlmICNidWZmZXIgPiBCSU5UX0JZVEVTIHRoZW4gLS0gdHJpbSBleHRyYSBieXRlcyBmcm9tIHRoZSBsZWZ0CgogICAgYnVmZmVyID0gYnVmZmVyOnN1YigtQklOVF9CWVRFUywgI2J1ZmZlcikKCiAgZWxzZWlmICNidWZmZXIgPCBCSU5UX0JZVEVTIHRoZW4gLS0gYWRkIG1pc3NpbmcgYnl0ZXMgdG8gdGhlIGxlZnQKCiAgICBidWZmZXIgPSAoJ1x4MDAnKTpyZXAoQklOVF9CWVRFUyAtICNidWZmZXIpLi5idWZmZXIKCiAgZW5kCgogIHJldHVybiBzZXRtZXRhdGFibGUoe0JJTlRfTEVQQUNLRk1UOnVucGFjayhidWZmZXI6cmV2ZXJzZSgpKX0sIGJpbnQpCgplbmQKCgoKLS0tIENyZWF0ZSBhIG5ldyBiaW50IGZyb20gYSB2YWx1ZS4KCi0tIEBwYXJhbSB4IEEgdmFsdWUgY29udmVydGlibGUgdG8gYSBiaW50IChzdHJpbmcsIG51bWJlciBvciBhbm90aGVyIGJpbnQpLgoKLS0gQHJldHVybiBBIG5ldyBiaW50LCBndWFyYW50ZWVkIHRvIGJlIGEgbmV3IHJlZmVyZW5jZSBpbiBjYXNlIG5lZWRlZC4KCi0tIEByYWlzZSBBbiBhc3NlcnQgaXMgdGhyb3duIGluIGNhc2UgeCBpcyBub3QgY29udmVydGlibGUgdG8gYSBiaW50LgoKLS0gQHNlZSBiaW50LnRvYmludAoKLS0gQHNlZSBiaW50LnBhcnNlCgpmdW5jdGlvbiBiaW50Lm5ldyh4KQoKICBpZiBnZXRtZXRhdGFibGUoeCkgfj0gYmludCB0aGVuCgogICAgbG9jYWwgdHkgPSB0eXBlKHgpCgogICAgaWYgdHkgPT0gJ251bWJlcicgdGhlbgoKICAgICAgeCA9IGJpbnRfZnJvbWludGVnZXIoeCkKCiAgICBlbHNlaWYgdHkgPT0gJ3N0cmluZycgdGhlbgoKICAgICAgeCA9IGJpbnRfZnJvbXN0cmluZyh4KQoKICAgIGVuZAoKICAgIGFzc2VydCh4LCAndmFsdWUgY2Fubm90IGJlIHJlcHJlc2VudGVkIGJ5IGEgYmludCcpCgogICAgcmV0dXJuIHgKCiAgZW5kCgogIC0tIHJldHVybiBhIGNsb25lCgogIGxvY2FsIG4gPSBzZXRtZXRhdGFibGUoe30sIGJpbnQpCgogIGZvciBpPTEsQklOVF9TSVpFIGRvCgogICAgbltpXSA9IHhbaV0KCiAgZW5kCgogIHJldHVybiBuCgplbmQKCmxvY2FsIGJpbnRfbmV3ID0gYmludC5uZXcKCgoKLS0tIENvbnZlcnQgYSB2YWx1ZSB0byBhIGJpbnQgaWYgcG9zc2libGUuCgotLSBAcGFyYW0geCBBIHZhbHVlIHRvIGJlIGNvbnZlcnRlZCAoc3RyaW5nLCBudW1iZXIgb3IgYW5vdGhlciBiaW50KS4KCi0tIEBwYXJhbVtvcHRdIGNsb25lIEEgYm9vbGVhbiB0aGF0IHRlbGxzIGlmIGEgbmV3IGJpbnQgcmVmZXJlbmNlIHNob3VsZCBiZSByZXR1cm5lZC4KCi0tIERlZmF1bHRzIHRvIGZhbHNlLgoKLS0gQHJldHVybiBBIGJpbnQgb3IgbmlsIGluIGNhc2UgdGhlIGNvbnZlcnNpb24gZmFpbGVkLgoKLS0gQHNlZSBiaW50Lm5ldwoKLS0gQHNlZSBiaW50LnBhcnNlCgpmdW5jdGlvbiBiaW50LnRvYmludCh4LCBjbG9uZSkKCiAgaWYgZ2V0bWV0YXRhYmxlKHgpID09IGJpbnQgdGhlbgoKICAgIGlmIG5vdCBjbG9uZSB0aGVuCgogICAgICByZXR1cm4geAoKICAgIGVuZAoKICAgIC0tIHJldHVybiBhIGNsb25lCgogICAgbG9jYWwgbiA9IHNldG1ldGF0YWJsZSh7fSwgYmludCkKCiAgICBmb3IgaT0xLEJJTlRfU0laRSBkbwoKICAgICAgbltpXSA9IHhbaV0KCiAgICBlbmQKCiAgICByZXR1cm4gbgoKICBlbmQKCiAgbG9jYWwgdHkgPSB0eXBlKHgpCgogIGlmIHR5ID09ICdudW1iZXInIHRoZW4KCiAgICByZXR1cm4gYmludF9mcm9taW50ZWdlcih4KQoKICBlbHNlaWYgdHkgPT0gJ3N0cmluZycgdGhlbgoKICAgIHJldHVybiBiaW50X2Zyb21zdHJpbmcoeCkKCiAgZW5kCgplbmQKCmxvY2FsIHRvYmludCA9IGJpbnQudG9iaW50CgoKCi0tLSBDb252ZXJ0IGEgdmFsdWUgdG8gYSBiaW50IGlmIHBvc3NpYmxlIG90aGVyd2lzZSB0byBhIGx1YSBudW1iZXIuCgotLSBVc2VmdWwgdG8gcHJlcGFyZSB2YWx1ZXMgdGhhdCB5b3UgYXJlIHVuc3VyZSBpZiBpdCdzIGdvaW5nIHRvIGJlIGFuIGludGVnZXIgb3IgZmxvYXQuCgotLSBAcGFyYW0geCBBIHZhbHVlIHRvIGJlIGNvbnZlcnRlZCAoc3RyaW5nLCBudW1iZXIgb3IgYW5vdGhlciBiaW50KS4KCi0tIEBwYXJhbVtvcHRdIGNsb25lIEEgYm9vbGVhbiB0aGF0IHRlbGxzIGlmIGEgbmV3IGJpbnQgcmVmZXJlbmNlIHNob3VsZCBiZSByZXR1cm5lZC4KCi0tIERlZmF1bHRzIHRvIGZhbHNlLgoKLS0gQHJldHVybiBBIGJpbnQgb3IgYSBsdWEgbnVtYmVyIG9yIG5pbCBpbiBjYXNlIHRoZSBjb252ZXJzaW9uIGZhaWxlZC4KCi0tIEBzZWUgYmludC5uZXcKCi0tIEBzZWUgYmludC50b2JpbnQKCmZ1bmN0aW9uIGJpbnQucGFyc2UoeCwgY2xvbmUpCgogIGxvY2FsIGkgPSB0b2JpbnQoeCwgY2xvbmUpCgogIGlmIGkgdGhlbgoKICAgIHJldHVybiBpCgogIGVuZAoKICByZXR1cm4gdG9udW1iZXIoeCkKCmVuZAoKbG9jYWwgYmludF9wYXJzZSA9IGJpbnQucGFyc2UKCgoKLS0tIENvbnZlcnQgYSBiaW50IHRvIGFuIHVuc2lnbmVkIGludGVnZXIuCgotLSBOb3RlIHRoYXQgbGFyZ2UgdW5zaWduZWQgaW50ZWdlcnMgbWF5IGJlIHJlcHJlc2VudGVkIGFzIG5lZ2F0aXZlcyBpbiBsdWEgaW50ZWdlcnMuCgotLSBOb3RlIHRoYXQgbHVhIGNhbm5vdCByZXByZXNlbnQgdmFsdWVzIGxhcmdlciB0aGFuIDY0IGJpdHMsCgotLSBpbiB0aGF0IGNhc2UgaW50ZWdlciB2YWx1ZXMgd3JhcCBhcm91bmQuCgotLSBAcGFyYW0geCBBIGJpbnQgb3IgYSBudW1iZXIgdG8gYmUgY29udmVydGVkIGludG8gYW4gdW5zaWduZWQgaW50ZWdlci4KCi0tIEByZXR1cm4gQW4gaW50ZWdlciBvciBuaWwgaW4gY2FzZSB0aGUgaW5wdXQgY2Fubm90IGJlIHJlcHJlc2VudGVkIGJ5IGFuIGludGVnZXIuCgotLSBAc2VlIGJpbnQudG9pbnRlZ2VyCgpmdW5jdGlvbiBiaW50LnRvdWludGVnZXIoeCkKCiAgaWYgZ2V0bWV0YXRhYmxlKHgpID09IGJpbnQgdGhlbgoKICAgIGxvY2FsIG4gPSAwCgogICAgZm9yIGk9MSxCSU5UX1NJWkUgZG8KCiAgICAgIG4gPSBuIHwgKHhbaV0gPDwgKEJJTlRfV09SREJJVFMgKiAoaSAtIDEpKSkKCiAgICBlbmQKCiAgICByZXR1cm4gbgoKICBlbmQKCiAgcmV0dXJuIHRvaW50ZWdlcih4KQoKZW5kCgoKCi0tLSBDb252ZXJ0IGEgYmludCB0byBhIHNpZ25lZCBpbnRlZ2VyLgoKLS0gSXQgd29ya3MgYnkgdGFraW5nIGFic29sdXRlIHZhbHVlcyB0aGVuIGFwcGx5aW5nIHRoZSBzaWduIGJpdCBpbiBjYXNlIG5lZWRlZC4KCi0tIE5vdGUgdGhhdCBsdWEgY2Fubm90IHJlcHJlc2VudCB2YWx1ZXMgbGFyZ2VyIHRoYW4gNjQgYml0cywKCi0tIGluIHRoYXQgY2FzZSBpbnRlZ2VyIHZhbHVlcyB3cmFwIGFyb3VuZC4KCi0tIEBwYXJhbSB4IEEgYmludCBvciB2YWx1ZSB0byBiZSBjb252ZXJ0ZWQgaW50byBhbiB1bnNpZ25lZCBpbnRlZ2VyLgoKLS0gQHJldHVybiBBbiBpbnRlZ2VyIG9yIG5pbCBpbiBjYXNlIHRoZSBpbnB1dCBjYW5ub3QgYmUgcmVwcmVzZW50ZWQgYnkgYW4gaW50ZWdlci4KCi0tIEBzZWUgYmludC50b3VpbnRlZ2VyCgpmdW5jdGlvbiBiaW50LnRvaW50ZWdlcih4KQoKICBpZiBnZXRtZXRhdGFibGUoeCkgPT0gYmludCB0aGVuCgogICAgbG9jYWwgbiA9IDAKCiAgICBsb2NhbCBuZWcgPSB4OmlzbmVnKCkKCiAgICBpZiBuZWcgdGhlbgoKICAgICAgeCA9IC14CgogICAgZW5kCgogICAgZm9yIGk9MSxCSU5UX1NJWkUgZG8KCiAgICAgIG4gPSBuIHwgKHhbaV0gPDwgKEJJTlRfV09SREJJVFMgKiAoaSAtIDEpKSkKCiAgICBlbmQKCiAgICBpZiBuZWcgdGhlbgoKICAgICAgbiA9IC1uCgogICAgZW5kCgogICAgcmV0dXJuIG4KCiAgZW5kCgogIHJldHVybiB0b2ludGVnZXIoeCkKCmVuZAoKbG9jYWwgYmludF90b2ludGVnZXIgPSBiaW50LnRvaW50ZWdlcgoKCgpsb2NhbCBmdW5jdGlvbiBiaW50X2Fzc2VydF90b2ludGVnZXIoeCkKCiAgeCA9IGJpbnRfdG9pbnRlZ2VyKHgpCgogIGlmIG5vdCB4IHRoZW4KCiAgICBlcnJvcigndmFsdWUgaGFzIG5vIGludGVnZXIgcmVwcmVzZW50YXRpb24nKQoKICBlbmQKCiAgcmV0dXJuIHgKCmVuZAoKCgotLS0gQ29udmVydCBhIGJpbnQgdG8gYSBsdWEgZmxvYXQgaW4gY2FzZSBpbnRlZ2VyIHdvdWxkIHdyYXAgYXJvdW5kIG9yIGx1YSBpbnRlZ2VyIG90aGVyd2lzZS4KCi0tIERpZmZlcmVudCBmcm9tIEB7YmludC50b2ludGVnZXJ9IHRoZSBvcGVyYXRpb24gZG9lcyBub3Qgd3JhcCBhcm91bmQgaW50ZWdlcnMsCgotLSBidXQgZGlnaXRzIHByZWNpc2lvbiBhcmUgbG9zdCBpbiB0aGUgcHJvY2VzcyBvZiBjb252ZXJ0aW5nIHRvIGEgZmxvYXQuCgotLSBAcGFyYW0geCBBIGJpbnQgb3IgdmFsdWUgdG8gYmUgY29udmVydGVkIGludG8gYSBsdWEgbnVtYmVyLgoKLS0gQHJldHVybiBBIGx1YSBudW1iZXIgb3IgbmlsIGluIGNhc2UgdGhlIGlucHV0IGNhbm5vdCBiZSByZXByZXNlbnRlZCBieSBhIG51bWJlci4KCi0tIEBzZWUgYmludC50b2ludGVnZXIKCmZ1bmN0aW9uIGJpbnQudG9udW1iZXIoeCkKCiAgaWYgZ2V0bWV0YXRhYmxlKHgpID09IGJpbnQgdGhlbgoKICAgIGlmIHggPD0gQklOVF9NQVRITUFYSU5URUdFUiBhbmQgeCA+PSBCSU5UX01BVEhNSU5JTlRFR0VSIHRoZW4KCiAgICAgIHJldHVybiB4OnRvaW50ZWdlcigpCgogICAgZW5kCgogICAgcmV0dXJuIHRvbnVtYmVyKHRvc3RyaW5nKHgpKQoKICBlbmQKCiAgcmV0dXJuIHRvbnVtYmVyKHgpCgplbmQKCmxvY2FsIGJpbnRfdG9udW1iZXIgPSBiaW50LnRvbnVtYmVyCgoKCi0tIENvbXB1dGUgYmFzZSBsZXR0ZXJzIHRvIHVzZSBpbiBiaW50LnRvYmFzZQoKbG9jYWwgQkFTRV9MRVRURVJTID0ge30KCmRvCgogIGZvciBpPTEsMzYgZG8KCiAgICBCQVNFX0xFVFRFUlNbaS0xXSA9ICgnMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Jyk6c3ViKGksaSkKCiAgZW5kCgplbmQKCgoKLS0tIENvbnZlcnQgYSBiaW50IHRvIGEgc3RyaW5nIGluIHRoZSBkZXNpcmVkIGJhc2UuCgotLSBAcGFyYW0geCBUaGUgYmludCB0byBiZSBjb252ZXJ0ZWQgZnJvbS4KCi0tIEBwYXJhbVtvcHRdIGJhc2UgQmFzZSB0byBiZSByZXByZXNlbnRlZCwgZGVmYXVsdHMgdG8gMTAuCgotLSBNdXN0IGJlIGF0IGxlYXN0IDIgYW5kIGF0IG1vc3QgMzYuCgotLSBAcGFyYW1bb3B0XSB1bnNpZ25lZCBXaGV0aGVyIHRvIG91dHB1dCBhcyBhbiB1bnNpZ25lZCBpbnRlZ2VyLgoKLS0gRGVmYXVsdHMgdG8gZmFsc2UgZm9yIGJhc2UgMTAgYW5kIHRydWUgZm9yIG90aGVycy4KCi0tIFdoZW4gdW5zaWduZWQgaXMgZmFsc2UgdGhlIHN5bWJvbCAnLScgaXMgcHJlcGVuZGVkIGluIG5lZ2F0aXZlIHZhbHVlcy4KCi0tIEByZXR1cm4gQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBpbnB1dC4KCi0tIEByYWlzZSBBbiBhc3NlcnQgaXMgdGhyb3duIGluIGNhc2UgdGhlIGJhc2UgaXMgaW52YWxpZC4KCmZ1bmN0aW9uIGJpbnQudG9iYXNlKHgsIGJhc2UsIHVuc2lnbmVkKQoKICB4ID0gdG9iaW50KHgpCgogIGlmIG5vdCB4IHRoZW4KCiAgICAtLSB4IGlzIGEgZnJhY3Rpb25hbCBmbG9hdCBvciBzb21ldGhpbmcgZWxzZQoKICAgIHJldHVybgoKICBlbmQKCiAgYmFzZSA9IGJhc2Ugb3IgMTAKCiAgaWYgbm90IChiYXNlID49IDIgYW5kIGJhc2UgPD0gMzYpIHRoZW4KCiAgICAtLSBudW1iZXIgYmFzZSBpcyB0b28gbGFyZ2UKCiAgICByZXR1cm4KCiAgZW5kCgogIGlmIHVuc2lnbmVkID09IG5pbCB0aGVuCgogICAgdW5zaWduZWQgPSBiYXNlIH49IDEwCgogIGVuZAoKICBsb2NhbCBpc3huZWcgPSB4OmlzbmVnKCkKCiAgaWYgKGJhc2UgPT0gMTAgYW5kIG5vdCB1bnNpZ25lZCkgb3IgKGJhc2UgPT0gMTYgYW5kIHVuc2lnbmVkIGFuZCBub3QgaXN4bmVnKSB0aGVuCgogICAgaWYgeCA8PSBCSU5UX01BVEhNQVhJTlRFR0VSIGFuZCB4ID49IEJJTlRfTUFUSE1JTklOVEVHRVIgdGhlbgoKICAgICAgLS0gaW50ZWdlciBpcyBzbWFsbCwgdXNlIHRvc3RyaW5nIG9yIHN0cmluZy5mb3JtYXQgKGZhc3RlcikKCiAgICAgIGxvY2FsIG4gPSB4OnRvaW50ZWdlcigpCgogICAgICBpZiBiYXNlID09IDEwIHRoZW4KCiAgICAgICAgcmV0dXJuIHRvc3RyaW5nKG4pCgogICAgICBlbHNlaWYgdW5zaWduZWQgdGhlbgoKICAgICAgICByZXR1cm4gc3RyaW5nX2Zvcm1hdCgnJXgnLCBuKQoKICAgICAgZW5kCgogICAgZW5kCgogIGVuZAoKICBsb2NhbCBzcyA9IHt9CgogIGxvY2FsIG5lZyA9IG5vdCB1bnNpZ25lZCBhbmQgaXN4bmVnCgogIHggPSBuZWcgYW5kIHg6YWJzKCkgb3IgYmludF9uZXcoeCkKCiAgbG9jYWwgeGlzemVybyA9IHg6aXN6ZXJvKCkKCiAgaWYgeGlzemVybyB0aGVuCgogICAgcmV0dXJuICcwJwoKICBlbmQKCiAgLS0gY2FsY3VsYXRlIGJhc2Vwb3cKCiAgbG9jYWwgc3RlcCA9IDAKCiAgbG9jYWwgYmFzZXBvdyA9IDEKCiAgbG9jYWwgbGltaXQgPSAoQklOVF9XT1JETVNCIC0gMSkgLy8gYmFzZQoKICByZXBlYXQKCiAgICBzdGVwID0gc3RlcCArIDEKCiAgICBiYXNlcG93ID0gYmFzZXBvdyAqIGJhc2UKCiAgdW50aWwgYmFzZXBvdyA+PSBsaW1pdAoKICAtLSBzZXJpYWxpemUgYmFzZSBkaWdpdHMKCiAgbG9jYWwgc2l6ZSA9IEJJTlRfU0laRQoKICBsb2NhbCB4ZCwgY2FycnksIGQKCiAgcmVwZWF0CgogICAgLS0gc2luZ2xlIHdvcmQgZGl2aXNpb24KCiAgICBjYXJyeSA9IDAKCiAgICB4aXN6ZXJvID0gdHJ1ZQoKICAgIGZvciBpPXNpemUsMSwtMSBkbwoKICAgICAgY2FycnkgPSBjYXJyeSB8IHhbaV0KCiAgICAgIGQsIHhkID0gY2FycnkgLy8gYmFzZXBvdywgY2FycnkgJSBiYXNlcG93CgogICAgICBpZiB4aXN6ZXJvIGFuZCBkIH49IDAgdGhlbgoKICAgICAgICBzaXplID0gaQoKICAgICAgICB4aXN6ZXJvID0gZmFsc2UKCiAgICAgIGVuZAoKICAgICAgeFtpXSA9IGQKCiAgICAgIGNhcnJ5ID0geGQgPDwgQklOVF9XT1JEQklUUwoKICAgIGVuZAoKICAgIC0tIGRpZ2l0IGRpdmlzaW9uCgogICAgZm9yIF89MSxzdGVwIGRvCgogICAgICB4ZCwgZCA9IHhkIC8vIGJhc2UsIHhkICUgYmFzZQoKICAgICAgaWYgeGlzemVybyBhbmQgeGQgPT0gMCBhbmQgZCA9PSAwIHRoZW4KCiAgICAgICAgLS0gc3RvcCBvbiBsZWFkaW5nIHplcm9zCgogICAgICAgIGJyZWFrCgogICAgICBlbmQKCiAgICAgIHRhYmxlX2luc2VydChzcywgMSwgQkFTRV9MRVRURVJTW2RdKQoKICAgIGVuZAoKICB1bnRpbCB4aXN6ZXJvCgogIGlmIG5lZyB0aGVuCgogICAgdGFibGVfaW5zZXJ0KHNzLCAxLCAnLScpCgogIGVuZAoKICByZXR1cm4gdGFibGVfY29uY2F0KHNzKQoKZW5kCgoKCmxvY2FsIGZ1bmN0aW9uIGJpbnRfYXNzZXJ0X2NvbnZlcnQoeCkKCiAgcmV0dXJuIGFzc2VydCh0b2JpbnQoeCksICd2YWx1ZSBoYXMgbm90IGludGVnZXIgcmVwcmVzZW50YXRpb24nKQoKZW5kCgoKCi0tLSBDb252ZXJ0IGEgYmludCB0byBhIGJ1ZmZlciBvZiBsaXR0bGUtZW5kaWFuIGJ5dGVzLgoKLS0gQHBhcmFtIHggQSBiaW50IG9yIGx1YSBpbnRlZ2VyLgoKLS0gQHBhcmFtW29wdF0gdHJpbSBJZiB0cnVlLCB6ZXJvIGJ5dGVzIG9uIHRoZSByaWdodCBhcmUgdHJpbW1lZC4KCi0tIEByZXR1cm4gQSBidWZmZXIgb2YgYnl0ZXMgcmVwcmVzZW50aW5nIHRoZSBpbnB1dC4KCi0tIEByYWlzZSBBc3NlcnRzIGluIGNhc2UgaW5wdXQgaXMgbm90IGNvbnZlcnRpYmxlIHRvIGFuIGludGVnZXIuCgpmdW5jdGlvbiBiaW50LnRvbGUoeCwgdHJpbSkKCiAgeCA9IGJpbnRfYXNzZXJ0X2NvbnZlcnQoeCkKCiAgbG9jYWwgcyA9IEJJTlRfTEVQQUNLRk1UOnBhY2sodGFibGVfdW5wYWNrKHgpKQoKICBpZiB0cmltIHRoZW4KCiAgICBzID0gczpnc3ViKCdceDAwKyQnLCAnJykKCiAgICBpZiBzID09ICcnIHRoZW4KCiAgICAgIHMgPSAnXHgwMCcKCiAgICBlbmQKCiAgZW5kCgogIHJldHVybiBzCgplbmQKCgoKLS0tIENvbnZlcnQgYSBiaW50IHRvIGEgYnVmZmVyIG9mIGJpZy1lbmRpYW4gYnl0ZXMuCgotLSBAcGFyYW0geCBBIGJpbnQgb3IgbHVhIGludGVnZXIuCgotLSBAcGFyYW1bb3B0XSB0cmltIElmIHRydWUsIHplcm8gYnl0ZXMgb24gdGhlIGxlZnQgYXJlIHRyaW1tZWQuCgotLSBAcmV0dXJuIEEgYnVmZmVyIG9mIGJ5dGVzIHJlcHJlc2VudGluZyB0aGUgaW5wdXQuCgotLSBAcmFpc2UgQXNzZXJ0cyBpbiBjYXNlIGlucHV0IGlzIG5vdCBjb252ZXJ0aWJsZSB0byBhbiBpbnRlZ2VyLgoKZnVuY3Rpb24gYmludC50b2JlKHgsIHRyaW0pCgogIHggPSBiaW50X2Fzc2VydF9jb252ZXJ0KHgpCgogIGxvY2FsIHMgPSBCSU5UX0xFUEFDS0ZNVDpwYWNrKHRhYmxlX3VucGFjayh4KSk6cmV2ZXJzZSgpCgogIGlmIHRyaW0gdGhlbgoKICAgIHMgPSBzOmdzdWIoJ15ceDAwKycsICcnKQoKICAgIGlmIHMgPT0gJycgdGhlbgoKICAgICAgcyA9ICdceDAwJwoKICAgIGVuZAoKICBlbmQKCiAgcmV0dXJuIHMKCmVuZAoKCgotLS0gQ2hlY2sgaWYgYSBudW1iZXIgaXMgMCBjb25zaWRlcmluZyBiaW50cy4KCi0tIEBwYXJhbSB4IEEgYmludCBvciBhIGx1YSBudW1iZXIuCgpmdW5jdGlvbiBiaW50LmlzemVybyh4KQoKICBpZiBnZXRtZXRhdGFibGUoeCkgPT0gYmludCB0aGVuCgogICAgZm9yIGk9MSxCSU5UX1NJWkUgZG8KCiAgICAgIGlmIHhbaV0gfj0gMCB0aGVuCgogICAgICAgIHJldHVybiBmYWxzZQoKICAgICAgZW5kCgogICAgZW5kCgogICAgcmV0dXJuIHRydWUKCiAgZW5kCgogIHJldHVybiB4ID09IDAKCmVuZAoKCgotLS0gQ2hlY2sgaWYgYSBudW1iZXIgaXMgMSBjb25zaWRlcmluZyBiaW50cy4KCi0tIEBwYXJhbSB4IEEgYmludCBvciBhIGx1YSBudW1iZXIuCgpmdW5jdGlvbiBiaW50Lmlzb25lKHgpCgogIGlmIGdldG1ldGF0YWJsZSh4KSA9PSBiaW50IHRoZW4KCiAgICBpZiB4WzFdIH49IDEgdGhlbgoKICAgICAgcmV0dXJuIGZhbHNlCgogICAgZW5kCgogICAgZm9yIGk9MixCSU5UX1NJWkUgZG8KCiAgICAgIGlmIHhbaV0gfj0gMCB0aGVuCgogICAgICAgIHJldHVybiBmYWxzZQoKICAgICAgZW5kCgogICAgZW5kCgogICAgcmV0dXJuIHRydWUKCiAgZW5kCgogIHJldHVybiB4ID09IDEKCmVuZAoKCgotLS0gQ2hlY2sgaWYgYSBudW1iZXIgaXMgLTEgY29uc2lkZXJpbmcgYmludHMuCgotLSBAcGFyYW0geCBBIGJpbnQgb3IgYSBsdWEgbnVtYmVyLgoKZnVuY3Rpb24gYmludC5pc21pbnVzb25lKHgpCgogIGlmIGdldG1ldGF0YWJsZSh4KSA9PSBiaW50IHRoZW4KCiAgICBmb3IgaT0xLEJJTlRfU0laRSBkbwoKICAgICAgaWYgeFtpXSB+PSBCSU5UX1dPUkRNQVggdGhlbgoKICAgICAgICByZXR1cm4gZmFsc2UKCiAgICAgIGVuZAoKICAgIGVuZAoKICAgIHJldHVybiB0cnVlCgogIGVuZAoKICByZXR1cm4geCA9PSAtMQoKZW5kCgpsb2NhbCBiaW50X2lzbWludXNvbmUgPSBiaW50LmlzbWludXNvbmUKCgoKLS0tIENoZWNrIGlmIHRoZSBpbnB1dCBpcyBhIGJpbnQuCgotLSBAcGFyYW0geCBBbnkgbHVhIHZhbHVlLgoKZnVuY3Rpb24gYmludC5pc2JpbnQoeCkKCiAgcmV0dXJuIGdldG1ldGF0YWJsZSh4KSA9PSBiaW50CgplbmQKCgoKLS0tIENoZWNrIGlmIHRoZSBpbnB1dCBpcyBhIGx1YSBpbnRlZ2VyIG9yIGEgYmludC4KCi0tIEBwYXJhbSB4IEFueSBsdWEgdmFsdWUuCgpmdW5jdGlvbiBiaW50LmlzaW50ZWdyYWwoeCkKCiAgcmV0dXJuIGdldG1ldGF0YWJsZSh4KSA9PSBiaW50IG9yIG1hdGhfdHlwZSh4KSA9PSAnaW50ZWdlcicKCmVuZAoKCgotLS0gQ2hlY2sgaWYgdGhlIGlucHV0IGlzIGEgYmludCBvciBhIGx1YSBudW1iZXIuCgotLSBAcGFyYW0geCBBbnkgbHVhIHZhbHVlLgoKZnVuY3Rpb24gYmludC5pc251bWVyaWMoeCkKCiAgcmV0dXJuIGdldG1ldGF0YWJsZSh4KSA9PSBiaW50IG9yIHR5cGUoeCkgPT0gJ251bWJlcicKCmVuZAoKCgotLS0gR2V0IHRoZSBudW1iZXIgdHlwZSBvZiB0aGUgaW5wdXQgKGJpbnQsIGludGVnZXIgb3IgZmxvYXQpLgoKLS0gQHBhcmFtIHggQW55IGx1YSB2YWx1ZS4KCi0tIEByZXR1cm4gUmV0dXJucyAiYmludCIgZm9yIGJpbnRzLCAiaW50ZWdlciIgZm9yIGx1YSBpbnRlZ2VycywKCi0tICJmbG9hdCIgZnJvbSBsdWEgZmxvYXRzIG9yIG5pbCBvdGhlcndpc2UuCgpmdW5jdGlvbiBiaW50LnR5cGUoeCkKCiAgaWYgZ2V0bWV0YXRhYmxlKHgpID09IGJpbnQgdGhlbgoKICAgIHJldHVybiAnYmludCcKCiAgZW5kCgogIHJldHVybiBtYXRoX3R5cGUoeCkKCmVuZAoKCgotLS0gQ2hlY2sgaWYgYSBudW1iZXIgaXMgbmVnYXRpdmUgY29uc2lkZXJpbmcgYmludHMuCgotLSBaZXJvIGlzIGd1YXJhbnRlZWQgdG8gbmV2ZXIgYmUgbmVnYXRpdmUgZm9yIGJpbnRzLgoKLS0gQHBhcmFtIHggQSBiaW50IG9yIGEgbHVhIG51bWJlci4KCmZ1bmN0aW9uIGJpbnQuaXNuZWcoeCkKCiAgaWYgZ2V0bWV0YXRhYmxlKHgpID09IGJpbnQgdGhlbgoKICAgIHJldHVybiB4W0JJTlRfU0laRV0gJiBCSU5UX1dPUkRNU0Igfj0gMAoKICBlbmQKCiAgcmV0dXJuIHggPCAwCgplbmQKCmxvY2FsIGJpbnRfaXNuZWcgPSBiaW50LmlzbmVnCgoKCi0tLSBDaGVjayBpZiBhIG51bWJlciBpcyBwb3NpdGl2ZSBjb25zaWRlcmluZyBiaW50cy4KCi0tIEBwYXJhbSB4IEEgYmludCBvciBhIGx1YSBudW1iZXIuCgpmdW5jdGlvbiBiaW50LmlzcG9zKHgpCgogIGlmIGdldG1ldGF0YWJsZSh4KSA9PSBiaW50IHRoZW4KCiAgICByZXR1cm4gbm90IHg6aXNuZWcoKSBhbmQgbm90IHg6aXN6ZXJvKCkKCiAgZW5kCgogIHJldHVybiB4ID4gMAoKZW5kCgoKCi0tLSBDaGVjayBpZiBhIG51bWJlciBpcyBldmVuIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gQHBhcmFtIHggQSBiaW50IG9yIGEgbHVhIG51bWJlci4KCmZ1bmN0aW9uIGJpbnQuaXNldmVuKHgpCgogIGlmIGdldG1ldGF0YWJsZSh4KSA9PSBiaW50IHRoZW4KCiAgICByZXR1cm4geFsxXSAmIDEgPT0gMAoKICBlbmQKCiAgcmV0dXJuIG1hdGhfYWJzKHgpICUgMiA9PSAwCgplbmQKCgoKLS0tIENoZWNrIGlmIGEgbnVtYmVyIGlzIG9kZCBjb25zaWRlcmluZyBiaW50cy4KCi0tIEBwYXJhbSB4IEEgYmludCBvciBhIGx1YSBudW1iZXIuCgpmdW5jdGlvbiBiaW50Lmlzb2RkKHgpCgogIGlmIGdldG1ldGF0YWJsZSh4KSA9PSBiaW50IHRoZW4KCiAgICByZXR1cm4geFsxXSAmIDEgPT0gMQoKICBlbmQKCiAgcmV0dXJuIG1hdGhfYWJzKHgpICUgMiA9PSAxCgplbmQKCgoKLS0tIENyZWF0ZSBhIG5ldyBiaW50IHdpdGggdGhlIG1heGltdW0gcG9zc2libGUgaW50ZWdlciB2YWx1ZS4KCmZ1bmN0aW9uIGJpbnQubWF4aW50ZWdlcigpCgogIGxvY2FsIHggPSBzZXRtZXRhdGFibGUoe30sIGJpbnQpCgogIGZvciBpPTEsQklOVF9TSVpFLTEgZG8KCiAgICB4W2ldID0gQklOVF9XT1JETUFYCgogIGVuZAoKICB4W0JJTlRfU0laRV0gPSBCSU5UX1dPUkRNQVggfiBCSU5UX1dPUkRNU0IKCiAgcmV0dXJuIHgKCmVuZAoKCgotLS0gQ3JlYXRlIGEgbmV3IGJpbnQgd2l0aCB0aGUgbWluaW11bSBwb3NzaWJsZSBpbnRlZ2VyIHZhbHVlLgoKZnVuY3Rpb24gYmludC5taW5pbnRlZ2VyKCkKCiAgbG9jYWwgeCA9IHNldG1ldGF0YWJsZSh7fSwgYmludCkKCiAgZm9yIGk9MSxCSU5UX1NJWkUtMSBkbwoKICAgIHhbaV0gPSAwCgogIGVuZAoKICB4W0JJTlRfU0laRV0gPSBCSU5UX1dPUkRNU0IKCiAgcmV0dXJuIHgKCmVuZAoKCgotLS0gQml0d2lzZSBsZWZ0IHNoaWZ0IGEgYmludCBpbiBvbmUgYml0IChpbi1wbGFjZSkuCgpmdW5jdGlvbiBiaW50Ol9zaGxvbmUoKQoKICBsb2NhbCB3b3JkYml0c20xID0gQklOVF9XT1JEQklUUyAtIDEKCiAgZm9yIGk9QklOVF9TSVpFLDIsLTEgZG8KCiAgICBzZWxmW2ldID0gKChzZWxmW2ldIDw8IDEpIHwgKHNlbGZbaS0xXSA+PiB3b3JkYml0c20xKSkgJiBCSU5UX1dPUkRNQVgKCiAgZW5kCgogIHNlbGZbMV0gPSAoc2VsZlsxXSA8PCAxKSAmIEJJTlRfV09SRE1BWAoKICByZXR1cm4gc2VsZgoKZW5kCgoKCi0tLSBCaXR3aXNlIHJpZ2h0IHNoaWZ0IGEgYmludCBpbiBvbmUgYml0IChpbi1wbGFjZSkuCgpmdW5jdGlvbiBiaW50Ol9zaHJvbmUoKQoKICBsb2NhbCB3b3JkYml0c20xID0gQklOVF9XT1JEQklUUyAtIDEKCiAgZm9yIGk9MSxCSU5UX1NJWkUtMSBkbwoKICAgIHNlbGZbaV0gPSAoKHNlbGZbaV0gPj4gMSkgfCAoc2VsZltpKzFdIDw8IHdvcmRiaXRzbTEpKSAmIEJJTlRfV09SRE1BWAoKICBlbmQKCiAgc2VsZltCSU5UX1NJWkVdID0gc2VsZltCSU5UX1NJWkVdID4+IDEKCiAgcmV0dXJuIHNlbGYKCmVuZAoKCgotLSBCaXR3aXNlIGxlZnQgc2hpZnQgd29yZHMgb2YgYSBiaW50IChpbi1wbGFjZSkuIFVzZWQgb25seSBpbnRlcm5hbGx5LgoKZnVuY3Rpb24gYmludDpfc2hsd29yZHMobikKCiAgZm9yIGk9QklOVF9TSVpFLG4rMSwtMSBkbwoKICAgIHNlbGZbaV0gPSBzZWxmW2kgLSBuXQoKICBlbmQKCiAgZm9yIGk9MSxuIGRvCgogICAgc2VsZltpXSA9IDAKCiAgZW5kCgogIHJldHVybiBzZWxmCgplbmQKCgoKLS0gQml0d2lzZSByaWdodCBzaGlmdCB3b3JkcyBvZiBhIGJpbnQgKGluLXBsYWNlKS4gVXNlZCBvbmx5IGludGVybmFsbHkuCgpmdW5jdGlvbiBiaW50Ol9zaHJ3b3JkcyhuKQoKICBpZiBuIDwgQklOVF9TSVpFIHRoZW4KCiAgICBmb3IgaT0xLEJJTlRfU0laRS1uIGRvCgogICAgICBzZWxmW2ldID0gc2VsZltpICsgbl0KCiAgICBlbmQKCiAgICBmb3IgaT1CSU5UX1NJWkUtbisxLEJJTlRfU0laRSBkbwoKICAgICAgc2VsZltpXSA9IDAKCiAgICBlbmQKCiAgZWxzZQoKICAgIGZvciBpPTEsQklOVF9TSVpFIGRvCgogICAgICBzZWxmW2ldID0gMAoKICAgIGVuZAoKICBlbmQKCiAgcmV0dXJuIHNlbGYKCmVuZAoKCgotLS0gSW5jcmVtZW50IGEgYmludCBieSBvbmUgKGluLXBsYWNlKS4KCmZ1bmN0aW9uIGJpbnQ6X2luYygpCgogIGZvciBpPTEsQklOVF9TSVpFIGRvCgogICAgbG9jYWwgdG1wID0gc2VsZltpXQoKICAgIGxvY2FsIHYgPSAodG1wICsgMSkgJiBCSU5UX1dPUkRNQVgKCiAgICBzZWxmW2ldID0gdgoKICAgIGlmIHYgPiB0bXAgdGhlbgoKICAgICAgYnJlYWsKCiAgICBlbmQKCiAgZW5kCgogIHJldHVybiBzZWxmCgplbmQKCgoKLS0tIEluY3JlbWVudCBhIG51bWJlciBieSBvbmUgY29uc2lkZXJpbmcgYmludHMuCgotLSBAcGFyYW0geCBBIGJpbnQgb3IgYSBsdWEgbnVtYmVyIHRvIGluY3JlbWVudC4KCmZ1bmN0aW9uIGJpbnQuaW5jKHgpCgogIGxvY2FsIGl4ID0gdG9iaW50KHgsIHRydWUpCgogIGlmIGl4IHRoZW4KCiAgICByZXR1cm4gaXg6X2luYygpCgogIGVuZAoKICByZXR1cm4geCArIDEKCmVuZAoKCgotLS0gRGVjcmVtZW50IGEgYmludCBieSBvbmUgKGluLXBsYWNlKS4KCmZ1bmN0aW9uIGJpbnQ6X2RlYygpCgogIGZvciBpPTEsQklOVF9TSVpFIGRvCgogICAgbG9jYWwgdG1wID0gc2VsZltpXQoKICAgIGxvY2FsIHYgPSAodG1wIC0gMSkgJiBCSU5UX1dPUkRNQVgKCiAgICBzZWxmW2ldID0gdgoKICAgIGlmIHYgPD0gdG1wIHRoZW4KCiAgICAgIGJyZWFrCgogICAgZW5kCgogIGVuZAoKICByZXR1cm4gc2VsZgoKZW5kCgoKCi0tLSBEZWNyZW1lbnQgYSBudW1iZXIgYnkgb25lIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gQHBhcmFtIHggQSBiaW50IG9yIGEgbHVhIG51bWJlciB0byBkZWNyZW1lbnQuCgpmdW5jdGlvbiBiaW50LmRlYyh4KQoKICBsb2NhbCBpeCA9IHRvYmludCh4LCB0cnVlKQoKICBpZiBpeCB0aGVuCgogICAgcmV0dXJuIGl4Ol9kZWMoKQoKICBlbmQKCiAgcmV0dXJuIHggLSAxCgplbmQKCgoKLS0tIEFzc2lnbiBhIGJpbnQgdG8gYSBuZXcgdmFsdWUgKGluLXBsYWNlKS4KCi0tIEBwYXJhbSB5IEEgdmFsdWUgdG8gYmUgY29waWVkIGZyb20uCgotLSBAcmFpc2UgQXNzZXJ0cyBpbiBjYXNlIGlucHV0cyBhcmUgbm90IGNvbnZlcnRpYmxlIHRvIGludGVnZXJzLgoKZnVuY3Rpb24gYmludDpfYXNzaWduKHkpCgogIHkgPSBiaW50X2Fzc2VydF9jb252ZXJ0KHkpCgogIGZvciBpPTEsQklOVF9TSVpFIGRvCgogICAgc2VsZltpXSA9IHlbaV0KCiAgZW5kCgogIHJldHVybiBzZWxmCgplbmQKCgoKLS0tIFRha2UgYWJzb2x1dGUgb2YgYSBiaW50IChpbi1wbGFjZSkuCgpmdW5jdGlvbiBiaW50Ol9hYnMoKQoKICBpZiBzZWxmOmlzbmVnKCkgdGhlbgoKICAgIHNlbGY6X3VubSgpCgogIGVuZAoKICByZXR1cm4gc2VsZgoKZW5kCgoKCi0tLSBUYWtlIGFic29sdXRlIG9mIGEgbnVtYmVyIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gQHBhcmFtIHggQSBiaW50IG9yIGEgbHVhIG51bWJlciB0byB0YWtlIHRoZSBhYnNvbHV0ZS4KCmZ1bmN0aW9uIGJpbnQuYWJzKHgpCgogIGxvY2FsIGl4ID0gdG9iaW50KHgsIHRydWUpCgogIGlmIGl4IHRoZW4KCiAgICByZXR1cm4gaXg6X2FicygpCgogIGVuZAoKICByZXR1cm4gbWF0aF9hYnMoeCkKCmVuZAoKbG9jYWwgYmludF9hYnMgPSBiaW50LmFicwoKCgotLS0gVGFrZSB0aGUgZmxvb3Igb2YgYSBudW1iZXIgY29uc2lkZXJpbmcgYmludHMuCgotLSBAcGFyYW0geCBBIGJpbnQgb3IgYSBsdWEgbnVtYmVyIHRvIHBlcmZvcm0gdGhlIGZsb29yIG9wZXJhdGlvbi4KCmZ1bmN0aW9uIGJpbnQuZmxvb3IoeCkKCiAgaWYgZ2V0bWV0YXRhYmxlKHgpID09IGJpbnQgdGhlbgoKICAgIHJldHVybiBiaW50X25ldyh4KQoKICBlbmQKCiAgcmV0dXJuIGJpbnRfbmV3KG1hdGhfZmxvb3IodG9udW1iZXIoeCkpKQoKZW5kCgoKCi0tLSBUYWtlIGNlaWwgb2YgYSBudW1iZXIgY29uc2lkZXJpbmcgYmludHMuCgotLSBAcGFyYW0geCBBIGJpbnQgb3IgYSBsdWEgbnVtYmVyIHRvIHBlcmZvcm0gdGhlIGNlaWwgb3BlcmF0aW9uLgoKZnVuY3Rpb24gYmludC5jZWlsKHgpCgogIGlmIGdldG1ldGF0YWJsZSh4KSA9PSBiaW50IHRoZW4KCiAgICByZXR1cm4gYmludF9uZXcoeCkKCiAgZW5kCgogIHJldHVybiBiaW50X25ldyhtYXRoX2NlaWwodG9udW1iZXIoeCkpKQoKZW5kCgoKCi0tLSBXcmFwIGFyb3VuZCBiaXRzIG9mIGFuIGludGVnZXIgKGRpc2NhcmRpbmcgbGVmdCBiaXRzKSBjb25zaWRlcmluZyBiaW50cy4KCi0tIEBwYXJhbSB4IEEgYmludCBvciBhIGx1YSBpbnRlZ2VyLgoKLS0gQHBhcmFtIHkgTnVtYmVyIG9mIHJpZ2h0IGJpdHMgdG8gcHJlc2VydmUuCgpmdW5jdGlvbiBiaW50LmJ3cmFwKHgsIHkpCgogIHggPSBiaW50X2Fzc2VydF9jb252ZXJ0KHgpCgogIGlmIHkgPD0gMCB0aGVuCgogICAgcmV0dXJuIGJpbnRfemVybygpCgogIGVsc2VpZiB5IDwgQklOVF9CSVRTIHRoZW4KCiAgICByZXR1cm4geCAmIChiaW50X29uZSgpIDw8IHkpOl9kZWMoKQoKICBlbmQKCiAgcmV0dXJuIGJpbnRfbmV3KHgpCgplbmQKCgoKLS0tIFJvdGF0ZSBsZWZ0IGludGVnZXIgeCBieSB5IGJpdHMgY29uc2lkZXJpbmcgYmludHMuCgotLSBAcGFyYW0geCBBIGJpbnQgb3IgYSBsdWEgaW50ZWdlci4KCi0tIEBwYXJhbSB5IE51bWJlciBvZiBiaXRzIHRvIHJvdGF0ZS4KCmZ1bmN0aW9uIGJpbnQuYnJvbCh4LCB5KQoKICB4LCB5ID0gYmludF9hc3NlcnRfY29udmVydCh4KSwgYmludF9hc3NlcnRfdG9pbnRlZ2VyKHkpCgogIGlmIHkgPiAwIHRoZW4KCiAgICByZXR1cm4gKHggPDwgeSkgfCAoeCA+PiAoQklOVF9CSVRTIC0geSkpCgogIGVsc2VpZiB5IDwgMCB0aGVuCgogICAgaWYgeSB+PSBtYXRoX21pbmludGVnZXIgdGhlbgoKICAgICAgcmV0dXJuIHg6YnJvcigteSkKCiAgICBlbHNlCgogICAgICB4OmJyb3IoLSh5KzEpKQoKICAgICAgeDpicm9yKDEpCgogICAgZW5kCgogIGVuZAoKICByZXR1cm4geAoKZW5kCgoKCi0tLSBSb3RhdGUgcmlnaHQgaW50ZWdlciB4IGJ5IHkgYml0cyBjb25zaWRlcmluZyBiaW50cy4KCi0tIEBwYXJhbSB4IEEgYmludCBvciBhIGx1YSBpbnRlZ2VyLgoKLS0gQHBhcmFtIHkgTnVtYmVyIG9mIGJpdHMgdG8gcm90YXRlLgoKZnVuY3Rpb24gYmludC5icm9yKHgsIHkpCgogIHgsIHkgPSBiaW50X2Fzc2VydF9jb252ZXJ0KHgpLCBiaW50X2Fzc2VydF90b2ludGVnZXIoeSkKCiAgaWYgeSA+IDAgdGhlbgoKICAgIHJldHVybiAoeCA+PiB5KSB8ICh4IDw8IChCSU5UX0JJVFMgLSB5KSkKCiAgZWxzZWlmIHkgPCAwIHRoZW4KCiAgICBpZiB5IH49IG1hdGhfbWluaW50ZWdlciB0aGVuCgogICAgICByZXR1cm4geDpicm9sKC15KQoKICAgIGVsc2UKCiAgICAgIHg6YnJvbCgtKHkrMSkpCgogICAgICB4OmJyb2woMSkKCiAgICBlbmQKCiAgZW5kCgogIHJldHVybiB4CgplbmQKCgoKLS0tIFRydW5jYXRlIGEgbnVtYmVyIHRvIGEgYmludC4KCi0tIEZsb2F0cyBudW1iZXJzIGFyZSB0cnVuY2F0ZWQsIHRoYXQgaXMsIHRoZSBmcmFjdGlvbmFsIHBvcnQgaXMgZGlzY2FyZGVkLgoKLS0gQHBhcmFtIHggQSBudW1iZXIgdG8gdHJ1bmNhdGUuCgotLSBAcmV0dXJuIEEgbmV3IGJpbnQgb3IgbmlsIGluIGNhc2UgdGhlIGlucHV0IGRvZXMgbm90IGZpdCBpbiBhIGJpbnQgb3IgaXMgbm90IGEgbnVtYmVyLgoKZnVuY3Rpb24gYmludC50cnVuYyh4KQoKICBpZiBnZXRtZXRhdGFibGUoeCkgfj0gYmludCB0aGVuCgogICAgeCA9IHRvbnVtYmVyKHgpCgogICAgaWYgeCB0aGVuCgogICAgICBsb2NhbCB0eSA9IG1hdGhfdHlwZSh4KQoKICAgICAgaWYgdHkgPT0gJ2Zsb2F0JyB0aGVuCgogICAgICAgIC0tIHRydW5jYXRlIHRvIGludGVnZXIKCiAgICAgICAgeCA9IG1hdGhfbW9kZih4KQoKICAgICAgZW5kCgogICAgICByZXR1cm4gYmludF9mcm9taW50ZWdlcih4KQoKICAgIGVuZAoKICAgIHJldHVybgoKICBlbmQKCiAgcmV0dXJuIGJpbnRfbmV3KHgpCgplbmQKCgoKLS0tIFRha2UgbWF4aW11bSBiZXR3ZWVuIHR3byBudW1iZXJzIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gQHBhcmFtIHggQSBiaW50IG9yIGx1YSBudW1iZXIgdG8gY29tcGFyZS4KCi0tIEBwYXJhbSB5IEEgYmludCBvciBsdWEgbnVtYmVyIHRvIGNvbXBhcmUuCgotLSBAcmV0dXJuIEEgYmludCBvciBhIGx1YSBudW1iZXIuIEd1YXJhbnRlZXMgdG8gcmV0dXJuIGEgbmV3IGJpbnQgZm9yIGludGVnZXIgdmFsdWVzLgoKZnVuY3Rpb24gYmludC5tYXgoeCwgeSkKCiAgbG9jYWwgaXgsIGl5ID0gdG9iaW50KHgpLCB0b2JpbnQoeSkKCiAgaWYgaXggYW5kIGl5IHRoZW4KCiAgICByZXR1cm4gYmludF9uZXcoaXggPiBpeSBhbmQgaXggb3IgaXkpCgogIGVuZAoKICByZXR1cm4gYmludF9wYXJzZShtYXRoX21heCh4LCB5KSkKCmVuZAoKCgotLS0gVGFrZSBtaW5pbXVtIGJldHdlZW4gdHdvIG51bWJlcnMgY29uc2lkZXJpbmcgYmludHMuCgotLSBAcGFyYW0geCBBIGJpbnQgb3IgbHVhIG51bWJlciB0byBjb21wYXJlLgoKLS0gQHBhcmFtIHkgQSBiaW50IG9yIGx1YSBudW1iZXIgdG8gY29tcGFyZS4KCi0tIEByZXR1cm4gQSBiaW50IG9yIGEgbHVhIG51bWJlci4gR3VhcmFudGVlcyB0byByZXR1cm4gYSBuZXcgYmludCBmb3IgaW50ZWdlciB2YWx1ZXMuCgpmdW5jdGlvbiBiaW50Lm1pbih4LCB5KQoKICBsb2NhbCBpeCwgaXkgPSB0b2JpbnQoeCksIHRvYmludCh5KQoKICBpZiBpeCBhbmQgaXkgdGhlbgoKICAgIHJldHVybiBiaW50X25ldyhpeCA8IGl5IGFuZCBpeCBvciBpeSkKCiAgZW5kCgogIHJldHVybiBiaW50X3BhcnNlKG1hdGhfbWluKHgsIHkpKQoKZW5kCgoKCi0tLSBBZGQgYW4gaW50ZWdlciB0byBhIGJpbnQgKGluLXBsYWNlKS4KCi0tIEBwYXJhbSB5IEFuIGludGVnZXIgdG8gYmUgYWRkZWQuCgotLSBAcmFpc2UgQXNzZXJ0cyBpbiBjYXNlIGlucHV0cyBhcmUgbm90IGNvbnZlcnRpYmxlIHRvIGludGVnZXJzLgoKZnVuY3Rpb24gYmludDpfYWRkKHkpCgogIHkgPSBiaW50X2Fzc2VydF9jb252ZXJ0KHkpCgogIGxvY2FsIGNhcnJ5ID0gMAoKICBmb3IgaT0xLEJJTlRfU0laRSBkbwoKICAgIGxvY2FsIHRtcCA9IHNlbGZbaV0gKyB5W2ldICsgY2FycnkKCiAgICBjYXJyeSA9IHRtcCA+PiBCSU5UX1dPUkRCSVRTCgogICAgc2VsZltpXSA9IHRtcCAmIEJJTlRfV09SRE1BWAoKICBlbmQKCiAgcmV0dXJuIHNlbGYKCmVuZAoKCgotLS0gQWRkIHR3byBudW1iZXJzIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gQHBhcmFtIHggQSBiaW50IG9yIGEgbHVhIG51bWJlciB0byBiZSBhZGRlZC4KCi0tIEBwYXJhbSB5IEEgYmludCBvciBhIGx1YSBudW1iZXIgdG8gYmUgYWRkZWQuCgpmdW5jdGlvbiBiaW50Ll9fYWRkKHgsIHkpCgogIGxvY2FsIGl4LCBpeSA9IHRvYmludCh4KSwgdG9iaW50KHkpCgogIGlmIGl4IGFuZCBpeSB0aGVuCgogICAgbG9jYWwgeiA9IHNldG1ldGF0YWJsZSh7fSwgYmludCkKCiAgICBsb2NhbCBjYXJyeSA9IDAKCiAgICBmb3IgaT0xLEJJTlRfU0laRSBkbwoKICAgICAgbG9jYWwgdG1wID0gaXhbaV0gKyBpeVtpXSArIGNhcnJ5CgogICAgICBjYXJyeSA9IHRtcCA+PiBCSU5UX1dPUkRCSVRTCgogICAgICB6W2ldID0gdG1wICYgQklOVF9XT1JETUFYCgogICAgZW5kCgogICAgcmV0dXJuIHoKCiAgZW5kCgogIHJldHVybiBiaW50X3RvbnVtYmVyKHgpICsgYmludF90b251bWJlcih5KQoKZW5kCgoKCi0tLSBTdWJ0cmFjdCBhbiBpbnRlZ2VyIGZyb20gYSBiaW50IChpbi1wbGFjZSkuCgotLSBAcGFyYW0geSBBbiBpbnRlZ2VyIHRvIHN1YnRyYWN0LgoKLS0gQHJhaXNlIEFzc2VydHMgaW4gY2FzZSBpbnB1dHMgYXJlIG5vdCBjb252ZXJ0aWJsZSB0byBpbnRlZ2Vycy4KCmZ1bmN0aW9uIGJpbnQ6X3N1Yih5KQoKICB5ID0gYmludF9hc3NlcnRfY29udmVydCh5KQoKICBsb2NhbCBib3Jyb3cgPSAwCgogIGxvY2FsIHdvcmRtYXhwMSA9IEJJTlRfV09SRE1BWCArIDEKCiAgZm9yIGk9MSxCSU5UX1NJWkUgZG8KCiAgICBsb2NhbCByZXMgPSBzZWxmW2ldICsgd29yZG1heHAxIC0geVtpXSAtIGJvcnJvdwoKICAgIHNlbGZbaV0gPSByZXMgJiBCSU5UX1dPUkRNQVgKCiAgICBib3Jyb3cgPSAocmVzID4+IEJJTlRfV09SREJJVFMpIH4gMQoKICBlbmQKCiAgcmV0dXJuIHNlbGYKCmVuZAoKCgotLS0gU3VidHJhY3QgdHdvIG51bWJlcnMgY29uc2lkZXJpbmcgYmludHMuCgotLSBAcGFyYW0geCBBIGJpbnQgb3IgYSBsdWEgbnVtYmVyIHRvIGJlIHN1YnRyYWN0ZWQgZnJvbS4KCi0tIEBwYXJhbSB5IEEgYmludCBvciBhIGx1YSBudW1iZXIgdG8gc3VidHJhY3QuCgpmdW5jdGlvbiBiaW50Ll9fc3ViKHgsIHkpCgogIGxvY2FsIGl4LCBpeSA9IHRvYmludCh4KSwgdG9iaW50KHkpCgogIGlmIGl4IGFuZCBpeSB0aGVuCgogICAgbG9jYWwgeiA9IHNldG1ldGF0YWJsZSh7fSwgYmludCkKCiAgICBsb2NhbCBib3Jyb3cgPSAwCgogICAgbG9jYWwgd29yZG1heHAxID0gQklOVF9XT1JETUFYICsgMQoKICAgIGZvciBpPTEsQklOVF9TSVpFIGRvCgogICAgICBsb2NhbCByZXMgPSBpeFtpXSArIHdvcmRtYXhwMSAtIGl5W2ldIC0gYm9ycm93CgogICAgICB6W2ldID0gcmVzICYgQklOVF9XT1JETUFYCgogICAgICBib3Jyb3cgPSAocmVzID4+IEJJTlRfV09SREJJVFMpIH4gMQoKICAgIGVuZAoKICAgIHJldHVybiB6CgogIGVuZAoKICByZXR1cm4gYmludF90b251bWJlcih4KSAtIGJpbnRfdG9udW1iZXIoeSkKCmVuZAoKCgotLS0gTXVsdGlwbHkgdHdvIG51bWJlcnMgY29uc2lkZXJpbmcgYmludHMuCgotLSBAcGFyYW0geCBBIGJpbnQgb3IgYSBsdWEgbnVtYmVyIHRvIG11bHRpcGx5LgoKLS0gQHBhcmFtIHkgQSBiaW50IG9yIGEgbHVhIG51bWJlciB0byBtdWx0aXBseS4KCmZ1bmN0aW9uIGJpbnQuX19tdWwoeCwgeSkKCiAgbG9jYWwgaXgsIGl5ID0gdG9iaW50KHgpLCB0b2JpbnQoeSkKCiAgaWYgaXggYW5kIGl5IHRoZW4KCiAgICBsb2NhbCB6ID0gYmludF96ZXJvKCkKCiAgICBsb2NhbCBzaXplcDEgPSBCSU5UX1NJWkUrMQoKICAgIGxvY2FsIHMgPSBzaXplcDEKCiAgICBsb2NhbCBlID0gMAoKICAgIGZvciBpPTEsQklOVF9TSVpFIGRvCgogICAgICBpZiBpeFtpXSB+PSAwIG9yIGl5W2ldIH49IDAgdGhlbgoKICAgICAgICBlID0gbWF0aF9tYXgoZSwgaSkKCiAgICAgICAgcyA9IG1hdGhfbWluKHMsIGkpCgogICAgICBlbmQKCiAgICBlbmQKCiAgICBmb3IgaT1zLGUgZG8KCiAgICAgIGZvciBqPXMsbWF0aF9taW4oc2l6ZXAxLWksZSkgZG8KCiAgICAgICAgbG9jYWwgYSA9IGl4W2ldICogaXlbal0KCiAgICAgICAgaWYgYSB+PSAwIHRoZW4KCiAgICAgICAgICBsb2NhbCBjYXJyeSA9IDAKCiAgICAgICAgICBmb3Igaz1pK2otMSxCSU5UX1NJWkUgZG8KCiAgICAgICAgICAgIGxvY2FsIHRtcCA9IHpba10gKyAoYSAmIEJJTlRfV09SRE1BWCkgKyBjYXJyeQoKICAgICAgICAgICAgY2FycnkgPSB0bXAgPj4gQklOVF9XT1JEQklUUwoKICAgICAgICAgICAgeltrXSA9IHRtcCAmIEJJTlRfV09SRE1BWAoKICAgICAgICAgICAgYSA9IGEgPj4gQklOVF9XT1JEQklUUwoKICAgICAgICAgIGVuZAoKICAgICAgICBlbmQKCiAgICAgIGVuZAoKICAgIGVuZAoKICAgIHJldHVybiB6CgogIGVuZAoKICByZXR1cm4gYmludF90b251bWJlcih4KSAqIGJpbnRfdG9udW1iZXIoeSkKCmVuZAoKCgotLS0gQ2hlY2sgaWYgYmludHMgYXJlIGVxdWFsLgoKLS0gQHBhcmFtIHggQSBiaW50IHRvIGNvbXBhcmUuCgotLSBAcGFyYW0geSBBIGJpbnQgdG8gY29tcGFyZS4KCmZ1bmN0aW9uIGJpbnQuX19lcSh4LCB5KQoKICBmb3IgaT0xLEJJTlRfU0laRSBkbwoKICAgIGlmIHhbaV0gfj0geVtpXSB0aGVuCgogICAgICByZXR1cm4gZmFsc2UKCiAgICBlbmQKCiAgZW5kCgogIHJldHVybiB0cnVlCgplbmQKCgoKLS0tIENoZWNrIGlmIG51bWJlcnMgYXJlIGVxdWFsIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gQHBhcmFtIHggQSBiaW50IG9yIGx1YSBudW1iZXIgdG8gY29tcGFyZS4KCi0tIEBwYXJhbSB5IEEgYmludCBvciBsdWEgbnVtYmVyIHRvIGNvbXBhcmUuCgpmdW5jdGlvbiBiaW50LmVxKHgsIHkpCgogIGxvY2FsIGl4LCBpeSA9IHRvYmludCh4KSwgdG9iaW50KHkpCgogIGlmIGl4IGFuZCBpeSB0aGVuCgogICAgcmV0dXJuIGl4ID09IGl5CgogIGVuZAoKICByZXR1cm4geCA9PSB5CgplbmQKCmxvY2FsIGJpbnRfZXEgPSBiaW50LmVxCgoKCmxvY2FsIGZ1bmN0aW9uIGZpbmRsZWZ0Yml0KHgpCgogIGZvciBpPUJJTlRfU0laRSwxLC0xIGRvCgogICAgbG9jYWwgdiA9IHhbaV0KCiAgICBpZiB2IH49IDAgdGhlbgoKICAgICAgbG9jYWwgaiA9IDAKCiAgICAgIHJlcGVhdAoKICAgICAgICB2ID0gdiA+PiAxCgogICAgICAgIGogPSBqICsgMQoKICAgICAgdW50aWwgdiA9PSAwCgogICAgICByZXR1cm4gKGktMSkqQklOVF9XT1JEQklUUyArIGogLSAxLCBpCgogICAgZW5kCgogIGVuZAoKZW5kCgoKCi0tIFNpbmdsZSB3b3JkIGRpdmlzaW9uIG1vZHVsdXMKCmxvY2FsIGZ1bmN0aW9uIHN1ZGl2bW9kKG51bWUsIGRlbm8pCgogIGxvY2FsIHJlbWEKCiAgbG9jYWwgY2FycnkgPSAwCgogIGZvciBpPUJJTlRfU0laRSwxLC0xIGRvCgogICAgY2FycnkgPSBjYXJyeSB8IG51bWVbaV0KCiAgICBudW1lW2ldID0gY2FycnkgLy8gZGVubwoKICAgIHJlbWEgPSBjYXJyeSAlIGRlbm8KCiAgICBjYXJyeSA9IHJlbWEgPDwgQklOVF9XT1JEQklUUwoKICBlbmQKCiAgcmV0dXJuIHJlbWEKCmVuZAoKCgotLS0gUGVyZm9ybSB1bnNpZ25lZCBkaXZpc2lvbiBhbmQgbW9kdWxvIG9wZXJhdGlvbiBiZXR3ZWVuIHR3byBpbnRlZ2VycyBjb25zaWRlcmluZyBiaW50cy4KCi0tIFRoaXMgaXMgZWZmZWN0aXZlbHkgdGhlIHNhbWUgb2YgQHtiaW50LnVkaXZ9IGFuZCBAe2JpbnQudW1vZH0uCgotLSBAcGFyYW0geCBUaGUgbnVtZXJhdG9yLCBtdXN0IGJlIGEgYmludCBvciBhIGx1YSBpbnRlZ2VyLgoKLS0gQHBhcmFtIHkgVGhlIGRlbm9taW5hdG9yLCBtdXN0IGJlIGEgYmludCBvciBhIGx1YSBpbnRlZ2VyLgoKLS0gQHJldHVybiBUaGUgcXVvdGllbnQgZm9sbG93aW5nIHRoZSByZW1haW5kZXIsIGJvdGggYmludHMuCgotLSBAcmFpc2UgQXNzZXJ0cyBvbiBhdHRlbXB0IHRvIGRpdmlkZSBieSB6ZXJvCgotLSBvciBpZiBpbnB1dHMgYXJlIG5vdCBjb252ZXJ0aWJsZSB0byBpbnRlZ2Vycy4KCi0tIEBzZWUgYmludC51ZGl2CgotLSBAc2VlIGJpbnQudW1vZAoKZnVuY3Rpb24gYmludC51ZGl2bW9kKHgsIHkpCgogIGxvY2FsIG51bWUgPSBiaW50X25ldyh4KQoKICBsb2NhbCBkZW5vID0gYmludF9hc3NlcnRfY29udmVydCh5KQoKICAtLSBjb21wdXRlIGlmIGhpZ2ggYml0cyBvZiBkZW5vbWluYXRvciBhcmUgYWxsIHplcm9zCgogIGxvY2FsIGlzaGlnaHplcm8gPSB0cnVlCgogIGZvciBpPTIsQklOVF9TSVpFIGRvCgogICAgaWYgZGVub1tpXSB+PSAwIHRoZW4KCiAgICAgIGlzaGlnaHplcm8gPSBmYWxzZQoKICAgICAgYnJlYWsKCiAgICBlbmQKCiAgZW5kCgogIGlmIGlzaGlnaHplcm8gdGhlbgoKICAgIC0tIHRyeSB0byBkaXZpZGUgYnkgYSBzaW5nbGUgd29yZCAob3B0aW1pemF0aW9uKQoKICAgIGxvY2FsIGxvdyA9IGRlbm9bMV0KCiAgICBhc3NlcnQobG93IH49IDAsICdhdHRlbXB0IHRvIGRpdmlkZSBieSB6ZXJvJykKCiAgICBpZiBsb3cgPT0gMSB0aGVuCgogICAgICAtLSBkZW5vbWluYXRvciBpcyBvbmUKCiAgICAgIHJldHVybiBudW1lLCBiaW50X3plcm8oKQoKICAgIGVsc2VpZiBsb3cgPD0gKEJJTlRfV09SRE1TQiAtIDEpIHRoZW4KCiAgICAgIC0tIGNhbiBkbyBzaW5nbGUgd29yZCBkaXZpc2lvbgoKICAgICAgbG9jYWwgcmVtYSA9IHN1ZGl2bW9kKG51bWUsIGxvdykKCiAgICAgIHJldHVybiBudW1lLCBiaW50X2Zyb211aW50ZWdlcihyZW1hKQoKICAgIGVuZAoKICBlbmQKCiAgaWYgbnVtZTp1bHQoZGVubykgdGhlbgoKICAgIC0tIGRlbm9taW5hdG9yIGlzIGdyZWF0ZXIgdGhhbiBudW1lcmF0b3IKCiAgICByZXR1cm4gYmludF96ZXJvKCksIG51bWUKCiAgZW5kCgogIC0tIGFsaWduIGxlZnRtb3N0IGRpZ2l0cyBpbiBudW1lcmF0b3IgYW5kIGRlbm9taW5hdG9yCgogIGxvY2FsIGRlbm9sYml0ID0gZmluZGxlZnRiaXQoZGVubykKCiAgbG9jYWwgbnVtZWxiaXQsIG51bWVzaXplID0gZmluZGxlZnRiaXQobnVtZSkKCiAgbG9jYWwgYml0ID0gbnVtZWxiaXQgLSBkZW5vbGJpdAoKICBkZW5vID0gZGVubyA8PCBiaXQKCiAgbG9jYWwgd29yZG1heHAxID0gQklOVF9XT1JETUFYICsgMQoKICBsb2NhbCB3b3JkYml0c20xID0gQklOVF9XT1JEQklUUyAtIDEKCiAgbG9jYWwgZGVub3NpemUgPSBudW1lc2l6ZQoKICBsb2NhbCBxdW90ID0gYmludF96ZXJvKCkKCiAgd2hpbGUgYml0ID49IDAgZG8KCiAgICAtLSBjb21wdXRlIGRlbm9taW5hdG9yIDw9IG51bWVyYXRvcgoKICAgIGxvY2FsIGxlID0gdHJ1ZQoKICAgIGxvY2FsIHNpemUgPSBtYXRoX21heChudW1lc2l6ZSwgZGVub3NpemUpCgogICAgZm9yIGk9c2l6ZSwxLC0xIGRvCgogICAgICBsb2NhbCBhLCBiID0gZGVub1tpXSwgbnVtZVtpXQoKICAgICAgaWYgYSB+PSBiIHRoZW4KCiAgICAgICAgbGUgPSBhIDwgYgoKICAgICAgICBicmVhawoKICAgICAgZW5kCgogICAgZW5kCgogICAgLS0gaWYgdGhlIHBvcnRpb24gb2YgdGhlIG51bWVyYXRvciBhYm92ZSB0aGUgZGVub21pbmF0b3IgaXMgZ3JlYXRlciBvciBlcXVhbCB0aGFuIHRvIHRoZSBkZW5vbWluYXRvcgoKICAgIGlmIGxlIHRoZW4KCiAgICAgIC0tIHN1YnRyYWN0IGRlbm9taW5hdG9yIGZyb20gdGhlIHBvcnRpb24gb2YgdGhlIG51bWVyYXRvcgoKICAgICAgbG9jYWwgYm9ycm93ID0gMAoKICAgICAgZm9yIGk9MSxzaXplIGRvCgogICAgICAgIGxvY2FsIHJlcyA9IG51bWVbaV0gKyB3b3JkbWF4cDEgLSBkZW5vW2ldIC0gYm9ycm93CgogICAgICAgIG51bWVbaV0gPSByZXMgJiBCSU5UX1dPUkRNQVgKCiAgICAgICAgYm9ycm93ID0gKHJlcyA+PiBCSU5UX1dPUkRCSVRTKSB+IDEKCiAgICAgIGVuZAoKICAgICAgLS0gY29uY2F0ZW5hdGUgMSB0byB0aGUgcmlnaHQgYml0IG9mIHRoZSBxdW90aWVudAoKICAgICAgbG9jYWwgaSA9IChiaXQgLy8gQklOVF9XT1JEQklUUykgKyAxCgogICAgICBxdW90W2ldID0gcXVvdFtpXSB8ICgxIDw8IChiaXQgJSBCSU5UX1dPUkRCSVRTKSkKCiAgICBlbmQKCiAgICAtLSBzaGlmdCByaWdodCB0aGUgZGVub21pbmF0b3IgaW4gb25lIGJpdAoKICAgIGZvciBpPTEsZGVub3NpemUtMSBkbwoKICAgICAgZGVub1tpXSA9ICgoZGVub1tpXSA+PiAxKSB8IChkZW5vW2krMV0gPDwgd29yZGJpdHNtMSkpICYgQklOVF9XT1JETUFYCgogICAgZW5kCgogICAgbG9jYWwgbGFzdGRlbm93b3JkID0gZGVub1tkZW5vc2l6ZV0gPj4gMQoKICAgIGRlbm9bZGVub3NpemVdID0gbGFzdGRlbm93b3JkCgogICAgLS0gcmVjYWxjdWxhdGUgZGVub21pbmF0b3Igc2l6ZSAob3B0aW1pemF0aW9uKQoKICAgIGlmIGxhc3RkZW5vd29yZCA9PSAwIHRoZW4KCiAgICAgIHdoaWxlIGRlbm9bZGVub3NpemVdID09IDAgZG8KCiAgICAgICAgZGVub3NpemUgPSBkZW5vc2l6ZSAtIDEKCiAgICAgIGVuZAoKICAgICAgaWYgZGVub3NpemUgPT0gMCB0aGVuCgogICAgICAgIGJyZWFrCgogICAgICBlbmQKCiAgICBlbmQKCiAgICAtLSBkZWNyZW1lbnQgY3VycmVudCBzZXQgYml0IGZvciB0aGUgcXVvdGllbnQKCiAgICBiaXQgPSBiaXQgLSAxCgogIGVuZAoKICAtLSB0aGUgcmVtYWluaW5nIG51bWVyYXRvciBpcyB0aGUgcmVtYWluZGVyCgogIHJldHVybiBxdW90LCBudW1lCgplbmQKCmxvY2FsIGJpbnRfdWRpdm1vZCA9IGJpbnQudWRpdm1vZAoKCgotLS0gUGVyZm9ybSB1bnNpZ25lZCBkaXZpc2lvbiBiZXR3ZWVuIHR3byBpbnRlZ2VycyBjb25zaWRlcmluZyBiaW50cy4KCi0tIEBwYXJhbSB4IFRoZSBudW1lcmF0b3IsIG11c3QgYmUgYSBiaW50IG9yIGEgbHVhIGludGVnZXIuCgotLSBAcGFyYW0geSBUaGUgZGVub21pbmF0b3IsIG11c3QgYmUgYSBiaW50IG9yIGEgbHVhIGludGVnZXIuCgotLSBAcmV0dXJuIFRoZSBxdW90aWVudCwgYSBiaW50LgoKLS0gQHJhaXNlIEFzc2VydHMgb24gYXR0ZW1wdCB0byBkaXZpZGUgYnkgemVybwoKLS0gb3IgaWYgaW5wdXRzIGFyZSBub3QgY29udmVydGlibGUgdG8gaW50ZWdlcnMuCgpmdW5jdGlvbiBiaW50LnVkaXYoeCwgeSkKCiAgcmV0dXJuIChiaW50X3VkaXZtb2QoeCwgeSkpCgplbmQKCgoKLS0tIFBlcmZvcm0gdW5zaWduZWQgaW50ZWdlciBtb2R1bG8gb3BlcmF0aW9uIGJldHdlZW4gdHdvIGludGVnZXJzIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gQHBhcmFtIHggVGhlIG51bWVyYXRvciwgbXVzdCBiZSBhIGJpbnQgb3IgYSBsdWEgaW50ZWdlci4KCi0tIEBwYXJhbSB5IFRoZSBkZW5vbWluYXRvciwgbXVzdCBiZSBhIGJpbnQgb3IgYSBsdWEgaW50ZWdlci4KCi0tIEByZXR1cm4gVGhlIHJlbWFpbmRlciwgYSBiaW50LgoKLS0gQHJhaXNlIEFzc2VydHMgb24gYXR0ZW1wdCB0byBkaXZpZGUgYnkgemVybwoKLS0gb3IgaWYgdGhlIGlucHV0cyBhcmUgbm90IGNvbnZlcnRpYmxlIHRvIGludGVnZXJzLgoKZnVuY3Rpb24gYmludC51bW9kKHgsIHkpCgogIGxvY2FsIF8sIHJlbWEgPSBiaW50X3VkaXZtb2QoeCwgeSkKCiAgcmV0dXJuIHJlbWEKCmVuZAoKbG9jYWwgYmludF91bW9kID0gYmludC51bW9kCgoKCi0tLSBQZXJmb3JtIGludGVnZXIgdHJ1bmNhdGUgZGl2aXNpb24gYW5kIG1vZHVsbyBvcGVyYXRpb24gYmV0d2VlbiB0d28gbnVtYmVycyBjb25zaWRlcmluZyBiaW50cy4KCi0tIFRoaXMgaXMgZWZmZWN0aXZlbHkgdGhlIHNhbWUgb2YgQHtiaW50LnRkaXZ9IGFuZCBAe2JpbnQudG1vZH0uCgotLSBAcGFyYW0geCBUaGUgbnVtZXJhdG9yLCBhIGJpbnQgb3IgbHVhIG51bWJlci4KCi0tIEBwYXJhbSB5IFRoZSBkZW5vbWluYXRvciwgYSBiaW50IG9yIGx1YSBudW1iZXIuCgotLSBAcmV0dXJuIFRoZSBxdW90aWVudCBmb2xsb3dpbmcgdGhlIHJlbWFpbmRlciwgYm90aCBiaW50IG9yIGx1YSBudW1iZXIuCgotLSBAcmFpc2UgQXNzZXJ0cyBvbiBhdHRlbXB0IHRvIGRpdmlkZSBieSB6ZXJvIG9yIG9uIGRpdmlzaW9uIG92ZXJmbG93LgoKLS0gQHNlZSBiaW50LnRkaXYKCi0tIEBzZWUgYmludC50bW9kCgpmdW5jdGlvbiBiaW50LnRkaXZtb2QoeCwgeSkKCiAgbG9jYWwgYXgsIGF5ID0gYmludF9hYnMoeCksIGJpbnRfYWJzKHkpCgogIGxvY2FsIGl4LCBpeSA9IHRvYmludChheCksIHRvYmludChheSkKCiAgbG9jYWwgcXVvdCwgcmVtYQoKICBpZiBpeCBhbmQgaXkgdGhlbgoKICAgIGFzc2VydChub3QgKGJpbnRfZXEoeCwgQklOVF9NSU5JTlRFR0VSKSBhbmQgYmludF9pc21pbnVzb25lKHkpKSwgJ2RpdmlzaW9uIG92ZXJmbG93JykKCiAgICBxdW90LCByZW1hID0gYmludF91ZGl2bW9kKGl4LCBpeSkKCiAgZWxzZQoKICAgIHF1b3QsIHJlbWEgPSBheCAvLyBheSwgYXggJSBheQoKICBlbmQKCiAgbG9jYWwgaXN4bmVnLCBpc3luZWcgPSBiaW50X2lzbmVnKHgpLCBiaW50X2lzbmVnKHkpCgogIGlmIGlzeG5lZyB+PSBpc3luZWcgdGhlbgoKICAgIHF1b3QgPSAtcXVvdAoKICBlbmQKCiAgaWYgaXN4bmVnIHRoZW4KCiAgICByZW1hID0gLXJlbWEKCiAgZW5kCgogIHJldHVybiBxdW90LCByZW1hCgplbmQKCmxvY2FsIGJpbnRfdGRpdm1vZCA9IGJpbnQudGRpdm1vZAoKCgotLS0gUGVyZm9ybSB0cnVuY2F0ZSBkaXZpc2lvbiBiZXR3ZWVuIHR3byBudW1iZXJzIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gVHJ1bmNhdGUgZGl2aXNpb24gaXMgYSBkaXZpc2lvbiB0aGF0IHJvdW5kcyB0aGUgcXVvdGllbnQgdG93YXJkcyB6ZXJvLgoKLS0gQHBhcmFtIHggVGhlIG51bWVyYXRvciwgYSBiaW50IG9yIGx1YSBudW1iZXIuCgotLSBAcGFyYW0geSBUaGUgZGVub21pbmF0b3IsIGEgYmludCBvciBsdWEgbnVtYmVyLgoKLS0gQHJldHVybiBUaGUgcXVvdGllbnQsIGEgYmludCBvciBsdWEgbnVtYmVyLgoKLS0gQHJhaXNlIEFzc2VydHMgb24gYXR0ZW1wdCB0byBkaXZpZGUgYnkgemVybyBvciBvbiBkaXZpc2lvbiBvdmVyZmxvdy4KCmZ1bmN0aW9uIGJpbnQudGRpdih4LCB5KQoKICByZXR1cm4gKGJpbnRfdGRpdm1vZCh4LCB5KSkKCmVuZAoKCgotLS0gUGVyZm9ybSBpbnRlZ2VyIHRydW5jYXRlIG1vZHVsbyBvcGVyYXRpb24gYmV0d2VlbiB0d28gbnVtYmVycyBjb25zaWRlcmluZyBiaW50cy4KCi0tIFRoZSBvcGVyYXRpb24gaXMgZGVmaW5lZCBhcyB0aGUgcmVtYWluZGVyIG9mIHRoZSB0cnVuY2F0ZSBkaXZpc2lvbgoKLS0gKGRpdmlzaW9uIHRoYXQgcm91bmRzIHRoZSBxdW90aWVudCB0b3dhcmRzIHplcm8pLgoKLS0gQHBhcmFtIHggVGhlIG51bWVyYXRvciwgYSBiaW50IG9yIGx1YSBudW1iZXIuCgotLSBAcGFyYW0geSBUaGUgZGVub21pbmF0b3IsIGEgYmludCBvciBsdWEgbnVtYmVyLgoKLS0gQHJldHVybiBUaGUgcmVtYWluZGVyLCBhIGJpbnQgb3IgbHVhIG51bWJlci4KCi0tIEByYWlzZSBBc3NlcnRzIG9uIGF0dGVtcHQgdG8gZGl2aWRlIGJ5IHplcm8gb3Igb24gZGl2aXNpb24gb3ZlcmZsb3cuCgpmdW5jdGlvbiBiaW50LnRtb2QoeCwgeSkKCiAgbG9jYWwgXywgcmVtYSA9IGJpbnRfdGRpdm1vZCh4LCB5KQoKICByZXR1cm4gcmVtYQoKZW5kCgoKCi0tLSBQZXJmb3JtIGludGVnZXIgZmxvb3IgZGl2aXNpb24gYW5kIG1vZHVsbyBvcGVyYXRpb24gYmV0d2VlbiB0d28gbnVtYmVycyBjb25zaWRlcmluZyBiaW50cy4KCi0tIFRoaXMgaXMgZWZmZWN0aXZlbHkgdGhlIHNhbWUgb2YgQHtiaW50Ll9faWRpdn0gYW5kIEB7YmludC5fX21vZH0uCgotLSBAcGFyYW0geCBUaGUgbnVtZXJhdG9yLCBhIGJpbnQgb3IgbHVhIG51bWJlci4KCi0tIEBwYXJhbSB5IFRoZSBkZW5vbWluYXRvciwgYSBiaW50IG9yIGx1YSBudW1iZXIuCgotLSBAcmV0dXJuIFRoZSBxdW90aWVudCBmb2xsb3dpbmcgdGhlIHJlbWFpbmRlciwgYm90aCBiaW50IG9yIGx1YSBudW1iZXIuCgotLSBAcmFpc2UgQXNzZXJ0cyBvbiBhdHRlbXB0IHRvIGRpdmlkZSBieSB6ZXJvLgoKLS0gQHNlZSBiaW50Ll9faWRpdgoKLS0gQHNlZSBiaW50Ll9fbW9kCgpmdW5jdGlvbiBiaW50LmlkaXZtb2QoeCwgeSkKCiAgbG9jYWwgaXgsIGl5ID0gdG9iaW50KHgpLCB0b2JpbnQoeSkKCiAgaWYgaXggYW5kIGl5IHRoZW4KCiAgICBsb2NhbCBpc251bWVuZWcgPSBpeFtCSU5UX1NJWkVdICYgQklOVF9XT1JETVNCIH49IDAKCiAgICBsb2NhbCBpc2Rlbm9uZWcgPSBpeVtCSU5UX1NJWkVdICYgQklOVF9XT1JETVNCIH49IDAKCiAgICBpZiBpc251bWVuZWcgdGhlbgoKICAgICAgaXggPSAtaXgKCiAgICBlbmQKCiAgICBpZiBpc2Rlbm9uZWcgdGhlbgoKICAgICAgaXkgPSAtaXkKCiAgICBlbmQKCiAgICBsb2NhbCBxdW90LCByZW1hID0gYmludF91ZGl2bW9kKGl4LCBpeSkKCiAgICBpZiBpc251bWVuZWcgfj0gaXNkZW5vbmVnIHRoZW4KCiAgICAgIHF1b3Q6X3VubSgpCgogICAgICAtLSByb3VuZCBxdW90aWVudCB0b3dhcmRzIG1pbnVzIGluZmluaXR5CgogICAgICBpZiBub3QgcmVtYTppc3plcm8oKSB0aGVuCgogICAgICAgIHF1b3Q6X2RlYygpCgogICAgICAgIC0tIGFkanVzdCB0aGUgcmVtYWluZGVyCgogICAgICAgIGlmIGlzbnVtZW5lZyBhbmQgbm90IGlzZGVub25lZyB0aGVuCgogICAgICAgICAgcmVtYTpfdW5tKCk6X2FkZCh5KQoKICAgICAgICBlbHNlaWYgaXNkZW5vbmVnIGFuZCBub3QgaXNudW1lbmVnIHRoZW4KCiAgICAgICAgICByZW1hOl9hZGQoeSkKCiAgICAgICAgZW5kCgogICAgICBlbmQKCiAgICBlbHNlaWYgaXNudW1lbmVnIHRoZW4KCiAgICAgIC0tIGFkanVzdCB0aGUgcmVtYWluZGVyCgogICAgICByZW1hOl91bm0oKQoKICAgIGVuZAoKICAgIHJldHVybiBxdW90LCByZW1hCgogIGVuZAoKICBsb2NhbCBueCwgbnkgPSBiaW50X3RvbnVtYmVyKHgpLCBiaW50X3RvbnVtYmVyKHkpCgogIHJldHVybiBueCAvLyBueSwgbnggJSBueQoKZW5kCgpsb2NhbCBiaW50X2lkaXZtb2QgPSBiaW50LmlkaXZtb2QKCgoKLS0tIFBlcmZvcm0gZmxvb3IgZGl2aXNpb24gYmV0d2VlbiB0d28gbnVtYmVycyBjb25zaWRlcmluZyBiaW50cy4KCi0tIEZsb29yIGRpdmlzaW9uIGlzIGEgZGl2aXNpb24gdGhhdCByb3VuZHMgdGhlIHF1b3RpZW50IHRvd2FyZHMgbWludXMgaW5maW5pdHksCgotLSByZXN1bHRpbmcgaW4gdGhlIGZsb29yIG9mIHRoZSBkaXZpc2lvbiBvZiBpdHMgb3BlcmFuZHMuCgotLSBAcGFyYW0geCBUaGUgbnVtZXJhdG9yLCBhIGJpbnQgb3IgbHVhIG51bWJlci4KCi0tIEBwYXJhbSB5IFRoZSBkZW5vbWluYXRvciwgYSBiaW50IG9yIGx1YSBudW1iZXIuCgotLSBAcmV0dXJuIFRoZSBxdW90aWVudCwgYSBiaW50IG9yIGx1YSBudW1iZXIuCgotLSBAcmFpc2UgQXNzZXJ0cyBvbiBhdHRlbXB0IHRvIGRpdmlkZSBieSB6ZXJvLgoKZnVuY3Rpb24gYmludC5fX2lkaXYoeCwgeSkKCiAgbG9jYWwgaXgsIGl5ID0gdG9iaW50KHgpLCB0b2JpbnQoeSkKCiAgaWYgaXggYW5kIGl5IHRoZW4KCiAgICBsb2NhbCBpc251bWVuZWcgPSBpeFtCSU5UX1NJWkVdICYgQklOVF9XT1JETVNCIH49IDAKCiAgICBsb2NhbCBpc2Rlbm9uZWcgPSBpeVtCSU5UX1NJWkVdICYgQklOVF9XT1JETVNCIH49IDAKCiAgICBpZiBpc251bWVuZWcgdGhlbgoKICAgICAgaXggPSAtaXgKCiAgICBlbmQKCiAgICBpZiBpc2Rlbm9uZWcgdGhlbgoKICAgICAgaXkgPSAtaXkKCiAgICBlbmQKCiAgICBsb2NhbCBxdW90LCByZW1hID0gYmludF91ZGl2bW9kKGl4LCBpeSkKCiAgICBpZiBpc251bWVuZWcgfj0gaXNkZW5vbmVnIHRoZW4KCiAgICAgIHF1b3Q6X3VubSgpCgogICAgICAtLSByb3VuZCBxdW90aWVudCB0b3dhcmRzIG1pbnVzIGluZmluaXR5CgogICAgICBpZiBub3QgcmVtYTppc3plcm8oKSB0aGVuCgogICAgICAgIHF1b3Q6X2RlYygpCgogICAgICBlbmQKCiAgICBlbmQKCiAgICByZXR1cm4gcXVvdCwgcmVtYQoKICBlbmQKCiAgcmV0dXJuIGJpbnRfdG9udW1iZXIoeCkgLy8gYmludF90b251bWJlcih5KQoKZW5kCgoKCi0tLSBQZXJmb3JtIGRpdmlzaW9uIGJldHdlZW4gdHdvIG51bWJlcnMgY29uc2lkZXJpbmcgYmludHMuCgotLSBUaGlzIGFsd2F5cyBjYXN0cyBpbnB1dHMgdG8gZmxvYXRzLCBmb3IgaW50ZWdlciBkaXZpc2lvbiBvbmx5IHVzZSBAe2JpbnQuX19pZGl2fS4KCi0tIEBwYXJhbSB4IFRoZSBudW1lcmF0b3IsIGEgYmludCBvciBsdWEgbnVtYmVyLgoKLS0gQHBhcmFtIHkgVGhlIGRlbm9taW5hdG9yLCBhIGJpbnQgb3IgbHVhIG51bWJlci4KCi0tIEByZXR1cm4gVGhlIHF1b3RpZW50LCBhIGx1YSBudW1iZXIuCgpmdW5jdGlvbiBiaW50Ll9fZGl2KHgsIHkpCgogIHJldHVybiBiaW50X3RvbnVtYmVyKHgpIC8gYmludF90b251bWJlcih5KQoKZW5kCgoKCi0tLSBQZXJmb3JtIGludGVnZXIgZmxvb3IgbW9kdWxvIG9wZXJhdGlvbiBiZXR3ZWVuIHR3byBudW1iZXJzIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gVGhlIG9wZXJhdGlvbiBpcyBkZWZpbmVkIGFzIHRoZSByZW1haW5kZXIgb2YgdGhlIGZsb29yIGRpdmlzaW9uCgotLSAoZGl2aXNpb24gdGhhdCByb3VuZHMgdGhlIHF1b3RpZW50IHRvd2FyZHMgbWludXMgaW5maW5pdHkpLgoKLS0gQHBhcmFtIHggVGhlIG51bWVyYXRvciwgYSBiaW50IG9yIGx1YSBudW1iZXIuCgotLSBAcGFyYW0geSBUaGUgZGVub21pbmF0b3IsIGEgYmludCBvciBsdWEgbnVtYmVyLgoKLS0gQHJldHVybiBUaGUgcmVtYWluZGVyLCBhIGJpbnQgb3IgbHVhIG51bWJlci4KCi0tIEByYWlzZSBBc3NlcnRzIG9uIGF0dGVtcHQgdG8gZGl2aWRlIGJ5IHplcm8uCgpmdW5jdGlvbiBiaW50Ll9fbW9kKHgsIHkpCgogIGxvY2FsIF8sIHJlbWEgPSBiaW50X2lkaXZtb2QoeCwgeSkKCiAgcmV0dXJuIHJlbWEKCmVuZAoKCgotLS0gUGVyZm9ybSBpbnRlZ2VyIHBvd2VyIGJldHdlZW4gdHdvIGludGVnZXJzIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gSWYgeSBpcyBuZWdhdGl2ZSB0aGVuIHBvdyBpcyBwZXJmb3JtZWQgYXMgYW4gdW5zaWduZWQgaW50ZWdlci4KCi0tIEBwYXJhbSB4IFRoZSBiYXNlLCBhbiBpbnRlZ2VyLgoKLS0gQHBhcmFtIHkgVGhlIGV4cG9uZW50LCBhbiBpbnRlZ2VyLgoKLS0gQHJldHVybiBUaGUgcmVzdWx0IG9mIHRoZSBwb3cgb3BlcmF0aW9uLCBhIGJpbnQuCgotLSBAcmFpc2UgQXNzZXJ0cyBpbiBjYXNlIGlucHV0cyBhcmUgbm90IGNvbnZlcnRpYmxlIHRvIGludGVnZXJzLgoKLS0gQHNlZSBiaW50Ll9fcG93CgotLSBAc2VlIGJpbnQudXBvd21vZAoKZnVuY3Rpb24gYmludC5pcG93KHgsIHkpCgogIHkgPSBiaW50X2Fzc2VydF9jb252ZXJ0KHkpCgogIGlmIHk6aXN6ZXJvKCkgdGhlbgoKICAgIHJldHVybiBiaW50X29uZSgpCgogIGVsc2VpZiB5Omlzb25lKCkgdGhlbgoKICAgIHJldHVybiBiaW50X25ldyh4KQoKICBlbmQKCiAgLS0gY29tcHV0ZSBleHBvbmVudGlhdGlvbiBieSBzcXVhcmluZwoKICB4LCB5ID0gYmludF9uZXcoeCksICBiaW50X25ldyh5KQoKICBsb2NhbCB6ID0gYmludF9vbmUoKQoKICByZXBlYXQKCiAgICBpZiB5OmlzZXZlbigpIHRoZW4KCiAgICAgIHggPSB4ICogeAoKICAgICAgeTpfc2hyb25lKCkKCiAgICBlbHNlCgogICAgICB6ID0geCAqIHoKCiAgICAgIHggPSB4ICogeAoKICAgICAgeTpfZGVjKCk6X3Nocm9uZSgpCgogICAgZW5kCgogIHVudGlsIHk6aXNvbmUoKQoKICByZXR1cm4geCAqIHoKCmVuZAoKCgotLS0gUGVyZm9ybSBpbnRlZ2VyIHBvd2VyIGJldHdlZW4gdHdvIHVuc2lnbmVkIGludGVnZXJzIG92ZXIgYSBtb2R1bHVzIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gQHBhcmFtIHggVGhlIGJhc2UsIGFuIGludGVnZXIuCgotLSBAcGFyYW0geSBUaGUgZXhwb25lbnQsIGFuIGludGVnZXIuCgotLSBAcGFyYW0gbSBUaGUgbW9kdWx1cywgYW4gaW50ZWdlci4KCi0tIEByZXR1cm4gVGhlIHJlc3VsdCBvZiB0aGUgcG93IG9wZXJhdGlvbiwgYSBiaW50LgoKLS0gQHJhaXNlIEFzc2VydHMgaW4gY2FzZSBpbnB1dHMgYXJlIG5vdCBjb252ZXJ0aWJsZSB0byBpbnRlZ2Vycy4KCi0tIEBzZWUgYmludC5fX3BvdwoKLS0gQHNlZSBiaW50Lmlwb3cKCmZ1bmN0aW9uIGJpbnQudXBvd21vZCh4LCB5LCBtKQoKICBtID0gYmludF9hc3NlcnRfY29udmVydChtKQoKICBpZiBtOmlzb25lKCkgdGhlbgoKICAgIHJldHVybiBiaW50X3plcm8oKQoKICBlbmQKCiAgeCwgeSA9IGJpbnRfbmV3KHgpLCAgYmludF9uZXcoeSkKCiAgbG9jYWwgeiA9IGJpbnRfb25lKCkKCiAgeCA9IGJpbnRfdW1vZCh4LCBtKQoKICB3aGlsZSBub3QgeTppc3plcm8oKSBkbwoKICAgIGlmIHk6aXNvZGQoKSB0aGVuCgogICAgICB6ID0gYmludF91bW9kKHoqeCwgbSkKCiAgICBlbmQKCiAgICB5Ol9zaHJvbmUoKQoKICAgIHggPSBiaW50X3Vtb2QoeCp4LCBtKQoKICBlbmQKCiAgcmV0dXJuIHoKCmVuZAoKCgotLS0gUGVyZm9ybSBudW1lcmljIHBvd2VyIGJldHdlZW4gdHdvIG51bWJlcnMgY29uc2lkZXJpbmcgYmludHMuCgotLSBUaGlzIGFsd2F5cyBjYXN0cyBpbnB1dHMgdG8gZmxvYXRzLCBmb3IgaW50ZWdlciBwb3dlciBvbmx5IHVzZSBAe2JpbnQuaXBvd30uCgotLSBAcGFyYW0geCBUaGUgYmFzZSwgYSBiaW50IG9yIGx1YSBudW1iZXIuCgotLSBAcGFyYW0geSBUaGUgZXhwb25lbnQsIGEgYmludCBvciBsdWEgbnVtYmVyLgoKLS0gQHJldHVybiBUaGUgcmVzdWx0IG9mIHRoZSBwb3cgb3BlcmF0aW9uLCBhIGx1YSBudW1iZXIuCgotLSBAc2VlIGJpbnQuaXBvdwoKZnVuY3Rpb24gYmludC5fX3Bvdyh4LCB5KQoKICByZXR1cm4gYmludF90b251bWJlcih4KSBeIGJpbnRfdG9udW1iZXIoeSkKCmVuZAoKCgotLS0gQml0d2lzZSBsZWZ0IHNoaWZ0IGludGVnZXJzIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gQHBhcmFtIHggQW4gaW50ZWdlciB0byBwZXJmb3JtIHRoZSBiaXR3aXNlIHNoaWZ0LgoKLS0gQHBhcmFtIHkgQW4gaW50ZWdlciB3aXRoIHRoZSBudW1iZXIgb2YgYml0cyB0byBzaGlmdC4KCi0tIEByZXR1cm4gVGhlIHJlc3VsdCBvZiBzaGlmdCBvcGVyYXRpb24sIGEgYmludC4KCi0tIEByYWlzZSBBc3NlcnRzIGluIGNhc2UgaW5wdXRzIGFyZSBub3QgY29udmVydGlibGUgdG8gaW50ZWdlcnMuCgpmdW5jdGlvbiBiaW50Ll9fc2hsKHgsIHkpCgogIHgsIHkgPSBiaW50X25ldyh4KSwgYmludF9hc3NlcnRfdG9pbnRlZ2VyKHkpCgogIGlmIHkgPT0gbWF0aF9taW5pbnRlZ2VyIG9yIG1hdGhfYWJzKHkpID49IEJJTlRfQklUUyB0aGVuCgogICAgcmV0dXJuIGJpbnRfemVybygpCgogIGVuZAoKICBpZiB5IDwgMCB0aGVuCgogICAgcmV0dXJuIHggPj4gLXkKCiAgZW5kCgogIGxvY2FsIG52YWxzID0geSAvLyBCSU5UX1dPUkRCSVRTCgogIGlmIG52YWxzIH49IDAgdGhlbgoKICAgIHg6X3NobHdvcmRzKG52YWxzKQoKICAgIHkgPSB5IC0gbnZhbHMgKiBCSU5UX1dPUkRCSVRTCgogIGVuZAoKICBpZiB5IH49IDAgdGhlbgoKICAgIGxvY2FsIHdvcmRiaXRzbXkgPSBCSU5UX1dPUkRCSVRTIC0geQoKICAgIGZvciBpPUJJTlRfU0laRSwyLC0xIGRvCgogICAgICB4W2ldID0gKCh4W2ldIDw8IHkpIHwgKHhbaS0xXSA+PiB3b3JkYml0c215KSkgJiBCSU5UX1dPUkRNQVgKCiAgICBlbmQKCiAgICB4WzFdID0gKHhbMV0gPDwgeSkgJiBCSU5UX1dPUkRNQVgKCiAgZW5kCgogIHJldHVybiB4CgplbmQKCgoKLS0tIEJpdHdpc2UgcmlnaHQgc2hpZnQgaW50ZWdlcnMgY29uc2lkZXJpbmcgYmludHMuCgotLSBAcGFyYW0geCBBbiBpbnRlZ2VyIHRvIHBlcmZvcm0gdGhlIGJpdHdpc2Ugc2hpZnQuCgotLSBAcGFyYW0geSBBbiBpbnRlZ2VyIHdpdGggdGhlIG51bWJlciBvZiBiaXRzIHRvIHNoaWZ0LgoKLS0gQHJldHVybiBUaGUgcmVzdWx0IG9mIHNoaWZ0IG9wZXJhdGlvbiwgYSBiaW50LgoKLS0gQHJhaXNlIEFzc2VydHMgaW4gY2FzZSBpbnB1dHMgYXJlIG5vdCBjb252ZXJ0aWJsZSB0byBpbnRlZ2Vycy4KCmZ1bmN0aW9uIGJpbnQuX19zaHIoeCwgeSkKCiAgeCwgeSA9IGJpbnRfbmV3KHgpLCBiaW50X2Fzc2VydF90b2ludGVnZXIoeSkKCiAgaWYgeSA9PSBtYXRoX21pbmludGVnZXIgb3IgbWF0aF9hYnMoeSkgPj0gQklOVF9CSVRTIHRoZW4KCiAgICByZXR1cm4gYmludF96ZXJvKCkKCiAgZW5kCgogIGlmIHkgPCAwIHRoZW4KCiAgICByZXR1cm4geCA8PCAteQoKICBlbmQKCiAgbG9jYWwgbnZhbHMgPSB5IC8vIEJJTlRfV09SREJJVFMKCiAgaWYgbnZhbHMgfj0gMCB0aGVuCgogICAgeDpfc2hyd29yZHMobnZhbHMpCgogICAgeSA9IHkgLSBudmFscyAqIEJJTlRfV09SREJJVFMKCiAgZW5kCgogIGlmIHkgfj0gMCB0aGVuCgogICAgbG9jYWwgd29yZGJpdHNteSA9IEJJTlRfV09SREJJVFMgLSB5CgogICAgZm9yIGk9MSxCSU5UX1NJWkUtMSBkbwoKICAgICAgeFtpXSA9ICgoeFtpXSA+PiB5KSB8ICh4W2krMV0gPDwgd29yZGJpdHNteSkpICYgQklOVF9XT1JETUFYCgogICAgZW5kCgogICAgeFtCSU5UX1NJWkVdID0geFtCSU5UX1NJWkVdID4+IHkKCiAgZW5kCgogIHJldHVybiB4CgplbmQKCgoKLS0tIEJpdHdpc2UgQU5EIGJpbnRzIChpbi1wbGFjZSkuCgotLSBAcGFyYW0geSBBbiBpbnRlZ2VyIHRvIHBlcmZvcm0gYml0d2lzZSBBTkQuCgotLSBAcmFpc2UgQXNzZXJ0cyBpbiBjYXNlIGlucHV0cyBhcmUgbm90IGNvbnZlcnRpYmxlIHRvIGludGVnZXJzLgoKZnVuY3Rpb24gYmludDpfYmFuZCh5KQoKICB5ID0gYmludF9hc3NlcnRfY29udmVydCh5KQoKICBmb3IgaT0xLEJJTlRfU0laRSBkbwoKICAgIHNlbGZbaV0gPSBzZWxmW2ldICYgeVtpXQoKICBlbmQKCiAgcmV0dXJuIHNlbGYKCmVuZAoKCgotLS0gQml0d2lzZSBBTkQgdHdvIGludGVnZXJzIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gQHBhcmFtIHggQW4gaW50ZWdlciB0byBwZXJmb3JtIGJpdHdpc2UgQU5ELgoKLS0gQHBhcmFtIHkgQW4gaW50ZWdlciB0byBwZXJmb3JtIGJpdHdpc2UgQU5ELgoKLS0gQHJhaXNlIEFzc2VydHMgaW4gY2FzZSBpbnB1dHMgYXJlIG5vdCBjb252ZXJ0aWJsZSB0byBpbnRlZ2Vycy4KCmZ1bmN0aW9uIGJpbnQuX19iYW5kKHgsIHkpCgogIHJldHVybiBiaW50X25ldyh4KTpfYmFuZCh5KQoKZW5kCgoKCi0tLSBCaXR3aXNlIE9SIGJpbnRzIChpbi1wbGFjZSkuCgotLSBAcGFyYW0geSBBbiBpbnRlZ2VyIHRvIHBlcmZvcm0gYml0d2lzZSBPUi4KCi0tIEByYWlzZSBBc3NlcnRzIGluIGNhc2UgaW5wdXRzIGFyZSBub3QgY29udmVydGlibGUgdG8gaW50ZWdlcnMuCgpmdW5jdGlvbiBiaW50Ol9ib3IoeSkKCiAgeSA9IGJpbnRfYXNzZXJ0X2NvbnZlcnQoeSkKCiAgZm9yIGk9MSxCSU5UX1NJWkUgZG8KCiAgICBzZWxmW2ldID0gc2VsZltpXSB8IHlbaV0KCiAgZW5kCgogIHJldHVybiBzZWxmCgplbmQKCgoKLS0tIEJpdHdpc2UgT1IgdHdvIGludGVnZXJzIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gQHBhcmFtIHggQW4gaW50ZWdlciB0byBwZXJmb3JtIGJpdHdpc2UgT1IuCgotLSBAcGFyYW0geSBBbiBpbnRlZ2VyIHRvIHBlcmZvcm0gYml0d2lzZSBPUi4KCi0tIEByYWlzZSBBc3NlcnRzIGluIGNhc2UgaW5wdXRzIGFyZSBub3QgY29udmVydGlibGUgdG8gaW50ZWdlcnMuCgpmdW5jdGlvbiBiaW50Ll9fYm9yKHgsIHkpCgogIHJldHVybiBiaW50X25ldyh4KTpfYm9yKHkpCgplbmQKCgoKLS0tIEJpdHdpc2UgWE9SIGJpbnRzIChpbi1wbGFjZSkuCgotLSBAcGFyYW0geSBBbiBpbnRlZ2VyIHRvIHBlcmZvcm0gYml0d2lzZSBYT1IuCgotLSBAcmFpc2UgQXNzZXJ0cyBpbiBjYXNlIGlucHV0cyBhcmUgbm90IGNvbnZlcnRpYmxlIHRvIGludGVnZXJzLgoKZnVuY3Rpb24gYmludDpfYnhvcih5KQoKICB5ID0gYmludF9hc3NlcnRfY29udmVydCh5KQoKICBmb3IgaT0xLEJJTlRfU0laRSBkbwoKICAgIHNlbGZbaV0gPSBzZWxmW2ldIH4geVtpXQoKICBlbmQKCiAgcmV0dXJuIHNlbGYKCmVuZAoKCgotLS0gQml0d2lzZSBYT1IgdHdvIGludGVnZXJzIGNvbnNpZGVyaW5nIGJpbnRzLgoKLS0gQHBhcmFtIHggQW4gaW50ZWdlciB0byBwZXJmb3JtIGJpdHdpc2UgWE9SLgoKLS0gQHBhcmFtIHkgQW4gaW50ZWdlciB0byBwZXJmb3JtIGJpdHdpc2UgWE9SLgoKLS0gQHJhaXNlIEFzc2VydHMgaW4gY2FzZSBpbnB1dHMgYXJlIG5vdCBjb252ZXJ0aWJsZSB0byBpbnRlZ2Vycy4KCmZ1bmN0aW9uIGJpbnQuX19ieG9yKHgsIHkpCgogIHJldHVybiBiaW50X25ldyh4KTpfYnhvcih5KQoKZW5kCgoKCi0tLSBCaXR3aXNlIE5PVCBhIGJpbnQgKGluLXBsYWNlKS4KCmZ1bmN0aW9uIGJpbnQ6X2Jub3QoKQoKICBmb3IgaT0xLEJJTlRfU0laRSBkbwoKICAgIHNlbGZbaV0gPSAofnNlbGZbaV0pICYgQklOVF9XT1JETUFYCgogIGVuZAoKICByZXR1cm4gc2VsZgoKZW5kCgoKCi0tLSBCaXR3aXNlIE5PVCBhIGJpbnQuCgotLSBAcGFyYW0geCBBbiBpbnRlZ2VyIHRvIHBlcmZvcm0gYml0d2lzZSBOT1QuCgotLSBAcmFpc2UgQXNzZXJ0cyBpbiBjYXNlIGlucHV0cyBhcmUgbm90IGNvbnZlcnRpYmxlIHRvIGludGVnZXJzLgoKZnVuY3Rpb24gYmludC5fX2Jub3QoeCkKCiAgbG9jYWwgeSA9IHNldG1ldGF0YWJsZSh7fSwgYmludCkKCiAgZm9yIGk9MSxCSU5UX1NJWkUgZG8KCiAgICB5W2ldID0gKH54W2ldKSAmIEJJTlRfV09SRE1BWAoKICBlbmQKCiAgcmV0dXJuIHkKCmVuZAoKCgotLS0gTmVnYXRlIGEgYmludCAoaW4tcGxhY2UpLiBUaGlzIGVmZmVjdGl2ZWx5IGFwcGxpZXMgdHdvJ3MgY29tcGxlbWVudHMuCgpmdW5jdGlvbiBiaW50Ol91bm0oKQoKICByZXR1cm4gc2VsZjpfYm5vdCgpOl9pbmMoKQoKZW5kCgoKCi0tLSBOZWdhdGUgYSBiaW50LiBUaGlzIGVmZmVjdGl2ZWx5IGFwcGxpZXMgdHdvJ3MgY29tcGxlbWVudHMuCgotLSBAcGFyYW0geCBBIGJpbnQgdG8gcGVyZm9ybSBuZWdhdGlvbi4KCmZ1bmN0aW9uIGJpbnQuX191bm0oeCkKCiAgcmV0dXJuICh+eCk6X2luYygpCgplbmQKCgoKLS0tIENvbXBhcmUgaWYgaW50ZWdlciB4IGlzIGxlc3MgdGhhbiB5IGNvbnNpZGVyaW5nIGJpbnRzICh1bnNpZ25lZCB2ZXJzaW9uKS4KCi0tIEBwYXJhbSB4IExlZnQgaW50ZWdlciB0byBjb21wYXJlLgoKLS0gQHBhcmFtIHkgUmlnaHQgaW50ZWdlciB0byBjb21wYXJlLgoKLS0gQHJhaXNlIEFzc2VydHMgaW4gY2FzZSBpbnB1dHMgYXJlIG5vdCBjb252ZXJ0aWJsZSB0byBpbnRlZ2Vycy4KCi0tIEBzZWUgYmludC5fX2x0CgpmdW5jdGlvbiBiaW50LnVsdCh4LCB5KQoKICB4LCB5ID0gYmludF9hc3NlcnRfY29udmVydCh4KSwgYmludF9hc3NlcnRfY29udmVydCh5KQoKICBmb3IgaT1CSU5UX1NJWkUsMSwtMSBkbwoKICAgIGxvY2FsIGEsIGIgPSB4W2ldLCB5W2ldCgogICAgaWYgYSB+PSBiIHRoZW4KCiAgICAgIHJldHVybiBhIDwgYgoKICAgIGVuZAoKICBlbmQKCiAgcmV0dXJuIGZhbHNlCgplbmQKCgoKLS0tIENvbXBhcmUgaWYgYmludCB4IGlzIGxlc3Mgb3IgZXF1YWwgdGhhbiB5IGNvbnNpZGVyaW5nIGJpbnRzICh1bnNpZ25lZCB2ZXJzaW9uKS4KCi0tIEBwYXJhbSB4IExlZnQgaW50ZWdlciB0byBjb21wYXJlLgoKLS0gQHBhcmFtIHkgUmlnaHQgaW50ZWdlciB0byBjb21wYXJlLgoKLS0gQHJhaXNlIEFzc2VydHMgaW4gY2FzZSBpbnB1dHMgYXJlIG5vdCBjb252ZXJ0aWJsZSB0byBpbnRlZ2Vycy4KCi0tIEBzZWUgYmludC5fX2xlCgpmdW5jdGlvbiBiaW50LnVsZSh4LCB5KQoKICB4LCB5ID0gYmludF9hc3NlcnRfY29udmVydCh4KSwgYmludF9hc3NlcnRfY29udmVydCh5KQoKICBmb3IgaT1CSU5UX1NJWkUsMSwtMSBkbwoKICAgIGxvY2FsIGEsIGIgPSB4W2ldLCB5W2ldCgogICAgaWYgYSB+PSBiIHRoZW4KCiAgICAgIHJldHVybiBhIDwgYgoKICAgIGVuZAoKICBlbmQKCiAgcmV0dXJuIHRydWUKCmVuZAoKCgotLS0gQ29tcGFyZSBpZiBudW1iZXIgeCBpcyBsZXNzIHRoYW4geSBjb25zaWRlcmluZyBiaW50cyBhbmQgc2lnbnMuCgotLSBAcGFyYW0geCBMZWZ0IHZhbHVlIHRvIGNvbXBhcmUsIGEgYmludCBvciBsdWEgbnVtYmVyLgoKLS0gQHBhcmFtIHkgUmlnaHQgdmFsdWUgdG8gY29tcGFyZSwgYSBiaW50IG9yIGx1YSBudW1iZXIuCgotLSBAc2VlIGJpbnQudWx0CgpmdW5jdGlvbiBiaW50Ll9fbHQoeCwgeSkKCiAgbG9jYWwgaXgsIGl5ID0gdG9iaW50KHgpLCB0b2JpbnQoeSkKCiAgaWYgaXggYW5kIGl5IHRoZW4KCiAgICBsb2NhbCB4bmVnID0gaXhbQklOVF9TSVpFXSAmIEJJTlRfV09SRE1TQiB+PSAwCgogICAgbG9jYWwgeW5lZyA9IGl5W0JJTlRfU0laRV0gJiBCSU5UX1dPUkRNU0Igfj0gMAoKICAgIGlmIHhuZWcgPT0geW5lZyB0aGVuCgogICAgICBmb3IgaT1CSU5UX1NJWkUsMSwtMSBkbwoKICAgICAgICBsb2NhbCBhLCBiID0gaXhbaV0sIGl5W2ldCgogICAgICAgIGlmIGEgfj0gYiB0aGVuCgogICAgICAgICAgcmV0dXJuIGEgPCBiCgogICAgICAgIGVuZAoKICAgICAgZW5kCgogICAgICByZXR1cm4gZmFsc2UKCiAgICBlbmQKCiAgICByZXR1cm4geG5lZyBhbmQgbm90IHluZWcKCiAgZW5kCgogIHJldHVybiBiaW50X3RvbnVtYmVyKHgpIDwgYmludF90b251bWJlcih5KQoKZW5kCgoKCi0tLSBDb21wYXJlIGlmIG51bWJlciB4IGlzIGxlc3Mgb3IgZXF1YWwgdGhhbiB5IGNvbnNpZGVyaW5nIGJpbnRzIGFuZCBzaWducy4KCi0tIEBwYXJhbSB4IExlZnQgdmFsdWUgdG8gY29tcGFyZSwgYSBiaW50IG9yIGx1YSBudW1iZXIuCgotLSBAcGFyYW0geSBSaWdodCB2YWx1ZSB0byBjb21wYXJlLCBhIGJpbnQgb3IgbHVhIG51bWJlci4KCi0tIEBzZWUgYmludC51bGUKCmZ1bmN0aW9uIGJpbnQuX19sZSh4LCB5KQoKICBsb2NhbCBpeCwgaXkgPSB0b2JpbnQoeCksIHRvYmludCh5KQoKICBpZiBpeCBhbmQgaXkgdGhlbgoKICAgIGxvY2FsIHhuZWcgPSBpeFtCSU5UX1NJWkVdICYgQklOVF9XT1JETVNCIH49IDAKCiAgICBsb2NhbCB5bmVnID0gaXlbQklOVF9TSVpFXSAmIEJJTlRfV09SRE1TQiB+PSAwCgogICAgaWYgeG5lZyA9PSB5bmVnIHRoZW4KCiAgICAgIGZvciBpPUJJTlRfU0laRSwxLC0xIGRvCgogICAgICAgIGxvY2FsIGEsIGIgPSBpeFtpXSwgaXlbaV0KCiAgICAgICAgaWYgYSB+PSBiIHRoZW4KCiAgICAgICAgICByZXR1cm4gYSA8IGIKCiAgICAgICAgZW5kCgogICAgICBlbmQKCiAgICAgIHJldHVybiB0cnVlCgogICAgZW5kCgogICAgcmV0dXJuIHhuZWcgYW5kIG5vdCB5bmVnCgogIGVuZAoKICByZXR1cm4gYmludF90b251bWJlcih4KSA8PSBiaW50X3RvbnVtYmVyKHkpCgplbmQKCgoKLS0tIENvbnZlcnQgYSBiaW50IHRvIGEgc3RyaW5nIG9uIGJhc2UgMTAuCgotLSBAc2VlIGJpbnQudG9iYXNlCgpmdW5jdGlvbiBiaW50Ol9fdG9zdHJpbmcoKQoKICByZXR1cm4gc2VsZjp0b2Jhc2UoMTApCgplbmQKCgoKLS0gQWxsb3cgY3JlYXRpbmcgYmludHMgYnkgY2FsbGluZyBiaW50IGl0c2VsZgoKc2V0bWV0YXRhYmxlKGJpbnQsIHsKCiAgX19jYWxsID0gZnVuY3Rpb24oXywgeCkKCiAgICByZXR1cm4gYmludF9uZXcoeCkKCiAgZW5kCgp9KQoKCgpCSU5UX01BVEhNSU5JTlRFR0VSLCBCSU5UX01BVEhNQVhJTlRFR0VSID0gYmludF9uZXcobWF0aC5taW5pbnRlZ2VyKSwgYmludF9uZXcobWF0aC5tYXhpbnRlZ2VyKQoKQklOVF9NSU5JTlRFR0VSID0gYmludC5taW5pbnRlZ2VyKCkKCm1lbW9bbWVtb2luZGV4XSA9IGJpbnQKCgoKcmV0dXJuIGJpbnQKCgoKZW5kCgoKCnJldHVybiBuZXdtb2R1bGUAQuDWBQvBKi0tLSBUaGUgQm9vdCBtb2R1bGUgcHJvdmlkZXMgZnVuY3Rpb25hbGl0eSBmb3IgYm9vdGluZyB0aGUgcHJvY2Vzcy4gUmV0dXJucyB0aGUgYm9vdCBmdW5jdGlvbi4KCi0tIEBtb2R1bGUgYm9vdAoKCgotLSBUaGlzIGlzIGZvciBhb3A2IEJvb3QgTG9hZGVyCgotLSBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9wZXJtYXdlYi9hb3MvaXNzdWVzLzM0MgoKLS0gRm9yIHRoZSBQcm9jZXNzIGFzIHRoZSBmaXJzdCBNZXNzYWdlLCBpZiBPbi1Cb290CgotLSBoYXMgdGhlIHZhbHVlICdkYXRhJyB0aGVuIGV2YWx1YXRlIHRoZSBkYXRhCgotLSBpZiBpdCBpcyBhIHR4IGlkLCB0aGVuIGRvd25sb2FkIGFuZCBldmFsdWF0ZSB0aGUgdHgKCgoKbG9jYWwgZHJpdmUgPSB7IF92ZXJzaW9uID0gIjAuMC4xIiB9CgoKCmZ1bmN0aW9uIGRyaXZlLmdldERhdGEodHhJZCkKCiAgbG9jYWwgZmlsZSA9IGlvLm9wZW4oJy9kYXRhLycgLi4gdHhJZCkKCiAgaWYgbm90IGZpbGUgdGhlbgoKICAgIHJldHVybiBuaWwsICJGaWxlIG5vdCBmb3VuZCEiCgogIGVuZAoKICBsb2NhbCBjb250ZW50cyA9IGZpbGU6cmVhZCgKCiAgICBmaWxlOnNlZWsoJ2VuZCcpCgogICkKCiAgZmlsZTpjbG9zZSgpCgogIHJldHVybiBjb250ZW50cwoKZW5kCgoKCi0tLSBUaGUgYm9vdCBmdW5jdGlvbi4KCi0tIElmIHRoZSBtZXNzYWdlIGhhcyBubyBPbi1Cb290IHRhZywgZG8gbm90aGluZy4KCi0tIElmIHRoZSBtZXNzYWdlIGhhcyBhbiBPbi1Cb290IHRhZyB3aXRoIHRoZSB2YWx1ZSAnRGF0YScsIHRoZW4gZXZhbHVhdGUgdGhlIG1lc3NhZ2UuCgotLSBJZiB0aGUgbWVzc2FnZSBoYXMgYW4gT24tQm9vdCB0YWcgd2l0aCBhIHR4IGlkLCB0aGVuIGRvd25sb2FkIGFuZCBldmFsdWF0ZSB0aGUgdHggZGF0YS4KCi0tIEBmdW5jdGlvbiBib290CgotLSBAcGFyYW0gYW8gVGhlIGFvIGVudmlyb25tZW50IG9iamVjdAoKLS0gQHNlZSBldmFsCgpyZXR1cm4gZnVuY3Rpb24gKGFvKQoKICBsb2NhbCBldmFsID0gcmVxdWlyZSgiLmV2YWwiKShhbykKCiAgcmV0dXJuIGZ1bmN0aW9uIChtc2cpCgogICAgaWYgI0luYm94ID09IDAgdGhlbgoKICAgICAgdGFibGUuaW5zZXJ0KEluYm94LCBtc2cpCgogICAgZW5kCgogICAgaWYgbXNnLlRhZ3NbJ09uLUJvb3QnXSA9PSBuaWwgdGhlbgoKICAgICAgcmV0dXJuCgogICAgZW5kCgogICAgaWYgbXNnLlRhZ3NbJ09uLUJvb3QnXSA9PSAnRGF0YScgdGhlbgoKICAgICAgZXZhbChtc2cpCgogICAgZWxzZQoKICAgICAgbG9jYWwgbG9hZGVkVmFsID0gZHJpdmUuZ2V0RGF0YShtc2cuVGFnc1snT24tQm9vdCddKQoKICAgICAgZXZhbCh7IERhdGEgPSBsb2FkZWRWYWwgfSkKCiAgICBlbmQKCiAgZW5kCgplbmQAAAAtLS0gVGhlIENoYW5jZSBtb2R1bGUgcHJvdmlkZXMgdXRpbGl0aWVzIGZvciBnZW5lcmF0aW5nIHJhbmRvbSBudW1iZXJzIGFuZCB2YWx1ZXMuIFJldHVybnMgdGhlIGNoYW5jZSB0YWJsZS4KCi0tIEBtb2R1bGUgY2hhbmNlCgoKCmxvY2FsIE4gPSA2MjQKCmxvY2FsIE0gPSAzOTcKCmxvY2FsIE1BVFJJWF9BID0gMHg5OTA4YjBkZgoKbG9jYWwgVVBQRVJfTUFTSyA9IDB4ODAwMDAwMDAKCmxvY2FsIExPV0VSX01BU0sgPSAweDdmZmZmZmZmCgoKCi0tLSBJbml0aWFsaXplcyBtdFtOXSB3aXRoIGEgc2VlZAoKLS0gQGxmdW5jdGlvbiBpbml0X2dlbnJhbmQKCi0tIEB0cGFyYW0ge3RhYmxlfSBvIFRoZSB0YWJsZSB0byBpbml0aWFsaXplCgotLSBAdHBhcmFtIHtudW1iZXJ9IHMgVGhlIHNlZWQKCmxvY2FsIGZ1bmN0aW9uIGluaXRfZ2VucmFuZChvLCBzKQoKICAgIG8ubXRbMF0gPSBzICYgMHhmZmZmZmZmZgoKICAgIGZvciBpID0gMSwgTiAtIDEgZG8KCiAgICAgICAgby5tdFtpXSA9ICgxODEyNDMzMjUzICogKG8ubXRbaSAtIDFdIH4gKG8ubXRbaSAtIDFdID4+IDMwKSkpICsgaQoKICAgICAgICAtLSBTZWUgS251dGggVEFPQ1AgVm9sMi4gM3JkIEVkLiBQLjEwNiBmb3IgbXVsdGlwbGllci4KCiAgICAgICAgLS0gSW4gdGhlIHByZXZpb3VzIHZlcnNpb25zLCBNU0JzIG9mIHRoZSBzZWVkIGFmZmVjdAoKICAgICAgICAtLSBvbmx5IE1TQnMgb2YgdGhlIGFycmF5IG10W10uCgogICAgICAgIC0tIDIwMDIvMDEvMDkgbW9kaWZpZWQgYnkgTWFrb3RvIE1hdHN1bW90bwoKICAgICAgICBvLm10W2ldID0gby5tdFtpXSAmIDB4ZmZmZmZmZmYKCiAgICAgICAgLS0gZm9yID4zMiBiaXQgbWFjaGluZXMKCiAgICBlbmQKCiAgICBvLm10aSA9IE4KCmVuZAoKCgotLS0gR2VuZXJhdGVzIGEgcmFuZG9tIG51bWJlciBvbiBbMCwweGZmZmZmZmZmXS1pbnRlcnZhbAoKLS0gQGxmdW5jdGlvbiBnZW5yYW5kX2ludDMyCgotLSBAdHBhcmFtIHt0YWJsZX0gbyBUaGUgdGFibGUgdG8gZ2VuZXJhdGUgdGhlIHJhbmRvbSBudW1iZXIgZnJvbQoKLS0gQHRyZXR1cm4ge251bWJlcn0gVGhlIHJhbmRvbSBudW1iZXIKCmxvY2FsIGZ1bmN0aW9uIGdlbnJhbmRfaW50MzIobykKCiAgICBsb2NhbCB5CgogICAgbG9jYWwgbWFnMDEgPSB7fSAtLSBtYWcwMVt4XSA9IHggKiBNQVRSSVhfQSAgZm9yIHg9MCwxCgogICAgbWFnMDFbMF0gPSAweDAKCiAgICBtYWcwMVsxXSA9IE1BVFJJWF9BCgogICAgaWYgby5tdGkgPj0gTiB0aGVuICAtLSBnZW5lcmF0ZSBOIHdvcmRzIGF0IG9uZSB0aW1lCgogICAgICAgIGlmIG8ubXRpID09IE4gKyAxIHRoZW4gLS0gaWYgaW5pdF9nZW5yYW5kKCkgaGFzIG5vdCBiZWVuIGNhbGxlZCwKCiAgICAgICAgICAgIGluaXRfZ2VucmFuZChvLCA1NDg5KSAgIC0tIGEgZGVmYXVsdCBpbml0aWFsIHNlZWQgaXMgdXNlZAoKICAgICAgICBlbmQKCiAgICAgICAgZm9yIGtrID0gMCwgTiAtIE0gLSAxIGRvCgogICAgICAgICAgICB5ID0gKG8ubXRba2tdICYgVVBQRVJfTUFTSykgfCAoby5tdFtrayArIDFdICYgTE9XRVJfTUFTSykKCiAgICAgICAgICAgIG8ubXRba2tdID0gby5tdFtrayArIE1dIH4gKHkgPj4gMSkgfiBtYWcwMVt5ICYgMHgxXQoKICAgICAgICBlbmQKCiAgICAgICAgZm9yIGtrID0gTiAtIE0sIE4gLSAyIGRvCgogICAgICAgICAgICB5ID0gKG8ubXRba2tdICYgVVBQRVJfTUFTSykgfCAoby5tdFtrayArIDFdICYgTE9XRVJfTUFTSykKCiAgICAgICAgICAgIG8ubXRba2tdID0gby5tdFtrayArIChNIC0gTildIH4gKHkgPj4gMSkgfiBtYWcwMVt5ICYgMHgxXQoKICAgICAgICBlbmQKCiAgICAgICAgeSA9IChvLm10W04gLSAxXSAmIFVQUEVSX01BU0spIHwgKG8ubXRbMF0gJiBMT1dFUl9NQVNLKQoKICAgICAgICBvLm10W04gLSAxXSA9IG8ubXRbTSAtIDFdIH4gKHkgPj4gMSkgfiBtYWcwMVt5ICYgMHgxXQoKCgogICAgICAgIG8ubXRpID0gMAoKICAgIGVuZAoKCgogICAgeSA9IG8ubXRbby5tdGldCgogICAgby5tdGkgPSBvLm10aSArIDEKCgoKICAgIC0tIFRlbXBlcmluZwoKICAgIHkgPSB5IH4gKHkgPj4gMTEpCgogICAgeSA9IHkgfiAoKHkgPDwgNykgJiAweDlkMmM1NjgwKQoKICAgIHkgPSB5IH4gKCh5IDw8IDE1KSAmIDB4ZWZjNjAwMDApCgogICAgeSA9IHkgfiAoeSA+PiAxOCkKCgoKICAgIHJldHVybiB5CgplbmQKCgoKbG9jYWwgTWVyc2VubmVUd2lzdGVyID0ge30KCk1lcnNlbm5lVHdpc3Rlci5tdCA9IHt9CgpNZXJzZW5uZVR3aXN0ZXIubXRpID0gTiArIDEKCgoKCgotLS0gVGhlIFJhbmRvbSB0YWJsZQoKLS0gQHRhYmxlIFJhbmRvbQoKLS0gQGZpZWxkIHNlZWQgVGhlIHNlZWQgZnVuY3Rpb24KCi0tIEBmaWVsZCByYW5kb20gVGhlIHJhbmRvbSBmdW5jdGlvbgoKLS0gQGZpZWxkIGludGVnZXIgVGhlIGludGVnZXIgZnVuY3Rpb24KCmxvY2FsIFJhbmRvbSA9IHt9CgoKCi0tLSBTZXRzIGEgbmV3IHJhbmRvbSB0YWJsZSBnaXZlbiBhIHNlZWQuCgotLSBAZnVuY3Rpb24gc2VlZAoKLS0gQHRwYXJhbSB7bnVtYmVyfSBzZWVkIFRoZSBzZWVkCgpmdW5jdGlvbiBSYW5kb20uc2VlZChzZWVkKQoKICAgIGluaXRfZ2VucmFuZChNZXJzZW5uZVR3aXN0ZXIsIHNlZWQpCgplbmQKCgoKLS0tIEdlbmVyYXRlcyBhIHJhbmRvbSBudW1iZXIgb24gWzAsMSktcmVhbC1pbnRlcnZhbC4KCi0tIEBmdW5jdGlvbiByYW5kb20KCi0tIEB0cmV0dXJuIHtudW1iZXJ9IFRoZSByYW5kb20gbnVtYmVyCgpmdW5jdGlvbiBSYW5kb20ucmFuZG9tKCkKCiAgICByZXR1cm4gZ2VucmFuZF9pbnQzMihNZXJzZW5uZVR3aXN0ZXIpICogKDEuMCAvIDQyOTQ5NjcyOTYuMCkKCmVuZAoKCgotLS0gUmV0dXJucyBhIHJhbmRvbSBpbnRlZ2VyLiBUaGUgbWluIGFuZCBtYXggYXJlIElOQ0xVREVEIGluIHRoZSByYW5nZS4KCi0tIFRoZSBtYXggaW50ZWdlciBpbiBsdWEgaXMgbWF0aC5tYXhpbnRlZ2VyCgotLSBUaGUgbWluIGlzIG1hdGgubWluaW50ZWdlcgoKLS0gQGZ1bmN0aW9uIFJhbmRvbS5pbnRlZ2VyCgotLSBAdHBhcmFtIHtudW1iZXJ9IG1pbiBUaGUgbWluaW11bSB2YWx1ZQoKLS0gQHRwYXJhbSB7bnVtYmVyfSBtYXggVGhlIG1heGltdW0gdmFsdWUKCi0tIEB0cmV0dXJuIHtudW1iZXJ9IFRoZSByYW5kb20gaW50ZWdlcgoKZnVuY3Rpb24gUmFuZG9tLmludGVnZXIobWluLCBtYXgpCgogICAgYXNzZXJ0KG1heCA+PSBtaW4sICJtYXggbXVzdCBiaWdnZXIgdGhhbiBtaW4iKQoKICAgIHJldHVybiBtYXRoLmZsb29yKFJhbmRvbS5yYW5kb20oKSAqIChtYXggLSBtaW4gKyAxKSArIG1pbikKCmVuZAoKCgpyZXR1cm4gUmFuZG9tAAAAAAAtLSBkZWZhdWx0IGhhbmRsZXIgZm9yIGFvcwoKcmV0dXJuIGZ1bmN0aW9uIChpbnNlcnRJbmJveCkKCiAgcmV0dXJuIGZ1bmN0aW9uIChtc2cpCgogICAgLS0gQWRkIE1lc3NhZ2UgdG8gSW5ib3gKCiAgICBpbnNlcnRJbmJveChtc2cpCgoKCiAgICBsb2NhbCB0eHQgPSBDb2xvcnMuZ3JheSAuLiAiTmV3IE1lc3NhZ2UgRnJvbSAiIC4uIENvbG9ycy5ncmVlbiAuLiAKCiAgICAobXNnLkZyb20gYW5kIChtc2cuRnJvbTpzdWIoMSwzKSAuLiAiLi4uIiAuLiBtc2cuRnJvbTpzdWIoLTMpKSBvciAidW5rbm93biIpIC4uIENvbG9ycy5ncmF5IC4uICI6ICIKCiAgICBpZiBtc2cuQWN0aW9uIHRoZW4KCiAgICAgIHR4dCA9IHR4dCAuLiBDb2xvcnMuZ3JheSAuLiAobXNnLkFjdGlvbiBhbmQgKCJBY3Rpb24gPSAiIC4uIENvbG9ycy5ibHVlIC4uIG1zZy5BY3Rpb246c3ViKDEsMjApKSBvciAiIikgLi4gQ29sb3JzLnJlc2V0CgogICAgZWxzZQoKICAgICAgbG9jYWwgZGF0YSA9IG1zZy5EYXRhCgogICAgICBpZiB0eXBlKGRhdGEpID09ICd0YWJsZScgdGhlbgoKICAgICAgICBkYXRhID0gcmVxdWlyZSgnanNvbicpLmVuY29kZShkYXRhKQoKICAgICAgZW5kCgogICAgICB0eHQgPSB0eHQgLi4gQ29sb3JzLmdyYXkgLi4gIkRhdGEgPSAiIC4uIENvbG9ycy5ibHVlIC4uIChkYXRhIGFuZCBkYXRhOnN1YigxLDIwKSBvciAiIikgLi4gQ29sb3JzLnJlc2V0CgogICAgZW5kCgogICAgLS0gUHJpbnQgdG8gT3V0cHV0CgogICAgcHJpbnQodHh0KQoKICBlbmQKCgoKZW5kAEKwgQYLgUctLQoKLS0gQ29weXJpZ2h0IChDKSAyMDE4IE1hc2F0b3NoaSBUZXJ1eWEKCi0tCgotLSBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5CgotLSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8gZGVhbAoKLS0gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwoKLS0gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbAoKLS0gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCgotLSBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKLS0KCi0tIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCgotLSBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KCi0tCgotLSBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgoKLS0gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCgotLSBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFCgotLSBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCgotLSBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLAoKLS0gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTgoKLS0gVEhFIFNPRlRXQVJFLgoKLS0KCi0tIGR1bXAubHVhCgotLSBsdWEtZHVtcAoKLS0gQ3JlYXRlZCBieSBNYXNhdG9zaGkgVGVydXlhIG9uIDE4LzA0LzIyLgoKLS0KCi0tLSBmaWxlLXNjb3BlIHZhcmlhYmxlcwoKbG9jYWwgdHlwZSA9IHR5cGUKCmxvY2FsIGZsb29yID0gbWF0aC5mbG9vcgoKbG9jYWwgdG9zdHJpbmcgPSB0b3N0cmluZwoKbG9jYWwgdGJsc29ydCA9IHRhYmxlLnNvcnQKCmxvY2FsIHRibGNvbmNhdCA9IHRhYmxlLmNvbmNhdAoKbG9jYWwgc3RybWF0Y2ggPSBzdHJpbmcubWF0Y2gKCmxvY2FsIHN0cmZvcm1hdCA9IHN0cmluZy5mb3JtYXQKCi0tLSBjb25zdGFudHMKCmxvY2FsIElORklOSVRFX1BPUyA9IG1hdGguaHVnZQoKbG9jYWwgTFVBX0ZJRUxETkFNRV9QQVQgPSAnXlthLXpBLVpfXVthLXpBLVowLTlfXSokJwoKbG9jYWwgRk9SX0tFWSA9ICdrZXknCgpsb2NhbCBGT1JfVkFMID0gJ3ZhbCcKCmxvY2FsIEZPUl9DSVJDVUxBUiA9ICdjaXJjdWxhcicKCmxvY2FsIFJFU0VSVkVEX1dPUkQgPSB7CgogICAgLS0gcHJpbWl0aXZlIGRhdGEKCiAgICBbJ25pbCddID0gdHJ1ZSwKCiAgICBbJ3RydWUnXSA9IHRydWUsCgogICAgWydmYWxzZSddID0gdHJ1ZSwKCiAgICAtLSBkZWNsYXJhdG9uCgogICAgWydsb2NhbCddID0gdHJ1ZSwKCiAgICBbJ2Z1bmN0aW9uJ10gPSB0cnVlLAoKICAgIC0tIGJvb2xlYW4gbG9naWMKCiAgICBbJ2FuZCddID0gdHJ1ZSwKCiAgICBbJ29yJ10gPSB0cnVlLAoKICAgIFsnbm90J10gPSB0cnVlLAoKICAgIC0tIGNvbmRpdGlvbmFsIHN0YXRlbWVudAoKICAgIFsnaWYnXSA9IHRydWUsCgogICAgWydlbHNlaWYnXSA9IHRydWUsCgogICAgWydlbHNlJ10gPSB0cnVlLAoKICAgIC0tIGl0ZXJhdGlvbiBzdGF0ZW1lbnQKCiAgICBbJ2ZvciddID0gdHJ1ZSwKCiAgICBbJ2luJ10gPSB0cnVlLAoKICAgIFsnd2hpbGUnXSA9IHRydWUsCgogICAgWyd1bnRpbCddID0gdHJ1ZSwKCiAgICBbJ3JlcGVhdCddID0gdHJ1ZSwKCiAgICAtLSBqdW1wIHN0YXRlbWVudAoKICAgIFsnYnJlYWsnXSA9IHRydWUsCgogICAgWydnb3RvJ10gPSB0cnVlLAoKICAgIFsncmV0dXJuJ10gPSB0cnVlLAoKICAgIC0tIGJsb2NrIHNjb3BlIHN0YXRlbWVudAoKICAgIFsndGhlbiddID0gdHJ1ZSwKCiAgICBbJ2RvJ10gPSB0cnVlLAoKICAgIFsnZW5kJ10gPSB0cnVlLAoKfQoKbG9jYWwgREVGQVVMVF9JTkRFTlQgPSA0CgoKCi0tLSBmaWx0ZXIgZnVuY3Rpb24gZm9yIGR1bXAKCi0tLSBAcGFyYW0gdmFsIGFueQoKLS0tIEBwYXJhbSBkZXB0aCBpbnRlZ2VyCgotLS0gQHBhcmFtIHZ0eXBlIHN0cmluZwoKLS0tIEBwYXJhbSB1c2Ugc3RyaW5nCgotLS0gQHBhcmFtIGtleSBhbnkKCi0tLSBAcGFyYW0gdWRhdGEgYW55CgotLS0gQHJldHVybiBhbnkgdmFsCgotLS0gQHJldHVybiBib29sZWFuIG5vZHVtcAoKbG9jYWwgZnVuY3Rpb24gREVGQVVMVF9GSUxURVIodmFsKQoKICAgIHJldHVybiB2YWwKCmVuZAoKCgotLS0gc29ydF9pbmRleAoKLS0tIEBwYXJhbSBhIHRhYmxlCgotLS0gQHBhcmFtIGIgdGFibGUKCmxvY2FsIGZ1bmN0aW9uIHNvcnRfaW5kZXgoYSwgYikKCiAgICBpZiBhLnR5cCA9PSBiLnR5cCB0aGVuCgogICAgICAgIGlmIGEudHlwID09ICdib29sZWFuJyB0aGVuCgogICAgICAgICAgICByZXR1cm4gYi5rZXkKCiAgICAgICAgZW5kCgoKCiAgICAgICAgcmV0dXJuIGEua2V5IDwgYi5rZXkKCiAgICBlbmQKCgoKICAgIHJldHVybiBhLnR5cCA9PSAnbnVtYmVyJwoKZW5kCgoKCi0tLSBkdW1wdGJsCgotLS0gQHBhcmFtIHRibCB0YWJsZQoKLS0tIEBwYXJhbSBkZXB0aCBpbnRlZ2VyCgotLS0gQHBhcmFtIGluZGVudCBzdHJpbmcKCi0tLSBAcGFyYW0gbmVzdEluZGVudCBzdHJpbmcKCi0tLSBAcGFyYW0gY3R4IHRhYmxlCgotLS0gQHJldHVybiBzdHJpbmcKCmxvY2FsIGZ1bmN0aW9uIGR1bXB0YmwodGJsLCBkZXB0aCwgaW5kZW50LCBuZXN0SW5kZW50LCBjdHgpCgogICAgbG9jYWwgcmVmID0gdG9zdHJpbmcodGJsKQoKCgogICAgLS0gY2lyY3VsYXIgcmVmZXJlbmNlCgogICAgaWYgY3R4LmNpcmN1bGFyW3JlZl0gdGhlbgoKICAgICAgICBsb2NhbCB2YWwsIG5vZHVtcCA9IGN0eC5maWx0ZXIodGJsLCBkZXB0aCwgdHlwZSh0YmwpLCBGT1JfQ0lSQ1VMQVIsIHRibCwKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN0eC51ZGF0YSkKCgoKICAgICAgICBpZiB2YWwgfj0gbmlsIGFuZCB2YWwgfj0gdGJsIHRoZW4KCiAgICAgICAgICAgIGxvY2FsIHQgPSB0eXBlKHZhbCkKCgoKICAgICAgICAgICAgaWYgdCA9PSAndGFibGUnIHRoZW4KCiAgICAgICAgICAgICAgICAtLSBkdW1wIHRhYmxlIHZhbHVlCgogICAgICAgICAgICAgICAgaWYgbm90IG5vZHVtcCB0aGVuCgogICAgICAgICAgICAgICAgICAgIHJldHVybiBkdW1wdGJsKHZhbCwgZGVwdGggKyAxLCBpbmRlbnQsIG5lc3RJbmRlbnQsIGN0eCkKCiAgICAgICAgICAgICAgICBlbmQKCiAgICAgICAgICAgICAgICByZXR1cm4gdG9zdHJpbmcodmFsKQoKICAgICAgICAgICAgZWxzZWlmIHQgPT0gJ3N0cmluZycgdGhlbgoKICAgICAgICAgICAgICAgIHJldHVybiBzdHJmb3JtYXQoJyVxJywgdmFsKQoKICAgICAgICAgICAgZWxzZWlmIHQgPT0gJ251bWJlcicgb3IgdCA9PSAnYm9vbGVhbicgdGhlbgoKICAgICAgICAgICAgICAgIHJldHVybiB0b3N0cmluZyh2YWwpCgogICAgICAgICAgICBlbmQKCgoKICAgICAgICAgICAgcmV0dXJuIHN0cmZvcm1hdCgnJXEnLCB0b3N0cmluZyh2YWwpKQoKICAgICAgICBlbmQKCgoKICAgICAgICByZXR1cm4gJyI8Q2lyY3VsYXIgJyAuLiByZWYgLi4gJz4iJwoKICAgIGVuZAoKCgogICAgbG9jYWwgcmVzID0ge30KCiAgICBsb2NhbCBhcnIgPSB7fQoKICAgIGxvY2FsIG5hcnIgPSAwCgogICAgbG9jYWwgZmllbGRJbmRlbnQgPSBpbmRlbnQgLi4gbmVzdEluZGVudAoKCgogICAgLS0gc2F2ZSByZWZlcmVuY2UKCiAgICBjdHguY2lyY3VsYXJbcmVmXSA9IHRydWUKCgoKICAgIGZvciBrLCB2IGluIHBhaXJzKHRibCkgZG8KCiAgICAgICAgLS0gY2hlY2sga2V5CgogICAgICAgIGxvY2FsIGtleSwgbm9rZHVtcCA9IGN0eC5maWx0ZXIoaywgZGVwdGgsIHR5cGUoayksIEZPUl9LRVksIG5pbCwKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdHgudWRhdGEpCgoKCiAgICAgICAgaWYga2V5IH49IG5pbCB0aGVuCgogICAgICAgICAgICAtLSBjaGVjayB2YWwKCiAgICAgICAgICAgIGxvY2FsIHZhbCwgbm92ZHVtcCA9IGN0eC5maWx0ZXIodiwgZGVwdGgsIHR5cGUodiksIEZPUl9WQUwsIGtleSwKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3R4LnVkYXRhKQoKICAgICAgICAgICAgbG9jYWwga3YKCgoKICAgICAgICAgICAgaWYgdmFsIH49IG5pbCB0aGVuCgogICAgICAgICAgICAgICAgbG9jYWwga3QgPSB0eXBlKGtleSkKCiAgICAgICAgICAgICAgICBsb2NhbCB2dCA9IHR5cGUodmFsKQoKCgogICAgICAgICAgICAgICAgLS0gY29udmVydCBrZXkgdG8gc3VpdGFibGUgdG8gYmUgc2FmZWx5IHJlYWQgYmFjawoKICAgICAgICAgICAgICAgIC0tIGJ5IHRoZSBMdWEgaW50ZXJwcmV0ZXIKCiAgICAgICAgICAgICAgICBpZiBrdCA9PSAnbnVtYmVyJyBvciBrdCA9PSAnYm9vbGVhbicgdGhlbgoKICAgICAgICAgICAgICAgICAgICBrID0ga2V5CgogICAgICAgICAgICAgICAgICAgIGtleSA9ICdbJyAuLiB0b3N0cmluZyhrZXkpIC4uICddJwoKICAgICAgICAgICAgICAgICAgICAtLSBkdW1wIHRhYmxlIHZhbHVlCgogICAgICAgICAgICAgICAgZWxzZWlmIGt0ID09ICd0YWJsZScgYW5kIG5vdCBub2tkdW1wIHRoZW4KCiAgICAgICAgICAgICAgICAgICAga2V5ID0gJ1snIC4uCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkdW1wdGJsKGtleSwgZGVwdGggKyAxLCBmaWVsZEluZGVudCwgbmVzdEluZGVudCwKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3R4KSAuLiAnXScKCiAgICAgICAgICAgICAgICAgICAgayA9IGtleQoKICAgICAgICAgICAgICAgICAgICBrdCA9ICdzdHJpbmcnCgogICAgICAgICAgICAgICAgZWxzZWlmIGt0IH49ICdzdHJpbmcnIG9yIFJFU0VSVkVEX1dPUkRba2V5XSBvcgoKICAgICAgICAgICAgICAgICAgICBub3Qgc3RybWF0Y2goa2V5LCBMVUFfRklFTEROQU1FX1BBVCkgdGhlbgoKICAgICAgICAgICAgICAgICAgICBrZXkgPSBzdHJmb3JtYXQoIlslcV0iLCB0b3N0cmluZyhrZXkpLCB2KQoKICAgICAgICAgICAgICAgICAgICBrID0ga2V5CgogICAgICAgICAgICAgICAgICAgIGt0ID0gJ3N0cmluZycKCiAgICAgICAgICAgICAgICBlbmQKCgoKICAgICAgICAgICAgICAgIC0tIGNvbnZlcnQga2V5LXZhbCBwYWlyIHRvIHN1aXRhYmxlIHRvIGJlIHNhZmVseSByZWFkIGJhY2sKCiAgICAgICAgICAgICAgICAtLSBieSB0aGUgTHVhIGludGVycHJldGVyCgogICAgICAgICAgICAgICAgaWYgdnQgPT0gJ251bWJlcicgb3IgdnQgPT0gJ2Jvb2xlYW4nIHRoZW4KCiAgICAgICAgICAgICAgICAgICAga3YgPSBzdHJmb3JtYXQoJyVzJXMgPSAlcycsIGZpZWxkSW5kZW50LCBrZXksIHRvc3RyaW5nKHZhbCkpCgogICAgICAgICAgICAgICAgZWxzZWlmIHZ0ID09ICdzdHJpbmcnIHRoZW4KCiAgICAgICAgICAgICAgICAgICAgLS0gZHVtcCBhIHN0cmluZy12YWx1ZQoKICAgICAgICAgICAgICAgICAgICBpZiBub3Qgbm92ZHVtcCB0aGVuCgogICAgICAgICAgICAgICAgICAgICAgICBrdiA9IHN0cmZvcm1hdCgnJXMlcyA9ICVxJywgZmllbGRJbmRlbnQsIGtleSwgdmFsKQoKICAgICAgICAgICAgICAgICAgICBlbHNlCgogICAgICAgICAgICAgICAgICAgICAgICBrdiA9IHN0cmZvcm1hdCgnJXMlcyA9ICVzJywgZmllbGRJbmRlbnQsIGtleSwgdmFsKQoKICAgICAgICAgICAgICAgICAgICBlbmQKCiAgICAgICAgICAgICAgICBlbHNlaWYgdnQgPT0gJ3RhYmxlJyBhbmQgbm90IG5vdmR1bXAgdGhlbgoKICAgICAgICAgICAgICAgICAgICBrdiA9IHN0cmZvcm1hdCgnJXMlcyA9ICVzJywgZmllbGRJbmRlbnQsIGtleSwgZHVtcHRibCh2YWwsCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlcHRoICsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEsCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkSW5kZW50LAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXN0SW5kZW50LAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdHgpKQoKICAgICAgICAgICAgICAgIGVsc2UKCiAgICAgICAgICAgICAgICAgICAga3YgPSBzdHJmb3JtYXQoJyVzJXMgPSAlcScsIGZpZWxkSW5kZW50LCBrZXksIHRvc3RyaW5nKHZhbCkpCgogICAgICAgICAgICAgICAgZW5kCgoKCiAgICAgICAgICAgICAgICAtLSBhZGQgdG8gYXJyYXkKCiAgICAgICAgICAgICAgICBuYXJyID0gbmFyciArIDEKCiAgICAgICAgICAgICAgICBhcnJbbmFycl0gPSB7CgogICAgICAgICAgICAgICAgICAgIHR5cCA9IGt0LAoKICAgICAgICAgICAgICAgICAgICBrZXkgPSBrLAoKICAgICAgICAgICAgICAgICAgICB2YWwgPSBrdiwKCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICBlbmQKCiAgICAgICAgZW5kCgogICAgZW5kCgoKCiAgICAtLSByZW1vdmUgcmVmZXJlbmNlCgogICAgY3R4LmNpcmN1bGFyW3JlZl0gPSBuaWwKCiAgICAtLSBjb25jYXQgcmVzdWx0CgogICAgaWYgbmFyciA+IDAgdGhlbgoKICAgICAgICB0Ymxzb3J0KGFyciwgc29ydF9pbmRleCkKCgoKICAgICAgICBmb3IgaSA9IDEsIG5hcnIgZG8KCiAgICAgICAgICAgIHJlc1tpXSA9IGFycltpXS52YWwKCiAgICAgICAgZW5kCgogICAgICAgIHJlc1sxXSA9ICd7JyAuLiBjdHguTEYgLi4gcmVzWzFdCgogICAgICAgIHJlcyA9IHRibGNvbmNhdChyZXMsICcsJyAuLiBjdHguTEYpIC4uIGN0eC5MRiAuLiBpbmRlbnQgLi4gJ30nCgogICAgZWxzZQoKICAgICAgICByZXMgPSAne30nCgogICAgZW5kCgoKCiAgICByZXR1cm4gcmVzCgplbmQKCgoKLS0tIGlzX3VpbnQKCi0tLSBAcGFyYW0gdiBhbnkKCi0tLSBAcmV0dXJuIGJvb2xlYW4gb2sKCmxvY2FsIGZ1bmN0aW9uIGlzX3VpbnQodikKCiAgICByZXR1cm4gdHlwZSh2KSA9PSAnbnVtYmVyJyBhbmQgdiA8IElORklOSVRFX1BPUyBhbmQgdiA+PSAwIGFuZCBmbG9vcih2KSA9PSB2CgplbmQKCgoKLS0tIGR1bXAKCi0tLSBAcGFyYW0gdmFsIGFueQoKLS0tIEBwYXJhbSBpbmRlbnQgaW50ZWdlcgoKLS0tIEBwYXJhbSBwYWRkaW5nIGludGVnZXIKCi0tLSBAcGFyYW0gZmlsdGVyIGZ1bmN0aW9uCgotLS0gQHBhcmFtIHVkYXRhCgotLS0gQHJldHVybiBzdHJpbmcKCmxvY2FsIGZ1bmN0aW9uIGR1bXAodmFsLCBpbmRlbnQsIHBhZGRpbmcsIGZpbHRlciwgdWRhdGEpCgogICAgbG9jYWwgdCA9IHR5cGUodmFsKQoKCgogICAgLS0gY2hlY2sgaW5kZW50CgogICAgaWYgaW5kZW50ID09IG5pbCB0aGVuCgogICAgICAgIGluZGVudCA9IERFRkFVTFRfSU5ERU5UCgogICAgZWxzZWlmIG5vdCBpc191aW50KGluZGVudCkgdGhlbgoKICAgICAgICBlcnJvcignaW5kZW50IG11c3QgYmUgdW5zaWduZWQgaW50ZWdlcicsIDIpCgogICAgZW5kCgoKCiAgICAtLSBjaGVjayBwYWRkaW5nCgogICAgaWYgcGFkZGluZyA9PSBuaWwgdGhlbgoKICAgICAgICBwYWRkaW5nID0gMAoKICAgIGVsc2VpZiBub3QgaXNfdWludChwYWRkaW5nKSB0aGVuCgogICAgICAgIGVycm9yKCdwYWRkaW5nIG11c3QgYmUgdW5zaWduZWQgaW50ZWdlcicsIDIpCgogICAgZW5kCgoKCiAgICAtLSBjaGVjayBmaWx0ZXIKCiAgICBpZiBmaWx0ZXIgPT0gbmlsIHRoZW4KCiAgICAgICAgZmlsdGVyID0gREVGQVVMVF9GSUxURVIKCiAgICBlbHNlaWYgdHlwZShmaWx0ZXIpIH49ICdmdW5jdGlvbicgdGhlbgoKICAgICAgICBlcnJvcignZmlsdGVyIG11c3QgYmUgZnVuY3Rpb24nLCAyKQoKICAgIGVuZAoKCgogICAgLS0gZHVtcCB0YWJsZQoKICAgIGlmIHQgPT0gJ3RhYmxlJyB0aGVuCgogICAgICAgIGxvY2FsIGlzcGFjZSA9ICcnCgogICAgICAgIGxvY2FsIHBzcGFjZSA9ICcnCgoKCiAgICAgICAgaWYgaW5kZW50ID4gMCB0aGVuCgogICAgICAgICAgICBpc3BhY2UgPSBzdHJmb3JtYXQoJyUnIC4uIHRvc3RyaW5nKGluZGVudCkgLi4gJ3MnLCAnJykKCiAgICAgICAgZW5kCgoKCiAgICAgICAgaWYgcGFkZGluZyA+IDAgdGhlbgoKICAgICAgICAgICAgcHNwYWNlID0gc3RyZm9ybWF0KCclJyAuLiB0b3N0cmluZyhwYWRkaW5nKSAuLiAncycsICcnKQoKICAgICAgICBlbmQKCgoKICAgICAgICByZXR1cm4gZHVtcHRibCh2YWwsIDEsIHBzcGFjZSwgaXNwYWNlLCB7CgogICAgICAgICAgICBMRiA9IGlzcGFjZSA9PSAnJyBhbmQgJyAnIG9yICdcbicsCgogICAgICAgICAgICBjaXJjdWxhciA9IHt9LAoKICAgICAgICAgICAgZmlsdGVyID0gZmlsdGVyLAoKICAgICAgICAgICAgdWRhdGEgPSB1ZGF0YSwKCiAgICAgICAgfSkKCiAgICBlbmQKCgoKICAgIC0tIGR1bXAgdmFsdWUKCiAgICBsb2NhbCB2LCBub2R1bXAgPSBmaWx0ZXIodmFsLCAwLCB0LCBGT1JfVkFMLCBuaWwsIHVkYXRhKQoKICAgIGlmIG5vZHVtcCA9PSB0cnVlIHRoZW4KCiAgICAgICAgcmV0dXJuIHRvc3RyaW5nKHYpCgogICAgZW5kCgogICAgcmV0dXJuIHN0cmZvcm1hdCgnJXEnLCB0b3N0cmluZyh2KSkKCmVuZAoKCgpyZXR1cm4gZHVtcABCwMgGC9GiAS0tLSBUaGUgRXZhbCBtb2R1bGUgcHJvdmlkZXMgYSBoYW5kbGVyIGZvciBldmFsdWF0aW5nIEx1YSBleHByZXNzaW9ucy4gUmV0dXJucyB0aGUgZXZhbCBmdW5jdGlvbi4KCi0tIEBtb2R1bGUgZXZhbAoKCgpsb2NhbCBzdHJpbmdpZnkgPSByZXF1aXJlKCIuc3RyaW5naWZ5IikKCgoKLS0tIFRoZSBldmFsIGZ1bmN0aW9uLgoKLS0gSGFuZGxlciBmb3IgZXhlY3V0aW5nIGFuZCBldmFsdWF0aW5nIEx1YSBleHByZXNzaW9ucy4KCi0tIEFmdGVyIGV4ZWN1dGlvbiwgdGhlIHJlc3VsdCBpcyBzdHJpbmdpZmllZCBhbmQgcGxhY2VkIGluIGFvLm91dGJveC5PdXRwdXQuCgotLSBAZnVuY3Rpb24gZXZhbAoKLS0gQHRwYXJhbSB7dGFibGV9IGFvIFRoZSBhbyBlbnZpcm9ubWVudCBvYmplY3QKCi0tIEB0cmV0dXJuIHtmdW5jdGlvbn0gVGhlIGhhbmRsZXIgZnVuY3Rpb24sIHdoaWNoIHRha2VzIGEgbWVzc2FnZSBhcyBhbiBhcmd1bWVudC4KCi0tIEBzZWUgc3RyaW5naWZ5CgpyZXR1cm4gZnVuY3Rpb24gKGFvKQoKICByZXR1cm4gZnVuY3Rpb24gKG1zZykKCiAgICAtLSBleGVjIGV4cHJlc3Npb24KCiAgICBsb2NhbCBleHByID0gbXNnLkRhdGEKCiAgICBsb2NhbCBmdW5jLCBlcnIgPSBsb2FkKCJyZXR1cm4gIiAuLiBleHByLCAnYW9zJywgJ3QnLCBfRykKCiAgICBsb2NhbCBvdXRwdXQgPSAiIgoKICAgIGxvY2FsIGUgPSBuaWwKCiAgICBpZiBlcnIgdGhlbgoKICAgICAgZnVuYywgZXJyID0gbG9hZChleHByLCAnYW9zJywgJ3QnLCBfRykKCiAgICBlbmQKCiAgICBpZiBmdW5jIHRoZW4KCiAgICAgIG91dHB1dCwgZSA9IGZ1bmMoKQoKICAgIGVsc2UKCiAgICAgIGFvLm91dGJveC5FcnJvciA9IGVycgoKICAgICAgcmV0dXJuCgogICAgZW5kCgogICAgaWYgZSB0aGVuIAoKICAgICAgYW8ub3V0Ym94LkVycm9yID0gZQoKICAgICAgcmV0dXJuIAoKICAgIGVuZAoKICAgIGlmIEhBTkRMRVJfUFJJTlRfTE9HUyBhbmQgb3V0cHV0IHRoZW4KCiAgICAgIHRhYmxlLmluc2VydChIQU5ETEVSX1BSSU5UX0xPR1MsIHR5cGUob3V0cHV0KSA9PSAidGFibGUiIGFuZCBzdHJpbmdpZnkuZm9ybWF0KG91dHB1dCkgb3IgdG9zdHJpbmcob3V0cHV0KSkKCiAgICBlbHNlCgogICAgICAtLSBzZXQgcmVzdWx0IGluIG91dGJveC5PdXRwdXQgKExlZnQgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5KQoKICAgICAgYW8ub3V0Ym94Lk91dHB1dCA9IHsgIAoKICAgICAgICBqc29uID0gdHlwZShvdXRwdXQpID09ICJ0YWJsZSIgYW5kIHBjYWxsKGZ1bmN0aW9uICgpIHJldHVybiBqc29uLmVuY29kZShvdXRwdXQpIGVuZCkgYW5kIG91dHB1dCBvciAidW5kZWZpbmVkIiwKCiAgICAgICAgZGF0YSA9IHsKCiAgICAgICAgICBvdXRwdXQgPSB0eXBlKG91dHB1dCkgPT0gInRhYmxlIiBhbmQgc3RyaW5naWZ5LmZvcm1hdChvdXRwdXQpIG9yIG91dHB1dCwKCiAgICAgICAgICBwcm9tcHQgPSBQcm9tcHQoKQoKICAgICAgICB9LCAKCiAgICAgICAgcHJvbXB0ID0gUHJvbXB0KCkKCiAgICAgIH0KCgoKICAgIGVuZAoKICBlbmQKCmVuZAoAAC0tLSBUaGUgSGFuZGxlciBVdGlscyBtb2R1bGUgaXMgYSBsaWdodHdlaWdodCBMdWEgdXRpbGl0eSBsaWJyYXJ5IGRlc2lnbmVkIHRvIHByb3ZpZGUgY29tbW9uIGZ1bmN0aW9uYWxpdGllcyBmb3IgaGFuZGxpbmcgYW5kIHByb2Nlc3NpbmcgbWVzc2FnZXMgd2l0aGluIHRoZSBBT1MgY29tcHV0ZXIgc3lzdGVtLiBJdCBvZmZlcnMgYSBzZXQgb2YgZnVuY3Rpb25zIHRvIGNoZWNrIG1lc3NhZ2UgYXR0cmlidXRlcyBhbmQgc2VuZCByZXBsaWVzLCBzaW1wbGlmeWluZyB0aGUgZGV2ZWxvcG1lbnQgb2YgbW9yZSBjb21wbGV4IHNjcmlwdHMgYW5kIG1vZHVsZXMuIFRoaXMgZG9jdW1lbnQgd2lsbCBndWlkZSB5b3UgdGhyb3VnaCB0aGUgbW9kdWxlJ3MgZnVuY3Rpb25hbGl0aWVzLCBpbnN0YWxsYXRpb24sIGFuZCB1c2FnZS4gUmV0dXJucyB0aGUgX3V0aWxzIHRhYmxlLgoKLS0gQG1vZHVsZSBoYW5kbGVycy11dGlscwoKCgotLS0gVGhlIF91dGlscyB0YWJsZQoKLS0gQHRhYmxlIF91dGlscwoKLS0gQGZpZWxkIF92ZXJzaW9uIFRoZSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgX3V0aWxzIG1vZHVsZQoKLS0gQGZpZWxkIGhhc01hdGNoaW5nVGFnIFRoZSBoYXNNYXRjaGluZ1RhZyBmdW5jdGlvbgoKLS0gQGZpZWxkIGhhc01hdGNoaW5nVGFnT2YgVGhlIGhhc01hdGNoaW5nVGFnT2YgZnVuY3Rpb24KCi0tIEBmaWVsZCBoYXNNYXRjaGluZ0RhdGEgVGhlIGhhc01hdGNoaW5nRGF0YSBmdW5jdGlvbgoKLS0gQGZpZWxkIHJlcGx5IFRoZSByZXBseSBmdW5jdGlvbgoKLS0gQGZpZWxkIGNvbnRpbnVlIFRoZSBjb250aW51ZSBmdW5jdGlvbgoKbG9jYWwgX3V0aWxzID0geyBfdmVyc2lvbiA9ICIwLjAuMiIgfQoKCgpsb2NhbCBfID0gcmVxdWlyZSgnLnV0aWxzJykKCmxvY2FsIGFvID0gcmVxdWlyZSgiLmFvIikKCgoKLS0tIENoZWNrcyBpZiBhIGdpdmVuIG1lc3NhZ2UgaGFzIGEgdGFnIHRoYXQgbWF0Y2hlcyB0aGUgc3BlY2lmaWVkIG5hbWUgYW5kIHZhbHVlLgoKLS0gQGZ1bmN0aW9uIGhhc01hdGNoaW5nVGFnCgotLSBAdHBhcmFtIHtzdHJpbmd9IG5hbWUgVGhlIHRhZyBuYW1lIHRvIGNoZWNrCgotLSBAdHBhcmFtIHtzdHJpbmd9IHZhbHVlIFRoZSB2YWx1ZSB0byBtYXRjaCBmb3IgaW4gdGhlIHRhZwoKLS0gQHRyZXR1cm4ge2Z1bmN0aW9ufSBBIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYSBtZXNzYWdlIGFuZCByZXR1cm5zIHdoZXRoZXIgdGhlcmUgaXMgYSB0YWcgbWF0Y2ggKC0xIGlmIG1hdGNoZXMsIDAgb3RoZXJ3aXNlKQoKZnVuY3Rpb24gX3V0aWxzLmhhc01hdGNoaW5nVGFnKG5hbWUsIHZhbHVlKQoKICBhc3NlcnQodHlwZShuYW1lKSA9PSAnc3RyaW5nJyBhbmQgdHlwZSh2YWx1ZSkgPT0gJ3N0cmluZycsICdpbnZhbGlkIGFyZ3VtZW50czogKG5hbWUgOiBzdHJpbmcsIHZhbHVlIDogc3RyaW5nKScpCgoKCiAgcmV0dXJuIGZ1bmN0aW9uIChtc2cpCgogICAgcmV0dXJuIG1zZy5UYWdzW25hbWVdID09IHZhbHVlCgogIGVuZAoKZW5kCgoKCi0tLSBDaGVja3MgaWYgYSBnaXZlbiBtZXNzYWdlIGhhcyBhIHRhZyB0aGF0IG1hdGNoZXMgdGhlIHNwZWNpZmllZCBuYW1lIGFuZCBvbmUgb2YgdGhlIHNwZWNpZmllZCB2YWx1ZXMuCgotLSBAZnVuY3Rpb24gaGFzTWF0Y2hpbmdUYWdPZgoKLS0gQHRwYXJhbSB7c3RyaW5nfSBuYW1lIFRoZSB0YWcgbmFtZSB0byBjaGVjawoKLS0gQHRwYXJhbSB7c3RyaW5nW119IHZhbHVlcyBUaGUgbGlzdCBvZiB2YWx1ZXMgb2Ygd2hpY2ggb25lIHNob3VsZCBtYXRjaAoKLS0gQHRyZXR1cm4ge2Z1bmN0aW9ufSBBIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYSBtZXNzYWdlIGFuZCByZXR1cm5zIHdoZXRoZXIgdGhlcmUgaXMgYSB0YWcgbWF0Y2ggKC0xIGlmIG1hdGNoZXMsIDAgb3RoZXJ3aXNlKQoKZnVuY3Rpb24gX3V0aWxzLmhhc01hdGNoaW5nVGFnT2YobmFtZSwgdmFsdWVzKQoKICBhc3NlcnQodHlwZShuYW1lKSA9PSAnc3RyaW5nJyBhbmQgdHlwZSh2YWx1ZXMpID09ICd0YWJsZScsICdpbnZhbGlkIGFyZ3VtZW50czogKG5hbWUgOiBzdHJpbmcsIHZhbHVlcyA6IHN0cmluZ1tdKScpCgogIHJldHVybiBmdW5jdGlvbiAobXNnKQoKICAgIGZvciBfLCB2YWx1ZSBpbiBpcGFpcnModmFsdWVzKSBkbwoKICAgICAgbG9jYWwgcGF0dGVyblJlc3VsdCA9IEhhbmRsZXJzLnV0aWxzLmhhc01hdGNoaW5nVGFnKG5hbWUsIHZhbHVlKShtc2cpCgoKCiAgICAgIGlmIHBhdHRlcm5SZXN1bHQgfj0gMCBhbmQgcGF0dGVyblJlc3VsdCB+PSBmYWxzZSBhbmQgcGF0dGVyblJlc3VsdCB+PSAic2tpcCIgdGhlbgoKICAgICAgICByZXR1cm4gcGF0dGVyblJlc3VsdAoKICAgICAgZW5kCgogICAgZW5kCgoKCiAgICByZXR1cm4gMAoKICBlbmQKCmVuZAoKCgotLS0gQ2hlY2tzIGlmIGEgZ2l2ZW4gbWVzc2FnZSBoYXMgZGF0YSB0aGF0IG1hdGNoZXMgdGhlIHNwZWNpZmllZCB2YWx1ZS4KCi0tIEBmdW5jdGlvbiBoYXNNYXRjaGluZ0RhdGEKCi0tIEB0cGFyYW0ge3N0cmluZ30gdmFsdWUgVGhlIHZhbHVlIHRvIG1hdGNoIGFnYWluc3QgdGhlIG1lc3NhZ2UgZGF0YQoKLS0gQHRyZXR1cm4ge2Z1bmN0aW9ufSBBIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYSBtZXNzYWdlIGFuZCByZXR1cm5zIHdoZXRoZXIgdGhlIGRhdGEgbWF0Y2hlcyB0aGUgdmFsdWUgKC0xIGlmIG1hdGNoZXMsIDAgb3RoZXJ3aXNlKQoKZnVuY3Rpb24gX3V0aWxzLmhhc01hdGNoaW5nRGF0YSh2YWx1ZSkKCiAgYXNzZXJ0KHR5cGUodmFsdWUpID09ICdzdHJpbmcnLCAnaW52YWxpZCBhcmd1bWVudHM6ICh2YWx1ZSA6IHN0cmluZyknKQoKICByZXR1cm4gZnVuY3Rpb24gKG1zZykKCiAgICByZXR1cm4gbXNnLkRhdGEgPT0gdmFsdWUKCiAgZW5kCgplbmQKCgoKLS0tIEdpdmVuIGFuIGlucHV0LCByZXR1cm5zIGEgZnVuY3Rpb24gdGhhdCB0YWtlcyBhIG1lc3NhZ2UgYW5kIHJlcGxpZXMgdG8gaXQuCgotLSBAZnVuY3Rpb24gcmVwbHkKCi0tIEB0cGFyYW0ge3RhYmxlIHwgc3RyaW5nfSBpbnB1dCBUaGUgY29udGVudCB0byBzZW5kIGJhY2suIElmIGEgc3RyaW5nLCBpdCBzZW5kcyBpdCBhcyBkYXRhLiBJZiBhIHRhYmxlLCBpdCBhc3N1bWVzIGEgc3RydWN0dXJlIHdpdGggYFRhZ3NgLgoKLS0gQHRyZXR1cm4ge2Z1bmN0aW9ufSBBIGZ1bmN0aW9uIHRoYXQgdGFrZXMgYSBtZXNzYWdlIGFuZCByZXBsaWVzIHRvIGl0CgpmdW5jdGlvbiBfdXRpbHMucmVwbHkoaW5wdXQpIAoKICBhc3NlcnQodHlwZShpbnB1dCkgPT0gJ3RhYmxlJyBvciB0eXBlKGlucHV0KSA9PSAnc3RyaW5nJywgJ2ludmFsaWQgYXJndW1lbnRzOiAoaW5wdXQgOiB0YWJsZSBvciBzdHJpbmcpJykKCiAgcmV0dXJuIGZ1bmN0aW9uIChtc2cpCgogICAgaWYgdHlwZShpbnB1dCkgPT0gJ3N0cmluZycgdGhlbgoKICAgICAgbXNnLnJlcGx5KHsgRGF0YSA9IGlucHV0IH0pCgogICAgICByZXR1cm4KCiAgICBlbmQKCiAgICBtc2cucmVwbHkoaW5wdXQpCgogIGVuZAoKZW5kCgoKCi0tLSBJbnZlcnRzIHRoZSBwcm92aWRlZCBwYXR0ZXJuJ3MgcmVzdWx0IGlmIGl0IG1hdGNoZXMsIHNvIHRoYXQgaXQgY29udGludWVzIGV4ZWN1dGlvbiB3aXRoIHRoZSBuZXh0IG1hdGNoaW5nIGhhbmRsZXIuCgotLSBAZnVuY3Rpb24gY29udGludWUKCi0tIEB0cGFyYW0ge3RhYmxlIHwgZnVuY3Rpb259IHBhdHRlcm4gVGhlIHBhdHRlcm4gdG8gY2hlY2sgZm9yIGluIHRoZSBtZXNzYWdlCgotLSBAdHJldHVybiB7ZnVuY3Rpb259IEZ1bmN0aW9uIHRoYXQgZXhlY3V0ZXMgdGhlIHBhdHRlcm4gbWF0Y2hpbmcgZnVuY3Rpb24gYW5kIHJldHVybnMgYDFgIChjb250aW51ZSksIHNvIHRoYXQgdGhlIGV4ZWN1dGlvbiBvZiBoYW5kbGVycyBjb250aW51ZXMuCgpmdW5jdGlvbiBfdXRpbHMuY29udGludWUocGF0dGVybikKCiAgcmV0dXJuIGZ1bmN0aW9uIChtc2cpCgogICAgbG9jYWwgbWF0Y2ggPSBfLm1hdGNoZXNTcGVjKG1zZywgcGF0dGVybikKCgoKICAgIGlmIG5vdCBtYXRjaCBvciBtYXRjaCA9PSAwIG9yIG1hdGNoID09ICJza2lwIiB0aGVuCgogICAgICByZXR1cm4gbWF0Y2gKCiAgICBlbmQKCiAgICByZXR1cm4gMQoKICBlbmQKCmVuZAoKCgpyZXR1cm4gX3V0aWxzAAAAAAAAAC0tLSBUaGUgSGFuZGxlcnMgbGlicmFyeSBwcm92aWRlcyBhIGZsZXhpYmxlIHdheSB0byBtYW5hZ2UgYW5kIGV4ZWN1dGUgYSBzZXJpZXMgb2YgaGFuZGxlcnMgYmFzZWQgb24gcGF0dGVybnMuIEVhY2ggaGFuZGxlciBjb25zaXN0cyBvZiBhIHBhdHRlcm4gZnVuY3Rpb24sIGEgaGFuZGxlIGZ1bmN0aW9uLCBhbmQgYSBuYW1lLiBUaGlzIGxpYnJhcnkgaXMgc3VpdGFibGUgZm9yIHNjZW5hcmlvcyB3aGVyZSBkaWZmZXJlbnQgYWN0aW9ucyBuZWVkIHRvIGJlIHRha2VuIGJhc2VkIG9uIHZhcnlpbmcgaW5wdXQgY3JpdGVyaWEuIFJldHVybnMgdGhlIGhhbmRsZXJzIHRhYmxlLgoKLS0gQG1vZHVsZSBoYW5kbGVycwoKCgotLS0gVGhlIGhhbmRsZXJzIHRhYmxlCgotLSBAdGFibGUgaGFuZGxlcnMKCi0tIEBmaWVsZCBfdmVyc2lvbiBUaGUgdmVyc2lvbiBudW1iZXIgb2YgdGhlIGhhbmRsZXJzIG1vZHVsZQoKLS0gQGZpZWxkIGxpc3QgVGhlIGxpc3Qgb2YgaGFuZGxlcnMKCi0tIEBmaWVsZCBjb3JvdXRpbmVzIFRoZSBjb3JvdXRpbmVzIG9mIHRoZSBoYW5kbGVycwoKLS0gQGZpZWxkIG9uY2VOb25jZSBUaGUgbm9uY2UgZm9yIHRoZSBvbmNlIGhhbmRsZXJzCgotLSBAZmllbGQgdXRpbHMgVGhlIGhhbmRsZXJzLXV0aWxzIG1vZHVsZQoKLS0gQGZpZWxkIGdlbmVyYXRlUmVzb2x2ZXIgVGhlIGdlbmVyYXRlUmVzb2x2ZXIgZnVuY3Rpb24KCi0tIEBmaWVsZCByZWNlaXZlIFRoZSByZWNlaXZlIGZ1bmN0aW9uCgotLSBAZmllbGQgb25jZSBUaGUgb25jZSBmdW5jdGlvbgoKLS0gQGZpZWxkIGFkZCBUaGUgYWRkIGZ1bmN0aW9uCgotLSBAZmllbGQgYXBwZW5kIFRoZSBhcHBlbmQgZnVuY3Rpb24KCi0tIEBmaWVsZCBwcmVwZW5kIFRoZSBwcmVwZW5kIGZ1bmN0aW9uCgotLSBAZmllbGQgcmVtb3ZlIFRoZSByZW1vdmUgZnVuY3Rpb24KCi0tIEBmaWVsZCBldmFsdWF0ZSBUaGUgZXZhbHVhdGUgZnVuY3Rpb24KCmxvY2FsIGhhbmRsZXJzID0geyBfdmVyc2lvbiA9ICIwLjAuNSIgfQoKbG9jYWwgY29yb3V0aW5lID0gcmVxdWlyZSgnY29yb3V0aW5lJykKCmxvY2FsIHV0aWxzID0gcmVxdWlyZSgnLnV0aWxzJykKCgoKaGFuZGxlcnMudXRpbHMgPSByZXF1aXJlKCcuaGFuZGxlcnMtdXRpbHMnKQoKLS0gaWYgdXBkYXRlIHdlIG5lZWQgdG8ga2VlcCBkZWZpbmVkIGhhbmRsZXJzCgppZiBIYW5kbGVycyB0aGVuCgogIGhhbmRsZXJzLmxpc3QgPSBIYW5kbGVycy5saXN0IG9yIHt9CgogIGhhbmRsZXJzLmNvcm91dGluZXMgPSBIYW5kbGVycy5jb3JvdXRpbmVzIG9yIHt9CgplbHNlCgogIGhhbmRsZXJzLmxpc3QgPSB7fQoKICBoYW5kbGVycy5jb3JvdXRpbmVzID0ge30KCgoKZW5kCgpoYW5kbGVycy5vbmNlTm9uY2UgPSAwCgoKCi0tLSBHaXZlbiBhbiBhcnJheSwgYSBwcm9wZXJ0eSBuYW1lLCBhbmQgYSB2YWx1ZSwgcmV0dXJucyB0aGUgaW5kZXggb2YgdGhlIG9iamVjdCBpbiB0aGUgYXJyYXkgdGhhdCBoYXMgdGhlIHByb3BlcnR5IHdpdGggdGhlIHZhbHVlLgoKLS0gQGxmdW5jdGlvbiBmaW5kSW5kZXhCeVByb3AKCi0tIEB0cGFyYW0ge3RhYmxlW119IGFycmF5IFRoZSBhcnJheSB0byBzZWFyY2ggdGhyb3VnaAoKLS0gQHRwYXJhbSB7c3RyaW5nfSBwcm9wIFRoZSBwcm9wZXJ0eSBuYW1lIHRvIGNoZWNrCgotLSBAdHBhcmFtIHthbnl9IHZhbHVlIFRoZSB2YWx1ZSB0byBjaGVjayBmb3IgaW4gdGhlIHByb3BlcnR5CgotLSBAdHJldHVybiB7bnVtYmVyIHwgbmlsfSBUaGUgaW5kZXggb2YgdGhlIG9iamVjdCBpbiB0aGUgYXJyYXkgdGhhdCBoYXMgdGhlIHByb3BlcnR5IHdpdGggdGhlIHZhbHVlLCBvciBuaWwgaWYgbm8gc3VjaCBvYmplY3QgaXMgZm91bmQKCmxvY2FsIGZ1bmN0aW9uIGZpbmRJbmRleEJ5UHJvcChhcnJheSwgcHJvcCwgdmFsdWUpCgogIGZvciBpbmRleCwgb2JqZWN0IGluIGlwYWlycyhhcnJheSkgZG8KCiAgICBpZiBvYmplY3RbcHJvcF0gPT0gdmFsdWUgdGhlbgoKICAgICAgcmV0dXJuIGluZGV4CgogICAgZW5kCgogIGVuZAoKICByZXR1cm4gbmlsCgplbmQKCgoKLS0tIEdpdmVuIGEgbmFtZSwgYSBwYXR0ZXJuLCBhbmQgYSBoYW5kbGUsIGFzc2VydHMgdGhhdCB0aGUgYXJndW1lbnRzIGFyZSB2YWxpZC4KCi0tIEBsZnVuY3Rpb24gYXNzZXJ0QWRkQXJncwoKLS0gQHRwYXJhbSB7c3RyaW5nfSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBoYW5kbGVyCgotLSBAdHBhcmFtIHt0YWJsZSB8IGZ1bmN0aW9uIHwgc3RyaW5nfSBwYXR0ZXJuIFRoZSBwYXR0ZXJuIHRvIGNoZWNrIGZvciBpbiB0aGUgbWVzc2FnZQoKLS0gQHRwYXJhbSB7ZnVuY3Rpb259IGhhbmRsZSBUaGUgZnVuY3Rpb24gdG8gY2FsbCBpZiB0aGUgcGF0dGVybiBtYXRjaGVzCgotLSBAdHBhcmFtIHtudW1iZXIgfCBzdHJpbmcgfCBuaWx9IG1heFJ1bnMgVGhlIG1heGltdW0gbnVtYmVyIG9mIHRpbWVzIHRoZSBoYW5kbGVyIHNob3VsZCBydW4sIG9yIG5pbCBpZiB0aGVyZSBpcyBubyBsaW1pdAoKbG9jYWwgZnVuY3Rpb24gYXNzZXJ0QWRkQXJncyhuYW1lLCBwYXR0ZXJuLCBoYW5kbGUsIG1heFJ1bnMpCgogIGFzc2VydCgKCiAgICB0eXBlKG5hbWUpID09ICdzdHJpbmcnIGFuZAoKICAgICh0eXBlKHBhdHRlcm4pID09ICdmdW5jdGlvbicgb3IgdHlwZShwYXR0ZXJuKSA9PSAndGFibGUnIG9yIHR5cGUocGF0dGVybikgPT0gJ3N0cmluZycpLAoKICAgICdJbnZhbGlkIGFyZ3VtZW50cyBnaXZlbi4gRXhwZWN0ZWQ6IFxuJyAuLgoKICAgICdcdG5hbWUgOiBzdHJpbmcsICcgLi4KCiAgICAnXHRwYXR0ZXJuIDogQWN0aW9uIDogc3RyaW5nIHwgTXNnTWF0Y2ggOiB0YWJsZSxcbicgLi4KCiAgICAnXHRcdGZ1bmN0aW9uKG1zZzogTWVzc2FnZSkgOiB7LTEgPSBicmVhaywgMCA9IHNraXAsIDEgPSBjb250aW51ZX0sXG4nIC4uCgogICAgJ1x0aGFuZGxlKG1zZyA6IE1lc3NhZ2UpIDogdm9pZCkgfCBSZXNvbHZlcixcbicgLi4KCiAgICAnXHRNYXhSdW5zPyA6IG51bWJlciB8ICJpbmYiIHwgbmlsJykKCmVuZAoKCgotLS0gR2l2ZW4gYSByZXNvbHZlciBzcGVjaWZpY2F0aW9uLCByZXR1cm5zIGEgcmVzb2x2ZXIgZnVuY3Rpb24uCgotLSBAZnVuY3Rpb24gZ2VuZXJhdGVSZXNvbHZlcgoKLS0gQHRwYXJhbSB7dGFibGUgfCBmdW5jdGlvbn0gcmVzb2x2ZVNwZWMgVGhlIHJlc29sdmVyIHNwZWNpZmljYXRpb24KCi0tIEB0cmV0dXJuIHtmdW5jdGlvbn0gQSByZXNvbHZlciBmdW5jdGlvbgoKZnVuY3Rpb24gaGFuZGxlcnMuZ2VuZXJhdGVSZXNvbHZlcihyZXNvbHZlU3BlYykKCiAgcmV0dXJuIGZ1bmN0aW9uKG1zZykKCiAgICAtLSBJZiB0aGUgcmVzb2x2ZXIgaXMgYSBzaW5nbGUgZnVuY3Rpb24sIGNhbGwgaXQuCgogICAgLS0gRWxzZSwgZmluZCB0aGUgZmlyc3QgbWF0Y2hpbmcgcGF0dGVybiAoYnkgaXRzIG1hdGNoU3BlYyksIGFuZCBleGVjLgoKICAgIGlmIHR5cGUocmVzb2x2ZVNwZWMpID09ICJmdW5jdGlvbiIgdGhlbgoKICAgICAgcmV0dXJuIHJlc29sdmVTcGVjKG1zZykKCiAgICBlbHNlCgogICAgICAgIGZvciBtYXRjaFNwZWMsIGZ1bmMgaW4gcGFpcnMocmVzb2x2ZVNwZWMpIGRvCgogICAgICAgICAgICBpZiB1dGlscy5tYXRjaGVzU3BlYyhtc2csIG1hdGNoU3BlYykgdGhlbgoKICAgICAgICAgICAgICAgIHJldHVybiBmdW5jKG1zZykKCiAgICAgICAgICAgIGVuZAoKICAgICAgICBlbmQKCiAgICBlbmQKCiAgZW5kCgplbmQKCgoKLS0tIEdpdmVuIGEgcGF0dGVybiwgcmV0dXJucyB0aGUgbmV4dCBtZXNzYWdlIHRoYXQgbWF0Y2hlcyB0aGUgcGF0dGVybi4KCi0tIFRoaXMgZnVuY3Rpb24gdXNlcyBMdWEncyBjb3JvdXRpbmVzIHVuZGVyLXRoZS1ob29kIHRvIGFkZCBhIGhhbmRsZXIsIHBhdXNlLAoKLS0gYW5kIHRoZW4gcmVzdW1lIHRoZSBjdXJyZW50IGNvcm91dGluZS4gVGhpcyBhbGxvd3MgdXMgdG8gZWZmZWN0aXZlbHkgYmxvY2sKCi0tIHByb2Nlc3Npbmcgb2Ygb25lIG1lc3NhZ2UgdW50aWwgYW5vdGhlciBpcyByZWNlaXZlZCB0aGF0IG1hdGNoZXMgdGhlIHBhdHRlcm4uCgotLSBAZnVuY3Rpb24gcmVjZWl2ZQoKLS0gQHRwYXJhbSB7dGFibGUgfCBmdW5jdGlvbn0gcGF0dGVybiBUaGUgcGF0dGVybiB0byBjaGVjayBmb3IgaW4gdGhlIG1lc3NhZ2UKCmZ1bmN0aW9uIGhhbmRsZXJzLnJlY2VpdmUocGF0dGVybikKCiAgbG9jYWwgc2VsZiA9IGNvcm91dGluZS5ydW5uaW5nKCkKCiAgaGFuZGxlcnMub25jZShwYXR0ZXJuLCBmdW5jdGlvbiAobXNnKQoKICAgICAgLS0gSWYgdGhlIHJlc3VsdCBvZiB0aGUgcmVzdW1lZCBjb3JvdXRpbmUgaXMgYW4gZXJyb3IgdGhlbiB3ZSBzaG91bGQgYnViYmxlIGl0IHVwIHRvIHRoZSBwcm9jZXNzCgogICAgICBsb2NhbCBfLCBzdWNjZXNzLCBlcnJtc2cgPSBjb3JvdXRpbmUucmVzdW1lKHNlbGYsIG1zZykKCiAgICAgIGlmIG5vdCBzdWNjZXNzIHRoZW4KCiAgICAgICAgZXJyb3IoZXJybXNnKQoKICAgICAgZW5kCgogIGVuZCkKCiAgcmV0dXJuIGNvcm91dGluZS55aWVsZChwYXR0ZXJuKQoKZW5kCgoKCi0tLSBHaXZlbiBhIG5hbWUsIGEgcGF0dGVybiwgYW5kIGEgaGFuZGxlLCBhZGRzIGEgaGFuZGxlciB0byB0aGUgbGlzdC4KCi0tIElmIG5hbWUgaXMgbm90IHByb3ZpZGVkLCAiX29uY2VfIiBwcmVmaXggcGx1cyBvbmNlTm9uY2Ugd2lsbCBiZSB1c2VkIGFzIHRoZSBuYW1lLgoKLS0gQWRkcyBoYW5kbGVyIHdpdGggbWF4UnVucyBvZiAxIHN1Y2ggdGhhdCBpdCB3aWxsIG9ubHkgYmUgY2FsbGVkIG9uY2UgdGhlbiByZW1vdmVkIGZyb20gdGhlIGxpc3QuCgotLSBAZnVuY3Rpb24gb25jZQoKLS0gQHRwYXJhbSB7c3RyaW5nfSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBoYW5kbGVyCgotLSBAdHBhcmFtIHt0YWJsZSB8IGZ1bmN0aW9uIHwgc3RyaW5nfSBwYXR0ZXJuIFRoZSBwYXR0ZXJuIHRvIGNoZWNrIGZvciBpbiB0aGUgbWVzc2FnZQoKLS0gQHRwYXJhbSB7ZnVuY3Rpb259IGhhbmRsZSBUaGUgZnVuY3Rpb24gdG8gY2FsbCBpZiB0aGUgcGF0dGVybiBtYXRjaGVzCgpmdW5jdGlvbiBoYW5kbGVycy5vbmNlKC4uLikKCiAgbG9jYWwgbmFtZSwgcGF0dGVybiwgaGFuZGxlCgogIGlmIHNlbGVjdCgiIyIsIC4uLikgPT0gMyB0aGVuCgogICAgbmFtZSA9IHNlbGVjdCgxLCAuLi4pCgogICAgcGF0dGVybiA9IHNlbGVjdCgyLCAuLi4pCgogICAgaGFuZGxlID0gc2VsZWN0KDMsIC4uLikKCiAgZWxzZQoKICAgIG5hbWUgPSAiX29uY2VfIiAuLiB0b3N0cmluZyhoYW5kbGVycy5vbmNlTm9uY2UpCgogICAgaGFuZGxlcnMub25jZU5vbmNlID0gaGFuZGxlcnMub25jZU5vbmNlICsgMQoKICAgIHBhdHRlcm4gPSBzZWxlY3QoMSwgLi4uKQoKICAgIGhhbmRsZSA9IHNlbGVjdCgyLCAuLi4pCgogIGVuZAoKICBoYW5kbGVycy5wcmVwZW5kKG5hbWUsIHBhdHRlcm4sIGhhbmRsZSwgMSkKCmVuZAoKCgotLS0gR2l2ZW4gYSBuYW1lLCBhIHBhdHRlcm4sIGFuZCBhIGhhbmRsZSwgYWRkcyBhIGhhbmRsZXIgdG8gdGhlIGxpc3QuCgotLSBAZnVuY3Rpb24gYWRkCgotLSBAdHBhcmFtIHtzdHJpbmd9IG5hbWUgVGhlIG5hbWUgb2YgdGhlIGhhbmRsZXIKCi0tIEB0cGFyYW0ge3RhYmxlIHwgZnVuY3Rpb24gfCBzdHJpbmd9IHBhdHRlcm4gVGhlIHBhdHRlcm4gdG8gY2hlY2sgZm9yIGluIHRoZSBtZXNzYWdlCgotLSBAdHBhcmFtIHtmdW5jdGlvbn0gaGFuZGxlIFRoZSBmdW5jdGlvbiB0byBjYWxsIGlmIHRoZSBwYXR0ZXJuIG1hdGNoZXMKCi0tIEB0cGFyYW0ge251bWJlciB8IHN0cmluZyB8IG5pbH0gbWF4UnVucyBUaGUgbWF4aW11bSBudW1iZXIgb2YgdGltZXMgdGhlIGhhbmRsZXIgc2hvdWxkIHJ1biwgb3IgbmlsIGlmIHRoZXJlIGlzIG5vIGxpbWl0CgpmdW5jdGlvbiBoYW5kbGVycy5hZGQoLi4uKQoKICBsb2NhbCBuYW1lLCBwYXR0ZXJuLCBoYW5kbGUsIG1heFJ1bnMKCiAgbG9jYWwgYXJncyA9IHNlbGVjdCgiIyIsIC4uLikKCiAgaWYgYXJncyA9PSAyIHRoZW4KCiAgICBuYW1lID0gc2VsZWN0KDEsIC4uLikKCiAgICBwYXR0ZXJuID0gc2VsZWN0KDEsIC4uLikKCiAgICBoYW5kbGUgPSBzZWxlY3QoMiwgLi4uKQoKICAgIG1heFJ1bnMgPSBuaWwKCiAgZWxzZWlmIGFyZ3MgPT0gMyB0aGVuCgogICAgbmFtZSA9IHNlbGVjdCgxLCAuLi4pCgogICAgcGF0dGVybiA9IHNlbGVjdCgyLCAuLi4pCgogICAgaGFuZGxlID0gc2VsZWN0KDMsIC4uLikKCiAgICBtYXhSdW5zID0gbmlsCgogIGVsc2UgCgogICAgbmFtZSA9IHNlbGVjdCgxLCAuLi4pCgogICAgcGF0dGVybiA9IHNlbGVjdCgyLCAuLi4pCgogICAgaGFuZGxlID0gc2VsZWN0KDMsIC4uLikKCiAgICBtYXhSdW5zID0gc2VsZWN0KDQsIC4uLikKCiAgZW5kCgogIGFzc2VydEFkZEFyZ3MobmFtZSwgcGF0dGVybiwgaGFuZGxlLCBtYXhSdW5zKQoKICAKCiAgaGFuZGxlID0gaGFuZGxlcnMuZ2VuZXJhdGVSZXNvbHZlcihoYW5kbGUpCgogIAoKICAtLSB1cGRhdGUgZXhpc3RpbmcgaGFuZGxlciBieSBuYW1lCgogIGxvY2FsIGlkeCA9IGZpbmRJbmRleEJ5UHJvcChoYW5kbGVycy5saXN0LCAibmFtZSIsIG5hbWUpCgogIGlmIGlkeCB+PSBuaWwgYW5kIGlkeCA+IDAgdGhlbgoKICAgIC0tIGZvdW5kIHVwZGF0ZQoKICAgIGhhbmRsZXJzLmxpc3RbaWR4XS5wYXR0ZXJuID0gcGF0dGVybgoKICAgIGhhbmRsZXJzLmxpc3RbaWR4XS5oYW5kbGUgPSBoYW5kbGUKCiAgICBoYW5kbGVycy5saXN0W2lkeF0ubWF4UnVucyA9IG1heFJ1bnMKCiAgZWxzZQoKICAgIC0tIG5vdCBmb3VuZCB0aGVuIGFkZCAgICAKCiAgICB0YWJsZS5pbnNlcnQoaGFuZGxlcnMubGlzdCwgeyBwYXR0ZXJuID0gcGF0dGVybiwgaGFuZGxlID0gaGFuZGxlLCBuYW1lID0gbmFtZSwgbWF4UnVucyA9IG1heFJ1bnMgfSkKCgoKICBlbmQKCiAgcmV0dXJuICNoYW5kbGVycy5saXN0CgplbmQKCgoKLS0tIEFwcGVuZHMgYSBuZXcgaGFuZGxlciB0byB0aGUgZW5kIG9mIHRoZSBoYW5kbGVycyBsaXN0LgoKLS0gQGZ1bmN0aW9uIGFwcGVuZAoKLS0gQHRwYXJhbSB7c3RyaW5nfSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBoYW5kbGVyCgotLSBAdHBhcmFtIHt0YWJsZSB8IGZ1bmN0aW9uIHwgc3RyaW5nfSBwYXR0ZXJuIFRoZSBwYXR0ZXJuIHRvIGNoZWNrIGZvciBpbiB0aGUgbWVzc2FnZQoKLS0gQHRwYXJhbSB7ZnVuY3Rpb259IGhhbmRsZSBUaGUgZnVuY3Rpb24gdG8gY2FsbCBpZiB0aGUgcGF0dGVybiBtYXRjaGVzCgotLSBAdHBhcmFtIHtudW1iZXIgfCBzdHJpbmcgfCBuaWx9IG1heFJ1bnMgVGhlIG1heGltdW0gbnVtYmVyIG9mIHRpbWVzIHRoZSBoYW5kbGVyIHNob3VsZCBydW4sIG9yIG5pbCBpZiB0aGVyZSBpcyBubyBsaW1pdAoKZnVuY3Rpb24gaGFuZGxlcnMuYXBwZW5kKC4uLikKCiAgbG9jYWwgbmFtZSwgcGF0dGVybiwgaGFuZGxlLCBtYXhSdW5zCgogIGxvY2FsIGFyZ3MgPSBzZWxlY3QoIiMiLCAuLi4pCgogIGlmIGFyZ3MgPT0gMiB0aGVuCgogICAgbmFtZSA9IHNlbGVjdCgxLCAuLi4pCgogICAgcGF0dGVybiA9IHNlbGVjdCgxLCAuLi4pCgogICAgaGFuZGxlID0gc2VsZWN0KDIsIC4uLikKCiAgICBtYXhSdW5zID0gbmlsCgogIGVsc2VpZiBhcmdzID09IDMgdGhlbgoKICAgIG5hbWUgPSBzZWxlY3QoMSwgLi4uKQoKICAgIHBhdHRlcm4gPSBzZWxlY3QoMiwgLi4uKQoKICAgIGhhbmRsZSA9IHNlbGVjdCgzLCAuLi4pCgogICAgbWF4UnVucyA9IG5pbAoKICBlbHNlIAoKICAgIG5hbWUgPSBzZWxlY3QoMSwgLi4uKQoKICAgIHBhdHRlcm4gPSBzZWxlY3QoMiwgLi4uKQoKICAgIGhhbmRsZSA9IHNlbGVjdCgzLCAuLi4pCgogICAgbWF4UnVucyA9IHNlbGVjdCg0LCAuLi4pCgogIGVuZAoKICBhc3NlcnRBZGRBcmdzKG5hbWUsIHBhdHRlcm4sIGhhbmRsZSwgbWF4UnVucykKCiAgCgogIGhhbmRsZSA9IGhhbmRsZXJzLmdlbmVyYXRlUmVzb2x2ZXIoaGFuZGxlKQoKICAtLSB1cGRhdGUgZXhpc3RpbmcgaGFuZGxlciBieSBuYW1lCgogIGxvY2FsIGlkeCA9IGZpbmRJbmRleEJ5UHJvcChoYW5kbGVycy5saXN0LCAibmFtZSIsIG5hbWUpCgogIGlmIGlkeCB+PSBuaWwgYW5kIGlkeCA+IDAgdGhlbgoKICAgIC0tIGZvdW5kIHVwZGF0ZQoKICAgIGhhbmRsZXJzLmxpc3RbaWR4XS5wYXR0ZXJuID0gcGF0dGVybgoKICAgIGhhbmRsZXJzLmxpc3RbaWR4XS5oYW5kbGUgPSBoYW5kbGUKCiAgICBoYW5kbGVycy5saXN0W2lkeF0ubWF4UnVucyA9IG1heFJ1bnMKCiAgZWxzZQoKICAgIAoKICAgIHRhYmxlLmluc2VydChoYW5kbGVycy5saXN0LCB7IHBhdHRlcm4gPSBwYXR0ZXJuLCBoYW5kbGUgPSBoYW5kbGUsIG5hbWUgPSBuYW1lLCBtYXhSdW5zID0gbWF4UnVucyB9KQoKICBlbmQKCgoKICAKCmVuZAoKCgotLS0gUHJlcGVuZHMgYSBuZXcgaGFuZGxlciB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBoYW5kbGVycyBsaXN0LgoKLS0gQGZ1bmN0aW9uIHByZXBlbmQKCi0tIEB0cGFyYW0ge3N0cmluZ30gbmFtZSBUaGUgbmFtZSBvZiB0aGUgaGFuZGxlcgoKLS0gQHRwYXJhbSB7dGFibGUgfCBmdW5jdGlvbiB8IHN0cmluZ30gcGF0dGVybiBUaGUgcGF0dGVybiB0byBjaGVjayBmb3IgaW4gdGhlIG1lc3NhZ2UKCi0tIEB0cGFyYW0ge2Z1bmN0aW9ufSBoYW5kbGUgVGhlIGZ1bmN0aW9uIHRvIGNhbGwgaWYgdGhlIHBhdHRlcm4gbWF0Y2hlcwoKLS0gQHRwYXJhbSB7bnVtYmVyIHwgc3RyaW5nIHwgbmlsfSBtYXhSdW5zIFRoZSBtYXhpbXVtIG51bWJlciBvZiB0aW1lcyB0aGUgaGFuZGxlciBzaG91bGQgcnVuLCBvciBuaWwgaWYgdGhlcmUgaXMgbm8gbGltaXQKCmZ1bmN0aW9uIGhhbmRsZXJzLnByZXBlbmQoLi4uKQoKICBsb2NhbCBuYW1lLCBwYXR0ZXJuLCBoYW5kbGUsIG1heFJ1bnMKCiAgbG9jYWwgYXJncyA9IHNlbGVjdCgiIyIsIC4uLikKCiAgaWYgYXJncyA9PSAyIHRoZW4KCiAgICBuYW1lID0gc2VsZWN0KDEsIC4uLikKCiAgICBwYXR0ZXJuID0gc2VsZWN0KDEsIC4uLikKCiAgICBoYW5kbGUgPSBzZWxlY3QoMiwgLi4uKQoKICAgIG1heFJ1bnMgPSBuaWwKCiAgZWxzZWlmIGFyZ3MgPT0gMyB0aGVuCgogICAgbmFtZSA9IHNlbGVjdCgxLCAuLi4pCgogICAgcGF0dGVybiA9IHNlbGVjdCgyLCAuLi4pCgogICAgaGFuZGxlID0gc2VsZWN0KDMsIC4uLikKCiAgICBtYXhSdW5zID0gbmlsCgogIGVsc2UgCgogICAgbmFtZSA9IHNlbGVjdCgxLCAuLi4pCgogICAgcGF0dGVybiA9IHNlbGVjdCgyLCAuLi4pCgogICAgaGFuZGxlID0gc2VsZWN0KDMsIC4uLikKCiAgICBtYXhSdW5zID0gc2VsZWN0KDQsIC4uLikKCiAgZW5kCgogIGFzc2VydEFkZEFyZ3MobmFtZSwgcGF0dGVybiwgaGFuZGxlLCBtYXhSdW5zKQoKCgogIGhhbmRsZSA9IGhhbmRsZXJzLmdlbmVyYXRlUmVzb2x2ZXIoaGFuZGxlKQoKCgogIC0tIHVwZGF0ZSBleGlzdGluZyBoYW5kbGVyIGJ5IG5hbWUKCiAgbG9jYWwgaWR4ID0gZmluZEluZGV4QnlQcm9wKGhhbmRsZXJzLmxpc3QsICJuYW1lIiwgbmFtZSkKCiAgaWYgaWR4IH49IG5pbCBhbmQgaWR4ID4gMCB0aGVuCgogICAgLS0gZm91bmQgdXBkYXRlCgogICAgaGFuZGxlcnMubGlzdFtpZHhdLnBhdHRlcm4gPSBwYXR0ZXJuCgogICAgaGFuZGxlcnMubGlzdFtpZHhdLmhhbmRsZSA9IGhhbmRsZQoKICAgIGhhbmRsZXJzLmxpc3RbaWR4XS5tYXhSdW5zID0gbWF4UnVucwoKICBlbHNlICAKCiAgICB0YWJsZS5pbnNlcnQoaGFuZGxlcnMubGlzdCwgMSwgeyBwYXR0ZXJuID0gcGF0dGVybiwgaGFuZGxlID0gaGFuZGxlLCBuYW1lID0gbmFtZSwgbWF4UnVucyA9IG1heFJ1bnMgfSkKCiAgZW5kCgoKCiAgCgplbmQKCgoKLS0tIFJldHVybnMgYW4gb2JqZWN0IHRoYXQgYWxsb3dzIGFkZGluZyBhIG5ldyBoYW5kbGVyIGJlZm9yZSBhIHNwZWNpZmllZCBoYW5kbGVyLgoKLS0gQGZ1bmN0aW9uIGJlZm9yZQoKLS0gQHRwYXJhbSB7c3RyaW5nfSBoYW5kbGVOYW1lIFRoZSBuYW1lIG9mIHRoZSBoYW5kbGVyIGJlZm9yZSB3aGljaCB0aGUgbmV3IGhhbmRsZXIgd2lsbCBiZSBhZGRlZAoKLS0gQHRyZXR1cm4ge3RhYmxlfSBBbiBvYmplY3Qgd2l0aCBhbiBgYWRkYCBtZXRob2QgdG8gaW5zZXJ0IHRoZSBuZXcgaGFuZGxlcgoKZnVuY3Rpb24gaGFuZGxlcnMuYmVmb3JlKGhhbmRsZU5hbWUpCgogIGFzc2VydCh0eXBlKGhhbmRsZU5hbWUpID09ICdzdHJpbmcnLCAnSGFuZGxlciBuYW1lIE1VU1QgYmUgYSBzdHJpbmcnKQoKCgogIGxvY2FsIGlkeCA9IGZpbmRJbmRleEJ5UHJvcChoYW5kbGVycy5saXN0LCAibmFtZSIsIGhhbmRsZU5hbWUpCgogIHJldHVybiB7CgogICAgYWRkID0gZnVuY3Rpb24gKG5hbWUsIHBhdHRlcm4sIGhhbmRsZSwgbWF4UnVucykgCgogICAgICBhc3NlcnRBZGRBcmdzKG5hbWUsIHBhdHRlcm4sIGhhbmRsZSwgbWF4UnVucykKCiAgICAgIAoKICAgICAgaGFuZGxlID0gaGFuZGxlcnMuZ2VuZXJhdGVSZXNvbHZlcihoYW5kbGUpCgogICAgICAKCiAgICAgIGlmIGlkeCB0aGVuCgogICAgICAgIHRhYmxlLmluc2VydChoYW5kbGVycy5saXN0LCBpZHgsIHsgcGF0dGVybiA9IHBhdHRlcm4sIGhhbmRsZSA9IGhhbmRsZSwgbmFtZSA9IG5hbWUsIG1heFJ1bnMgPSBtYXhSdW5zIH0pCgogICAgICBlbmQKCiAgICAgIAoKICAgIGVuZAoKICB9CgplbmQKCgoKLS0tIFJldHVybnMgYW4gb2JqZWN0IHRoYXQgYWxsb3dzIGFkZGluZyBhIG5ldyBoYW5kbGVyIGFmdGVyIGEgc3BlY2lmaWVkIGhhbmRsZXIuCgotLSBAZnVuY3Rpb24gYWZ0ZXIKCi0tIEB0cGFyYW0ge3N0cmluZ30gaGFuZGxlTmFtZSBUaGUgbmFtZSBvZiB0aGUgaGFuZGxlciBhZnRlciB3aGljaCB0aGUgbmV3IGhhbmRsZXIgd2lsbCBiZSBhZGRlZAoKLS0gQHRyZXR1cm4ge3RhYmxlfSBBbiBvYmplY3Qgd2l0aCBhbiBgYWRkYCBtZXRob2QgdG8gaW5zZXJ0IHRoZSBuZXcgaGFuZGxlcgoKZnVuY3Rpb24gaGFuZGxlcnMuYWZ0ZXIoaGFuZGxlTmFtZSkKCiAgYXNzZXJ0KHR5cGUoaGFuZGxlTmFtZSkgPT0gJ3N0cmluZycsICdIYW5kbGVyIG5hbWUgTVVTVCBiZSBhIHN0cmluZycpCgogIGxvY2FsIGlkeCA9IGZpbmRJbmRleEJ5UHJvcChoYW5kbGVycy5saXN0LCAibmFtZSIsIGhhbmRsZU5hbWUpCgogIHJldHVybiB7CgogICAgYWRkID0gZnVuY3Rpb24gKG5hbWUsIHBhdHRlcm4sIGhhbmRsZSwgbWF4UnVucykKCiAgICAgIGFzc2VydEFkZEFyZ3MobmFtZSwgcGF0dGVybiwgaGFuZGxlLCBtYXhSdW5zKQoKICAgICAgCgogICAgICBoYW5kbGUgPSBoYW5kbGVycy5nZW5lcmF0ZVJlc29sdmVyKGhhbmRsZSkKCiAgICAgIAoKICAgICAgaWYgaWR4IHRoZW4KCiAgICAgICAgdGFibGUuaW5zZXJ0KGhhbmRsZXJzLmxpc3QsIGlkeCArIDEsIHsgcGF0dGVybiA9IHBhdHRlcm4sIGhhbmRsZSA9IGhhbmRsZSwgbmFtZSA9IG5hbWUsIG1heFJ1bnMgPSBtYXhSdW5zIH0pCgogICAgICBlbmQKCiAgICAgIAoKICAgIGVuZAoKICB9CgoKCmVuZAoKCgotLS0gUmVtb3ZlcyBhIGhhbmRsZXIgZnJvbSB0aGUgaGFuZGxlcnMgbGlzdCBieSBuYW1lLgoKLS0gQGZ1bmN0aW9uIHJlbW92ZQoKLS0gQHRwYXJhbSB7c3RyaW5nfSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBoYW5kbGVyIHRvIGJlIHJlbW92ZWQKCmZ1bmN0aW9uIGhhbmRsZXJzLnJlbW92ZShuYW1lKQoKICBhc3NlcnQodHlwZShuYW1lKSA9PSAnc3RyaW5nJywgJ25hbWUgTVVTVCBiZSBzdHJpbmcnKQoKICBpZiAjaGFuZGxlcnMubGlzdCA9PSAxIGFuZCBoYW5kbGVycy5saXN0WzFdLm5hbWUgPT0gbmFtZSB0aGVuCgogICAgaGFuZGxlcnMubGlzdCA9IHt9CgogICAgCgogIGVuZAoKCgogIGxvY2FsIGlkeCA9IGZpbmRJbmRleEJ5UHJvcChoYW5kbGVycy5saXN0LCAibmFtZSIsIG5hbWUpCgogIGlmIGlkeCB+PSBuaWwgYW5kIGlkeCA+IDAgdGhlbgoKICAgIHRhYmxlLnJlbW92ZShoYW5kbGVycy5saXN0LCBpZHgpCgogIGVuZAoKICAKCmVuZAoKCgotLS0gRXZhbHVhdGVzIGVhY2ggaGFuZGxlciBhZ2FpbnN0IGEgZ2l2ZW4gbWVzc2FnZSBhbmQgZW52aXJvbm1lbnQuIEhhbmRsZXJzIGFyZSBjYWxsZWQgaW4gdGhlIG9yZGVyIHRoZXkgYXBwZWFyIGluIHRoZSBoYW5kbGVycyBsaXN0LgoKLS0gUmV0dXJuIDAgdG8gbm90IGNhbGwgaGFuZGxlciwgLTEgdG8gYnJlYWsgYWZ0ZXIgaGFuZGxlciBpcyBjYWxsZWQsIDEgdG8gY29udGludWUKCi0tIEBmdW5jdGlvbiBldmFsdWF0ZQoKLS0gQHRwYXJhbSB7dGFibGV9IG1zZyBUaGUgbWVzc2FnZSB0byBiZSBwcm9jZXNzZWQgYnkgdGhlIGhhbmRsZXJzLgoKLS0gQHRwYXJhbSB7dGFibGV9IGVudiBUaGUgZW52aXJvbm1lbnQgaW4gd2hpY2ggdGhlIGhhbmRsZXJzIGFyZSBleGVjdXRlZC4KCi0tIEB0cmV0dXJuIFRoZSByZXNwb25zZSBmcm9tIHRoZSBoYW5kbGVyKHMpLiBSZXR1cm5zIGEgZGVmYXVsdCBtZXNzYWdlIGlmIG5vIGhhbmRsZXIgbWF0Y2hlcy4KCmZ1bmN0aW9uIGhhbmRsZXJzLmV2YWx1YXRlKG1zZywgZW52KQoKICBsb2NhbCBoYW5kbGVkID0gZmFsc2UKCiAgYXNzZXJ0KHR5cGUobXNnKSA9PSAndGFibGUnLCAnbXNnIGlzIG5vdCB2YWxpZCcpCgogIGFzc2VydCh0eXBlKGVudikgPT0gJ3RhYmxlJywgJ2VudiBpcyBub3QgdmFsaWQnKQoKICAKCiAgZm9yIF8sIG8gaW4gaXBhaXJzKGhhbmRsZXJzLmxpc3QpIGRvCgogICAgaWYgby5uYW1lIH49ICJfZGVmYXVsdCIgdGhlbgoKICAgICAgbG9jYWwgbWF0Y2ggPSB1dGlscy5tYXRjaGVzU3BlYyhtc2csIG8ucGF0dGVybikKCiAgICAgIGlmIG5vdCAodHlwZShtYXRjaCkgPT0gJ251bWJlcicgb3IgdHlwZShtYXRjaCkgPT0gJ3N0cmluZycgb3IgdHlwZShtYXRjaCkgPT0gJ2Jvb2xlYW4nKSB0aGVuCgogICAgICAgIGVycm9yKCJQYXR0ZXJuIHJlc3VsdCBpcyBub3QgdmFsaWQsIGl0IE1VU1QgYmUgc3RyaW5nLCBudW1iZXIsIG9yIGJvb2xlYW4iKQoKICAgICAgZW5kCgogICAgICAKCiAgICAgIC0tIGhhbmRsZSBib29sZWFuIHJldHVybnMKCiAgICAgIGlmIHR5cGUobWF0Y2gpID09ICJib29sZWFuIiBhbmQgbWF0Y2ggPT0gdHJ1ZSB0aGVuCgogICAgICAgIG1hdGNoID0gLTEKCiAgICAgIGVsc2VpZiB0eXBlKG1hdGNoKSA9PSAiYm9vbGVhbiIgYW5kIG1hdGNoID09IGZhbHNlIHRoZW4KCiAgICAgICAgbWF0Y2ggPSAwCgogICAgICBlbmQKCgoKICAgICAgLS0gaGFuZGxlIHN0cmluZyByZXR1cm5zCgogICAgICBpZiB0eXBlKG1hdGNoKSA9PSAic3RyaW5nIiB0aGVuCgogICAgICAgIGlmIG1hdGNoID09ICJjb250aW51ZSIgdGhlbgoKICAgICAgICAgIG1hdGNoID0gMQoKICAgICAgICBlbHNlaWYgbWF0Y2ggPT0gImJyZWFrIiB0aGVuCgogICAgICAgICAgbWF0Y2ggPSAtMQoKICAgICAgICBlbHNlCgogICAgICAgICAgbWF0Y2ggPSAwCgogICAgICAgIGVuZAoKICAgICAgZW5kCgoKCiAgICAgIGlmIG1hdGNoIH49IDAgdGhlbgoKICAgICAgICBpZiBtYXRjaCA8IDAgdGhlbgoKICAgICAgICAgIGhhbmRsZWQgPSB0cnVlCgogICAgICAgIGVuZAoKICAgICAgICAtLSBlYWNoIGhhbmRsZSBmdW5jdGlvbiBjYW4gYWNjZXB0LCB0aGUgbXNnLCBlbnYKCiAgICAgICAgbG9jYWwgc3RhdHVzLCBlcnIgPSBwY2FsbChvLmhhbmRsZSwgbXNnLCBlbnYpCgogICAgICAgIGlmIG5vdCBzdGF0dXMgdGhlbgoKICAgICAgICAgIGVycm9yKGVycikKCiAgICAgICAgZW5kCgogICAgICAgIC0tIHJlbW92ZSBoYW5kbGVyIGlmIG1heFJ1bnMgaXMgcmVhY2hlZC4gbWF4UnVucyBjYW4gYmUgZWl0aGVyIGEgbnVtYmVyIG9yICJpbmYiCgogICAgICAgIGlmIG8ubWF4UnVucyB+PSBuaWwgYW5kIG8ubWF4UnVucyB+PSAiaW5mIiB0aGVuCgogICAgICAgICAgby5tYXhSdW5zID0gby5tYXhSdW5zIC0gMQoKICAgICAgICAgIGlmIG8ubWF4UnVucyA9PSAwIHRoZW4KCiAgICAgICAgICAgIGhhbmRsZXJzLnJlbW92ZShvLm5hbWUpCgogICAgICAgICAgZW5kCgogICAgICAgIGVuZAoKICAgICAgZW5kCgogICAgICBpZiBtYXRjaCA8IDAgdGhlbgoKICAgICAgICByZXR1cm4gaGFuZGxlZAoKICAgICAgZW5kCgogICAgZW5kCgogIGVuZAoKICAtLSBkbyBkZWZhdWx0CgogIGlmIG5vdCBoYW5kbGVkIHRoZW4KCiAgICBsb2NhbCBpZHggPSBmaW5kSW5kZXhCeVByb3AoaGFuZGxlcnMubGlzdCwgIm5hbWUiLCAiX2RlZmF1bHQiKQoKICAgIGhhbmRsZXJzLmxpc3RbaWR4XS5oYW5kbGUobXNnLGVudikKCiAgZW5kCgplbmQKCgoKcmV0dXJuIGhhbmRsZXJzCi0tLSBUaGUgUHJldHR5IG1vZHVsZSBwcm92aWRlcyBhIHV0aWxpdHkgZm9yIHByaW50aW5nIEx1YSB0YWJsZXMgaW4gYSBtb3JlIHJlYWRhYmxlIGZvcm1hdC4KCi0tIEBtb2R1bGUgcHJldHR5CgoKCi0tLSBUaGUgcHJldHR5IG1vZHVsZQoKLS0gQHRhYmxlIHByZXR0eQoKLS0gQGZpZWxkIF92ZXJzaW9uIFRoZSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgcHJldHR5IG1vZHVsZQoKLS0gQGZpZWxkIHRwcmludCBUaGUgdHByaW50IGZ1bmN0aW9uCgpsb2NhbCBwcmV0dHkgPSB7IF92ZXJzaW9uID0gIjAuMC4xIiB9CgoKCi0tLSBQcmludHMgYSB0YWJsZSB3aXRoIGluZGVudGF0aW9uIGZvciBiZXR0ZXIgcmVhZGFiaWxpdHkuCgotLSBAZnVuY3Rpb24gdHByaW50CgotLSBAdHBhcmFtIHt0YWJsZX0gdGJsIFRoZSB0YWJsZSB0byBwcmludAoKLS0gQHRwYXJhbSB7bnVtYmVyfSBpbmRlbnQgVGhlIGluZGVudGF0aW9uIGxldmVsIChkZWZhdWx0IGlzIDApCgotLSBAdHJldHVybiB7c3RyaW5nfSBBIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgdGFibGUgd2l0aCBpbmRlbnRhdGlvbgoKcHJldHR5LnRwcmludCA9IGZ1bmN0aW9uICh0YmwsIGluZGVudCkKCiAgaWYgbm90IGluZGVudCB0aGVuIGluZGVudCA9IDAgZW5kCgogIGxvY2FsIG91dHB1dCA9ICIiCgogIGZvciBrLCB2IGluIHBhaXJzKHRibCkgZG8KCiAgICBsb2NhbCBmb3JtYXR0aW5nID0gc3RyaW5nLnJlcCgiICIsIGluZGVudCkgLi4gayAuLiAiOiAiCgogICAgaWYgdHlwZSh2KSA9PSAidGFibGUiIHRoZW4KCiAgICAgIG91dHB1dCA9IG91dHB1dCAuLiBmb3JtYXR0aW5nIC4uICJcbiIKCiAgICAgIG91dHB1dCA9IG91dHB1dCAuLiBwcmV0dHkudHByaW50KHYsIGluZGVudCsxKQoKICAgIGVsc2VpZiB0eXBlKHYpID09ICdib29sZWFuJyB0aGVuCgogICAgICBvdXRwdXQgPSBvdXRwdXQgLi4gZm9ybWF0dGluZyAuLiB0b3N0cmluZyh2KSAuLiAiXG4iCgogICAgZWxzZQoKICAgICAgb3V0cHV0ID0gb3V0cHV0IC4uIGZvcm1hdHRpbmcgLi4gdiAuLiAiXG4iCgogICAgZW5kCgogIGVuZAoKICByZXR1cm4gb3V0cHV0CgplbmQKCgoKcmV0dXJuIHByZXR0eQBCoOsHC+dyLS0tIFRoZSBQcm9jZXNzIGxpYnJhcnkgcHJvdmlkZXMgYW4gZW52aXJvbm1lbnQgZm9yIG1hbmFnaW5nIGFuZCBleGVjdXRpbmcgcHJvY2Vzc2VzIG9uIHRoZSBBTyBuZXR3b3JrLiBJdCBpbmNsdWRlcyBjYXBhYmlsaXRpZXMgZm9yIGhhbmRsaW5nIG1lc3NhZ2VzLCBzcGF3bmluZyBwcm9jZXNzZXMsIGFuZCBjdXN0b21pemluZyB0aGUgZW52aXJvbm1lbnQgd2l0aCBwcm9ncmFtbWFibGUgbG9naWMgYW5kIGhhbmRsZXJzLiBSZXR1cm5zIHRoZSBwcm9jZXNzIHRhYmxlLgoKLS0gQG1vZHVsZSBwcm9jZXNzCgoKCi0tIEBkZXBlbmRlbmNpZXMKCmxvY2FsIHByZXR0eSA9IHJlcXVpcmUoJy5wcmV0dHknKQoKbG9jYWwgYmFzZTY0ID0gcmVxdWlyZSgnLmJhc2U2NCcpCgpsb2NhbCBqc29uID0gcmVxdWlyZSgnanNvbicpCgpsb2NhbCBjaGFuY2UgPSByZXF1aXJlKCcuY2hhbmNlJykKCmxvY2FsIGNyeXB0byA9IHJlcXVpcmUoJy5jcnlwdG8uaW5pdCcpCgpsb2NhbCBjb3JvdXRpbmUgPSByZXF1aXJlKCdjb3JvdXRpbmUnKQoKLS0gc2V0IGFsaWFzIGFvIGZvciAuYW8gbGlicmFyeQoKaWYgbm90IF9HLnBhY2thZ2UubG9hZGVkWydhbyddIHRoZW4gX0cucGFja2FnZS5sb2FkZWRbJ2FvJ10gPSByZXF1aXJlKCcuYW8nKSBlbmQKCgoKQ29sb3JzID0gewoKICByZWQgPSAiXDI3WzMxbSIsCgogIGdyZWVuID0gIlwyN1szMm0iLAoKICBibHVlID0gIlwyN1szNG0iLAoKICByZXNldCA9ICJcMjdbMG0iLAoKICBncmF5ID0gIlwyN1s5MG0iCgp9CgoKCkJlbGwgPSAiXHgwNyIKCgoKRHVtcCA9IHJlcXVpcmUoJy5kdW1wJykKClV0aWxzID0gcmVxdWlyZSgnLnV0aWxzJykKCkhhbmRsZXJzID0gcmVxdWlyZSgnLmhhbmRsZXJzJykKCmxvY2FsIHN0cmluZ2lmeSA9IHJlcXVpcmUoIi5zdHJpbmdpZnkiKQoKbG9jYWwgYXNzaWdubWVudCA9IHJlcXVpcmUoJy5hc3NpZ25tZW50JykKCmFvID0gbmlsCgppZiBfRy5wYWNrYWdlLmxvYWRlZFsnLmFvJ10gdGhlbgoKICBhbyA9IHJlcXVpcmUoJy5hbycpCgplbHNlaWYgX0cucGFja2FnZS5sb2FkZWRbJ2FvJ10gdGhlbgoKICBhbyA9IHJlcXVpcmUoJ2FvJykKCmVuZAoKLS0gSW1wbGVtZW50IGFzc2lnbmFibGUgcG9seWZpbGxzIG9uIF9hbwoKYXNzaWdubWVudC5pbml0KGFvKQoKCgotLS0gVGhlIHByb2Nlc3MgdGFibGUKCi0tIEB0YWJsZSBwcm9jZXNzCgotLSBAZmllbGQgX3ZlcnNpb24gVGhlIHZlcnNpb24gbnVtYmVyIG9mIHRoZSBwcm9jZXNzCgoKCmxvY2FsIHByb2Nlc3MgPSB7IF92ZXJzaW9uID0gIjIuMC4xIiB9CgotLSBUaGUgbWF4aW11bSBudW1iZXIgb2YgbWVzc2FnZXMgdG8gc3RvcmUgaW4gdGhlIGluYm94Cgpsb2NhbCBtYXhJbmJveENvdW50ID0gMTAwMDAKCgoKLS0gd3JhcCBhby5zZW5kIGFuZCBhby5zcGF3biBmb3IgbWFnaWMgdGFibGUKCmxvY2FsIGFvc2VuZCA9IGFvLnNlbmQKCmxvY2FsIGFvc3Bhd24gPSBhby5zcGF3bgoKCgphby5zZW5kID0gZnVuY3Rpb24gKG1zZykKCiAgaWYgbXNnLkRhdGEgYW5kIHR5cGUobXNnLkRhdGEpID09ICd0YWJsZScgdGhlbgoKICAgIG1zZ1snQ29udGVudC1UeXBlJ10gPSAnYXBwbGljYXRpb24vanNvbicKCiAgICBtc2cuRGF0YSA9IHJlcXVpcmUoJ2pzb24nKS5lbmNvZGUobXNnLkRhdGEpCgogIGVuZAoKICByZXR1cm4gYW9zZW5kKG1zZykKCmVuZAoKYW8uc3Bhd24gPSBmdW5jdGlvbiAobW9kdWxlLCBtc2cpIAoKICBpZiBtc2cuRGF0YSBhbmQgdHlwZShtc2cuRGF0YSkgPT0gJ3RhYmxlJyB0aGVuCgogICAgbXNnWydDb250ZW50LVR5cGUnXSA9ICdhcHBsaWNhdGlvbi9qc29uJwoKICAgIG1zZy5EYXRhID0gcmVxdWlyZSgnanNvbicpLmVuY29kZShtc2cuRGF0YSkKCiAgZW5kCgogIHJldHVybiBhb3NwYXduKG1vZHVsZSwgbXNnKQoKZW5kCgoKCi0tLSBSZW1vdmUgdGhlIGxhc3QgdGhyZWUgbGluZXMgZnJvbSBhIHN0cmluZwoKLS0gQGxmdW5jdGlvbiByZW1vdmVMYXN0VGhyZWVMaW5lcwoKLS0gQHRwYXJhbSB7c3RyaW5nfSBpbnB1dCBUaGUgc3RyaW5nIHRvIHJlbW92ZSB0aGUgbGFzdCB0aHJlZSBsaW5lcyBmcm9tCgotLSBAdHJldHVybiB7c3RyaW5nfSBUaGUgc3RyaW5nIHdpdGggdGhlIGxhc3QgdGhyZWUgbGluZXMgcmVtb3ZlZAoKbG9jYWwgZnVuY3Rpb24gcmVtb3ZlTGFzdFRocmVlTGluZXMoaW5wdXQpCgogIGxvY2FsIGxpbmVzID0ge30KCiAgZm9yIGxpbmUgaW4gaW5wdXQ6Z21hdGNoKCIoW15cbl0qKVxuPyIpIGRvCgogICAgICB0YWJsZS5pbnNlcnQobGluZXMsIGxpbmUpCgogIGVuZAoKCgogIC0tIFJlbW92ZSB0aGUgbGFzdCB0aHJlZSBsaW5lcwoKICBmb3IgaSA9IDEsIDMgZG8KCiAgICAgIHRhYmxlLnJlbW92ZShsaW5lcykKCiAgZW5kCgoKCiAgLS0gQ29uY2F0ZW5hdGUgdGhlIHJlbWFpbmluZyBsaW5lcwoKICByZXR1cm4gdGFibGUuY29uY2F0KGxpbmVzLCAiXG4iKQoKZW5kCgoKCi0tLSBJbnNlcnQgYSBtZXNzYWdlIGludG8gdGhlIGluYm94IGFuZCBtYW5hZ2Ugb3ZlcmZsb3cKCi0tIEBsZnVuY3Rpb24gaW5zZXJ0SW5ib3gKCi0tIEB0cGFyYW0ge3RhYmxlfSBtc2cgVGhlIG1lc3NhZ2UgdG8gaW5zZXJ0IGludG8gdGhlIGluYm94Cgpsb2NhbCBmdW5jdGlvbiBpbnNlcnRJbmJveChtc2cpCgogIHRhYmxlLmluc2VydChJbmJveCwgbXNnKQoKICBpZiAjSW5ib3ggPiBtYXhJbmJveENvdW50IHRoZW4KCiAgICBsb2NhbCBvdmVyZmxvdyA9ICNJbmJveCAtIG1heEluYm94Q291bnQKCiAgICBmb3IgaSA9IDEsb3ZlcmZsb3cgZG8KCiAgICAgIHRhYmxlLnJlbW92ZShJbmJveCwgMSkKCiAgICBlbmQKCiAgZW5kCgplbmQKCgoKLS0tIEZpbmQgYW4gb2JqZWN0IGluIGFuIGFycmF5IGJ5IGEgZ2l2ZW4ga2V5IGFuZCB2YWx1ZQoKLS0gQGxmdW5jdGlvbiBmaW5kT2JqZWN0CgotLSBAdHBhcmFtIHt0YWJsZX0gYXJyYXkgVGhlIGFycmF5IHRvIHNlYXJjaCB0aHJvdWdoCgotLSBAdHBhcmFtIHtzdHJpbmd9IGtleSBUaGUga2V5IHRvIHNlYXJjaCBmb3IKCi0tIEB0cGFyYW0ge2FueX0gdmFsdWUgVGhlIHZhbHVlIHRvIHNlYXJjaCBmb3IKCmxvY2FsIGZ1bmN0aW9uIGZpbmRPYmplY3QoYXJyYXksIGtleSwgdmFsdWUpCgogIGZvciBpLCBvYmplY3QgaW4gaXBhaXJzKGFycmF5KSBkbwoKICAgIGlmIG9iamVjdFtrZXldID09IHZhbHVlIHRoZW4KCiAgICAgIHJldHVybiBvYmplY3QKCiAgICBlbmQKCiAgZW5kCgogIHJldHVybiBuaWwKCmVuZAoKCgotLS0gQ29udmVydCBhIG1lc3NhZ2UncyB0YWdzIHRvIGEgdGFibGUgb2Yga2V5LXZhbHVlIHBhaXJzCgotLSBAZnVuY3Rpb24gVGFiCgotLSBAdHBhcmFtIHt0YWJsZX0gbXNnIFRoZSBtZXNzYWdlIGNvbnRhaW5pbmcgdGFncwoKLS0gQHRyZXR1cm4ge3RhYmxlfSBBIHRhYmxlIHdpdGggdGFnIG5hbWVzIGFzIGtleXMgYW5kIHRoZWlyIHZhbHVlcwoKZnVuY3Rpb24gVGFiKG1zZykKCiAgbG9jYWwgaW5wdXRzID0ge30KCiAgZm9yIF8sIG8gaW4gaXBhaXJzKG1zZy5UYWdzKSBkbwoKICAgIGlmIG5vdCBpbnB1dHNbby5uYW1lXSB0aGVuCgogICAgICBpbnB1dHNbby5uYW1lXSA9IG8udmFsdWUKCiAgICBlbmQKCiAgZW5kCgogIHJldHVybiBpbnB1dHMKCmVuZAoKCgotLS0gR2VuZXJhdGUgYSBwcm9tcHQgc3RyaW5nIGZvciB0aGUgY3VycmVudCBwcm9jZXNzCgotLSBAZnVuY3Rpb24gUHJvbXB0CgotLSBAdHJldHVybiB7c3RyaW5nfSBUaGUgY3VzdG9tIGNvbW1hbmQgcHJvbXB0IHN0cmluZwoKZnVuY3Rpb24gUHJvbXB0KCkKCiAgcmV0dXJuIENvbG9ycy5ncmVlbiAuLiBOYW1lIC4uIENvbG9ycy5ncmF5CgogICAgLi4gIkAiIC4uIENvbG9ycy5ibHVlIC4uICJhb3MtIiAuLiBwcm9jZXNzLl92ZXJzaW9uIC4uIENvbG9ycy5ncmF5CgogICAgLi4gIltJbmJveDoiIC4uIENvbG9ycy5yZWQgLi4gdG9zdHJpbmcoI0luYm94KSAuLiBDb2xvcnMuZ3JheQoKICAgIC4uICJdIiAuLiBDb2xvcnMucmVzZXQgLi4gIj4gIgoKZW5kCgoKCi0tLSBQcmludCBhIHZhbHVlLCBmb3JtYXR0aW5nIHRhYmxlcyBhbmQgY29udmVydGluZyBub24tc3RyaW5nIHR5cGVzCgotLSBAZnVuY3Rpb24gcHJpbnQKCi0tIEB0cGFyYW0ge2FueX0gYSBUaGUgdmFsdWUgdG8gcHJpbnQKCmZ1bmN0aW9uIHByaW50KGEpCgogIGlmIHR5cGUoYSkgPT0gInRhYmxlIiB0aGVuCgogICAgYSA9IHN0cmluZ2lmeS5mb3JtYXQoYSkKCiAgZW5kCgogIC0tW1sKCkluIG9yZGVyIHRvIHByaW50IG5vbiBzdHJpbmcgdHlwZXMgd2UgbmVlZCB0byBjb252ZXJ0IHRvIHN0cmluZwoKICBdXQoKICBpZiB0eXBlKGEpID09ICJib29sZWFuIiB0aGVuCgogICAgYSA9IENvbG9ycy5ibHVlIC4uIHRvc3RyaW5nKGEpIC4uIENvbG9ycy5yZXNldAoKICBlbmQKCiAgaWYgdHlwZShhKSA9PSAibmlsIiB0aGVuCgogICAgYSA9IENvbG9ycy5yZWQgLi4gdG9zdHJpbmcoYSkgLi4gQ29sb3JzLnJlc2V0CgogIGVuZAoKICBpZiB0eXBlKGEpID09ICJudW1iZXIiIHRoZW4KCiAgICBhID0gQ29sb3JzLmdyZWVuIC4uIHRvc3RyaW5nKGEpIC4uIENvbG9ycy5yZXNldAoKICBlbmQKCiAgCgogIGxvY2FsIGRhdGEgPSBhCgogIGlmIGFvLm91dGJveC5PdXRwdXQuZGF0YSB0aGVuCgogICAgZGF0YSA9ICBhby5vdXRib3guT3V0cHV0LmRhdGEgLi4gIlxuIiAuLiBhCgogIGVuZAoKICBhby5vdXRib3guT3V0cHV0ID0geyBkYXRhID0gZGF0YSwgcHJvbXB0ID0gUHJvbXB0KCksIHByaW50ID0gdHJ1ZSB9CgoKCiAgLS0gT25seSBzdXBwb3J0ZWQgZm9yIG5ld2VyIHZlcnNpb24gb2YgQU9TCgogIGlmIEhBTkRMRVJfUFJJTlRfTE9HUyB0aGVuIAoKICAgIHRhYmxlLmluc2VydChIQU5ETEVSX1BSSU5UX0xPR1MsIGEpCgogICAgcmV0dXJuIG5pbAoKICBlbmQKCgoKICByZXR1cm4gdG9zdHJpbmcoYSkKCmVuZAoKCgotLS0gU2VuZCBhIG1lc3NhZ2UgdG8gYSB0YXJnZXQgcHJvY2VzcwoKLS0gQGZ1bmN0aW9uIFNlbmQKCi0tIEB0cGFyYW0ge3RhYmxlfSBtc2cgVGhlIG1lc3NhZ2UgdG8gc2VuZAoKZnVuY3Rpb24gU2VuZChtc2cpCgogIGlmIG5vdCBtc2cuVGFyZ2V0IHRoZW4KCiAgICBwcmludCgiV0FSTjogTm8gdGFyZ2V0IHNwZWNpZmllZCBmb3IgbWVzc2FnZS4gRGF0YSB3aWxsIGJlIHN0b3JlZCwgYnV0IG5vIHByb2Nlc3Mgd2lsbCByZWNlaXZlIGl0LiIpCgogIGVuZAoKICBsb2NhbCByZXN1bHQgPSBhby5zZW5kKG1zZykKCiAgcmV0dXJuIHsKCiAgICBvdXRwdXQgPSAiTWVzc2FnZSBhZGRlZCB0byBvdXRib3giLAoKICAgIHJlY2VpdmUgPSByZXN1bHQucmVjZWl2ZSwKCiAgICBvblJlcGx5ID0gcmVzdWx0Lm9uUmVwbHkKCiAgfQoKZW5kCgoKCi0tLSBTcGF3biBhIG5ldyBwcm9jZXNzCgotLSBAZnVuY3Rpb24gU3Bhd24KCi0tIEB0cGFyYW0gey4uLmFueX0gYXJncyBUaGUgYXJndW1lbnRzIHRvIHBhc3MgdG8gdGhlIHNwYXduIGZ1bmN0aW9uCgpmdW5jdGlvbiBTcGF3biguLi4pCgogIGxvY2FsIG1vZHVsZSwgc3Bhd25Nc2cKCgoKICBpZiBzZWxlY3QoIiMiLCAuLi4pID09IDEgdGhlbgoKICAgIHNwYXduTXNnID0gc2VsZWN0KDEsIC4uLikKCiAgICBtb2R1bGUgPSBhby5fbW9kdWxlCgogIGVsc2UKCiAgICBtb2R1bGUgPSBzZWxlY3QoMSwgLi4uKQoKICAgIHNwYXduTXNnID0gc2VsZWN0KDIsIC4uLikKCiAgZW5kCgoKCiAgaWYgbm90IHNwYXduTXNnIHRoZW4KCiAgICBzcGF3bk1zZyA9IHt9CgogIGVuZAoKICBsb2NhbCByZXN1bHQgPSBhby5zcGF3bihtb2R1bGUsIHNwYXduTXNnKQoKICByZXR1cm4gewoKICAgIG91dHB1dCA9ICJTcGF3biBwcm9jZXNzIHJlcXVlc3QgYWRkZWQgdG8gb3V0Ym94IiwKCiAgICBhZnRlciA9IHJlc3VsdC5hZnRlciwKCiAgICByZWNlaXZlID0gcmVzdWx0LnJlY2VpdmUKCiAgfQoKZW5kCgoKCi0tLSBDYWxscyBIYW5kbGVycy5yZWNlaXZlIHdpdGggdGhlIHByb3ZpZGVkIHBhdHRlcm4gY3JpdGVyaWEsIGF3YWl0aW5nIGEgbWVzc2FnZSB0aGF0IG1hdGNoZXMgdGhlIGNyaXRlcmlhLgoKLS0gQGZ1bmN0aW9uIFJlY2VpdmUKCi0tIEB0cGFyYW0ge3RhYmxlfSBtYXRjaCBUaGUgcGF0dGVybiBjcml0ZXJpYSBmb3IgdGhlIG1lc3NhZ2UKCi0tIEB0cmV0dXJuIHthbnl9IFRoZSByZXN1bHQgb2YgdGhlIG1lc3NhZ2UgaGFuZGxpbmcKCmZ1bmN0aW9uIFJlY2VpdmUobWF0Y2gpCgogIHJldHVybiBIYW5kbGVycy5yZWNlaXZlKG1hdGNoKQoKZW5kCgoKCi0tLSBBc3NpZ25zIGJhc2VkIG9uIHRoZSBhc3NpZ25tZW50IHBhc3NlZC4KCi0tIEBmdW5jdGlvbiBBc3NpZ24KCi0tIEB0cGFyYW0ge3RhYmxlfSBhc3NpZ25tZW50IFRoZSBhc3NpZ25tZW50IHRvIGJlIG1hZGUKCmZ1bmN0aW9uIEFzc2lnbihhc3NpZ25tZW50KQoKICBpZiBub3QgYW8uYXNzaWduIHRoZW4KCiAgICBwcmludCgiQXNzaWduIGlzIG5vdCBpbXBsZW1lbnRlZC4iKQoKICAgIHJldHVybiAiQXNzaWduIGlzIG5vdCBpbXBsZW1lbnRlZC4iCgogIGVuZAoKICBhby5hc3NpZ24oYXNzaWdubWVudCkKCiAgcHJpbnQoIkFzc2lnbm1lbnQgYWRkZWQgdG8gb3V0Ym94LiIpCgogIHJldHVybiAnQXNzaWdubWVudCBhZGRlZCB0byBvdXRib3guJwoKZW5kCgoKClNlZWRlZCA9IFNlZWRlZCBvciBmYWxzZQoKCgotLS0gQ29udmVydHMgYSBzdHJpbmcgdG8gYSBzZWVkIHZhbHVlCgotLSBAbGZ1bmN0aW9uIHN0cmluZ1RvU2VlZAoKLS0gQHRwYXJhbSB7c3RyaW5nfSBzIFRoZSBzdHJpbmcgdG8gY29udmVydCB0byBhIHNlZWQKCi0tIEB0cmV0dXJuIHtudW1iZXJ9IFRoZSBzZWVkIHZhbHVlCgotLSB0aGlzIGlzIGEgdGVtcG9yYXJ5IGFwcHJvYWNoLi4uCgpsb2NhbCBmdW5jdGlvbiBzdHJpbmdUb1NlZWQocykKCiAgbG9jYWwgc2VlZCA9IDAKCiAgZm9yIGkgPSAxLCAjcyBkbwoKICAgICAgbG9jYWwgY2hhciA9IHN0cmluZy5ieXRlKHMsIGkpCgogICAgICBzZWVkID0gc2VlZCArIGNoYXIKCiAgZW5kCgogIHJldHVybiBzZWVkCgplbmQKCgoKLS0tIEluaXRpYWxpemVzIG9yIHVwZGF0ZXMgdGhlIHN0YXRlIG9mIHRoZSBwcm9jZXNzIGJhc2VkIG9uIHRoZSBpbmNvbWluZyBtZXNzYWdlIGFuZCBlbnZpcm9ubWVudC4KCi0tIEBsZnVuY3Rpb24gaW5pdGlhbGl6ZVN0YXRlCgotLSBAdHBhcmFtIHt0YWJsZX0gbXNnIFRoZSBtZXNzYWdlIHRvIGluaXRpYWxpemUgdGhlIHN0YXRlIHdpdGgKCi0tIEB0cGFyYW0ge3RhYmxlfSBlbnYgVGhlIGVudmlyb25tZW50IHRvIGluaXRpYWxpemUgdGhlIHN0YXRlIHdpdGgKCmxvY2FsIGZ1bmN0aW9uIGluaXRpYWxpemVTdGF0ZShtc2csIGVudikKCiAgaWYgbm90IFNlZWRlZCB0aGVuCgogICAgY2hhbmNlLnNlZWQodG9udW1iZXIobXNnWydCbG9jay1IZWlnaHQnXSAuLiBzdHJpbmdUb1NlZWQobXNnLk93bmVyIC4uIG1zZy5Nb2R1bGUgLi4gbXNnLklkKSkpCgogICAgbWF0aC5yYW5kb20gPSBmdW5jdGlvbiAoLi4uKQoKICAgICAgbG9jYWwgYXJncyA9IHsuLi59CgogICAgICBsb2NhbCBuID0gI2FyZ3MKCiAgICAgIGlmIG4gPT0gMCB0aGVuCgogICAgICAgIHJldHVybiBjaGFuY2UucmFuZG9tKCkKCiAgICAgIGVuZAoKICAgICAgaWYgbiA9PSAxIHRoZW4KCiAgICAgICAgcmV0dXJuIGNoYW5jZS5pbnRlZ2VyKDEsIGFyZ3NbMV0pCgogICAgICBlbmQKCiAgICAgIGlmIG4gPT0gMiB0aGVuCgogICAgICAgIHJldHVybiBjaGFuY2UuaW50ZWdlcihhcmdzWzFdLCBhcmdzWzJdKQoKICAgICAgZW5kCgogICAgICByZXR1cm4gY2hhbmNlLnJhbmRvbSgpCgogICAgZW5kCgogICAgU2VlZGVkID0gdHJ1ZQoKICBlbmQKCiAgRXJyb3JzID0gRXJyb3JzIG9yIHt9CgogIEluYm94ID0gSW5ib3ggb3Ige30KCgoKICAtLSB0ZW1wb3JhcnkgZml4IGZvciBTcGF3bgoKICBpZiBub3QgT3duZXIgdGhlbgoKICAgIGxvY2FsIF9mcm9tID0gZmluZE9iamVjdChlbnYuUHJvY2Vzcy5UYWdzLCAibmFtZSIsICJGcm9tLVByb2Nlc3MiKQoKICAgIGlmIF9mcm9tIHRoZW4KCiAgICAgIE93bmVyID0gX2Zyb20udmFsdWUKCiAgICBlbHNlCgogICAgICBPd25lciA9IG1zZy5Gcm9tCgogICAgZW5kCgogIGVuZAoKCgogIGlmIG5vdCBOYW1lIHRoZW4KCiAgICBsb2NhbCBhb3NOYW1lID0gZmluZE9iamVjdChlbnYuUHJvY2Vzcy5UYWdzLCAibmFtZSIsICJOYW1lIikKCiAgICBpZiBhb3NOYW1lIHRoZW4KCiAgICAgIE5hbWUgPSBhb3NOYW1lLnZhbHVlCgogICAgZWxzZQoKICAgICAgTmFtZSA9ICdhb3MnCgogICAgZW5kCgogIGVuZAoKCgplbmQKCgoKLS0tIFByaW50cyB0aGUgdmVyc2lvbiBvZiB0aGUgcHJvY2VzcwoKLS0gQGZ1bmN0aW9uIFZlcnNpb24KCmZ1bmN0aW9uIFZlcnNpb24oKQoKICBwcmludCgidmVyc2lvbjogIiAuLiBwcm9jZXNzLl92ZXJzaW9uKQoKZW5kCgoKCi0tLSBNYWluIGhhbmRsZXIgZm9yIHByb2Nlc3NpbmcgaW5jb21pbmcgbWVzc2FnZXMuIEl0IGluaXRpYWxpemVzIHRoZSBzdGF0ZSwgcHJvY2Vzc2VzIGNvbW1hbmRzLCBhbmQgaGFuZGxlcyBtZXNzYWdlIGV2YWx1YXRpb24gYW5kIGluYm94IG1hbmFnZW1lbnQuCgotLSBAZnVuY3Rpb24gaGFuZGxlCgotLSBAdHBhcmFtIHt0YWJsZX0gbXNnIFRoZSBtZXNzYWdlIHRvIGhhbmRsZQoKLS0gQHRwYXJhbSB7dGFibGV9IF8gVGhlIGVudmlyb25tZW50IHRvIGhhbmRsZSB0aGUgbWVzc2FnZSBpbgoKZnVuY3Rpb24gcHJvY2Vzcy5oYW5kbGUobXNnLCBfKQoKICBsb2NhbCBlbnYgPSBuaWwKCiAgaWYgXy5Qcm9jZXNzIHRoZW4KCiAgICBlbnYgPSBfCgogIGVsc2UKCiAgICBlbnYgPSBfLmVudgoKICBlbmQKCiAgCgogIGFvLmluaXQoZW52KQoKICAtLSByZWxvY2F0ZSBjdXN0b20gdGFncyB0byByb290IG1lc3NhZ2UKCiAgbXNnID0gYW8ubm9ybWFsaXplKG1zZykKCiAgLS0gc2V0IHByb2Nlc3MgaWQKCiAgYW8uaWQgPSBhby5lbnYuUHJvY2Vzcy5JZAoKICBpbml0aWFsaXplU3RhdGUobXNnLCBhby5lbnYpCgogIEhBTkRMRVJfUFJJTlRfTE9HUyA9IHt9CgogIAoKICAtLSBzZXQgb3MudGltZSB0byByZXR1cm4gbXNnLlRpbWVzdGFtcAoKICBvcy50aW1lID0gZnVuY3Rpb24gKCkgcmV0dXJuIG1zZy5UaW1lc3RhbXAgZW5kCgoKCiAgLS0gdGFnaWZ5IG1zZwoKICBtc2cuVGFnQXJyYXkgPSBtc2cuVGFncwoKICBtc2cuVGFncyA9IFRhYihtc2cpCgogIC0tIHRhZ2lmeSBQcm9jZXNzCgogIGFvLmVudi5Qcm9jZXNzLlRhZ0FycmF5ID0gYW8uZW52LlByb2Nlc3MuVGFncwoKICBhby5lbnYuUHJvY2Vzcy5UYWdzID0gVGFiKGFvLmVudi5Qcm9jZXNzKQoKICAtLSBtYWdpYyB0YWJsZSAtIGlmIENvbnRlbnQtVHlwZSA9PSBhcHBsaWNhdGlvbi9qc29uIC0gZGVjb2RlIG1zZy5EYXRhIHRvIGEgVGFibGUKCiAgaWYgbXNnLlRhZ3NbJ0NvbnRlbnQtVHlwZSddIGFuZCBtc2cuVGFnc1snQ29udGVudC1UeXBlJ10gPT0gJ2FwcGxpY2F0aW9uL2pzb24nIHRoZW4KCiAgICBtc2cuRGF0YSA9IHJlcXVpcmUoJ2pzb24nKS5kZWNvZGUobXNnLkRhdGEgb3IgInt9IikKCiAgZW5kCgogIC0tIGluaXQgRXJyb3JzCgogIEVycm9ycyA9IEVycm9ycyBvciB7fQoKICAtLSBjbGVhciBPdXRib3gKCiAgYW8uY2xlYXJPdXRib3goKQoKCgogIC0tIE9ubHkgdHJ1c3QgbWVzc2FnZXMgZnJvbSBhIHNpZ25lZCBvd25lciBvciBhbiBBdXRob3JpdHkKCiAgaWYgbXNnLkZyb20gfj0gbXNnLk93bmVyIGFuZCBub3QgYW8uaXNUcnVzdGVkKG1zZykgdGhlbgoKICAgIGlmIG1zZy5Gcm9tIH49IGFvLmlkIHRoZW4KCiAgICAgIFNlbmQoe1RhcmdldCA9IG1zZy5Gcm9tLCBEYXRhID0gIk1lc3NhZ2UgaXMgbm90IHRydXN0ZWQgYnkgdGhpcyBwcm9jZXNzISJ9KQoKICAgIGVuZAoKICAgIHByaW50KCdNZXNzYWdlIGlzIG5vdCB0cnVzdGVkISBGcm9tOiAnIC4uIG1zZy5Gcm9tIC4uICcgLSBPd25lcjogJyAuLiBtc2cuT3duZXIpCgogICAgcmV0dXJuIGFvLnJlc3VsdCh7IH0pIAoKICBlbmQKCgoKICBpZiBhby5pc0Fzc2lnbm1lbnQobXNnKSBhbmQgbm90IGFvLmlzQXNzaWduYWJsZShtc2cpIHRoZW4KCiAgICBpZiBtc2cuRnJvbSB+PSBhby5pZCB0aGVuCgogICAgICBTZW5kKHtUYXJnZXQgPSBtc2cuRnJvbSwgRGF0YSA9ICJBc3NpZ25tZW50IGlzIG5vdCB0cnVzdGVkIGJ5IHRoaXMgcHJvY2VzcyEifSkKCiAgICBlbmQKCiAgICBwcmludCgnQXNzaWdubWVudCBpcyBub3QgdHJ1c3RlZCEgRnJvbTogJyAuLiBtc2cuRnJvbSAuLiAnIC0gT3duZXI6ICcgLi4gbXNnLk93bmVyKQoKICAgIHJldHVybiBhby5yZXN1bHQoeyB9KQoKICBlbmQKCgoKICBIYW5kbGVycy5hZGQoIl9ldmFsIiwKCiAgICBmdW5jdGlvbiAobXNnKQoKICAgICAgcmV0dXJuIG1zZy5BY3Rpb24gPT0gIkV2YWwiIGFuZCBPd25lciA9PSBtc2cuRnJvbQoKICAgIGVuZCwKCiAgICByZXF1aXJlKCcuZXZhbCcpKGFvKQoKICApCgoKCiAgLS0gQWRkZWQgZm9yIGFvcDYgYm9vdCBsb2FkZXIKCiAgLS0gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vcGVybWF3ZWIvYW9zL2lzc3Vlcy8zNDIKCiAgSGFuZGxlcnMub25jZSgiX2Jvb3QiLAoKICAgIGZ1bmN0aW9uIChtc2cpCgogICAgICByZXR1cm4gbXNnLlRhZ3MuVHlwZSA9PSAiUHJvY2VzcyIgYW5kIE93bmVyID09IG1zZy5Gcm9tIAoKICAgIGVuZCwKCiAgICByZXF1aXJlKCcuYm9vdCcpKGFvKQoKICApCgoKCiAgSGFuZGxlcnMuYXBwZW5kKCJfZGVmYXVsdCIsIGZ1bmN0aW9uICgpIHJldHVybiB0cnVlIGVuZCwgcmVxdWlyZSgnLmRlZmF1bHQnKShpbnNlcnRJbmJveCkpCgoKCiAgLS0gY2FsbCBldmFsdWF0ZSBmcm9tIGhhbmRsZXJzIHBhc3NpbmcgZW52CgogIG1zZy5yZXBseSA9CgogICAgZnVuY3Rpb24ocmVwbHlNc2cpCgogICAgICByZXBseU1zZy5UYXJnZXQgPSBtc2dbIlJlcGx5LVRvIl0gb3IgKHJlcGx5TXNnLlRhcmdldCBvciBtc2cuRnJvbSkKCiAgICAgIHJlcGx5TXNnWyJYLVJlZmVyZW5jZSJdID0gbXNnWyJYLVJlZmVyZW5jZSJdIG9yIG1zZy5SZWZlcmVuY2UKCiAgICAgIHJlcGx5TXNnWyJYLU9yaWdpbiJdID0gbXNnWyJYLU9yaWdpbiJdIG9yIG5pbAoKCgogICAgICByZXR1cm4gYW8uc2VuZChyZXBseU1zZykKCiAgICBlbmQKCiAgCgogIG1zZy5mb3J3YXJkID0KCiAgICBmdW5jdGlvbih0YXJnZXQsIGZvcndhcmRNc2cpCgogICAgICAtLSBDbG9uZSB0aGUgbWVzc2FnZSBhbmQgYWRkIGZvcndhcmRNc2cgdGFncwoKICAgICAgbG9jYWwgbmV3TXNnID0gIGFvLnNhbml0aXplKG1zZykKCiAgICAgIGZvcndhcmRNc2cgPSBmb3J3YXJkTXNnIG9yIHt9CgoKCiAgICAgIGZvciBrLHYgaW4gcGFpcnMoZm9yd2FyZE1zZykgZG8KCiAgICAgICAgbmV3TXNnW2tdID0gdgoKICAgICAgZW5kCgoKCiAgICAgIC0tIFNldCBmb3J3YXJkLXNwZWNpZmljIHRhZ3MKCiAgICAgIG5ld01zZy5UYXJnZXQgPSB0YXJnZXQKCiAgICAgIG5ld01zZ1siUmVwbHktVG8iXSA9IG1zZ1siUmVwbHktVG8iXSBvciBtc2cuRnJvbQoKICAgICAgbmV3TXNnWyJYLVJlZmVyZW5jZSJdID0gbXNnWyJYLVJlZmVyZW5jZSJdIG9yIG1zZy5SZWZlcmVuY2UKCiAgICAgIG5ld01zZ1siWC1PcmlnaW4iXSA9IG1zZ1siWC1PcmlnaW4iXSBvciBtc2cuRnJvbQoKICAgICAgLS0gY2xlYXIgZnVuY3Rpb25zCgogICAgICBuZXdNc2cucmVwbHkgPSBuaWwKCiAgICAgIG5ld01zZy5mb3J3YXJkID0gbmlsIAoKICAgICAgCgogICAgICBhby5zZW5kKG5ld01zZykKCiAgICBlbmQKCgoKICBsb2NhbCBjbyA9IGNvcm91dGluZS5jcmVhdGUoCgogICAgZnVuY3Rpb24oKQoKICAgICAgcmV0dXJuIHBjYWxsKEhhbmRsZXJzLmV2YWx1YXRlLCBtc2csIGVudikKCiAgICBlbmQKCiAgKQoKICBsb2NhbCBfLCBzdGF0dXMsIHJlc3VsdCA9IGNvcm91dGluZS5yZXN1bWUoY28pCgoKCiAgLS0gTWFrZSBzdXJlIHdlIGhhdmUgYSByZWZlcmVuY2UgdG8gdGhlIGNvcm91dGluZSBpZiBpdCB3aWxsIHdha2UgdXAuCgogIC0tIFNpbXVsdGFuZW91c2x5LCBwcnVuZSBhbnkgZGVhZCBjb3JvdXRpbmVzIHNvIHRoYXQgdGhleSBjYW4gYmUKCiAgLS0gZnJlZWQgYnkgdGhlIGdhcmJhZ2UgY29sbGVjdG9yLgoKICB0YWJsZS5pbnNlcnQoSGFuZGxlcnMuY29yb3V0aW5lcywgY28pCgogIGZvciBpLCB4IGluIGlwYWlycyhIYW5kbGVycy5jb3JvdXRpbmVzKSBkbwoKICAgIGlmIGNvcm91dGluZS5zdGF0dXMoeCkgPT0gImRlYWQiIHRoZW4KCiAgICAgIHRhYmxlLnJlbW92ZShIYW5kbGVycy5jb3JvdXRpbmVzLCBpKQoKICAgIGVuZAoKICBlbmQKCgoKICBpZiBub3Qgc3RhdHVzIHRoZW4KCiAgICBpZiAobXNnLkFjdGlvbiA9PSAiRXZhbCIpIHRoZW4KCiAgICAgIHRhYmxlLmluc2VydChFcnJvcnMsIHJlc3VsdCkKCiAgICAgIGxvY2FsIHByaW50RGF0YSA9IHRhYmxlLmNvbmNhdChIQU5ETEVSX1BSSU5UX0xPR1MsICJcbiIpCgogICAgICByZXR1cm4geyBFcnJvciA9IHByaW50RGF0YSAuLiAnXG5cbicgLi4gQ29sb3JzLnJlZCAuLiAnZXJyb3I6XG4nIC4uIENvbG9ycy5yZXNldCAuLiByZXN1bHQgfQoKICAgIGVuZCAKCiAgICAtLXRhYmxlLmluc2VydChFcnJvcnMsIHJlc3VsdCkKCiAgICAtLWFvLm91dGJveC5PdXRwdXQuZGF0YSA9ICIiCgogICAgaWYgbXNnLkFjdGlvbiB0aGVuCgogICAgICBwcmludChDb2xvcnMucmVkIC4uICJFcnJvciIgLi4gQ29sb3JzLmdyYXkgLi4gIiBoYW5kbGluZyBtZXNzYWdlIHdpdGggQWN0aW9uID0gIiAuLiBtc2cuQWN0aW9uICAuLiBDb2xvcnMucmVzZXQpCgogICAgZWxzZQoKICAgICAgcHJpbnQoQ29sb3JzLnJlZCAuLiAiRXJyb3IiIC4uIENvbG9ycy5ncmF5IC4uICIgaGFuZGxpbmcgbWVzc2FnZSAiIC4uIENvbG9ycy5yZXNldCkKCiAgICBlbmQKCiAgICBwcmludChDb2xvcnMuZ3JlZW4gLi4gcmVzdWx0IC4uIENvbG9ycy5yZXNldCkKCiAgICBwcmludCgiXG4iIC4uIENvbG9ycy5ncmF5IC4uIHJlbW92ZUxhc3RUaHJlZUxpbmVzKGRlYnVnLnRyYWNlYmFjaygpKSAuLiBDb2xvcnMucmVzZXQpCgogICAgbG9jYWwgcHJpbnREYXRhID0gdGFibGUuY29uY2F0KEhBTkRMRVJfUFJJTlRfTE9HUywgIlxuIikKCiAgICByZXR1cm4gYW8ucmVzdWx0KHtFcnJvciA9IHByaW50RGF0YSAuLiAnXG5cbicgLi4gQ29sb3JzLnJlZCAuLiAnZXJyb3I6XG4nIC4uIENvbG9ycy5yZXNldCAuLiByZXN1bHQsIE1lc3NhZ2VzID0ge30sIFNwYXducyA9IHt9LCBBc3NpZ25tZW50cyA9IHt9IH0pCgogIGVuZAoKICAKCiAgaWYgbXNnLkFjdGlvbiA9PSAiRXZhbCIgdGhlbgoKICAgIGxvY2FsIHJlc3BvbnNlID0gYW8ucmVzdWx0KHsgCgogICAgICBPdXRwdXQgPSB7CgogICAgICAgIGRhdGEgPSB0YWJsZS5jb25jYXQoSEFORExFUl9QUklOVF9MT0dTLCAiXG4iKSwKCiAgICAgICAgcHJvbXB0ID0gUHJvbXB0KCksCgogICAgICAgIHRlc3QgPSBEdW1wKEhBTkRMRVJfUFJJTlRfTE9HUykKCiAgICAgIH0KCiAgICB9KQoKICAgIEhBTkRMRVJfUFJJTlRfTE9HUyA9IHt9IC0tIGNsZWFyIGxvZ3MKCiAgICByZXR1cm4gcmVzcG9uc2UKCiAgZWxzZWlmIG1zZy5UYWdzLlR5cGUgPT0gIlByb2Nlc3MiIGFuZCBPd25lciA9PSBtc2cuRnJvbSB0aGVuIAoKICAgIGxvY2FsIHJlc3BvbnNlID0gYW8ucmVzdWx0KHsgCgogICAgICBPdXRwdXQgPSB7CgogICAgICAgIGRhdGEgPSB0YWJsZS5jb25jYXQoSEFORExFUl9QUklOVF9MT0dTLCAiXG4iKSwKCiAgICAgICAgcHJvbXB0ID0gUHJvbXB0KCksCgogICAgICAgIHByaW50ID0gdHJ1ZQoKICAgICAgfQoKICAgIH0pCgogICAgSEFORExFUl9QUklOVF9MT0dTID0ge30gLS0gY2xlYXIgbG9ncwoKICAgIHJldHVybiByZXNwb25zZQoKCgogICAgLS0gbG9jYWwgcmVzcG9uc2UgPSBuaWwKCiAgCgogICAgLS0gLS0gZGV0ZWN0IGlmIHRoZXJlIHdhcyBhbnkgb3V0cHV0IGZyb20gdGhlIGJvb3QgbG9hZGVyIGNhbGwKCiAgICAtLSBmb3IgXywgdmFsdWUgaW4gcGFpcnMoSEFORExFUl9QUklOVF9MT0dTKSBkbwoKICAgIC0tICAgaWYgdmFsdWUgfj0gIiIgdGhlbgoKICAgIC0tICAgICAtLSB0aGVyZSB3YXMgb3V0cHV0IGZyb20gdGhlIEJvb3QgTG9hZGVyIGV2YWwgc28gd2Ugd2FudCB0byBwcmludCBpdAoKICAgIC0tICAgICByZXNwb25zZSA9IGFvLnJlc3VsdCh7IE91dHB1dCA9IHsgZGF0YSA9IHRhYmxlLmNvbmNhdChIQU5ETEVSX1BSSU5UX0xPR1MsICJcbiIpLCBwcm9tcHQgPSBQcm9tcHQoKSwgcHJpbnQgPSB0cnVlIH0gfSkKCiAgICAtLSAgICAgYnJlYWsKCiAgICAtLSAgIGVuZAoKICAgIC0tIGVuZAoKICAKCiAgICAtLSBpZiByZXNwb25zZSA9PSBuaWwgdGhlbiAKCiAgICAtLSAgIC0tIHRoZXJlIHdhcyBubyBvdXRwdXQgZnJvbSB0aGUgQm9vdCBMb2FkZXIgZXZhbCwgc28gd2Ugc2hvdWxkbid0IHByaW50IGl0CgogICAgLS0gICByZXNwb25zZSA9IGFvLnJlc3VsdCh7IE91dHB1dCA9IHsgZGF0YSA9ICIiLCBwcm9tcHQgPSBQcm9tcHQoKSB9IH0pCgogICAgLS0gZW5kCgoKCiAgICAtLSBIQU5ETEVSX1BSSU5UX0xPR1MgPSB7fSAtLSBjbGVhciBsb2dzCgogICAgLS0gcmV0dXJuIHJlc3BvbnNlCgogIGVsc2UKCiAgICBsb2NhbCByZXNwb25zZSA9IGFvLnJlc3VsdCh7IE91dHB1dCA9IHsgZGF0YSA9IHRhYmxlLmNvbmNhdChIQU5ETEVSX1BSSU5UX0xPR1MsICJcbiIpLCBwcm9tcHQgPSBQcm9tcHQoKSwgcHJpbnQgPSB0cnVlIH0gfSkKCiAgICBIQU5ETEVSX1BSSU5UX0xPR1MgPSB7fSAtLSBjbGVhciBsb2dzCgogICAgcmV0dXJuIHJlc3BvbnNlCgogIGVuZAoKZW5kCgoKCnJldHVybiBwcm9jZXNzCgBCkN4IC7F+LS0tIFRoZSBTdHJpbmdpZnkgbW9kdWxlIHByb3ZpZGVzIHV0aWxpdGllcyBmb3IgZm9ybWF0dGluZyBhbmQgZGlzcGxheWluZyBMdWEgdGFibGVzIGluIGEgbW9yZSByZWFkYWJsZSBtYW5uZXIuIFJldHVybnMgdGhlIHN0cmluZ2lmeSB0YWJsZS4KCi0tIEBtb2R1bGUgc3RyaW5naWZ5CgoKCi0tLSBUaGUgc3RyaW5naWZ5IHRhYmxlCgotLSBAdGFibGUgc3RyaW5naWZ5CgotLSBAZmllbGQgX3ZlcnNpb24gVGhlIHZlcnNpb24gbnVtYmVyIG9mIHRoZSBzdHJpbmdpZnkgbW9kdWxlCgotLSBAZmllbGQgaXNTaW1wbGVBcnJheSBUaGUgaXNTaW1wbGVBcnJheSBmdW5jdGlvbgoKLS0gQGZpZWxkIGZvcm1hdCBUaGUgZm9ybWF0IGZ1bmN0aW9uCgpsb2NhbCBzdHJpbmdpZnkgPSB7IF92ZXJzaW9uID0gIjAuMC4xIiB9CgoKCi0tIEFOU0kgY29sb3IgY29kZXMKCmxvY2FsIGNvbG9ycyA9IHsKCiAgcmVkID0gIlwyN1szMW0iLAoKICBncmVlbiA9ICJcMjdbMzJtIiwKCiAgYmx1ZSA9ICJcMjdbMzRtIiwKCiAgcmVzZXQgPSAiXDI3WzBtIgoKfQoKCgotLS0gQ2hlY2tzIGlmIGEgdGFibGUgaXMgYSBzaW1wbGUgYXJyYXkgKGkuZS4sIGFuIGFycmF5IHdpdGggY29uc2VjdXRpdmUgbnVtZXJpYyBrZXlzIHN0YXJ0aW5nIGZyb20gMSkuCgotLSBAZnVuY3Rpb24gaXNTaW1wbGVBcnJheQoKLS0gQHRwYXJhbSB7dGFibGV9IHRibCBUaGUgdGFibGUgdG8gY2hlY2sKCi0tIEB0cmV0dXJuIHtib29sZWFufSBXaGV0aGVyIHRoZSB0YWJsZSBpcyBhIHNpbXBsZSBhcnJheQoKZnVuY3Rpb24gc3RyaW5naWZ5LmlzU2ltcGxlQXJyYXkodGJsKQoKICBsb2NhbCBhcnJheUluZGV4ID0gMQoKICBmb3IgaywgdiBpbiBwYWlycyh0YmwpIGRvCgogICAgaWYgayB+PSBhcnJheUluZGV4IG9yICh0eXBlKHYpIH49ICJudW1iZXIiIGFuZCB0eXBlKHYpIH49ICJzdHJpbmciKSB0aGVuCgogICAgICByZXR1cm4gZmFsc2UKCiAgICBlbmQKCiAgICBhcnJheUluZGV4ID0gYXJyYXlJbmRleCArIDEKCiAgZW5kCgogIHJldHVybiB0cnVlCgplbmQKCgoKLS0tIEZvcm1hdHMgYSB0YWJsZSBmb3IgZGlzcGxheSwgaGFuZGxpbmcgY2lyY3VsYXIgcmVmZXJlbmNlcyBhbmQgZm9ybWF0dGluZyBzdHJpbmdzIGFuZCB0YWJsZXMgcmVjdXJzaXZlbHkuCgotLSBAZnVuY3Rpb24gZm9ybWF0CgotLSBAdHBhcmFtIHt0YWJsZX0gdGJsIFRoZSB0YWJsZSB0byBmb3JtYXQKCi0tIEB0cGFyYW0ge251bWJlcn0gaW5kZW50IFRoZSBpbmRlbnRhdGlvbiBsZXZlbCAoZGVmYXVsdCBpcyAwKQoKLS0gQHRwYXJhbSB7dGFibGV9IHZpc2l0ZWQgQSB0YWJsZSB0byB0cmFjayB2aXNpdGVkIHRhYmxlcyBhbmQgZGV0ZWN0IGNpcmN1bGFyIHJlZmVyZW5jZXMgKG9wdGlvbmFsKQoKLS0gQHRyZXR1cm4ge3N0cmluZ30gQSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHRhYmxlCgpmdW5jdGlvbiBzdHJpbmdpZnkuZm9ybWF0KHRibCwgaW5kZW50LCB2aXNpdGVkKQoKICBpbmRlbnQgPSBpbmRlbnQgb3IgMAoKICBsb2NhbCB0b0luZGVudCA9IHN0cmluZy5yZXAoIiAiLCBpbmRlbnQpCgogIGxvY2FsIHRvSW5kZW50Q2hpbGQgPSBzdHJpbmcucmVwKCIgIiwgaW5kZW50ICsgMikKCgoKICBsb2NhbCByZXN1bHQgPSB7fQoKICBsb2NhbCBpc0FycmF5ID0gdHJ1ZQoKICBsb2NhbCBhcnJheUluZGV4ID0gMQoKCgogIGlmIHN0cmluZ2lmeS5pc1NpbXBsZUFycmF5KHRibCkgdGhlbgoKICAgIGZvciBfLCB2IGluIGlwYWlycyh0YmwpIGRvCgogICAgICBpZiB0eXBlKHYpID09ICJzdHJpbmciIHRoZW4KCiAgICAgICAgdiA9IGNvbG9ycy5ncmVlbiAuLiAnIicgLi4gdiAuLiAnIicgLi4gY29sb3JzLnJlc2V0CgogICAgICBlbHNlCgogICAgICAgIHYgPSBjb2xvcnMuYmx1ZSAuLiB0b3N0cmluZyh2KSAuLiBjb2xvcnMucmVzZXQKCiAgICAgIGVuZAoKICAgICAgdGFibGUuaW5zZXJ0KHJlc3VsdCwgdikKCiAgICBlbmQKCiAgICByZXR1cm4gInsgIiAuLiB0YWJsZS5jb25jYXQocmVzdWx0LCAiLCAiKSAuLiAiIH0iCgogIGVuZAoKCgogIGZvciBrLCB2IGluIHBhaXJzKHRibCkgZG8KCiAgICBpZiBpc0FycmF5IHRoZW4KCiAgICAgIGlmIGsgPT0gYXJyYXlJbmRleCB0aGVuCgogICAgICAgIGFycmF5SW5kZXggPSBhcnJheUluZGV4ICsgMQoKICAgICAgICBpZiB0eXBlKHYpID09ICJ0YWJsZSIgdGhlbgoKICAgICAgICAgIHYgPSBzdHJpbmdpZnkuZm9ybWF0KHYsIGluZGVudCArIDIpCgogICAgICAgIGVsc2VpZiB0eXBlKHYpID09ICJzdHJpbmciIHRoZW4KCiAgICAgICAgICB2ID0gY29sb3JzLmdyZWVuIC4uICciJyAuLiB2IC4uICciJyAuLiBjb2xvcnMucmVzZXQKCiAgICAgICAgZWxzZQoKICAgICAgICAgIHYgPSBjb2xvcnMuYmx1ZSAuLiB0b3N0cmluZyh2KSAuLiBjb2xvcnMucmVzZXQKCiAgICAgICAgZW5kCgogICAgICAgIHRhYmxlLmluc2VydChyZXN1bHQsIHRvSW5kZW50Q2hpbGQgLi4gdikKCiAgICAgIGVsc2UKCiAgICAgICAgaXNBcnJheSA9IGZhbHNlCgogICAgICAgIHJlc3VsdCA9IHt9CgogICAgICBlbmQKCiAgICBlbmQKCiAgICBpZiBub3QgaXNBcnJheSB0aGVuCgogICAgICBpZiB0eXBlKHYpID09ICJ0YWJsZSIgdGhlbgoKICAgICAgICB2aXNpdGVkID0gdmlzaXRlZCBvciB7fQoKICAgICAgICBpZiB2aXNpdGVkW3ZdIHRoZW4KCiAgICAgICAgICAgIHJldHVybiAiPGNpcmN1bGFyIHJlZmVyZW5jZT4iCgogICAgICAgIGVuZAoKICAgICAgICB2aXNpdGVkW3ZdID0gdHJ1ZQoKCgogICAgICAgIHYgPSBzdHJpbmdpZnkuZm9ybWF0KHYsIGluZGVudCArIDIsIHZpc2l0ZWQpCgogICAgICBlbHNlaWYgdHlwZSh2KSA9PSAic3RyaW5nIiB0aGVuCgogICAgICAgIHYgPSBjb2xvcnMuZ3JlZW4gLi4gJyInIC4uIHYgLi4gJyInIC4uIGNvbG9ycy5yZXNldAoKICAgICAgZWxzZQoKICAgICAgICB2ID0gY29sb3JzLmJsdWUgLi4gdG9zdHJpbmcodikgLi4gY29sb3JzLnJlc2V0CgogICAgICBlbmQKCiAgICAgIGsgPSBjb2xvcnMucmVkIC4uIGsgLi4gY29sb3JzLnJlc2V0CgogICAgICB0YWJsZS5pbnNlcnQocmVzdWx0LCB0b0luZGVudENoaWxkIC4uIGsgLi4gIiA9ICIgLi4gdikKCiAgICBlbmQKCiAgZW5kCgoKCiAgbG9jYWwgcHJlZml4ID0gaXNBcnJheSBhbmQgIntcbiIgb3IgIntcbiAiCgogIGxvY2FsIHN1ZmZpeCA9IGlzQXJyYXkgYW5kICJcbiIgLi4gdG9JbmRlbnQgLi4gIiB9IiBvciAiXG4iIC4uIHRvSW5kZW50IC4uICJ9IgoKICBsb2NhbCBzZXBhcmF0b3IgPSBpc0FycmF5IGFuZCAiLFxuIiBvciAiLFxuICIKCiAgcmV0dXJuIHByZWZpeCAuLiB0YWJsZS5jb25jYXQocmVzdWx0LCBzZXBhcmF0b3IpIC4uIHN1ZmZpeAoKZW5kCgoKCnJldHVybiBzdHJpbmdpZnkKAAAAAAAAAC0tLSBUaGUgVXRpbHMgbW9kdWxlIHByb3ZpZGVzIGEgY29sbGVjdGlvbiBvZiB1dGlsaXR5IGZ1bmN0aW9ucyBmb3IgZnVuY3Rpb25hbCBwcm9ncmFtbWluZyBpbiBMdWEuIEl0IGluY2x1ZGVzIGZ1bmN0aW9ucyBmb3IgYXJyYXkgbWFuaXB1bGF0aW9uIHN1Y2ggYXMgY29uY2F0ZW5hdGlvbiwgbWFwcGluZywgcmVkdWN0aW9uLCBmaWx0ZXJpbmcsIGFuZCBmaW5kaW5nIGVsZW1lbnRzLCBhcyB3ZWxsIGFzIGEgcHJvcGVydHkgZXF1YWxpdHkgY2hlY2tlci4KCi0tIEBtb2R1bGUgdXRpbHMKCgoKLS0tIFRoZSB1dGlscyB0YWJsZQoKLS0gQHRhYmxlIHV0aWxzCgotLSBAZmllbGQgX3ZlcnNpb24gVGhlIHZlcnNpb24gbnVtYmVyIG9mIHRoZSB1dGlscyBtb2R1bGUKCi0tIEBmaWVsZCBtYXRjaGVzUGF0dGVybiBUaGUgbWF0Y2hlc1BhdHRlcm4gZnVuY3Rpb24KCi0tIEBmaWVsZCBtYXRjaGVzU3BlYyBUaGUgbWF0Y2hlc1NwZWMgZnVuY3Rpb24KCi0tIEBmaWVsZCBjdXJyeSBUaGUgY3VycnkgZnVuY3Rpb24KCi0tIEBmaWVsZCBjb25jYXQgVGhlIGNvbmNhdCBmdW5jdGlvbgoKLS0gQGZpZWxkIHJlZHVjZSBUaGUgcmVkdWNlIGZ1bmN0aW9uCgotLSBAZmllbGQgbWFwIFRoZSBtYXAgZnVuY3Rpb24KCi0tIEBmaWVsZCBmaWx0ZXIgVGhlIGZpbHRlciBmdW5jdGlvbgoKLS0gQGZpZWxkIGZpbmQgVGhlIGZpbmQgZnVuY3Rpb24KCi0tIEBmaWVsZCBwcm9wRXEgVGhlIHByb3BFcSBmdW5jdGlvbgoKLS0gQGZpZWxkIHJldmVyc2UgVGhlIHJldmVyc2UgZnVuY3Rpb24KCi0tIEBmaWVsZCBjb21wb3NlIFRoZSBjb21wb3NlIGZ1bmN0aW9uCgotLSBAZmllbGQgcHJvcCBUaGUgcHJvcCBmdW5jdGlvbgoKLS0gQGZpZWxkIGluY2x1ZGVzIFRoZSBpbmNsdWRlcyBmdW5jdGlvbgoKLS0gQGZpZWxkIGtleXMgVGhlIGtleXMgZnVuY3Rpb24KCi0tIEBmaWVsZCB2YWx1ZXMgVGhlIHZhbHVlcyBmdW5jdGlvbgoKbG9jYWwgdXRpbHMgPSB7IF92ZXJzaW9uID0gIjAuMC41IiB9CgoKCi0tLSBHaXZlbiBhIHBhdHRlcm4sIGEgdmFsdWUsIGFuZCBhIG1lc3NhZ2UsIHJldHVybnMgd2hldGhlciB0aGVyZSBpcyBhIHBhdHRlcm4gbWF0Y2guCgotLSBAdXNhZ2UgdXRpbHMubWF0Y2hlc1BhdHRlcm4ocGF0dGVybiwgdmFsdWUsIG1zZykKCi0tIEBwYXJhbSBwYXR0ZXJuIFRoZSBwYXR0ZXJuIHRvIG1hdGNoCgotLSBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrIGZvciBpbiB0aGUgcGF0dGVybgoKLS0gQHBhcmFtIG1zZyBUaGUgbWVzc2FnZSB0byBjaGVjayBmb3IgdGhlIHBhdHRlcm4KCi0tIEB0cmV0dXJuIHtib29sZWFufSBXaGV0aGVyIHRoZXJlIGlzIGEgcGF0dGVybiBtYXRjaAoKZnVuY3Rpb24gdXRpbHMubWF0Y2hlc1BhdHRlcm4ocGF0dGVybiwgdmFsdWUsIG1zZykKCiAgLS0gSWYgdGhlIGtleSBpcyBub3QgaW4gdGhlIG1lc3NhZ2UsIHRoZW4gaXQgZG9lcyBub3QgbWF0Y2gKCiAgaWYgKG5vdCBwYXR0ZXJuKSB0aGVuCgogICAgcmV0dXJuIGZhbHNlCgogIGVuZAoKICAtLSBpZiB0aGUgcGF0dGVybk1hdGNoU3BlYyBpcyBhIHdpbGRjYXJkLCB0aGVuIGl0IGFsd2F5cyBtYXRjaGVzCgogIGlmIHBhdHRlcm4gPT0gJ18nIHRoZW4KCiAgICByZXR1cm4gdHJ1ZQoKICBlbmQKCiAgLS0gaWYgdGhlIHBhdHRlcm5NYXRjaFNwZWMgaXMgYSBmdW5jdGlvbiwgdGhlbiBpdCBpcyBleGVjdXRlZCBvbiB0aGUgdGFnIHZhbHVlCgogIGlmIHR5cGUocGF0dGVybikgPT0gImZ1bmN0aW9uIiB0aGVuCgogICAgaWYgcGF0dGVybih2YWx1ZSwgbXNnKSB0aGVuCgogICAgICByZXR1cm4gdHJ1ZQoKICAgIGVsc2UKCiAgICAgIHJldHVybiBmYWxzZQoKICAgIGVuZAoKICBlbmQKCiAgCgogIC0tIGlmIHRoZSBwYXR0ZXJuTWF0Y2hTcGVjIGlzIGEgc3RyaW5nLCBjaGVjayBpdCBmb3Igc3BlY2lhbCBzeW1ib2xzIChsZXNzIGAtYCBhbG9uZSkKCiAgLS0gYW5kIGV4YWN0IHN0cmluZyBtYXRjaCBtb2RlCgogIGlmICh0eXBlKHBhdHRlcm4pID09ICdzdHJpbmcnKSB0aGVuCgogICAgaWYgc3RyaW5nLm1hdGNoKHBhdHRlcm4sICJbJV4lJCUoJSklJSUuJVslXSUqJSslP10iKSB0aGVuCgogICAgICBpZiBzdHJpbmcubWF0Y2godmFsdWUsIHBhdHRlcm4pIHRoZW4KCiAgICAgICAgcmV0dXJuIHRydWUKCiAgICAgIGVuZAoKICAgIGVsc2UKCiAgICAgIGlmIHZhbHVlID09IHBhdHRlcm4gdGhlbgoKICAgICAgICByZXR1cm4gdHJ1ZQoKICAgICAgZW5kCgogICAgZW5kCgogIGVuZAoKCgogIC0tIGlmIHRoZSBwYXR0ZXJuIGlzIGEgdGFibGUsIHJlY3Vyc2l2ZWx5IGNoZWNrIGlmIGFueSBvZiBpdHMgc3ViLXBhdHRlcm5zIG1hdGNoCgogIGlmIHR5cGUocGF0dGVybikgPT0gJ3RhYmxlJyB0aGVuCgogICAgZm9yIF8sIHN1YlBhdHRlcm4gaW4gcGFpcnMocGF0dGVybikgZG8KCiAgICAgIGlmIHV0aWxzLm1hdGNoZXNQYXR0ZXJuKHN1YlBhdHRlcm4sIHZhbHVlLCBtc2cpIHRoZW4KCiAgICAgICAgcmV0dXJuIHRydWUKCiAgICAgIGVuZAoKICAgIGVuZAoKICBlbmQKCgoKICByZXR1cm4gZmFsc2UKCmVuZAoKCgotLS0gR2l2ZW4gYSBtZXNzYWdlIGFuZCBhIHNwZWMsIHJldHVybnMgd2hldGhlciB0aGVyZSBpcyBhIHNwZWMgbWF0Y2guCgotLSBAdXNhZ2UgdXRpbHMubWF0Y2hlc1NwZWMobXNnLCBzcGVjKQoKLS0gQHBhcmFtIG1zZyBUaGUgbWVzc2FnZSB0byBjaGVjayBmb3IgdGhlIHNwZWMKCi0tIEBwYXJhbSBzcGVjIFRoZSBzcGVjIHRvIGNoZWNrIGZvciBpbiB0aGUgbWVzc2FnZQoKLS0gQHRyZXR1cm4ge2Jvb2xlYW59IFdoZXRoZXIgdGhlcmUgaXMgYSBzcGVjIG1hdGNoCgpmdW5jdGlvbiB1dGlscy5tYXRjaGVzU3BlYyhtc2csIHNwZWMpCgogIGlmIHR5cGUoc3BlYykgPT0gJ2Z1bmN0aW9uJyB0aGVuCgogICAgcmV0dXJuIHNwZWMobXNnKQoKICAtLSBJZiB0aGUgc3BlYyBpcyBhIHRhYmxlLCBzdGVwIHRocm91Z2ggZXZlcnkga2V5L3ZhbHVlIHBhaXIgaW4gdGhlIHBhdHRlcm4gYW5kIGNoZWNrIGlmIHRoZSBtc2cgbWF0Y2hlcwoKICAtLSBTdXBwb3J0ZWQgcGF0dGVybiB0eXBlczoKCiAgLS0gICAtIEV4YWN0IHN0cmluZyBtYXRjaAoKICAtLSAgIC0gTHVhIGdtYXRjaCBzdHJpbmcKCiAgLS0gICAtICdfJyAod2lsZGNhcmQ6IE1lc3NhZ2UgaGFzIHRhZywgYnV0IGNhbiBiZSBhbnkgdmFsdWUpCgogIC0tICAgLSBGdW5jdGlvbiBleGVjdXRpb24gb24gdGhlIHRhZywgb3B0aW9uYWxseSB1c2luZyB0aGUgbXNnIGFzIHRoZSBzZWNvbmQgYXJndW1lbnQKCiAgLS0gICAtIFRhYmxlIG9mIHBhdHRlcm5zLCB3aGVyZSBBTlkgb2YgdGhlIHN1Yi1wYXR0ZXJucyBtYXRjaGluZyB0aGUgdGFnIHdpbGwgcmVzdWx0IGluIGEgbWF0Y2gKCiAgZW5kCgogIGlmIHR5cGUoc3BlYykgPT0gJ3RhYmxlJyB0aGVuCgogICAgZm9yIGtleSwgcGF0dGVybiBpbiBwYWlycyhzcGVjKSBkbwoKICAgICAgaWYgbm90IG1zZ1trZXldIHRoZW4KCiAgICAgICAgcmV0dXJuIGZhbHNlCgogICAgICBlbmQKCiAgICAgIGlmIG5vdCB1dGlscy5tYXRjaGVzUGF0dGVybihwYXR0ZXJuLCBtc2dba2V5XSwgbXNnKSB0aGVuCgogICAgICAgIHJldHVybiBmYWxzZQoKICAgICAgZW5kCgogICAgZW5kCgogICAgcmV0dXJuIHRydWUKCiAgZW5kCgogIGlmIHR5cGUoc3BlYykgPT0gJ3N0cmluZycgYW5kIG1zZy5BY3Rpb24gYW5kIG1zZy5BY3Rpb24gPT0gc3BlYyB0aGVuCgogICAgcmV0dXJuIHRydWUKCiAgZW5kCgogIHJldHVybiBmYWxzZQoKZW5kCgoKCi0tLSBHaXZlbiBhIHRhYmxlLCByZXR1cm5zIHdoZXRoZXIgaXQgaXMgYW4gYXJyYXkuCgotLSBBbiAnYXJyYXknIGlzIGRlZmluZWQgYXMgYSB0YWJsZSB3aXRoIGludGVnZXIga2V5cyBzdGFydGluZyBmcm9tIDEgYW5kCgotLSBoYXZpbmcgbm8gZ2FwcyBiZXR3ZWVuIHRoZSBrZXlzLgoKLS0gQGxmdW5jdGlvbiBpc0FycmF5CgotLSBAcGFyYW0gdGFibGUgVGhlIHRhYmxlIHRvIGNoZWNrCgotLSBAdHJldHVybiB7Ym9vbGVhbn0gV2hldGhlciB0aGUgdGFibGUgaXMgYW4gYXJyYXkKCmxvY2FsIGZ1bmN0aW9uIGlzQXJyYXkodGFibGUpCgogIGlmIHR5cGUodGFibGUpID09ICJ0YWJsZSIgdGhlbgoKICAgICAgbG9jYWwgbWF4SW5kZXggPSAwCgogICAgICBmb3IgaywgdiBpbiBwYWlycyh0YWJsZSkgZG8KCiAgICAgICAgICBpZiB0eXBlKGspIH49ICJudW1iZXIiIG9yIGsgPCAxIG9yIG1hdGguZmxvb3Ioaykgfj0gayB0aGVuCgogICAgICAgICAgICAgIHJldHVybiBmYWxzZSAtLSBJZiB0aGVyZSdzIGEgbm9uLWludGVnZXIga2V5LCBpdCdzIG5vdCBhbiBhcnJheQoKICAgICAgICAgIGVuZAoKICAgICAgICAgIG1heEluZGV4ID0gbWF0aC5tYXgobWF4SW5kZXgsIGspCgogICAgICBlbmQKCiAgICAgIC0tIElmIHRoZSBoaWdoZXN0IG51bWVyaWMgaW5kZXggaXMgZXF1YWwgdG8gdGhlIG51bWJlciBvZiBlbGVtZW50cywgaXQncyBhbiBhcnJheQoKICAgICAgcmV0dXJuIG1heEluZGV4ID09ICN0YWJsZQoKICBlbmQKCiAgcmV0dXJuIGZhbHNlCgplbmQKCgoKLS0tIEN1cnJpZXMgYSBmdW5jdGlvbi4KCi0tIEB0cGFyYW0ge2Z1bmN0aW9ufSBmbiBUaGUgZnVuY3Rpb24gdG8gY3VycnkKCi0tIEB0cGFyYW0ge251bWJlcn0gYXJpdHkgVGhlIGFyaXR5IG9mIHRoZSBmdW5jdGlvbgoKLS0gQHRyZXR1cm4ge2Z1bmN0aW9ufSBUaGUgY3VycmllZCBmdW5jdGlvbgoKdXRpbHMuY3VycnkgPSBmdW5jdGlvbiAoZm4sIGFyaXR5KQoKICBhc3NlcnQodHlwZShmbikgPT0gImZ1bmN0aW9uIiwgImZ1bmN0aW9uIGlzIHJlcXVpcmVkIGFzIGZpcnN0IGFyZ3VtZW50IikKCiAgYXJpdHkgPSBhcml0eSBvciBkZWJ1Zy5nZXRpbmZvKGZuLCAidSIpLm5wYXJhbXMKCiAgaWYgYXJpdHkgPCAyIHRoZW4gcmV0dXJuIGZuIGVuZAoKCgogIHJldHVybiBmdW5jdGlvbiAoLi4uKQoKICAgIGxvY2FsIGFyZ3MgPSB7Li4ufQoKCgogICAgaWYgI2FyZ3MgPj0gYXJpdHkgdGhlbgoKICAgICAgcmV0dXJuIGZuKHRhYmxlLnVucGFjayhhcmdzKSkKCiAgICBlbHNlCgogICAgICByZXR1cm4gdXRpbHMuY3VycnkoZnVuY3Rpb24gKC4uLikKCiAgICAgICAgcmV0dXJuIGZuKHRhYmxlLnVucGFjayhhcmdzKSwgIC4uLikKCiAgICAgIGVuZCwgYXJpdHkgLSAjYXJncykKCiAgICBlbmQKCiAgZW5kCgplbmQKCgoKLS0tIENvbmNhdCB0d28gQXJyYXkgVGFibGVzCgotLSBAZnVuY3Rpb24gY29uY2F0CgotLSBAdXNhZ2UgdXRpbHMuY29uY2F0KGEpKGIpCgotLSBAdXNhZ2UgdXRpbHMuY29uY2F0KHsxLCAyfSkoezMsIDR9KSAtLT4gezEsIDIsIDMsIDR9CgotLSBAdHBhcmFtIHt0YWJsZTxBcnJheT59IGEgVGhlIGZpcnN0IGFycmF5CgotLSBAdHBhcmFtIHt0YWJsZTxBcnJheT59IGIgVGhlIHNlY29uZCBhcnJheQoKLS0gQHRyZXR1cm4ge3RhYmxlPEFycmF5Pn0gVGhlIGNvbmNhdGVuYXRlZCBhcnJheQoKdXRpbHMuY29uY2F0ID0gdXRpbHMuY3VycnkoZnVuY3Rpb24gKGEsIGIpCgogIGFzc2VydCh0eXBlKGEpID09ICJ0YWJsZSIsICJmaXJzdCBhcmd1bWVudCBzaG91bGQgYmUgYSB0YWJsZSB0aGF0IGlzIGFuIGFycmF5IikKCiAgYXNzZXJ0KHR5cGUoYikgPT0gInRhYmxlIiwgInNlY29uZCBhcmd1bWVudCBzaG91bGQgYmUgYSB0YWJsZSB0aGF0IGlzIGFuIGFycmF5IikKCiAgYXNzZXJ0KGlzQXJyYXkoYSksICJmaXJzdCBhcmd1bWVudCBzaG91bGQgYmUgYSB0YWJsZSIpCgogIGFzc2VydChpc0FycmF5KGIpLCAic2Vjb25kIGFyZ3VtZW50IHNob3VsZCBiZSBhIHRhYmxlIikKCgoKICBsb2NhbCByZXN1bHQgPSB7fQoKICBmb3IgaSA9IDEsICNhIGRvCgogICAgICByZXN1bHRbI3Jlc3VsdCArIDFdID0gYVtpXQoKICBlbmQKCiAgZm9yIGkgPSAxLCAjYiBkbwoKICAgICAgcmVzdWx0WyNyZXN1bHQgKyAxXSA9IGJbaV0KCiAgZW5kCgogIHJldHVybiByZXN1bHQKCmVuZCwgMikKCgoKLS0tIEFwcGxpZXMgYSBmdW5jdGlvbiB0byBlYWNoIGVsZW1lbnQgb2YgYSB0YWJsZSwgcmVkdWNpbmcgaXQgdG8gYSBzaW5nbGUgdmFsdWUuCgotLSBAZnVuY3Rpb24gdXRpbHMucmVkdWNlCgotLSBAdXNhZ2UgdXRpbHMucmVkdWNlKGZuKShpbml0aWFsKSh0KQoKLS0gQHVzYWdlIHV0aWxzLnJlZHVjZShmdW5jdGlvbihhY2MsIHgpIHJldHVybiBhY2MgKyB4IGVuZCkoMCkoezEsIDIsIDN9KSAtLT4gNgoKLS0gQHRwYXJhbSB7ZnVuY3Rpb259IGZuIFRoZSBmdW5jdGlvbiB0byBhcHBseQoKLS0gQHBhcmFtIGluaXRpYWwgVGhlIGluaXRpYWwgdmFsdWUKCi0tIEB0cGFyYW0ge3RhYmxlPEFycmF5Pn0gdCBUaGUgdGFibGUgdG8gcmVkdWNlCgotLSBAcmV0dXJuIFRoZSByZWR1Y2VkIHZhbHVlCgp1dGlscy5yZWR1Y2UgPSB1dGlscy5jdXJyeShmdW5jdGlvbiAoZm4sIGluaXRpYWwsIHQpCgogIGFzc2VydCh0eXBlKGZuKSA9PSAiZnVuY3Rpb24iLCAiZmlyc3QgYXJndW1lbnQgc2hvdWxkIGJlIGEgZnVuY3Rpb24gdGhhdCBhY2NlcHRzIChyZXN1bHQsIHZhbHVlLCBrZXkpIikKCiAgYXNzZXJ0KHR5cGUodCkgPT0gInRhYmxlIiBhbmQgaXNBcnJheSh0KSwgInRoaXJkIGFyZ3VtZW50IHNob3VsZCBiZSBhIHRhYmxlIHRoYXQgaXMgYW4gYXJyYXkiKQoKICBsb2NhbCByZXN1bHQgPSBpbml0aWFsCgogIGZvciBrLCB2IGluIHBhaXJzKHQpIGRvCgogICAgaWYgcmVzdWx0ID09IG5pbCB0aGVuCgogICAgICByZXN1bHQgPSB2CgogICAgZWxzZQoKICAgICAgcmVzdWx0ID0gZm4ocmVzdWx0LCB2LCBrKQoKICAgIGVuZAoKICBlbmQKCiAgcmV0dXJuIHJlc3VsdAoKZW5kLCAzKQoKCgotLS0gQXBwbGllcyBhIGZ1bmN0aW9uIHRvIGVhY2ggZWxlbWVudCBvZiBhbiBhcnJheSB0YWJsZSwgbWFwcGluZyBpdCB0byBhIG5ldyB2YWx1ZS4KCi0tIEBmdW5jdGlvbiB1dGlscy5tYXAKCi0tIEB1c2FnZSB1dGlscy5tYXAoZm4pKHQpCgotLSBAdXNhZ2UgdXRpbHMubWFwKGZ1bmN0aW9uKHgpIHJldHVybiB4ICogMiBlbmQpKHsxLCAyLCAzfSkgLS0+IHsyLCA0LCA2fQoKLS0gQHRwYXJhbSB7ZnVuY3Rpb259IGZuIFRoZSBmdW5jdGlvbiB0byBhcHBseSB0byBlYWNoIGVsZW1lbnQKCi0tIEB0cGFyYW0ge3RhYmxlPEFycmF5Pn0gZGF0YSBUaGUgdGFibGUgdG8gbWFwIG92ZXIKCi0tIEB0cmV0dXJuIHt0YWJsZTxBcnJheT59IFRoZSBtYXBwZWQgdGFibGUKCnV0aWxzLm1hcCA9IHV0aWxzLmN1cnJ5KGZ1bmN0aW9uIChmbiwgZGF0YSkKCiAgYXNzZXJ0KHR5cGUoZm4pID09ICJmdW5jdGlvbiIsICJmaXJzdCBhcmd1bWVudCBzaG91bGQgYmUgYSB1bmFyeSBmdW5jdGlvbiIpCgogIGFzc2VydCh0eXBlKGRhdGEpID09ICJ0YWJsZSIgYW5kIGlzQXJyYXkoZGF0YSksICJzZWNvbmQgYXJndW1lbnQgc2hvdWxkIGJlIGFuIEFycmF5IikKCgoKICBsb2NhbCBmdW5jdGlvbiBtYXAgKHJlc3VsdCwgdiwgaykKCiAgICByZXN1bHRba10gPSBmbih2LCBrKQoKICAgIHJldHVybiByZXN1bHQKCiAgZW5kCgoKCiAgcmV0dXJuIHV0aWxzLnJlZHVjZShtYXAsIHt9LCBkYXRhKQoKZW5kLCAyKQoKCgotLS0gRmlsdGVycyBhbiBhcnJheSB0YWJsZSBiYXNlZCBvbiBhIHByZWRpY2F0ZSBmdW5jdGlvbi4KCi0tIEBmdW5jdGlvbiB1dGlscy5maWx0ZXIKCi0tIEB1c2FnZSB1dGlscy5maWx0ZXIoZm4pKHQpCgotLSBAdXNhZ2UgdXRpbHMuZmlsdGVyKGZ1bmN0aW9uKHgpIHJldHVybiB4ID4gMSBlbmQpKHsxLCAyLCAzfSkgLS0+IHsyLDN9CgotLSBAdHBhcmFtIHtmdW5jdGlvbn0gZm4gVGhlIHByZWRpY2F0ZSBmdW5jdGlvbiB0byBkZXRlcm1pbmUgaWYgYW4gZWxlbWVudCBzaG91bGQgYmUgaW5jbHVkZWQuCgotLSBAdHBhcmFtIHt0YWJsZTxBcnJheT59IGRhdGEgVGhlIGFycmF5IHRvIGZpbHRlcgoKLS0gQHRyZXR1cm4ge3RhYmxlPEFycmF5Pn0gVGhlIGZpbHRlcmVkIHRhYmxlCgp1dGlscy5maWx0ZXIgPSB1dGlscy5jdXJyeShmdW5jdGlvbiAoZm4sIGRhdGEpCgogIGFzc2VydCh0eXBlKGZuKSA9PSAiZnVuY3Rpb24iLCAiZmlyc3QgYXJndW1lbnQgc2hvdWxkIGJlIGEgdW5hcnkgZnVuY3Rpb24iKQoKICBhc3NlcnQodHlwZShkYXRhKSA9PSAidGFibGUiIGFuZCBpc0FycmF5KGRhdGEpLCAic2Vjb25kIGFyZ3VtZW50IHNob3VsZCBiZSBhbiBBcnJheSIpCgoKCiAgbG9jYWwgZnVuY3Rpb24gZmlsdGVyIChyZXN1bHQsIHYsIF9rKQoKICAgIGlmIGZuKHYpIHRoZW4KCiAgICAgIHRhYmxlLmluc2VydChyZXN1bHQsIHYpCgogICAgZW5kCgogICAgcmV0dXJuIHJlc3VsdAoKICBlbmQKCgoKICByZXR1cm4gdXRpbHMucmVkdWNlKGZpbHRlcix7fSwgZGF0YSkKCmVuZCwgMikKCgoKLS0tIEZpbmRzIHRoZSBmaXJzdCBlbGVtZW50IGluIGFuIGFycmF5IHRhYmxlIHRoYXQgc2F0aXNmaWVzIGEgcHJlZGljYXRlIGZ1bmN0aW9uLgoKLS0gQGZ1bmN0aW9uIHV0aWxzLmZpbmQKCi0tIEB1c2FnZSB1dGlscy5maW5kKGZuKSh0KQoKLS0gQHVzYWdlIHV0aWxzLmZpbmQoZnVuY3Rpb24oeCkgcmV0dXJuIHggPiAxIGVuZCkoezEsIDIsIDN9KSAtLT4gMgoKLS0gQHRwYXJhbSB7ZnVuY3Rpb259IGZuIFRoZSBwcmVkaWNhdGUgZnVuY3Rpb24gdG8gZGV0ZXJtaW5lIGlmIGFuIGVsZW1lbnQgc2hvdWxkIGJlIGluY2x1ZGVkLgoKLS0gQHRwYXJhbSB7dGFibGU8QXJyYXk+fSB0IFRoZSBhcnJheSB0YWJsZSB0byBzZWFyY2gKCi0tIEB0cmV0dXJuIFRoZSBmaXJzdCBlbGVtZW50IHRoYXQgc2F0aXNmaWVzIHRoZSBwcmVkaWNhdGUgZnVuY3Rpb24KCnV0aWxzLmZpbmQgPSB1dGlscy5jdXJyeShmdW5jdGlvbiAoZm4sIHQpCgogIGFzc2VydCh0eXBlKGZuKSA9PSAiZnVuY3Rpb24iLCAiZmlyc3QgYXJndW1lbnQgc2hvdWxkIGJlIGEgdW5hcnkgZnVuY3Rpb24iKQoKICBhc3NlcnQodHlwZSh0KSA9PSAidGFibGUiLCAic2Vjb25kIGFyZ3VtZW50IHNob3VsZCBiZSBhIHRhYmxlIHRoYXQgaXMgYW4gYXJyYXkiKQoKICBmb3IgXywgdiBpbiBwYWlycyh0KSBkbwoKICAgIGlmIGZuKHYpIHRoZW4KCiAgICAgIHJldHVybiB2CgogICAgZW5kCgogIGVuZAoKZW5kLCAyKQoKCgotLS0gQ2hlY2tzIGlmIGEgcHJvcGVydHkgb2YgYW4gb2JqZWN0IGlzIGVxdWFsIHRvIGEgdmFsdWUuCgotLSBAZnVuY3Rpb24gdXRpbHMucHJvcEVxCgotLSBAdXNhZ2UgdXRpbHMucHJvcEVxKHByb3BOYW1lKSh2YWx1ZSkob2JqZWN0KQoKLS0gQHVzYWdlIHV0aWxzLnByb3BFcSgibmFtZSIpKCJMdWEiKSh7bmFtZSA9ICJMdWEifSkgLS0+IHRydWUKCi0tIEB0cGFyYW0ge3N0cmluZ30gcHJvcE5hbWUgVGhlIHByb3BlcnR5IG5hbWUgdG8gY2hlY2sKCi0tIEB0cGFyYW0ge3N0cmluZ30gdmFsdWUgVGhlIHZhbHVlIHRvIGNoZWNrIGFnYWluc3QKCi0tIEB0cGFyYW0ge3RhYmxlfSBvYmplY3QgVGhlIG9iamVjdCB0byBjaGVjawoKLS0gQHRyZXR1cm4ge2Jvb2xlYW59IFdoZXRoZXIgdGhlIHByb3BlcnR5IGlzIGVxdWFsIHRvIHRoZSB2YWx1ZQoKdXRpbHMucHJvcEVxID0gdXRpbHMuY3VycnkoZnVuY3Rpb24gKHByb3BOYW1lLCB2YWx1ZSwgb2JqZWN0KQoKICBhc3NlcnQodHlwZShwcm9wTmFtZSkgPT0gInN0cmluZyIsICJmaXJzdCBhcmd1bWVudCBzaG91bGQgYmUgYSBzdHJpbmciKQoKICBhc3NlcnQodHlwZSh2YWx1ZSkgPT0gInN0cmluZyIsICJzZWNvbmQgYXJndW1lbnQgc2hvdWxkIGJlIGEgc3RyaW5nIikKCiAgYXNzZXJ0KHR5cGUob2JqZWN0KSA9PSAidGFibGUiLCAidGhpcmQgYXJndW1lbnQgc2hvdWxkIGJlIGEgdGFibGU8b2JqZWN0PiIpCgogIAoKICByZXR1cm4gb2JqZWN0W3Byb3BOYW1lXSA9PSB2YWx1ZQoKZW5kLCAzKQoKCgotLS0gUmV2ZXJzZXMgYW4gYXJyYXkgdGFibGUuCgotLSBAZnVuY3Rpb24gdXRpbHMucmV2ZXJzZQoKLS0gQHVzYWdlIHV0aWxzLnJldmVyc2UoZGF0YSkKCi0tIEB1c2FnZSB1dGlscy5yZXZlcnNlKHsxLCAyLCAzfSkgLS0+IHszLCAyLCAxfQoKLS0gQHRwYXJhbSB7dGFibGU8QXJyYXk+fSBkYXRhIFRoZSBhcnJheSB0YWJsZSB0byByZXZlcnNlCgotLSBAdHJldHVybiB7dGFibGU8QXJyYXk+fSBUaGUgcmV2ZXJzZWQgYXJyYXkgdGFibGUKCnV0aWxzLnJldmVyc2UgPSBmdW5jdGlvbiAoZGF0YSkKCiAgYXNzZXJ0KHR5cGUoZGF0YSkgPT0gInRhYmxlIiwgImFyZ3VtZW50IG5lZWRzIHRvIGJlIGEgdGFibGUgdGhhdCBpcyBhbiBhcnJheSIpCgogIHJldHVybiB1dGlscy5yZWR1Y2UoCgogICAgZnVuY3Rpb24gKHJlc3VsdCwgdiwgaSkKCiAgICAgIHJlc3VsdFsjZGF0YSAtIGkgKyAxXSA9IHYKCiAgICAgIHJldHVybiByZXN1bHQKCiAgICBlbmQsCgogICAge30sCgogICAgZGF0YQoKICApCgplbmQKCgoKLS0tIENvbXBvc2VzIGEgc2VyaWVzIG9mIGZ1bmN0aW9ucyBpbnRvIGEgc2luZ2xlIGZ1bmN0aW9uLgoKLS0gQGZ1bmN0aW9uIHV0aWxzLmNvbXBvc2UKCi0tIEB1c2FnZSB1dGlscy5jb21wb3NlKGZuMSkoZm4yKShmbjMpKHYpCgotLSBAdXNhZ2UgdXRpbHMuY29tcG9zZShmdW5jdGlvbih4KSByZXR1cm4geCArIDEgZW5kKShmdW5jdGlvbih4KSByZXR1cm4geCAqIDIgZW5kKSgzKSAtLT4gNwoKLS0gQHRwYXJhbSB7ZnVuY3Rpb259IC4uLiBUaGUgZnVuY3Rpb25zIHRvIGNvbXBvc2UKCi0tIEB0cmV0dXJuIHtmdW5jdGlvbn0gVGhlIGNvbXBvc2VkIGZ1bmN0aW9uCgp1dGlscy5jb21wb3NlID0gdXRpbHMuY3VycnkoZnVuY3Rpb24gKC4uLikKCiAgbG9jYWwgbXV0YXRpb25zID0gdXRpbHMucmV2ZXJzZSh7Li4ufSkKCgoKICByZXR1cm4gZnVuY3Rpb24gKHYpCgogICAgbG9jYWwgcmVzdWx0ID0gdgoKICAgIGZvciBfLCBmbiBpbiBwYWlycyhtdXRhdGlvbnMpIGRvCgogICAgICBhc3NlcnQodHlwZShmbikgPT0gImZ1bmN0aW9uIiwgImVhY2ggYXJndW1lbnQgbmVlZHMgdG8gYmUgYSBmdW5jdGlvbiIpCgogICAgICByZXN1bHQgPSBmbihyZXN1bHQpCgogICAgZW5kCgogICAgcmV0dXJuIHJlc3VsdAoKICBlbmQKCmVuZCwgMikKCgoKLS0tIFJldHVybnMgdGhlIHZhbHVlIG9mIGEgcHJvcGVydHkgb2YgYW4gb2JqZWN0LgoKLS0gQGZ1bmN0aW9uIHV0aWxzLnByb3AKCi0tIEB1c2FnZSB1dGlscy5wcm9wKHByb3BOYW1lKShvYmplY3QpCgotLSBAdXNhZ2UgdXRpbHMucHJvcCgibmFtZSIpKHtuYW1lID0gIkx1YSJ9KSAtLT4gIkx1YSIKCi0tIEB0cGFyYW0ge3N0cmluZ30gcHJvcE5hbWUgVGhlIHByb3BlcnR5IG5hbWUgdG8gZ2V0CgotLSBAdHBhcmFtIHt0YWJsZX0gb2JqZWN0IFRoZSBvYmplY3QgdG8gZ2V0IHRoZSBwcm9wZXJ0eSBmcm9tCgotLSBAdHJldHVybiBUaGUgdmFsdWUgb2YgdGhlIHByb3BlcnR5Cgp1dGlscy5wcm9wID0gdXRpbHMuY3VycnkoZnVuY3Rpb24gKHByb3BOYW1lLCBvYmplY3QpIAoKICByZXR1cm4gb2JqZWN0W3Byb3BOYW1lXQoKZW5kLCAyKQoKCgotLS0gQ2hlY2tzIGlmIGFuIGFycmF5IHRhYmxlIGluY2x1ZGVzIGEgdmFsdWUuCgotLSBAZnVuY3Rpb24gdXRpbHMuaW5jbHVkZXMKCi0tIEB1c2FnZSB1dGlscy5pbmNsdWRlcyh2YWwpKHQpCgotLSBAdXNhZ2UgdXRpbHMuaW5jbHVkZXMoMikoezEsIDIsIDN9KSAtLT4gdHJ1ZQoKLS0gQHBhcmFtIHZhbCBUaGUgdmFsdWUgdG8gY2hlY2sgZm9yCgotLSBAdHBhcmFtIHt0YWJsZTxBcnJheT59IHQgVGhlIGFycmF5IHRhYmxlIHRvIGNoZWNrCgotLSBAdHJldHVybiB7Ym9vbGVhbn0gV2hldGhlciB0aGUgdmFsdWUgaXMgaW4gdGhlIGFycmF5IHRhYmxlCgp1dGlscy5pbmNsdWRlcyA9IHV0aWxzLmN1cnJ5KGZ1bmN0aW9uICh2YWwsIHQpCgogIGFzc2VydCh0eXBlKHQpID09ICJ0YWJsZSIsICJhcmd1bWVudCBuZWVkcyB0byBiZSBhIHRhYmxlIikKCiAgYXNzZXJ0KGlzQXJyYXkodCksICJhcmd1bWVudCBzaG91bGQgYmUgYSB0YWJsZSB0aGF0IGlzIGFuIGFycmF5IikKCiAgcmV0dXJuIHV0aWxzLmZpbmQoZnVuY3Rpb24gKHYpIHJldHVybiB2ID09IHZhbCBlbmQsIHQpIH49IG5pbAoKZW5kLCAyKQoKCgotLS0gUmV0dXJucyB0aGUga2V5cyBvZiBhIHRhYmxlLgoKLS0gQHVzYWdlIHV0aWxzLmtleXModCkKCi0tIEB1c2FnZSB1dGlscy5rZXlzKHtuYW1lID0gIkx1YSIsIGFnZSA9IDI1fSkgLS0+IHsibmFtZSIsICJhZ2UifQoKLS0gQHRwYXJhbSB7dGFibGV9IHQgVGhlIHRhYmxlIHRvIGdldCB0aGUga2V5cyBmcm9tCgotLSBAdHJldHVybiB7dGFibGU8QXJyYXk+fSBUaGUga2V5cyBvZiB0aGUgdGFibGUKCnV0aWxzLmtleXMgPSBmdW5jdGlvbiAodCkKCiAgYXNzZXJ0KHR5cGUodCkgPT0gInRhYmxlIiwgImFyZ3VtZW50IG5lZWRzIHRvIGJlIGEgdGFibGUiKQoKICBsb2NhbCBrZXlzID0ge30KCiAgZm9yIGtleSBpbiBwYWlycyh0KSBkbwoKICAgIHRhYmxlLmluc2VydChrZXlzLCBrZXkpCgogIGVuZAoKICByZXR1cm4ga2V5cwoKZW5kCgoKCi0tLSBSZXR1cm5zIHRoZSB2YWx1ZXMgb2YgYSB0YWJsZS4KCi0tIEB1c2FnZSB1dGlscy52YWx1ZXModCkKCi0tIEB1c2FnZSB1dGlscy52YWx1ZXMoe25hbWUgPSAiTHVhIiwgYWdlID0gMjV9KSAtLT4geyJMdWEiLCAyNX0KCi0tIEB0cGFyYW0ge3RhYmxlfSB0IFRoZSB0YWJsZSB0byBnZXQgdGhlIHZhbHVlcyBmcm9tCgotLSBAdHJldHVybiB7dGFibGU8QXJyYXk+fSBUaGUgdmFsdWVzIG9mIHRoZSB0YWJsZQoKdXRpbHMudmFsdWVzID0gZnVuY3Rpb24gKHQpCgogIGFzc2VydCh0eXBlKHQpID09ICJ0YWJsZSIsICJhcmd1bWVudCBuZWVkcyB0byBiZSBhIHRhYmxlIikKCiAgbG9jYWwgdmFsdWVzID0ge30KCiAgZm9yIF8sIHZhbHVlIGluIHBhaXJzKHQpIGRvCgogICAgdGFibGUuaW5zZXJ0KHZhbHVlcywgdmFsdWUpCgogIGVuZAoKICByZXR1cm4gdmFsdWVzCgplbmQKCgoKcmV0dXJuIHV0aWxzCgBC0NwJC7aqBWxvY2FsIHV0aWwgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuaW5pdCIpCgpsb2NhbCBkaWdlc3QgPSByZXF1aXJlKCIuY3J5cHRvLmRpZ2VzdC5pbml0IikKCmxvY2FsIGNpcGhlciA9IHJlcXVpcmUoIi5jcnlwdG8uY2lwaGVyLmluaXQiKQoKbG9jYWwgbWFjID0gcmVxdWlyZSgiLmNyeXB0by5tYWMuaW5pdCIpCgpsb2NhbCBrZGYgPSByZXF1aXJlKCIuY3J5cHRvLmtkZi5pbml0IikKCgoKbG9jYWwgY3J5cHRvID0gewoKICAgIF92ZXJzaW9uID0gIjAuMC4xIiwKCiAgICBkaWdlc3QgPSBkaWdlc3QsCgogICAgdXRpbHMgPSB1dGlsLAoKICAgIGNpcGhlciA9IGNpcGhlciwKCiAgICByYW5kb20gPSBjaXBoZXIuaXNzYWMucmFuZG9tLAoKICAgIG1hYyA9IG1hYywKCiAgICBrZGYgPSBrZGYsCgp9OwoKCgpyZXR1cm4gY3J5cHRvAAAAbG9jYWwgU3RyZWFtID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLnN0cmVhbSIpCgpsb2NhbCBIZXggPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuaGV4IikKCmxvY2FsIEFycmF5ID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLmFycmF5IikKCgoKLS0gQ2lwaGVycwoKbG9jYWwgQUVTMTI4Q2lwaGVyID0gcmVxdWlyZSgiLmNyeXB0by5jaXBoZXIuYWVzMTI4IikKCmxvY2FsIEFFUzE5MkNpcGhlciA9IHJlcXVpcmUoIi5jcnlwdG8uY2lwaGVyLmFlczE5MiIpCgpsb2NhbCBBRVMyNTZDaXBoZXIgPSByZXF1aXJlKCIuY3J5cHRvLmNpcGhlci5hZXMyNTYiKQoKCgotLSBNb2RlcwoKbG9jYWwgQ0JDTW9kZSA9IHJlcXVpcmUoIi5jcnlwdG8uY2lwaGVyLm1vZGUuY2JjIikKCmxvY2FsIEVDQk1vZGUgPSByZXF1aXJlKCIuY3J5cHRvLmNpcGhlci5tb2RlLmVjYiIpCgpsb2NhbCBDRkJNb2RlID0gcmVxdWlyZSgiLmNyeXB0by5jaXBoZXIubW9kZS5jZmIiKQoKbG9jYWwgT0ZCTW9kZSA9IHJlcXVpcmUoIi5jcnlwdG8uY2lwaGVyLm1vZGUub2ZiIikKCmxvY2FsIENUUk1vZGUgPSByZXF1aXJlKCIuY3J5cHRvLmNpcGhlci5tb2RlLmN0ciIpCgoKCi0tIFBhZGRpbmcKCmxvY2FsIFplcm9QYWRkaW5nID0gcmVxdWlyZSgiLmNyeXB0by5wYWRkaW5nLnplcm8iKQoKCgpsb2NhbCBwdWJsaWMgPSB7fQoKCgpsb2NhbCBnZXRCbG9ja0NpcGhlciA9IGZ1bmN0aW9uKGtleUxlbmd0aCkKCiAgICBpZiBrZXlMZW5ndGggPT0gMTI4IHRoZW4KCiAgICAgICAgcmV0dXJuIEFFUzEyOENpcGhlcgoKICAgIGVsc2VpZiBrZXlMZW5ndGggPT0gMTkyIHRoZW4KCiAgICAgICAgcmV0dXJuIEFFUzE5MkNpcGhlcgoKICAgIGVsc2VpZiBrZXlMZW5ndGggPT0gMjU2IHRoZW4KCiAgICAgICAgcmV0dXJuIEFFUzI1NkNpcGhlcgoKICAgIGVsc2VpZiBrZXlMZW5ndGggPT0gbmlsIHRoZW4KCiAgICAgICAgcmV0dXJuIEFFUzEyOENpcGhlcgoKICAgIGVsc2UKCiAgICAgICAgcmV0dXJuIG5pbAoKICAgIGVuZAoKZW5kCgoKCmxvY2FsIGdldE1vZGUgPSBmdW5jdGlvbihtb2RlKQoKICAgIGlmIG1vZGUgPT0gIkNCQyIgdGhlbgoKICAgICAgICByZXR1cm4gQ0JDTW9kZQoKICAgIGVsc2VpZiBtb2RlID09ICJFQ0IiIHRoZW4KCiAgICAgICAgcmV0dXJuIEVDQk1vZGUKCiAgICBlbHNlaWYgbW9kZSA9PSAiQ0ZCIiB0aGVuCgogICAgICAgIHJldHVybiBDRkJNb2RlCgogICAgZWxzZWlmIG1vZGUgPT0gIk9GQiIgdGhlbgoKICAgICAgICByZXR1cm4gT0ZCTW9kZQoKICAgIGVsc2VpZiBtb2RlID09ICJDVFIiIHRoZW4KCiAgICAgICAgcmV0dXJuIENUUk1vZGUKCiAgICBlbHNlCgogICAgICAgIHJldHVybiBuaWwKCiAgICBlbmQKCmVuZAoKCgoKCi0tLSBFbmNyeXB0cyB0aGUgZ2l2ZW4gZGF0YSB1c2luZyBBRVMgZW5jcnlwdGlvbi4KCi0tLSBAcGFyYW0gZGF0YSBzdHJpbmcgLSBUaGUgZGF0YSB0byBiZSBlbmNyeXB0ZWQuCgotLS0gQHBhcmFtIGtleSBzdHJpbmcgLSBUaGUga2V5IHRvIHVzZSBmb3IgZW5jcnlwdGlvbi4KCi0tLSBAcGFyYW0gaXY/IHN0cmluZyAob3B0aW9uYWwpIC0gVGhlIGluaXRpYWxpemF0aW9uIHZlY3RvciB0byB1c2UgZm9yIGVuY3J5cHRpb24uIERlZmF1bHRzIHRvIDE2IG51bGwgYnl0ZXMuCgotLS0gQHBhcmFtIG1vZGU/IHN0cmluZyAob3B0aW9uYWwpIC0gVGhlIG1vZGUgdG8gdXNlIGZvciBlbmNyeXB0aW9uLiBEZWZhdWx0cyB0byAiQ0JDIi4KCi0tLSBAcGFyYW0ga2V5TGVuZ3RoPyBudW1iZXIgKG9wdGlvbmFsKSAtIFRoZSBsZW5ndGggb2YgdGhlIGtleSB0byB1c2UgZm9yIGVuY3J5cHRpb24uIERlZmF1bHRzIHRvIDEyOC4KCi0tLSBAcmV0dXJucyB0YWJsZSAtIEEgdGFibGUgY29udGFpbmluZyB0aGUgZW5jcnlwdGVkIGRhdGEgaW4gYnl0ZXMsIGhleCwgYW5kIHN0cmluZyBmb3JtYXRzLgoKcHVibGljLmVuY3J5cHQgPSBmdW5jdGlvbihkYXRhLCBrZXksIGl2LCBtb2RlLCBrZXlMZW5ndGgpCgogICAgbG9jYWwgZCA9IEFycmF5LmZyb21TdHJpbmcoZGF0YSkKCiAgICBsb2NhbCBrID0gQXJyYXkuZnJvbVN0cmluZyhrZXkpCgogICAgbG9jYWwgX2l2ID0gaXYgfj0gbmlsIGFuZCBBcnJheS5mcm9tU3RyaW5nKGl2KSBvciBBcnJheS5mcm9tSGV4KCIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCIpCgoKCiAgICBsb2NhbCBjaXBoZXJNb2RlID0gZ2V0TW9kZShtb2RlKSBvciBDQkNNb2RlCgogICAgbG9jYWwgYmxvY2tDaXBoZXIgPSBnZXRCbG9ja0NpcGhlcihrZXlMZW5ndGgpIG9yIEFFUzEyOENpcGhlcgoKCgogICAgbG9jYWwgY2lwaGVyID0gY2lwaGVyTW9kZS5DaXBoZXIoKQoKICAgICAgICAuc2V0S2V5KGspCgogICAgICAgIC5zZXRCbG9ja0NpcGhlcihibG9ja0NpcGhlcikKCiAgICAgICAgLnNldFBhZGRpbmcoWmVyb1BhZGRpbmcpOwoKCgoKCiAgICBsb2NhbCBjaXBoZXJPdXRwdXQgPSBjaXBoZXIKCiAgICAgICAgLmluaXQoKQoKICAgICAgICAudXBkYXRlKFN0cmVhbS5mcm9tQXJyYXkoX2l2KSkKCiAgICAgICAgLnVwZGF0ZShTdHJlYW0uZnJvbUFycmF5KGQpKQoKICAgICAgICAuZmluaXNoKCkKCgoKICAgIGxvY2FsIHJlc3VsdHMgPSB7fQoKCgogICAgcmVzdWx0cy5hc0J5dGVzID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gY2lwaGVyT3V0cHV0LmFzQnl0ZXMoKQoKICAgIGVuZAoKCgogICAgcmVzdWx0cy5hc0hleCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIGNpcGhlck91dHB1dC5hc0hleCgpCgogICAgZW5kCgoKCiAgICByZXN1bHRzLmFzU3RyaW5nID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gY2lwaGVyT3V0cHV0LmFzU3RyaW5nKCkKCiAgICBlbmQKCgoKICAgIHJldHVybiByZXN1bHRzCgplbmQKCgoKLS0tIERlY3J5cHRzIHRoZSBnaXZlbiBkYXRhIHVzaW5nIEFFUyBkZWNyeXB0aW9uLgoKLS0tIEBwYXJhbSBjaXBoZXIgc3RyaW5nIC0gVGhlIGhleCBlbmNvZGVkIGNpcGhlciB0byBiZSBkZWNyeXB0ZWQuCgotLS0gQHBhcmFtIGtleSBzdHJpbmcgLSBUaGUga2V5IHRvIHVzZSBmb3IgZGVjcnlwdGlvbi4KCi0tLSBAcGFyYW0gaXY/IHN0cmluZyAob3B0aW9uYWwpIC0gVGhlIGluaXRpYWxpemF0aW9uIHZlY3RvciB0byB1c2UgZm9yIGRlY3J5cHRpb24uIERlZmF1bHRzIHRvIDE2IG51bGwgYnl0ZXMuCgotLS0gQHBhcmFtIG1vZGU/IHN0cmluZyAob3B0aW9uYWwpIC0gVGhlIG1vZGUgdG8gdXNlIGZvciBkZWNyeXB0aW9uLiBEZWZhdWx0cyB0byAiQ0JDIi4KCi0tLSBAcGFyYW0ga2V5TGVuZ3RoPyBudW1iZXIgKG9wdGlvbmFsKSAtIFRoZSBsZW5ndGggb2YgdGhlIGtleSB0byB1c2UgZm9yIGRlY3J5cHRpb24uIERlZmF1bHRzIHRvIDEyOC4KCnB1YmxpYy5kZWNyeXB0ID0gZnVuY3Rpb24oY2lwaGVyLCBrZXksIGl2LCBtb2RlLCBrZXlMZW5ndGgpCgogICAgbG9jYWwgY2lwaGVyVGV4dCA9IEFycmF5LmZyb21IZXgoY2lwaGVyKQoKICAgIGxvY2FsIGsgPSBBcnJheS5mcm9tU3RyaW5nKGtleSkKCiAgICBsb2NhbCBfaXYgPSBpdiB+PSBuaWwgYW5kIEFycmF5LmZyb21TdHJpbmcoaXYpIG9yIEFycmF5LmZyb21IZXgoIjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwIikKCgoKICAgIGxvY2FsIGNpcGhlck1vZGUgPSBnZXRNb2RlKG1vZGUpIG9yIENCQ01vZGUKCiAgICBsb2NhbCBibG9ja0NpcGhlciA9IGdldEJsb2NrQ2lwaGVyKGtleUxlbmd0aCkgb3IgQUVTMTI4Q2lwaGVyCgoKCgoKICAgIGxvY2FsIGRlY2lwaGVyID0gY2lwaGVyTW9kZS5EZWNpcGhlcigpCgogICAgICAgICAgICAuc2V0S2V5KGspCgogICAgICAgICAgICAuc2V0QmxvY2tDaXBoZXIoYmxvY2tDaXBoZXIpCgogICAgICAgICAgICAuc2V0UGFkZGluZyhaZXJvUGFkZGluZyk7CgoKCgoKICAgIGxvY2FsIHBsYWluT3V0cHV0ID0gZGVjaXBoZXIKCiAgICAgICAgLmluaXQoKQoKICAgICAgICAudXBkYXRlKFN0cmVhbS5mcm9tQXJyYXkoX2l2KSkKCiAgICAgICAgLnVwZGF0ZShTdHJlYW0uZnJvbUFycmF5KGNpcGhlclRleHQpKQoKICAgICAgICAuZmluaXNoKCkKCgoKICAgIGxvY2FsIHJlc3VsdHMgPSB7fQoKCgogICAgcmVzdWx0cy5hc0J5dGVzID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gcGxhaW5PdXRwdXQuYXNCeXRlcygpCgogICAgZW5kCgoKCiAgICByZXN1bHRzLmFzSGV4ID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gcGxhaW5PdXRwdXQuYXNIZXgoKQoKICAgIGVuZAoKCgogICAgcmVzdWx0cy5hc1N0cmluZyA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIHBsYWluT3V0cHV0LmFzU3RyaW5nKCkKCiAgICBlbmQKCgoKICAgIHJldHVybiByZXN1bHRzCgplbmQKCgoKCgpyZXR1cm4gcHVibGljCgBsb2NhbCBBcnJheSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5hcnJheSIpOwoKbG9jYWwgQml0ID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLmJpdCIpOwoKCgpsb2NhbCBYT1IgPSBCaXQuYnhvcjsKCgoKbG9jYWwgU0JPWCA9IHsKCiBbMF0gPSAweDYzLCAweDdDLCAweDc3LCAweDdCLCAweEYyLCAweDZCLCAweDZGLCAweEM1LCAweDMwLCAweDAxLCAweDY3LCAweDJCLCAweEZFLCAweEQ3LCAweEFCLCAweDc2LAoKIDB4Q0EsIDB4ODIsIDB4QzksIDB4N0QsIDB4RkEsIDB4NTksIDB4NDcsIDB4RjAsIDB4QUQsIDB4RDQsIDB4QTIsIDB4QUYsIDB4OUMsIDB4QTQsIDB4NzIsIDB4QzAsCgogMHhCNywgMHhGRCwgMHg5MywgMHgyNiwgMHgzNiwgMHgzRiwgMHhGNywgMHhDQywgMHgzNCwgMHhBNSwgMHhFNSwgMHhGMSwgMHg3MSwgMHhEOCwgMHgzMSwgMHgxNSwKCiAweDA0LCAweEM3LCAweDIzLCAweEMzLCAweDE4LCAweDk2LCAweDA1LCAweDlBLCAweDA3LCAweDEyLCAweDgwLCAweEUyLCAweEVCLCAweDI3LCAweEIyLCAweDc1LAoKIDB4MDksIDB4ODMsIDB4MkMsIDB4MUEsIDB4MUIsIDB4NkUsIDB4NUEsIDB4QTAsIDB4NTIsIDB4M0IsIDB4RDYsIDB4QjMsIDB4MjksIDB4RTMsIDB4MkYsIDB4ODQsCgogMHg1MywgMHhEMSwgMHgwMCwgMHhFRCwgMHgyMCwgMHhGQywgMHhCMSwgMHg1QiwgMHg2QSwgMHhDQiwgMHhCRSwgMHgzOSwgMHg0QSwgMHg0QywgMHg1OCwgMHhDRiwKCiAweEQwLCAweEVGLCAweEFBLCAweEZCLCAweDQzLCAweDRELCAweDMzLCAweDg1LCAweDQ1LCAweEY5LCAweDAyLCAweDdGLCAweDUwLCAweDNDLCAweDlGLCAweEE4LAoKIDB4NTEsIDB4QTMsIDB4NDAsIDB4OEYsIDB4OTIsIDB4OUQsIDB4MzgsIDB4RjUsIDB4QkMsIDB4QjYsIDB4REEsIDB4MjEsIDB4MTAsIDB4RkYsIDB4RjMsIDB4RDIsCgogMHhDRCwgMHgwQywgMHgxMywgMHhFQywgMHg1RiwgMHg5NywgMHg0NCwgMHgxNywgMHhDNCwgMHhBNywgMHg3RSwgMHgzRCwgMHg2NCwgMHg1RCwgMHgxOSwgMHg3MywKCiAweDYwLCAweDgxLCAweDRGLCAweERDLCAweDIyLCAweDJBLCAweDkwLCAweDg4LCAweDQ2LCAweEVFLCAweEI4LCAweDE0LCAweERFLCAweDVFLCAweDBCLCAweERCLAoKIDB4RTAsIDB4MzIsIDB4M0EsIDB4MEEsIDB4NDksIDB4MDYsIDB4MjQsIDB4NUMsIDB4QzIsIDB4RDMsIDB4QUMsIDB4NjIsIDB4OTEsIDB4OTUsIDB4RTQsIDB4NzksCgogMHhFNywgMHhDOCwgMHgzNywgMHg2RCwgMHg4RCwgMHhENSwgMHg0RSwgMHhBOSwgMHg2QywgMHg1NiwgMHhGNCwgMHhFQSwgMHg2NSwgMHg3QSwgMHhBRSwgMHgwOCwKCiAweEJBLCAweDc4LCAweDI1LCAweDJFLCAweDFDLCAweEE2LCAweEI0LCAweEM2LCAweEU4LCAweERELCAweDc0LCAweDFGLCAweDRCLCAweEJELCAweDhCLCAweDhBLAoKIDB4NzAsIDB4M0UsIDB4QjUsIDB4NjYsIDB4NDgsIDB4MDMsIDB4RjYsIDB4MEUsIDB4NjEsIDB4MzUsIDB4NTcsIDB4QjksIDB4ODYsIDB4QzEsIDB4MUQsIDB4OUUsCgogMHhFMSwgMHhGOCwgMHg5OCwgMHgxMSwgMHg2OSwgMHhEOSwgMHg4RSwgMHg5NCwgMHg5QiwgMHgxRSwgMHg4NywgMHhFOSwgMHhDRSwgMHg1NSwgMHgyOCwgMHhERiwKCiAweDhDLCAweEExLCAweDg5LCAweDBELCAweEJGLCAweEU2LCAweDQyLCAweDY4LCAweDQxLCAweDk5LCAweDJELCAweDBGLCAweEIwLCAweDU0LCAweEJCLCAweDE2fTsKCgoKbG9jYWwgSVNCT1ggPSB7CgogWzBdID0gMHg1MiwgMHgwOSwgMHg2QSwgMHhENSwgMHgzMCwgMHgzNiwgMHhBNSwgMHgzOCwgMHhCRiwgMHg0MCwgMHhBMywgMHg5RSwgMHg4MSwgMHhGMywgMHhENywgMHhGQiwKCiAweDdDLCAweEUzLCAweDM5LCAweDgyLCAweDlCLCAweDJGLCAweEZGLCAweDg3LCAweDM0LCAweDhFLCAweDQzLCAweDQ0LCAweEM0LCAweERFLCAweEU5LCAweENCLAoKIDB4NTQsIDB4N0IsIDB4OTQsIDB4MzIsIDB4QTYsIDB4QzIsIDB4MjMsIDB4M0QsIDB4RUUsIDB4NEMsIDB4OTUsIDB4MEIsIDB4NDIsIDB4RkEsIDB4QzMsIDB4NEUsCgogMHgwOCwgMHgyRSwgMHhBMSwgMHg2NiwgMHgyOCwgMHhEOSwgMHgyNCwgMHhCMiwgMHg3NiwgMHg1QiwgMHhBMiwgMHg0OSwgMHg2RCwgMHg4QiwgMHhEMSwgMHgyNSwKCiAweDcyLCAweEY4LCAweEY2LCAweDY0LCAweDg2LCAweDY4LCAweDk4LCAweDE2LCAweEQ0LCAweEE0LCAweDVDLCAweENDLCAweDVELCAweDY1LCAweEI2LCAweDkyLAoKIDB4NkMsIDB4NzAsIDB4NDgsIDB4NTAsIDB4RkQsIDB4RUQsIDB4QjksIDB4REEsIDB4NUUsIDB4MTUsIDB4NDYsIDB4NTcsIDB4QTcsIDB4OEQsIDB4OUQsIDB4ODQsCgogMHg5MCwgMHhEOCwgMHhBQiwgMHgwMCwgMHg4QywgMHhCQywgMHhEMywgMHgwQSwgMHhGNywgMHhFNCwgMHg1OCwgMHgwNSwgMHhCOCwgMHhCMywgMHg0NSwgMHgwNiwKCiAweEQwLCAweDJDLCAweDFFLCAweDhGLCAweENBLCAweDNGLCAweDBGLCAweDAyLCAweEMxLCAweEFGLCAweEJELCAweDAzLCAweDAxLCAweDEzLCAweDhBLCAweDZCLAoKIDB4M0EsIDB4OTEsIDB4MTEsIDB4NDEsIDB4NEYsIDB4NjcsIDB4REMsIDB4RUEsIDB4OTcsIDB4RjIsIDB4Q0YsIDB4Q0UsIDB4RjAsIDB4QjQsIDB4RTYsIDB4NzMsCgogMHg5NiwgMHhBQywgMHg3NCwgMHgyMiwgMHhFNywgMHhBRCwgMHgzNSwgMHg4NSwgMHhFMiwgMHhGOSwgMHgzNywgMHhFOCwgMHgxQywgMHg3NSwgMHhERiwgMHg2RSwKCiAweDQ3LCAweEYxLCAweDFBLCAweDcxLCAweDFELCAweDI5LCAweEM1LCAweDg5LCAweDZGLCAweEI3LCAweDYyLCAweDBFLCAweEFBLCAweDE4LCAweEJFLCAweDFCLAoKIDB4RkMsIDB4NTYsIDB4M0UsIDB4NEIsIDB4QzYsIDB4RDIsIDB4NzksIDB4MjAsIDB4OUEsIDB4REIsIDB4QzAsIDB4RkUsIDB4NzgsIDB4Q0QsIDB4NUEsIDB4RjQsCgogMHgxRiwgMHhERCwgMHhBOCwgMHgzMywgMHg4OCwgMHgwNywgMHhDNywgMHgzMSwgMHhCMSwgMHgxMiwgMHgxMCwgMHg1OSwgMHgyNywgMHg4MCwgMHhFQywgMHg1RiwKCiAweDYwLCAweDUxLCAweDdGLCAweEE5LCAweDE5LCAweEI1LCAweDRBLCAweDBELCAweDJELCAweEU1LCAweDdBLCAweDlGLCAweDkzLCAweEM5LCAweDlDLCAweEVGLAoKIDB4QTAsIDB4RTAsIDB4M0IsIDB4NEQsIDB4QUUsIDB4MkEsIDB4RjUsIDB4QjAsIDB4QzgsIDB4RUIsIDB4QkIsIDB4M0MsIDB4ODMsIDB4NTMsIDB4OTksIDB4NjEsCgogMHgxNywgMHgyQiwgMHgwNCwgMHg3RSwgMHhCQSwgMHg3NywgMHhENiwgMHgyNiwgMHhFMSwgMHg2OSwgMHgxNCwgMHg2MywgMHg1NSwgMHgyMSwgMHgwQywgMHg3RH07CgoKCmxvY2FsIFJPV19TSElGVCA9ICB7ICAxLCAgNiwgMTEsIDE2LCAgNSwgMTAsIDE1LCAgNCwgIDksIDE0LCAgMywgIDgsIDEzLCAgMiwgIDcsIDEyLCB9OwoKbG9jYWwgSVJPV19TSElGVCA9IHsgIDEsIDE0LCAxMSwgIDgsICA1LCAgMiwgMTUsIDEyLCAgOSwgIDYsICAzLCAxNiwgMTMsIDEwLCAgNywgIDQsIH07CgoKCmxvY2FsIEVUQUJMRSA9IHsKCiBbMF0gPSAweDAxLCAweDAzLCAweDA1LCAweDBGLCAweDExLCAweDMzLCAweDU1LCAweEZGLCAweDFBLCAweDJFLCAweDcyLCAweDk2LCAweEExLCAweEY4LCAweDEzLCAweDM1LAoKIDB4NUYsIDB4RTEsIDB4MzgsIDB4NDgsIDB4RDgsIDB4NzMsIDB4OTUsIDB4QTQsIDB4RjcsIDB4MDIsIDB4MDYsIDB4MEEsIDB4MUUsIDB4MjIsIDB4NjYsIDB4QUEsCgogMHhFNSwgMHgzNCwgMHg1QywgMHhFNCwgMHgzNywgMHg1OSwgMHhFQiwgMHgyNiwgMHg2QSwgMHhCRSwgMHhEOSwgMHg3MCwgMHg5MCwgMHhBQiwgMHhFNiwgMHgzMSwKCiAweDUzLCAweEY1LCAweDA0LCAweDBDLCAweDE0LCAweDNDLCAweDQ0LCAweENDLCAweDRGLCAweEQxLCAweDY4LCAweEI4LCAweEQzLCAweDZFLCAweEIyLCAweENELAoKIDB4NEMsIDB4RDQsIDB4NjcsIDB4QTksIDB4RTAsIDB4M0IsIDB4NEQsIDB4RDcsIDB4NjIsIDB4QTYsIDB4RjEsIDB4MDgsIDB4MTgsIDB4MjgsIDB4NzgsIDB4ODgsCgogMHg4MywgMHg5RSwgMHhCOSwgMHhEMCwgMHg2QiwgMHhCRCwgMHhEQywgMHg3RiwgMHg4MSwgMHg5OCwgMHhCMywgMHhDRSwgMHg0OSwgMHhEQiwgMHg3NiwgMHg5QSwKCiAweEI1LCAweEM0LCAweDU3LCAweEY5LCAweDEwLCAweDMwLCAweDUwLCAweEYwLCAweDBCLCAweDFELCAweDI3LCAweDY5LCAweEJCLCAweEQ2LCAweDYxLCAweEEzLAoKIDB4RkUsIDB4MTksIDB4MkIsIDB4N0QsIDB4ODcsIDB4OTIsIDB4QUQsIDB4RUMsIDB4MkYsIDB4NzEsIDB4OTMsIDB4QUUsIDB4RTksIDB4MjAsIDB4NjAsIDB4QTAsCgogMHhGQiwgMHgxNiwgMHgzQSwgMHg0RSwgMHhEMiwgMHg2RCwgMHhCNywgMHhDMiwgMHg1RCwgMHhFNywgMHgzMiwgMHg1NiwgMHhGQSwgMHgxNSwgMHgzRiwgMHg0MSwKCiAweEMzLCAweDVFLCAweEUyLCAweDNELCAweDQ3LCAweEM5LCAweDQwLCAweEMwLCAweDVCLCAweEVELCAweDJDLCAweDc0LCAweDlDLCAweEJGLCAweERBLCAweDc1LAoKIDB4OUYsIDB4QkEsIDB4RDUsIDB4NjQsIDB4QUMsIDB4RUYsIDB4MkEsIDB4N0UsIDB4ODIsIDB4OUQsIDB4QkMsIDB4REYsIDB4N0EsIDB4OEUsIDB4ODksIDB4ODAsCgogMHg5QiwgMHhCNiwgMHhDMSwgMHg1OCwgMHhFOCwgMHgyMywgMHg2NSwgMHhBRiwgMHhFQSwgMHgyNSwgMHg2RiwgMHhCMSwgMHhDOCwgMHg0MywgMHhDNSwgMHg1NCwKCiAweEZDLCAweDFGLCAweDIxLCAweDYzLCAweEE1LCAweEY0LCAweDA3LCAweDA5LCAweDFCLCAweDJELCAweDc3LCAweDk5LCAweEIwLCAweENCLCAweDQ2LCAweENBLAoKIDB4NDUsIDB4Q0YsIDB4NEEsIDB4REUsIDB4NzksIDB4OEIsIDB4ODYsIDB4OTEsIDB4QTgsIDB4RTMsIDB4M0UsIDB4NDIsIDB4QzYsIDB4NTEsIDB4RjMsIDB4MEUsCgogMHgxMiwgMHgzNiwgMHg1QSwgMHhFRSwgMHgyOSwgMHg3QiwgMHg4RCwgMHg4QywgMHg4RiwgMHg4QSwgMHg4NSwgMHg5NCwgMHhBNywgMHhGMiwgMHgwRCwgMHgxNywKCiAweDM5LCAweDRCLCAweERELCAweDdDLCAweDg0LCAweDk3LCAweEEyLCAweEZELCAweDFDLCAweDI0LCAweDZDLCAweEI0LCAweEM3LCAweDUyLCAweEY2LCAweDAxfTsKCgoKbG9jYWwgTFRBQkxFID0gewoKIFswXSA9IDB4MDAsIDB4MDAsIDB4MTksIDB4MDEsIDB4MzIsIDB4MDIsIDB4MUEsIDB4QzYsIDB4NEIsIDB4QzcsIDB4MUIsIDB4NjgsIDB4MzMsIDB4RUUsIDB4REYsIDB4MDMsCgogMHg2NCwgMHgwNCwgMHhFMCwgMHgwRSwgMHgzNCwgMHg4RCwgMHg4MSwgMHhFRiwgMHg0QywgMHg3MSwgMHgwOCwgMHhDOCwgMHhGOCwgMHg2OSwgMHgxQywgMHhDMSwKCiAweDdELCAweEMyLCAweDFELCAweEI1LCAweEY5LCAweEI5LCAweDI3LCAweDZBLCAweDRELCAweEU0LCAweEE2LCAweDcyLCAweDlBLCAweEM5LCAweDA5LCAweDc4LAoKIDB4NjUsIDB4MkYsIDB4OEEsIDB4MDUsIDB4MjEsIDB4MEYsIDB4RTEsIDB4MjQsIDB4MTIsIDB4RjAsIDB4ODIsIDB4NDUsIDB4MzUsIDB4OTMsIDB4REEsIDB4OEUsCgogMHg5NiwgMHg4RiwgMHhEQiwgMHhCRCwgMHgzNiwgMHhEMCwgMHhDRSwgMHg5NCwgMHgxMywgMHg1QywgMHhEMiwgMHhGMSwgMHg0MCwgMHg0NiwgMHg4MywgMHgzOCwKCiAweDY2LCAweERELCAweEZELCAweDMwLCAweEJGLCAweDA2LCAweDhCLCAweDYyLCAweEIzLCAweDI1LCAweEUyLCAweDk4LCAweDIyLCAweDg4LCAweDkxLCAweDEwLAoKIDB4N0UsIDB4NkUsIDB4NDgsIDB4QzMsIDB4QTMsIDB4QjYsIDB4MUUsIDB4NDIsIDB4M0EsIDB4NkIsIDB4MjgsIDB4NTQsIDB4RkEsIDB4ODUsIDB4M0QsIDB4QkEsCgogMHgyQiwgMHg3OSwgMHgwQSwgMHgxNSwgMHg5QiwgMHg5RiwgMHg1RSwgMHhDQSwgMHg0RSwgMHhENCwgMHhBQywgMHhFNSwgMHhGMywgMHg3MywgMHhBNywgMHg1NywKCiAweEFGLCAweDU4LCAweEE4LCAweDUwLCAweEY0LCAweEVBLCAweEQ2LCAweDc0LCAweDRGLCAweEFFLCAweEU5LCAweEQ1LCAweEU3LCAweEU2LCAweEFELCAweEU4LAoKIDB4MkMsIDB4RDcsIDB4NzUsIDB4N0EsIDB4RUIsIDB4MTYsIDB4MEIsIDB4RjUsIDB4NTksIDB4Q0IsIDB4NUYsIDB4QjAsIDB4OUMsIDB4QTksIDB4NTEsIDB4QTAsCgogMHg3RiwgMHgwQywgMHhGNiwgMHg2RiwgMHgxNywgMHhDNCwgMHg0OSwgMHhFQywgMHhEOCwgMHg0MywgMHgxRiwgMHgyRCwgMHhBNCwgMHg3NiwgMHg3QiwgMHhCNywKCiAweENDLCAweEJCLCAweDNFLCAweDVBLCAweEZCLCAweDYwLCAweEIxLCAweDg2LCAweDNCLCAweDUyLCAweEExLCAweDZDLCAweEFBLCAweDU1LCAweDI5LCAweDlELAoKIDB4OTcsIDB4QjIsIDB4ODcsIDB4OTAsIDB4NjEsIDB4QkUsIDB4REMsIDB4RkMsIDB4QkMsIDB4OTUsIDB4Q0YsIDB4Q0QsIDB4MzcsIDB4M0YsIDB4NUIsIDB4RDEsCgogMHg1MywgMHgzOSwgMHg4NCwgMHgzQywgMHg0MSwgMHhBMiwgMHg2RCwgMHg0NywgMHgxNCwgMHgyQSwgMHg5RSwgMHg1RCwgMHg1NiwgMHhGMiwgMHhEMywgMHhBQiwKCiAweDQ0LCAweDExLCAweDkyLCAweEQ5LCAweDIzLCAweDIwLCAweDJFLCAweDg5LCAweEI0LCAweDdDLCAweEI4LCAweDI2LCAweDc3LCAweDk5LCAweEUzLCAweEE1LAoKIDB4NjcsIDB4NEEsIDB4RUQsIDB4REUsIDB4QzUsIDB4MzEsIDB4RkUsIDB4MTgsIDB4MEQsIDB4NjMsIDB4OEMsIDB4ODAsIDB4QzAsIDB4RjcsIDB4NzAsIDB4MDd9OwoKCgpsb2NhbCBNSVhUQUJMRSA9IHsKCiAweDAyLCAweDAzLCAweDAxLCAweDAxLAoKIDB4MDEsIDB4MDIsIDB4MDMsIDB4MDEsCgogMHgwMSwgMHgwMSwgMHgwMiwgMHgwMywKCiAweDAzLCAweDAxLCAweDAxLCAweDAyfTsKCgoKbG9jYWwgSU1JWFRBQkxFID0gewoKIDB4MEUsIDB4MEIsIDB4MEQsIDB4MDksCgogMHgwOSwgMHgwRSwgMHgwQiwgMHgwRCwKCiAweDBELCAweDA5LCAweDBFLCAweDBCLAoKIDB4MEIsIDB4MEQsIDB4MDksIDB4MEV9OwoKCgpsb2NhbCBSQ09OID0gewoKWzBdID0gMHg4ZCwgMHgwMSwgMHgwMiwgMHgwNCwgMHgwOCwgMHgxMCwgMHgyMCwgMHg0MCwgMHg4MCwgMHgxYiwgMHgzNiwgMHg2YywgMHhkOCwgMHhhYiwgMHg0ZCwgMHg5YSwKCjB4MmYsIDB4NWUsIDB4YmMsIDB4NjMsIDB4YzYsIDB4OTcsIDB4MzUsIDB4NmEsIDB4ZDQsIDB4YjMsIDB4N2QsIDB4ZmEsIDB4ZWYsIDB4YzUsIDB4OTEsIDB4MzksCgoweDcyLCAweGU0LCAweGQzLCAweGJkLCAweDYxLCAweGMyLCAweDlmLCAweDI1LCAweDRhLCAweDk0LCAweDMzLCAweDY2LCAweGNjLCAweDgzLCAweDFkLCAweDNhLAoKMHg3NCwgMHhlOCwgMHhjYiwgMHg4ZCwgMHgwMSwgMHgwMiwgMHgwNCwgMHgwOCwgMHgxMCwgMHgyMCwgMHg0MCwgMHg4MCwgMHgxYiwgMHgzNiwgMHg2YywgMHhkOCwKCjB4YWIsIDB4NGQsIDB4OWEsIDB4MmYsIDB4NWUsIDB4YmMsIDB4NjMsIDB4YzYsIDB4OTcsIDB4MzUsIDB4NmEsIDB4ZDQsIDB4YjMsIDB4N2QsIDB4ZmEsIDB4ZWYsCgoweGM1LCAweDkxLCAweDM5LCAweDcyLCAweGU0LCAweGQzLCAweGJkLCAweDYxLCAweGMyLCAweDlmLCAweDI1LCAweDRhLCAweDk0LCAweDMzLCAweDY2LCAweGNjLAoKMHg4MywgMHgxZCwgMHgzYSwgMHg3NCwgMHhlOCwgMHhjYiwgMHg4ZCwgMHgwMSwgMHgwMiwgMHgwNCwgMHgwOCwgMHgxMCwgMHgyMCwgMHg0MCwgMHg4MCwgMHgxYiwKCjB4MzYsIDB4NmMsIDB4ZDgsIDB4YWIsIDB4NGQsIDB4OWEsIDB4MmYsIDB4NWUsIDB4YmMsIDB4NjMsIDB4YzYsIDB4OTcsIDB4MzUsIDB4NmEsIDB4ZDQsIDB4YjMsCgoweDdkLCAweGZhLCAweGVmLCAweGM1LCAweDkxLCAweDM5LCAweDcyLCAweGU0LCAweGQzLCAweGJkLCAweDYxLCAweGMyLCAweDlmLCAweDI1LCAweDRhLCAweDk0LAoKMHgzMywgMHg2NiwgMHhjYywgMHg4MywgMHgxZCwgMHgzYSwgMHg3NCwgMHhlOCwgMHhjYiwgMHg4ZCwgMHgwMSwgMHgwMiwgMHgwNCwgMHgwOCwgMHgxMCwgMHgyMCwKCjB4NDAsIDB4ODAsIDB4MWIsIDB4MzYsIDB4NmMsIDB4ZDgsIDB4YWIsIDB4NGQsIDB4OWEsIDB4MmYsIDB4NWUsIDB4YmMsIDB4NjMsIDB4YzYsIDB4OTcsIDB4MzUsCgoweDZhLCAweGQ0LCAweGIzLCAweDdkLCAweGZhLCAweGVmLCAweGM1LCAweDkxLCAweDM5LCAweDcyLCAweGU0LCAweGQzLCAweGJkLCAweDYxLCAweGMyLCAweDlmLAoKMHgyNSwgMHg0YSwgMHg5NCwgMHgzMywgMHg2NiwgMHhjYywgMHg4MywgMHgxZCwgMHgzYSwgMHg3NCwgMHhlOCwgMHhjYiwgMHg4ZCwgMHgwMSwgMHgwMiwgMHgwNCwKCjB4MDgsIDB4MTAsIDB4MjAsIDB4NDAsIDB4ODAsIDB4MWIsIDB4MzYsIDB4NmMsIDB4ZDgsIDB4YWIsIDB4NGQsIDB4OWEsIDB4MmYsIDB4NWUsIDB4YmMsIDB4NjMsCgoweGM2LCAweDk3LCAweDM1LCAweDZhLCAweGQ0LCAweGIzLCAweDdkLCAweGZhLCAweGVmLCAweGM1LCAweDkxLCAweDM5LCAweDcyLCAweGU0LCAweGQzLCAweGJkLAoKMHg2MSwgMHhjMiwgMHg5ZiwgMHgyNSwgMHg0YSwgMHg5NCwgMHgzMywgMHg2NiwgMHhjYywgMHg4MywgMHgxZCwgMHgzYSwgMHg3NCwgMHhlOCwgMHhjYiwgMHg4ZH07CgoKCgoKbG9jYWwgR01VTCA9IGZ1bmN0aW9uKEEsIEIpCgogICAgaWYoQSA9PSAweDAxKSB0aGVuIHJldHVybiBCOyBlbmQKCiAgICBpZihCID09IDB4MDEpIHRoZW4gcmV0dXJuIEE7IGVuZAoKICAgIGlmKEEgPT0gMHgwMCkgdGhlbiByZXR1cm4gMDsgZW5kCgogICAgaWYoQiA9PSAweDAwKSB0aGVuIHJldHVybiAwOyBlbmQKCgoKICAgIGxvY2FsIExBID0gTFRBQkxFW0FdOwoKICAgIGxvY2FsIExCID0gTFRBQkxFW0JdOwoKCgogICAgbG9jYWwgc3VtID0gTEEgKyBMQjsKCiAgICBpZiAoc3VtID4gMHhGRikgdGhlbiBzdW0gPSBzdW0gLSAweEZGOyBlbmQKCgoKICAgIHJldHVybiBFVEFCTEVbc3VtXTsKCmVuZAoKCgpsb2NhbCBieXRlU3ViID0gQXJyYXkuc3Vic3RpdHV0ZTsKCgoKbG9jYWwgc2hpZnRSb3cgPSBBcnJheS5wZXJtdXRlOwoKCgpsb2NhbCBtaXhDb2wgPSBmdW5jdGlvbihpLCBtaXgpCgogICAgbG9jYWwgb3V0ID0ge307CgoKCiAgICBsb2NhbCBhLCBiLCBjLCBkOwoKCgogICAgYSA9IEdNVUwoaVsgMV0sIG1peFsgMV0pOwoKICAgIGIgPSBHTVVMKGlbIDJdLCBtaXhbIDJdKTsKCiAgICBjID0gR01VTChpWyAzXSwgbWl4WyAzXSk7CgogICAgZCA9IEdNVUwoaVsgNF0sIG1peFsgNF0pOwoKICAgIG91dFsgMV0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKICAgIGEgPSBHTVVMKGlbIDFdLCBtaXhbIDVdKTsKCiAgICBiID0gR01VTChpWyAyXSwgbWl4WyA2XSk7CgogICAgYyA9IEdNVUwoaVsgM10sIG1peFsgN10pOwoKICAgIGQgPSBHTVVMKGlbIDRdLCBtaXhbIDhdKTsKCiAgICBvdXRbIDJdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCiAgICBhID0gR01VTChpWyAxXSwgbWl4WyA5XSk7CgogICAgYiA9IEdNVUwoaVsgMl0sIG1peFsxMF0pOwoKICAgIGMgPSBHTVVMKGlbIDNdLCBtaXhbMTFdKTsKCiAgICBkID0gR01VTChpWyA0XSwgbWl4WzEyXSk7CgogICAgb3V0WyAzXSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgogICAgYSA9IEdNVUwoaVsgMV0sIG1peFsxM10pOwoKICAgIGIgPSBHTVVMKGlbIDJdLCBtaXhbMTRdKTsKCiAgICBjID0gR01VTChpWyAzXSwgbWl4WzE1XSk7CgogICAgZCA9IEdNVUwoaVsgNF0sIG1peFsxNl0pOwoKICAgIG91dFsgNF0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKCgoKCiAgICBhID0gR01VTChpWyA1XSwgbWl4WyAxXSk7CgogICAgYiA9IEdNVUwoaVsgNl0sIG1peFsgMl0pOwoKICAgIGMgPSBHTVVMKGlbIDddLCBtaXhbIDNdKTsKCiAgICBkID0gR01VTChpWyA4XSwgbWl4WyA0XSk7CgogICAgb3V0WyA1XSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgogICAgYSA9IEdNVUwoaVsgNV0sIG1peFsgNV0pOwoKICAgIGIgPSBHTVVMKGlbIDZdLCBtaXhbIDZdKTsKCiAgICBjID0gR01VTChpWyA3XSwgbWl4WyA3XSk7CgogICAgZCA9IEdNVUwoaVsgOF0sIG1peFsgOF0pOwoKICAgIG91dFsgNl0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKICAgIGEgPSBHTVVMKGlbIDVdLCBtaXhbIDldKTsKCiAgICBiID0gR01VTChpWyA2XSwgbWl4WzEwXSk7CgogICAgYyA9IEdNVUwoaVsgN10sIG1peFsxMV0pOwoKICAgIGQgPSBHTVVMKGlbIDhdLCBtaXhbMTJdKTsKCiAgICBvdXRbIDddID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCiAgICBhID0gR01VTChpWyA1XSwgbWl4WzEzXSk7CgogICAgYiA9IEdNVUwoaVsgNl0sIG1peFsxNF0pOwoKICAgIGMgPSBHTVVMKGlbIDddLCBtaXhbMTVdKTsKCiAgICBkID0gR01VTChpWyA4XSwgbWl4WzE2XSk7CgogICAgb3V0WyA4XSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgoKCgoKICAgIGEgPSBHTVVMKGlbIDldLCBtaXhbIDFdKTsKCiAgICBiID0gR01VTChpWzEwXSwgbWl4WyAyXSk7CgogICAgYyA9IEdNVUwoaVsxMV0sIG1peFsgM10pOwoKICAgIGQgPSBHTVVMKGlbMTJdLCBtaXhbIDRdKTsKCiAgICBvdXRbIDldID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCiAgICBhID0gR01VTChpWyA5XSwgbWl4WyA1XSk7CgogICAgYiA9IEdNVUwoaVsxMF0sIG1peFsgNl0pOwoKICAgIGMgPSBHTVVMKGlbMTFdLCBtaXhbIDddKTsKCiAgICBkID0gR01VTChpWzEyXSwgbWl4WyA4XSk7CgogICAgb3V0WzEwXSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgogICAgYSA9IEdNVUwoaVsgOV0sIG1peFsgOV0pOwoKICAgIGIgPSBHTVVMKGlbMTBdLCBtaXhbMTBdKTsKCiAgICBjID0gR01VTChpWzExXSwgbWl4WzExXSk7CgogICAgZCA9IEdNVUwoaVsxMl0sIG1peFsxMl0pOwoKICAgIG91dFsxMV0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKICAgIGEgPSBHTVVMKGlbIDldLCBtaXhbMTNdKTsKCiAgICBiID0gR01VTChpWzEwXSwgbWl4WzE0XSk7CgogICAgYyA9IEdNVUwoaVsxMV0sIG1peFsxNV0pOwoKICAgIGQgPSBHTVVMKGlbMTJdLCBtaXhbMTZdKTsKCiAgICBvdXRbMTJdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCgoKCgogICAgYSA9IEdNVUwoaVsxM10sIG1peFsgMV0pOwoKICAgIGIgPSBHTVVMKGlbMTRdLCBtaXhbIDJdKTsKCiAgICBjID0gR01VTChpWzE1XSwgbWl4WyAzXSk7CgogICAgZCA9IEdNVUwoaVsxNl0sIG1peFsgNF0pOwoKICAgIG91dFsxM10gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKICAgIGEgPSBHTVVMKGlbMTNdLCBtaXhbIDVdKTsKCiAgICBiID0gR01VTChpWzE0XSwgbWl4WyA2XSk7CgogICAgYyA9IEdNVUwoaVsxNV0sIG1peFsgN10pOwoKICAgIGQgPSBHTVVMKGlbMTZdLCBtaXhbIDhdKTsKCiAgICBvdXRbMTRdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCiAgICBhID0gR01VTChpWzEzXSwgbWl4WyA5XSk7CgogICAgYiA9IEdNVUwoaVsxNF0sIG1peFsxMF0pOwoKICAgIGMgPSBHTVVMKGlbMTVdLCBtaXhbMTFdKTsKCiAgICBkID0gR01VTChpWzE2XSwgbWl4WzEyXSk7CgogICAgb3V0WzE1XSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgogICAgYSA9IEdNVUwoaVsxM10sIG1peFsxM10pOwoKICAgIGIgPSBHTVVMKGlbMTRdLCBtaXhbMTRdKTsKCiAgICBjID0gR01VTChpWzE1XSwgbWl4WzE1XSk7CgogICAgZCA9IEdNVUwoaVsxNl0sIG1peFsxNl0pOwoKICAgIG91dFsxNl0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKCgogICAgcmV0dXJuIG91dDsKCmVuZAoKCgpsb2NhbCBrZXlSb3VuZCA9IGZ1bmN0aW9uKGtleSwgcm91bmQpCgogICAgbG9jYWwgb3V0ID0ge307CgoKCiAgICBvdXRbIDFdID0gWE9SKGtleVsgMV0sIFhPUihTQk9YW2tleVsxNF1dLCBSQ09OW3JvdW5kXSkpOwoKICAgIG91dFsgMl0gPSBYT1Ioa2V5WyAyXSwgU0JPWFtrZXlbMTVdXSk7CgogICAgb3V0WyAzXSA9IFhPUihrZXlbIDNdLCBTQk9YW2tleVsxNl1dKTsKCiAgICBvdXRbIDRdID0gWE9SKGtleVsgNF0sIFNCT1hba2V5WzEzXV0pOwoKCgogICAgb3V0WyA1XSA9IFhPUihvdXRbIDFdLCBrZXlbIDVdKTsKCiAgICBvdXRbIDZdID0gWE9SKG91dFsgMl0sIGtleVsgNl0pOwoKICAgIG91dFsgN10gPSBYT1Iob3V0WyAzXSwga2V5WyA3XSk7CgogICAgb3V0WyA4XSA9IFhPUihvdXRbIDRdLCBrZXlbIDhdKTsKCgoKICAgIG91dFsgOV0gPSBYT1Iob3V0WyA1XSwga2V5WyA5XSk7CgogICAgb3V0WzEwXSA9IFhPUihvdXRbIDZdLCBrZXlbMTBdKTsKCiAgICBvdXRbMTFdID0gWE9SKG91dFsgN10sIGtleVsxMV0pOwoKICAgIG91dFsxMl0gPSBYT1Iob3V0WyA4XSwga2V5WzEyXSk7CgoKCiAgICBvdXRbMTNdID0gWE9SKG91dFsgOV0sIGtleVsxM10pOwoKICAgIG91dFsxNF0gPSBYT1Iob3V0WzEwXSwga2V5WzE0XSk7CgogICAgb3V0WzE1XSA9IFhPUihvdXRbMTFdLCBrZXlbMTVdKTsKCiAgICBvdXRbMTZdID0gWE9SKG91dFsxMl0sIGtleVsxNl0pOwoKCgogICAgcmV0dXJuIG91dDsKCmVuZAoKCgpsb2NhbCBrZXlFeHBhbmQgPSBmdW5jdGlvbihrZXkpCgogICAgbG9jYWwga2V5cyA9IHt9OwoKCgogICAgbG9jYWwgdGVtcCA9IGtleTsKCgoKICAgIGtleXNbMV0gPSB0ZW1wOwoKCgogICAgZm9yIGkgPSAxLCAxMCBkbwoKICAgICAgICB0ZW1wID0ga2V5Um91bmQodGVtcCwgaSk7CgogICAgICAgIGtleXNbaSArIDFdID0gdGVtcDsKCiAgICBlbmQKCgoKICAgIHJldHVybiBrZXlzOwoKCgplbmQKCgoKbG9jYWwgYWRkS2V5ID0gQXJyYXkuWE9SOwoKCgoKCgoKbG9jYWwgQUVTID0ge307CgoKCkFFUy5ibG9ja1NpemUgPSAxNjsKCgoKQUVTLmVuY3J5cHQgPSBmdW5jdGlvbihrZXksIGJsb2NrKQoKCgogICAgbG9jYWwga2V5U2NoZWR1bGUgPSBrZXlFeHBhbmQoa2V5KTsKCgoKICAgIC0tcm91bmQgMAoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVsxXSk7CgoKCiAgICAtLXJvdW5kIDEKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMl0pOwoKCgogICAgLS1yb3VuZCAyCgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBTQk9YKTsKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBNSVhUQUJMRSk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzNdKTsKCgoKICAgIC0tcm91bmQgMwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgU0JPWCk7CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgUk9XX1NISUZUKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgTUlYVEFCTEUpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVs0XSk7CgoKCiAgICAtLXJvdW5kIDQKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbNV0pOwoKCgogICAgLS1yb3VuZCA1CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBTQk9YKTsKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBNSVhUQUJMRSk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzZdKTsKCgoKICAgIC0tcm91bmQgNgoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgU0JPWCk7CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgUk9XX1NISUZUKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgTUlYVEFCTEUpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVs3XSk7CgoKCiAgICAtLXJvdW5kIDcKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbOF0pOwoKCgogICAgLS1yb3VuZCA4CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBTQk9YKTsKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBNSVhUQUJMRSk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzldKTsKCgoKICAgIC0tcm91bmQgOQoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgU0JPWCk7CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgUk9XX1NISUZUKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgTUlYVEFCTEUpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVsxMF0pOwoKCgogICAgLS1yb3VuZCAxMAoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgU0JPWCk7CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgUk9XX1NISUZUKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMTFdKTsKCgoKICAgIHJldHVybiBibG9jazsKCgoKZW5kCgoKCkFFUy5kZWNyeXB0ID0gZnVuY3Rpb24oa2V5LCBibG9jaykKCgoKICAgIGxvY2FsIGtleVNjaGVkdWxlID0ga2V5RXhwYW5kKGtleSk7CgoKCiAgICAtLXJvdW5kIDAKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMTFdKTsKCgoKICAgIC0tcm91bmQgMQoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVsxMF0pOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBJTUlYVEFCTEUpOwoKCgogICAgLS1yb3VuZCAyCgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgSVJPV19TSElGVCk7CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBJU0JPWCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzldKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgSU1JWFRBQkxFKTsKCgoKICAgIC0tcm91bmQgMwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVs4XSk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIElNSVhUQUJMRSk7CgoKCiAgICAtLXJvdW5kIDQKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBJUk9XX1NISUZUKTsKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIElTQk9YKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbN10pOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBJTUlYVEFCTEUpOwoKCgogICAgLS1yb3VuZCA1CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgSVJPV19TSElGVCk7CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBJU0JPWCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzZdKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgSU1JWFRBQkxFKTsKCgoKICAgIC0tcm91bmQgNgoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVs1XSk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIElNSVhUQUJMRSk7CgoKCiAgICAtLXJvdW5kIDcKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBJUk9XX1NISUZUKTsKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIElTQk9YKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbNF0pOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBJTUlYVEFCTEUpOwoKCgogICAgLS1yb3VuZCA4CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgSVJPV19TSElGVCk7CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBJU0JPWCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzNdKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgSU1JWFRBQkxFKTsKCgoKICAgIC0tcm91bmQgOQoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVsyXSk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIElNSVhUQUJMRSk7CgoKCiAgICAtLXJvdW5kIDEwCgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgSVJPV19TSElGVCk7CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBJU0JPWCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzFdKTsKCgoKICAgIHJldHVybiBibG9jazsKCmVuZAoKCgpyZXR1cm4gQUVTOwAAAAAKCmxvY2FsIEFycmF5ID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLmFycmF5Iik7Cgpsb2NhbCBCaXQgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuYml0Iik7CgoKCmxvY2FsIFhPUiA9IEJpdC5ieG9yOwoKCgpsb2NhbCBTQk9YID0gewoKIFswXSA9IDB4NjMsIDB4N0MsIDB4NzcsIDB4N0IsIDB4RjIsIDB4NkIsIDB4NkYsIDB4QzUsIDB4MzAsIDB4MDEsIDB4NjcsIDB4MkIsIDB4RkUsIDB4RDcsIDB4QUIsIDB4NzYsCgogMHhDQSwgMHg4MiwgMHhDOSwgMHg3RCwgMHhGQSwgMHg1OSwgMHg0NywgMHhGMCwgMHhBRCwgMHhENCwgMHhBMiwgMHhBRiwgMHg5QywgMHhBNCwgMHg3MiwgMHhDMCwKCiAweEI3LCAweEZELCAweDkzLCAweDI2LCAweDM2LCAweDNGLCAweEY3LCAweENDLCAweDM0LCAweEE1LCAweEU1LCAweEYxLCAweDcxLCAweEQ4LCAweDMxLCAweDE1LAoKIDB4MDQsIDB4QzcsIDB4MjMsIDB4QzMsIDB4MTgsIDB4OTYsIDB4MDUsIDB4OUEsIDB4MDcsIDB4MTIsIDB4ODAsIDB4RTIsIDB4RUIsIDB4MjcsIDB4QjIsIDB4NzUsCgogMHgwOSwgMHg4MywgMHgyQywgMHgxQSwgMHgxQiwgMHg2RSwgMHg1QSwgMHhBMCwgMHg1MiwgMHgzQiwgMHhENiwgMHhCMywgMHgyOSwgMHhFMywgMHgyRiwgMHg4NCwKCiAweDUzLCAweEQxLCAweDAwLCAweEVELCAweDIwLCAweEZDLCAweEIxLCAweDVCLCAweDZBLCAweENCLCAweEJFLCAweDM5LCAweDRBLCAweDRDLCAweDU4LCAweENGLAoKIDB4RDAsIDB4RUYsIDB4QUEsIDB4RkIsIDB4NDMsIDB4NEQsIDB4MzMsIDB4ODUsIDB4NDUsIDB4RjksIDB4MDIsIDB4N0YsIDB4NTAsIDB4M0MsIDB4OUYsIDB4QTgsCgogMHg1MSwgMHhBMywgMHg0MCwgMHg4RiwgMHg5MiwgMHg5RCwgMHgzOCwgMHhGNSwgMHhCQywgMHhCNiwgMHhEQSwgMHgyMSwgMHgxMCwgMHhGRiwgMHhGMywgMHhEMiwKCiAweENELCAweDBDLCAweDEzLCAweEVDLCAweDVGLCAweDk3LCAweDQ0LCAweDE3LCAweEM0LCAweEE3LCAweDdFLCAweDNELCAweDY0LCAweDVELCAweDE5LCAweDczLAoKIDB4NjAsIDB4ODEsIDB4NEYsIDB4REMsIDB4MjIsIDB4MkEsIDB4OTAsIDB4ODgsIDB4NDYsIDB4RUUsIDB4QjgsIDB4MTQsIDB4REUsIDB4NUUsIDB4MEIsIDB4REIsCgogMHhFMCwgMHgzMiwgMHgzQSwgMHgwQSwgMHg0OSwgMHgwNiwgMHgyNCwgMHg1QywgMHhDMiwgMHhEMywgMHhBQywgMHg2MiwgMHg5MSwgMHg5NSwgMHhFNCwgMHg3OSwKCiAweEU3LCAweEM4LCAweDM3LCAweDZELCAweDhELCAweEQ1LCAweDRFLCAweEE5LCAweDZDLCAweDU2LCAweEY0LCAweEVBLCAweDY1LCAweDdBLCAweEFFLCAweDA4LAoKIDB4QkEsIDB4NzgsIDB4MjUsIDB4MkUsIDB4MUMsIDB4QTYsIDB4QjQsIDB4QzYsIDB4RTgsIDB4REQsIDB4NzQsIDB4MUYsIDB4NEIsIDB4QkQsIDB4OEIsIDB4OEEsCgogMHg3MCwgMHgzRSwgMHhCNSwgMHg2NiwgMHg0OCwgMHgwMywgMHhGNiwgMHgwRSwgMHg2MSwgMHgzNSwgMHg1NywgMHhCOSwgMHg4NiwgMHhDMSwgMHgxRCwgMHg5RSwKCiAweEUxLCAweEY4LCAweDk4LCAweDExLCAweDY5LCAweEQ5LCAweDhFLCAweDk0LCAweDlCLCAweDFFLCAweDg3LCAweEU5LCAweENFLCAweDU1LCAweDI4LCAweERGLAoKIDB4OEMsIDB4QTEsIDB4ODksIDB4MEQsIDB4QkYsIDB4RTYsIDB4NDIsIDB4NjgsIDB4NDEsIDB4OTksIDB4MkQsIDB4MEYsIDB4QjAsIDB4NTQsIDB4QkIsIDB4MTZ9OwoKCgpsb2NhbCBJU0JPWCA9IHsKCiBbMF0gPSAweDUyLCAweDA5LCAweDZBLCAweEQ1LCAweDMwLCAweDM2LCAweEE1LCAweDM4LCAweEJGLCAweDQwLCAweEEzLCAweDlFLCAweDgxLCAweEYzLCAweEQ3LCAweEZCLAoKIDB4N0MsIDB4RTMsIDB4MzksIDB4ODIsIDB4OUIsIDB4MkYsIDB4RkYsIDB4ODcsIDB4MzQsIDB4OEUsIDB4NDMsIDB4NDQsIDB4QzQsIDB4REUsIDB4RTksIDB4Q0IsCgogMHg1NCwgMHg3QiwgMHg5NCwgMHgzMiwgMHhBNiwgMHhDMiwgMHgyMywgMHgzRCwgMHhFRSwgMHg0QywgMHg5NSwgMHgwQiwgMHg0MiwgMHhGQSwgMHhDMywgMHg0RSwKCiAweDA4LCAweDJFLCAweEExLCAweDY2LCAweDI4LCAweEQ5LCAweDI0LCAweEIyLCAweDc2LCAweDVCLCAweEEyLCAweDQ5LCAweDZELCAweDhCLCAweEQxLCAweDI1LAoKIDB4NzIsIDB4RjgsIDB4RjYsIDB4NjQsIDB4ODYsIDB4NjgsIDB4OTgsIDB4MTYsIDB4RDQsIDB4QTQsIDB4NUMsIDB4Q0MsIDB4NUQsIDB4NjUsIDB4QjYsIDB4OTIsCgogMHg2QywgMHg3MCwgMHg0OCwgMHg1MCwgMHhGRCwgMHhFRCwgMHhCOSwgMHhEQSwgMHg1RSwgMHgxNSwgMHg0NiwgMHg1NywgMHhBNywgMHg4RCwgMHg5RCwgMHg4NCwKCiAweDkwLCAweEQ4LCAweEFCLCAweDAwLCAweDhDLCAweEJDLCAweEQzLCAweDBBLCAweEY3LCAweEU0LCAweDU4LCAweDA1LCAweEI4LCAweEIzLCAweDQ1LCAweDA2LAoKIDB4RDAsIDB4MkMsIDB4MUUsIDB4OEYsIDB4Q0EsIDB4M0YsIDB4MEYsIDB4MDIsIDB4QzEsIDB4QUYsIDB4QkQsIDB4MDMsIDB4MDEsIDB4MTMsIDB4OEEsIDB4NkIsCgogMHgzQSwgMHg5MSwgMHgxMSwgMHg0MSwgMHg0RiwgMHg2NywgMHhEQywgMHhFQSwgMHg5NywgMHhGMiwgMHhDRiwgMHhDRSwgMHhGMCwgMHhCNCwgMHhFNiwgMHg3MywKCiAweDk2LCAweEFDLCAweDc0LCAweDIyLCAweEU3LCAweEFELCAweDM1LCAweDg1LCAweEUyLCAweEY5LCAweDM3LCAweEU4LCAweDFDLCAweDc1LCAweERGLCAweDZFLAoKIDB4NDcsIDB4RjEsIDB4MUEsIDB4NzEsIDB4MUQsIDB4MjksIDB4QzUsIDB4ODksIDB4NkYsIDB4QjcsIDB4NjIsIDB4MEUsIDB4QUEsIDB4MTgsIDB4QkUsIDB4MUIsCgogMHhGQywgMHg1NiwgMHgzRSwgMHg0QiwgMHhDNiwgMHhEMiwgMHg3OSwgMHgyMCwgMHg5QSwgMHhEQiwgMHhDMCwgMHhGRSwgMHg3OCwgMHhDRCwgMHg1QSwgMHhGNCwKCiAweDFGLCAweERELCAweEE4LCAweDMzLCAweDg4LCAweDA3LCAweEM3LCAweDMxLCAweEIxLCAweDEyLCAweDEwLCAweDU5LCAweDI3LCAweDgwLCAweEVDLCAweDVGLAoKIDB4NjAsIDB4NTEsIDB4N0YsIDB4QTksIDB4MTksIDB4QjUsIDB4NEEsIDB4MEQsIDB4MkQsIDB4RTUsIDB4N0EsIDB4OUYsIDB4OTMsIDB4QzksIDB4OUMsIDB4RUYsCgogMHhBMCwgMHhFMCwgMHgzQiwgMHg0RCwgMHhBRSwgMHgyQSwgMHhGNSwgMHhCMCwgMHhDOCwgMHhFQiwgMHhCQiwgMHgzQywgMHg4MywgMHg1MywgMHg5OSwgMHg2MSwKCiAweDE3LCAweDJCLCAweDA0LCAweDdFLCAweEJBLCAweDc3LCAweEQ2LCAweDI2LCAweEUxLCAweDY5LCAweDE0LCAweDYzLCAweDU1LCAweDIxLCAweDBDLCAweDdEfTsKCgoKbG9jYWwgUk9XX1NISUZUID0gIHsgIDEsICA2LCAxMSwgMTYsICA1LCAxMCwgMTUsICA0LCAgOSwgMTQsICAzLCAgOCwgMTMsICAyLCAgNywgMTIsIH07Cgpsb2NhbCBJUk9XX1NISUZUID0geyAgMSwgMTQsIDExLCAgOCwgIDUsICAyLCAxNSwgMTIsICA5LCAgNiwgIDMsIDE2LCAxMywgMTAsICA3LCAgNCwgfTsKCgoKbG9jYWwgRVRBQkxFID0gewoKIFswXSA9IDB4MDEsIDB4MDMsIDB4MDUsIDB4MEYsIDB4MTEsIDB4MzMsIDB4NTUsIDB4RkYsIDB4MUEsIDB4MkUsIDB4NzIsIDB4OTYsIDB4QTEsIDB4RjgsIDB4MTMsIDB4MzUsCgogMHg1RiwgMHhFMSwgMHgzOCwgMHg0OCwgMHhEOCwgMHg3MywgMHg5NSwgMHhBNCwgMHhGNywgMHgwMiwgMHgwNiwgMHgwQSwgMHgxRSwgMHgyMiwgMHg2NiwgMHhBQSwKCiAweEU1LCAweDM0LCAweDVDLCAweEU0LCAweDM3LCAweDU5LCAweEVCLCAweDI2LCAweDZBLCAweEJFLCAweEQ5LCAweDcwLCAweDkwLCAweEFCLCAweEU2LCAweDMxLAoKIDB4NTMsIDB4RjUsIDB4MDQsIDB4MEMsIDB4MTQsIDB4M0MsIDB4NDQsIDB4Q0MsIDB4NEYsIDB4RDEsIDB4NjgsIDB4QjgsIDB4RDMsIDB4NkUsIDB4QjIsIDB4Q0QsCgogMHg0QywgMHhENCwgMHg2NywgMHhBOSwgMHhFMCwgMHgzQiwgMHg0RCwgMHhENywgMHg2MiwgMHhBNiwgMHhGMSwgMHgwOCwgMHgxOCwgMHgyOCwgMHg3OCwgMHg4OCwKCiAweDgzLCAweDlFLCAweEI5LCAweEQwLCAweDZCLCAweEJELCAweERDLCAweDdGLCAweDgxLCAweDk4LCAweEIzLCAweENFLCAweDQ5LCAweERCLCAweDc2LCAweDlBLAoKIDB4QjUsIDB4QzQsIDB4NTcsIDB4RjksIDB4MTAsIDB4MzAsIDB4NTAsIDB4RjAsIDB4MEIsIDB4MUQsIDB4MjcsIDB4NjksIDB4QkIsIDB4RDYsIDB4NjEsIDB4QTMsCgogMHhGRSwgMHgxOSwgMHgyQiwgMHg3RCwgMHg4NywgMHg5MiwgMHhBRCwgMHhFQywgMHgyRiwgMHg3MSwgMHg5MywgMHhBRSwgMHhFOSwgMHgyMCwgMHg2MCwgMHhBMCwKCiAweEZCLCAweDE2LCAweDNBLCAweDRFLCAweEQyLCAweDZELCAweEI3LCAweEMyLCAweDVELCAweEU3LCAweDMyLCAweDU2LCAweEZBLCAweDE1LCAweDNGLCAweDQxLAoKIDB4QzMsIDB4NUUsIDB4RTIsIDB4M0QsIDB4NDcsIDB4QzksIDB4NDAsIDB4QzAsIDB4NUIsIDB4RUQsIDB4MkMsIDB4NzQsIDB4OUMsIDB4QkYsIDB4REEsIDB4NzUsCgogMHg5RiwgMHhCQSwgMHhENSwgMHg2NCwgMHhBQywgMHhFRiwgMHgyQSwgMHg3RSwgMHg4MiwgMHg5RCwgMHhCQywgMHhERiwgMHg3QSwgMHg4RSwgMHg4OSwgMHg4MCwKCiAweDlCLCAweEI2LCAweEMxLCAweDU4LCAweEU4LCAweDIzLCAweDY1LCAweEFGLCAweEVBLCAweDI1LCAweDZGLCAweEIxLCAweEM4LCAweDQzLCAweEM1LCAweDU0LAoKIDB4RkMsIDB4MUYsIDB4MjEsIDB4NjMsIDB4QTUsIDB4RjQsIDB4MDcsIDB4MDksIDB4MUIsIDB4MkQsIDB4NzcsIDB4OTksIDB4QjAsIDB4Q0IsIDB4NDYsIDB4Q0EsCgogMHg0NSwgMHhDRiwgMHg0QSwgMHhERSwgMHg3OSwgMHg4QiwgMHg4NiwgMHg5MSwgMHhBOCwgMHhFMywgMHgzRSwgMHg0MiwgMHhDNiwgMHg1MSwgMHhGMywgMHgwRSwKCiAweDEyLCAweDM2LCAweDVBLCAweEVFLCAweDI5LCAweDdCLCAweDhELCAweDhDLCAweDhGLCAweDhBLCAweDg1LCAweDk0LCAweEE3LCAweEYyLCAweDBELCAweDE3LAoKIDB4MzksIDB4NEIsIDB4REQsIDB4N0MsIDB4ODQsIDB4OTcsIDB4QTIsIDB4RkQsIDB4MUMsIDB4MjQsIDB4NkMsIDB4QjQsIDB4QzcsIDB4NTIsIDB4RjYsIDB4MDF9OwoKCgpsb2NhbCBMVEFCTEUgPSB7CgogWzBdID0gMHgwMCwgMHgwMCwgMHgxOSwgMHgwMSwgMHgzMiwgMHgwMiwgMHgxQSwgMHhDNiwgMHg0QiwgMHhDNywgMHgxQiwgMHg2OCwgMHgzMywgMHhFRSwgMHhERiwgMHgwMywKCiAweDY0LCAweDA0LCAweEUwLCAweDBFLCAweDM0LCAweDhELCAweDgxLCAweEVGLCAweDRDLCAweDcxLCAweDA4LCAweEM4LCAweEY4LCAweDY5LCAweDFDLCAweEMxLAoKIDB4N0QsIDB4QzIsIDB4MUQsIDB4QjUsIDB4RjksIDB4QjksIDB4MjcsIDB4NkEsIDB4NEQsIDB4RTQsIDB4QTYsIDB4NzIsIDB4OUEsIDB4QzksIDB4MDksIDB4NzgsCgogMHg2NSwgMHgyRiwgMHg4QSwgMHgwNSwgMHgyMSwgMHgwRiwgMHhFMSwgMHgyNCwgMHgxMiwgMHhGMCwgMHg4MiwgMHg0NSwgMHgzNSwgMHg5MywgMHhEQSwgMHg4RSwKCiAweDk2LCAweDhGLCAweERCLCAweEJELCAweDM2LCAweEQwLCAweENFLCAweDk0LCAweDEzLCAweDVDLCAweEQyLCAweEYxLCAweDQwLCAweDQ2LCAweDgzLCAweDM4LAoKIDB4NjYsIDB4REQsIDB4RkQsIDB4MzAsIDB4QkYsIDB4MDYsIDB4OEIsIDB4NjIsIDB4QjMsIDB4MjUsIDB4RTIsIDB4OTgsIDB4MjIsIDB4ODgsIDB4OTEsIDB4MTAsCgogMHg3RSwgMHg2RSwgMHg0OCwgMHhDMywgMHhBMywgMHhCNiwgMHgxRSwgMHg0MiwgMHgzQSwgMHg2QiwgMHgyOCwgMHg1NCwgMHhGQSwgMHg4NSwgMHgzRCwgMHhCQSwKCiAweDJCLCAweDc5LCAweDBBLCAweDE1LCAweDlCLCAweDlGLCAweDVFLCAweENBLCAweDRFLCAweEQ0LCAweEFDLCAweEU1LCAweEYzLCAweDczLCAweEE3LCAweDU3LAoKIDB4QUYsIDB4NTgsIDB4QTgsIDB4NTAsIDB4RjQsIDB4RUEsIDB4RDYsIDB4NzQsIDB4NEYsIDB4QUUsIDB4RTksIDB4RDUsIDB4RTcsIDB4RTYsIDB4QUQsIDB4RTgsCgogMHgyQywgMHhENywgMHg3NSwgMHg3QSwgMHhFQiwgMHgxNiwgMHgwQiwgMHhGNSwgMHg1OSwgMHhDQiwgMHg1RiwgMHhCMCwgMHg5QywgMHhBOSwgMHg1MSwgMHhBMCwKCiAweDdGLCAweDBDLCAweEY2LCAweDZGLCAweDE3LCAweEM0LCAweDQ5LCAweEVDLCAweEQ4LCAweDQzLCAweDFGLCAweDJELCAweEE0LCAweDc2LCAweDdCLCAweEI3LAoKIDB4Q0MsIDB4QkIsIDB4M0UsIDB4NUEsIDB4RkIsIDB4NjAsIDB4QjEsIDB4ODYsIDB4M0IsIDB4NTIsIDB4QTEsIDB4NkMsIDB4QUEsIDB4NTUsIDB4MjksIDB4OUQsCgogMHg5NywgMHhCMiwgMHg4NywgMHg5MCwgMHg2MSwgMHhCRSwgMHhEQywgMHhGQywgMHhCQywgMHg5NSwgMHhDRiwgMHhDRCwgMHgzNywgMHgzRiwgMHg1QiwgMHhEMSwKCiAweDUzLCAweDM5LCAweDg0LCAweDNDLCAweDQxLCAweEEyLCAweDZELCAweDQ3LCAweDE0LCAweDJBLCAweDlFLCAweDVELCAweDU2LCAweEYyLCAweEQzLCAweEFCLAoKIDB4NDQsIDB4MTEsIDB4OTIsIDB4RDksIDB4MjMsIDB4MjAsIDB4MkUsIDB4ODksIDB4QjQsIDB4N0MsIDB4QjgsIDB4MjYsIDB4NzcsIDB4OTksIDB4RTMsIDB4QTUsCgogMHg2NywgMHg0QSwgMHhFRCwgMHhERSwgMHhDNSwgMHgzMSwgMHhGRSwgMHgxOCwgMHgwRCwgMHg2MywgMHg4QywgMHg4MCwgMHhDMCwgMHhGNywgMHg3MCwgMHgwN307CgoKCmxvY2FsIE1JWFRBQkxFID0gewoKIDB4MDIsIDB4MDMsIDB4MDEsIDB4MDEsCgogMHgwMSwgMHgwMiwgMHgwMywgMHgwMSwKCiAweDAxLCAweDAxLCAweDAyLCAweDAzLAoKIDB4MDMsIDB4MDEsIDB4MDEsIDB4MDJ9OwoKCgpsb2NhbCBJTUlYVEFCTEUgPSB7CgogMHgwRSwgMHgwQiwgMHgwRCwgMHgwOSwKCiAweDA5LCAweDBFLCAweDBCLCAweDBELAoKIDB4MEQsIDB4MDksIDB4MEUsIDB4MEIsCgogMHgwQiwgMHgwRCwgMHgwOSwgMHgwRX07CgoKCmxvY2FsIFJDT04gPSB7CgpbMF0gPSAweDhkLCAweDAxLCAweDAyLCAweDA0LCAweDA4LCAweDEwLCAweDIwLCAweDQwLCAweDgwLCAweDFiLCAweDM2LCAweDZjLCAweGQ4LCAweGFiLCAweDRkLCAweDlhLAoKMHgyZiwgMHg1ZSwgMHhiYywgMHg2MywgMHhjNiwgMHg5NywgMHgzNSwgMHg2YSwgMHhkNCwgMHhiMywgMHg3ZCwgMHhmYSwgMHhlZiwgMHhjNSwgMHg5MSwgMHgzOSwKCjB4NzIsIDB4ZTQsIDB4ZDMsIDB4YmQsIDB4NjEsIDB4YzIsIDB4OWYsIDB4MjUsIDB4NGEsIDB4OTQsIDB4MzMsIDB4NjYsIDB4Y2MsIDB4ODMsIDB4MWQsIDB4M2EsCgoweDc0LCAweGU4LCAweGNiLCAweDhkLCAweDAxLCAweDAyLCAweDA0LCAweDA4LCAweDEwLCAweDIwLCAweDQwLCAweDgwLCAweDFiLCAweDM2LCAweDZjLCAweGQ4LAoKMHhhYiwgMHg0ZCwgMHg5YSwgMHgyZiwgMHg1ZSwgMHhiYywgMHg2MywgMHhjNiwgMHg5NywgMHgzNSwgMHg2YSwgMHhkNCwgMHhiMywgMHg3ZCwgMHhmYSwgMHhlZiwKCjB4YzUsIDB4OTEsIDB4MzksIDB4NzIsIDB4ZTQsIDB4ZDMsIDB4YmQsIDB4NjEsIDB4YzIsIDB4OWYsIDB4MjUsIDB4NGEsIDB4OTQsIDB4MzMsIDB4NjYsIDB4Y2MsCgoweDgzLCAweDFkLCAweDNhLCAweDc0LCAweGU4LCAweGNiLCAweDhkLCAweDAxLCAweDAyLCAweDA0LCAweDA4LCAweDEwLCAweDIwLCAweDQwLCAweDgwLCAweDFiLAoKMHgzNiwgMHg2YywgMHhkOCwgMHhhYiwgMHg0ZCwgMHg5YSwgMHgyZiwgMHg1ZSwgMHhiYywgMHg2MywgMHhjNiwgMHg5NywgMHgzNSwgMHg2YSwgMHhkNCwgMHhiMywKCjB4N2QsIDB4ZmEsIDB4ZWYsIDB4YzUsIDB4OTEsIDB4MzksIDB4NzIsIDB4ZTQsIDB4ZDMsIDB4YmQsIDB4NjEsIDB4YzIsIDB4OWYsIDB4MjUsIDB4NGEsIDB4OTQsCgoweDMzLCAweDY2LCAweGNjLCAweDgzLCAweDFkLCAweDNhLCAweDc0LCAweGU4LCAweGNiLCAweDhkLCAweDAxLCAweDAyLCAweDA0LCAweDA4LCAweDEwLCAweDIwLAoKMHg0MCwgMHg4MCwgMHgxYiwgMHgzNiwgMHg2YywgMHhkOCwgMHhhYiwgMHg0ZCwgMHg5YSwgMHgyZiwgMHg1ZSwgMHhiYywgMHg2MywgMHhjNiwgMHg5NywgMHgzNSwKCjB4NmEsIDB4ZDQsIDB4YjMsIDB4N2QsIDB4ZmEsIDB4ZWYsIDB4YzUsIDB4OTEsIDB4MzksIDB4NzIsIDB4ZTQsIDB4ZDMsIDB4YmQsIDB4NjEsIDB4YzIsIDB4OWYsCgoweDI1LCAweDRhLCAweDk0LCAweDMzLCAweDY2LCAweGNjLCAweDgzLCAweDFkLCAweDNhLCAweDc0LCAweGU4LCAweGNiLCAweDhkLCAweDAxLCAweDAyLCAweDA0LAoKMHgwOCwgMHgxMCwgMHgyMCwgMHg0MCwgMHg4MCwgMHgxYiwgMHgzNiwgMHg2YywgMHhkOCwgMHhhYiwgMHg0ZCwgMHg5YSwgMHgyZiwgMHg1ZSwgMHhiYywgMHg2MywKCjB4YzYsIDB4OTcsIDB4MzUsIDB4NmEsIDB4ZDQsIDB4YjMsIDB4N2QsIDB4ZmEsIDB4ZWYsIDB4YzUsIDB4OTEsIDB4MzksIDB4NzIsIDB4ZTQsIDB4ZDMsIDB4YmQsCgoweDYxLCAweGMyLCAweDlmLCAweDI1LCAweDRhLCAweDk0LCAweDMzLCAweDY2LCAweGNjLCAweDgzLCAweDFkLCAweDNhLCAweDc0LCAweGU4LCAweGNiLCAweDhkfTsKCgoKCgpsb2NhbCBHTVVMID0gZnVuY3Rpb24oQSwgQikKCiAgICBpZihBID09IDB4MDEpIHRoZW4gcmV0dXJuIEI7IGVuZAoKICAgIGlmKEIgPT0gMHgwMSkgdGhlbiByZXR1cm4gQTsgZW5kCgogICAgaWYoQSA9PSAweDAwKSB0aGVuIHJldHVybiAwOyBlbmQKCiAgICBpZihCID09IDB4MDApIHRoZW4gcmV0dXJuIDA7IGVuZAoKCgogICAgbG9jYWwgTEEgPSBMVEFCTEVbQV07CgogICAgbG9jYWwgTEIgPSBMVEFCTEVbQl07CgoKCiAgICBsb2NhbCBzdW0gPSBMQSArIExCOwoKICAgIGlmIChzdW0gPiAweEZGKSB0aGVuIHN1bSA9IHN1bSAtIDB4RkY7IGVuZAoKCgogICAgcmV0dXJuIEVUQUJMRVtzdW1dOwoKZW5kCgoKCmxvY2FsIGJ5dGVTdWIgPSBBcnJheS5zdWJzdGl0dXRlOwoKCgpsb2NhbCBzaGlmdFJvdyA9IEFycmF5LnBlcm11dGU7CgoKCmxvY2FsIG1peENvbCA9IGZ1bmN0aW9uKGksIG1peCkKCiAgICBsb2NhbCBvdXQgPSB7fTsKCgoKICAgIGxvY2FsIGEsIGIsIGMsIGQ7CgoKCiAgICBhID0gR01VTChpWyAxXSwgbWl4WyAxXSk7CgogICAgYiA9IEdNVUwoaVsgMl0sIG1peFsgMl0pOwoKICAgIGMgPSBHTVVMKGlbIDNdLCBtaXhbIDNdKTsKCiAgICBkID0gR01VTChpWyA0XSwgbWl4WyA0XSk7CgogICAgb3V0WyAxXSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgogICAgYSA9IEdNVUwoaVsgMV0sIG1peFsgNV0pOwoKICAgIGIgPSBHTVVMKGlbIDJdLCBtaXhbIDZdKTsKCiAgICBjID0gR01VTChpWyAzXSwgbWl4WyA3XSk7CgogICAgZCA9IEdNVUwoaVsgNF0sIG1peFsgOF0pOwoKICAgIG91dFsgMl0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKICAgIGEgPSBHTVVMKGlbIDFdLCBtaXhbIDldKTsKCiAgICBiID0gR01VTChpWyAyXSwgbWl4WzEwXSk7CgogICAgYyA9IEdNVUwoaVsgM10sIG1peFsxMV0pOwoKICAgIGQgPSBHTVVMKGlbIDRdLCBtaXhbMTJdKTsKCiAgICBvdXRbIDNdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCiAgICBhID0gR01VTChpWyAxXSwgbWl4WzEzXSk7CgogICAgYiA9IEdNVUwoaVsgMl0sIG1peFsxNF0pOwoKICAgIGMgPSBHTVVMKGlbIDNdLCBtaXhbMTVdKTsKCiAgICBkID0gR01VTChpWyA0XSwgbWl4WzE2XSk7CgogICAgb3V0WyA0XSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgoKCgoKICAgIGEgPSBHTVVMKGlbIDVdLCBtaXhbIDFdKTsKCiAgICBiID0gR01VTChpWyA2XSwgbWl4WyAyXSk7CgogICAgYyA9IEdNVUwoaVsgN10sIG1peFsgM10pOwoKICAgIGQgPSBHTVVMKGlbIDhdLCBtaXhbIDRdKTsKCiAgICBvdXRbIDVdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCiAgICBhID0gR01VTChpWyA1XSwgbWl4WyA1XSk7CgogICAgYiA9IEdNVUwoaVsgNl0sIG1peFsgNl0pOwoKICAgIGMgPSBHTVVMKGlbIDddLCBtaXhbIDddKTsKCiAgICBkID0gR01VTChpWyA4XSwgbWl4WyA4XSk7CgogICAgb3V0WyA2XSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgogICAgYSA9IEdNVUwoaVsgNV0sIG1peFsgOV0pOwoKICAgIGIgPSBHTVVMKGlbIDZdLCBtaXhbMTBdKTsKCiAgICBjID0gR01VTChpWyA3XSwgbWl4WzExXSk7CgogICAgZCA9IEdNVUwoaVsgOF0sIG1peFsxMl0pOwoKICAgIG91dFsgN10gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKICAgIGEgPSBHTVVMKGlbIDVdLCBtaXhbMTNdKTsKCiAgICBiID0gR01VTChpWyA2XSwgbWl4WzE0XSk7CgogICAgYyA9IEdNVUwoaVsgN10sIG1peFsxNV0pOwoKICAgIGQgPSBHTVVMKGlbIDhdLCBtaXhbMTZdKTsKCiAgICBvdXRbIDhdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCgoKCgogICAgYSA9IEdNVUwoaVsgOV0sIG1peFsgMV0pOwoKICAgIGIgPSBHTVVMKGlbMTBdLCBtaXhbIDJdKTsKCiAgICBjID0gR01VTChpWzExXSwgbWl4WyAzXSk7CgogICAgZCA9IEdNVUwoaVsxMl0sIG1peFsgNF0pOwoKICAgIG91dFsgOV0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKICAgIGEgPSBHTVVMKGlbIDldLCBtaXhbIDVdKTsKCiAgICBiID0gR01VTChpWzEwXSwgbWl4WyA2XSk7CgogICAgYyA9IEdNVUwoaVsxMV0sIG1peFsgN10pOwoKICAgIGQgPSBHTVVMKGlbMTJdLCBtaXhbIDhdKTsKCiAgICBvdXRbMTBdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCiAgICBhID0gR01VTChpWyA5XSwgbWl4WyA5XSk7CgogICAgYiA9IEdNVUwoaVsxMF0sIG1peFsxMF0pOwoKICAgIGMgPSBHTVVMKGlbMTFdLCBtaXhbMTFdKTsKCiAgICBkID0gR01VTChpWzEyXSwgbWl4WzEyXSk7CgogICAgb3V0WzExXSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgogICAgYSA9IEdNVUwoaVsgOV0sIG1peFsxM10pOwoKICAgIGIgPSBHTVVMKGlbMTBdLCBtaXhbMTRdKTsKCiAgICBjID0gR01VTChpWzExXSwgbWl4WzE1XSk7CgogICAgZCA9IEdNVUwoaVsxMl0sIG1peFsxNl0pOwoKICAgIG91dFsxMl0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKCgoKCiAgICBhID0gR01VTChpWzEzXSwgbWl4WyAxXSk7CgogICAgYiA9IEdNVUwoaVsxNF0sIG1peFsgMl0pOwoKICAgIGMgPSBHTVVMKGlbMTVdLCBtaXhbIDNdKTsKCiAgICBkID0gR01VTChpWzE2XSwgbWl4WyA0XSk7CgogICAgb3V0WzEzXSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgogICAgYSA9IEdNVUwoaVsxM10sIG1peFsgNV0pOwoKICAgIGIgPSBHTVVMKGlbMTRdLCBtaXhbIDZdKTsKCiAgICBjID0gR01VTChpWzE1XSwgbWl4WyA3XSk7CgogICAgZCA9IEdNVUwoaVsxNl0sIG1peFsgOF0pOwoKICAgIG91dFsxNF0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKICAgIGEgPSBHTVVMKGlbMTNdLCBtaXhbIDldKTsKCiAgICBiID0gR01VTChpWzE0XSwgbWl4WzEwXSk7CgogICAgYyA9IEdNVUwoaVsxNV0sIG1peFsxMV0pOwoKICAgIGQgPSBHTVVMKGlbMTZdLCBtaXhbMTJdKTsKCiAgICBvdXRbMTVdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCiAgICBhID0gR01VTChpWzEzXSwgbWl4WzEzXSk7CgogICAgYiA9IEdNVUwoaVsxNF0sIG1peFsxNF0pOwoKICAgIGMgPSBHTVVMKGlbMTVdLCBtaXhbMTVdKTsKCiAgICBkID0gR01VTChpWzE2XSwgbWl4WzE2XSk7CgogICAgb3V0WzE2XSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgoKCiAgICByZXR1cm4gb3V0OwoKZW5kCgoKCmxvY2FsIGtleVJvdW5kID0gZnVuY3Rpb24oa2V5LCByb3VuZCkKCiAgICBsb2NhbCBpID0gKHJvdW5kIC0gMSkgKiAyNDsKCiAgICBsb2NhbCBvdXQgPSBrZXk7CgoKCiAgICBvdXRbMjUgKyBpXSA9IFhPUihrZXlbIDEgKyBpXSwgWE9SKFNCT1hba2V5WzIyICsgaV1dLCBSQ09OW3JvdW5kXSkpOwoKICAgIG91dFsyNiArIGldID0gWE9SKGtleVsgMiArIGldLCBTQk9YW2tleVsyMyArIGldXSk7CgogICAgb3V0WzI3ICsgaV0gPSBYT1Ioa2V5WyAzICsgaV0sIFNCT1hba2V5WzI0ICsgaV1dKTsKCiAgICBvdXRbMjggKyBpXSA9IFhPUihrZXlbIDQgKyBpXSwgU0JPWFtrZXlbMjEgKyBpXV0pOwoKCgogICAgb3V0WzI5ICsgaV0gPSBYT1Iob3V0WzI1ICsgaV0sIGtleVsgNSArIGldKTsKCiAgICBvdXRbMzAgKyBpXSA9IFhPUihvdXRbMjYgKyBpXSwga2V5WyA2ICsgaV0pOwoKICAgIG91dFszMSArIGldID0gWE9SKG91dFsyNyArIGldLCBrZXlbIDcgKyBpXSk7CgogICAgb3V0WzMyICsgaV0gPSBYT1Iob3V0WzI4ICsgaV0sIGtleVsgOCArIGldKTsKCgoKICAgIG91dFszMyArIGldID0gWE9SKG91dFsyOSArIGldLCBrZXlbIDkgKyBpXSk7CgogICAgb3V0WzM0ICsgaV0gPSBYT1Iob3V0WzMwICsgaV0sIGtleVsxMCArIGldKTsKCiAgICBvdXRbMzUgKyBpXSA9IFhPUihvdXRbMzEgKyBpXSwga2V5WzExICsgaV0pOwoKICAgIG91dFszNiArIGldID0gWE9SKG91dFszMiArIGldLCBrZXlbMTIgKyBpXSk7CgoKCiAgICBvdXRbMzcgKyBpXSA9IFhPUihvdXRbMzMgKyBpXSwga2V5WzEzICsgaV0pOwoKICAgIG91dFszOCArIGldID0gWE9SKG91dFszNCArIGldLCBrZXlbMTQgKyBpXSk7CgogICAgb3V0WzM5ICsgaV0gPSBYT1Iob3V0WzM1ICsgaV0sIGtleVsxNSArIGldKTsKCiAgICBvdXRbNDAgKyBpXSA9IFhPUihvdXRbMzYgKyBpXSwga2V5WzE2ICsgaV0pOwoKCgogICAgb3V0WzQxICsgaV0gPSBYT1Iob3V0WzM3ICsgaV0sIGtleVsxNyArIGldKTsKCiAgICBvdXRbNDIgKyBpXSA9IFhPUihvdXRbMzggKyBpXSwga2V5WzE4ICsgaV0pOwoKICAgIG91dFs0MyArIGldID0gWE9SKG91dFszOSArIGldLCBrZXlbMTkgKyBpXSk7CgogICAgb3V0WzQ0ICsgaV0gPSBYT1Iob3V0WzQwICsgaV0sIGtleVsyMCArIGldKTsKCgoKICAgIG91dFs0NSArIGldID0gWE9SKG91dFs0MSArIGldLCBrZXlbMjEgKyBpXSk7CgogICAgb3V0WzQ2ICsgaV0gPSBYT1Iob3V0WzQyICsgaV0sIGtleVsyMiArIGldKTsKCiAgICBvdXRbNDcgKyBpXSA9IFhPUihvdXRbNDMgKyBpXSwga2V5WzIzICsgaV0pOwoKICAgIG91dFs0OCArIGldID0gWE9SKG91dFs0NCArIGldLCBrZXlbMjQgKyBpXSk7CgoKCiAgICByZXR1cm4gb3V0OwoKZW5kCgoKCmxvY2FsIGtleUV4cGFuZCA9IGZ1bmN0aW9uKGtleSkKCiAgICBsb2NhbCBieXRlcyA9IEFycmF5LmNvcHkoa2V5KTsKCgoKICAgIGZvciBpID0gMSwgOCBkbwoKICAgICAgICBrZXlSb3VuZChieXRlcywgaSk7CgogICAgZW5kCgoKCiAgICBsb2NhbCBrZXlzID0ge307CgoKCiAgICBrZXlzWyAxXSA9IEFycmF5LnNsaWNlKGJ5dGVzLCAxLCAxNik7CgogICAga2V5c1sgMl0gPSBBcnJheS5zbGljZShieXRlcywgMTcsIDMyKTsKCiAgICBrZXlzWyAzXSA9IEFycmF5LnNsaWNlKGJ5dGVzLCAzMywgNDgpOwoKICAgIGtleXNbIDRdID0gQXJyYXkuc2xpY2UoYnl0ZXMsIDQ5LCA2NCk7CgogICAga2V5c1sgNV0gPSBBcnJheS5zbGljZShieXRlcywgNjUsIDgwKTsKCiAgICBrZXlzWyA2XSA9IEFycmF5LnNsaWNlKGJ5dGVzLCA4MSwgOTYpOwoKICAgIGtleXNbIDddID0gQXJyYXkuc2xpY2UoYnl0ZXMsIDk3LCAxMTIpOwoKICAgIGtleXNbIDhdID0gQXJyYXkuc2xpY2UoYnl0ZXMsIDExMywgMTI4KTsKCiAgICBrZXlzWyA5XSA9IEFycmF5LnNsaWNlKGJ5dGVzLCAxMjksIDE0NCk7CgogICAga2V5c1sxMF0gPSBBcnJheS5zbGljZShieXRlcywgMTQ1LCAxNjApOwoKICAgIGtleXNbMTFdID0gQXJyYXkuc2xpY2UoYnl0ZXMsIDE2MSwgMTc2KTsKCiAgICBrZXlzWzEyXSA9IEFycmF5LnNsaWNlKGJ5dGVzLCAxNzcsIDE5Mik7CgogICAga2V5c1sxM10gPSBBcnJheS5zbGljZShieXRlcywgMTkzLCAyMDgpOwoKCgogICAgcmV0dXJuIGtleXM7CgoKCmVuZAoKCgpsb2NhbCBhZGRLZXkgPSBBcnJheS5YT1I7CgoKCgoKCgpsb2NhbCBBRVMgPSB7fTsKCgoKQUVTLmJsb2NrU2l6ZSA9IDE2OwoKCgpBRVMuZW5jcnlwdCA9IGZ1bmN0aW9uKGtleSwgYmxvY2spCgoKCiAgICBsb2NhbCBrZXlTY2hlZHVsZSA9IGtleUV4cGFuZChrZXkpOwoKCgogICAgLS1yb3VuZCAwCgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzFdKTsKCgoKICAgIC0tcm91bmQgMQoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgU0JPWCk7CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgUk9XX1NISUZUKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgTUlYVEFCTEUpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVsyXSk7CgoKCiAgICAtLXJvdW5kIDIKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbM10pOwoKCgogICAgLS1yb3VuZCAzCgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBTQk9YKTsKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBNSVhUQUJMRSk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzRdKTsKCgoKICAgIC0tcm91bmQgNAoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgU0JPWCk7CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgUk9XX1NISUZUKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgTUlYVEFCTEUpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVs1XSk7CgoKCiAgICAtLXJvdW5kIDUKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbNl0pOwoKCgogICAgLS1yb3VuZCA2CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBTQk9YKTsKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBNSVhUQUJMRSk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzddKTsKCgoKICAgIC0tcm91bmQgNwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgU0JPWCk7CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgUk9XX1NISUZUKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgTUlYVEFCTEUpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVs4XSk7CgoKCiAgICAtLXJvdW5kIDgKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbOV0pOwoKCgogICAgLS1yb3VuZCA5CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBTQk9YKTsKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBNSVhUQUJMRSk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzEwXSk7CgoKCiAgICAtLXJvdW5kIDEwCgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBTQk9YKTsKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBNSVhUQUJMRSk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzExXSk7CgoKCiAgICAtLXJvdW5kIDExCgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBTQk9YKTsKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBNSVhUQUJMRSk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzEyXSk7CgoKCiAgICAtLXJvdW5kIDEyCgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBTQk9YKTsKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVsxM10pOwoKCgogICAgcmV0dXJuIGJsb2NrOwoKCgplbmQKCgoKQUVTLmRlY3J5cHQgPSBmdW5jdGlvbihrZXksIGJsb2NrKQoKCgogICAgbG9jYWwga2V5U2NoZWR1bGUgPSBrZXlFeHBhbmQoa2V5KTsKCgoKICAgIC0tcm91bmQgMAoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVsxM10pOwoKCgogICAgLS1yb3VuZCAxCgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgSVJPV19TSElGVCk7CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBJU0JPWCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzEyXSk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIElNSVhUQUJMRSk7CgoKCiAgICAtLXJvdW5kIDIKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBJUk9XX1NISUZUKTsKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIElTQk9YKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMTFdKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgSU1JWFRBQkxFKTsKCgoKICAgIC0tcm91bmQgMwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVsxMF0pOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBJTUlYVEFCTEUpOwoKCgogICAgLS1yb3VuZCA0CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgSVJPV19TSElGVCk7CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBJU0JPWCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzldKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgSU1JWFRBQkxFKTsKCgoKICAgIC0tcm91bmQgNQoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVs4XSk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIElNSVhUQUJMRSk7CgoKCiAgICAtLXJvdW5kIDYKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBJUk9XX1NISUZUKTsKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIElTQk9YKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbN10pOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBJTUlYVEFCTEUpOwoKCgogICAgLS1yb3VuZCA3CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgSVJPV19TSElGVCk7CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBJU0JPWCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzZdKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgSU1JWFRBQkxFKTsKCgoKICAgIC0tcm91bmQgOAoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVs1XSk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIElNSVhUQUJMRSk7CgoKCiAgICAtLXJvdW5kIDkKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBJUk9XX1NISUZUKTsKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIElTQk9YKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbNF0pOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBJTUlYVEFCTEUpOwoKCgogICAgLS1yb3VuZCAxMAoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVszXSk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIElNSVhUQUJMRSk7CgoKCiAgICAtLXJvdW5kIDExCgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgSVJPV19TSElGVCk7CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBJU0JPWCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzJdKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgSU1JWFRBQkxFKTsKCgoKICAgIC0tcm91bmQgMTIKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBJUk9XX1NISUZUKTsKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIElTQk9YKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMV0pOwoKCgogICAgcmV0dXJuIGJsb2NrOwoKZW5kCgoKCnJldHVybiBBRVM7AAAAAAAAbG9jYWwgQXJyYXkgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuYXJyYXkiKTsKCmxvY2FsIEJpdCA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5iaXQiKTsKCgoKbG9jYWwgWE9SID0gQml0LmJ4b3I7CgoKCmxvY2FsIFNCT1ggPSB7CgogWzBdID0gMHg2MywgMHg3QywgMHg3NywgMHg3QiwgMHhGMiwgMHg2QiwgMHg2RiwgMHhDNSwgMHgzMCwgMHgwMSwgMHg2NywgMHgyQiwgMHhGRSwgMHhENywgMHhBQiwgMHg3NiwKCiAweENBLCAweDgyLCAweEM5LCAweDdELCAweEZBLCAweDU5LCAweDQ3LCAweEYwLCAweEFELCAweEQ0LCAweEEyLCAweEFGLCAweDlDLCAweEE0LCAweDcyLCAweEMwLAoKIDB4QjcsIDB4RkQsIDB4OTMsIDB4MjYsIDB4MzYsIDB4M0YsIDB4RjcsIDB4Q0MsIDB4MzQsIDB4QTUsIDB4RTUsIDB4RjEsIDB4NzEsIDB4RDgsIDB4MzEsIDB4MTUsCgogMHgwNCwgMHhDNywgMHgyMywgMHhDMywgMHgxOCwgMHg5NiwgMHgwNSwgMHg5QSwgMHgwNywgMHgxMiwgMHg4MCwgMHhFMiwgMHhFQiwgMHgyNywgMHhCMiwgMHg3NSwKCiAweDA5LCAweDgzLCAweDJDLCAweDFBLCAweDFCLCAweDZFLCAweDVBLCAweEEwLCAweDUyLCAweDNCLCAweEQ2LCAweEIzLCAweDI5LCAweEUzLCAweDJGLCAweDg0LAoKIDB4NTMsIDB4RDEsIDB4MDAsIDB4RUQsIDB4MjAsIDB4RkMsIDB4QjEsIDB4NUIsIDB4NkEsIDB4Q0IsIDB4QkUsIDB4MzksIDB4NEEsIDB4NEMsIDB4NTgsIDB4Q0YsCgogMHhEMCwgMHhFRiwgMHhBQSwgMHhGQiwgMHg0MywgMHg0RCwgMHgzMywgMHg4NSwgMHg0NSwgMHhGOSwgMHgwMiwgMHg3RiwgMHg1MCwgMHgzQywgMHg5RiwgMHhBOCwKCiAweDUxLCAweEEzLCAweDQwLCAweDhGLCAweDkyLCAweDlELCAweDM4LCAweEY1LCAweEJDLCAweEI2LCAweERBLCAweDIxLCAweDEwLCAweEZGLCAweEYzLCAweEQyLAoKIDB4Q0QsIDB4MEMsIDB4MTMsIDB4RUMsIDB4NUYsIDB4OTcsIDB4NDQsIDB4MTcsIDB4QzQsIDB4QTcsIDB4N0UsIDB4M0QsIDB4NjQsIDB4NUQsIDB4MTksIDB4NzMsCgogMHg2MCwgMHg4MSwgMHg0RiwgMHhEQywgMHgyMiwgMHgyQSwgMHg5MCwgMHg4OCwgMHg0NiwgMHhFRSwgMHhCOCwgMHgxNCwgMHhERSwgMHg1RSwgMHgwQiwgMHhEQiwKCiAweEUwLCAweDMyLCAweDNBLCAweDBBLCAweDQ5LCAweDA2LCAweDI0LCAweDVDLCAweEMyLCAweEQzLCAweEFDLCAweDYyLCAweDkxLCAweDk1LCAweEU0LCAweDc5LAoKIDB4RTcsIDB4QzgsIDB4MzcsIDB4NkQsIDB4OEQsIDB4RDUsIDB4NEUsIDB4QTksIDB4NkMsIDB4NTYsIDB4RjQsIDB4RUEsIDB4NjUsIDB4N0EsIDB4QUUsIDB4MDgsCgogMHhCQSwgMHg3OCwgMHgyNSwgMHgyRSwgMHgxQywgMHhBNiwgMHhCNCwgMHhDNiwgMHhFOCwgMHhERCwgMHg3NCwgMHgxRiwgMHg0QiwgMHhCRCwgMHg4QiwgMHg4QSwKCiAweDcwLCAweDNFLCAweEI1LCAweDY2LCAweDQ4LCAweDAzLCAweEY2LCAweDBFLCAweDYxLCAweDM1LCAweDU3LCAweEI5LCAweDg2LCAweEMxLCAweDFELCAweDlFLAoKIDB4RTEsIDB4RjgsIDB4OTgsIDB4MTEsIDB4NjksIDB4RDksIDB4OEUsIDB4OTQsIDB4OUIsIDB4MUUsIDB4ODcsIDB4RTksIDB4Q0UsIDB4NTUsIDB4MjgsIDB4REYsCgogMHg4QywgMHhBMSwgMHg4OSwgMHgwRCwgMHhCRiwgMHhFNiwgMHg0MiwgMHg2OCwgMHg0MSwgMHg5OSwgMHgyRCwgMHgwRiwgMHhCMCwgMHg1NCwgMHhCQiwgMHgxNn07CgoKCmxvY2FsIElTQk9YID0gewoKIFswXSA9IDB4NTIsIDB4MDksIDB4NkEsIDB4RDUsIDB4MzAsIDB4MzYsIDB4QTUsIDB4MzgsIDB4QkYsIDB4NDAsIDB4QTMsIDB4OUUsIDB4ODEsIDB4RjMsIDB4RDcsIDB4RkIsCgogMHg3QywgMHhFMywgMHgzOSwgMHg4MiwgMHg5QiwgMHgyRiwgMHhGRiwgMHg4NywgMHgzNCwgMHg4RSwgMHg0MywgMHg0NCwgMHhDNCwgMHhERSwgMHhFOSwgMHhDQiwKCiAweDU0LCAweDdCLCAweDk0LCAweDMyLCAweEE2LCAweEMyLCAweDIzLCAweDNELCAweEVFLCAweDRDLCAweDk1LCAweDBCLCAweDQyLCAweEZBLCAweEMzLCAweDRFLAoKIDB4MDgsIDB4MkUsIDB4QTEsIDB4NjYsIDB4MjgsIDB4RDksIDB4MjQsIDB4QjIsIDB4NzYsIDB4NUIsIDB4QTIsIDB4NDksIDB4NkQsIDB4OEIsIDB4RDEsIDB4MjUsCgogMHg3MiwgMHhGOCwgMHhGNiwgMHg2NCwgMHg4NiwgMHg2OCwgMHg5OCwgMHgxNiwgMHhENCwgMHhBNCwgMHg1QywgMHhDQywgMHg1RCwgMHg2NSwgMHhCNiwgMHg5MiwKCiAweDZDLCAweDcwLCAweDQ4LCAweDUwLCAweEZELCAweEVELCAweEI5LCAweERBLCAweDVFLCAweDE1LCAweDQ2LCAweDU3LCAweEE3LCAweDhELCAweDlELCAweDg0LAoKIDB4OTAsIDB4RDgsIDB4QUIsIDB4MDAsIDB4OEMsIDB4QkMsIDB4RDMsIDB4MEEsIDB4RjcsIDB4RTQsIDB4NTgsIDB4MDUsIDB4QjgsIDB4QjMsIDB4NDUsIDB4MDYsCgogMHhEMCwgMHgyQywgMHgxRSwgMHg4RiwgMHhDQSwgMHgzRiwgMHgwRiwgMHgwMiwgMHhDMSwgMHhBRiwgMHhCRCwgMHgwMywgMHgwMSwgMHgxMywgMHg4QSwgMHg2QiwKCiAweDNBLCAweDkxLCAweDExLCAweDQxLCAweDRGLCAweDY3LCAweERDLCAweEVBLCAweDk3LCAweEYyLCAweENGLCAweENFLCAweEYwLCAweEI0LCAweEU2LCAweDczLAoKIDB4OTYsIDB4QUMsIDB4NzQsIDB4MjIsIDB4RTcsIDB4QUQsIDB4MzUsIDB4ODUsIDB4RTIsIDB4RjksIDB4MzcsIDB4RTgsIDB4MUMsIDB4NzUsIDB4REYsIDB4NkUsCgogMHg0NywgMHhGMSwgMHgxQSwgMHg3MSwgMHgxRCwgMHgyOSwgMHhDNSwgMHg4OSwgMHg2RiwgMHhCNywgMHg2MiwgMHgwRSwgMHhBQSwgMHgxOCwgMHhCRSwgMHgxQiwKCiAweEZDLCAweDU2LCAweDNFLCAweDRCLCAweEM2LCAweEQyLCAweDc5LCAweDIwLCAweDlBLCAweERCLCAweEMwLCAweEZFLCAweDc4LCAweENELCAweDVBLCAweEY0LAoKIDB4MUYsIDB4REQsIDB4QTgsIDB4MzMsIDB4ODgsIDB4MDcsIDB4QzcsIDB4MzEsIDB4QjEsIDB4MTIsIDB4MTAsIDB4NTksIDB4MjcsIDB4ODAsIDB4RUMsIDB4NUYsCgogMHg2MCwgMHg1MSwgMHg3RiwgMHhBOSwgMHgxOSwgMHhCNSwgMHg0QSwgMHgwRCwgMHgyRCwgMHhFNSwgMHg3QSwgMHg5RiwgMHg5MywgMHhDOSwgMHg5QywgMHhFRiwKCiAweEEwLCAweEUwLCAweDNCLCAweDRELCAweEFFLCAweDJBLCAweEY1LCAweEIwLCAweEM4LCAweEVCLCAweEJCLCAweDNDLCAweDgzLCAweDUzLCAweDk5LCAweDYxLAoKIDB4MTcsIDB4MkIsIDB4MDQsIDB4N0UsIDB4QkEsIDB4NzcsIDB4RDYsIDB4MjYsIDB4RTEsIDB4NjksIDB4MTQsIDB4NjMsIDB4NTUsIDB4MjEsIDB4MEMsIDB4N0R9OwoKCgpsb2NhbCBST1dfU0hJRlQgPSAgeyAgMSwgIDYsIDExLCAxNiwgIDUsIDEwLCAxNSwgIDQsICA5LCAxNCwgIDMsICA4LCAxMywgIDIsICA3LCAxMiwgfTsKCmxvY2FsIElST1dfU0hJRlQgPSB7ICAxLCAxNCwgMTEsICA4LCAgNSwgIDIsIDE1LCAxMiwgIDksICA2LCAgMywgMTYsIDEzLCAxMCwgIDcsICA0LCB9OwoKCgpsb2NhbCBFVEFCTEUgPSB7CgogWzBdID0gMHgwMSwgMHgwMywgMHgwNSwgMHgwRiwgMHgxMSwgMHgzMywgMHg1NSwgMHhGRiwgMHgxQSwgMHgyRSwgMHg3MiwgMHg5NiwgMHhBMSwgMHhGOCwgMHgxMywgMHgzNSwKCiAweDVGLCAweEUxLCAweDM4LCAweDQ4LCAweEQ4LCAweDczLCAweDk1LCAweEE0LCAweEY3LCAweDAyLCAweDA2LCAweDBBLCAweDFFLCAweDIyLCAweDY2LCAweEFBLAoKIDB4RTUsIDB4MzQsIDB4NUMsIDB4RTQsIDB4MzcsIDB4NTksIDB4RUIsIDB4MjYsIDB4NkEsIDB4QkUsIDB4RDksIDB4NzAsIDB4OTAsIDB4QUIsIDB4RTYsIDB4MzEsCgogMHg1MywgMHhGNSwgMHgwNCwgMHgwQywgMHgxNCwgMHgzQywgMHg0NCwgMHhDQywgMHg0RiwgMHhEMSwgMHg2OCwgMHhCOCwgMHhEMywgMHg2RSwgMHhCMiwgMHhDRCwKCiAweDRDLCAweEQ0LCAweDY3LCAweEE5LCAweEUwLCAweDNCLCAweDRELCAweEQ3LCAweDYyLCAweEE2LCAweEYxLCAweDA4LCAweDE4LCAweDI4LCAweDc4LCAweDg4LAoKIDB4ODMsIDB4OUUsIDB4QjksIDB4RDAsIDB4NkIsIDB4QkQsIDB4REMsIDB4N0YsIDB4ODEsIDB4OTgsIDB4QjMsIDB4Q0UsIDB4NDksIDB4REIsIDB4NzYsIDB4OUEsCgogMHhCNSwgMHhDNCwgMHg1NywgMHhGOSwgMHgxMCwgMHgzMCwgMHg1MCwgMHhGMCwgMHgwQiwgMHgxRCwgMHgyNywgMHg2OSwgMHhCQiwgMHhENiwgMHg2MSwgMHhBMywKCiAweEZFLCAweDE5LCAweDJCLCAweDdELCAweDg3LCAweDkyLCAweEFELCAweEVDLCAweDJGLCAweDcxLCAweDkzLCAweEFFLCAweEU5LCAweDIwLCAweDYwLCAweEEwLAoKIDB4RkIsIDB4MTYsIDB4M0EsIDB4NEUsIDB4RDIsIDB4NkQsIDB4QjcsIDB4QzIsIDB4NUQsIDB4RTcsIDB4MzIsIDB4NTYsIDB4RkEsIDB4MTUsIDB4M0YsIDB4NDEsCgogMHhDMywgMHg1RSwgMHhFMiwgMHgzRCwgMHg0NywgMHhDOSwgMHg0MCwgMHhDMCwgMHg1QiwgMHhFRCwgMHgyQywgMHg3NCwgMHg5QywgMHhCRiwgMHhEQSwgMHg3NSwKCiAweDlGLCAweEJBLCAweEQ1LCAweDY0LCAweEFDLCAweEVGLCAweDJBLCAweDdFLCAweDgyLCAweDlELCAweEJDLCAweERGLCAweDdBLCAweDhFLCAweDg5LCAweDgwLAoKIDB4OUIsIDB4QjYsIDB4QzEsIDB4NTgsIDB4RTgsIDB4MjMsIDB4NjUsIDB4QUYsIDB4RUEsIDB4MjUsIDB4NkYsIDB4QjEsIDB4QzgsIDB4NDMsIDB4QzUsIDB4NTQsCgogMHhGQywgMHgxRiwgMHgyMSwgMHg2MywgMHhBNSwgMHhGNCwgMHgwNywgMHgwOSwgMHgxQiwgMHgyRCwgMHg3NywgMHg5OSwgMHhCMCwgMHhDQiwgMHg0NiwgMHhDQSwKCiAweDQ1LCAweENGLCAweDRBLCAweERFLCAweDc5LCAweDhCLCAweDg2LCAweDkxLCAweEE4LCAweEUzLCAweDNFLCAweDQyLCAweEM2LCAweDUxLCAweEYzLCAweDBFLAoKIDB4MTIsIDB4MzYsIDB4NUEsIDB4RUUsIDB4MjksIDB4N0IsIDB4OEQsIDB4OEMsIDB4OEYsIDB4OEEsIDB4ODUsIDB4OTQsIDB4QTcsIDB4RjIsIDB4MEQsIDB4MTcsCgogMHgzOSwgMHg0QiwgMHhERCwgMHg3QywgMHg4NCwgMHg5NywgMHhBMiwgMHhGRCwgMHgxQywgMHgyNCwgMHg2QywgMHhCNCwgMHhDNywgMHg1MiwgMHhGNiwgMHgwMX07CgoKCmxvY2FsIExUQUJMRSA9IHsKCiBbMF0gPSAweDAwLCAweDAwLCAweDE5LCAweDAxLCAweDMyLCAweDAyLCAweDFBLCAweEM2LCAweDRCLCAweEM3LCAweDFCLCAweDY4LCAweDMzLCAweEVFLCAweERGLCAweDAzLAoKIDB4NjQsIDB4MDQsIDB4RTAsIDB4MEUsIDB4MzQsIDB4OEQsIDB4ODEsIDB4RUYsIDB4NEMsIDB4NzEsIDB4MDgsIDB4QzgsIDB4RjgsIDB4NjksIDB4MUMsIDB4QzEsCgogMHg3RCwgMHhDMiwgMHgxRCwgMHhCNSwgMHhGOSwgMHhCOSwgMHgyNywgMHg2QSwgMHg0RCwgMHhFNCwgMHhBNiwgMHg3MiwgMHg5QSwgMHhDOSwgMHgwOSwgMHg3OCwKCiAweDY1LCAweDJGLCAweDhBLCAweDA1LCAweDIxLCAweDBGLCAweEUxLCAweDI0LCAweDEyLCAweEYwLCAweDgyLCAweDQ1LCAweDM1LCAweDkzLCAweERBLCAweDhFLAoKIDB4OTYsIDB4OEYsIDB4REIsIDB4QkQsIDB4MzYsIDB4RDAsIDB4Q0UsIDB4OTQsIDB4MTMsIDB4NUMsIDB4RDIsIDB4RjEsIDB4NDAsIDB4NDYsIDB4ODMsIDB4MzgsCgogMHg2NiwgMHhERCwgMHhGRCwgMHgzMCwgMHhCRiwgMHgwNiwgMHg4QiwgMHg2MiwgMHhCMywgMHgyNSwgMHhFMiwgMHg5OCwgMHgyMiwgMHg4OCwgMHg5MSwgMHgxMCwKCiAweDdFLCAweDZFLCAweDQ4LCAweEMzLCAweEEzLCAweEI2LCAweDFFLCAweDQyLCAweDNBLCAweDZCLCAweDI4LCAweDU0LCAweEZBLCAweDg1LCAweDNELCAweEJBLAoKIDB4MkIsIDB4NzksIDB4MEEsIDB4MTUsIDB4OUIsIDB4OUYsIDB4NUUsIDB4Q0EsIDB4NEUsIDB4RDQsIDB4QUMsIDB4RTUsIDB4RjMsIDB4NzMsIDB4QTcsIDB4NTcsCgogMHhBRiwgMHg1OCwgMHhBOCwgMHg1MCwgMHhGNCwgMHhFQSwgMHhENiwgMHg3NCwgMHg0RiwgMHhBRSwgMHhFOSwgMHhENSwgMHhFNywgMHhFNiwgMHhBRCwgMHhFOCwKCiAweDJDLCAweEQ3LCAweDc1LCAweDdBLCAweEVCLCAweDE2LCAweDBCLCAweEY1LCAweDU5LCAweENCLCAweDVGLCAweEIwLCAweDlDLCAweEE5LCAweDUxLCAweEEwLAoKIDB4N0YsIDB4MEMsIDB4RjYsIDB4NkYsIDB4MTcsIDB4QzQsIDB4NDksIDB4RUMsIDB4RDgsIDB4NDMsIDB4MUYsIDB4MkQsIDB4QTQsIDB4NzYsIDB4N0IsIDB4QjcsCgogMHhDQywgMHhCQiwgMHgzRSwgMHg1QSwgMHhGQiwgMHg2MCwgMHhCMSwgMHg4NiwgMHgzQiwgMHg1MiwgMHhBMSwgMHg2QywgMHhBQSwgMHg1NSwgMHgyOSwgMHg5RCwKCiAweDk3LCAweEIyLCAweDg3LCAweDkwLCAweDYxLCAweEJFLCAweERDLCAweEZDLCAweEJDLCAweDk1LCAweENGLCAweENELCAweDM3LCAweDNGLCAweDVCLCAweEQxLAoKIDB4NTMsIDB4MzksIDB4ODQsIDB4M0MsIDB4NDEsIDB4QTIsIDB4NkQsIDB4NDcsIDB4MTQsIDB4MkEsIDB4OUUsIDB4NUQsIDB4NTYsIDB4RjIsIDB4RDMsIDB4QUIsCgogMHg0NCwgMHgxMSwgMHg5MiwgMHhEOSwgMHgyMywgMHgyMCwgMHgyRSwgMHg4OSwgMHhCNCwgMHg3QywgMHhCOCwgMHgyNiwgMHg3NywgMHg5OSwgMHhFMywgMHhBNSwKCiAweDY3LCAweDRBLCAweEVELCAweERFLCAweEM1LCAweDMxLCAweEZFLCAweDE4LCAweDBELCAweDYzLCAweDhDLCAweDgwLCAweEMwLCAweEY3LCAweDcwLCAweDA3fTsKCgoKbG9jYWwgTUlYVEFCTEUgPSB7CgogMHgwMiwgMHgwMywgMHgwMSwgMHgwMSwKCiAweDAxLCAweDAyLCAweDAzLCAweDAxLAoKIDB4MDEsIDB4MDEsIDB4MDIsIDB4MDMsCgogMHgwMywgMHgwMSwgMHgwMSwgMHgwMn07CgoKCmxvY2FsIElNSVhUQUJMRSA9IHsKCiAweDBFLCAweDBCLCAweDBELCAweDA5LAoKIDB4MDksIDB4MEUsIDB4MEIsIDB4MEQsCgogMHgwRCwgMHgwOSwgMHgwRSwgMHgwQiwKCiAweDBCLCAweDBELCAweDA5LCAweDBFfTsKCgoKbG9jYWwgUkNPTiA9IHsKClswXSA9IDB4OGQsIDB4MDEsIDB4MDIsIDB4MDQsIDB4MDgsIDB4MTAsIDB4MjAsIDB4NDAsIDB4ODAsIDB4MWIsIDB4MzYsIDB4NmMsIDB4ZDgsIDB4YWIsIDB4NGQsIDB4OWEsCgoweDJmLCAweDVlLCAweGJjLCAweDYzLCAweGM2LCAweDk3LCAweDM1LCAweDZhLCAweGQ0LCAweGIzLCAweDdkLCAweGZhLCAweGVmLCAweGM1LCAweDkxLCAweDM5LAoKMHg3MiwgMHhlNCwgMHhkMywgMHhiZCwgMHg2MSwgMHhjMiwgMHg5ZiwgMHgyNSwgMHg0YSwgMHg5NCwgMHgzMywgMHg2NiwgMHhjYywgMHg4MywgMHgxZCwgMHgzYSwKCjB4NzQsIDB4ZTgsIDB4Y2IsIDB4OGQsIDB4MDEsIDB4MDIsIDB4MDQsIDB4MDgsIDB4MTAsIDB4MjAsIDB4NDAsIDB4ODAsIDB4MWIsIDB4MzYsIDB4NmMsIDB4ZDgsCgoweGFiLCAweDRkLCAweDlhLCAweDJmLCAweDVlLCAweGJjLCAweDYzLCAweGM2LCAweDk3LCAweDM1LCAweDZhLCAweGQ0LCAweGIzLCAweDdkLCAweGZhLCAweGVmLAoKMHhjNSwgMHg5MSwgMHgzOSwgMHg3MiwgMHhlNCwgMHhkMywgMHhiZCwgMHg2MSwgMHhjMiwgMHg5ZiwgMHgyNSwgMHg0YSwgMHg5NCwgMHgzMywgMHg2NiwgMHhjYywKCjB4ODMsIDB4MWQsIDB4M2EsIDB4NzQsIDB4ZTgsIDB4Y2IsIDB4OGQsIDB4MDEsIDB4MDIsIDB4MDQsIDB4MDgsIDB4MTAsIDB4MjAsIDB4NDAsIDB4ODAsIDB4MWIsCgoweDM2LCAweDZjLCAweGQ4LCAweGFiLCAweDRkLCAweDlhLCAweDJmLCAweDVlLCAweGJjLCAweDYzLCAweGM2LCAweDk3LCAweDM1LCAweDZhLCAweGQ0LCAweGIzLAoKMHg3ZCwgMHhmYSwgMHhlZiwgMHhjNSwgMHg5MSwgMHgzOSwgMHg3MiwgMHhlNCwgMHhkMywgMHhiZCwgMHg2MSwgMHhjMiwgMHg5ZiwgMHgyNSwgMHg0YSwgMHg5NCwKCjB4MzMsIDB4NjYsIDB4Y2MsIDB4ODMsIDB4MWQsIDB4M2EsIDB4NzQsIDB4ZTgsIDB4Y2IsIDB4OGQsIDB4MDEsIDB4MDIsIDB4MDQsIDB4MDgsIDB4MTAsIDB4MjAsCgoweDQwLCAweDgwLCAweDFiLCAweDM2LCAweDZjLCAweGQ4LCAweGFiLCAweDRkLCAweDlhLCAweDJmLCAweDVlLCAweGJjLCAweDYzLCAweGM2LCAweDk3LCAweDM1LAoKMHg2YSwgMHhkNCwgMHhiMywgMHg3ZCwgMHhmYSwgMHhlZiwgMHhjNSwgMHg5MSwgMHgzOSwgMHg3MiwgMHhlNCwgMHhkMywgMHhiZCwgMHg2MSwgMHhjMiwgMHg5ZiwKCjB4MjUsIDB4NGEsIDB4OTQsIDB4MzMsIDB4NjYsIDB4Y2MsIDB4ODMsIDB4MWQsIDB4M2EsIDB4NzQsIDB4ZTgsIDB4Y2IsIDB4OGQsIDB4MDEsIDB4MDIsIDB4MDQsCgoweDA4LCAweDEwLCAweDIwLCAweDQwLCAweDgwLCAweDFiLCAweDM2LCAweDZjLCAweGQ4LCAweGFiLCAweDRkLCAweDlhLCAweDJmLCAweDVlLCAweGJjLCAweDYzLAoKMHhjNiwgMHg5NywgMHgzNSwgMHg2YSwgMHhkNCwgMHhiMywgMHg3ZCwgMHhmYSwgMHhlZiwgMHhjNSwgMHg5MSwgMHgzOSwgMHg3MiwgMHhlNCwgMHhkMywgMHhiZCwKCjB4NjEsIDB4YzIsIDB4OWYsIDB4MjUsIDB4NGEsIDB4OTQsIDB4MzMsIDB4NjYsIDB4Y2MsIDB4ODMsIDB4MWQsIDB4M2EsIDB4NzQsIDB4ZTgsIDB4Y2IsIDB4OGR9OwoKCgoKCmxvY2FsIEdNVUwgPSBmdW5jdGlvbihBLCBCKQoKICAgIGlmKEEgPT0gMHgwMSkgdGhlbiByZXR1cm4gQjsgZW5kCgogICAgaWYoQiA9PSAweDAxKSB0aGVuIHJldHVybiBBOyBlbmQKCiAgICBpZihBID09IDB4MDApIHRoZW4gcmV0dXJuIDA7IGVuZAoKICAgIGlmKEIgPT0gMHgwMCkgdGhlbiByZXR1cm4gMDsgZW5kCgoKCiAgICBsb2NhbCBMQSA9IExUQUJMRVtBXTsKCiAgICBsb2NhbCBMQiA9IExUQUJMRVtCXTsKCgoKICAgIGxvY2FsIHN1bSA9IExBICsgTEI7CgogICAgaWYgKHN1bSA+IDB4RkYpIHRoZW4gc3VtID0gc3VtIC0gMHhGRjsgZW5kCgoKCiAgICByZXR1cm4gRVRBQkxFW3N1bV07CgplbmQKCgoKbG9jYWwgYnl0ZVN1YiA9IEFycmF5LnN1YnN0aXR1dGU7CgoKCmxvY2FsIHNoaWZ0Um93ID0gQXJyYXkucGVybXV0ZTsKCgoKbG9jYWwgbWl4Q29sID0gZnVuY3Rpb24oaSwgbWl4KQoKICAgIGxvY2FsIG91dCA9IHt9OwoKCgogICAgbG9jYWwgYSwgYiwgYywgZDsKCgoKICAgIGEgPSBHTVVMKGlbIDFdLCBtaXhbIDFdKTsKCiAgICBiID0gR01VTChpWyAyXSwgbWl4WyAyXSk7CgogICAgYyA9IEdNVUwoaVsgM10sIG1peFsgM10pOwoKICAgIGQgPSBHTVVMKGlbIDRdLCBtaXhbIDRdKTsKCiAgICBvdXRbIDFdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCiAgICBhID0gR01VTChpWyAxXSwgbWl4WyA1XSk7CgogICAgYiA9IEdNVUwoaVsgMl0sIG1peFsgNl0pOwoKICAgIGMgPSBHTVVMKGlbIDNdLCBtaXhbIDddKTsKCiAgICBkID0gR01VTChpWyA0XSwgbWl4WyA4XSk7CgogICAgb3V0WyAyXSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgogICAgYSA9IEdNVUwoaVsgMV0sIG1peFsgOV0pOwoKICAgIGIgPSBHTVVMKGlbIDJdLCBtaXhbMTBdKTsKCiAgICBjID0gR01VTChpWyAzXSwgbWl4WzExXSk7CgogICAgZCA9IEdNVUwoaVsgNF0sIG1peFsxMl0pOwoKICAgIG91dFsgM10gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKICAgIGEgPSBHTVVMKGlbIDFdLCBtaXhbMTNdKTsKCiAgICBiID0gR01VTChpWyAyXSwgbWl4WzE0XSk7CgogICAgYyA9IEdNVUwoaVsgM10sIG1peFsxNV0pOwoKICAgIGQgPSBHTVVMKGlbIDRdLCBtaXhbMTZdKTsKCiAgICBvdXRbIDRdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCgoKCgogICAgYSA9IEdNVUwoaVsgNV0sIG1peFsgMV0pOwoKICAgIGIgPSBHTVVMKGlbIDZdLCBtaXhbIDJdKTsKCiAgICBjID0gR01VTChpWyA3XSwgbWl4WyAzXSk7CgogICAgZCA9IEdNVUwoaVsgOF0sIG1peFsgNF0pOwoKICAgIG91dFsgNV0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKICAgIGEgPSBHTVVMKGlbIDVdLCBtaXhbIDVdKTsKCiAgICBiID0gR01VTChpWyA2XSwgbWl4WyA2XSk7CgogICAgYyA9IEdNVUwoaVsgN10sIG1peFsgN10pOwoKICAgIGQgPSBHTVVMKGlbIDhdLCBtaXhbIDhdKTsKCiAgICBvdXRbIDZdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCiAgICBhID0gR01VTChpWyA1XSwgbWl4WyA5XSk7CgogICAgYiA9IEdNVUwoaVsgNl0sIG1peFsxMF0pOwoKICAgIGMgPSBHTVVMKGlbIDddLCBtaXhbMTFdKTsKCiAgICBkID0gR01VTChpWyA4XSwgbWl4WzEyXSk7CgogICAgb3V0WyA3XSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgogICAgYSA9IEdNVUwoaVsgNV0sIG1peFsxM10pOwoKICAgIGIgPSBHTVVMKGlbIDZdLCBtaXhbMTRdKTsKCiAgICBjID0gR01VTChpWyA3XSwgbWl4WzE1XSk7CgogICAgZCA9IEdNVUwoaVsgOF0sIG1peFsxNl0pOwoKICAgIG91dFsgOF0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKCgoKCiAgICBhID0gR01VTChpWyA5XSwgbWl4WyAxXSk7CgogICAgYiA9IEdNVUwoaVsxMF0sIG1peFsgMl0pOwoKICAgIGMgPSBHTVVMKGlbMTFdLCBtaXhbIDNdKTsKCiAgICBkID0gR01VTChpWzEyXSwgbWl4WyA0XSk7CgogICAgb3V0WyA5XSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgogICAgYSA9IEdNVUwoaVsgOV0sIG1peFsgNV0pOwoKICAgIGIgPSBHTVVMKGlbMTBdLCBtaXhbIDZdKTsKCiAgICBjID0gR01VTChpWzExXSwgbWl4WyA3XSk7CgogICAgZCA9IEdNVUwoaVsxMl0sIG1peFsgOF0pOwoKICAgIG91dFsxMF0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKICAgIGEgPSBHTVVMKGlbIDldLCBtaXhbIDldKTsKCiAgICBiID0gR01VTChpWzEwXSwgbWl4WzEwXSk7CgogICAgYyA9IEdNVUwoaVsxMV0sIG1peFsxMV0pOwoKICAgIGQgPSBHTVVMKGlbMTJdLCBtaXhbMTJdKTsKCiAgICBvdXRbMTFdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCiAgICBhID0gR01VTChpWyA5XSwgbWl4WzEzXSk7CgogICAgYiA9IEdNVUwoaVsxMF0sIG1peFsxNF0pOwoKICAgIGMgPSBHTVVMKGlbMTFdLCBtaXhbMTVdKTsKCiAgICBkID0gR01VTChpWzEyXSwgbWl4WzE2XSk7CgogICAgb3V0WzEyXSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgoKCgoKICAgIGEgPSBHTVVMKGlbMTNdLCBtaXhbIDFdKTsKCiAgICBiID0gR01VTChpWzE0XSwgbWl4WyAyXSk7CgogICAgYyA9IEdNVUwoaVsxNV0sIG1peFsgM10pOwoKICAgIGQgPSBHTVVMKGlbMTZdLCBtaXhbIDRdKTsKCiAgICBvdXRbMTNdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCiAgICBhID0gR01VTChpWzEzXSwgbWl4WyA1XSk7CgogICAgYiA9IEdNVUwoaVsxNF0sIG1peFsgNl0pOwoKICAgIGMgPSBHTVVMKGlbMTVdLCBtaXhbIDddKTsKCiAgICBkID0gR01VTChpWzE2XSwgbWl4WyA4XSk7CgogICAgb3V0WzE0XSA9IFhPUihYT1IoYSwgYiksIFhPUihjLCBkKSk7CgogICAgYSA9IEdNVUwoaVsxM10sIG1peFsgOV0pOwoKICAgIGIgPSBHTVVMKGlbMTRdLCBtaXhbMTBdKTsKCiAgICBjID0gR01VTChpWzE1XSwgbWl4WzExXSk7CgogICAgZCA9IEdNVUwoaVsxNl0sIG1peFsxMl0pOwoKICAgIG91dFsxNV0gPSBYT1IoWE9SKGEsIGIpLCBYT1IoYywgZCkpOwoKICAgIGEgPSBHTVVMKGlbMTNdLCBtaXhbMTNdKTsKCiAgICBiID0gR01VTChpWzE0XSwgbWl4WzE0XSk7CgogICAgYyA9IEdNVUwoaVsxNV0sIG1peFsxNV0pOwoKICAgIGQgPSBHTVVMKGlbMTZdLCBtaXhbMTZdKTsKCiAgICBvdXRbMTZdID0gWE9SKFhPUihhLCBiKSwgWE9SKGMsIGQpKTsKCgoKICAgIHJldHVybiBvdXQ7CgplbmQKCgoKbG9jYWwga2V5Um91bmQgPSBmdW5jdGlvbihrZXksIHJvdW5kKQoKICAgIGxvY2FsIGkgPSAocm91bmQgLSAxKSAqIDMyOwoKICAgIGxvY2FsIG91dCA9IGtleTsKCgoKICAgIG91dFszMyArIGldID0gWE9SKGtleVsgMSArIGldLCBYT1IoU0JPWFtrZXlbMzAgKyBpXV0sIFJDT05bcm91bmRdKSk7CgogICAgb3V0WzM0ICsgaV0gPSBYT1Ioa2V5WyAyICsgaV0sIFNCT1hba2V5WzMxICsgaV1dKTsKCiAgICBvdXRbMzUgKyBpXSA9IFhPUihrZXlbIDMgKyBpXSwgU0JPWFtrZXlbMzIgKyBpXV0pOwoKICAgIG91dFszNiArIGldID0gWE9SKGtleVsgNCArIGldLCBTQk9YW2tleVsyOSArIGldXSk7CgoKCiAgICBvdXRbMzcgKyBpXSA9IFhPUihvdXRbMzMgKyBpXSwga2V5WyA1ICsgaV0pOwoKICAgIG91dFszOCArIGldID0gWE9SKG91dFszNCArIGldLCBrZXlbIDYgKyBpXSk7CgogICAgb3V0WzM5ICsgaV0gPSBYT1Iob3V0WzM1ICsgaV0sIGtleVsgNyArIGldKTsKCiAgICBvdXRbNDAgKyBpXSA9IFhPUihvdXRbMzYgKyBpXSwga2V5WyA4ICsgaV0pOwoKCgogICAgb3V0WzQxICsgaV0gPSBYT1Iob3V0WzM3ICsgaV0sIGtleVsgOSArIGldKTsKCiAgICBvdXRbNDIgKyBpXSA9IFhPUihvdXRbMzggKyBpXSwga2V5WzEwICsgaV0pOwoKICAgIG91dFs0MyArIGldID0gWE9SKG91dFszOSArIGldLCBrZXlbMTEgKyBpXSk7CgogICAgb3V0WzQ0ICsgaV0gPSBYT1Iob3V0WzQwICsgaV0sIGtleVsxMiArIGldKTsKCgoKICAgIG91dFs0NSArIGldID0gWE9SKG91dFs0MSArIGldLCBrZXlbMTMgKyBpXSk7CgogICAgb3V0WzQ2ICsgaV0gPSBYT1Iob3V0WzQyICsgaV0sIGtleVsxNCArIGldKTsKCiAgICBvdXRbNDcgKyBpXSA9IFhPUihvdXRbNDMgKyBpXSwga2V5WzE1ICsgaV0pOwoKICAgIG91dFs0OCArIGldID0gWE9SKG91dFs0NCArIGldLCBrZXlbMTYgKyBpXSk7CgoKCgoKICAgIG91dFs0OSArIGldID0gWE9SKFNCT1hbb3V0WzQ1ICsgaV1dLCBrZXlbMTcgKyBpXSk7CgogICAgb3V0WzUwICsgaV0gPSBYT1IoU0JPWFtvdXRbNDYgKyBpXV0sIGtleVsxOCArIGldKTsKCiAgICBvdXRbNTEgKyBpXSA9IFhPUihTQk9YW291dFs0NyArIGldXSwga2V5WzE5ICsgaV0pOwoKICAgIG91dFs1MiArIGldID0gWE9SKFNCT1hbb3V0WzQ4ICsgaV1dLCBrZXlbMjAgKyBpXSk7CgoKCiAgICBvdXRbNTMgKyBpXSA9IFhPUihvdXRbNDkgKyBpXSwga2V5WzIxICsgaV0pOwoKICAgIG91dFs1NCArIGldID0gWE9SKG91dFs1MCArIGldLCBrZXlbMjIgKyBpXSk7CgogICAgb3V0WzU1ICsgaV0gPSBYT1Iob3V0WzUxICsgaV0sIGtleVsyMyArIGldKTsKCiAgICBvdXRbNTYgKyBpXSA9IFhPUihvdXRbNTIgKyBpXSwga2V5WzI0ICsgaV0pOwoKCgogICAgb3V0WzU3ICsgaV0gPSBYT1Iob3V0WzUzICsgaV0sIGtleVsyNSArIGldKTsKCiAgICBvdXRbNTggKyBpXSA9IFhPUihvdXRbNTQgKyBpXSwga2V5WzI2ICsgaV0pOwoKICAgIG91dFs1OSArIGldID0gWE9SKG91dFs1NSArIGldLCBrZXlbMjcgKyBpXSk7CgogICAgb3V0WzYwICsgaV0gPSBYT1Iob3V0WzU2ICsgaV0sIGtleVsyOCArIGldKTsKCgoKICAgIG91dFs2MSArIGldID0gWE9SKG91dFs1NyArIGldLCBrZXlbMjkgKyBpXSk7CgogICAgb3V0WzYyICsgaV0gPSBYT1Iob3V0WzU4ICsgaV0sIGtleVszMCArIGldKTsKCiAgICBvdXRbNjMgKyBpXSA9IFhPUihvdXRbNTkgKyBpXSwga2V5WzMxICsgaV0pOwoKICAgIG91dFs2NCArIGldID0gWE9SKG91dFs2MCArIGldLCBrZXlbMzIgKyBpXSk7CgoKCiAgICByZXR1cm4gb3V0OwoKZW5kCgoKCmxvY2FsIGtleUV4cGFuZCA9IGZ1bmN0aW9uKGtleSkKCiAgICBsb2NhbCBieXRlcyA9IEFycmF5LmNvcHkoa2V5KTsKCgoKICAgIGZvciBpID0gMSwgNyBkbwoKICAgICAgICBrZXlSb3VuZChieXRlcywgaSk7CgogICAgZW5kCgoKCiAgICBsb2NhbCBrZXlzID0ge307CgoKCiAgICBrZXlzWyAxXSA9IEFycmF5LnNsaWNlKGJ5dGVzLCAxLCAxNik7CgogICAga2V5c1sgMl0gPSBBcnJheS5zbGljZShieXRlcywgMTcsIDMyKTsKCiAgICBrZXlzWyAzXSA9IEFycmF5LnNsaWNlKGJ5dGVzLCAzMywgNDgpOwoKICAgIGtleXNbIDRdID0gQXJyYXkuc2xpY2UoYnl0ZXMsIDQ5LCA2NCk7CgogICAga2V5c1sgNV0gPSBBcnJheS5zbGljZShieXRlcywgNjUsIDgwKTsKCiAgICBrZXlzWyA2XSA9IEFycmF5LnNsaWNlKGJ5dGVzLCA4MSwgOTYpOwoKICAgIGtleXNbIDddID0gQXJyYXkuc2xpY2UoYnl0ZXMsIDk3LCAxMTIpOwoKICAgIGtleXNbIDhdID0gQXJyYXkuc2xpY2UoYnl0ZXMsIDExMywgMTI4KTsKCiAgICBrZXlzWyA5XSA9IEFycmF5LnNsaWNlKGJ5dGVzLCAxMjksIDE0NCk7CgogICAga2V5c1sxMF0gPSBBcnJheS5zbGljZShieXRlcywgMTQ1LCAxNjApOwoKICAgIGtleXNbMTFdID0gQXJyYXkuc2xpY2UoYnl0ZXMsIDE2MSwgMTc2KTsKCiAgICBrZXlzWzEyXSA9IEFycmF5LnNsaWNlKGJ5dGVzLCAxNzcsIDE5Mik7CgogICAga2V5c1sxM10gPSBBcnJheS5zbGljZShieXRlcywgMTkzLCAyMDgpOwoKICAgIGtleXNbMTRdID0gQXJyYXkuc2xpY2UoYnl0ZXMsIDIwOSwgMjI0KTsKCiAgICBrZXlzWzE1XSA9IEFycmF5LnNsaWNlKGJ5dGVzLCAyMjUsIDI0MCk7CgoKCiAgICByZXR1cm4ga2V5czsKCgoKZW5kCgoKCmxvY2FsIGFkZEtleSA9IEFycmF5LlhPUjsKCgoKCgoKCmxvY2FsIEFFUyA9IHt9OwoKCgpBRVMuYmxvY2tTaXplID0gMTY7CgoKCkFFUy5lbmNyeXB0ID0gZnVuY3Rpb24oa2V5LCBibG9jaykKCgoKICAgIGxvY2FsIGtleVNjaGVkdWxlID0ga2V5RXhwYW5kKGtleSk7CgoKCiAgICAtLXJvdW5kIDAKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMV0pOwoKCgogICAgLS1yb3VuZCAxCgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBTQk9YKTsKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBNSVhUQUJMRSk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzJdKTsKCgoKICAgIC0tcm91bmQgMgoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgU0JPWCk7CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgUk9XX1NISUZUKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgTUlYVEFCTEUpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVszXSk7CgoKCiAgICAtLXJvdW5kIDMKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbNF0pOwoKCgogICAgLS1yb3VuZCA0CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBTQk9YKTsKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBNSVhUQUJMRSk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzVdKTsKCgoKICAgIC0tcm91bmQgNQoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgU0JPWCk7CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgUk9XX1NISUZUKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgTUlYVEFCTEUpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVs2XSk7CgoKCiAgICAtLXJvdW5kIDYKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbN10pOwoKCgogICAgLS1yb3VuZCA3CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBTQk9YKTsKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBNSVhUQUJMRSk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzhdKTsKCgoKICAgIC0tcm91bmQgOAoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgU0JPWCk7CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgUk9XX1NISUZUKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgTUlYVEFCTEUpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVs5XSk7CgoKCiAgICAtLXJvdW5kIDkKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMTBdKTsKCgoKICAgIC0tcm91bmQgMTAKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMTFdKTsKCgoKICAgIC0tcm91bmQgMTEKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMTJdKTsKCgoKICAgIC0tcm91bmQgMTIKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMTNdKTsKCgoKICAgIC0tcm91bmQgMTMKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIE1JWFRBQkxFKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMTRdKTsKCgoKICAgIC0tcm91bmQgMTQKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIFNCT1gpOwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIFJPV19TSElGVCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzE1XSk7CgoKCiAgICByZXR1cm4gYmxvY2s7CgoKCmVuZAoKCgpBRVMuZGVjcnlwdCA9IGZ1bmN0aW9uKGtleSwgYmxvY2spCgoKCiAgICBsb2NhbCBrZXlTY2hlZHVsZSA9IGtleUV4cGFuZChrZXkpOwoKCgogICAgLS1yb3VuZCAwCgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzE1XSk7CgoKCiAgICAtLXJvdW5kIDEKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBJUk9XX1NISUZUKTsKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIElTQk9YKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMTRdKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgSU1JWFRBQkxFKTsKCgoKICAgIC0tcm91bmQgMgoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVsxM10pOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBJTUlYVEFCTEUpOwoKCgogICAgLS1yb3VuZCAzCgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgSVJPV19TSElGVCk7CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBJU0JPWCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzEyXSk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIElNSVhUQUJMRSk7CgoKCiAgICAtLXJvdW5kIDQKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBJUk9XX1NISUZUKTsKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIElTQk9YKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMTFdKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgSU1JWFRBQkxFKTsKCgoKICAgIC0tcm91bmQgNQoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVsxMF0pOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBJTUlYVEFCTEUpOwoKCgogICAgLS1yb3VuZCA2CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgSVJPV19TSElGVCk7CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBJU0JPWCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzldKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgSU1JWFRBQkxFKTsKCgoKICAgIC0tcm91bmQgNwoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVs4XSk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIElNSVhUQUJMRSk7CgoKCiAgICAtLXJvdW5kIDgKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBJUk9XX1NISUZUKTsKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIElTQk9YKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbN10pOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBJTUlYVEFCTEUpOwoKCgogICAgLS1yb3VuZCA5CgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgSVJPV19TSElGVCk7CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBJU0JPWCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzZdKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgSU1JWFRBQkxFKTsKCgoKICAgIC0tcm91bmQgMTAKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBJUk9XX1NISUZUKTsKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIElTQk9YKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbNV0pOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBJTUlYVEFCTEUpOwoKCgogICAgLS1yb3VuZCAxMQoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVs0XSk7CgogICAgYmxvY2sgPSBtaXhDb2woYmxvY2ssIElNSVhUQUJMRSk7CgoKCiAgICAtLXJvdW5kIDEyCgogICAgYmxvY2sgPSBzaGlmdFJvdyhibG9jaywgSVJPV19TSElGVCk7CgogICAgYmxvY2sgPSBieXRlU3ViKGJsb2NrLCBJU0JPWCk7CgogICAgYmxvY2sgPSBhZGRLZXkoYmxvY2ssIGtleVNjaGVkdWxlWzNdKTsKCiAgICBibG9jayA9IG1peENvbChibG9jaywgSU1JWFRBQkxFKTsKCgoKICAgIC0tcm91bmQgMTMKCiAgICBibG9jayA9IHNoaWZ0Um93KGJsb2NrLCBJUk9XX1NISUZUKTsKCiAgICBibG9jayA9IGJ5dGVTdWIoYmxvY2ssIElTQk9YKTsKCiAgICBibG9jayA9IGFkZEtleShibG9jaywga2V5U2NoZWR1bGVbMl0pOwoKICAgIGJsb2NrID0gbWl4Q29sKGJsb2NrLCBJTUlYVEFCTEUpOwoKCgogICAgLS1yb3VuZCAxNAoKICAgIGJsb2NrID0gc2hpZnRSb3coYmxvY2ssIElST1dfU0hJRlQpOwoKICAgIGJsb2NrID0gYnl0ZVN1YihibG9jaywgSVNCT1gpOwoKICAgIGJsb2NrID0gYWRkS2V5KGJsb2NrLCBrZXlTY2hlZHVsZVsxXSk7CgoKCiAgICByZXR1cm4gYmxvY2s7CgplbmQKCgoKcmV0dXJuIEFFUzsAAAAAbG9jYWwgaXNzYWMgPSByZXF1aXJlKCIuY3J5cHRvLmNpcGhlci5pc3NhYyIpCgpsb2NhbCBtb3J1cyA9IHJlcXVpcmUoIi5jcnlwdG8uY2lwaGVyLm1vcnVzIikKCmxvY2FsIGFlcyA9IHJlcXVpcmUoIi5jcnlwdG8uY2lwaGVyLmFlcyIpCgpsb2NhbCBub3J4ID0gcmVxdWlyZSgiLmNyeXB0by5jaXBoZXIubm9yeCIpCgoKCmxvY2FsIGNpcGhlciA9IHsKCiAgICBfdmVyc2lvbiA9ICIwLjAuMSIsCgogICAgaXNzYWMgPSBpc3NhYywKCiAgICBtb3J1cyA9IG1vcnVzLAoKICAgIGFlcyA9IGFlcywKCiAgICBub3J4ID0gbm9yeAoKfTsKCgoKcmV0dXJuIGNpcGhlcgBsb2NhbCBIZXggPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuaGV4Iik7CgoKCi0tIEV4dGVybmFsIFJlc3VsdHMKCmxvY2FsIHJhbmRSc2wgPSB7fTsKCmxvY2FsIHJhbmRDbnQgPSAwOwoKCgotLSBJbnRlcm5hbCBTdGF0ZQoKbG9jYWwgbW0gPSB7fTsKCmxvY2FsIGFhLGJiLGNjID0gMCwwLDA7CgoKCi0tIENhcCB0byBtYWludGFpbiAzMiBiaXQgbWF0aHMKCmxvY2FsIGNhcCA9IDB4MTAwMDAwMDAwOwoKCgotLSBDaXBoZXJNb2RlCgpsb2NhbCBFTkNSWVBUID0gMTsKCmxvY2FsIERFQ1JZUFQgPSAyOwoKCgpsb2NhbCBmdW5jdGlvbiBpc2FhYygpCgogIGNjID0gKCBjYyArIDEgICkgJSBjYXA7IC0tIGNjIGp1c3QgZ2V0cyBpbmNyZW1lbnRlZCBvbmNlIHBlciAyNTYgcmVzdWx0cwoKICBiYiA9ICggYmIgKyBjYyApICUgY2FwOyAtLSB0aGVuIGNvbWJpbmVkIHdpdGggYmIKCgoKICBmb3IgaSA9IDAsMjU1IGRvCgogICAgbG9jYWwgICB4ICAgID0gbW1baV07CgogICAgbG9jYWwgICB5OwoKICAgIGxvY2FsICAgaW1vZCA9IGkgJSA0OwoKICAgIGlmICAgICAgaW1vZCA9PSAwIHRoZW4gYWEgPSBhYSB+IChhYSA8PCAxMyk7CgogICAgZWxzZWlmICBpbW9kID09IDEgdGhlbiBhYSA9IGFhIH4gKGFhID4+IDYpOwoKICAgIGVsc2VpZiAgaW1vZCA9PSAyIHRoZW4gYWEgPSBhYSB+IChhYSA8PCAyKTsKCiAgICBlbHNlaWYgIGltb2QgPT0gMyB0aGVuIGFhID0gYWEgfiAoYWEgPj4gMTYpOwoKICAgIGVuZAoKICAgIGFhICAgICAgICAgPSAoIG1tWyhpKzEyOCklMjU2XSArIGFhICkgJSBjYXA7CgogICAgeSAgICAgICAgICA9ICggbW1bKHg+PjIpICUgMjU2XSArIGFhICsgYmIgKSAlIGNhcDsKCiAgICBtbVtpXSAgICAgID0geTsKCiAgICBiYiAgICAgICAgID0gKCBtbVsoeT4+MTApJTI1Nl0gKyB4ICkgJSBjYXA7CgogICAgcmFuZFJzbFtpXSA9IGJiOwoKICBlbmQKCgoKICByYW5kQ250ID0gMDsgLS0gUHJlcGFyZSB0byB1c2UgdGhlIGZpcnN0IHNldCBvZiByZXN1bHRzLgoKCgplbmQKCgoKbG9jYWwgZnVuY3Rpb24gbWl4KGEpCgogIGFbMF0gPSAoIGFbMF0gfiAoIGFbMV0gPDwgMTEgKSApICUgY2FwOyAgYVszXSA9ICggYVszXSArIGFbMF0gKSAlIGNhcDsgIGFbMV0gPSAoIGFbMV0gKyBhWzJdICkgJSBjYXA7CgogIGFbMV0gPSAoIGFbMV0gfiAoIGFbMl0gPj4gIDIgKSApICUgY2FwOyAgYVs0XSA9ICggYVs0XSArIGFbMV0gKSAlIGNhcDsgIGFbMl0gPSAoIGFbMl0gKyBhWzNdICkgJSBjYXA7CgogIGFbMl0gPSAoIGFbMl0gfiAoIGFbM10gPDwgIDggKSApICUgY2FwOyAgYVs1XSA9ICggYVs1XSArIGFbMl0gKSAlIGNhcDsgIGFbM10gPSAoIGFbM10gKyBhWzRdICkgJSBjYXA7CgogIGFbM10gPSAoIGFbM10gfiAoIGFbNF0gPj4gMTYgKSApICUgY2FwOyAgYVs2XSA9ICggYVs2XSArIGFbM10gKSAlIGNhcDsgIGFbNF0gPSAoIGFbNF0gKyBhWzVdICkgJSBjYXA7CgogIGFbNF0gPSAoIGFbNF0gfiAoIGFbNV0gPDwgMTAgKSApICUgY2FwOyAgYVs3XSA9ICggYVs3XSArIGFbNF0gKSAlIGNhcDsgIGFbNV0gPSAoIGFbNV0gKyBhWzZdICkgJSBjYXA7CgogIGFbNV0gPSAoIGFbNV0gfiAoIGFbNl0gPj4gIDQgKSApICUgY2FwOyAgYVswXSA9ICggYVswXSArIGFbNV0gKSAlIGNhcDsgIGFbNl0gPSAoIGFbNl0gKyBhWzddICkgJSBjYXA7CgogIGFbNl0gPSAoIGFbNl0gfiAoIGFbN10gPDwgIDggKSApICUgY2FwOyAgYVsxXSA9ICggYVsxXSArIGFbNl0gKSAlIGNhcDsgIGFbN10gPSAoIGFbN10gKyBhWzBdICkgJSBjYXA7CgogIGFbN10gPSAoIGFbN10gfiAoIGFbMF0gPj4gIDkgKSApICUgY2FwOyAgYVsyXSA9ICggYVsyXSArIGFbN10gKSAlIGNhcDsgIGFbMF0gPSAoIGFbMF0gKyBhWzFdICkgJSBjYXA7CgplbmQKCgoKbG9jYWwgZnVuY3Rpb24gcmFuZEluaXQoZmxhZykKCgoKICAtLSBUaGUgZ29sZGVuIHJhdGlvIGluIDMyIGJpdAoKICAtLSBtYXRoLmZsb29yKCgoKG1hdGguc3FydCg1KSsxKS8yKSUxKSoyXjMyKSA9PSAyNjU0NDM1NzY5ID09IDB4OWUzNzc5YjkKCiAgbG9jYWwgYSA9IHsgWzBdID0gMHg5ZTM3NzliOSwgMHg5ZTM3NzliOSwgMHg5ZTM3NzliOSwgMHg5ZTM3NzliOSwgMHg5ZTM3NzliOSwgMHg5ZTM3NzliOSwgMHg5ZTM3NzliOSwgMHg5ZTM3NzliOSwgfTsKCgoKICBhYSxiYixjYyA9IDAsMCwwOwoKCgogIGZvciBpID0gMSw0IGRvICBtaXgoYSkgIGVuZCAtLSBTY3JhbWJsZSBpdC4KCgoKICBmb3IgaSA9IDAsMjU1LDggZG8gLS0gRmlsbCBpbiBtbVtdIHdpdGggbWVzc3kgc3R1ZmYuCgogICAgaWYgZmxhZyB0aGVuIC0tIFVzZSBhbGwgdGhlIGluZm9ybWF0aW9uIGluIHRoZSBzZWVkLgoKICAgICAgZm9yIGogPSAwLDcgZG8KCiAgICAgICAgYVtqXSA9ICggYVtqXSArIHJhbmRSc2xbaStqXSApICUgY2FwOwoKICAgICAgZW5kCgogICAgZW5kCgogICAgbWl4KGEpOwoKICAgIGZvciBqID0gMCw3IGRvCgogICAgICBtbVtpK2pdID0gYVtqXTsKCiAgICBlbmQKCiAgZW5kCgoKCiAgaWYgZmxhZyB0aGVuCgogICAgLS0gRG8gYSBzZWNvbmQgcGFzcyB0byBtYWtlIGFsbCBvZiB0aGUgc2VlZCBhZmZlY3QgYWxsIG9mIG1tLgoKICAgIGZvciBpID0gMCwyNTUsOCBkbwoKICAgICAgZm9yIGogPSAwLDcgZG8KCiAgICAgICAgYVtqXSA9ICggYVtqXSArIG1tW2kral0gKSAlIGNhcDsKCiAgICAgIGVuZAoKICAgICAgbWl4KGEpOwoKICAgICAgZm9yIGogPSAwLDcgZG8KCiAgICAgICAgbW1baStqXSA9IGFbal07CgogICAgICBlbmQKCiAgICBlbmQKCiAgZW5kCgoKCiAgaXNhYWMoKTsgLS0gRmlsbCBpbiB0aGUgZmlyc3Qgc2V0IG9mIHJlc3VsdHMuCgogIHJhbmRDbnQgPSAwOyAtLSBQcmVwYXJlIHRvIHVzZSB0aGUgZmlyc3Qgc2V0IG9mIHJlc3VsdHMuCgoKCmVuZAoKCgotLS0gU2VlZHMgdGhlIElTQUFDIHJhbmRvbSBudW1iZXIgZ2VuZXJhdG9yIHdpdGggdGhlIGdpdmVuIHNlZWQuCgotLS0gQHBhcmFtIHNlZWQgc3RyaW5nIC0gVGhlIHNlZWQgdG8gdXNlIGZvciB0aGUgcmFuZG9tIG51bWJlciBnZW5lcmF0b3IuCgotLS0gQHBhcmFtIGZsYWc/IGJvb2xlYW4gLSBXaGV0aGVyIHRvIHVzZSBhbGwgdGhlIGluZm9ybWF0aW9uIGluIHRoZSBzZWVkLiBEZWZhdWx0cyB0byB0cnVlLgoKbG9jYWwgZnVuY3Rpb24gc2VlZElzYWFjKHNlZWQsIGZsYWcpCgogIGxvY2FsIHNlZWRMZW5ndGggPSAjc2VlZDsKCiAgZm9yIGkgPSAwLDI1NSBkbyBtbVtpXSA9IDA7IGVuZAoKICBmb3IgaSA9IDAsMjU1IGRvIHJhbmRSc2xbaV0gPSBzZWVkOmJ5dGUoaSsxLGkrMSkgb3IgMDsgZW5kCgogIHJhbmRJbml0KGZsYWcpOwoKZW5kCgoKCi0tLSBSZXRyaWV2ZXMgYSByYW5kb20gbnVtYmVyIGZyb20gdGhlIElTQUFDIHJhbmRvbSBudW1iZXIgZ2VuZXJhdG9yCgotLS0gQHJldHVybiBudW1iZXI6IFRoZSByYW5kb20gbnVtYmVyCgpsb2NhbCBmdW5jdGlvbiBnZXRSYW5kb20oKQoKICAgIGxvY2FsIHJlc3VsdCA9IHJhbmRSc2xbcmFuZENudF07CgogICAgcmFuZENudCA9IHJhbmRDbnQgKyAxOwoKICAgIGlmIHJhbmRDbnQgPiAyNTUgdGhlbgoKICAgICAgICBpc2FhYygpOwoKICAgICAgICByYW5kQ250ID0gMDsKCiAgICBlbmQKCiAgICByZXR1cm4gcmVzdWx0OwoKZW5kCgoKCi0tLSBHZXQgYSByYW5kb20gMzItYml0IHZhbHVlIHdpdGhpbiB0aGUgc3BlY2lmaWVkIHJhbmdlLgoKLS0tIEBwYXJhbSBtaW4/IG51bWJlciAob3B0aW9uYWwpIC0gVGhlIG1pbmltdW0gdmFsdWUgb2YgdGhlIHJhbmdlLiBEZWZhdWx0cyB0byAwLgoKLS0tIEBwYXJhbSBtYXg/IG51bWJlciAob3B0aW9uYWwpIC0gVGhlIG1heGltdW0gdmFsdWUgb2YgdGhlIHJhbmdlLiBEZWZhdWx0cyB0byAyXjMxLTEuCgotLS0gQHBhcmFtIHNlZWQ/IHN0cmluZyAob3B0aW9uYWwpIC0gVGhlIHNlZWQgdG8gdXNlIGZvciB0aGUgcmFuZG9tIG51bWJlciBnZW5lcmF0b3IuCgotLS0gQHJldHVybiBudW1iZXI6IFRoZSByYW5kb20gMzItYml0IHZhbHVlIHdpdGhpbiB0aGUgc3BlY2lmaWVkIHJhbmdlLgoKbG9jYWwgZnVuY3Rpb24gcmFuZG9tKG1pbiwgbWF4LCBzZWVkKQoKICAgIGxvY2FsIG1pbiA9IG1pbiBvciAwOwoKICAgIGxvY2FsIG1heCA9IG1heCBvciAyXjMxLTE7CgogICAgaWYgc2VlZCB0aGVuCgogICAgICBzZWVkSXNhYWMoc2VlZCwgdHJ1ZSk7CgogICAgZWxzZQoKICAgICAgc2VlZElzYWFjKHRvc3RyaW5nKG1hdGgucmFuZG9tKDJeMzEtMSkpLCBmYWxzZSk7CgogICAgZW5kCgogICAgcmV0dXJuIChnZXRSYW5kb20oKSAlIChtYXggLSBtaW4gKyAxKSkgKyBtaW47CgplbmQKCgoKCgotLS0gR2V0IGEgcmFuZG9tIGNoYXJhY3RlciBpbiBwcmludGFibGUgQVNDSUkgcmFuZ2UuCgotLS0gQHJldHVybiBudW1iZXI6IFRoZSByYW5kb20gY2hhcmFjdGVyIFszMiwgMTI2XS4KCmxvY2FsIGZ1bmN0aW9uIGdldFJhbmRvbUNoYXIoKQoKICAgIHJldHVybiBnZXRSYW5kb20oKSAlIDk1ICsgMzI7CgplbmQKCgoKLS0gQ2Flc2FyLXNoaWZ0IGEgY2hhcmFjdGVyIDxzaGlmdD4gcGxhY2VzOiBHZW5lcmFsaXplZCBWaWdlbmVyZQoKbG9jYWwgZnVuY3Rpb24gY2Flc2FyKG0sIGNoLCBzaGlmdCwgbW9kdWxvLCBzdGFydCkKCiAgbG9jYWwgbgoKICBsb2NhbCBzaSA9IDEKCiAgaWYgbSA9PSBERUNSWVBUIHRoZW4gc2hpZnQgPSBzaGlmdCotMSA7IGVuZAoKICBuID0gKGNoIC0gc3RhcnQpICsgc2hpZnQ7CgogIGlmIG4gPCAwIHRoZW4gc2ksbiA9IC0xLG4qLTEgOyBlbmQKCiAgbiA9ICggbiAlIG1vZHVsbyApICogc2k7CgogIGlmIG4gPCAwIHRoZW4gbiA9IG4gKyBtb2R1bG8gOyBlbmQKCiAgcmV0dXJuIHN0YXJ0ICsgbjsKCmVuZAoKCgotLS0gRW5jcnlwdHMgYSBtZXNzYWdlIHVzaW5nIHRoZSBJU1NBQyBjaXBoZXIgYWxnb3JpdGhtLgoKLS0tIEBwYXJhbSBtc2cgc3RyaW5nIC0gVGhlIG1lc3NhZ2UgdG8gYmUgZW5jcnlwdGVkLgoKLS0tIEBwYXJhbSBrZXkgc3RyaW5nIC0gVGhlIGtleSB1c2VkIGZvciBlbmNyeXB0aW9uLgoKLS0tIEByZXR1cm5zIHRhYmxlIC0gQSB0YWJsZSBjb250YWluaW5nIHRoZSBlbmNyeXB0ZWQgbWVzc2FnZSBpbiBieXRlcywgc3RyaW5nLCBhbmQgaGV4IGZvcm1hdHMuCgpsb2NhbCBmdW5jdGlvbiBlbmNyeXB0KG1zZywga2V5KQoKICAgIHNlZWRJc2FhYyhrZXksIHRydWUpOwoKICAgIGxvY2FsIG1zZ0xlbmd0aCA9ICNtc2c7CgogICAgbG9jYWwgZGVzdGluYXRpb24gPSB7fTsKCiAgICAKCiAgICBmb3IgaSA9IDEsIG1zZ0xlbmd0aCBkbyAKCiAgICAgICAgZGVzdGluYXRpb25baV0gPSBzdHJpbmcuY2hhcihjYWVzYXIoMSwgbXNnOmJ5dGUoaSwgaSksIGdldFJhbmRvbUNoYXIoKSwgOTUsIDMyKSk7CgogICAgZW5kCgogICAgCgogICAgbG9jYWwgZW5jcnlwdGVkID0gZGVzdGluYXRpb24KCgoKICAgIGxvY2FsIHB1YmxpYyA9IHt9CgogICAgcHVibGljLmFzQnl0ZXMgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBlbmNyeXB0ZWQKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc1N0cmluZyA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIHRhYmxlLmNvbmNhdChlbmNyeXB0ZWQpCgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNIZXggPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBIZXguc3RyaW5nVG9IZXgodGFibGUuY29uY2F0KGVuY3J5cHRlZCkpCgogICAgZW5kCgoKCiAgICByZXR1cm4gcHVibGljCgplbmQKCgoKLS0tIERlY3J5cHRzIGFuIGVuY3J5cHRlZCBtZXNzYWdlIHVzaW5nIHRoZSBJU1NBQyBjaXBoZXIgYWxnb3JpdGhtLgoKLS0tIEBwYXJhbSBlbmNyeXB0ZWQgc3RyaW5nIC0gVGhlIGVuY3J5cHRlZCBtZXNzYWdlIHRvIGJlIGRlY3J5cHRlZC4KCi0tLSBAcGFyYW0ga2V5IHN0cmluZyAtIFRoZSBrZXkgdXNlZCBmb3IgZW5jcnlwdGlvbi4KCi0tLSBAcmV0dXJucyBzdHJpbmcgLSBUaGUgZGVjcnlwdGVkIG1lc3NhZ2UuCgpsb2NhbCBmdW5jdGlvbiBkZWNyeXB0KGVuY3J5cHRlZCwga2V5KQoKICAgIHNlZWRJc2FhYyhrZXksIHRydWUpOwoKICAgIGxvY2FsIG1zZ0xlbmd0aCA9ICNlbmNyeXB0ZWQ7CgogICAgbG9jYWwgZGVzdGluYXRpb24gPSB7fTsKCiAgICAKCiAgICBmb3IgaSA9IDEsIG1zZ0xlbmd0aCBkbyAKCiAgICAgICAgZGVzdGluYXRpb25baV0gPSBzdHJpbmcuY2hhcihjYWVzYXIoMiwgZW5jcnlwdGVkOmJ5dGUoaSwgaSksIGdldFJhbmRvbUNoYXIoKSwgOTUsIDMyKSk7CgogICAgZW5kCgogICAgCgogICAgcmV0dXJuIHRhYmxlLmNvbmNhdChkZXN0aW5hdGlvbik7CgplbmQKCgoKcmV0dXJuIHsKCiAgICBzZWVkSXNhYWMgPSBzZWVkSXNhYWMsCgogICAgZ2V0UmFuZG9tQ2hhciA9IGdldFJhbmRvbUNoYXIsCgogICAgcmFuZG9tID0gcmFuZG9tLAoKICAgIGdldFJhbmRvbSA9IGdldFJhbmRvbSwKCiAgICBlbmNyeXB0ID0gZW5jcnlwdCwKCiAgICBkZWNyeXB0ID0gZGVjcnlwdAoKfQAAAABsb2NhbCBIZXggPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuaGV4Iik7CgoKCmxvY2FsIGZ1bmN0aW9uIHN0YXRlX3VwZGF0ZShzLCBtMCwgbTEsIG0yLCBtMykKCglsb2NhbCBzMDAsIHMwMSwgczAyLCBzMDMgPSBzWzFdLCAgc1syXSwgIHNbM10sICBzWzRdCgoJbG9jYWwgczEwLCBzMTEsIHMxMiwgczEzID0gc1s1XSwgIHNbNl0sICBzWzddLCAgc1s4XQoKCWxvY2FsIHMyMCwgczIxLCBzMjIsIHMyMyA9IHNbOV0sICBzWzEwXSwgc1sxMV0sIHNbMTJdCgoJbG9jYWwgczMwLCBzMzEsIHMzMiwgczMzID0gc1sxM10sIHNbMTRdLCBzWzE1XSwgc1sxNl0KCglsb2NhbCBzNDAsIHM0MSwgczQyLCBzNDMgPSBzWzE3XSwgc1sxOF0sIHNbMTldLCBzWzIwXQoKCWxvY2FsIHRlbXAKCgoKCXMwMCA9IHMwMCB+IHMzMAoKCXMwMSA9IHMwMSB+IHMzMQoKCXMwMiA9IHMwMiB+IHMzMgoKCXMwMyA9IHMwMyB+IHMzMwoKCgoJdGVtcCA9IHMzMwoKCXMzMyA9IHMzMgoKCXMzMiA9IHMzMQoKCXMzMSA9IHMzMAoKCXMzMCA9IHRlbXAKCgoKCXMwMCA9IHMwMCB+IHMxMCAmIHMyMAoKCXMwMSA9IHMwMSB+IHMxMSAmIHMyMQoKCXMwMiA9IHMwMiB+IHMxMiAmIHMyMgoKCXMwMyA9IHMwMyB+IHMxMyAmIHMyMwoKCgoJczAwID0gKHMwMCA8PCAxMykgfCAoczAwID4+ICg2NC0xMykpIC0tbjEKCglzMDEgPSAoczAxIDw8IDEzKSB8IChzMDEgPj4gKDY0LTEzKSkgLS1uMQoKCXMwMiA9IChzMDIgPDwgMTMpIHwgKHMwMiA+PiAoNjQtMTMpKSAtLW4xCgoJczAzID0gKHMwMyA8PCAxMykgfCAoczAzID4+ICg2NC0xMykpIC0tbjEKCgoKCgoJczEwID0gczEwIH4gbTAKCglzMTEgPSBzMTEgfiBtMQoKCXMxMiA9IHMxMiB+IG0yCgoJczEzID0gczEzIH4gbTMKCgoKCXMxMCA9IHMxMCB+IHM0MAoKCXMxMSA9IHMxMSB+IHM0MQoKCXMxMiA9IHMxMiB+IHM0MgoKCXMxMyA9IHMxMyB+IHM0MwoKCgoJdGVtcCA9IHM0MwoKCXM0MyA9IHM0MQoKCXM0MSA9IHRlbXAKCgoKCXRlbXAgPSBzNDIKCglzNDIgPSBzNDAKCglzNDAgPSB0ZW1wCgoKCglzMTAgPSBzMTAgfiAoczIwICYgczMwKQoKCXMxMSA9IHMxMSB+IChzMjEgJiBzMzEpCgoJczEyID0gczEyIH4gKHMyMiAmIHMzMikKCglzMTMgPSBzMTMgfiAoczIzICYgczMzKQoKCgoJczEwID0gKHMxMCA8PCA0NikgfCAoczEwID4+ICg2NC00NikpIC0tbjIKCglzMTEgPSAoczExIDw8IDQ2KSB8IChzMTEgPj4gKDY0LTQ2KSkgLS1uMgoKCXMxMiA9IChzMTIgPDwgNDYpIHwgKHMxMiA+PiAoNjQtNDYpKSAtLW4yCgoJczEzID0gKHMxMyA8PCA0NikgfCAoczEzID4+ICg2NC00NikpIC0tbjIKCgoKCgoJczIwID0gczIwIH4gbTAKCglzMjEgPSBzMjEgfiBtMQoKCXMyMiA9IHMyMiB+IG0yCgoJczIzID0gczIzIH4gbTMKCgoKCXMyMCA9IHMyMCB+IHMwMAoKCXMyMSA9IHMyMSB+IHMwMQoKCXMyMiA9IHMyMiB+IHMwMgoKCXMyMyA9IHMyMyB+IHMwMwoKCgoJdGVtcCA9IHMwMAoKCXMwMCA9IHMwMQoKCXMwMSA9IHMwMgoKCXMwMiA9IHMwMwoKCXMwMyA9IHRlbXAKCgoKCXMyMCA9IHMyMCB+IHMzMCAmIHM0MAoKCXMyMSA9IHMyMSB+IHMzMSAmIHM0MQoKCXMyMiA9IHMyMiB+IHMzMiAmIHM0MgoKCXMyMyA9IHMyMyB+IHMzMyAmIHM0MwoKCgoJczIwID0gKHMyMCA8PCAzOCkgfCAoczIwID4+ICg2NC0zOCkpIC0tbjMKCglzMjEgPSAoczIxIDw8IDM4KSB8IChzMjEgPj4gKDY0LTM4KSkgLS1uMwoKCXMyMiA9IChzMjIgPDwgMzgpIHwgKHMyMiA+PiAoNjQtMzgpKSAtLW4zCgoJczIzID0gKHMyMyA8PCAzOCkgfCAoczIzID4+ICg2NC0zOCkpIC0tbjMKCgoKCgoJczMwID0gczMwIH4gbTAKCglzMzEgPSBzMzEgfiBtMQoKCXMzMiA9IHMzMiB+IG0yCgoJczMzID0gczMzIH4gbTMKCgoKCXMzMCA9IHMzMCB+IHMxMAoKCXMzMSA9IHMzMSB+IHMxMQoKCXMzMiA9IHMzMiB+IHMxMgoKCXMzMyA9IHMzMyB+IHMxMwoKCgoJdGVtcCA9IHMxMwoKCXMxMyA9IHMxMQoKCXMxMSA9IHRlbXAKCgoKCXRlbXAgPSBzMTIKCglzMTIgPSBzMTAKCglzMTAgPSB0ZW1wCgoKCglzMzAgPSBzMzAgfiBzNDAgJiBzMDAKCglzMzEgPSBzMzEgfiBzNDEgJiBzMDEKCglzMzIgPSBzMzIgfiBzNDIgJiBzMDIKCglzMzMgPSBzMzMgfiBzNDMgJiBzMDMKCgoKCXMzMCA9IChzMzAgPDwgNykgfCAoczMwID4+ICg2NC03KSkgLS1uNAoKCXMzMSA9IChzMzEgPDwgNykgfCAoczMxID4+ICg2NC03KSkgLS1uNAoKCXMzMiA9IChzMzIgPDwgNykgfCAoczMyID4+ICg2NC03KSkgLS1uNAoKCXMzMyA9IChzMzMgPDwgNykgfCAoczMzID4+ICg2NC03KSkgLS1uNAoKCgoKCglzNDAgPSBzNDAgfiBtMAoKCXM0MSA9IHM0MSB+IG0xCgoJczQyID0gczQyIH4gbTIKCglzNDMgPSBzNDMgfiBtMwoKCgoJczQwID0gczQwIH4gczIwCgoJczQxID0gczQxIH4gczIxCgoJczQyID0gczQyIH4gczIyCgoJczQzID0gczQzIH4gczIzCgoKCgl0ZW1wID0gczIzCgoJczIzID0gczIyCgoJczIyID0gczIxCgoJczIxID0gczIwCgoJczIwID0gdGVtcAoKCgoJczQwID0gczQwIH4gczAwICYgczEwCgoJczQxID0gczQxIH4gczAxICYgczExCgoJczQyID0gczQyIH4gczAyICYgczEyCgoJczQzID0gczQzIH4gczAzICYgczEzCgoKCglzNDAgPSAoczQwIDw8IDQpIHwgKHM0MCA+PiAoNjQtNCkpIC0tbjUKCglzNDEgPSAoczQxIDw8IDQpIHwgKHM0MSA+PiAoNjQtNCkpIC0tbjUKCglzNDIgPSAoczQyIDw8IDQpIHwgKHM0MiA+PiAoNjQtNCkpIC0tbjUKCglzNDMgPSAoczQzIDw8IDQpIHwgKHM0MyA+PiAoNjQtNCkpIC0tbjUKCgoKCS0tIHVwZGF0ZSB0aGUgc3RhdGUgYXJyYXkKCglzWzFdLCAgc1syXSwgIHNbM10sICBzWzRdICA9IHMwMCwgczAxLCBzMDIsIHMwMwoKCXNbNV0sICBzWzZdLCAgc1s3XSwgIHNbOF0gID0gczEwLCBzMTEsIHMxMiwgczEzCgoJc1s5XSwgIHNbMTBdLCBzWzExXSwgc1sxMl0gPSBzMjAsIHMyMSwgczIyLCBzMjMKCglzWzEzXSwgc1sxNF0sIHNbMTVdLCBzWzE2XSA9IHMzMCwgczMxLCBzMzIsIHMzMwoKCXNbMTddLCBzWzE4XSwgc1sxOV0sIHNbMjBdID0gczQwLCBzNDEsIHM0MiwgczQzCgoKCmVuZC0tc3RhdGVfdXBkYXRlKCkKCgoKbG9jYWwgZnVuY3Rpb24gZW5jX2F1dF9zdGVwKHMsIG0wLCBtMSwgbTIsIG0zKQoKCS0tICAgICAgICAgbTAgICBzMDAgICAgczExICAgIHMyMCAgICAgczMwCgoJbG9jYWwgYzAgPSBtMCB+IHNbMV0gfiBzWzZdIH4gKHNbOV0gICYgc1sxM10pCgoJLS0gICAgICAgICBtMSAgIHMwMSAgICBzMTIgICAgczIxICAgICBzMzEKCglsb2NhbCBjMSA9IG0xIH4gc1syXSB+IHNbN10gfiAoc1sxMF0gJiBzWzE0XSkKCgktLSAgICAgICAgIG0yICAgczAyICAgIHMxMyAgICBzMjIgICAgIHMzMgoKCWxvY2FsIGMyID0gbTIgfiBzWzNdIH4gc1s4XSB+IChzWzExXSAmIHNbMTVdKQoKCS0tICAgICAgICAgbTMgICBzMDMgICAgczEwICAgIHMyMyAgICAgczMzCgoJbG9jYWwgYzMgPSBtMyB+IHNbNF0gfiBzWzVdIH4gKHNbMTJdICYgc1sxNl0pCgoJc3RhdGVfdXBkYXRlKHMsIG0wLCBtMSwgbTIsIG0zKQoKCXJldHVybiBjMCwgYzEsIGMyLCBjMwoKZW5kCgoKCmxvY2FsIGZ1bmN0aW9uIGRlY19hdXRfc3RlcChzLCBjMCwgYzEsIGMyLCBjMywgYmxlbikKCgktLSBtbGVuIGlzIHRoZSBsZW5ndGggb2YgYSBsYXN0IHBhcnRpYWwgYmxvY2sKCgktLSBtbGVuIGlzIGFic2VudC9uaWwgZm9yIGZ1bGwgYmxvY2tzCgoJLS0gcmV0dXJuIHRoZSBkZWNyeXB0ZWQgYmxvY2sKCgktLQoKCS0tICAgICAgICAgbTAgICBzMDAgICAgczExICAgIHMyMCAgICBzMzAKCglsb2NhbCBtMCA9IGMwIH4gc1sxXSB+IHNbNl0gfiAoc1s5XSAgJiBzWzEzXSkKCgktLSAgICAgICAgIG0xICAgczAxICAgIHMxMiAgICBzMjEgICAgIHMzMQoKCWxvY2FsIG0xID0gYzEgfiBzWzJdIH4gc1s3XSB+IChzWzEwXSAmIHNbMTRdKSAKCgktLSAgICAgICAgIG0yICAgczAyICAgIHMxMyAgICBzMjIgICAgIHMzMgoKCWxvY2FsIG0yID0gYzIgfiBzWzNdIH4gc1s4XSB+IChzWzExXSAmIHNbMTVdKQoKCS0tICAgICAgICAgbTMgICBzMDMgICAgczEwICAgIHMyMyAgICAgczMzCgoJbG9jYWwgbTMgPSBjMyB+IHNbNF0gfiBzWzVdIH4gKHNbMTJdICYgc1sxNl0pCgoJaWYgYmxlbiB0aGVuIAoKCQktLSBwYXJ0aWFsIGJsb2NrID0+IG11c3QgYWRqdXN0IChtMCwgLi4uKSBiZWZvcmUKCgkJLS0gdXBkYXRpbmcgdGhlIHN0YXRlCgoJCWxvY2FsIG1ibGsgPSBzdHJpbmcucGFjaygiPEk4SThJOEk4IiwgbTAsIG0xLCBtMiwgbTMpOnN1YigxLCBibGVuKSAKCgkJbG9jYWwgYmxrID0gbWJsayAuLiBzdHJpbmcucmVwKCdcMCcsIDMyIC0gYmxlbikKCgkJYXNzZXJ0KCNibGsgPT0gMzIsICNibGspCgoJCW0wLCBtMSwgbTIsIG0zID0gc3RyaW5nLnVucGFjaygiPEk4SThJOEk4IiwgYmxrKQoKCQlzdGF0ZV91cGRhdGUocywgbTAsIG0xLCBtMiwgbTMpCgoJCXJldHVybiBtYmxrCgoJZW5kCgoJLS0gZnVsbCBibG9jawoKCXN0YXRlX3VwZGF0ZShzLCBtMCwgbTEsIG0yLCBtMykKCglyZXR1cm4gc3RyaW5nLnBhY2soIjxJOEk4SThJOCIsIG0wLCBtMSwgbTIsIG0zKQoKZW5kCgoKCi0tIHN0YXRlIGluaXQgY29uc3RhbnRzIChmaWJvbmFjY2kpCgotLSB1OCBjb25bMzJdID0gewoKLS0JMHgwMCwweDAxLDB4MDEsMHgwMiwweDAzLDB4MDUsMHgwOCwweDBkCgotLQksMHgxNSwweDIyLDB4MzcsMHg1OSwweDkwLDB4ZTksMHg3OSwweDYyCgotLQksMHhkYiwweDNkLDB4MTgsMHg1NSwweDZkLDB4YzIsMHgyZiwweGYxCgotLQksMHgyMCwweDExLDB4MzEsMHg0MiwweDczLDB4YjUsMHgyOCwweGRkCgpsb2NhbCBjb24gPSB7IC0tIGNvbiBhcyA0IHVpbnQ2NCAtICAhISBhc3N1bWUgbGl0dGxlIGVuZGlhbiAhIQoKCQkweGQwODA1MDMwMjAxMDEwMCwgMHg2Mjc5ZTk5MDU5MzcyMjE1LCAKCgkgICAgMHhmMTJmYzI2ZDU1MTgzZGRiLCAweGRkMjhiNTczNDIzMTExMjAgfQoKCQoKbG9jYWwgZnVuY3Rpb24gc3RhdGVfaW5pdChrZXksIGl2KQoKCS0tIHJldHVybiBhbiBpbml0aWFsaXplZCBzdGF0ZSBhcnJheQoKCWFzc2VydCgoI2tleSA9PSAxNikgb3IgKCNrZXkgPT0gMzIpLCAia2V5IG11c3QgYmUgMTYgb3IgMzIgYnl0ZXMiKQoKCWFzc2VydCgjaXYgPT0gMTYsICJpdiBtdXN0IGJlIDE2IGJ5dGVzIikKCglsb2NhbCBlazAsIGVrMSwgZWsyLCBlazMgCgoJaWYgI2tleSA9PSAxNiB0aGVuIAoKCQllazAsIGVrMSA9IHN0cmluZy51bnBhY2soIjxJOEk4Iiwga2V5KQoKCQllazMsIGVrMiA9IGVrMSwgZWswCgoJZWxzZQoKCQllazAsIGVrMSwgZWsyLCBlazMgPSBzdHJpbmcudW5wYWNrKCI8SThJOEk4STgiLCBrZXkpCgoJZW5kCgoJbG9jYWwgaXYwLCBpdjEgPSBzdHJpbmcudW5wYWNrKCI8SThJOCIsIGl2KQoKCS0taW5pdGFpYWxpemUgc3RhdGUgczoKCglsb2NhbCBzID0gewoKCQlpdjAsIGl2MSwgMCwgMCwgICAgICAgICAgICAgICAgIC0tIHN0YXRlWzBdW10KCgkJZWswLCBlazEsIGVrMiwgZWszLCAgICAgICAgICAgICAtLSBzdGF0ZVsxXVtdCgoJCS0xLCAtMSwgLTEsIC0xLCAgICAgICAgICAgICAgICAgLS0gc3RhdGVbMl1bXSAgKDB4ZmYgKiAzMikKCgkJMCwgMCwgMCwgMCwgICAgICAgICAgICAgICAgICAgICAtLSBzdGF0ZVszXVtdCgoJCWNvblsxXSwgY29uWzJdLCBjb25bM10sIGNvbls0XSwgLS0gc3RhdGVbNF1bXQoKCX0KCglmb3IgaSA9IDEsIDE2IGRvIHN0YXRlX3VwZGF0ZShzLCAwLCAwLCAwLCAwKSBlbmQKCglzWzVdID0gc1s1XSB+IGVrMCAgLS0gc3RhdGVbMV1baV0gXj0gKCh1aW50NjRfdCopZWtleSlbaV07CgoJc1s2XSA9IHNbNl0gfiBlazEKCglzWzddID0gc1s3XSB+IGVrMgoKCXNbOF0gPSBzWzhdIH4gZWszCgoJcmV0dXJuIHMKCmVuZC0tc3RhdGVfaW5pdCgpCgoKCi0tZmluYWxpemF0aW9uCgoKCmxvY2FsIGZ1bmN0aW9uIHRhZ19jb21wdXRlKHMsIG1sZW4sIGFkbGVuKQoKCS0tIHJldHVybiB0YWcwLCB0YWcxICh0aGUgdGFnIGFzIHR3byB1aW50NjQpCgoJbG9jYWwgbTAsIG0xLCBtMiwgbTMgPSAoYWRsZW4gPDwgMyksIChtbGVuIDw8IDMpLCAwLCAwCgoKCgktLSBzWzFdLCAgc1syXSwgIHNbM10sICBzWzRdICA9IHMwMCwgczAxLCBzMDIsIHMwMwoKCS0tIHNbNV0sICBzWzZdLCAgc1s3XSwgIHNbOF0gID0gczEwLCBzMTEsIHMxMiwgczEzCgoJLS0gc1s5XSwgIHNbMTBdLCBzWzExXSwgc1sxMl0gPSBzMjAsIHMyMSwgczIyLCBzMjMKCgktLSBzWzEzXSwgc1sxNF0sIHNbMTVdLCBzWzE2XSA9IHMzMCwgczMxLCBzMzIsIHMzMwoKCS0tIHNbMTddLCBzWzE4XSwgc1sxOV0sIHNbMjBdID0gczQwLCBzNDEsIHM0MiwgczQzCgoKCgktLSBzdGF0ZVs0XVswXSBePSBzdGF0ZVswXVswXTsgc3RhdGVbNF1bMV0gXj0gc3RhdGVbMF1bMV07IAoKCS0tIHN0YXRlWzRdWzJdIF49IHN0YXRlWzBdWzJdOyBzdGF0ZVs0XVszXSBePSBzdGF0ZVswXVszXTsKCglzWzE3XSA9IHNbMTddIH4gc1sxXTsgIHNbMThdID0gc1sxOF0gfiBzWzJdCgoJc1sxOV0gPSBzWzE5XSB+IHNbM107ICBzWzIwXSA9IHNbMjBdIH4gc1s0XQoKCWZvciBpID0gMSwgMTAgZG8gc3RhdGVfdXBkYXRlKHMsIG0wLCBtMSwgbTIsIG0zKSBlbmQKCgktLSBmb3IgKGogPSAwOyBqIDwgNDsgaisrKSB7CgoJLS0Jc3RhdGVbMF1bal0gXj0gc3RhdGVbMV1bKGogKyAxKSAmIDNdIF4gKHN0YXRlWzJdW2pdICYgc3RhdGVbM11bal0pO30KCglzWzFdID0gc1sxXSB+IHNbNl0gfiAoc1s5XSAmIHNbMTNdKSAtLSBqPTAKCglzWzJdID0gc1syXSB+IHNbN10gfiAoc1sxMF0gJiBzWzE0XSkgLS0gaj0xCgoJc1szXSA9IHNbM10gfiBzWzhdIH4gKHNbMTFdICYgc1sxNV0pIC0tIGo9MgoKCXNbNF0gPSBzWzRdIH4gc1s1XSB+IChzWzEyXSAmIHNbMTZdKSAtLSBqPTMKCgkKCglyZXR1cm4gc1sxXSwgc1syXQoKZW5kCgoKCi0tLSBFbmNyeXB0cyBhIG1lc3NhZ2UgdXNpbmcgdGhlIE1vcnVzIGVuY3J5cHRpb24gYWxnb3JpdGhtLgoKLS0tIEBwYXJhbSBrIHN0cmluZyAtIFRoZSBlbmNyeXB0aW9uIGtleSAoMTYgb3IgMzItYnl0ZSBzdHJpbmcpLgoKLS0tIEBwYXJhbSBpdiBzdHJpbmcgLSBUaGUgbm9uY2Ugb3IgaW5pdGlhbCB2YWx1ZSAoMTYtYnl0ZSBzdHJpbmcpLgoKLS0tIEBwYXJhbSBtIHN0cmluZyAtIFRoZSBtZXNzYWdlIHRvIGVuY3J5cHQgKHZhcmlhYmxlIGxlbmd0aCBzdHJpbmcpLgoKLS0tIEBwYXJhbSBhZD8gc3RyaW5nIChvcHRpb25hbCkgLSBUaGUgYWRkaXRpb25hbCBkYXRhICh2YXJpYWJsZSBsZW5ndGggc3RyaW5nKS4gT3B0aW9uYWwsIGRlZmF1bHRzIHRvICIiLgoKLS0tIEByZXR1cm5zIHRhYmxlIC0gQSB0YWJsZSBjb250YWluaW5nIHRoZSBlbmNyeXB0ZWQgbWVzc2FnZSBpbiBieXRlcywgaGV4LCBhbmQgc3RyaW5nIGZvcm1hdHMuCgotLS0gQHVzYWdlIGxvY2FsIGVuY3J5cHRlZE1lc3NhZ2UgPSBlbmNyeXB0KGtleSwgbm9uY2UsIG1lc3NhZ2UsIGFkZGl0aW9uYWxEYXRhKQoKbG9jYWwgZnVuY3Rpb24gZW5jcnlwdChrLCBpdiwgbSwgYWQpCgoJYWQgPSBhZCBvciAiIgoKCWxvY2FsIG1sZW4sIGFkbGVuID0gI20sICNhZAoKCWxvY2FsIG0wLCBtMSwgbTIsIG0zLCBjMCwgYzEsIGMyLCBjMwoKCWxvY2FsIGJsaywgYmxlbgoKCWxvY2FsIGN0ID0ge30KCgktLSBpbml0CgoJbG9jYWwgcyA9IHN0YXRlX2luaXQoaywgaXYpCgoJLS0gYWJzb3JiIGFkCgoJbG9jYWwgaSA9IDEKCgl3aGlsZSBpIDw9IGFkbGVuIC0gMzEgZG8gLS1wcm9jZXNzIGZ1bGwgYmxvY2tzCgoJCW0wLCBtMSwgbTIsIG0zID0gc3RyaW5nLnVucGFjaygiPEk4SThJOEk4IiwgYWQsIGkpCgoJCWkgPSBpICsgMzIKCgkJZW5jX2F1dF9zdGVwKHMsIG0wLCBtMSwgbTIsIG0zKQoKCWVuZAoKCWlmIGkgPD0gYWRsZW4gdGhlbiAtLSBwcm9jZXNzIGxhc3QsIHBhcnRpYWwgYmxvY2sgb2YgYWQKCgkJYmxrID0gYWQ6c3ViKGkpIC4uIHN0cmluZy5yZXAoJ1wwJywgMzEgKyBpIC0gYWRsZW4pCgoJCWFzc2VydCgjYmxrID09IDMyLCAjYmxrKQoKCQltMCwgbTEsIG0yLCBtMyA9IHN0cmluZy51bnBhY2soIjxJOEk4SThJOCIsIGJsaykKCgkJZW5jX2F1dF9zdGVwKHMsIG0wLCBtMSwgbTIsIG0zKQoKCWVuZAoKCXRhYmxlLmluc2VydChjdCwgYWQpIC0tIGNvbGxlY3QgdGhlIGFkIGluIGN0CgoJLS0gZW5jcnlwdCBtCgoJaSA9IDEKCgl3aGlsZSBpIDw9IG1sZW4gLSAzMSBkbyAtLXByb2Nlc3MgZnVsbCBibG9ja3MKCgkJbTAsIG0xLCBtMiwgbTMgPSBzdHJpbmcudW5wYWNrKCI8SThJOEk4STgiLCBtLCBpKQoKCQlpID0gaSArIDMyCgoJCS0tYzAsIGMxLCBjMiwgYzMgPSBtMCwgbTEsIG0yLCBtMyAtLXVzZSB0aGlzIHRvIHRlc3Qgb3ZlcmhlYWQgcGVyZgoKCQljMCwgYzEsIGMyLCBjMyA9IGVuY19hdXRfc3RlcChzLCBtMCwgbTEsIG0yLCBtMykKCgkJLS0gY29sbGVjdCB0aGUgMzIgZW5jcnlwdGVkIGJ5dGVzIGluIGN0CgoJCXRhYmxlLmluc2VydChjdCwgc3RyaW5nLnBhY2soIjxJOEk4SThJOCIsIGMwLCBjMSwgYzIsIGMzKSkKCgllbmQKCglpZiBpIDw9IG1sZW4gdGhlbiAtLSBwcm9jZXNzIGxhc3QsIHBhcnRpYWwgYmxvY2sgb2YgbQoKCQlibGsgPSBtOnN1YihpKSAtLSBsYXN0IHBhcnRpYWwgYmxvY2sKCgkJYmxlbiA9ICNibGsKCgkJYmxrID0gYmxrIC4uIHN0cmluZy5yZXAoJ1wwJywgMzEgKyBpIC0gbWxlbikKCgkJYXNzZXJ0KCNibGsgPT0gMzIsICNibGspCgoJCW0wLCBtMSwgbTIsIG0zID0gc3RyaW5nLnVucGFjaygiPEk4SThJOEk4IiwgYmxrKQoKCQljMCwgYzEsIGMyLCBjMyA9IGVuY19hdXRfc3RlcChzLCBtMCwgbTEsIG0yLCBtMykKCgkJLS0gY29sbGVjdCB0aGUgbGFzdCBibGVuIGVuY3J5cHRlZCBieXRlcyBpbiBjdAoKCQl0YWJsZS5pbnNlcnQoY3QsIHN0cmluZy5wYWNrKCI8SThJOEk4STgiLCBjMCwgYzEsIGMyLCBjMyk6c3ViKDEsIGJsZW4pKQoKCWVuZAoKCS0tIGNvbXB1dGUgdGhlIG1hYwoKCWxvY2FsIHRhZzAsIHRhZzEgPSB0YWdfY29tcHV0ZShzLCBtbGVuLCBhZGxlbikKCgl0YWJsZS5pbnNlcnQoY3QsIHN0cmluZy5wYWNrKCI8SThJOCIsIHRhZzAsIHRhZzEpKQoKCS0tIHJldHVybiB0aGUgY29tcGxldGUgZW5jcnlwdGVkIG1lc3NhZ2UgKHdpdGggYWQgcHJlZml4IGFuZCB0YWcgc3VmZml4KQoKCgoJbG9jYWwgcHVibGljID0ge307CgoKCglwdWJsaWMuYXNCeXRlcyA9IGZ1bmN0aW9uKCkKCgkJcmV0dXJuIGN0CgoJZW5kCgoKCglwdWJsaWMuYXNIZXggPSBmdW5jdGlvbigpCgoJCXJldHVybiBIZXguc3RyaW5nVG9IZXgodGFibGUuY29uY2F0KGN0KSkKCgllbmQKCgoKCXB1YmxpYy5hc1N0cmluZyA9IGZ1bmN0aW9uKCkKCgkJcmV0dXJuIHRhYmxlLmNvbmNhdChjdCkKCgllbmQKCgoKCXJldHVybiBwdWJsaWMKCmVuZAoKCgotLS0gRGVjcnlwdHMgYW4gZW5jcnlwdGVkIG1lc3NhZ2UgdXNpbmcgdGhlIE1vcnVzIGVuY3J5cHRpb24gYWxnb3JpdGhtLgoKLS0tIEBwYXJhbSBrIHN0cmluZyAtIFRoZSBlbmNyeXB0aW9uIGtleSAoMTYgb3IgMzItYnl0ZSBzdHJpbmcpLgoKLS0tIEBwYXJhbSBpdiBzdHJpbmcgLSBUaGUgbm9uY2Ugb3IgaW5pdGlhbCB2YWx1ZSAoMTYtYnl0ZSBzdHJpbmcpLgoKLS0tIEBwYXJhbSBlIHN0cmluZyAtIFRoZSBlbmNyeXB0ZWQgbWVzc2FnZSAodmFyaWFibGUgbGVuZ3RoIHN0cmluZykuCgotLS0gQHBhcmFtIGFkbGVuPyBudW1iZXIgKG9wdGlvbmFsKSAtIFRoZSBsZW5ndGggb2YgdGhlIGFkZGl0aW9uYWwgZGF0YSBhdCB0aGUgc3RhcnQgb2YgZS4gT3B0aW9uYWwsIGRlZmF1bHRzIHRvIDAuCgotLS0gQHJldHVybnMgdGFibGUgLSBBIHRhYmxlIGNvbnRhaW5pbmcgdGhlIGRlY3J5cHRlZCBtZXNzYWdlIGluIGJ5dGVzLCBoZXgsIGFuZCBzdHJpbmcgZm9ybWF0cy4KCmxvY2FsIGZ1bmN0aW9uIGRlY3J5cHQoaywgaXYsIGUsIGFkbGVuKQoKCWFkbGVuID0gYWRsZW4gb3IgMAoKICAgIGxvY2FsIGFkID0gICIiCgoJbG9jYWwgZWxlbiA9ICNlIC0gMTYgIC0tIGxlbmd0aCBvZiBtc2cgYmVmb3JlIHRhZwoKCWxvY2FsIG1sZW4gPSBlbGVuIC0gYWRsZW4KCglsb2NhbCBtMCwgbTEsIG0yLCBtMywgYzAsIGMxLCBjMiwgYzMKCglsb2NhbCBibGssIGJsZW4KCglsb2NhbCBjdCA9IHt9ICAtLSB1c2VkIHRvIGNvbGxlY3QgZGVjcnlwdGVkIGJsb2NrcwoKCS0tIGluaXQKCglsb2NhbCBzID0gc3RhdGVfaW5pdChrLCBpdikKCgktLSBhYnNvcmIgYWQKCglpZiBhZGxlbiA+IDAgdGhlbiBhZCA9IGU6c3ViKDEsIGFkbGVuKSBlbmQKCglsb2NhbCBpID0gMQoKCXdoaWxlIGkgPD0gYWRsZW4gLSAzMSBkbyAtLXByb2Nlc3MgZnVsbCBibG9ja3MKCgkJbTAsIG0xLCBtMiwgbTMgPSBzdHJpbmcudW5wYWNrKCI8SThJOEk4STgiLCBhZCwgaSkKCgkJaSA9IGkgKyAzMgoKCQllbmNfYXV0X3N0ZXAocywgbTAsIG0xLCBtMiwgbTMpCgoJZW5kCgoJaWYgaSA8PSBhZGxlbiB0aGVuIC0tIHByb2Nlc3MgbGFzdCwgcGFydGlhbCBibG9jayBvZiBhZAoKCQlibGsgPSBhZDpzdWIoaSkgLi4gc3RyaW5nLnJlcCgnXDAnLCAzMSArIGkgLSBhZGxlbikKCgkJYXNzZXJ0KCNibGsgPT0gMzIsICNibGspCgoJCW0wLCBtMSwgbTIsIG0zID0gc3RyaW5nLnVucGFjaygiPEk4SThJOEk4IiwgYmxrKQoKCQllbmNfYXV0X3N0ZXAocywgbTAsIG0xLCBtMiwgbTMpCgoJZW5kCgoJLS0gZGVjcnlwdCBtZXNzYWdlCgoJaSA9IGFkbGVuICsgMQoKCXdoaWxlIGkgPD0gZWxlbiAtIDMxIGRvIC0tcHJvY2VzcyBmdWxsIGJsb2NrcwoKCQljMCwgYzEsIGMyLCBjMyA9IHN0cmluZy51bnBhY2soIjxJOEk4SThJOCIsIGUsIGkpCgoJCWkgPSBpICsgMzIKCgkJYmxrID0gZGVjX2F1dF9zdGVwKHMsIGMwLCBjMSwgYzIsIGMzKQoKCQktLSBjb2xsZWN0IHRoZSAzMiBkZWNyeXB0ZWQgYnl0ZXMgaW4gY3QKCgkJdGFibGUuaW5zZXJ0KGN0LCBibGspCgoJZW5kCgoJaWYgaSA8PSBlbGVuIHRoZW4gLS0gcHJvY2VzcyBsYXN0LCBwYXJ0aWFsIGJsb2NrIG9mIG0KCgkJYmxrID0gZTpzdWIoaSwgZWxlbikgLS0gbGFzdCBwYXJ0aWFsIGJsb2NrCgoJCWJsZW4gPSAjYmxrCgoJCWJsayA9IGJsayAuLiBzdHJpbmcucmVwKCdcMCcsIDMxICsgaSAtIGVsZW4pCgoJCWFzc2VydCgjYmxrID09IDMyLCAjYmxrKQoKCQljMCwgYzEsIGMyLCBjMyA9IHN0cmluZy51bnBhY2soIjxJOEk4SThJOCIsIGJsaykKCgkJYmxrID0gZGVjX2F1dF9zdGVwKHMsIGMwLCBjMSwgYzIsIGMzLCBibGVuKQoKCQl0YWJsZS5pbnNlcnQoY3QsIGJsaykKCgllbmQKCgktLSBjaGVjayB0aGUgbWFjCgoJbG9jYWwgY3RhZzAsIGN0YWcxID0gdGFnX2NvbXB1dGUocywgbWxlbiwgYWRsZW4pCgoJbG9jYWwgdGFnMCwgdGFnMSA9IHN0cmluZy51bnBhY2soIjxJOEk4IiwgZSwgZWxlbiArIDEpCgoJaWYgKChjdGFnMCB+IHRhZzApIHwgKGN0YWcxIH4gdGFnMSkpIH49IDAgdGhlbgoKCQlyZXR1cm4gbmlsLCAiZGVjcnlwdCBlcnJvciIKCgllbmQKCglyZXR1cm4gdGFibGUuY29uY2F0KGN0KQoKZW5kCgoKCgoKcmV0dXJuIHsKCgktLSB0aGUgY29yZSBwZXJtdXRhdGlvbiBpcyBleHBvc2VkIHRvIGZhY2lsaXRhdGUgdGVzdHMgCgoJc3RhdGVfdXBkYXRlID0gc3RhdGVfdXBkYXRlLAoKCS0tCgoJZW5jcnlwdCA9IGVuY3J5cHQsCgoJZGVjcnlwdCA9IGRlY3J5cHQsCgoJLS0KCglrZXlfc2l6ZSA9IDMyLAoKCW5vbmNlX3NpemUgPSAxNiwKCgl2YXJpYW50ID0gIk1vcnVzLTEyODAiLAoKfQoAAAAAbG9jYWwgSGV4ID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLmhleCIpCgoKCi0tIHRhZ3MKCmxvY2FsIEhFQURFUl9UQUcgID0gMHgwMQoKbG9jYWwgUEFZTE9BRF9UQUcgPSAweDAyCgpsb2NhbCBUUkFJTEVSX1RBRyA9IDB4MDQKCmxvY2FsIEZJTkFMX1RBRyAgID0gMHgwOAoKCgpsb2NhbCBmdW5jdGlvbiBHKHMsIGEsIGIsIGMsIGQpCgoJLS0gVGhlIHF1YXJ0ZXItcm91bmQuCgoJLS0gcyBpcyB0aGUgc3RhdGU6IHU2NFsxNl0uCgoJbG9jYWwgQSwgQiwgQywgRCA9IHNbYV0sIHNbYl0sIHNbY10sIHNbZF0KCgktLQoKCS0tIEgoKTogcmV0dXJuIChhIH4gYikgfiAoKGEgJiBiKSA8PCAxKSAtLSBJTkxJTkVECgoJLS0gUk9UUjY0KCk6IHJldHVybiAoeCA+PiBuKSB8ICh4IDw8ICg2NC1uKSkgLS1JTkxJTkVECgoJLS0KCglBID0gKEEgfiBCKSB+ICgoQSAmIEIpIDw8IDEpICAtLSBIKEEsIEIpOwoKCUQgPSBEIH4gQTsgRCA9IChEID4+IDgpIHwgKEQgPDwgKDU2KSkgLS1ST1RSNjQoRCwgOCkgLS1SMAoKCUMgPSAoQyB+IEQpIH4gKChDICYgRCkgPDwgMSkgIC0tIEgoQywgRCk7CgoJQiA9IEIgfiBDOyBCID0gKEIgPj4gMTkpIHwgKEIgPDwgKDQ1KSkgLS1ST1RSNjQoQiwgMTkpIC0tUjEKCglBID0gKEEgfiBCKSB+ICgoQSAmIEIpIDw8IDEpICAtLSBIKEEsIEIpOwoKCUQgPSBEIH4gQTsgRCA9IChEID4+IDQwKSB8IChEIDw8ICgyNCkpIC0tUk9UUjY0KEQsIDQwKSAtLVIyCgoJQyA9IChDIH4gRCkgfiAoKEMgJiBEKSA8PCAxKSAgLS0gSChDLCBEKTsKCglCID0gQiB+IEM7IEIgPSAoQiA+PiA2MykgfCAoQiA8PCAoMSkpIC0tUk9UUjY0KEIsIDYzKSAtLVIzCgoJc1thXSwgc1tiXSwgc1tjXSwgc1tkXSA9IEEsIEIsIEMsIEQKCmVuZAoKCgpsb2NhbCBmdW5jdGlvbiBGKHMpCgoJLS0gVGhlIGZ1bGwgcm91bmQuICBzIGlzIHRoZSBzdGF0ZTogdTY0WzE2XQoKCS0tCgoJLS0gYmV3YXJlISBpbiBMdWEsIGFycmF5cyBhcmUgMS1iYXNlZCBpbmRleGVkLCBub3QgMC1pbmRleGVkIGFzIGluIEMKCiAgICAtLSBDb2x1bW4gc3RlcAoKCUcocywgIDEsICA1LCAgOSwgMTMpOwoKICAgIEcocywgIDIsICA2LCAxMCwgMTQpOwoKICAgIEcocywgIDMsICA3LCAxMSwgMTUpOwoKICAgIEcocywgIDQsICA4LCAxMiwgMTYpOwoKICAgIC0tIERpYWdvbmFsIHN0ZXAKCiAgICBHKHMsICAxLCAgNiwgMTEsIDE2KTsKCiAgICBHKHMsICAyLCAgNywgMTIsIDEzKTsKCiAgICBHKHMsICAzLCAgOCwgIDksIDE0KTsKCiAgICBHKHMsICA0LCAgNSwgMTAsIDE1KTsKCmVuZAoKCgpsb2NhbCBmdW5jdGlvbiBwZXJtdXRlKHMpCgoJLS0gdGhlIGNvcmUgcGVybXV0YXRpb24gIChmb3VyIHJvdW5kcykKCglmb3IgXyA9IDEsIDQgZG8gRihzKSBlbmQKCmVuZAoKCgpsb2NhbCBmdW5jdGlvbiBwYWQoaW5zKQoKCS0tIHBhZCBzdHJpbmcgaW5zIHRvIGxlbmd0aCA5NiAoIkJZVEVTKE5PUlhfUikiKQoKCWxvY2FsIG91dAoKCWxvY2FsIGluc2xlbiA9ICNpbnMKCglpZiBpbnNsZW4gPT0gOTUgdGhlbiByZXR1cm4gaW5zIC4uICdceDgxJyBlbmQgLS0gbGFzdCBieXRlIGlzIDB4MDEgfCAweDgwCgoJLS0gaGVyZSBpbnNsZW4gaXMgPCA5NSwgc28gbXVzdCBwYWQgd2l0aCA5Ni0oaW5zbGVuKzIpIHplcm9zCgoJb3V0ID0gaW5zIC4uICdceDAxJyAuLiBzdHJpbmcucmVwKCdcMCcsIDk0LWluc2xlbikgLi4gJ1x4ODAnCgoJYXNzZXJ0KCNvdXQgPT0gOTYpCgoJcmV0dXJuIG91dAoKZW5kCgoKCmxvY2FsIGZ1bmN0aW9uIGFic29yYl9ibG9jayhzLCBpbnMsIGluaSwgdGFnKQoKCS0tIHRoZSBpbnB1dCBzdHJpbmcgaXMgdGhlIHN1YnN0cmluZyBvZiAnaW5zJyBzdGFydGluZyBhdCBwb3NpdGlvbiAnaW5pJwoKCS0tICh3ZSBjYW5ub3QgdXNlIGEgY2hhciogYXMgaW4gQyEpCgoJc1sxNl0gPSBzWzE2XSB+IHRhZwoKCXBlcm11dGUocykKCglmb3IgaSA9IDEsIDEyIGRvCgoJCXNbaV0gPSBzW2ldIH4gc3RyaW5nLnVucGFjaygiPEk4IiwgaW5zLCBpbmkgKyAoaS0xKSo4KQoKCWVuZAoKZW5kCgoKCmxvY2FsIGZ1bmN0aW9uIGFic29yYl9sYXN0YmxvY2socywgbGFzdCwgdGFnKQoKCWFic29yYl9ibG9jayhzLCBwYWQobGFzdCksIDEsIHRhZykKCmVuZAoKCgpsb2NhbCBmdW5jdGlvbiBlbmNyeXB0X2Jsb2NrKHMsIG91dF90YWJsZSwgaW5zLCBpbmkpCgoJLS0gZW5jcnlwdCBibG9jayBpbiAnaW5zJyBhdCBvZmZzZXQgJ2luaScKCgktLSBhcHBlbmQgZW5jcnlwdGVkIGNodW5rcyBhdCB0aGUgZW5kIG9mIG91dF90YWJsZQoKCXNbMTZdID0gc1sxNl0gfiBQQVlMT0FEX1RBRwoKCXBlcm11dGUocykKCglmb3IgaSA9IDEsIDEyIGRvCgoJCXNbaV0gPSBzW2ldIH4gc3RyaW5nLnVucGFjaygiPEk4IiwgaW5zLCBpbmkgKyAoaS0xKSo4KQoKCQl0YWJsZS5pbnNlcnQob3V0X3RhYmxlLCBzdHJpbmcucGFjaygiPEk4Iiwgc1tpXSkpCgoJZW5kCgplbmQKCgoKbG9jYWwgZnVuY3Rpb24gZW5jcnlwdF9sYXN0YmxvY2socywgb3V0X3RhYmxlLCBsYXN0KQoKCS0tIGVuY3J5cHQgbGFzdCBibG9jawoKCS0tIGFwcGVuZCBlbmNyeXB0ZWQgbGFzdCBibG9jayBhdCB0aGUgZW5kIG9mIG91dF90YWJsZQoKCWxvY2FsIHQgPSB7fSAtLSBlbmNyeXB0ZWQgY2h1bmtzIG9mICdsYXN0JyB3aWxsIGJlIGFwcGVuZGVkIHRvIHQKCglsb2NhbCBsYXN0bGVuID0gI2xhc3QKCglsYXN0ID0gcGFkKGxhc3QpCgoJZW5jcnlwdF9ibG9jayhzLCB0LCBsYXN0LCAxKQoKCWxhc3QgPSB0YWJsZS5jb25jYXQodCkKCglsYXN0ID0gbGFzdDpzdWIoMSwgbGFzdGxlbikgIC0tIGtlZXAgb25seSB0aGUgZmlyc3QgbGFzdGxlbiBieXRlcwoKCXRhYmxlLmluc2VydChvdXRfdGFibGUsIGxhc3QpCgplbmQKCgoKbG9jYWwgZnVuY3Rpb24gZGVjcnlwdF9ibG9jayhzLCBvdXRfdGFibGUsIGlucywgaW5pKQoKCS0tIGRlY3J5cHQgYmxvY2sgaW4gJ2lucycgYXQgb2Zmc2V0ICdpbmknCgoJLS0gYXBwZW5kIGRlY3J5cHRlZCBjaHVua3MgYXQgdGhlIGVuZCBvZiBvdXRfdGFibGUKCglzWzE2XSA9IHNbMTZdIH4gUEFZTE9BRF9UQUcKCglwZXJtdXRlKHMpCgoJZm9yIGkgPSAxLCAxMiBkbwoKCQlsb2NhbCBjID0gc3RyaW5nLnVucGFjaygiPEk4IiwgaW5zLCBpbmkgKyAoaS0xKSo4KQoKCQl0YWJsZS5pbnNlcnQob3V0X3RhYmxlLCBzdHJpbmcucGFjaygiPEk4Iiwgc1tpXSB+IGMpKQoKCQlzW2ldID0gYwoKCWVuZAoKZW5kCgoKCmxvY2FsIGZ1bmN0aW9uIGRlY3J5cHRfbGFzdGJsb2NrKHMsIG91dF90YWJsZSwgbGFzdCkKCgktLSBkZWNyeXB0IGxhc3QgYmxvY2sKCgktLSBhcHBlbmQgZGVjcnlwdGVkIGJsb2NrIGF0IHRoZSBlbmQgb2Ygb3V0X3RhYmxlCgoJLS0KCglsb2NhbCBsYXN0bGVuID0gI2xhc3QKCglzWzE2XSA9IHNbMTZdIH4gUEFZTE9BRF9UQUcKCglwZXJtdXRlKHMpCgoJbG9jYWwgYnl0ZSwgY2hhciA9IHN0cmluZy5ieXRlLCBzdHJpbmcuY2hhcgoKCWxvY2FsIGxhc3RibG9ja19zOF90YWJsZSA9IHt9IC0tIGxhc3QgYmxvY2sgYXMgYW4gYXJyYXkgb2YgOC1ieXRlIHN0cmluZ3MKCglmb3IgaSA9IDEsIDEyIGRvCgoJCWxvY2FsIHM4ID0gc3RyaW5nLnBhY2soIjxJOCIsIHNbaV0pCgoJCXRhYmxlLmluc2VydChsYXN0YmxvY2tfczhfdGFibGUsIHM4KQoKCWVuZAoKCWxvY2FsIGxhc3RibG9jayA9IHRhYmxlLmNvbmNhdChsYXN0YmxvY2tfczhfdGFibGUpIC0tIGxhc3RibG9jayBhcyBhIDk2LWJ5dGUgc3RyaW5nCgoJLS0gZXhwbG9kZSBsYXN0YmxvY2sgYXMgYW4gYXJyYXkgb2YgYnl0ZXMKCglsb2NhbCBsYXN0YmxvY2tfYnl0ZV90YWJsZSA9IHt9CgoJZm9yIGkgPSAxLCA5NiBkbwoKCQlsYXN0YmxvY2tfYnl0ZV90YWJsZVtpXSA9IGJ5dGUobGFzdGJsb2NrLCBpKQoKCWVuZAoKCS0tIGNvcHkgbGFzdAoKCWZvciBpID0gMSwgbGFzdGxlbiBkbwoKCQlsYXN0YmxvY2tfYnl0ZV90YWJsZVtpXSA9IGJ5dGUobGFzdCwgaSkKCgllbmQKCgktLSBwZXJmb3JtIHRoZSAneG9yJ3MKCglsYXN0YmxvY2tfYnl0ZV90YWJsZVtsYXN0bGVuKzFdID0gbGFzdGJsb2NrX2J5dGVfdGFibGVbbGFzdGxlbisxXSB+IDB4MDEKCglsYXN0YmxvY2tfYnl0ZV90YWJsZVs5Nl0gPSBsYXN0YmxvY2tfYnl0ZV90YWJsZVs5Nl0gfiAweDgwCgoJLS0gYnVpbGQgYmFjayBsYXN0YmxvY2sgYXMgYSBzdHJpbmcKCglsb2NhbCBsYXN0YmxvY2tfY2hhcl90YWJsZSA9IHt9CgoJZm9yIGkgPSAxLCA5NiBkbwoKCQlsYXN0YmxvY2tfY2hhcl90YWJsZVtpXSA9IGNoYXIobGFzdGJsb2NrX2J5dGVfdGFibGVbaV0pCgoJZW5kCgoJbGFzdGJsb2NrID0gdGFibGUuY29uY2F0KGxhc3RibG9ja19jaGFyX3RhYmxlKSAtLSBsYXN0YmxvY2sgYXMgYSA5Ni1ieXRlIHN0cmluZwoKCS0tCgoJbG9jYWwgdCA9IHt9CgoJZm9yIGkgPSAxLCAxMiBkbwoKCQlsb2NhbCBjID0gc3RyaW5nLnVucGFjaygiPEk4IiwgbGFzdGJsb2NrLCAxICsgKGktMSkqOCkKCgkJbG9jYWwgeCA9IHN0cmluZy5wYWNrKCI8STgiLCBzW2ldIH4gYykKCgkJdGFibGUuaW5zZXJ0KHQsIHgpCgoJCXNbaV0gPSBjCgoJZW5kCgoJbGFzdCA9IHRhYmxlLmNvbmNhdCh0KQoKCWxhc3QgPSBsYXN0OnN1YigxLCBsYXN0bGVuKSAgLS0ga2VlcCBvbmx5IHRoZSBmaXJzdCBsYXN0bGVuIGJ5dGVzCgoJdGFibGUuaW5zZXJ0KG91dF90YWJsZSwgbGFzdCkKCmVuZAoKCgpsb2NhbCBmdW5jdGlvbiBpbml0KGssIG4pCgoJLS0gaW5pdGlhbGl6ZSBhbmQgcmV0dXJuIHRoZSBub3J4IHN0YXRlCgoJLS0gazogdGhlIGtleSBhcyBhIDMyLWJ5dGUgc3RyaW5nCgoJLS0gbjogdGhlIG5vbmNlIGFzIGEgMzItYnl0ZSBzdHJpbmcKCglsb2NhbCBzID0ge30gLS0gdGhlIG5vcnggc3RhdGU6IHU2NFsxNl0KCgktLSAodGhlIHR3byBmb2xsb3dpbmcgRihzKSBjb3VsZCBiZSByZXBsYWNlZCB3aXRoIGEgY29uc3RhbnQgdGFibGUpCgoJLS0gKG9ubHkgc1s5XS4uc1sxNl0gYXJlIG5lZWRlZCkKCglmb3IgaSA9IDEsIDE2IGRvIHNbaV0gPSBpLTEgZW5kCgoJRihzKQoKCUYocykKCgktLSBsb2FkIHRoZSBub25jZQoKCXNbMV0sIHNbMl0sIHNbM10sIHNbNF0gPSBzdHJpbmcudW5wYWNrKCI8SThJOEk4STgiLCBuKQoKCS0tIGxvYWQgdGhlIGtleQoKCWxvY2FsIGsxLCBrMiwgazMsIGs0ID0gc3RyaW5nLnVucGFjaygiPEk4SThJOEk4IiwgaykKCglzWzVdLCBzWzZdLCBzWzddLCBzWzhdID0gIGsxLCBrMiwgazMsIGs0CgoJLS0KCglzWzEzXSA9IHNbMTNdIH4gNjQgIC0tVwoKCXNbMTRdID0gc1sxNF0gfiA0ICAgLS1MCgoJc1sxNV0gPSBzWzE1XSB+IDEgICAtLVAKCglzWzE2XSA9IHNbMTZdIH4gMjU2IC0tVAoKCS0tCgoJcGVybXV0ZShzKQoKCS0tCgoJc1sxM10gPSBzWzEzXSB+IGsxCgoJc1sxNF0gPSBzWzE0XSB+IGsyCgoJc1sxNV0gPSBzWzE1XSB+IGszCgoJc1sxNl0gPSBzWzE2XSB+IGs0CgoJLS0KCglyZXR1cm4gcwoKZW5kCgoKCmxvY2FsIGZ1bmN0aW9uIGFic29yYl9kYXRhKHMsIGlucywgdGFnKQoKCWxvY2FsIGlubGVuID0gI2lucwoKCWxvY2FsIGkgPSAxCgoJaWYgaW5sZW4gPiAwIHRoZW4KCgkJd2hpbGUgaW5sZW4gPj0gOTYgZG8KCgkJCWFic29yYl9ibG9jayhzLCBpbnMsIGksIHRhZykKCgkJCWlubGVuID0gaW5sZW4gLSA5NgoKCQkJaSA9IGkgKyA5NgoKCQllbmQKCgkJYWJzb3JiX2xhc3RibG9jayhzLCBpbnM6c3ViKGkpLCB0YWcpCgoJZW5kLS1pZgoKZW5kCgoKCmxvY2FsIGZ1bmN0aW9uIGVuY3J5cHRfZGF0YShzLCBvdXRfdGFibGUsIGlucykKCglsb2NhbCBpbmxlbiA9ICNpbnMKCglsb2NhbCBpID0gMQoKCWlmIGlubGVuID4gMCB0aGVuCgoJCXdoaWxlIGlubGVuID49IDk2IGRvCgoJCQllbmNyeXB0X2Jsb2NrKHMsIG91dF90YWJsZSwgaW5zLCBpKQoKCQkJaW5sZW4gPSBpbmxlbiAtIDk2CgoJCQlpID0gaSArIDk2CgoJCWVuZAoKCQllbmNyeXB0X2xhc3RibG9jayhzLCBvdXRfdGFibGUsIGluczpzdWIoaSkpCgoJZW5kCgplbmQKCgoKbG9jYWwgZnVuY3Rpb24gZGVjcnlwdF9kYXRhKHMsIG91dF90YWJsZSwgaW5zKQoKCWxvY2FsIGlubGVuID0gI2lucwoKCWxvY2FsIGkgPSAxCgoJaWYgaW5sZW4gPiAwIHRoZW4KCgkJd2hpbGUgaW5sZW4gPj0gOTYgZG8KCgkJCWRlY3J5cHRfYmxvY2socywgb3V0X3RhYmxlLCBpbnMsIGkpCgoJCQlpbmxlbiA9IGlubGVuIC0gOTYKCgkJCWkgPSBpICsgOTYKCgkJZW5kCgoJCWRlY3J5cHRfbGFzdGJsb2NrKHMsIG91dF90YWJsZSwgaW5zOnN1YihpKSkKCgllbmQKCmVuZAoKCgpsb2NhbCBmdW5jdGlvbiBmaW5hbGl6ZShzLCBrKQoKCS0tIHJldHVybiB0aGUgYXV0aGVudGljYXRpb24gdGFnICgzMi1ieXRlIHN0cmluZykKCgktLQoKCXNbMTZdID0gc1sxNl0gfiBGSU5BTF9UQUcKCglwZXJtdXRlKHMpCgoJLS0KCglsb2NhbCBrMSwgazIsIGszLCBrNCA9IHN0cmluZy51bnBhY2soIjxJOEk4SThJOCIsIGspCgoJLS0KCglzWzEzXSA9IHNbMTNdIH4gazEKCglzWzE0XSA9IHNbMTRdIH4gazIKCglzWzE1XSA9IHNbMTVdIH4gazMKCglzWzE2XSA9IHNbMTZdIH4gazQKCgktLQoKCXBlcm11dGUocykKCgktLQoKCXNbMTNdID0gc1sxM10gfiBrMQoKCXNbMTRdID0gc1sxNF0gfiBrMgoKCXNbMTVdID0gc1sxNV0gfiBrMwoKCXNbMTZdID0gc1sxNl0gfiBrNAoKCS0tCgoJbG9jYWwgYXV0aHRhZyA9IHN0cmluZy5wYWNrKCI8SThJOEk4STgiLCBzWzEzXSwgc1sxNF0sIHNbMTVdLCBzWzE2XSkKCglyZXR1cm4gYXV0aHRhZwoKZW5kCgoKCmxvY2FsIGZ1bmN0aW9uIHZlcmlmeV90YWcodGFnMSwgdGFnMikKCglyZXR1cm4gdGFnMSA9PSB0YWcyCgplbmQKCgoKCgotLS0gRW5jcnlwdHMgdGhlIGdpdmVuIHBsYWluIHRleHQgdXNpbmcgdGhlIE5PUlggY2lwaGVyIHdpdGggYW4gQUVBRCBjb25zdHJ1Y3Rpb24uCgotLS0gQHBhcmFtIGtleSBzdHJpbmcgLSBUaGUga2V5IHVzZWQgZm9yIGVuY3J5cHRpb24uCgotLS0gQHBhcmFtIG5vbmNlIHN0cmluZyAtIFRoZSBub25jZSB1c2VkIGZvciBlbmNyeXB0aW9uIDMyLWJ5dGUgc3RyaW5nLgoKLS0tIEBwYXJhbSBwbGFpbiBzdHJpbmcgLSBUaGUgcGxhaW4gdGV4dCB0byBiZSBlbmNyeXB0ZWQgMzItYnl0ZSBzdHJpbmcuCgotLS0gQHBhcmFtIGhlYWRlcj8gc3RyaW5nIChvcHRpb25hbCkgLSBUaGUgaGVhZGVyIHRvIGJlIGVuY3J5cHRlZCAzMi1ieXRlIHN0cmluZy4gRGVmYXVsdHMgdG8gYW4gZW1wdHkgc3RyaW5nLgoKLS0tIEBwYXJhbSB0cmFpbGVyPyBzdHJpbmcgKG9wdGlvbmFsKSAtIFRoZSB0cmFpbGVyIHRvIGJlIGVuY3J5cHRlZCAzMi1ieXRlIHN0cmluZy4gRGVmYXVsdHMgdG8gYW4gZW1wdHkgc3RyaW5nLgoKLS0tIEByZXR1cm5zIHRhYmxlIC0gQSB0YWJsZSBjb250YWluaW5nIHRoZSBlbmNyeXB0ZWQgbWVzc2FnZSBpbiBieXRlcywgc3RyaW5nLCBhbmQgaGV4IGZvcm1hdHMuCgpsb2NhbCBmdW5jdGlvbiBhZWFkX2VuY3J5cHQoa2V5LCBub25jZSwgcGxhaW4sIGhlYWRlciwgdHJhaWxlcikKCgloZWFkZXIgPSBoZWFkZXIgb3IgIiIKCgl0cmFpbGVyID0gdHJhaWxlciBvciAiIgoKCWxvY2FsIG91dF90YWJsZSA9IHt9CgoJbG9jYWwgc3RhdGUgPSBpbml0KGtleSwgbm9uY2UpCgoJYWJzb3JiX2RhdGEoc3RhdGUsIGhlYWRlciwgSEVBREVSX1RBRykKCgllbmNyeXB0X2RhdGEoc3RhdGUsIG91dF90YWJsZSwgcGxhaW4pCgoJYWJzb3JiX2RhdGEoc3RhdGUsIHRyYWlsZXIsIFRSQUlMRVJfVEFHKQoKCWxvY2FsIHRhZyA9IGZpbmFsaXplKHN0YXRlLCBrZXkpCgoJdGFibGUuaW5zZXJ0KG91dF90YWJsZSwgdGFnKQoKCWxvY2FsIGNyeXB0ZWQgPSB0YWJsZS5jb25jYXQob3V0X3RhYmxlKQoKCWFzc2VydCgjY3J5cHRlZCA9PSAjcGxhaW4gKyAzMikKCgoKICAgIGxvY2FsIHB1YmxpYyA9IHt9CgoKCiAgICBwdWJsaWMuYXNCeXRlcyA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIG91dF90YWJsZQoKICAgIGVuZAoKCgogICAgcHVibGljLmFzU3RyaW5nID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gY3J5cHRlZAoKICAgIGVuZAoKCgogICAgcHVibGljLmFzSGV4ID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gSGV4LnN0cmluZ1RvSGV4KGNyeXB0ZWQpCgogICAgZW5kCgoKCiAgICByZXR1cm4gcHVibGljCgplbmQKCgoKLS0tIERlY3J5cHRzIHRoZSBnaXZlbiBjcnlwdGVkIHRleHQgdXNpbmcgdGhlIE5PUlggY2lwaGVyIHdpdGggYW4gQUVBRCBjb25zdHJ1Y3Rpb24uCgotLS0gQHBhcmFtIGtleSBzdHJpbmcgLSBUaGUga2V5IHVzZWQgZm9yIGRlY3J5cHRpb24gMzItYnl0ZSBzdHJpbmcuCgotLS0gQHBhcmFtIG5vbmNlIHN0cmluZyAtIFRoZSBub25jZSB1c2VkIGZvciBkZWNyeXB0aW9uIDMyLWJ5dGUgc3RyaW5nLgoKLS0tIEBwYXJhbSBjcnlwdGVkIHN0cmluZyAtIFRoZSBjcnlwdGVkIHRleHQgdG8gYmUgZGVjcnlwdGVkIDMyLWJ5dGUgc3RyaW5nLgoKLS0tIEBwYXJhbSBoZWFkZXI/IHN0cmluZyAob3B0aW9uYWwpIC0gVGhlIGhlYWRlciB0byBiZSBkZWNyeXB0ZWQgMzItYnl0ZSBzdHJpbmcuIERlZmF1bHRzIHRvIGFuIGVtcHR5IHN0cmluZy4KCi0tLSBAcGFyYW0gdHJhaWxlcj8gc3RyaW5nIChvcHRpb25hbCkgLSBUaGUgdHJhaWxlciB0byBiZSBkZWNyeXB0ZWQgMzItYnl0ZSBzdHJpbmcuIERlZmF1bHRzIHRvIGFuIGVtcHR5IHN0cmluZy4KCi0tLSBAcmV0dXJucyBzdHJpbmd8bmlsIC0gVGhlIGRlY3J5cHRlZCBwbGFpbiB0ZXh0LCBvciAobmlsLCBlcnJvciBtZXNzYWdlKSBpZiB0aGUgYXV0aGVudGljYXRlZCBkZWNyeXB0aW9uIGZhaWxzLgoKbG9jYWwgZnVuY3Rpb24gYWVhZF9kZWNyeXB0KGtleSwgbm9uY2UsIGNyeXB0ZWQsIGhlYWRlciwgdHJhaWxlcikKCgloZWFkZXIgPSBoZWFkZXIgb3IgIiIKCgl0cmFpbGVyID0gdHJhaWxlciBvciAiIgoKCWFzc2VydCgjY3J5cHRlZCA+PSAzMikKCglsb2NhbCBvdXRfdGFibGUgPSB7fQoKCWxvY2FsIHN0YXRlID0gaW5pdChrZXksIG5vbmNlKQoKCWFic29yYl9kYXRhKHN0YXRlLCBoZWFkZXIsIEhFQURFUl9UQUcpCgoJbG9jYWwgY3RhZyA9IGNyeXB0ZWQ6c3ViKCNjcnlwdGVkIC0gMzIgKyAxKQoKCWxvY2FsIGMgPSBjcnlwdGVkOnN1YigxLCAjY3J5cHRlZCAtIDMyKQoKCWRlY3J5cHRfZGF0YShzdGF0ZSwgb3V0X3RhYmxlLCBjKQoKCWFic29yYl9kYXRhKHN0YXRlLCB0cmFpbGVyLCBUUkFJTEVSX1RBRykKCglsb2NhbCB0YWcgPSBmaW5hbGl6ZShzdGF0ZSwga2V5KQoKCWlmIG5vdCB2ZXJpZnlfdGFnKHRhZywgY3RhZykgdGhlbiByZXR1cm4gbmlsLCAiYXV0aCBmYWlsdXJlIiBlbmQKCglsb2NhbCBwbGFpbiA9IHRhYmxlLmNvbmNhdChvdXRfdGFibGUpCgoJcmV0dXJuIHBsYWluCgplbmQKCgoKcmV0dXJuIHsKCgllbmNyeXB0ID0gYWVhZF9lbmNyeXB0LAoKCWRlY3J5cHQgPSBhZWFkX2RlY3J5cHQsCgoJLS0KCglrZXlfc2l6ZSA9IDMyLAoKCW5vbmNlX3NpemUgPSAzMiwKCgl2YXJpYW50ID0gIk5PUlggNjQtNC0xIiwKCn0KAEKQhw8LkyBsb2NhbCBBcnJheSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5hcnJheSIpOwoKbG9jYWwgU3RyZWFtID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLnN0cmVhbSIpOwoKbG9jYWwgUXVldWUgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwucXVldWUiKTsKCgoKbG9jYWwgQ0JDID0ge307CgoKCkNCQy5DaXBoZXIgPSBmdW5jdGlvbigpCgoKCiAgICBsb2NhbCBwdWJsaWMgPSB7fTsKCgoKICAgIGxvY2FsIGtleTsKCiAgICBsb2NhbCBibG9ja0NpcGhlcjsKCiAgICBsb2NhbCBwYWRkaW5nOwoKICAgIGxvY2FsIGlucHV0UXVldWU7CgogICAgbG9jYWwgb3V0cHV0UXVldWU7CgogICAgbG9jYWwgaXY7CgoKCiAgICBwdWJsaWMuc2V0S2V5ID0gZnVuY3Rpb24oa2V5Qnl0ZXMpCgogICAgICAgIGtleSA9IGtleUJ5dGVzOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLnNldEJsb2NrQ2lwaGVyID0gZnVuY3Rpb24oY2lwaGVyKQoKICAgICAgICBibG9ja0NpcGhlciA9IGNpcGhlcjsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5zZXRQYWRkaW5nID0gZnVuY3Rpb24ocGFkZGluZ01vZGUpCgogICAgICAgIHBhZGRpbmcgPSBwYWRkaW5nTW9kZTsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5pbml0ID0gZnVuY3Rpb24oKQoKICAgICAgICBpbnB1dFF1ZXVlID0gUXVldWUoKTsKCiAgICAgICAgb3V0cHV0UXVldWUgPSBRdWV1ZSgpOwoKICAgICAgICBpdiA9IG5pbDsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy51cGRhdGUgPSBmdW5jdGlvbihtZXNzYWdlU3RyZWFtKQoKICAgICAgICBsb2NhbCBieXRlID0gbWVzc2FnZVN0cmVhbSgpOwoKICAgICAgICB3aGlsZSAoYnl0ZSB+PSBuaWwpIGRvCgogICAgICAgICAgICBpbnB1dFF1ZXVlLnB1c2goYnl0ZSk7CgogICAgICAgICAgICBpZihpbnB1dFF1ZXVlLnNpemUoKSA+PSBibG9ja0NpcGhlci5ibG9ja1NpemUpIHRoZW4KCiAgICAgICAgICAgICAgICBsb2NhbCBibG9jayA9IEFycmF5LnJlYWRGcm9tUXVldWUoaW5wdXRRdWV1ZSwgYmxvY2tDaXBoZXIuYmxvY2tTaXplKTsKCgoKICAgICAgICAgICAgICAgIGlmKGl2ID09IG5pbCkgdGhlbgoKICAgICAgICAgICAgICAgICAgICBpdiA9IGJsb2NrOwoKICAgICAgICAgICAgICAgIGVsc2UKCiAgICAgICAgICAgICAgICAgICAgbG9jYWwgb3V0ID0gQXJyYXkuWE9SKGl2LCBibG9jayk7CgogICAgICAgICAgICAgICAgICAgIG91dCA9IGJsb2NrQ2lwaGVyLmVuY3J5cHQoa2V5LCBvdXQpOwoKICAgICAgICAgICAgICAgICAgICBBcnJheS53cml0ZVRvUXVldWUob3V0cHV0UXVldWUsIG91dCk7CgogICAgICAgICAgICAgICAgICAgIGl2ID0gb3V0OwoKICAgICAgICAgICAgICAgIGVuZAoKICAgICAgICAgICAgZW5kCgogICAgICAgICAgICBieXRlID0gbWVzc2FnZVN0cmVhbSgpOwoKICAgICAgICBlbmQKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5maW5pc2ggPSBmdW5jdGlvbigpCgogICAgICAgIGxvY2FsIHBhZGRpbmdTdHJlYW0gPSBwYWRkaW5nKGJsb2NrQ2lwaGVyLmJsb2NrU2l6ZSwgaW5wdXRRdWV1ZS5nZXRIZWFkKCkpOwoKICAgICAgICBwdWJsaWMudXBkYXRlKHBhZGRpbmdTdHJlYW0pOwoKCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuZ2V0T3V0cHV0UXVldWUgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBvdXRwdXRRdWV1ZTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc0hleCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIFN0cmVhbS50b0hleChvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzQnl0ZXMgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBTdHJlYW0udG9BcnJheShvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzU3RyaW5nID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gU3RyZWFtLnRvU3RyaW5nKG91dHB1dFF1ZXVlLnBvcCk7CgogICAgZW5kCgoKCiAgICByZXR1cm4gcHVibGljOwoKCgplbmQKCgoKCgpDQkMuRGVjaXBoZXIgPSBmdW5jdGlvbigpCgoKCiAgICBsb2NhbCBwdWJsaWMgPSB7fTsKCgoKICAgIGxvY2FsIGtleTsKCiAgICBsb2NhbCBibG9ja0NpcGhlcjsKCiAgICBsb2NhbCBwYWRkaW5nOwoKICAgIGxvY2FsIGlucHV0UXVldWU7CgogICAgbG9jYWwgb3V0cHV0UXVldWU7CgogICAgbG9jYWwgaXY7CgoKCiAgICBwdWJsaWMuc2V0S2V5ID0gZnVuY3Rpb24oa2V5Qnl0ZXMpCgogICAgICAgIGtleSA9IGtleUJ5dGVzOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLnNldEJsb2NrQ2lwaGVyID0gZnVuY3Rpb24oY2lwaGVyKQoKICAgICAgICBibG9ja0NpcGhlciA9IGNpcGhlcjsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5zZXRQYWRkaW5nID0gZnVuY3Rpb24ocGFkZGluZ01vZGUpCgogICAgICAgIHBhZGRpbmcgPSBwYWRkaW5nTW9kZTsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5pbml0ID0gZnVuY3Rpb24oKQoKICAgICAgICBpbnB1dFF1ZXVlID0gUXVldWUoKTsKCiAgICAgICAgb3V0cHV0UXVldWUgPSBRdWV1ZSgpOwoKICAgICAgICBpdiA9IG5pbDsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy51cGRhdGUgPSBmdW5jdGlvbihtZXNzYWdlU3RyZWFtKQoKICAgICAgICBsb2NhbCBieXRlID0gbWVzc2FnZVN0cmVhbSgpOwoKICAgICAgICB3aGlsZSAoYnl0ZSB+PSBuaWwpIGRvCgogICAgICAgICAgICBpbnB1dFF1ZXVlLnB1c2goYnl0ZSk7CgogICAgICAgICAgICBpZihpbnB1dFF1ZXVlLnNpemUoKSA+PSBibG9ja0NpcGhlci5ibG9ja1NpemUpIHRoZW4KCiAgICAgICAgICAgICAgICBsb2NhbCBibG9jayA9IEFycmF5LnJlYWRGcm9tUXVldWUoaW5wdXRRdWV1ZSwgYmxvY2tDaXBoZXIuYmxvY2tTaXplKTsKCgoKICAgICAgICAgICAgICAgIGlmKGl2ID09IG5pbCkgdGhlbgoKICAgICAgICAgICAgICAgICAgICBpdiA9IGJsb2NrOwoKICAgICAgICAgICAgICAgIGVsc2UKCiAgICAgICAgICAgICAgICAgICAgbG9jYWwgb3V0ID0gYmxvY2s7CgogICAgICAgICAgICAgICAgICAgIG91dCA9IGJsb2NrQ2lwaGVyLmRlY3J5cHQoa2V5LCBvdXQpOwoKICAgICAgICAgICAgICAgICAgICBvdXQgPSBBcnJheS5YT1IoaXYsIG91dCk7CgogICAgICAgICAgICAgICAgICAgIEFycmF5LndyaXRlVG9RdWV1ZShvdXRwdXRRdWV1ZSwgb3V0KTsKCiAgICAgICAgICAgICAgICAgICAgaXYgPSBibG9jazsKCiAgICAgICAgICAgICAgICBlbmQKCiAgICAgICAgICAgIGVuZAoKICAgICAgICAgICAgYnl0ZSA9IG1lc3NhZ2VTdHJlYW0oKTsKCiAgICAgICAgZW5kCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuZmluaXNoID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCBwYWRkaW5nU3RyZWFtID0gcGFkZGluZyhibG9ja0NpcGhlci5ibG9ja1NpemUsIGlucHV0UXVldWUuZ2V0SGVhZCgpKTsKCiAgICAgICAgcHVibGljLnVwZGF0ZShwYWRkaW5nU3RyZWFtKTsKCgoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLmdldE91dHB1dFF1ZXVlID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gb3V0cHV0UXVldWU7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNIZXggPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBTdHJlYW0udG9IZXgob3V0cHV0UXVldWUucG9wKTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc0J5dGVzID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gU3RyZWFtLnRvQXJyYXkob3V0cHV0UXVldWUucG9wKTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc1N0cmluZyA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIFN0cmVhbS50b1N0cmluZyhvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcmV0dXJuIHB1YmxpYzsKCgoKZW5kCgoKCnJldHVybiBDQkM7CgBCsKcPC7JQbG9jYWwgQXJyYXkgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuYXJyYXkiKTsKCmxvY2FsIFN0cmVhbSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5zdHJlYW0iKTsKCmxvY2FsIFF1ZXVlID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLnF1ZXVlIik7CgoKCmxvY2FsIENGQiA9IHt9OwoKCgpDRkIuQ2lwaGVyID0gZnVuY3Rpb24oKQoKCgogICAgbG9jYWwgcHVibGljID0ge307CgoKCiAgICBsb2NhbCBrZXk7CgogICAgbG9jYWwgYmxvY2tDaXBoZXI7CgogICAgbG9jYWwgcGFkZGluZzsKCiAgICBsb2NhbCBpbnB1dFF1ZXVlOwoKICAgIGxvY2FsIG91dHB1dFF1ZXVlOwoKICAgIGxvY2FsIGl2OwoKCgogICAgcHVibGljLnNldEtleSA9IGZ1bmN0aW9uKGtleUJ5dGVzKQoKICAgICAgICBrZXkgPSBrZXlCeXRlczsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5zZXRCbG9ja0NpcGhlciA9IGZ1bmN0aW9uKGNpcGhlcikKCiAgICAgICAgYmxvY2tDaXBoZXIgPSBjaXBoZXI7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuc2V0UGFkZGluZyA9IGZ1bmN0aW9uKHBhZGRpbmdNb2RlKQoKICAgICAgICBwYWRkaW5nID0gcGFkZGluZ01vZGU7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuaW5pdCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgaW5wdXRRdWV1ZSA9IFF1ZXVlKCk7CgogICAgICAgIG91dHB1dFF1ZXVlID0gUXVldWUoKTsKCiAgICAgICAgaXYgPSBuaWw7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMudXBkYXRlID0gZnVuY3Rpb24obWVzc2FnZVN0cmVhbSkKCiAgICAgICAgbG9jYWwgYnl0ZSA9IG1lc3NhZ2VTdHJlYW0oKTsKCiAgICAgICAgd2hpbGUgKGJ5dGUgfj0gbmlsKSBkbwoKICAgICAgICAgICAgaW5wdXRRdWV1ZS5wdXNoKGJ5dGUpOwoKICAgICAgICAgICAgaWYoaW5wdXRRdWV1ZS5zaXplKCkgPj0gYmxvY2tDaXBoZXIuYmxvY2tTaXplKSB0aGVuCgogICAgICAgICAgICAgICAgbG9jYWwgYmxvY2sgPSBBcnJheS5yZWFkRnJvbVF1ZXVlKGlucHV0UXVldWUsIGJsb2NrQ2lwaGVyLmJsb2NrU2l6ZSk7CgoKCiAgICAgICAgICAgICAgICBpZihpdiA9PSBuaWwpIHRoZW4KCiAgICAgICAgICAgICAgICAgICAgaXYgPSBibG9jazsKCiAgICAgICAgICAgICAgICBlbHNlCgogICAgICAgICAgICAgICAgICAgIGxvY2FsIG91dCA9IGl2OwoKICAgICAgICAgICAgICAgICAgICBvdXQgPSBibG9ja0NpcGhlci5lbmNyeXB0KGtleSwgb3V0KTsKCiAgICAgICAgICAgICAgICAgICAgb3V0ID0gQXJyYXkuWE9SKG91dCwgYmxvY2spOwoKICAgICAgICAgICAgICAgICAgICBBcnJheS53cml0ZVRvUXVldWUob3V0cHV0UXVldWUsIG91dCk7CgogICAgICAgICAgICAgICAgICAgIGl2ID0gb3V0OwoKICAgICAgICAgICAgICAgIGVuZAoKICAgICAgICAgICAgZW5kCgogICAgICAgICAgICBieXRlID0gbWVzc2FnZVN0cmVhbSgpOwoKICAgICAgICBlbmQKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5maW5pc2ggPSBmdW5jdGlvbigpCgogICAgICAgIGxvY2FsIHBhZGRpbmdTdHJlYW0gPSBwYWRkaW5nKGJsb2NrQ2lwaGVyLmJsb2NrU2l6ZSwgaW5wdXRRdWV1ZS5nZXRIZWFkKCkpOwoKICAgICAgICBwdWJsaWMudXBkYXRlKHBhZGRpbmdTdHJlYW0pOwoKCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuZ2V0T3V0cHV0UXVldWUgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBvdXRwdXRRdWV1ZTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc0hleCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIFN0cmVhbS50b0hleChvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzQnl0ZXMgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBTdHJlYW0udG9BcnJheShvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzU3RyaW5nID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gU3RyZWFtLnRvU3RyaW5nKG91dHB1dFF1ZXVlLnBvcCk7CgogICAgZW5kCgoKCiAgICByZXR1cm4gcHVibGljOwoKCgplbmQKCgoKQ0ZCLkRlY2lwaGVyID0gZnVuY3Rpb24oKQoKCgogICAgbG9jYWwgcHVibGljID0ge307CgoKCiAgICBsb2NhbCBrZXk7CgogICAgbG9jYWwgYmxvY2tDaXBoZXI7CgogICAgbG9jYWwgcGFkZGluZzsKCiAgICBsb2NhbCBpbnB1dFF1ZXVlOwoKICAgIGxvY2FsIG91dHB1dFF1ZXVlOwoKICAgIGxvY2FsIGl2OwoKCgogICAgcHVibGljLnNldEtleSA9IGZ1bmN0aW9uKGtleUJ5dGVzKQoKICAgICAgICBrZXkgPSBrZXlCeXRlczsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5zZXRCbG9ja0NpcGhlciA9IGZ1bmN0aW9uKGNpcGhlcikKCiAgICAgICAgYmxvY2tDaXBoZXIgPSBjaXBoZXI7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuc2V0UGFkZGluZyA9IGZ1bmN0aW9uKHBhZGRpbmdNb2RlKQoKICAgICAgICBwYWRkaW5nID0gcGFkZGluZ01vZGU7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuaW5pdCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgaW5wdXRRdWV1ZSA9IFF1ZXVlKCk7CgogICAgICAgIG91dHB1dFF1ZXVlID0gUXVldWUoKTsKCiAgICAgICAgaXYgPSBuaWw7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMudXBkYXRlID0gZnVuY3Rpb24obWVzc2FnZVN0cmVhbSkKCiAgICAgICAgbG9jYWwgYnl0ZSA9IG1lc3NhZ2VTdHJlYW0oKTsKCiAgICAgICAgd2hpbGUgKGJ5dGUgfj0gbmlsKSBkbwoKICAgICAgICAgICAgaW5wdXRRdWV1ZS5wdXNoKGJ5dGUpOwoKICAgICAgICAgICAgaWYoaW5wdXRRdWV1ZS5zaXplKCkgPj0gYmxvY2tDaXBoZXIuYmxvY2tTaXplKSB0aGVuCgogICAgICAgICAgICAgICAgbG9jYWwgYmxvY2sgPSBBcnJheS5yZWFkRnJvbVF1ZXVlKGlucHV0UXVldWUsIGJsb2NrQ2lwaGVyLmJsb2NrU2l6ZSk7CgoKCiAgICAgICAgICAgICAgICBpZihpdiA9PSBuaWwpIHRoZW4KCiAgICAgICAgICAgICAgICAgICAgaXYgPSBibG9jazsKCiAgICAgICAgICAgICAgICBlbHNlCgogICAgICAgICAgICAgICAgICAgIGxvY2FsIG91dCA9IGl2OwoKICAgICAgICAgICAgICAgICAgICBvdXQgPSBibG9ja0NpcGhlci5lbmNyeXB0KGtleSwgb3V0KTsKCiAgICAgICAgICAgICAgICAgICAgb3V0ID0gQXJyYXkuWE9SKG91dCwgYmxvY2spOwoKICAgICAgICAgICAgICAgICAgICBBcnJheS53cml0ZVRvUXVldWUob3V0cHV0UXVldWUsIG91dCk7CgogICAgICAgICAgICAgICAgICAgIGl2ID0gYmxvY2s7CgogICAgICAgICAgICAgICAgZW5kCgogICAgICAgICAgICBlbmQKCiAgICAgICAgICAgIGJ5dGUgPSBtZXNzYWdlU3RyZWFtKCk7CgogICAgICAgIGVuZAoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLmZpbmlzaCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgbG9jYWwgcGFkZGluZ1N0cmVhbSA9IHBhZGRpbmcoYmxvY2tDaXBoZXIuYmxvY2tTaXplLCBpbnB1dFF1ZXVlLmdldEhlYWQoKSk7CgogICAgICAgIHB1YmxpYy51cGRhdGUocGFkZGluZ1N0cmVhbSk7CgoKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5nZXRPdXRwdXRRdWV1ZSA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIG91dHB1dFF1ZXVlOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzSGV4ID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gU3RyZWFtLnRvSGV4KG91dHB1dFF1ZXVlLnBvcCk7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNCeXRlcyA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIFN0cmVhbS50b0FycmF5KG91dHB1dFF1ZXVlLnBvcCk7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNTdHJpbmcgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBTdHJlYW0udG9TdHJpbmcob3V0cHV0UXVldWUucG9wKTsKCiAgICBlbmQKCgoKICAgIHJldHVybiBwdWJsaWM7CgoKCmVuZAoKCgpyZXR1cm4gQ0ZCO2xvY2FsIEFycmF5ID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLmFycmF5Iik7Cgpsb2NhbCBTdHJlYW0gPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuc3RyZWFtIik7Cgpsb2NhbCBRdWV1ZSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5xdWV1ZSIpOwoKCgpsb2NhbCBCaXQgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuYml0Iik7CgoKCmxvY2FsIEFORCA9IEJpdC5iYW5kOwoKCgpsb2NhbCBDVFIgPSB7fTsKCgoKQ1RSLkNpcGhlciA9IGZ1bmN0aW9uKCkKCgoKICAgIGxvY2FsIHB1YmxpYyA9IHt9OwoKCgogICAgbG9jYWwga2V5OwoKICAgIGxvY2FsIGJsb2NrQ2lwaGVyOwoKICAgIGxvY2FsIHBhZGRpbmc7CgogICAgbG9jYWwgaW5wdXRRdWV1ZTsKCiAgICBsb2NhbCBvdXRwdXRRdWV1ZTsKCiAgICBsb2NhbCBpdjsKCgoKICAgIHB1YmxpYy5zZXRLZXkgPSBmdW5jdGlvbihrZXlCeXRlcykKCiAgICAgICAga2V5ID0ga2V5Qnl0ZXM7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuc2V0QmxvY2tDaXBoZXIgPSBmdW5jdGlvbihjaXBoZXIpCgogICAgICAgIGJsb2NrQ2lwaGVyID0gY2lwaGVyOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLnNldFBhZGRpbmcgPSBmdW5jdGlvbihwYWRkaW5nTW9kZSkKCiAgICAgICAgcGFkZGluZyA9IHBhZGRpbmdNb2RlOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLmluaXQgPSBmdW5jdGlvbigpCgogICAgICAgIGlucHV0UXVldWUgPSBRdWV1ZSgpOwoKICAgICAgICBvdXRwdXRRdWV1ZSA9IFF1ZXVlKCk7CgogICAgICAgIGl2ID0gbmlsOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgbG9jYWwgdXBkYXRlSVYgPSBmdW5jdGlvbigpCgogICAgICAgIGl2WzE2XSA9IGl2WzE2XSArIDE7CgogICAgICAgIGlmIGl2WzE2XSA8PSAweEZGIHRoZW4gcmV0dXJuOyBlbmQKCiAgICAgICAgaXZbMTZdID0gQU5EKGl2WzE2XSwgMHhGRik7CgoKCiAgICAgICAgaXZbMTVdID0gaXZbMTVdICsgMTsKCiAgICAgICAgaWYgaXZbMTVdIDw9IDB4RkYgdGhlbiByZXR1cm47IGVuZAoKICAgICAgICBpdlsxNV0gPSBBTkQoaXZbMTVdLCAweEZGKTsKCgoKICAgICAgICBpdlsxNF0gPSBpdlsxNF0gKyAxOwoKICAgICAgICBpZiBpdlsxNF0gPD0gMHhGRiB0aGVuIHJldHVybjsgZW5kCgogICAgICAgIGl2WzE0XSA9IEFORChpdlsxNF0sIDB4RkYpOwoKCgogICAgICAgIGl2WzEzXSA9IGl2WzEzXSArIDE7CgogICAgICAgIGlmIGl2WzEzXSA8PSAweEZGIHRoZW4gcmV0dXJuOyBlbmQKCiAgICAgICAgaXZbMTNdID0gQU5EKGl2WzEzXSwgMHhGRik7CgoKCiAgICAgICAgaXZbMTJdID0gaXZbMTJdICsgMTsKCiAgICAgICAgaWYgaXZbMTJdIDw9IDB4RkYgdGhlbiByZXR1cm47IGVuZAoKICAgICAgICBpdlsxMl0gPSBBTkQoaXZbMTJdLCAweEZGKTsKCgoKICAgICAgICBpdlsxMV0gPSBpdlsxMV0gKyAxOwoKICAgICAgICBpZiBpdlsxMV0gPD0gMHhGRiB0aGVuIHJldHVybjsgZW5kCgogICAgICAgIGl2WzExXSA9IEFORChpdlsxMV0sIDB4RkYpOwoKCgogICAgICAgIGl2WzEwXSA9IGl2WzEwXSArIDE7CgogICAgICAgIGlmIGl2WzEwXSA8PSAweEZGIHRoZW4gcmV0dXJuOyBlbmQKCiAgICAgICAgaXZbMTBdID0gQU5EKGl2WzEwXSwgMHhGRik7CgoKCiAgICAgICAgaXZbOV0gPSBpdls5XSArIDE7CgogICAgICAgIGlmIGl2WzldIDw9IDB4RkYgdGhlbiByZXR1cm47IGVuZAoKICAgICAgICBpdls5XSA9IEFORChpdls5XSwgMHhGRik7CgoKCiAgICAgICAgcmV0dXJuOwoKICAgIGVuZAoKCgogICAgcHVibGljLnVwZGF0ZSA9IGZ1bmN0aW9uKG1lc3NhZ2VTdHJlYW0pCgogICAgICAgIGxvY2FsIGJ5dGUgPSBtZXNzYWdlU3RyZWFtKCk7CgogICAgICAgIHdoaWxlIChieXRlIH49IG5pbCkgZG8KCiAgICAgICAgICAgIGlucHV0UXVldWUucHVzaChieXRlKTsKCgoKICAgICAgICAgICAgaWYoaW5wdXRRdWV1ZS5zaXplKCkgPj0gYmxvY2tDaXBoZXIuYmxvY2tTaXplKSB0aGVuCgogICAgICAgICAgICAgICAgbG9jYWwgYmxvY2sgPSBBcnJheS5yZWFkRnJvbVF1ZXVlKGlucHV0UXVldWUsIGJsb2NrQ2lwaGVyLmJsb2NrU2l6ZSk7CgoKCiAgICAgICAgICAgICAgICBpZihpdiA9PSBuaWwpIHRoZW4KCiAgICAgICAgICAgICAgICAgICAgaXYgPSBibG9jazsKCiAgICAgICAgICAgICAgICBlbHNlCgogICAgICAgICAgICAgICAgICAgIGxvY2FsIG91dCA9IGl2OwoKICAgICAgICAgICAgICAgICAgICBvdXQgPSBibG9ja0NpcGhlci5lbmNyeXB0KGtleSwgb3V0KTsKCgoKICAgICAgICAgICAgICAgICAgICBvdXQgPSBBcnJheS5YT1Iob3V0LCBibG9jayk7CgogICAgICAgICAgICAgICAgICAgIEFycmF5LndyaXRlVG9RdWV1ZShvdXRwdXRRdWV1ZSwgb3V0KTsKCiAgICAgICAgICAgICAgICAgICAgdXBkYXRlSVYoKTsKCiAgICAgICAgICAgICAgICBlbmQKCiAgICAgICAgICAgIGVuZAoKICAgICAgICAgICAgYnl0ZSA9IG1lc3NhZ2VTdHJlYW0oKTsKCiAgICAgICAgZW5kCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuZmluaXNoID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCBwYWRkaW5nU3RyZWFtID0gcGFkZGluZyhibG9ja0NpcGhlci5ibG9ja1NpemUsIGlucHV0UXVldWUuZ2V0SGVhZCgpKTsKCiAgICAgICAgcHVibGljLnVwZGF0ZShwYWRkaW5nU3RyZWFtKTsKCgoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLmdldE91dHB1dFF1ZXVlID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gb3V0cHV0UXVldWU7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNIZXggPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBTdHJlYW0udG9IZXgob3V0cHV0UXVldWUucG9wKTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc0J5dGVzID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gU3RyZWFtLnRvQXJyYXkob3V0cHV0UXVldWUucG9wKTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc1N0cmluZyA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIFN0cmVhbS50b1N0cmluZyhvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcmV0dXJuIHB1YmxpYzsKCgoKZW5kCgoKCgoKQ1RSLkRlY2lwaGVyID0gZnVuY3Rpb24oKQoKCgogICAgbG9jYWwgcHVibGljID0ge307CgoKCiAgICBsb2NhbCBrZXk7CgogICAgbG9jYWwgYmxvY2tDaXBoZXI7CgogICAgbG9jYWwgcGFkZGluZzsKCiAgICBsb2NhbCBpbnB1dFF1ZXVlOwoKICAgIGxvY2FsIG91dHB1dFF1ZXVlOwoKICAgIGxvY2FsIGl2OwoKCgogICAgcHVibGljLnNldEtleSA9IGZ1bmN0aW9uKGtleUJ5dGVzKQoKICAgICAgICBrZXkgPSBrZXlCeXRlczsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5zZXRCbG9ja0NpcGhlciA9IGZ1bmN0aW9uKGNpcGhlcikKCiAgICAgICAgYmxvY2tDaXBoZXIgPSBjaXBoZXI7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuc2V0UGFkZGluZyA9IGZ1bmN0aW9uKHBhZGRpbmdNb2RlKQoKICAgICAgICBwYWRkaW5nID0gcGFkZGluZ01vZGU7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuaW5pdCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgaW5wdXRRdWV1ZSA9IFF1ZXVlKCk7CgogICAgICAgIG91dHB1dFF1ZXVlID0gUXVldWUoKTsKCiAgICAgICAgaXYgPSBuaWw7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBsb2NhbCB1cGRhdGVJViA9IGZ1bmN0aW9uKCkKCiAgICAgICAgaXZbMTZdID0gaXZbMTZdICsgMTsKCiAgICAgICAgaWYgaXZbMTZdIDw9IDB4RkYgdGhlbiByZXR1cm47IGVuZAoKICAgICAgICBpdlsxNl0gPSBBTkQoaXZbMTZdLCAweEZGKTsKCgoKICAgICAgICBpdlsxNV0gPSBpdlsxNV0gKyAxOwoKICAgICAgICBpZiBpdlsxNV0gPD0gMHhGRiB0aGVuIHJldHVybjsgZW5kCgogICAgICAgIGl2WzE1XSA9IEFORChpdlsxNV0sIDB4RkYpOwoKCgogICAgICAgIGl2WzE0XSA9IGl2WzE0XSArIDE7CgogICAgICAgIGlmIGl2WzE0XSA8PSAweEZGIHRoZW4gcmV0dXJuOyBlbmQKCiAgICAgICAgaXZbMTRdID0gQU5EKGl2WzE0XSwgMHhGRik7CgoKCiAgICAgICAgaXZbMTNdID0gaXZbMTNdICsgMTsKCiAgICAgICAgaWYgaXZbMTNdIDw9IDB4RkYgdGhlbiByZXR1cm47IGVuZAoKICAgICAgICBpdlsxM10gPSBBTkQoaXZbMTNdLCAweEZGKTsKCgoKICAgICAgICBpdlsxMl0gPSBpdlsxMl0gKyAxOwoKICAgICAgICBpZiBpdlsxMl0gPD0gMHhGRiB0aGVuIHJldHVybjsgZW5kCgogICAgICAgIGl2WzEyXSA9IEFORChpdlsxMl0sIDB4RkYpOwoKCgogICAgICAgIGl2WzExXSA9IGl2WzExXSArIDE7CgogICAgICAgIGlmIGl2WzExXSA8PSAweEZGIHRoZW4gcmV0dXJuOyBlbmQKCiAgICAgICAgaXZbMTFdID0gQU5EKGl2WzExXSwgMHhGRik7CgoKCiAgICAgICAgaXZbMTBdID0gaXZbMTBdICsgMTsKCiAgICAgICAgaWYgaXZbMTBdIDw9IDB4RkYgdGhlbiByZXR1cm47IGVuZAoKICAgICAgICBpdlsxMF0gPSBBTkQoaXZbMTBdLCAweEZGKTsKCgoKICAgICAgICBpdls5XSA9IGl2WzldICsgMTsKCiAgICAgICAgaWYgaXZbOV0gPD0gMHhGRiB0aGVuIHJldHVybjsgZW5kCgogICAgICAgIGl2WzldID0gQU5EKGl2WzldLCAweEZGKTsKCgoKICAgICAgICByZXR1cm47CgogICAgZW5kCgoKCiAgICBwdWJsaWMudXBkYXRlID0gZnVuY3Rpb24obWVzc2FnZVN0cmVhbSkKCiAgICAgICAgbG9jYWwgYnl0ZSA9IG1lc3NhZ2VTdHJlYW0oKTsKCiAgICAgICAgd2hpbGUgKGJ5dGUgfj0gbmlsKSBkbwoKICAgICAgICAgICAgaW5wdXRRdWV1ZS5wdXNoKGJ5dGUpOwoKCgogICAgICAgICAgICBpZihpbnB1dFF1ZXVlLnNpemUoKSA+PSBibG9ja0NpcGhlci5ibG9ja1NpemUpIHRoZW4KCiAgICAgICAgICAgICAgICBsb2NhbCBibG9jayA9IEFycmF5LnJlYWRGcm9tUXVldWUoaW5wdXRRdWV1ZSwgYmxvY2tDaXBoZXIuYmxvY2tTaXplKTsKCgoKICAgICAgICAgICAgICAgIGlmKGl2ID09IG5pbCkgdGhlbgoKICAgICAgICAgICAgICAgICAgICBpdiA9IGJsb2NrOwoKICAgICAgICAgICAgICAgIGVsc2UKCiAgICAgICAgICAgICAgICAgICAgbG9jYWwgb3V0ID0gaXY7CgogICAgICAgICAgICAgICAgICAgIG91dCA9IGJsb2NrQ2lwaGVyLmVuY3J5cHQoa2V5LCBvdXQpOwoKCgogICAgICAgICAgICAgICAgICAgIG91dCA9IEFycmF5LlhPUihvdXQsIGJsb2NrKTsKCiAgICAgICAgICAgICAgICAgICAgQXJyYXkud3JpdGVUb1F1ZXVlKG91dHB1dFF1ZXVlLCBvdXQpOwoKICAgICAgICAgICAgICAgICAgICB1cGRhdGVJVigpOwoKICAgICAgICAgICAgICAgIGVuZAoKICAgICAgICAgICAgZW5kCgogICAgICAgICAgICBieXRlID0gbWVzc2FnZVN0cmVhbSgpOwoKICAgICAgICBlbmQKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5maW5pc2ggPSBmdW5jdGlvbigpCgogICAgICAgIGxvY2FsIHBhZGRpbmdTdHJlYW0gPSBwYWRkaW5nKGJsb2NrQ2lwaGVyLmJsb2NrU2l6ZSwgaW5wdXRRdWV1ZS5nZXRIZWFkKCkpOwoKICAgICAgICBwdWJsaWMudXBkYXRlKHBhZGRpbmdTdHJlYW0pOwoKCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuZ2V0T3V0cHV0UXVldWUgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBvdXRwdXRRdWV1ZTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc0hleCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIFN0cmVhbS50b0hleChvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzQnl0ZXMgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBTdHJlYW0udG9BcnJheShvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzU3RyaW5nID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gU3RyZWFtLnRvU3RyaW5nKG91dHB1dFF1ZXVlLnBvcCk7CgogICAgZW5kCgoKCiAgICByZXR1cm4gcHVibGljOwoKCgplbmQKCgoKcmV0dXJuIENUUjsKAELw9w8L8cIBbG9jYWwgQXJyYXkgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuYXJyYXkiKTsKCmxvY2FsIFN0cmVhbSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5zdHJlYW0iKTsKCmxvY2FsIFF1ZXVlID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLnF1ZXVlIik7CgoKCmxvY2FsIEVDQiA9IHt9OwoKCgpFQ0IuQ2lwaGVyID0gZnVuY3Rpb24oKQoKCgogICAgbG9jYWwgcHVibGljID0ge307CgoKCiAgICBsb2NhbCBrZXk7CgogICAgbG9jYWwgYmxvY2tDaXBoZXI7CgogICAgbG9jYWwgcGFkZGluZzsKCiAgICBsb2NhbCBpbnB1dFF1ZXVlOwoKICAgIGxvY2FsIG91dHB1dFF1ZXVlOwoKCgogICAgcHVibGljLnNldEtleSA9IGZ1bmN0aW9uKGtleUJ5dGVzKQoKICAgICAgICBrZXkgPSBrZXlCeXRlczsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5zZXRCbG9ja0NpcGhlciA9IGZ1bmN0aW9uKGNpcGhlcikKCiAgICAgICAgYmxvY2tDaXBoZXIgPSBjaXBoZXI7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuc2V0UGFkZGluZyA9IGZ1bmN0aW9uKHBhZGRpbmdNb2RlKQoKICAgICAgICBwYWRkaW5nID0gcGFkZGluZ01vZGU7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuaW5pdCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgaW5wdXRRdWV1ZSA9IFF1ZXVlKCk7CgogICAgICAgIG91dHB1dFF1ZXVlID0gUXVldWUoKTsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy51cGRhdGUgPSBmdW5jdGlvbihtZXNzYWdlU3RyZWFtKQoKICAgICAgICBsb2NhbCBieXRlID0gbWVzc2FnZVN0cmVhbSgpOwoKICAgICAgICB3aGlsZSAoYnl0ZSB+PSBuaWwpIGRvCgogICAgICAgICAgICBpbnB1dFF1ZXVlLnB1c2goYnl0ZSk7CgogICAgICAgICAgICBpZihpbnB1dFF1ZXVlLnNpemUoKSA+PSBibG9ja0NpcGhlci5ibG9ja1NpemUpIHRoZW4KCiAgICAgICAgICAgICAgICBsb2NhbCBibG9jayA9IEFycmF5LnJlYWRGcm9tUXVldWUoaW5wdXRRdWV1ZSwgYmxvY2tDaXBoZXIuYmxvY2tTaXplKTsKCgoKICAgICAgICAgICAgICAgIGJsb2NrID0gYmxvY2tDaXBoZXIuZW5jcnlwdChrZXksIGJsb2NrKTsKCgoKICAgICAgICAgICAgICAgIEFycmF5LndyaXRlVG9RdWV1ZShvdXRwdXRRdWV1ZSwgYmxvY2spOwoKICAgICAgICAgICAgZW5kCgogICAgICAgICAgICBieXRlID0gbWVzc2FnZVN0cmVhbSgpOwoKICAgICAgICBlbmQKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5maW5pc2ggPSBmdW5jdGlvbigpCgogICAgICAgIGxvY2FsIHBhZGRpbmdTdHJlYW0gPSBwYWRkaW5nKGJsb2NrQ2lwaGVyLmJsb2NrU2l6ZSwgaW5wdXRRdWV1ZS5nZXRIZWFkKCkpOwoKICAgICAgICBwdWJsaWMudXBkYXRlKHBhZGRpbmdTdHJlYW0pOwoKCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuZ2V0T3V0cHV0UXVldWUgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBvdXRwdXRRdWV1ZTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc0hleCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIFN0cmVhbS50b0hleChvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzQnl0ZXMgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBTdHJlYW0udG9BcnJheShvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzU3RyaW5nID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gU3RyZWFtLnRvU3RyaW5nKG91dHB1dFF1ZXVlLnBvcCk7CgogICAgZW5kCgoKCiAgICByZXR1cm4gcHVibGljOwoKCgplbmQKCgoKRUNCLkRlY2lwaGVyID0gZnVuY3Rpb24oKQoKCgogICAgbG9jYWwgcHVibGljID0ge307CgoKCiAgICBsb2NhbCBrZXk7CgogICAgbG9jYWwgYmxvY2tDaXBoZXI7CgogICAgbG9jYWwgcGFkZGluZzsKCiAgICBsb2NhbCBpbnB1dFF1ZXVlOwoKICAgIGxvY2FsIG91dHB1dFF1ZXVlOwoKCgogICAgcHVibGljLnNldEtleSA9IGZ1bmN0aW9uKGtleUJ5dGVzKQoKICAgICAgICBrZXkgPSBrZXlCeXRlczsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5zZXRCbG9ja0NpcGhlciA9IGZ1bmN0aW9uKGNpcGhlcikKCiAgICAgICAgYmxvY2tDaXBoZXIgPSBjaXBoZXI7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuc2V0UGFkZGluZyA9IGZ1bmN0aW9uKHBhZGRpbmdNb2RlKQoKICAgICAgICBwYWRkaW5nID0gcGFkZGluZ01vZGU7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuaW5pdCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgaW5wdXRRdWV1ZSA9IFF1ZXVlKCk7CgogICAgICAgIG91dHB1dFF1ZXVlID0gUXVldWUoKTsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy51cGRhdGUgPSBmdW5jdGlvbihtZXNzYWdlU3RyZWFtKQoKICAgICAgICBsb2NhbCBieXRlID0gbWVzc2FnZVN0cmVhbSgpOwoKICAgICAgICB3aGlsZSAoYnl0ZSB+PSBuaWwpIGRvCgogICAgICAgICAgICBpbnB1dFF1ZXVlLnB1c2goYnl0ZSk7CgogICAgICAgICAgICBpZihpbnB1dFF1ZXVlLnNpemUoKSA+PSBibG9ja0NpcGhlci5ibG9ja1NpemUpIHRoZW4KCiAgICAgICAgICAgICAgICBsb2NhbCBibG9jayA9IEFycmF5LnJlYWRGcm9tUXVldWUoaW5wdXRRdWV1ZSwgYmxvY2tDaXBoZXIuYmxvY2tTaXplKTsKCgoKICAgICAgICAgICAgICAgIGJsb2NrID0gYmxvY2tDaXBoZXIuZGVjcnlwdChrZXksIGJsb2NrKTsKCgoKICAgICAgICAgICAgICAgIEFycmF5LndyaXRlVG9RdWV1ZShvdXRwdXRRdWV1ZSwgYmxvY2spOwoKICAgICAgICAgICAgZW5kCgogICAgICAgICAgICBieXRlID0gbWVzc2FnZVN0cmVhbSgpOwoKICAgICAgICBlbmQKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5maW5pc2ggPSBmdW5jdGlvbigpCgogICAgICAgIGxvY2FsIHBhZGRpbmdTdHJlYW0gPSBwYWRkaW5nKGJsb2NrQ2lwaGVyLmJsb2NrU2l6ZSwgaW5wdXRRdWV1ZS5nZXRIZWFkKCkpOwoKICAgICAgICBwdWJsaWMudXBkYXRlKHBhZGRpbmdTdHJlYW0pOwoKCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuZ2V0T3V0cHV0UXVldWUgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBvdXRwdXRRdWV1ZTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc0hleCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIFN0cmVhbS50b0hleChvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzQnl0ZXMgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBTdHJlYW0udG9BcnJheShvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzU3RyaW5nID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gU3RyZWFtLnRvU3RyaW5nKG91dHB1dFF1ZXVlLnBvcCk7CgogICAgZW5kCgoKCiAgICByZXR1cm4gcHVibGljOwoKCgplbmQKCgoKCgpyZXR1cm4gRUNCO2xvY2FsIEFycmF5ID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLmFycmF5Iik7Cgpsb2NhbCBTdHJlYW0gPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuc3RyZWFtIik7Cgpsb2NhbCBRdWV1ZSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5xdWV1ZSIpOwoKCgpsb2NhbCBPRkIgPSB7fTsKCgoKT0ZCLkNpcGhlciA9IGZ1bmN0aW9uKCkKCgoKICAgIGxvY2FsIHB1YmxpYyA9IHt9OwoKCgogICAgbG9jYWwga2V5OwoKICAgIGxvY2FsIGJsb2NrQ2lwaGVyOwoKICAgIGxvY2FsIHBhZGRpbmc7CgogICAgbG9jYWwgaW5wdXRRdWV1ZTsKCiAgICBsb2NhbCBvdXRwdXRRdWV1ZTsKCiAgICBsb2NhbCBpdjsKCgoKICAgIHB1YmxpYy5zZXRLZXkgPSBmdW5jdGlvbihrZXlCeXRlcykKCiAgICAgICAga2V5ID0ga2V5Qnl0ZXM7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuc2V0QmxvY2tDaXBoZXIgPSBmdW5jdGlvbihjaXBoZXIpCgogICAgICAgIGJsb2NrQ2lwaGVyID0gY2lwaGVyOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLnNldFBhZGRpbmcgPSBmdW5jdGlvbihwYWRkaW5nTW9kZSkKCiAgICAgICAgcGFkZGluZyA9IHBhZGRpbmdNb2RlOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLmluaXQgPSBmdW5jdGlvbigpCgogICAgICAgIGlucHV0UXVldWUgPSBRdWV1ZSgpOwoKICAgICAgICBvdXRwdXRRdWV1ZSA9IFF1ZXVlKCk7CgogICAgICAgIGl2ID0gbmlsOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLnVwZGF0ZSA9IGZ1bmN0aW9uKG1lc3NhZ2VTdHJlYW0pCgogICAgICAgIGxvY2FsIGJ5dGUgPSBtZXNzYWdlU3RyZWFtKCk7CgogICAgICAgIHdoaWxlIChieXRlIH49IG5pbCkgZG8KCiAgICAgICAgICAgIGlucHV0UXVldWUucHVzaChieXRlKTsKCiAgICAgICAgICAgIGlmKGlucHV0UXVldWUuc2l6ZSgpID49IGJsb2NrQ2lwaGVyLmJsb2NrU2l6ZSkgdGhlbgoKICAgICAgICAgICAgICAgIGxvY2FsIGJsb2NrID0gQXJyYXkucmVhZEZyb21RdWV1ZShpbnB1dFF1ZXVlLCBibG9ja0NpcGhlci5ibG9ja1NpemUpOwoKCgogICAgICAgICAgICAgICAgaWYoaXYgPT0gbmlsKSB0aGVuCgogICAgICAgICAgICAgICAgICAgIGl2ID0gYmxvY2s7CgogICAgICAgICAgICAgICAgZWxzZQoKICAgICAgICAgICAgICAgICAgICBsb2NhbCBvdXQgPSBpdjsKCiAgICAgICAgICAgICAgICAgICAgb3V0ID0gYmxvY2tDaXBoZXIuZW5jcnlwdChrZXksIG91dCk7CgogICAgICAgICAgICAgICAgICAgIGl2ID0gb3V0OwoKICAgICAgICAgICAgICAgICAgICBvdXQgPSBBcnJheS5YT1Iob3V0LCBibG9jayk7CgogICAgICAgICAgICAgICAgICAgIEFycmF5LndyaXRlVG9RdWV1ZShvdXRwdXRRdWV1ZSwgb3V0KTsKCiAgICAgICAgICAgICAgICBlbmQKCiAgICAgICAgICAgIGVuZAoKICAgICAgICAgICAgYnl0ZSA9IG1lc3NhZ2VTdHJlYW0oKTsKCiAgICAgICAgZW5kCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuZmluaXNoID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCBwYWRkaW5nU3RyZWFtID0gcGFkZGluZyhibG9ja0NpcGhlci5ibG9ja1NpemUsIGlucHV0UXVldWUuZ2V0SGVhZCgpKTsKCiAgICAgICAgcHVibGljLnVwZGF0ZShwYWRkaW5nU3RyZWFtKTsKCgoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLmdldE91dHB1dFF1ZXVlID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gb3V0cHV0UXVldWU7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNIZXggPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBTdHJlYW0udG9IZXgob3V0cHV0UXVldWUucG9wKTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc0J5dGVzID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gU3RyZWFtLnRvQXJyYXkob3V0cHV0UXVldWUucG9wKTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc1N0cmluZyA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIFN0cmVhbS50b1N0cmluZyhvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcmV0dXJuIHB1YmxpYzsKCgoKZW5kCgoKCk9GQi5EZWNpcGhlciA9IGZ1bmN0aW9uKCkKCgoKICAgIGxvY2FsIHB1YmxpYyA9IHt9OwoKCgogICAgbG9jYWwga2V5OwoKICAgIGxvY2FsIGJsb2NrQ2lwaGVyOwoKICAgIGxvY2FsIHBhZGRpbmc7CgogICAgbG9jYWwgaW5wdXRRdWV1ZTsKCiAgICBsb2NhbCBvdXRwdXRRdWV1ZTsKCiAgICBsb2NhbCBpdjsKCgoKICAgIHB1YmxpYy5zZXRLZXkgPSBmdW5jdGlvbihrZXlCeXRlcykKCiAgICAgICAga2V5ID0ga2V5Qnl0ZXM7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuc2V0QmxvY2tDaXBoZXIgPSBmdW5jdGlvbihjaXBoZXIpCgogICAgICAgIGJsb2NrQ2lwaGVyID0gY2lwaGVyOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLnNldFBhZGRpbmcgPSBmdW5jdGlvbihwYWRkaW5nTW9kZSkKCiAgICAgICAgcGFkZGluZyA9IHBhZGRpbmdNb2RlOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLmluaXQgPSBmdW5jdGlvbigpCgogICAgICAgIGlucHV0UXVldWUgPSBRdWV1ZSgpOwoKICAgICAgICBvdXRwdXRRdWV1ZSA9IFF1ZXVlKCk7CgogICAgICAgIGl2ID0gbmlsOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLnVwZGF0ZSA9IGZ1bmN0aW9uKG1lc3NhZ2VTdHJlYW0pCgogICAgICAgIGxvY2FsIGJ5dGUgPSBtZXNzYWdlU3RyZWFtKCk7CgogICAgICAgIHdoaWxlIChieXRlIH49IG5pbCkgZG8KCiAgICAgICAgICAgIGlucHV0UXVldWUucHVzaChieXRlKTsKCiAgICAgICAgICAgIGlmKGlucHV0UXVldWUuc2l6ZSgpID49IGJsb2NrQ2lwaGVyLmJsb2NrU2l6ZSkgdGhlbgoKICAgICAgICAgICAgICAgIGxvY2FsIGJsb2NrID0gQXJyYXkucmVhZEZyb21RdWV1ZShpbnB1dFF1ZXVlLCBibG9ja0NpcGhlci5ibG9ja1NpemUpOwoKCgogICAgICAgICAgICAgICAgaWYoaXYgPT0gbmlsKSB0aGVuCgogICAgICAgICAgICAgICAgICAgIGl2ID0gYmxvY2s7CgogICAgICAgICAgICAgICAgZWxzZQoKICAgICAgICAgICAgICAgICAgICBsb2NhbCBvdXQgPSBpdjsKCiAgICAgICAgICAgICAgICAgICAgb3V0ID0gYmxvY2tDaXBoZXIuZW5jcnlwdChrZXksIG91dCk7CgogICAgICAgICAgICAgICAgICAgIGl2ID0gb3V0OwoKICAgICAgICAgICAgICAgICAgICBvdXQgPSBBcnJheS5YT1Iob3V0LCBibG9jayk7CgogICAgICAgICAgICAgICAgICAgIEFycmF5LndyaXRlVG9RdWV1ZShvdXRwdXRRdWV1ZSwgb3V0KTsKCiAgICAgICAgICAgICAgICBlbmQKCiAgICAgICAgICAgIGVuZAoKICAgICAgICAgICAgYnl0ZSA9IG1lc3NhZ2VTdHJlYW0oKTsKCiAgICAgICAgZW5kCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuZmluaXNoID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCBwYWRkaW5nU3RyZWFtID0gcGFkZGluZyhibG9ja0NpcGhlci5ibG9ja1NpemUsIGlucHV0UXVldWUuZ2V0SGVhZCgpKTsKCiAgICAgICAgcHVibGljLnVwZGF0ZShwYWRkaW5nU3RyZWFtKTsKCgoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLmdldE91dHB1dFF1ZXVlID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gb3V0cHV0UXVldWU7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNIZXggPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBTdHJlYW0udG9IZXgob3V0cHV0UXVldWUucG9wKTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc0J5dGVzID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gU3RyZWFtLnRvQXJyYXkob3V0cHV0UXVldWUucG9wKTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc1N0cmluZyA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIFN0cmVhbS50b1N0cmluZyhvdXRwdXRRdWV1ZS5wb3ApOwoKICAgIGVuZAoKCgogICAgcmV0dXJuIHB1YmxpYzsKCgoKZW5kCgoKCgoKcmV0dXJuIE9GQjtsb2NhbCBIZXggPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuaGV4Iik7CgoKCgoKbG9jYWwgZnVuY3Rpb24gUk9UUjY0KHgsIG4pCgogICAgcmV0dXJuICh4ID4+IG4pIHwgKHggPDwgKDY0LW4pKQoKZW5kCgoKCi0tIEcgTWl4aW5nIGZ1bmN0aW9uLgoKCgpsb2NhbCBmdW5jdGlvbiBHKHYsIGEsIGIsIGMsIGQsIHgsIHkpCgoJdlthXSA9IHZbYV0gKyB2W2JdICsgeAoKCXZbZF0gPSBST1RSNjQodltkXSB+IHZbYV0sIDMyKQoKCXZbY10gPSB2W2NdICsgdltkXQoKCXZbYl0gPSBST1RSNjQodltiXSB+IHZbY10sIDI0KQoKCXZbYV0gPSB2W2FdICsgdltiXSArIHkKCgl2W2RdID0gUk9UUjY0KHZbZF0gfiB2W2FdLCAxNikKCgl2W2NdID0gdltjXSArIHZbZF0KCgl2W2JdID0gUk9UUjY0KHZbYl0gfiB2W2NdLCA2MykKCmVuZAoKCgotLSAgSW5pdGlhbGl6YXRpb24gVmVjdG9yLgoKbG9jYWwgaXYgPSB7CgogICAgMHg2YTA5ZTY2N2YzYmNjOTA4LCAweGJiNjdhZTg1ODRjYWE3M2IsCgogICAgMHgzYzZlZjM3MmZlOTRmODJiLCAweGE1NGZmNTNhNWYxZDM2ZjEsCgogICAgMHg1MTBlNTI3ZmFkZTY4MmQxLCAweDliMDU2ODhjMmIzZTZjMWYsCgogICAgMHgxZjgzZDlhYmZiNDFiZDZiLCAweDViZTBjZDE5MTM3ZTIxNzkKCn0KCgoKbG9jYWwgc2lnbWEgPSB7CgoJLS0gYXJyYXkgaW5kZXggc3RhcnQgYXQgMSBpbiBMdWEsCgoJLS0gPT4gYWxsIHRoZSBwZXJtdXRhdGlvbiB2YWx1ZXMgYXJlIGluY3JlbWVudGVkIGJ5IG9uZQoKCXsgMSwgMiwgMywgNCwgNSwgNiwgNywgOCwgOSwgMTAsIDExLCAxMiwgMTMsIDE0LCAxNSwgMTYgfSwKCgl7IDE1LCAxMSwgNSwgOSwgMTAsIDE2LCAxNCwgNywgMiwgMTMsIDEsIDMsIDEyLCA4LCA2LCA0IH0sCgoJeyAxMiwgOSwgMTMsIDEsIDYsIDMsIDE2LCAxNCwgMTEsIDE1LCA0LCA3LCA4LCAyLCAxMCwgNSB9LAoKCXsgOCwgMTAsIDQsIDIsIDE0LCAxMywgMTIsIDE1LCAzLCA3LCA2LCAxMSwgNSwgMSwgMTYsIDkgfSwKCgl7IDEwLCAxLCA2LCA4LCAzLCA1LCAxMSwgMTYsIDE1LCAyLCAxMiwgMTMsIDcsIDksIDQsIDE0IH0sCgoJeyAzLCAxMywgNywgMTEsIDEsIDEyLCA5LCA0LCA1LCAxNCwgOCwgNiwgMTYsIDE1LCAyLCAxMCB9LAoKCXsgMTMsIDYsIDIsIDE2LCAxNSwgMTQsIDUsIDExLCAxLCA4LCA3LCA0LCAxMCwgMywgOSwgMTIgfSwKCgl7IDE0LCAxMiwgOCwgMTUsIDEzLCAyLCA0LCAxMCwgNiwgMSwgMTYsIDUsIDksIDcsIDMsIDExIH0sCgoJeyA3LCAxNiwgMTUsIDEwLCAxMiwgNCwgMSwgOSwgMTMsIDMsIDE0LCA4LCAyLCA1LCAxMSwgNiB9LAoKCXsgMTEsIDMsIDksIDUsIDgsIDcsIDIsIDYsIDE2LCAxMiwgMTAsIDE1LCA0LCAxMywgMTQsIDEgfSwKCgl7IDEsIDIsIDMsIDQsIDUsIDYsIDcsIDgsIDksIDEwLCAxMSwgMTIsIDEzLCAxNCwgMTUsIDE2IH0sCgoJeyAxNSwgMTEsIDUsIDksIDEwLCAxNiwgMTQsIDcsIDIsIDEzLCAxLCAzLCAxMiwgOCwgNiwgNCB9Cgp9CgoKCgoKbG9jYWwgZnVuY3Rpb24gY29tcHJlc3MoY3R4LCBsYXN0KQoKCS0tIENvbXByZXNzaW9uIGZ1bmN0aW9uLiAibGFzdCIgZmxhZyBpbmRpY2F0ZXMgbGFzdCBibG9jay4KCglsb2NhbCB2LCBtID0ge30sIHt9IC0tIGJvdGggdiBhbmQgbSBhcmUgdTY0WzE2XQoKCWZvciBpID0gMSwgOCBkbwoKCQl2W2ldID0gY3R4LmhbaV0KCgkJdltpKzhdID0gaXZbaV0KCgllbmQKCgl2WzEzXSA9IHZbMTNdIH4gY3R4LnRbMV0gIC0tIGxvdyA2NCBiaXRzIG9mIG9mZnNldAoKCXZbMTRdID0gdlsxNF0gfiBjdHgudFsyXSAgLS0gaGlnaCA2NCBiaXRzCgoJaWYgbGFzdCB0aGVuIHZbMTVdID0gfnZbMTVdIGVuZAoKCWZvciBpID0gMCwgMTUgZG8gLS0gZ2V0IGxpdHRsZS1lbmRpYW4gd29yZHMKCgkJbVtpKzFdID0gc3RyaW5nLnVucGFjaygiPEk4IiwgY3R4LmIsIGkqOCsxKSAtLWNvcHkgYiBhcyBhIHNlcSBvZiB1NjQKCgllbmQKCgoKCWZvciBpID0gMSwgMTIgZG8gLS0gdHdlbHZlIHJvdW5kcwoKCQlHKHYsIDEsIDUsIDksIDEzLCBtW3NpZ21hW2ldWyAxXV0sIG1bc2lnbWFbaV1bIDJdXSkKCgkJRyh2LCAyLCA2LDEwLCAxNCwgbVtzaWdtYVtpXVsgM11dLCBtW3NpZ21hW2ldWyA0XV0pCgoJCUcodiwgMywgNywxMSwgMTUsIG1bc2lnbWFbaV1bIDVdXSwgbVtzaWdtYVtpXVsgNl1dKQoKCQlHKHYsIDQsIDgsMTIsIDE2LCBtW3NpZ21hW2ldWyA3XV0sIG1bc2lnbWFbaV1bIDhdXSkKCgkJRyh2LCAxLCA2LDExLCAxNiwgbVtzaWdtYVtpXVsgOV1dLCBtW3NpZ21hW2ldWzEwXV0pCgoJCUcodiwgMiwgNywxMiwgMTMsIG1bc2lnbWFbaV1bMTFdXSwgbVtzaWdtYVtpXVsxMl1dKQoKCQlHKHYsIDMsIDgsIDksIDE0LCBtW3NpZ21hW2ldWzEzXV0sIG1bc2lnbWFbaV1bMTRdXSkKCgkJRyh2LCA0LCA1LDEwLCAxNSwgbVtzaWdtYVtpXVsxNV1dLCBtW3NpZ21hW2ldWzE2XV0pCgoKCgllbmQKCgoKCWZvciBpID0gMSwgOCBkbwoKCQljdHguaFtpXSA9IGN0eC5oW2ldIH4gdltpXSB+IHZbaSArIDhdCgoJZW5kCgplbmQKCgoKbG9jYWwgdXBkYXRlICAtLSAodXBkYXRlIGlzIHVzZWQgaW4gaW5pdCgpIGJlbG93LCBidXQgZGVmaW5lZCBhZnRlcikKCgoKbG9jYWwgZnVuY3Rpb24gaW5pdChvdXRsZW4sIGtleSkKCgktLSBpbml0aWFsaXplIHRoZSBibGFrZSBmdW5jdGlvbgoKCS0tIDEgPD0gb3V0bGVuIDw9IDY0IGdpdmVzIHRoZSBkaWdlc3Qgc2l6ZSBpbiBieXRlcy4gZGVmYXVsdHMgdG8gNjQKCgktLSBrZXk6IG9wdGlvbmFsIHNlY3JldCBrZXkgKGFsc28gPD0gNjQgYnl0ZXMpLiBkZWZhdWx0cyB0byBubyBrZXkKCgktLSByZXR1cm4gdGhlIGluaXRpYWxpemVkIGNvbnRleHQKCglvdXRsZW4gPSBvdXRsZW4gb3IgNjQKCglrZXkgPSBrZXkgb3IgIiIKCglsb2NhbCBrZXlsZW4gPSAja2V5CgoJaWYgb3V0bGVuIDwgMSBvciBvdXRsZW4gPiA2NCBvciAoa2V5IGFuZCAja2V5ID4gNjQpIHRoZW4KCgkJcmV0dXJuIG5pbCwgImlsbGVnYWwgcGFyYW1ldGVycyIKCgllbmQKCglsb2NhbCBjdHggPSB7aD17fSwgdD17fSwgYz0xLCBvdXRsZW49b3V0bGVufSAtLSB0aGUgYmxha2UyIGNvbnRleHQKCgktLSBub3RlOiBjdHguYyBpcyB0aGUgaW5kZXggb2YgMXN0IGJ5dGUgZnJlZSBpbiBpbnB1dCBidWZmZXIgKGN0eC5iKQoKCS0tIGl0IGlzIG5vdCB1c2VkIGluIHRoaXMgaW1wbGVtZW50YXRpb24KCglmb3IgaSA9IDEsIDggZG8gY3R4LmhbaV0gPSBpdltpXSBlbmQgIC0tIHN0YXRlLCAicGFyYW0gYmxvY2siCgoJY3R4LmhbMV0gPSBjdHguaFsxXSB+IDB4MDEwMTAwMDAgfiAoa2V5bGVuIDw8IDgpIH4gb3V0bGVuCgoJY3R4LnRbMV0gPSAwICAgLS1pbnB1dCBjb3VudCBsb3cgd29yZAoKCWN0eC50WzJdID0gMCAgIC0taW5wdXQgY291bnQgaGlnaCB3b3JkCgoJLS0gemVybyBpbnB1dCBibG9jawoKCWN0eC5iID0gIiIKCglpZiBrZXlsZW4gPiAwIHRoZW4KCgkJdXBkYXRlKGN0eCwga2V5KQoKCQktLSBjdHguYyA9IDEyOCAtLSAgcGFkIGIgd2l0aCB6ZXJvIGJ5dGVzCgoJCWN0eC5iID0gY3R4LmIgLi4gc3RyaW5nLnJlcCgnXDAnLCAxMjggLSAjY3R4LmIpCgoJCWFzc2VydCgjY3R4LmIgPT0gMTI4KQoKCWVuZAoKCXJldHVybiBjdHgKCmVuZAoKCgp1cGRhdGUgPSBmdW5jdGlvbihjdHgsIGRhdGEpCgoJLS0gYnVmZmVyIG1ndCBjYW5ub3QgYmUgZG9uZSB0aGUgQyB3YXkuLgoKCWxvY2FsIGJsbiwgcmxuLCBpbG4KCglsb2NhbCBpID0gMSAtLSBpbmRleCBvZiAxc3QgYnl0ZSB0byBwcm9jZXNzIGluIGRhdGEKCgl3aGlsZSB0cnVlIGRvCgoJCWJsbiA9ICNjdHguYiAgLS0gY3VycmVudCBudW1iZXIgb2YgYnl0ZXMgaW4gdGhlIGlucHV0IGJ1ZmZlcgoKCQlhc3NlcnQoYmxuIDw9IDEyOCkKCgkJaWYgYmxuID09IDEyOCB0aGVuIC0tY3R4LmIgaXMgZnVsbDsgcHJvY2VzcyBpdC4KCgkJCS0tIGFkZCBjb3VudGVycwoKCQkJY3R4LnRbMV0gPSBjdHgudFsxXSArIDEyOAoKCQkJLS0gd2FybmluZzogdGhpcyBpcyBhIHNpZ25lZCA2NGJpdCBhZGRpdGlvbgoKCQkJLS0gaGVyZSBpdCBpcyBhc3N1bWVkIHRoYXQgdGhlIHRvdGFsIGlucHV0IGlzIGxlc3MKCgkJCS0tIHRoYW4gMl42MyBieXRlcyAodGhpcyBzaG91bGQgYmUgZW5vdWdoIGZvciBhCgoJCQktLSBwdXJlIEx1YSBpbXBsZW1lbnRhdGlvbiEpID0+IGN0eC50WzFdIG92ZXJmbG93IGlzIGlnbm9yZWQuCgoJCQljb21wcmVzcyhjdHgsIGZhbHNlKSAgIC0tIGZhbHNlIG1lYW5zIG5vdCBsYXN0CgoJCQljdHguYiA9ICIiIC0tIGVtcHR5IGJ1ZmZlcgoKCQllbHNlIC0tIGN0eC5iIGlzIG5vdCBmdWxsOyBhcHBlbmQgbW9yZSBieXRlcyBmcm9tIGRhdGEKCgkJCXJsbiA9ICAxMjggLSBibG4gIC0tIHJlbWFpbmluZyBzcGFjZSAoaW4gYnl0ZXMpIGluIGN0eC5iCgoJCQlpbG4gPSAjZGF0YSAtIGkgKyAxICAtLSBudW1iZXIgb2YgYnl0ZXMgeWV0IHRvIHByb2Nlc3MgaW4gZGF0YQoKCQkJaWYgaWxuIDwgcmxuIHRoZW4KCgkJCQljdHguYiA9IGN0eC5iIC4uIGRhdGE6c3ViKGksIGkgKyBpbG4gLTEpCgoJCQkJLS0gaGVyZSwgYWxsIGRhdGEgYnl0ZXMgaGF2ZSBiZWVuIHByb2Nlc3NlZCBvciBwdXQgaW4KCgkJCQktLSBidWZmZXIgYW5kIGJ1ZmZlciBpcyBub3QgZnVsbC4gd2UgYXJlIGRvbmUuCgoJCQkJYnJlYWsKCgkJCWVsc2UKCgkJCQljdHguYiA9IGN0eC5iIC4uIGRhdGE6c3ViKGksIGkgKyBybG4gLTEpCgoJCQkJaSA9IGkgKyBybG4KCgkJCWVuZAoKCQllbmQKCgllbmQKCmVuZAoKCgpsb2NhbCBmdW5jdGlvbiBmaW5hbChjdHgpCgoJLS0gZmluYWxpemUgdGhlIGhhc2ggYW5kIHJldHVybiB0aGUgZGlnZXN0IGFzIGEgc3RyaW5nCgoJLS0KCglsb2NhbCBibG4gPSAjY3R4LmIKCgktLSBhZGQgbnVtYmVyIG9mIHJlbWFpbmluZyBieXRlcyBpbiBidWZmZXIgKGlnbm9yZSBjYXJyeSBvdmVyZmxvdykKCgljdHgudFsxXSA9IGN0eC50WzFdICsgYmxuCgoJLS0gcGFkIHRoZSBidWZmZXIgd2l0aCB6ZXJvIGJ5dGVzCgoJbG9jYWwgcmxuID0gIDEyOCAtIGJsbiAgLS0gcmVtYWluaW5nIHNwYWNlIChpbiBieXRlcykgaW4gY3R4LmIKCgljdHguYiA9IGN0eC5iIC4uIHN0cmluZy5yZXAoJ1wwJywgcmxuKQoKCWNvbXByZXNzKGN0eCwgdHJ1ZSkgLS0gdHJ1ZSBtZWFucyBmaW5hbCBibG9jawoKCS0tIGV4dHJhY3QgdGhlIGRpZ2VzdCAob3V0bGVuIGJ5dGVzIGxvbmcpCgoJbG9jYWwgb3V0dGJsID0ge30KCglmb3IgaSA9IDAsIGN0eC5vdXRsZW4gLSAxIGRvCgoJCW91dHRibFtpKzFdID0gc3RyaW5nLmNoYXIoCgoJCQkoY3R4LmhbKGkgPj4gMykgKyAxXSA+PiAoOCAqIChpICYgNykpKSAmIDB4ZmYpCgoJZW5kCgoJbG9jYWwgZGlnID0gdGFibGUuY29uY2F0KG91dHRibCkKCglyZXR1cm4gb3V0dGJsCgplbmQKCgoKLS0tIENhbGN1bGF0ZXMgdGhlIEJMQUtFMmIgaGFzaCBvZiB0aGUgZ2l2ZW4gZGF0YS4KCi0tLSBAcGFyYW0gZGF0YSBzdHJpbmcgLSBUaGUgaW5wdXQgZGF0YSB0byBiZSBoYXNoZWQuCgotLS0gQHBhcmFtIG91dGxlbj8gbnVtYmVyIChvcHRpb25hbCkgLSBUaGUgZGVzaXJlZCBsZW5ndGggb2YgdGhlIGhhc2ggb3V0cHV0LiBEZWZhdWx0cyB0byA2NC4KCi0tLSBAcGFyYW0ga2V5PyBzdHJpbmcgKG9wdGlvbmFsKSAtIFRoZSBrZXkgdG8gYmUgdXNlZCBmb3IgdGhlIGhhc2ggY2FsY3VsYXRpb24uIERlZmF1bHRzIHRvIGFuIGVtcHR5IHN0cmluZy4KCi0tLSBAcmV0dXJucyB0YWJsZSAtIEEgdGFibGUgY29udGFpbmluZyB0aGUgaGFzaCBpbiBieXRlcywgc3RyaW5nLCBhbmQgaGV4IGZvcm1hdHMuCgpsb2NhbCBmdW5jdGlvbiBibGFjazJiKGRhdGEsIG91dGxlbiwga2V5KQoKICAgIGxvY2FsIGN0eCwgbXNnID0gaW5pdChvdXRsZW4sIGtleSkKCiAgICBpZiBub3QgY3R4IHRoZW4gcmV0dXJuIGN0eCwgbXNnIGVuZAoKICAgIHVwZGF0ZShjdHgsIGRhdGEpCgogICAgbG9jYWwgYnl0ZXMgPSBmaW5hbChjdHgpCgoJbG9jYWwgaGFzaCA9IHRhYmxlLmNvbmNhdChieXRlcykKCgoKICAgIGxvY2FsIHB1YmxpYyA9IHt9CgoJCgoJcHVibGljLmFzQnl0ZXMgPSBmdW5jdGlvbigpCgoJCXJldHVybiBieXRlcwoKCWVuZAoKCgoJcHVibGljLmFzU3RyaW5nID0gZnVuY3Rpb24oKQoKCQlyZXR1cm4gaGFzaAoKCWVuZAoKCgoJcHVibGljLmFzSGV4ID0gZnVuY3Rpb24oKQoKCQlyZXR1cm4gSGV4LnN0cmluZ1RvSGV4KGhhc2gpCgoJZW5kCgoKCglyZXR1cm4gcHVibGljCgplbmQKCgoKcmV0dXJuIGJsYWNrMmIKAGxvY2FsIE1EMiA9IHJlcXVpcmUoIi5jcnlwdG8uZGlnZXN0Lm1kMiIpCgpsb2NhbCBNRDQgPSByZXF1aXJlKCIuY3J5cHRvLmRpZ2VzdC5tZDQiKQoKbG9jYWwgTUQ1ID0gcmVxdWlyZSgiLmNyeXB0by5kaWdlc3QubWQ1IikKCmxvY2FsIFNIQTEgPSByZXF1aXJlKCIuY3J5cHRvLmRpZ2VzdC5zaGExIikKCmxvY2FsIFNIQTJfMjU2ID0gcmVxdWlyZSgiLmNyeXB0by5kaWdlc3Quc2hhMl8yNTYiKQoKbG9jYWwgU0hBMl81MTIgPSByZXF1aXJlKCIuY3J5cHRvLmRpZ2VzdC5zaGEyXzUxMiIpCgpsb2NhbCBTSEEzID0gcmVxdWlyZSgiLmNyeXB0by5kaWdlc3Quc2hhMyIpCgpsb2NhbCBCbGFrZTJiID0gcmVxdWlyZSgiLmNyeXB0by5kaWdlc3QuYmxha2UyYiIpCgoKCgoKbG9jYWwgZGlnZXN0ID0gewoKICAgIF92ZXJzaW9uID0gIjAuMC4xIiwKCiAgICBtZDIgPSBNRDIsCgogICAgbWQ0ID0gTUQ0LAoKICAgIG1kNSA9IE1ENSwKCiAgICBzaGExID0gU0hBMS5zaGExLAoKICAgIHNoYTJfMjU2ID0gU0hBMl8yNTYuc2hhMl8yNTYsCgogICAgc2hhMl81MTIgPSBTSEEyXzUxMiwKCiAgICBzaGEzXzI1NiA9IFNIQTMuc2hhM18yNTYsCgogICAgc2hhM181MTIgPSBTSEEzLnNoYTNfNTEyLAoKICAgIGtlY2NhazI1NiA9IFNIQTMua2VjY2FrMjU2LAoKICAgIGtlY2NhazUxMiA9IFNIQTMua2VjY2FrNTEyLAoKICAgIGJsYWtlMmIgPSBCbGFrZTJiCgp9CgoKCgoKCgoKCnJldHVybiBkaWdlc3QKAAAAAABsb2NhbCBCaXQgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuYml0Iik7Cgpsb2NhbCBRdWV1ZSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5xdWV1ZSIpOwoKCgpsb2NhbCBTVUJTVCA9IHsKCiAgMHgyOSwgMHgyRSwgMHg0MywgMHhDOSwgMHhBMiwgMHhEOCwgMHg3QywgMHgwMSwgMHgzRCwgMHgzNiwgMHg1NCwgMHhBMSwgMHhFQywgMHhGMCwgMHgwNiwgMHgxMywKCiAgMHg2MiwgMHhBNywgMHgwNSwgMHhGMywgMHhDMCwgMHhDNywgMHg3MywgMHg4QywgMHg5OCwgMHg5MywgMHgyQiwgMHhEOSwgMHhCQywgMHg0QywgMHg4MiwgMHhDQSwKCiAgMHgxRSwgMHg5QiwgMHg1NywgMHgzQywgMHhGRCwgMHhENCwgMHhFMCwgMHgxNiwgMHg2NywgMHg0MiwgMHg2RiwgMHgxOCwgMHg4QSwgMHgxNywgMHhFNSwgMHgxMiwKCiAgMHhCRSwgMHg0RSwgMHhDNCwgMHhENiwgMHhEQSwgMHg5RSwgMHhERSwgMHg0OSwgMHhBMCwgMHhGQiwgMHhGNSwgMHg4RSwgMHhCQiwgMHgyRiwgMHhFRSwgMHg3QSwKCiAgMHhBOSwgMHg2OCwgMHg3OSwgMHg5MSwgMHgxNSwgMHhCMiwgMHgwNywgMHgzRiwgMHg5NCwgMHhDMiwgMHgxMCwgMHg4OSwgMHgwQiwgMHgyMiwgMHg1RiwgMHgyMSwKCiAgMHg4MCwgMHg3RiwgMHg1RCwgMHg5QSwgMHg1QSwgMHg5MCwgMHgzMiwgMHgyNywgMHgzNSwgMHgzRSwgMHhDQywgMHhFNywgMHhCRiwgMHhGNywgMHg5NywgMHgwMywKCiAgMHhGRiwgMHgxOSwgMHgzMCwgMHhCMywgMHg0OCwgMHhBNSwgMHhCNSwgMHhEMSwgMHhENywgMHg1RSwgMHg5MiwgMHgyQSwgMHhBQywgMHg1NiwgMHhBQSwgMHhDNiwKCiAgMHg0RiwgMHhCOCwgMHgzOCwgMHhEMiwgMHg5NiwgMHhBNCwgMHg3RCwgMHhCNiwgMHg3NiwgMHhGQywgMHg2QiwgMHhFMiwgMHg5QywgMHg3NCwgMHgwNCwgMHhGMSwKCiAgMHg0NSwgMHg5RCwgMHg3MCwgMHg1OSwgMHg2NCwgMHg3MSwgMHg4NywgMHgyMCwgMHg4NiwgMHg1QiwgMHhDRiwgMHg2NSwgMHhFNiwgMHgyRCwgMHhBOCwgMHgwMiwKCiAgMHgxQiwgMHg2MCwgMHgyNSwgMHhBRCwgMHhBRSwgMHhCMCwgMHhCOSwgMHhGNiwgMHgxQywgMHg0NiwgMHg2MSwgMHg2OSwgMHgzNCwgMHg0MCwgMHg3RSwgMHgwRiwKCiAgMHg1NSwgMHg0NywgMHhBMywgMHgyMywgMHhERCwgMHg1MSwgMHhBRiwgMHgzQSwgMHhDMywgMHg1QywgMHhGOSwgMHhDRSwgMHhCQSwgMHhDNSwgMHhFQSwgMHgyNiwKCiAgMHgyQywgMHg1MywgMHgwRCwgMHg2RSwgMHg4NSwgMHgyOCwgMHg4NCwgMHgwOSwgMHhEMywgMHhERiwgMHhDRCwgMHhGNCwgMHg0MSwgMHg4MSwgMHg0RCwgMHg1MiwKCiAgMHg2QSwgMHhEQywgMHgzNywgMHhDOCwgMHg2QywgMHhDMSwgMHhBQiwgMHhGQSwgMHgyNCwgMHhFMSwgMHg3QiwgMHgwOCwgMHgwQywgMHhCRCwgMHhCMSwgMHg0QSwKCiAgMHg3OCwgMHg4OCwgMHg5NSwgMHg4QiwgMHhFMywgMHg2MywgMHhFOCwgMHg2RCwgMHhFOSwgMHhDQiwgMHhENSwgMHhGRSwgMHgzQiwgMHgwMCwgMHgxRCwgMHgzOSwKCiAgMHhGMiwgMHhFRiwgMHhCNywgMHgwRSwgMHg2NiwgMHg1OCwgMHhEMCwgMHhFNCwgMHhBNiwgMHg3NywgMHg3MiwgMHhGOCwgMHhFQiwgMHg3NSwgMHg0QiwgMHgwQSwKCiAgMHgzMSwgMHg0NCwgMHg1MCwgMHhCNCwgMHg4RiwgMHhFRCwgMHgxRiwgMHgxQSwgMHhEQiwgMHg5OSwgMHg4RCwgMHgzMywgMHg5RiwgMHgxMSwgMHg4MywgMHgxNCB9OwoKCgpsb2NhbCBYT1IgPSBCaXQuYnhvcjsKCgoKbG9jYWwgTUQyID0gZnVuY3Rpb24oc3RyZWFtKQoKICAgIGxvY2FsIHF1ZXVlID0gUXVldWUoKTsKCiAgICBsb2NhbCBwdWJsaWMgPSB7fQoKCgogICAgbG9jYWwgWCA9IHt9OwoKICAgIGZvciBpID0gMCwgNDcgZG8KCiAgICAgICAgWFtpXSA9IDB4MDA7CgogICAgZW5kCgoKCiAgICBsb2NhbCBDID0ge307CgogICAgZm9yIGkgPSAwLCAxNSBkbwoKICAgICAgICBDW2ldID0gMHgwMDsKCiAgICBlbmQKCgoKICAgIGxvY2FsIHByb2Nlc3NCbG9jayA9IGZ1bmN0aW9uKCkKCiAgICAgICAgbG9jYWwgYmxvY2sgPSB7fTsKCgoKICAgICAgICBmb3IgaSA9IDAsIDE1IGRvCgogICAgICAgICAgICBibG9ja1tpXSA9IHF1ZXVlLnBvcCgpOwoKICAgICAgICBlbmQKCgoKICAgICAgICBmb3IgaSA9IDAsIDE1IGRvCgogICAgICAgICAgICBYW2kgKyAxNl0gPSBibG9ja1tpXTsKCiAgICAgICAgICAgIFhbaSArIDMyXSA9IFhPUihYW2ldLCBibG9ja1tpXSk7IC0tbWl4CgogICAgICAgIGVuZAoKCgogICAgICAgIGxvY2FsIHQ7CgoKCiAgICAgICAgLS11cGRhdGUgYmxvY2sKCiAgICAgICAgdCA9IDA7CgogICAgICAgIGZvciBpID0gMCwgMTcgZG8KCiAgICAgICAgICAgIGZvciBqID0gMCwgNDcgZG8KCiAgICAgICAgICAgICAgICBYW2pdID0gWE9SKFhbal0sIFNVQlNUW3QgKyAxXSk7CgogICAgICAgICAgICAgICAgdCA9IFhbal07CgogICAgICAgICAgICBlbmQKCiAgICAgICAgICAgIHQgPSAodCArIGkpICUgMjU2OwoKICAgICAgICBlbmQKCgoKICAgICAgICAtLXVwZGF0ZSBjaGVja3N1bQoKICAgICAgICB0ID0gQ1sxNV07CgogICAgICAgIGZvciBpID0gMCwgMTUgZG8KCiAgICAgICAgICAgIENbaV0gPSBYT1IoQ1tpXSwgU1VCU1RbWE9SKGJsb2NrW2ldLCB0KSArIDFdKTsKCiAgICAgICAgICAgIHQgPSBDW2ldOwoKICAgICAgICBlbmQKCgoKICAgIGVuZAoKCgogICAgZm9yIGIgaW4gc3RyZWFtIGRvCgogICAgICAgIHF1ZXVlLnB1c2goYik7CgogICAgICAgIGlmKHF1ZXVlLnNpemUoKSA+PSAxNikgdGhlbiBwcm9jZXNzQmxvY2soKTsgZW5kCgogICAgZW5kCgoKCiAgICBsb2NhbCBpID0gMTYgLSBxdWV1ZS5zaXplKCk7CgoKCiAgICB3aGlsZSBxdWV1ZS5zaXplKCkgPCAxNiBkbwoKICAgICAgICBxdWV1ZS5wdXNoKGkpOwoKICAgIGVuZAoKCgogICAgcHJvY2Vzc0Jsb2NrKCk7CgoKCiAgICBxdWV1ZS5wdXNoKENbIDBdKTsgcXVldWUucHVzaChDWyAxXSk7IHF1ZXVlLnB1c2goQ1sgMl0pOyBxdWV1ZS5wdXNoKENbIDNdKTsKCiAgICBxdWV1ZS5wdXNoKENbIDRdKTsgcXVldWUucHVzaChDWyA1XSk7IHF1ZXVlLnB1c2goQ1sgNl0pOyBxdWV1ZS5wdXNoKENbIDddKTsKCiAgICBxdWV1ZS5wdXNoKENbIDhdKTsgcXVldWUucHVzaChDWyA5XSk7IHF1ZXVlLnB1c2goQ1sxMF0pOyBxdWV1ZS5wdXNoKENbMTFdKTsKCiAgICBxdWV1ZS5wdXNoKENbMTJdKTsgcXVldWUucHVzaChDWzEzXSk7IHF1ZXVlLnB1c2goQ1sxNF0pOyBxdWV1ZS5wdXNoKENbMTVdKTsKCgoKICAgIHByb2Nlc3NCbG9jaygpOwoKCgogICAgcHVibGljLmFzQnl0ZXMgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiB7WFsgMF0sIFhbIDFdLCBYWyAyXSwgWFsgM10sIFhbIDRdLCBYWyA1XSwgWFsgNl0sIFhbIDddLAoKICAgICAgICAgICAgICAgIFhbIDhdLCBYWyA5XSwgWFsxMF0sIFhbMTFdLCBYWzEyXSwgWFsxM10sIFhbMTRdLCBYWzE1XX07CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNIZXggPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBzdHJpbmcuZm9ybWF0KCIlMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4IiwKCiAgICAgICAgICAgICAgICBYWyAwXSwgWFsgMV0sIFhbIDJdLCBYWyAzXSwgWFsgNF0sIFhbIDVdLCBYWyA2XSwgWFsgN10sCgogICAgICAgICAgICAgICAgWFsgOF0sIFhbIDldLCBYWzEwXSwgWFsxMV0sIFhbMTJdLCBYWzEzXSwgWFsxNF0sIFhbMTVdKTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc1N0cmluZyA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIHN0cmluZy5wYWNrKHN0cmluZy5yZXAoJ0InLCAxNiksCgogICAgICAgICAgICAgICAgWFsgMF0sIFhbIDFdLCBYWyAyXSwgWFsgM10sIFhbIDRdLCBYWyA1XSwgWFsgNl0sIFhbIDddLAoKICAgICAgICAgICAgICAgIFhbIDhdLCBYWyA5XSwgWFsxMF0sIFhbMTFdLCBYWzEyXSwgWFsxM10sIFhbMTRdLCBYWzE1XSk7CgogICAgZW5kCgoKCiAgICByZXR1cm4gcHVibGljOwoKCgplbmQKCgoKcmV0dXJuIE1EMjsAAAAAAGxvY2FsIEJpdCA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5iaXQiKTsKCmxvY2FsIFF1ZXVlID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLnF1ZXVlIik7CgoKCmxvY2FsIEFORCA9IEJpdC5iYW5kOwoKbG9jYWwgT1IgID0gQml0LmJvcjsKCmxvY2FsIE5PVCA9IEJpdC5ibm90OwoKbG9jYWwgWE9SID0gQml0LmJ4b3I7Cgpsb2NhbCBMUk9UID0gQml0Lmxyb3RhdGU7Cgpsb2NhbCBMU0hJRlQgPSBCaXQubHNoaWZ0OwoKbG9jYWwgUlNISUZUID0gQml0LnJzaGlmdDsKCgoKLS1NRDQgaXMgbGl0dGxlLWVuZGlhbgoKbG9jYWwgYnl0ZXMyd29yZCA9IGZ1bmN0aW9uKGIwLCBiMSwgYjIsIGIzKQoKICAgIGxvY2FsIGkgPSBiMzsgaSA9IExTSElGVChpLCA4KTsKCiAgICBpID0gT1IoaSwgYjIpOyBpID0gTFNISUZUKGksIDgpOwoKICAgIGkgPSBPUihpLCBiMSk7IGkgPSBMU0hJRlQoaSwgOCk7CgogICAgaSA9IE9SKGksIGIwKTsKCiAgICByZXR1cm4gaTsKCmVuZAoKCgpsb2NhbCB3b3JkMmJ5dGVzID0gZnVuY3Rpb24od29yZCkKCiAgICBsb2NhbCBiMCwgYjEsIGIyLCBiMzsKCiAgICBiMCA9IEFORCh3b3JkLCAweEZGKTsgd29yZCA9IFJTSElGVCh3b3JkLCA4KTsKCiAgICBiMSA9IEFORCh3b3JkLCAweEZGKTsgd29yZCA9IFJTSElGVCh3b3JkLCA4KTsKCiAgICBiMiA9IEFORCh3b3JkLCAweEZGKTsgd29yZCA9IFJTSElGVCh3b3JkLCA4KTsKCiAgICBiMyA9IEFORCh3b3JkLCAweEZGKTsKCiAgICByZXR1cm4gYjAsIGIxLCBiMiwgYjM7CgplbmQKCgoKbG9jYWwgZHdvcmQyYnl0ZXMgPSBmdW5jdGlvbihpKQoKICAgIGxvY2FsIGI0LCBiNSwgYjYsIGI3ID0gd29yZDJieXRlcyhtYXRoLmZsb29yKGkgLyAweDEwMDAwMDAwMCkpOwoKICAgIGxvY2FsIGIwLCBiMSwgYjIsIGIzID0gd29yZDJieXRlcyhpKTsKCiAgICByZXR1cm4gYjAsIGIxLCBiMiwgYjMsIGI0LCBiNSwgYjYsIGI3OwoKZW5kCgoKCmxvY2FsIEYgPSBmdW5jdGlvbih4LCB5LCB6KSByZXR1cm4gT1IoQU5EKHgsIHkpLCBBTkQoTk9UKHgpLCB6KSk7IGVuZAoKbG9jYWwgRyA9IGZ1bmN0aW9uKHgsIHksIHopIHJldHVybiBPUihBTkQoeCwgeSksIE9SKEFORCh4LCB6KSwgQU5EKHksIHopKSk7IGVuZAoKbG9jYWwgSCA9IGZ1bmN0aW9uKHgsIHksIHopIHJldHVybiBYT1IoeCwgWE9SKHksIHopKTsgZW5kCgoKCgoKbG9jYWwgTUQ0ID0gZnVuY3Rpb24oc3RyZWFtKQoKCgogICAgbG9jYWwgcXVldWUgPSBRdWV1ZSgpOwoKCgogICAgbG9jYWwgQSA9IDB4Njc0NTIzMDE7CgogICAgbG9jYWwgQiA9IDB4ZWZjZGFiODk7CgogICAgbG9jYWwgQyA9IDB4OThiYWRjZmU7CgogICAgbG9jYWwgRCA9IDB4MTAzMjU0NzY7CgogICAgbG9jYWwgcHVibGljID0ge307CgoKCiAgICBsb2NhbCBwcm9jZXNzQmxvY2sgPSBmdW5jdGlvbigpCgogICAgICAgIGxvY2FsIGEgPSBBOwoKICAgICAgICBsb2NhbCBiID0gQjsKCiAgICAgICAgbG9jYWwgYyA9IEM7CgogICAgICAgIGxvY2FsIGQgPSBEOwoKCgogICAgICAgIGxvY2FsIFggPSB7fTsKCgoKICAgICAgICBmb3IgaSA9IDAsIDE1IGRvCgogICAgICAgICAgICBYW2ldID0gYnl0ZXMyd29yZChxdWV1ZS5wb3AoKSwgcXVldWUucG9wKCksIHF1ZXVlLnBvcCgpLCBxdWV1ZS5wb3AoKSk7CgogICAgICAgIGVuZAoKCgogICAgICAgIGEgPSBMUk9UKGEgKyBGKGIsIGMsIGQpICsgWFswXSwgMyk7CgogICAgICAgIGQgPSBMUk9UKGQgKyBGKGEsIGIsIGMpICsgWFsxXSwgNyk7CgogICAgICAgIGMgPSBMUk9UKGMgKyBGKGQsIGEsIGIpICsgWFsyXSwgMTEpOwoKICAgICAgICBiID0gTFJPVChiICsgRihjLCBkLCBhKSArIFhbM10sIDE5KTsKCgoKICAgICAgICBhID0gTFJPVChhICsgRihiLCBjLCBkKSArIFhbNF0sIDMpOwoKICAgICAgICBkID0gTFJPVChkICsgRihhLCBiLCBjKSArIFhbNV0sIDcpOwoKICAgICAgICBjID0gTFJPVChjICsgRihkLCBhLCBiKSArIFhbNl0sIDExKTsKCiAgICAgICAgYiA9IExST1QoYiArIEYoYywgZCwgYSkgKyBYWzddLCAxOSk7CgoKCiAgICAgICAgYSA9IExST1QoYSArIEYoYiwgYywgZCkgKyBYWzhdLCAzKTsKCiAgICAgICAgZCA9IExST1QoZCArIEYoYSwgYiwgYykgKyBYWzldLCA3KTsKCiAgICAgICAgYyA9IExST1QoYyArIEYoZCwgYSwgYikgKyBYWzEwXSwgMTEpOwoKICAgICAgICBiID0gTFJPVChiICsgRihjLCBkLCBhKSArIFhbMTFdLCAxOSk7CgoKCiAgICAgICAgYSA9IExST1QoYSArIEYoYiwgYywgZCkgKyBYWzEyXSwgMyk7CgogICAgICAgIGQgPSBMUk9UKGQgKyBGKGEsIGIsIGMpICsgWFsxM10sIDcpOwoKICAgICAgICBjID0gTFJPVChjICsgRihkLCBhLCBiKSArIFhbMTRdLCAxMSk7CgogICAgICAgIGIgPSBMUk9UKGIgKyBGKGMsIGQsIGEpICsgWFsxNV0sIDE5KTsKCgoKCgogICAgICAgIGEgPSBMUk9UKGEgKyBHKGIsIGMsIGQpICsgWFswXSArIDB4NUE4Mjc5OTksIDMpOwoKICAgICAgICBkID0gTFJPVChkICsgRyhhLCBiLCBjKSArIFhbNF0gKyAweDVBODI3OTk5LCA1KTsKCiAgICAgICAgYyA9IExST1QoYyArIEcoZCwgYSwgYikgKyBYWzhdICsgMHg1QTgyNzk5OSwgOSk7CgogICAgICAgIGIgPSBMUk9UKGIgKyBHKGMsIGQsIGEpICsgWFsxMl0gKyAweDVBODI3OTk5LCAxMyk7CgoKCiAgICAgICAgYSA9IExST1QoYSArIEcoYiwgYywgZCkgKyBYWzFdICsgMHg1QTgyNzk5OSwgMyk7CgogICAgICAgIGQgPSBMUk9UKGQgKyBHKGEsIGIsIGMpICsgWFs1XSArIDB4NUE4Mjc5OTksIDUpOwoKICAgICAgICBjID0gTFJPVChjICsgRyhkLCBhLCBiKSArIFhbOV0gKyAweDVBODI3OTk5LCA5KTsKCiAgICAgICAgYiA9IExST1QoYiArIEcoYywgZCwgYSkgKyBYWzEzXSArIDB4NUE4Mjc5OTksIDEzKTsKCgoKICAgICAgICBhID0gTFJPVChhICsgRyhiLCBjLCBkKSArIFhbMl0gKyAweDVBODI3OTk5LCAzKTsKCiAgICAgICAgZCA9IExST1QoZCArIEcoYSwgYiwgYykgKyBYWzZdICsgMHg1QTgyNzk5OSwgNSk7CgogICAgICAgIGMgPSBMUk9UKGMgKyBHKGQsIGEsIGIpICsgWFsxMF0gKyAweDVBODI3OTk5LCA5KTsKCiAgICAgICAgYiA9IExST1QoYiArIEcoYywgZCwgYSkgKyBYWzE0XSArIDB4NUE4Mjc5OTksIDEzKTsKCgoKICAgICAgICBhID0gTFJPVChhICsgRyhiLCBjLCBkKSArIFhbM10gKyAweDVBODI3OTk5LCAzKTsKCiAgICAgICAgZCA9IExST1QoZCArIEcoYSwgYiwgYykgKyBYWzddICsgMHg1QTgyNzk5OSwgNSk7CgogICAgICAgIGMgPSBMUk9UKGMgKyBHKGQsIGEsIGIpICsgWFsxMV0gKyAweDVBODI3OTk5LCA5KTsKCiAgICAgICAgYiA9IExST1QoYiArIEcoYywgZCwgYSkgKyBYWzE1XSArIDB4NUE4Mjc5OTksIDEzKTsKCgoKCgogICAgICAgIGEgPSBMUk9UKGEgKyBIKGIsIGMsIGQpICsgWFswXSArIDB4NkVEOUVCQTEsIDMpOwoKICAgICAgICBkID0gTFJPVChkICsgSChhLCBiLCBjKSArIFhbOF0gKyAweDZFRDlFQkExLCA5KTsKCiAgICAgICAgYyA9IExST1QoYyArIEgoZCwgYSwgYikgKyBYWzRdICsgMHg2RUQ5RUJBMSwgMTEpOwoKICAgICAgICBiID0gTFJPVChiICsgSChjLCBkLCBhKSArIFhbMTJdICsgMHg2RUQ5RUJBMSwgMTUpOwoKCgogICAgICAgIGEgPSBMUk9UKGEgKyBIKGIsIGMsIGQpICsgWFsyXSArIDB4NkVEOUVCQTEsIDMpOwoKICAgICAgICBkID0gTFJPVChkICsgSChhLCBiLCBjKSArIFhbMTBdICsgMHg2RUQ5RUJBMSwgOSk7CgogICAgICAgIGMgPSBMUk9UKGMgKyBIKGQsIGEsIGIpICsgWFs2XSArIDB4NkVEOUVCQTEsIDExKTsKCiAgICAgICAgYiA9IExST1QoYiArIEgoYywgZCwgYSkgKyBYWzE0XSArIDB4NkVEOUVCQTEsIDE1KTsKCgoKICAgICAgICBhID0gTFJPVChhICsgSChiLCBjLCBkKSArIFhbMV0gKyAweDZFRDlFQkExLCAzKTsKCiAgICAgICAgZCA9IExST1QoZCArIEgoYSwgYiwgYykgKyBYWzldICsgMHg2RUQ5RUJBMSwgOSk7CgogICAgICAgIGMgPSBMUk9UKGMgKyBIKGQsIGEsIGIpICsgWFs1XSArIDB4NkVEOUVCQTEsIDExKTsKCiAgICAgICAgYiA9IExST1QoYiArIEgoYywgZCwgYSkgKyBYWzEzXSArIDB4NkVEOUVCQTEsIDE1KTsKCgoKICAgICAgICBhID0gTFJPVChhICsgSChiLCBjLCBkKSArIFhbM10gKyAweDZFRDlFQkExLCAzKTsKCiAgICAgICAgZCA9IExST1QoZCArIEgoYSwgYiwgYykgKyBYWzExXSArIDB4NkVEOUVCQTEsIDkpOwoKICAgICAgICBjID0gTFJPVChjICsgSChkLCBhLCBiKSArIFhbN10gKyAweDZFRDlFQkExLCAxMSk7CgogICAgICAgIGIgPSBMUk9UKGIgKyBIKGMsIGQsIGEpICsgWFsxNV0gKyAweDZFRDlFQkExLCAxNSk7CgoKCgoKICAgICAgICBBID0gQU5EKEEgKyBhLCAweEZGRkZGRkZGKTsKCiAgICAgICAgQiA9IEFORChCICsgYiwgMHhGRkZGRkZGRik7CgogICAgICAgIEMgPSBBTkQoQyArIGMsIDB4RkZGRkZGRkYpOwoKICAgICAgICBEID0gQU5EKEQgKyBkLCAweEZGRkZGRkZGKTsKCiAgICBlbmQKCiAgICAKCgoKICAgIGZvciBzIGluIHN0cmVhbSBkbwoKICAgICAgICBxdWV1ZS5wdXNoKHMpOwoKICAgICAgICBpZiAocXVldWUuc2l6ZSgpID49IDY0KSB0aGVuIHByb2Nlc3NCbG9jaygpOyBlbmQKCiAgICBlbmQKCiAgICAKCiAgICBsb2NhbCBiaXRzID0gcXVldWUuZ2V0SGVhZCgpICogODsKCgoKICAgIHF1ZXVlLnB1c2goMHg4MCk7CgogICAgd2hpbGUgKChxdWV1ZS5zaXplKCkgKyA3KSAlIDY0KSA8IDYzIGRvCgogICAgICAgIHF1ZXVlLnB1c2goMHgwMCk7CgogICAgZW5kCgoKCiAgICBsb2NhbCBiMCwgYjEsIGIyLCBiMywgYjQsIGI1LCBiNiwgYjcgPSBkd29yZDJieXRlcyhiaXRzKTsKCgoKICAgIHF1ZXVlLnB1c2goYjApOwoKICAgIHF1ZXVlLnB1c2goYjEpOwoKICAgIHF1ZXVlLnB1c2goYjIpOwoKICAgIHF1ZXVlLnB1c2goYjMpOwoKICAgIHF1ZXVlLnB1c2goYjQpOwoKICAgIHF1ZXVlLnB1c2goYjUpOwoKICAgIHF1ZXVlLnB1c2goYjYpOwoKICAgIHF1ZXVlLnB1c2goYjcpOwoKCgogICAgd2hpbGUgcXVldWUuc2l6ZSgpID4gMCBkbwoKICAgICAgICBwcm9jZXNzQmxvY2soKTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc0J5dGVzID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCAgYjAsIGIxLCBiMiwgYjMgPSB3b3JkMmJ5dGVzKEEpOwoKICAgICAgICBsb2NhbCAgYjQsIGI1LCBiNiwgYjcgPSB3b3JkMmJ5dGVzKEIpOwoKICAgICAgICBsb2NhbCAgYjgsIGI5LCBiMTAsIGIxMSA9IHdvcmQyYnl0ZXMoQyk7CgogICAgICAgIGxvY2FsIGIxMiwgYjEzLCBiMTQsIGIxNSA9IHdvcmQyYnl0ZXMoRCk7CgoKCiAgICAgICAgcmV0dXJuIHtiMCwgYjEsIGIyLCBiMywgYjQsIGI1LCBiNiwgYjcsIGI4LCBiOSwgYjEwLCBiMTEsIGIxMiwgYjEzLCBiMTQsIGIxNX07CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNIZXggPSBmdW5jdGlvbigpCgogICAgICAgIGxvY2FsICBiMCwgYjEsIGIyLCBiMyA9IHdvcmQyYnl0ZXMoQSk7CgogICAgICAgIGxvY2FsICBiNCwgYjUsIGI2LCBiNyA9IHdvcmQyYnl0ZXMoQik7CgogICAgICAgIGxvY2FsICBiOCwgYjksIGIxMCwgYjExID0gd29yZDJieXRlcyhDKTsKCiAgICAgICAgbG9jYWwgYjEyLCBiMTMsIGIxNCwgYjE1ID0gd29yZDJieXRlcyhEKTsKCgoKICAgICAgICByZXR1cm4gc3RyaW5nLmZvcm1hdCgiJTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCIsCgogICAgICAgICAgICAgICAgYjAsIGIxLCBiMiwgYjMsIGI0LCBiNSwgYjYsIGI3LCBiOCwgYjksIGIxMCwgYjExLCBiMTIsIGIxMywgYjE0LCBiMTUpOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzU3RyaW5nID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCAgYjAsIGIxLCBiMiwgYjMgPSB3b3JkMmJ5dGVzKEEpOwoKICAgICAgICBsb2NhbCAgYjQsIGI1LCBiNiwgYjcgPSB3b3JkMmJ5dGVzKEIpOwoKICAgICAgICBsb2NhbCAgYjgsIGI5LCBiMTAsIGIxMSA9IHdvcmQyYnl0ZXMoQyk7CgogICAgICAgIGxvY2FsIGIxMiwgYjEzLCBiMTQsIGIxNSA9IHdvcmQyYnl0ZXMoRCk7CgoKCiAgICAgICAgcmV0dXJuIHN0cmluZy5wYWNrKHN0cmluZy5yZXAoJ0InLCAxNiksCgogICAgICAgICAgICAgICAgYjAsIGIxLCBiMiwgYjMsIGI0LCBiNSwgYjYsIGI3LCBiOCwgYjksIGIxMCwgYjExLCBiMTIsIGIxMywgYjE0LCBiMTUpOwoKICAgIGVuZAoKCgogICAgcmV0dXJuIHB1YmxpYzsKCgoKZW5kCgoKCnJldHVybiBNRDQ7AELwuhELld0BbG9jYWwgQml0ID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLmJpdCIpOwoKbG9jYWwgUXVldWUgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwucXVldWUiKTsKCgoKbG9jYWwgU0hJRlQgPSB7CgogICAgNywgMTIsIDE3LCAyMiwgIDcsIDEyLCAxNywgMjIsICA3LCAxMiwgMTcsIDIyLCAgNywgMTIsIDE3LCAyMiwKCiAgICA1LCAgOSwgMTQsIDIwLCAgNSwgIDksIDE0LCAyMCwgIDUsICA5LCAxNCwgMjAsICA1LCAgOSwgMTQsIDIwLAoKICAgIDQsIDExLCAxNiwgMjMsICA0LCAxMSwgMTYsIDIzLCAgNCwgMTEsIDE2LCAyMywgIDQsIDExLCAxNiwgMjMsCgogICAgNiwgMTAsIDE1LCAyMSwgIDYsIDEwLCAxNSwgMjEsICA2LCAxMCwgMTUsIDIxLCAgNiwgMTAsIDE1LCAyMX07CgoKCmxvY2FsIENPTlNUQU5UUyA9IHsKCiAgICAweGQ3NmFhNDc4LCAweGU4YzdiNzU2LCAweDI0MjA3MGRiLCAweGMxYmRjZWVlLAoKICAgIDB4ZjU3YzBmYWYsIDB4NDc4N2M2MmEsIDB4YTgzMDQ2MTMsIDB4ZmQ0Njk1MDEsCgogICAgMHg2OTgwOThkOCwgMHg4YjQ0ZjdhZiwgMHhmZmZmNWJiMSwgMHg4OTVjZDdiZSwKCiAgICAweDZiOTAxMTIyLCAweGZkOTg3MTkzLCAweGE2Nzk0MzhlLCAweDQ5YjQwODIxLAoKICAgIDB4ZjYxZTI1NjIsIDB4YzA0MGIzNDAsIDB4MjY1ZTVhNTEsIDB4ZTliNmM3YWEsCgogICAgMHhkNjJmMTA1ZCwgMHgwMjQ0MTQ1MywgMHhkOGExZTY4MSwgMHhlN2QzZmJjOCwKCiAgICAweDIxZTFjZGU2LCAweGMzMzcwN2Q2LCAweGY0ZDUwZDg3LCAweDQ1NWExNGVkLAoKICAgIDB4YTllM2U5MDUsIDB4ZmNlZmEzZjgsIDB4Njc2ZjAyZDksIDB4OGQyYTRjOGEsCgogICAgMHhmZmZhMzk0MiwgMHg4NzcxZjY4MSwgMHg2ZDlkNjEyMiwgMHhmZGU1MzgwYywKCiAgICAweGE0YmVlYTQ0LCAweDRiZGVjZmE5LCAweGY2YmI0YjYwLCAweGJlYmZiYzcwLAoKICAgIDB4Mjg5YjdlYzYsIDB4ZWFhMTI3ZmEsIDB4ZDRlZjMwODUsIDB4MDQ4ODFkMDUsCgogICAgMHhkOWQ0ZDAzOSwgMHhlNmRiOTllNSwgMHgxZmEyN2NmOCwgMHhjNGFjNTY2NSwKCiAgICAweGY0MjkyMjQ0LCAweDQzMmFmZjk3LCAweGFiOTQyM2E3LCAweGZjOTNhMDM5LAoKICAgIDB4NjU1YjU5YzMsIDB4OGYwY2NjOTIsIDB4ZmZlZmY0N2QsIDB4ODU4NDVkZDEsCgogICAgMHg2ZmE4N2U0ZiwgMHhmZTJjZTZlMCwgMHhhMzAxNDMxNCwgMHg0ZTA4MTFhMSwKCiAgICAweGY3NTM3ZTgyLCAweGJkM2FmMjM1LCAweDJhZDdkMmJiLCAweGViODZkMzkxfTsKCgoKbG9jYWwgQU5EID0gQml0LmJhbmQ7Cgpsb2NhbCBPUiAgPSBCaXQuYm9yOwoKbG9jYWwgTk9UID0gQml0LmJub3Q7Cgpsb2NhbCBYT1IgPSBCaXQuYnhvcjsKCmxvY2FsIExST1QgPSBCaXQubHJvdGF0ZTsKCmxvY2FsIExTSElGVCA9IEJpdC5sc2hpZnQ7Cgpsb2NhbCBSU0hJRlQgPSBCaXQucnNoaWZ0OwoKCgotLU1ENSBpcyBsaXR0bGUtZW5kaWFuCgpsb2NhbCBieXRlczJ3b3JkID0gZnVuY3Rpb24oYjAsIGIxLCBiMiwgYjMpCgogICAgbG9jYWwgaSA9IGIzOyBpID0gTFNISUZUKGksIDgpOwoKICAgIGkgPSBPUihpLCBiMik7IGkgPSBMU0hJRlQoaSwgOCk7CgogICAgaSA9IE9SKGksIGIxKTsgaSA9IExTSElGVChpLCA4KTsKCiAgICBpID0gT1IoaSwgYjApOwoKICAgIHJldHVybiBpOwoKZW5kCgoKCmxvY2FsIHdvcmQyYnl0ZXMgPSBmdW5jdGlvbih3b3JkKQoKICAgIGxvY2FsIGIwLCBiMSwgYjIsIGIzOwoKICAgIGIwID0gQU5EKHdvcmQsIDB4RkYpOyB3b3JkID0gUlNISUZUKHdvcmQsIDgpOwoKICAgIGIxID0gQU5EKHdvcmQsIDB4RkYpOyB3b3JkID0gUlNISUZUKHdvcmQsIDgpOwoKICAgIGIyID0gQU5EKHdvcmQsIDB4RkYpOyB3b3JkID0gUlNISUZUKHdvcmQsIDgpOwoKICAgIGIzID0gQU5EKHdvcmQsIDB4RkYpOwoKICAgIHJldHVybiBiMCwgYjEsIGIyLCBiMzsKCmVuZAoKCgpsb2NhbCBkd29yZDJieXRlcyA9IGZ1bmN0aW9uKGkpCgogICAgbG9jYWwgYjQsIGI1LCBiNiwgYjcgPSB3b3JkMmJ5dGVzKG1hdGguZmxvb3IoaSAvIDB4MTAwMDAwMDAwKSk7CgogICAgbG9jYWwgYjAsIGIxLCBiMiwgYjMgPSB3b3JkMmJ5dGVzKGkpOwoKICAgIHJldHVybiBiMCwgYjEsIGIyLCBiMywgYjQsIGI1LCBiNiwgYjc7CgplbmQKCgoKbG9jYWwgRiA9IGZ1bmN0aW9uKHgsIHksIHopIHJldHVybiBPUihBTkQoeCwgeSksIEFORChOT1QoeCksIHopKTsgZW5kCgpsb2NhbCBHID0gZnVuY3Rpb24oeCwgeSwgeikgcmV0dXJuIE9SKEFORCh4LCB6KSwgQU5EKHksIE5PVCh6KSkpOyBlbmQKCmxvY2FsIEggPSBmdW5jdGlvbih4LCB5LCB6KSByZXR1cm4gWE9SKHgsIFhPUih5LCB6KSk7IGVuZAoKbG9jYWwgSSA9IGZ1bmN0aW9uKHgsIHksIHopIHJldHVybiBYT1IoeSwgT1IoeCwgTk9UKHopKSk7IGVuZAoKCgpsb2NhbCBNRDUgPSBmdW5jdGlvbihzdHJlYW0pCgoKCiAgICBsb2NhbCBxdWV1ZSA9IFF1ZXVlKCk7CgoKCiAgICBsb2NhbCBBID0gMHg2NzQ1MjMwMTsKCiAgICBsb2NhbCBCID0gMHhlZmNkYWI4OTsKCiAgICBsb2NhbCBDID0gMHg5OGJhZGNmZTsKCiAgICBsb2NhbCBEID0gMHgxMDMyNTQ3NjsKCiAgICBsb2NhbCBwdWJsaWMgPSB7fTsKCgoKICAgIGxvY2FsIHByb2Nlc3NCbG9jayA9IGZ1bmN0aW9uKCkKCiAgICAgICAgbG9jYWwgYSA9IEE7CgogICAgICAgIGxvY2FsIGIgPSBCOwoKICAgICAgICBsb2NhbCBjID0gQzsKCiAgICAgICAgbG9jYWwgZCA9IEQ7CgoKCiAgICAgICAgbG9jYWwgWCA9IHt9OwoKCgogICAgICAgIGZvciBpID0gMSwgMTYgZG8KCiAgICAgICAgICAgIFhbaV0gPSBieXRlczJ3b3JkKHF1ZXVlLnBvcCgpLCBxdWV1ZS5wb3AoKSwgcXVldWUucG9wKCksIHF1ZXVlLnBvcCgpKTsKCiAgICAgICAgZW5kCgoKCiAgICAgICAgZm9yIGkgPSAwLCA2MyBkbwoKICAgICAgICAgICAgbG9jYWwgZiwgZywgdGVtcDsKCgoKICAgICAgICAgICAgaWYgKDAgPD0gaSkgYW5kIChpIDw9IDE1KSB0aGVuCgogICAgICAgICAgICAgICAgZiA9IEYoYiwgYywgZCk7CgogICAgICAgICAgICAgICAgZyA9IGk7CgogICAgICAgICAgICBlbHNlaWYgKDE2IDw9IGkpIGFuZCAoaSA8PSAzMSkgdGhlbgoKICAgICAgICAgICAgICAgIGYgPSBHKGIsIGMsIGQpOwoKICAgICAgICAgICAgICAgIGcgPSAoNSAqIGkgKyAxKSAlIDE2OwoKICAgICAgICAgICAgZWxzZWlmICgzMiA8PSBpKSBhbmQgKGkgPD0gNDcpIHRoZW4KCiAgICAgICAgICAgICAgICBmID0gSChiLCBjLCBkKTsKCiAgICAgICAgICAgICAgICBnID0gKDMgKiBpICsgNSkgJSAxNjsKCiAgICAgICAgICAgIGVsc2VpZiAoNDggPD0gaSkgYW5kIChpIDw9IDYzKSB0aGVuCgogICAgICAgICAgICAgICAgZiA9IEkoYiwgYywgZCk7CgogICAgICAgICAgICAgICAgZyA9ICg3ICogaSkgJSAxNjsKCiAgICAgICAgICAgIGVuZAoKICAgICAgICAgICAgdGVtcCA9IGQ7CgogICAgICAgICAgICBkID0gYzsKCiAgICAgICAgICAgIGMgPSBiOwoKICAgICAgICAgICAgYiA9IGIgKyBMUk9UKChhICsgZiArIENPTlNUQU5UU1tpICsgMV0gKyBYW2cgKyAxXSksIFNISUZUW2kgKyAxXSk7CgogICAgICAgICAgICBhID0gdGVtcDsKCiAgICAgICAgZW5kCgoKCiAgICAgICAgQSA9IEFORChBICsgYSwgMHhGRkZGRkZGRik7CgogICAgICAgIEIgPSBBTkQoQiArIGIsIDB4RkZGRkZGRkYpOwoKICAgICAgICBDID0gQU5EKEMgKyBjLCAweEZGRkZGRkZGKTsKCiAgICAgICAgRCA9IEFORChEICsgZCwgMHhGRkZGRkZGRik7CgogICAgZW5kCgoKCiAgICBmb3IgcyBpbiBzdHJlYW0gZG8KCiAgICAgICAgcXVldWUucHVzaChzKTsKCiAgICAgICAgaWYgKHF1ZXVlLnNpemUoKSA+PSA2NCkgdGhlbiBwcm9jZXNzQmxvY2soKTsgZW5kCgogICAgZW5kCgoKCiAgICBsb2NhbCBiaXRzID0gcXVldWUuZ2V0SGVhZCgpICogODsKCgoKICAgIHF1ZXVlLnB1c2goMHg4MCk7CgogICAgd2hpbGUgKChxdWV1ZS5zaXplKCkgKyA3KSAlIDY0KSA8IDYzIGRvCgogICAgICAgIHF1ZXVlLnB1c2goMHgwMCk7CgogICAgZW5kCgoKCiAgICBsb2NhbCBiMCwgYjEsIGIyLCBiMywgYjQsIGI1LCBiNiwgYjcgPSBkd29yZDJieXRlcyhiaXRzKTsKCgoKICAgIHF1ZXVlLnB1c2goYjApOwoKICAgIHF1ZXVlLnB1c2goYjEpOwoKICAgIHF1ZXVlLnB1c2goYjIpOwoKICAgIHF1ZXVlLnB1c2goYjMpOwoKICAgIHF1ZXVlLnB1c2goYjQpOwoKICAgIHF1ZXVlLnB1c2goYjUpOwoKICAgIHF1ZXVlLnB1c2goYjYpOwoKICAgIHF1ZXVlLnB1c2goYjcpOwoKCgogICAgd2hpbGUgcXVldWUuc2l6ZSgpID4gMCBkbwoKICAgICAgICBwcm9jZXNzQmxvY2soKTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc0J5dGVzID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCAgYjAsIGIxLCBiMiwgYjMgPSB3b3JkMmJ5dGVzKEEpOwoKICAgICAgICBsb2NhbCAgYjQsIGI1LCBiNiwgYjcgPSB3b3JkMmJ5dGVzKEIpOwoKICAgICAgICBsb2NhbCAgYjgsIGI5LCBiMTAsIGIxMSA9IHdvcmQyYnl0ZXMoQyk7CgogICAgICAgIGxvY2FsIGIxMiwgYjEzLCBiMTQsIGIxNSA9IHdvcmQyYnl0ZXMoRCk7CgoKCiAgICAgICAgcmV0dXJuIHtiMCwgYjEsIGIyLCBiMywgYjQsIGI1LCBiNiwgYjcsIGI4LCBiOSwgYjEwLCBiMTEsIGIxMiwgYjEzLCBiMTQsIGIxNX07CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNIZXggPSBmdW5jdGlvbigpCgogICAgICAgIGxvY2FsICBiMCwgYjEsIGIyLCBiMyA9IHdvcmQyYnl0ZXMoQSk7CgogICAgICAgIGxvY2FsICBiNCwgYjUsIGI2LCBiNyA9IHdvcmQyYnl0ZXMoQik7CgogICAgICAgIGxvY2FsICBiOCwgYjksIGIxMCwgYjExID0gd29yZDJieXRlcyhDKTsKCiAgICAgICAgbG9jYWwgYjEyLCBiMTMsIGIxNCwgYjE1ID0gd29yZDJieXRlcyhEKTsKCgoKICAgICAgICByZXR1cm4gc3RyaW5nLmZvcm1hdCgiJTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCIsCgogICAgICAgICAgICAgICAgYjAsIGIxLCBiMiwgYjMsIGI0LCBiNSwgYjYsIGI3LCBiOCwgYjksIGIxMCwgYjExLCBiMTIsIGIxMywgYjE0LCBiMTUpOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzU3RyaW5nID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCBiMCwgYjEsIGIyLCBiMyA9IHdvcmQyYnl0ZXMoQSk7CgogICAgICAgIGxvY2FsIGI0LCBiNSwgYjYsIGI3ID0gd29yZDJieXRlcyhCKTsKCiAgICAgICAgbG9jYWwgYjgsIGI5LCBiMTAsIGIxMSA9IHdvcmQyYnl0ZXMoQyk7CgogICAgICAgIGxvY2FsIGIxMiwgYjEzLCBiMTQsIGIxNSA9IHdvcmQyYnl0ZXMoRCk7CgoKCiAgICAgICAgcmV0dXJuIHN0cmluZy5wYWNrKHN0cmluZy5yZXAoJ0InLCAxNiksCgogICAgICAgICAgICBiMCwgYjEsIGIyLCBiMywgYjQsIGI1LCBiNiwgYjcsIGI4LAoKICAgICAgICAgICAgYjksIGIxMCwgYjExLCBiMTIsIGIxMywgYjE0LCBiMTUKCiAgICAgICAgKQoKICAgIGVuZAoKCgogICAgcmV0dXJuIHB1YmxpYzsKCgoKZW5kCgoKCnJldHVybiBNRDU7AABsb2NhbCBCaXQgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuYml0Iik7Cgpsb2NhbCBRdWV1ZSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5xdWV1ZSIpOwoKCgpsb2NhbCBBTkQgPSBCaXQuYmFuZDsKCmxvY2FsIE9SICA9IEJpdC5ib3I7Cgpsb2NhbCBYT1IgPSBCaXQuYnhvcjsKCmxvY2FsIExST1QgPSBCaXQubHJvdGF0ZTsKCmxvY2FsIExTSElGVCA9IEJpdC5sc2hpZnQ7Cgpsb2NhbCBSU0hJRlQgPSBCaXQucnNoaWZ0OwoKCgotLVNIQTEgaXMgYmlnLWVuZGlhbgoKbG9jYWwgYnl0ZXMyd29yZCA9IGZ1bmN0aW9uKGIwLCBiMSwgYjIsIGIzKQoKICAgIGxvY2FsIGkgPSBiMDsgaSA9IExTSElGVChpLCA4KTsKCiAgICBpID0gT1IoaSwgYjEpOyBpID0gTFNISUZUKGksIDgpOwoKICAgIGkgPSBPUihpLCBiMik7IGkgPSBMU0hJRlQoaSwgOCk7CgogICAgaSA9IE9SKGksIGIzKTsKCiAgICByZXR1cm4gaTsKCmVuZAoKCgpsb2NhbCB3b3JkMmJ5dGVzID0gZnVuY3Rpb24od29yZCkKCiAgICBsb2NhbCBiMCwgYjEsIGIyLCBiMzsKCiAgICBiMyA9IEFORCh3b3JkLCAweEZGKTsgd29yZCA9IFJTSElGVCh3b3JkLCA4KTsKCiAgICBiMiA9IEFORCh3b3JkLCAweEZGKTsgd29yZCA9IFJTSElGVCh3b3JkLCA4KTsKCiAgICBiMSA9IEFORCh3b3JkLCAweEZGKTsgd29yZCA9IFJTSElGVCh3b3JkLCA4KTsKCiAgICBiMCA9IEFORCh3b3JkLCAweEZGKTsKCiAgICByZXR1cm4gYjAsIGIxLCBiMiwgYjM7CgplbmQKCgoKbG9jYWwgZHdvcmQyYnl0ZXMgPSBmdW5jdGlvbihpKQoKICAgIGxvY2FsIGI0LCBiNSwgYjYsIGI3ID0gd29yZDJieXRlcyhpKTsKCiAgICBsb2NhbCBiMCwgYjEsIGIyLCBiMyA9IHdvcmQyYnl0ZXMobWF0aC5mbG9vcihpIC8gMHgxMDAwMDAwMDApKTsKCiAgICByZXR1cm4gYjAsIGIxLCBiMiwgYjMsIGI0LCBiNSwgYjYsIGI3OwoKZW5kCgoKCmxvY2FsIEYgPSBmdW5jdGlvbih4LCB5LCB6KSByZXR1cm4gWE9SKHosIEFORCh4LCBYT1IoeSwgeikpKTsgZW5kCgpsb2NhbCBHID0gZnVuY3Rpb24oeCwgeSwgeikgcmV0dXJuIFhPUih4LCBYT1IoeSwgeikpOyBlbmQKCmxvY2FsIEggPSBmdW5jdGlvbih4LCB5LCB6KSByZXR1cm4gT1IoQU5EKHgsIE9SKHksIHopKSwgQU5EKHksIHopKTsgZW5kCgpsb2NhbCBJID0gZnVuY3Rpb24oeCwgeSwgeikgcmV0dXJuIFhPUih4LCBYT1IoeSwgeikpOyBlbmQKCgoKbG9jYWwgU0hBMSA9IGZ1bmN0aW9uKCkKCgoKICAgIGxvY2FsIHF1ZXVlID0gUXVldWUoKTsKCgoKICAgIGxvY2FsIGgwID0gMHg2NzQ1MjMwMTsKCiAgICBsb2NhbCBoMSA9IDB4RUZDREFCODk7CgogICAgbG9jYWwgaDIgPSAweDk4QkFEQ0ZFOwoKICAgIGxvY2FsIGgzID0gMHgxMDMyNTQ3NjsKCiAgICBsb2NhbCBoNCA9IDB4QzNEMkUxRjA7CgoKCiAgICBsb2NhbCBwdWJsaWMgPSB7fTsKCgoKICAgIGxvY2FsIHByb2Nlc3NCbG9jayA9IGZ1bmN0aW9uKCkKCiAgICAgICAgbG9jYWwgYSA9IGgwOwoKICAgICAgICBsb2NhbCBiID0gaDE7CgogICAgICAgIGxvY2FsIGMgPSBoMjsKCiAgICAgICAgbG9jYWwgZCA9IGgzOwoKICAgICAgICBsb2NhbCBlID0gaDQ7CgogICAgICAgIGxvY2FsIHRlbXA7CgogICAgICAgIGxvY2FsIGs7CgoKCiAgICAgICAgbG9jYWwgdyA9IHt9OwoKICAgICAgICBmb3IgaSA9IDAsIDE1IGRvCgogICAgICAgICAgICB3W2ldID0gYnl0ZXMyd29yZChxdWV1ZS5wb3AoKSwgcXVldWUucG9wKCksIHF1ZXVlLnBvcCgpLCBxdWV1ZS5wb3AoKSk7CgogICAgICAgIGVuZAoKCgogICAgICAgIGZvciBpID0gMTYsIDc5IGRvCgogICAgICAgICAgICB3W2ldID0gTFJPVCgoWE9SKFhPUih3W2kgLSAzXSwgd1tpIC0gOF0pLCBYT1Iod1tpIC0gMTRdLCB3W2kgLSAxNl0pKSksIDEpOwoKICAgICAgICBlbmQKCgoKICAgICAgICBmb3IgaSA9IDAsIDc5IGRvCgogICAgICAgICAgICBpZiAoaSA8PSAxOSkgdGhlbgoKICAgICAgICAgICAgICAgIHRlbXAgPSBGKGIsIGMsIGQpOwoKICAgICAgICAgICAgICAgIGsgPSAweDVBODI3OTk5OwoKICAgICAgICAgICAgZWxzZWlmIChpIDw9IDM5KSB0aGVuCgogICAgICAgICAgICAgICAgdGVtcCA9IEcoYiwgYywgZCk7CgogICAgICAgICAgICAgICAgayA9IDB4NkVEOUVCQTE7CgogICAgICAgICAgICBlbHNlaWYgKGkgPD0gNTkpIHRoZW4KCiAgICAgICAgICAgICAgICB0ZW1wID0gSChiLCBjLCBkKTsKCiAgICAgICAgICAgICAgICBrID0gMHg4RjFCQkNEQzsKCiAgICAgICAgICAgIGVsc2UKCiAgICAgICAgICAgICAgICB0ZW1wID0gSShiLCBjLCBkKTsKCiAgICAgICAgICAgICAgICBrID0gMHhDQTYyQzFENjsKCiAgICAgICAgICAgIGVuZAoKICAgICAgICAgICAgdGVtcCA9IExST1QoYSwgNSkgKyB0ZW1wICsgZSArIGsgKyB3W2ldOwoKICAgICAgICAgICAgZSA9IGQ7CgogICAgICAgICAgICBkID0gYzsKCiAgICAgICAgICAgIGMgPSBMUk9UKGIsIDMwKTsKCiAgICAgICAgICAgIGIgPSBhOwoKICAgICAgICAgICAgYSA9IHRlbXA7CgogICAgICAgIGVuZAoKCgogICAgICAgIGgwID0gQU5EKGgwICsgYSwgMHhGRkZGRkZGRik7CgogICAgICAgIGgxID0gQU5EKGgxICsgYiwgMHhGRkZGRkZGRik7CgogICAgICAgIGgyID0gQU5EKGgyICsgYywgMHhGRkZGRkZGRik7CgogICAgICAgIGgzID0gQU5EKGgzICsgZCwgMHhGRkZGRkZGRik7CgogICAgICAgIGg0ID0gQU5EKGg0ICsgZSwgMHhGRkZGRkZGRik7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuaW5pdCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcXVldWUucmVzZXQoKTsKCiAgICAgICAgaDAgPSAweDY3NDUyMzAxOwoKICAgICAgICBoMSA9IDB4RUZDREFCODk7CgogICAgICAgIGgyID0gMHg5OEJBRENGRTsKCiAgICAgICAgaDMgPSAweDEwMzI1NDc2OwoKICAgICAgICBoNCA9IDB4QzNEMkUxRjA7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCgoKICAgIHB1YmxpYy51cGRhdGUgPSBmdW5jdGlvbihieXRlcykKCiAgICAgICAgZm9yIGIgaW4gYnl0ZXMgZG8KCiAgICAgICAgICAgIHF1ZXVlLnB1c2goYik7CgogICAgICAgICAgICBpZiBxdWV1ZS5zaXplKCkgPj0gNjQgdGhlbiBwcm9jZXNzQmxvY2soKTsgZW5kCgogICAgICAgIGVuZAoKCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuZmluaXNoID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCBiaXRzID0gcXVldWUuZ2V0SGVhZCgpICogODsKCgoKICAgICAgICBxdWV1ZS5wdXNoKDB4ODApOwoKICAgICAgICB3aGlsZSAoKHF1ZXVlLnNpemUoKSArIDcpICUgNjQpIDwgNjMgZG8KCiAgICAgICAgICAgIHF1ZXVlLnB1c2goMHgwMCk7CgogICAgICAgIGVuZAoKCgogICAgICAgIGxvY2FsIGIwLCBiMSwgYjIsIGIzLCBiNCwgYjUsIGI2LCBiNyA9IGR3b3JkMmJ5dGVzKGJpdHMpOwoKCgogICAgICAgIHF1ZXVlLnB1c2goYjApOwoKICAgICAgICBxdWV1ZS5wdXNoKGIxKTsKCiAgICAgICAgcXVldWUucHVzaChiMik7CgogICAgICAgIHF1ZXVlLnB1c2goYjMpOwoKICAgICAgICBxdWV1ZS5wdXNoKGI0KTsKCiAgICAgICAgcXVldWUucHVzaChiNSk7CgogICAgICAgIHF1ZXVlLnB1c2goYjYpOwoKICAgICAgICBxdWV1ZS5wdXNoKGI3KTsKCgoKICAgICAgICB3aGlsZSBxdWV1ZS5zaXplKCkgPiAwIGRvCgogICAgICAgICAgICBwcm9jZXNzQmxvY2soKTsKCiAgICAgICAgZW5kCgoKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc0J5dGVzID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCAgYjAsIGIxLCBiMiwgYjMgPSB3b3JkMmJ5dGVzKGgwKTsKCiAgICAgICAgbG9jYWwgIGI0LCBiNSwgYjYsIGI3ID0gd29yZDJieXRlcyhoMSk7CgogICAgICAgIGxvY2FsICBiOCwgYjksIGIxMCwgYjExID0gd29yZDJieXRlcyhoMik7CgogICAgICAgIGxvY2FsIGIxMiwgYjEzLCBiMTQsIGIxNSA9IHdvcmQyYnl0ZXMoaDMpOwoKICAgICAgICBsb2NhbCBiMTYsIGIxNywgYjE4LCBiMTkgPSB3b3JkMmJ5dGVzKGg0KTsKCgoKICAgICAgICByZXR1cm4ge2IwLCBiMSwgYjIsIGIzLCBiNCwgYjUsIGI2LCBiNywgYjgsIGI5LCBiMTAsIGIxMSwgYjEyLCBiMTMsIGIxNCwgYjE1LCBiMTYsIGIxNywgYjE4LCBiMTl9OwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzSGV4ID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCAgYjAsIGIxLCBiMiwgYjMgPSB3b3JkMmJ5dGVzKGgwKTsKCiAgICAgICAgbG9jYWwgIGI0LCBiNSwgYjYsIGI3ID0gd29yZDJieXRlcyhoMSk7CgogICAgICAgIGxvY2FsICBiOCwgYjksIGIxMCwgYjExID0gd29yZDJieXRlcyhoMik7CgogICAgICAgIGxvY2FsIGIxMiwgYjEzLCBiMTQsIGIxNSA9IHdvcmQyYnl0ZXMoaDMpOwoKICAgICAgICBsb2NhbCBiMTYsIGIxNywgYjE4LCBiMTkgPSB3b3JkMmJ5dGVzKGg0KTsKCgoKICAgICAgICByZXR1cm4gc3RyaW5nLmZvcm1hdCgiJTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMngiLAoKICAgICAgICAgICAgICAgIGIwLCBiMSwgYjIsIGIzLCBiNCwgYjUsIGI2LCBiNywgYjgsIGI5LCBiMTAsIGIxMSwgYjEyLCBiMTMsIGIxNCwgYjE1LCBiMTYsIGIxNywgYjE4LCBiMTkpOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzU3RyaW5nID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCAgYjAsIGIxLCBiMiwgYjMgPSB3b3JkMmJ5dGVzKGgwKTsKCiAgICAgICAgbG9jYWwgIGI0LCBiNSwgYjYsIGI3ID0gd29yZDJieXRlcyhoMSk7CgogICAgICAgIGxvY2FsICBiOCwgYjksIGIxMCwgYjExID0gd29yZDJieXRlcyhoMik7CgogICAgICAgIGxvY2FsIGIxMiwgYjEzLCBiMTQsIGIxNSA9IHdvcmQyYnl0ZXMoaDMpOwoKICAgICAgICBsb2NhbCBiMTYsIGIxNywgYjE4LCBiMTkgPSB3b3JkMmJ5dGVzKGg0KTsKCgoKICAgICAgICByZXR1cm4gc3RyaW5nLnBhY2soc3RyaW5nLnJlcCgnQicsIDIwKSwKCiAgICAgICAgICAgICAgICBiMCwgYjEsIGIyLCBiMywgYjQsIGI1LCBiNiwgYjcsIGI4LCBiOSwgYjEwLCBiMTEsIGIxMiwgYjEzLCBiMTQsIGIxNSwgYjE2LCBiMTcsIGIxOCwgYjE5KTsKCiAgICBlbmQKCgoKICAgIHJldHVybiBwdWJsaWM7CgplbmQKCgoKCgpsb2NhbCBzaGExID0gZnVuY3Rpb24oc3RyZWFtKQoKICAgIGxvY2FsIHJlc3VsdCA9IFNIQTEoKQoKICAgICAgICAgICAgLnVwZGF0ZShzdHJlYW0pCgogICAgICAgICAgICAuZmluaXNoKCkKCiAgICByZXR1cm4gcmVzdWx0CgplbmQKCgoKcmV0dXJuIHsKCiAgICBzaGExID0gc2hhMSwKCiAgICBTSEExID0gU0hBMQoKfQAAAAAAAABsb2NhbCBCaXQgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuYml0Iik7Cgpsb2NhbCBRdWV1ZSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5xdWV1ZSIpOwoKbG9jYWwgU3RyZWFtID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLnN0cmVhbSIpOwoKCgpsb2NhbCBDT05TVEFOVFMgPSB7CgogICAweDQyOGEyZjk4LCAweDcxMzc0NDkxLCAweGI1YzBmYmNmLCAweGU5YjVkYmE1LCAweDM5NTZjMjViLCAweDU5ZjExMWYxLCAweDkyM2Y4MmE0LCAweGFiMWM1ZWQ1LAoKICAgMHhkODA3YWE5OCwgMHgxMjgzNWIwMSwgMHgyNDMxODViZSwgMHg1NTBjN2RjMywgMHg3MmJlNWQ3NCwgMHg4MGRlYjFmZSwgMHg5YmRjMDZhNywgMHhjMTliZjE3NCwKCiAgIDB4ZTQ5YjY5YzEsIDB4ZWZiZTQ3ODYsIDB4MGZjMTlkYzYsIDB4MjQwY2ExY2MsIDB4MmRlOTJjNmYsIDB4NGE3NDg0YWEsIDB4NWNiMGE5ZGMsIDB4NzZmOTg4ZGEsCgogICAweDk4M2U1MTUyLCAweGE4MzFjNjZkLCAweGIwMDMyN2M4LCAweGJmNTk3ZmM3LCAweGM2ZTAwYmYzLCAweGQ1YTc5MTQ3LCAweDA2Y2E2MzUxLCAweDE0MjkyOTY3LAoKICAgMHgyN2I3MGE4NSwgMHgyZTFiMjEzOCwgMHg0ZDJjNmRmYywgMHg1MzM4MGQxMywgMHg2NTBhNzM1NCwgMHg3NjZhMGFiYiwgMHg4MWMyYzkyZSwgMHg5MjcyMmM4NSwKCiAgIDB4YTJiZmU4YTEsIDB4YTgxYTY2NGIsIDB4YzI0YjhiNzAsIDB4Yzc2YzUxYTMsIDB4ZDE5MmU4MTksIDB4ZDY5OTA2MjQsIDB4ZjQwZTM1ODUsIDB4MTA2YWEwNzAsCgogICAweDE5YTRjMTE2LCAweDFlMzc2YzA4LCAweDI3NDg3NzRjLCAweDM0YjBiY2I1LCAweDM5MWMwY2IzLCAweDRlZDhhYTRhLCAweDViOWNjYTRmLCAweDY4MmU2ZmYzLAoKICAgMHg3NDhmODJlZSwgMHg3OGE1NjM2ZiwgMHg4NGM4NzgxNCwgMHg4Y2M3MDIwOCwgMHg5MGJlZmZmYSwgMHhhNDUwNmNlYiwgMHhiZWY5YTNmNywgMHhjNjcxNzhmMiAgfTsKCgoKbG9jYWwgZm10ID0gIiUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4IiAuLgoKICAgICAgICAgICAgIiUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCUwMnglMDJ4JTAyeCIKCgoKbG9jYWwgQU5EID0gQml0LmJhbmQ7Cgpsb2NhbCBPUiAgPSBCaXQuYm9yOwoKbG9jYWwgTk9UID0gQml0LmJub3Q7Cgpsb2NhbCBYT1IgPSBCaXQuYnhvcjsKCmxvY2FsIFJST1QgPSBCaXQucnJvdGF0ZTsKCmxvY2FsIExTSElGVCA9IEJpdC5sc2hpZnQ7Cgpsb2NhbCBSU0hJRlQgPSBCaXQucnNoaWZ0OwoKCgotLVNIQTIgaXMgYmlnLWVuZGlhbgoKbG9jYWwgYnl0ZXMyd29yZCA9IGZ1bmN0aW9uKGIwLCBiMSwgYjIsIGIzKQoKICAgIGxvY2FsIGkgPSBiMDsgaSA9IExTSElGVChpLCA4KTsKCiAgICBpID0gT1IoaSwgYjEpOyBpID0gTFNISUZUKGksIDgpOwoKICAgIGkgPSBPUihpLCBiMik7IGkgPSBMU0hJRlQoaSwgOCk7CgogICAgaSA9IE9SKGksIGIzKTsKCiAgICByZXR1cm4gaTsKCmVuZAoKCgpsb2NhbCB3b3JkMmJ5dGVzID0gZnVuY3Rpb24od29yZCkKCiAgICBsb2NhbCBiMCwgYjEsIGIyLCBiMzsKCiAgICBiMyA9IEFORCh3b3JkLCAweEZGKTsgd29yZCA9IFJTSElGVCh3b3JkLCA4KTsKCiAgICBiMiA9IEFORCh3b3JkLCAweEZGKTsgd29yZCA9IFJTSElGVCh3b3JkLCA4KTsKCiAgICBiMSA9IEFORCh3b3JkLCAweEZGKTsgd29yZCA9IFJTSElGVCh3b3JkLCA4KTsKCiAgICBiMCA9IEFORCh3b3JkLCAweEZGKTsKCiAgICByZXR1cm4gYjAsIGIxLCBiMiwgYjM7CgplbmQKCgoKbG9jYWwgZHdvcmQyYnl0ZXMgPSBmdW5jdGlvbihpKQoKICAgIGxvY2FsIGI0LCBiNSwgYjYsIGI3ID0gd29yZDJieXRlcyhpKTsKCiAgICBsb2NhbCBiMCwgYjEsIGIyLCBiMyA9IHdvcmQyYnl0ZXMobWF0aC5mbG9vcihpIC8gMHgxMDAwMDAwMDApKTsKCiAgICByZXR1cm4gYjAsIGIxLCBiMiwgYjMsIGI0LCBiNSwgYjYsIGI3OwoKZW5kCgoKCgoKbG9jYWwgU0hBMl8yNTYgPSBmdW5jdGlvbigpCgoKCiAgICBsb2NhbCBxdWV1ZSA9IFF1ZXVlKCk7CgoKCiAgICBsb2NhbCBoMCA9IDB4NmEwOWU2Njc7CgogICAgbG9jYWwgaDEgPSAweGJiNjdhZTg1OwoKICAgIGxvY2FsIGgyID0gMHgzYzZlZjM3MjsKCiAgICBsb2NhbCBoMyA9IDB4YTU0ZmY1M2E7CgogICAgbG9jYWwgaDQgPSAweDUxMGU1MjdmOwoKICAgIGxvY2FsIGg1ID0gMHg5YjA1Njg4YzsKCiAgICBsb2NhbCBoNiA9IDB4MWY4M2Q5YWI7CgogICAgbG9jYWwgaDcgPSAweDViZTBjZDE5OwoKCgogICAgbG9jYWwgcHVibGljID0ge307CgoKCiAgICBsb2NhbCBwcm9jZXNzQmxvY2sgPSBmdW5jdGlvbigpCgogICAgICAgIGxvY2FsIGEgPSBoMDsKCiAgICAgICAgbG9jYWwgYiA9IGgxOwoKICAgICAgICBsb2NhbCBjID0gaDI7CgogICAgICAgIGxvY2FsIGQgPSBoMzsKCiAgICAgICAgbG9jYWwgZSA9IGg0OwoKICAgICAgICBsb2NhbCBmID0gaDU7CgogICAgICAgIGxvY2FsIGcgPSBoNjsKCiAgICAgICAgbG9jYWwgaCA9IGg3OwoKCgogICAgICAgIGxvY2FsIHcgPSB7fTsKCgoKICAgICAgICBmb3IgaSA9IDAsIDE1IGRvCgogICAgICAgICAgICB3W2ldID0gYnl0ZXMyd29yZChxdWV1ZS5wb3AoKSwgcXVldWUucG9wKCksIHF1ZXVlLnBvcCgpLCBxdWV1ZS5wb3AoKSk7CgogICAgICAgIGVuZAoKCgogICAgICAgIGZvciBpID0gMTYsIDYzIGRvCgogICAgICAgICAgICBsb2NhbCBzMCA9IFhPUihSUk9UKHdbaSAtIDE1XSwgNyksIFhPUihSUk9UKHdbaSAtIDE1XSwgMTgpLCBSU0hJRlQod1tpIC0gMTVdLCAzKSkpOwoKICAgICAgICAgICAgbG9jYWwgczEgPSBYT1IoUlJPVCh3W2kgLSAyXSwgMTcpLCBYT1IoUlJPVCh3W2kgLSAgMl0sIDE5KSwgUlNISUZUKHdbaSAtIDJdLCAxMCkpKTsKCiAgICAgICAgICAgIHdbaV0gPSBBTkQod1tpIC0gMTZdICsgczAgKyB3W2kgLSA3XSArIHMxLCAweEZGRkZGRkZGKTsKCiAgICAgICAgZW5kCgoKCiAgICAgICAgZm9yIGkgPSAwLCA2MyBkbwoKICAgICAgICAgICAgbG9jYWwgczEgPSBYT1IoUlJPVChlLCA2KSwgWE9SKFJST1QoZSwgMTEpLCBSUk9UKGUsIDI1KSkpOwoKICAgICAgICAgICAgbG9jYWwgY2ggPSBYT1IoQU5EKGUsIGYpLCBBTkQoTk9UKGUpLCBnKSk7CgogICAgICAgICAgICBsb2NhbCB0ZW1wMSA9IGggKyBzMSArIGNoICsgQ09OU1RBTlRTW2kgKyAxXSArIHdbaV07CgogICAgICAgICAgICBsb2NhbCBzMCA9IFhPUihSUk9UKGEsIDIpLCBYT1IoUlJPVChhLCAxMyksIFJST1QoYSwgMjIpKSk7CgogICAgICAgICAgICBsb2NhbCBtYWogPSBYT1IoQU5EKGEsIGIpLCBYT1IoQU5EKGEsIGMpLCBBTkQoYiwgYykpKTsKCiAgICAgICAgICAgIGxvY2FsIHRlbXAyID0gczAgKyBtYWo7CgoKCiAgICAgICAgICAgIGggPSBnOwoKICAgICAgICAgICAgZyA9IGY7CgogICAgICAgICAgICBmID0gZTsKCiAgICAgICAgICAgIGUgPSBkICsgdGVtcDE7CgogICAgICAgICAgICBkID0gYzsKCiAgICAgICAgICAgIGMgPSBiOwoKICAgICAgICAgICAgYiA9IGE7CgogICAgICAgICAgICBhID0gdGVtcDEgKyB0ZW1wMjsKCiAgICAgICAgZW5kCgoKCiAgICAgICAgaDAgPSBBTkQoaDAgKyBhLCAweEZGRkZGRkZGKTsKCiAgICAgICAgaDEgPSBBTkQoaDEgKyBiLCAweEZGRkZGRkZGKTsKCiAgICAgICAgaDIgPSBBTkQoaDIgKyBjLCAweEZGRkZGRkZGKTsKCiAgICAgICAgaDMgPSBBTkQoaDMgKyBkLCAweEZGRkZGRkZGKTsKCiAgICAgICAgaDQgPSBBTkQoaDQgKyBlLCAweEZGRkZGRkZGKTsKCiAgICAgICAgaDUgPSBBTkQoaDUgKyBmLCAweEZGRkZGRkZGKTsKCiAgICAgICAgaDYgPSBBTkQoaDYgKyBnLCAweEZGRkZGRkZGKTsKCiAgICAgICAgaDcgPSBBTkQoaDcgKyBoLCAweEZGRkZGRkZGKTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5pbml0ID0gZnVuY3Rpb24oKQoKICAgICAgICBxdWV1ZS5yZXNldCgpOwoKCgogICAgICAgIGgwID0gMHg2YTA5ZTY2NzsKCiAgICAgICAgaDEgPSAweGJiNjdhZTg1OwoKICAgICAgICBoMiA9IDB4M2M2ZWYzNzI7CgogICAgICAgIGgzID0gMHhhNTRmZjUzYTsKCiAgICAgICAgaDQgPSAweDUxMGU1MjdmOwoKICAgICAgICBoNSA9IDB4OWIwNTY4OGM7CgogICAgICAgIGg2ID0gMHgxZjgzZDlhYjsKCiAgICAgICAgaDcgPSAweDViZTBjZDE5OwoKCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMudXBkYXRlID0gZnVuY3Rpb24oYnl0ZXMpCgogICAgICAgIGZvciBiIGluIGJ5dGVzIGRvCgogICAgICAgICAgICBxdWV1ZS5wdXNoKGIpOwoKICAgICAgICAgICAgaWYgcXVldWUuc2l6ZSgpID49IDY0IHRoZW4gcHJvY2Vzc0Jsb2NrKCk7IGVuZAoKICAgICAgICBlbmQKCgoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLmZpbmlzaCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgbG9jYWwgYml0cyA9IHF1ZXVlLmdldEhlYWQoKSAqIDg7CgoKCiAgICAgICAgcXVldWUucHVzaCgweDgwKTsKCiAgICAgICAgd2hpbGUgKChxdWV1ZS5zaXplKCkgKyA3KSAlIDY0KSA8IDYzIGRvCgogICAgICAgICAgICBxdWV1ZS5wdXNoKDB4MDApOwoKICAgICAgICBlbmQKCgoKICAgICAgICBsb2NhbCBiMCwgYjEsIGIyLCBiMywgYjQsIGI1LCBiNiwgYjcgPSBkd29yZDJieXRlcyhiaXRzKTsKCgoKICAgICAgICBxdWV1ZS5wdXNoKGIwKTsKCiAgICAgICAgcXVldWUucHVzaChiMSk7CgogICAgICAgIHF1ZXVlLnB1c2goYjIpOwoKICAgICAgICBxdWV1ZS5wdXNoKGIzKTsKCiAgICAgICAgcXVldWUucHVzaChiNCk7CgogICAgICAgIHF1ZXVlLnB1c2goYjUpOwoKICAgICAgICBxdWV1ZS5wdXNoKGI2KTsKCiAgICAgICAgcXVldWUucHVzaChiNyk7CgoKCiAgICAgICAgd2hpbGUgcXVldWUuc2l6ZSgpID4gMCBkbwoKICAgICAgICAgICAgcHJvY2Vzc0Jsb2NrKCk7CgogICAgICAgIGVuZAoKCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNCeXRlcyA9IGZ1bmN0aW9uKCkKCiAgICAgICAgbG9jYWwgIGIwLCBiMSwgYjIsIGIzID0gd29yZDJieXRlcyhoMCk7CgogICAgICAgIGxvY2FsICBiNCwgYjUsIGI2LCBiNyA9IHdvcmQyYnl0ZXMoaDEpOwoKICAgICAgICBsb2NhbCAgYjgsIGI5LCBiMTAsIGIxMSA9IHdvcmQyYnl0ZXMoaDIpOwoKICAgICAgICBsb2NhbCBiMTIsIGIxMywgYjE0LCBiMTUgPSB3b3JkMmJ5dGVzKGgzKTsKCiAgICAgICAgbG9jYWwgYjE2LCBiMTcsIGIxOCwgYjE5ID0gd29yZDJieXRlcyhoNCk7CgogICAgICAgIGxvY2FsIGIyMCwgYjIxLCBiMjIsIGIyMyA9IHdvcmQyYnl0ZXMoaDUpOwoKICAgICAgICBsb2NhbCBiMjQsIGIyNSwgYjI2LCBiMjcgPSB3b3JkMmJ5dGVzKGg2KTsKCiAgICAgICAgbG9jYWwgYjI4LCBiMjksIGIzMCwgYjMxID0gd29yZDJieXRlcyhoNyk7CgoKCgoKICAgICAgICByZXR1cm4geyAgYjAsIGIxLCBiMiwgYjMsIGI0LCBiNSwgYjYsIGI3LCBiOCwgYjksIGIxMCwgYjExLCBiMTIsIGIxMywgYjE0LCBiMTUKCiAgICAgICAgICAgICAgICAsIGIxNiwgYjE3LCBiMTgsIGIxOSwgYjIwLCBiMjEsIGIyMiwgYjIzLCBiMjQsIGIyNSwgYjI2LCBiMjcsIGIyOCwgYjI5LCBiMzAsIGIzMX07CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNIZXggPSBmdW5jdGlvbigpCgogICAgICAgIGxvY2FsICBiMCwgYjEsIGIyLCBiMyA9IHdvcmQyYnl0ZXMoaDApOwoKICAgICAgICBsb2NhbCAgYjQsIGI1LCBiNiwgYjcgPSB3b3JkMmJ5dGVzKGgxKTsKCiAgICAgICAgbG9jYWwgIGI4LCBiOSwgYjEwLCBiMTEgPSB3b3JkMmJ5dGVzKGgyKTsKCiAgICAgICAgbG9jYWwgYjEyLCBiMTMsIGIxNCwgYjE1ID0gd29yZDJieXRlcyhoMyk7CgogICAgICAgIGxvY2FsIGIxNiwgYjE3LCBiMTgsIGIxOSA9IHdvcmQyYnl0ZXMoaDQpOwoKICAgICAgICBsb2NhbCBiMjAsIGIyMSwgYjIyLCBiMjMgPSB3b3JkMmJ5dGVzKGg1KTsKCiAgICAgICAgbG9jYWwgYjI0LCBiMjUsIGIyNiwgYjI3ID0gd29yZDJieXRlcyhoNik7CgogICAgICAgIGxvY2FsIGIyOCwgYjI5LCBiMzAsIGIzMSA9IHdvcmQyYnl0ZXMoaDcpOwoKCgogICAgICAgIHJldHVybiBzdHJpbmcuZm9ybWF0KGZtdCwgYjAsIGIxLCBiMiwgYjMsIGI0LCBiNSwgYjYsIGI3LCBiOCwgYjksIGIxMCwgYjExLCBiMTIsIGIxMywgYjE0LCBiMTUKCiAgICAgICAgICAgICAgICAsIGIxNiwgYjE3LCBiMTgsIGIxOSwgYjIwLCBiMjEsIGIyMiwgYjIzLCBiMjQsIGIyNSwgYjI2LCBiMjcsIGIyOCwgYjI5LCBiMzAsIGIzMSk7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNTdHJpbmcgPSBmdW5jdGlvbigpCgogICAgICAgIGxvY2FsIGIwLCBiMSwgYjIsIGIzID0gd29yZDJieXRlcyhoMCk7CgogICAgICAgIGxvY2FsIGI0LCBiNSwgYjYsIGI3ID0gd29yZDJieXRlcyhoMSk7CgogICAgICAgIGxvY2FsIGI4LCBiOSwgYjEwLCBiMTEgPSB3b3JkMmJ5dGVzKGgyKTsKCiAgICAgICAgbG9jYWwgYjEyLCBiMTMsIGIxNCwgYjE1ID0gd29yZDJieXRlcyhoMyk7CgogICAgICAgIGxvY2FsIGIxNiwgYjE3LCBiMTgsIGIxOSA9IHdvcmQyYnl0ZXMoaDQpOwoKICAgICAgICBsb2NhbCBiMjAsIGIyMSwgYjIyLCBiMjMgPSB3b3JkMmJ5dGVzKGg1KTsKCiAgICAgICAgbG9jYWwgYjI0LCBiMjUsIGIyNiwgYjI3ID0gd29yZDJieXRlcyhoNik7CgogICAgICAgIGxvY2FsIGIyOCwgYjI5LCBiMzAsIGIzMSA9IHdvcmQyYnl0ZXMoaDcpOwoKCgogICAgICAgIHJldHVybiBzdHJpbmcucGFjayhzdHJpbmcucmVwKCdCJywgMzIpLAoKICAgICAgICAgICAgYjAsIGIxLCBiMiwgYjMsIGI0LCBiNSwgYjYsIGI3LCBiOCwKCiAgICAgICAgICAgIGI5LCBiMTAsIGIxMSwgYjEyLCBiMTMsIGIxNCwgYjE1LAoKICAgICAgICAgICAgYjE2LCBiMTcsIGIxOCwgYjE5LCBiMjAsIGIyMSwgYjIyLCBiMjMsIGIyNCwKCiAgICAgICAgICAgIGIyNSwgYjI2LCBiMjcsIGIyOCwgYjI5LCBiMzAsIGIzMSk7CgogICAgZW5kCgoKCiAgICByZXR1cm4gcHVibGljOwoKCgplbmQKCgoKLS0tIEBjbGFzcyBTdHJlYW0gOiB0YWJsZQoKCgotLS0gQHBhcmFtIHN0cmVhbSAoU3RyZWFtKSAtIEEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIHRoZSBuZXh0IGJ5dGUgb2YgdGhlIHN0cmVhbSwgb3IgbmlsIGlmIHRoZSBzdHJlYW0gaGFzIGVuZGVkLgoKLS0tIEByZXR1cm5zIHRhYmxlIC0gQSB0YWJsZSBjb250YWluaW5nIHRoZSBoYXNoIGluIGJ5dGVzLCBzdHJpbmcsIGFuZCBoZXggZm9ybWF0cy4KCmxvY2FsIHNoYTJfMjU2ID0gZnVuY3Rpb24oc3RyZWFtKQoKICAgIGxvY2FsIHJlc3VsdCA9IFNIQTJfMjU2KCkKCiAgICAgICAgICAgIC51cGRhdGUoc3RyZWFtKQoKICAgICAgICAgICAgLmZpbmlzaCgpCgogICAgcmV0dXJuIHJlc3VsdAoKZW5kCgoKCnJldHVybiB7CgogICAgc2hhMl8yNTYgPSBzaGEyXzI1NiwKCiAgICBTSEEyXzI1NiA9IFNIQTJfMjU2Cgp9OwoAAGxvY2FsIEhleCA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5oZXgiKQoKCgpsb2NhbCBrNTEyID0gewoKMHg0MjhhMmY5OGQ3MjhhZTIyLDB4NzEzNzQ0OTEyM2VmNjVjZCwweGI1YzBmYmNmZWM0ZDNiMmYsMHhlOWI1ZGJhNTgxODlkYmJjLAoKMHgzOTU2YzI1YmYzNDhiNTM4LDB4NTlmMTExZjFiNjA1ZDAxOSwweDkyM2Y4MmE0YWYxOTRmOWIsMHhhYjFjNWVkNWRhNmQ4MTE4LAoKMHhkODA3YWE5OGEzMDMwMjQyLDB4MTI4MzViMDE0NTcwNmZiZSwweDI0MzE4NWJlNGVlNGIyOGMsMHg1NTBjN2RjM2Q1ZmZiNGUyLAoKMHg3MmJlNWQ3NGYyN2I4OTZmLDB4ODBkZWIxZmUzYjE2OTZiMSwweDliZGMwNmE3MjVjNzEyMzUsMHhjMTliZjE3NGNmNjkyNjk0LAoKMHhlNDliNjljMTllZjE0YWQyLDB4ZWZiZTQ3ODYzODRmMjVlMywweDBmYzE5ZGM2OGI4Y2Q1YjUsMHgyNDBjYTFjYzc3YWM5YzY1LAoKMHgyZGU5MmM2ZjU5MmIwMjc1LDB4NGE3NDg0YWE2ZWE2ZTQ4MywweDVjYjBhOWRjYmQ0MWZiZDQsMHg3NmY5ODhkYTgzMTE1M2I1LAoKMHg5ODNlNTE1MmVlNjZkZmFiLDB4YTgzMWM2NmQyZGI0MzIxMCwweGIwMDMyN2M4OThmYjIxM2YsMHhiZjU5N2ZjN2JlZWYwZWU0LAoKMHhjNmUwMGJmMzNkYTg4ZmMyLDB4ZDVhNzkxNDc5MzBhYTcyNSwweDA2Y2E2MzUxZTAwMzgyNmYsMHgxNDI5Mjk2NzBhMGU2ZTcwLAoKMHgyN2I3MGE4NTQ2ZDIyZmZjLDB4MmUxYjIxMzg1YzI2YzkyNiwweDRkMmM2ZGZjNWFjNDJhZWQsMHg1MzM4MGQxMzlkOTViM2RmLAoKMHg2NTBhNzM1NDhiYWY2M2RlLDB4NzY2YTBhYmIzYzc3YjJhOCwweDgxYzJjOTJlNDdlZGFlZTYsMHg5MjcyMmM4NTE0ODIzNTNiLAoKMHhhMmJmZThhMTRjZjEwMzY0LDB4YTgxYTY2NGJiYzQyMzAwMSwweGMyNGI4YjcwZDBmODk3OTEsMHhjNzZjNTFhMzA2NTRiZTMwLAoKMHhkMTkyZTgxOWQ2ZWY1MjE4LDB4ZDY5OTA2MjQ1NTY1YTkxMCwweGY0MGUzNTg1NTc3MTIwMmEsMHgxMDZhYTA3MDMyYmJkMWI4LAoKMHgxOWE0YzExNmI4ZDJkMGM4LDB4MWUzNzZjMDg1MTQxYWI1MywweDI3NDg3NzRjZGY4ZWViOTksMHgzNGIwYmNiNWUxOWI0OGE4LAoKMHgzOTFjMGNiM2M1Yzk1YTYzLDB4NGVkOGFhNGFlMzQxOGFjYiwweDViOWNjYTRmNzc2M2UzNzMsMHg2ODJlNmZmM2Q2YjJiOGEzLAoKMHg3NDhmODJlZTVkZWZiMmZjLDB4NzhhNTYzNmY0MzE3MmY2MCwweDg0Yzg3ODE0YTFmMGFiNzIsMHg4Y2M3MDIwODFhNjQzOWVjLAoKMHg5MGJlZmZmYTIzNjMxZTI4LDB4YTQ1MDZjZWJkZTgyYmRlOSwweGJlZjlhM2Y3YjJjNjc5MTUsMHhjNjcxNzhmMmUzNzI1MzJiLAoKMHhjYTI3M2VjZWVhMjY2MTljLDB4ZDE4NmI4YzcyMWMwYzIwNywweGVhZGE3ZGQ2Y2RlMGViMWUsMHhmNTdkNGY3ZmVlNmVkMTc4LAoKMHgwNmYwNjdhYTcyMTc2ZmJhLDB4MGE2MzdkYzVhMmM4OThhNiwweDExM2Y5ODA0YmVmOTBkYWUsMHgxYjcxMGIzNTEzMWM0NzFiLAoKMHgyOGRiNzdmNTIzMDQ3ZDg0LDB4MzJjYWFiN2I0MGM3MjQ5MywweDNjOWViZTBhMTVjOWJlYmMsMHg0MzFkNjdjNDljMTAwZDRjLAoKMHg0Y2M1ZDRiZWNiM2U0MmI2LDB4NTk3ZjI5OWNmYzY1N2UyYSwweDVmY2I2ZmFiM2FkNmZhZWMsMHg2YzQ0MTk4YzRhNDc1ODE3Cgp9CgoKCmxvY2FsIGZ1bmN0aW9uIHBhZDEyOChtc2csIGxlbikKCglsb2NhbCBleHRyYSA9IDEyOCAtICgobGVuICsgMSArIDgpICUgMTI4KQoKCWxlbiA9IHN0cmluZy5wYWNrKCI+STgiLCBsZW4gKiA4KQoKCW1zZyA9IG1zZyAuLiAiXDEyOCIgLi4gc3RyaW5nLnJlcCgiXDAiLCBleHRyYSkgLi4gbGVuCgoJYXNzZXJ0KCNtc2cgJSAxMjggPT0gMCkKCglyZXR1cm4gbXNnCgplbmQKCgoKbG9jYWwgd3c1MTIgPSB7fQoKCgotLS0gU0hBLTUxMiBoYXNoIGZ1bmN0aW9uLgoKLS0tIEBwYXJhbSBtc2cgc3RyaW5nIC0gVGhlIG1lc3NhZ2UgdG8gaGFzaC4KCi0tLSBAcmV0dXJucyB0YWJsZSAtIEEgdGFibGUgY29udGFpbmluZyB0aGUgaGFzaCBpbiBieXRlcywgc3RyaW5nLCBhbmQgaGV4IGZvcm1hdHMuCgpsb2NhbCBmdW5jdGlvbiBzaGE1MTIgKG1zZykKCgltc2cgPSBwYWQxMjgobXNnLCAjbXNnKQoKCWxvY2FsIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIGg3LCBoOCA9IAoKCQkweDZhMDllNjY3ZjNiY2M5MDgsIDB4YmI2N2FlODU4NGNhYTczYiwKCgkJMHgzYzZlZjM3MmZlOTRmODJiLCAweGE1NGZmNTNhNWYxZDM2ZjEsCgoJCTB4NTEwZTUyN2ZhZGU2ODJkMSwgMHg5YjA1Njg4YzJiM2U2YzFmLAoKCQkweDFmODNkOWFiZmI0MWJkNmIsIDB4NWJlMGNkMTkxMzdlMjE3OQoKCWxvY2FsIGsgPSBrNTEyCgoJbG9jYWwgdyA9IHd3NTEyCgoJbG9jYWwgbWxlbiA9ICNtc2cKCgoKCWZvciBpID0gMSwgbWxlbiwgMTI4IGRvCgoJCXdbMV0sIHdbMl0sIHdbM10sIHdbNF0sIHdbNV0sIHdbNl0sIHdbN10sIHdbOF0sIAoKCQl3WzldLCB3WzEwXSwgd1sxMV0sIHdbMTJdLCB3WzEzXSwgd1sxNF0sIHdbMTVdLCB3WzE2XQoKCQk9IHN0cmluZy51bnBhY2soIj5pOGk4aThpOGk4aThpOGk4aThpOGk4aThpOGk4aThpOCIsIG1zZywgaSkKCgkJLS0gbWl4IG1zZyBibG9jayBpbiBzdGF0ZQoKCgoJCWZvciBqID0gMTcsIDgwIGRvCgoJCQlsb2NhbCBhID0gd1tqLTE1XQoKCQkJbG9jYWwgYiA9IHdbai0yXQoKCQkJd1tqXSA9IChhID4+IDEgfiBhID4+IDcgfiBhID4+IDggfiBhIDw8IDU2IH4gYSA8PCA2MykKCgkJCSAgKyAoYiA+PiA2IH4gYiA+PiAxOSB+IGIgPj4gNjEgfiBiIDw8IDMgfiBiIDw8IDQ1KSAKCgkJCSAgKyB3W2otN10gKyB3W2otMTZdCgoJCWVuZAoKCQlsb2NhbCBhLCBiLCBjLCBkLCBlLCBmLCBnLCBoID0gaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgaDcsIGg4CgoJCS0tIG1haW4gc3RhdGUgcGVybXV0YXRpb24KCgkJZm9yIGogPSAxLCA4MCBkbwoKCQkJbG9jYWwgeiA9IChlID4+IDE0IH4gZSA+PiAxOCB+IGUgPj4gNDEgfiBlIDw8IDIzIAoKCQkJCSAgIH4gZSA8PCA0NiB+IGUgPDwgNTApIAoKCQkJCSsgKGcgfiBlICYgKGYgfiBnKSkgKyBoICsga1tqXSArIHdbal0KCgkJCWggPSBnCgoJCQlnID0gZgoKCQkJZiA9IGUKCgkJCWUgPSB6ICsgZAoKCQkJZCA9IGMKCgkJCWMgPSBiCgoJCQliID0gYQoKCQkJYSA9IHogKyAoKGEgfiBjKSAmIGQgfiBhICYgYykgCgoJCQkgICAgICArIChhID4+IDI4IH4gYSA+PiAzNCB+IGEgPj4gMzkgfiBhIDw8IDI1IAoKCQkJCX4gYSA8PCAzMCB+IGEgPDwgMzYpCgoJCWVuZAoKCQloMSA9IGgxICsgYQoKCQloMiA9IGgyICsgYiAKCgkJaDMgPSBoMyArIGMgCgoJCWg0ID0gaDQgKyBkIAoKCQloNSA9IGg1ICsgZSAKCgkJaDYgPSBoNiArIGYgCgoJCWg3ID0gaDcgKyBnIAoKCQloOCA9IGg4ICsgaCAKCgllbmQKCgoKCWxvY2FsIHB1YmxpYyA9IHt9CgoKCglwdWJsaWMuYXNCeXRlcyA9IGZ1bmN0aW9uKCkKCgkJcmV0dXJuIHsgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgaDcsIGg4fQoKCWVuZAoKCgoJcHVibGljLmFzU3RyaW5nID0gZnVuY3Rpb24oKQoKCQlyZXR1cm4gc3RyaW5nLnBhY2soIj5pOGk4aThpOGk4aThpOGk4IiwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgaDcsIGg4KQoKCWVuZAoKCgoJcHVibGljLmFzSGV4ID0gZnVuY3Rpb24oKQoKCQlyZXR1cm4gSGV4LnN0cmluZ1RvSGV4KHN0cmluZy5wYWNrKCI+aThpOGk4aThpOGk4aThpOCIsIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIGg3LCBoOCkpCgoJZW5kCgoKCglyZXR1cm4gcHVibGljCgplbmQKCgoKcmV0dXJuIHNoYTUxMgoAAAAAAAAAAGxvY2FsIEhleCA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5oZXgiKTsKCgoKbG9jYWwgUk9VTkRTID0gMjQKCgoKbG9jYWwgcm91bmRDb25zdGFudHMgPSB7CgoweDAwMDAwMDAwMDAwMDAwMDEsCgoweDAwMDAwMDAwMDAwMDgwODIsCgoweDgwMDAwMDAwMDAwMDgwOEEsCgoweDgwMDAwMDAwODAwMDgwMDAsCgoweDAwMDAwMDAwMDAwMDgwOEIsCgoweDAwMDAwMDAwODAwMDAwMDEsCgoweDgwMDAwMDAwODAwMDgwODEsCgoweDgwMDAwMDAwMDAwMDgwMDksCgoweDAwMDAwMDAwMDAwMDAwOEEsCgoweDAwMDAwMDAwMDAwMDAwODgsCgoweDAwMDAwMDAwODAwMDgwMDksCgoweDAwMDAwMDAwODAwMDAwMEEsCgoweDAwMDAwMDAwODAwMDgwOEIsCgoweDgwMDAwMDAwMDAwMDAwOEIsCgoweDgwMDAwMDAwMDAwMDgwODksCgoweDgwMDAwMDAwMDAwMDgwMDMsCgoweDgwMDAwMDAwMDAwMDgwMDIsCgoweDgwMDAwMDAwMDAwMDAwODAsCgoweDAwMDAwMDAwMDAwMDgwMEEsCgoweDgwMDAwMDAwODAwMDAwMEEsCgoweDgwMDAwMDAwODAwMDgwODEsCgoweDgwMDAwMDAwMDAwMDgwODAsCgoweDAwMDAwMDAwODAwMDAwMDEsCgoweDgwMDAwMDAwODAwMDgwMDgKCn0KCgoKbG9jYWwgcm90YXRpb25PZmZzZXRzID0gewoKLS0gb3JkZXJlZCBmb3IgW3hdW3ldIGRlcmVmZXJlbmNpbmcsIHNvIGFwcGVhciBmbGlwcGVkIGhlcmU6Cgp7MCwgMzYsIDMsIDQxLCAxOH0sCgp7MSwgNDQsIDEwLCA0NSwgMn0sCgp7NjIsIDYsIDQzLCAxNSwgNjF9LAoKezI4LCA1NSwgMjUsIDIxLCA1Nn0sCgp7MjcsIDIwLCAzOSwgOCwgMTR9Cgp9CgoKCgoKCgotLSB0aGUgZnVsbCBwZXJtdXRhdGlvbiBmdW5jdGlvbgoKbG9jYWwgZnVuY3Rpb24ga2VjY2FrRihzdCkKCglsb2NhbCBwZXJtdXRlZCA9IHN0LnBlcm11dGVkCgoJbG9jYWwgcGFyaXRpZXMgPSBzdC5wYXJpdGllcwoKCWZvciByb3VuZCA9IDEsIFJPVU5EUyBkbwoKCQktLSB0aGV0YSgpCgoJCWZvciB4ID0gMSw1IGRvCgoJCQlwYXJpdGllc1t4XSA9IDAKCgkJCWxvY2FsIHN4ID0gc3RbeF0KCgkJCWZvciB5ID0gMSw1IGRvIHBhcml0aWVzW3hdID0gcGFyaXRpZXNbeF0gfiBzeFt5XSBlbmQKCgkJZW5kCgoJCS0tCgoJCS0tIHVucm9sbCB0aGUgZm9sbG93aW5nIGxvb3AKCgkJLS1mb3IgeCA9IDEsNSBkbwoKCQktLQlsb2NhbCBwNSA9IHBhcml0aWVzWyh4KSU1ICsgMV0KCgkJLS0JbG9jYWwgZmxpcCA9IHBhcml0aWVzWyh4LTIpJTUgKyAxXSB+ICggcDUgPDwgMSB8IHA1ID4+IDYzKQoKCQktLQlmb3IgeSA9IDEsNSBkbyBzdFt4XVt5XSA9IHN0W3hdW3ldIH4gZmxpcCBlbmQKCgkJLS1lbmQKCgkJbG9jYWwgcDUsIGZsaXAsIHMKCgkJLS14PTEKCgkJcDUgPSBwYXJpdGllc1syXQoKCQlmbGlwID0gcGFyaXRpZXNbNV0gfiAocDUgPDwgMSB8IHA1ID4+IDYzKQoKCQlzID0gc3RbMV0KCgkJZm9yIHkgPSAxLDUgZG8gc1t5XSA9IHNbeV0gfiBmbGlwIGVuZAoKCQktLXg9MgoKCQlwNSA9IHBhcml0aWVzWzNdCgoJCWZsaXAgPSBwYXJpdGllc1sxXSB+IChwNSA8PCAxIHwgcDUgPj4gNjMpCgoJCXMgPSBzdFsyXQoKCQlmb3IgeSA9IDEsNSBkbyBzW3ldID0gc1t5XSB+IGZsaXAgZW5kCgoJCS0teD0zCgoJCXA1ID0gcGFyaXRpZXNbNF0KCgkJZmxpcCA9IHBhcml0aWVzWzJdIH4gKHA1IDw8IDEgfCBwNSA+PiA2MykKCgkJcyA9IHN0WzNdCgoJCWZvciB5ID0gMSw1IGRvIHNbeV0gPSBzW3ldIH4gZmxpcCBlbmQKCgkJLS14PTQKCgkJcDUgPSBwYXJpdGllc1s1XQoKCQlmbGlwID0gcGFyaXRpZXNbM10gfiAocDUgPDwgMSB8IHA1ID4+IDYzKQoKCQlzID0gc3RbNF0KCgkJZm9yIHkgPSAxLDUgZG8gc1t5XSA9IHNbeV0gfiBmbGlwIGVuZAoKCQktLXg9NQoKCQlwNSA9IHBhcml0aWVzWzFdCgoJCWZsaXAgPSBwYXJpdGllc1s0XSB+IChwNSA8PCAxIHwgcDUgPj4gNjMpCgoJCXMgPSBzdFs1XQoKCQlmb3IgeSA9IDEsNSBkbyBzW3ldID0gc1t5XSB+IGZsaXAgZW5kCgoKCgkJLS0gcmhvcGkoKQoKCQlmb3IgeSA9IDEsNSBkbwoKCQkJbG9jYWwgcHkgPSBwZXJtdXRlZFt5XQoKCQkJbG9jYWwgcgoKCQkJZm9yIHggPSAxLDUgZG8KCgkJCQlzLCByID0gc3RbeF1beV0sIHJvdGF0aW9uT2Zmc2V0c1t4XVt5XQoKCQkJCXB5WygyKnggKyAzKnkpJTUgKyAxXSA9IChzIDw8IHIgfCBzID4+ICg2NC1yKSkKCgkJCWVuZAoKCQllbmQKCgoKCQktLSBjaGkoKSAtIHVucm9sbCB0aGUgbG9vcAoKCQktLWZvciB4ID0gMSw1IGRvCgoJCS0tCWZvciB5ID0gMSw1IGRvCgoJCS0tCQlsb2NhbCBjb21iaW5lZCA9ICh+IHBlcm11dGVkWyh4KSU1ICsxXVt5XSkgJiBwZXJtdXRlZFsoeCsxKSU1ICsxXVt5XQoKCQktLQkJc3RbeF1beV0gPSBwZXJtdXRlZFt4XVt5XSB+IGNvbWJpbmVkCgoJCS0tCWVuZAoKCQktLWVuZAoKCgoJCWxvY2FsIHAsIHAxLCBwMgoKCQktLXg9MQoKCQlzLCBwLCBwMSwgcDIgPSBzdFsxXSwgcGVybXV0ZWRbMV0sIHBlcm11dGVkWzJdLCBwZXJtdXRlZFszXQoKCQlmb3IgeSA9IDEsNSBkbyBzW3ldID0gcFt5XSB+ICh+IHAxW3ldKSAmIHAyW3ldIGVuZAoKCQktLXg9MgoKCQlzLCBwLCBwMSwgcDIgPSBzdFsyXSwgcGVybXV0ZWRbMl0sIHBlcm11dGVkWzNdLCBwZXJtdXRlZFs0XQoKCQlmb3IgeSA9IDEsNSBkbyBzW3ldID0gcFt5XSB+ICh+IHAxW3ldKSAmIHAyW3ldIGVuZAoKCQktLXg9MwoKCQlzLCBwLCBwMSwgcDIgPSBzdFszXSwgcGVybXV0ZWRbM10sIHBlcm11dGVkWzRdLCBwZXJtdXRlZFs1XQoKCQlmb3IgeSA9IDEsNSBkbyBzW3ldID0gcFt5XSB+ICh+IHAxW3ldKSAmIHAyW3ldIGVuZAoKCQktLXg9NAoKCQlzLCBwLCBwMSwgcDIgPSBzdFs0XSwgcGVybXV0ZWRbNF0sIHBlcm11dGVkWzVdLCBwZXJtdXRlZFsxXQoKCQlmb3IgeSA9IDEsNSBkbyBzW3ldID0gcFt5XSB+ICh+IHAxW3ldKSAmIHAyW3ldIGVuZAoKCQktLXg9NQoKCQlzLCBwLCBwMSwgcDIgPSBzdFs1XSwgcGVybXV0ZWRbNV0sIHBlcm11dGVkWzFdLCBwZXJtdXRlZFsyXQoKCQlmb3IgeSA9IDEsNSBkbyBzW3ldID0gcFt5XSB+ICh+IHAxW3ldKSAmIHAyW3ldIGVuZAoKCgoJCS0tIGlvdGEoKQoKCQlzdFsxXVsxXSA9IHN0WzFdWzFdIH4gcm91bmRDb25zdGFudHNbcm91bmRdCgoJZW5kCgplbmQKCgoKCgpsb2NhbCBmdW5jdGlvbiBhYnNvcmIoc3QsIGJ1ZmZlciwgYWxnb3JpdGhtKQoKCgoJbG9jYWwgYmxvY2tCeXRlcyA9IHN0LnJhdGUgLyA4CgoJbG9jYWwgYmxvY2tXb3JkcyA9IGJsb2NrQnl0ZXMgLyA4CgoKCgktLSBhcHBlbmQgMHgwMSBieXRlIGFuZCBwYWQgd2l0aCB6ZXJvcyB0byBibG9jayBzaXplIChyYXRlLzggYnl0ZXMpCgoJbG9jYWwgdG90YWxCeXRlcyA9ICNidWZmZXIgKyAxCgoJLS0gZm9yIGtlY2NhayAoMjAxMiBzdWJtaXNzaW9uKSwgdGhlIHBhZGRpbmcgaXMgYnl0ZSAweDAxIGZvbGxvd2VkIGJ5IHplcm9zCgoJLS0gZm9yIFNIQTMgKE5JU1QsIDIwMTUpLCB0aGUgcGFkZGluZyBpcyBieXRlIDB4MDYgZm9sbG93ZWQgYnkgemVyb3MKCgoKCWlmIGFsZ29yaXRobSA9PSAia2VjY2FrIiB0aGVuCgoJCWJ1ZmZlciA9IGJ1ZmZlciAuLiAoICdceDAxJyAuLiBzdHJpbmcuY2hhcigwKTpyZXAoYmxvY2tCeXRlcyAtICh0b3RhbEJ5dGVzICUgYmxvY2tCeXRlcykpKQoKCWVuZAoKCQoKCWlmIGFsZ29yaXRobSA9PSAic2hhMyIgdGhlbgoKCQlidWZmZXIgPSBidWZmZXIgLi4gKCAnXHgwNicgLi4gc3RyaW5nLmNoYXIoMCk6cmVwKGJsb2NrQnl0ZXMgLSAodG90YWxCeXRlcyAlIGJsb2NrQnl0ZXMpKSkKCgllbmQKCgoKCXRvdGFsQnl0ZXMgPSAjYnVmZmVyCgoKCgktLWNvbnZlcnQgZGF0YSB0byBhbiBhcnJheSBvZiB1NjQKCglsb2NhbCB3b3JkcyA9IHt9CgoJZm9yIGkgPSAxLCB0b3RhbEJ5dGVzIC0gKHRvdGFsQnl0ZXMgJSA4KSwgOCBkbwoKCQl3b3Jkc1sjd29yZHMgKyAxXSA9IHN0cmluZy51bnBhY2soJzxJOCcsIGJ1ZmZlciwgaSkKCgllbmQKCgoKCWxvY2FsIHRvdGFsV29yZHMgPSAjd29yZHMKCgktLSBPUiBmaW5hbCB3b3JkIHdpdGggMHg4MDAwMDAwMCB0byBzZXQgbGFzdCBiaXQgb2Ygc3RhdGUgdG8gMQoKCXdvcmRzW3RvdGFsV29yZHNdID0gd29yZHNbdG90YWxXb3Jkc10gfCAweDgwMDAwMDAwMDAwMDAwMDAKCgoKCS0tIFhPUiBibG9ja3MgaW50byBzdGF0ZQoKCWZvciBzdGFydEJsb2NrID0gMSwgdG90YWxXb3JkcywgYmxvY2tXb3JkcyBkbwoKCQlsb2NhbCBvZmZzZXQgPSAwCgoJCWZvciB5ID0gMSwgNSBkbwoKCQkJZm9yIHggPSAxLCA1IGRvCgoJCQkJaWYgb2Zmc2V0IDwgYmxvY2tXb3JkcyB0aGVuCgoJCQkJCWxvY2FsIGluZGV4ID0gc3RhcnRCbG9jaytvZmZzZXQKCgkJCQkJc3RbeF1beV0gPSBzdFt4XVt5XSB+IHdvcmRzW2luZGV4XQoKCQkJCQlvZmZzZXQgPSBvZmZzZXQgKyAxCgoJCQkJZW5kCgoJCQllbmQKCgkJZW5kCgoJCWtlY2Nha0Yoc3QpCgoJZW5kCgplbmQKCgoKCgotLSByZXR1cm5zIFtyYXRlXSBiaXRzIGZyb20gdGhlIHN0YXRlLCB3aXRob3V0IHBlcm11dGluZyBhZnRlcndhcmQuCgotLSBPbmx5IGZvciB1c2Ugd2hlbiB0aGUgc3RhdGUgd2lsbCBpbW1lZGlhdGVseSBiZSB0aHJvd24gYXdheSwKCi0tIGFuZCBub3QgdXNlZCBmb3IgbW9yZSBvdXRwdXQgbGF0ZXIKCmxvY2FsIGZ1bmN0aW9uIHNxdWVlemUoc3QpCgoJbG9jYWwgYmxvY2tCeXRlcyA9IHN0LnJhdGUgLyA4CgoJbG9jYWwgYmxvY2tXb3JkcyA9IGJsb2NrQnl0ZXMgLyA0CgoJLS0gZmV0Y2ggYmxvY2tzIG91dCBvZiBzdGF0ZQoKCWxvY2FsIGhhc2h0ID0ge30KCglsb2NhbCBvZmZzZXQgPSAxCgoJZm9yIHkgPSAxLCA1IGRvCgoJCWZvciB4ID0gMSwgNSBkbwoKCQkJaWYgb2Zmc2V0IDwgYmxvY2tXb3JkcyB0aGVuCgoJCQkJaGFzaHRbb2Zmc2V0XSA9IHN0cmluZy5wYWNrKCI8STgiLCBzdFt4XVt5XSkKCgkJCQlvZmZzZXQgPSBvZmZzZXQgKyAxCgoJCQllbmQKCgkJZW5kCgoJZW5kCgoJcmV0dXJuIHRhYmxlLmNvbmNhdChoYXNodCkKCmVuZAoKCgotLSBwcmltaXRpdmUgZnVuY3Rpb25zIChhc3N1bWUgcmF0ZSBpcyBhIHdob2xlIG11bHRpcGxlIG9mIDY0IGFuZCBsZW5ndGggaXMgYSB3aG9sZSBtdWx0aXBsZSBvZiA4KQoKbG9jYWwgZnVuY3Rpb24ga2VjY2FrSGFzaChyYXRlLCBsZW5ndGgsIGRhdGEsIGFsZ29yaXRobSkKCglsb2NhbCBzdGF0ZSA9IHsJezAsMCwwLDAsMH0sCgoJCQkJCXswLDAsMCwwLDB9LAoKCQkJCQl7MCwwLDAsMCwwfSwKCgkJCQkJezAsMCwwLDAsMH0sCgoJCQkJCXswLDAsMCwwLDB9LAoKCX0KCglzdGF0ZS5yYXRlID0gcmF0ZQoKCS0tIHRoZXNlIGFyZSBhbGxvY2F0ZWQgb25jZSwgYW5kIHJldXNlZAoKCXN0YXRlLnBlcm11dGVkID0geyB7fSwge30sIHt9LCB7fSwge30sIH0KCglzdGF0ZS5wYXJpdGllcyA9IHswLDAsMCwwLDB9CgoJYWJzb3JiKHN0YXRlLCBkYXRhLCBhbGdvcml0aG0pCgoJbG9jYWwgZW5jb2RlZCA9IHNxdWVlemUoc3RhdGUpOnN1YigxLGxlbmd0aC84KTsKCgoKCWxvY2FsIHB1YmxpYyA9IHt9CgoKCglwdWJsaWMuYXNTdHJpbmcgPSBmdW5jdGlvbigpCgoJCXJldHVybiBlbmNvZGVkCgoJZW5kCgoKCglwdWJsaWMuYXNIZXggPSBmdW5jdGlvbigpCgoJCXJldHVybiBIZXguc3RyaW5nVG9IZXgoZW5jb2RlZCkKCgllbmQKCgoKCXJldHVybiBwdWJsaWMKCmVuZAoKCgotLSBvdXRwdXQgdGFibGVzIGZvciBnZXR0aW5nIHRoZSBoYXNoIGFzIGJ5dGVzLCBzdHJpbmcsIG9yIGhleAoKbG9jYWwgZnVuY3Rpb24gc2hhM18yNTYoZGF0YSkgcmV0dXJuIGtlY2Nha0hhc2goMTA4OCwgMjU2LCBkYXRhLCAnc2hhMycpIGVuZAoKbG9jYWwgZnVuY3Rpb24gc2hhM181MTIoZGF0YSkgcmV0dXJuIGtlY2Nha0hhc2goNTc2LCA1MTIsIGRhdGEsICdzaGEzJykgZW5kCgpsb2NhbCBmdW5jdGlvbiBrZWNjYWsyNTYoZGF0YSkgcmV0dXJuIGtlY2Nha0hhc2goMTA4OCwgMjU2LCBkYXRhLCAna2VjY2FrJykgZW5kCgpsb2NhbCBmdW5jdGlvbiBrZWNjYWs1MTIoZGF0YSkgcmV0dXJuIGtlY2Nha0hhc2goNTc2LCA1MTIsIGRhdGEsICdrZWNjYWsnKSBlbmQKCgoKcmV0dXJuIHsKCglzaGEzXzI1NiA9IHNoYTNfMjU2LAoKCXNoYTNfNTEyID0gc2hhM181MTIsCgoJa2VjY2FrMjU2ID0ga2VjY2FrMjU2LAoKCWtlY2NhazUxMiA9IGtlY2NhazUxMgoKfQAAAAAAbG9jYWwgUEJLREYyID0gcmVxdWlyZSgiLmNyeXB0by5rZGYucGJrZGYyIikKCgoKbG9jYWwga2RmID0gewoKICAgIF92ZXJzaW9uID0gIjAuMC4xIiwKCiAgICBwYmtkZjIgPSBQQktERjIucGJrZGYyLAoKfTsKCgoKcmV0dXJuIGtkZgBCkJgTC9UdbG9jYWwgQml0ID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLmJpdCIpOwoKbG9jYWwgQXJyYXkgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuYXJyYXkiKTsKCmxvY2FsIFN0cmVhbSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5zdHJlYW0iKTsKCmxvY2FsIEhNQUMgPSByZXF1aXJlKCIuY3J5cHRvLm1hYy5obWFjIikKCgoKbG9jYWwgU0hBMSA9IHJlcXVpcmUoIi5jcnlwdG8uZGlnZXN0LnNoYTEiKTsKCmxvY2FsIFNIQTJfMjU2ID0gcmVxdWlyZSgiLmNyeXB0by5kaWdlc3Quc2hhMl8yNTYiKTsKCgoKbG9jYWwgQU5EID0gQml0LmJhbmQ7Cgpsb2NhbCBSU0hJRlQgPSBCaXQucnNoaWZ0OwoKCgpsb2NhbCB3b3JkMmJ5dGVzID0gZnVuY3Rpb24od29yZCkKCiAgICBsb2NhbCBiMCwgYjEsIGIyLCBiMzsKCiAgICBiMyA9IEFORCh3b3JkLCAweEZGKTsgd29yZCA9IFJTSElGVCh3b3JkLCA4KTsKCiAgICBiMiA9IEFORCh3b3JkLCAweEZGKTsgd29yZCA9IFJTSElGVCh3b3JkLCA4KTsKCiAgICBiMSA9IEFORCh3b3JkLCAweEZGKTsgd29yZCA9IFJTSElGVCh3b3JkLCA4KTsKCiAgICBiMCA9IEFORCh3b3JkLCAweEZGKTsKCiAgICByZXR1cm4gYjAsIGIxLCBiMiwgYjM7CgplbmQKCgoKbG9jYWwgUEJLREYyID0gZnVuY3Rpb24oKQoKCgogICAgbG9jYWwgcHVibGljID0ge307CgoKCiAgICBsb2NhbCBibG9ja0xlbiA9IDE2OwoKICAgIGxvY2FsIGRLZXlMZW4gPSAyNTY7CgogICAgbG9jYWwgaXRlcmF0aW9ucyA9IDQwOTY7CgoKCiAgICBsb2NhbCBzYWx0OwoKICAgIGxvY2FsIHBhc3N3b3JkOwoKCgoKCiAgICBsb2NhbCBQUkY7CgoKCiAgICBsb2NhbCBkS2V5OwoKCgoKCiAgICBwdWJsaWMuc2V0QmxvY2tMZW4gPSBmdW5jdGlvbihsZW4pCgogICAgICAgIGJsb2NrTGVuID0gbGVuOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLnNldERLZXlMZW4gPSBmdW5jdGlvbihsZW4pCgogICAgICAgIGRLZXlMZW4gPSBsZW4KCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5zZXRJdGVyYXRpb25zID0gZnVuY3Rpb24oaXRlcikKCiAgICAgICAgaXRlcmF0aW9ucyA9IGl0ZXI7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuc2V0U2FsdCA9IGZ1bmN0aW9uKHNhbHRCeXRlcykKCiAgICAgICAgc2FsdCA9IHNhbHRCeXRlczsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5zZXRQYXNzd29yZCA9IGZ1bmN0aW9uKHBhc3N3b3JkQnl0ZXMpCgogICAgICAgIHBhc3N3b3JkID0gcGFzc3dvcmRCeXRlczsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5zZXRQUkYgPSBmdW5jdGlvbihwcmYpCgogICAgICAgIFBSRiA9IHByZjsKCiAgICAgICAgcmV0dXJuIHB1YmxpYzsKCiAgICBlbmQKCgoKICAgIGxvY2FsIGJ1aWxkQmxvY2sgPSBmdW5jdGlvbihpKQoKICAgICAgICBsb2NhbCBiMCwgYjEsIGIyLCBiMyA9IHdvcmQyYnl0ZXMoaSk7CgogICAgICAgIGxvY2FsIGlpID0ge2IwLCBiMSwgYjIsIGIzfTsKCiAgICAgICAgbG9jYWwgcyA9IEFycmF5LmNvbmNhdChzYWx0LCBpaSk7CgoKCiAgICAgICAgbG9jYWwgb3V0ID0ge307CgoKCiAgICAgICAgUFJGLnNldEtleShwYXNzd29yZCk7CgogICAgICAgIGZvciBjID0gMSwgaXRlcmF0aW9ucyBkbwoKICAgICAgICAgICAgUFJGLmluaXQoKQoKICAgICAgICAgICAgICAgIC51cGRhdGUoU3RyZWFtLmZyb21BcnJheShzKSk7CgoKCiAgICAgICAgICAgIHMgPSBQUkYuZmluaXNoKCkuYXNCeXRlcygpOwoKICAgICAgICAgICAgaWYoYyA+IDEpIHRoZW4KCiAgICAgICAgICAgICAgICBvdXQgPSBBcnJheS5YT1Iob3V0LCBzKTsKCiAgICAgICAgICAgIGVsc2UKCiAgICAgICAgICAgICAgICBvdXQgPSBzOwoKICAgICAgICAgICAgZW5kCgogICAgICAgIGVuZAoKCgogICAgICAgIHJldHVybiBvdXQ7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuZmluaXNoID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCBibG9ja3MgPSBtYXRoLmNlaWwoZEtleUxlbiAvIGJsb2NrTGVuKTsKCgoKICAgICAgICBkS2V5ID0ge307CgoKCiAgICAgICAgZm9yIGIgPSAxLCBibG9ja3MgZG8KCiAgICAgICAgICAgIGxvY2FsIGJsb2NrID0gYnVpbGRCbG9jayhiKTsKCiAgICAgICAgICAgIGRLZXkgPSBBcnJheS5jb25jYXQoZEtleSwgYmxvY2spOwoKICAgICAgICBlbmQKCgoKICAgICAgICBpZihBcnJheS5zaXplKGRLZXkpID4gZEtleUxlbikgdGhlbiBkS2V5ID0gQXJyYXkudHJ1bmNhdGUoZEtleSwgZEtleUxlbik7IGVuZAoKCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNCeXRlcyA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIGRLZXk7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNIZXggPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBBcnJheS50b0hleChkS2V5KTsKCiAgICBlbmQKCgoKICAgIHB1YmxpYy5hc1N0cmluZyA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIEFycmF5LnRvU3RyaW5nKGRLZXkpOwoKICAgIGVuZAoKCgogICAgcmV0dXJuIHB1YmxpYzsKCmVuZAoKCgotLS0gQGNsYXNzIEFycmF5IDogdGFibGUKCgoKLS0tIFBCS0RGMiBrZXkgZGVyaXZhdGlvbiBmdW5jdGlvbgoKLS0tIEBwYXJhbSBwYXNzd29yZCAoQXJyYXkpIC0gVGhlIHBhc3N3b3JkIHRvIGRlcml2ZSB0aGUga2V5IGZyb20KCi0tLSBAcGFyYW0gc2FsdCAoQXJyYXkpIC0gVGhlIHNhbHQgdG8gdXNlCgotLS0gQHBhcmFtIGl0ZXJhdGlvbnMgbnVtYmVyIC0gVGhlIG51bWJlciBvZiBpdGVyYXRpb25zIHRvIHBlcmZvcm0KCi0tLSBAcGFyYW0ga2V5TGVuIG51bWJlciAtIFRoZSBsZW5ndGggb2YgdGhlIGtleSB0byBkZXJpdmUKCi0tLSBAcGFyYW0gZGlnZXN0PyBzdHJpbmcgLSBUaGUgZGlnZXN0IGFsZ29yaXRobSB0byB1c2UgKHNoYTEsIHNoYTI1NikuIERlZmF1bHRzIHRvIHNoYTEuCgotLS0gQHJldHVybnMgc3RyaW5nIC0gVGhlIGRlcml2ZWQga2V5Cgpsb2NhbCBwYmtkZjIgPSBmdW5jdGlvbihwYXNzd29yZCwgc2FsdCwgaXRlcmF0aW9ucywga2V5TGVuLCBkaWdlc3QpCgogICAgbG9jYWwgRGlnZXN0ID0gbmlsCgogICAgaWYgZGlnZXN0ID09ICJzaGExIiB0aGVuCgogICAgICAgIERpZ2VzdCA9IFNIQTEuU0hBMQoKICAgIGVsc2VpZiBkaWdlc3QgPT0gInNoYTI1NiIgdGhlbgoKICAgICAgICBEaWdlc3QgPSBTSEEyXzI1Ni5TSEEyXzI1NgoKICAgIGVsc2VpZiBkaWdlc3QgPT0gbmlsIHRoZW4KCiAgICAgICAgRGlnZXN0ID0gU0hBMS5TSEExCgogICAgZWxzZQoKICAgICAgICBlcnJvcigiVW5zdXBwb3J0ZWQgYWxnb3JpdGhtOiAiIC4uIGRpZ2VzdCkKCiAgICBlbmQKCgoKICAgIGxvY2FsIHByZiA9IEhNQUMuSE1BQygpLnNldEJsb2NrU2l6ZSg2NCkuc2V0RGlnZXN0KERpZ2VzdCk7CgoKCiAgICBsb2NhbCByZXMgPSBQQktERjIoKQoKICAgICAgICAgICAgLnNldFBSRihwcmYpCgogICAgICAgICAgICAuc2V0QmxvY2tMZW4oMTYpCgogICAgICAgICAgICAuc2V0REtleUxlbihrZXlMZW4pCgogICAgICAgICAgICAuc2V0SXRlcmF0aW9ucyhpdGVyYXRpb25zKQoKICAgICAgICAgICAgLnNldFNhbHQoc2FsdCkKCiAgICAgICAgICAgIC5zZXRQYXNzd29yZChwYXNzd29yZCkKCiAgICAgICAgICAgIC5maW5pc2goKQoKCgogICAgcmV0dXJuIHJlcwoKZW5kCgoKCnJldHVybiB7CgogICAgUEJLREYyID0gUEJLREYyLAoKICAgIHBia2RmMiA9IHBia2RmMgoKfTsAQvC1EwvSGWxvY2FsIEJpdCA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5iaXQiKTsKCmxvY2FsIFN0cmVhbSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5zdHJlYW0iKTsKCmxvY2FsIEFycmF5ID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLmFycmF5Iik7CgoKCmxvY2FsIFNIQTEgPSByZXF1aXJlKCIuY3J5cHRvLmRpZ2VzdC5zaGExIik7Cgpsb2NhbCBTSEEyXzI1NiA9IHJlcXVpcmUoIi5jcnlwdG8uZGlnZXN0LnNoYTJfMjU2Iik7CgoKCmxvY2FsIFhPUiA9IEJpdC5ieG9yOwoKCgpsb2NhbCBITUFDID0gZnVuY3Rpb24oKQoKICAgIGxvY2FsIHB1YmxpYyA9IHt9OwoKICAgIGxvY2FsIGJsb2NrU2l6ZSA9IDY0OwoKICAgIGxvY2FsIERpZ2VzdCA9IG5pbDsKCiAgICBsb2NhbCBvdXRlclBhZGRpbmcgPSB7fTsKCiAgICBsb2NhbCBpbm5lclBhZGRpbmcgPSB7fQoKICAgIGxvY2FsIGRpZ2VzdDsKCgoKICAgIHB1YmxpYy5zZXRCbG9ja1NpemUgPSBmdW5jdGlvbihieXRlcykKCiAgICAgICAgYmxvY2tTaXplID0gYnl0ZXM7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuc2V0RGlnZXN0ID0gZnVuY3Rpb24oZGlnZXN0TW9kdWxlKQoKICAgICAgICBEaWdlc3QgPSBkaWdlc3RNb2R1bGU7CgogICAgICAgIGRpZ2VzdCA9IERpZ2VzdCgpOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLnNldEtleSA9IGZ1bmN0aW9uKGtleSkKCiAgICAgICAgbG9jYWwga2V5U3RyZWFtOwoKICAgICAgICBpZiBEaWdlc3QgPT0gbmlsIHRoZW4KCiAgICAgICAgICAgIGVycm9yKCJEaWdlc3Qgbm90IHNldCIpOwoKICAgICAgICBlbmQKCiAgICAgICAgaWYgKEFycmF5LnNpemUoa2V5KSA+IGJsb2NrU2l6ZSkgdGhlbgoKICAgICAgICAgICAga2V5U3RyZWFtID0gU3RyZWFtLmZyb21BcnJheShEaWdlc3QoKQoKICAgICAgICAgICAgICAgIC51cGRhdGUoU3RyZWFtLmZyb21BcnJheShrZXkpKQoKICAgICAgICAgICAgICAgIC5maW5pc2goKQoKICAgICAgICAgICAgICAgIC5hc0J5dGVzKCkpOwoKICAgICAgICBlbHNlCgogICAgICAgICAgICBrZXlTdHJlYW0gPSBTdHJlYW0uZnJvbUFycmF5KGtleSk7CgogICAgICAgIGVuZAoKCgogICAgICAgIG91dGVyUGFkZGluZyA9IHt9OwoKICAgICAgICBpbm5lclBhZGRpbmcgPSB7fTsKCgoKICAgICAgICBmb3IgaSA9IDEsIGJsb2NrU2l6ZSBkbwoKICAgICAgICAgICAgbG9jYWwgYnl0ZSA9IGtleVN0cmVhbSgpOwoKICAgICAgICAgICAgaWYgYnl0ZSA9PSBuaWwgdGhlbiBieXRlID0gMHgwMDsgZW5kCgogICAgICAgICAgICBvdXRlclBhZGRpbmdbaV0gPSBYT1IoMHg1QywgYnl0ZSk7CgogICAgICAgICAgICBpbm5lclBhZGRpbmdbaV0gPSBYT1IoMHgzNiwgYnl0ZSk7CgogICAgICAgIGVuZAoKCgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuaW5pdCA9IGZ1bmN0aW9uKCkKCiAgICAgICAgZGlnZXN0LmluaXQoKQoKICAgICAgICAgICAgLnVwZGF0ZShTdHJlYW0uZnJvbUFycmF5KGlubmVyUGFkZGluZykpOwoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLnVwZGF0ZSA9IGZ1bmN0aW9uKG1lc3NhZ2VTdHJlYW0pCgogICAgICAgIGRpZ2VzdC51cGRhdGUobWVzc2FnZVN0cmVhbSk7CgogICAgICAgIHJldHVybiBwdWJsaWM7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuZmluaXNoID0gZnVuY3Rpb24oKQoKICAgICAgICBsb2NhbCBpbm5lciA9IGRpZ2VzdC5maW5pc2goKS5hc0J5dGVzKCk7CgogICAgICAgIGRpZ2VzdC5pbml0KCkKCiAgICAgICAgICAgIC51cGRhdGUoU3RyZWFtLmZyb21BcnJheShvdXRlclBhZGRpbmcpKQoKICAgICAgICAgICAgLnVwZGF0ZShTdHJlYW0uZnJvbUFycmF5KGlubmVyKSkKCiAgICAgICAgICAgIC5maW5pc2goKTsKCgoKICAgICAgICByZXR1cm4gcHVibGljOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzQnl0ZXMgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBkaWdlc3QuYXNCeXRlcygpOwoKICAgIGVuZAoKCgogICAgcHVibGljLmFzSGV4ID0gZnVuY3Rpb24oKQoKICAgICAgICByZXR1cm4gZGlnZXN0LmFzSGV4KCk7CgogICAgZW5kCgoKCiAgICBwdWJsaWMuYXNTdHJpbmcgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBkaWdlc3QuYXNTdHJpbmcoKTsKCiAgICBlbmQKCgoKICAgIHJldHVybiBwdWJsaWM7CgplbmQKCgoKLS0tIEBjbGFzcyBBcnJheSA6IHRhYmxlCgotLS0gQGNsYXNzIFN0cmVhbSA6IHRhYmxlCgoKCi0tLSBITUFDIGZ1bmN0aW9uIGZvciBnZW5lcmF0aW5nIGEgaGFzaC1iYXNlZCBtZXNzYWdlIGF1dGhlbnRpY2F0aW9uIGNvZGUKCi0tLSBAcGFyYW0gZGF0YSAoU3RyZWFtKSAtIFRoZSBkYXRhIHRvIGhhc2ggYW5kIGF1dGhlbnRpY2F0ZQoKLS0tIEBwYXJhbSBrZXkgKEFycmF5KSAtIFRoZSBrZXkgdG8gdXNlIGZvciB0aGUgSE1BQwoKLS0tIEBwYXJhbSBhbGdvcml0aG0/IChzdHJpbmcpIC0gVGhlIGFsZ29yaXRobSB0byB1c2UgZm9yIHRoZSBITUFDIChzaGExLCBzaGEyNTYpLiBEZWZhdWx0cyB0byAic2hhMSIKCi0tLSBAcmV0dXJucyB0YWJsZSAtIEEgdGFibGUgY29udGFpbmluZyB0aGUgSE1BQyBpbiBieXRlcywgc3RyaW5nLCBhbmQgaGV4IGZvcm1hdHMuCgpsb2NhbCBobWFjID0gZnVuY3Rpb24oZGF0YSwga2V5LCBhbGdvcml0aG0pCgogICAgbG9jYWwgZGlnZXN0ID0gbmlsCgogICAgaWYgYWxnb3JpdGhtID09ICJzaGExIiB0aGVuCgogICAgICAgIGRpZ2VzdCA9IFNIQTEuU0hBMQoKICAgIGVsc2VpZiBhbGdvcml0aG0gPT0gInNoYTI1NiIgdGhlbgoKICAgICAgICBkaWdlc3QgPSBTSEEyXzI1Ni5TSEEyXzI1NgoKICAgIGVsc2VpZiBhbGdvcml0aG0gPT0gbmlsIHRoZW4KCiAgICAgICAgZGlnZXN0ID0gU0hBMS5TSEExCgogICAgZWxzZQoKICAgICAgICBlcnJvcigiVW5zdXBwb3J0ZWQgYWxnb3JpdGhtOiAiIC4uIGFsZ29yaXRobSkKCiAgICBlbmQKCgoKICAgIGxvY2FsIHJlcyA9IEhNQUMoKQoKICAgICAgICAgICAgICAgIC5zZXRCbG9ja1NpemUoMzIpCgogICAgICAgICAgICAgICAgLnNldERpZ2VzdChkaWdlc3QpCgogICAgICAgICAgICAgICAgLnNldEtleShrZXkpCgogICAgICAgICAgICAgICAgLmluaXQoKQoKICAgICAgICAgICAgICAgIC51cGRhdGUoZGF0YSkKCiAgICAgICAgICAgICAgICAuZmluaXNoKCkKCgoKCXJldHVybiByZXMKCmVuZAoKCgpyZXR1cm4gewoKICAgIGhtYWMgPSBobWFjLAoKICAgIEhNQUMgPSBITUFDCgp9OwBC0M8TC4EBbG9jYWwgSG1hYyA9IHJlcXVpcmUoIi5jcnlwdG8ubWFjLmhtYWMiKQoKCgpsb2NhbCBtYWMgPSB7CgogICAgX3ZlcnNpb24gPSAiMC4wLjEiLAoKICAgIGNyZWF0ZUhtYWMgPSBIbWFjLmhtYWMsCgp9OwoKCgpyZXR1cm4gbWFjAELg0BMLpTpsb2NhbCBaZXJvUGFkZGluZyA9IGZ1bmN0aW9uKGJsb2NrU2l6ZSwgYnl0ZUNvdW50KQoKCgogICAgbG9jYWwgcGFkZGluZ0NvdW50ID0gYmxvY2tTaXplIC0gKChieXRlQ291bnQgLTEpICUgYmxvY2tTaXplKSArIDE7CgogICAgbG9jYWwgYnl0ZXNMZWZ0ID0gcGFkZGluZ0NvdW50OwoKCgogICAgbG9jYWwgc3RyZWFtID0gZnVuY3Rpb24oKQoKICAgICAgICBpZiBieXRlc0xlZnQgPiAwIHRoZW4KCiAgICAgICAgICAgIGJ5dGVzTGVmdCA9IGJ5dGVzTGVmdCAtIDE7CgogICAgICAgICAgICByZXR1cm4gMHgwMDsKCiAgICAgICAgZWxzZQoKICAgICAgICAgICAgcmV0dXJuIG5pbDsKCiAgICAgICAgZW5kCgogICAgZW5kCgogICAgcmV0dXJuIHN0cmVhbTsKCmVuZAoKCgpyZXR1cm4gWmVyb1BhZGRpbmc7Cgpsb2NhbCBCaXQgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuYml0Iik7Cgpsb2NhbCBRdWV1ZSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5xdWV1ZSIpOwoKCgpsb2NhbCBYT1IgPSBCaXQuYnhvcjsKCgoKbG9jYWwgQXJyYXkgPSB7fTsKCgoKQXJyYXkuc2l6ZSA9IGZ1bmN0aW9uKGFycmF5KQoKICAgIHJldHVybiAjYXJyYXk7CgplbmQKCgoKQXJyYXkuZnJvbVN0cmluZyA9IGZ1bmN0aW9uKHN0cmluZykKCiAgICBsb2NhbCBieXRlcyA9IHt9OwoKCgogICAgbG9jYWwgaSA9IDE7CgogICAgbG9jYWwgYnl0ZSA9IHN0cmluZy5ieXRlKHN0cmluZywgaSk7CgogICAgd2hpbGUgYnl0ZSB+PSBuaWwgZG8KCiAgICAgICAgYnl0ZXNbaV0gPSBieXRlOwoKICAgICAgICBpID0gaSArIDE7CgogICAgICAgIGJ5dGUgPSBzdHJpbmcuYnl0ZShzdHJpbmcsIGkpOwoKICAgIGVuZAoKCgogICAgcmV0dXJuIGJ5dGVzOwoKCgplbmQKCgoKQXJyYXkudG9TdHJpbmcgPSBmdW5jdGlvbihieXRlcykKCiAgICBsb2NhbCBjaGFycyA9IHt9OwoKICAgIGxvY2FsIGkgPSAxOwoKCgogICAgbG9jYWwgYnl0ZSA9IGJ5dGVzW2ldOwoKICAgIHdoaWxlIGJ5dGUgfj0gbmlsIGRvCgogICAgICAgIGNoYXJzW2ldID0gc3RyaW5nLmNoYXIoYnl0ZSk7CgogICAgICAgIGkgPSBpICsgMTsKCiAgICAgICAgYnl0ZSA9IGJ5dGVzW2ldOwoKICAgIGVuZAoKCgogICAgcmV0dXJuIHRhYmxlLmNvbmNhdChjaGFycywgIiIpOwoKZW5kCgoKCkFycmF5LmZyb21TdHJlYW0gPSBmdW5jdGlvbihzdHJlYW0pCgogICAgbG9jYWwgYXJyYXkgPSB7fTsKCiAgICBsb2NhbCBpID0gMTsKCgoKICAgIGxvY2FsIGJ5dGUgPSBzdHJlYW0oKTsKCiAgICB3aGlsZSBieXRlIH49IG5pbCBkbwoKICAgICAgICBhcnJheVtpXSA9IGJ5dGU7CgogICAgICAgIGkgPSBpICsgMTsKCiAgICAgICAgYnl0ZSA9IHN0cmVhbSgpOwoKICAgIGVuZAoKCgogICAgcmV0dXJuIGFycmF5OwoKZW5kCgoKCkFycmF5LnJlYWRGcm9tUXVldWUgPSBmdW5jdGlvbihxdWV1ZSwgc2l6ZSkKCiAgICBsb2NhbCBhcnJheSA9IHt9OwoKCgogICAgZm9yIGkgPSAxLCBzaXplIGRvCgogICAgICAgIGFycmF5W2ldID0gcXVldWUucG9wKCk7CgogICAgZW5kCgoKCiAgICByZXR1cm4gYXJyYXk7CgplbmQKCgoKQXJyYXkud3JpdGVUb1F1ZXVlID0gZnVuY3Rpb24ocXVldWUsIGFycmF5KQoKICAgIGxvY2FsIHNpemUgPSBBcnJheS5zaXplKGFycmF5KTsKCgoKICAgIGZvciBpID0gMSwgc2l6ZSBkbwoKICAgICAgICBxdWV1ZS5wdXNoKGFycmF5W2ldKTsKCiAgICBlbmQKCmVuZAoKCgpBcnJheS50b1N0cmVhbSA9IGZ1bmN0aW9uKGFycmF5KQoKICAgIGxvY2FsIHF1ZXVlID0gUXVldWUoKTsKCiAgICBsb2NhbCBpID0gMTsKCgoKICAgIGxvY2FsIGJ5dGUgPSBhcnJheVtpXTsKCiAgICB3aGlsZSBieXRlIH49IG5pbCBkbwoKICAgICAgICBxdWV1ZS5wdXNoKGJ5dGUpOwoKICAgICAgICBpID0gaSArIDE7CgogICAgICAgIGJ5dGUgPSBhcnJheVtpXTsKCiAgICBlbmQKCgoKICAgIHJldHVybiBxdWV1ZS5wb3A7CgplbmQKCgoKCgpsb2NhbCBmcm9tSGV4VGFibGUgPSB7fTsKCmZvciBpID0gMCwgMjU1IGRvCgogICAgZnJvbUhleFRhYmxlW3N0cmluZy5mb3JtYXQoIiUwMlgiLCBpKV0gPSBpOwoKICAgIGZyb21IZXhUYWJsZVtzdHJpbmcuZm9ybWF0KCIlMDJ4IiwgaSldID0gaTsKCmVuZAoKCgpBcnJheS5mcm9tSGV4ID0gZnVuY3Rpb24oaGV4KQoKICAgIGxvY2FsIGFycmF5ID0ge307CgoKCiAgICBmb3IgaSA9IDEsIHN0cmluZy5sZW4oaGV4KSAvIDIgZG8KCiAgICAgICAgbG9jYWwgaCA9IHN0cmluZy5zdWIoaGV4LCBpICogMiAtIDEsIGkgKiAyKTsKCiAgICAgICAgYXJyYXlbaV0gPSBmcm9tSGV4VGFibGVbaF07CgogICAgZW5kCgoKCiAgICByZXR1cm4gYXJyYXk7CgplbmQKCgoKCgpsb2NhbCB0b0hleFRhYmxlID0ge307Cgpmb3IgaSA9IDAsIDI1NSBkbwoKICAgIHRvSGV4VGFibGVbaV0gPSBzdHJpbmcuZm9ybWF0KCIlMDJYIiwgaSk7CgplbmQKCgoKQXJyYXkudG9IZXggPSBmdW5jdGlvbihhcnJheSkKCiAgICBsb2NhbCBoZXggPSB7fTsKCiAgICBsb2NhbCBpID0gMTsKCgoKICAgIGxvY2FsIGJ5dGUgPSBhcnJheVtpXTsKCiAgICB3aGlsZSBieXRlIH49IG5pbCBkbwoKICAgICAgICBoZXhbaV0gPSB0b0hleFRhYmxlW2J5dGVdOwoKICAgICAgICBpID0gaSArIDE7CgogICAgICAgIGJ5dGUgPSBhcnJheVtpXTsKCiAgICBlbmQKCgoKICAgIHJldHVybiB0YWJsZS5jb25jYXQoaGV4LCAiIik7CgoKCmVuZAoKCgpBcnJheS5jb25jYXQgPSBmdW5jdGlvbihhLCBiKQoKICAgIGxvY2FsIGNvbmNhdCA9IHt9OwoKICAgIGxvY2FsIG91dCA9IDE7CgoKCiAgICBsb2NhbCBpID0gMTsKCiAgICBsb2NhbCBieXRlID0gYVtpXTsKCiAgICB3aGlsZSBieXRlIH49IG5pbCBkbwoKICAgICAgICBjb25jYXRbb3V0XSA9IGJ5dGU7CgogICAgICAgIGkgPSBpICsgMTsKCiAgICAgICAgb3V0ID0gb3V0ICsgMTsKCiAgICAgICAgYnl0ZSA9IGFbaV07CgogICAgZW5kCgoKCiAgICBpID0gMTsKCiAgICBieXRlID0gYltpXTsKCiAgICB3aGlsZSBieXRlIH49IG5pbCBkbwoKICAgICAgICBjb25jYXRbb3V0XSA9IGJ5dGU7CgogICAgICAgIGkgPSBpICsgMTsKCiAgICAgICAgb3V0ID0gb3V0ICsgMTsKCiAgICAgICAgYnl0ZSA9IGJbaV07CgogICAgZW5kCgoKCiAgICByZXR1cm4gY29uY2F0OwoKZW5kCgoKCkFycmF5LnRydW5jYXRlID0gZnVuY3Rpb24oYSwgbmV3U2l6ZSkKCiAgICBsb2NhbCB4ID0ge307CgoKCiAgICBmb3IgaSA9IDEsIG5ld1NpemUgZG8KCiAgICAgICAgeFtpXSA9IGFbaV07CgogICAgZW5kCgoKCiAgICByZXR1cm4geDsKCmVuZAoKCgpBcnJheS5YT1IgPSBmdW5jdGlvbihhLCBiKQoKICAgIGxvY2FsIHggPSB7fTsKCgoKICAgIGZvciBrLCB2IGluIHBhaXJzKGEpIGRvCgogICAgICAgIHhba10gPSBYT1IodiwgYltrXSk7CgogICAgZW5kCgoKCiAgICByZXR1cm4geDsKCmVuZAoKCgpBcnJheS5zdWJzdGl0dXRlID0gZnVuY3Rpb24oaW5wdXQsIHNib3gpCgogICAgbG9jYWwgb3V0ID0ge307CgoKCiAgICBmb3IgaywgdiBpbiBwYWlycyhpbnB1dCkgZG8KCiAgICAgICAgb3V0W2tdID0gc2JveFt2XTsKCiAgICBlbmQKCgoKICAgIHJldHVybiBvdXQ7CgplbmQKCgoKQXJyYXkucGVybXV0ZSA9IGZ1bmN0aW9uKGlucHV0LCBwYm94KQoKICAgIGxvY2FsIG91dCA9IHt9OwoKCgogICAgZm9yIGssIHYgaW4gcGFpcnMocGJveCkgZG8KCiAgICAgICAgb3V0W2tdID0gaW5wdXRbdl07CgogICAgZW5kCgoKCiAgICByZXR1cm4gb3V0OwoKZW5kCgoKCkFycmF5LmNvcHkgPSBmdW5jdGlvbihpbnB1dCkKCiAgICBsb2NhbCBvdXQgPSB7fTsKCgoKICAgIGZvciBrLCB2IGluIHBhaXJzKGlucHV0KSBkbwoKICAgICAgICBvdXRba10gPSB2OwoKICAgIGVuZAoKICAgIHJldHVybiBvdXQ7CgplbmQKCgoKQXJyYXkuc2xpY2UgPSBmdW5jdGlvbihpbnB1dCwgc3RhcnQsIHN0b3ApCgogICAgbG9jYWwgb3V0ID0ge307CgoKCiAgICBpZiBzdGFydCA9PSBuaWwgdGhlbgoKICAgICAgICBzdGFydCA9IDEKCiAgICBlbHNlaWYgc3RhcnQgPCAwIHRoZW4KCiAgICAgICAgc3RhcnQgPSAjaW5wdXQgKyBzdGFydCArIDEKCiAgICBlbmQKCiAgICBpZiBzdG9wID09IG5pbCB0aGVuCgogICAgICAgIHN0b3AgPSAjaW5wdXQKCiAgICBlbHNlaWYgc3RvcCA8IDAgdGhlbgoKICAgICAgICBzdG9wID0gI2lucHV0ICsgc3RvcCArIDEKCiAgICBlbmQKCgoKICAgIGZvciBpID0gc3RhcnQsIHN0b3AgZG8KCiAgICAgICAgdGFibGUuaW5zZXJ0KG91dCwgaW5wdXRbaV0pCgogICAgZW5kCgoKCiAgICByZXR1cm4gb3V0OwoKZW5kCgoKCnJldHVybiBBcnJheTsAAAAAbG9jYWwgb2ssIGUKCm9rID0gbmlsCgppZiBub3Qgb2sgdGhlbgoKICAgIG9rLCBlID0gcGNhbGwocmVxdWlyZSwgImJpdCIpIC0tIHRoZSBMdWFKSVQgb25lID8KCmVuZAoKaWYgbm90IG9rIHRoZW4KCiAgICBvaywgZSA9IHBjYWxsKHJlcXVpcmUsICJiaXQzMiIpIC0tIEx1YSA1LjIKCmVuZAoKaWYgbm90IG9rIHRoZW4KCiAgICBvaywgZSA9IHBjYWxsKHJlcXVpcmUsICJiaXQubnVtYmVybHVhIikgLS0gZm9yIEx1YSA1LjEsIGh0dHBzOi8vZ2l0aHViLmNvbS90c3QyMDA1L2x1YS1iaXQtbnVtYmVybHVhLwoKZW5kCgppZiBub3Qgb2sgdGhlbgoKICAgIGVycm9yKCJubyBiaXR3aXNlIHN1cHBvcnQgZm91bmQiLCAyKQoKZW5kCgphc3NlcnQodHlwZShlKSA9PSAidGFibGUiLCAiaW52YWxpZCBiaXQgbW9kdWxlIikKCgoKLS0gV29ya2Fyb3VuZCB0byBzdXBwb3J0IEx1YSA1LjIgYml0MzIgQVBJIHdpdGggdGhlIEx1YUpJVCBiaXQgb25lCgppZiBlLnJvbCBhbmQgbm90IGUubHJvdGF0ZSB0aGVuCgogICAgZS5scm90YXRlID0gZS5yb2wKCmVuZAoKaWYgZS5yb3IgYW5kIG5vdCBlLnJyb3RhdGUgdGhlbgoKICAgIGUucnJvdGF0ZSA9IGUucm9yCgplbmQKCgoKLS0gV29ya2Fyb3VuZCB0byBzdXBwb3J0IGluY29tcGxldGUgYml0IG9wZXJhdGlvbnMgc2V0CgppZiBub3QgZS5yb3IgYW5kIG5vdCBlLnJyb3RhdGUgdGhlbgoKICAgIGxvY2FsIHJvciA9IGZ1bmN0aW9uKGIsIG4pCgogICAgICAgIHJldHVybiBlLmJvcihlLnJzaGlmdChiLCBuKSwgZS5sc2hpZnQoYiwgMzIgLSBuKSkKCiAgICBlbmQKCgoKICAgIGUucm9yID0gcm9yCgogICAgZS5ycm90YXRlID0gcm9yCgplbmQKCgoKaWYgbm90IGUucm9sIGFuZCBub3QgZS5scm90YXRlIHRoZW4KCiAgICBsb2NhbCByb2wgPSBmdW5jdGlvbihiLCBuKQoKICAgICAgICByZXR1cm4gZS5ib3IoZS5sc2hpZnQoYiwgbiksIGUucnNoaWZ0KGIsIDMyIC0gbikpCgogICAgZW5kCgoKCiAgICBlLnJvbCA9IHJvbAoKICAgIGUubHJvdGF0ZSA9IHJvbAoKZW5kCgoKCnJldHVybiBlAAAAAAAKCi0tLSBDb252ZXJ0cyBhIHN0cmluZyB0byBpdHMgaGV4YWRlY2ltYWwgcmVwcmVzZW50YXRpb24uCgotLS0gQHBhcmFtIHMgc3RyaW5nIFRoZSBpbnB1dCBzdHJpbmcuCgotLS0gQHBhcmFtIGxuPyBudW1iZXIgLSBUaGUgbnVtYmVyIG9mIGNoYXJhY3RlcnMgcGVyIGxpbmUuIElmIG5vdCBwcm92aWRlZCwgdGhlIG91dHB1dCB3aWxsIGJlIGEgc2luZ2xlIGxpbmUuCgotLS0gQHBhcmFtIHNlcD8gc3RyaW5nIC0gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGVhY2ggcGFpciBvZiBoZXhhZGVjaW1hbCBjaGFyYWN0ZXJzLiBEZWZhdWx0cyB0byBhbiBlbXB0eSBzdHJpbmcuCgotLS0gQHJldHVybiBzdHJpbmcgVGhlIC0gaGV4YWRlY2ltYWwgcmVwcmVzZW50YXRpb24gb2YgdGhlIGlucHV0IHN0cmluZy4KCmxvY2FsIGZ1bmN0aW9uIHN0cmluZ1RvSGV4KHMsIGxuLCBzZXApCgoJaWYgI3MgPT0gMCB0aGVuIHJldHVybiAiIiBlbmQKCglpZiBub3QgbG4gdGhlbgoKCQlyZXR1cm4gKHM6Z3N1YignLicsCgoJCQlmdW5jdGlvbihjKSByZXR1cm4gc3RyaW5nLmZvcm1hdCgnJTAyeCcsIHN0cmluZy5ieXRlKGMpKSBlbmQKCgkJKSkKCgllbmQKCglzZXAgPSBzZXAgb3IgIiIKCglsb2NhbCB0ID0ge30KCglmb3IgaSA9IDEsICNzIC0gMSBkbwoKCQl0WyN0ICsgMV0gPSBzdHJpbmcuZm9ybWF0KCIlMDJ4JXMiLCBzOmJ5dGUoaSksCgoJCQkoaSAlIGxuID09IDApIGFuZCAnXG4nIG9yIHNlcCkKCgllbmQKCgl0WyN0ICsgMV0gPSBzdHJpbmcuZm9ybWF0KCIlMDJ4IiwgczpieXRlKCNzKSkKCglyZXR1cm4gdGFibGUuY29uY2F0KHQpCgplbmQKCgoKLS0tIENvbnZlcnRzIGEgaGV4IGVuY29kZWQgc3RyaW5nIHRvIGl0cyBjb3JyZXNwb25kaW5nIGRlY29kZWQgc3RyaW5nLgoKLS0tIElmIHRoZSBvcHRpb25hbCBwYXJhbWV0ZXIgYHVuc2FmZWAgaXMgZGVmaW5lZCwgaXQgYXNzdW1lcyB0aGF0IHRoZSBoZXggc3RyaW5nIGlzIHdlbGwtZm9ybWVkCgotLS0gKG5vIGNoZWNrcywgbm8gd2hpdGVzcGFjZSByZW1vdmFsKS4gQnkgZGVmYXVsdCwgaXQgcmVtb3ZlcyB3aGl0ZXNwYWNlIChpbmNsdWRpbmcgbmV3bGluZXMpCgotLS0gYW5kIGNoZWNrcyB0aGF0IHRoZSBoZXggc3RyaW5nIGlzIHdlbGwtZm9ybWVkLgoKLS0tIEBwYXJhbSBocyAoc3RyaW5nKSBUaGUgaGV4IGVuY29kZWQgc3RyaW5nIHRvIGJlIGRlY29kZWQuCgotLS0gQHBhcmFtIHVuc2FmZSAoYm9vbGVhbikgW29wdGlvbmFsXSBJZiB0cnVlLCBhc3N1bWVzIHRoZSBoZXggc3RyaW5nIGlzIHdlbGwtZm9ybWVkLgoKLS0tIEByZXR1cm4gKHN0cmluZykgVGhlIGRlY29kZWQgc3RyaW5nLgoKbG9jYWwgZnVuY3Rpb24gaGV4VG9TdHJpbmcoaHMsIHVuc2FmZSkKCglsb2NhbCB0b251bWJlciA9IHRvbnVtYmVyCgoJaWYgbm90IHVuc2FmZSB0aGVuCgoJCWhzID0gc3RyaW5nLmdzdWIoaHMsICIlcysiLCAiIikgLS0gcmVtb3ZlIHdoaXRlc3BhY2VzCgoJCWlmIHN0cmluZy5maW5kKGhzLCAnW14wLTlBLVphLXpdJykgb3IgI2hzICUgMiB+PSAwIHRoZW4KCgkJCWVycm9yKCJpbnZhbGlkIGhleCBzdHJpbmciKQoKCQllbmQKCgllbmQKCglsb2NhbCBjb3VudCA9ICBzdHJpbmcuZ3N1YihocywgJygleCV4KScsZnVuY3Rpb24oYykgcmV0dXJuIHN0cmluZy5jaGFyKHRvbnVtYmVyKGMsIDE2KSkgZW5kKQoKCXJldHVybiBjb3VudAoKZW5kCgoKCnJldHVybiB7CgoJc3RyaW5nVG9IZXggPSBzdHJpbmdUb0hleCwKCgloZXhUb1N0cmluZyA9IGhleFRvU3RyaW5nLAoKfWxvY2FsIEJpdCA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5iaXQiKQoKbG9jYWwgUXVldWUgPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwucXVldWUiKQoKbG9jYWwgU3RyZWFtID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLnN0cmVhbSIpCgpsb2NhbCBIZXggPSByZXF1aXJlKCIuY3J5cHRvLnV0aWwuaGV4IikKCmxvY2FsIEFycmF5ID0gcmVxdWlyZSgiLmNyeXB0by51dGlsLmFycmF5IikKCgoKbG9jYWwgdXRpbCA9IHsKCiAgICBfdmVyc2lvbiA9ICIwLjAuMSIsCgogICAgYml0ID0gQml0LAoKICAgIHF1ZXVlID0gUXVldWUsCgogICAgc3RyZWFtID0gU3RyZWFtLAoKICAgIGhleCA9IEhleCwKCiAgICBhcnJheSA9IEFycmF5LAoKfQoKCgpyZXR1cm4gdXRpbAoAQpCLFAvVXGxvY2FsIFF1ZXVlID0gZnVuY3Rpb24oKQoKICAgIGxvY2FsIHF1ZXVlID0ge307CgogICAgbG9jYWwgdGFpbCA9IDA7CgogICAgbG9jYWwgaGVhZCA9IDA7CgoKCiAgICBsb2NhbCBwdWJsaWMgPSB7fTsKCgoKICAgIHB1YmxpYy5wdXNoID0gZnVuY3Rpb24ob2JqKQoKICAgICAgICBxdWV1ZVtoZWFkXSA9IG9iajsKCiAgICAgICAgaGVhZCA9IGhlYWQgKyAxOwoKICAgICAgICByZXR1cm47CgogICAgZW5kCgoKCiAgICBwdWJsaWMucG9wID0gZnVuY3Rpb24oKQoKICAgICAgICBpZiB0YWlsIDwgaGVhZAoKICAgICAgICB0aGVuCgogICAgICAgICAgICBsb2NhbCBvYmogPSBxdWV1ZVt0YWlsXTsKCiAgICAgICAgICAgIHF1ZXVlW3RhaWxdID0gbmlsOwoKICAgICAgICAgICAgdGFpbCA9IHRhaWwgKyAxOwoKICAgICAgICAgICAgcmV0dXJuIG9iajsKCiAgICAgICAgZWxzZQoKICAgICAgICAgICAgcmV0dXJuIG5pbDsKCiAgICAgICAgZW5kCgogICAgZW5kCgoKCiAgICBwdWJsaWMuc2l6ZSA9IGZ1bmN0aW9uKCkKCiAgICAgICAgcmV0dXJuIGhlYWQgLSB0YWlsOwoKICAgIGVuZAoKCgogICAgcHVibGljLmdldEhlYWQgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiBoZWFkOwoKICAgIGVuZAoKCgogICAgcHVibGljLmdldFRhaWwgPSBmdW5jdGlvbigpCgogICAgICAgIHJldHVybiB0YWlsOwoKICAgIGVuZAoKCgogICAgcHVibGljLnJlc2V0ID0gZnVuY3Rpb24oKQoKICAgICAgICBxdWV1ZSA9IHt9OwoKICAgICAgICBoZWFkID0gMDsKCiAgICAgICAgdGFpbCA9IDA7CgogICAgZW5kCgoKCiAgICByZXR1cm4gcHVibGljOwoKZW5kCgoKCnJldHVybiBRdWV1ZTtsb2NhbCBRdWV1ZSA9IHJlcXVpcmUoIi5jcnlwdG8udXRpbC5xdWV1ZSIpOwoKCgpsb2NhbCBTdHJlYW0gPSB7fTsKCgoKCgpTdHJlYW0uZnJvbVN0cmluZyA9IGZ1bmN0aW9uKHN0cmluZykKCiAgICBsb2NhbCBpID0gMDsKCiAgICByZXR1cm4gZnVuY3Rpb24oKQoKICAgICAgICBpID0gaSArIDE7CgogICAgICAgIHJldHVybiBzdHJpbmcuYnl0ZShzdHJpbmcsIGkpOwoKICAgIGVuZAoKZW5kCgoKCgoKU3RyZWFtLnRvU3RyaW5nID0gZnVuY3Rpb24oc3RyZWFtKQoKICAgIGxvY2FsIGFycmF5ID0ge307CgogICAgbG9jYWwgaSA9IDE7CgoKCiAgICBsb2NhbCBieXRlID0gc3RyZWFtKCk7CgogICAgd2hpbGUgYnl0ZSB+PSBuaWwgZG8KCiAgICAgICAgYXJyYXlbaV0gPSBzdHJpbmcuY2hhcihieXRlKTsKCiAgICAgICAgaSA9IGkgKyAxOwoKICAgICAgICBieXRlID0gc3RyZWFtKCk7CgogICAgZW5kCgoKCiAgICByZXR1cm4gdGFibGUuY29uY2F0KGFycmF5KTsKCmVuZAoKCgoKClN0cmVhbS5mcm9tQXJyYXkgPSBmdW5jdGlvbihhcnJheSkKCiAgICBsb2NhbCBxdWV1ZSA9IFF1ZXVlKCk7CgogICAgbG9jYWwgaSA9IDE7CgoKCiAgICBsb2NhbCBieXRlID0gYXJyYXlbaV07CgogICAgd2hpbGUgYnl0ZSB+PSBuaWwgZG8KCiAgICAgICAgcXVldWUucHVzaChieXRlKTsKCiAgICAgICAgaSA9IGkgKyAxOwoKICAgICAgICBieXRlID0gYXJyYXlbaV07CgogICAgZW5kCgoKCiAgICByZXR1cm4gcXVldWUucG9wOwoKZW5kCgoKCgoKU3RyZWFtLnRvQXJyYXkgPSBmdW5jdGlvbihzdHJlYW0pCgogICAgbG9jYWwgYXJyYXkgPSB7fTsKCiAgICBsb2NhbCBpID0gMTsKCgoKICAgIGxvY2FsIGJ5dGUgPSBzdHJlYW0oKTsKCiAgICB3aGlsZSBieXRlIH49IG5pbCBkbwoKICAgICAgICBhcnJheVtpXSA9IGJ5dGU7CgogICAgICAgIGkgPSBpICsgMTsKCiAgICAgICAgYnl0ZSA9IHN0cmVhbSgpOwoKICAgIGVuZAoKCgogICAgcmV0dXJuIGFycmF5OwoKZW5kCgoKCgoKbG9jYWwgZnJvbUhleFRhYmxlID0ge307Cgpmb3IgaSA9IDAsIDI1NSBkbwoKICAgIGZyb21IZXhUYWJsZVtzdHJpbmcuZm9ybWF0KCIlMDJYIiwgaSldID0gaTsKCiAgICBmcm9tSGV4VGFibGVbc3RyaW5nLmZvcm1hdCgiJTAyeCIsIGkpXSA9IGk7CgplbmQKCgoKU3RyZWFtLmZyb21IZXggPSBmdW5jdGlvbihoZXgpCgogICAgbG9jYWwgcXVldWUgPSBRdWV1ZSgpOwoKCgogICAgZm9yIGkgPSAxLCBzdHJpbmcubGVuKGhleCkgLyAyIGRvCgogICAgICAgIGxvY2FsIGggPSBzdHJpbmcuc3ViKGhleCwgaSAqIDIgLSAxLCBpICogMik7CgogICAgICAgIHF1ZXVlLnB1c2goZnJvbUhleFRhYmxlW2hdKTsKCiAgICBlbmQKCgoKICAgIHJldHVybiBxdWV1ZS5wb3A7CgplbmQKCgoKCgoKCmxvY2FsIHRvSGV4VGFibGUgPSB7fTsKCmZvciBpID0gMCwgMjU1IGRvCgogICAgdG9IZXhUYWJsZVtpXSA9IHN0cmluZy5mb3JtYXQoIiUwMlgiLCBpKTsKCmVuZAoKCgpTdHJlYW0udG9IZXggPSBmdW5jdGlvbihzdHJlYW0pCgogICAgbG9jYWwgaGV4ID0ge307CgogICAgbG9jYWwgaSA9IDE7CgoKCiAgICBsb2NhbCBieXRlID0gc3RyZWFtKCk7CgogICAgd2hpbGUgYnl0ZSB+PSBuaWwgZG8KCiAgICAgICAgaGV4W2ldID0gdG9IZXhUYWJsZVtieXRlXTsKCiAgICAgICAgaSA9IGkgKyAxOwoKICAgICAgICBieXRlID0gc3RyZWFtKCk7CgogICAgZW5kCgoKCiAgICByZXR1cm4gdGFibGUuY29uY2F0KGhleCk7CgplbmQKCgoKcmV0dXJuIFN0cmVhbTsAAAAAAGxvY2FsIGpzb24gPSB7X3ZlcnNpb24gPSAiMC4yLjAifQoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgotLSBFbmNvZGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbG9jYWwgZW5jb2RlCgoKCmxvY2FsIGVzY2FwZV9jaGFyX21hcCA9IHsKCiAgICBbIlxcIl0gPSAiXFwiLAoKICAgIFsiXCIiXSA9ICJcIiIsCgogICAgWyJcYiJdID0gImIiLAoKICAgIFsiXGYiXSA9ICJmIiwKCiAgICBbIlxuIl0gPSAibiIsCgogICAgWyJcciJdID0gInIiLAoKICAgIFsiXHQiXSA9ICJ0IgoKfQoKCgpsb2NhbCBlc2NhcGVfY2hhcl9tYXBfaW52ID0ge1siLyJdID0gIi8ifQoKZm9yIGssIHYgaW4gcGFpcnMoZXNjYXBlX2NoYXJfbWFwKSBkbyBlc2NhcGVfY2hhcl9tYXBfaW52W3ZdID0gayBlbmQKCgoKbG9jYWwgZnVuY3Rpb24gZXNjYXBlX2NoYXIoYykKCiAgICByZXR1cm4gIlxcIiAuLiAoZXNjYXBlX2NoYXJfbWFwW2NdIG9yIHN0cmluZy5mb3JtYXQoInUlMDR4IiwgYzpieXRlKCkpKQoKZW5kCgoKCmxvY2FsIGZ1bmN0aW9uIGVuY29kZV9uaWwodmFsKSByZXR1cm4gIm51bGwiIGVuZAoKCgpsb2NhbCBmdW5jdGlvbiBlbmNvZGVfdGFibGUodmFsLCBzdGFjaykKCiAgICBsb2NhbCByZXMgPSB7fQoKICAgIHN0YWNrID0gc3RhY2sgb3Ige30KCgoKICAgIC0tIENpcmN1bGFyIHJlZmVyZW5jZT8KCiAgICBpZiBzdGFja1t2YWxdIHRoZW4gZXJyb3IoImNpcmN1bGFyIHJlZmVyZW5jZSIpIGVuZAoKCgogICAgc3RhY2tbdmFsXSA9IHRydWUKCgoKICAgIGlmIHJhd2dldCh2YWwsIDEpIH49IG5pbCBvciBuZXh0KHZhbCkgPT0gbmlsIHRoZW4KCiAgICAgICAgLS0gVHJlYXQgYXMgYXJyYXkgLS0gY2hlY2sga2V5cyBhcmUgdmFsaWQgYW5kIGl0IGlzIG5vdCBzcGFyc2UKCiAgICAgICAgbG9jYWwgbiA9IDAKCiAgICAgICAgZm9yIGsgaW4gcGFpcnModmFsKSBkbwoKICAgICAgICAgICAgaWYgdHlwZShrKSB+PSAibnVtYmVyIiB0aGVuCgogICAgICAgICAgICAgICAgZXJyb3IoImludmFsaWQgdGFibGU6IG1peGVkIG9yIGludmFsaWQga2V5IHR5cGVzIikKCiAgICAgICAgICAgIGVuZAoKICAgICAgICAgICAgbiA9IG4gKyAxCgogICAgICAgIGVuZAoKICAgICAgICBpZiBuIH49ICN2YWwgdGhlbiBlcnJvcigiaW52YWxpZCB0YWJsZTogc3BhcnNlIGFycmF5IikgZW5kCgogICAgICAgIC0tIEVuY29kZQoKICAgICAgICBmb3IgaSA9IDEsICN2YWwgZG8gcmVzW2ldID0gZW5jb2RlKHZhbFtpXSwgc3RhY2spIGVuZAoKICAgICAgICBzdGFja1t2YWxdID0gbmlsCgogICAgICAgIHJldHVybiAiWyIgLi4gdGFibGUuY29uY2F0KHJlcywgIiwiKSAuLiAiXSIKCiAgICBlbHNlCgogICAgICAgIC0tIFRyZWF0IGFzIGFuIG9iamVjdAoKICAgICAgICBsb2NhbCBpID0gMQoKICAgICAgICBmb3IgaywgdiBpbiBwYWlycyh2YWwpIGRvCgogICAgICAgICAgICBpZiB0eXBlKGspIH49ICJzdHJpbmciIHRoZW4KCiAgICAgICAgICAgICAgICBlcnJvcigiaW52YWxpZCB0YWJsZTogbWl4ZWQgb3IgaW52YWxpZCBrZXkgdHlwZXMiKQoKICAgICAgICAgICAgZW5kCgogICAgICAgICAgICBpZiB0eXBlKHYpIH49ICJmdW5jdGlvbiIgdGhlbgoKICAgICAgICAgICAgICAgIHJlc1tpXSA9IGVuY29kZShrLCBzdGFjaykgLi4gIjoiIC4uIGVuY29kZSh2LCBzdGFjaykKCiAgICAgICAgICAgICAgICBpID0gaSArIDEKCiAgICAgICAgICAgIGVuZAoKICAgICAgICBlbmQKCiAgICAgICAgc3RhY2tbdmFsXSA9IG5pbAoKICAgICAgICByZXR1cm4gInsiIC4uIHRhYmxlLmNvbmNhdChyZXMsICIsIikgLi4gIn0iCgogICAgZW5kCgplbmQKCgoKbG9jYWwgZnVuY3Rpb24gZW5jb2RlX3N0cmluZyh2YWwpCgogICAgcmV0dXJuICciJyAuLiB2YWw6Z3N1YignWyV6XDEtXDMxXFwiXScsIGVzY2FwZV9jaGFyKSAuLiAnIicKCmVuZAoKCgpsb2NhbCBmdW5jdGlvbiBlbmNvZGVfbnVtYmVyKHZhbCkKCiAgICAtLSBDaGVjayBmb3IgTmFOLCAtaW5mIGFuZCBpbmYKCiAgICBpZiB2YWwgfj0gdmFsIG9yIHZhbCA8PSAtbWF0aC5odWdlIG9yIHZhbCA+PSBtYXRoLmh1Z2UgdGhlbgoKICAgICAgICBlcnJvcigidW5leHBlY3RlZCBudW1iZXIgdmFsdWUgJyIgLi4gdG9zdHJpbmcodmFsKSAuLiAiJyIpCgogICAgZW5kCgogICAgcmV0dXJuIHN0cmluZy5mb3JtYXQoIiUuMTRnIiwgdmFsKQoKZW5kCgoKCmxvY2FsIHR5cGVfZnVuY19tYXAgPSB7CgogICAgWyJuaWwiXSA9IGVuY29kZV9uaWwsCgogICAgWyJ0YWJsZSJdID0gZW5jb2RlX3RhYmxlLAoKICAgIFsic3RyaW5nIl0gPSBlbmNvZGVfc3RyaW5nLAoKICAgIFsibnVtYmVyIl0gPSBlbmNvZGVfbnVtYmVyLAoKICAgIFsiYm9vbGVhbiJdID0gdG9zdHJpbmcKCn0KCgoKZW5jb2RlID0gZnVuY3Rpb24odmFsLCBzdGFjaykKCiAgICBsb2NhbCB0ID0gdHlwZSh2YWwpCgogICAgbG9jYWwgZiA9IHR5cGVfZnVuY19tYXBbdF0KCiAgICBpZiBmIHRoZW4gcmV0dXJuIGYodmFsLCBzdGFjaykgZW5kCgogICAgZXJyb3IoInVuZXhwZWN0ZWQgdHlwZSAnIiAuLiB0IC4uICInIikKCmVuZAoKCgpmdW5jdGlvbiBqc29uLmVuY29kZSh2YWwpIHJldHVybiAoZW5jb2RlKHZhbCkpIGVuZAoKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgotLSBEZWNvZGUKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKbG9jYWwgcGFyc2UKCgoKbG9jYWwgZnVuY3Rpb24gY3JlYXRlX3NldCguLi4pCgogICAgbG9jYWwgcmVzID0ge30KCiAgICBmb3IgaSA9IDEsIHNlbGVjdCgiIyIsIC4uLikgZG8gcmVzW3NlbGVjdChpLCAuLi4pXSA9IHRydWUgZW5kCgogICAgcmV0dXJuIHJlcwoKZW5kCgoKCmxvY2FsIHNwYWNlX2NoYXJzID0gY3JlYXRlX3NldCgiICIsICJcdCIsICJcciIsICJcbiIpCgpsb2NhbCBkZWxpbV9jaGFycyA9IGNyZWF0ZV9zZXQoIiAiLCAiXHQiLCAiXHIiLCAiXG4iLCAiXSIsICJ9IiwgIiwiKQoKbG9jYWwgZXNjYXBlX2NoYXJzID0gY3JlYXRlX3NldCgiXFwiLCAiLyIsICciJywgImIiLCAiZiIsICJuIiwgInIiLCAidCIsICJ1IikKCmxvY2FsIGxpdGVyYWxzID0gY3JlYXRlX3NldCgidHJ1ZSIsICJmYWxzZSIsICJudWxsIikKCgoKbG9jYWwgbGl0ZXJhbF9tYXAgPSB7WyJ0cnVlIl0gPSB0cnVlLCBbImZhbHNlIl0gPSBmYWxzZSwgWyJudWxsIl0gPSBuaWx9CgoKCmxvY2FsIGZ1bmN0aW9uIG5leHRfY2hhcihzdHIsIGlkeCwgc2V0LCBuZWdhdGUpCgogICAgZm9yIGkgPSBpZHgsICNzdHIgZG8gaWYgc2V0W3N0cjpzdWIoaSwgaSldIH49IG5lZ2F0ZSB0aGVuIHJldHVybiBpIGVuZCBlbmQKCiAgICByZXR1cm4gI3N0ciArIDEKCmVuZAoKCgpsb2NhbCBmdW5jdGlvbiBkZWNvZGVfZXJyb3Ioc3RyLCBpZHgsIG1zZykKCiAgICBsb2NhbCBsaW5lX2NvdW50ID0gMQoKICAgIGxvY2FsIGNvbF9jb3VudCA9IDEKCiAgICBmb3IgaSA9IDEsIGlkeCAtIDEgZG8KCiAgICAgICAgY29sX2NvdW50ID0gY29sX2NvdW50ICsgMQoKICAgICAgICBpZiBzdHI6c3ViKGksIGkpID09ICJcbiIgdGhlbgoKICAgICAgICAgICAgbGluZV9jb3VudCA9IGxpbmVfY291bnQgKyAxCgogICAgICAgICAgICBjb2xfY291bnQgPSAxCgogICAgICAgIGVuZAoKICAgIGVuZAoKICAgIGVycm9yKHN0cmluZy5mb3JtYXQoIiVzIGF0IGxpbmUgJWQgY29sICVkIiwgbXNnLCBsaW5lX2NvdW50LCBjb2xfY291bnQpKQoKZW5kCgoKCmxvY2FsIGZ1bmN0aW9uIGNvZGVwb2ludF90b191dGY4KG4pCgogICAgbG9jYWwgZiA9IG1hdGguZmxvb3IKCiAgICBpZiBuIDw9IDB4N2YgdGhlbgoKICAgICAgICByZXR1cm4gc3RyaW5nLmNoYXIobikKCiAgICBlbHNlaWYgbiA8PSAweDdmZiB0aGVuCgogICAgICAgIHJldHVybiBzdHJpbmcuY2hhcihmKG4gLyA2NCkgKyAxOTIsIG4gJSA2NCArIDEyOCkKCiAgICBlbHNlaWYgbiA8PSAweGZmZmYgdGhlbgoKICAgICAgICByZXR1cm4gc3RyaW5nLmNoYXIoZihuIC8gNDA5NikgKyAyMjQsIGYobiAlIDQwOTYgLyA2NCkgKyAxMjgsCgogICAgICAgICAgICAgICAgICAgICAgICAgICBuICUgNjQgKyAxMjgpCgogICAgZWxzZWlmIG4gPD0gMHgxMGZmZmYgdGhlbgoKICAgICAgICByZXR1cm4gc3RyaW5nLmNoYXIoZihuIC8gMjYyMTQ0KSArIDI0MCwgZihuICUgMjYyMTQ0IC8gNDA5NikgKyAxMjgsCgogICAgICAgICAgICAgICAgICAgICAgICAgICBmKG4gJSA0MDk2IC8gNjQpICsgMTI4LCBuICUgNjQgKyAxMjgpCgogICAgZW5kCgogICAgZXJyb3Ioc3RyaW5nLmZvcm1hdCgiaW52YWxpZCB1bmljb2RlIGNvZGVwb2ludCAnJXgnIiwgbikpCgplbmQKCgoKbG9jYWwgZnVuY3Rpb24gcGFyc2VfdW5pY29kZV9lc2NhcGUocykKCiAgICBsb2NhbCBuMSA9IHRvbnVtYmVyKHM6c3ViKDEsIDQpLCAxNikKCiAgICBsb2NhbCBuMiA9IHRvbnVtYmVyKHM6c3ViKDcsIDEwKSwgMTYpCgogICAgaWYgbjIgdGhlbgoKICAgICAgICByZXR1cm4KCiAgICAgICAgICAgIGNvZGVwb2ludF90b191dGY4KChuMSAtIDB4ZDgwMCkgKiAweDQwMCArIChuMiAtIDB4ZGMwMCkgKyAweDEwMDAwKQoKICAgIGVsc2UKCiAgICAgICAgcmV0dXJuIGNvZGVwb2ludF90b191dGY4KG4xKQoKICAgIGVuZAoKZW5kCgoKCmxvY2FsIGZ1bmN0aW9uIHBhcnNlX3N0cmluZyhzdHIsIGkpCgogICAgbG9jYWwgcmVzID0ge30KCiAgICBsb2NhbCBqID0gaSArIDEKCiAgICBsb2NhbCBrID0gagoKCgogICAgd2hpbGUgaiA8PSAjc3RyIGRvCgogICAgICAgIGxvY2FsIHggPSBzdHI6Ynl0ZShqKQoKCgogICAgICAgIGlmIHggPCAzMiB0aGVuCgogICAgICAgICAgICBkZWNvZGVfZXJyb3Ioc3RyLCBqLCAiY29udHJvbCBjaGFyYWN0ZXIgaW4gc3RyaW5nIikKCiAgICAgICAgZWxzZWlmIHggPT0gOTIgdGhlbiAtLSBgXGA6IEVzY2FwZQoKICAgICAgICAgICAgcmVzWyNyZXMgKyAxXSA9IHN0cjpzdWIoaywgaiAtIDEpCgogICAgICAgICAgICBqID0gaiArIDEKCiAgICAgICAgICAgIGxvY2FsIGMgPSBzdHI6c3ViKGosIGopCgogICAgICAgICAgICBpZiBjID09ICJ1IiB0aGVuCgogICAgICAgICAgICAgICAgbG9jYWwgaGV4ID0gc3RyOm1hdGNoKCJeW2REXVs4OWFBYkJdJXgleFxcdSV4JXgleCV4IiwgaiArIDEpIG9yCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cjptYXRjaCgiXiV4JXgleCV4IiwgaiArIDEpIG9yCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlY29kZV9lcnJvcihzdHIsIGogLSAxLAoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImludmFsaWQgdW5pY29kZSBlc2NhcGUgaW4gc3RyaW5nIikKCiAgICAgICAgICAgICAgICByZXNbI3JlcyArIDFdID0gcGFyc2VfdW5pY29kZV9lc2NhcGUoaGV4KQoKICAgICAgICAgICAgICAgIGogPSBqICsgI2hleAoKICAgICAgICAgICAgZWxzZQoKICAgICAgICAgICAgICAgIGlmIG5vdCBlc2NhcGVfY2hhcnNbY10gdGhlbgoKICAgICAgICAgICAgICAgICAgICBkZWNvZGVfZXJyb3Ioc3RyLCBqIC0gMSwKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbnZhbGlkIGVzY2FwZSBjaGFyICciIC4uIGMgLi4gIicgaW4gc3RyaW5nIikKCiAgICAgICAgICAgICAgICBlbmQKCiAgICAgICAgICAgICAgICByZXNbI3JlcyArIDFdID0gZXNjYXBlX2NoYXJfbWFwX2ludltjXQoKICAgICAgICAgICAgZW5kCgogICAgICAgICAgICBrID0gaiArIDEKCiAgICAgICAgZWxzZWlmIHggPT0gMzQgdGhlbiAtLSBgImA6IEVuZCBvZiBzdHJpbmcKCiAgICAgICAgICAgIHJlc1sjcmVzICsgMV0gPSBzdHI6c3ViKGssIGogLSAxKQoKICAgICAgICAgICAgcmV0dXJuIHRhYmxlLmNvbmNhdChyZXMpLCBqICsgMQoKICAgICAgICBlbmQKCiAgICAgICAgaiA9IGogKyAxCgogICAgZW5kCgoKCiAgICBkZWNvZGVfZXJyb3Ioc3RyLCBpLCAiZXhwZWN0ZWQgY2xvc2luZyBxdW90ZSBmb3Igc3RyaW5nIikKCmVuZAoKCgpsb2NhbCBmdW5jdGlvbiBwYXJzZV9udW1iZXIoc3RyLCBpKQoKICAgIGxvY2FsIHggPSBuZXh0X2NoYXIoc3RyLCBpLCBkZWxpbV9jaGFycykKCiAgICBsb2NhbCBzID0gc3RyOnN1YihpLCB4IC0gMSkKCiAgICBsb2NhbCBuID0gdG9udW1iZXIocykKCiAgICBpZiBub3QgbiB0aGVuIGRlY29kZV9lcnJvcihzdHIsIGksICJpbnZhbGlkIG51bWJlciAnIiAuLiBzIC4uICInIikgZW5kCgogICAgcmV0dXJuIG4sIHgKCmVuZAoKCgpsb2NhbCBmdW5jdGlvbiBwYXJzZV9saXRlcmFsKHN0ciwgaSkKCiAgICBsb2NhbCB4ID0gbmV4dF9jaGFyKHN0ciwgaSwgZGVsaW1fY2hhcnMpCgogICAgbG9jYWwgd29yZCA9IHN0cjpzdWIoaSwgeCAtIDEpCgogICAgaWYgbm90IGxpdGVyYWxzW3dvcmRdIHRoZW4KCiAgICAgICAgZGVjb2RlX2Vycm9yKHN0ciwgaSwgImludmFsaWQgbGl0ZXJhbCAnIiAuLiB3b3JkIC4uICInIikKCiAgICBlbmQKCiAgICByZXR1cm4gbGl0ZXJhbF9tYXBbd29yZF0sIHgKCmVuZAoKCgpsb2NhbCBmdW5jdGlvbiBwYXJzZV9hcnJheShzdHIsIGkpCgogICAgbG9jYWwgcmVzID0ge30KCiAgICBsb2NhbCBuID0gMQoKICAgIGkgPSBpICsgMQoKICAgIHdoaWxlIHRydWUgZG8KCiAgICAgICAgbG9jYWwgeAoKICAgICAgICBpID0gbmV4dF9jaGFyKHN0ciwgaSwgc3BhY2VfY2hhcnMsIHRydWUpCgogICAgICAgIGlmIHN0cjpzdWIoaSwgaSkgPT0gIl0iIHRoZW4KCiAgICAgICAgICAgIGkgPSBpICsgMQoKICAgICAgICAgICAgYnJlYWsKCiAgICAgICAgZW5kCgogICAgICAgIHgsIGkgPSBwYXJzZShzdHIsIGkpCgogICAgICAgIHJlc1tuXSA9IHgKCiAgICAgICAgbiA9IG4gKyAxCgogICAgICAgIGkgPSBuZXh0X2NoYXIoc3RyLCBpLCBzcGFjZV9jaGFycywgdHJ1ZSkKCiAgICAgICAgbG9jYWwgY2hyID0gc3RyOnN1YihpLCBpKQoKICAgICAgICBpID0gaSArIDEKCiAgICAgICAgaWYgY2hyID09ICJdIiB0aGVuIGJyZWFrIGVuZAoKICAgICAgICBpZiBjaHIgfj0gIiwiIHRoZW4gZGVjb2RlX2Vycm9yKHN0ciwgaSwgImV4cGVjdGVkICddJyBvciAnLCciKSBlbmQKCiAgICBlbmQKCiAgICByZXR1cm4gcmVzLCBpCgplbmQKCgoKbG9jYWwgZnVuY3Rpb24gcGFyc2Vfb2JqZWN0KHN0ciwgaSkKCiAgICBsb2NhbCByZXMgPSB7fQoKICAgIGkgPSBpICsgMQoKICAgIHdoaWxlIHRydWUgZG8KCiAgICAgICAgbG9jYWwga2V5LCB2YWwKCiAgICAgICAgaSA9IG5leHRfY2hhcihzdHIsIGksIHNwYWNlX2NoYXJzLCB0cnVlKQoKICAgICAgICBpZiBzdHI6c3ViKGksIGkpID09ICJ9IiB0aGVuCgogICAgICAgICAgICBpID0gaSArIDEKCiAgICAgICAgICAgIGJyZWFrCgogICAgICAgIGVuZAoKICAgICAgICBpZiBzdHI6c3ViKGksIGkpIH49ICciJyB0aGVuCgogICAgICAgICAgICBkZWNvZGVfZXJyb3Ioc3RyLCBpLCAiZXhwZWN0ZWQgc3RyaW5nIGZvciBrZXkiKQoKICAgICAgICBlbmQKCiAgICAgICAga2V5LCBpID0gcGFyc2Uoc3RyLCBpKQoKICAgICAgICBpID0gbmV4dF9jaGFyKHN0ciwgaSwgc3BhY2VfY2hhcnMsIHRydWUpCgogICAgICAgIGlmIHN0cjpzdWIoaSwgaSkgfj0gIjoiIHRoZW4KCiAgICAgICAgICAgIGRlY29kZV9lcnJvcihzdHIsIGksICJleHBlY3RlZCAnOicgYWZ0ZXIga2V5IikKCiAgICAgICAgZW5kCgogICAgICAgIGkgPSBuZXh0X2NoYXIoc3RyLCBpICsgMSwgc3BhY2VfY2hhcnMsIHRydWUpCgogICAgICAgIHZhbCwgaSA9IHBhcnNlKHN0ciwgaSkKCiAgICAgICAgcmVzW2tleV0gPSB2YWwKCiAgICAgICAgaSA9IG5leHRfY2hhcihzdHIsIGksIHNwYWNlX2NoYXJzLCB0cnVlKQoKICAgICAgICBsb2NhbCBjaHIgPSBzdHI6c3ViKGksIGkpCgogICAgICAgIGkgPSBpICsgMQoKICAgICAgICBpZiBjaHIgPT0gIn0iIHRoZW4gYnJlYWsgZW5kCgogICAgICAgIGlmIGNociB+PSAiLCIgdGhlbiBkZWNvZGVfZXJyb3Ioc3RyLCBpLCAiZXhwZWN0ZWQgJ30nIG9yICcsJyIpIGVuZAoKICAgIGVuZAoKICAgIHJldHVybiByZXMsIGkKCmVuZAoKCgpsb2NhbCBjaGFyX2Z1bmNfbWFwID0gewoKICAgIFsnIiddID0gcGFyc2Vfc3RyaW5nLAoKICAgIFsiMCJdID0gcGFyc2VfbnVtYmVyLAoKICAgIFsiMSJdID0gcGFyc2VfbnVtYmVyLAoKICAgIFsiMiJdID0gcGFyc2VfbnVtYmVyLAoKICAgIFsiMyJdID0gcGFyc2VfbnVtYmVyLAoKICAgIFsiNCJdID0gcGFyc2VfbnVtYmVyLAoKICAgIFsiNSJdID0gcGFyc2VfbnVtYmVyLAoKICAgIFsiNiJdID0gcGFyc2VfbnVtYmVyLAoKICAgIFsiNyJdID0gcGFyc2VfbnVtYmVyLAoKICAgIFsiOCJdID0gcGFyc2VfbnVtYmVyLAoKICAgIFsiOSJdID0gcGFyc2VfbnVtYmVyLAoKICAgIFsiLSJdID0gcGFyc2VfbnVtYmVyLAoKICAgIFsidCJdID0gcGFyc2VfbGl0ZXJhbCwKCiAgICBbImYiXSA9IHBhcnNlX2xpdGVyYWwsCgogICAgWyJuIl0gPSBwYXJzZV9saXRlcmFsLAoKICAgIFsiWyJdID0gcGFyc2VfYXJyYXksCgogICAgWyJ7Il0gPSBwYXJzZV9vYmplY3QKCn0KCgoKcGFyc2UgPSBmdW5jdGlvbihzdHIsIGlkeCkKCiAgICBsb2NhbCBjaHIgPSBzdHI6c3ViKGlkeCwgaWR4KQoKICAgIGxvY2FsIGYgPSBjaGFyX2Z1bmNfbWFwW2Nocl0KCiAgICBpZiBmIHRoZW4gcmV0dXJuIGYoc3RyLCBpZHgpIGVuZAoKICAgIGRlY29kZV9lcnJvcihzdHIsIGlkeCwgInVuZXhwZWN0ZWQgY2hhcmFjdGVyICciIC4uIGNociAuLiAiJyIpCgplbmQKCgoKZnVuY3Rpb24ganNvbi5kZWNvZGUoc3RyKQoKICAgIGlmIHR5cGUoc3RyKSB+PSAic3RyaW5nIiB0aGVuCgogICAgICAgIGVycm9yKCJleHBlY3RlZCBhcmd1bWVudCBvZiB0eXBlIHN0cmluZywgZ290ICIgLi4gdHlwZShzdHIpKQoKICAgIGVuZAoKICAgIGxvY2FsIHJlcywgaWR4ID0gcGFyc2Uoc3RyLCBuZXh0X2NoYXIoc3RyLCAxLCBzcGFjZV9jaGFycywgdHJ1ZSkpCgogICAgaWR4ID0gbmV4dF9jaGFyKHN0ciwgaWR4LCBzcGFjZV9jaGFycywgdHJ1ZSkKCiAgICBpZiBpZHggPD0gI3N0ciB0aGVuIGRlY29kZV9lcnJvcihzdHIsIGlkeCwgInRyYWlsaW5nIGdhcmJhZ2UiKSBlbmQKCiAgICByZXR1cm4gcmVzCgplbmQKCgoKcmV0dXJuIGpzb24KAELw5xQLYE+7YQVnrN0/GC1EVPsh6T+b9oHSC3PvPxgt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AAAAYOc/AEKZ4hULF+jVI7QZ1D+d4JDsNuQIPQAAAAAAQOc/AEK54hULF8hxwo1x1D911mcJzicvvQAAAAAAIOc/AELZ4hULFzAXnuDJ1D+k2AobiSAuvQAAAAAAAOc/AEL54hULF6A4B64i1T9Zx2SBcL4uPQAAAAAA4OY/AEKZ4xULF9DIU/d71T/vQF3u7a0fPQAAAAAAwOY/AEK54xULRmBZ373V1T/cZaQIKgsKvQAAAAAAAAAA3hIElQAAAAD///////////////8AAAAA0HEFAAAAAAAUAAAAAAAAAEMuVVRGLTgAQqDkFQtHTENfQ1RZUEUAAAAATENfTlVNRVJJQwAATENfVElNRQAAAAAATENfQ09MTEFURQAATENfTU9ORVRBUlkATENfTUVTU0FHRVMAQvDkFQsHQy5VVEYtOABCiOUVC5EP0H0FAAAAAADAfgUAAAAAAKh/BQAAAAAATm8gZXJyb3IgaW5mb3JtYXRpb24ASWxsZWdhbCBieXRlIHNlcXVlbmNlAERvbWFpbiBlcnJvcgBSZXN1bHQgbm90IHJlcHJlc2VudGFibGUATm90IGEgdHR5AFBlcm1pc3Npb24gZGVuaWVkAE9wZXJhdGlvbiBub3QgcGVybWl0dGVkAE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkATm8gc3VjaCBwcm9jZXNzAEZpbGUgZXhpc3RzAFZhbHVlIHRvbyBsYXJnZSBmb3IgZGF0YSB0eXBlAE5vIHNwYWNlIGxlZnQgb24gZGV2aWNlAE91dCBvZiBtZW1vcnkAUmVzb3VyY2UgYnVzeQBJbnRlcnJ1cHRlZCBzeXN0ZW0gY2FsbABSZXNvdXJjZSB0ZW1wb3JhcmlseSB1bmF2YWlsYWJsZQBJbnZhbGlkIHNlZWsAQ3Jvc3MtZGV2aWNlIGxpbmsAUmVhZC1vbmx5IGZpbGUgc3lzdGVtAERpcmVjdG9yeSBub3QgZW1wdHkAQ29ubmVjdGlvbiByZXNldCBieSBwZWVyAE9wZXJhdGlvbiB0aW1lZCBvdXQAQ29ubmVjdGlvbiByZWZ1c2VkAEhvc3QgaXMgZG93bgBIb3N0IGlzIHVucmVhY2hhYmxlAEFkZHJlc3MgaW4gdXNlAEJyb2tlbiBwaXBlAEkvTyBlcnJvcgBObyBzdWNoIGRldmljZSBvciBhZGRyZXNzAEJsb2NrIGRldmljZSByZXF1aXJlZABObyBzdWNoIGRldmljZQBOb3QgYSBkaXJlY3RvcnkASXMgYSBkaXJlY3RvcnkAVGV4dCBmaWxlIGJ1c3kARXhlYyBmb3JtYXQgZXJyb3IASW52YWxpZCBhcmd1bWVudABBcmd1bWVudCBsaXN0IHRvbyBsb25nAFN5bWJvbGljIGxpbmsgbG9vcABGaWxlbmFtZSB0b28gbG9uZwBUb28gbWFueSBvcGVuIGZpbGVzIGluIHN5c3RlbQBObyBmaWxlIGRlc2NyaXB0b3JzIGF2YWlsYWJsZQBCYWQgZmlsZSBkZXNjcmlwdG9yAE5vIGNoaWxkIHByb2Nlc3MAQmFkIGFkZHJlc3MARmlsZSB0b28gbGFyZ2UAVG9vIG1hbnkgbGlua3MATm8gbG9ja3MgYXZhaWxhYmxlAFJlc291cmNlIGRlYWRsb2NrIHdvdWxkIG9jY3VyAFN0YXRlIG5vdCByZWNvdmVyYWJsZQBQcmV2aW91cyBvd25lciBkaWVkAE9wZXJhdGlvbiBjYW5jZWxlZABGdW5jdGlvbiBub3QgaW1wbGVtZW50ZWQATm8gbWVzc2FnZSBvZiBkZXNpcmVkIHR5cGUASWRlbnRpZmllciByZW1vdmVkAERldmljZSBub3QgYSBzdHJlYW0ATm8gZGF0YSBhdmFpbGFibGUARGV2aWNlIHRpbWVvdXQAT3V0IG9mIHN0cmVhbXMgcmVzb3VyY2VzAExpbmsgaGFzIGJlZW4gc2V2ZXJlZABQcm90b2NvbCBlcnJvcgBCYWQgbWVzc2FnZQBGaWxlIGRlc2NyaXB0b3IgaW4gYmFkIHN0YXRlAE5vdCBhIHNvY2tldABEZXN0aW5hdGlvbiBhZGRyZXNzIHJlcXVpcmVkAE1lc3NhZ2UgdG9vIGxhcmdlAFByb3RvY29sIHdyb25nIHR5cGUgZm9yIHNvY2tldABQcm90b2NvbCBub3QgYXZhaWxhYmxlAFByb3RvY29sIG5vdCBzdXBwb3J0ZWQAU29ja2V0IHR5cGUgbm90IHN1cHBvcnRlZABOb3Qgc3VwcG9ydGVkAFByb3RvY29sIGZhbWlseSBub3Qgc3VwcG9ydGVkAEFkZHJlc3MgZmFtaWx5IG5vdCBzdXBw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anMWEl9fc3lzY2FsbF91bmxpbmthdBcPX19zeXNjYWxsX3JtZGlyGBJfX3N5c2NhbGxfcmVuYW1lYXQZEl9lbXNjcmlwdGVuX3N5c3RlbRoQX19zeXNjYWxsX29wZW5hdBsUX19zeXNjYWxsX3JlYWRsaW5rYXQcCV90enNldF9qcx0WZW1zY3JpcHRlbl9yZXNpemVfaGVhcB4ZX2Vtc2NyaXB0ZW5fdGhyb3dfbG9uZ2ptcB8RX193YXNtX2NhbGxfY3RvcnMgC2x1YU9faW50MmZiIQ1sdWFPX2NlaWxsb2cyIghpbnRhcml0aCMMbHVhT19zdHIybnVtJA1sdWFPX3Rvc3RyaW5nJRFsdWFPX3B1c2h2ZnN0cmluZyYQbHVhT19wdXNoZnN0cmluZycMbHVhT19jaHVua2lkKA5sdWFWX3RvbnVtYmVyXykObHVhVl90b2ludGVnZXIqDmx1YVZfZmluaXNoZ2V0Kw5sdWFWX2ZpbmlzaHNldCwNbHVhVl9sZXNzdGhhbi0ObHVhVl9sZXNzZXF1YWwuDWx1YVZfZXF1YWxvYmovC2x1YVZfY29uY2F0MAtsdWFWX29iamxlbjELbHVhVl9zaGlmdGwyDGx1YVZfZXhlY3V0ZTMMbWFpbnBvc2l0aW9uNAtsdWFIX3Jlc2l6ZTULbHVhSF9uZXdrZXk2CGx1YUhfZ2V0NwtsdWFIX3NldGludDgIbHVhSF9zZXQ5CGx1YUhfbmV3OgtsdWFIX2dldGludDsQbHVhSF9nZXRzaG9ydHN0cjwLbHVhSF9nZXRzdHI9CWx1YUhfZ2V0bj4KbHVhVF9nZXR0bT8PbHVhVF9nZXR0bWJ5b2JqQBBsdWFUX29ianR5cGVuYW1lQQtsdWFUX2NhbGxUTUIObHVhVF9jYWxsYmluVE1DDWx1YVRfdHJ5YmluVE1EEGx1YVRfY2FsbG9yZGVyVE1FCWx1YVpfZmlsbEYJbHVhWl9yZWFkRw5sdWFYX3Rva2VuMnN0ckgQbHVhWF9zeW50YXhlcnJvckkIbGV4ZXJyb3JKDmx1YVhfbmV3c3RyaW5nSwlsdWFYX25leHRMBGxsZXhNDWluY2xpbmVudW1iZXJOCHNraXBfc2VwTxByZWFkX2xvbmdfc3RyaW5nUAtjaGVja19uZXh0MVEHZ2V0aGV4YVIEc2F2ZVMLY2hlY2tfbmV4dDJUDGx1YUVfc2V0ZGVidFUNbHVhRV9leHRlbmRDSVYLbHVhRV9mcmVlQ0lXDWx1YUVfc2hyaW5rQ0lYDWx1YV9uZXd0aHJlYWRZDGx1YV9uZXdzdGF0ZVoJZl9sdWFvcGVuWwtjbG9zZV9zdGF0ZVwJbHVhX2Nsb3NlXQ1sdWFDX2JhcnJpZXJfXhByZWFsbHltYXJrb2JqZWN0XxJsdWFDX3VwdmFsYmFycmllcl9gCGx1YUNfZml4YQtsdWFDX25ld29iamITbHVhQ19jaGVja2ZpbmFsaXplcmMJc3dlZXBsaXN0ZARHQ1RNZQpzaW5nbGVzdGVwZgZtYXJrbXRnDXByb3BhZ2F0ZW1hcmtoEXRyYXZlcnNlZXBoZW1lcm9uaQtjbGVhcnZhbHVlc2oJbHVhQ19zdGVwawtsdWFDX2Z1bGxnY2wJZG90aGVjYWxsbRBsdWFGX25ld0xjbG9zdXJlbgpsdWFGX2Nsb3Nlbw1sdWFGX25ld3Byb3RvcBFsdWFGX2dldGxvY2FsbmFtZXELbHVhX3NldGhvb2tyDGx1YV9nZXRzdGFja3MMbHVhX2dldGxvY2FsdAlmaW5kbG9jYWx1C2x1YV9nZXRpbmZvdgpnZXRvYmpuYW1ldw5sdWFHX3R5cGVlcnJvcngHdmFyaW5mb3kNbHVhR19ydW5lcnJvcnoNbHVhR19lcnJvcm1zZ3sPbHVhR19vcGludGVycm9yfA9sdWFHX29yZGVyZXJyb3J9DWx1YU1fZ3Jvd2F1eF9+DWx1YU1fcmVhbGxvY19/C2x1YU1fdG9vYmlngAELbHVhU19yZXNpemWBAQxsdWFTX25ld2xzdHKCARRsdWFTX2NyZWF0ZWxuZ3N0cm9iaoMBCGx1YVNfbmV3hAEMTG9hZEZ1bmN0aW9uhQEFZXJyb3KGAQpMb2FkU3RyaW5nhwEJbHVhS19jb2RliAEMbHVhS19jb2RlQUJDiQEJbHVhS19qdW1wigEMbHVhS19jb2RlQUJ4iwEIbHVhS19yZXSMARBsdWFLX3BhdGNodG9oZXJljQEObHVhS19wYXRjaGxpc3SOAQxwYXRjaGxpc3RhdXiPAQ9sdWFLX3BhdGNoY2xvc2WQARBsdWFLX3Jlc2VydmVyZWdzkQEMbHVhS19zdHJpbmdLkgEEYWRka5MBD2x1YUtfc2V0cmV0dXJuc5QBEmx1YUtfZGlzY2hhcmdldmFyc5UBEGx1YUtfZXhwMm5leHRyZWeWAQdleHAycmVnlwENZGlzY2hhcmdlMnJlZ5gBD2x1YUtfZXhwMmFueXJlZ5kBEWx1YUtfZXhwMmFueXJlZ3VwmgEMbHVhS19leHAydmFsmwELbHVhS19leHAyUkucAQ1sdWFLX3N0b3JldmFynQENbHVhS19nb2lmdHJ1ZZ4BCmp1bXBvbmNvbmSfAQhjb25kanVtcKABDmx1YUtfZ29pZmZhbHNloQEMbHVhS19pbmRleGVkogEMY29uc3Rmb2xkaW5nowENY29kZWJpbmV4cHZhbKQBDGx1YUtfc2V0bGlzdKUBCm5ld3VwdmFsdWWmAQlzdGF0ZW1lbnSnAQpjbG9zZV9mdW5jqAEOZXJyb3JfZXhwZWN0ZWSpAQplcnJvcmxpbWl0qgEKbGVhdmVibG9ja6sBB3N1YmV4cHKsAQhnb3Rvc3RhdK0BC3N1ZmZpeGVkZXhwrgEKYXNzaWdubWVudK8BB2V4cGxpc3SwAQhzZW1lcnJvcrEBCWNsb3NlZ290b7IBDG5ld19sb2NhbHZhcrMBBGJvZHm0AQ1hZGp1c3RfYXNzaWdutQEJc2luZ2xldmFytgEIZmllbGRzZWy3AQtjaGVja19tYXRjaLgBB2ZvcmJvZHm5AQtjb25zdHJ1Y3RvcroBCGZ1bmNhcmdzuwEMc2luZ2xldmFyYXV4vAEKbHVhRF90aHJvd70BFGx1YURfcmF3cnVucHJvdGVjdGVkvgERbHVhRF9yZWFsbG9jc3RhY2u/AQ5sdWFEX2dyb3dzdGFja8ABC2x1YURfaW5jdG9wwQEJbHVhRF9ob29rwgEMbHVhRF9wb3NjYWxswwEMbHVhRF9wcmVjYWxsxAEJbHVhRF9jYWxsxQEQbHVhRF9jYWxsbm95aWVsZMYBBnJlc3VtZccBBnVucm9sbMgBCmx1YURfcGNhbGzJAQhmX3BhcnNlcsoBDER1bXBGdW5jdGlvbssBCkR1bXBTdHJpbmfMAQ5sdWFfY2hlY2tzdGFja80BCWdyb3dzdGFja84BCWx1YV94bW92Zc8BCmx1YV9zZXR0b3DQAQpsdWFfcm90YXRl0QEIbHVhX2NvcHnSAQ1sdWFfcHVzaHZhbHVl0wEIbHVhX3R5cGXUAQ9sdWFfaXNjZnVuY3Rpb27VAQ1sdWFfaXNpbnRlZ2Vy1gEMbHVhX2lzbnVtYmVy1wEMbHVhX2lzc3RyaW5n2AEMbHVhX3Jhd2VxdWFs2QELbHVhX2NvbXBhcmXaARJsdWFfc3RyaW5ndG9udW1iZXLbAQ1sdWFfdG9udW1iZXJ43AEObHVhX3RvaW50ZWdlcnjdAQ1sdWFfdG9ib29sZWFu3gENbHVhX3RvbHN0cmluZ98BCmx1YV9yYXdsZW7gAQ5sdWFfdG91c2VyZGF0YeEBDGx1YV90b3RocmVhZOIBDWx1YV90b3BvaW50ZXLjAQ9sdWFfcHVzaGxzdHJpbmfkAQ5sdWFfcHVzaHN0cmluZ+UBD2x1YV9wdXNoZnN0cmluZ+YBEGx1YV9wdXNoY2Nsb3N1cmXnAQ1sdWFfZ2V0Z2xvYmFs6AEMbHVhX2dldGZpZWxk6QEIbHVhX2dldGnqAQpsdWFfcmF3Z2V06wELbHVhX3Jhd2dldGnsAQtsdWFfcmF3Z2V0cO0BD2x1YV9jcmVhdGV0YWJsZe4BEGx1YV9nZXRtZXRhdGFibGXvAQlhdXhzZXRzdHLwAQxsdWFfc2V0ZmllbGTxAQhsdWFfc2V0afIBCmx1YV9yYXdzZXTzAQtsdWFfcmF3c2V0afQBC2x1YV9yYXdzZXRw9QEQbHVhX3NldG1ldGF0YWJsZfYBCWx1YV9jYWxsa/cBCmx1YV9wY2FsbGv4AQZmX2NhbGz5AQhsdWFfbG9hZPoBBmx1YV9nY/sBCWx1YV9lcnJvcvwBCGx1YV9uZXh0/QEKbHVhX2NvbmNhdP4BD2x1YV9uZXd1c2VyZGF0Yf8BDmx1YV9nZXR1cHZhbHVlgAIObHVhX3NldHVwdmFsdWWBAgpsdWFMX2Vycm9yggIScHVzaGdsb2JhbGZ1bmNuYW1lgwIPbHVhTF9jaGVja3N0YWNrhAINbHVhTF9hcmdlcnJvcoUCCWZpbmRmaWVsZIYCCmx1YUxfd2hlcmWHAg9sdWFMX2ZpbGVyZXN1bHSIAg9sdWFMX2V4ZWNyZXN1bHSJAhFsdWFMX25ld21ldGF0YWJsZYoCEWx1YUxfc2V0bWV0YXRhYmxliwIPbHVhTF9jaGVja3VkYXRhjAIJdHlwZWVycm9yjQIQbHVhTF9jaGVja29wdGlvbo4CD2x1YUxfb3B0bHN0cmluZ48CEWx1YUxfY2hlY2tsc3RyaW5nkAIObHVhTF9jaGVja3R5cGWRAg1sdWFMX2NoZWNrYW55kgIQbHVhTF9jaGVja251bWJlcpMCEWx1YUxfY2hlY2tpbnRlZ2VylAIPbHVhTF9vcHRpbnRlZ2VylQIRbHVhTF9wcmVwYnVmZnNpemWWAglyZXNpemVib3iXAgVib3hnY5gCD2x1YUxfYWRkbHN0cmluZ5kCD2x1YUxfcHVzaHJlc3VsdJoCE2x1YUxfcHVzaHJlc3VsdHNpemWbAg1sdWFMX2FkZHZhbHVlnAIRbHVhTF9idWZmaW5pdHNpemWdAg5sdWFMX2xvYWRmaWxleJ4CC3NraXBjb21tZW50nwIEZ2V0RqACEGx1YUxfbG9hZGJ1ZmZlcnihAgRnZXRTogIRbHVhTF9nZXRtZXRhZmllbGSjAg1sdWFMX2NhbGxtZXRhpAIIbHVhTF9sZW6lAg5sdWFMX3RvbHN0cmluZ6YCDWx1YUxfc2V0ZnVuY3OnAhBsdWFMX2dldHN1YnRhYmxlqAINbHVhTF9yZXF1aXJlZqkCCWx1YUxfZ3N1YqoCDWx1YUxfbmV3c3RhdGWrAgdsX2FsbG9jrAIFcGFuaWOtAhJsdWFMX2NoZWNrdmVyc2lvbl+uAgxsdWFvcGVuX2Jhc2WvAgtsdWFCX2Fzc2VydLACCmx1YUJfZXJyb3KxAhNsdWFCX2NvbGxlY3RnYXJiYWdlsgILbHVhQl9kb2ZpbGWzAgpkb2ZpbGVjb250tAIRbHVhQl9nZXRtZXRhdGFibGW1AgtsdWFCX2lwYWlyc7YCCWlwYWlyc2F1eLcCCXBhaXJzbWV0YbgCDWx1YUJfbG9hZGZpbGW5AglsdWFCX2xvYWS6Ag5nZW5lcmljX3JlYWRlcrsCCWx1YUJfbmV4dLwCCmx1YUJfcGFpcnO9AgpsdWFCX3BjYWxsvgILZmluaXNocGNhbGy/AgpsdWFCX3ByaW50wAINbHVhQl9yYXdlcXVhbMECC2x1YUJfcmF3bGVuwgILbHVhQl9yYXdnZXTDAgtsdWFCX3Jhd3NldMQCC2x1YUJfc2VsZWN0xQIRbHVhQl9zZXRtZXRhdGFibGXGAg1sdWFCX3RvbnVtYmVyxwINbHVhQl90b3N0cmluZ8gCCWx1YUJfdHlwZckCC2x1YUJfeHBjYWxsygIPbHVhb3Blbl9wYWNrYWdlywIEZ2N0bcwCEHNlYXJjaGVyX3ByZWxvYWTNAgxzZWFyY2hlcl9MdWHOAgpzZWFyY2hlcl9DzwIOc2VhcmNoZXJfQ3Jvb3TQAgdzZXRwYXRo0QIKbGxfbG9hZGxpYtICC2xvb2tmb3JmdW5j0wINbGxfc2VhcmNocGF0aNQCCnNlYXJjaHBhdGjVAghsb2FkZnVuY9YCCmxsX3JlcXVpcmXXAhFsdWFvcGVuX2Nvcm91dGluZdgCDWx1YUJfY29jcmVhdGXZAg1sdWFCX2NvcmVzdW1l2gIJYXV4cmVzdW1l2wIObHVhQl9jb3J1bm5pbmfcAg1sdWFCX2Nvc3RhdHVz3QILbHVhQl9jb3dyYXDeAgxsdWFCX2F1eHdyYXDfAgpsdWFCX3lpZWxk4AIObHVhQl95aWVsZGFibGXhAg1sdWFvcGVuX3RhYmxl4gIHdGNvbmNhdOMCCGNoZWNrdGFi5AIHdGluc2VydOUCBHBhY2vmAgZ1bnBhY2vnAgd0cmVtb3Zl6AIFdG1vdmXpAgRzb3J06gIHYXV4c29ydOsCCXNvcnRfY29tcOwCCmx1YW9wZW5faW/tAgppb19ub2Nsb3Nl7gIIaW9fY2xvc2XvAghpb19mbHVzaPACCGlvX2lucHV08QIIZ19pb2ZpbGXyAghpb19saW5lc/MCCW9wZW5jaGVja/QCCWF1eF9saW5lc/UCB2lvX29wZW72Aglpb19mY2xvc2X3Aglpb19vdXRwdXT4Aghpb19wb3BlbvkCCWlvX3BjbG9zZfoCB2lvX3JlYWT7AgZnX3JlYWT8Agppb190bXBmaWxl/QIHaW9fdHlwZf4CCGlvX3dyaXRl/wIHZ193cml0ZYADC2lvX3JlYWRsaW5lgQMJcmVhZF9saW5lggMHZl9mbHVzaIMDB2ZfbGluZXOEAwZmX3JlYWSFAwZmX3NlZWuGAwlmX3NldHZidWaHAwdmX3dyaXRliAMEZl9nY4kDCmZfdG9zdHJpbmeKAwpsdWFvcGVuX29ziwMIb3NfY2xvY2uMAwdvc19kYXRljQMMc2V0YWxsZmllbGRzjgMLb3NfZGlmZnRpbWWPAwpvc19leGVjdXRlkAMHb3NfZXhpdJEDCW9zX2dldGVudpIDCW9zX3JlbW92ZZMDCW9zX3JlbmFtZZQDDG9zX3NldGxvY2FsZZUDB29zX3RpbWWWAwhnZXRmaWVsZJcDCm9zX3RtcG5hbWWYAw5sdWFvcGVuX3N0cmluZ5kDCHN0cl9ieXRlmgMIc3RyX2NoYXKbAwhzdHJfZHVtcJwDBndyaXRlcp0DCHN0cl9maW5kngMMc3RyX2ZpbmRfYXV4nwMKc3RyX2Zvcm1hdKADBmdtYXRjaKEDCmdtYXRjaF9hdXiiAwhzdHJfZ3N1YqMDBW1hdGNopAMPcHVzaF9vbmVjYXB0dXJlpQMHc3RyX2xlbqYDCXN0cl9sb3dlcqcDCXN0cl9tYXRjaKgDB3N0cl9yZXCpAwtzdHJfcmV2ZXJzZaoDB3N0cl9zdWKrAwlzdHJfdXBwZXKsAwhzdHJfcGFja60DCmdldGRldGFpbHOuAwxzdHJfcGFja3NpemWvAwpzdHJfdW5wYWNrsAMLbWF0Y2hfY2xhc3OxAwtzaW5nbGVtYXRjaLIDCWdldG9wdGlvbrMDDGx1YW9wZW5fbWF0aLQDCG1hdGhfYWJztQMJbWF0aF9hY29ztgMJbWF0aF9hc2lutwMJbWF0aF9hdGFuuAMJbWF0aF9jZWlsuQMIbWF0aF9jb3O6AwhtYXRoX2RlZ7sDCG1hdGhfZXhwvAMKbWF0aF90b2ludL0DCm1hdGhfZmxvb3K+AwltYXRoX2Ztb2S/AwhtYXRoX3VsdMADCG1hdGhfbG9nwQMIbWF0aF9tYXjCAwhtYXRoX21pbsMDCW1hdGhfbW9kZsQDCG1hdGhfcmFkxQMLbWF0aF9yYW5kb23GAw9tYXRoX3JhbmRvbXNlZWTHAwhtYXRoX3NpbsgDCW1hdGhfc3FydMkDCG1hdGhfdGFuygMJbWF0aF90eXBlywMJbWF0aF9jb3NozAMJbWF0aF9zaW5ozQMJbWF0aF90YW5ozgMIbWF0aF9wb3fPAwptYXRoX2ZyZXhw0AMKbWF0aF9sZGV4cNEDCm1hdGhfbG9nMTDSAwxsdWFvcGVuX3V0ZjjTAwpieXRlb2Zmc2V01AMJY29kZXBvaW501QMHdXRmY2hhctYDBnV0ZmxlbtcDCml0ZXJfY29kZXPYAwhpdGVyX2F1eNkDDWx1YW9wZW5fZGVidWfaAwhkYl9kZWJ1Z9sDD2RiX2dldHVzZXJ2YWx1ZdwDCmRiX2dldGhvb2vdAwVob29rZt4DCmRiX2dldGluZm/fAwtkYl9nZXRsb2NhbOADDmRiX2dldHJlZ2lzdHJ54QMPZGJfZ2V0bWV0YXRhYmxl4gMNZGJfZ2V0dXB2YWx1ZeMDDmRiX3VwdmFsdWVqb2lu5AMMZGJfdXB2YWx1ZWlk5QMPZGJfc2V0dXNlcnZhbHVl5gMKZGJfc2V0aG9va+cDC2RiX3NldGxvY2Fs6AMPZGJfc2V0bWV0YXRhYmxl6QMNZGJfc2V0dXB2YWx1ZeoDDGRiX3RyYWNlYmFja+sDDWx1YW9wZW5fYml0MzLsAwliX2Fyc2hpZnTtAwViX2FuZO4DBWJfbm907wMEYl9vcvADBWJfeG9y8QMGYl90ZXN08gMJYl9leHRyYWN08wMGYl9scm909AMIYl9sc2hpZnT1AwliX3JlcGxhY2X2AwZiX3Jyb3T3AwhiX3JzaGlmdPgDBmhhbmRsZfkDCGJvb3RfbHVh+gMKbXNnaGFuZGxlcvsDB2xhY3Rpb278AwVsc3RvcP0DBG1haW7+AwVmb3Blbv8DBWZyZWFkgAQGZmNsb3NlgQQGbWFsbG9jggQIX19mZG9wZW6DBA1fX3N0ZGlvX2Nsb3NlhAQMX19zdGRpb19yZWFkhQQMX19zdGRpb19zZWVrhgQNX19zdGRpb193cml0ZYcEAVKIBARhdGFuiQQFX19jb3OKBApfX3JlbV9waW8yiwQFX19zaW6MBAdfX2V4cG8yjQQIX19tZW1jcHmOBAhfX21lbXNldI8EB19fY2xvY2uQBAZfX3RpbWWRBANleHCSBAVleHBtMZMEBmZmbHVzaJQECF9fdG9yZWFklQQHX191Zmxvd5YEBWZnZXRzlwQGZmlsZW5vmAQEZm1vZJkECGZpcHJpbnRmmgQJX190b3dyaXRlmwQKX19vdmVyZmxvd5wEB2RvX3B1dGOdBAVmcmV4cJ4EEV9fZnNlZWtvX3VubG9ja2VknwQRX19mdGVsbG9fdW5sb2NrZWSgBAlfX2Z3cml0ZXihBAZmd3JpdGWiBAdkb19nZXRjowQGZ2V0ZW52pAQUX19wdGhyZWFkX211dGV4X2xvY2ulBANsb2emBAVsb2cxMKcEBm1lbWNocqgEBm1lbWNtcKkEA3Bvd6oECGNoZWNraW50qwQHaXByaW50ZqwEBHB1dHOtBAZzY2FsYm6uBAVzd2FwY68EDF9fZ2V0X2xvY2FsZbAEBnNpZ25hbLEECHNucHJpbnRmsgQYX19lbXNjcmlwdGVuX3N0ZG91dF9zZWVrswQGc3RyY2hytAQLX19zdHJjaHJudWy1BAZzdHJjbXC2BAZzdHJjcHm3BAhzdHJlcnJvcrgEBnN0cmxlbrkEB3N0cm5jbXC6BAdzdHJwYnJruwQGc3Ryc3BuvAQGc3Ryc3RyvQQIX19zaGdldGO+BAljb3B5c2lnbmy/BAdzY2FsYm5swAQFZm1vZGzBBAdzY2FuZXhwwgQGc3RydG9kwwQFX190YW7EBApfX3JhbmRuYW1lxQQFdHpzZXTGBAZ1bmdldGPHBBNfX3ZmcHJpbnRmX2ludGVybmFsyAQLcHJpbnRmX2NvcmXJBANvdXTKBAZnZXRpbnTLBAdwb3BfYXJnzAQFZm10X3XNBANwYWTOBAZmbXRfZnDPBBNwb3BfYXJnX2xvbmdfZG91Ymxl0AQIc25fd3JpdGXRBAZ3Y3RvbWLSBARzYnJr0wQZZW1zY3JpcHRlbl9idWlsdGluX21hbGxvY9QEF2Vtc2NyaXB0ZW5fYnVpbHRpbl9mcmVl1QQRaW50ZXJuYWxfbWVtYWxpZ27WBA1kaXNwb3NlX2NodW5r1wQIX19hZGR0ZjPYBAlfX2FzaGx0aTPZBAdfX2xldGYy2gQHX19nZXRmMtsECF9fZGl2dGYz3AQIc2V0VGhyZXfdBBJlbXNjcmlwdGVuX2xvbmdqbXDeBA1fX2V4dGVuZGRmdGYy3wQLX19mbG9hdHNpdGbgBA1fX2Zsb2F0dW5zaXRm4QQJX19sc2hydGkz4gQIX19tdWx0ZjPjBAhfX211bHRpM+QECF9fc3VidGYz5QQMX190cnVuY3RmZGYy5gQZX2Vtc2NyaXB0ZW5fc3RhY2tfcmVzdG9yZecEF19lbXNjcmlwdGVuX3N0YWNrX2FsbG9j6AQcZW1zY3JpcHRlbl9zdGFja19nZXRfY3VycmVudOkEFWVtc2NyaXB0ZW5fc3RhY2tfaW5pdOoEGWVtc2NyaXB0ZW5fc3RhY2tfZ2V0X2ZyZWXrBBllbXNjcmlwdGVuX3N0YWNrX2dldF9iYXNl7AQYZW1zY3JpcHRlbl9zdGFja19nZXRfZW5k7QQLZHluQ2FsbF9qamruBAtkeW5DYWxsX3Zqau8ECmR5bkNhbGxfaWrwBAxkeW5DYWxsX2pqamrxBA1keW5DYWxsX2pqampq8gQMZHluQ2FsbF9pamlq8wQNZHluQ2FsbF9pampqavQECmR5bkNhbGxfdmn1BAxkeW5DYWxsX2pqamn2BA9keW5DYWxsX2lqZGlpaWkHNwQAD19fc3RhY2tfcG9pbnRlcgEIdGVtcFJldDACC19fc3RhY2tfZW5kAwxfX3N0YWNrX2Jhc2UJwBbjAQAHLnJvZGF0YQEJLnJvZGF0YS4xAgkucm9kYXRhLjIDCS5yb2RhdGEuMwQJLnJvZGF0YS40BQkucm9kYXRhLjUGCS5yb2RhdGEuNgcJLnJvZGF0YS43CAkucm9kYXRhLjgJCS5yb2RhdGEuOQoKLnJvZGF0YS4xMAsKLnJvZGF0YS4xMQwKLnJvZGF0YS4xMg0KLnJvZGF0YS4xMw4KLnJvZGF0YS4xNA8KLnJvZGF0YS4xNRAKLnJvZGF0YS4xNhEKLnJvZGF0YS4xNxIKLnJvZGF0YS4xOBMKLnJvZGF0YS4xORQKLnJvZGF0YS4yMBUKLnJvZGF0YS4yMRYKLnJvZGF0YS4yMhcKLnJvZGF0YS4yMxgKLnJvZGF0YS4yNBkKLnJvZGF0YS4yNRoKLnJvZGF0YS4yNhsKLnJvZGF0YS4yNxwKLnJvZGF0YS4yOB0KLnJvZGF0YS4yOR4KLnJvZGF0YS4zMB8KLnJvZGF0YS4zMSAKLnJvZGF0YS4zMiEKLnJvZGF0YS4zMyIKLnJvZGF0YS4zNCMKLnJvZGF0YS4zNSQKLnJvZGF0YS4zNiUKLnJvZGF0YS4zNyYKLnJvZGF0YS4zOCcKLnJvZGF0YS4zOSgKLnJvZGF0YS40MCkKLnJvZGF0YS40MSoKLnJvZGF0YS40MisKLnJvZGF0YS40MywKLnJvZGF0YS40NC0KLnJvZGF0YS40NS4KLnJvZGF0YS40Ni8KLnJvZGF0YS40NzAKLnJvZGF0YS40ODEKLnJvZGF0YS40OTIKLnJvZGF0YS41MDMKLnJvZGF0YS41MTQKLnJvZGF0YS41MjUKLnJvZGF0YS41MzYKLnJvZGF0YS41NDcKLnJvZGF0YS41NTgKLnJvZGF0YS41NjkKLnJvZGF0YS41NzoKLnJvZGF0YS41ODsKLnJvZGF0YS41OTwKLnJvZGF0YS42MD0KLnJvZGF0YS42MT4KLnJvZGF0YS42Mj8KLnJvZGF0YS42M0AKLnJvZGF0YS42NEEKLnJvZGF0YS42NUIKLnJvZGF0YS42NkMKLnJvZGF0YS42N0QKLnJvZGF0YS42OEUKLnJvZGF0YS42OUYKLnJvZGF0YS43MEcKLnJvZGF0YS43MUgKLnJvZGF0YS43MkkKLnJvZGF0YS43M0oKLnJvZGF0YS43NEsKLnJvZGF0YS43NUwKLnJvZGF0YS43Nk0KLnJvZGF0YS43N04KLnJvZGF0YS43OE8KLnJvZGF0YS43OVAKLnJvZGF0YS44MFEKLnJvZGF0YS44MVIKLnJvZGF0YS44MlMKLnJvZGF0YS44M1QKLnJvZGF0YS44NFUKLnJvZGF0YS44NVYKLnJvZGF0YS44NlcKLnJvZGF0YS44N1gKLnJvZGF0YS44OFkKLnJvZGF0YS44OVoKLnJvZGF0YS45MFsKLnJvZGF0YS45MVwKLnJvZGF0YS45Ml0KLnJvZGF0YS45M14KLnJvZGF0YS45NF8KLnJvZGF0YS45NWAKLnJvZGF0YS45NmEKLnJvZGF0YS45N2IKLnJvZGF0YS45OGMKLnJvZGF0YS45OWQLLnJvZGF0YS4xMDBlCy5yb2RhdGEuMTAxZgsucm9kYXRhLjEwMmcLLnJvZGF0YS4xMDNoCy5yb2RhdGEuMTA0aQsucm9kYXRhLjEwNWoLLnJvZGF0YS4xMDZrCy5yb2RhdGEuMTA3bAsucm9kYXRhLjEwOG0LLnJvZGF0YS4xMDluCy5yb2RhdGEuMTEwbwsucm9kYXRhLjExMXALLnJvZGF0YS4xMTJxCy5yb2RhdGEuMTEzcgsucm9kYXRhLjExNHMLLnJvZGF0YS4xMTV0Cy5yb2RhdGEuMTE2dQsucm9kYXRhLjExN3YLLnJvZGF0YS4xMTh3Cy5yb2RhdGEuMTE5eAsucm9kYXRhLjEyMHkLLnJvZGF0YS4xMjF6Cy5yb2RhdGEuMTIyewsucm9kYXRhLjEyM3wLLnJvZGF0YS4xMjR9Cy5yb2RhdGEuMTI1fgsucm9kYXRhLjEyNn8LLnJvZGF0YS4xMjeAAQsucm9kYXRhLjEyOIEBCy5yb2RhdGEuMTI5ggELLnJvZGF0YS4xMzCDAQsucm9kYXRhLjEzMYQBCy5yb2RhdGEuMTMyhQELLnJvZGF0YS4xMzOGAQsucm9kYXRhLjEzNIcBCy5yb2RhdGEuMTM1iAELLnJvZGF0YS4xMzaJAQsucm9kYXRhLjEzN4oBCy5yb2RhdGEuMTM4iwELLnJvZGF0YS4xMzmMAQsucm9kYXRhLjE0MI0BCy5yb2RhdGEuMTQxjgELLnJvZGF0YS4xNDKPAQsucm9kYXRhLjE0M5ABCy5yb2RhdGEuMTQ0kQELLnJvZGF0YS4xNDWSAQsucm9kYXRhLjE0NpMBCy5yb2RhdGEuMTQ3lAELLnJvZGF0YS4xNDiVAQsucm9kYXRhLjE0OZYBCy5yb2RhdGEuMTUwlwELLnJvZGF0YS4xNTGYAQsucm9kYXRhLjE1MpkBCy5yb2RhdGEuMTUzmgELLnJvZGF0YS4xNTSbAQsucm9kYXRhLjE1NZwBCy5yb2RhdGEuMTU2nQELLnJvZGF0YS4xNTeeAQsucm9kYXRhLjE1OJ8BCy5yb2RhdGEuMTU5oAELLnJvZGF0YS4xNjChAQsucm9kYXRhLjE2MaIBCy5yb2RhdGEuMTYyowELLnJvZGF0YS4xNjOkAQsucm9kYXRhLjE2NKUBCy5yb2RhdGEuMTY1pgELLnJvZGF0YS4xNjanAQsucm9kYXRhLjE2N6gBCy5yb2RhdGEuMTY4qQELLnJvZGF0YS4xNjmqAQsucm9kYXRhLjE3MKsBCy5yb2RhdGEuMTcxrAELLnJvZGF0YS4xNzKtAQsucm9kYXRhLjE3M64BCy5yb2RhdGEuMTc0rwELLnJvZGF0YS4xNzWwAQsucm9kYXRhLjE3NrEBCy5yb2RhdGEuMTc3sgELLnJvZGF0YS4xNzizAQsucm9kYXRhLjE3ObQBCy5yb2RhdGEuMTgwtQELLnJvZGF0YS4xODG2AQsucm9kYXRhLjE4MrcBCy5yb2RhdGEuMTgzuAELLnJvZGF0YS4xODS5AQsucm9kYXRhLjE4NboBCy5yb2RhdGEuMTg2uwELLnJvZGF0YS4xODe8AQsucm9kYXRhLjE4OL0BCy5yb2RhdGEuMTg5vgELLnJvZGF0YS4xOTC/AQsucm9kYXRhLjE5McABCy5yb2RhdGEuMTkywQELLnJvZGF0YS4xOTPCAQsucm9kYXRhLjE5NMMBCy5yb2RhdGEuMTk1xAELLnJvZGF0YS4xOTbFAQsucm9kYXRhLjE5N8YBCy5yb2RhdGEuMTk4xwELLnJvZGF0YS4xOTnIAQsucm9kYXRhLjIwMMkBCy5yb2RhdGEuMjAxygELLnJvZGF0YS4yMDLLAQsucm9kYXRhLjIwM8wBCy5yb2RhdGEuMjA0zQELLnJvZGF0YS4yMDXOAQsucm9kYXRhLjIwNs8BCy5yb2RhdGEuMjA30AELLnJvZGF0YS4yMDjRAQsucm9kYXRhLjIwOdIBCy5yb2RhdGEuMjEw0wEFLmRhdGHUAQcuZGF0YS4x1QEHLmRhdGEuMtYBBy5kYXRhLjPXAQcuZGF0YS402AEHLmRhdGEuNdkBBy5kYXRhLjbaAQcuZGF0YS432wEHLmRhdGEuONwBBy5kYXRhLjndAQguZGF0YS4xMN4BCC5kYXRhLjEx3wEILmRhdGEuMTLgAQguZGF0YS4xM+EBCC5kYXRhLjE04gEILmRhdGEuMTU="
|