From dev-return-110759-archive-asf-public=cust-asf.ponee.io@cloudstack.apache.org Tue Jan 30 02:44:14 2018 Return-Path: X-Original-To: archive-asf-public@eu.ponee.io Delivered-To: archive-asf-public@eu.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by mx-eu-01.ponee.io (Postfix) with ESMTP id AB965180654 for ; Tue, 30 Jan 2018 02:44:14 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 9B780160C3F; Tue, 30 Jan 2018 01:44:14 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 70946160C31 for ; Tue, 30 Jan 2018 02:44:13 +0100 (CET) Received: (qmail 40413 invoked by uid 500); 30 Jan 2018 01:44:07 -0000 Mailing-List: contact dev-help@cloudstack.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cloudstack.apache.org Delivered-To: mailing list dev@cloudstack.apache.org Received: (qmail 40378 invoked by uid 99); 30 Jan 2018 01:44:06 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 30 Jan 2018 01:44:06 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 3163FC0452 for ; Tue, 30 Jan 2018 01:44:06 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -5.011 X-Spam-Level: X-Spam-Status: No, score=-5.011 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=disabled Authentication-Results: spamd4-us-west.apache.org (amavisd-new); dkim=pass (1024-bit key) header.d=netapp.onmicrosoft.com Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id C7f4PW9kfHpZ for ; Tue, 30 Jan 2018 01:44:02 +0000 (UTC) Received: from mx143.netapp.com (mx143.netapp.com [216.240.21.24]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id 4626C5F343 for ; Tue, 30 Jan 2018 01:44:01 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.46,433,1511856000"; d="scan'208";a="240265629" Received: from vmwexchts04-prd.hq.netapp.com ([10.122.105.32]) by mx143-out.netapp.com with ESMTP; 29 Jan 2018 17:43:53 -0800 Received: from HIOEXCMBX07-PRD.hq.netapp.com (10.122.105.40) by VMWEXCHTS04-PRD.hq.netapp.com (10.122.105.32) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Mon, 29 Jan 2018 17:43:53 -0800 Received: from VMWEXCCAS04-PRD.hq.netapp.com (10.122.105.20) by hioexcmbx07-prd.hq.netapp.com (10.122.105.40) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Mon, 29 Jan 2018 17:43:52 -0800 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (10.120.60.153) by VMWEXCCAS04-PRD.hq.netapp.com (10.122.105.20) with Microsoft SMTP Server (TLS) id 15.0.1320.4 via Frontend Transport; Mon, 29 Jan 2018 17:43:53 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netapp.onmicrosoft.com; s=selector1-netapp-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=b+EwbCL31MRA21Zr2Ze+Nx0p3+/yPxaLIBOrUpUNLvo=; b=FbOFrJKOh7JciLR5b3GHuwQZszZoK+Hl8spi3y8FbDU6sPu6kuwELNfYtczDAxdiidaye4P7J+WnKwt2xChrG6Qmzzz+AQu7Q9EHndj7O5tGE/DBmEe2xM6pGrEEJAOf+R0c1ipw76XHBM+7kFsajdRm/PxWFL2TMJGbiIM5dqg= Received: from MWHPR06MB2880.namprd06.prod.outlook.com (10.175.138.21) by MWHPR06MB3405.namprd06.prod.outlook.com (10.174.251.151) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.444.14; Tue, 30 Jan 2018 01:43:51 +0000 Received: from MWHPR06MB2880.namprd06.prod.outlook.com ([10.175.138.21]) by MWHPR06MB2880.namprd06.prod.outlook.com ([10.175.138.21]) with mapi id 15.20.0444.016; Tue, 30 Jan 2018 01:43:51 +0000 From: "Tutkowski, Mike" To: "dev@cloudstack.apache.org" Subject: Re: CS 4.8 KVM VMs will not live migrate Thread-Topic: CS 4.8 KVM VMs will not live migrate Thread-Index: AQHTmTHOo4EsaIEYbUG9meAn1jAoUKOK10QAgABHRACAABFJAA== Date: Tue, 30 Jan 2018 01:43:51 +0000 Message-ID: <3C511D5A-C4B2-4A18-9D9D-BD6539ECE44E@netapp.com> References: <094CA1E4-CA2A-4C79-B31A-4E4D3CEAD303@netapp.com> <462FEE15-6C49-446F-A50C-5D919F8BDF55@ena.com> In-Reply-To: <462FEE15-6C49-446F-A50C-5D919F8BDF55@ena.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Mike.Tutkowski@netapp.com; x-originating-ip: [208.185.63.6] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;MWHPR06MB3405;7:6eTKiscKZr0oxGipO+oF4D/+dEL0jZpGen2Sn745h0zz/z3ZyFOaB/pU1uHPTf3yjyx/zIv+XHmzHlbpcPhZsLgIrzgT9ZsqMKpS6sFiq78XPMWJxC35+SaUgPC/53VP+e+xVBiyLH4pT3i6petyg+CRlp+o3smGdoSux2JzMVh+CVuxSbQRAslAoKSSewEtfPXEtMcFDU9P4UZI18ZPqBrVDd1hy/zOlDy85WkEOLj43mIKZ62IQFd5DcbcP57/ x-ms-exchange-antispam-srfa-diagnostics: SSOS; x-ms-office365-filtering-correlation-id: 0ab40d57-aba8-4ad5-520c-08d56782ea2b x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4604075)(3008032)(2017052603307)(7193020);SRVR:MWHPR06MB3405; x-ms-traffictypediagnostic: MWHPR06MB3405: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(158342451672863)(131327999870524); x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(6040501)(2401047)(5005006)(8121501046)(93006095)(93001095)(3002001)(3231101)(944501161)(10201501046)(6055026)(6041288)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123564045)(20161123562045)(6072148)(201708071742011);SRVR:MWHPR06MB3405;BCL:0;PCL:0;RULEID:;SRVR:MWHPR06MB3405; x-forefront-prvs: 0568F32D91 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(376002)(39380400002)(39860400002)(366004)(346002)(396003)(377424004)(40224003)(199004)(189003)(51914003)(6436002)(66066001)(6486002)(316002)(2351001)(305945005)(8676002)(81156014)(81166006)(1730700003)(8936002)(33656002)(106356001)(82746002)(99286004)(97736004)(3660700001)(53946003)(6512007)(3280700002)(5640700003)(7736002)(229853002)(77096007)(5660300001)(6246003)(105586002)(25786009)(68736007)(102836004)(6506007)(59450400001)(53546011)(26005)(478600001)(83716003)(3846002)(186003)(72206003)(2900100001)(36756003)(2501003)(2906002)(6116002)(53936002)(86362001)(575784001)(5890100001)(76176011)(6916009)(14454004)(2950100002);DIR:OUT;SFP:1101;SCL:1;SRVR:MWHPR06MB3405;H:MWHPR06MB2880.namprd06.prod.outlook.com;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; received-spf: None (protection.outlook.com: netapp.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: 4Wt1k6ieyFRE26/G95KAs56Vb6lNXXsMS1Iv8EiPbsZ6W5YS0bumcnFfY67niHoo2kIyJ2Z8WTyERpyq4P12+g== spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-ID: <7FDE0F27DAE031449866E92C29F5DD24@namprd06.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 0ab40d57-aba8-4ad5-520c-08d56782ea2b X-MS-Exchange-CrossTenant-originalarrivaltime: 30 Jan 2018 01:43:51.3035 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4b0911a0-929b-4715-944b-c03745165b3a X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR06MB3405 X-OriginatorOrg: netapp.com V2VsbOKApnVuZm9ydHVuYXRlbHksIHRoZSBzZXJpYWwtbnVtYmVyIGlzc3VlIHRoYXQgSSBoYWQg c2VlbiBiZWZvcmUgY2F1c2UgYW4gaXNzdWUgZG9lc27igJl0IHNlZW0gdG8gYmUgdGhlIGNhc2Ug aGVyZS4gT24gYm90aCB0aGUgd29ya2luZyBhbmQgbm9uLXdvcmtpbmcgKGZvciBsaXZlIG1pZ3Jh dGlvbikgVk1zLCB0aGVyZSBpcyBhIDxzZXJpYWw+IGVsZW1lbnQgZm9yIGFwcGxpY2FibGUgPGRp c2s+IGVsZW1lbnRzIChwZXIgdGhlIFhNTCBiZWxvdykuDQoNCkFueW9uZSBlbHNlIGhhdmUgYW55 IGlkZWFzIGhlcmU/DQoNCk9uIDEvMjkvMTgsIDQ6NDEgUE0sICJEYXZpZCBNYWJyeSIgPGRtYWJy eUBlbmEuY29tLklOVkFMSUQ+IHdyb3RlOg0KDQogICAgTWlrZSwNCiAgICANCiAgICBUaGFua3Mg Zm9yIHRoZSByZXBseS4gIEFzIHJlcXVlc3RlZDoNCiAgICANCiAgICBXaWxsIG5vdCBNaWdyYXRl DQogICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KICAgIDxkb21haW4gdHlwZT0na3Zt JyBpZD0nNjMnPg0KICAgICAgPG5hbWU+aS01MzItMTM5Mi1OU1ZMVE48L25hbWU+DQogICAgICA8 dXVpZD5mN2RiZjAwYi0yZTE1LTQ5OTEtYTQwNy1jZjI3YTNkNjVkMWU8L3V1aWQ+DQogICAgICA8 ZGVzY3JpcHRpb24+T3RoZXIgUFYgVmlydGlvLVNDU0kgKDY0LWJpdCk8L2Rlc2NyaXB0aW9uPg0K ICAgICAgPG1lbW9yeSB1bml0PSdLaUInPjQxOTQzMDQ8L21lbW9yeT4NCiAgICAgIDxjdXJyZW50 TWVtb3J5IHVuaXQ9J0tpQic+NDE5NDMwNDwvY3VycmVudE1lbW9yeT4NCiAgICAgIDx2Y3B1IHBs YWNlbWVudD0nc3RhdGljJz4yPC92Y3B1Pg0KICAgICAgPGNwdXR1bmU+DQogICAgICAgIDxzaGFy ZXM+MjAwMDwvc2hhcmVzPg0KICAgICAgPC9jcHV0dW5lPg0KICAgICAgPHJlc291cmNlPg0KICAg ICAgICA8cGFydGl0aW9uPi9tYWNoaW5lPC9wYXJ0aXRpb24+DQogICAgICA8L3Jlc291cmNlPg0K ICAgICAgPHN5c2luZm8gdHlwZT0nc21iaW9zJz4NCiAgICAgICAgPHN5c3RlbT4NCiAgICAgICAg ICA8ZW50cnkgbmFtZT0nbWFudWZhY3R1cmVyJz5BcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbjwv ZW50cnk+DQogICAgICAgICAgPGVudHJ5IG5hbWU9J3Byb2R1Y3QnPkNsb3VkU3RhY2sgS1ZNIEh5 cGVydmlzb3I8L2VudHJ5Pg0KICAgICAgICAgIDxlbnRyeSBuYW1lPSd1dWlkJz5mN2RiZjAwYi0y ZTE1LTQ5OTEtYTQwNy1jZjI3YTNkNjVkMWU8L2VudHJ5Pg0KICAgICAgICA8L3N5c3RlbT4NCiAg ICAgIDwvc3lzaW5mbz4NCiAgICAgIDxvcz4NCiAgICAgICAgPHR5cGUgYXJjaD0neDg2XzY0JyBt YWNoaW5lPSdwYy1pNDQwZngtcmhlbDcuMC4wJz5odm08L3R5cGU+DQogICAgICAgIDxib290IGRl dj0nY2Ryb20nLz4NCiAgICAgICAgPGJvb3QgZGV2PSdoZCcvPg0KICAgICAgICA8c21iaW9zIG1v ZGU9J3N5c2luZm8nLz4NCiAgICAgIDwvb3M+DQogICAgICA8ZmVhdHVyZXM+DQogICAgICAgIDxh Y3BpLz4NCiAgICAgICAgPGFwaWMvPg0KICAgICAgICA8cGFlLz4NCiAgICAgIDwvZmVhdHVyZXM+ DQogICAgICA8Y3B1IG1vZGU9J2N1c3RvbScgbWF0Y2g9J2V4YWN0JyBjaGVjaz0ncGFydGlhbCc+ DQogICAgICAgIDxtb2RlbCBmYWxsYmFjaz0nYWxsb3cnPkhhc3dlbGwtbm9UU1g8L21vZGVsPg0K ICAgICAgICA8ZmVhdHVyZSBwb2xpY3k9J3JlcXVpcmUnIG5hbWU9J2VybXMnLz4NCiAgICAgIDwv Y3B1Pg0KICAgICAgPGNsb2NrIG9mZnNldD0ndXRjJz4NCiAgICAgICAgPHRpbWVyIG5hbWU9J2t2 bWNsb2NrJy8+DQogICAgICA8L2Nsb2NrPg0KICAgICAgPG9uX3Bvd2Vyb2ZmPmRlc3Ryb3k8L29u X3Bvd2Vyb2ZmPg0KICAgICAgPG9uX3JlYm9vdD5yZXN0YXJ0PC9vbl9yZWJvb3Q+DQogICAgICA8 b25fY3Jhc2g+ZGVzdHJveTwvb25fY3Jhc2g+DQogICAgICA8ZGV2aWNlcz4NCiAgICAgICAgPGVt dWxhdG9yPi91c3IvbGliZXhlYy9xZW11LWt2bTwvZW11bGF0b3I+DQogICAgICAgIDxkaXNrIHR5 cGU9J25ldHdvcmsnIGRldmljZT0nZGlzayc+DQogICAgICAgICAgPGRyaXZlciBuYW1lPSdxZW11 JyB0eXBlPSdyYXcnIGNhY2hlPSdub25lJyBkaXNjYXJkPSd1bm1hcCcvPg0KICAgICAgICAgIDxh dXRoIHVzZXJuYW1lPSdjMDF6MDEnPg0KICAgICAgICAgICAgPHNlY3JldCB0eXBlPSdjZXBoJyB1 dWlkPScxMGEzMjg2Ny0zMzg2LTM2OWUtYTM5MS1jOGUwNWUwZmE4ZWQnLz4NCiAgICAgICAgICA8 L2F1dGg+DQogICAgICAgICAgPHNvdXJjZSBwcm90b2NvbD0ncmJkJyBuYW1lPSdjMDF6MDEvMjIz ZTA4YjAtOTI5Yy00YzQ3LTgzM2QtMWYxZGU0ODYxMGYzJz4NCiAgICAgICAgICAgIDxob3N0IG5h bWU9J2NlcGhtb25jMDEubnN2bHRuLmVuYS5uZXQnIHBvcnQ9JzY3ODknLz4NCiAgICAgICAgICA8 L3NvdXJjZT4NCiAgICAgICAgICA8YmFja2luZ1N0b3JlLz4NCiAgICAgICAgICA8dGFyZ2V0IGRl dj0nc2RhJyBidXM9J3Njc2knLz4NCiAgICAgICAgICA8aW90dW5lPg0KICAgICAgICAgICAgPHJl YWRfYnl0ZXNfc2VjPjUyNDI4ODAwMDwvcmVhZF9ieXRlc19zZWM+DQogICAgICAgICAgICA8d3Jp dGVfYnl0ZXNfc2VjPjUyNDI4ODAwMDwvd3JpdGVfYnl0ZXNfc2VjPg0KICAgICAgICAgICAgPHJl YWRfaW9wc19zZWM+NTAwPC9yZWFkX2lvcHNfc2VjPg0KICAgICAgICAgICAgPHdyaXRlX2lvcHNf c2VjPjUwMDwvd3JpdGVfaW9wc19zZWM+DQogICAgICAgICAgPC9pb3R1bmU+DQogICAgICAgICAg PHNlcmlhbD4yMjNlMDhiMDkyOWM0YzQ3ODMzZDwvc2VyaWFsPg0KICAgICAgICAgIDxhbGlhcyBu YW1lPSdzY3NpMC0wLTAtMCcvPg0KICAgICAgICAgIDxhZGRyZXNzIHR5cGU9J2RyaXZlJyBjb250 cm9sbGVyPScwJyBidXM9JzAnIHRhcmdldD0nMCcgdW5pdD0nMCcvPg0KICAgICAgICA8L2Rpc2s+ DQogICAgICAgIDxkaXNrIHR5cGU9J25ldHdvcmsnIGRldmljZT0nZGlzayc+DQogICAgICAgICAg PGRyaXZlciBuYW1lPSdxZW11JyB0eXBlPSdyYXcnIGNhY2hlPSdub25lJyBkaXNjYXJkPSd1bm1h cCcvPg0KICAgICAgICAgIDxhdXRoIHVzZXJuYW1lPSdjMDF6MDEnPg0KICAgICAgICAgICAgPHNl Y3JldCB0eXBlPSdjZXBoJyB1dWlkPScxMGEzMjg2Ny0zMzg2LTM2OWUtYTM5MS1jOGUwNWUwZmE4 ZWQnLz4NCiAgICAgICAgICA8L2F1dGg+DQogICAgICAgICAgPHNvdXJjZSBwcm90b2NvbD0ncmJk JyBuYW1lPSdjMDF6MDEvOTdlNWEyOTktMWVmZC00MGVkLTg1ZjQtYTVjMzY1YTU2NDE0Jz4NCiAg ICAgICAgICAgIDxob3N0IG5hbWU9J2NlcGhtb25jMDEubnN2bHRuLmVuYS5uZXQnIHBvcnQ9JzY3 ODknLz4NCiAgICAgICAgICA8L3NvdXJjZT4NCiAgICAgICAgICA8YmFja2luZ1N0b3JlLz4NCiAg ICAgICAgICA8dGFyZ2V0IGRldj0nc2RiJyBidXM9J3Njc2knLz4NCiAgICAgICAgICA8aW90dW5l Pg0KICAgICAgICAgICAgPHJlYWRfYnl0ZXNfc2VjPjUyNDI4ODAwMDwvcmVhZF9ieXRlc19zZWM+ DQogICAgICAgICAgICA8d3JpdGVfYnl0ZXNfc2VjPjUyNDI4ODAwMDwvd3JpdGVfYnl0ZXNfc2Vj Pg0KICAgICAgICAgICAgPHJlYWRfaW9wc19zZWM+NTAwPC9yZWFkX2lvcHNfc2VjPg0KICAgICAg ICAgICAgPHdyaXRlX2lvcHNfc2VjPjUwMDwvd3JpdGVfaW9wc19zZWM+DQogICAgICAgICAgPC9p b3R1bmU+DQogICAgICAgICAgPHNlcmlhbD45N2U1YTI5OTFlZmQ0MGVkODVmNDwvc2VyaWFsPg0K ICAgICAgICAgIDxhbGlhcyBuYW1lPSdzY3NpMC0wLTAtMScvPg0KICAgICAgICAgIDxhZGRyZXNz IHR5cGU9J2RyaXZlJyBjb250cm9sbGVyPScwJyBidXM9JzAnIHRhcmdldD0nMCcgdW5pdD0nMScv Pg0KICAgICAgICA8L2Rpc2s+DQogICAgICAgIDxkaXNrIHR5cGU9J2ZpbGUnIGRldmljZT0nY2Ry b20nPg0KICAgICAgICAgIDxkcml2ZXIgbmFtZT0ncWVtdScgdHlwZT0ncmF3JyBjYWNoZT0nbm9u ZScvPg0KICAgICAgICAgIDxiYWNraW5nU3RvcmUvPg0KICAgICAgICAgIDx0YXJnZXQgZGV2PSdo ZGMnIGJ1cz0naWRlJy8+DQogICAgICAgICAgPHJlYWRvbmx5Lz4NCiAgICAgICAgICA8YWxpYXMg bmFtZT0naWRlMC0xLTAnLz4NCiAgICAgICAgICA8YWRkcmVzcyB0eXBlPSdkcml2ZScgY29udHJv bGxlcj0nMCcgYnVzPScxJyB0YXJnZXQ9JzAnIHVuaXQ9JzAnLz4NCiAgICAgICAgPC9kaXNrPg0K ICAgICAgICA8Y29udHJvbGxlciB0eXBlPSdzY3NpJyBpbmRleD0nMCc+DQogICAgICAgICAgPGFs aWFzIG5hbWU9J3Njc2kwJy8+DQogICAgICAgICAgPGFkZHJlc3MgdHlwZT0ncGNpJyBkb21haW49 JzB4MDAwMCcgYnVzPScweDAwJyBzbG90PScweDA5JyBmdW5jdGlvbj0nMHgwJy8+DQogICAgICAg IDwvY29udHJvbGxlcj4NCiAgICAgICAgPGNvbnRyb2xsZXIgdHlwZT0ndXNiJyBpbmRleD0nMCcg bW9kZWw9J3BpaXgzLXVoY2knPg0KICAgICAgICAgIDxhbGlhcyBuYW1lPSd1c2InLz4NCiAgICAg ICAgICA8YWRkcmVzcyB0eXBlPSdwY2knIGRvbWFpbj0nMHgwMDAwJyBidXM9JzB4MDAnIHNsb3Q9 JzB4MDEnIGZ1bmN0aW9uPScweDInLz4NCiAgICAgICAgPC9jb250cm9sbGVyPg0KICAgICAgICA8 Y29udHJvbGxlciB0eXBlPSdwY2knIGluZGV4PScwJyBtb2RlbD0ncGNpLXJvb3QnPg0KICAgICAg ICAgIDxhbGlhcyBuYW1lPSdwY2kuMCcvPg0KICAgICAgICA8L2NvbnRyb2xsZXI+DQogICAgICAg IDxjb250cm9sbGVyIHR5cGU9J2lkZScgaW5kZXg9JzAnPg0KICAgICAgICAgIDxhbGlhcyBuYW1l PSdpZGUnLz4NCiAgICAgICAgICA8YWRkcmVzcyB0eXBlPSdwY2knIGRvbWFpbj0nMHgwMDAwJyBi dXM9JzB4MDAnIHNsb3Q9JzB4MDEnIGZ1bmN0aW9uPScweDEnLz4NCiAgICAgICAgPC9jb250cm9s bGVyPg0KICAgICAgICA8aW50ZXJmYWNlIHR5cGU9J2JyaWRnZSc+DQogICAgICAgICAgPG1hYyBh ZGRyZXNzPScwMjowMDowODpkYTowMDoxZCcvPg0KICAgICAgICAgIDxzb3VyY2UgYnJpZGdlPSdi cnZ4LTUzMTInLz4NCiAgICAgICAgICA8YmFuZHdpZHRoPg0KICAgICAgICAgICAgPGluYm91bmQg YXZlcmFnZT0nMTI4MDAwJyBwZWFrPScxMjgwMDAnLz4NCiAgICAgICAgICAgIDxvdXRib3VuZCBh dmVyYWdlPScxMjgwMDAnIHBlYWs9JzEyODAwMCcvPg0KICAgICAgICAgIDwvYmFuZHdpZHRoPg0K ICAgICAgICAgIDx0YXJnZXQgZGV2PSd2bmV0MzInLz4NCiAgICAgICAgICA8bW9kZWwgdHlwZT0n dmlydGlvJy8+DQogICAgICAgICAgPGFsaWFzIG5hbWU9J25ldDAnLz4NCiAgICAgICAgICA8YWRk cmVzcyB0eXBlPSdwY2knIGRvbWFpbj0nMHgwMDAwJyBidXM9JzB4MDAnIHNsb3Q9JzB4MDMnIGZ1 bmN0aW9uPScweDAnLz4NCiAgICAgICAgPC9pbnRlcmZhY2U+DQogICAgICAgIDxzZXJpYWwgdHlw ZT0ncHR5Jz4NCiAgICAgICAgICA8c291cmNlIHBhdGg9Jy9kZXYvcHRzLzI3Jy8+DQogICAgICAg ICAgPHRhcmdldCBwb3J0PScwJy8+DQogICAgICAgICAgPGFsaWFzIG5hbWU9J3NlcmlhbDAnLz4N CiAgICAgICAgPC9zZXJpYWw+DQogICAgICAgIDxjb25zb2xlIHR5cGU9J3B0eScgdHR5PScvZGV2 L3B0cy8yNyc+DQogICAgICAgICAgPHNvdXJjZSBwYXRoPScvZGV2L3B0cy8yNycvPg0KICAgICAg ICAgIDx0YXJnZXQgdHlwZT0nc2VyaWFsJyBwb3J0PScwJy8+DQogICAgICAgICAgPGFsaWFzIG5h bWU9J3NlcmlhbDAnLz4NCiAgICAgICAgPC9jb25zb2xlPg0KICAgICAgICA8aW5wdXQgdHlwZT0n dGFibGV0JyBidXM9J3VzYic+DQogICAgICAgICAgPGFsaWFzIG5hbWU9J2lucHV0MCcvPg0KICAg ICAgICA8L2lucHV0Pg0KICAgICAgICA8aW5wdXQgdHlwZT0nbW91c2UnIGJ1cz0ncHMyJy8+DQog ICAgICAgIDxpbnB1dCB0eXBlPSdrZXlib2FyZCcgYnVzPSdwczInLz4NCiAgICAgICAgPGdyYXBo aWNzIHR5cGU9J3ZuYycgcG9ydD0nNTkyNycgYXV0b3BvcnQ9J3llcycgbGlzdGVuPScxMC4xMC4x MC4xMCc+DQogICAgICAgICAgPGxpc3RlbiB0eXBlPSdhZGRyZXNzJyBhZGRyZXNzPScxMC4xMC4x MC4xMCcvPg0KICAgICAgICA8L2dyYXBoaWNzPg0KICAgICAgICA8dmlkZW8+DQogICAgICAgICAg PG1vZGVsIHR5cGU9J2NpcnJ1cycgdnJhbT0nMTYzODQnIGhlYWRzPScxJyBwcmltYXJ5PSd5ZXMn Lz4NCiAgICAgICAgICA8YWxpYXMgbmFtZT0ndmlkZW8wJy8+DQogICAgICAgICAgPGFkZHJlc3Mg dHlwZT0ncGNpJyBkb21haW49JzB4MDAwMCcgYnVzPScweDAwJyBzbG90PScweDAyJyBmdW5jdGlv bj0nMHgwJy8+DQogICAgICAgIDwvdmlkZW8+DQogICAgICAgIDxtZW1iYWxsb29uIG1vZGVsPSdu b25lJy8+DQogICAgICA8L2RldmljZXM+DQogICAgPC9kb21haW4+DQogICAgDQogICAgV2lsbCBt aWdyYXRlDQogICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KICAgIDxkb21haW4gdHlw ZT0na3ZtJyBpZD0nMjQnPg0KICAgICAgPG5hbWU+aS01MzItMTI5OC1OU1ZMVE48L25hbWU+DQog ICAgICA8dXVpZD5kNmVjNzRiOC00ZjZhLTQwNWMtODM0ZS1lY2U0MjE1MWI4MDI8L3V1aWQ+DQog ICAgICA8ZGVzY3JpcHRpb24+V2luZG93cyBQVjwvZGVzY3JpcHRpb24+DQogICAgICA8bWVtb3J5 IHVuaXQ9J0tpQic+NDE5NDMwNDwvbWVtb3J5Pg0KICAgICAgPGN1cnJlbnRNZW1vcnkgdW5pdD0n S2lCJz40MTk0MzA0PC9jdXJyZW50TWVtb3J5Pg0KICAgICAgPHZjcHUgcGxhY2VtZW50PSdzdGF0 aWMnPjE8L3ZjcHU+DQogICAgICA8Y3B1dHVuZT4NCiAgICAgICAgPHNoYXJlcz4xMDAwPC9zaGFy ZXM+DQogICAgICA8L2NwdXR1bmU+DQogICAgICA8cmVzb3VyY2U+DQogICAgICAgIDxwYXJ0aXRp b24+L21hY2hpbmU8L3BhcnRpdGlvbj4NCiAgICAgIDwvcmVzb3VyY2U+DQogICAgICA8c3lzaW5m byB0eXBlPSdzbWJpb3MnPg0KICAgICAgICA8c3lzdGVtPg0KICAgICAgICAgIDxlbnRyeSBuYW1l PSdtYW51ZmFjdHVyZXInPkFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9uPC9lbnRyeT4NCiAgICAg ICAgICA8ZW50cnkgbmFtZT0ncHJvZHVjdCc+Q2xvdWRTdGFjayBLVk0gSHlwZXJ2aXNvcjwvZW50 cnk+DQogICAgICAgICAgPGVudHJ5IG5hbWU9J3V1aWQnPmQ2ZWM3NGI4LTRmNmEtNDA1Yy04MzRl LWVjZTQyMTUxYjgwMjwvZW50cnk+DQogICAgICAgIDwvc3lzdGVtPg0KICAgICAgPC9zeXNpbmZv Pg0KICAgICAgPG9zPg0KICAgICAgICA8dHlwZSBhcmNoPSd4ODZfNjQnIG1hY2hpbmU9J3BjLWk0 NDBmeC1yaGVsNy4wLjAnPmh2bTwvdHlwZT4NCiAgICAgICAgPGJvb3QgZGV2PSdjZHJvbScvPg0K ICAgICAgICA8Ym9vdCBkZXY9J2hkJy8+DQogICAgICAgIDxzbWJpb3MgbW9kZT0nc3lzaW5mbycv Pg0KICAgICAgPC9vcz4NCiAgICAgIDxmZWF0dXJlcz4NCiAgICAgICAgPGFjcGkvPg0KICAgICAg ICA8YXBpYy8+DQogICAgICAgIDxwYWUvPg0KICAgICAgPC9mZWF0dXJlcz4NCiAgICAgIDxjcHUg bW9kZT0nY3VzdG9tJyBtYXRjaD0nZXhhY3QnIGNoZWNrPSdmdWxsJz4NCiAgICAgICAgPG1vZGVs IGZhbGxiYWNrPSdmb3JiaWQnPkhhc3dlbGw8L21vZGVsPg0KICAgICAgICA8ZmVhdHVyZSBwb2xp Y3k9J2Rpc2FibGUnIG5hbWU9J2hsZScvPg0KICAgICAgICA8ZmVhdHVyZSBwb2xpY3k9J2Rpc2Fi bGUnIG5hbWU9J3J0bScvPg0KICAgICAgICA8ZmVhdHVyZSBwb2xpY3k9J3JlcXVpcmUnIG5hbWU9 J2VybXMnLz4NCiAgICAgICAgPGZlYXR1cmUgcG9saWN5PSdyZXF1aXJlJyBuYW1lPSdoeXBlcnZp c29yJy8+DQogICAgICAgIDxmZWF0dXJlIHBvbGljeT0ncmVxdWlyZScgbmFtZT0neHNhdmVvcHQn Lz4NCiAgICAgIDwvY3B1Pg0KICAgICAgPGNsb2NrIG9mZnNldD0nbG9jYWx0aW1lJz4NCiAgICAg ICAgPHRpbWVyIG5hbWU9J3J0YycgdGlja3BvbGljeT0nY2F0Y2h1cCcvPg0KICAgICAgPC9jbG9j az4NCiAgICAgIDxvbl9wb3dlcm9mZj5kZXN0cm95PC9vbl9wb3dlcm9mZj4NCiAgICAgIDxvbl9y ZWJvb3Q+cmVzdGFydDwvb25fcmVib290Pg0KICAgICAgPG9uX2NyYXNoPmRlc3Ryb3k8L29uX2Ny YXNoPg0KICAgICAgPGRldmljZXM+DQogICAgICAgIDxlbXVsYXRvcj4vdXNyL2xpYmV4ZWMvcWVt dS1rdm08L2VtdWxhdG9yPg0KICAgICAgICA8ZGlzayB0eXBlPSduZXR3b3JrJyBkZXZpY2U9J2Rp c2snPg0KICAgICAgICAgIDxkcml2ZXIgbmFtZT0ncWVtdScgdHlwZT0ncmF3JyBjYWNoZT0nbm9u ZScvPg0KICAgICAgICAgIDxhdXRoIHVzZXJuYW1lPSdjMDF6MDEnPg0KICAgICAgICAgICAgPHNl Y3JldCB0eXBlPSdjZXBoJyB1dWlkPScxMGEzMjg2Ny0zMzg2LTM2OWUtYTM5MS1jOGUwNWUwZmE4 ZWQnLz4NCiAgICAgICAgICA8L2F1dGg+DQogICAgICAgICAgPHNvdXJjZSBwcm90b2NvbD0ncmJk JyBuYW1lPSdjMDF6MDEvZjBiNThlMjItZDA1YS00ODI1LThhNGEtZGYwMDAzYTI2MWIwJz4NCiAg ICAgICAgICAgIDxob3N0IG5hbWU9J2NlcGhtb25jMDEubnN2bHRuLmVuYS5uZXQnIHBvcnQ9JzY3 ODknLz4NCiAgICAgICAgICA8L3NvdXJjZT4NCiAgICAgICAgICA8YmFja2luZ1N0b3JlLz4NCiAg ICAgICAgICA8dGFyZ2V0IGRldj0ndmRhJyBidXM9J3ZpcnRpbycvPg0KICAgICAgICAgIDxpb3R1 bmU+DQogICAgICAgICAgICA8cmVhZF9ieXRlc19zZWM+NTI0Mjg4MDAwPC9yZWFkX2J5dGVzX3Nl Yz4NCiAgICAgICAgICAgIDx3cml0ZV9ieXRlc19zZWM+NTI0Mjg4MDAwPC93cml0ZV9ieXRlc19z ZWM+DQogICAgICAgICAgICA8cmVhZF9pb3BzX3NlYz41MDA8L3JlYWRfaW9wc19zZWM+DQogICAg ICAgICAgICA8d3JpdGVfaW9wc19zZWM+NTAwPC93cml0ZV9pb3BzX3NlYz4NCiAgICAgICAgICA8 L2lvdHVuZT4NCiAgICAgICAgICA8c2VyaWFsPmYwYjU4ZTIyZDA1YTQ4MjU4YTRhPC9zZXJpYWw+ DQogICAgICAgICAgPGFsaWFzIG5hbWU9J3ZpcnRpby1kaXNrMCcvPg0KICAgICAgICAgIDxhZGRy ZXNzIHR5cGU9J3BjaScgZG9tYWluPScweDAwMDAnIGJ1cz0nMHgwMCcgc2xvdD0nMHgwNCcgZnVu Y3Rpb249JzB4MCcvPg0KICAgICAgICA8L2Rpc2s+DQogICAgICAgIDxkaXNrIHR5cGU9J25ldHdv cmsnIGRldmljZT0nZGlzayc+DQogICAgICAgICAgPGRyaXZlciBuYW1lPSdxZW11JyB0eXBlPSdy YXcnIGNhY2hlPSdub25lJy8+DQogICAgICAgICAgPGF1dGggdXNlcm5hbWU9J2MwMXowMSc+DQog ICAgICAgICAgICA8c2VjcmV0IHR5cGU9J2NlcGgnIHV1aWQ9JzEwYTMyODY3LTMzODYtMzY5ZS1h MzkxLWM4ZTA1ZTBmYThlZCcvPg0KICAgICAgICAgIDwvYXV0aD4NCiAgICAgICAgICA8c291cmNl IHByb3RvY29sPSdyYmQnIG5hbWU9J2MwMXowMS9jZDBjMjgyMi0zOTEyLTQ3MzAtYWM1NS0yYzFi NGQ5OWFiMWQnPg0KICAgICAgICAgICAgPGhvc3QgbmFtZT0nY2VwaG1vbmMwMS5uc3ZsdG4uZW5h Lm5ldCcgcG9ydD0nNjc4OScvPg0KICAgICAgICAgIDwvc291cmNlPg0KICAgICAgICAgIDxiYWNr aW5nU3RvcmUvPg0KICAgICAgICAgIDx0YXJnZXQgZGV2PSd2ZGInIGJ1cz0ndmlydGlvJy8+DQog ICAgICAgICAgPGlvdHVuZT4NCiAgICAgICAgICAgIDxyZWFkX2J5dGVzX3NlYz41MjQyODgwMDA8 L3JlYWRfYnl0ZXNfc2VjPg0KICAgICAgICAgICAgPHdyaXRlX2J5dGVzX3NlYz41MjQyODgwMDA8 L3dyaXRlX2J5dGVzX3NlYz4NCiAgICAgICAgICAgIDxyZWFkX2lvcHNfc2VjPjUwMDwvcmVhZF9p b3BzX3NlYz4NCiAgICAgICAgICAgIDx3cml0ZV9pb3BzX3NlYz41MDA8L3dyaXRlX2lvcHNfc2Vj Pg0KICAgICAgICAgIDwvaW90dW5lPg0KICAgICAgICAgIDxzZXJpYWw+Y2QwYzI4MjIzOTEyNDcz MGFjNTU8L3NlcmlhbD4NCiAgICAgICAgICA8YWxpYXMgbmFtZT0ndmlydGlvLWRpc2sxJy8+DQog ICAgICAgICAgPGFkZHJlc3MgdHlwZT0ncGNpJyBkb21haW49JzB4MDAwMCcgYnVzPScweDAwJyBz bG90PScweDA1JyBmdW5jdGlvbj0nMHgwJy8+DQogICAgICAgIDwvZGlzaz4NCiAgICAgICAgPGRp c2sgdHlwZT0nZmlsZScgZGV2aWNlPSdjZHJvbSc+DQogICAgICAgICAgPGRyaXZlciBuYW1lPSdx ZW11JyB0eXBlPSdyYXcnIGNhY2hlPSdub25lJy8+DQogICAgICAgICAgPGJhY2tpbmdTdG9yZS8+ DQogICAgICAgICAgPHRhcmdldCBkZXY9J2hkYycgYnVzPSdpZGUnLz4NCiAgICAgICAgICA8cmVh ZG9ubHkvPg0KICAgICAgICAgIDxhbGlhcyBuYW1lPSdpZGUwLTEtMCcvPg0KICAgICAgICAgIDxh ZGRyZXNzIHR5cGU9J2RyaXZlJyBjb250cm9sbGVyPScwJyBidXM9JzEnIHRhcmdldD0nMCcgdW5p dD0nMCcvPg0KICAgICAgICA8L2Rpc2s+DQogICAgICAgIDxjb250cm9sbGVyIHR5cGU9J2lkZScg aW5kZXg9JzAnPg0KICAgICAgICAgIDxhbGlhcyBuYW1lPSdpZGUnLz4NCiAgICAgICAgICA8YWRk cmVzcyB0eXBlPSdwY2knIGRvbWFpbj0nMHgwMDAwJyBidXM9JzB4MDAnIHNsb3Q9JzB4MDEnIGZ1 bmN0aW9uPScweDEnLz4NCiAgICAgICAgPC9jb250cm9sbGVyPg0KICAgICAgICA8Y29udHJvbGxl ciB0eXBlPSd1c2InIGluZGV4PScwJyBtb2RlbD0ncGlpeDMtdWhjaSc+DQogICAgICAgICAgPGFs aWFzIG5hbWU9J3VzYicvPg0KICAgICAgICAgIDxhZGRyZXNzIHR5cGU9J3BjaScgZG9tYWluPScw eDAwMDAnIGJ1cz0nMHgwMCcgc2xvdD0nMHgwMScgZnVuY3Rpb249JzB4MicvPg0KICAgICAgICA8 L2NvbnRyb2xsZXI+DQogICAgICAgIDxjb250cm9sbGVyIHR5cGU9J3BjaScgaW5kZXg9JzAnIG1v ZGVsPSdwY2ktcm9vdCc+DQogICAgICAgICAgPGFsaWFzIG5hbWU9J3BjaS4wJy8+DQogICAgICAg IDwvY29udHJvbGxlcj4NCiAgICAgICAgPGludGVyZmFjZSB0eXBlPSdicmlkZ2UnPg0KICAgICAg ICAgIDxtYWMgYWRkcmVzcz0nMDI6MDA6Njg6YjQ6MDA6MGQnLz4NCiAgICAgICAgICA8c291cmNl IGJyaWRnZT0nYnJ2eC01MzEyJy8+DQogICAgICAgICAgPGJhbmR3aWR0aD4NCiAgICAgICAgICAg IDxpbmJvdW5kIGF2ZXJhZ2U9JzEyODAwMCcgcGVhaz0nMTI4MDAwJy8+DQogICAgICAgICAgICA8 b3V0Ym91bmQgYXZlcmFnZT0nMTI4MDAwJyBwZWFrPScxMjgwMDAnLz4NCiAgICAgICAgICA8L2Jh bmR3aWR0aD4NCiAgICAgICAgICA8dGFyZ2V0IGRldj0ndm5ldDE5Jy8+DQogICAgICAgICAgPG1v ZGVsIHR5cGU9J3ZpcnRpbycvPg0KICAgICAgICAgIDxhbGlhcyBuYW1lPSduZXQwJy8+DQogICAg ICAgICAgPGFkZHJlc3MgdHlwZT0ncGNpJyBkb21haW49JzB4MDAwMCcgYnVzPScweDAwJyBzbG90 PScweDAzJyBmdW5jdGlvbj0nMHgwJy8+DQogICAgICAgIDwvaW50ZXJmYWNlPg0KICAgICAgICA8 c2VyaWFsIHR5cGU9J3B0eSc+DQogICAgICAgICAgPHNvdXJjZSBwYXRoPScvZGV2L3B0cy8yMScv Pg0KICAgICAgICAgIDx0YXJnZXQgcG9ydD0nMCcvPg0KICAgICAgICAgIDxhbGlhcyBuYW1lPSdz ZXJpYWwwJy8+DQogICAgICAgIDwvc2VyaWFsPg0KICAgICAgICA8Y29uc29sZSB0eXBlPSdwdHkn IHR0eT0nL2Rldi9wdHMvMjEnPg0KICAgICAgICAgIDxzb3VyY2UgcGF0aD0nL2Rldi9wdHMvMjEn Lz4NCiAgICAgICAgICA8dGFyZ2V0IHR5cGU9J3NlcmlhbCcgcG9ydD0nMCcvPg0KICAgICAgICAg IDxhbGlhcyBuYW1lPSdzZXJpYWwwJy8+DQogICAgICAgIDwvY29uc29sZT4NCiAgICAgICAgPGlu cHV0IHR5cGU9J3RhYmxldCcgYnVzPSd1c2InPg0KICAgICAgICAgIDxhbGlhcyBuYW1lPSdpbnB1 dDAnLz4NCiAgICAgICAgPC9pbnB1dD4NCiAgICAgICAgPGlucHV0IHR5cGU9J21vdXNlJyBidXM9 J3BzMic+DQogICAgICAgICAgPGFsaWFzIG5hbWU9J2lucHV0MScvPg0KICAgICAgICA8L2lucHV0 Pg0KICAgICAgICA8aW5wdXQgdHlwZT0na2V5Ym9hcmQnIGJ1cz0ncHMyJz4NCiAgICAgICAgICA8 YWxpYXMgbmFtZT0naW5wdXQyJy8+DQogICAgICAgIDwvaW5wdXQ+DQogICAgICAgIDxncmFwaGlj cyB0eXBlPSd2bmMnIHBvcnQ9JzU5MTknIGF1dG9wb3J0PSd5ZXMnIGxpc3Rlbj0nMTAuMTAuMTAu MTAnPg0KICAgICAgICAgIDxsaXN0ZW4gdHlwZT0nYWRkcmVzcycgYWRkcmVzcz0nMTAuMTAuMTAu MTAnLz4NCiAgICAgICAgPC9ncmFwaGljcz4NCiAgICAgICAgPHZpZGVvPg0KICAgICAgICAgIDxt b2RlbCB0eXBlPSdjaXJydXMnIHZyYW09JzE2Mzg0JyBoZWFkcz0nMScgcHJpbWFyeT0neWVzJy8+ DQogICAgICAgICAgPGFsaWFzIG5hbWU9J3ZpZGVvMCcvPg0KICAgICAgICAgIDxhZGRyZXNzIHR5 cGU9J3BjaScgZG9tYWluPScweDAwMDAnIGJ1cz0nMHgwMCcgc2xvdD0nMHgwMicgZnVuY3Rpb249 JzB4MCcvPg0KICAgICAgICA8L3ZpZGVvPg0KICAgICAgICA8bWVtYmFsbG9vbiBtb2RlbD0nbm9u ZScvPg0KICAgICAgPC9kZXZpY2VzPg0KICAgICAgPHNlY2xhYmVsIHR5cGU9J25vbmUnIG1vZGVs PSdub25lJy8+DQogICAgICA8c2VjbGFiZWwgdHlwZT0nZHluYW1pYycgbW9kZWw9J2RhYycgcmVs YWJlbD0neWVzJz4NCiAgICAgICAgPGxhYmVsPisxMDc6KzEwNzwvbGFiZWw+DQogICAgICAgIDxp bWFnZWxhYmVsPisxMDc6KzEwNzwvaW1hZ2VsYWJlbD4NCiAgICAgIDwvc2VjbGFiZWw+DQogICAg PC9kb21haW4+DQogICAgDQogICAgDQogICAgRGF2aWQgTWFicnkNCiAgICBNYW5hZ2VyIG9mIFN5 c3RlbXMgRW5naW5lZXJpbmcNCiAgICBPbiAxLzI5LzE4LCA1OjMwIFBNLCAiVHV0a293c2tpLCBN aWtlIiA8TWlrZS5UdXRrb3dza2lAbmV0YXBwLmNvbT4gd3JvdGU6DQogICAgDQogICAgICAgIEhp IERhdmlkLA0KICAgICAgICANCiAgICAgICAgU28sIEkgZG9u4oCZdCBrbm93IGlmIHdoYXQgSSBh bSBnb2luZyB0byBzYXkgaGVyZSB3aWxsIGF0IGFsbCBiZSBvZiB1c2UgdG8geW91LCBidXQgbWF5 YmUuIDopDQogICAgICAgIA0KICAgICAgICBJIGhhZCBhIGN1c3RvbWVyIG9uZSB0aW1lIG1lbnRp b24gdG8gbWUgdGhhdCBoZSBoYWQgdHJvdWJsZSB3aXRoIGxpdmUgVk0gbWlncmF0aW9uIG9uIEtW TSB3aXRoIGEgVk0gdGhhdCB3YXMgY3JlYXRlZCBvbiBhbiBvbGRlciB2ZXJzaW9uIG9mIENsb3Vk U3RhY2suIExpdmUgVk0gbWlncmF0aW9uIHdvcmtlZCBmaW5lIGZvciB0aGVzZSBWTXMgb24gdGhl IG9sZGVyIHZlcnNpb24gb2YgQ2xvdWRTdGFjayAoSSB0aGluayBpdCB3YXMgdmVyc2lvbiA0LjUp IGFuZCBzdG9wcGVkIHdvcmtpbmcgd2hlbiBoZSB1cGdyYWRlZCB0byA0LjguIE5ldyBWTXMgKFZN cyBjcmVhdGVkIG9uIHRoZSBuZXdlciB2ZXJzaW9uIG9mIENsb3VkU3RhY2spIHdvcmtlZCBmaW5l IGZvciB0aGlzIGZlYXR1cmUgb24gNC44LCBidXQgb2xkIFZNcyBoYWQgdG8gYmUgc3RvcHBlZCBh bmQgcmUtc3RhcnRlZCBmb3IgbGl2ZSBWTSBtaWdyYXRpb24gdG8gd29yay4gSSBiZWxpZXZlIHRo ZSBvbGRlciB2ZXJzaW9uIG9mIENsb3VkU3RhY2sgd2FzIG5vdCBwbGFjaW5nIHRoZSBzZXJpYWwg bnVtYmVyIG9mIHRoZSBWTSBpbiB0aGUgVk3igJlzIFhNTCBkZXNjcmlwdG9yIGZpbGUsIGJ1dCBu ZXdlciB2ZXJzaW9ucyBvZiBDbG91ZFN0YWNrIHdlcmUgZXhwZWN0aW5nIHRoaXMgZmllbGQuDQog ICAgICAgIA0KICAgICAgICBDYW4geW91IGR1bXAgdGhlIFhNTCBvZiBvbmUgb3IgYm90aCBvZiB5 b3VyIFZNcyB0aGF0IGRvbuKAmXQgbGl2ZSBtaWdyYXRlIGFuZCBzZWUgaWYgdGhleSBoYXZlIHRo ZSBzZXJpYWwgbnVtYmVyIGZpZWxkIGluIHRoZWlyIFhNTD8gVGhlbiwgSeKAmWQgcmVjb21tZW5k IGR1bXBpbmcgdGhlIFhNTCBvZiB0aGUgVk0gdGhhdCB3b3JrcyBhbmQgc2VlaW5nIGlmIGl0IGRv ZXMsIGluIGZhY3QsIGhhdmUgdGhlIHNlcmlhbCBudW1iZXIgZmllbGQgaW4gaXRzIFhNTC4NCiAg ICAgICAgDQogICAgICAgIEkgaG9wZSB0aGlzIGlzIG9mIHNvbWUgaGVscC4NCiAgICAgICAgDQog ICAgICAgIFRhbGsgdG8geW91IGxhdGVyLA0KICAgICAgICBNaWtlDQogICAgICAgIA0KICAgICAg ICBPbiAxLzI5LzE4LCAxMTo0OCBBTSwgIkRhdmlkIE1hYnJ5IiA8ZG1hYnJ5QGVuYS5jb20uSU5W QUxJRD4gd3JvdGU6DQogICAgICAgIA0KICAgICAgICAgICAgR29vZCBkYXkgQ2xvdWRzdGFjayBE ZXZzLA0KICAgICAgICAgICAgDQogICAgICAgICAgICBJJ3ZlIHJ1biBhY3Jvc3MgYSByZWFsIGhl YWQgc2NyYXRjaGVyLiAgSSBoYXZlIHR3byBWTXMsIChpbml0aWFsbHkgMyBWTXMsIGJ1dCBtb3Jl IG9uIHRoYXQgbGF0ZXIpIG9uIGEgc2luZ2xlIGhvc3QsIHRoYXQgSSBjYW5ub3QgbGl2ZSBtaWdy YXRlIHRvIGFueSBvdGhlciBob3N0IGluIHRoZSBzYW1lIGNsdXN0ZXIuICBXZSBkaXNjb3ZlcmVk IHRoaXMgYWZ0ZXIgYXR0ZW1wdGluZyB0byByb2xsIG91dCBwYXRjaGVzIGdvaW5nIGZyb20gQ2Vu dE9TIDcuMiB0byBDZW50T1MgNy40LiAgSW5pdGlhbGx5LCB3ZSB0aG91Z2h0IGl0IGhhZCBzb21l dGhpbmcgdG8gZG8gd2l0aCB0aGUgbmV3IHZlcnNpb24gb2YgbGlidmlydGQgb3IgcWVtdS1rdm0g b24gdGhlIG90aGVyIGhvc3RzIGluIHRoZSBjbHVzdGVyIHByZXZlbnRpbmcgdGhlc2UgVk1zIGZy b20gbWlncmF0aW5nLCBidXQgd2UgYXJlIGFibGUgdG8gbGl2ZSBtaWdyYXRlIG90aGVyIFZNcyB0 byBhbmQgZnJvbSB0aGlzIGhvc3Qgd2l0aG91dCBpc3N1ZS4gIFdlIGNhbiBldmVuIGNyZWF0ZSBu ZXcgVk1zIG9uIHRoaXMgc3BlY2lmaWMgaG9zdCBhbmQgbGl2ZSBtaWdyYXRlIHRoZW0gYWZ0ZXIg Y3JlYXRpb24gd2l0aCBubyBpc3N1ZS4gIFdlJ3ZlIHB1dCB0aGUgbWlncmF0aW9uIHNvdXJjZSBh Z2VudCwgbWlncmF0aW9uIGRlc3RpbmF0aW9uIGFnZW50IGFuZCB0aGUgbWFuYWdlbWVudCBzZXJ2 ZXIgaW4gZGVidWcgYW5kIGRvbid0IHNlZW0gdG8gZ2V0IGFueXRoaW5nIHVzZWZ1bCBvdGhlciB0 aGFuICJVbnN1cHBvcnRlZCBjb21tYW5kIi4gIEx1Y2tpbHksIHdlIGRpZCBoYXZlIG9uZSBWTSB0 aGF0IHdhcyBzaHV0ZG93biBhbmQgcmVzdGFydGVkLCB0aGlzIGlzIHRoZSAzcmQgVk0gbWVudGlv bmVkIGFib3ZlLiAgU2luY2UgdGhhdCBWTSBoYXMgYmVlbiByZXN0YXJ0ZWQsIGl0IGhhcyBubyBp c3N1ZXMgbGl2ZSBtaWdyYXRpbmcgdG8gYW55IG90aGVyIGhvc3QgaW4gdGhlIGNsdXN0ZXIuDQog ICAgICAgICAgICANCiAgICAgICAgICAgIEknbSBhdCBhIGxvc3MgYXMgdG8gd2hhdCB0byB0cnkg bmV4dCBhbmQgSSdtIGhvcGluZyB0aGF0IHNvbWVvbmUgb3V0IHRoZXJlIG1pZ2h0IGhhdmUgaGFk IGEgc2ltaWxhciBpc3N1ZSBhbmQgY291bGQgc2hlZCBzb21lIGxpZ2h0IG9uIHdoYXQgdG8gZG8u ICBPYnZpb3VzbHksIEkgY2FuIGNvbnRhY3QgdGhlIGN1c3RvbWVyIGFuZCBoYXZlIHRoZW0gc2h1 dGRvd24gdGhlaXIgVk1zLCBidXQgdGhhdCB3aWxsIHBvdGVudGlhbGx5IGp1c3QgZGVsYXkgdGhp cyBwcm9ibGVtIHRvIGJlIHNvbHZlZCBhbm90aGVyIGRheS4gIEV2ZW4gaWYgc2h1dHRpbmcgZG93 biB0aGUgVk1zIGlzIHVsdGltYXRlbHkgdGhlIHNvbHV0aW9uLCBJJ2Qgc3RpbGwgbGlrZSB0byB1 bmRlcnN0YW5kIHdoYXQgaGFwcGVuZWQgdG8gY2F1c2UgdGhpcyBpc3N1ZSBpbiB0aGUgZmlyc3Qg cGxhY2Ugd2l0aCB0aGUgaG9wZXMgb2YgcHJldmVudGluZyBpdCBpbiB0aGUgZnV0dXJlLg0KICAg ICAgICAgICAgDQogICAgICAgICAgICBIZXJlJ3Mgc29tZSBpbmZvcm1hdGlvbiBhYm91dCBteSBz ZXR1cDoNCiAgICAgICAgICAgIENsb3Vkc3RhY2sgNC44IEFkdmFuY2VkIE5ldHdvcmtpbmcNCiAg ICAgICAgICAgIENlbnRPUyA3LjIgYW5kIDcuNCBIb3N0cw0KICAgICAgICAgICAgQ2VwaCBSQkQg UHJpbWFyeSBTdG9yYWdlDQogICAgICAgICAgICBORlMgU2Vjb25kYXJ5IFN0b3JhZ2UNCiAgICAg ICAgICAgIEluc3RhbmNlIGluIFF1ZXN0aW9uIGZvciBEZWJ1ZzogaS01MzItMTM5Mi1OU1ZMVE4N CiAgICAgICAgICAgIA0KICAgICAgICAgICAgSSBoYXZlIGF0dGFjaGVkIHJlbGV2YW50IGRlYnVn IGxvZ3MgdG8gdGhpcyBlbWFpbCBpZiBhbnlvbmUgd2lzaGVzIHRvIHRha2UgYSBsb29rLiAgSSB0 aGluayB0aGUgbW9zdCBpbnRlcmVzdGluZyBlcnJvciBtZXNzYWdlIHRoYXQgSSBoYXZlIHJlY2Vp dmVkIGlzIHRoZSBmb2xsb3dpbmc6DQogICAgICAgICAgICANCiAgICAgICAgICAgIDQ2ODM5MDoy MDE4LTAxLTI3IDA4OjU5OjM1LDE3MiBERUJVRyBbYy5jLmEudC5SZXF1ZXN0XSAoV29yay1Kb2It RXhlY3V0b3ItNjpjdHgtMTg4ZWEzMGYgam9iLTE4MTc5Mi9qb2ItMTgxODAyIGN0eC04ZTdmNDVh ZCkgKGxvZ2lkOmYwODg4MzYyKSBTZXEgMjItOTQyMzc4MjIyMDI3Mjc2MzE5OiBSZWNlaXZlZDog IHsgQW5zOiAsIE1nbXRJZDogMTQwMzgwMTI3MDM2MzQsIHZpYTogMjIoY3NoMDJjMDF6MDEubnN2 bHRuLmVuYS5uZXQpLCBWZXI6IHYxLCBGbGFnczogMTEwLCB7IFVuc3VwcG9ydGVkQW5zd2VyIH0g fQ0KICAgICAgICAgICAgNDY4MzkxOjIwMTgtMDEtMjcgMDg6NTk6MzUsMTcyIFdBUk4gIFtjLmMu YS5tLkFnZW50TWFuYWdlckltcGxdIChXb3JrLUpvYi1FeGVjdXRvci02OmN0eC0xODhlYTMwZiBq b2ItMTgxNzkyL2pvYi0xODE4MDIgY3R4LThlN2Y0NWFkKSAobG9naWQ6ZjA4ODgzNjIpIFVuc3Vw cG9ydGVkIENvbW1hbmQ6IFVuc3VwcG9ydGVkIGNvbW1hbmQgaXNzdWVkOiBjb20uY2xvdWQuYWdl bnQuYXBpLlByZXBhcmVGb3JNaWdyYXRpb25Db21tYW5kLiAgQXJlIHlvdSBzdXJlIHlvdSBnb3Qg dGhlIHJpZ2h0IHR5cGUgb2Ygc2VydmVyPw0KICAgICAgICAgICAgNDY4MzkyOjIwMTgtMDEtMjcg MDg6NTk6MzUsMTc5IEVSUk9SIFtjLmMudi5WbVdvcmtKb2JIYW5kbGVyUHJveHldIChXb3JrLUpv Yi1FeGVjdXRvci02OmN0eC0xODhlYTMwZiBqb2ItMTgxNzkyL2pvYi0xODE4MDIgY3R4LThlN2Y0 NWFkKSAobG9naWQ6ZjA4ODgzNjIpIEludm9jYXRpb24gZXhjZXB0aW9uLCBjYXVzZWQgYnk6IGNv bS5jbG91ZC5leGNlcHRpb24uQWdlbnRVbmF2YWlsYWJsZUV4Y2VwdGlvbjogUmVzb3VyY2UgW0hv c3Q6MjJdIGlzIHVucmVhY2hhYmxlOiBIb3N0IDIyOiBVbmFibGUgdG8gcHJlcGFyZSBmb3IgbWln cmF0aW9uIGR1ZSB0byBVbnN1cHBvcnRlZCBjb21tYW5kIGlzc3VlZDogY29tLmNsb3VkLmFnZW50 LmFwaS5QcmVwYXJlRm9yTWlncmF0aW9uQ29tbWFuZC4gIEFyZSB5b3Ugc3VyZSB5b3UgZ290IHRo ZSByaWdodCB0eXBlIG9mIHNlcnZlcj8NCiAgICAgICAgICAgIDQ2ODM5MzoyMDE4LTAxLTI3IDA4 OjU5OjM1LDE3OSBJTkZPICBbYy5jLnYuVm1Xb3JrSm9iSGFuZGxlclByb3h5XSAoV29yay1Kb2It RXhlY3V0b3ItNjpjdHgtMTg4ZWEzMGYgam9iLTE4MTc5Mi9qb2ItMTgxODAyIGN0eC04ZTdmNDVh ZCkgKGxvZ2lkOmYwODg4MzYyKSBSZXRocm93IGV4Y2VwdGlvbiBjb20uY2xvdWQuZXhjZXB0aW9u LkFnZW50VW5hdmFpbGFibGVFeGNlcHRpb246IFJlc291cmNlIFtIb3N0OjIyXSBpcyB1bnJlYWNo YWJsZTogSG9zdCAyMjogVW5hYmxlIHRvIHByZXBhcmUgZm9yIG1pZ3JhdGlvbiBkdWUgdG8gVW5z dXBwb3J0ZWQgY29tbWFuZCBpc3N1ZWQ6IGNvbS5jbG91ZC5hZ2VudC5hcGkuUHJlcGFyZUZvck1p Z3JhdGlvbkNvbW1hbmQuICBBcmUgeW91IHN1cmUgeW91IGdvdCB0aGUgcmlnaHQgdHlwZSBvZiBz ZXJ2ZXI/DQogICAgICAgICAgICANCiAgICAgICAgICAgIEkndmUgdHJhY2tlZCB0aGlzICJVbnN1 cHBvcnRlZCBjb21tYW5kIiBkb3duIGluIHRoZSBDUyA0LjggY29kZSB0byBjbG91ZHN0YWNrL2Fw aS9zcmMvY29tL2Nsb3VkL2FnZW50L2FwaS9BbnN3ZXIuamF2YSB3aGljaCBpcyB0aGUgZ2VuZXJp YyBhbnN3ZXIgY2xhc3MuICBJIGJlbGlldmUgd2hlcmUgdGhlIGVycm9yIGlzIHJlYWxseSBiZWlu ZyBzcGF3bmVkIGZyb20gaXMgY2xvdWRzdGFjay9lbmdpbmUvb3JjaGVzdHJhdGlvbi9zcmMvY29t L2Nsb3VkL3ZtL1ZpcnR1YWxNYWNoaW5lTWFuYWdlckltcGwuamF2YS4gIFNwZWNpZmljYWxseToN CiAgICAgICAgICAgICAgICAgICAgQW5zd2VyIHBmbWEgPSBudWxsOw0KICAgICAgICAgICAgICAg ICAgICB0cnkgew0KICAgICAgICAgICAgICAgICAgICAgICAgcGZtYSA9IF9hZ2VudE1nci5zZW5k KGRzdEhvc3RJZCwgcGZtYyk7DQogICAgICAgICAgICAgICAgICAgICAgICBpZiAocGZtYSA9PSBu dWxsIHx8ICFwZm1hLmdldFJlc3VsdCgpKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ZmluYWwgU3RyaW5nIGRldGFpbHMgPSBwZm1hICE9IG51bGwgPyBwZm1hLmdldERldGFpbHMoKSA6 ICJudWxsIGFuc3dlciByZXR1cm5lZCI7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlu YWwgU3RyaW5nIG1zZyA9ICJVbmFibGUgdG8gcHJlcGFyZSBmb3IgbWlncmF0aW9uIGR1ZSB0byAi ICsgZGV0YWlsczsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZm1hID0gbnVsbDsNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgQWdlbnRVbmF2YWlsYWJsZUV4Y2Vw dGlvbihtc2csIGRzdEhvc3RJZCk7DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg ICAgICANCiAgICAgICAgICAgIFRoZSBwZm1hIHJldHVybmVkIG11c3QgYmUgaW4gZXJyb3Igb3Ig aXMgbmV2ZXIgcmV0dXJuZWQgYW5kIHRoZXJlZm9yZSBzdGlsbCBudWxsLiAgVGhhdCBhbnN3ZXIg YXBwZWFycyB0aGF0IGl0IHNob3VsZCBiZSBjb21pbmcgZnJvbSB0aGUgZGVzdGluYXRpb24gYWdl bnQsIGJ1dCBmb3IgdGhlIGxpZmUgb2YgbWUgSSBjYW4ndCBmaWd1cmUgb3V0IHdoYXQgdGhlIHJv b3QgY2F1c2Ugb2YgdGhpcyBlcnJvciBpcyBiZXlvbmQsICJVbnN1cHBvcnRlZCBjb21tYW5kIGlz c3VlZCIuICBXaGF0IGNvbW1hbmQgaXMgdW5zdXBwb3J0ZWQ/ICBNeSBndWVzcyBpcyB0aGF0IGl0 IGNvdWxkIGJlIHNvbWV0aGluZyB3cm9uZyB3aXRoIHRoZSBkeG1sIHRoYXQgaXMgZ2VuZXJhdGVk IGFuZCBwYXNzZWQgdG8gdGhlIGRlc3RpbmF0aW9uIGhvc3QsIGJ1dCBJIGhhdmUgYXMgeWV0IGJl ZW4gdW5hYmxlIHRvIGNhdGNoIHRoYXQgZHhtbCBpbiBkZWJ1Zy4NCiAgICAgICAgICAgIA0KICAg ICAgICAgICAgQW55IGhlbHAgb3IgZ3VpZGFuY2UgaXMgZ3JlYXRseSBhcHByZWNpYXRlZC4NCiAg ICAgICAgICAgIA0KICAgICAgICAgICAgVGhhbmtzLA0KICAgICAgICAgICAgRGF2aWQgTWFicnkN CiAgICAgICAgICAgIA0KICAgICAgICAgICAgDQogICAgICAgIA0KICAgICAgICANCiAgICANCiAg ICANCg0K