From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-qk2-f42.google.com (mail-qk2-f42.google.com [74.125.230.234]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 35BC3509EFA for ; Mon, 28 Sep 2026 22:26:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.230.234 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1790634369; cv=none; b=kjYoQsB+5pvLdisX1IHx8rAiK5b03t5jN/xfXi9/EnYGnsATHCbxXmqR6oMzqfsnJztbvCfZweOiNEqcjcoX8LM2b3FRt/GEHluNGrZNMhBOAX6ftNNcYU9M1hNy/qftHjQM342opOwKqAlbJXpjoks8ZzxVfgmLoyF0521wcbs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1790634369; c=relaxed/simple; bh=yUVhLKpLKd2Vmq52PUd4gQFfi/MwbpEI0ZP8VvD2fK8=; h=Message-ID:Date:Content-Type:MIME-Version:From:To:Subject: In-Reply-To:References; b=QmxBJlK/u5uPPQVg3qKPAD9qYR4m6f5bZNqwJt8AsRgkD7Op4OtpFCwtV3BrsZ6gB4RThSWhsEPpugKX9SAyoyp39lfUry2oW1F3i2Lb3p3/+4kihiMPRuxY7rL4KErbbQmI3PMQJA18+Vrgw6K9r3XbN3ZwL3aTIkjPZxjLXtQ= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Vl0dGwAT; arc=none smtp.client-ip=74.125.230.234 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Vl0dGwAT" Received: by mail-qk2-f42.google.com with SMTP id af79cd13be357-93c56f7c1c8so320523885a.3 for ; Mon, 28 Sep 2026 15:26:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1790634365; x=1791239165; darn=vger.kernel.org; h=reply-to:references:in-reply-to:subject:to:from:mime-version :content-type:date:message-id:from:to:cc:subject:date:message-id :reply-to:content-type; bh=yUVhLKpLKd2Vmq52PUd4gQFfi/MwbpEI0ZP8VvD2fK8=; b=Vl0dGwATukL/fVKaskHEAhcEUlDPw9PjltLNbBN5wnQjZgn03M6Mw/S7vG/E50GKr+ PgaN2BV3yRKZaotsd0aEu/AjpK6rD/YKT20zP2AP7xaxCePWXZiM7Oo+ZgyMP4ZhWf6w QufUDdWaTFLhYcc6IELDdo8nh+XQcYZdyYTtE3nA4jiwC49349TEp5N57iR6f5JIH349 TrXpFGQi1hben0M/28tS+5PG4J5oqewLUTELfqNNRVPOJojcgBvsXA5Lqgg9gnC3/M1P yaUk4v/4ZYg3G1bpvuoyzPnYATSSKRW2l/yo2ieSJ11GxX2wiTqbxpA4QDwcNXc8C77o nOGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1790634365; x=1791239165; h=reply-to:references:in-reply-to:subject:to:from:mime-version :content-type:date:message-id:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to:content-type; bh=yUVhLKpLKd2Vmq52PUd4gQFfi/MwbpEI0ZP8VvD2fK8=; b=ErR3mumIYWEnFl1oHdCi9PKS6QJRP1RjfrMzeeM52jjhpEz109vn6QAa2P+HaZCO7z BeNZjdvxw5AtQ/k4G70oaOo2DECn0aUDl/vFAau8xc/qACuTLqqyscLj5uz2ioMHafaU b+h3RXJWQhQYpbkaZr8t/ceuDPqkg/2S9JUkgi+k7w3MwMk+cTg6AJcAmjmh9HAmN1gs 99fMza/uHsk8sdLgGoYWhCS+jdy9BwvjdyjTYsVdazmwYR+pVO4NWuJ2Xn0Rdt62whTr Gngn77uYrXGpjKFj8vHMm4b1s3l3Tk3o6qQVWRxWf+GF5rqdQrW7t7RDjadIi6dSij+P AMyQ== X-Gm-Message-State: AFuF++mkkllWABJV6vkBQlPlbM/NRqOkOg/X4OjOZDeb2g30nljjIQJs sMfpUvXn4GxDm6LRs6M30HtZeMkIP82vpGT5h9OEOvvjX/Mt7EN2TzmlrT1w2qcs X-Gm-Gg: AYBFou21hPaE79IIXiwGWt09cebWG/HZP0RhCq2m0KcPz8F01v8MUttjx/irJgVLGri dY8/tT9FyeIpvRHmAPL0Hr2TF2E1R90kNyEwFqSsou4dEXnOKPoErVZGrs2Xz55793iQY00xG+W 8nuATmzXFVErkCmiriZxOcJLrtft/gCYkwXLhretaBsJpHBtyAT5wVVZsUJL14WxtCI26Vm9vu8 aEUS+Xh1wsNTn/p0ArR7hACHFO1PfOX+I3jhrC2+PN+VMKKD2Gv+hWjS+wxATz9029qyt4mdohO 955xINrswRjjoUPHqn/gKkORO2pbLdmhyY68oCHj1SOf41HWPpjKQuYE/rqNI1WMVpjuQulbt54 7QoXsCBX9kiu3jD6GYdUtlgdshs1t34xXbGGBgAk7Uqk9ZcYBkap23Mg4Eu3Grpf+f8VtIBmsep 0ZqHS8eAF0TBTa+6hbLpjrMejhKdFRi/Pv4dNB7RROmXgAkNAOmTbr5USylYrstOv5aiTUEDAIp QVTy/Y= X-Received: by 2002:a05:620a:17a1:b0:93b:e6f4:60c0 with SMTP id af79cd13be357-93c43d0da80mr2259370085a.44.1790634364503; Mon, 28 Sep 2026 15:26:04 -0700 (PDT) Received: from [172.17.0.2] ([48.217.140.232]) by smtp.gmail.com with ESMTPSA id af79cd13be357-93c8141617bsm254701785a.25.2026.09.28.15.26.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Sep 2026 15:26:03 -0700 (PDT) Message-ID: <6abae97b.eeba9552.340f2b.8b59@mx.google.com> Date: Mon, 28 Sep 2026 15:26:03 -0700 (PDT) Content-Type: multipart/mixed; boundary="===============2448570474187979152==" Precedence: bulk X-Mailing-List: linux-bluetooth@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 From: bluez.test.bot@gmail.com To: linux-bluetooth@vger.kernel.org, luiz.dentz@gmail.com Subject: RE: Add HoG functional tests and shared/hog In-Reply-To: <20260928200031.1209311-2-luiz.dentz@gmail.com> References: <20260928200031.1209311-2-luiz.dentz@gmail.com> Reply-To: linux-bluetooth@vger.kernel.org --===============2448570474187979152== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhpcyBpcyBhdXRvbWF0ZWQgZW1haWwgYW5kIHBsZWFzZSBkbyBub3QgcmVwbHkgdG8gdGhpcyBl bWFpbCEKCkRlYXIgc3VibWl0dGVyLAoKVGhhbmsgeW91IGZvciBzdWJtaXR0aW5nIHRoZSBwYXRj aGVzIHRvIHRoZSBsaW51eCBibHVldG9vdGggbWFpbGluZyBsaXN0LgpUaGlzIGlzIGEgQ0kgdGVz dCByZXN1bHRzIHdpdGggeW91ciBwYXRjaCBzZXJpZXM6ClBXIExpbms6aHR0cHM6Ly9wYXRjaHdv cmsua2VybmVsLm9yZy9zZXJpZXMvMTE3NTU2MS8KCi0tLVRlc3QgcmVzdWx0LS0tCgpUZXN0IFN1 bW1hcnk6CkNoZWNrUGF0Y2ggICAgICAgICAgICAgICAgICAgIEZBSUwgICAgICAxNS4wMiBzZWNv bmRzCkdpdExpbnQgICAgICAgICAgICAgICAgICAgICAgIEZBSUwgICAgICA4LjM0IHNlY29uZHMK QnVpbGRFbGwgICAgICAgICAgICAgICAgICAgICAgUEFTUyAgICAgIDE5LjE2IHNlY29uZHMKQmx1 ZXpNYWtlICAgICAgICAgICAgICAgICAgICAgUEFTUyAgICAgIDM2OC43MSBzZWNvbmRzCk1ha2VD aGVjayAgICAgICAgICAgICAgICAgICAgIFBBU1MgICAgICAxNC4zMiBzZWNvbmRzCk1ha2VEaXN0 Y2hlY2sgICAgICAgICAgICAgICAgIFBBU1MgICAgICAxMzcuMzMgc2Vjb25kcwpDaGVja1ZhbGdy aW5kICAgICAgICAgICAgICAgICBQQVNTICAgICAgMjI4LjQwIHNlY29uZHMKQ2hlY2tTbWF0Y2gg ICAgICAgICAgICAgICAgICAgUEFTUyAgICAgIDI4OC4yMiBzZWNvbmRzCmJsdWV6bWFrZWV4dGVs bCAgICAgICAgICAgICAgIFBBU1MgICAgICA5Mi42NSBzZWNvbmRzClRlc3RGdW5jdGlvbmFsICAg ICAgICAgICAgICAgIFBBU1MgICAgICAxMTEyLjc4IHNlY29uZHMKSW5jcmVtZW50YWxCdWlsZCAg ICAgICAgICAgICAgRkFJTCAgICAgIDc0OC42MyBzZWNvbmRzClNjYW5CdWlsZCAgICAgICAgICAg ICAgICAgICAgIEZBSUwgICAgICAxNTAuMzkgc2Vjb25kcwoKRGV0YWlscwojIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMKVGVzdDogQ2hlY2tQYXRjaCAtIEZBSUwKRGVzYzogUnVuIGNoZWNr cGF0Y2gucGwgc2NyaXB0Ck91dHB1dDoKW0JsdWVaLHY2LDA5LzIzXSBjbGllbnQvYWdlbnQ6IEZp eCBjcmFzaCBvbiBDYW5jZWwgd2l0aCBubyBwZW5kaW5nIHJlcXVlc3QKV0FSTklORzpDT01NSVRf TE9HX0xPTkdfTElORTogUHJlZmVyIGEgbWF4aW11bSA3NSBjaGFycyBwZXIgbGluZSAocG9zc2li bGUgdW53cmFwcGVkIGNvbW1pdCBkZXNjcmlwdGlvbj8pCiMxMDg6IAogIzYgIF9kYnVzX3dhcm5f Y2hlY2tfZmFpbGVkICgpIGZyb20gL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9saWJkYnVzLTEu c28uMwoKL2hvbWUvcnVubmVyL3dvcmsvYmx1ZXovYmx1ZXovc3JjL3BhdGNoLzE0ODUzNDAyLnBh dGNoIHRvdGFsOiAwIGVycm9ycywgMSB3YXJuaW5ncywgMTYgbGluZXMgY2hlY2tlZAoKTk9URTog Rm9yIHNvbWUgb2YgdGhlIHJlcG9ydGVkIGRlZmVjdHMsIGNoZWNrcGF0Y2ggbWF5IGJlIGFibGUg dG8KICAgICAgbWVjaGFuaWNhbGx5IGNvbnZlcnQgdG8gdGhlIHR5cGljYWwgc3R5bGUgdXNpbmcg LS1maXggb3IgLS1maXgtaW5wbGFjZS4KCi9ob21lL3J1bm5lci93b3JrL2JsdWV6L2JsdWV6L3Ny Yy9wYXRjaC8xNDg1MzQwMi5wYXRjaCBoYXMgc3R5bGUgcHJvYmxlbXMsIHBsZWFzZSByZXZpZXcu CgpOT1RFOiBJZ25vcmVkIG1lc3NhZ2UgdHlwZXM6IENPTU1JVF9NRVNTQUdFIENPTVBMRVhfTUFD Uk8gQ09OU1RfU1RSVUNUIEZJTEVfUEFUSF9DSEFOR0VTIE1JU1NJTkdfU0lHTl9PRkYgUFJFRkVS X1BBQ0tFRCBTUERYX0xJQ0VOU0VfVEFHIFNQTElUX1NUUklORyBTU0NBTkZfVE9fS1NUUlRPCgpO T1RFOiBJZiBhbnkgb2YgdGhlIGVycm9ycyBhcmUgZmFsc2UgcG9zaXRpdmVzLCBwbGVhc2UgcmVw b3J0CiAgICAgIHRoZW0gdG8gdGhlIG1haW50YWluZXIsIHNlZSBDSEVDS1BBVENIIGluIE1BSU5U QUlORVJTLgoKCltCbHVlWix2NiwyMy8yM10gYXR0cmliOiBSZW1vdmUgZGlyZWN0b3J5CldBUk5J Tkc6TElORV9TUEFDSU5HOiBNaXNzaW5nIGEgYmxhbmsgbGluZSBhZnRlciBkZWNsYXJhdGlvbnMK IzE5MTE6IEZJTEU6IHNyYy9kZXZpY2UuYzo2NDg4OgorCQlzZHBfbGlzdF90ICpwOworCQlmb3Ig KHAgPSBsaXN0LT5kYXRhOyBwOyBwID0gcC0+bmV4dCkgewoKV0FSTklORzpMSU5FX1NQQUNJTkc6 IE1pc3NpbmcgYSBibGFuayBsaW5lIGFmdGVyIGRlY2xhcmF0aW9ucwojMTkxMzogRklMRTogc3Jj L2RldmljZS5jOjY0OTA6CisJCQlzZHBfZGF0YV90ICpzZXEgPSBwLT5kYXRhOworCQkJaWYgKHNl cSAmJiBzZXEtPmR0ZCA9PSBTRFBfVVVJRDE2ICYmCgovaG9tZS9ydW5uZXIvd29yay9ibHVlei9i bHVlei9zcmMvcGF0Y2gvMTQ4NTM0MTUucGF0Y2ggdG90YWw6IDAgZXJyb3JzLCAyIHdhcm5pbmdz LCAyNzggbGluZXMgY2hlY2tlZAoKTk9URTogRm9yIHNvbWUgb2YgdGhlIHJlcG9ydGVkIGRlZmVj dHMsIGNoZWNrcGF0Y2ggbWF5IGJlIGFibGUgdG8KICAgICAgbWVjaGFuaWNhbGx5IGNvbnZlcnQg dG8gdGhlIHR5cGljYWwgc3R5bGUgdXNpbmcgLS1maXggb3IgLS1maXgtaW5wbGFjZS4KCi9ob21l L3J1bm5lci93b3JrL2JsdWV6L2JsdWV6L3NyYy9wYXRjaC8xNDg1MzQxNS5wYXRjaCBoYXMgc3R5 bGUgcHJvYmxlbXMsIHBsZWFzZSByZXZpZXcuCgpOT1RFOiBJZ25vcmVkIG1lc3NhZ2UgdHlwZXM6 IENPTU1JVF9NRVNTQUdFIENPTVBMRVhfTUFDUk8gQ09OU1RfU1RSVUNUIEZJTEVfUEFUSF9DSEFO R0VTIE1JU1NJTkdfU0lHTl9PRkYgUFJFRkVSX1BBQ0tFRCBTUERYX0xJQ0VOU0VfVEFHIFNQTElU X1NUUklORyBTU0NBTkZfVE9fS1NUUlRPCgpOT1RFOiBJZiBhbnkgb2YgdGhlIGVycm9ycyBhcmUg ZmFsc2UgcG9zaXRpdmVzLCBwbGVhc2UgcmVwb3J0CiAgICAgIHRoZW0gdG8gdGhlIG1haW50YWlu ZXIsIHNlZSBDSEVDS1BBVENIIGluIE1BSU5UQUlORVJTLgoKCiMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIwpUZXN0OiBHaXRMaW50IC0gRkFJTApEZXNjOiBSdW4gZ2l0bGludApPdXRwdXQ6 CltCbHVlWix2NiwwMS8yM10gc2hhcmVkL2dhdHQtY2xpZW50OiBGaXggY2FsbGluZyBkZXN0cm95 IGFmdGVyIHVucmVnaXN0ZXJpbmcgbm90aWZ5CgoxOiBUMSBUaXRsZSBleGNlZWRzIG1heCBsZW5n dGggKDgzPjgwKTogIltCbHVlWix2NiwwMS8yM10gc2hhcmVkL2dhdHQtY2xpZW50OiBGaXggY2Fs bGluZyBkZXN0cm95IGFmdGVyIHVucmVnaXN0ZXJpbmcgbm90aWZ5IgpbQmx1ZVosdjYsMTMvMjNd IHNoYXJlZC9nYXR0LWNsaWVudDogRml4IGNhbGxpbmcgaWRsZSBjYWxsYmFja3MgYWdhaW4gd2hp bGUgbm90aWZ5aW5nCgoxOiBUMSBUaXRsZSBleGNlZWRzIG1heCBsZW5ndGggKDg1PjgwKTogIltC bHVlWix2NiwxMy8yM10gc2hhcmVkL2dhdHQtY2xpZW50OiBGaXggY2FsbGluZyBpZGxlIGNhbGxi YWNrcyBhZ2FpbiB3aGlsZSBub3RpZnlpbmciCltCbHVlWix2NiwxNy8yM10gdGVzdDogZnVuY3Rp b25hbDogY2hhbmdlIHRoZSBIb0cgU0NJIG1vZGUgd2l0aCB0aGUgSElEIENvbnRyb2wgUG9pbnQK CjE6IFQxIFRpdGxlIGV4Y2VlZHMgbWF4IGxlbmd0aCAoODU+ODApOiAiW0JsdWVaLHY2LDE3LzIz XSB0ZXN0OiBmdW5jdGlvbmFsOiBjaGFuZ2UgdGhlIEhvRyBTQ0kgbW9kZSB3aXRoIHRoZSBISUQg Q29udHJvbCBQb2ludCIKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjClRlc3Q6IEluY3Jl bWVudGFsQnVpbGQgLSBGQUlMCkRlc2M6IEluY3JlbWVudGFsIGJ1aWxkIHdpdGggdGhlIHBhdGNo ZXMgaW4gdGhlIHNlcmllcwpPdXRwdXQ6CgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gc3JjL2FkYXB0 ZXIuYzo2MzoKLi9hdHRyaWIvZ2F0dC5oOjYxOjI5OiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg 4oCYR0F0dHJpYuKAmQogICA2MSB8IGd1aW50IGdhdHRfZGlzY292ZXJfcHJpbWFyeShHQXR0cmli ICphdHRyaWIsIGJ0X3V1aWRfdCAqdXVpZCwgZ2F0dF9jYl90IGZ1bmMsCiAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjY0OjMzOiBlcnJv cjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJpYuKAmQogICA2NCB8IHVuc2lnbmVkIGludCBn YXR0X2ZpbmRfaW5jbHVkZWQoR0F0dHJpYiAqYXR0cmliLCB1aW50MTZfdCBzdGFydCwgdWludDE2 X3QgZW5kLAogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fgou L2F0dHJpYi9nYXR0Lmg6Njc6MjY6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmli 4oCZCiAgIDY3IHwgZ3VpbnQgZ2F0dF9kaXNjb3Zlcl9jaGFyKEdBdHRyaWIgKmF0dHJpYiwgdWlu dDE2X3Qgc3RhcnQsIHVpbnQxNl90IGVuZCwKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAg ICAgXn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6NzE6MjI6IGVycm9yOiB1bmtub3duIHR5cGUgbmFt ZSDigJhHQXR0cmli4oCZCiAgIDcxIHwgZ3VpbnQgZ2F0dF9yZWFkX2NoYXIoR0F0dHJpYiAqYXR0 cmliLCB1aW50MTZfdCBoYW5kbGUsIEdBdHRyaWJSZXN1bHRGdW5jIGZ1bmMsCiAgICAgIHwgICAg ICAgICAgICAgICAgICAgICAgXn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6NzE6NTY6IGVycm9yOiB1 bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmliUmVzdWx0RnVuY+KAmQogICA3MSB8IGd1aW50IGdh dHRfcmVhZF9jaGFyKEdBdHRyaWIgKmF0dHJpYiwgdWludDE2X3QgaGFuZGxlLCBHQXR0cmliUmVz dWx0RnVuYyBmdW5jLAogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6NzQ6 MjM6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmli4oCZCiAgIDc0IHwgZ3VpbnQg Z2F0dF93cml0ZV9jaGFyKEdBdHRyaWIgKmF0dHJpYiwgdWludDE2X3QgaGFuZGxlLCBjb25zdCB1 aW50OF90ICp2YWx1ZSwKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fgouL2F0 dHJpYi9nYXR0Lmg6NzU6NTQ6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmliUmVz dWx0RnVuY+KAmQogICA3NSB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzaXplX3QgdmxlbiwgR0F0dHJpYlJlc3VsdEZ1bmMgZnVuYywKICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+ fn5+Ci4vYXR0cmliL2dhdHQuaDo3ODoyNjogZXJyb3I6IHVua25vd24gdHlwZSBuYW1lIOKAmEdB dHRyaWLigJkKICAgNzggfCBndWludCBnYXR0X2Rpc2NvdmVyX2Rlc2MoR0F0dHJpYiAqYXR0cmli LCB1aW50MTZfdCBzdGFydCwgdWludDE2X3QgZW5kLAogICAgICB8ICAgICAgICAgICAgICAgICAg ICAgICAgICBefn5+fn5+Ci4vYXR0cmliL2dhdHQuaDo4MjozMjogZXJyb3I6IHVua25vd24gdHlw ZSBuYW1lIOKAmEdBdHRyaWLigJkKICAgODIgfCBndWludCBnYXR0X3JlbGlhYmxlX3dyaXRlX2No YXIoR0F0dHJpYiAqYXR0cmliLCB1aW50MTZfdCBoYW5kbGUsCiAgICAgIHwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjg0OjQxOiBlcnJvcjog dW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJpYlJlc3VsdEZ1bmPigJkKICAgODQgfCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0F0dHJpYlJlc3VsdEZ1bmMgZnVuYywK ICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+ fn5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjg3OjI2OiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg 4oCYR0F0dHJpYuKAmQogICA4NyB8IGd1aW50IGdhdHRfZXhlY3V0ZV93cml0ZShHQXR0cmliICph dHRyaWIsIHVpbnQ4X3QgZmxhZ3MsCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgIF5+ fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjg4OjMzOiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCY R0F0dHJpYlJlc3VsdEZ1bmPigJkKICAgODggfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIEdBdHRyaWJSZXN1bHRGdW5jIGZ1bmMsIGdwb2ludGVyIHVzZXJfZGF0YSk7CiAgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fgouL2F0dHJp Yi9nYXR0Lmg6OTA6MjI6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmli4oCZCiAg IDkwIHwgZ3VpbnQgZ2F0dF93cml0ZV9jbWQoR0F0dHJpYiAqYXR0cmliLCB1aW50MTZfdCBoYW5k bGUsIGNvbnN0IHVpbnQ4X3QgKnZhbHVlLAogICAgICB8ICAgICAgICAgICAgICAgICAgICAgIF5+ fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjkzOjI5OiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCY R0F0dHJpYuKAmQogICA5MyB8IGd1aW50IGdhdHRfc2lnbmVkX3dyaXRlX2NtZChHQXR0cmliICph dHRyaWIsIHVpbnQxNl90IGhhbmRsZSwKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6MTAwOjMwOiBlcnJvcjogdW5rbm93biB0eXBlIG5h bWUg4oCYR0F0dHJpYuKAmQogIDEwMCB8IGd1aW50IGdhdHRfcmVhZF9jaGFyX2J5X3V1aWQoR0F0 dHJpYiAqYXR0cmliLCB1aW50MTZfdCBzdGFydCwgdWludDE2X3QgZW5kLAogICAgICB8ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6MTAxOjUwOiBl cnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJpYlJlc3VsdEZ1bmPigJkKICAxMDEgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ0X3V1aWRfdCAqdXVpZCwgR0F0dHJpYlJl c3VsdEZ1bmMgZnVuYywKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjEwNDoyNTog ZXJyb3I6IHVua25vd24gdHlwZSBuYW1lIOKAmEdBdHRyaWLigJkKICAxMDQgfCBndWludCBnYXR0 X2V4Y2hhbmdlX210dShHQXR0cmliICphdHRyaWIsIHVpbnQxNl90IG10dSwgR0F0dHJpYlJlc3Vs dEZ1bmMgZnVuYywKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+Ci4vYXR0 cmliL2dhdHQuaDoxMDQ6NTY6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmliUmVz dWx0RnVuY+KAmQogIDEwNCB8IGd1aW50IGdhdHRfZXhjaGFuZ2VfbXR1KEdBdHRyaWIgKmF0dHJp YiwgdWludDE2X3QgbXR1LCBHQXR0cmliUmVzdWx0RnVuYyBmdW5jLAogICAgICB8ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+ fn5+fn5+fgptYWtlWzFdOiAqKiogW01ha2VmaWxlOjcyMzI6IHNyYy9hZGFwdGVyLm9dIEVycm9y IDEKbWFrZVsxXTogKioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KbWFrZTogKioq IFtNYWtlZmlsZTo0MzAzOiBhbGxdIEVycm9yIDIKW0JsdWVaLHY2LDIxLzIzXSBkZXZpY2U6IFVz ZSBidF9hdHQgaW5zdGVhZCBvZiBHQXR0cmliCgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gc3JjL2Fk YXB0ZXIuYzo2MzoKLi9hdHRyaWIvZ2F0dC5oOjYxOjI5OiBlcnJvcjogdW5rbm93biB0eXBlIG5h bWUg4oCYR0F0dHJpYuKAmQogICA2MSB8IGd1aW50IGdhdHRfZGlzY292ZXJfcHJpbWFyeShHQXR0 cmliICphdHRyaWIsIGJ0X3V1aWRfdCAqdXVpZCwgZ2F0dF9jYl90IGZ1bmMsCiAgICAgIHwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjY0OjMzOiBl cnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJpYuKAmQogICA2NCB8IHVuc2lnbmVkIGlu dCBnYXR0X2ZpbmRfaW5jbHVkZWQoR0F0dHJpYiAqYXR0cmliLCB1aW50MTZfdCBzdGFydCwgdWlu dDE2X3QgZW5kLAogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+ fgouL2F0dHJpYi9nYXR0Lmg6Njc6MjY6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0 cmli4oCZCiAgIDY3IHwgZ3VpbnQgZ2F0dF9kaXNjb3Zlcl9jaGFyKEdBdHRyaWIgKmF0dHJpYiwg dWludDE2X3Qgc3RhcnQsIHVpbnQxNl90IGVuZCwKICAgICAgfCAgICAgICAgICAgICAgICAgICAg ICAgICAgXn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6NzE6MjI6IGVycm9yOiB1bmtub3duIHR5cGUg bmFtZSDigJhHQXR0cmli4oCZCiAgIDcxIHwgZ3VpbnQgZ2F0dF9yZWFkX2NoYXIoR0F0dHJpYiAq YXR0cmliLCB1aW50MTZfdCBoYW5kbGUsIEdBdHRyaWJSZXN1bHRGdW5jIGZ1bmMsCiAgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6NzE6NTY6IGVycm9y OiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmliUmVzdWx0RnVuY+KAmQogICA3MSB8IGd1aW50 IGdhdHRfcmVhZF9jaGFyKEdBdHRyaWIgKmF0dHJpYiwgdWludDE2X3QgaGFuZGxlLCBHQXR0cmli UmVzdWx0RnVuYyBmdW5jLAogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6 NzQ6MjM6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmli4oCZCiAgIDc0IHwgZ3Vp bnQgZ2F0dF93cml0ZV9jaGFyKEdBdHRyaWIgKmF0dHJpYiwgdWludDE2X3QgaGFuZGxlLCBjb25z dCB1aW50OF90ICp2YWx1ZSwKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fgou L2F0dHJpYi9nYXR0Lmg6NzU6NTQ6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmli UmVzdWx0RnVuY+KAmQogICA3NSB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBzaXplX3QgdmxlbiwgR0F0dHJpYlJlc3VsdEZ1bmMgZnVuYywKICAgICAgfCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+ fn5+fn5+Ci4vYXR0cmliL2dhdHQuaDo3ODoyNjogZXJyb3I6IHVua25vd24gdHlwZSBuYW1lIOKA mEdBdHRyaWLigJkKICAgNzggfCBndWludCBnYXR0X2Rpc2NvdmVyX2Rlc2MoR0F0dHJpYiAqYXR0 cmliLCB1aW50MTZfdCBzdGFydCwgdWludDE2X3QgZW5kLAogICAgICB8ICAgICAgICAgICAgICAg ICAgICAgICAgICBefn5+fn5+Ci4vYXR0cmliL2dhdHQuaDo4MjozMjogZXJyb3I6IHVua25vd24g dHlwZSBuYW1lIOKAmEdBdHRyaWLigJkKICAgODIgfCBndWludCBnYXR0X3JlbGlhYmxlX3dyaXRl X2NoYXIoR0F0dHJpYiAqYXR0cmliLCB1aW50MTZfdCBoYW5kbGUsCiAgICAgIHwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjg0OjQxOiBlcnJv cjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJpYlJlc3VsdEZ1bmPigJkKICAgODQgfCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0F0dHJpYlJlc3VsdEZ1bmMgZnVu YywKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+ fn5+fn5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjg3OjI2OiBlcnJvcjogdW5rbm93biB0eXBlIG5h bWUg4oCYR0F0dHJpYuKAmQogICA4NyB8IGd1aW50IGdhdHRfZXhlY3V0ZV93cml0ZShHQXR0cmli ICphdHRyaWIsIHVpbnQ4X3QgZmxhZ3MsCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAg IF5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjg4OjMzOiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg 4oCYR0F0dHJpYlJlc3VsdEZ1bmPigJkKICAgODggfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIEdBdHRyaWJSZXN1bHRGdW5jIGZ1bmMsIGdwb2ludGVyIHVzZXJfZGF0YSk7CiAgICAg IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fgouL2F0 dHJpYi9nYXR0Lmg6OTA6MjI6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmli4oCZ CiAgIDkwIHwgZ3VpbnQgZ2F0dF93cml0ZV9jbWQoR0F0dHJpYiAqYXR0cmliLCB1aW50MTZfdCBo YW5kbGUsIGNvbnN0IHVpbnQ4X3QgKnZhbHVlLAogICAgICB8ICAgICAgICAgICAgICAgICAgICAg IF5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjkzOjI5OiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg 4oCYR0F0dHJpYuKAmQogICA5MyB8IGd1aW50IGdhdHRfc2lnbmVkX3dyaXRlX2NtZChHQXR0cmli ICphdHRyaWIsIHVpbnQxNl90IGhhbmRsZSwKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6MTAwOjMwOiBlcnJvcjogdW5rbm93biB0eXBl IG5hbWUg4oCYR0F0dHJpYuKAmQogIDEwMCB8IGd1aW50IGdhdHRfcmVhZF9jaGFyX2J5X3V1aWQo R0F0dHJpYiAqYXR0cmliLCB1aW50MTZfdCBzdGFydCwgdWludDE2X3QgZW5kLAogICAgICB8ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6MTAxOjUw OiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJpYlJlc3VsdEZ1bmPigJkKICAxMDEg fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ0X3V1aWRfdCAqdXVpZCwgR0F0dHJp YlJlc3VsdEZ1bmMgZnVuYywKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjEwNDoy NTogZXJyb3I6IHVua25vd24gdHlwZSBuYW1lIOKAmEdBdHRyaWLigJkKICAxMDQgfCBndWludCBn YXR0X2V4Y2hhbmdlX210dShHQXR0cmliICphdHRyaWIsIHVpbnQxNl90IG10dSwgR0F0dHJpYlJl c3VsdEZ1bmMgZnVuYywKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+Ci4v YXR0cmliL2dhdHQuaDoxMDQ6NTY6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmli UmVzdWx0RnVuY+KAmQogIDEwNCB8IGd1aW50IGdhdHRfZXhjaGFuZ2VfbXR1KEdBdHRyaWIgKmF0 dHJpYiwgdWludDE2X3QgbXR1LCBHQXR0cmliUmVzdWx0RnVuYyBmdW5jLAogICAgICB8ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+ fn5+fn5+fn5+fgptYWtlWzFdOiAqKiogW01ha2VmaWxlOjcyMzI6IHNyYy9hZGFwdGVyLm9dIEVy cm9yIDEKbWFrZVsxXTogKioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KbWFrZTog KioqIFtNYWtlZmlsZTo0MzAzOiBhbGxdIEVycm9yIDIKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjClRlc3Q6IFNjYW5CdWlsZCAtIEZBSUwKRGVzYzogUnVuIFNjYW4gQnVpbGQKT3V0cHV0 OgoKc3JjL3NoYXJlZC9nYXR0LWNsaWVudC5jOjQ1NzoyMTogd2FybmluZzogVXNlIG9mIG1lbW9y eSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAgNDU3IHwgICAgICAgICBnYXR0X2Ri X3VucmVnaXN0ZXIob3AtPmNsaWVudC0+ZGIsIG9wLT5kYl9pZCk7CiAgICAgIHwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6NzAy OjI6IHdhcm5pbmc6IFVzZSBvZiBtZW1vcnkgYWZ0ZXIgaXQgaXMgZnJlZWQgW3VuaXguTWFsbG9j XQogIDcwMiB8ICAgICAgICAgZGlzY292ZXJ5X29wX2NvbXBsZXRlKG9wLCBmYWxzZSwgYXR0X2Vj b2RlKTsKICAgICAgfCAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn4Kc3JjL3NoYXJlZC9nYXR0LWNsaWVudC5jOjExMDg6Mjogd2FybmluZzogVXNlIG9m IG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAxMTA4IHwgICAgICAgICBk aXNjb3Zlcnlfb3BfY29tcGxldGUob3AsIHN1Y2Nlc3MsIGF0dF9lY29kZSk7CiAgICAgIHwgICAg ICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4Kc3JjL3No YXJlZC9nYXR0LWNsaWVudC5jOjEzMDI6Mjogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBp dCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAxMzAyIHwgICAgICAgICBkaXNjb3Zlcnlfb3BfY29t cGxldGUob3AsIHN1Y2Nlc3MsIGF0dF9lY29kZSk7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4Kc3JjL3NoYXJlZC9nYXR0LWNsaWVu dC5jOjEzNjc6Mjogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5p eC5NYWxsb2NdCiAxMzY3IHwgICAgICAgICBkaXNjb3Zlcnlfb3BfY29tcGxldGUob3AsIHN1Y2Nl c3MsIGF0dF9lY29kZSk7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn4Kc3JjL3NoYXJlZC9nYXR0LWNsaWVudC5jOjE2NDI6Njogd2Fy bmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAxNjQy IHwgICAgICAgICBpZiAocmVhZF9kYl9oYXNoKG9wKSkgewogICAgICB8ICAgICAgICAgICAgIF5+ fn5+fn5+fn5+fn5+fn4Kc3JjL3NoYXJlZC9nYXR0LWNsaWVudC5jOjE2NDc6Mjogd2FybmluZzog VXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAxNjQ3IHwgICAg ICAgICBkaXNjb3Zlcl9hbGwob3ApOwogICAgICB8ICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fgpz cmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MTcwMzo1Njogd2FybmluZzogVXNlIG9mIG1lbW9yeSBh ZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAxNzAzIHwgICAgICAgICBub3RpZnlfZGF0 YS0+Y2hyYy0+Y2NjX3dyaXRlX2lkID0gbm90aWZ5X2RhdGEtPmF0dF9pZCA9IGF0dF9pZDsKICAg ICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+ fn5+fn5+fn5+IF4Kc3JjL3NoYXJlZC9nYXR0LWNsaWVudC5jOjIxNTY6Njogd2FybmluZzogVXNl IG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAyMTU2IHwgICAgICAg ICBpZiAocmVhZF9kYl9oYXNoKG9wKSkgewogICAgICB8ICAgICAgICAgICAgIF5+fn5+fn5+fn5+ fn5+fn4Kc3JjL3NoYXJlZC9nYXR0LWNsaWVudC5jOjIxNjQ6ODogd2FybmluZzogVXNlIG9mIG1l bW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAyMTY0IHwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3Zlcnlfb3Bf cmVmKG9wKSwKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+CnNyYy9zaGFyZWQvZ2F0dC1jbGll bnQuYzozMzUwOjI6IHdhcm5pbmc6IFVzZSBvZiBtZW1vcnkgYWZ0ZXIgaXQgaXMgZnJlZWQgW3Vu aXguTWFsbG9jXQogMzM1MCB8ICAgICAgICAgY29tcGxldGVfd3JpdGVfbG9uZ19vcChyZXEsIHN1 Y2Nlc3MsIDAsIGZhbHNlKTsKICAgICAgfCAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4Kc3JjL3NoYXJlZC9nYXR0LWNsaWVudC5jOjMzNzI6Mjog d2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAz MzcyIHwgICAgICAgICByZXF1ZXN0X3VucmVmKHJlcSk7CiAgICAgIHwgICAgICAgICBefn5+fn5+ fn5+fn5+fn5+fn4KMTIgd2FybmluZ3MgZ2VuZXJhdGVkLgpzcmMvc2hhcmVkL3JhcC5jOjMzMjI6 MzA6IHdhcm5pbmc6IEFzc2lnbmVkIHZhbHVlIGlzIHVuaW5pdGlhbGl6ZWQgW2NvcmUudW5pbml0 aWFsaXplZC5Bc3NpZ25dCiAzMzIyIHwgICAgICAgICAgICAgICAgICAgICAgICAgb3V0LT50b25l X3BjdFtrXS5pX3NhbXBsZSA9IHRvbmVfcGN0X2lba107CiAgICAgIHwgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeIH5+fn5+fn5+fn5+fn4Kc3JjL3No YXJlZC9yYXAuYzo0MjY5OjEzOiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZy ZWVkIFt1bml4Lk1hbGxvY10KIDQyNjkgfCAgICAgICAgIGF0dGFjaGVkID0gcXVldWVfZmluZChz ZXNzaW9ucywgTlVMTCwgcmFwKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoyIHdhcm5pbmdzIGdlbmVyYXRlZC4Kc3JjL3NoYXJlZC9i YXAuYzoxNTQzOjg6IHdhcm5pbmc6IFVzZSBvZiBtZW1vcnkgYWZ0ZXIgaXQgaXMgZnJlZWQgW3Vu aXguTWFsbG9jXQogMTU0MyB8ICAgICAgICAgYmFwID0gYnRfYmFwX3JlZl9zYWZlKGJhcCk7CiAg ICAgIHwgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2JhcC5j OjIzNTk6MjA6IHdhcm5pbmc6IFVzZSBvZiBtZW1vcnkgYWZ0ZXIgaXQgaXMgZnJlZWQgW3VuaXgu TWFsbG9jXQogMjM1OSB8ICAgICAgICAgcmV0dXJuIHF1ZXVlX2ZpbmQoc3RyZWFtLT5iYXAtPnN0 cmVhbXMsIE5VTEwsIHN0cmVhbSk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICBe fn5+fn5+fn5+fn5+fn5+fn5+fgoyIHdhcm5pbmdzIGdlbmVyYXRlZC4Kc3JjL3NoYXJlZC9nYXR0 LWNsaWVudC5jOjQ1NzoyMTogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVl ZCBbdW5peC5NYWxsb2NdCiAgNDU3IHwgICAgICAgICBnYXR0X2RiX3VucmVnaXN0ZXIob3AtPmNs aWVudC0+ZGIsIG9wLT5kYl9pZCk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg Xn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6NzAyOjI6IHdhcm5pbmc6IFVzZSBv ZiBtZW1vcnkgYWZ0ZXIgaXQgaXMgZnJlZWQgW3VuaXguTWFsbG9jXQogIDcwMiB8ICAgICAgICAg ZGlzY292ZXJ5X29wX2NvbXBsZXRlKG9wLCBmYWxzZSwgYXR0X2Vjb2RlKTsKICAgICAgfCAgICAg ICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4Kc3JjL3NoYXJl ZC9nYXR0LWNsaWVudC5jOjExMDg6Mjogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBp cyBmcmVlZCBbdW5peC5NYWxsb2NdCiAxMTA4IHwgICAgICAgICBkaXNjb3Zlcnlfb3BfY29tcGxl dGUob3AsIHN1Y2Nlc3MsIGF0dF9lY29kZSk7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4Kc3JjL3NoYXJlZC9nYXR0LWNsaWVudC5j OjEzMDI6Mjogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5N YWxsb2NdCiAxMzAyIHwgICAgICAgICBkaXNjb3Zlcnlfb3BfY29tcGxldGUob3AsIHN1Y2Nlc3Ms IGF0dF9lY29kZSk7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn4Kc3JjL3NoYXJlZC9nYXR0LWNsaWVudC5jOjEzNjc6Mjogd2Fybmlu ZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAxMzY3IHwg ICAgICAgICBkaXNjb3Zlcnlfb3BfY29tcGxldGUob3AsIHN1Y2Nlc3MsIGF0dF9lY29kZSk7CiAg ICAgIHwgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn4Kc3JjL3NoYXJlZC9nYXR0LWNsaWVudC5jOjE2NDI6Njogd2FybmluZzogVXNlIG9mIG1lbW9y eSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAxNjQyIHwgICAgICAgICBpZiAocmVh ZF9kYl9oYXNoKG9wKSkgewogICAgICB8ICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn4Kc3Jj L3NoYXJlZC9nYXR0LWNsaWVudC5jOjE2NDc6Mjogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRl ciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAxNjQ3IHwgICAgICAgICBkaXNjb3Zlcl9hbGwo b3ApOwogICAgICB8ICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dhdHQtY2xp ZW50LmM6MTcwMzo1Njogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBb dW5peC5NYWxsb2NdCiAxNzAzIHwgICAgICAgICBub3RpZnlfZGF0YS0+Y2hyYy0+Y2NjX3dyaXRl X2lkID0gbm90aWZ5X2RhdGEtPmF0dF9pZCA9IGF0dF9pZDsKICAgICAgfCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+IF4Kc3JjL3No YXJlZC9nYXR0LWNsaWVudC5jOjIxNTY6Njogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBp dCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAyMTU2IHwgICAgICAgICBpZiAocmVhZF9kYl9oYXNo KG9wKSkgewogICAgICB8ICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn4Kc3JjL3NoYXJlZC9n YXR0LWNsaWVudC5jOjIxNjQ6ODogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBm cmVlZCBbdW5peC5NYWxsb2NdCiAyMTY0IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3Zlcnlfb3BfcmVmKG9wKSwKICAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+ fn5+fn5+fn5+fn5+fn5+fn5+CnNyYy9zaGFyZWQvZ2F0dC1jbGllbnQuYzozMzUwOjI6IHdhcm5p bmc6IFVzZSBvZiBtZW1vcnkgYWZ0ZXIgaXQgaXMgZnJlZWQgW3VuaXguTWFsbG9jXQogMzM1MCB8 ICAgICAgICAgY29tcGxldGVfd3JpdGVfbG9uZ19vcChyZXEsIHN1Y2Nlc3MsIDAsIGZhbHNlKTsK ICAgICAgfCAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn4Kc3JjL3NoYXJlZC9nYXR0LWNsaWVudC5jOjMzNzI6Mjogd2FybmluZzogVXNlIG9mIG1l bW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAzMzcyIHwgICAgICAgICByZXF1 ZXN0X3VucmVmKHJlcSk7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn4KMTIgd2Fy bmluZ3MgZ2VuZXJhdGVkLgpzcmMvc2hhcmVkL3JhcC5jOjMzMjI6MzA6IHdhcm5pbmc6IEFzc2ln bmVkIHZhbHVlIGlzIHVuaW5pdGlhbGl6ZWQgW2NvcmUudW5pbml0aWFsaXplZC5Bc3NpZ25dCiAz MzIyIHwgICAgICAgICAgICAgICAgICAgICAgICAgb3V0LT50b25lX3BjdFtrXS5pX3NhbXBsZSA9 IHRvbmVfcGN0X2lba107CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBeIH5+fn5+fn5+fn5+fn4Kc3JjL3NoYXJlZC9yYXAuYzo0MjY5OjEz OiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10K IDQyNjkgfCAgICAgICAgIGF0dGFjaGVkID0gcXVldWVfZmluZChzZXNzaW9ucywgTlVMTCwgcmFw KTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fgoyIHdhcm5pbmdzIGdlbmVyYXRlZC4KdG9vbHMvaGNpYXR0YWNoX2F0aDNrLmM6NTMwOjk6 IHdhcm5pbmc6IEZpbGUgcG9zaXRpb24gb2YgdGhlIHN0cmVhbSBtaWdodCBiZSAnaW5kZXRlcm1p bmF0ZScgYWZ0ZXIgYSBmYWlsZWQgb3BlcmF0aW9uLiBDYW4gY2F1c2UgdW5kZWZpbmVkIGJlaGF2 aW9yIFt1bml4LlN0cmVhbV0KICA1MzAgfCAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWZn ZXRzKGJ5dGUsIDMsIHN0cmVhbSkpCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL2hjaWF0dGFjaF9hdGgzay5jOjUzMDo5OiB3 YXJuaW5nOiBSZWFkIGZ1bmN0aW9uIGNhbGxlZCB3aGVuIHN0cmVhbSBpcyBpbiBFT0Ygc3RhdGUu IEZ1bmN0aW9uIGhhcyBubyBlZmZlY3QgW3VuaXguU3RyZWFtXQogIDUzMCB8ICAgICAgICAgICAg ICAgICAgICAgICAgIGlmICghZmdldHMoYnl0ZSwgMywgc3RyZWFtKSkKICAgICAgfCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KMiB3YXJuaW5ncyBn ZW5lcmF0ZWQuCnRvb2xzL2hjaWF0dGFjaC5jOjgxNzo3OiB3YXJuaW5nOiBBbHRob3VnaCB0aGUg dmFsdWUgc3RvcmVkIHRvICduJyBpcyB1c2VkIGluIHRoZSBlbmNsb3NpbmcgZXhwcmVzc2lvbiwg dGhlIHZhbHVlIGlzIG5ldmVyIGFjdHVhbGx5IHJlYWQgZnJvbSAnbicgW2RlYWRjb2RlLkRlYWRT dG9yZXNdCiAgODE3IHwgICAgICAgICBpZiAoKG4gPSByZWFkX2hjaV9ldmVudChmZCwgcmVzcCwg MTApKSA8IDApIHsKICAgICAgfCAgICAgICAgICAgICAgXiAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn4KdG9vbHMvaGNpYXR0YWNoLmM6ODY1Ojc6IHdhcm5pbmc6IEFsdGhvdWdoIHRoZSB2 YWx1ZSBzdG9yZWQgdG8gJ24nIGlzIHVzZWQgaW4gdGhlIGVuY2xvc2luZyBleHByZXNzaW9uLCB0 aGUgdmFsdWUgaXMgbmV2ZXIgYWN0dWFsbHkgcmVhZCBmcm9tICduJyBbZGVhZGNvZGUuRGVhZFN0 b3Jlc10KICA4NjUgfCAgICAgICAgIGlmICgobiA9IHJlYWRfaGNpX2V2ZW50KGZkLCByZXNwLCA0 KSkgPCAwKSB7CiAgICAgIHwgICAgICAgICAgICAgIF4gICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn4KdG9vbHMvaGNpYXR0YWNoLmM6ODg3Ojg6IHdhcm5pbmc6IEFsdGhvdWdoIHRoZSB2YWx1 ZSBzdG9yZWQgdG8gJ24nIGlzIHVzZWQgaW4gdGhlIGVuY2xvc2luZyBleHByZXNzaW9uLCB0aGUg dmFsdWUgaXMgbmV2ZXIgYWN0dWFsbHkgcmVhZCBmcm9tICduJyBbZGVhZGNvZGUuRGVhZFN0b3Jl c10KICA4ODcgfCAgICAgICAgICAgICAgICAgaWYgKChuID0gcmVhZF9oY2lfZXZlbnQoZmQsIHJl c3AsIDEwKSkgPCAwKSB7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgXiAgIH5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvaGNpYXR0YWNoLmM6OTA5Ojc6IHdhcm5pbmc6IEFs dGhvdWdoIHRoZSB2YWx1ZSBzdG9yZWQgdG8gJ24nIGlzIHVzZWQgaW4gdGhlIGVuY2xvc2luZyBl eHByZXNzaW9uLCB0aGUgdmFsdWUgaXMgbmV2ZXIgYWN0dWFsbHkgcmVhZCBmcm9tICduJyBbZGVh ZGNvZGUuRGVhZFN0b3Jlc10KICA5MDkgfCAgICAgICAgIGlmICgobiA9IHJlYWRfaGNpX2V2ZW50 KGZkLCByZXNwLCA0KSkgPCAwKSB7CiAgICAgIHwgICAgICAgICAgICAgIF4gICB+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvaGNpYXR0YWNoLmM6OTMwOjc6IHdhcm5pbmc6IEFsdGhv dWdoIHRoZSB2YWx1ZSBzdG9yZWQgdG8gJ24nIGlzIHVzZWQgaW4gdGhlIGVuY2xvc2luZyBleHBy ZXNzaW9uLCB0aGUgdmFsdWUgaXMgbmV2ZXIgYWN0dWFsbHkgcmVhZCBmcm9tICduJyBbZGVhZGNv ZGUuRGVhZFN0b3Jlc10KICA5MzAgfCAgICAgICAgIGlmICgobiA9IHJlYWRfaGNpX2V2ZW50KGZk LCByZXNwLCA0KSkgPCAwKSB7CiAgICAgIHwgICAgICAgICAgICAgIF4gICB+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn4KdG9vbHMvaGNpYXR0YWNoLmM6OTc0Ojc6IHdhcm5pbmc6IEFsdGhvdWdo IHRoZSB2YWx1ZSBzdG9yZWQgdG8gJ24nIGlzIHVzZWQgaW4gdGhlIGVuY2xvc2luZyBleHByZXNz aW9uLCB0aGUgdmFsdWUgaXMgbmV2ZXIgYWN0dWFsbHkgcmVhZCBmcm9tICduJyBbZGVhZGNvZGUu RGVhZFN0b3Jlc10KICA5NzQgfCAgICAgICAgIGlmICgobiA9IHJlYWRfaGNpX2V2ZW50KGZkLCBy ZXNwLCA2KSkgPCAwKSB7CiAgICAgIHwgICAgICAgICAgICAgIF4gICB+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn4KNiB3YXJuaW5ncyBnZW5lcmF0ZWQuCnNyYy9zaGFyZWQvYmFwLmM6MTU0Mzo4 OiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10K IDE1NDMgfCAgICAgICAgIGJhcCA9IGJ0X2JhcF9yZWZfc2FmZShiYXApOwogICAgICB8ICAgICAg ICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn4Kc3JjL3NoYXJlZC9iYXAuYzoyMzU5OjIwOiB3 YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDIz NTkgfCAgICAgICAgIHJldHVybiBxdWV1ZV9maW5kKHN0cmVhbS0+YmFwLT5zdHJlYW1zLCBOVUxM LCBzdHJlYW0pOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+ fn5+fn5+fn4KMiB3YXJuaW5ncyBnZW5lcmF0ZWQuCnNyYy9vdWkuYzo1MDoyOiB3YXJuaW5nOiBW YWx1ZSBzdG9yZWQgdG8gJ2h3ZGInIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNd CiAgIDUwIHwgICAgICAgICBod2RiID0gdWRldl9od2RiX3VucmVmKGh3ZGIpOwogICAgICB8ICAg ICAgICAgXiAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fgpzcmMvb3VpLmM6NTM6Mjogd2Fybmlu ZzogVmFsdWUgc3RvcmVkIHRvICd1ZGV2JyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3Rv cmVzXQogICA1MyB8ICAgICAgICAgdWRldiA9IHVkZXZfdW5yZWYodWRldik7CiAgICAgIHwgICAg ICAgICBeICAgICAgfn5+fn5+fn5+fn5+fn5+fgoyIHdhcm5pbmdzIGdlbmVyYXRlZC4KdG9vbHMv cmZjb21tLmM6MjM0OjM6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnaScgaXMgbmV2ZXIgcmVh ZCBbZGVhZGNvZGUuRGVhZFN0b3Jlc10KICAyMzQgfCAgICAgICAgICAgICAgICAgaSA9IGV4ZWN2 cChjbWRhcmd2WzBdLCBjbWRhcmd2KTsKICAgICAgfCAgICAgICAgICAgICAgICAgXiAgIH5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9yZmNvbW0uYzoyMzQ6Nzogd2FybmluZzogTnVs bCBwb2ludGVyIHBhc3NlZCB0byAxc3QgcGFyYW1ldGVyIGV4cGVjdGluZyAnbm9ubnVsbCcgW2Nv cmUuTm9uTnVsbFBhcmFtQ2hlY2tlcl0KICAyMzQgfCAgICAgICAgICAgICAgICAgaSA9IGV4ZWN2 cChjbWRhcmd2WzBdLCBjbWRhcmd2KTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgIF5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9yZmNvbW0uYzozNTQ6ODogd2FybmluZzogQWx0 aG91Z2ggdGhlIHZhbHVlIHN0b3JlZCB0byAnZmQnIGlzIHVzZWQgaW4gdGhlIGVuY2xvc2luZyBl eHByZXNzaW9uLCB0aGUgdmFsdWUgaXMgbmV2ZXIgYWN0dWFsbHkgcmVhZCBmcm9tICdmZCcgW2Rl YWRjb2RlLkRlYWRTdG9yZXNdCiAgMzU0IHwgICAgICAgICAgICAgICAgIGlmICgoZmQgPSBvcGVu KGRldm5hbWUsIE9fUkRPTkxZIHwgT19OT0NUVFkpKSA8IDApIHsKICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICBeICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMv cmZjb21tLmM6NDczOjY6IHdhcm5pbmc6IFRoZSAxc3QgYXJndW1lbnQgdG8gJ2dldHNvY2tuYW1l JyBpcyAtMSBidXQgc2hvdWxkIGJlID49IDAgW3VuaXguU3RkQ0xpYnJhcnlGdW5jdGlvbnNdCiAg NDczIHwgICAgICAgICBpZiAoZ2V0c29ja25hbWUobnNrLCAoc3RydWN0IHNvY2thZGRyICopJmxh ZGRyLCAmYWxlbikgPCAwKSB7CiAgICAgIHwgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvcmZjb21tLmM6NDk3OjE0OiB3 YXJuaW5nOiBBc3NpZ25lZCB2YWx1ZSBpcyB1bmluaXRpYWxpemVkIFtjb3JlLnVuaW5pdGlhbGl6 ZWQuQXNzaWduXQogIDQ5NyB8ICAgICAgICAgcmVxLmNoYW5uZWwgPSByYWRkci5yY19jaGFubmVs OwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgXiB+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL3Jm Y29tbS5jOjUxNTo4OiB3YXJuaW5nOiBBbHRob3VnaCB0aGUgdmFsdWUgc3RvcmVkIHRvICdmZCcg aXMgdXNlZCBpbiB0aGUgZW5jbG9zaW5nIGV4cHJlc3Npb24sIHRoZSB2YWx1ZSBpcyBuZXZlciBh Y3R1YWxseSByZWFkIGZyb20gJ2ZkJyBbZGVhZGNvZGUuRGVhZFN0b3Jlc10KICA1MTUgfCAgICAg ICAgICAgICAgICAgaWYgKChmZCA9IG9wZW4oZGV2bmFtZSwgT19SRE9OTFkgfCBPX05PQ1RUWSkp IDwgMCkgewogICAgICB8ICAgICAgICAgICAgICAgICAgICAgIF4gICAgfn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fgo2IHdhcm5pbmdzIGdlbmVyYXRlZC4KdG9vbHMvY2lwdG9vbC5j OjM1MTo3OiB3YXJuaW5nOiA1dGggZnVuY3Rpb24gY2FsbCBhcmd1bWVudCBpcyBhbiB1bmluaXRp YWxpemVkIHZhbHVlIFtjb3JlLkNhbGxBbmRNZXNzYWdlXQogIDM1MSB8ICAgICAgICAgc2sgPSBk b19jb25uZWN0KGN0bCwgZGV2X2lkLCAmc3JjLCAmZHN0LCBwc20sICgxIDw8IENNVFBfTE9PUEJB Q0spKTsKICAgICAgfCAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KdG9v bHMvc2RwdG9vbC5jOjk0MToyNjogd2FybmluZzogUmVzdWx0IG9mICdtYWxsb2MnIGlzIGNvbnZl cnRlZCB0byBhIHBvaW50ZXIgb2YgdHlwZSAndWludDMyX3QnLCB3aGljaCBpcyBpbmNvbXBhdGli bGUgd2l0aCBzaXplb2Ygb3BlcmFuZCB0eXBlICdpbnQnIFt1bml4Lk1hbGxvY1NpemVvZl0KICA5 NDEgfCAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCAqdmFsdWVfaW50ID0gbWFsbG9j KHNpemVvZihpbnQpKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+ ICAgICAgICAgICAgXn5+fn5+IH5+fn5+fn5+fn5+CnRvb2xzL3NkcHRvb2wuYzo5ODA6NDogd2Fy bmluZzogMXN0IGZ1bmN0aW9uIGNhbGwgYXJndW1lbnQgaXMgYW4gdW5pbml0aWFsaXplZCB2YWx1 ZSBbY29yZS5DYWxsQW5kTWVzc2FnZV0KICA5ODAgfCAgICAgICAgICAgICAgICAgICAgICAgICBm cmVlKGFsbG9jQXJyYXlbaV0pOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+ fn5+fn5+fn5+fn5+fn4KdG9vbHMvc2RwdG9vbC5jOjM3Nzc6Mjogd2FybmluZzogUG90ZW50aWFs IGxlYWsgb2YgbWVtb3J5IHBvaW50ZWQgdG8gYnkgJ3NpLm5hbWUnIFt1bml4Lk1hbGxvY10KIDM3 NzcgfCAgICAgICAgIHJldHVybiBhZGRfc2VydmljZSgwLCAmc2kpOwogICAgICB8ICAgICAgICAg Xn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvc2RwdG9vbC5jOjQxMTI6NDogd2Fybmlu ZzogUG90ZW50aWFsIGxlYWsgb2YgbWVtb3J5IHBvaW50ZWQgdG8gYnkgJ2NvbnRleHQuc3ZjJyBb dW5peC5NYWxsb2NdCiA0MTEyIHwgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwog ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fgo0IHdhcm5pbmdzIGdlbmVy YXRlZC4Kc3JjL3NkcC14bWwuYzoxMjk6MTA6IHdhcm5pbmc6IEFzc2lnbmVkIHZhbHVlIGlzIHVu aW5pdGlhbGl6ZWQgW2NvcmUudW5pbml0aWFsaXplZC5Bc3NpZ25dCiAgMTI5IHwgICAgICAgICAg ICAgICAgIGJ1ZlsxXSA9IGRhdGFbaSArIDFdOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAg ICAgXiB+fn5+fn5+fn5+fgpzcmMvc2RwLXhtbC5jOjMwOToxMTogd2FybmluZzogQXNzaWduZWQg dmFsdWUgaXMgdW5pbml0aWFsaXplZCBbY29yZS51bmluaXRpYWxpemVkLkFzc2lnbl0KICAzMDkg fCAgICAgICAgICAgICAgICAgICAgICAgICBidWZbMV0gPSBkYXRhW2kgKyAxXTsKICAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXiB+fn5+fn5+fn5+fgpzcmMvc2RwLXhtbC5j OjM0NzoxMTogd2FybmluZzogQXNzaWduZWQgdmFsdWUgaXMgdW5pbml0aWFsaXplZCBbY29yZS51 bmluaXRpYWxpemVkLkFzc2lnbl0KICAzNDcgfCAgICAgICAgICAgICAgICAgICAgICAgICBidWZb MV0gPSBkYXRhW2kgKyAxXTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XiB+fn5+fn5+fn5+fgozIHdhcm5pbmdzIGdlbmVyYXRlZC4KdG9vbHMvcmZjb21tLXRlc3Rlci5j OjQxMDo2OiB3YXJuaW5nOiBUaGUgMXN0IGFyZ3VtZW50IHRvICdiaW5kJyBpcyAtMSBidXQgc2hv dWxkIGJlID49IDAgW3VuaXguU3RkQ0xpYnJhcnlGdW5jdGlvbnNdCiAgNDEwIHwgICAgICAgICBp ZiAoYmluZChzaywgKHN0cnVjdCBzb2NrYWRkciAqKSAmYWRkciwgc2l6ZW9mKGFkZHIpKSA8IDAp IHsKICAgICAgfCAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+CnRvb2xzL3JmY29tbS10ZXN0ZXIuYzo0Mjg6ODogd2FybmluZzogVGhl IDFzdCBhcmd1bWVudCB0byAnY29ubmVjdCcgaXMgLTEgYnV0IHNob3VsZCBiZSA+PSAwIFt1bml4 LlN0ZENMaWJyYXJ5RnVuY3Rpb25zXQogIDQyOCB8ICAgICAgICAgZXJyID0gY29ubmVjdChzaywg KHN0cnVjdCBzb2NrYWRkciAqKSAmYWRkciwgc2l6ZW9mKGFkZHIpKTsKICAgICAgfCAgICAgICAg ICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn4KMiB3YXJuaW5ncyBnZW5lcmF0ZWQuCnRvb2xzL2F2dGVzdC5jOjI0Mzo1OiB3YXJuaW5nOiBW YWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0b3Jlc10K ICAyNDMgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbiA9IHdyaXRlKHNrLCBi dWYsIDMpOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXiAgICAgfn5+ fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0LmM6MjUzOjU6IHdhcm5pbmc6IFZhbHVlIHN0b3Jl ZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDI1MyB8ICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwgNCk7CiAg ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+fn5+ fn5+fgp0b29scy9hdnRlc3QuYzoyNjI6NTogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdsZW4n IGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgMjYyIHwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVmLCAzKTsKICAgICAgfCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+fn5+CnRvb2xz L2F2dGVzdC5jOjI3Njo1OiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2ZXIg cmVhZCBbZGVhZGNvZGUuRGVhZFN0b3Jlc10KICAyNzYgfCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGxlbiA9IHdyaXRlKHNrLCBidWYsCiAgICAgIHwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+fn5+fgogIDI3NyB8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMgKyBzaXplb2YobWVkaWFfdHJhbnNw b3J0KSk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzoyODM6NTog d2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRl YWRTdG9yZXNdCiAgMjgzIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSB3 cml0ZShzaywgYnVmLAogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXiAg ICAgfn5+fn5+fn5+fn5+fn4KICAyODQgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAxICsgbWVkaWFfdHJhbnNwb3J0X3NpemUpOwogICAgICB8ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0LmM6MjkwOjU6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0 byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDI5MCB8ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwKICAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+CiAgMjkx IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSArIG1l ZGlhX3RyYW5zcG9ydF9zaXplKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL2F2dGVz dC5jOjI5Nzo1OiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBb ZGVhZGNvZGUuRGVhZFN0b3Jlc10KICAyOTcgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGxlbiA9IHdyaXRlKHNrLCBidWYsCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBeICAgICB+fn5+fn5+fn5+fn5+fgogIDI5OCB8ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIgKyBtZWRpYV90cmFuc3BvcnRfc2l6ZSk7CiAg ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzozMDk6NTogd2FybmluZzogVmFs dWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAg MzA5IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVm LCA0KTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4gICAgIH5+fn5+ fn5+fn5+fn5+fn5+CnRvb2xzL2F2dGVzdC5jOjMxMzo1OiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQg dG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0b3Jlc10KICAzMTMgfCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbiA9IHdyaXRlKHNrLCBidWYsIDIpOwogICAg ICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+ fn4KdG9vbHMvYXZ0ZXN0LmM6MzIyOjU6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBp cyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDMyMiB8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwgMyk7CiAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9h dnRlc3QuYzozMjY6NTogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJl YWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgMzI2IHwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVmLCAyKTsKICAgICAgfCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL2F2dGVzdC5jOjMz NTo1OiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNv ZGUuRGVhZFN0b3Jlc10KICAzMzUgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxl biA9IHdyaXRlKHNrLCBidWYsIDMpOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0LmM6MzQyOjU6IHdhcm5p bmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3Rv cmVzXQogIDM0MiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuID0gd3JpdGUo c2ssIGJ1ZiwgMik7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeICAg ICB+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzozNjQ6NTogd2FybmluZzogVmFsdWUg c3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgMzY0 IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVmLCA0 KTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4gICAgIH5+fn5+fn5+ fn5+fn5+fn5+CnRvb2xzL2F2dGVzdC5jOjM2ODo1OiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQgdG8g J2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0b3Jlc10KICAzNjggfCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGxlbiA9IHdyaXRlKHNrLCBidWYsIDIpOwogICAgICB8 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn4K dG9vbHMvYXZ0ZXN0LmM6Mzc3OjU6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBu ZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDM3NyB8ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwgMyk7CiAgICAgIHwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRl c3QuYzozODE6NTogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQg W2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgMzgxIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBsZW4gPSB3cml0ZShzaywgYnVmLCAyKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL2F2dGVzdC5jOjM5NDo1 OiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUu RGVhZFN0b3Jlc10KICAzOTQgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbiA9 IHdyaXRlKHNrLCBidWYsIDQpOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0LmM6Mzk4OjU6IHdhcm5pbmc6 IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVz XQogIDM5OCB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ss IGJ1ZiwgMik7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeICAgICB+ fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzo0MDU6NDogd2FybmluZzogVmFsdWUgc3Rv cmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgNDA1IHwg ICAgICAgICAgICAgICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwgMik7CiAgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0 ZXN0LmM6NDE1OjQ6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFk IFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDQxNSB8ICAgICAgICAgICAgICAgICAgICAgICAgIGxl biA9IHdyaXRlKHNrLCBidWYsIDIpOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgIF4g ICAgIH5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL2F2dGVzdC5jOjU4MDozOiB3YXJuaW5nOiBWYWx1 ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0b3Jlc10KICA1 ODAgfCAgICAgICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwgMik7CiAgICAgIHwgICAg ICAgICAgICAgICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL2F2dGVzdC5jOjU4ODoz OiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUu RGVhZFN0b3Jlc10KICA1ODggfCAgICAgICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1Ziwg aW52YWxpZCA/IDIgOiAzKTsKICAgICAgfCAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzo2MDI6Mzogd2FybmluZzogVmFs dWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAg NjAyIHwgICAgICAgICAgICAgICAgIGxlbiA9IHdyaXRlKHNrLCBidWYsIDQgKyBtZWRpYV90cmFu c3BvcnRfc2l6ZSk7CiAgICAgIHwgICAgICAgICAgICAgICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0LmM6NjE1OjM6IHdhcm5pbmc6 IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVz XQogIDYxNSB8ICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVmLCAzKTsKICAgICAg fCAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0LmM6 NjI1OjM6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFk Y29kZS5EZWFkU3RvcmVzXQogIDYyNSB8ICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywg YnVmLCAzKTsKICAgICAgfCAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn4K dG9vbHMvYXZ0ZXN0LmM6NjM3OjM6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBu ZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDYzNyB8ICAgICAgICAgICAgICAgICBs ZW4gPSB3cml0ZShzaywgYnVmLCAzKTsKICAgICAgfCAgICAgICAgICAgICAgICAgXiAgICAgfn5+ fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0LmM6NjUyOjM6IHdhcm5pbmc6IFZhbHVlIHN0b3Jl ZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDY1MiB8ICAg ICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVmLCAzKTsKICAgICAgfCAgICAgICAgICAg ICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0LmM6NjY0OjM6IHdhcm5p bmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3Rv cmVzXQogIDY2NCB8ICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVmLCAzKTsKICAg ICAgfCAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0 LmM6NjczOjM6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtk ZWFkY29kZS5EZWFkU3RvcmVzXQogIDY3MyB8ICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShz aywgYnVmLCAzKTsKICAgICAgfCAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+ fn4KdG9vbHMvYXZ0ZXN0LmM6NjgwOjM6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBp cyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDY4MCB8ICAgICAgICAgICAgICAg ICBsZW4gPSB3cml0ZShzaywgYnVmLCAyKTsKICAgICAgfCAgICAgICAgICAgICAgICAgXiAgICAg fn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0LmM6NzE2OjI6IHdhcm5pbmc6IFZhbHVlIHN0 b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDcxNiB8 ICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwgQVZDVFBfSEVBREVSX0xFTkdUSCArIHNpemVv ZihwbGF5X3ByZXNzZWQpKTsKICAgICAgfCAgICAgICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KMzIgd2FybmluZ3MgZ2Vu ZXJhdGVkLgp0b29scy9jcmVhdGUtaW1hZ2UuYzo3NjozOiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQg dG8gJ2ZkJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogICA3NiB8ICAgICAg ICAgICAgICAgICBmZCA9IC0xOwogICAgICB8ICAgICAgICAgICAgICAgICBeICAgIH5+CnRvb2xz L2NyZWF0ZS1pbWFnZS5jOjg0OjM6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnZmQnIGlzIG5l dmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgIDg0IHwgICAgICAgICAgICAgICAgIGZk ID0gLTE7CiAgICAgIHwgICAgICAgICAgICAgICAgIF4gICAgfn4KdG9vbHMvY3JlYXRlLWltYWdl LmM6OTI6Mzogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdmZCcgaXMgbmV2ZXIgcmVhZCBbZGVh ZGNvZGUuRGVhZFN0b3Jlc10KICAgOTIgfCAgICAgICAgICAgICAgICAgZmQgPSAtMTsKICAgICAg fCAgICAgICAgICAgICAgICAgXiAgICB+fgp0b29scy9jcmVhdGUtaW1hZ2UuYzoxMDU6Mjogd2Fy bmluZzogVmFsdWUgc3RvcmVkIHRvICdmZCcgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0 b3Jlc10KICAxMDUgfCAgICAgICAgIGZkID0gLTE7CiAgICAgIHwgICAgICAgICBeICAgIH5+CnRv b2xzL2NyZWF0ZS1pbWFnZS5jOjEwODoyOiB3YXJuaW5nOiBOdWxsIHBvaW50ZXIgcGFzc2VkIHRv IDFzdCBwYXJhbWV0ZXIgZXhwZWN0aW5nICdub25udWxsJyBbY29yZS5Ob25OdWxsUGFyYW1DaGVj a2VyXQogIDEwOCB8ICAgICAgICAgZnByaW50ZihmcCwgSERSX0ZNVCwgSERSX01BR0lDLCBpbm8s IG1vZGUsIDAsIDAsIDEsIDAsCiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAxMDkgfCAgICAgICAgICAgICAgICAg KHVpbnRtYXhfdCkgc3Quc3Rfc2l6ZSwgMCwgMCwgMCwgMCwgbmFtZWxlbiArIDEsIDAsIG5hbWUp OwogICAgICB8ICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvY3JlYXRlLWltYWdlLmM6MTg4OjI6IHdh cm5pbmc6IE51bGwgcG9pbnRlciBwYXNzZWQgdG8gMXN0IHBhcmFtZXRlciBleHBlY3RpbmcgJ25v bm51bGwnIFtjb3JlLk5vbk51bGxQYXJhbUNoZWNrZXJdCiAgMTg4IHwgICAgICAgICBmY2xvc2Uo ZnApOwogICAgICB8ICAgICAgICAgXn5+fn5+fn5+fgo2IHdhcm5pbmdzIGdlbmVyYXRlZC4KdG9v bHMvYnRnYXR0LWNsaWVudC5jOjE4MjI6Mjogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdhcmd2 JyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogMTgyMiB8ICAgICAgICAgYXJn diArPSBvcHRpbmQ7CiAgICAgIHwgICAgICAgICBeICAgICAgIH5+fn5+fgoxIHdhcm5pbmcgZ2Vu ZXJhdGVkLgp0b29scy9idGdhdHQtc2VydmVyLmM6MTIwNDoyOiB3YXJuaW5nOiBWYWx1ZSBzdG9y ZWQgdG8gJ2FyZ3YnIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAxMjA0IHwg ICAgICAgICBhcmd2IC09IG9wdGluZDsKICAgICAgfCAgICAgICAgIF4gICAgICAgfn5+fn5+CjEg d2FybmluZyBnZW5lcmF0ZWQuCnRvb2xzL2NoZWNrLXNlbGZ0ZXN0LmM6NDI6Mzogd2FybmluZzog VmFsdWUgc3RvcmVkIHRvICdwdHInIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNd CiAgIDQyIHwgICAgICAgICAgICAgICAgIHB0ciA9IGZnZXRzKHJlc3VsdCwgc2l6ZW9mKHJlc3Vs dCksIGZwKTsKICAgICAgfCAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+CjEgd2FybmluZyBnZW5lcmF0ZWQuCnRvb2xzL2dhdHQtc2VydmljZS5j OjI5NDoyOiB3YXJuaW5nOiAybmQgZnVuY3Rpb24gY2FsbCBhcmd1bWVudCBpcyBhbiB1bmluaXRp YWxpemVkIHZhbHVlIFtjb3JlLkNhbGxBbmRNZXNzYWdlXQogIDI5NCB8ICAgICAgICAgY2hyX3dy aXRlKGNociwgdmFsdWUsIGxlbik7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fgoxIHdhcm5pbmcgZ2VuZXJhdGVkLgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gdG9vbHMv b2JleC1zZXJ2ZXItdG9vbC5jOjE3OgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gL3Vzci9pbmNsdWRl L2ZjbnRsLmg6MzQyOgovdXNyL2luY2x1ZGUveDg2XzY0LWxpbnV4LWdudS9iaXRzL2ZjbnRsMi5o Ojc2OjEwOiB3YXJuaW5nOiBOdWxsIHBvaW50ZXIgcGFzc2VkIHRvIDFzdCBwYXJhbWV0ZXIgZXhw ZWN0aW5nICdub25udWxsJyBbY29yZS5Ob25OdWxsUGFyYW1DaGVja2VyXQogICA3NiB8ICAgcmV0 dXJuIF9fb3Blbl9hbGlhcyAoX19wYXRoLCBfX29mbGFnLCBfX21vZGUpOwogICAgICB8ICAgICAg ICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CjEgd2FybmluZyBnZW5l cmF0ZWQuCmNsaWVudC9idHBjbGllbnQvYnRwY2xpZW50Y3RsLmM6NDAyOjM6IHdhcm5pbmc6IFZh bHVlIHN0b3JlZCB0byAnYml0JyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQog IDQwMiB8ICAgICAgICAgICAgICAgICBiaXQgPSAwOwogICAgICB8ICAgICAgICAgICAgICAgICBe ICAgICB+CmNsaWVudC9idHBjbGllbnQvYnRwY2xpZW50Y3RsLmM6MTY1NToyOiB3YXJuaW5nOiBO dWxsIHBvaW50ZXIgcGFzc2VkIHRvIDJuZCBwYXJhbWV0ZXIgZXhwZWN0aW5nICdub25udWxsJyBb Y29yZS5Ob25OdWxsUGFyYW1DaGVja2VyXQogMTY1NSB8ICAgICAgICAgbWVtY3B5KGNwLT5kYXRh LCBhZF9kYXRhLCBhZF9sZW4pOwogICAgICB8ICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+CjIgd2FybmluZ3MgZ2VuZXJhdGVkLgpzcmMvc2RwLWNsaWVudC5jOjM1Mzox NDogd2FybmluZzogQWNjZXNzIHRvIGZpZWxkICdjYicgcmVzdWx0cyBpbiBhIGRlcmVmZXJlbmNl IG9mIGEgbnVsbCBwb2ludGVyIFtjb3JlLk51bGxEZXJlZmVyZW5jZV0KICAzNTMgfCAgICAgICAg ICgqY3R4dCktPmNiID0gY2I7CiAgICAgIHwgICAgICAgICB+fn5+fn5+fn5+fn5efn5+CjEgd2Fy bmluZyBnZW5lcmF0ZWQuCnNyYy9zZHBkLXJlcXVlc3QuYzoyMDk6MTM6IHdhcm5pbmc6IFJlc3Vs dCBvZiAnbWFsbG9jJyBpcyBjb252ZXJ0ZWQgdG8gYSBwb2ludGVyIG9mIHR5cGUgJ2NoYXInLCB3 aGljaCBpcyBpbmNvbXBhdGlibGUgd2l0aCBzaXplb2Ygb3BlcmFuZCB0eXBlICd1aW50MTZfdCcg W3VuaXguTWFsbG9jU2l6ZW9mXQogIDIwOSB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcEVsZW0gPSBtYWxsb2Moc2l6ZW9mKHVpbnQxNl90KSk7CiAgICAgIHwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fiB+fn5+fn5+fn5+fn5+fn5+CnNyYy9z ZHBkLXJlcXVlc3QuYzoyMzc6MTM6IHdhcm5pbmc6IFJlc3VsdCBvZiAnbWFsbG9jJyBpcyBjb252 ZXJ0ZWQgdG8gYSBwb2ludGVyIG9mIHR5cGUgJ2NoYXInLCB3aGljaCBpcyBpbmNvbXBhdGlibGUg d2l0aCBzaXplb2Ygb3BlcmFuZCB0eXBlICd1aW50MzJfdCcgW3VuaXguTWFsbG9jU2l6ZW9mXQog IDIzNyB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcEVsZW0gPSBtYWxsb2Moc2l6 ZW9mKHVpbnQzMl90KSk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF5+fn5+fiB+fn5+fn5+fn5+fn5+fn5+CjIgd2FybmluZ3MgZ2VuZXJhdGVkLgpJbiBm aWxlIGluY2x1ZGVkIGZyb20gc3JjL2FkYXB0ZXIuYzo2MzoKLi9hdHRyaWIvZ2F0dC5oOjYxOjI5 OiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJpYuKAmQogICA2MSB8IGd1aW50IGdh dHRfZGlzY292ZXJfcHJpbWFyeShHQXR0cmliICphdHRyaWIsIGJ0X3V1aWRfdCAqdXVpZCwgZ2F0 dF9jYl90IGZ1bmMsCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn4K Li9hdHRyaWIvZ2F0dC5oOjY0OjMzOiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJp YuKAmQogICA2NCB8IHVuc2lnbmVkIGludCBnYXR0X2ZpbmRfaW5jbHVkZWQoR0F0dHJpYiAqYXR0 cmliLCB1aW50MTZfdCBzdGFydCwgdWludDE2X3QgZW5kLAogICAgICB8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6Njc6MjY6IGVycm9yOiB1 bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmli4oCZCiAgIDY3IHwgZ3VpbnQgZ2F0dF9kaXNjb3Zl cl9jaGFyKEdBdHRyaWIgKmF0dHJpYiwgdWludDE2X3Qgc3RhcnQsIHVpbnQxNl90IGVuZCwKICAg ICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6NzE6 MjI6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmli4oCZCiAgIDcxIHwgZ3VpbnQg Z2F0dF9yZWFkX2NoYXIoR0F0dHJpYiAqYXR0cmliLCB1aW50MTZfdCBoYW5kbGUsIEdBdHRyaWJS ZXN1bHRGdW5jIGZ1bmMsCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fgouL2F0 dHJpYi9nYXR0Lmg6NzE6NTY6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDigJhHQXR0cmliUmVz dWx0RnVuY+KAmQogICA3MSB8IGd1aW50IGdhdHRfcmVhZF9jaGFyKEdBdHRyaWIgKmF0dHJpYiwg dWludDE2X3QgaGFuZGxlLCBHQXR0cmliUmVzdWx0RnVuYyBmdW5jLAogICAgICB8ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+ fn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6NzQ6MjM6IGVycm9yOiB1bmtub3duIHR5cGUgbmFtZSDi gJhHQXR0cmli4oCZCiAgIDc0IHwgZ3VpbnQgZ2F0dF93cml0ZV9jaGFyKEdBdHRyaWIgKmF0dHJp YiwgdWludDE2X3QgaGFuZGxlLCBjb25zdCB1aW50OF90ICp2YWx1ZSwKICAgICAgfCAgICAgICAg ICAgICAgICAgICAgICAgXn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6NzU6NTQ6IGVycm9yOiB1bmtu b3duIHR5cGUgbmFtZSDigJhHQXR0cmliUmVzdWx0RnVuY+KAmQogICA3NSB8ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgdmxlbiwgR0F0dHJpYlJlc3VsdEZ1 bmMgZnVuYywKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+Ci4vYXR0cmliL2dhdHQuaDo3ODoyNjogZXJy b3I6IHVua25vd24gdHlwZSBuYW1lIOKAmEdBdHRyaWLigJkKICAgNzggfCBndWludCBnYXR0X2Rp c2NvdmVyX2Rlc2MoR0F0dHJpYiAqYXR0cmliLCB1aW50MTZfdCBzdGFydCwgdWludDE2X3QgZW5k LAogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+Ci4vYXR0cmliL2dhdHQu aDo4MjozMjogZXJyb3I6IHVua25vd24gdHlwZSBuYW1lIOKAmEdBdHRyaWLigJkKICAgODIgfCBn dWludCBnYXR0X3JlbGlhYmxlX3dyaXRlX2NoYXIoR0F0dHJpYiAqYXR0cmliLCB1aW50MTZfdCBo YW5kbGUsCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn4KLi9h dHRyaWIvZ2F0dC5oOjg0OjQxOiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJpYlJl c3VsdEZ1bmPigJkKICAgODQgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgR0F0dHJpYlJlc3VsdEZ1bmMgZnVuYywKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjg3OjI2 OiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJpYuKAmQogICA4NyB8IGd1aW50IGdh dHRfZXhlY3V0ZV93cml0ZShHQXR0cmliICphdHRyaWIsIHVpbnQ4X3QgZmxhZ3MsCiAgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjg4OjMzOiBl cnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJpYlJlc3VsdEZ1bmPigJkKICAgODggfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdBdHRyaWJSZXN1bHRGdW5jIGZ1bmMsIGdw b2ludGVyIHVzZXJfZGF0YSk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBefn5+fn5+fn5+fn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6OTA6MjI6IGVycm9yOiB1bmtub3du IHR5cGUgbmFtZSDigJhHQXR0cmli4oCZCiAgIDkwIHwgZ3VpbnQgZ2F0dF93cml0ZV9jbWQoR0F0 dHJpYiAqYXR0cmliLCB1aW50MTZfdCBoYW5kbGUsIGNvbnN0IHVpbnQ4X3QgKnZhbHVlLAogICAg ICB8ICAgICAgICAgICAgICAgICAgICAgIF5+fn5+fn4KLi9hdHRyaWIvZ2F0dC5oOjkzOjI5OiBl cnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJpYuKAmQogICA5MyB8IGd1aW50IGdhdHRf c2lnbmVkX3dyaXRlX2NtZChHQXR0cmliICphdHRyaWIsIHVpbnQxNl90IGhhbmRsZSwKICAgICAg fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fgouL2F0dHJpYi9nYXR0Lmg6MTAw OjMwOiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0dHJpYuKAmQogIDEwMCB8IGd1aW50 IGdhdHRfcmVhZF9jaGFyX2J5X3V1aWQoR0F0dHJpYiAqYXR0cmliLCB1aW50MTZfdCBzdGFydCwg dWludDE2X3QgZW5kLAogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+ fgouL2F0dHJpYi9nYXR0Lmg6MTAxOjUwOiBlcnJvcjogdW5rbm93biB0eXBlIG5hbWUg4oCYR0F0 dHJpYlJlc3VsdEZ1bmPigJkKICAxMDEgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGJ0X3V1aWRfdCAqdXVpZCwgR0F0dHJpYlJlc3VsdEZ1bmMgZnVuYywKICAgICAgfCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+ fn4KLi9hdHRyaWIvZ2F0dC5oOjEwNDoyNTogZXJyb3I6IHVua25vd24gdHlwZSBuYW1lIOKAmEdB dHRyaWLigJkKICAxMDQgfCBndWludCBnYXR0X2V4Y2hhbmdlX210dShHQXR0cmliICphdHRyaWIs IHVpbnQxNl90IG10dSwgR0F0dHJpYlJlc3VsdEZ1bmMgZnVuYywKICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgICBefn5+fn5+Ci4vYXR0cmliL2dhdHQuaDoxMDQ6NTY6IGVycm9yOiB1bmtu b3duIHR5cGUgbmFtZSDigJhHQXR0cmliUmVzdWx0RnVuY+KAmQogIDEwNCB8IGd1aW50IGdhdHRf ZXhjaGFuZ2VfbXR1KEdBdHRyaWIgKmF0dHJpYiwgdWludDE2X3QgbXR1LCBHQXR0cmliUmVzdWx0 RnVuYyBmdW5jLAogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fgptYWtlWzFdOiAqKiogW01ha2VmaWxl OjcyMzI6IHNyYy9hZGFwdGVyLm9dIEVycm9yIDEKbWFrZVsxXTogKioqIFdhaXRpbmcgZm9yIHVu ZmluaXNoZWQgam9icy4uLi4KbWFrZTogKioqIFtNYWtlZmlsZTo0MzAzOiBhbGxdIEVycm9yIDIK CgpodHRwczovL2dpdGh1Yi5jb20vYmx1ZXovYmx1ZXovcHVsbC8yNjAwCgotLS0KUmVnYXJkcywK TGludXggQmx1ZXRvb3RoCgo= --===============2448570474187979152==--