From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-qt1-f181.google.com (mail-qt1-f181.google.com [209.85.160.181]) (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 337764E4315 for ; Fri, 9 Oct 2026 15:42:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.181 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1791560553; cv=none; b=CsRxmkrbkVPEXavCAUD66d0I99oMKSEMCnwWi4G+MldmqjqmsF7I4JdZenBVp47fy0afQbEL2wE9KBvHxW1Y09OiYQUv6jGCCLoI6j9dpsVdEdbu7dO+2Ti0ib7I/vc4WeNGIqNa8nT/KQaWNZua66Zf/MGYeNJWcerm6ABIoEI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1791560553; c=relaxed/simple; bh=3c7ZFavUqpumeeSwk8YxcCilLxG52hoTK2DuCYggwLU=; h=Message-ID:Date:Content-Type:MIME-Version:From:To:Subject: In-Reply-To:References; b=Fp2hpHN0Uq/mpBjB3IMMhkzw+iteY67/kTVmWvy10BPFm2ZddU7d7AVUGlBpYR92nWkNmYy3XC4q5E+/BMGxQILJhJUfv3sS81loygrhpb5+FzDWJcU/1rWvLfpogF3B9C/MSqtDcJEfJ1/k1UQuLCFhe5gNViZMXJSRzplI1H4= 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=lmIwQ4nM; arc=none smtp.client-ip=209.85.160.181 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="lmIwQ4nM" Received: by mail-qt1-f181.google.com with SMTP id d75a77b69052e-53394bffe0fso55787511cf.1 for ; Fri, 09 Oct 2026 08:42:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1791560549; x=1792165349; 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=3c7ZFavUqpumeeSwk8YxcCilLxG52hoTK2DuCYggwLU=; b=lmIwQ4nM+P6gFZBu28API+k5IuquOBkPR9WfOR+cVu2fq6K5lEV55fuaUl2zjOppb6 DkjG4uFV4gPCwBkRnGKL4J6N/9SllFySEVepGu/tu77XgugJEGHf8RR1VfckWjt6eQrJ EpW2ycJoW6+YSqlK0vCjleQBU+AIiO7ihAZEoFiEjJ4sa+sDzXDVS8yE2R8X/1umrTb8 +7cT8MOflvgOjUVH2YBrsoI80tPnN0lfI7XMIVYb89nqGWPgcCTZzA4mhlKiP9Zk5eOZ SvT1q8VX8DJMQtG1notSyGvuWQcMQHm/27FZFngtNiyolizR5xnmECIsJYw/hrfHG5qg tqlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1791560549; x=1792165349; 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=3c7ZFavUqpumeeSwk8YxcCilLxG52hoTK2DuCYggwLU=; b=HZut2pt/IBMWmKQT15nI9RVfnO0iYrRgrAscmpJJq7SaL72UTIHFNOlk6lWBCOMy+q EXAeVGz4QCb1gbums0JdDnL48ciclFeetjZNtpl+gXiw1CfpLBvddwKKB+8kbp8z0MLZ FbZYNegOehqIcBq21foUh+HRtMYscvf8IbzXJJk4Zh+dbXYn+Iiagz/Dz05ZlAEgVmoq V6IK3SsPNpkB32UbxNV4RT0dUMLedbRo19WnbSilktvjJmwrmvCSPO47fHQkNBYcjTA5 WJXG1ZXPeFbhQvyJt1z60EJD84mhzV8GqjIdHYq+eWx3WIbnSRIavLfBwmtcN3/lcm5U xfQA== X-Gm-Message-State: AFuF++mTjUTU1G9+Su6/0J+jJSynrPRcVQKFmT1iidAewYHW6VHbKtZO ty6lgrDJ79jKpD4qKbYvI74WAhfU7/Rvax9ue4Xt/vEHw09l+c1p6aNVwmwFtQ== X-Gm-Gg: AYBFou0EjvGF1zOItxLzaghkauYWTeudTdC3SJTOCMRwwV7emrB4XaCEg1Ei2O5490j QAc8xcTFRYZYskkv/9qYWfmKcOkXuylqxe7BNaRqcdzQ1Ss1XkoJ8JQTu6Iz8AWjcWWaYI7P1Rs YGWS0hlFot5D8IFqYSTwnxvxpcY3LFuPlCO68a33PigFgO58LlyeYMS3cPhEoqB8bpgL+DG5PkN rpnzEHq1wPZvrvvfZgGeyFDXkkrqcANe2ZkXoUZUh165bCOemQBF1zakttTsHiISpw2fNMZz+5L whOYOqXBYRQCdmKJiDXt+KOl1C9IyHE0mxlIaZE1djqPX5LIV+N4jUSyaPzOvtn1T6G5w3mSJOh BE8o7MpNlxeaS23r0fojsq3d8eXbnKYgTyoaorJEZbiJ6DzvAbyLQSr99l4QyBTRhGHomYKAX7b rPqS0llNtRlJ4bIpK9Jx3T+vLo36PxMjl4JrJItBGUxEYoK5I8z0KYQPuKAdSYxikWSGH9rSrTH qva X-Received: by 2002:a05:622a:4d92:b0:535:7258:9fee with SMTP id d75a77b69052e-535a61baa0amr23670891cf.24.1791560548619; Fri, 09 Oct 2026 08:42:28 -0700 (PDT) Received: from [172.17.0.2] ([74.235.90.91]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-5359b76eea2sm20706821cf.18.2026.10.09.08.42.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 09 Oct 2026 08:42:28 -0700 (PDT) Message-ID: <6ac90b64.24304cfb.35a822.b4e9@mx.google.com> Date: Fri, 09 Oct 2026 08:42:28 -0700 (PDT) Content-Type: multipart/mixed; boundary="===============7569973399538826349==" 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, cheng.jiang@oss.qualcomm.com Subject: RE: Ranging Profile and Ranging Service PTS fixes In-Reply-To: <20261009092532.3600749-2-cheng.jiang@oss.qualcomm.com> References: <20261009092532.3600749-2-cheng.jiang@oss.qualcomm.com> Reply-To: linux-bluetooth@vger.kernel.org --===============7569973399538826349== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhpcyBpcyBhdXRvbWF0ZWQgZW1haWwgYW5kIHBsZWFzZSBkbyBub3QgcmVwbHkgdG8gdGhpcyBl bWFpbCEKCkRlYXIgc3VibWl0dGVyLAoKVGhhbmsgeW91IGZvciBzdWJtaXR0aW5nIHRoZSBwYXRj aGVzIHRvIHRoZSBsaW51eCBibHVldG9vdGggbWFpbGluZyBsaXN0LgpUaGlzIGlzIGEgQ0kgdGVz dCByZXN1bHRzIHdpdGggeW91ciBwYXRjaCBzZXJpZXM6ClBXIExpbms6aHR0cHM6Ly9wYXRjaHdv cmsua2VybmVsLm9yZy9zZXJpZXMvMTE4MjI0NC8KCi0tLVRlc3QgcmVzdWx0LS0tCgpUZXN0IFN1 bW1hcnk6CkNoZWNrUGF0Y2ggICAgICAgICAgICAgICAgICAgIFBBU1MgICAgICA3LjYwIHNlY29u ZHMKR2l0TGludCAgICAgICAgICAgICAgICAgICAgICAgUEFTUyAgICAgIDQuNjMgc2Vjb25kcwpC dWlsZEVsbCAgICAgICAgICAgICAgICAgICAgICBQQVNTICAgICAgMTkuNzggc2Vjb25kcwpCbHVl ek1ha2UgICAgICAgICAgICAgICAgICAgICBQQVNTICAgICAgMzkwLjM0IHNlY29uZHMKTWFrZUNo ZWNrICAgICAgICAgICAgICAgICAgICAgUEFTUyAgICAgIDE0LjIxIHNlY29uZHMKTWFrZURpc3Rj aGVjayAgICAgICAgICAgICAgICAgUEFTUyAgICAgIDE0Mi4yMiBzZWNvbmRzCkNoZWNrVmFsZ3Jp bmQgICAgICAgICAgICAgICAgIFBBU1MgICAgICAyMzMuODkgc2Vjb25kcwpDaGVja1NtYXRjaCAg ICAgICAgICAgICAgICAgICBQQVNTICAgICAgMjk4LjQ3IHNlY29uZHMKYmx1ZXptYWtlZXh0ZWxs ICAgICAgICAgICAgICAgUEFTUyAgICAgIDk1LjUwIHNlY29uZHMKVGVzdEZ1bmN0aW9uYWwgICAg ICAgICAgICAgICAgUEFTUyAgICAgIDExODIuMTAgc2Vjb25kcwpJbmNyZW1lbnRhbEJ1aWxkICAg ICAgICAgICAgICBGQUlMICAgICAgNDMxLjc3IHNlY29uZHMKU2NhbkJ1aWxkICAgICAgICAgICAg ICAgICAgICAgRkFJTCAgICAgIDE5Ny4zMCBzZWNvbmRzCgpEZXRhaWxzCiMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIwpUZXN0OiBJbmNyZW1lbnRhbEJ1aWxkIC0gRkFJTApEZXNjOiBJbmNy ZW1lbnRhbCBidWlsZCB3aXRoIHRoZSBwYXRjaGVzIGluIHRoZSBzZXJpZXMKT3V0cHV0OgoKdW5p dC90ZXN0LWJhcC5jOiBJbiBmdW5jdGlvbiDigJh0ZXN0X3NldHVwX3NlcnZlcuKAmToKdW5pdC90 ZXN0LWJhcC5jOjc1Njo1ODogZXJyb3I6IHBhc3NpbmcgYXJndW1lbnQgNCBvZiDigJhnYXR0X2Ri X2NjY19yZWdpc3RlcuKAmSBmcm9tIGluY29tcGF0aWJsZSBwb2ludGVyIHR5cGUgWy1XaW5jb21w YXRpYmxlLXBvaW50ZXItdHlwZXNdCiAgNzU2IHwgICAgICAgICBnYXR0X2RiX2NjY19yZWdpc3Rl cihkYiwgZ2F0dF9jY2NfcmVhZF9jYiwgTlVMTCwgZ2F0dF9ub3RpZnlfY2IsIGRhdGEpOwogICAg ICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIF5+fn5+fn5+fn5+fn5+CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAogICAgICB8ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKCopKHN0cnVjdCBnYXR0 X2RiX2F0dHJpYnV0ZSAqLCBzdHJ1Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUgKiwgY29uc3QgdWludDhf dCAqLCBzaXplX3QsICBzdHJ1Y3QgYnRfYXR0ICosIHZvaWQgKikge2FrYSB2b2lkICgqKShzdHJ1 Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUgKiwgc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICosIGNvbnN0 IHVuc2lnbmVkIGNoYXIgKiwgbG9uZyB1bnNpZ25lZCBpbnQsICBzdHJ1Y3QgYnRfYXR0ICosIHZv aWQgKil9CkluIGZpbGUgaW5jbHVkZWQgZnJvbSB1bml0L3Rlc3QtYmFwLmM6Mzg6Ci4vc3JjL3No YXJlZC9nYXR0LWRiLmg6MjEzOjU4OiBub3RlOiBleHBlY3RlZCDigJhnYXR0X2RiX25vdGlmeV90 4oCZIHtha2Eg4oCYdm9pZCAoKikoc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICosIHN0cnVjdCBn YXR0X2RiX2F0dHJpYnV0ZSAqLCBjb25zdCB1bnNpZ25lZCBjaGFyICosIGxvbmcgdW5zaWduZWQg aW50LCAgdW5zaWduZWQgY2hhciwgIHN0cnVjdCBidF9hdHQgKiwgdm9pZCAqKeKAmX0gYnV0IGFy Z3VtZW50IGlzIG9mIHR5cGUg4oCYdm9pZCAoKikoc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICos IHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0ZSAqLCBjb25zdCB1aW50OF90ICosIHNpemVfdCwgIHN0 cnVjdCBidF9hdHQgKiwgdm9pZCAqKeKAmSB7YWthIOKAmHZvaWQgKCopKHN0cnVjdCBnYXR0X2Ri X2F0dHJpYnV0ZSAqLCBzdHJ1Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUgKiwgY29uc3QgdW5zaWduZWQg Y2hhciAqLCBsb25nIHVuc2lnbmVkIGludCwgIHN0cnVjdCBidF9hdHQgKiwgdm9pZCAqKeKAmX0K ICAyMTMgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2F0dF9kYl9u b3RpZnlfdCBub3RpZnlfZnVuYywKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfn5+fn5+fn5+fn5+fn5+fn5efn5+fn5+fn5+fgp1bml0L3Rlc3QtYmFwLmM6 NjM3OjEzOiBub3RlOiDigJhnYXR0X25vdGlmeV9jYuKAmSBkZWNsYXJlZCBoZXJlCiAgNjM3IHwg c3RhdGljIHZvaWQgZ2F0dF9ub3RpZnlfY2Ioc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICphdHRy aWIsCiAgICAgIHwgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn4KLi9zcmMvc2hhcmVkL2dhdHQt ZGIuaDo1MToxNjogbm90ZTog4oCYZ2F0dF9kYl9ub3RpZnlfdOKAmSBkZWNsYXJlZCBoZXJlCiAg IDUxIHwgdHlwZWRlZiB2b2lkICgqZ2F0dF9kYl9ub3RpZnlfdCkgKHN0cnVjdCBnYXR0X2RiX2F0 dHJpYnV0ZSAqYXR0cmliLAogICAgICB8ICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn4K dW5pdC90ZXN0LW1pY3AuYzogSW4gZnVuY3Rpb24g4oCYdGVzdF9zZXJ2ZXLigJk6CnVuaXQvdGVz dC1taWNwLmM6MzAxOjQxOiBlcnJvcjogcGFzc2luZyBhcmd1bWVudCA0IG9mIOKAmGdhdHRfZGJf Y2NjX3JlZ2lzdGVy4oCZIGZyb20gaW5jb21wYXRpYmxlIHBvaW50ZXIgdHlwZSBbLVdpbmNvbXBh dGlibGUtcG9pbnRlci10eXBlc10KICAzMDEgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZ2F0dF9ub3RpZnlfY2IsIGRhdGEpOwogICAgICB8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fgogICAgICB8ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CiAgICAgIHwgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKCopKHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0 ZSAqLCBzdHJ1Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUgKiwgY29uc3QgdWludDhfdCAqLCBzaXplX3Qs ICBzdHJ1Y3QgYnRfYXR0ICosIHZvaWQgKikge2FrYSB2b2lkICgqKShzdHJ1Y3QgZ2F0dF9kYl9h dHRyaWJ1dGUgKiwgc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICosIGNvbnN0IHVuc2lnbmVkIGNo YXIgKiwgbG9uZyB1bnNpZ25lZCBpbnQsICBzdHJ1Y3QgYnRfYXR0ICosIHZvaWQgKil9CkluIGZp bGUgaW5jbHVkZWQgZnJvbSB1bml0L3Rlc3QtbWljcC5jOjI5OgouL3NyYy9zaGFyZWQvZ2F0dC1k Yi5oOjIxMzo1ODogbm90ZTogZXhwZWN0ZWQg4oCYZ2F0dF9kYl9ub3RpZnlfdOKAmSB7YWthIOKA mHZvaWQgKCopKHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0ZSAqLCBzdHJ1Y3QgZ2F0dF9kYl9hdHRy aWJ1dGUgKiwgY29uc3QgdW5zaWduZWQgY2hhciAqLCBsb25nIHVuc2lnbmVkIGludCwgIHVuc2ln bmVkIGNoYXIsICBzdHJ1Y3QgYnRfYXR0ICosIHZvaWQgKinigJl9IGJ1dCBhcmd1bWVudCBpcyBv ZiB0eXBlIOKAmHZvaWQgKCopKHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0ZSAqLCBzdHJ1Y3QgZ2F0 dF9kYl9hdHRyaWJ1dGUgKiwgY29uc3QgdWludDhfdCAqLCBzaXplX3QsICBzdHJ1Y3QgYnRfYXR0 ICosIHZvaWQgKinigJkge2FrYSDigJh2b2lkICgqKShzdHJ1Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUg Kiwgc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICosIGNvbnN0IHVuc2lnbmVkIGNoYXIgKiwgbG9u ZyB1bnNpZ25lZCBpbnQsICBzdHJ1Y3QgYnRfYXR0ICosIHZvaWQgKinigJl9CiAgMjEzIHwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdhdHRfZGJfbm90aWZ5X3Qgbm90 aWZ5X2Z1bmMsCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IH5+fn5+fn5+fn5+fn5+fn5+Xn5+fn5+fn5+fn4KdW5pdC90ZXN0LW1pY3AuYzoyMjI6MTM6IG5v dGU6IOKAmGdhdHRfbm90aWZ5X2Ni4oCZIGRlY2xhcmVkIGhlcmUKICAyMjIgfCBzdGF0aWMgdm9p ZCBnYXR0X25vdGlmeV9jYihzdHJ1Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUgKmF0dHJpYiwKICAgICAg fCAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fgouL3NyYy9zaGFyZWQvZ2F0dC1kYi5oOjUxOjE2 OiBub3RlOiDigJhnYXR0X2RiX25vdGlmeV904oCZIGRlY2xhcmVkIGhlcmUKICAgNTEgfCB0eXBl ZGVmIHZvaWQgKCpnYXR0X2RiX25vdGlmeV90KSAoc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICph dHRyaWIsCiAgICAgIHwgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fgptYWtlWzFdOiAq KiogW01ha2VmaWxlOjcxMzA6IHVuaXQvdGVzdC1taWNwLm9dIEVycm9yIDEKbWFrZVsxXTogKioq IFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KbWFrZVsxXTogKioqIFtNYWtlZmlsZTo3 MTMwOiB1bml0L3Rlc3QtYmFwLm9dIEVycm9yIDEKbWFrZTogKioqIFtNYWtlZmlsZTo0MjQ2OiBh bGxdIEVycm9yIDIKW3YyLDAyLzE0XSBzaGFyZWQvZ2F0dC1kYjogUGFzcyB0aGUgQVRUIG9wY29k ZSB0byB0aGUgbm90aWZ5IGNhbGxiYWNrCgp1bml0L3Rlc3QtYmFwLmM6IEluIGZ1bmN0aW9uIOKA mHRlc3Rfc2V0dXBfc2VydmVy4oCZOgp1bml0L3Rlc3QtYmFwLmM6NzU2OjU4OiBlcnJvcjogcGFz c2luZyBhcmd1bWVudCA0IG9mIOKAmGdhdHRfZGJfY2NjX3JlZ2lzdGVy4oCZIGZyb20gaW5jb21w YXRpYmxlIHBvaW50ZXIgdHlwZSBbLVdpbmNvbXBhdGlibGUtcG9pbnRlci10eXBlc10KICA3NTYg fCAgICAgICAgIGdhdHRfZGJfY2NjX3JlZ2lzdGVyKGRiLCBnYXR0X2NjY19yZWFkX2NiLCBOVUxM LCBnYXR0X25vdGlmeV9jYiwgZGF0YSk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn4KICAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8 CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdm9pZCAoKikoc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICosIHN0cnVjdCBnYXR0 X2RiX2F0dHJpYnV0ZSAqLCBjb25zdCB1aW50OF90ICosIHNpemVfdCwgIHN0cnVjdCBidF9hdHQg Kiwgdm9pZCAqKSB7YWthIHZvaWQgKCopKHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0ZSAqLCBzdHJ1 Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUgKiwgY29uc3QgdW5zaWduZWQgY2hhciAqLCBsb25nIHVuc2ln bmVkIGludCwgIHN0cnVjdCBidF9hdHQgKiwgdm9pZCAqKX0KSW4gZmlsZSBpbmNsdWRlZCBmcm9t IHVuaXQvdGVzdC1iYXAuYzozODoKLi9zcmMvc2hhcmVkL2dhdHQtZGIuaDoyMTM6NTg6IG5vdGU6 IGV4cGVjdGVkIOKAmGdhdHRfZGJfbm90aWZ5X3TigJkge2FrYSDigJh2b2lkICgqKShzdHJ1Y3Qg Z2F0dF9kYl9hdHRyaWJ1dGUgKiwgc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICosIGNvbnN0IHVu c2lnbmVkIGNoYXIgKiwgbG9uZyB1bnNpZ25lZCBpbnQsICB1bnNpZ25lZCBjaGFyLCAgc3RydWN0 IGJ0X2F0dCAqLCB2b2lkICop4oCZfSBidXQgYXJndW1lbnQgaXMgb2YgdHlwZSDigJh2b2lkICgq KShzdHJ1Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUgKiwgc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICos IGNvbnN0IHVpbnQ4X3QgKiwgc2l6ZV90LCAgc3RydWN0IGJ0X2F0dCAqLCB2b2lkICop4oCZIHth a2Eg4oCYdm9pZCAoKikoc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICosIHN0cnVjdCBnYXR0X2Ri X2F0dHJpYnV0ZSAqLCBjb25zdCB1bnNpZ25lZCBjaGFyICosIGxvbmcgdW5zaWduZWQgaW50LCAg c3RydWN0IGJ0X2F0dCAqLCB2b2lkICop4oCZfQogIDIxMyB8ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBnYXR0X2RiX25vdGlmeV90IG5vdGlmeV9mdW5jLAogICAgICB8 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+fn5+fn5+ fl5+fn5+fn5+fn5+CnVuaXQvdGVzdC1iYXAuYzo2Mzc6MTM6IG5vdGU6IOKAmGdhdHRfbm90aWZ5 X2Ni4oCZIGRlY2xhcmVkIGhlcmUKICA2MzcgfCBzdGF0aWMgdm9pZCBnYXR0X25vdGlmeV9jYihz dHJ1Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUgKmF0dHJpYiwKICAgICAgfCAgICAgICAgICAgICBefn5+ fn5+fn5+fn5+fgouL3NyYy9zaGFyZWQvZ2F0dC1kYi5oOjUxOjE2OiBub3RlOiDigJhnYXR0X2Ri X25vdGlmeV904oCZIGRlY2xhcmVkIGhlcmUKICAgNTEgfCB0eXBlZGVmIHZvaWQgKCpnYXR0X2Ri X25vdGlmeV90KSAoc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICphdHRyaWIsCiAgICAgIHwgICAg ICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fgp1bml0L3Rlc3QtbWljcC5jOiBJbiBmdW5jdGlv biDigJh0ZXN0X3NlcnZlcuKAmToKdW5pdC90ZXN0LW1pY3AuYzozMDE6NDE6IGVycm9yOiBwYXNz aW5nIGFyZ3VtZW50IDQgb2Yg4oCYZ2F0dF9kYl9jY2NfcmVnaXN0ZXLigJkgZnJvbSBpbmNvbXBh dGlibGUgcG9pbnRlciB0eXBlIFstV2luY29tcGF0aWJsZS1wb2ludGVyLXR5cGVzXQogIDMwMSB8 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnYXR0X25vdGlmeV9jYiwg ZGF0YSk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+ fn5+fn5+fn5+fn5+CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9p ZCAoKikoc3RydWN0IGdhdHRfZGJfYXR0cmlidXRlICosIHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0 ZSAqLCBjb25zdCB1aW50OF90ICosIHNpemVfdCwgIHN0cnVjdCBidF9hdHQgKiwgdm9pZCAqKSB7 YWthIHZvaWQgKCopKHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0ZSAqLCBzdHJ1Y3QgZ2F0dF9kYl9h dHRyaWJ1dGUgKiwgY29uc3QgdW5zaWduZWQgY2hhciAqLCBsb25nIHVuc2lnbmVkIGludCwgIHN0 cnVjdCBidF9hdHQgKiwgdm9pZCAqKX0KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIHVuaXQvdGVzdC1t aWNwLmM6Mjk6Ci4vc3JjL3NoYXJlZC9nYXR0LWRiLmg6MjEzOjU4OiBub3RlOiBleHBlY3RlZCDi gJhnYXR0X2RiX25vdGlmeV904oCZIHtha2Eg4oCYdm9pZCAoKikoc3RydWN0IGdhdHRfZGJfYXR0 cmlidXRlICosIHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0ZSAqLCBjb25zdCB1bnNpZ25lZCBjaGFy ICosIGxvbmcgdW5zaWduZWQgaW50LCAgdW5zaWduZWQgY2hhciwgIHN0cnVjdCBidF9hdHQgKiwg dm9pZCAqKeKAmX0gYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYdm9pZCAoKikoc3RydWN0IGdh dHRfZGJfYXR0cmlidXRlICosIHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0ZSAqLCBjb25zdCB1aW50 OF90ICosIHNpemVfdCwgIHN0cnVjdCBidF9hdHQgKiwgdm9pZCAqKeKAmSB7YWthIOKAmHZvaWQg KCopKHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0ZSAqLCBzdHJ1Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUg KiwgY29uc3QgdW5zaWduZWQgY2hhciAqLCBsb25nIHVuc2lnbmVkIGludCwgIHN0cnVjdCBidF9h dHQgKiwgdm9pZCAqKeKAmX0KICAyMTMgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZ2F0dF9kYl9ub3RpZnlfdCBub3RpZnlfZnVuYywKICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fn5+fn5+fn5+fn5efn5+fn5+fn5+ fgp1bml0L3Rlc3QtbWljcC5jOjIyMjoxMzogbm90ZTog4oCYZ2F0dF9ub3RpZnlfY2LigJkgZGVj bGFyZWQgaGVyZQogIDIyMiB8IHN0YXRpYyB2b2lkIGdhdHRfbm90aWZ5X2NiKHN0cnVjdCBnYXR0 X2RiX2F0dHJpYnV0ZSAqYXR0cmliLAogICAgICB8ICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+ Ci4vc3JjL3NoYXJlZC9nYXR0LWRiLmg6NTE6MTY6IG5vdGU6IOKAmGdhdHRfZGJfbm90aWZ5X3Ti gJkgZGVjbGFyZWQgaGVyZQogICA1MSB8IHR5cGVkZWYgdm9pZCAoKmdhdHRfZGJfbm90aWZ5X3Qp IChzdHJ1Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUgKmF0dHJpYiwKICAgICAgfCAgICAgICAgICAgICAg ICBefn5+fn5+fn5+fn5+fn5+Cm1ha2VbMV06ICoqKiBbTWFrZWZpbGU6NzEzMDogdW5pdC90ZXN0 LW1pY3Aub10gRXJyb3IgMQptYWtlWzFdOiAqKiogV2FpdGluZyBmb3IgdW5maW5pc2hlZCBqb2Jz Li4uLgptYWtlWzFdOiAqKiogW01ha2VmaWxlOjcxMzA6IHVuaXQvdGVzdC1iYXAub10gRXJyb3Ig MQptYWtlOiAqKiogW01ha2VmaWxlOjQyNDY6IGFsbF0gRXJyb3IgMgojIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMKVGVzdDogU2NhbkJ1aWxkIC0gRkFJTApEZXNjOiBSdW4gU2NhbiBCdWls ZApPdXRwdXQ6CgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6NDU4OjIxOiB3YXJuaW5nOiBVc2Ug b2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KICA0NTggfCAgICAgICAg IGdhdHRfZGJfdW5yZWdpc3RlcihvcC0+Y2xpZW50LT5kYiwgb3AtPmRiX2lkKTsKICAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+CnNyYy9zaGFyZWQvZ2F0dC1jbGll bnQuYzo3MDM6Mjogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5p eC5NYWxsb2NdCiAgNzAzIHwgICAgICAgICBkaXNjb3Zlcnlfb3BfY29tcGxldGUob3AsIGZhbHNl LCBhdHRfZWNvZGUpOwogICAgICB8ICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MTEwOToyOiB3YXJuaW5n OiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDExMDkgfCAg ICAgICAgIGRpc2NvdmVyeV9vcF9jb21wbGV0ZShvcCwgc3VjY2VzcywgYXR0X2Vjb2RlKTsKICAg ICAgfCAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MTMwMzoyOiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5 IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDEzMDMgfCAgICAgICAgIGRpc2NvdmVy eV9vcF9jb21wbGV0ZShvcCwgc3VjY2VzcywgYXR0X2Vjb2RlKTsKICAgICAgfCAgICAgICAgIF5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dh dHQtY2xpZW50LmM6MTM2ODoyOiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZy ZWVkIFt1bml4Lk1hbGxvY10KIDEzNjggfCAgICAgICAgIGRpc2NvdmVyeV9vcF9jb21wbGV0ZShv cCwgc3VjY2VzcywgYXR0X2Vjb2RlKTsKICAgICAgfCAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MTY0 Mzo2OiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxv Y10KIDE2NDMgfCAgICAgICAgIGlmIChyZWFkX2RiX2hhc2gob3ApKSB7CiAgICAgIHwgICAgICAg ICAgICAgXn5+fn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MTY0ODoyOiB3 YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDE2 NDggfCAgICAgICAgIGRpc2NvdmVyX2FsbChvcCk7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+ fn5+fn5+CnNyYy9zaGFyZWQvZ2F0dC1jbGllbnQuYzoxNzAzOjU2OiB3YXJuaW5nOiBVc2Ugb2Yg bWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDE3MDMgfCAgICAgICAgIG5v dGlmeV9kYXRhLT5jaHJjLT5jY2Nfd3JpdGVfaWQgPSBub3RpZnlfZGF0YS0+YXR0X2lkID0gYXR0 X2lkOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+ fn5+fn5+fn5+fn5+fn5+fn4gXgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MjE3MDo2OiB3YXJu aW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDIxNzAg fCAgICAgICAgIGlmIChyZWFkX2RiX2hhc2gob3ApKSB7CiAgICAgIHwgICAgICAgICAgICAgXn5+ fn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MjE3ODo4OiB3YXJuaW5nOiBV c2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDIxNzggfCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2Nv dmVyeV9vcF9yZWYob3ApLAogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn4Kc3JjL3NoYXJlZC9n YXR0LWNsaWVudC5jOjMzNjQ6Mjogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBm cmVlZCBbdW5peC5NYWxsb2NdCiAzMzY0IHwgICAgICAgICBjb21wbGV0ZV93cml0ZV9sb25nX29w KHJlcSwgc3VjY2VzcywgMCwgZmFsc2UpOwogICAgICB8ICAgICAgICAgXn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6 MzM4NjoyOiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1h bGxvY10KIDMzODYgfCAgICAgICAgIHJlcXVlc3RfdW5yZWYocmVxKTsKICAgICAgfCAgICAgICAg IF5+fn5+fn5+fn5+fn5+fn5+fgoxMiB3YXJuaW5ncyBnZW5lcmF0ZWQuCnNyYy9zaGFyZWQvcmFw LmM6MzM0NDozMDogd2FybmluZzogQXNzaWduZWQgdmFsdWUgaXMgdW5pbml0aWFsaXplZCBbY29y ZS51bmluaXRpYWxpemVkLkFzc2lnbl0KIDMzNDQgfCAgICAgICAgICAgICAgICAgICAgICAgICBv dXQtPnRvbmVfcGN0W2tdLmlfc2FtcGxlID0gdG9uZV9wY3RfaVtrXTsKICAgICAgfCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4gfn5+fn5+fn5+fn5+ fgpzcmMvc2hhcmVkL3JhcC5jOjQyOTE6MTM6IHdhcm5pbmc6IFVzZSBvZiBtZW1vcnkgYWZ0ZXIg aXQgaXMgZnJlZWQgW3VuaXguTWFsbG9jXQogNDI5MSB8ICAgICAgICAgYXR0YWNoZWQgPSBxdWV1 ZV9maW5kKHNlc3Npb25zLCBOVUxMLCByYXApOwogICAgICB8ICAgICAgICAgICAgICAgICAgICBe fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CjIgd2FybmluZ3MgZ2VuZXJhdGVkLgpzcmMv c2hhcmVkL2JhcC5jOjE1NDM6ODogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBm cmVlZCBbdW5peC5NYWxsb2NdCiAxNTQzIHwgICAgICAgICBiYXAgPSBidF9iYXBfcmVmX3NhZmUo YmFwKTsKICAgICAgfCAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+CnNyYy9zaGFy ZWQvYmFwLmM6MjM1OToyMDogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVl ZCBbdW5peC5NYWxsb2NdCiAyMzU5IHwgICAgICAgICByZXR1cm4gcXVldWVfZmluZChzdHJlYW0t PmJhcC0+c3RyZWFtcywgTlVMTCwgc3RyZWFtKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAg ICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+CjIgd2FybmluZ3MgZ2VuZXJhdGVkLgpzcmMvc2hh cmVkL2dhdHQtY2xpZW50LmM6NDU4OjIxOiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0 IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KICA0NTggfCAgICAgICAgIGdhdHRfZGJfdW5yZWdpc3Rl cihvcC0+Y2xpZW50LT5kYiwgb3AtPmRiX2lkKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAg ICAgICAgICBefn5+fn5+fn5+CnNyYy9zaGFyZWQvZ2F0dC1jbGllbnQuYzo3MDM6Mjogd2Fybmlu ZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAgNzAzIHwg ICAgICAgICBkaXNjb3Zlcnlfb3BfY29tcGxldGUob3AsIGZhbHNlLCBhdHRfZWNvZGUpOwogICAg ICB8ICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpz cmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MTEwOToyOiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFm dGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDExMDkgfCAgICAgICAgIGRpc2NvdmVyeV9v cF9jb21wbGV0ZShvcCwgc3VjY2VzcywgYXR0X2Vjb2RlKTsKICAgICAgfCAgICAgICAgIF5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dhdHQt Y2xpZW50LmM6MTMwMzoyOiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVk IFt1bml4Lk1hbGxvY10KIDEzMDMgfCAgICAgICAgIGRpc2NvdmVyeV9vcF9jb21wbGV0ZShvcCwg c3VjY2VzcywgYXR0X2Vjb2RlKTsKICAgICAgfCAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MTM2ODoy OiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10K IDEzNjggfCAgICAgICAgIGRpc2NvdmVyeV9vcF9jb21wbGV0ZShvcCwgc3VjY2VzcywgYXR0X2Vj b2RlKTsKICAgICAgfCAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MTY0Mzo2OiB3YXJuaW5nOiBVc2Ug b2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDE2NDMgfCAgICAgICAg IGlmIChyZWFkX2RiX2hhc2gob3ApKSB7CiAgICAgIHwgICAgICAgICAgICAgXn5+fn5+fn5+fn5+ fn5+fgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MTY0ODoyOiB3YXJuaW5nOiBVc2Ugb2YgbWVt b3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDE2NDggfCAgICAgICAgIGRpc2Nv dmVyX2FsbChvcCk7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+fn5+fn5+CnNyYy9zaGFyZWQv Z2F0dC1jbGllbnQuYzoxNzAzOjU2OiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlz IGZyZWVkIFt1bml4Lk1hbGxvY10KIDE3MDMgfCAgICAgICAgIG5vdGlmeV9kYXRhLT5jaHJjLT5j Y2Nfd3JpdGVfaWQgPSBub3RpZnlfZGF0YS0+YXR0X2lkID0gYXR0X2lkOwogICAgICB8ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn4g XgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MjE3MDo2OiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5 IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDIxNzAgfCAgICAgICAgIGlmIChyZWFk X2RiX2hhc2gob3ApKSB7CiAgICAgIHwgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fgpzcmMv c2hhcmVkL2dhdHQtY2xpZW50LmM6MjE3ODo4OiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVy IGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDIxNzggfCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdmVyeV9vcF9yZWYob3ApLAog ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn4Kc3JjL3NoYXJlZC9nYXR0LWNsaWVudC5jOjMzNjQ6 Mjogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2Nd CiAzMzY0IHwgICAgICAgICBjb21wbGV0ZV93cml0ZV9sb25nX29wKHJlcSwgc3VjY2VzcywgMCwg ZmFsc2UpOwogICAgICB8ICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2dhdHQtY2xpZW50LmM6MzM4NjoyOiB3YXJuaW5nOiBV c2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4Lk1hbGxvY10KIDMzODYgfCAgICAg ICAgIHJlcXVlc3RfdW5yZWYocmVxKTsKICAgICAgfCAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+ fgoxMiB3YXJuaW5ncyBnZW5lcmF0ZWQuCnNyYy9zaGFyZWQvcmFwLmM6MzM0NDozMDogd2Fybmlu ZzogQXNzaWduZWQgdmFsdWUgaXMgdW5pbml0aWFsaXplZCBbY29yZS51bmluaXRpYWxpemVkLkFz c2lnbl0KIDMzNDQgfCAgICAgICAgICAgICAgICAgICAgICAgICBvdXQtPnRvbmVfcGN0W2tdLmlf c2FtcGxlID0gdG9uZV9wY3RfaVtrXTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIF4gfn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL3JhcC5j OjQyOTE6MTM6IHdhcm5pbmc6IFVzZSBvZiBtZW1vcnkgYWZ0ZXIgaXQgaXMgZnJlZWQgW3VuaXgu TWFsbG9jXQogNDI5MSB8ICAgICAgICAgYXR0YWNoZWQgPSBxdWV1ZV9maW5kKHNlc3Npb25zLCBO VUxMLCByYXApOwogICAgICB8ICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+CjIgd2FybmluZ3MgZ2VuZXJhdGVkLgp0b29scy9oY2lhdHRhY2hfYXRoM2su Yzo1MzA6OTogd2FybmluZzogRmlsZSBwb3NpdGlvbiBvZiB0aGUgc3RyZWFtIG1pZ2h0IGJlICdp bmRldGVybWluYXRlJyBhZnRlciBhIGZhaWxlZCBvcGVyYXRpb24uIENhbiBjYXVzZSB1bmRlZmlu ZWQgYmVoYXZpb3IgW3VuaXguU3RyZWFtXQogIDUzMCB8ICAgICAgICAgICAgICAgICAgICAgICAg IGlmICghZmdldHMoYnl0ZSwgMywgc3RyZWFtKSkKICAgICAgfCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvaGNpYXR0YWNoX2F0aDNrLmM6 NTMwOjk6IHdhcm5pbmc6IFJlYWQgZnVuY3Rpb24gY2FsbGVkIHdoZW4gc3RyZWFtIGlzIGluIEVP RiBzdGF0ZS4gRnVuY3Rpb24gaGFzIG5vIGVmZmVjdCBbdW5peC5TdHJlYW1dCiAgNTMwIHwgICAg ICAgICAgICAgICAgICAgICAgICAgaWYgKCFmZ2V0cyhieXRlLCAzLCBzdHJlYW0pKQogICAgICB8 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoyIHdh cm5pbmdzIGdlbmVyYXRlZC4KdG9vbHMvaGNpYXR0YWNoLmM6ODE3Ojc6IHdhcm5pbmc6IEFsdGhv dWdoIHRoZSB2YWx1ZSBzdG9yZWQgdG8gJ24nIGlzIHVzZWQgaW4gdGhlIGVuY2xvc2luZyBleHBy ZXNzaW9uLCB0aGUgdmFsdWUgaXMgbmV2ZXIgYWN0dWFsbHkgcmVhZCBmcm9tICduJyBbZGVhZGNv ZGUuRGVhZFN0b3Jlc10KICA4MTcgfCAgICAgICAgIGlmICgobiA9IHJlYWRfaGNpX2V2ZW50KGZk LCByZXNwLCAxMCkpIDwgMCkgewogICAgICB8ICAgICAgICAgICAgICBeICAgfn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fgp0b29scy9oY2lhdHRhY2guYzo4NjU6Nzogd2FybmluZzogQWx0aG91 Z2ggdGhlIHZhbHVlIHN0b3JlZCB0byAnbicgaXMgdXNlZCBpbiB0aGUgZW5jbG9zaW5nIGV4cHJl c3Npb24sIHRoZSB2YWx1ZSBpcyBuZXZlciBhY3R1YWxseSByZWFkIGZyb20gJ24nIFtkZWFkY29k ZS5EZWFkU3RvcmVzXQogIDg2NSB8ICAgICAgICAgaWYgKChuID0gcmVhZF9oY2lfZXZlbnQoZmQs IHJlc3AsIDQpKSA8IDApIHsKICAgICAgfCAgICAgICAgICAgICAgXiAgIH5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fgp0b29scy9oY2lhdHRhY2guYzo4ODc6ODogd2FybmluZzogQWx0aG91Z2gg dGhlIHZhbHVlIHN0b3JlZCB0byAnbicgaXMgdXNlZCBpbiB0aGUgZW5jbG9zaW5nIGV4cHJlc3Np b24sIHRoZSB2YWx1ZSBpcyBuZXZlciBhY3R1YWxseSByZWFkIGZyb20gJ24nIFtkZWFkY29kZS5E ZWFkU3RvcmVzXQogIDg4NyB8ICAgICAgICAgICAgICAgICBpZiAoKG4gPSByZWFkX2hjaV9ldmVu dChmZCwgcmVzcCwgMTApKSA8IDApIHsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICBeICAg fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9oY2lhdHRhY2guYzo5MDk6Nzogd2Fy bmluZzogQWx0aG91Z2ggdGhlIHZhbHVlIHN0b3JlZCB0byAnbicgaXMgdXNlZCBpbiB0aGUgZW5j bG9zaW5nIGV4cHJlc3Npb24sIHRoZSB2YWx1ZSBpcyBuZXZlciBhY3R1YWxseSByZWFkIGZyb20g J24nIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDkwOSB8ICAgICAgICAgaWYgKChuID0gcmVhZF9o Y2lfZXZlbnQoZmQsIHJlc3AsIDQpKSA8IDApIHsKICAgICAgfCAgICAgICAgICAgICAgXiAgIH5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9oY2lhdHRhY2guYzo5MzA6Nzogd2Fybmlu ZzogQWx0aG91Z2ggdGhlIHZhbHVlIHN0b3JlZCB0byAnbicgaXMgdXNlZCBpbiB0aGUgZW5jbG9z aW5nIGV4cHJlc3Npb24sIHRoZSB2YWx1ZSBpcyBuZXZlciBhY3R1YWxseSByZWFkIGZyb20gJ24n IFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDkzMCB8ICAgICAgICAgaWYgKChuID0gcmVhZF9oY2lf ZXZlbnQoZmQsIHJlc3AsIDQpKSA8IDApIHsKICAgICAgfCAgICAgICAgICAgICAgXiAgIH5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9oY2lhdHRhY2guYzo5NzQ6Nzogd2FybmluZzog QWx0aG91Z2ggdGhlIHZhbHVlIHN0b3JlZCB0byAnbicgaXMgdXNlZCBpbiB0aGUgZW5jbG9zaW5n IGV4cHJlc3Npb24sIHRoZSB2YWx1ZSBpcyBuZXZlciBhY3R1YWxseSByZWFkIGZyb20gJ24nIFtk ZWFkY29kZS5EZWFkU3RvcmVzXQogIDk3NCB8ICAgICAgICAgaWYgKChuID0gcmVhZF9oY2lfZXZl bnQoZmQsIHJlc3AsIDYpKSA8IDApIHsKICAgICAgfCAgICAgICAgICAgICAgXiAgIH5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fgo2IHdhcm5pbmdzIGdlbmVyYXRlZC4Kc3JjL3NoYXJlZC9iYXAu YzoxNTQzOjg6IHdhcm5pbmc6IFVzZSBvZiBtZW1vcnkgYWZ0ZXIgaXQgaXMgZnJlZWQgW3VuaXgu TWFsbG9jXQogMTU0MyB8ICAgICAgICAgYmFwID0gYnRfYmFwX3JlZl9zYWZlKGJhcCk7CiAgICAg IHwgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fgpzcmMvc2hhcmVkL2JhcC5jOjIz NTk6MjA6IHdhcm5pbmc6IFVzZSBvZiBtZW1vcnkgYWZ0ZXIgaXQgaXMgZnJlZWQgW3VuaXguTWFs bG9jXQogMjM1OSB8ICAgICAgICAgcmV0dXJuIHF1ZXVlX2ZpbmQoc3RyZWFtLT5iYXAtPnN0cmVh bXMsIE5VTEwsIHN0cmVhbSk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+ fn5+fn5+fn5+fn5+fn5+fgoyIHdhcm5pbmdzIGdlbmVyYXRlZC4Kc3JjL291aS5jOjUwOjI6IHdh cm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnaHdkYicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVh ZFN0b3Jlc10KICAgNTAgfCAgICAgICAgIGh3ZGIgPSB1ZGV2X2h3ZGJfdW5yZWYoaHdkYik7CiAg ICAgIHwgICAgICAgICBeICAgICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+CnNyYy9vdWkuYzo1Mzoy OiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ3VkZXYnIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2Rl LkRlYWRTdG9yZXNdCiAgIDUzIHwgICAgICAgICB1ZGV2ID0gdWRldl91bnJlZih1ZGV2KTsKICAg ICAgfCAgICAgICAgIF4gICAgICB+fn5+fn5+fn5+fn5+fn5+CjIgd2FybmluZ3MgZ2VuZXJhdGVk Lgp0b29scy9yZmNvbW0uYzoyMzQ6Mzogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdpJyBpcyBu ZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDIzNCB8ICAgICAgICAgICAgICAgICBp ID0gZXhlY3ZwKGNtZGFyZ3ZbMF0sIGNtZGFyZ3YpOwogICAgICB8ICAgICAgICAgICAgICAgICBe ICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL3JmY29tbS5jOjIzNDo3OiB3YXJu aW5nOiBOdWxsIHBvaW50ZXIgcGFzc2VkIHRvIDFzdCBwYXJhbWV0ZXIgZXhwZWN0aW5nICdub25u dWxsJyBbY29yZS5Ob25OdWxsUGFyYW1DaGVja2VyXQogIDIzNCB8ICAgICAgICAgICAgICAgICBp ID0gZXhlY3ZwKGNtZGFyZ3ZbMF0sIGNtZGFyZ3YpOwogICAgICB8ICAgICAgICAgICAgICAgICAg ICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL3JmY29tbS5jOjM1NDo4OiB3YXJu aW5nOiBBbHRob3VnaCB0aGUgdmFsdWUgc3RvcmVkIHRvICdmZCcgaXMgdXNlZCBpbiB0aGUgZW5j bG9zaW5nIGV4cHJlc3Npb24sIHRoZSB2YWx1ZSBpcyBuZXZlciBhY3R1YWxseSByZWFkIGZyb20g J2ZkJyBbZGVhZGNvZGUuRGVhZFN0b3Jlc10KICAzNTQgfCAgICAgICAgICAgICAgICAgaWYgKChm ZCA9IG9wZW4oZGV2bmFtZSwgT19SRE9OTFkgfCBPX05PQ1RUWSkpIDwgMCkgewogICAgICB8ICAg ICAgICAgICAgICAgICAgICAgIF4gICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fgp0b29scy9yZmNvbW0uYzo0NzM6Njogd2FybmluZzogVGhlIDFzdCBhcmd1bWVudCB0byAnZ2V0 c29ja25hbWUnIGlzIC0xIGJ1dCBzaG91bGQgYmUgPj0gMCBbdW5peC5TdGRDTGlicmFyeUZ1bmN0 aW9uc10KICA0NzMgfCAgICAgICAgIGlmIChnZXRzb2NrbmFtZShuc2ssIChzdHJ1Y3Qgc29ja2Fk ZHIgKikmbGFkZHIsICZhbGVuKSA8IDApIHsKICAgICAgfCAgICAgICAgICAgICBefn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9yZmNvbW0uYzo0 OTc6MTQ6IHdhcm5pbmc6IEFzc2lnbmVkIHZhbHVlIGlzIHVuaW5pdGlhbGl6ZWQgW2NvcmUudW5p bml0aWFsaXplZC5Bc3NpZ25dCiAgNDk3IHwgICAgICAgICByZXEuY2hhbm5lbCA9IHJhZGRyLnJj X2NoYW5uZWw7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICBeIH5+fn5+fn5+fn5+fn5+fn4K dG9vbHMvcmZjb21tLmM6NTE1Ojg6IHdhcm5pbmc6IEFsdGhvdWdoIHRoZSB2YWx1ZSBzdG9yZWQg dG8gJ2ZkJyBpcyB1c2VkIGluIHRoZSBlbmNsb3NpbmcgZXhwcmVzc2lvbiwgdGhlIHZhbHVlIGlz IG5ldmVyIGFjdHVhbGx5IHJlYWQgZnJvbSAnZmQnIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDUx NSB8ICAgICAgICAgICAgICAgICBpZiAoKGZkID0gb3BlbihkZXZuYW1lLCBPX1JET05MWSB8IE9f Tk9DVFRZKSkgPCAwKSB7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgXiAgICB+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CjYgd2FybmluZ3MgZ2VuZXJhdGVkLgp0b29scy9j aXB0b29sLmM6MzUxOjc6IHdhcm5pbmc6IDV0aCBmdW5jdGlvbiBjYWxsIGFyZ3VtZW50IGlzIGFu IHVuaW5pdGlhbGl6ZWQgdmFsdWUgW2NvcmUuQ2FsbEFuZE1lc3NhZ2VdCiAgMzUxIHwgICAgICAg ICBzayA9IGRvX2Nvbm5lY3QoY3RsLCBkZXZfaWQsICZzcmMsICZkc3QsIHBzbSwgKDEgPDwgQ01U UF9MT09QQkFDSykpOwogICAgICB8ICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoxIHdhcm5pbmcgZ2VuZXJh dGVkLgp0b29scy9zZHB0b29sLmM6OTQxOjI2OiB3YXJuaW5nOiBSZXN1bHQgb2YgJ21hbGxvYycg aXMgY29udmVydGVkIHRvIGEgcG9pbnRlciBvZiB0eXBlICd1aW50MzJfdCcsIHdoaWNoIGlzIGlu Y29tcGF0aWJsZSB3aXRoIHNpemVvZiBvcGVyYW5kIHR5cGUgJ2ludCcgW3VuaXguTWFsbG9jU2l6 ZW9mXQogIDk0MSB8ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICp2YWx1ZV9pbnQg PSBtYWxsb2Moc2l6ZW9mKGludCkpOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgIH5+ fn5+fn5+fn4gICAgICAgICAgICBefn5+fn4gfn5+fn5+fn5+fn4KdG9vbHMvc2RwdG9vbC5jOjk4 MDo0OiB3YXJuaW5nOiAxc3QgZnVuY3Rpb24gY2FsbCBhcmd1bWVudCBpcyBhbiB1bmluaXRpYWxp emVkIHZhbHVlIFtjb3JlLkNhbGxBbmRNZXNzYWdlXQogIDk4MCB8ICAgICAgICAgICAgICAgICAg ICAgICAgIGZyZWUoYWxsb2NBcnJheVtpXSk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAg ICAgXn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9zZHB0b29sLmM6Mzc3NzoyOiB3YXJuaW5nOiBQ b3RlbnRpYWwgbGVhayBvZiBtZW1vcnkgcG9pbnRlZCB0byBieSAnc2kubmFtZScgW3VuaXguTWFs bG9jXQogMzc3NyB8ICAgICAgICAgcmV0dXJuIGFkZF9zZXJ2aWNlKDAsICZzaSk7CiAgICAgIHwg ICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9zZHB0b29sLmM6NDExMjo0 OiB3YXJuaW5nOiBQb3RlbnRpYWwgbGVhayBvZiBtZW1vcnkgcG9pbnRlZCB0byBieSAnY29udGV4 dC5zdmMnIFt1bml4Lk1hbGxvY10KIDQxMTIgfCAgICAgICAgICAgICAgICAgICAgICAgICByZXR1 cm4gLTE7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+CjQgd2Fybmlu Z3MgZ2VuZXJhdGVkLgpzcmMvc2RwLXhtbC5jOjEyOToxMDogd2FybmluZzogQXNzaWduZWQgdmFs dWUgaXMgdW5pbml0aWFsaXplZCBbY29yZS51bmluaXRpYWxpemVkLkFzc2lnbl0KICAxMjkgfCAg ICAgICAgICAgICAgICAgYnVmWzFdID0gZGF0YVtpICsgMV07CiAgICAgIHwgICAgICAgICAgICAg ICAgICAgICAgICBeIH5+fn5+fn5+fn5+CnNyYy9zZHAteG1sLmM6MzA5OjExOiB3YXJuaW5nOiBB c3NpZ25lZCB2YWx1ZSBpcyB1bmluaXRpYWxpemVkIFtjb3JlLnVuaW5pdGlhbGl6ZWQuQXNzaWdu XQogIDMwOSB8ICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZlsxXSA9IGRhdGFbaSArIDFdOwog ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeIH5+fn5+fn5+fn5+CnNyYy9z ZHAteG1sLmM6MzQ3OjExOiB3YXJuaW5nOiBBc3NpZ25lZCB2YWx1ZSBpcyB1bmluaXRpYWxpemVk IFtjb3JlLnVuaW5pdGlhbGl6ZWQuQXNzaWduXQogIDM0NyB8ICAgICAgICAgICAgICAgICAgICAg ICAgIGJ1ZlsxXSA9IGRhdGFbaSArIDFdOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBeIH5+fn5+fn5+fn5+CjMgd2FybmluZ3MgZ2VuZXJhdGVkLgp0b29scy9yZmNvbW0t dGVzdGVyLmM6NDEwOjY6IHdhcm5pbmc6IFRoZSAxc3QgYXJndW1lbnQgdG8gJ2JpbmQnIGlzIC0x IGJ1dCBzaG91bGQgYmUgPj0gMCBbdW5peC5TdGRDTGlicmFyeUZ1bmN0aW9uc10KICA0MTAgfCAg ICAgICAgIGlmIChiaW5kKHNrLCAoc3RydWN0IHNvY2thZGRyICopICZhZGRyLCBzaXplb2YoYWRk cikpIDwgMCkgewogICAgICB8ICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvcmZjb21tLXRlc3Rlci5jOjQyODo4OiB3YXJu aW5nOiBUaGUgMXN0IGFyZ3VtZW50IHRvICdjb25uZWN0JyBpcyAtMSBidXQgc2hvdWxkIGJlID49 IDAgW3VuaXguU3RkQ0xpYnJhcnlGdW5jdGlvbnNdCiAgNDI4IHwgICAgICAgICBlcnIgPSBjb25u ZWN0KHNrLCAoc3RydWN0IHNvY2thZGRyICopICZhZGRyLCBzaXplb2YoYWRkcikpOwogICAgICB8 ICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fgoyIHdhcm5pbmdzIGdlbmVyYXRlZC4KdG9vbHMvYXZ0ZXN0LmM6MjQzOjU6IHdh cm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFk U3RvcmVzXQogIDI0MyB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuID0gd3Jp dGUoc2ssIGJ1ZiwgMyk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBe ICAgICB+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzoyNTM6NTogd2FybmluZzogVmFs dWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAg MjUzIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVm LCA0KTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4gICAgIH5+fn5+ fn5+fn5+fn5+fn5+CnRvb2xzL2F2dGVzdC5jOjI2Mjo1OiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQg dG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0b3Jlc10KICAyNjIgfCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbiA9IHdyaXRlKHNrLCBidWYsIDMpOwogICAg ICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+ fn4KdG9vbHMvYXZ0ZXN0LmM6Mjc2OjU6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBp cyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDI3NiB8ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwKICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+CiAgMjc3IHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMyArIHNpemVvZihtZWRp YV90cmFuc3BvcnQpKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL2F2dGVzdC5j OjI4Mzo1OiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVh ZGNvZGUuRGVhZFN0b3Jlc10KICAyODMgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGxlbiA9IHdyaXRlKHNrLCBidWYsCiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBeICAgICB+fn5+fn5+fn5+fn5+fgogIDI4NCB8ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDEgKyBtZWRpYV90cmFuc3BvcnRfc2l6ZSk7CiAgICAg IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzoyOTA6NTogd2FybmluZzogVmFsdWUg c3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgMjkw IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVmLAog ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+ fn4KICAyOTEgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAxICsgbWVkaWFfdHJhbnNwb3J0X3NpemUpOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KdG9v bHMvYXZ0ZXN0LmM6Mjk3OjU6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZl ciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDI5NyB8ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwKICAgICAgfCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+CiAgMjk4IHwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiArIG1lZGlhX3RyYW5zcG9ydF9z aXplKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL2F2dGVzdC5jOjMwOTo1OiB3YXJu aW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0 b3Jlc10KICAzMDkgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbiA9IHdyaXRl KHNrLCBidWYsIDQpOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXiAg ICAgfn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0LmM6MzEzOjU6IHdhcm5pbmc6IFZhbHVl IHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDMx MyB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1Ziwg Mik7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeICAgICB+fn5+fn5+ fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzozMjI6NTogd2FybmluZzogVmFsdWUgc3RvcmVkIHRv ICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgMzIyIHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVmLCAzKTsKICAgICAg fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+fn5+ CnRvb2xzL2F2dGVzdC5jOjMyNjo1OiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMg bmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0b3Jlc10KICAzMjYgfCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGxlbiA9IHdyaXRlKHNrLCBidWYsIDIpOwogICAgICB8ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0 ZXN0LmM6MzM1OjU6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFk IFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDMzNSB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwgMyk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzozNDI6 NTogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2Rl LkRlYWRTdG9yZXNdCiAgMzQyIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4g PSB3cml0ZShzaywgYnVmLCAyKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL2F2dGVzdC5jOjM2NDo1OiB3YXJuaW5n OiBWYWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0b3Jl c10KICAzNjQgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbiA9IHdyaXRlKHNr LCBidWYsIDQpOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXiAgICAg fn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0LmM6MzY4OjU6IHdhcm5pbmc6IFZhbHVlIHN0 b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogIDM2OCB8 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwgMik7 CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+ fn5+fn5+fgp0b29scy9hdnRlc3QuYzozNzc6NTogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICds ZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgMzc3IHwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVmLCAzKTsKICAgICAgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4gICAgIH5+fn5+fn5+fn5+fn5+fn5+CnRv b2xzL2F2dGVzdC5jOjM4MTo1OiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2 ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0b3Jlc10KICAzODEgfCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGxlbiA9IHdyaXRlKHNrLCBidWYsIDIpOwogICAgICB8ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0 LmM6Mzk0OjU6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtk ZWFkY29kZS5EZWFkU3RvcmVzXQogIDM5NCB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwgNCk7CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzozOTg6NTog d2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRl YWRTdG9yZXNdCiAgMzk4IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSB3 cml0ZShzaywgYnVmLCAyKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IF4gICAgIH5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL2F2dGVzdC5jOjQwNTo0OiB3YXJuaW5nOiBW YWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0b3Jlc10K ICA0MDUgfCAgICAgICAgICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVmLCAyKTsK ICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+fn5+fn5+fgp0 b29scy9hdnRlc3QuYzo0MTU6NDogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdsZW4nIGlzIG5l dmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgNDE1IHwgICAgICAgICAgICAgICAgICAg ICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwgMik7CiAgICAgIHwgICAgICAgICAgICAgICAgICAg ICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0LmM6NTgwOjM6IHdhcm5p bmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtkZWFkY29kZS5EZWFkU3Rv cmVzXQogIDU4MCB8ICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVmLCAyKTsKICAg ICAgfCAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn4KdG9vbHMvYXZ0ZXN0 LmM6NTg4OjM6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnbGVuJyBpcyBuZXZlciByZWFkIFtk ZWFkY29kZS5EZWFkU3RvcmVzXQogIDU4OCB8ICAgICAgICAgICAgICAgICBsZW4gPSB3cml0ZShz aywgYnVmLCBpbnZhbGlkID8gMiA6IDMpOwogICAgICB8ICAgICAgICAgICAgICAgICBeICAgICB+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CnRvb2xzL2F2dGVzdC5jOjYwMjozOiB3YXJu aW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ2xlbicgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0 b3Jlc10KICA2MDIgfCAgICAgICAgICAgICAgICAgbGVuID0gd3JpdGUoc2ssIGJ1ZiwgNCArIG1l ZGlhX3RyYW5zcG9ydF9zaXplKTsKICAgICAgfCAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzo2MTU6Mzog d2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRl YWRTdG9yZXNdCiAgNjE1IHwgICAgICAgICAgICAgICAgIGxlbiA9IHdyaXRlKHNrLCBidWYsIDMp OwogICAgICB8ICAgICAgICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9h dnRlc3QuYzo2MjU6Mzogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJl YWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgNjI1IHwgICAgICAgICAgICAgICAgIGxlbiA9IHdy aXRlKHNrLCBidWYsIDMpOwogICAgICB8ICAgICAgICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+ fn5+fn5+fgp0b29scy9hdnRlc3QuYzo2Mzc6Mzogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICds ZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgNjM3IHwgICAgICAgICAg ICAgICAgIGxlbiA9IHdyaXRlKHNrLCBidWYsIDMpOwogICAgICB8ICAgICAgICAgICAgICAgICBe ICAgICB+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzo2NTI6Mzogd2FybmluZzogVmFs dWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAg NjUyIHwgICAgICAgICAgICAgICAgIGxlbiA9IHdyaXRlKHNrLCBidWYsIDMpOwogICAgICB8ICAg ICAgICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzo2NjQ6 Mzogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2Rl LkRlYWRTdG9yZXNdCiAgNjY0IHwgICAgICAgICAgICAgICAgIGxlbiA9IHdyaXRlKHNrLCBidWYs IDMpOwogICAgICB8ICAgICAgICAgICAgICAgICBeICAgICB+fn5+fn5+fn5+fn5+fn5+fgp0b29s cy9hdnRlc3QuYzo2NzM6Mzogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVy IHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgNjczIHwgICAgICAgICAgICAgICAgIGxlbiA9 IHdyaXRlKHNrLCBidWYsIDMpOwogICAgICB8ICAgICAgICAgICAgICAgICBeICAgICB+fn5+fn5+ fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzo2ODA6Mzogd2FybmluZzogVmFsdWUgc3RvcmVkIHRv ICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgNjgwIHwgICAgICAg ICAgICAgICAgIGxlbiA9IHdyaXRlKHNrLCBidWYsIDIpOwogICAgICB8ICAgICAgICAgICAgICAg ICBeICAgICB+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9hdnRlc3QuYzo3MTY6Mjogd2FybmluZzog VmFsdWUgc3RvcmVkIHRvICdsZW4nIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNd CiAgNzE2IHwgICAgICAgICBsZW4gPSB3cml0ZShzaywgYnVmLCBBVkNUUF9IRUFERVJfTEVOR1RI ICsgc2l6ZW9mKHBsYXlfcHJlc3NlZCkpOwogICAgICB8ICAgICAgICAgXiAgICAgfn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgozMiB3YXJu aW5ncyBnZW5lcmF0ZWQuCnRvb2xzL2NyZWF0ZS1pbWFnZS5jOjc2OjM6IHdhcm5pbmc6IFZhbHVl IHN0b3JlZCB0byAnZmQnIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAgIDc2 IHwgICAgICAgICAgICAgICAgIGZkID0gLTE7CiAgICAgIHwgICAgICAgICAgICAgICAgIF4gICAg fn4KdG9vbHMvY3JlYXRlLWltYWdlLmM6ODQ6Mzogd2FybmluZzogVmFsdWUgc3RvcmVkIHRvICdm ZCcgaXMgbmV2ZXIgcmVhZCBbZGVhZGNvZGUuRGVhZFN0b3Jlc10KICAgODQgfCAgICAgICAgICAg ICAgICAgZmQgPSAtMTsKICAgICAgfCAgICAgICAgICAgICAgICAgXiAgICB+fgp0b29scy9jcmVh dGUtaW1hZ2UuYzo5MjozOiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ2ZkJyBpcyBuZXZlciBy ZWFkIFtkZWFkY29kZS5EZWFkU3RvcmVzXQogICA5MiB8ICAgICAgICAgICAgICAgICBmZCA9IC0x OwogICAgICB8ICAgICAgICAgICAgICAgICBeICAgIH5+CnRvb2xzL2NyZWF0ZS1pbWFnZS5jOjEw NToyOiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQgdG8gJ2ZkJyBpcyBuZXZlciByZWFkIFtkZWFkY29k ZS5EZWFkU3RvcmVzXQogIDEwNSB8ICAgICAgICAgZmQgPSAtMTsKICAgICAgfCAgICAgICAgIF4g ICAgfn4KdG9vbHMvY3JlYXRlLWltYWdlLmM6MTA4OjI6IHdhcm5pbmc6IE51bGwgcG9pbnRlciBw YXNzZWQgdG8gMXN0IHBhcmFtZXRlciBleHBlY3RpbmcgJ25vbm51bGwnIFtjb3JlLk5vbk51bGxQ YXJhbUNoZWNrZXJdCiAgMTA4IHwgICAgICAgICBmcHJpbnRmKGZwLCBIRFJfRk1ULCBIRFJfTUFH SUMsIGlubywgbW9kZSwgMCwgMCwgMSwgMCwKICAgICAgfCAgICAgICAgIF5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogIDEwOSB8ICAgICAgICAg ICAgICAgICAodWludG1heF90KSBzdC5zdF9zaXplLCAwLCAwLCAwLCAwLCBuYW1lbGVuICsgMSwg MCwgbmFtZSk7CiAgICAgIHwgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp0b29scy9jcmVhdGUtaW1hZ2UuYzox ODg6Mjogd2FybmluZzogTnVsbCBwb2ludGVyIHBhc3NlZCB0byAxc3QgcGFyYW1ldGVyIGV4cGVj dGluZyAnbm9ubnVsbCcgW2NvcmUuTm9uTnVsbFBhcmFtQ2hlY2tlcl0KICAxODggfCAgICAgICAg IGZjbG9zZShmcCk7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+CjYgd2FybmluZ3MgZ2VuZXJh dGVkLgp0b29scy9idGdhdHQtY2xpZW50LmM6MTgyMjoyOiB3YXJuaW5nOiBWYWx1ZSBzdG9yZWQg dG8gJ2FyZ3YnIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAxODIyIHwgICAg ICAgICBhcmd2ICs9IG9wdGluZDsKICAgICAgfCAgICAgICAgIF4gICAgICAgfn5+fn5+CjEgd2Fy bmluZyBnZW5lcmF0ZWQuCnRvb2xzL2NoZWNrLXNlbGZ0ZXN0LmM6NDI6Mzogd2FybmluZzogVmFs dWUgc3RvcmVkIHRvICdwdHInIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRTdG9yZXNdCiAg IDQyIHwgICAgICAgICAgICAgICAgIHB0ciA9IGZnZXRzKHJlc3VsdCwgc2l6ZW9mKHJlc3VsdCks IGZwKTsKICAgICAgfCAgICAgICAgICAgICAgICAgXiAgICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+CjEgd2FybmluZyBnZW5lcmF0ZWQuCnRvb2xzL2J0Z2F0dC1zZXJ2ZXIuYzox MjA0OjI6IHdhcm5pbmc6IFZhbHVlIHN0b3JlZCB0byAnYXJndicgaXMgbmV2ZXIgcmVhZCBbZGVh ZGNvZGUuRGVhZFN0b3Jlc10KIDEyMDQgfCAgICAgICAgIGFyZ3YgLT0gb3B0aW5kOwogICAgICB8 ICAgICAgICAgXiAgICAgICB+fn5+fn4KMSB3YXJuaW5nIGdlbmVyYXRlZC4KdG9vbHMvZ2F0dC1z ZXJ2aWNlLmM6Mjk0OjI6IHdhcm5pbmc6IDJuZCBmdW5jdGlvbiBjYWxsIGFyZ3VtZW50IGlzIGFu IHVuaW5pdGlhbGl6ZWQgdmFsdWUgW2NvcmUuQ2FsbEFuZE1lc3NhZ2VdCiAgMjk0IHwgICAgICAg ICBjaHJfd3JpdGUoY2hyLCB2YWx1ZSwgbGVuKTsKICAgICAgfCAgICAgICAgIF5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+CjEgd2FybmluZyBnZW5lcmF0ZWQuCkluIGZpbGUgaW5jbHVkZWQgZnJv bSB0b29scy9vYmV4LXNlcnZlci10b29sLmM6MTc6CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAvdXNy L2luY2x1ZGUvZmNudGwuaDozNDI6Ci91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251L2JpdHMv ZmNudGwyLmg6NzY6MTA6IHdhcm5pbmc6IE51bGwgcG9pbnRlciBwYXNzZWQgdG8gMXN0IHBhcmFt ZXRlciBleHBlY3RpbmcgJ25vbm51bGwnIFtjb3JlLk5vbk51bGxQYXJhbUNoZWNrZXJdCiAgIDc2 IHwgICByZXR1cm4gX19vcGVuX2FsaWFzIChfX3BhdGgsIF9fb2ZsYWcsIF9fbW9kZSk7CiAgICAg IHwgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KMSB3YXJu aW5nIGdlbmVyYXRlZC4KY2xpZW50L2J0cGNsaWVudC9idHBjbGllbnRjdGwuYzo0MDI6Mzogd2Fy bmluZzogVmFsdWUgc3RvcmVkIHRvICdiaXQnIGlzIG5ldmVyIHJlYWQgW2RlYWRjb2RlLkRlYWRT dG9yZXNdCiAgNDAyIHwgICAgICAgICAgICAgICAgIGJpdCA9IDA7CiAgICAgIHwgICAgICAgICAg ICAgICAgIF4gICAgIH4KY2xpZW50L2J0cGNsaWVudC9idHBjbGllbnRjdGwuYzoxNjU1OjI6IHdh cm5pbmc6IE51bGwgcG9pbnRlciBwYXNzZWQgdG8gMm5kIHBhcmFtZXRlciBleHBlY3RpbmcgJ25v bm51bGwnIFtjb3JlLk5vbk51bGxQYXJhbUNoZWNrZXJdCiAxNjU1IHwgICAgICAgICBtZW1jcHko Y3AtPmRhdGEsIGFkX2RhdGEsIGFkX2xlbik7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn4KMiB3YXJuaW5ncyBnZW5lcmF0ZWQuCnNyYy9zZHAtY2xpZW50 LmM6MzUzOjE0OiB3YXJuaW5nOiBBY2Nlc3MgdG8gZmllbGQgJ2NiJyByZXN1bHRzIGluIGEgZGVy ZWZlcmVuY2Ugb2YgYSBudWxsIHBvaW50ZXIgW2NvcmUuTnVsbERlcmVmZXJlbmNlXQogIDM1MyB8 ICAgICAgICAgKCpjdHh0KS0+Y2IgPSBjYjsKICAgICAgfCAgICAgICAgIH5+fn5+fn5+fn5+fl5+ fn4KMSB3YXJuaW5nIGdlbmVyYXRlZC4Kc3JjL3NkcGQtcmVxdWVzdC5jOjIwOToxMzogd2Fybmlu ZzogUmVzdWx0IG9mICdtYWxsb2MnIGlzIGNvbnZlcnRlZCB0byBhIHBvaW50ZXIgb2YgdHlwZSAn Y2hhcicsIHdoaWNoIGlzIGluY29tcGF0aWJsZSB3aXRoIHNpemVvZiBvcGVyYW5kIHR5cGUgJ3Vp bnQxNl90JyBbdW5peC5NYWxsb2NTaXplb2ZdCiAgMjA5IHwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBwRWxlbSA9IG1hbGxvYyhzaXplb2YodWludDE2X3QpKTsKICAgICAgfCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn5+fn5+IH5+fn5+fn5+fn5+fn5+ fn4Kc3JjL3NkcGQtcmVxdWVzdC5jOjIzNzoxMzogd2FybmluZzogUmVzdWx0IG9mICdtYWxsb2Mn IGlzIGNvbnZlcnRlZCB0byBhIHBvaW50ZXIgb2YgdHlwZSAnY2hhcicsIHdoaWNoIGlzIGluY29t cGF0aWJsZSB3aXRoIHNpemVvZiBvcGVyYW5kIHR5cGUgJ3VpbnQzMl90JyBbdW5peC5NYWxsb2NT aXplb2ZdCiAgMjM3IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwRWxlbSA9IG1h bGxvYyhzaXplb2YodWludDMyX3QpKTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXn5+fn5+IH5+fn5+fn5+fn5+fn5+fn4KMiB3YXJuaW5ncyBnZW5lcmF0 ZWQuCnNyYy9nYXR0LWNsaWVudC5jOjE1NzI6Mjogd2FybmluZzogVXNlIG9mIG1lbW9yeSBhZnRl ciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAxNTcyIHwgICAgICAgICBub3RpZnlfY2xpZW50 X3VucmVmKGNsaWVudCk7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn4KMSB3YXJuaW5nIGdlbmVyYXRlZC4Kc3JjL3NkcC14bWwuYzoxMjk6MTA6IHdhcm5pbmc6IEFz c2lnbmVkIHZhbHVlIGlzIHVuaW5pdGlhbGl6ZWQgW2NvcmUudW5pbml0aWFsaXplZC5Bc3NpZ25d CiAgMTI5IHwgICAgICAgICAgICAgICAgIGJ1ZlsxXSA9IGRhdGFbaSArIDFdOwogICAgICB8ICAg ICAgICAgICAgICAgICAgICAgICAgXiB+fn5+fn5+fn5+fgpzcmMvc2RwLXhtbC5jOjMwOToxMTog d2FybmluZzogQXNzaWduZWQgdmFsdWUgaXMgdW5pbml0aWFsaXplZCBbY29yZS51bmluaXRpYWxp emVkLkFzc2lnbl0KICAzMDkgfCAgICAgICAgICAgICAgICAgICAgICAgICBidWZbMV0gPSBkYXRh W2kgKyAxXTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXiB+fn5+fn5+ fn5+fgpzcmMvc2RwLXhtbC5jOjM0NzoxMTogd2FybmluZzogQXNzaWduZWQgdmFsdWUgaXMgdW5p bml0aWFsaXplZCBbY29yZS51bmluaXRpYWxpemVkLkFzc2lnbl0KICAzNDcgfCAgICAgICAgICAg ICAgICAgICAgICAgICBidWZbMV0gPSBkYXRhW2kgKyAxXTsKICAgICAgfCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXiB+fn5+fn5+fn5+fgozIHdhcm5pbmdzIGdlbmVyYXRlZC4KdW5p dC9hdnJjcC1saWIuYzoxOTY4OjM6IHdhcm5pbmc6IDFzdCBmdW5jdGlvbiBjYWxsIGFyZ3VtZW50 IGlzIGFuIHVuaW5pdGlhbGl6ZWQgdmFsdWUgW2NvcmUuQ2FsbEFuZE1lc3NhZ2VdCiAxOTY4IHwg ICAgICAgICAgICAgICAgIGdfZnJlZSh0ZXh0W2ldKTsKICAgICAgfCAgICAgICAgICAgICAgICAg Xn5+fn5+fn5+fn5+fn5+CnVuaXQvYXZyY3AtbGliLmM6MzUxMDo0OiB3YXJuaW5nOiBBZGRyZXNz IG9mIHN0YWNrIG1lbW9yeSBhc3NvY2lhdGVkIHdpdGggbG9jYWwgdmFyaWFibGUgJ3ZhbCcgaXMg c3RpbGwgcmVmZXJyZWQgdG8gYnkgdGhlIGNhbGxlciB2YXJpYWJsZSAnaW92JyB1cG9uIHJldHVy bmluZyB0byB0aGUgY2FsbGVyLiAgVGhpcyB3aWxsIGJlIGEgZGFuZ2xpbmcgcmVmZXJlbmNlIFtj b3JlLlN0YWNrQWRkcmVzc0VzY2FwZV0KIDM1MDMgfCAgICAgICAgIHN0cnVjdCBtZWRpYV9pdGVt IHZhbFtBVlJDUF9NRURJQV9BVFRSSUJVVEVfTEFTVF07CiAgICAgIHwgICAgICAgICB+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAzNTA0IHwgCiAzNTA1 IHwgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbnVtYmVyOyBpKyspIHsKIDM1MDYgfCAgICAgICAg ICAgICAgICAgdWludDE2X3QgbGVuID0gMDsKIDM1MDcgfCAKIDM1MDggfCAgICAgICAgICAgICAg ICAgaWYgKGF0dHJzW2ldID4gQVZSQ1BfTUVESUFfQVRUUklCVVRFX0xBU1QgfHwKIDM1MDkgfCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzW2ldID09IEFWUkNQX01FRElBX0FU VFJJQlVURV9JTExFR0FMKQogMzUxMCB8ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBm YWxzZTsKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn4KdW5pdC9h dnJjcC1saWIuYzozNTI2OjI6IHdhcm5pbmc6IEFkZHJlc3Mgb2Ygc3RhY2sgbWVtb3J5IGFzc29j aWF0ZWQgd2l0aCBsb2NhbCB2YXJpYWJsZSAndmFsJyBpcyBzdGlsbCByZWZlcnJlZCB0byBieSB0 aGUgY2FsbGVyIHZhcmlhYmxlICdpb3YnIHVwb24gcmV0dXJuaW5nIHRvIHRoZSBjYWxsZXIuICBU aGlzIHdpbGwgYmUgYSBkYW5nbGluZyByZWZlcmVuY2UgW2NvcmUuU3RhY2tBZGRyZXNzRXNjYXBl XQogMzUwMyB8ICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIHwgICAgICAgICBefn5+fn5+fn5+ fgozIHdhcm5pbmdzIGdlbmVyYXRlZC4KdW5pdC9hdmR0cC5jOjc1NjoyNTogd2FybmluZzogVXNl IG9mIG1lbW9yeSBhZnRlciBpdCBpcyBmcmVlZCBbdW5peC5NYWxsb2NdCiAgNzU2IHwgICAgICAg ICAgICAgICAgIHNlc3Npb24tPnByaW9fcXVldWUgPSBnX3NsaXN0X3JlbW92ZShzZXNzaW9uLT5w cmlvX3F1ZXVlLCByZXEpOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgp1bml0L2F2ZHRw LmM6NzYzOjI0OiB3YXJuaW5nOiBVc2Ugb2YgbWVtb3J5IGFmdGVyIGl0IGlzIGZyZWVkIFt1bml4 Lk1hbGxvY10KICA3NjMgfCAgICAgICAgICAgICAgICAgc2Vzc2lvbi0+cmVxX3F1ZXVlID0gZ19z bGlzdF9yZW1vdmUoc2Vzc2lvbi0+cmVxX3F1ZXVlLCByZXEpOwogICAgICB8ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn4KMiB3YXJuaW5ncyBnZW5lcmF0ZWQuCnVuaXQvdGVzdC11dGlsLmM6MzM6ODogd2Fy bmluZzogUG90ZW50aWFsIGxlYWsgb2YgbWVtb3J5IHBvaW50ZWQgdG8gYnkgJ3AxJyBbdW5peC5N YWxsb2NdCiAgIDMzIHwgICAgICAgICBwMlswXSA9IDE7CiAgICAgIHwgICAgICAgICB+fn5+fn5e fn4KdW5pdC90ZXN0LXV0aWwuYzozNjozOiB3YXJuaW5nOiBQb3RlbnRpYWwgbGVhayBvZiBtZW1v cnkgcG9pbnRlZCB0byBieSAncDInIFt1bml4Lk1hbGxvY10KICAgMzYgfCAgICAgICAgICAgICAg ICAgX2NsZWFudXBfZnJlZV8gdWludDhfdCAqZGF0YSA9IE5VTEw7CiAgICAgIHwgICAgICAgICAg ICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLi9zcmMvc2hhcmVkL3V0aWwuaDox MzQ6MjQ6IG5vdGU6IGV4cGFuZGVkIGZyb20gbWFjcm8gJ19jbGVhbnVwX2ZyZWVfJwogIDEzNCB8 ICNkZWZpbmUgX2NsZWFudXBfZnJlZV8gX2NsZWFudXBfKGZyZWVwKQogICAgICB8ICAgICAgICAg ICAgICAgICAgICAgICAgXgouL3NyYy9zaGFyZWQvdXRpbC5oOjEzMjoyMjogbm90ZTogZXhwYW5k ZWQgZnJvbSBtYWNybyAnX2NsZWFudXBfJwogIDEzMiB8ICNkZWZpbmUgX2NsZWFudXBfKGYpIF9f YXR0cmlidXRlX18oKGNsZWFudXAoZikpKQogICAgICB8ICAgICAgICAgICAgICAgICAgICAgIF4K dW5pdC90ZXN0LXV0aWwuYzo0MjozOiB3YXJuaW5nOiBQb3RlbnRpYWwgbGVhayBvZiBtZW1vcnkg cG9pbnRlZCB0byBieSAnZGF0YScgW3VuaXguTWFsbG9jXQogICA0MiB8ICAgICAgICAgICAgICAg ICBhc3NlcnQoaXNfbnVsbF90b28gPT0gTlVMTCk7CiAgICAgIHwgICAgICAgICAgICAgICAgIF5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgovdXNyL2luY2x1ZGUvYXNzZXJ0Lmg6MTcwOjExOiBu b3RlOiBleHBhbmRlZCBmcm9tIG1hY3JvICdhc3NlcnQnCiAgMTcwIHwgICAoKHZvaWQpIHNpemVv ZiAoKGV4cHIpID8gMSA6IDApLCBfX2V4dGVuc2lvbl9fICh7ICAgICAgICAgICAgICAgICAgICAg XAogICAgICB8ICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fgozIHdhcm5pbmdzIGdl bmVyYXRlZC4KdW5pdC90ZXN0LWJhcC5jOiBJbiBmdW5jdGlvbiDigJh0ZXN0X3NldHVwX3NlcnZl cuKAmToKdW5pdC90ZXN0LWJhcC5jOjc1Njo1ODogZXJyb3I6IHBhc3NpbmcgYXJndW1lbnQgNCBv ZiDigJhnYXR0X2RiX2NjY19yZWdpc3RlcuKAmSBmcm9tIGluY29tcGF0aWJsZSBwb2ludGVyIHR5 cGUgWy1XaW5jb21wYXRpYmxlLXBvaW50ZXItdHlwZXNdCiAgNzU2IHwgICAgICAgICBnYXR0X2Ri X2NjY19yZWdpc3RlcihkYiwgZ2F0dF9jY2NfcmVhZF9jYiwgTlVMTCwgZ2F0dF9ub3RpZnlfY2Is IGRhdGEpOwogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+CiAgICAgIHwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAogICAgICB8ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvaWQgKCop KHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0ZSAqLCBzdHJ1Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUgKiwg Y29uc3QgdWludDhfdCAqLCBzaXplX3QsICBzdHJ1Y3QgYnRfYXR0ICosIHZvaWQgKikge2FrYSB2 b2lkICgqKShzdHJ1Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUgKiwgc3RydWN0IGdhdHRfZGJfYXR0cmli dXRlICosIGNvbnN0IHVuc2lnbmVkIGNoYXIgKiwgbG9uZyB1bnNpZ25lZCBpbnQsICBzdHJ1Y3Qg YnRfYXR0ICosIHZvaWQgKil9CkluIGZpbGUgaW5jbHVkZWQgZnJvbSB1bml0L3Rlc3QtYmFwLmM6 Mzg6Ci4vc3JjL3NoYXJlZC9nYXR0LWRiLmg6MjEzOjU4OiBub3RlOiBleHBlY3RlZCDigJhnYXR0 X2RiX25vdGlmeV904oCZIHtha2Eg4oCYdm9pZCAoKikoc3RydWN0IGdhdHRfZGJfYXR0cmlidXRl ICosIHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0ZSAqLCBjb25zdCB1bnNpZ25lZCBjaGFyICosIGxv bmcgdW5zaWduZWQgaW50LCAgdW5zaWduZWQgY2hhciwgIHN0cnVjdCBidF9hdHQgKiwgdm9pZCAq KeKAmX0gYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYdm9pZCAoKikoc3RydWN0IGdhdHRfZGJf YXR0cmlidXRlICosIHN0cnVjdCBnYXR0X2RiX2F0dHJpYnV0ZSAqLCBjb25zdCB1aW50OF90ICos IHNpemVfdCwgIHN0cnVjdCBidF9hdHQgKiwgdm9pZCAqKeKAmSB7YWthIOKAmHZvaWQgKCopKHN0 cnVjdCBnYXR0X2RiX2F0dHJpYnV0ZSAqLCBzdHJ1Y3QgZ2F0dF9kYl9hdHRyaWJ1dGUgKiwgY29u c3QgdW5zaWduZWQgY2hhciAqLCBsb25nIHVuc2lnbmVkIGludCwgIHN0cnVjdCBidF9hdHQgKiwg dm9pZCAqKeKAmX0KICAyMTMgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgZ2F0dF9kYl9ub3RpZnlfdCBub3RpZnlfZnVuYywKICAgICAgfCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfn5+fn5+fn5+fn5+fn5+fn5efn5+fn5+fn5+fgp1bml0 L3Rlc3QtYmFwLmM6NjM3OjEzOiBub3RlOiDigJhnYXR0X25vdGlmeV9jYuKAmSBkZWNsYXJlZCBo ZXJlCiAgNjM3IHwgc3RhdGljIHZvaWQgZ2F0dF9ub3RpZnlfY2Ioc3RydWN0IGdhdHRfZGJfYXR0 cmlidXRlICphdHRyaWIsCiAgICAgIHwgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn4KLi9zcmMv c2hhcmVkL2dhdHQtZGIuaDo1MToxNjogbm90ZTog4oCYZ2F0dF9kYl9ub3RpZnlfdOKAmSBkZWNs YXJlZCBoZXJlCiAgIDUxIHwgdHlwZWRlZiB2b2lkICgqZ2F0dF9kYl9ub3RpZnlfdCkgKHN0cnVj dCBnYXR0X2RiX2F0dHJpYnV0ZSAqYXR0cmliLAogICAgICB8ICAgICAgICAgICAgICAgIF5+fn5+ fn5+fn5+fn5+fn4KbWFrZVsxXTogKioqIFtNYWtlZmlsZTo3MTMwOiB1bml0L3Rlc3QtYmFwLm9d IEVycm9yIDEKbWFrZVsxXTogKioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KbWFr ZTogKioqIFtNYWtlZmlsZTo0MjQ2OiBhbGxdIEVycm9yIDIKCgpodHRwczovL2dpdGh1Yi5jb20v Ymx1ZXovYmx1ZXovcHVsbC8yNjQzCgotLS0KUmVnYXJkcywKTGludXggQmx1ZXRvb3RoCgo= --===============7569973399538826349==--