From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-oi1-f194.google.com (mail-oi1-f194.google.com [209.85.167.194]) (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 E54F8FC0A for ; Fri, 9 Jan 2026 03:30:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.194 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767929459; cv=none; b=VlU3XI8Bpj4pGjMWfVnksDP8RjSM4Ja+CcQ9fmjbfvdhty5oXoBn0zwsiWjNCAo1tCOpFazR6wHLTvFrWTzreQLXBQjbXCSxWucEgojbkC7C9wgLz8gLhqan1k3xjuvLq75xvxpmpCJRyMHaWQtLIVdJcfFk3krO9ZE2WifRXl0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767929459; c=relaxed/simple; bh=IS0z/HR6KbApa3Mi4MVUcKe5M56OFFF8OZujR6Czfhs=; h=Message-ID:Date:Content-Type:MIME-Version:From:To:Subject: In-Reply-To:References; b=rImKCjAcYB+Il0tpZRkxZ97R/2+DRhQIfCallFEXXmqrk3p5zA2setJDJ73+k4ZisHF94u2+IjkMKF7RMo1BFRGzt1gDJE5EWliAP1XksTKbhUAvP1TOsHQuIALKKpyTRAbwMuQg4q4Sybzr6kQFlghXz1uIFAFG7l066igKef4= 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=Gvn0iz+n; arc=none smtp.client-ip=209.85.167.194 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="Gvn0iz+n" Received: by mail-oi1-f194.google.com with SMTP id 5614622812f47-455749af2e1so1756866b6e.1 for ; Thu, 08 Jan 2026 19:30:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1767929456; x=1768534256; darn=vger.kernel.org; h=reply-to:references:in-reply-to:subject:to:from:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=IS0z/HR6KbApa3Mi4MVUcKe5M56OFFF8OZujR6Czfhs=; b=Gvn0iz+nMDVLbVsFY+LYMyQ9Ib7aL8C7tOAiCakbsF8he9ZMgrasaUz0MCp+Dxfhok V2NizwVflr/FBX/C2xCMvvif8H/60dFdlNIDo4lqudqfUh0D4HtKXtcyRSmYQONDGAjM zifB+fUcoteWmF5ca8UUpbKmmiUL+LMs11cMRYH+ZmOPEmvQ64/fGKMpx0XqWCF7U0VS D3jJknh7Cok0DLoMRQRXfhj1cqeHsmAxFWhXlYpwUfsjwPKCGYZH34ANRplS9CNjpZuf xqFBPQxLK5ESC+iEz3pl7YLlb7c2icljcdkTMJlgUVM8i0Nq6+FT4rSA8ilROiRCZZT6 VACQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767929456; x=1768534256; h=reply-to:references:in-reply-to:subject:to:from:mime-version:date :message-id:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=IS0z/HR6KbApa3Mi4MVUcKe5M56OFFF8OZujR6Czfhs=; b=vZDL0r4D0LoliLzp/q+ivrnqdHqqTOmoS3BPU50M3Mpa/1NaGxki06/vCHJ4bQoYBE 8BHMbD7oJivRnMJPq2U3UEsBVs8ar4Q0c2MpGDLy82fXkqo6HHMxs7PqrVQf3nZqtMQk ZnLWqjdxRrftF/E53X13LxWdD4FyubymEtwb4vIg2GS2AedZAshvic9xU2wbz8F72DAJ WG+2xAiHCwjTebHy40MRWMHRx5Ij7l9KjEUipGaW+uSJlwLc1saqQb60OsCM7BX1nrFe 9Pg9DtGrIAKQvH4g0qYZX11UIUpWcOFUiPIdRpqK5PspqmuD2r8Ar30qBYY21li4pBqI 5GxA== X-Gm-Message-State: AOJu0Yx0t9iGGY+9pTezqcWJUwG03afBGVI3Rohm5yPGLqLqT345D0iG IIToi+udof2c8bB8Cp1b4/DPyNeDapcTYM4IYv+9zr/dZMxyYx4KhlRup3NVElgu X-Gm-Gg: AY/fxX4LCsMeVGvkmwoiw2/WsvMMbjLZBq6ZjhxpLOnL15khoiMLt9WinCE9T2sKo3I tEJoRu54+iA3v1phRYZIUPd3HC0rcBc1GnIyFHMfFpK/F3dqGnrsfEwmwyNhSpGWNl8S4hkC4+I lfHCMV/TeR29wt+oDd6Prc6yiXTEht58Tsc6FxMq6Spmv4HBmk2wn0jbuTvW+87Ei04wSYbrJbN ba6lsctx0LLvjPfWhRnJhSNObAKhqyXJjRRzvHbiMW9Aafh3dBrBzUs8WY6NV2hZl/gS5T5IkWb kp0P0exzhAnSoZze7qclu9DpwfuoHYEMtQDSt9g7wXccvprabkfyeCM/JbC6aoi+bqFtivg5n3D TJSl/Nstrv1LwMD4vSkisuYRBfGNbGUNUmoNb+kjzKd7zX0gvIkiKEQbwLA7JRiiYphZINgAKTa jYaa67RCY46FwUikBXCA== X-Google-Smtp-Source: AGHT+IETFi+rYHPy3AewafiQ287LhP4bR7tkSPXwN4Wtv8DZH/+7NUKCpcY57QS9mDC8B46/ociMrQ== X-Received: by 2002:a05:6808:669a:10b0:459:b3ff:f856 with SMTP id 5614622812f47-45a6b767149mr3617498b6e.12.1767929456529; Thu, 08 Jan 2026 19:30:56 -0800 (PST) Received: from [172.17.0.2] ([52.176.124.184]) by smtp.gmail.com with ESMTPSA id 5614622812f47-45a5dfb6256sm4450122b6e.0.2026.01.08.19.30.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 08 Jan 2026 19:30:55 -0800 (PST) Message-ID: <6960766f.050a0220.6a74c.fca5@mx.google.com> Date: Thu, 08 Jan 2026 19:30:55 -0800 (PST) Content-Type: multipart/mixed; boundary="===============2452490163778901093==" 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, w.7erry@foxmail.com Subject: RE: Bluetooth: Perform careful capability checks in hci_sock_bind() In-Reply-To: References: Reply-To: linux-bluetooth@vger.kernel.org --===============2452490163778901093== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhpcyBpcyBhdXRvbWF0ZWQgZW1haWwgYW5kIHBsZWFzZSBkbyBub3QgcmVwbHkgdG8gdGhpcyBl bWFpbCEKCkRlYXIgc3VibWl0dGVyLAoKVGhhbmsgeW91IGZvciBzdWJtaXR0aW5nIHRoZSBwYXRj aGVzIHRvIHRoZSBsaW51eCBibHVldG9vdGggbWFpbGluZyBsaXN0LgpUaGlzIGlzIGEgQ0kgdGVz dCByZXN1bHRzIHdpdGggeW91ciBwYXRjaCBzZXJpZXM6ClBXIExpbms6aHR0cHM6Ly9wYXRjaHdv cmsua2VybmVsLm9yZy9wcm9qZWN0L2JsdWV0b290aC9saXN0Lz9zZXJpZXM9MTA0MDE5MwoKLS0t VGVzdCByZXN1bHQtLS0KClRlc3QgU3VtbWFyeToKQ2hlY2tQYXRjaCAgICAgICAgICAgICAgICAg ICAgUEVORElORyAgIDAuMzcgc2Vjb25kcwpHaXRMaW50ICAgICAgICAgICAgICAgICAgICAgICBQ RU5ESU5HICAgMC4yNyBzZWNvbmRzClN1YmplY3RQcmVmaXggICAgICAgICAgICAgICAgIFBBU1Mg ICAgICAwLjA4IHNlY29uZHMKQnVpbGRLZXJuZWwgICAgICAgICAgICAgICAgICAgRkFJTCAgICAg IDE5LjcxIHNlY29uZHMKQ2hlY2tBbGxXYXJuaW5nICAgICAgICAgICAgICAgRkFJTCAgICAgIDIx LjkwIHNlY29uZHMKQ2hlY2tTcGFyc2UgICAgICAgICAgICAgICAgICAgRkFJTCAgICAgIDI0LjI5 IHNlY29uZHMKQnVpbGRLZXJuZWwzMiAgICAgICAgICAgICAgICAgRkFJTCAgICAgIDE5LjcxIHNl Y29uZHMKVGVzdFJ1bm5lclNldHVwICAgICAgICAgICAgICAgRkFJTCAgICAgIDUyNS4yMSBzZWNv bmRzClRlc3RSdW5uZXJfbDJjYXAtdGVzdGVyICAgICAgIEZBSUwgICAgICAwLjExIHNlY29uZHMK VGVzdFJ1bm5lcl9pc28tdGVzdGVyICAgICAgICAgRkFJTCAgICAgIDAuMTAgc2Vjb25kcwpUZXN0 UnVubmVyX2JuZXAtdGVzdGVyICAgICAgICBGQUlMICAgICAgMC4xMCBzZWNvbmRzClRlc3RSdW5u ZXJfbWdtdC10ZXN0ZXIgICAgICAgIEZBSUwgICAgICAwLjExIHNlY29uZHMKVGVzdFJ1bm5lcl9y ZmNvbW0tdGVzdGVyICAgICAgRkFJTCAgICAgIDAuMTEgc2Vjb25kcwpUZXN0UnVubmVyX3Njby10 ZXN0ZXIgICAgICAgICBGQUlMICAgICAgMC4xMCBzZWNvbmRzClRlc3RSdW5uZXJfaW9jdGwtdGVz dGVyICAgICAgIEZBSUwgICAgICAwLjEwIHNlY29uZHMKVGVzdFJ1bm5lcl9tZXNoLXRlc3RlciAg ICAgICAgRkFJTCAgICAgIDAuMTAgc2Vjb25kcwpUZXN0UnVubmVyX3NtcC10ZXN0ZXIgICAgICAg ICBGQUlMICAgICAgMC4xMCBzZWNvbmRzClRlc3RSdW5uZXJfdXNlcmNoYW4tdGVzdGVyICAgIEZB SUwgICAgICAwLjEwIHNlY29uZHMKSW5jcmVtZW50YWxCdWlsZCAgICAgICAgICAgICAgUEVORElO RyAgIDAuNDcgc2Vjb25kcwoKRGV0YWlscwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK VGVzdDogQ2hlY2tQYXRjaCAtIFBFTkRJTkcKRGVzYzogUnVuIGNoZWNrcGF0Y2gucGwgc2NyaXB0 Ck91dHB1dDoKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpUZXN0OiBHaXRMaW50IC0g UEVORElORwpEZXNjOiBSdW4gZ2l0bGludApPdXRwdXQ6CgojIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMKVGVzdDogQnVpbGRLZXJuZWwgLSBGQUlMCkRlc2M6IEJ1aWxkIEtlcm5lbCBmb3Ig Qmx1ZXRvb3RoCk91dHB1dDoKCkluIGZpbGUgaW5jbHVkZWQgZnJvbSAuL2luY2x1ZGUvbGludXgv Y2FwYWJpbGl0eS5oOjE2LAogICAgICAgICAgICAgICAgIGZyb20gLi9pbmNsdWRlL2xpbnV4L2Zz Lmg6MjUsCiAgICAgICAgICAgICAgICAgZnJvbSAuL2luY2x1ZGUvbGludXgvY29tcGF0Lmg6MTcs CiAgICAgICAgICAgICAgICAgZnJvbSBuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MjY6Cm5ldC9i bHVldG9vdGgvaGNpX3NvY2suYzogSW4gZnVuY3Rpb24g4oCYaGNpX3NvY2tfYmluZOKAmToKLi9p bmNsdWRlL3VhcGkvbGludXgvY2FwYWJpbGl0eS5oOjIwNTozMDogd2FybmluZzogcGFzc2luZyBh cmd1bWVudCAxIG9mIOKAmHNrX2NhcGFibGXigJkgbWFrZXMgcG9pbnRlciBmcm9tIGludGVnZXIg d2l0aG91dCBhIGNhc3QgWy1XaW50LWNvbnZlcnNpb25dCiAgMjA1IHwgI2RlZmluZSBDQVBfTkVU X0FETUlOICAgICAgICAxMgogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn4K ICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGludApuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MTI2MjoxODog bm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmENBUF9ORVRfQURNSU7igJkKIDEyNjIgfCAg IGlmIChza19jYXBhYmxlKENBUF9ORVRfQURNSU4pKQogICAgICB8ICAgICAgICAgICAgICAgICAg Xn5+fn5+fn5+fn5+fgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gLi9pbmNsdWRlL25ldC9ibHVldG9v dGgvYmx1ZXRvb3RoLmg6MzAsCiAgICAgICAgICAgICAgICAgZnJvbSBuZXQvYmx1ZXRvb3RoL2hj aV9zb2NrLmM6MzI6Ci4vaW5jbHVkZS9uZXQvc29jay5oOjMwMTk6MzY6IG5vdGU6IGV4cGVjdGVk IOKAmGNvbnN0IHN0cnVjdCBzb2NrICrigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYaW50 4oCZCiAzMDE5IHwgYm9vbCBza19jYXBhYmxlKGNvbnN0IHN0cnVjdCBzb2NrICpzaywgaW50IGNh cCk7CiAgICAgIHwgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5efgpuZXQvYmx1 ZXRvb3RoL2hjaV9zb2NrLmM6MTI2Mjo3OiBlcnJvcjogdG9vIGZldyBhcmd1bWVudHMgdG8gZnVu Y3Rpb24g4oCYc2tfY2FwYWJsZeKAmQogMTI2MiB8ICAgaWYgKHNrX2NhcGFibGUoQ0FQX05FVF9B RE1JTikpCiAgICAgIHwgICAgICAgXn5+fn5+fn5+fgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gLi9p bmNsdWRlL25ldC9ibHVldG9vdGgvYmx1ZXRvb3RoLmg6MzAsCiAgICAgICAgICAgICAgICAgZnJv bSBuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MzI6Ci4vaW5jbHVkZS9uZXQvc29jay5oOjMwMTk6 Njogbm90ZTogZGVjbGFyZWQgaGVyZQogMzAxOSB8IGJvb2wgc2tfY2FwYWJsZShjb25zdCBzdHJ1 Y3Qgc29jayAqc2ssIGludCBjYXApOwogICAgICB8ICAgICAgXn5+fn5+fn5+fgpJbiBmaWxlIGlu Y2x1ZGVkIGZyb20gLi9pbmNsdWRlL2xpbnV4L2NhcGFiaWxpdHkuaDoxNiwKICAgICAgICAgICAg ICAgICBmcm9tIC4vaW5jbHVkZS9saW51eC9mcy5oOjI1LAogICAgICAgICAgICAgICAgIGZyb20g Li9pbmNsdWRlL2xpbnV4L2NvbXBhdC5oOjE3LAogICAgICAgICAgICAgICAgIGZyb20gbmV0L2Js dWV0b290aC9oY2lfc29jay5jOjI2OgouL2luY2x1ZGUvdWFwaS9saW51eC9jYXBhYmlsaXR5Lmg6 MjA1OjMwOiB3YXJuaW5nOiBwYXNzaW5nIGFyZ3VtZW50IDEgb2Yg4oCYc2tfY2FwYWJsZeKAmSBt YWtlcyBwb2ludGVyIGZyb20gaW50ZWdlciB3aXRob3V0IGEgY2FzdCBbLVdpbnQtY29udmVyc2lv bl0KICAyMDUgfCAjZGVmaW5lIENBUF9ORVRfQURNSU4gICAgICAgIDEyCiAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBefgogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfAogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50Cm5ldC9ibHVl dG9vdGgvaGNpX3NvY2suYzoxNDMwOjE4OiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8g4oCY Q0FQX05FVF9BRE1JTuKAmQogMTQzMCB8ICAgaWYgKHNrX2NhcGFibGUoQ0FQX05FVF9BRE1JTikp CiAgICAgIHwgICAgICAgICAgICAgICAgICBefn5+fn5+fn5+fn5+CkluIGZpbGUgaW5jbHVkZWQg ZnJvbSAuL2luY2x1ZGUvbmV0L2JsdWV0b290aC9ibHVldG9vdGguaDozMCwKICAgICAgICAgICAg ICAgICBmcm9tIG5ldC9ibHVldG9vdGgvaGNpX3NvY2suYzozMjoKLi9pbmNsdWRlL25ldC9zb2Nr Lmg6MzAxOTozNjogbm90ZTogZXhwZWN0ZWQg4oCYY29uc3Qgc3RydWN0IHNvY2sgKuKAmSBidXQg YXJndW1lbnQgaXMgb2YgdHlwZSDigJhpbnTigJkKIDMwMTkgfCBib29sIHNrX2NhcGFibGUoY29u c3Qgc3RydWN0IHNvY2sgKnNrLCBpbnQgY2FwKTsKICAgICAgfCAgICAgICAgICAgICAgICAgfn5+ fn5+fn5+fn5+fn5+fn5+fl5+Cm5ldC9ibHVldG9vdGgvaGNpX3NvY2suYzoxNDMwOjc6IGVycm9y OiB0b28gZmV3IGFyZ3VtZW50cyB0byBmdW5jdGlvbiDigJhza19jYXBhYmxl4oCZCiAxNDMwIHwg ICBpZiAoc2tfY2FwYWJsZShDQVBfTkVUX0FETUlOKSkKICAgICAgfCAgICAgICBefn5+fn5+fn5+ CkluIGZpbGUgaW5jbHVkZWQgZnJvbSAuL2luY2x1ZGUvbmV0L2JsdWV0b290aC9ibHVldG9vdGgu aDozMCwKICAgICAgICAgICAgICAgICBmcm9tIG5ldC9ibHVldG9vdGgvaGNpX3NvY2suYzozMjoK Li9pbmNsdWRlL25ldC9zb2NrLmg6MzAxOTo2OiBub3RlOiBkZWNsYXJlZCBoZXJlCiAzMDE5IHwg Ym9vbCBza19jYXBhYmxlKGNvbnN0IHN0cnVjdCBzb2NrICpzaywgaW50IGNhcCk7CiAgICAgIHwg ICAgICBefn5+fn5+fn5+Cm1ha2VbNF06ICoqKiBbc2NyaXB0cy9NYWtlZmlsZS5idWlsZDoyODc6 IG5ldC9ibHVldG9vdGgvaGNpX3NvY2sub10gRXJyb3IgMQptYWtlWzRdOiAqKiogV2FpdGluZyBm b3IgdW5maW5pc2hlZCBqb2JzLi4uLgptYWtlWzNdOiAqKiogW3NjcmlwdHMvTWFrZWZpbGUuYnVp bGQ6NTU2OiBuZXQvYmx1ZXRvb3RoXSBFcnJvciAyCm1ha2VbMl06ICoqKiBbc2NyaXB0cy9NYWtl ZmlsZS5idWlsZDo1NTY6IG5ldF0gRXJyb3IgMgptYWtlWzJdOiAqKiogV2FpdGluZyBmb3IgdW5m aW5pc2hlZCBqb2JzLi4uLgptYWtlWzFdOiAqKiogWy9naXRodWIvd29ya3NwYWNlL3NyYy9zcmMv TWFrZWZpbGU6MjAxMDogLl0gRXJyb3IgMgptYWtlOiAqKiogW01ha2VmaWxlOjI0ODogX19zdWIt bWFrZV0gRXJyb3IgMgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKVGVzdDogQ2hlY2tB bGxXYXJuaW5nIC0gRkFJTApEZXNjOiBSdW4gbGludXgga2VybmVsIHdpdGggYWxsIHdhcm5pbmcg ZW5hYmxlZApPdXRwdXQ6CgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gLi9pbmNsdWRlL2xpbnV4L2Nh cGFiaWxpdHkuaDoxNiwKICAgICAgICAgICAgICAgICBmcm9tIC4vaW5jbHVkZS9saW51eC9mcy5o OjI1LAogICAgICAgICAgICAgICAgIGZyb20gLi9pbmNsdWRlL2xpbnV4L2NvbXBhdC5oOjE3LAog ICAgICAgICAgICAgICAgIGZyb20gbmV0L2JsdWV0b290aC9oY2lfc29jay5jOjI2OgpuZXQvYmx1 ZXRvb3RoL2hjaV9zb2NrLmM6IEluIGZ1bmN0aW9uIOKAmGhjaV9zb2NrX2JpbmTigJk6Ci4vaW5j bHVkZS91YXBpL2xpbnV4L2NhcGFiaWxpdHkuaDoyMDU6MzA6IHdhcm5pbmc6IHBhc3NpbmcgYXJn dW1lbnQgMSBvZiDigJhza19jYXBhYmxl4oCZIG1ha2VzIHBvaW50ZXIgZnJvbSBpbnRlZ2VyIHdp dGhvdXQgYSBjYXN0IFstV2ludC1jb252ZXJzaW9uXQogIDIwNSB8ICNkZWZpbmUgQ0FQX05FVF9B RE1JTiAgICAgICAgMTIKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+CiAg ICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CiAgICAgIHwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBpbnQKbmV0L2JsdWV0b290aC9oY2lfc29jay5jOjEyNjI6MTg6IG5v dGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhDQVBfTkVUX0FETUlO4oCZCiAxMjYyIHwgICBp ZiAoc2tfY2FwYWJsZShDQVBfTkVUX0FETUlOKSkKICAgICAgfCAgICAgICAgICAgICAgICAgIF5+ fn5+fn5+fn5+fn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC4vaW5jbHVkZS9uZXQvYmx1ZXRvb3Ro L2JsdWV0b290aC5oOjMwLAogICAgICAgICAgICAgICAgIGZyb20gbmV0L2JsdWV0b290aC9oY2lf c29jay5jOjMyOgouL2luY2x1ZGUvbmV0L3NvY2suaDozMDE5OjM2OiBub3RlOiBleHBlY3RlZCDi gJhjb25zdCBzdHJ1Y3Qgc29jayAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlIOKAmGludOKA mQogMzAxOSB8IGJvb2wgc2tfY2FwYWJsZShjb25zdCBzdHJ1Y3Qgc29jayAqc2ssIGludCBjYXAp OwogICAgICB8ICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+Xn4KbmV0L2JsdWV0 b290aC9oY2lfc29jay5jOjEyNjI6NzogZXJyb3I6IHRvbyBmZXcgYXJndW1lbnRzIHRvIGZ1bmN0 aW9uIOKAmHNrX2NhcGFibGXigJkKIDEyNjIgfCAgIGlmIChza19jYXBhYmxlKENBUF9ORVRfQURN SU4pKQogICAgICB8ICAgICAgIF5+fn5+fn5+fn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC4vaW5j bHVkZS9uZXQvYmx1ZXRvb3RoL2JsdWV0b290aC5oOjMwLAogICAgICAgICAgICAgICAgIGZyb20g bmV0L2JsdWV0b290aC9oY2lfc29jay5jOjMyOgouL2luY2x1ZGUvbmV0L3NvY2suaDozMDE5OjY6 IG5vdGU6IGRlY2xhcmVkIGhlcmUKIDMwMTkgfCBib29sIHNrX2NhcGFibGUoY29uc3Qgc3RydWN0 IHNvY2sgKnNrLCBpbnQgY2FwKTsKICAgICAgfCAgICAgIF5+fn5+fn5+fn4KSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC4vaW5jbHVkZS9saW51eC9jYXBhYmlsaXR5Lmg6MTYsCiAgICAgICAgICAgICAg ICAgZnJvbSAuL2luY2x1ZGUvbGludXgvZnMuaDoyNSwKICAgICAgICAgICAgICAgICBmcm9tIC4v aW5jbHVkZS9saW51eC9jb21wYXQuaDoxNywKICAgICAgICAgICAgICAgICBmcm9tIG5ldC9ibHVl dG9vdGgvaGNpX3NvY2suYzoyNjoKLi9pbmNsdWRlL3VhcGkvbGludXgvY2FwYWJpbGl0eS5oOjIw NTozMDogd2FybmluZzogcGFzc2luZyBhcmd1bWVudCAxIG9mIOKAmHNrX2NhcGFibGXigJkgbWFr ZXMgcG9pbnRlciBmcm9tIGludGVnZXIgd2l0aG91dCBhIGNhc3QgWy1XaW50LWNvbnZlcnNpb25d CiAgMjA1IHwgI2RlZmluZSBDQVBfTkVUX0FETUlOICAgICAgICAxMgogICAgICB8ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXn4KICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludApuZXQvYmx1ZXRv b3RoL2hjaV9zb2NrLmM6MTQzMDoxODogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmENB UF9ORVRfQURNSU7igJkKIDE0MzAgfCAgIGlmIChza19jYXBhYmxlKENBUF9ORVRfQURNSU4pKQog ICAgICB8ICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fgpJbiBmaWxlIGluY2x1ZGVkIGZy b20gLi9pbmNsdWRlL25ldC9ibHVldG9vdGgvYmx1ZXRvb3RoLmg6MzAsCiAgICAgICAgICAgICAg ICAgZnJvbSBuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MzI6Ci4vaW5jbHVkZS9uZXQvc29jay5o OjMwMTk6MzY6IG5vdGU6IGV4cGVjdGVkIOKAmGNvbnN0IHN0cnVjdCBzb2NrICrigJkgYnV0IGFy Z3VtZW50IGlzIG9mIHR5cGUg4oCYaW504oCZCiAzMDE5IHwgYm9vbCBza19jYXBhYmxlKGNvbnN0 IHN0cnVjdCBzb2NrICpzaywgaW50IGNhcCk7CiAgICAgIHwgICAgICAgICAgICAgICAgIH5+fn5+ fn5+fn5+fn5+fn5+fn5efgpuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MTQzMDo3OiBlcnJvcjog dG9vIGZldyBhcmd1bWVudHMgdG8gZnVuY3Rpb24g4oCYc2tfY2FwYWJsZeKAmQogMTQzMCB8ICAg aWYgKHNrX2NhcGFibGUoQ0FQX05FVF9BRE1JTikpCiAgICAgIHwgICAgICAgXn5+fn5+fn5+fgpJ biBmaWxlIGluY2x1ZGVkIGZyb20gLi9pbmNsdWRlL25ldC9ibHVldG9vdGgvYmx1ZXRvb3RoLmg6 MzAsCiAgICAgICAgICAgICAgICAgZnJvbSBuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MzI6Ci4v aW5jbHVkZS9uZXQvc29jay5oOjMwMTk6Njogbm90ZTogZGVjbGFyZWQgaGVyZQogMzAxOSB8IGJv b2wgc2tfY2FwYWJsZShjb25zdCBzdHJ1Y3Qgc29jayAqc2ssIGludCBjYXApOwogICAgICB8ICAg ICAgXn5+fn5+fn5+fgptYWtlWzRdOiAqKiogW3NjcmlwdHMvTWFrZWZpbGUuYnVpbGQ6Mjg3OiBu ZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLm9dIEVycm9yIDEKbWFrZVs0XTogKioqIFdhaXRpbmcgZm9y IHVuZmluaXNoZWQgam9icy4uLi4KbWFrZVszXTogKioqIFtzY3JpcHRzL01ha2VmaWxlLmJ1aWxk OjU1NjogbmV0L2JsdWV0b290aF0gRXJyb3IgMgptYWtlWzJdOiAqKiogW3NjcmlwdHMvTWFrZWZp bGUuYnVpbGQ6NTU2OiBuZXRdIEVycm9yIDIKbWFrZVsyXTogKioqIFdhaXRpbmcgZm9yIHVuZmlu aXNoZWQgam9icy4uLi4KbWFrZVsxXTogKioqIFsvZ2l0aHViL3dvcmtzcGFjZS9zcmMvc3JjL01h a2VmaWxlOjIwMTA6IC5dIEVycm9yIDIKbWFrZTogKioqIFtNYWtlZmlsZToyNDg6IF9fc3ViLW1h a2VdIEVycm9yIDIKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjClRlc3Q6IENoZWNrU3Bh cnNlIC0gRkFJTApEZXNjOiBSdW4gc3BhcnNlIHRvb2wgd2l0aCBsaW51eCBrZXJuZWwKT3V0cHV0 OgoKbmV0L2JsdWV0b290aC9hZl9ibHVldG9vdGguYzoyNDg6MjU6IHdhcm5pbmc6IGNvbnRleHQg aW1iYWxhbmNlIGluICdidF9hY2NlcHRfZW5xdWV1ZScgLSBkaWZmZXJlbnQgbG9jayBjb250ZXh0 cyBmb3IgYmFzaWMgYmxvY2sKbmV0L2JsdWV0b290aC9oY2lfY29yZS5jOjg1Ojk6IHdhcm5pbmc6 IGNvbnRleHQgaW1iYWxhbmNlIGluICdfX2hjaV9kZXZfZ2V0JyAtIGRpZmZlcmVudCBsb2NrIGNv bnRleHRzIGZvciBiYXNpYyBibG9jawpuZXQvYmx1ZXRvb3RoL2hjaV9jb3JlLmM6IG5vdGU6IGlu IGluY2x1ZGVkIGZpbGUgKHRocm91Z2ggaW5jbHVkZS9saW51eC9ub3RpZmllci5oLCBpbmNsdWRl L2xpbnV4L21lbW9yeV9ob3RwbHVnLmgsIGluY2x1ZGUvbGludXgvbW16b25lLmgsIGluY2x1ZGUv bGludXgvZ2ZwLmgsIGluY2x1ZGUvbGludXgveGFycmF5LmgsIGluY2x1ZGUvbGludXgvcmFkaXgt dHJlZS5oLCAuLi4pOgouL2luY2x1ZGUvbGludXgvc3JjdS5oOjM4OTo5OiB3YXJuaW5nOiBjb250 ZXh0IGltYmFsYW5jZSBpbiAnaGNpX2Rldl9wdXRfc3JjdScgLSB1bmV4cGVjdGVkIHVubG9jawpJ biBmaWxlIGluY2x1ZGVkIGZyb20gLi9pbmNsdWRlL2xpbnV4L2NhcGFiaWxpdHkuaDoxNiwKICAg ICAgICAgICAgICAgICBmcm9tIC4vaW5jbHVkZS9saW51eC9mcy5oOjI1LAogICAgICAgICAgICAg ICAgIGZyb20gLi9pbmNsdWRlL2xpbnV4L2NvbXBhdC5oOjE3LAogICAgICAgICAgICAgICAgIGZy b20gbmV0L2JsdWV0b290aC9oY2lfc29jay5jOjI2OgpuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6 IEluIGZ1bmN0aW9uIOKAmGhjaV9zb2NrX2JpbmTigJk6Ci4vaW5jbHVkZS91YXBpL2xpbnV4L2Nh cGFiaWxpdHkuaDoyMDU6MzA6IHdhcm5pbmc6IHBhc3NpbmcgYXJndW1lbnQgMSBvZiDigJhza19j YXBhYmxl4oCZIG1ha2VzIHBvaW50ZXIgZnJvbSBpbnRlZ2VyIHdpdGhvdXQgYSBjYXN0IFstV2lu dC1jb252ZXJzaW9uXQogIDIwNSB8ICNkZWZpbmUgQ0FQX05FVF9BRE1JTiAgICAgICAgMTIKICAg ICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF5+CiAgICAgIHwgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp bnQKbmV0L2JsdWV0b290aC9oY2lfc29jay5jOjEyNjI6MTg6IG5vdGU6IGluIGV4cGFuc2lvbiBv ZiBtYWNybyDigJhDQVBfTkVUX0FETUlO4oCZCiAxMjYyIHwgICBpZiAoc2tfY2FwYWJsZShDQVBf TkVUX0FETUlOKSkKICAgICAgfCAgICAgICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn4KSW4gZmls ZSBpbmNsdWRlZCBmcm9tIC4vaW5jbHVkZS9uZXQvYmx1ZXRvb3RoL2JsdWV0b290aC5oOjMwLAog ICAgICAgICAgICAgICAgIGZyb20gbmV0L2JsdWV0b290aC9oY2lfc29jay5jOjMyOgouL2luY2x1 ZGUvbmV0L3NvY2suaDozMDE5OjM2OiBub3RlOiBleHBlY3RlZCDigJhjb25zdCBzdHJ1Y3Qgc29j ayAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0eXBlIOKAmGludOKAmQogMzAxOSB8IGJvb2wgc2tf Y2FwYWJsZShjb25zdCBzdHJ1Y3Qgc29jayAqc2ssIGludCBjYXApOwogICAgICB8ICAgICAgICAg ICAgICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+Xn4KbmV0L2JsdWV0b290aC9oY2lfc29jay5jOjEy NjI6NzogZXJyb3I6IHRvbyBmZXcgYXJndW1lbnRzIHRvIGZ1bmN0aW9uIOKAmHNrX2NhcGFibGXi gJkKIDEyNjIgfCAgIGlmIChza19jYXBhYmxlKENBUF9ORVRfQURNSU4pKQogICAgICB8ICAgICAg IF5+fn5+fn5+fn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC4vaW5jbHVkZS9uZXQvYmx1ZXRvb3Ro L2JsdWV0b290aC5oOjMwLAogICAgICAgICAgICAgICAgIGZyb20gbmV0L2JsdWV0b290aC9oY2lf c29jay5jOjMyOgouL2luY2x1ZGUvbmV0L3NvY2suaDozMDE5OjY6IG5vdGU6IGRlY2xhcmVkIGhl cmUKIDMwMTkgfCBib29sIHNrX2NhcGFibGUoY29uc3Qgc3RydWN0IHNvY2sgKnNrLCBpbnQgY2Fw KTsKICAgICAgfCAgICAgIF5+fn5+fn5+fn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC4vaW5jbHVk ZS9saW51eC9jYXBhYmlsaXR5Lmg6MTYsCiAgICAgICAgICAgICAgICAgZnJvbSAuL2luY2x1ZGUv bGludXgvZnMuaDoyNSwKICAgICAgICAgICAgICAgICBmcm9tIC4vaW5jbHVkZS9saW51eC9jb21w YXQuaDoxNywKICAgICAgICAgICAgICAgICBmcm9tIG5ldC9ibHVldG9vdGgvaGNpX3NvY2suYzoy NjoKLi9pbmNsdWRlL3VhcGkvbGludXgvY2FwYWJpbGl0eS5oOjIwNTozMDogd2FybmluZzogcGFz c2luZyBhcmd1bWVudCAxIG9mIOKAmHNrX2NhcGFibGXigJkgbWFrZXMgcG9pbnRlciBmcm9tIGlu dGVnZXIgd2l0aG91dCBhIGNhc3QgWy1XaW50LWNvbnZlcnNpb25dCiAgMjA1IHwgI2RlZmluZSBD QVBfTkVUX0FETUlOICAgICAgICAxMgogICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgXn4KICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKICAgICAgfCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGludApuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MTQz MDoxODogbm90ZTogaW4gZXhwYW5zaW9uIG9mIG1hY3JvIOKAmENBUF9ORVRfQURNSU7igJkKIDE0 MzAgfCAgIGlmIChza19jYXBhYmxlKENBUF9ORVRfQURNSU4pKQogICAgICB8ICAgICAgICAgICAg ICAgICAgXn5+fn5+fn5+fn5+fgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gLi9pbmNsdWRlL25ldC9i bHVldG9vdGgvYmx1ZXRvb3RoLmg6MzAsCiAgICAgICAgICAgICAgICAgZnJvbSBuZXQvYmx1ZXRv b3RoL2hjaV9zb2NrLmM6MzI6Ci4vaW5jbHVkZS9uZXQvc29jay5oOjMwMTk6MzY6IG5vdGU6IGV4 cGVjdGVkIOKAmGNvbnN0IHN0cnVjdCBzb2NrICrigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg 4oCYaW504oCZCiAzMDE5IHwgYm9vbCBza19jYXBhYmxlKGNvbnN0IHN0cnVjdCBzb2NrICpzaywg aW50IGNhcCk7CiAgICAgIHwgICAgICAgICAgICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5efgpu ZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MTQzMDo3OiBlcnJvcjogdG9vIGZldyBhcmd1bWVudHMg dG8gZnVuY3Rpb24g4oCYc2tfY2FwYWJsZeKAmQogMTQzMCB8ICAgaWYgKHNrX2NhcGFibGUoQ0FQ X05FVF9BRE1JTikpCiAgICAgIHwgICAgICAgXn5+fn5+fn5+fgpJbiBmaWxlIGluY2x1ZGVkIGZy b20gLi9pbmNsdWRlL25ldC9ibHVldG9vdGgvYmx1ZXRvb3RoLmg6MzAsCiAgICAgICAgICAgICAg ICAgZnJvbSBuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MzI6Ci4vaW5jbHVkZS9uZXQvc29jay5o OjMwMTk6Njogbm90ZTogZGVjbGFyZWQgaGVyZQogMzAxOSB8IGJvb2wgc2tfY2FwYWJsZShjb25z dCBzdHJ1Y3Qgc29jayAqc2ssIGludCBjYXApOwogICAgICB8ICAgICAgXn5+fn5+fn5+fgptYWtl WzRdOiAqKiogW3NjcmlwdHMvTWFrZWZpbGUuYnVpbGQ6Mjg3OiBuZXQvYmx1ZXRvb3RoL2hjaV9z b2NrLm9dIEVycm9yIDEKbWFrZVs0XTogKioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4u Li4KbmV0L2JsdWV0b290aC9oY2lfZXZlbnQuYzogbm90ZTogaW4gaW5jbHVkZWQgZmlsZSAodGhy b3VnaCBpbmNsdWRlL25ldC9ibHVldG9vdGgvaGNpX2NvcmUuaCk6Ci4vaW5jbHVkZS9uZXQvYmx1 ZXRvb3RoL2hjaS5oOjI5MjI6NDc6IHdhcm5pbmc6IGFycmF5IG9mIGZsZXhpYmxlIHN0cnVjdHVy ZXMKLi9pbmNsdWRlL25ldC9ibHVldG9vdGgvaGNpLmg6MzAwODo0Mzogd2FybmluZzogYXJyYXkg b2YgZmxleGlibGUgc3RydWN0dXJlcwpkcml2ZXJzL2JsdWV0b290aC9oY2lfYWc2eHguYzoyNTc6 MjQ6IHdhcm5pbmc6IHJlc3RyaWN0ZWQgX19sZTMyIGRlZ3JhZGVzIHRvIGludGVnZXIKbWFrZVsz XTogKioqIFtzY3JpcHRzL01ha2VmaWxlLmJ1aWxkOjU1NjogbmV0L2JsdWV0b290aF0gRXJyb3Ig MgptYWtlWzJdOiAqKiogW3NjcmlwdHMvTWFrZWZpbGUuYnVpbGQ6NTU2OiBuZXRdIEVycm9yIDIK bWFrZVsyXTogKioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KZHJpdmVycy9ibHVl dG9vdGgvaGNpX21ydmwuYzoxNzA6MjM6IHdhcm5pbmc6IHJlc3RyaWN0ZWQgX19sZTE2IGRlZ3Jh ZGVzIHRvIGludGVnZXIKZHJpdmVycy9ibHVldG9vdGgvaGNpX21ydmwuYzoyMDM6MjM6IHdhcm5p bmc6IHJlc3RyaWN0ZWQgX19sZTE2IGRlZ3JhZGVzIHRvIGludGVnZXIKZHJpdmVycy9ibHVldG9v dGgvaGNpX25va2lhLmM6Mjc5OjIzOiB3YXJuaW5nOiBpbmNvcnJlY3QgdHlwZSBpbiBhc3NpZ25t ZW50IChkaWZmZXJlbnQgYmFzZSB0eXBlcykKZHJpdmVycy9ibHVldG9vdGgvaGNpX25va2lhLmM6 Mjc5OjIzOiAgICBleHBlY3RlZCB1bnNpZ25lZCBzaG9ydCBbdXNlcnR5cGVdIGJhdWQKZHJpdmVy cy9ibHVldG9vdGgvaGNpX25va2lhLmM6Mjc5OjIzOiAgICBnb3QgcmVzdHJpY3RlZCBfX2xlMTYg W3VzZXJ0eXBlXQpkcml2ZXJzL2JsdWV0b290aC9oY2lfbm9raWEuYzoyODI6MjY6IHdhcm5pbmc6 IGluY29ycmVjdCB0eXBlIGluIGFzc2lnbm1lbnQgKGRpZmZlcmVudCBiYXNlIHR5cGVzKQpkcml2 ZXJzL2JsdWV0b290aC9oY2lfbm9raWEuYzoyODI6MjY6ICAgIGV4cGVjdGVkIHVuc2lnbmVkIHNo b3J0IFt1c2VydHlwZV0gc3lzX2Nsawpkcml2ZXJzL2JsdWV0b290aC9oY2lfbm9raWEuYzoyODI6 MjY6ICAgIGdvdCByZXN0cmljdGVkIF9fbGUxNiBbdXNlcnR5cGVdCm1ha2VbMV06ICoqKiBbL2dp dGh1Yi93b3Jrc3BhY2Uvc3JjL3NyYy9NYWtlZmlsZToyMDEwOiAuXSBFcnJvciAyCm1ha2U6ICoq KiBbTWFrZWZpbGU6MjQ4OiBfX3N1Yi1tYWtlXSBFcnJvciAyCiMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIwpUZXN0OiBCdWlsZEtlcm5lbDMyIC0gRkFJTApEZXNjOiBCdWlsZCAzMmJpdCBL ZXJuZWwgZm9yIEJsdWV0b290aApPdXRwdXQ6CgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gLi9pbmNs dWRlL2xpbnV4L2NhcGFiaWxpdHkuaDoxNiwKICAgICAgICAgICAgICAgICBmcm9tIC4vaW5jbHVk ZS9saW51eC9mcy5oOjI1LAogICAgICAgICAgICAgICAgIGZyb20gLi9pbmNsdWRlL2xpbnV4L2Nv bXBhdC5oOjE3LAogICAgICAgICAgICAgICAgIGZyb20gbmV0L2JsdWV0b290aC9oY2lfc29jay5j OjI2OgpuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6IEluIGZ1bmN0aW9uIOKAmGhjaV9zb2NrX2Jp bmTigJk6Ci4vaW5jbHVkZS91YXBpL2xpbnV4L2NhcGFiaWxpdHkuaDoyMDU6MzA6IHdhcm5pbmc6 IHBhc3NpbmcgYXJndW1lbnQgMSBvZiDigJhza19jYXBhYmxl4oCZIG1ha2VzIHBvaW50ZXIgZnJv bSBpbnRlZ2VyIHdpdGhvdXQgYSBjYXN0IFstV2ludC1jb252ZXJzaW9uXQogIDIwNSB8ICNkZWZp bmUgQ0FQX05FVF9BRE1JTiAgICAgICAgMTIKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIF5+CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CiAgICAgIHwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQKbmV0L2JsdWV0b290aC9oY2lfc29jay5j OjEyNjI6MTg6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhDQVBfTkVUX0FETUlO4oCZ CiAxMjYyIHwgICBpZiAoc2tfY2FwYWJsZShDQVBfTkVUX0FETUlOKSkKICAgICAgfCAgICAgICAg ICAgICAgICAgIF5+fn5+fn5+fn5+fn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC4vaW5jbHVkZS9u ZXQvYmx1ZXRvb3RoL2JsdWV0b290aC5oOjMwLAogICAgICAgICAgICAgICAgIGZyb20gbmV0L2Js dWV0b290aC9oY2lfc29jay5jOjMyOgouL2luY2x1ZGUvbmV0L3NvY2suaDozMDE5OjM2OiBub3Rl OiBleHBlY3RlZCDigJhjb25zdCBzdHJ1Y3Qgc29jayAq4oCZIGJ1dCBhcmd1bWVudCBpcyBvZiB0 eXBlIOKAmGludOKAmQogMzAxOSB8IGJvb2wgc2tfY2FwYWJsZShjb25zdCBzdHJ1Y3Qgc29jayAq c2ssIGludCBjYXApOwogICAgICB8ICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+fn5+fn5+fn5+ Xn4KbmV0L2JsdWV0b290aC9oY2lfc29jay5jOjEyNjI6NzogZXJyb3I6IHRvbyBmZXcgYXJndW1l bnRzIHRvIGZ1bmN0aW9uIOKAmHNrX2NhcGFibGXigJkKIDEyNjIgfCAgIGlmIChza19jYXBhYmxl KENBUF9ORVRfQURNSU4pKQogICAgICB8ICAgICAgIF5+fn5+fn5+fn4KSW4gZmlsZSBpbmNsdWRl ZCBmcm9tIC4vaW5jbHVkZS9uZXQvYmx1ZXRvb3RoL2JsdWV0b290aC5oOjMwLAogICAgICAgICAg ICAgICAgIGZyb20gbmV0L2JsdWV0b290aC9oY2lfc29jay5jOjMyOgouL2luY2x1ZGUvbmV0L3Nv Y2suaDozMDE5OjY6IG5vdGU6IGRlY2xhcmVkIGhlcmUKIDMwMTkgfCBib29sIHNrX2NhcGFibGUo Y29uc3Qgc3RydWN0IHNvY2sgKnNrLCBpbnQgY2FwKTsKICAgICAgfCAgICAgIF5+fn5+fn5+fn4K SW4gZmlsZSBpbmNsdWRlZCBmcm9tIC4vaW5jbHVkZS9saW51eC9jYXBhYmlsaXR5Lmg6MTYsCiAg ICAgICAgICAgICAgICAgZnJvbSAuL2luY2x1ZGUvbGludXgvZnMuaDoyNSwKICAgICAgICAgICAg ICAgICBmcm9tIC4vaW5jbHVkZS9saW51eC9jb21wYXQuaDoxNywKICAgICAgICAgICAgICAgICBm cm9tIG5ldC9ibHVldG9vdGgvaGNpX3NvY2suYzoyNjoKLi9pbmNsdWRlL3VhcGkvbGludXgvY2Fw YWJpbGl0eS5oOjIwNTozMDogd2FybmluZzogcGFzc2luZyBhcmd1bWVudCAxIG9mIOKAmHNrX2Nh cGFibGXigJkgbWFrZXMgcG9pbnRlciBmcm9tIGludGVnZXIgd2l0aG91dCBhIGNhc3QgWy1XaW50 LWNvbnZlcnNpb25dCiAgMjA1IHwgI2RlZmluZSBDQVBfTkVUX0FETUlOICAgICAgICAxMgogICAg ICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn4KICAgICAgfCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu dApuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MTQzMDoxODogbm90ZTogaW4gZXhwYW5zaW9uIG9m IG1hY3JvIOKAmENBUF9ORVRfQURNSU7igJkKIDE0MzAgfCAgIGlmIChza19jYXBhYmxlKENBUF9O RVRfQURNSU4pKQogICAgICB8ICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fgpJbiBmaWxl IGluY2x1ZGVkIGZyb20gLi9pbmNsdWRlL25ldC9ibHVldG9vdGgvYmx1ZXRvb3RoLmg6MzAsCiAg ICAgICAgICAgICAgICAgZnJvbSBuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MzI6Ci4vaW5jbHVk ZS9uZXQvc29jay5oOjMwMTk6MzY6IG5vdGU6IGV4cGVjdGVkIOKAmGNvbnN0IHN0cnVjdCBzb2Nr ICrigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYaW504oCZCiAzMDE5IHwgYm9vbCBza19j YXBhYmxlKGNvbnN0IHN0cnVjdCBzb2NrICpzaywgaW50IGNhcCk7CiAgICAgIHwgICAgICAgICAg ICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5efgpuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MTQz MDo3OiBlcnJvcjogdG9vIGZldyBhcmd1bWVudHMgdG8gZnVuY3Rpb24g4oCYc2tfY2FwYWJsZeKA mQogMTQzMCB8ICAgaWYgKHNrX2NhcGFibGUoQ0FQX05FVF9BRE1JTikpCiAgICAgIHwgICAgICAg Xn5+fn5+fn5+fgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gLi9pbmNsdWRlL25ldC9ibHVldG9vdGgv Ymx1ZXRvb3RoLmg6MzAsCiAgICAgICAgICAgICAgICAgZnJvbSBuZXQvYmx1ZXRvb3RoL2hjaV9z b2NrLmM6MzI6Ci4vaW5jbHVkZS9uZXQvc29jay5oOjMwMTk6Njogbm90ZTogZGVjbGFyZWQgaGVy ZQogMzAxOSB8IGJvb2wgc2tfY2FwYWJsZShjb25zdCBzdHJ1Y3Qgc29jayAqc2ssIGludCBjYXAp OwogICAgICB8ICAgICAgXn5+fn5+fn5+fgptYWtlWzRdOiAqKiogW3NjcmlwdHMvTWFrZWZpbGUu YnVpbGQ6Mjg3OiBuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLm9dIEVycm9yIDEKbWFrZVs0XTogKioq IFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KbWFrZVszXTogKioqIFtzY3JpcHRzL01h a2VmaWxlLmJ1aWxkOjU1NjogbmV0L2JsdWV0b290aF0gRXJyb3IgMgptYWtlWzJdOiAqKiogW3Nj cmlwdHMvTWFrZWZpbGUuYnVpbGQ6NTU2OiBuZXRdIEVycm9yIDIKbWFrZVsyXTogKioqIFdhaXRp bmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KbWFrZVsxXTogKioqIFsvZ2l0aHViL3dvcmtzcGFj ZS9zcmMvc3JjL01ha2VmaWxlOjIwMTA6IC5dIEVycm9yIDIKbWFrZTogKioqIFtNYWtlZmlsZToy NDg6IF9fc3ViLW1ha2VdIEVycm9yIDIKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjClRl c3Q6IFRlc3RSdW5uZXJTZXR1cCAtIEZBSUwKRGVzYzogU2V0dXAga2VybmVsIGFuZCBibHVleiBm b3IgdGVzdC1ydW5uZXIKT3V0cHV0OgpLZXJuZWw6IApJbiBmaWxlIGluY2x1ZGVkIGZyb20gLi9p bmNsdWRlL2xpbnV4L2NhcGFiaWxpdHkuaDoxNiwKICAgICAgICAgICAgICAgICBmcm9tIC4vaW5j bHVkZS9saW51eC9mcy5oOjI1LAogICAgICAgICAgICAgICAgIGZyb20gLi9pbmNsdWRlL2xpbnV4 L2NvbXBhdC5oOjE3LAogICAgICAgICAgICAgICAgIGZyb20gbmV0L2JsdWV0b290aC9oY2lfc29j ay5jOjI2OgpuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6IEluIGZ1bmN0aW9uIOKAmGhjaV9zb2Nr X2JpbmTigJk6Ci4vaW5jbHVkZS91YXBpL2xpbnV4L2NhcGFiaWxpdHkuaDoyMDU6MzA6IHdhcm5p bmc6IHBhc3NpbmcgYXJndW1lbnQgMSBvZiDigJhza19jYXBhYmxl4oCZIG1ha2VzIHBvaW50ZXIg ZnJvbSBpbnRlZ2VyIHdpdGhvdXQgYSBjYXN0IFstV2ludC1jb252ZXJzaW9uXQogIDIwNSB8ICNk ZWZpbmUgQ0FQX05FVF9BRE1JTiAgICAgICAgMTIKICAgICAgfCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIF5+CiAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CiAgICAg IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQKbmV0L2JsdWV0b290aC9oY2lfc29j ay5jOjEyNjI6MTg6IG5vdGU6IGluIGV4cGFuc2lvbiBvZiBtYWNybyDigJhDQVBfTkVUX0FETUlO 4oCZCiAxMjYyIHwgICBpZiAoc2tfY2FwYWJsZShDQVBfTkVUX0FETUlOKSkKICAgICAgfCAgICAg ICAgICAgICAgICAgIF5+fn5+fn5+fn5+fn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC4vaW5jbHVk ZS9uZXQvYmx1ZXRvb3RoL2JsdWV0b290aC5oOjMwLAogICAgICAgICAgICAgICAgIGZyb20gbmV0 L2JsdWV0b290aC9oY2lfc29jay5jOjMyOgouL2luY2x1ZGUvbmV0L3NvY2suaDozMDE5OjM2OiBu b3RlOiBleHBlY3RlZCDigJhjb25zdCBzdHJ1Y3Qgc29jayAq4oCZIGJ1dCBhcmd1bWVudCBpcyBv ZiB0eXBlIOKAmGludOKAmQogMzAxOSB8IGJvb2wgc2tfY2FwYWJsZShjb25zdCBzdHJ1Y3Qgc29j ayAqc2ssIGludCBjYXApOwogICAgICB8ICAgICAgICAgICAgICAgICB+fn5+fn5+fn5+fn5+fn5+ fn5+Xn4KbmV0L2JsdWV0b290aC9oY2lfc29jay5jOjEyNjI6NzogZXJyb3I6IHRvbyBmZXcgYXJn dW1lbnRzIHRvIGZ1bmN0aW9uIOKAmHNrX2NhcGFibGXigJkKIDEyNjIgfCAgIGlmIChza19jYXBh YmxlKENBUF9ORVRfQURNSU4pKQogICAgICB8ICAgICAgIF5+fn5+fn5+fn4KSW4gZmlsZSBpbmNs dWRlZCBmcm9tIC4vaW5jbHVkZS9uZXQvYmx1ZXRvb3RoL2JsdWV0b290aC5oOjMwLAogICAgICAg ICAgICAgICAgIGZyb20gbmV0L2JsdWV0b290aC9oY2lfc29jay5jOjMyOgouL2luY2x1ZGUvbmV0 L3NvY2suaDozMDE5OjY6IG5vdGU6IGRlY2xhcmVkIGhlcmUKIDMwMTkgfCBib29sIHNrX2NhcGFi bGUoY29uc3Qgc3RydWN0IHNvY2sgKnNrLCBpbnQgY2FwKTsKICAgICAgfCAgICAgIF5+fn5+fn5+ fn4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIC4vaW5jbHVkZS9saW51eC9jYXBhYmlsaXR5Lmg6MTYs CiAgICAgICAgICAgICAgICAgZnJvbSAuL2luY2x1ZGUvbGludXgvZnMuaDoyNSwKICAgICAgICAg ICAgICAgICBmcm9tIC4vaW5jbHVkZS9saW51eC9jb21wYXQuaDoxNywKICAgICAgICAgICAgICAg ICBmcm9tIG5ldC9ibHVldG9vdGgvaGNpX3NvY2suYzoyNjoKLi9pbmNsdWRlL3VhcGkvbGludXgv Y2FwYWJpbGl0eS5oOjIwNTozMDogd2FybmluZzogcGFzc2luZyBhcmd1bWVudCAxIG9mIOKAmHNr X2NhcGFibGXigJkgbWFrZXMgcG9pbnRlciBmcm9tIGludGVnZXIgd2l0aG91dCBhIGNhc3QgWy1X aW50LWNvbnZlcnNpb25dCiAgMjA1IHwgI2RlZmluZSBDQVBfTkVUX0FETUlOICAgICAgICAxMgog ICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXn4KICAgICAgfCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwKICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGludApuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MTQzMDoxODogbm90ZTogaW4gZXhwYW5zaW9u IG9mIG1hY3JvIOKAmENBUF9ORVRfQURNSU7igJkKIDE0MzAgfCAgIGlmIChza19jYXBhYmxlKENB UF9ORVRfQURNSU4pKQogICAgICB8ICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fgpJbiBm aWxlIGluY2x1ZGVkIGZyb20gLi9pbmNsdWRlL25ldC9ibHVldG9vdGgvYmx1ZXRvb3RoLmg6MzAs CiAgICAgICAgICAgICAgICAgZnJvbSBuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6MzI6Ci4vaW5j bHVkZS9uZXQvc29jay5oOjMwMTk6MzY6IG5vdGU6IGV4cGVjdGVkIOKAmGNvbnN0IHN0cnVjdCBz b2NrICrigJkgYnV0IGFyZ3VtZW50IGlzIG9mIHR5cGUg4oCYaW504oCZCiAzMDE5IHwgYm9vbCBz a19jYXBhYmxlKGNvbnN0IHN0cnVjdCBzb2NrICpzaywgaW50IGNhcCk7CiAgICAgIHwgICAgICAg ICAgICAgICAgIH5+fn5+fn5+fn5+fn5+fn5+fn5efgpuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLmM6 MTQzMDo3OiBlcnJvcjogdG9vIGZldyBhcmd1bWVudHMgdG8gZnVuY3Rpb24g4oCYc2tfY2FwYWJs ZeKAmQogMTQzMCB8ICAgaWYgKHNrX2NhcGFibGUoQ0FQX05FVF9BRE1JTikpCiAgICAgIHwgICAg ICAgXn5+fn5+fn5+fgpJbiBmaWxlIGluY2x1ZGVkIGZyb20gLi9pbmNsdWRlL25ldC9ibHVldG9v dGgvYmx1ZXRvb3RoLmg6MzAsCiAgICAgICAgICAgICAgICAgZnJvbSBuZXQvYmx1ZXRvb3RoL2hj aV9zb2NrLmM6MzI6Ci4vaW5jbHVkZS9uZXQvc29jay5oOjMwMTk6Njogbm90ZTogZGVjbGFyZWQg aGVyZQogMzAxOSB8IGJvb2wgc2tfY2FwYWJsZShjb25zdCBzdHJ1Y3Qgc29jayAqc2ssIGludCBj YXApOwogICAgICB8ICAgICAgXn5+fn5+fn5+fgptYWtlWzRdOiAqKiogW3NjcmlwdHMvTWFrZWZp bGUuYnVpbGQ6Mjg3OiBuZXQvYmx1ZXRvb3RoL2hjaV9zb2NrLm9dIEVycm9yIDEKbWFrZVszXTog KioqIFtzY3JpcHRzL01ha2VmaWxlLmJ1aWxkOjU1NjogbmV0L2JsdWV0b290aF0gRXJyb3IgMgpt YWtlWzNdOiAqKiogV2FpdGluZyBmb3IgdW5maW5pc2hlZCBqb2JzLi4uLgptYWtlWzJdOiAqKiog W3NjcmlwdHMvTWFrZWZpbGUuYnVpbGQ6NTU2OiBuZXRdIEVycm9yIDIKbWFrZVsyXTogKioqIFdh aXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KbWFrZVsxXTogKioqIFsvZ2l0aHViL3dvcmtz cGFjZS9zcmMvc3JjL01ha2VmaWxlOjIwMTA6IC5dIEVycm9yIDIKbWFrZTogKioqIFtNYWtlZmls ZToyNDg6IF9fc3ViLW1ha2VdIEVycm9yIDIKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj ClRlc3Q6IFRlc3RSdW5uZXJfbDJjYXAtdGVzdGVyIC0gRkFJTApEZXNjOiBSdW4gbDJjYXAtdGVz dGVyIHdpdGggdGVzdC1ydW5uZXIKT3V0cHV0OgoKQ291bGQgbm90IGFjY2VzcyBLVk0ga2VybmVs IG1vZHVsZTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpxZW11LXN5c3RlbS14ODZfNjQ6IGZh aWxlZCB0byBpbml0aWFsaXplIEtWTTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpxZW11LXN5 c3RlbS14ODZfNjQ6IEJhY2sgdG8gdGNnIGFjY2VsZXJhdG9yCnFlbXU6IGNvdWxkIG5vdCBvcGVu IGtlcm5lbCBmaWxlICcvZ2l0aHViL3dvcmtzcGFjZS9zcmMvc3JjL2FyY2gveDg2L2Jvb3QvYnpJ bWFnZSc6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjClRlc3Q6IFRlc3RSdW5uZXJfaXNvLXRlc3RlciAtIEZBSUwKRGVzYzogUnVuIGlzby10 ZXN0ZXIgd2l0aCB0ZXN0LXJ1bm5lcgpPdXRwdXQ6CgpDb3VsZCBub3QgYWNjZXNzIEtWTSBrZXJu ZWwgbW9kdWxlOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CnFlbXUtc3lzdGVtLXg4Nl82NDog ZmFpbGVkIHRvIGluaXRpYWxpemUgS1ZNOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CnFlbXUt c3lzdGVtLXg4Nl82NDogQmFjayB0byB0Y2cgYWNjZWxlcmF0b3IKcWVtdTogY291bGQgbm90IG9w ZW4ga2VybmVsIGZpbGUgJy9naXRodWIvd29ya3NwYWNlL3NyYy9zcmMvYXJjaC94ODYvYm9vdC9i ekltYWdlJzogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQojIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMKVGVzdDogVGVzdFJ1bm5lcl9ibmVwLXRlc3RlciAtIEZBSUwKRGVzYzogUnVuIGJu ZXAtdGVzdGVyIHdpdGggdGVzdC1ydW5uZXIKT3V0cHV0OgoKQ291bGQgbm90IGFjY2VzcyBLVk0g a2VybmVsIG1vZHVsZTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpxZW11LXN5c3RlbS14ODZf NjQ6IGZhaWxlZCB0byBpbml0aWFsaXplIEtWTTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpx ZW11LXN5c3RlbS14ODZfNjQ6IEJhY2sgdG8gdGNnIGFjY2VsZXJhdG9yCnFlbXU6IGNvdWxkIG5v dCBvcGVuIGtlcm5lbCBmaWxlICcvZ2l0aHViL3dvcmtzcGFjZS9zcmMvc3JjL2FyY2gveDg2L2Jv b3QvYnpJbWFnZSc6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjClRlc3Q6IFRlc3RSdW5uZXJfbWdtdC10ZXN0ZXIgLSBGQUlMCkRlc2M6IFJ1 biBtZ210LXRlc3RlciB3aXRoIHRlc3QtcnVubmVyCk91dHB1dDoKCkNvdWxkIG5vdCBhY2Nlc3Mg S1ZNIGtlcm5lbCBtb2R1bGU6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKcWVtdS1zeXN0ZW0t eDg2XzY0OiBmYWlsZWQgdG8gaW5pdGlhbGl6ZSBLVk06IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3Rv cnkKcWVtdS1zeXN0ZW0teDg2XzY0OiBCYWNrIHRvIHRjZyBhY2NlbGVyYXRvcgpxZW11OiBjb3Vs ZCBub3Qgb3BlbiBrZXJuZWwgZmlsZSAnL2dpdGh1Yi93b3Jrc3BhY2Uvc3JjL3NyYy9hcmNoL3g4 Ni9ib290L2J6SW1hZ2UnOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CiMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIwpUZXN0OiBUZXN0UnVubmVyX3JmY29tbS10ZXN0ZXIgLSBGQUlMCkRl c2M6IFJ1biByZmNvbW0tdGVzdGVyIHdpdGggdGVzdC1ydW5uZXIKT3V0cHV0OgoKQ291bGQgbm90 IGFjY2VzcyBLVk0ga2VybmVsIG1vZHVsZTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpxZW11 LXN5c3RlbS14ODZfNjQ6IGZhaWxlZCB0byBpbml0aWFsaXplIEtWTTogTm8gc3VjaCBmaWxlIG9y IGRpcmVjdG9yeQpxZW11LXN5c3RlbS14ODZfNjQ6IEJhY2sgdG8gdGNnIGFjY2VsZXJhdG9yCnFl bXU6IGNvdWxkIG5vdCBvcGVuIGtlcm5lbCBmaWxlICcvZ2l0aHViL3dvcmtzcGFjZS9zcmMvc3Jj L2FyY2gveDg2L2Jvb3QvYnpJbWFnZSc6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjClRlc3Q6IFRlc3RSdW5uZXJfc2NvLXRlc3RlciAtIEZB SUwKRGVzYzogUnVuIHNjby10ZXN0ZXIgd2l0aCB0ZXN0LXJ1bm5lcgpPdXRwdXQ6CgpDb3VsZCBu b3QgYWNjZXNzIEtWTSBrZXJuZWwgbW9kdWxlOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CnFl bXUtc3lzdGVtLXg4Nl82NDogZmFpbGVkIHRvIGluaXRpYWxpemUgS1ZNOiBObyBzdWNoIGZpbGUg b3IgZGlyZWN0b3J5CnFlbXUtc3lzdGVtLXg4Nl82NDogQmFjayB0byB0Y2cgYWNjZWxlcmF0b3IK cWVtdTogY291bGQgbm90IG9wZW4ga2VybmVsIGZpbGUgJy9naXRodWIvd29ya3NwYWNlL3NyYy9z cmMvYXJjaC94ODYvYm9vdC9iekltYWdlJzogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQojIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKVGVzdDogVGVzdFJ1bm5lcl9pb2N0bC10ZXN0ZXIg LSBGQUlMCkRlc2M6IFJ1biBpb2N0bC10ZXN0ZXIgd2l0aCB0ZXN0LXJ1bm5lcgpPdXRwdXQ6CgpD b3VsZCBub3QgYWNjZXNzIEtWTSBrZXJuZWwgbW9kdWxlOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0 b3J5CnFlbXUtc3lzdGVtLXg4Nl82NDogZmFpbGVkIHRvIGluaXRpYWxpemUgS1ZNOiBObyBzdWNo IGZpbGUgb3IgZGlyZWN0b3J5CnFlbXUtc3lzdGVtLXg4Nl82NDogQmFjayB0byB0Y2cgYWNjZWxl cmF0b3IKcWVtdTogY291bGQgbm90IG9wZW4ga2VybmVsIGZpbGUgJy9naXRodWIvd29ya3NwYWNl L3NyYy9zcmMvYXJjaC94ODYvYm9vdC9iekltYWdlJzogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9y eQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKVGVzdDogVGVzdFJ1bm5lcl9tZXNoLXRl c3RlciAtIEZBSUwKRGVzYzogUnVuIG1lc2gtdGVzdGVyIHdpdGggdGVzdC1ydW5uZXIKT3V0cHV0 OgoKQ291bGQgbm90IGFjY2VzcyBLVk0ga2VybmVsIG1vZHVsZTogTm8gc3VjaCBmaWxlIG9yIGRp cmVjdG9yeQpxZW11LXN5c3RlbS14ODZfNjQ6IGZhaWxlZCB0byBpbml0aWFsaXplIEtWTTogTm8g c3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpxZW11LXN5c3RlbS14ODZfNjQ6IEJhY2sgdG8gdGNnIGFj Y2VsZXJhdG9yCnFlbXU6IGNvdWxkIG5vdCBvcGVuIGtlcm5lbCBmaWxlICcvZ2l0aHViL3dvcmtz cGFjZS9zcmMvc3JjL2FyY2gveDg2L2Jvb3QvYnpJbWFnZSc6IE5vIHN1Y2ggZmlsZSBvciBkaXJl Y3RvcnkKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjClRlc3Q6IFRlc3RSdW5uZXJfc21w LXRlc3RlciAtIEZBSUwKRGVzYzogUnVuIHNtcC10ZXN0ZXIgd2l0aCB0ZXN0LXJ1bm5lcgpPdXRw dXQ6CgpDb3VsZCBub3QgYWNjZXNzIEtWTSBrZXJuZWwgbW9kdWxlOiBObyBzdWNoIGZpbGUgb3Ig ZGlyZWN0b3J5CnFlbXUtc3lzdGVtLXg4Nl82NDogZmFpbGVkIHRvIGluaXRpYWxpemUgS1ZNOiBO byBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CnFlbXUtc3lzdGVtLXg4Nl82NDogQmFjayB0byB0Y2cg YWNjZWxlcmF0b3IKcWVtdTogY291bGQgbm90IG9wZW4ga2VybmVsIGZpbGUgJy9naXRodWIvd29y a3NwYWNlL3NyYy9zcmMvYXJjaC94ODYvYm9vdC9iekltYWdlJzogTm8gc3VjaCBmaWxlIG9yIGRp cmVjdG9yeQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKVGVzdDogVGVzdFJ1bm5lcl91 c2VyY2hhbi10ZXN0ZXIgLSBGQUlMCkRlc2M6IFJ1biB1c2VyY2hhbi10ZXN0ZXIgd2l0aCB0ZXN0 LXJ1bm5lcgpPdXRwdXQ6CgpDb3VsZCBub3QgYWNjZXNzIEtWTSBrZXJuZWwgbW9kdWxlOiBObyBz dWNoIGZpbGUgb3IgZGlyZWN0b3J5CnFlbXUtc3lzdGVtLXg4Nl82NDogZmFpbGVkIHRvIGluaXRp YWxpemUgS1ZNOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CnFlbXUtc3lzdGVtLXg4Nl82NDog QmFjayB0byB0Y2cgYWNjZWxlcmF0b3IKcWVtdTogY291bGQgbm90IG9wZW4ga2VybmVsIGZpbGUg Jy9naXRodWIvd29ya3NwYWNlL3NyYy9zcmMvYXJjaC94ODYvYm9vdC9iekltYWdlJzogTm8gc3Vj aCBmaWxlIG9yIGRpcmVjdG9yeQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKVGVzdDog SW5jcmVtZW50YWxCdWlsZCAtIFBFTkRJTkcKRGVzYzogSW5jcmVtZW50YWwgYnVpbGQgd2l0aCB0 aGUgcGF0Y2hlcyBpbiB0aGUgc2VyaWVzCk91dHB1dDoKCgoKLS0tClJlZ2FyZHMsCkxpbnV4IEJs dWV0b290aAoK --===============2452490163778901093==--