From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150057.outbound.protection.outlook.com [40.107.15.57]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 011403CB37 for ; Sat, 23 Mar 2019 14:35:18 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=darbyshire-bryant.me.uk; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zt4ceKE6qiqg6iFdyEaKlshRA/mKyt3dPs5Gt+qpXPM=; b=Q+Wr57kdCXJDGBWeoB9tibORW2RP+fvl4rWC7lHgrcU8zC3y2EAeii7ynxeOkIfBHVU6yt80nsAL85coVHJvbwA9kNw5ElD2ngLpBmqdjnFfEr0FwWNo+6omlY9WVDGzmKKQ/HTBGJOBtUkaJ01u5IDCEEGJRQExahzKanrSbew= Received: from VI1PR0302MB2750.eurprd03.prod.outlook.com (10.171.105.143) by VI1PR0302MB3277.eurprd03.prod.outlook.com (52.134.12.33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1709.14; Sat, 23 Mar 2019 18:35:17 +0000 Received: from VI1PR0302MB2750.eurprd03.prod.outlook.com ([fe80::a8fc:70f:5750:d2d8]) by VI1PR0302MB2750.eurprd03.prod.outlook.com ([fe80::a8fc:70f:5750:d2d8%9]) with mapi id 15.20.1730.017; Sat, 23 Mar 2019 18:35:17 +0000 From: Kevin Darbyshire-Bryant To: Sebastian Moeller CC: "cake@lists.bufferbloat.net" Thread-Topic: [Cake] act_conndscp Thread-Index: AQHU3o+VGM4JPoMjWUSh6GZjNAw0p6YTdwgAgAAA9gCAAGWuAIAAUikAgAADwQCAAAZEgIAADuKAgAAFsICAA9+1AIABYxEA Date: Sat, 23 Mar 2019 18:35:17 +0000 Message-ID: References: <7E711BD9-DE6A-4385-8A55-401812D998E8@gmx.de> <7331132F-F80A-4903-8CD0-48946CFE38FD@darbyshire-bryant.me.uk> <263A35BC-A25C-4CC0-9E75-99A7FAF33D36@gmx.de> In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=kevin@darbyshire-bryant.me.uk; x-originating-ip: [2a02:c7f:1240:ee00::dc83] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 30d93df9-b947-44f0-2d6f-08d6afbe4c21 x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(7021145)(8989299)(4534185)(7022145)(4603075)(4627221)(201702281549075)(8990200)(7048125)(7024125)(7027125)(7023125)(5600127)(711020)(4605104)(2017052603328)(7153060)(49563074)(7193020); SRVR:VI1PR0302MB3277; x-ms-traffictypediagnostic: VI1PR0302MB3277: x-microsoft-antispam-prvs: x-forefront-prvs: 0985DA2459 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(376002)(136003)(39830400003)(396003)(366004)(346002)(189003)(199004)(7736002)(46003)(106356001)(105586002)(256004)(36756003)(66574012)(99936001)(93886005)(71190400001)(99286004)(5660300002)(86362001)(316002)(71200400001)(83716004)(6116002)(25786009)(2616005)(508600001)(81156014)(81166006)(33656002)(2906002)(14454004)(6916009)(229853002)(102836004)(6512007)(6246003)(82746002)(76176011)(97736004)(53936002)(68736007)(476003)(6436002)(8676002)(53546011)(486006)(11346002)(6486002)(8936002)(74482002)(186003)(4326008)(6506007)(305945005)(446003); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0302MB3277; H:VI1PR0302MB2750.eurprd03.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: darbyshire-bryant.me.uk does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: FsvEzy8JhtlygrqHS878OyHU0W/tiw2m3zF2fIamyLJBO7YDuWScDlMwhSrLYL2QsKIDlco8WDYOcWZvedm2CqwOQNfsCe71T3Gd+i6QrnAb+F/4km3DcErRYdNOvYHbzcX834rA8/I46Lv8Lj6xmXsthqw/MhP7YbZy0rO/zSoxkbgXWxDnlZ65Y1mn1TJO6TeEmxiWzfWTcwQP7qvpLN2t6iGstIbORFsQTkrR3JDTHeAcWSQUiccYYB9eJLA2xDQD/bY/lXjqLpx4pFwnTVLke1tTtAeCHZMEQIWnInxfvUtm1TBlctLCTpw2QZMwtDFvOI21G65b4ehhfpj5+LYeIuOsfIGyCxne/lBnopRvtXpgPEbROl6aWgdCHpXwdFgQZ5RbggOjcYDidhkm/OGhtIxo3CytLbNBGLj/J7o= Content-Type: multipart/mixed; boundary="_004_E1A8CA337CBF456B81DDB5A109A863D4darbyshirebryantmeuk_" MIME-Version: 1.0 X-OriginatorOrg: darbyshire-bryant.me.uk X-MS-Exchange-CrossTenant-Network-Message-Id: 30d93df9-b947-44f0-2d6f-08d6afbe4c21 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Mar 2019 18:35:17.3702 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 9151708b-c553-406f-8e56-694f435154a4 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0302MB3277 Subject: Re: [Cake] act_conndscp X-BeenThere: cake@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: Cake - FQ_codel the next generation List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 23 Mar 2019 18:35:19 -0000 --_004_E1A8CA337CBF456B81DDB5A109A863D4darbyshirebryantmeuk_ Content-Type: text/plain; charset="utf-8" Content-ID: <27D52835AF833A4D83F1560008D39553@eurprd03.prod.outlook.com> Content-Transfer-Encoding: base64 DQoNCj4gT24gMjIgTWFyIDIwMTksIGF0IDIxOjI0LCBLZXZpbiBEYXJieXNoaXJlLUJyeWFudCA8 a2V2aW5AZGFyYnlzaGlyZS1icnlhbnQubWUudWs+IHdyb3RlOg0KPiANCj4gSXQgbG9va3MgbGlr ZSBhY3RfY29ubmRzY3AgaGFzIGJlZW4gc2hvdCBkb3duIGJ5IHRoZSBrZXJuZWwgcGVvcGxlLCBh dCBsZWFzdCBpbiBpdHMgY3VycmVudCBmb3JtLiAgU2V0dGluZyBhIGNvbm50cmFjayBtYXJrIGZy b20gdGMgaXMgcmVnYXJkZWQgYXMg4oCcbm90IHN1cmUgaWYgaXQgaXMgYSBnb29kIGlkZWHigJ0u ICBUaGUgb3RoZXIgd2F5IChjb25udHJhY2sgdG8gc2tiKSBpcyBmaW5lLiAgVGhhdOKAmXMgc29y dCBvZiBnb29kIG5ld3MgaW4gdGhhdCBpbmdyZXNzIGlzIHRoZSBoYXJkIGJpdCBhcyBpdOKAmXMg cHJvYmxlbWF0aWMgd2l0aCBpcHRhYmxlcy4NCj4gDQo+IGVncmVzcyBpcyB3aXRoaW4gaXB0YWJs ZXMgY292ZXJhZ2UgLSDigJhqdXN04oCZIG5lZWQgYSB3YXkgdG8gc3RvcmUgYSBEU0NQICYgZmxh ZyB0byBjb25udHJhY2sgbWFyay4NCg0KTmV2ZXIgZ2l2ZSBpbiwgbmV2ZXIgc3VycmVuZGVyLg0K DQpIYWNrZWQgdG9nZXRoZXIgYW4gaXB0YWJsZXMgY29ubm1hcmsgZXh0ZW5zaW9uIHRoYXQgc2F2 ZXMgdGhlIERTQ1AgKGFuZCBvcHRpb25hbCBzdGF0dXMgYml0L3MpIHRvIHRoZSBjb25udHJhY2sg bWFyayByZWFkeSBmb3IgdGhlIOKAmXNldOKAmSBwYXJ0IG9mIHRoZSB0YyBjb25uZHNjcCBhY3Rp b24uICBTbyB3ZSBoYXZlIHRoZSB0d28gcGFydHMgb2YgdGhlIG9wZXJhdGlvbiBoYXBwZW5pbmcg YWNyb3NzIHR3byBkaWZmZXJlbnQgc3Vic3lzdGVtcyAoaXB0YWJsZXMgZm9yIHRoZSBEU0NQLT5j b25ubWFyayAtIHRjIGFjdGlvbiBmb3IgdGhlIGNvbm5tYXJrIC0+IERTQ1ApDQoNClR3byBwYXRj aGVzIC0gb25lIGtlcm5lbCBzcGFjZSBhbmQgcG9zc2libHkgdG9sZXJhYmxlLiAgT25lIHVzZXIg c3BhY2Ugd2hpY2ggaXMgYW4gaXB0YWJsZXMgY29weSZwYXN0ZSBhYm9taW5hdGlvbiBidXQgaXQg KmRvZXMqIHdvcmsgb24gbXkgb3BlbndydCByb3V0ZXIuDQoNCkFuZCB5ZXQgYW5vdGhlciB2ZXJz aW9uIG9mIOKAmG15X2xheWVyX2Nha2XigJkgc2hvd2luZyBob3cgSSB1c2UgaXQuDQoNCg0KQ2hl ZXJzLA0KDQpLZXZpbiBELUINCg0KZ3BnOiAwMTJDIEFDQjIgMjhDNiBDNTNFIDk3NzUgIDkxMjMg QjNBMiAzODlCIDlERTIgMzM0QQ0K --_004_E1A8CA337CBF456B81DDB5A109A863D4darbyshirebryantmeuk_ Content-Type: application/octet-stream; name="0001-xt_connmark-savedscp.patch" Content-Description: 0001-xt_connmark-savedscp.patch Content-Disposition: attachment; filename="0001-xt_connmark-savedscp.patch"; size=2533; creation-date="Sat, 23 Mar 2019 18:35:17 GMT"; modification-date="Sat, 23 Mar 2019 18:35:17 GMT" Content-ID: <134F1132C4D18649B29252B859881EF6@eurprd03.prod.outlook.com> Content-Transfer-Encoding: base64 RnJvbSBhZjA0MjA3YWEzMmQ4OGY3YjI2MDQxMzRjMDBkOTc5MTVjYWUwNGMxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLZXZpbiBEYXJieXNoaXJlLUJyeWFudCA8bGRpckBkYXJieXNo aXJlLWJyeWFudC5tZS51az4KRGF0ZTogU2F0LCAyMyBNYXIgMjAxOSAwOToyOTo0OSArMDAwMApT dWJqZWN0OiBbUEFUQ0hdIHh0X2Nvbm5tYXJrIHNhdmVkc2NwCgpTaWduZWQtb2ZmLWJ5OiBLZXZp biBEYXJieXNoaXJlLUJyeWFudCA8bGRpckBkYXJieXNoaXJlLWJyeWFudC5tZS51az4KLS0tCiBp bmNsdWRlL3VhcGkvbGludXgvbmV0ZmlsdGVyL3h0X2Nvbm5tYXJrLmggfCAgMyArLQogbmV0L25l dGZpbHRlci94dF9jb25ubWFyay5jICAgICAgICAgICAgICAgIHwgMzQgKysrKysrKysrKysrKysr KysrKysrLQogMiBmaWxlcyBjaGFuZ2VkLCAzNSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29ubm1hcmsu aCBiL2luY2x1ZGUvdWFwaS9saW51eC9uZXRmaWx0ZXIveHRfY29ubm1hcmsuaAppbmRleCA0MDhh OTY1NGYwNWMuLmU2M2FkM2M4OWI5MiAxMDA2NDQKLS0tIGEvaW5jbHVkZS91YXBpL2xpbnV4L25l dGZpbHRlci94dF9jb25ubWFyay5oCisrKyBiL2luY2x1ZGUvdWFwaS9saW51eC9uZXRmaWx0ZXIv eHRfY29ubm1hcmsuaApAQCAtMTYsNyArMTYsOCBAQAogZW51bSB7CiAJWFRfQ09OTk1BUktfU0VU ID0gMCwKIAlYVF9DT05OTUFSS19TQVZFLAotCVhUX0NPTk5NQVJLX1JFU1RPUkUKKwlYVF9DT05O TUFSS19SRVNUT1JFLAorCVhUX0NPTk5NQVJLX1NBVkVEU0NQCiB9OwogCiBzdHJ1Y3QgeHRfY29u bm1hcmtfdGdpbmZvMSB7CmRpZmYgLS1naXQgYS9uZXQvbmV0ZmlsdGVyL3h0X2Nvbm5tYXJrLmMg Yi9uZXQvbmV0ZmlsdGVyL3h0X2Nvbm5tYXJrLmMKaW5kZXggZWMzNzdjYzZhMzY5Li43MzAwNGEx MTEwNTUgMTAwNjQ0Ci0tLSBhL25ldC9uZXRmaWx0ZXIveHRfY29ubm1hcmsuYworKysgYi9uZXQv bmV0ZmlsdGVyL3h0X2Nvbm5tYXJrLmMKQEAgLTQyLDYgKzQyLDcgQEAgY29ubm1hcmtfdGcoc3Ry dWN0IHNrX2J1ZmYgKnNrYiwgY29uc3Qgc3RydWN0IHh0X2FjdGlvbl9wYXJhbSAqcGFyKQogCWVu dW0gaXBfY29ubnRyYWNrX2luZm8gY3RpbmZvOwogCXN0cnVjdCBuZl9jb25uICpjdDsKIAl1X2lu dDMyX3QgbmV3bWFyazsKKwl1OCBkc2NwLCBtYXNrc2hpZnQ7CiAKIAljdCA9IG5mX2N0X2dldChz a2IsICZjdGluZm8pOwogCWlmIChjdCA9PSBOVUxMKQpAQCAtNTcsNyArNTgsMzcgQEAgY29ubm1h cmtfdGcoc3RydWN0IHNrX2J1ZmYgKnNrYiwgY29uc3Qgc3RydWN0IHh0X2FjdGlvbl9wYXJhbSAq cGFyKQogCQlicmVhazsKIAljYXNlIFhUX0NPTk5NQVJLX1NBVkU6CiAJCW5ld21hcmsgPSAoY3Qt Pm1hcmsgJiB+aW5mby0+Y3RtYXNrKSBeCi0JCSAgICAgICAgICAoc2tiLT5tYXJrICYgaW5mby0+ bmZtYXNrKTsKKwkJCSAgKHNrYi0+bWFyayAmIGluZm8tPm5mbWFzayk7CisJCWlmIChjdC0+bWFy ayAhPSBuZXdtYXJrKSB7CisJCQljdC0+bWFyayA9IG5ld21hcms7CisJCQluZl9jb25udHJhY2tf ZXZlbnRfY2FjaGUoSVBDVF9NQVJLLCBjdCk7CisJCX0KKwkJYnJlYWs7CisJY2FzZSBYVF9DT05O TUFSS19TQVZFRFNDUDoKKwkJaWYgKCFpbmZvLT5jdG1hc2spCisJCQlnb3RvIG91dDsKKworCQlp ZiAoc2tiLT5wcm90b2NvbCA9PSBodG9ucyhFVEhfUF9JUCkpIHsKKwkJCWlmIChza2ItPmxlbiA8 IHNpemVvZihzdHJ1Y3QgaXBoZHIpKQorCQkJCWdvdG8gb3V0OworCisJCQlkc2NwID0gaXB2NF9n ZXRfZHNmaWVsZChpcF9oZHIoc2tiKSkgPj4gMjsKKworCQl9IGVsc2UgaWYgKHNrYi0+cHJvdG9j b2wgPT0gaHRvbnMoRVRIX1BfSVBWNikpIHsKKwkJCWlmIChza2ItPmxlbiA8IHNpemVvZihzdHJ1 Y3QgaXB2NmhkcikpCisJCQkJZ290byBvdXQ7CisKKwkJCWRzY3AgPSBpcHY2X2dldF9kc2ZpZWxk KGlwdjZfaGRyKHNrYikpID4+IDI7CisKKwkJfSBlbHNlIHsgLyogcHJvdG9jb2wgZG9lc24ndCBo YXZlIGRpZmZzZXJ2IC0gZ2V0IG91dCEgKi8KKwkJCWdvdG8gb3V0OworCQl9CisKKwkJLyogbmZt YXNrIGNvbnRhaW5zIHRoZSBtYXNrIHNoaWZ0IHZhbHVlICovCisJCW1hc2tzaGlmdCA9IGluZm8t Pm5mbWFzayAmIDB4MWY7CisJCW5ld21hcmsgPSAoY3QtPm1hcmsgJiB+aW5mby0+Y3RtYXNrKSBe CisJCQkgIChpbmZvLT5jdG1hcmsgfCAoZHNjcCA8PCBtYXNrc2hpZnQpKTsKKwogCQlpZiAoY3Qt Pm1hcmsgIT0gbmV3bWFyaykgewogCQkJY3QtPm1hcmsgPSBuZXdtYXJrOwogCQkJbmZfY29ubnRy YWNrX2V2ZW50X2NhY2hlKElQQ1RfTUFSSywgY3QpOwpAQCAtNzAsNiArMTAxLDcgQEAgY29ubm1h cmtfdGcoc3RydWN0IHNrX2J1ZmYgKnNrYiwgY29uc3Qgc3RydWN0IHh0X2FjdGlvbl9wYXJhbSAq cGFyKQogCQlicmVhazsKIAl9CiAKK291dDoKIAlyZXR1cm4gWFRfQ09OVElOVUU7CiB9CiAKLS0g CjIuMTcuMiAoQXBwbGUgR2l0LTExMykKCg== --_004_E1A8CA337CBF456B81DDB5A109A863D4darbyshirebryantmeuk_ Content-Type: application/octet-stream; name="0001-savedscp.patch" Content-Description: 0001-savedscp.patch Content-Disposition: attachment; filename="0001-savedscp.patch"; size=8256; creation-date="Sat, 23 Mar 2019 18:35:17 GMT"; modification-date="Sat, 23 Mar 2019 18:35:17 GMT" Content-ID: Content-Transfer-Encoding: base64 RnJvbSBkODAxMGQxYzFmNmEzYmZjNzE4MGZmYjE2MzRiZGMzZDYzZTE4YzEzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLZXZpbiBEYXJieXNoaXJlLUJyeWFudCA8bGRpckBkYXJieXNo aXJlLWJyeWFudC5tZS51az4KRGF0ZTogU2F0LCAyMyBNYXIgMjAxOSAxMDoyMTowMyArMDAwMApT dWJqZWN0OiBbUEFUQ0hdIHNhdmVkc2NwCgpTaWduZWQtb2ZmLWJ5OiBLZXZpbiBEYXJieXNoaXJl LUJyeWFudCA8bGRpckBkYXJieXNoaXJlLWJyeWFudC5tZS51az4KLS0tCiBleHRlbnNpb25zL2xp Ynh0X0NPTk5NQVJLLmMgICAgICAgICAgIHwgNzUgKysrKysrKysrKysrKysrKysrKysrKysrKyst CiBpbmNsdWRlL2xpbnV4L25ldGZpbHRlci94dF9jb25ubWFyay5oIHwgIDMgKy0KIDIgZmlsZXMg Y2hhbmdlZCwgNzYgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9l eHRlbnNpb25zL2xpYnh0X0NPTk5NQVJLLmMgYi9leHRlbnNpb25zL2xpYnh0X0NPTk5NQVJLLmMK aW5kZXggMjFlMTA5MTMuLjcyYTkxZjIzIDEwMDY0NAotLS0gYS9leHRlbnNpb25zL2xpYnh0X0NP Tk5NQVJLLmMKKysrIGIvZXh0ZW5zaW9ucy9saWJ4dF9DT05OTUFSSy5jCkBAIC00OSw2ICs0OSw3 IEBAIGVudW0gewogCU9fQ1RNQVNLLAogCU9fTkZNQVNLLAogCU9fTUFTSywKKwlPX1NBVkVEU0NQ X01BUkssCiAJRl9TRVRfTUFSSyAgICAgICAgID0gMSA8PCBPX1NFVF9NQVJLLAogCUZfU0FWRV9N QVJLICAgICAgICA9IDEgPDwgT19TQVZFX01BUkssCiAJRl9SRVNUT1JFX01BUksgICAgID0gMSA8 PCBPX1JFU1RPUkVfTUFSSywKQEAgLTYxLDggKzYyLDEwIEBAIGVudW0gewogCUZfQ1RNQVNLICAg ICAgICAgICA9IDEgPDwgT19DVE1BU0ssCiAJRl9ORk1BU0sgICAgICAgICAgID0gMSA8PCBPX05G TUFTSywKIAlGX01BU0sgICAgICAgICAgICAgPSAxIDw8IE9fTUFTSywKKwlGX1NBVkVEU0NQX01B UksJICAgPSAxIDw8IE9fU0FWRURTQ1BfTUFSSywKIAlGX09QX0FOWSAgICAgICAgICAgPSBGX1NF VF9NQVJLIHwgRl9TQVZFX01BUksgfCBGX1JFU1RPUkVfTUFSSyB8Ci0JICAgICAgICAgICAgICAg ICAgICAgRl9BTkRfTUFSSyB8IEZfT1JfTUFSSyB8IEZfWE9SX01BUksgfCBGX1NFVF9YTUFSSywK KwkgICAgICAgICAgICAgICAgICAgICBGX0FORF9NQVJLIHwgRl9PUl9NQVJLIHwgRl9YT1JfTUFS SyB8IEZfU0VUX1hNQVJLIHwKKwkJCSAgICAgRl9TQVZFRFNDUF9NQVJLLAogfTsKIAogc3RhdGlj IGNvbnN0IGNoYXIgKmNvbnN0IHh0X2Nvbm5tYXJrX3NoaWZ0X29wc1tdID0gewpAQCAtNzUsNiAr NzgsNyBAQCBzdGF0aWMgdm9pZCBDT05OTUFSS19oZWxwKHZvaWQpCiAJcHJpbnRmKAogIkNPTk5N QVJLIHRhcmdldCBvcHRpb25zOlxuIgogIiAgLS1zZXQtbWFyayB2YWx1ZVsvbWFza10gICAgICAg U2V0IGNvbm50cmFjayBtYXJrIHZhbHVlXG4iCisiICAtLXNhdmVkc2NwLW1hcmsgdmFsdWUvbWFz ayAgICBTYXZlIERTQ1AgdG8gY29ubnRyYWNrIG1hcmsgdmFsdWVcbiIKICIgIC0tc2F2ZS1tYXJr IFstLW1hc2sgbWFza10gICAgIFNhdmUgdGhlIHBhY2tldCBuZm1hcmsgaW4gdGhlIGNvbm5lY3Rp b25cbiIKICIgIC0tcmVzdG9yZS1tYXJrIFstLW1hc2sgbWFza10gIFJlc3RvcmUgc2F2ZWQgbmZt YXJrIHZhbHVlXG4iKTsKIH0KQEAgLTgzLDYgKzg3LDggQEAgc3RhdGljIHZvaWQgQ09OTk1BUktf aGVscCh2b2lkKQogc3RhdGljIGNvbnN0IHN0cnVjdCB4dF9vcHRpb25fZW50cnkgQ09OTk1BUktf b3B0c1tdID0gewogCXsubmFtZSA9ICJzZXQtbWFyayIsIC5pZCA9IE9fU0VUX01BUkssIC50eXBl ID0gWFRUWVBFX01BUktNQVNLMzIsCiAJIC5leGNsID0gRl9PUF9BTll9LAorCXsubmFtZSA9ICJz YXZlZHNjcC1tYXJrIiwgLmlkID0gT19TQVZFRFNDUF9NQVJLLCAudHlwZSA9IFhUVFlQRV9NQVJL TUFTSzMyLAorCSAuZXhjbCA9IEZfT1BfQU5ZfSwKIAl7Lm5hbWUgPSAic2F2ZS1tYXJrIiwgLmlk ID0gT19TQVZFX01BUkssIC50eXBlID0gWFRUWVBFX05PTkUsCiAJIC5leGNsID0gRl9PUF9BTll9 LAogCXsubmFtZSA9ICJyZXN0b3JlLW1hcmsiLCAuaWQgPSBPX1JFU1RPUkVfTUFSSywgLnR5cGUg PSBYVFRZUEVfTk9ORSwKQEAgLTk4LDYgKzEwNCw4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgeHRf b3B0aW9uX2VudHJ5IGNvbm5tYXJrX3RnX29wdHNbXSA9IHsKIAkgLmV4Y2wgPSBGX09QX0FOWX0s CiAJey5uYW1lID0gInNldC1tYXJrIiwgLmlkID0gT19TRVRfTUFSSywgLnR5cGUgPSBYVFRZUEVf TUFSS01BU0szMiwKIAkgLmV4Y2wgPSBGX09QX0FOWX0sCisJey5uYW1lID0gInNhdmVkc2NwLW1h cmsiLCAuaWQgPSBPX1NBVkVEU0NQX01BUkssIC50eXBlID0gWFRUWVBFX01BUktNQVNLMzIsCisJ IC5leGNsID0gRl9PUF9BTll9LAogCXsubmFtZSA9ICJhbmQtbWFyayIsIC5pZCA9IE9fQU5EX01B UkssIC50eXBlID0gWFRUWVBFX1VJTlQzMiwKIAkgLmV4Y2wgPSBGX09QX0FOWX0sCiAJey5uYW1l ID0gIm9yLW1hcmsiLCAuaWQgPSBPX09SX01BUkssIC50eXBlID0gWFRUWVBFX1VJTlQzMiwKQEAg LTEyNCw2ICsxMzIsOCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHh0X29wdGlvbl9lbnRyeSBjb25u bWFya190Z19vcHRzX3YyW10gPSB7CiAJIC5leGNsID0gRl9PUF9BTll9LAogCXsubmFtZSA9ICJz ZXQtbWFyayIsIC5pZCA9IE9fU0VUX01BUkssIC50eXBlID0gWFRUWVBFX01BUktNQVNLMzIsCiAJ IC5leGNsID0gRl9PUF9BTll9LAorCXsubmFtZSA9ICJzYXZlZHNjcC1tYXJrIiwgLmlkID0gT19T QVZFRFNDUF9NQVJLLCAudHlwZSA9IFhUVFlQRV9NQVJLTUFTSzMyLAorCSAuZXhjbCA9IEZfT1Bf QU5ZfSwKIAl7Lm5hbWUgPSAiYW5kLW1hcmsiLCAuaWQgPSBPX0FORF9NQVJLLCAudHlwZSA9IFhU VFlQRV9VSU5UMzIsCiAJIC5leGNsID0gRl9PUF9BTll9LAogCXsubmFtZSA9ICJvci1tYXJrIiwg LmlkID0gT19PUl9NQVJLLCAudHlwZSA9IFhUVFlQRV9VSU5UMzIsCkBAIC0xNTgsNiArMTY4LDcg QEAgc3RhdGljIHZvaWQgY29ubm1hcmtfdGdfaGVscCh2b2lkKQogIiAgLS1yZXN0b3JlLW1hcmsg Wy0tY3RtYXNrIG1hc2tdIFstLW5mbWFzayBtYXNrXVxuIgogIiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgQ29weSBuZm1hcmsgdG8gY3RtYXJrIHVzaW5nIG1hc2tzXG4iCiAiICAtLXNl dC1tYXJrIHZhbHVlWy9tYXNrXSAgICAgICBTZXQgY29ubnRyYWNrIG1hcmsgdmFsdWVcbiIKKyIg IC0tc2F2ZWRzY3AtbWFyayB2YWx1ZS9tYXNrICAgIFNhdmUgRFNDUCB0byBjb25udHJhY2sgbWFy ayB2YWx1ZVxuIgogIiAgLS1zYXZlLW1hcmsgWy0tbWFzayBtYXNrXSAgICAgU2F2ZSB0aGUgcGFj a2V0IG5mbWFyayBpbiB0aGUgY29ubmVjdGlvblxuIgogIiAgLS1yZXN0b3JlLW1hcmsgWy0tbWFz ayBtYXNrXSAgUmVzdG9yZSBzYXZlZCBuZm1hcmsgdmFsdWVcbiIKICIgIC0tYW5kLW1hcmsgdmFs dWUgICAgICAgICAgICAgIEJpbmFyeSBBTkQgdGhlIGN0bWFyayB3aXRoIGJpdHNcbiIKQEAgLTIx MCw2ICsyMjEsMTEgQEAgc3RhdGljIHZvaWQgQ09OTk1BUktfcGFyc2Uoc3RydWN0IHh0X29wdGlv bl9jYWxsICpjYikKIAkJbWFya2luZm8tPm1hcmsgPSBjYi0+dmFsLm1hcms7CiAJCW1hcmtpbmZv LT5tYXNrID0gY2ItPnZhbC5tYXNrOwogCQlicmVhazsKKwljYXNlIE9fU0FWRURTQ1BfTUFSSzoK KwkJbWFya2luZm8tPm1vZGUgPSBYVF9DT05OTUFSS19TQVZFRFNDUDsKKwkJbWFya2luZm8tPm1h cmsgPSBjYi0+dmFsLm1hcms7CisJCW1hcmtpbmZvLT5tYXNrID0gY2ItPnZhbC5tYXNrOworCQli cmVhazsKIAljYXNlIE9fU0FWRV9NQVJLOgogCQltYXJraW5mby0+bW9kZSA9IFhUX0NPTk5NQVJL X1NBVkU7CiAJCWJyZWFrOwpAQCAtMjM4LDYgKzI1NCwxNCBAQCBzdGF0aWMgdm9pZCBjb25ubWFy a190Z19wYXJzZShzdHJ1Y3QgeHRfb3B0aW9uX2NhbGwgKmNiKQogCQlpbmZvLT5jdG1hcmsgPSBj Yi0+dmFsLm1hcms7CiAJCWluZm8tPmN0bWFzayA9IGNiLT52YWwubWFyayB8IGNiLT52YWwubWFz azsKIAkJYnJlYWs7CisJY2FzZSBPX1NBVkVEU0NQX01BUks6CisJCWluZm8tPm1vZGUgICA9IFhU X0NPTk5NQVJLX1NBVkVEU0NQOworCQlpbmZvLT5jdG1hcmsgPSBjYi0+dmFsLm1hcms7CisJCWlu Zm8tPmN0bWFzayA9IGNiLT52YWwubWFzazsKKwkJaW5mby0+bmZtYXNrID0gaW5mby0+Y3RtYXNr ID8gZmZzKGluZm8tPmN0bWFzaykgLSAxIDogMDsKKwkJaWYgKCgweDNmICYgKGluZm8tPmN0bWFz ayA+PiBpbmZvLT5uZm1hc2spKSAhPSAweDNmKQorCQkJaW5mby0+Y3RtYXNrID0gMDsKKwkJYnJl YWs7CiAJY2FzZSBPX0FORF9NQVJLOgogCQlpbmZvLT5tb2RlICAgPSBYVF9DT05OTUFSS19TRVQ7 CiAJCWluZm8tPmN0bWFyayA9IDA7CkBAIC0yODMsNiArMzA3LDE0IEBAIHN0YXRpYyB2b2lkIGNv bm5tYXJrX3RnX3BhcnNlX3YyKHN0cnVjdCB4dF9vcHRpb25fY2FsbCAqY2IpCiAJCWluZm8tPmN0 bWFyayA9IGNiLT52YWwubWFyazsKIAkJaW5mby0+Y3RtYXNrID0gY2ItPnZhbC5tYXJrIHwgY2It PnZhbC5tYXNrOwogCQlicmVhazsKKwljYXNlIE9fU0FWRURTQ1BfTUFSSzoKKwkJaW5mby0+bW9k ZSAgID0gWFRfQ09OTk1BUktfU0FWRURTQ1A7CisJCWluZm8tPmN0bWFyayA9IGNiLT52YWwubWFy azsKKwkJaW5mby0+Y3RtYXNrID0gY2ItPnZhbC5tYXNrOworCQlpbmZvLT5uZm1hc2sgPSBpbmZv LT5jdG1hc2sgPyBmZnMoaW5mby0+Y3RtYXNrKSAtIDEgOiAwOworCQlpZiAoKDB4M2YgJiAoaW5m by0+Y3RtYXNrID4+IGluZm8tPm5mbWFzaykpICE9IDB4M2YpCisJCQlpbmZvLT5jdG1hc2sgPSAw OworCQlicmVhazsKIAljYXNlIE9fQU5EX01BUks6CiAJCWluZm8tPm1vZGUgICA9IFhUX0NPTk5N QVJLX1NFVDsKIAkJaW5mby0+Y3RtYXJrID0gMDsKQEAgLTM1MSw2ICszODMsMTEgQEAgc3RhdGlj IHZvaWQgQ09OTk1BUktfcHJpbnQoY29uc3Qgdm9pZCAqaXAsCiAJICAgIHByaW50X21hcmsobWFy a2luZm8tPm1hcmspOwogCSAgICBwcmludF9tYXNrKCIvIiwgbWFya2luZm8tPm1hc2spOwogCSAg ICBicmVhazsKKwljYXNlIFhUX0NPTk5NQVJLX1NBVkVEU0NQOgorCSAgICBwcmludGYoIiBDT05O TUFSSyBzYXZlZHNjcCAiKTsKKwkgICAgcHJpbnRfbWFyayhtYXJraW5mby0+bWFyayk7CisJICAg IHByaW50X21hc2soIi8iLCBtYXJraW5mby0+bWFzayk7CisJICAgIGJyZWFrOwogCWNhc2UgWFRf Q09OTk1BUktfU0FWRToKIAkgICAgcHJpbnRmKCIgQ09OTk1BUksgc2F2ZSAiKTsKIAkgICAgcHJp bnRfbWFzaygibWFzayAiLCBtYXJraW5mby0+bWFzayk7CkBAIC0zODYsNiArNDIzLDIwIEBAIGNv bm5tYXJrX3RnX3ByaW50KGNvbnN0IHZvaWQgKmlwLCBjb25zdCBzdHJ1Y3QgeHRfZW50cnlfdGFy Z2V0ICp0YXJnZXQsCiAJCQlwcmludGYoIiBDT05OTUFSSyB4c2V0IDB4JXgvMHgleCIsCiAJCQkg ICAgICAgaW5mby0+Y3RtYXJrLCBpbmZvLT5jdG1hc2spOwogCQlicmVhazsKKwljYXNlIFhUX0NP Tk5NQVJLX1NBVkVEU0NQOiAvKiBGSVhNRSAqLworCQlpZiAoaW5mby0+Y3RtYXJrID09IDApCisJ CQlwcmludGYoIiBDT05OTUFSSyBEU0NQIGFuZCAweCV4IiwKKwkJCSAgICAgICAodW5zaWduZWQg aW50KSh1aW50MzJfdCl+aW5mby0+Y3RtYXNrKTsKKwkJZWxzZSBpZiAoaW5mby0+Y3RtYXJrID09 IGluZm8tPmN0bWFzaykKKwkJCXByaW50ZigiIENPTk5NQVJLIERTQ1Agb3IgMHgleCIsIGluZm8t PmN0bWFyayk7CisJCWVsc2UgaWYgKGluZm8tPmN0bWFzayA9PSAwKQorCQkJcHJpbnRmKCIgQ09O Tk1BUksgRFNDUCB4b3IgMHgleCIsIGluZm8tPmN0bWFyayk7CisJCWVsc2UgaWYgKGluZm8tPmN0 bWFzayA9PSAweEZGRkZGRkZGVSkKKwkJCXByaW50ZigiIENPTk5NQVJLIERTQ1Agc2V0IDB4JXgi LCBpbmZvLT5jdG1hcmspOworCQllbHNlCisJCQlwcmludGYoIiBDT05OTUFSSyBEU0NQIHhzZXQg MHgleC8weCV4IiwKKwkJCSAgICAgICBpbmZvLT5jdG1hcmssIGluZm8tPmN0bWFzayk7CisJCWJy ZWFrOwogCWNhc2UgWFRfQ09OTk1BUktfU0FWRToKIAkJaWYgKGluZm8tPm5mbWFzayA9PSBVSU5U MzJfTUFYICYmIGluZm8tPmN0bWFzayA9PSBVSU5UMzJfTUFYKQogCQkJcHJpbnRmKCIgQ09OTk1B Uksgc2F2ZSIpOwpAQCAtNDMzLDYgKzQ4NCwyMCBAQCBjb25ubWFya190Z19wcmludF92Mihjb25z dCB2b2lkICppcCwgY29uc3Qgc3RydWN0IHh0X2VudHJ5X3RhcmdldCAqdGFyZ2V0LAogCQkJcHJp bnRmKCIgQ09OTk1BUksgeHNldCAweCV4LzB4JXgiLAogCQkJICAgICAgIGluZm8tPmN0bWFyaywg aW5mby0+Y3RtYXNrKTsKIAkJYnJlYWs7CisJY2FzZSBYVF9DT05OTUFSS19TQVZFRFNDUDoKKwkJ aWYgKGluZm8tPmN0bWFyayA9PSAwKQorCQkJcHJpbnRmKCIgQ09OTk1BUksgRFNDUCBhbmQgMHgl eCIsCisJCQkgICAgICAgKHVuc2lnbmVkIGludCkodWludDMyX3QpfmluZm8tPmN0bWFzayk7CisJ CWVsc2UgaWYgKGluZm8tPmN0bWFyayA9PSBpbmZvLT5jdG1hc2spCisJCQlwcmludGYoIiBDT05O TUFSSyBEU0NQIG9yIDB4JXgiLCBpbmZvLT5jdG1hcmspOworCQllbHNlIGlmIChpbmZvLT5jdG1h c2sgPT0gMCkKKwkJCXByaW50ZigiIENPTk5NQVJLIERTQ1AgeG9yIDB4JXgiLCBpbmZvLT5jdG1h cmspOworCQllbHNlIGlmIChpbmZvLT5jdG1hc2sgPT0gMHhGRkZGRkZGRlUpCisJCQlwcmludGYo IiBDT05OTUFSSyBEU0NQIHNldCAweCV4IiwgaW5mby0+Y3RtYXJrKTsKKwkJZWxzZQorCQkJcHJp bnRmKCIgQ09OTk1BUksgRFNDUCB4c2V0IDB4JXgvMHgleCIsCisJCQkgICAgICAgaW5mby0+Y3Rt YXJrLCBpbmZvLT5jdG1hc2spOworCQlicmVhazsKIAljYXNlIFhUX0NPTk5NQVJLX1NBVkU6CiAJ CWlmIChpbmZvLT5uZm1hc2sgPT0gVUlOVDMyX01BWCAmJiBpbmZvLT5jdG1hc2sgPT0gVUlOVDMy X01BWCkKIAkJCXByaW50ZigiIENPTk5NQVJLIHNhdmUiKTsKQEAgLTQ3NCw2ICs1MzksMTEgQEAg c3RhdGljIHZvaWQgQ09OTk1BUktfc2F2ZShjb25zdCB2b2lkICppcCwgY29uc3Qgc3RydWN0IHh0 X2VudHJ5X3RhcmdldCAqdGFyZ2V0KQogCSAgICBwcmludF9tYXJrKG1hcmtpbmZvLT5tYXJrKTsK IAkgICAgcHJpbnRfbWFzaygiLyIsIG1hcmtpbmZvLT5tYXNrKTsKIAkgICAgYnJlYWs7CisJY2Fz ZSBYVF9DT05OTUFSS19TQVZFRFNDUDoKKwkgICAgcHJpbnRmKCIgLS1zYXZlZHNjcC1tYXJrICIp OworCSAgICBwcmludF9tYXJrKG1hcmtpbmZvLT5tYXJrKTsKKwkgICAgcHJpbnRfbWFzaygiLyIs IG1hcmtpbmZvLT5tYXNrKTsKKwkgICAgYnJlYWs7CiAJY2FzZSBYVF9DT05OTUFSS19TQVZFOgog CSAgICBwcmludGYoIiAtLXNhdmUtbWFyayAiKTsKIAkgICAgcHJpbnRfbWFzaygiLS1tYXNrICIs IG1hcmtpbmZvLT5tYXNrKTsKQEAgLTUwNSw2ICs1NzUsOSBAQCBjb25ubWFya190Z19zYXZlKGNv bnN0IHZvaWQgKmlwLCBjb25zdCBzdHJ1Y3QgeHRfZW50cnlfdGFyZ2V0ICp0YXJnZXQpCiAJY2Fz ZSBYVF9DT05OTUFSS19TRVQ6CiAJCXByaW50ZigiIC0tc2V0LXhtYXJrIDB4JXgvMHgleCIsIGlu Zm8tPmN0bWFyaywgaW5mby0+Y3RtYXNrKTsKIAkJYnJlYWs7CisJY2FzZSBYVF9DT05OTUFSS19T QVZFRFNDUDoKKwkJcHJpbnRmKCIgLS1zYXZlZHNjcC1tYXJrIDB4JXgvMHgleCIsIGluZm8tPmN0 bWFyaywgaW5mby0+Y3RtYXNrKTsKKwkJYnJlYWs7CiAJY2FzZSBYVF9DT05OTUFSS19TQVZFOgog CQlwcmludGYoIiAtLXNhdmUtbWFyayAtLW5mbWFzayAweCV4IC0tY3RtYXNrIDB4JXgiLAogCQkg ICAgICAgaW5mby0+bmZtYXNrLCBpbmZvLT5jdG1hc2spOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9s aW51eC9uZXRmaWx0ZXIveHRfY29ubm1hcmsuaCBiL2luY2x1ZGUvbGludXgvbmV0ZmlsdGVyL3h0 X2Nvbm5tYXJrLmgKaW5kZXggYmJmMmFjYzkuLmNmNTI2MTAxIDEwMDY0NAotLS0gYS9pbmNsdWRl L2xpbnV4L25ldGZpbHRlci94dF9jb25ubWFyay5oCisrKyBiL2luY2x1ZGUvbGludXgvbmV0Zmls dGVyL3h0X2Nvbm5tYXJrLmgKQEAgLTE1LDcgKzE1LDggQEAKIGVudW0gewogCVhUX0NPTk5NQVJL X1NFVCA9IDAsCiAJWFRfQ09OTk1BUktfU0FWRSwKLQlYVF9DT05OTUFSS19SRVNUT1JFCisJWFRf Q09OTk1BUktfUkVTVE9SRSwKKwlYVF9DT05OTUFSS19TQVZFRFNDUAogfTsKIAogc3RydWN0IHh0 X2Nvbm5tYXJrX3RnaW5mbzEgewotLSAKMi4xNy4yIChBcHBsZSBHaXQtMTEzKQoK --_004_E1A8CA337CBF456B81DDB5A109A863D4darbyshirebryantmeuk_ Content-Type: application/octet-stream; name="my_layer_cake.qos" Content-Description: my_layer_cake.qos Content-Disposition: attachment; filename="my_layer_cake.qos"; size=6260; creation-date="Sat, 23 Mar 2019 18:35:17 GMT"; modification-date="Sat, 23 Mar 2019 18:35:17 GMT" Content-ID: <2375C20AA5F88644A09E6B1FA44A26C5@eurprd03.prod.outlook.com> Content-Transfer-Encoding: base64 IyEvYmluL3NoCiMgQ2VybzMgU2hhcGVyCiMgQSBjYWtlIHNoYXBlciBhbmQgQVFNIHNvbHV0aW9u IHRoYXQgYWxsb3dzIHNldmVyYWwgZGlmZnNlcnYgbWFya2luZyBzY2hlbWVzCiMgZm9yIGV0aGVy bmV0IGdhdGV3YXlzCgojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJl ZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIgYXMKIyBwdWJsaXNoZWQgYnkgdGhl IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbi4KIwojICAgICAgIENvcHlyaWdodCAoQykgMjAxMi01 IE1pY2hhZWwgRC4gVGFodCwgVG9rZSBIw7hpbGFuZC1Kw7hyZ2Vuc2VuLCBTZWJhc3RpYW4gTW9l bGxlcgoKCiNzbTogVE9ETyBwYXNzIGluIHRoZSBjYWtlIGRpZmZzZXJ2IGtleXdvcmQKCi4gJHtT UU1fTElCX0RJUn0vZGVmYXVsdHMuc2gKUURJU0M9Y2FrZQoKIyBEZWZhdWx0IHRyYWZmaWMgY2xh c3NpY2F0aW9uIGlzIHBhc3NlZCBpbiBJTkdSRVNTX0NBS0VfT1BUUyBhbmQgRUdSRVNTX0NBS0Vf T1BUUywgZGVmaW5lZCBpbiBkZWZhdWx0cy5zaCBub3cKCmVncmVzcygpIHsKICAgIFNJTEVOVD0x ICRUQyBxZGlzYyBkZWwgZGV2ICRJRkFDRSByb290CiAgICAkVEMgcWRpc2MgYWRkIGRldiAkSUZB Q0Ugcm9vdCBoYW5kbGUgY2FjZjogJCggZ2V0X3N0YWJfc3RyaW5nICkgY2FrZSBcCiAgICAgICAg YmFuZHdpZHRoICR7VVBMSU5LfWtiaXQgJCggZ2V0X2Nha2VfbGxhX3N0cmluZyApICR7RUdSRVNT X0NBS0VfT1BUU30gJHtFUURJU0NfT1BUU30KCiAgICAjIHNldCBEU0NQIGZyb20gdGhlIHN0b3Jl ZCBjb25ubWFyay4KICAgICMgdGhpcyBzZWVtcyBjb3VudGVyIGludHVpdGl2ZSBidXQgaXQgZW5z dXJlcyBvbmNlIHRoZSBtYXJrIGlzIHNldCB0aGF0IGFsbAogICAgIyBzdWJzZXF1ZW50IGVncmVz cyBwYWNrZXRzIGhhdmUgdGhlIHNhbWUgc3RvcmVkIERTQ1AgYXZvaWRpbmcgaXB0YWJsZXMgcnVs ZXMKICAgICMgdG8gbWFyayBldmVyeSBwYWNrZXQsIGNvbm5kc2NwIGRvZXMgaXQgZm9yIHVzIGFu ZCB0aGVuIENBS0UgaXMgaGFwcHkgdXNpbmcgdGhlCiAgICAjIERTQ1AKICAgICRUQyBmaWx0ZXIg YWRkIGRldiAkSUZBQ0UgcHJvdG9jb2wgYWxsIHByaW8gMTAgdTMyIG1hdGNoIHUzMiAwIDAgZmxv d2lkIDE6MSBhY3Rpb24gXAoJY29ubmRzY3AgbWFzayAweGZjMDAwMDAwIHN0YXRlbWFzayAweDAx MDAwMDAwIG1vZGUgc2V0Cn0KCgppbmdyZXNzKCkgewoKICAgIFNJTEVOVD0xICRUQyBxZGlzYyBk ZWwgZGV2ICRJRkFDRSBoYW5kbGUgZmZmZjogaW5ncmVzcwogICAgJFRDIHFkaXNjIGFkZCBkZXYg JElGQUNFIGhhbmRsZSBmZmZmOiBpbmdyZXNzCgogICAgU0lMRU5UPTEgJFRDIHFkaXNjIGRlbCBk ZXYgJERFViByb290CgogICAgWyAiJElHTk9SRV9EU0NQX0lOR1JFU1MiIC1lcSAiMSIgXSAmJiBJ TkdSRVNTX0NBS0VfT1BUUz0iJElOR1JFU1NfQ0FLRV9PUFRTIGJlc3RlZmZvcnQiCiAgICBbICIk WkVST19EU0NQX0lOR1JFU1MiIC1lcSAiMSIgXSAmJiBJTkdSRVNTX0NBS0VfT1BUUz0iJElOR1JF U1NfQ0FLRV9PUFRTIHdhc2giCgogICAgJFRDIHFkaXNjIGFkZCBkZXYgJERFViByb290IGhhbmRs ZSBjYWNlOiAkKCBnZXRfc3RhYl9zdHJpbmcgKSBjYWtlIFwKICAgICAgICBiYW5kd2lkdGggJHtE T1dOTElOS31rYml0ICQoIGdldF9jYWtlX2xsYV9zdHJpbmcgKSAke0lOR1JFU1NfQ0FLRV9PUFRT fSAke0lRRElTQ19PUFRTfQoKICAgICRJUCBsaW5rIHNldCBkZXYgJERFViB1cAoKICAgICMgcmVk aXJlY3QgYWxsIElQIHBhY2tldHMgYXJyaXZpbmcgaW4gJElGQUNFIHRvIGlmYjAKICAgICMgc2V0 IERTQ1AgZnJvbSBjb25udHJhY2sgbWFyawogICAgJFRDIGZpbHRlciBhZGQgZGV2ICRJRkFDRSBw YXJlbnQgZmZmZjogcHJvdG9jb2wgYWxsIHByaW8gMTAgdTMyIFwKCW1hdGNoIHUzMiAwIDAgZmxv d2lkIDE6MSBhY3Rpb24gXAoJY29ubmRzY3AgbWFzayAweGZjMDAwMDAwIHN0YXRlbWFzayAweDAx MDAwMDAwIG1vZGUgc2V0IFwKCW1pcnJlZCBlZ3Jlc3MgcmVkaXJlY3QgZGV2ICRERVYKCiAgICAj IENvbmZpZ3VyZSBpcHRhYmxlcyBjaGFpbiB0byBtYXJrIHBhY2tldHMKICAgIGlwdCAtdCBtYW5n bGUgLU4gUU9TX01BUktfJHtJRkFDRX0KCiAgICAjIENoYW5nZSBEU0NQIG9mIHJlbGV2YW50IGhv c3RzL3BhY2tldHMgLSB0aGlzIHdpbGwgYmUgcGlja2VkIHVwIGJ5IGNha2UrIGFuZCBwbGFjZWQg aW4gdGhlIGZpcmV3YWxsIGNvbm5tYXJrCiAgICAjIGFsc28gdGhlIERTQ1AgaXMgdXNlZCBhcyB0 aGUgdGluIHNlbGVjdG9yLgoKaXB0YWJsZXMgLXQgbWFuZ2xlIC1BIFFPU19NQVJLXyR7SUZBQ0V9 IC1wIHRjcCAtcyAxOTIuMTY4LjIxOS41IC1tIGNvbW1lbnQgLS1jb21tZW50ICJTa3lib3ggRFND UCBDUzEgQnVsayIgLWogRFNDUCAtLXNldC1kc2NwLWNsYXNzIENTMQppcHRhYmxlcyAtdCBtYW5n bGUgLUEgUU9TX01BUktfJHtJRkFDRX0gLXAgdWRwIC1zIDE5Mi4xNjguMjE5LjUgLW0gY29tbWVu dCAtLWNvbW1lbnQgIlNreWJveCBEU0NQIENTMSBCdWxrIiAtaiBEU0NQIC0tc2V0LWRzY3AtY2xh c3MgQ1MxCmlwdGFibGVzIC10IG1hbmdsZSAtQSBRT1NfTUFSS18ke0lGQUNFfSAtcCB0Y3AgLXMg MTkyLjE2OC4yMTkuMTAgLW0gY29tbWVudCAtLWNvbW1lbnQgIkJsdXJheSBEU0NQIENTMyBWaWRl byIgLWogRFNDUCAtLXNldC1kc2NwLWNsYXNzIENTMwppcHRhYmxlcyAtdCBtYW5nbGUgLUEgUU9T X01BUktfJHtJRkFDRX0gLXAgdWRwIC1zIDE5Mi4xNjguMjE5LjEwIC1tIGNvbW1lbnQgLS1jb21t ZW50ICJCbHVyYXkgRFNDUCBDUzMgVmlkZW8iIC1qIERTQ1AgLS1zZXQtZHNjcC1jbGFzcyBDUzMK aXB0YWJsZXMgLXQgbWFuZ2xlIC1BIFFPU19NQVJLXyR7SUZBQ0V9IC1wIHRjcCAtcyAxOTIuMTY4 LjIxOS4xMiAtbSB0Y3AgLS1zcG9ydCA2OTgxIC1tIGNvbW1lbnQgLS1jb21tZW50ICJCVCBEU0NQ IENTMSBCdWxrIiAtaiBEU0NQIC0tc2V0LWRzY3AtY2xhc3MgQ1MxCmlwdGFibGVzIC10IG1hbmds ZSAtQSBRT1NfTUFSS18ke0lGQUNFfSAtcCB1ZHAgLXMgMTkyLjE2OC4yMTkuMTIgLW0gdWRwIC0t c3BvcnQgNjk4MSAtbSBjb21tZW50IC0tY29tbWVudCAiQlQgRFNDUCBDUzEgQnVsayIgLWogRFND UCAtLXNldC1kc2NwLWNsYXNzIENTMQppcHRhYmxlcyAtdCBtYW5nbGUgLUEgUU9TX01BUktfJHtJ RkFDRX0gLXAgdGNwIC1zIDE5Mi4xNjguMjE5LjEyIC1tIHRjcCAtLWRwb3J0IDQ0NDMgLW0gY29t bWVudCAtLWNvbW1lbnQgIkJUIERTQ1AgQ1MxIEJ1bGsiIC1qIERTQ1AgLS1zZXQtZHNjcC1jbGFz cyBDUzEKI2lwdGFibGVzIC10IG1hbmdsZSAtQSBRT1NfTUFSS18ke0lGQUNFfSAtcCB0Y3AgLXMg MTkyLjE2OC4yMTkuMTIgLW0gdGNwIC0tZHBvcnQgNDQzIC1tIGNvbW1lbnQgLS1jb21tZW50ICJI VFRQUyB1cGxvYWRzIERTQ1AgQ1MxIEJ1bGsiIC1qIERTQ1AgLS1zZXQtZHNjcC1jbGFzcyBDUzEK CmlwdGFibGVzIC10IG1hbmdsZSAtQSBRT1NfTUFSS18ke0lGQUNFfSAtbSBzZXQgLS1tYXRjaC1z ZXQgQnVsazQgIGRzdCAtaiBEU0NQIC0tc2V0LWRzY3AtY2xhc3MgQ1MxIC1tIGNvbW1lbnQgLS1j b21tZW50ICJCdWxrIENTMSBpcHNldCIKaXB0YWJsZXMgLXQgbWFuZ2xlIC1BIFFPU19NQVJLXyR7 SUZBQ0V9IC1tIHNldCAtLW1hdGNoLXNldCBWaWQ0ICAgZHN0IC1qIERTQ1AgLS1zZXQtZHNjcC1j bGFzcyBDUzMgLW0gY29tbWVudCAtLWNvbW1lbnQgIlZpZCBDUzMgaXBzZXQiCmlwdGFibGVzIC10 IG1hbmdsZSAtQSBRT1NfTUFSS18ke0lGQUNFfSAtbSBzZXQgLS1tYXRjaC1zZXQgVm9pY2U0IGRz dCAtaiBEU0NQIC0tc2V0LWRzY3AtY2xhc3MgQ1M0IC1tIGNvbW1lbnQgLS1jb21tZW50ICJWb2lj ZSBDUzQgaXBzZXQiCgppcDZ0YWJsZXMgLXQgbWFuZ2xlIC1BIFFPU19NQVJLXyR7SUZBQ0V9IC1w IHRjcCAtcyA6OmMvOjpmZmZmOmZmZmY6ZmZmZjpmZmZmIC1tIHRjcCAtLXNwb3J0IDY5ODEgLW0g Y29tbWVudCAtLWNvbW1lbnQgIkJUIERTQ1AgQ1MxIEJ1bGsiIC1qIERTQ1AgLS1zZXQtZHNjcC1j bGFzcyBDUzEKaXA2dGFibGVzIC10IG1hbmdsZSAtQSBRT1NfTUFSS18ke0lGQUNFfSAtcCB1ZHAg LXMgOjpjLzo6ZmZmZjpmZmZmOmZmZmY6ZmZmZiAtbSB1ZHAgLS1zcG9ydCA2OTgxIC1tIGNvbW1l bnQgLS1jb21tZW50ICJCVCBEU0NQIENTMSBCdWxrIiAtaiBEU0NQIC0tc2V0LWRzY3AtY2xhc3Mg Q1MxCmlwNnRhYmxlcyAtdCBtYW5nbGUgLUEgUU9TX01BUktfJHtJRkFDRX0gLXAgdGNwIC1zIDo6 Yy86OmZmZmY6ZmZmZjpmZmZmOmZmZmYgLW0gdGNwIC0tZHBvcnQgNDQ0MyAtbSBjb21tZW50IC0t Y29tbWVudCAiQlQgRFNDUCBDUzEgQnVsayIgLWogRFNDUCAtLXNldC1kc2NwLWNsYXNzIENTMQoj aXA2dGFibGVzIC10IG1hbmdsZSAtQSBRT1NfTUFSS18ke0lGQUNFfSAtcCB0Y3AgLXMgOjpjLzo6 ZmZmZjpmZmZmOmZmZmY6ZmZmZiAtbSB0Y3AgLS1kcG9ydCA0NDMgLW0gY29tbWVudCAtLWNvbW1l bnQgIkhUVFBTIHVwbG9hZHMgRFNDUCBDUzEgQnVsayIgLWogRFNDUCAtLXNldC1kc2NwLWNsYXNz IENTMQoKaXA2dGFibGVzIC10IG1hbmdsZSAtQSBRT1NfTUFSS18ke0lGQUNFfSAtbSBzZXQgLS1t YXRjaC1zZXQgQnVsazYgIGRzdCAtaiBEU0NQIC0tc2V0LWRzY3AtY2xhc3MgQ1MxIC1tIGNvbW1l bnQgLS1jb21tZW50ICJCdWxrIENTMSBpcHNldCIKaXA2dGFibGVzIC10IG1hbmdsZSAtQSBRT1Nf TUFSS18ke0lGQUNFfSAtbSBzZXQgLS1tYXRjaC1zZXQgVmlkNiBkc3QgLWogRFNDUCAtLXNldC1k c2NwLWNsYXNzIENTMyAtbSBjb21tZW50IC0tY29tbWVudCAiVmlkIENTMyBpcHNldCIKaXA2dGFi bGVzIC10IG1hbmdsZSAtQSBRT1NfTUFSS18ke0lGQUNFfSAtbSBzZXQgLS1tYXRjaC1zZXQgVm9p Y2U2IGRzdCAtaiBEU0NQIC0tc2V0LWRzY3AtY2xhc3MgQ1M0IC1tIGNvbW1lbnQgLS1jb21tZW50 ICJWb2ljZSBDUzQgaXBzZXQiCgppcHQgLUEgUU9TX01BUktfZXRoMCAtdCBtYW5nbGUgLWogQ09O Tk1BUksgLS1zYXZlZHNjcC1tYXJrIDB4MDEwMDAwMDAvMHhmYzAwMDAwMAogICAgIyBTZW5kIGNh a2UrIHVubWFya2VkIGNvbm5lY3Rpb25zIHRvIHRoZSBtYXJraW5nIGNoYWluIC0gQ2FrZSsgdXNl cyB0b3AgYnl0ZSBhcyB0aGUKICAgICMgaSd2ZSBiZWVuIG1hcmtlZCAmIGhlcmUncyB0aGUgZHNj cCBwbGFjZWhvbGRlci4gCiAgICAjIHRvcCA2IGJpdHMgYXJlIERTQ1AsIExTQiBpcyBEU0NQIGlz IHZhbGlkIGZsYWcKIyAgICBpcHQgLXQgbWFuZ2xlIC1BIFBSRVJPVVRJTkcgIC1pICRJRkFDRSAt bSBjb25ubWFyayAtLW1hcmsgMHgwMDAwMDAwMC8weDAxMDAwMDAwIC1nIFFPU19NQVJLXyR7SUZB Q0V9CiAgICBpcHQgLXQgbWFuZ2xlIC1BIFBPU1RST1VUSU5HIC1vICRJRkFDRSAtbSBjb25ubWFy ayAtLW1hcmsgMHgwMDAwMDAwMC8weDAxMDAwMDAwIC1nIFFPU19NQVJLXyR7SUZBQ0V9Cgp9Cgpz cW1fc3RhcnQoKSB7CiAgICBbIC1uICIkSUZBQ0UiIF0gfHwgcmV0dXJuIDEKICAgIGRvX21vZHVs ZXMKICAgIHZlcmlmeV9xZGlzYyAkUURJU0MgImNha2UiIHx8IHJldHVybiAxCiAgICBzcW1fZGVi dWcgIlN0YXJ0aW5nICR7U0NSSVBUfSIKCiAgICBbIC16ICIkREVWIiBdICYmIERFVj0kKCBnZXRf aWZiX2Zvcl9pZiAke0lGQUNFfSApCgogICAgaWYgWyAiJHtVUExJTkt9IiAtbmUgMCBdOwogICAg dGhlbgogICAgICAgIGVncmVzcwogICAgICAgIHNxbV9kZWJ1ZyAiZWdyZXNzIHNoYXBpbmcgYWN0 aXZhdGVkIgogICAgZWxzZQogICAgICAgIHNxbV9kZWJ1ZyAiZWdyZXNzIHNoYXBpbmcgZGVhY3Rp dmF0ZWQiCiAgICAgICAgU0lMRU5UPTEgJFRDIHFkaXNjIGRlbCBkZXYgJHtJRkFDRX0gcm9vdAog ICAgZmkKICAgIGlmIFsgIiR7RE9XTkxJTkt9IiAtbmUgMCBdOwogICAgdGhlbgoJdmVyaWZ5X3Fk aXNjIGluZ3Jlc3MgImluZ3Jlc3MiIHx8IHJldHVybiAxCiAgICAgICAgaW5ncmVzcwogICAgICAg IHNxbV9kZWJ1ZyAiaW5ncmVzcyBzaGFwaW5nIGFjdGl2YXRlZCIKICAgIGVsc2UKICAgICAgICBz cW1fZGVidWcgImluZ3Jlc3Mgc2hhcGluZyBkZWFjdGl2YXRlZCIKICAgICAgICBTSUxFTlQ9MSAk VEMgcWRpc2MgZGVsIGRldiAke0RFVn0gcm9vdAogICAgICAgIFNJTEVOVD0xICRUQyBxZGlzYyBk ZWwgZGV2ICR7SUZBQ0V9IGluZ3Jlc3MKICAgIGZpCgogICAgcmV0dXJuIDAKfQo= --_004_E1A8CA337CBF456B81DDB5A109A863D4darbyshirebryantmeuk_--