Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp3055864imu; Wed, 7 Nov 2018 04:24:27 -0800 (PST) X-Google-Smtp-Source: AJdET5d2KqqhrS46UiYYjs439BAE8BlsXFWF18ycFqwqMrF3sWVff8p2Ib00RTW0yLxe40WwzDsQ X-Received: by 2002:a63:ed09:: with SMTP id d9-v6mr1321587pgi.305.1541593467038; Wed, 07 Nov 2018 04:24:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1541593466; cv=none; d=google.com; s=arc-20160816; b=SzX5x6MmOLjWk+0vvr2BBmu2hBct27kOY/2F6/EZ8D4FDc6B/XR1r0yFF9FkQk80u+ RF1mfF8PG1mcEx4xFGywxvFzZNjcwIZk7m8ZIqwVgAB+lcqgobbAORFkerwJfHPe3Thf Dfog9dysSiJ0XNranTGrNKbDEo9nrPCMlBlVWksnnkHbDlj9rWCX3jiGH7SMNIlHiWql d5M4nXn53j93s+WuJFhlIhdqELF4G86nxnphoRgHfU8zstrQwCmp39gFCA9tCFv0e9eY Kyl/lvFet7i52jJ5kX7JdwEIYjQFYyUx2BXdih0lZkZkdgWjqBQB7SFmwX7QejE0Jyxy 61Bw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-language:mime-version:user-agent :date:message-id:to:subject:from:dkim-signature; bh=TJt3nTHsRIC5M3xAjz7dfJw0OIGgJxRCzo6+3i6Hnwo=; b=sl9+KECtyyAuR6hIWKo+zC9ILArMy6jGF/FEGDhcD2GJYtyepCjShOTCzVXp2eyHMz hoK5q0hUN7BhPuoBnJMx869pb0WzuxjgZu/kcb7RP1/7cTXcO7AYNON1IkbY1sVUe5Eu aA2itsv/J5/WXDCIgc6xlzK34RBnaGPNRXZBAJYomvoQW2p74TLrsU/QQ6zoZ9nUm+xI xqmg4pyNYu9/VfPnoeMRFVOCDcCS5HOtZEv9xLaKGC3mKqzSFaq3im/wyo0cjqH/mG7C iaUF0mEcPXD75tpwUxZFeKRDndNIWOEnIob9z+6/WpZJzr9i8sAEW7ZKkYIdDxpdutkb TcxA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=tELfO8QH; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b11-v6si506503plk.406.2018.11.07.04.24.11; Wed, 07 Nov 2018 04:24:26 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=tELfO8QH; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730927AbeKGVxs (ORCPT + 99 others); Wed, 7 Nov 2018 16:53:48 -0500 Received: from mail-ed1-f46.google.com ([209.85.208.46]:33929 "EHLO mail-ed1-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726248AbeKGVxs (ORCPT ); Wed, 7 Nov 2018 16:53:48 -0500 Received: by mail-ed1-f46.google.com with SMTP id w19-v6so13268776eds.1 for ; Wed, 07 Nov 2018 04:23:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:subject:to:message-id:date:user-agent:mime-version :content-language; bh=TJt3nTHsRIC5M3xAjz7dfJw0OIGgJxRCzo6+3i6Hnwo=; b=tELfO8QHeIv2b661gKYk1sciUDiMMru1lrqOwrgjzr96xehiRL+CtY6xWPq//Zt5jY j1iRQqtX/qGihum6lDMJdLyfGL0lIoynV/vZQmgXF8dBQczaTeavD24+NqNbRAXOlfxe Wehoa7+4OGtFIt/tiXJQibGINE0kBGy5B77xYQdH3tVhKMQ41pSliBYOmQ/a6rT3Yx7G bvre76GeDQRYG45TeVGIlb2Gl0sXD8wWfufg2lM/FSjttyb9UMAoy70ZQxHCHSfLLhMI 7IaTZHGygrgb5sBMFnJmeUNLecKUb3yjmDNLiACueUZEYTgOho+366O8maJC97zcS6oa px3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:subject:to:message-id:date:user-agent :mime-version:content-language; bh=TJt3nTHsRIC5M3xAjz7dfJw0OIGgJxRCzo6+3i6Hnwo=; b=jaU8hxsQ5reVIPOYjTEUJf9NHkOZUe7PZ36vHt7B2a0JQGOcARFbhUkzGmHF/6iqrz Px3glfE1CrosQEX45jzbA/MFtSUpVTGMrZaPPlI+h7EIVYPpQN/as2w5rXUirQCPofPF Pfjy+4ZhD3Uvc+WZVWMbDU5EGPq660Z/0t3XHHmuVxqrDmueXbixSx+ewa2KLUp+cpCL SVh767WeLqgjEbcxDv1MZqevPMw3guXVlMlwbfW18brk/incwABUH3oJahVoX+WH7NUi 31LeEzmu3SPD50nxrmDgDFX2RdjkoEJd2a7dZKWqV5jdLkGaLINowZv1fQvUQFFemT+x Mkmg== X-Gm-Message-State: AGRZ1gITMn7HdPLR1XM6pS7lJcHL2bgbko8PVBNXx1fmSdrAhqKX9K5F GaAcUvPZ8OP2ZGrWngeKVWJCyOop X-Received: by 2002:a50:9665:: with SMTP id y92-v6mr14436eda.122.1541593413046; Wed, 07 Nov 2018 04:23:33 -0800 (PST) Received: from oc0436844531.ibm.com (gbibp9ph1--blueice1n4.emea.ibm.com. [195.212.29.70]) by smtp.gmail.com with ESMTPSA id f11-v6sm217100eds.23.2018.11.07.04.23.31 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Nov 2018 04:23:31 -0800 (PST) From: Chris Ward Subject: Kernel build warnings To: linux-kernel@vger.kernel.org Message-ID: <79e1f09a-539d-cb26-e40c-41f8b0c2e7b3@gmail.com> Date: Wed, 7 Nov 2018 12:23:31 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.3.0 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------8B19A8388711CFBAB3842726" Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is a multi-part message in MIME format. --------------8B19A8388711CFBAB3842726 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit I recently had reason to build the Linux kernel (debugging a problem on OpenSuSE Tumbleweed), and I got a number of warnings. They are all about 'strncpy' buffers being possibly 1 byte too short to hold the trailing NUL in a string. I have sent a log of the warnings attached to this email; the first warning is here as a sample.   CC      kernel/debug/kdb/kdb_io.o kernel/debug/kdb/kdb_io.c: In function ‘kdb_getstr’: kernel/debug/kdb/kdb_io.c:446:3: warning: ‘strncpy’ specified bound 256 equals destination size [-Wstringop-truncation]    strncpy(kdb_prompt_str, prompt, CMD_BUFLEN);    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Should the kernel be revised to eliminate these warnings ? -- Chris Ward --------------8B19A8388711CFBAB3842726 Content-Type: text/plain; charset=UTF-8; name="bugreport.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="bugreport.txt" ICBDQyAgICAgIGtlcm5lbC9kZWJ1Zy9rZGIva2RiX2lvLm8Ka2VybmVsL2RlYnVnL2tkYi9r ZGJfaW8uYzogSW4gZnVuY3Rpb24g4oCYa2RiX2dldHN0cuKAmToKa2VybmVsL2RlYnVnL2tk Yi9rZGJfaW8uYzo0NDY6Mzogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91 bmQgMjU2IGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRpb25d CiAgIHN0cm5jcHkoa2RiX3Byb21wdF9zdHIsIHByb21wdCwgQ01EX0JVRkxFTik7CiAgIF5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICBDQyAgICAgIGtl cm5lbC9kZWJ1Zy9rZGIva2RiX21haW4ubwpJbiBmdW5jdGlvbiDigJhoYW5kbGVfY3RybF9j bWTigJksCiAgICBpbmxpbmVkIGZyb20g4oCYa2RiX2xvY2FsLmlzcmEuNuKAmSBhdCBrZXJu ZWwvZGVidWcva2RiL2tkYl9tYWluLmM6MTMyMzoxMCwKICAgIGlubGluZWQgZnJvbSDigJhr ZGJfbWFpbl9sb29w4oCZIGF0IGtlcm5lbC9kZWJ1Zy9rZGIva2RiX21haW4uYzoxNDIyOjEy OgprZXJuZWwvZGVidWcva2RiL2tkYl9tYWluLmM6MTEwNjozOiB3YXJuaW5nOiDigJhzdHJu Y3B54oCZIHNwZWNpZmllZCBib3VuZCAyMDAgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1X c3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgc3RybmNweShjbWRfY3VyLCBjbWRfaGlzdFtjbWRw dHJdLCBDTURfQlVGTEVOKTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fgprZXJuZWwvZGVidWcva2RiL2tkYl9tYWluLmM6MTExMTozOiB3YXJu aW5nOiDigJhzdHJuY3B54oCZIHNwZWNpZmllZCBib3VuZCAyMDAgZXF1YWxzIGRlc3RpbmF0 aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgc3RybmNweShjbWRfY3VyLCBj bWRfaGlzdFtjbWRwdHJdLCBDTURfQlVGTEVOKTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogIENDICAgICAga2VybmVsL2RlYnVnL2tkYi9r ZGJfc3VwcG9ydC5vCmtlcm5lbC9kZWJ1Zy9rZGIva2RiX3N1cHBvcnQuYzogSW4gZnVuY3Rp b24g4oCYa2FsbHN5bXNfc3ltYm9sX25leHTigJk6Cmtlcm5lbC9kZWJ1Zy9rZGIva2RiX3N1 cHBvcnQuYzoyMzk6NDogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91bmQg ZGVwZW5kcyBvbiB0aGUgbGVuZ3RoIG9mIHRoZSBzb3VyY2UgYXJndW1lbnQgWy1Xc3RyaW5n b3Atb3ZlcmZsb3c9XQogICAgc3RybmNweShwcmVmaXhfbmFtZSwgbmFtZSwgc3RybGVuKG5h bWUpKzEpOwogICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ Cmtlcm5lbC9kZWJ1Zy9rZGIva2RiX3N1cHBvcnQuYzoyMzk6MzE6IG5vdGU6IGxlbmd0aCBj b21wdXRlZCBoZXJlCiAgICBzdHJuY3B5KHByZWZpeF9uYW1lLCBuYW1lLCBzdHJsZW4obmFt ZSkrMSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn4KICBD QyBbTV0gIGZzL2NlcGgvbWRzX2NsaWVudC5vCmZzL2NlcGgvbWRzX2NsaWVudC5jOiBJbiBm dW5jdGlvbiDigJhjZXBoX21kc2NfaW5pdOKAmToKZnMvY2VwaC9tZHNfY2xpZW50LmM6MzY0 NzoyOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCBtYXkgYmUgdHJ1bmNhdGVkIGNv cHlpbmcgNjQgYnl0ZXMgZnJvbSBhIHN0cmluZyBvZiBsZW5ndGggNjQgWy1Xc3RyaW5nb3At dHJ1bmNhdGlvbl0KICBzdHJuY3B5KG1kc2MtPm5vZGVuYW1lLCB1dHNuYW1lKCktPm5vZGVu YW1lLAogIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAg IHNpemVvZihtZHNjLT5ub2RlbmFtZSkgLSAxKTsKICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+CiAgQ0MgW01dICBmcy9jaWZzL2NpZnNlbmNyeXB0Lm8KZnMvY2lmcy9jaWZzZW5j cnlwdC5jOiBJbiBmdW5jdGlvbiDigJhjYWxjX2xhbm1hbl9oYXNo4oCZOgpmcy9jaWZzL2Np ZnNlbmNyeXB0LmM6MzA2OjM6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVkIGJv dW5kIDE2IGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRpb25d CiAgIHN0cm5jcHkocGFzc3dvcmRfd2l0aF9wYWQsIHBhc3N3b3JkLCBDSUZTX0VOQ1BXRF9T SVpFKTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+CiAgQ0MgW01dICBmcy9jb25maWdmcy9zeW1saW5rLm8KSW4gZnVuY3Rpb24g 4oCYZmlsbF9pdGVtX3BhdGjigJksCiAgICBpbmxpbmVkIGZyb20g4oCYY29uZmlnZnNfZ2V0 X3RhcmdldF9wYXRo4oCZIGF0IGZzL2NvbmZpZ2ZzL3N5bWxpbmsuYzoyNTA6MiwKICAgIGlu bGluZWQgZnJvbSDigJhjb25maWdmc19nZXRsaW5r4oCZIGF0IGZzL2NvbmZpZ2ZzL3N5bWxp bmsuYzoyNzI6MTAsCiAgICBpbmxpbmVkIGZyb20g4oCYY29uZmlnZnNfZ2V0X2xpbmsucGFy dC454oCZIGF0IGZzL2NvbmZpZ2ZzL3N5bWxpbmsuYzoyOTU6MTAsCiAgICBpbmxpbmVkIGZy b20g4oCYY29uZmlnZnNfZ2V0X2xpbmvigJk6CmZzL2NvbmZpZ2ZzL3N5bWxpbmsuYzo2Nzoz OiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCB0cnVuY2F0ZWQgYmVmb3JlIHRlcm1p bmF0aW5nIG51bCBjb3B5aW5nIGFzIG1hbnkgYnl0ZXMgZnJvbSBhIHN0cmluZyBhcyBpdHMg bGVuZ3RoIFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAgIHN0cm5jcHkoYnVmZmVyICsgbGVu Z3RoLGNvbmZpZ19pdGVtX25hbWUocCksY3VyKTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmZzL2NvbmZpZ2ZzL3N5bWxpbmsuYzogSW4g ZnVuY3Rpb24g4oCYY29uZmlnZnNfZ2V0X2xpbmvigJk6CmZzL2NvbmZpZ2ZzL3N5bWxpbmsu Yzo2MzoxMzogbm90ZTogbGVuZ3RoIGNvbXB1dGVkIGhlcmUKICAgaW50IGN1ciA9IHN0cmxl bihjb25maWdfaXRlbV9uYW1lKHApKTsKICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fgogIENDICAgICAgZnMvZXh0NC9zdXBlci5vCmZzL2V4dDQvc3VwZXIuYzog SW4gZnVuY3Rpb24g4oCYX19zYXZlX2Vycm9yX2luZm/igJk6CmZzL2V4dDQvc3VwZXIuYzoz MjY6Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91bmQgMzIgZXF1YWxz IGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBzdHJuY3B5KGVz LT5zX2xhc3RfZXJyb3JfZnVuYywgZnVuYywgc2l6ZW9mKGVzLT5zX2xhc3RfZXJyb3JfZnVu YykpOwogIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn4KZnMvZXh0NC9zdXBlci5jOjMzMDozOiB3YXJuaW5nOiDi gJhzdHJuY3B54oCZIHNwZWNpZmllZCBib3VuZCAzMiBlcXVhbHMgZGVzdGluYXRpb24gc2l6 ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJuY3B5KGVzLT5zX2ZpcnN0X2Vycm9y X2Z1bmMsIGZ1bmMsCiAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4K ICAgIHNpemVvZihlcy0+c19maXJzdF9lcnJvcl9mdW5jKSk7CiAgICB+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+CiAgQ0MgW01dICBmcy9mMmZzL25hbWVpLm8KZnMvZjJmcy9u YW1laS5jOiBJbiBmdW5jdGlvbiDigJhmMmZzX3VwZGF0ZV9leHRlbnNpb25fbGlzdOKAmToK ZnMvZjJmcy9uYW1laS5jOjI1NzozOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCB0 cnVuY2F0ZWQgYmVmb3JlIHRlcm1pbmF0aW5nIG51bCBjb3B5aW5nIGFzIG1hbnkgYnl0ZXMg ZnJvbSBhIHN0cmluZyBhcyBpdHMgbGVuZ3RoIFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAg IHN0cm5jcHkoZXh0bGlzdFtjb2xkX2NvdW50XSwgbmFtZSwgc3RybGVuKG5hbWUpKTsKICAg Xn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmZzL2Yy ZnMvbmFtZWkuYzoyNDk6Mzogd2FybmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgdHJ1bmNh dGVkIGJlZm9yZSB0ZXJtaW5hdGluZyBudWwgY29weWluZyBhcyBtYW55IGJ5dGVzIGZyb20g YSBzdHJpbmcgYXMgaXRzIGxlbmd0aCBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJu Y3B5KGV4dGxpc3RbY291bnRdLCBuYW1lLCBzdHJsZW4obmFtZSkpOwogICBefn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgQ0MgW01dICBmcy9oZnNwbHVz L3hhdHRyLm8KZnMvaGZzcGx1cy94YXR0ci5jOiBJbiBmdW5jdGlvbiDigJhjb3B5X25hbWXi gJk6CmZzL2hmc3BsdXMveGF0dHIuYzo0MTY6Mzogd2FybmluZzog4oCYc3RybmNweeKAmSBv dXRwdXQgdHJ1bmNhdGVkIGJlZm9yZSB0ZXJtaW5hdGluZyBudWwgY29weWluZyA0IGJ5dGVz IGZyb20gYSBzdHJpbmcgb2YgdGhlIHNhbWUgbGVuZ3RoIFstV3N0cmluZ29wLXRydW5jYXRp b25dCiAgIHN0cm5jcHkoYnVmZmVyLCBYQVRUUl9NQUNfT1NYX1BSRUZJWCwgWEFUVFJfTUFD X09TWF9QUkVGSVhfTEVOKTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgQ0MgICAgICBmcy9rZXJuZnMvc3lt bGluay5vCkluIGZ1bmN0aW9uIOKAmGtlcm5mc19nZXRfdGFyZ2V0X3BhdGjigJksCiAgICBp bmxpbmVkIGZyb20g4oCYa2VybmZzX2dldGxpbmsuaXNyYS4y4oCZIGF0IGZzL2tlcm5mcy9z eW1saW5rLmM6MTA5OjEwLAogICAgaW5saW5lZCBmcm9tIOKAmGtlcm5mc19pb3BfZ2V0X2xp bmsucGFydC4z4oCZIGF0IGZzL2tlcm5mcy9zeW1saW5rLmM6MTI3OjEwLAogICAgaW5saW5l ZCBmcm9tIOKAmGtlcm5mc19pb3BfZ2V0X2xpbmvigJk6CmZzL2tlcm5mcy9zeW1saW5rLmM6 OTE6Mzogd2FybmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgdHJ1bmNhdGVkIGJlZm9yZSB0 ZXJtaW5hdGluZyBudWwgY29weWluZyBhcyBtYW55IGJ5dGVzIGZyb20gYSBzdHJpbmcgYXMg aXRzIGxlbmd0aCBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJuY3B5KHMgKyBsZW4s IGtuLT5uYW1lLCBzbGVuKTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4K ZnMva2VybmZzL3N5bWxpbmsuYzogSW4gZnVuY3Rpb24g4oCYa2VybmZzX2lvcF9nZXRfbGlu a+KAmToKZnMva2VybmZzL3N5bWxpbmsuYzo4ODoxNDogbm90ZTogbGVuZ3RoIGNvbXB1dGVk IGhlcmUKICAgaW50IHNsZW4gPSBzdHJsZW4oa24tPm5hbWUpOwogICAgICAgICAgICAgIF5+ fn5+fn5+fn5+fn5+fn4KICBDQyAgICAgIGZzL2ZzLXdyaXRlYmFjay5vCkluIGZpbGUgaW5j bHVkZWQgZnJvbSAuL2luY2x1ZGUvdHJhY2UvZGVmaW5lX3RyYWNlLmg6OTcsCiAgICAgICAg ICAgICAgICAgZnJvbSAuL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOjc2MiwK ICAgICAgICAgICAgICAgICBmcm9tIGZzL2ZzLXdyaXRlYmFjay5jOjk4OgouL2luY2x1ZGUv dHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOiBJbiBmdW5jdGlvbiDigJhwZXJmX3RyYWNlX3dy aXRlYmFja193b3JrX2NsYXNz4oCZOgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFj ay5oOjIyMzozOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIHNwZWNpZmllZCBib3VuZCAzMiBl cXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJu Y3B5KF9fZW50cnktPm5hbWUsCiAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgIHdiLT5i ZGktPmRldiA/IGRldl9uYW1lKHdiLT5iZGktPmRldikgOiAiKHVua25vd24pIiwgMzIpOwog ICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn4KLi9pbmNsdWRlL3RyYWNlL3BlcmYuaDo2Njo0OiBub3RlOiBpbiBkZWZpbml0aW9u IG9mIG1hY3JvIOKAmERFQ0xBUkVfRVZFTlRfQ0xBU1PigJkKICB7IGFzc2lnbjsgfSAgICAg ICBcCiAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2suaDoyMjI6 Mjogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRQX2Zhc3RfYXNzaWdu4oCZCiAg VFBfZmFzdF9hc3NpZ24oCiAgXn5+fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50 cy93cml0ZWJhY2suaDogSW4gZnVuY3Rpb24g4oCYcGVyZl90cmFjZV93cml0ZWJhY2tfY2xh c3PigJk6Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd3JpdGViYWNrLmg6Mjc3OjM6IHdhcm5p bmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVkIGJvdW5kIDMyIGVxdWFscyBkZXN0aW5hdGlv biBzaXplIFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAgIHN0cm5jcHkoX19lbnRyeS0+bmFt ZSwgZGV2X25hbWUod2ItPmJkaS0+ZGV2KSwgMzIpOwogICBefn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvcGVyZi5o OjY2OjQ6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYREVDTEFSRV9FVkVOVF9D TEFTU+KAmQogIHsgYXNzaWduOyB9ICAgICAgIFwKICAgIF5+fn5+fgouL2luY2x1ZGUvdHJh Y2UvZXZlbnRzL3dyaXRlYmFjay5oOjI3NjoyOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFj cm8g4oCYVFBfZmFzdF9hc3NpZ27igJkKICBUUF9mYXN0X2Fzc2lnbigKICBefn5+fn5+fn5+ fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOiBJbiBmdW5jdGlvbiDi gJhwZXJmX3RyYWNlX3dyaXRlYmFja19iZGlfcmVnaXN0ZXLigJk6Ci4vaW5jbHVkZS90cmFj ZS9ldmVudHMvd3JpdGViYWNrLmg6Mjk5OjM6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgc3Bl Y2lmaWVkIGJvdW5kIDMyIGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRy dW5jYXRpb25dCiAgIHN0cm5jcHkoX19lbnRyeS0+bmFtZSwgZGV2X25hbWUoYmRpLT5kZXYp LCAzMik7CiAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn4KLi9pbmNsdWRlL3RyYWNlL3BlcmYuaDo2Njo0OiBub3RlOiBpbiBkZWZpbml0aW9uIG9m IG1hY3JvIOKAmERFQ0xBUkVfRVZFTlRfQ0xBU1PigJkKICB7IGFzc2lnbjsgfSAgICAgICBc CiAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL3RyYWNlX2V2ZW50cy5oOjc4Ojk6IG5vdGU6 IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhQQVJBTVPigJkKICAgICAgICAgUEFSQU1TKGFz c2lnbiksICAgICAgICAgXAogICAgICAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50 cy93cml0ZWJhY2suaDoyOTI6MTogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRS QUNFX0VWRU5U4oCZCiBUUkFDRV9FVkVOVCh3cml0ZWJhY2tfYmRpX3JlZ2lzdGVyLAogXn5+ fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2suaDoyOTg6Mjogbm90 ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRQX2Zhc3RfYXNzaWdu4oCZCiAgVFBfZmFz dF9hc3NpZ24oCiAgXn5+fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0 ZWJhY2suaDogSW4gZnVuY3Rpb24g4oCYcGVyZl90cmFjZV93YmNfY2xhc3PigJk6Ci4vaW5j bHVkZS90cmFjZS9ldmVudHMvd3JpdGViYWNrLmg6MzI0OjM6IHdhcm5pbmc6IOKAmHN0cm5j cHnigJkgc3BlY2lmaWVkIGJvdW5kIDMyIGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0 cmluZ29wLXRydW5jYXRpb25dCiAgIHN0cm5jcHkoX19lbnRyeS0+bmFtZSwgZGV2X25hbWUo YmRpLT5kZXYpLCAzMik7CiAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL3BlcmYuaDo2Njo0OiBub3RlOiBpbiBkZWZp bml0aW9uIG9mIG1hY3JvIOKAmERFQ0xBUkVfRVZFTlRfQ0xBU1PigJkKICB7IGFzc2lnbjsg fSAgICAgICBcCiAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2su aDozMjM6Mjogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRQX2Zhc3RfYXNzaWdu 4oCZCiAgVFBfZmFzdF9hc3NpZ24oCiAgXn5+fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNl L2V2ZW50cy93cml0ZWJhY2suaDogSW4gZnVuY3Rpb24g4oCYcGVyZl90cmFjZV93cml0ZWJh Y2tfcXVldWVfaW/igJk6Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd3JpdGViYWNrLmg6Mzc1 OjM6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVkIGJvdW5kIDMyIGVxdWFscyBk ZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAgIHN0cm5jcHkoX19l bnRyeS0+bmFtZSwgZGV2X25hbWUod2ItPmJkaS0+ZGV2KSwgMzIpOwogICBefn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJh Y2UvcGVyZi5oOjY2OjQ6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYREVDTEFS RV9FVkVOVF9DTEFTU+KAmQogIHsgYXNzaWduOyB9ICAgICAgIFwKICAgIF5+fn5+fgouL2lu Y2x1ZGUvdHJhY2UvdHJhY2VfZXZlbnRzLmg6Nzg6OTogbm90ZTogaW4gZXhwYW5zaW9uIG9m IG1hY3JvIOKAmFBBUkFNU+KAmQogICAgICAgICBQQVJBTVMoYXNzaWduKSwgICAgICAgICBc CiAgICAgICAgIF5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOjM2 MDoxOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYVFJBQ0VfRVZFTlTigJkKIFRS QUNFX0VWRU5UKHdyaXRlYmFja19xdWV1ZV9pbywKIF5+fn5+fn5+fn5+Ci4vaW5jbHVkZS90 cmFjZS9ldmVudHMvd3JpdGViYWNrLmg6MzczOjI6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBt YWNybyDigJhUUF9mYXN0X2Fzc2lnbuKAmQogIFRQX2Zhc3RfYXNzaWduKAogIF5+fn5+fn5+ fn5+fn5+Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd3JpdGViYWNrLmg6IEluIGZ1bmN0aW9u IOKAmHBlcmZfdHJhY2Vfd3JpdGViYWNrX2RpcnR5X2lub2RlX3RlbXBsYXRl4oCZOgouL2lu Y2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOjk5OjM6IHdhcm5pbmc6IOKAmHN0cm5j cHnigJkgc3BlY2lmaWVkIGJvdW5kIDMyIGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0 cmluZ29wLXRydW5jYXRpb25dCiAgIHN0cm5jcHkoX19lbnRyeS0+bmFtZSwKICAgXn5+fn5+ fn5+fn5+fn5+fn5+fn5+fgogICAgYmRpLT5kZXYgPyBkZXZfbmFtZShiZGktPmRldikgOiAi KHVua25vd24pIiwgMzIpOwogICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+Ci4vaW5jbHVkZS90cmFjZS9wZXJmLmg6NjY6NDogbm90ZTogaW4g ZGVmaW5pdGlvbiBvZiBtYWNybyDigJhERUNMQVJFX0VWRU5UX0NMQVNT4oCZCiAgeyBhc3Np Z247IH0gICAgICAgXAogICAgXn5+fn5+Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd3JpdGVi YWNrLmg6OTU6Mjogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRQX2Zhc3RfYXNz aWdu4oCZCiAgVFBfZmFzdF9hc3NpZ24oCiAgXn5+fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3Ry YWNlL2V2ZW50cy93cml0ZWJhY2suaDogSW4gZnVuY3Rpb24g4oCYcGVyZl90cmFjZV93cml0 ZWJhY2tfc2JfaW5vZGVzX3JlcXVldWXigJk6Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd3Jp dGViYWNrLmg6NTg2OjM6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVkIGJvdW5k IDMyIGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAg IHN0cm5jcHkoX19lbnRyeS0+bmFtZSwKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAg ICAgICAgIGRldl9uYW1lKGlub2RlX3RvX2JkaShpbm9kZSktPmRldiksIDMyKTsKICAgICAg ICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLi9pbmNsdWRl L3RyYWNlL3BlcmYuaDo2Njo0OiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmERF Q0xBUkVfRVZFTlRfQ0xBU1PigJkKICB7IGFzc2lnbjsgfSAgICAgICBcCiAgICBefn5+fn4K Li9pbmNsdWRlL3RyYWNlL3RyYWNlX2V2ZW50cy5oOjc4Ojk6IG5vdGU6IGluIGV4cGFuc2lv biBvZiBtYWNybyDigJhQQVJBTVPigJkKICAgICAgICAgUEFSQU1TKGFzc2lnbiksICAgICAg ICAgXAogICAgICAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2su aDo1NzI6MTogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRSQUNFX0VWRU5U4oCZ CiBUUkFDRV9FVkVOVCh3cml0ZWJhY2tfc2JfaW5vZGVzX3JlcXVldWUsCiBefn5+fn5+fn5+ fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOjU4NToyOiBub3RlOiBpbiBl eHBhbnNpb24gb2YgbWFjcm8g4oCYVFBfZmFzdF9hc3NpZ27igJkKICBUUF9mYXN0X2Fzc2ln bigKICBefn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5o OiBJbiBmdW5jdGlvbiDigJhwZXJmX3RyYWNlX3dyaXRlYmFja193cml0ZV9pbm9kZV90ZW1w bGF0ZeKAmToKLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2suaDoxNzk6Mzogd2Fy bmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91bmQgMzIgZXF1YWxzIGRlc3RpbmF0 aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgc3RybmNweShfX2VudHJ5LT5u YW1lLAogICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICBkZXZfbmFtZShpbm9kZV90b19i ZGkoaW5vZGUpLT5kZXYpLCAzMik7CiAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL3BlcmYuaDo2Njo0OiBub3RlOiBpbiBkZWZp bml0aW9uIG9mIG1hY3JvIOKAmERFQ0xBUkVfRVZFTlRfQ0xBU1PigJkKICB7IGFzc2lnbjsg fSAgICAgICBcCiAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2su aDoxNzg6Mjogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRQX2Zhc3RfYXNzaWdu 4oCZCiAgVFBfZmFzdF9hc3NpZ24oCiAgXn5+fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNl L2V2ZW50cy93cml0ZWJhY2suaDogSW4gZnVuY3Rpb24g4oCYcGVyZl90cmFjZV93cml0ZWJh Y2tfc2luZ2xlX2lub2RlX3RlbXBsYXRl4oCZOgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dy aXRlYmFjay5oOjY2MDozOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIHNwZWNpZmllZCBib3Vu ZCAzMiBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQog ICBzdHJuY3B5KF9fZW50cnktPm5hbWUsCiAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAg IGRldl9uYW1lKGlub2RlX3RvX2JkaShpbm9kZSktPmRldiksIDMyKTsKICAgIH5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvcGVyZi5o OjY2OjQ6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYREVDTEFSRV9FVkVOVF9D TEFTU+KAmQogIHsgYXNzaWduOyB9ICAgICAgIFwKICAgIF5+fn5+fgouL2luY2x1ZGUvdHJh Y2UvZXZlbnRzL3dyaXRlYmFjay5oOjY1OToyOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFj cm8g4oCYVFBfZmFzdF9hc3NpZ27igJkKICBUUF9mYXN0X2Fzc2lnbigKICBefn5+fn5+fn5+ fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOiBJbiBmdW5jdGlvbiDi gJhwZXJmX3RyYWNlX3dyaXRlYmFja19kaXJ0eV9wYWdl4oCZOgouL2luY2x1ZGUvdHJhY2Uv ZXZlbnRzL3dyaXRlYmFjay5oOjY5OjM6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lm aWVkIGJvdW5kIDMyIGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5j YXRpb25dCiAgIHN0cm5jcHkoX19lbnRyeS0+bmFtZSwKICAgXn5+fn5+fn5+fn5+fn5+fn5+ fn5+fgogICAgbWFwcGluZyA/IGRldl9uYW1lKGlub2RlX3RvX2JkaShtYXBwaW5nLT5ob3N0 KS0+ZGV2KSA6ICIodW5rbm93bikiLCAzMik7CiAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgouL2lu Y2x1ZGUvdHJhY2UvcGVyZi5oOjY2OjQ6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g 4oCYREVDTEFSRV9FVkVOVF9DTEFTU+KAmQogIHsgYXNzaWduOyB9ICAgICAgIFwKICAgIF5+ fn5+fgouL2luY2x1ZGUvdHJhY2UvdHJhY2VfZXZlbnRzLmg6Nzg6OTogbm90ZTogaW4gZXhw YW5zaW9uIG9mIG1hY3JvIOKAmFBBUkFNU+KAmQogICAgICAgICBQQVJBTVMoYXNzaWduKSwg ICAgICAgICBcCiAgICAgICAgIF5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRl YmFjay5oOjU2OjE6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhUUkFDRV9FVkVO VOKAmQogVFJBQ0VfRVZFTlQod3JpdGViYWNrX2RpcnR5X3BhZ2UsCiBefn5+fn5+fn5+fgou L2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOjY4OjI6IG5vdGU6IGluIGV4cGFu c2lvbiBvZiBtYWNybyDigJhUUF9mYXN0X2Fzc2lnbuKAmQogIFRQX2Zhc3RfYXNzaWduKAog IF5+fn5+fn5+fn5+fn5+CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAuL2luY2x1ZGUvdHJhY2Uv ZGVmaW5lX3RyYWNlLmg6OTYsCiAgICAgICAgICAgICAgICAgZnJvbSAuL2luY2x1ZGUvdHJh Y2UvZXZlbnRzL3dyaXRlYmFjay5oOjc2MiwKICAgICAgICAgICAgICAgICBmcm9tIGZzL2Zz LXdyaXRlYmFjay5jOjk4OgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOiBJ biBmdW5jdGlvbiDigJh0cmFjZV9ldmVudF9yYXdfZXZlbnRfd3JpdGViYWNrX2JkaV9yZWdp c3RlcuKAmToKLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2suaDoyOTk6Mzogd2Fy bmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91bmQgMzIgZXF1YWxzIGRlc3RpbmF0 aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgc3RybmNweShfX2VudHJ5LT5u YW1lLCBkZXZfbmFtZShiZGktPmRldiksIDMyKTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvdHJhY2VfZXZlbnRz Lmg6NzIwOjQ6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYREVDTEFSRV9FVkVO VF9DTEFTU+KAmQogIHsgYXNzaWduOyB9ICAgICAgIFwKICAgIF5+fn5+fgouL2luY2x1ZGUv dHJhY2UvdHJhY2VfZXZlbnRzLmg6Nzg6OTogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3Jv IOKAmFBBUkFNU+KAmQogICAgICAgICBQQVJBTVMoYXNzaWduKSwgICAgICAgICBcCiAgICAg ICAgIF5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOjI5MjoxOiBu b3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYVFJBQ0VfRVZFTlTigJkKIFRSQUNFX0VW RU5UKHdyaXRlYmFja19iZGlfcmVnaXN0ZXIsCiBefn5+fn5+fn5+fgouL2luY2x1ZGUvdHJh Y2UvZXZlbnRzL3dyaXRlYmFjay5oOjI5ODoyOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFj cm8g4oCYVFBfZmFzdF9hc3NpZ27igJkKICBUUF9mYXN0X2Fzc2lnbigKICBefn5+fn5+fn5+ fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOiBJbiBmdW5jdGlvbiDi gJh0cmFjZV9ldmVudF9yYXdfZXZlbnRfd3JpdGViYWNrX2NsYXNz4oCZOgouL2luY2x1ZGUv dHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOjI3NzozOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZ IHNwZWNpZmllZCBib3VuZCAzMiBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdv cC10cnVuY2F0aW9uXQogICBzdHJuY3B5KF9fZW50cnktPm5hbWUsIGRldl9uYW1lKHdiLT5i ZGktPmRldiksIDMyKTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL3RyYWNlX2V2ZW50cy5oOjcyMDo0OiBu b3RlOiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmERFQ0xBUkVfRVZFTlRfQ0xBU1PigJkK ICB7IGFzc2lnbjsgfSAgICAgICBcCiAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50 cy93cml0ZWJhY2suaDoyNzY6Mjogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRQ X2Zhc3RfYXNzaWdu4oCZCiAgVFBfZmFzdF9hc3NpZ24oCiAgXn5+fn5+fn5+fn5+fn4KLi9p bmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2suaDogSW4gZnVuY3Rpb24g4oCYdHJhY2Vf ZXZlbnRfcmF3X2V2ZW50X3dyaXRlYmFja19kaXJ0eV9pbm9kZV90ZW1wbGF0ZeKAmToKLi9p bmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2suaDo5OTozOiB3YXJuaW5nOiDigJhzdHJu Y3B54oCZIHNwZWNpZmllZCBib3VuZCAzMiBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdz dHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJuY3B5KF9fZW50cnktPm5hbWUsCiAgIF5+fn5+ fn5+fn5+fn5+fn5+fn5+fn4KICAgIGJkaS0+ZGV2ID8gZGV2X25hbWUoYmRpLT5kZXYpIDog Iih1bmtub3duKSIsIDMyKTsKICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvdHJhY2VfZXZlbnRzLmg6NzIwOjQ6 IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYREVDTEFSRV9FVkVOVF9DTEFTU+KA mQogIHsgYXNzaWduOyB9ICAgICAgIFwKICAgIF5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZl bnRzL3dyaXRlYmFjay5oOjk1OjI6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhU UF9mYXN0X2Fzc2lnbuKAmQogIFRQX2Zhc3RfYXNzaWduKAogIF5+fn5+fn5+fn5+fn5+Ci4v aW5jbHVkZS90cmFjZS9ldmVudHMvd3JpdGViYWNrLmg6IEluIGZ1bmN0aW9uIOKAmHRyYWNl X2V2ZW50X3Jhd19ldmVudF93cml0ZWJhY2tfZGlydHlfcGFnZeKAmToKLi9pbmNsdWRlL3Ry YWNlL2V2ZW50cy93cml0ZWJhY2suaDo2OTozOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIHNw ZWNpZmllZCBib3VuZCAzMiBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10 cnVuY2F0aW9uXQogICBzdHJuY3B5KF9fZW50cnktPm5hbWUsCiAgIF5+fn5+fn5+fn5+fn5+ fn5+fn5+fn4KICAgIG1hcHBpbmcgPyBkZXZfbmFtZShpbm9kZV90b19iZGkobWFwcGluZy0+ aG9zdCktPmRldikgOiAiKHVua25vd24pIiwgMzIpOwogICAgfn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4K Li9pbmNsdWRlL3RyYWNlL3RyYWNlX2V2ZW50cy5oOjcyMDo0OiBub3RlOiBpbiBkZWZpbml0 aW9uIG9mIG1hY3JvIOKAmERFQ0xBUkVfRVZFTlRfQ0xBU1PigJkKICB7IGFzc2lnbjsgfSAg ICAgICBcCiAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL3RyYWNlX2V2ZW50cy5oOjc4Ojk6 IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhQQVJBTVPigJkKICAgICAgICAgUEFS QU1TKGFzc2lnbiksICAgICAgICAgXAogICAgICAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNl L2V2ZW50cy93cml0ZWJhY2suaDo1NjoxOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g 4oCYVFJBQ0VfRVZFTlTigJkKIFRSQUNFX0VWRU5UKHdyaXRlYmFja19kaXJ0eV9wYWdlLAog Xn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2suaDo2ODoyOiBu b3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYVFBfZmFzdF9hc3NpZ27igJkKICBUUF9m YXN0X2Fzc2lnbigKICBefn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dy aXRlYmFjay5oOiBJbiBmdW5jdGlvbiDigJh0cmFjZV9ldmVudF9yYXdfZXZlbnRfd3JpdGVi YWNrX3NiX2lub2Rlc19yZXF1ZXVl4oCZOgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRl YmFjay5oOjU4NjozOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIHNwZWNpZmllZCBib3VuZCAz MiBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBz dHJuY3B5KF9fZW50cnktPm5hbWUsCiAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAg ICAgICBkZXZfbmFtZShpbm9kZV90b19iZGkoaW5vZGUpLT5kZXYpLCAzMik7CiAgICAgICAg ICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci4vaW5jbHVkZS90 cmFjZS90cmFjZV9ldmVudHMuaDo3MjA6NDogbm90ZTogaW4gZGVmaW5pdGlvbiBvZiBtYWNy byDigJhERUNMQVJFX0VWRU5UX0NMQVNT4oCZCiAgeyBhc3NpZ247IH0gICAgICAgXAogICAg Xn5+fn5+Ci4vaW5jbHVkZS90cmFjZS90cmFjZV9ldmVudHMuaDo3ODo5OiBub3RlOiBpbiBl eHBhbnNpb24gb2YgbWFjcm8g4oCYUEFSQU1T4oCZCiAgICAgICAgIFBBUkFNUyhhc3NpZ24p LCAgICAgICAgIFwKICAgICAgICAgXn5+fn5+Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd3Jp dGViYWNrLmg6NTcyOjE6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhUUkFDRV9F VkVOVOKAmQogVFJBQ0VfRVZFTlQod3JpdGViYWNrX3NiX2lub2Rlc19yZXF1ZXVlLAogXn5+ fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2suaDo1ODU6Mjogbm90 ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRQX2Zhc3RfYXNzaWdu4oCZCiAgVFBfZmFz dF9hc3NpZ24oCiAgXn5+fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0 ZWJhY2suaDogSW4gZnVuY3Rpb24g4oCYdHJhY2VfZXZlbnRfcmF3X2V2ZW50X3diY19jbGFz c+KAmToKLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2suaDozMjQ6Mzogd2Fybmlu Zzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91bmQgMzIgZXF1YWxzIGRlc3RpbmF0aW9u IHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgc3RybmNweShfX2VudHJ5LT5uYW1l LCBkZXZfbmFtZShiZGktPmRldiksIDMyKTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvdHJhY2VfZXZlbnRzLmg6 NzIwOjQ6IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYREVDTEFSRV9FVkVOVF9D TEFTU+KAmQogIHsgYXNzaWduOyB9ICAgICAgIFwKICAgIF5+fn5+fgouL2luY2x1ZGUvdHJh Y2UvZXZlbnRzL3dyaXRlYmFjay5oOjMyMzoyOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFj cm8g4oCYVFBfZmFzdF9hc3NpZ27igJkKICBUUF9mYXN0X2Fzc2lnbigKICBefn5+fn5+fn5+ fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOiBJbiBmdW5jdGlvbiDi gJh0cmFjZV9ldmVudF9yYXdfZXZlbnRfd3JpdGViYWNrX3dyaXRlX2lub2RlX3RlbXBsYXRl 4oCZOgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOjE3OTozOiB3YXJuaW5n OiDigJhzdHJuY3B54oCZIHNwZWNpZmllZCBib3VuZCAzMiBlcXVhbHMgZGVzdGluYXRpb24g c2l6ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJuY3B5KF9fZW50cnktPm5hbWUs CiAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgIGRldl9uYW1lKGlub2RlX3RvX2JkaShp bm9kZSktPmRldiksIDMyKTsKICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvdHJhY2VfZXZlbnRzLmg6NzIwOjQ6IG5vdGU6IGlu IGRlZmluaXRpb24gb2YgbWFjcm8g4oCYREVDTEFSRV9FVkVOVF9DTEFTU+KAmQogIHsgYXNz aWduOyB9ICAgICAgIFwKICAgIF5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRl YmFjay5oOjE3ODoyOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYVFBfZmFzdF9h c3NpZ27igJkKICBUUF9mYXN0X2Fzc2lnbigKICBefn5+fn5+fn5+fn5+fgouL2luY2x1ZGUv dHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOiBJbiBmdW5jdGlvbiDigJh0cmFjZV9ldmVudF9y YXdfZXZlbnRfd3JpdGViYWNrX3dvcmtfY2xhc3PigJk6Ci4vaW5jbHVkZS90cmFjZS9ldmVu dHMvd3JpdGViYWNrLmg6MjIzOjM6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVk IGJvdW5kIDMyIGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRp b25dCiAgIHN0cm5jcHkoX19lbnRyeS0+bmFtZSwKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+ fgogICAgd2ItPmJkaS0+ZGV2ID8gZGV2X25hbWUod2ItPmJkaS0+ZGV2KSA6ICIodW5rbm93 bikiLCAzMik7CiAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvdHJhY2VfZXZlbnRzLmg6NzIwOjQ6 IG5vdGU6IGluIGRlZmluaXRpb24gb2YgbWFjcm8g4oCYREVDTEFSRV9FVkVOVF9DTEFTU+KA mQogIHsgYXNzaWduOyB9ICAgICAgIFwKICAgIF5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZl bnRzL3dyaXRlYmFjay5oOjIyMjoyOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCY VFBfZmFzdF9hc3NpZ27igJkKICBUUF9mYXN0X2Fzc2lnbigKICBefn5+fn5+fn5+fn5+fgou L2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFjay5oOiBJbiBmdW5jdGlvbiDigJh0cmFj ZV9ldmVudF9yYXdfZXZlbnRfd3JpdGViYWNrX3F1ZXVlX2lv4oCZOgouL2luY2x1ZGUvdHJh Y2UvZXZlbnRzL3dyaXRlYmFjay5oOjM3NTozOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIHNw ZWNpZmllZCBib3VuZCAzMiBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10 cnVuY2F0aW9uXQogICBzdHJuY3B5KF9fZW50cnktPm5hbWUsIGRldl9uYW1lKHdiLT5iZGkt PmRldiksIDMyKTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL3RyYWNlX2V2ZW50cy5oOjcyMDo0OiBub3Rl OiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmERFQ0xBUkVfRVZFTlRfQ0xBU1PigJkKICB7 IGFzc2lnbjsgfSAgICAgICBcCiAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL3RyYWNlX2V2 ZW50cy5oOjc4Ojk6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhQQVJBTVPigJkK ICAgICAgICAgUEFSQU1TKGFzc2lnbiksICAgICAgICAgXAogICAgICAgICBefn5+fn4KLi9p bmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2suaDozNjA6MTogbm90ZTogaW4gZXhwYW5z aW9uIG9mIG1hY3JvIOKAmFRSQUNFX0VWRU5U4oCZCiBUUkFDRV9FVkVOVCh3cml0ZWJhY2tf cXVldWVfaW8sCiBefn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3dyaXRlYmFj ay5oOjM3MzoyOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYVFBfZmFzdF9hc3Np Z27igJkKICBUUF9mYXN0X2Fzc2lnbigKICBefn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJh Y2UvZXZlbnRzL3dyaXRlYmFjay5oOiBJbiBmdW5jdGlvbiDigJh0cmFjZV9ldmVudF9yYXdf ZXZlbnRfd3JpdGViYWNrX3NpbmdsZV9pbm9kZV90ZW1wbGF0ZeKAmToKLi9pbmNsdWRlL3Ry YWNlL2V2ZW50cy93cml0ZWJhY2suaDo2NjA6Mzogd2FybmluZzog4oCYc3RybmNweeKAmSBz cGVjaWZpZWQgYm91bmQgMzIgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3At dHJ1bmNhdGlvbl0KICAgc3RybmNweShfX2VudHJ5LT5uYW1lLAogICBefn5+fn5+fn5+fn5+ fn5+fn5+fn5+CiAgICBkZXZfbmFtZShpbm9kZV90b19iZGkoaW5vZGUpLT5kZXYpLCAzMik7 CiAgICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLi9pbmNsdWRl L3RyYWNlL3RyYWNlX2V2ZW50cy5oOjcyMDo0OiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1h Y3JvIOKAmERFQ0xBUkVfRVZFTlRfQ0xBU1PigJkKICB7IGFzc2lnbjsgfSAgICAgICBcCiAg ICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93cml0ZWJhY2suaDo2NTk6Mjogbm90 ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRQX2Zhc3RfYXNzaWdu4oCZCiAgVFBfZmFz dF9hc3NpZ24oCiAgXn5+fn5+fn5+fn5+fn4KCiAgQ0MgICAgICBzZWN1cml0eS9zZWxpbnV4 L2hvb2tzLm8Kc2VjdXJpdHkvc2VsaW51eC9ob29rcy5jOiBJbiBmdW5jdGlvbiDigJhzZWxp bnV4X2liX2VuZHBvcnRfbWFuYWdlX3N1Ym5ldOKAmToKc2VjdXJpdHkvc2VsaW51eC9ob29r cy5jOjY3MTg6Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91bmQgNjQg ZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBzdHJu Y3B5KGliZW5kcG9ydC5kZXZfbmFtZSwgZGV2X25hbWUsIHNpemVvZihpYmVuZHBvcnQuZGV2 X25hbWUpKTsKICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgoKICBDQyAgICAgIGJsb2NrL2Jsay13YnQubwpJbiBm aWxlIGluY2x1ZGVkIGZyb20gLi9pbmNsdWRlL3RyYWNlL2RlZmluZV90cmFjZS5oOjk3LAog ICAgICAgICAgICAgICAgIGZyb20gLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93YnQuaDoxNTQs CiAgICAgICAgICAgICAgICAgZnJvbSBibG9jay9ibGstd2J0LmM6MzA6Ci4vaW5jbHVkZS90 cmFjZS9ldmVudHMvd2J0Lmg6IEluIGZ1bmN0aW9uIOKAmHBlcmZfdHJhY2Vfd2J0X3N0YXTi gJk6Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd2J0Lmg6MzY6Mzogd2FybmluZzog4oCYc3Ry bmNweeKAmSBzcGVjaWZpZWQgYm91bmQgMzIgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1X c3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgc3RybmNweShfX2VudHJ5LT5uYW1lLCBkZXZfbmFt ZShiZGktPmRldiksIDMyKTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvcGVyZi5oOjY2OjQ6IG5vdGU6IGluIGRl ZmluaXRpb24gb2YgbWFjcm8g4oCYREVDTEFSRV9FVkVOVF9DTEFTU+KAmQogIHsgYXNzaWdu OyB9ICAgICAgIFwKICAgIF5+fn5+fgouL2luY2x1ZGUvdHJhY2UvdHJhY2VfZXZlbnRzLmg6 Nzg6OTogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFBBUkFNU+KAmQogICAgICAg ICBQQVJBTVMoYXNzaWduKSwgICAgICAgICBcCiAgICAgICAgIF5+fn5+fgouL2luY2x1ZGUv dHJhY2UvZXZlbnRzL3didC5oOjE1OjE6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDi gJhUUkFDRV9FVkVOVOKAmQogVFJBQ0VfRVZFTlQod2J0X3N0YXQsCiBefn5+fn5+fn5+fgou L2luY2x1ZGUvdHJhY2UvZXZlbnRzL3didC5oOjM1OjI6IG5vdGU6IGluIGV4cGFuc2lvbiBv ZiBtYWNybyDigJhUUF9mYXN0X2Fzc2lnbuKAmQogIFRQX2Zhc3RfYXNzaWduKAogIF5+fn5+ fn5+fn5+fn5+Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd2J0Lmg6IEluIGZ1bmN0aW9uIOKA mHBlcmZfdHJhY2Vfd2J0X2xhdOKAmToKLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93YnQuaDo3 MDozOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIHNwZWNpZmllZCBib3VuZCAzMiBlcXVhbHMg ZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJuY3B5KF9f ZW50cnktPm5hbWUsIGRldl9uYW1lKGJkaS0+ZGV2KSwgMzIpOwogICBefn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci4vaW5jbHVkZS90cmFjZS9wZXJm Lmg6NjY6NDogbm90ZTogaW4gZGVmaW5pdGlvbiBvZiBtYWNybyDigJhERUNMQVJFX0VWRU5U X0NMQVNT4oCZCiAgeyBhc3NpZ247IH0gICAgICAgXAogICAgXn5+fn5+Ci4vaW5jbHVkZS90 cmFjZS90cmFjZV9ldmVudHMuaDo3ODo5OiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g 4oCYUEFSQU1T4oCZCiAgICAgICAgIFBBUkFNUyhhc3NpZ24pLCAgICAgICAgIFwKICAgICAg ICAgXn5+fn5+Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd2J0Lmg6NTg6MTogbm90ZTogaW4g ZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRSQUNFX0VWRU5U4oCZCiBUUkFDRV9FVkVOVCh3YnRf bGF0LAogXn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93YnQuaDo2OToyOiBu b3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYVFBfZmFzdF9hc3NpZ27igJkKICBUUF9m YXN0X2Fzc2lnbigKICBefn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3di dC5oOiBJbiBmdW5jdGlvbiDigJhwZXJmX3RyYWNlX3didF9zdGVw4oCZOgouL2luY2x1ZGUv dHJhY2UvZXZlbnRzL3didC5oOjEwNjozOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIHNwZWNp ZmllZCBib3VuZCAzMiBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10cnVu Y2F0aW9uXQogICBzdHJuY3B5KF9fZW50cnktPm5hbWUsIGRldl9uYW1lKGJkaS0+ZGV2KSwg MzIpOwogICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ Ci4vaW5jbHVkZS90cmFjZS9wZXJmLmg6NjY6NDogbm90ZTogaW4gZGVmaW5pdGlvbiBvZiBt YWNybyDigJhERUNMQVJFX0VWRU5UX0NMQVNT4oCZCiAgeyBhc3NpZ247IH0gICAgICAgXAog ICAgXn5+fn5+Ci4vaW5jbHVkZS90cmFjZS90cmFjZV9ldmVudHMuaDo3ODo5OiBub3RlOiBp biBleHBhbnNpb24gb2YgbWFjcm8g4oCYUEFSQU1T4oCZCiAgICAgICAgIFBBUkFNUyhhc3Np Z24pLCAgICAgICAgIFwKICAgICAgICAgXn5+fn5+Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMv d2J0Lmg6ODc6MTogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRSQUNFX0VWRU5U 4oCZCiBUUkFDRV9FVkVOVCh3YnRfc3RlcCwKIF5+fn5+fn5+fn5+Ci4vaW5jbHVkZS90cmFj ZS9ldmVudHMvd2J0Lmg6MTA1OjI6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhU UF9mYXN0X2Fzc2lnbuKAmQogIFRQX2Zhc3RfYXNzaWduKAogIF5+fn5+fn5+fn5+fn5+Ci4v aW5jbHVkZS90cmFjZS9ldmVudHMvd2J0Lmg6IEluIGZ1bmN0aW9uIOKAmHBlcmZfdHJhY2Vf d2J0X3RpbWVy4oCZOgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3didC5oOjE0MTozOiB3YXJu aW5nOiDigJhzdHJuY3B54oCZIHNwZWNpZmllZCBib3VuZCAzMiBlcXVhbHMgZGVzdGluYXRp b24gc2l6ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJuY3B5KF9fZW50cnktPm5h bWUsIGRldl9uYW1lKGJkaS0+ZGV2KSwgMzIpOwogICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci4vaW5jbHVkZS90cmFjZS9wZXJmLmg6NjY6NDog bm90ZTogaW4gZGVmaW5pdGlvbiBvZiBtYWNybyDigJhERUNMQVJFX0VWRU5UX0NMQVNT4oCZ CiAgeyBhc3NpZ247IH0gICAgICAgXAogICAgXn5+fn5+Ci4vaW5jbHVkZS90cmFjZS90cmFj ZV9ldmVudHMuaDo3ODo5OiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYUEFSQU1T 4oCZCiAgICAgICAgIFBBUkFNUyhhc3NpZ24pLCAgICAgICAgIFwKICAgICAgICAgXn5+fn5+ Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd2J0Lmg6MTI2OjE6IG5vdGU6IGluIGV4cGFuc2lv biBvZiBtYWNybyDigJhUUkFDRV9FVkVOVOKAmQogVFJBQ0VfRVZFTlQod2J0X3RpbWVyLAog Xn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93YnQuaDoxNDA6Mjogbm90ZTog aW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRQX2Zhc3RfYXNzaWdu4oCZCiAgVFBfZmFzdF9h c3NpZ24oCiAgXn5+fn5+fn5+fn5+fn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC4vaW5jbHVk ZS90cmFjZS9kZWZpbmVfdHJhY2UuaDo5NiwKICAgICAgICAgICAgICAgICBmcm9tIC4vaW5j bHVkZS90cmFjZS9ldmVudHMvd2J0Lmg6MTU0LAogICAgICAgICAgICAgICAgIGZyb20gYmxv Y2svYmxrLXdidC5jOjMwOgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3didC5oOiBJbiBmdW5j dGlvbiDigJh0cmFjZV9ldmVudF9yYXdfZXZlbnRfd2J0X3N0YXTigJk6Ci4vaW5jbHVkZS90 cmFjZS9ldmVudHMvd2J0Lmg6MzY6Mzogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZp ZWQgYm91bmQgMzIgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNh dGlvbl0KICAgc3RybmNweShfX2VudHJ5LT5uYW1lLCBkZXZfbmFtZShiZGktPmRldiksIDMy KTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgou L2luY2x1ZGUvdHJhY2UvdHJhY2VfZXZlbnRzLmg6NzIwOjQ6IG5vdGU6IGluIGRlZmluaXRp b24gb2YgbWFjcm8g4oCYREVDTEFSRV9FVkVOVF9DTEFTU+KAmQogIHsgYXNzaWduOyB9ICAg ICAgIFwKICAgIF5+fn5+fgouL2luY2x1ZGUvdHJhY2UvdHJhY2VfZXZlbnRzLmg6Nzg6OTog bm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFBBUkFNU+KAmQogICAgICAgICBQQVJB TVMoYXNzaWduKSwgICAgICAgICBcCiAgICAgICAgIF5+fn5+fgouL2luY2x1ZGUvdHJhY2Uv ZXZlbnRzL3didC5oOjE1OjE6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhUUkFD RV9FVkVOVOKAmQogVFJBQ0VfRVZFTlQod2J0X3N0YXQsCiBefn5+fn5+fn5+fgouL2luY2x1 ZGUvdHJhY2UvZXZlbnRzL3didC5oOjM1OjI6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNy byDigJhUUF9mYXN0X2Fzc2lnbuKAmQogIFRQX2Zhc3RfYXNzaWduKAogIF5+fn5+fn5+fn5+ fn5+Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd2J0Lmg6IEluIGZ1bmN0aW9uIOKAmHRyYWNl X2V2ZW50X3Jhd19ldmVudF93YnRfbGF04oCZOgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3di dC5oOjcwOjM6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVkIGJvdW5kIDMyIGVx dWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAgIHN0cm5j cHkoX19lbnRyeS0+bmFtZSwgZGV2X25hbWUoYmRpLT5kZXYpLCAzMik7CiAgIF5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNl L3RyYWNlX2V2ZW50cy5oOjcyMDo0OiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKA mERFQ0xBUkVfRVZFTlRfQ0xBU1PigJkKICB7IGFzc2lnbjsgfSAgICAgICBcCiAgICBefn5+ fn4KLi9pbmNsdWRlL3RyYWNlL3RyYWNlX2V2ZW50cy5oOjc4Ojk6IG5vdGU6IGluIGV4cGFu c2lvbiBvZiBtYWNybyDigJhQQVJBTVPigJkKICAgICAgICAgUEFSQU1TKGFzc2lnbiksICAg ICAgICAgXAogICAgICAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93YnQuaDo1 ODoxOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYVFJBQ0VfRVZFTlTigJkKIFRS QUNFX0VWRU5UKHdidF9sYXQsCiBefn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRz L3didC5oOjY5OjI6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhUUF9mYXN0X2Fz c2lnbuKAmQogIFRQX2Zhc3RfYXNzaWduKAogIF5+fn5+fn5+fn5+fn5+Ci4vaW5jbHVkZS90 cmFjZS9ldmVudHMvd2J0Lmg6IEluIGZ1bmN0aW9uIOKAmHRyYWNlX2V2ZW50X3Jhd19ldmVu dF93YnRfdGltZXLigJk6Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd2J0Lmg6MTQxOjM6IHdh cm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVkIGJvdW5kIDMyIGVxdWFscyBkZXN0aW5h dGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAgIHN0cm5jcHkoX19lbnRyeS0+ bmFtZSwgZGV2X25hbWUoYmRpLT5kZXYpLCAzMik7CiAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL3RyYWNlX2V2ZW50 cy5oOjcyMDo0OiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmERFQ0xBUkVfRVZF TlRfQ0xBU1PigJkKICB7IGFzc2lnbjsgfSAgICAgICBcCiAgICBefn5+fn4KLi9pbmNsdWRl L3RyYWNlL3RyYWNlX2V2ZW50cy5oOjc4Ojk6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNy byDigJhQQVJBTVPigJkKICAgICAgICAgUEFSQU1TKGFzc2lnbiksICAgICAgICAgXAogICAg ICAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93YnQuaDoxMjY6MTogbm90ZTog aW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRSQUNFX0VWRU5U4oCZCiBUUkFDRV9FVkVOVCh3 YnRfdGltZXIsCiBefn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZlbnRzL3didC5oOjE0 MDoyOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCYVFBfZmFzdF9hc3NpZ27igJkK ICBUUF9mYXN0X2Fzc2lnbigKICBefn5+fn5+fn5+fn5+fgouL2luY2x1ZGUvdHJhY2UvZXZl bnRzL3didC5oOiBJbiBmdW5jdGlvbiDigJh0cmFjZV9ldmVudF9yYXdfZXZlbnRfd2J0X3N0 ZXDigJk6Ci4vaW5jbHVkZS90cmFjZS9ldmVudHMvd2J0Lmg6MTA2OjM6IHdhcm5pbmc6IOKA mHN0cm5jcHnigJkgc3BlY2lmaWVkIGJvdW5kIDMyIGVxdWFscyBkZXN0aW5hdGlvbiBzaXpl IFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAgIHN0cm5jcHkoX19lbnRyeS0+bmFtZSwgZGV2 X25hbWUoYmRpLT5kZXYpLCAzMik7CiAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL3RyYWNlX2V2ZW50cy5oOjcyMDo0 OiBub3RlOiBpbiBkZWZpbml0aW9uIG9mIG1hY3JvIOKAmERFQ0xBUkVfRVZFTlRfQ0xBU1Pi gJkKICB7IGFzc2lnbjsgfSAgICAgICBcCiAgICBefn5+fn4KLi9pbmNsdWRlL3RyYWNlL3Ry YWNlX2V2ZW50cy5oOjc4Ojk6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhQQVJB TVPigJkKICAgICAgICAgUEFSQU1TKGFzc2lnbiksICAgICAgICAgXAogICAgICAgICBefn5+ fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93YnQuaDo4NzoxOiBub3RlOiBpbiBleHBhbnNp b24gb2YgbWFjcm8g4oCYVFJBQ0VfRVZFTlTigJkKIFRSQUNFX0VWRU5UKHdidF9zdGVwLAog Xn5+fn5+fn5+fn4KLi9pbmNsdWRlL3RyYWNlL2V2ZW50cy93YnQuaDoxMDU6Mjogbm90ZTog aW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmFRQX2Zhc3RfYXNzaWdu4oCZCiAgVFBfZmFzdF9h c3NpZ24oCiAgXn5+fn5+fn5+fn5+fn4KCiAgQ0MgW01dICBkcml2ZXJzL2NyeXB0by9jY3Av Y2NwLWNyeXB0by1zaGEubwpJbiBmdW5jdGlvbiDigJhjY3BfcmVnaXN0ZXJfaG1hY19hbGcu aXNyYS4z4oCZLAogICAgaW5saW5lZCBmcm9tIOKAmGNjcF9yZWdpc3Rlcl9zaGFfYWxn4oCZ IGF0IGRyaXZlcnMvY3J5cHRvL2NjcC9jY3AtY3J5cHRvLXNoYS5jOjUyMTo4LAogICAgaW5s aW5lZCBmcm9tIOKAmGNjcF9yZWdpc3Rlcl9zaGFfYWxnc+KAmSBhdCBkcml2ZXJzL2NyeXB0 by9jY3AvY2NwLWNyeXB0by1zaGEuYzo1MzQ6OToKZHJpdmVycy9jcnlwdG8vY2NwL2NjcC1j cnlwdG8tc2hhLmM6NDM5OjI6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVkIGJv dW5kIDEyOCBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9u XQogIHN0cm5jcHkoY2NwX2FsZy0+Y2hpbGRfYWxnLCBkZWYtPm5hbWUsIENSWVBUT19NQVhf QUxHX05BTUUpOwogIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+CiAgQ0MgICAgICBkcml2ZXJzL2RldmZyZXEvZGV2ZnJlcS5v CkluIGZ1bmN0aW9uIOKAmGRldmZyZXFfYWRkX2RldmljZS5wYXJ0LjEz4oCZLAogICAgaW5s aW5lZCBmcm9tIOKAmGRldmZyZXFfYWRkX2RldmljZeKAmToKZHJpdmVycy9kZXZmcmVxL2Rl dmZyZXEuYzo1OTM6Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91bmQg MTYgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBz dHJuY3B5KGRldmZyZXEtPmdvdmVybm9yX25hbWUsIGdvdmVybm9yX25hbWUsIERFVkZSRVFf TkFNRV9MRU4pOwogIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICBDQyBbTV0gIGRyaXZlcnMvZ3B1L2RybS9hbWQv YW1kZ3B1Ly4uL2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbS5vCkluIGZ1bmN0aW9uIOKA mGFtZGdwdV9kbV9jcmVhdGVfY29tbW9uX21vZGXigJksCiAgICBpbmxpbmVkIGZyb20g4oCY YW1kZ3B1X2RtX2Nvbm5lY3Rvcl9hZGRfY29tbW9uX21vZGVz4oCZIGF0IGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbS5jOjM0MzQ6 MTA6CmRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvYW1kZ3B1X2RtL2Ft ZGdwdV9kbS5jOjMzNzc6Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91 bmQgMzIgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0K ICBzdHJuY3B5KG1vZGUtPm5hbWUsIG5hbWUsIERSTV9ESVNQTEFZX01PREVfTEVOKTsKICBe fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpJbiBmdW5j dGlvbiDigJhmaWxsX2F1ZGlvX2luZm/igJksCiAgICBpbmxpbmVkIGZyb20g4oCYY3JlYXRl X3N0cmVhbV9mb3Jfc2lua+KAmSBhdCBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS8uLi9k aXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG0uYzoyNDk4OjI6CmRyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1Ly4uL2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbS5jOjIyODc6Mjogd2Fy bmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgbWF5IGJlIHRydW5jYXRlZCBjb3B5aW5nIDE5 IGJ5dGVzIGZyb20gYSBzdHJpbmcgb2YgbGVuZ3RoIDE5IFstV3N0cmluZ29wLXRydW5jYXRp b25dCiAgc3RybmNweShhdWRpb19pbmZvLT5kaXNwbGF5X25hbWUsCiAgXn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgIGVkaWRfY2Fwcy0+ZGlzcGxheV9uYW1lLAogICB+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgQVVESU9fSU5GT19ESVNQTEFZX05BTUVfU0la RV9JTl9DSEFSUyAtIDEpOwogICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn4KICBDQyBbTV0gIGRyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L252aWYvY2xpZW50 Lm8KZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnZpZi9jbGllbnQuYzogSW4gZnVuY3Rpb24g 4oCYbnZpZl9jbGllbnRfaW5pdOKAmToKZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnZpZi9j bGllbnQuYzo3MjoyOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIHNwZWNpZmllZCBib3VuZCAz MiBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogIHN0 cm5jcHkoYXJncy5uYW1lLCBuYW1lLCBzaXplb2YoYXJncy5uYW1lKSk7CiAgXn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogIENDIFtNXSAgZHJpdmVycy9n cHUvZHJtL25vdXZlYXUvbnZrbS9lbmdpbmUvZGV2aWNlL3VzZXIubwpJbiBmdW5jdGlvbiDi gJhudmttX3VkZXZpY2VfaW5mb+KAmSwKICAgIGlubGluZWQgZnJvbSDigJhudmttX3VkZXZp Y2VfbXRoZOKAmSBhdCBkcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udmttL2VuZ2luZS9kZXZp Y2UvdXNlci5jOjIyMzoxMDoKZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnZrbS9lbmdpbmUv ZGV2aWNlL3VzZXIuYzoxOTI6Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQg Ym91bmQgMTYgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlv bl0KICBzdHJuY3B5KGFyZ3MtPnYwLmNoaXAsIGRldmljZS0+Y2hpcC0+bmFtZSwgc2l6ZW9m KGFyZ3MtPnYwLmNoaXApKTsKICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogIENDIFtNXSAgZHJpdmVycy9pbmZp bmliYW5kL2h3L2hmaTEvdmVyYnMubwpkcml2ZXJzL2luZmluaWJhbmQvaHcvaGZpMS92ZXJi cy5jOiBJbiBmdW5jdGlvbiDigJhoZmkxX3JlZ2lzdGVyX2liX2RldmljZeKAmToKZHJpdmVy cy9pbmZpbmliYW5kL2h3L2hmaTEvdmVyYnMuYzoxOTAxOjI6IHdhcm5pbmc6IOKAmHN0cm5j cHnigJkgb3V0cHV0IG1heSBiZSB0cnVuY2F0ZWQgY29weWluZyA2NCBieXRlcyBmcm9tIGEg c3RyaW5nIG9mIGxlbmd0aCA2NCBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogIHN0cm5jcHko aWJkZXYtPm5vZGVfZGVzYywgaW5pdF91dHNuYW1lKCktPm5vZGVuYW1lLAogIF5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICBzaXplb2Yo aWJkZXYtPm5vZGVfZGVzYykpOwogICB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgQ0Mg W01dICBkcml2ZXJzL2luZmluaWJhbmQvaHcvb2NyZG1hL29jcmRtYV9ody5vCkluIGZ1bmN0 aW9uIOKAmG9jcmRtYV9tYnhfZ2V0X2N0cmxfYXR0cmlic+KAmSwKICAgIGlubGluZWQgZnJv bSDigJhvY3JkbWFfaW5pdF9od+KAmSBhdCBkcml2ZXJzL2luZmluaWJhbmQvaHcvb2NyZG1h L29jcmRtYV9ody5jOjMyMjc6MTE6CmRyaXZlcnMvaW5maW5pYmFuZC9ody9vY3JkbWEvb2Ny ZG1hX2h3LmM6MTM2ODozOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCBtYXkgYmUg dHJ1bmNhdGVkIGNvcHlpbmcgMzEgYnl0ZXMgZnJvbSBhIHN0cmluZyBvZiBsZW5ndGggMzEg Wy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgc3RybmNweShkZXYtPm1vZGVsX251bWJlciwK ICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgIGhiYV9hdHRyaWJzLT5jb250cm9s bGVyX21vZGVsX251bWJlciwgMzEpOwogICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn4KICBDQyBbTV0gIGRyaXZlcnMvaW5maW5pYmFuZC9ody91c25pYy91 c25pY19md2Qubwpkcml2ZXJzL2luZmluaWJhbmQvaHcvdXNuaWMvdXNuaWNfZndkLmM6IElu IGZ1bmN0aW9uIOKAmHVzbmljX2Z3ZF9kZXZfYWxsb2PigJk6CmRyaXZlcnMvaW5maW5pYmFu ZC9ody91c25pYy91c25pY19md2QuYzo5NToyOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91 dHB1dCBtYXkgYmUgdHJ1bmNhdGVkIGNvcHlpbmcgMTYgYnl0ZXMgZnJvbSBhIHN0cmluZyBv ZiBsZW5ndGggMjAgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBzdHJuY3B5KHVmZGV2LT5u YW1lLCBuZXRkZXZfbmFtZSh1ZmRldi0+bmV0ZGV2KSwKICBefn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgIHNpemVvZih1ZmRldi0+bmFtZSkg LSAxKTsKICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogIENDIFtNXSAgZHJpdmVycy9p c2RuL2NhcGkvY2FwaWRydi5vCmRyaXZlcnMvaXNkbi9jYXBpL2NhcGlkcnYuYzogSW4gZnVu Y3Rpb24g4oCYY2FwaWRydl9jb21tYW5k4oCZOgpkcml2ZXJzL2lzZG4vY2FwaS9jYXBpZHJ2 LmM6MjAxNjozOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCBtYXkgYmUgdHJ1bmNh dGVkIGNvcHlpbmcgMzIgYnl0ZXMgZnJvbSBhIHN0cmluZyBvZiBsZW5ndGggNDkgWy1Xc3Ry aW5nb3AtdHJ1bmNhdGlvbl0KICAgc3RybmNweShiY2hhbi0+bXNuLCBjLT5wYXJtLm51bSwg SVNETl9NU05MRU4pOwogICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn4KZHJpdmVycy9pc2RuL2NhcGkvY2FwaWRydi5jOjE4Mjc6Mzogd2FybmluZzog 4oCYc3RybmNweeKAmSBvdXRwdXQgbWF5IGJlIHRydW5jYXRlZCBjb3B5aW5nIDMyIGJ5dGVz IGZyb20gYSBzdHJpbmcgb2YgbGVuZ3RoIDQ5IFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAg IHN0cm5jcHkoYmNoYW4tPm51bSwgYy0+cGFybS5zZXR1cC5waG9uZSwgc2l6ZW9mKGJjaGFu LT5udW0pKTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+CmRyaXZlcnMvaXNkbi9jYXBpL2NhcGlkcnYuYzogSW4gZnVu Y3Rpb24g4oCYY2FwaWRydl9hZGRjb250cuKAmToKZHJpdmVycy9pc2RuL2NhcGkvY2FwaWRy di5jOjIzMDI6Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgbWF5IGJlIHRydW5j YXRlZCBjb3B5aW5nIDE5IGJ5dGVzIGZyb20gYSBzdHJpbmcgb2YgbGVuZ3RoIDE5IFstV3N0 cmluZ29wLXRydW5jYXRpb25dCiAgc3RybmNweShjYXJkLT5pbnRlcmZhY2UuaWQsIGlkLCBz aXplb2YoY2FyZC0+aW50ZXJmYWNlLmlkKSAtIDEpOwogIF5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogIENDIFtNXSAg ZHJpdmVycy9pc2RuL2k0bC9pc2RuX25ldC5vCmRyaXZlcnMvaXNkbi9pNGwvaXNkbl9uZXQu YzogSW4gZnVuY3Rpb24g4oCYaXNkbl9uZXRfZ2V0cGVlcuKAmToKZHJpdmVycy9pc2RuL2k0 bC9pc2RuX25ldC5jOjI5OTc6Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQg Ym91bmQgMzIgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlv bl0KICBzdHJuY3B5KHBob25lLT5waG9uZSwgZGV2LT5udW1baWR4XSwgSVNETl9NU05MRU4p OwogIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4K ICBDQyBbTV0gIGRyaXZlcnMvaXNkbi9pNGwvaXNkbl90dHkubwpkcml2ZXJzL2lzZG4vaTRs L2lzZG5fdHR5LmM6IEluIGZ1bmN0aW9uIOKAmGlzZG5fdHR5X3N1c3BlbmQuaXNyYS4xMuKA mToKZHJpdmVycy9pc2RuL2k0bC9pc2RuX3R0eS5jOjc5MDozOiB3YXJuaW5nOiDigJhzdHJu Y3B54oCZIG91dHB1dCB0cnVuY2F0ZWQgYmVmb3JlIHRlcm1pbmF0aW5nIG51bCBjb3B5aW5n IGFzIG1hbnkgYnl0ZXMgZnJvbSBhIHN0cmluZyBhcyBpdHMgbGVuZ3RoIFstV3N0cmluZ29w LXRydW5jYXRpb25dCiAgIHN0cm5jcHkoJmNtZC5wYXJtLmNtc2cucGFyYVs2XSwgaWQsIGwp OwogICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpkcml2ZXJzL2lz ZG4vaTRsL2lzZG5fdHR5LmM6Nzc4OjY6IG5vdGU6IGxlbmd0aCBjb21wdXRlZCBoZXJlCiAg bCA9IHN0cmxlbihpZCk7CiAgICAgIF5+fn5+fn5+fn4KZHJpdmVycy9pc2RuL2k0bC9pc2Ru X3R0eS5jOiBJbiBmdW5jdGlvbiDigJhpc2RuX3R0eV9yZXN1bWXigJk6CmRyaXZlcnMvaXNk bi9pNGwvaXNkbl90dHkuYzo4ODA6Mzogd2FybmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQg dHJ1bmNhdGVkIGJlZm9yZSB0ZXJtaW5hdGluZyBudWwgY29weWluZyBhcyBtYW55IGJ5dGVz IGZyb20gYSBzdHJpbmcgYXMgaXRzIGxlbmd0aCBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQog ICBzdHJuY3B5KCZjbWQucGFybS5jbXNnLnBhcmFbNl0sIGlkLCBsKTsKICAgXn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KZHJpdmVycy9pc2RuL2k0bC9pc2RuX3R0 eS5jOjgxNzo2OiBub3RlOiBsZW5ndGggY29tcHV0ZWQgaGVyZQogIGwgPSBzdHJsZW4oaWQp OwogICAgICBefn5+fn5+fn5+CmRyaXZlcnMvaXNkbi9pNGwvaXNkbl90dHkuYzogSW4gZnVu Y3Rpb24g4oCYaXNkbl90dHlfc3RhdF9jYWxsYmFja+KAmToKZHJpdmVycy9pc2RuL2k0bC9p c2RuX3R0eS5jOjIwNTQ6NDogd2FybmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgbWF5IGJl IHRydW5jYXRlZCBjb3B5aW5nIDUgYnl0ZXMgZnJvbSBhIHN0cmluZyBvZiBsZW5ndGggNDkg Wy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgIHN0cm5jcHkoaW5mby0+bGFzdF9jYXVzZSwg Yy0+cGFybS5udW0sIDUpOwogICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn4KICBDQyBbTV0gIGRyaXZlcnMvbWQvZG0tbG9nLXVzZXJzcGFjZS1iYXNlLm8K ZHJpdmVycy9tZC9kbS1sb2ctdXNlcnNwYWNlLWJhc2UuYzogSW4gZnVuY3Rpb24g4oCYdXNl cnNwYWNlX2N0cuKAmToKZHJpdmVycy9tZC9kbS1sb2ctdXNlcnNwYWNlLWJhc2UuYzoyMjY6 Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91bmQgMTI5IGVxdWFscyBk ZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAgc3RybmNweShsYy0+ dXVpZCwgYXJndlswXSwgRE1fVVVJRF9MRU4pOwogIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fgogIENDIFtNXSAgZHJpdmVycy9taXNjL2MycG9ydC9jb3JlLm8K SW4gZnVuY3Rpb24g4oCYYzJwb3J0X2RldmljZV9yZWdpc3Rlci5wYXJ0LjLigJksCiAgICBp bmxpbmVkIGZyb20g4oCYYzJwb3J0X2RldmljZV9yZWdpc3RlcuKAmToKZHJpdmVycy9taXNj L2MycG9ydC9jb3JlLmM6OTI5OjI6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVk IGJvdW5kIDMyIGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRp b25dCiAgc3RybmNweShjMmRldi0+bmFtZSwgbmFtZSwgQzJQT1JUX05BTUVfTEVOKTsKICBe fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgQ0MgW01dICBk cml2ZXJzL25ldC9ldGhlcm5ldC9hbWF6b24vZW5hL2VuYV9uZXRkZXYubwpJbiBmdW5jdGlv biDigJhlbmFfY29uZmlnX2hvc3RfaW5mb+KAmSwKICAgIGlubGluZWQgZnJvbSDigJhlbmFf ZGV2aWNlX2luaXTigJkgYXQgZHJpdmVycy9uZXQvZXRoZXJuZXQvYW1hem9uL2VuYS9lbmFf bmV0ZGV2LmM6MjQ4MjoyOgpkcml2ZXJzL25ldC9ldGhlcm5ldC9hbWF6b24vZW5hL2VuYV9u ZXRkZXYuYzoyMjQ3OjI6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0IG1heSBiZSB0 cnVuY2F0ZWQgY29weWluZyAzMSBieXRlcyBmcm9tIGEgc3RyaW5nIG9mIGxlbmd0aCA2NCBb LVdzdHJpbmdvcC10cnVuY2F0aW9uXQogIHN0cm5jcHkoaG9zdF9pbmZvLT5rZXJuZWxfdmVy X3N0ciwgdXRzbmFtZSgpLT52ZXJzaW9uLAogIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICBzaXplb2YoaG9zdF9pbmZvLT5rZXJu ZWxfdmVyX3N0cikgLSAxKTsKICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn4KICBDQyBbTV0gIGRyaXZlcnMvbmV0L2V0aGVybmV0L2ludGVsL2k0MGUvaTQwZV9w dHAubwpJbiBmdW5jdGlvbiDigJhpNDBlX3B0cF9jcmVhdGVfY2xvY2vigJksCiAgICBpbmxp bmVkIGZyb20g4oCYaTQwZV9wdHBfaW5pdOKAmSBhdCBkcml2ZXJzL25ldC9ldGhlcm5ldC9p bnRlbC9pNDBlL2k0MGVfcHRwLmM6NzU1Ojg6CmRyaXZlcnMvbmV0L2V0aGVybmV0L2ludGVs L2k0MGUvaTQwZV9wdHAuYzo2OTc6Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZp ZWQgYm91bmQgMTYgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNh dGlvbl0KICBzdHJuY3B5KHBmLT5wdHBfY2Fwcy5uYW1lLCBpNDBlX2RyaXZlcl9uYW1lLCBz aXplb2YocGYtPnB0cF9jYXBzLm5hbWUpKTsKICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogIENDIFtN XSAgZHJpdmVycy9uZXQvaGFtcmFkaW8vaGRsY2Rydi5vCmRyaXZlcnMvbmV0L2hhbXJhZGlv L2hkbGNkcnYuYzogSW4gZnVuY3Rpb24g4oCYaGRsY2Rydl9pb2N0bC5wYXJ0LjjigJk6CmRy aXZlcnMvbmV0L2hhbXJhZGlvL2hkbGNkcnYuYzo2MTQ6NDogd2FybmluZzog4oCYc3RybmNw eeKAmSBzcGVjaWZpZWQgYm91bmQgMzIgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3Ry aW5nb3AtdHJ1bmNhdGlvbl0KICAgIHN0cm5jcHkoYmkuZGF0YS5kcml2ZXJuYW1lLCBzLT5v cHMtPmRydm5hbWUsCiAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fgogICAgIHNpemVvZihiaS5kYXRhLmRyaXZlcm5hbWUpKTsKICAgICB+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn4KICBDQyBbTV0gIGRyaXZlcnMvbmV0L3dpcmVsZXNzL2Jy b2FkY29tL2JyY204MDIxMS9icmNtZm1hYy9jZmc4MDIxMS5vCkluIGZ1bmN0aW9uIOKAmGJy Y21mX3ZuZHJfaWXigJksCiAgICBpbmxpbmVkIGZyb20g4oCYYnJjbWZfdmlmX3NldF9tZ210 X2ll4oCZIGF0IGRyaXZlcnMvbmV0L3dpcmVsZXNzL2Jyb2FkY29tL2JyY204MDIxMS9icmNt Zm1hYy9jZmc4MDIxMS5jOjQyNzg6MjU6CmRyaXZlcnMvbmV0L3dpcmVsZXNzL2Jyb2FkY29t L2JyY204MDIxMS9icmNtZm1hYy9jZmc4MDIxMS5jOjQxNjc6Mjogd2FybmluZzog4oCYc3Ry bmNweeKAmSBvdXRwdXQgdHJ1bmNhdGVkIGJlZm9yZSB0ZXJtaW5hdGluZyBudWwgY29weWlu ZyAzIGJ5dGVzIGZyb20gYSBzdHJpbmcgb2YgdGhlIHNhbWUgbGVuZ3RoIFstV3N0cmluZ29w LXRydW5jYXRpb25dCiAgc3RybmNweShpZWJ1ZiwgYWRkX2RlbF9jbWQsIFZORFJfSUVfQ01E X0xFTiAtIDEpOwogIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fgpJbiBmdW5jdGlvbiDigJhicmNtZl92bmRyX2ll4oCZLAogICAgaW5saW5lZCBm cm9tIOKAmGJyY21mX3ZpZl9zZXRfbWdtdF9pZeKAmSBhdCBkcml2ZXJzL25ldC93aXJlbGVz cy9icm9hZGNvbS9icmNtODAyMTEvYnJjbWZtYWMvY2ZnODAyMTEuYzo0MzE1OjI1Ogpkcml2 ZXJzL25ldC93aXJlbGVzcy9icm9hZGNvbS9icmNtODAyMTEvYnJjbWZtYWMvY2ZnODAyMTEu Yzo0MTY3OjI6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0IHRydW5jYXRlZCBiZWZv cmUgdGVybWluYXRpbmcgbnVsIGNvcHlpbmcgMyBieXRlcyBmcm9tIGEgc3RyaW5nIG9mIHRo ZSBzYW1lIGxlbmd0aCBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogIHN0cm5jcHkoaWVidWYs IGFkZF9kZWxfY21kLCBWTkRSX0lFX0NNRF9MRU4gLSAxKTsKICBefn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICBDQyBbTV0gIGRyaXZlcnMvbmV0 L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvZncvZGJnLm8KZHJpdmVycy9uZXQvd2lyZWxlc3Mv aW50ZWwvaXdsd2lmaS9mdy9kYmcuYzogSW4gZnVuY3Rpb24g4oCYaXdsX2Z3X2Vycm9yX2R1 bXDigJk6CmRyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVsL2l3bHdpZmkvZncvZGJnLmM6NzUz OjI6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVkIGJvdW5kIDY0IGVxdWFscyBk ZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAgc3RybmNweShkdW1w X2luZm8tPmRldl9odW1hbl9yZWFkYWJsZSwgZndydC0+dHJhbnMtPmNmZy0+bmFtZSwKICBe fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fgogICBzaXplb2YoZHVtcF9pbmZvLT5kZXZfaHVtYW5fcmVhZGFibGUpKTsKICAg fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICBDQyBbTV0gIGRyaXZl cnMvbmV0L3dpcmVsZXNzL2ludGVyc2lsL2hvc3RhcC9ob3N0YXBfaW9jdGwubwpJbiBmdW5j dGlvbiDigJhwcmlzbTJfaW9jdGxfZ2V0X2VuY3J5cHRpb27igJksCiAgICBpbmxpbmVkIGZy b20g4oCYcHJpc20yX2lvY3RsX3ByaXZfaG9zdGFwZC5pc3JhLjE04oCZIGF0IGRyaXZlcnMv bmV0L3dpcmVsZXNzL2ludGVyc2lsL2hvc3RhcC9ob3N0YXBfaW9jdGwuYzozODEzOjksCiAg ICBpbmxpbmVkIGZyb20g4oCYaG9zdGFwX2lvY3Rs4oCZIGF0IGRyaXZlcnMvbmV0L3dpcmVs ZXNzL2ludGVyc2lsL2hvc3RhcC9ob3N0YXBfaW9jdGwuYzo0MDM4OjE0Ogpkcml2ZXJzL25l dC93aXJlbGVzcy9pbnRlcnNpbC9ob3N0YXAvaG9zdGFwX2lvY3RsLmM6MzYxMTozOiB3YXJu aW5nOiDigJhzdHJuY3B54oCZIHNwZWNpZmllZCBib3VuZCAxNiBlcXVhbHMgZGVzdGluYXRp b24gc2l6ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJuY3B5KHBhcmFtLT51LmNy eXB0LmFsZywgKCpjcnlwdCktPm9wcy0+bmFtZSwKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICBIT1NUQVBfQ1JZUFRfQUxHX05BTUVf TEVOKTsKICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgQ0MgW01dICBkcml2ZXJz L25ldC93aXJlbGVzcy9pbnRlcnNpbC9wcmlzbTU0L2lzbF9pb2N0bC5vCmRyaXZlcnMvbmV0 L3dpcmVsZXNzL2ludGVyc2lsL3ByaXNtNTQvaXNsX2lvY3RsLmM6IEluIGZ1bmN0aW9uIOKA mHByaXNtNTRfZ2V0X25hbWXigJk6CmRyaXZlcnMvbmV0L3dpcmVsZXNzL2ludGVyc2lsL3By aXNtNTQvaXNsX2lvY3RsLmM6Mjg0OjI6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0 IG1heSBiZSB0cnVuY2F0ZWQgY29weWluZyAxNiBieXRlcyBmcm9tIGEgc3RyaW5nIG9mIGxl bmd0aCAyOCBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogIHN0cm5jcHkoY3dycSwgY2FwYWJp bGl0aWVzLCBJRk5BTVNJWik7CiAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fgogIENDIFtNXSAgZHJpdmVycy9uZXQvd2lyZWxlc3MvcmVhbHRlay9ydGw4MTh4L3J0 bDgxODcvbGVkcy5vCmRyaXZlcnMvbmV0L3dpcmVsZXNzL3JlYWx0ZWsvcnRsODE4eC9ydGw4 MTg3L2xlZHMuYzogSW4gZnVuY3Rpb24g4oCYcnRsODE4N19yZWdpc3Rlcl9sZWTigJk6CmRy aXZlcnMvbmV0L3dpcmVsZXNzL3JlYWx0ZWsvcnRsODE4eC9ydGw4MTg3L2xlZHMuYzoxNDk6 Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91bmQgMjIgZXF1YWxzIGRl c3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBzdHJuY3B5KGxlZC0+ bmFtZSwgbmFtZSwgc2l6ZW9mKGxlZC0+bmFtZSkpOwogIF5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICBDQyBbTV0gIGRyaXZlcnMvbmV0L3dpcmVsZXNz L3JheV9jcy5vCkluIGZ1bmN0aW9uIOKAmGluaXRfc3RhcnR1cF9wYXJhbXPigJksCiAgICBp bmxpbmVkIGZyb20g4oCYcmF5X2luaXTigJkgYXQgZHJpdmVycy9uZXQvd2lyZWxlc3MvcmF5 X2NzLmM6NTEzOjIsCiAgICBpbmxpbmVkIGZyb20g4oCYcmF5X2NvbmZpZ+KAmSBhdCBkcml2 ZXJzL25ldC93aXJlbGVzcy9yYXlfY3MuYzo0Mjk6NiwKICAgIGlubGluZWQgZnJvbSDigJhy YXlfcHJvYmXigJkgYXQgZHJpdmVycy9uZXQvd2lyZWxlc3MvcmF5X2NzLmM6MzI4Ojk6CmRy aXZlcnMvbmV0L3dpcmVsZXNzL3JheV9jcy5jOjYzODozOiB3YXJuaW5nOiDigJhzdHJuY3B5 4oCZIHNwZWNpZmllZCBib3VuZCAzMiBlcXVhbHMgZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJp bmdvcC10cnVuY2F0aW9uXQogICBzdHJuY3B5KGxvY2FsLT5zcGFybS5iNC5hX2N1cnJlbnRf ZXNzX2lkLCBlc3NpZCwgRVNTSURfU0laRSk7CiAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogIENDICAgICAgZHJpdmVy cy9udm1lL2hvc3QvY29yZS5vCkluIGZ1bmN0aW9uIOKAmG52bWVfaW5pdF9zdWJucW4uaXNy YS40OeKAmSwKICAgIGlubGluZWQgZnJvbSDigJhudm1lX2luaXRfc3Vic3lzdGVt4oCZIGF0 IGRyaXZlcnMvbnZtZS9ob3N0L2NvcmUuYzoyMjA3OjIsCiAgICBpbmxpbmVkIGZyb20g4oCY bnZtZV9pbml0X2lkZW50aWZ54oCZIGF0IGRyaXZlcnMvbnZtZS9ob3N0L2NvcmUuYzoyMzY1 Ojk6CmRyaXZlcnMvbnZtZS9ob3N0L2NvcmUuYzoyMDYxOjM6IHdhcm5pbmc6IOKAmHN0cm5j cHnigJkgb3V0cHV0IG1heSBiZSB0cnVuY2F0ZWQgY29weWluZyAyMjMgYnl0ZXMgZnJvbSBh IHN0cmluZyBvZiBsZW5ndGggMjU1IFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAgIHN0cm5j cHkoc3Vic3lzLT5zdWJucW4sIGlkLT5zdWJucW4sIE5WTUZfTlFOX1NJWkUpOwogICBefn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogIENDIFtN XSAgZHJpdmVycy9udm1lL3RhcmdldC9kaXNjb3Zlcnkubwpkcml2ZXJzL252bWUvdGFyZ2V0 L2Rpc2NvdmVyeS5jOiBJbiBmdW5jdGlvbiDigJhudm1ldF9leGVjdXRlX2lkZW50aWZ5X2Rp c2NfY3RybOKAmToKZHJpdmVycy9udm1lL3RhcmdldC9kaXNjb3ZlcnkuYzoxNjA6Mjogd2Fy bmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgdHJ1bmNhdGVkIGNvcHlpbmcgOCBieXRlcyBm cm9tIGEgc3RyaW5nIG9mIGxlbmd0aCAxNyBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogIHN0 cm5jcHkoKGNoYXIgKilpZC0+ZnIsIFVUU19SRUxFQVNFLCBzaXplb2YoaWQtPmZyKSk7CiAg Xn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgog IENDIFtNXSAgZHJpdmVycy9zY3NpL2FyY21zci9hcmNtc3JfaGJhLm8KZHJpdmVycy9zY3Np L2FyY21zci9hcmNtc3JfaGJhLmM6IEluIGZ1bmN0aW9uIOKAmGFyY21zcl9oYW5kbGVfdmly dHVhbF9jb21tYW5k4oCZOgpkcml2ZXJzL3Njc2kvYXJjbXNyL2FyY21zcl9oYmEuYzoyOTY5 OjM6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0IHRydW5jYXRlZCBiZWZvcmUgdGVy bWluYXRpbmcgbnVsIGNvcHlpbmcgOCBieXRlcyBmcm9tIGEgc3RyaW5nIG9mIHRoZSBzYW1l IGxlbmd0aCBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJuY3B5KCZpbnFkYXRhWzhd LCAiQXJlY2EgICAiLCA4KTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn4KZHJpdmVycy9zY3NpL2FyY21zci9hcmNtc3JfaGJhLmM6Mjk3MTozOiB3YXJuaW5nOiDi gJhzdHJuY3B54oCZIG91dHB1dCB0cnVuY2F0ZWQgYmVmb3JlIHRlcm1pbmF0aW5nIG51bCBj b3B5aW5nIDE2IGJ5dGVzIGZyb20gYSBzdHJpbmcgb2YgdGhlIHNhbWUgbGVuZ3RoIFstV3N0 cmluZ29wLXRydW5jYXRpb25dCiAgIHN0cm5jcHkoJmlucWRhdGFbMTZdLCAiUkFJRCBjb250 cm9sbGVyICIsIDE2KTsKICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+CmRyaXZlcnMvc2NzaS9hcmNtc3IvYXJjbXNyX2hiYS5jOjI5NzM6Mzogd2Fy bmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgdHJ1bmNhdGVkIGJlZm9yZSB0ZXJtaW5hdGlu ZyBudWwgY29weWluZyA0IGJ5dGVzIGZyb20gYSBzdHJpbmcgb2YgdGhlIHNhbWUgbGVuZ3Ro IFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAgIHN0cm5jcHkoJmlucWRhdGFbMzJdLCAiUjAw MSIsIDQpOyAvKiBQcm9kdWN0IFJldmlzaW9uICovCiAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+CiAgQ0MgW01dICBkcml2ZXJzL3Njc2kvbGliZmMvZmNfZWxzY3QubwpJ biBmaWxlIGluY2x1ZGVkIGZyb20gZHJpdmVycy9zY3NpL2xpYmZjL2ZjX2Vsc2N0LmM6MzA6 CkluIGZ1bmN0aW9uIOKAmGZjX2N0X21zX2ZpbGwuaXNyYS444oCZLAogICAgaW5saW5lZCBm cm9tIOKAmGZjX2N0X2ZpbGzigJkgYXQgLi9pbmNsdWRlL3Njc2kvZmNfZW5jb2RlLmg6NTE4 OjgsCiAgICBpbmxpbmVkIGZyb20g4oCYZmNfZWxzY3Rfc2VuZOKAmSBhdCBkcml2ZXJzL3Nj c2kvbGliZmMvZmNfZWxzY3QuYzo1OTo4OgouL2luY2x1ZGUvc2NzaS9mY19lbmNvZGUuaDoy NzU6Mzogd2FybmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgbWF5IGJlIHRydW5jYXRlZCBj b3B5aW5nIDY0IGJ5dGVzIGZyb20gYSBzdHJpbmcgb2YgbGVuZ3RoIDc5IFstV3N0cmluZ29w LXRydW5jYXRpb25dCiAgIHN0cm5jcHkoKGNoYXIgKikmZW50cnktPnZhbHVlLAogICBefn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgIGZjX2hvc3RfbWFudWZhY3R1cmVyKGxw b3J0LT5ob3N0KSwKICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAg IEZDX0ZETUlfSEJBX0FUVFJfTUFOVUZBQ1RVUkVSX0xFTik7CiAgICB+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci4vaW5jbHVkZS9zY3NpL2ZjX2VuY29kZS5oOjI4Nzoz OiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCBtYXkgYmUgdHJ1bmNhdGVkIGNvcHlp bmcgNjQgYnl0ZXMgZnJvbSBhIHN0cmluZyBvZiBsZW5ndGggNzkgWy1Xc3RyaW5nb3AtdHJ1 bmNhdGlvbl0KICAgc3RybmNweSgoY2hhciAqKSZlbnRyeS0+dmFsdWUsCiAgIF5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgZmNfaG9zdF9zZXJpYWxfbnVtYmVyKGxwb3J0 LT5ob3N0KSwKICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICBG Q19GRE1JX0hCQV9BVFRSX1NFUklBTE5VTUJFUl9MRU4pOwogICAgfn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fgogIENDIFtNXSAgZHJpdmVycy9zY3NpL3BtODAwMS9wbTgw MDFfc2FzLm8KZHJpdmVycy9zY3NpL3BtODAwMS9wbTgwMDFfc2FzLmM6IEluIGZ1bmN0aW9u IOKAmHBtODAwMV9pc3N1ZV9zc3BfdG1mLnBhcnQuMTLigJk6CmRyaXZlcnMvc2NzaS9wbTgw MDEvcG04MDAxX3Nhcy5jOjg4NjoyOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIHNwZWNpZmll ZCBib3VuZCA4IGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRp b25dCiAgc3RybmNweSgodTggKikmc3NwX3Rhc2suTFVOLCBsdW4sIDgpOwogIF5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogIENDIFtNXSAgZHJpdmVycy9zY3NpL3Fs YTJ4eHgvcWxhX21yLm8KZHJpdmVycy9zY3NpL3FsYTJ4eHgvcWxhX21yLmM6IEluIGZ1bmN0 aW9uIOKAmHFsYWZ4MDBfZnhfZGlzY+KAmToKZHJpdmVycy9zY3NpL3FsYTJ4eHgvcWxhX21y LmM6MTg4Mjo0OiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCBtYXkgYmUgdHJ1bmNh dGVkIGNvcHlpbmcgNjQgYnl0ZXMgZnJvbSBhIHN0cmluZyBvZiBsZW5ndGggNjQgWy1Xc3Ry aW5nb3AtdHJ1bmNhdGlvbl0KICAgIHN0cm5jcHkocGhvc3RfaW5mby0+bm9kZW5hbWUsCiAg ICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICAgIHBfc3lzaWQtPm5vZGVu YW1lLCBOT0RFTkFNRV9MRU5HVEgpOwogICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+CmRyaXZlcnMvc2NzaS9xbGEyeHh4L3FsYV9tci5jOjE4ODY6NDogd2Fy bmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgbWF5IGJlIHRydW5jYXRlZCBjb3B5aW5nIDY0 IGJ5dGVzIGZyb20gYSBzdHJpbmcgb2YgbGVuZ3RoIDY0IFstV3N0cmluZ29wLXRydW5jYXRp b25dCiAgICBzdHJuY3B5KHBob3N0X2luZm8tPnJlbGVhc2UsCiAgICBefn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgcF9zeXNpZC0+cmVsZWFzZSwgUkVMRUFTRV9MRU5H VEgpOwogICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpkcml2ZXJz L3Njc2kvcWxhMnh4eC9xbGFfbXIuYzoxODg4OjQ6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkg b3V0cHV0IG1heSBiZSB0cnVuY2F0ZWQgY29weWluZyA2NCBieXRlcyBmcm9tIGEgc3RyaW5n IG9mIGxlbmd0aCA2NCBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICAgc3RybmNweShwaG9z dF9pbmZvLT52ZXJzaW9uLAogICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAg ICAgIHBfc3lzaWQtPnZlcnNpb24sIFZFUlNJT05fTEVOR1RIKTsKICAgICAgICB+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KZHJpdmVycy9zY3NpL3FsYTJ4eHgvcWxhX21y LmM6MTg5MDo0OiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCBtYXkgYmUgdHJ1bmNh dGVkIGNvcHlpbmcgNjQgYnl0ZXMgZnJvbSBhIHN0cmluZyBvZiBsZW5ndGggNjQgWy1Xc3Ry aW5nb3AtdHJ1bmNhdGlvbl0KICAgIHN0cm5jcHkocGhvc3RfaW5mby0+bWFjaGluZSwKICAg IF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgICBwX3N5c2lkLT5tYWNoaW5l LCBNQUNISU5FX0xFTkdUSCk7CiAgICAgICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+CmRyaXZlcnMvc2NzaS9xbGEyeHh4L3FsYV9tci5jOjE4OTI6NDogd2FybmluZzog 4oCYc3RybmNweeKAmSBvdXRwdXQgbWF5IGJlIHRydW5jYXRlZCBjb3B5aW5nIDY0IGJ5dGVz IGZyb20gYSBzdHJpbmcgb2YgbGVuZ3RoIDY0IFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAg ICBzdHJuY3B5KHBob3N0X2luZm8tPmRvbWFpbm5hbWUsCiAgICBefn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+CiAgICAgICAgcF9zeXNpZC0+ZG9tYWlubmFtZSwgRE9NTkFNRV9M RU5HVEgpOwogICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgog IENDIFtNXSAgZHJpdmVycy9zY3NpL2lwcy5vCmRyaXZlcnMvc2NzaS9pcHMuYzogSW4gZnVu Y3Rpb24g4oCYaXBzX3NlbmRfY21k4oCZOgpkcml2ZXJzL3Njc2kvaXBzLmM6MzUxODo2OiB3 YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCB0cnVuY2F0ZWQgYmVmb3JlIHRlcm1pbmF0 aW5nIG51bCBjb3B5aW5nIDggYnl0ZXMgZnJvbSBhIHN0cmluZyBvZiB0aGUgc2FtZSBsZW5n dGggWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgICAgc3RybmNweShpbnF1aXJ5LlZlbmRv cklkLCAiSUJNICAgICAiLAogICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+CiAgICAgICA4KTsKICAgICAgIH5+CmRyaXZlcnMvc2NzaS9pcHMuYzozNTIwOjY6 IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0IHRydW5jYXRlZCBiZWZvcmUgdGVybWlu YXRpbmcgbnVsIGNvcHlpbmcgMTYgYnl0ZXMgZnJvbSBhIHN0cmluZyBvZiB0aGUgc2FtZSBs ZW5ndGggWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgICAgc3RybmNweShpbnF1aXJ5LlBy b2R1Y3RJZCwKICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgICJTRVJW RVJBSUQgICAgICAgIiwgMTYpOwogICAgICAgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KZHJp dmVycy9zY3NpL2lwcy5jOjM1MjI6Njogd2FybmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQg dHJ1bmNhdGVkIGJlZm9yZSB0ZXJtaW5hdGluZyBudWwgY29weWluZyA0IGJ5dGVzIGZyb20g YSBzdHJpbmcgb2YgdGhlIHNhbWUgbGVuZ3RoIFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAg ICAgIHN0cm5jcHkoaW5xdWlyeS5Qcm9kdWN0UmV2aXNpb25MZXZlbCwKICAgICAgXn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICAgIjEuMDAiLCA0KTsKICAg ICAgIH5+fn5+fn5+fn4KZHJpdmVycy9zY3NpL2lwcy5jOiBJbiBmdW5jdGlvbiDigJhpcHNf aW5xdWlyeeKAmToKZHJpdmVycy9zY3NpL2lwcy5jOjQwMzk6Mjogd2FybmluZzog4oCYc3Ry bmNweeKAmSBvdXRwdXQgdHJ1bmNhdGVkIGJlZm9yZSB0ZXJtaW5hdGluZyBudWwgY29weWlu ZyA4IGJ5dGVzIGZyb20gYSBzdHJpbmcgb2YgdGhlIHNhbWUgbGVuZ3RoIFstV3N0cmluZ29w LXRydW5jYXRpb25dCiAgc3RybmNweShpbnF1aXJ5LlZlbmRvcklkLCAiSUJNICAgICAiLCA4 KTsKICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmRyaXZlcnMv c2NzaS9pcHMuYzo0MDQwOjI6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0IHRydW5j YXRlZCBiZWZvcmUgdGVybWluYXRpbmcgbnVsIGNvcHlpbmcgMTYgYnl0ZXMgZnJvbSBhIHN0 cmluZyBvZiB0aGUgc2FtZSBsZW5ndGggWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBzdHJu Y3B5KGlucXVpcnkuUHJvZHVjdElkLCAiU0VSVkVSQUlEICAgICAgICIsIDE2KTsKICBefn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpkcml2ZXJz L3Njc2kvaXBzLmM6NDA0MToyOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCB0cnVu Y2F0ZWQgYmVmb3JlIHRlcm1pbmF0aW5nIG51bCBjb3B5aW5nIDQgYnl0ZXMgZnJvbSBhIHN0 cmluZyBvZiB0aGUgc2FtZSBsZW5ndGggWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBzdHJu Y3B5KGlucXVpcnkuUHJvZHVjdFJldmlzaW9uTGV2ZWwsICIxLjAwIiwgNCk7CiAgXn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmRyaXZlcnMvc2Nz aS9pcHMuYzogSW4gZnVuY3Rpb24g4oCYaXBzX3dyaXRlX2RyaXZlcl9zdGF0dXPigJk6CmRy aXZlcnMvc2NzaS9pcHMuYzo1NjI1OjI6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0 IHRydW5jYXRlZCBiZWZvcmUgdGVybWluYXRpbmcgbnVsIGNvcHlpbmcgNCBieXRlcyBmcm9t IGEgc3RyaW5nIG9mIHRoZSBzYW1lIGxlbmd0aCBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQog IHN0cm5jcHkoKGNoYXIgKikgaGEtPm52cmFtLT5kcml2ZXJfaGlnaCwgSVBTX1ZFUlNJT05f SElHSCwgNCk7CiAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fgpkcml2ZXJzL3Njc2kvaXBzLmM6NTYyNjoyOiB3YXJuaW5n OiDigJhzdHJuY3B54oCZIG91dHB1dCB0cnVuY2F0ZWQgYmVmb3JlIHRlcm1pbmF0aW5nIG51 bCBjb3B5aW5nIDQgYnl0ZXMgZnJvbSBhIHN0cmluZyBvZiB0aGUgc2FtZSBsZW5ndGggWy1X c3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBzdHJuY3B5KChjaGFyICopIGhhLT5udnJhbS0+ZHJp dmVyX2xvdywgSVBTX1ZFUlNJT05fTE9XLCA0KTsKICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpkcml2ZXJzL3Njc2kvaXBz LmM6IEluIGZ1bmN0aW9uIOKAmGlwc19nZXRfYmlvc192ZXJzaW9u4oCZOgpkcml2ZXJzL3Nj c2kvaXBzLmM6MjI0MzoyOiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCB0cnVuY2F0 ZWQgYmVmb3JlIHRlcm1pbmF0aW5nIG51bCBjb3B5aW5nIDggYnl0ZXMgZnJvbSBhIHN0cmlu ZyBvZiB0aGUgc2FtZSBsZW5ndGggWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBzdHJuY3B5 KGhhLT5iaW9zX3ZlcnNpb24sICIgICAgICAgPyIsIDgpOwogIF5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KSW4gZnVuY3Rpb24g4oCYaXBzX3dyaXRlX2RyaXZl cl9zdGF0dXMuY29uc3Rwcm9w4oCZLAogICAgaW5saW5lZCBmcm9tIOKAmGlwc19oYWluaXTi gJkgYXQgZHJpdmVycy9zY3NpL2lwcy5jOjI0MzQ6NywKICAgIGlubGluZWQgZnJvbSDigJhp cHNfaW5pdF9waGFzZTLigJkgYXQgZHJpdmVycy9zY3NpL2lwcy5jOjcwODE6NzoKZHJpdmVy cy9zY3NpL2lwcy5jOjU2Mjc6Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgbWF5 IGJlIHRydW5jYXRlZCBjb3B5aW5nIDQgYnl0ZXMgZnJvbSBhIHN0cmluZyBvZiBsZW5ndGgg NyBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogIHN0cm5jcHkoKGNoYXIgKikgaGEtPm52cmFt LT5iaW9zX2hpZ2gsIGhhLT5iaW9zX3ZlcnNpb24sIDQpOwogIF5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmRyaXZlcnMvc2Nz aS9pcHMuYzo1NjI4OjI6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVkIGJvdW5k IDQgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBz dHJuY3B5KChjaGFyICopIGhhLT5udnJhbS0+Ymlvc19sb3csIGhhLT5iaW9zX3ZlcnNpb24g KyA0LCA0KTsKICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fgogIENDIFtNXSAgZHJpdmVycy9zY3NpLzN3LXNhcy5vCmRy aXZlcnMvc2NzaS8zdy1zYXMuYzogSW4gZnVuY3Rpb24g4oCYdHdsX3Jlc2V0X3NlcXVlbmNl 4oCZOgpkcml2ZXJzL3Njc2kvM3ctc2FzLmM6MTMyODozOiB3YXJuaW5nOiDigJhzdHJuY3B5 4oCZIG91dHB1dCB0cnVuY2F0ZWQgYmVmb3JlIHRlcm1pbmF0aW5nIG51bCBjb3B5aW5nIDEx IGJ5dGVzIGZyb20gYSBzdHJpbmcgb2YgdGhlIHNhbWUgbGVuZ3RoIFstV3N0cmluZ29wLXRy dW5jYXRpb25dCiAgIHN0cm5jcHkodHdfZGV2LT50d19jb21wYXRfaW5mby5kcml2ZXJfdmVy c2lvbiwgVFdfRFJJVkVSX1ZFUlNJT04sIHN0cmxlbihUV19EUklWRVJfVkVSU0lPTikpOwog ICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogIENDIFtNXSAgZHJp dmVycy9zdGFnaW5nL2tzNzAxMC9rc193bGFuX25ldC5vCmRyaXZlcnMvc3RhZ2luZy9rczcw MTAva3Nfd2xhbl9uZXQuYzogSW4gZnVuY3Rpb24g4oCYa3Nfd2xhbl9nZXRfbmlja+KAmToK ZHJpdmVycy9zdGFnaW5nL2tzNzAxMC9rc193bGFuX25ldC5jOjM4NToyOiB3YXJuaW5nOiDi gJhzdHJuY3B54oCZIG91dHB1dCBtYXkgYmUgdHJ1bmNhdGVkIGNvcHlpbmcgMTYgYnl0ZXMg ZnJvbSBhIHN0cmluZyBvZiBsZW5ndGggMzIgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBz dHJuY3B5KGV4dHJhLCBwcml2LT5uaWNrLCAxNik7CiAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+CiAgQ0MgW01dICBkcml2ZXJzL3N0YWdpbmcvcnRsODE4OGV1L29zX2RlcC9p b2N0bF9saW51eC5vCmRyaXZlcnMvc3RhZ2luZy9ydGw4MTg4ZXUvb3NfZGVwL2lvY3RsX2xp bnV4LmM6IEluIGZ1bmN0aW9uIOKAmHJ0d193eF9zZXRfZW5jX2V4dOKAmToKZHJpdmVycy9z dGFnaW5nL3J0bDgxODhldS9vc19kZXAvaW9jdGxfbGludXguYzoxOTIzOjI6IHdhcm5pbmc6 IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVkIGJvdW5kIDE2IGVxdWFscyBkZXN0aW5hdGlvbiBz aXplIFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAgc3RybmNweSgoY2hhciAqKXBhcmFtLT51 LmNyeXB0LmFsZywgYWxnX25hbWUsIElFRUVfQ1JZUFRfQUxHX05BTUVfTEVOKTsKICBefn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+CiAgQ0MgW01dICBkcml2ZXJzL3N0YWdpbmcvcnRsODE5MmUvcnRsbGli X3NvZnRtYWMubwpJbiBmdW5jdGlvbiDigJhydGxsaWJfc29mdG1hY19uZXdfbmV04oCZLAog ICAgaW5saW5lZCBmcm9tIOKAmHJ0bGxpYl9zb2Z0bWFjX2NoZWNrX2FsbF9uZXRz4oCZIGF0 IGRyaXZlcnMvc3RhZ2luZy9ydGw4MTkyZS9ydGxsaWJfc29mdG1hYy5jOjE3NzI6NDoKZHJp dmVycy9zdGFnaW5nL3J0bDgxOTJlL3J0bGxpYl9zb2Z0bWFjLmM6MTY4Nzo1OiB3YXJuaW5n OiDigJhzdHJuY3B54oCZIG91dHB1dCBtYXkgYmUgdHJ1bmNhdGVkIGNvcHlpbmcgMzIgYnl0 ZXMgZnJvbSBhIHN0cmluZyBvZiBsZW5ndGggMzIgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0K ICAgICBzdHJuY3B5KHRtcF9zc2lkLCBpZWVlLT5jdXJyZW50X25ldHdvcmsuc3NpZCwKICAg ICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAg SVdfRVNTSURfTUFYX1NJWkUpOwogICAgICB+fn5+fn5+fn5+fn5+fn5+fn4KZHJpdmVycy9z dGFnaW5nL3J0bDgxOTJlL3J0bGxpYl9zb2Z0bWFjLmM6MTY5NDo1OiB3YXJuaW5nOiDigJhz dHJuY3B54oCZIG91dHB1dCBtYXkgYmUgdHJ1bmNhdGVkIGNvcHlpbmcgMzIgYnl0ZXMgZnJv bSBhIHN0cmluZyBvZiBsZW5ndGggMzIgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgICBz dHJuY3B5KGllZWUtPmN1cnJlbnRfbmV0d29yay5zc2lkLCB0bXBfc3NpZCwKICAgICBefn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgSVdfRVNT SURfTUFYX1NJWkUpOwogICAgICB+fn5+fn5+fn5+fn5+fn5+fn4KZHJpdmVycy9zdGFnaW5n L3J0bDgxOTJlL3J0bGxpYl9zb2Z0bWFjLmM6IEluIGZ1bmN0aW9uIOKAmHJ0bGxpYl9zb2Z0 bWFjX25ld19uZXTigJk6CmRyaXZlcnMvc3RhZ2luZy9ydGw4MTkyZS9ydGxsaWJfc29mdG1h Yy5jOjE2ODc6NTogd2FybmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgbWF5IGJlIHRydW5j YXRlZCBjb3B5aW5nIDMyIGJ5dGVzIGZyb20gYSBzdHJpbmcgb2YgbGVuZ3RoIDMyIFstV3N0 cmluZ29wLXRydW5jYXRpb25dCiAgICAgc3RybmNweSh0bXBfc3NpZCwgaWVlZS0+Y3VycmVu dF9uZXR3b3JrLnNzaWQsCiAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+CiAgICAgIElXX0VTU0lEX01BWF9TSVpFKTsKICAgICAgfn5+fn5+fn5+ fn5+fn5+fn5+CmRyaXZlcnMvc3RhZ2luZy9ydGw4MTkyZS9ydGxsaWJfc29mdG1hYy5jOjE2 OTQ6NTogd2FybmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgbWF5IGJlIHRydW5jYXRlZCBj b3B5aW5nIDMyIGJ5dGVzIGZyb20gYSBzdHJpbmcgb2YgbGVuZ3RoIDMyIFstV3N0cmluZ29w LXRydW5jYXRpb25dCiAgICAgc3RybmNweShpZWVlLT5jdXJyZW50X25ldHdvcmsuc3NpZCwg dG1wX3NzaWQsCiAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+CiAgICAgIElXX0VTU0lEX01BWF9TSVpFKTsKICAgICAgfn5+fn5+fn5+fn5+fn5+ fn5+CiAKICBDQyBbTV0gIGRyaXZlcnMvc3RhZ2luZy9ydGw4MTkydS9pZWVlODAyMTEvaWVl ZTgwMjExX3NvZnRtYWMubwpkcml2ZXJzL3N0YWdpbmcvcnRsODE5MnUvaWVlZTgwMjExL2ll ZWU4MDIxMV9zb2Z0bWFjLmM6IEluIGZ1bmN0aW9uIOKAmGllZWU4MDIxMV9zb2Z0bWFjX25l d19uZXTigJk6CmRyaXZlcnMvc3RhZ2luZy9ydGw4MTkydS9pZWVlODAyMTEvaWVlZTgwMjEx X3NvZnRtYWMuYzoxNDYzOjY6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0IG1heSBi ZSB0cnVuY2F0ZWQgY29weWluZyAzMiBieXRlcyBmcm9tIGEgc3RyaW5nIG9mIGxlbmd0aCAz MiBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICAgICBzdHJuY3B5KHRtcF9zc2lkLCBpZWVl LT5jdXJyZW50X25ldHdvcmsuc3NpZCwgSVdfRVNTSURfTUFYX1NJWkUpOwogICAgICBefn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+CmRyaXZlcnMvc3RhZ2luZy9ydGw4MTkydS9pZWVlODAyMTEvaWVlZTgwMjExX3Nv ZnRtYWMuYzoxNDY4OjU6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0IG1heSBiZSB0 cnVuY2F0ZWQgY29weWluZyAzMiBieXRlcyBmcm9tIGEgc3RyaW5nIG9mIGxlbmd0aCAzMiBb LVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICAgIHN0cm5jcHkoaWVlZS0+Y3VycmVudF9uZXR3 b3JrLnNzaWQsIHRtcF9zc2lkLCBJV19FU1NJRF9NQVhfU0laRSk7CiAgICAgXn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fgpJbiBmdW5jdGlvbiDigJhpZWVlODAyMTFfc29mdG1hY19uZXdfbmV04oCZLAogICAgaW5s aW5lZCBmcm9tIOKAmGllZWU4MDIxMV9zb2Z0bWFjX2NoZWNrX2FsbF9uZXRz4oCZIGF0IGRy aXZlcnMvc3RhZ2luZy9ydGw4MTkydS9pZWVlODAyMTEvaWVlZTgwMjExX3NvZnRtYWMuYzox NTMxOjQ6CmRyaXZlcnMvc3RhZ2luZy9ydGw4MTkydS9pZWVlODAyMTEvaWVlZTgwMjExX3Nv ZnRtYWMuYzoxNDYzOjY6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0IG1heSBiZSB0 cnVuY2F0ZWQgY29weWluZyAzMiBieXRlcyBmcm9tIGEgc3RyaW5nIG9mIGxlbmd0aCAzMiBb LVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICAgICBzdHJuY3B5KHRtcF9zc2lkLCBpZWVlLT5j dXJyZW50X25ldHdvcmsuc3NpZCwgSVdfRVNTSURfTUFYX1NJWkUpOwogICAgICBefn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+CmRyaXZlcnMvc3RhZ2luZy9ydGw4MTkydS9pZWVlODAyMTEvaWVlZTgwMjExX3NvZnRt YWMuYzoxNDY4OjU6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0IG1heSBiZSB0cnVu Y2F0ZWQgY29weWluZyAzMiBieXRlcyBmcm9tIGEgc3RyaW5nIG9mIGxlbmd0aCAzMiBbLVdz dHJpbmdvcC10cnVuY2F0aW9uXQogICAgIHN0cm5jcHkoaWVlZS0+Y3VycmVudF9uZXR3b3Jr LnNzaWQsIHRtcF9zc2lkLCBJV19FU1NJRF9NQVhfU0laRSk7CiAgICAgXn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgog IENDIFtNXSAgZHJpdmVycy9zdGFnaW5nL3J0bDg3MTIvcnRsODcxeF9pb2N0bF9saW51eC5v CmRyaXZlcnMvc3RhZ2luZy9ydGw4NzEyL3J0bDg3MXhfaW9jdGxfbGludXguYzogSW4gZnVu Y3Rpb24g4oCYcjg3MXhfd3hfc2V0X2VuY19leHTigJk6CmRyaXZlcnMvc3RhZ2luZy9ydGw4 NzEyL3J0bDg3MXhfaW9jdGxfbGludXguYzoxNzkyOjI6IHdhcm5pbmc6IOKAmHN0cm5jcHni gJkgc3BlY2lmaWVkIGJvdW5kIDE2IGVxdWFscyBkZXN0aW5hdGlvbiBzaXplIFstV3N0cmlu Z29wLXRydW5jYXRpb25dCiAgc3RybmNweSgoY2hhciAqKXBhcmFtLT51LmNyeXB0LmFsZywg YWxnX25hbWUsIElFRUVfQ1JZUFRfQUxHX05BTUVfTEVOKTsKICBefn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ CiAgQ0MgW01dICBkcml2ZXJzL3N0YWdpbmcvcnRzNTIwOC9ydHN4X3Njc2kubwpJbiBmdW5j dGlvbiDigJhpbnF1aXJ54oCZLAogICAgaW5saW5lZCBmcm9tIOKAmHJ0c3hfc2NzaV9oYW5k bGVy4oCZIGF0IGRyaXZlcnMvc3RhZ2luZy9ydHM1MjA4L3J0c3hfc2NzaS5jOjM0Nzc6MTI6 CmRyaXZlcnMvc3RhZ2luZy9ydHM1MjA4L3J0c3hfc2NzaS5jOjUzOTozOiB3YXJuaW5nOiDi gJhzdHJuY3B54oCZIG91dHB1dCB0cnVuY2F0ZWQgY29weWluZyAyOCBieXRlcyBmcm9tIGEg c3RyaW5nIG9mIGxlbmd0aCAyOSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJuY3B5 KGJ1ZiArIDgsIGlucXVpcnlfc3RyaW5nLCBzZW5kYnl0ZXMgLSA4KTsKICAgXn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KZHJpdmVycy9zdGFnaW5n L3J0czUyMDgvcnRzeF9zY3NpLmM6NTM5OjM6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0 cHV0IHRydW5jYXRlZCBjb3B5aW5nIGJldHdlZW4gMSBhbmQgMjcgYnl0ZXMgZnJvbSBhIHN0 cmluZyBvZiBsZW5ndGggMjkgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBDQyBbTV0gIGRy aXZlcnMvc3RhZ2luZy9zcGVha3VwL2tvYmplY3RzLm8KZHJpdmVycy9zdGFnaW5nL3NwZWFr dXAva29iamVjdHMuYzogSW4gZnVuY3Rpb24g4oCYcHVuY19zdG9yZeKAmToKZHJpdmVycy9z dGFnaW5nL3NwZWFrdXAva29iamVjdHMuYzo1MjI6Mjogd2FybmluZzog4oCYc3RybmNweeKA mSBvdXRwdXQgdHJ1bmNhdGVkIGJlZm9yZSB0ZXJtaW5hdGluZyBudWwgY29weWluZyBhcyBt YW55IGJ5dGVzIGZyb20gYSBzdHJpbmcgYXMgaXRzIGxlbmd0aCBbLVdzdHJpbmdvcC10cnVu Y2F0aW9uXQogIHN0cm5jcHkocHVuY19idWYsIGJ1ZiwgeCk7CiAgXn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fgpkcml2ZXJzL3N0YWdpbmcvc3BlYWt1cC9rb2JqZWN0cy5jOjUwNDo2OiBu b3RlOiBsZW5ndGggY29tcHV0ZWQgaGVyZQogIHggPSBzdHJsZW4oYnVmKTsKICAgICAgXn5+ fn5+fn5+fn4KZHJpdmVycy9zdGFnaW5nL3NwZWFrdXAva29iamVjdHMuYzogSW4gZnVuY3Rp b24g4oCYc3ludGhfc3RvcmXigJk6CmRyaXZlcnMvc3RhZ2luZy9zcGVha3VwL2tvYmplY3Rz LmM6MzkxOjI6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0IHRydW5jYXRlZCBiZWZv cmUgdGVybWluYXRpbmcgbnVsIGNvcHlpbmcgYXMgbWFueSBieXRlcyBmcm9tIGEgc3RyaW5n IGFzIGl0cyBsZW5ndGggWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBzdHJuY3B5KG5ld19z eW50aF9uYW1lLCBidWYsIGxlbik7CiAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+CmRyaXZlcnMvc3RhZ2luZy9zcGVha3VwL2tvYmplY3RzLmM6Mzg4Ojg6IG5vdGU6IGxl bmd0aCBjb21wdXRlZCBoZXJlCiAgbGVuID0gc3RybGVuKGJ1Zik7CiAgICAgICAgXn5+fn5+ fn5+fn4KICBDQyBbTV0gIGRyaXZlcnMvdHR5L3NlcmlhbC9rZ2Rib2Mubwpkcml2ZXJzL3R0 eS9zZXJpYWwva2dkYm9jLmM6IEluIGZ1bmN0aW9uIOKAmGtnZGJvY19vcHRpb25fc2V0dXAu Y29uc3Rwcm9w4oCZOgpkcml2ZXJzL3R0eS9zZXJpYWwva2dkYm9jLmM6MTM3OjI6IHdhcm5p bmc6IOKAmHN0cmNweeKAmSBzb3VyY2UgYXJndW1lbnQgaXMgdGhlIHNhbWUgYXMgZGVzdGlu YXRpb24gWy1XcmVzdHJpY3RdCiAgc3RyY3B5KGNvbmZpZywgb3B0KTsKICBefn5+fn5+fn5+ fn5+fn5+fn5+CiAgQ0MgW01dICBkcml2ZXJzL3ZpZGVvL2ZiZGV2L3V2ZXNhZmIubwpkcml2 ZXJzL3ZpZGVvL2ZiZGV2L3V2ZXNhZmIuYzogSW4gZnVuY3Rpb24g4oCYdXZlc2FmYl92YmVf Z2V0aW5mb+KAmToKZHJpdmVycy92aWRlby9mYmRldi91dmVzYWZiLmM6NDI1OjI6IHdhcm5p bmc6IOKAmHN0cm5jcHnigJkgb3V0cHV0IHRydW5jYXRlZCBiZWZvcmUgdGVybWluYXRpbmcg bnVsIGNvcHlpbmcgNCBieXRlcyBmcm9tIGEgc3RyaW5nIG9mIHRoZSBzYW1lIGxlbmd0aCBb LVdzdHJpbmdvcC10cnVuY2F0aW9uXQogIHN0cm5jcHkocGFyLT52YmVfaWIudmJlX3NpZ25h dHVyZSwgIlZCRTIiLCA0KTsKICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn4KZHJpdmVycy92aWRlby9mYmRldi91dmVzYWZiLmM6IEluIGZ1bmN0aW9u IOKAmHY4NmRfc3RvcmXigJk6CmRyaXZlcnMvdmlkZW8vZmJkZXYvdXZlc2FmYi5jOjE4NzM6 Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91bmQgNDA5NiBlcXVhbHMg ZGVzdGluYXRpb24gc2l6ZSBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogIHN0cm5jcHkodjg2 ZF9wYXRoLCBidWYsIFBBVEhfTUFYKTsKICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn4KICBDQyBbTV0gIGRyaXZlcnMvdmlkZW8vZmJkZXYvdmZiLm8KICBDQyAgICAgIGRy aXZlcnMvdmlkZW8vaGRtaS5vCmRyaXZlcnMvdmlkZW8vaGRtaS5jOiBJbiBmdW5jdGlvbiDi gJhoZG1pX3NwZF9pbmZvZnJhbWVfaW5pdOKAmToKZHJpdmVycy92aWRlby9oZG1pLmM6MTc0 OjI6IHdhcm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVkIGJvdW5kIDggZXF1YWxzIGRl c3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICBzdHJuY3B5KGZyYW1l LT52ZW5kb3IsIHZlbmRvciwgc2l6ZW9mKGZyYW1lLT52ZW5kb3IpKTsKICBefn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpkcml2ZXJzL3Zp ZGVvL2hkbWkuYzoxNzU6Mjogd2FybmluZzog4oCYc3RybmNweeKAmSBzcGVjaWZpZWQgYm91 bmQgMTYgZXF1YWxzIGRlc3RpbmF0aW9uIHNpemUgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0K ICBzdHJuY3B5KGZyYW1lLT5wcm9kdWN0LCBwcm9kdWN0LCBzaXplb2YoZnJhbWUtPnByb2R1 Y3QpKTsKICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fgogIENDIFtNXSAgc291bmQvcGNpL3RyaWRlbnQvdHJpZGVudC5vCnNvdW5k L3BjaS90cmlkZW50L3RyaWRlbnQuYzogSW4gZnVuY3Rpb24g4oCYc25kX3RyaWRlbnRfcHJv YmXigJk6CnNvdW5kL3BjaS90cmlkZW50L3RyaWRlbnQuYzoxMjY6Mjogd2FybmluZzog4oCY c3RyY2F04oCZIGFjY2Vzc2luZyAxNyBvciBtb3JlIGJ5dGVzIGF0IG9mZnNldHMgMzYgYW5k IDIwIG1heSBvdmVybGFwIDEgYnl0ZSBhdCBvZmZzZXQgMzYgWy1XcmVzdHJpY3RdCiAgc3Ry Y2F0KGNhcmQtPnNob3J0bmFtZSwgY2FyZC0+ZHJpdmVyKTsKICBefn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgQ0MgW01dICBzb3VuZC94ODYvaW50ZWxfaGRtaV9h dWRpby5vCnNvdW5kL3g4Ni9pbnRlbF9oZG1pX2F1ZGlvLmM6IEluIGZ1bmN0aW9uIOKAmGhk bWlfbHBlX2F1ZGlvX3Byb2Jl4oCZOgpzb3VuZC94ODYvaW50ZWxfaGRtaV9hdWRpby5jOjE4 NTc6Mzogd2FybmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgdHJ1bmNhdGVkIGJlZm9yZSB0 ZXJtaW5hdGluZyBudWwgY29weWluZyBhcyBtYW55IGJ5dGVzIGZyb20gYSBzdHJpbmcgYXMg aXRzIGxlbmd0aCBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJuY3B5KHBjbS0+bmFt ZSwgY2FyZC0+c2hvcnRuYW1lLCBzdHJsZW4oY2FyZC0+c2hvcnRuYW1lKSk7CiAgIF5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fgogIENDIFtNXSAgbmV0L2NvcmUvcGt0Z2VuLm8KbmV0L2NvcmUvcGt0Z2VuLmM6IEluIGZ1 bmN0aW9uIOKAmHBrdGdlbl9pZl93cml0ZeKAmToKbmV0L2NvcmUvcGt0Z2VuLmM6MTQxOTo0 OiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCBtYXkgYmUgdHJ1bmNhdGVkIGNvcHlp bmcgYmV0d2VlbiAwIGFuZCAzMSBieXRlcyBmcm9tIGEgc3RyaW5nIG9mIGxlbmd0aCAxMjcg Wy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgIHN0cm5jcHkocGt0X2Rldi0+c3JjX21heCwg YnVmLCBsZW4pOwogICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KbmV0 L2NvcmUvcGt0Z2VuLmM6MTM5OTo0OiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCBt YXkgYmUgdHJ1bmNhdGVkIGNvcHlpbmcgYmV0d2VlbiAwIGFuZCAzMSBieXRlcyBmcm9tIGEg c3RyaW5nIG9mIGxlbmd0aCAxMjcgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgIHN0cm5j cHkocGt0X2Rldi0+c3JjX21pbiwgYnVmLCBsZW4pOwogICAgXn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn4KbmV0L2NvcmUvcGt0Z2VuLmM6MTI5MDo0OiB3YXJuaW5nOiDi gJhzdHJuY3B54oCZIG91dHB1dCBtYXkgYmUgdHJ1bmNhdGVkIGNvcHlpbmcgYmV0d2VlbiAw IGFuZCAzMSBieXRlcyBmcm9tIGEgc3RyaW5nIG9mIGxlbmd0aCAxMjcgWy1Xc3RyaW5nb3At dHJ1bmNhdGlvbl0KICAgIHN0cm5jcHkocGt0X2Rldi0+ZHN0X21heCwgYnVmLCBsZW4pOwog ICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KbmV0L2NvcmUvcGt0Z2Vu LmM6MTI2ODo0OiB3YXJuaW5nOiDigJhzdHJuY3B54oCZIG91dHB1dCBtYXkgYmUgdHJ1bmNh dGVkIGNvcHlpbmcgYmV0d2VlbiAwIGFuZCAzMSBieXRlcyBmcm9tIGEgc3RyaW5nIG9mIGxl bmd0aCAxMjcgWy1Xc3RyaW5nb3AtdHJ1bmNhdGlvbl0KICAgIHN0cm5jcHkocGt0X2Rldi0+ ZHN0X21pbiwgYnVmLCBsZW4pOwogICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn4KICBDQyBbTV0gIG5ldC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2NvcmUubwpuZXQv bmV0ZmlsdGVyL2lwc2V0L2lwX3NldF9jb3JlLmM6IEluIGZ1bmN0aW9uIOKAmGlwX3NldF9y ZW5hbWXigJk6Cm5ldC9uZXRmaWx0ZXIvaXBzZXQvaXBfc2V0X2NvcmUuYzoxMTcwOjI6IHdh cm5pbmc6IOKAmHN0cm5jcHnigJkgc3BlY2lmaWVkIGJvdW5kIDMyIGVxdWFscyBkZXN0aW5h dGlvbiBzaXplIFstV3N0cmluZ29wLXRydW5jYXRpb25dCiAgc3RybmNweShzZXQtPm5hbWUs IG5hbWUyLCBJUFNFVF9NQVhOQU1FTEVOKTsKICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+CiAgQ0MgICAgICBsaWIva29iamVjdC5vCkluIGZ1bmN0aW9u IOKAmGZpbGxfa29ial9wYXRo4oCZLAogICAgaW5saW5lZCBmcm9tIOKAmGtvYmplY3RfZ2V0 X3BhdGjigJkgYXQgbGliL2tvYmplY3QuYzoxNTU6MjoKbGliL2tvYmplY3QuYzoxMjg6Mzog d2FybmluZzog4oCYc3RybmNweeKAmSBvdXRwdXQgdHJ1bmNhdGVkIGJlZm9yZSB0ZXJtaW5h dGluZyBudWwgY29weWluZyBhcyBtYW55IGJ5dGVzIGZyb20gYSBzdHJpbmcgYXMgaXRzIGxl bmd0aCBbLVdzdHJpbmdvcC10cnVuY2F0aW9uXQogICBzdHJuY3B5KHBhdGggKyBsZW5ndGgs IGtvYmplY3RfbmFtZShwYXJlbnQpLCBjdXIpOwogICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmxpYi9rb2JqZWN0LmM6IEluIGZ1bmN0aW9u IOKAmGtvYmplY3RfZ2V0X3BhdGjigJk6CmxpYi9rb2JqZWN0LmM6MTI1OjEzOiBub3RlOiBs ZW5ndGggY29tcHV0ZWQgaGVyZQogICBpbnQgY3VyID0gc3RybGVuKGtvYmplY3RfbmFtZShw YXJlbnQpKTsKICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICBI T1NUQ0MgIHNjcmlwdHMvdW5pZmRlZgpzY3JpcHRzL3VuaWZkZWYuYzogSW4gZnVuY3Rpb24g 4oCYTXBhc3PigJk6CnNjcmlwdHMvdW5pZmRlZi5jOjQ1MzoyODogd2FybmluZzog4oCYc3Ry bmNweeKAmSBvdXRwdXQgdHJ1bmNhdGVkIGJlZm9yZSB0ZXJtaW5hdGluZyBudWwgY29weWlu ZyA0IGJ5dGVzIGZyb20gYSBzdHJpbmcgb2YgdGhlIHNhbWUgbGVuZ3RoIFstV3N0cmluZ29w LXRydW5jYXRpb25dCiBzdGF0aWMgdm9pZCBNcGFzcyAodm9pZCkgeyBzdHJuY3B5KGtleXdv cmQsICJpZiAgIiwgNCk7IFBlbGlmKCk7IH0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCg== --------------8B19A8388711CFBAB3842726--