From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from emea01-am1-obe.outbound.protection.outlook.com (mail-am1on0080.outbound.protection.outlook.com [157.56.112.80]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "MSIT Machine Auth CA 2" (verified OK)) by huchra.bufferbloat.net (Postfix) with ESMTPS id 4B12621F53E for ; Mon, 16 Nov 2015 08:25:50 -0800 (PST) Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=kevin@darbyshire-bryant.me.uk; Received: from [IPv6:2001:470:183f:da2b::632f:a7da] (2001:470:183f:da2b::632f:a7da) by DB5PR07MB0935.eurprd07.prod.outlook.com (10.161.200.142) with Microsoft SMTP Server (TLS) id 15.1.325.17; Mon, 16 Nov 2015 16:25:46 +0000 To: Dave Taht References: <56420697.9080606@darbyshire-bryant.me.uk> <5649EF39.3060300@darbyshire-bryant.me.uk> <5649F423.40000@darbyshire-bryant.me.uk> From: Kevin Darbyshire-Bryant X-Enigmail-Draft-Status: N1110 Message-ID: <564A0386.4010602@darbyshire-bryant.me.uk> Date: Mon, 16 Nov 2015 16:25:42 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-512; boundary="------------ms010604040905040403080001" X-Originating-IP: [2001:470:183f:da2b::632f:a7da] X-ClientProxiedBy: AM3PR08CA0070.eurprd08.prod.outlook.com (25.163.23.166) To DB5PR07MB0935.eurprd07.prod.outlook.com (25.161.200.142) X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB0935; 2:x26sn6J7+QSAissda5OIQXs/gBzYXXgQJENHEpqbCGorfJ7zj81wBlA/2pgUG6GAUXmj5JcjVpT3g5AYcwv3G9GSX/b/QviTNn8Y/WymHpTfQRF76yS/M5jnpDW5mxQfNmA2ErK4vZ7ThWsONj0mEtb8y7YphzDoJwkgETM0Q4Y=; 3:wqCnt8E24eIuupRQQFXa5hXq76MvMynekqLf5QL9HwOSntOVyjaWesm6AA1rmUJCDnOzXX9vfVvD8T/P/JmkY7FvvgM0IvpjQWlNaqjZBOjqDfPt9EqzB8F9hQPXwznVp5sbnLKuNiHerw45IdUG7w==; 25:UdYhK4ROfeii1WZjUi7mkZ79QtDcLUmajhWhjYrOaissLwdR/diVRzDDwD0TDrpp6TIYW8tlBQsIeg767E6dC2Ydq/32pgGHWFw8uHkLM/T7F+8dy3YXZFPVrVJzDaA44SRR2uxugCuL0vIJvJmwrJpYFT4vmvU3kR0EgxShMecadq1LqQYM37/I5ae3fOgi3VrpQkHetWSSMM+j36sumkDl66yMjTuzbeKRBvy3o0ikv/TeXFsolU87S/ZKY3iJ; 4:OggVu3JHhrsLCzNe7/Ne+z+p22WCtqPzYPGZ/YZOQj158qj8Hp2Huqhn8IqBzc985L99fm1JB6tnOmsuY3QkS37XGN5xDJy+U9GpLRwZv0zWzfsq06xnO2LtuqPdDUTejLDPYCno6qAAZFuAVrcsRbWOY2P/8gdUUacE6sVZFGFH+HdGDWoOJeeQdQLF9PPHniMtYfbaHMf4f2xB60Eo5qveiuO5lhSOenXqaHgXd6enFNOstA0zxFYRx4u3LhV4uOTybbLVMj8lsT4Qv+qPSBjh89cupjVIy7eB9zEEzRriE/XrGGd/6rnqMqFZKSn2qCTAhbtM5RFw2p4TD0JhYwuUf2b3yhHWA//zMheRRdHZNjPDqoYPnBLNP8GDEwAt X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DB5PR07MB0935; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(8121501046)(5005006)(520078)(10201501046)(3002001); SRVR:DB5PR07MB0935; BCL:0; PCL:0; RULEID:; SRVR:DB5PR07MB0935; X-Forefront-PRVS: 0762FFD075 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6009001)(479174004)(199003)(189002)(24454002)(40100003)(93886004)(65816999)(5890100001)(84326002)(42186005)(50986999)(101416001)(105586002)(15975445007)(512874002)(87266999)(76176999)(122386002)(586003)(106356001)(86362001)(54356999)(5007970100001)(36756003)(2950100001)(19580395003)(97736004)(33656002)(92566002)(5000100001)(568964002)(65956001)(77096005)(5001920100001)(59896002)(74482002)(83506001)(5004730100002)(4001350100001)(87976001)(81156007)(189998001)(64126003)(65806001)(110136002)(5001960100002)(80316001)(5008740100001)(3826002)(5001840100002); DIR:OUT; SFP:1101; SCL:1; SRVR:DB5PR07MB0935; H:[IPv6:2001:470:183f:da2b::632f:a7da]; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: darbyshire-bryant.me.uk does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB5PR07MB0935; 23:BzcYWp876Ng4nk87/BKftVoTyEECB7ssuAy4dFJXd?= =?us-ascii?Q?3zQa6jlvbsd/z25OKQr/z3PlMlg1i6s8fUfgoMMHwmCyFi9dKSmOebbDwebO?= =?us-ascii?Q?MB5B3+3P2ephHSOpmcIxL9xBm6Se5IueppVxe7lsFCPv90SpKOGcT8sIGJdk?= =?us-ascii?Q?0sdp+oZ84argN9lGzr+pGjOjRQWd08eb16mJaSLNaazk6Ze7eXhn5Upd/LBt?= =?us-ascii?Q?HW7edQxDJsilvF6VZ5yelj0N+dsIYkZ51TIqbplNH2Z7ZHJw9BQy9YJJFetE?= =?us-ascii?Q?IN/yOWelFM4cbhWMdoTWnrjGko2ySYJYIXZA3jwCo9V3pseens5UBU7JkeBr?= =?us-ascii?Q?YjYEaxvLnbYfsC+jj67CdCcmlprX9OMk/2n+Lb6HmW/PGcAdmxgulZnWlC1x?= =?us-ascii?Q?OWyMJ2PSPG0UUXyU+9XWxy08HIZc63uPTRUULf9G8gE2X250VsmsZ7LVeZRT?= =?us-ascii?Q?IPcokF3E82BygUc5j8Diin9IS7pdvaI3gmUgosm48YLRkFvoI8X9i2AReBnR?= =?us-ascii?Q?1Kug7ectFir8mSjbXvADmUNDaEUAo2rDIh4fJPX0BlHvuxdR//GKLNYTrBAq?= =?us-ascii?Q?cUXQEHIptGKiRQiZESWQMCH0ikdJYI2L8jhz5bcOEYzc2H8eZL1Gouoe8iNJ?= =?us-ascii?Q?D+hvPmEJdbCVErbtjfX/EiqxVuuREJoUrbBGAIowKm2T7sRd3LKCLTCxAckf?= =?us-ascii?Q?VMYQwlFRogBfhSnsK9rVq4pCSdZSBlyqO5SFnxC44Jq2YVieF8VmOxdFe3Ue?= =?us-ascii?Q?lc50K26fcLpxRqQkXX5cTS9iSJibwlMbqispYQmV5lcV6QihIxq98nzWBTtQ?= =?us-ascii?Q?39CIPmdPX+NavGPtpLw4TNzOn4h3zHl75CcoKIM2k+XqTfEHoIwlPqBaMEDx?= =?us-ascii?Q?xZac8xukaUwGHmtMya8zrI40bUI9NLjtKo6ep8bd/D3As5rST54YX8blMXXx?= =?us-ascii?Q?SfhZzhs9TJwnCF6SKQPTKRO3tbP3xlBg4r0W22k2g9Mqy7HlAyE6pngcGgNI?= =?us-ascii?Q?2ygB5iZYqTF7tEpwTl/2u60RYvCo3HJDvkG2oQHOQZZ7klvfQudJ3SMWPYpO?= =?us-ascii?Q?uz0xlk2N85k5G0VjU+y3L1mWcA6JaaazkBM9mAmclynsjSw3vsktIQ1oy0Ep?= =?us-ascii?Q?jt6KCbP42t+BOOrWie5+iP7WK1eWDreNsJKaCF35zkeX54EnJuaM+d6xu+qF?= =?us-ascii?Q?QthJZI/nwZE/FT58DTJj1SccJUWiqc1INeJ8Iyd1x6KbBjB6v8XI8tn8VBDt?= =?us-ascii?Q?YRfC8Bg7yQ/rya6be+wVsT2QzoKXSkG6rvrKiP5BVc3CF1Z+VJ/R22H7Rl+i?= =?us-ascii?Q?HmJCiyYlaoNn+CKji7yxHnJJdYBt3ggrMBf5bv8RmySmympzuHBQmJBFuwdD?= =?us-ascii?Q?gusrg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; DB5PR07MB0935; 5:yBtLb0X8ZErDqlV6w7gf6etSUDSpTTyrr69JIVoZ+3QV4YlQ1yzAuIvl9YQBVEQZ8i9n2laLNy4xLgi3nOyM9WvFi5Tg6htFKdXsjIuNnwIVoOLOAKUnEGknCDyy0X9NWR0TQtrvSJeG+EeWA2aJZw==; 24:jcnRrFuYR6CxVCIFQ6AMYDXfLRyo68wa8YeFj/8axxFIzqVcTPN5/uS89xyc9LlPhb6cThP/1vd9poTNwnK7fgn6yHo8ZfJgbrxu5psqB2U=; 20:WyRUiZh7sJeSQse2ttiQc8Zy6CgQDUgyYrdWpHd+4w9DRqK/jQxUQ91NPM0QrZXOol9e0cvuUw3q/MHO+QOxhA== SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: darbyshire-bryant.me.uk X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Nov 2015 16:25:46.8570 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR07MB0935 Cc: cake@lists.bufferbloat.net Subject: Re: [Cake] Announce - possible new feature - DSCP cleaning X-BeenThere: cake@lists.bufferbloat.net X-Mailman-Version: 2.1.13 Precedence: list List-Id: Cake - FQ_codel the next generation List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Nov 2015 16:26:14 -0000 --------------ms010604040905040403080001 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 16/11/15 15:57, Dave Taht wrote: > isn't there some other boolean variable somewhere ? > > Dave T=C3=A4ht > Let's go make home routers and wifi faster! With better software! > https://www.gofundme.com/savewifi > Well there's something called 'rate_flags', currently enumerated: enum { CAKE_FLAG_ATM =3D 0x0001, CAKE_FLAG_AUTORATE_INGRESS =3D 0x0010 }; I could add 'CAKE_FLAG_SQUASH =3D 0x0100' or even '0x0020' - I don't know= why the gap between ATM and AUTORATE_INGRESS. When I created 'squash' I did at least reduce the size of tin_cnt so I didn't screw up the alignment (or change the size of the structure) I'm learning, slowly. Also (and this is ancient) my previous assembler knowledge is that checking a byte for non zero is quicker than checking a bit in a byte, so that probably erroneously biased me toward a byte rather than a bit :-) --------------ms010604040905040403080001 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgMFADCABgkqhkiG9w0BBwEAAKCC DYEwggY0MIIEHKADAgECAgEeMA0GCSqGSIb3DQEBBQUAMH0xCzAJBgNVBAYTAklMMRYwFAYD VQQKEw1TdGFydENvbSBMdGQuMSswKQYDVQQLEyJTZWN1cmUgRGlnaXRhbCBDZXJ0aWZpY2F0 ZSBTaWduaW5nMSkwJwYDVQQDEyBTdGFydENvbSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe Fw0wNzEwMjQyMTAxNTVaFw0xNzEwMjQyMTAxNTVaMIGMMQswCQYDVQQGEwJJTDEWMBQGA1UE ChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUg U2lnbmluZzE4MDYGA1UEAxMvU3RhcnRDb20gQ2xhc3MgMSBQcmltYXJ5IEludGVybWVkaWF0 ZSBDbGllbnQgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDHCYPMzi3YGrEp pC4Tq5a+ijKDjKaIQZZVR63UbxIP6uq/I0fhCu+cQhoUfE6ERKKnu8zPf1Jwuk0tsvVCk6U9 b+0UjM0dLep3ZdE1gblK/1FwYT5Pipsu2yOMluLqwvsuz9/9f1+1PKHG/FaR/wpbfuIqu54q zHDYeqiUfsYzoVflR80DAC7hmJ+SmZnNTWyUGHJbBpA8Q89lGxahNvuryGaC/o2/ceD2uYDX 9U8Eg5DpIpGQdcbQeGarV04WgAUjjXX5r/2dabmtxWMZwhZna//jdiSyrrSMTGKkDiXm6/3/ 4ebfeZuCYKzN2P8O2F/Xe2AC/Y7zeEsnR7FOp+uXAgMBAAGjggGtMIIBqTAPBgNVHRMBAf8E BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUU3Ltkpzg2ssBXHx+ljVO8tS4UYIw HwYDVR0jBBgwFoAUTgvvGqRAW6UXaYcwyjRoQ9BBrvIwZgYIKwYBBQUHAQEEWjBYMCcGCCsG AQUFBzABhhtodHRwOi8vb2NzcC5zdGFydHNzbC5jb20vY2EwLQYIKwYBBQUHMAKGIWh0dHA6 Ly93d3cuc3RhcnRzc2wuY29tL3Nmc2NhLmNydDBbBgNVHR8EVDBSMCegJaAjhiFodHRwOi8v d3d3LnN0YXJ0c3NsLmNvbS9zZnNjYS5jcmwwJ6AloCOGIWh0dHA6Ly9jcmwuc3RhcnRzc2wu Y29tL3Nmc2NhLmNybDCBgAYDVR0gBHkwdzB1BgsrBgEEAYG1NwECATBmMC4GCCsGAQUFBwIB FiJodHRwOi8vd3d3LnN0YXJ0c3NsLmNvbS9wb2xpY3kucGRmMDQGCCsGAQUFBwIBFihodHRw Oi8vd3d3LnN0YXJ0c3NsLmNvbS9pbnRlcm1lZGlhdGUucGRmMA0GCSqGSIb3DQEBBQUAA4IC AQAKgwh9eKssBly4Y4xerhy5I3dNoXHYfYa8PlVLL/qtXnkFgdtY1o95CfegFJTwqBBmf8py TUnFsukDFUI22zF5bVHzuJ+GxhnSqN2sD1qetbYwBYK2iyYA5Pg7Er1A+hKMIzEzcduRkIMm CeUTyMyikfbUFvIBivtvkR8ZFAk22BZy+pJfAoedO61HTz4qSfQoCRcLN5A0t4DkuVhTMXIz uQ8CnykhExD6x4e6ebIbrjZLb7L+ocR0y4YjCl/Pd4MXU91y0vTipgr/O75CDUHDRHCCKBVm z/Rzkc/b970MEeHt5LC3NiWTgBSvrLEuVzBKM586YoRD9Dy3OHQgWI270g+5MYA8GfgI/EPT 5G7xPbCDz+zjdH89PeR3U4So4lSXur6H6vp+m9TQXPF3a0LwZrp8MQ+Z77U1uL7TelWO5lAp sbAonrqASfTpaprFVkL4nyGH+NHST2ZJPWIBk81i6Vw0ny0qZW2Niy/QvVNKbb43A43ny076 khXO7cNbBIRdJ/6qQNq9Bqb5C0Q5nEsFcj75oxQRqlKf6TcvGbjxkJh8BYtv9ePsXklAxtm8 J7GCUBthHSQgepbkOexhJ0wP8imUkyiPHQ0GvEnd83129fZjoEhdGwXV27ioRKbj/cIq7JRX un0NbeY+UdMYu9jGfIpDLtUUGSgsg2zMGs5R4jCCB0UwggYtoAMCAQICAw5ySjANBgkqhkiG 9w0BAQsFADCBjDELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKzApBgNV BAsTIlNlY3VyZSBEaWdpdGFsIENlcnRpZmljYXRlIFNpZ25pbmcxODA2BgNVBAMTL1N0YXJ0 Q29tIENsYXNzIDEgUHJpbWFyeSBJbnRlcm1lZGlhdGUgQ2xpZW50IENBMB4XDTE1MDYyMDIw MzA1MloXDTE2MDYyMDE0MjY0N1owVjEmMCQGA1UEAwwda2V2aW5AZGFyYnlzaGlyZS1icnlh bnQubWUudWsxLDAqBgkqhkiG9w0BCQEWHWtldmluQGRhcmJ5c2hpcmUtYnJ5YW50Lm1lLnVr MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAugCNtDhytCJ9HOfenUHr/vUGUECv PL1IJXgHMl4cIJmwgLOkXhIcTMxHnX+kFweqvT+eDWv1hzA9yMWhvjLFC4eLoFaV0xiAat8O XQ7t3MwKY5DW0mB1dOnjiFIcc/XMwyYI4KfEGnFMJQkzon0rDVpkl/Q1f/hu1sELO7Zc6TFL wuuDuiP7S73zrz50TRoq0+Ob3x0uOMW2uVwVzf6NLwHgBE2LFleMXblyUMx0IlIcLan2nWiI Vsa3XYd+C6KAGGwlmO4VAZ25KuX7hkj8f82lSapvtKTtvrSoDghXlHH2JXiIQX+Sn0UgOmbX 1KyOe9vN7WzQ+tpPRzpFRffnnnp1VQye3wVRPBumjDxQSFTOhUtslnvbefUQSPw6p5w9ZiXI GJICLkX/MkYN/TwGCvuUG2PxBybSR1A2I5ap+VI/zGSG3XGVEA69SOZQyD+8YjJZfaY2nCu+ DuM64JrJUi2CvX6fwcdHNschJNrrfetpnrx3JrGnG9o+pWuUG1phBg+KKN2bhrdzY79qm7ha 86EMKSUOn5nBdGY3YxdXq/naoUQeOCUV2JMFGOulu7sKpiWcz7HVFacXjd9ebisVLv+jOwll z14BWRb87s1+LBEJn/Ybn3ekhtgyEAhB4kgj0scl4hI8xCU6zrZyDnbXmxSvDXbClZA0PACt f/jhGvUCAwEAAaOCAuMwggLfMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdJQQWMBQG CCsGAQUFBwMCBggrBgEFBQcDBDAdBgNVHQ4EFgQULkW2CpDiQpRNumQ7wdspjFfgX+AwHwYD VR0jBBgwFoAUU3Ltkpzg2ssBXHx+ljVO8tS4UYIwKAYDVR0RBCEwH4Eda2V2aW5AZGFyYnlz aGlyZS1icnlhbnQubWUudWswggFMBgNVHSAEggFDMIIBPzCCATsGCysGAQQBgbU3AQIDMIIB KjAuBggrBgEFBQcCARYiaHR0cDovL3d3dy5zdGFydHNzbC5jb20vcG9saWN5LnBkZjCB9wYI KwYBBQUHAgIwgeowJxYgU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwAwIBARqB vlRoaXMgY2VydGlmaWNhdGUgd2FzIGlzc3VlZCBhY2NvcmRpbmcgdG8gdGhlIENsYXNzIDEg VmFsaWRhdGlvbiByZXF1aXJlbWVudHMgb2YgdGhlIFN0YXJ0Q29tIENBIHBvbGljeSwgcmVs aWFuY2Ugb25seSBmb3IgdGhlIGludGVuZGVkIHB1cnBvc2UgaW4gY29tcGxpYW5jZSBvZiB0 aGUgcmVseWluZyBwYXJ0eSBvYmxpZ2F0aW9ucy4wNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDov L2NybC5zdGFydHNzbC5jb20vY3J0dTEtY3JsLmNybDCBjgYIKwYBBQUHAQEEgYEwfzA5Bggr BgEFBQcwAYYtaHR0cDovL29jc3Auc3RhcnRzc2wuY29tL3N1Yi9jbGFzczEvY2xpZW50L2Nh MEIGCCsGAQUFBzAChjZodHRwOi8vYWlhLnN0YXJ0c3NsLmNvbS9jZXJ0cy9zdWIuY2xhc3Mx LmNsaWVudC5jYS5jcnQwIwYDVR0SBBwwGoYYaHR0cDovL3d3dy5zdGFydHNzbC5jb20vMA0G CSqGSIb3DQEBCwUAA4IBAQBicQWe98eF/o09TXFsExc+WSyYjt3oSnXyocLzXQp82CQhIg21 5RqNZ1e+hsO7tq8S6hdItUDbKpecpIV59+57ke1zVl2slTRIT19fhYINHH78rVVRPzuHoiDt MXnGrp9hbq3Cz8P4mm8INKDiYK46kyplRAQ3ZMouPG1lsnDzgQAvbCj74H8yAp7fK8if6cxs 28BCUmdP8D3c6M1ffdNNaqNT+4Z3mtOujXXg7zOfmXN0Zg/mEtZ0NrWE2uICGdWjTv9KZiI7 fi4hk2CRpCL63qzmu6BwtcgtwhgYYtuAk2N43+SiyDkyLKGAcjEor3t5f9HivN29E0F0MXTH 1OdgMYIFDTCCBQkCAQEwgZQwgYwxCzAJBgNVBAYTAklMMRYwFAYDVQQKEw1TdGFydENvbSBM dGQuMSswKQYDVQQLEyJTZWN1cmUgRGlnaXRhbCBDZXJ0aWZpY2F0ZSBTaWduaW5nMTgwNgYD VQQDEy9TdGFydENvbSBDbGFzcyAxIFByaW1hcnkgSW50ZXJtZWRpYXRlIENsaWVudCBDQQID DnJKMA0GCWCGSAFlAwQCAwUAoIICSTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqG SIb3DQEJBTEPFw0xNTExMTYxNjI1NDJaME8GCSqGSIb3DQEJBDFCBEDLv+J/UtjbI1ZjnCBM jeTgz5M0cceVDQqSQfkXlBygyVtMbtg46VjhbR4q8vT/EWeVJH5vVX4+x/ZnvjOznxz4MGwG CSqGSIb3DQEJDzFfMF0wCwYJYIZIAWUDBAEqMAsGCWCGSAFlAwQBAjAKBggqhkiG9w0DBzAO BggqhkiG9w0DAgICAIAwDQYIKoZIhvcNAwICAUAwBwYFKw4DAgcwDQYIKoZIhvcNAwICASgw gaUGCSsGAQQBgjcQBDGBlzCBlDCBjDELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29t IEx0ZC4xKzApBgNVBAsTIlNlY3VyZSBEaWdpdGFsIENlcnRpZmljYXRlIFNpZ25pbmcxODA2 BgNVBAMTL1N0YXJ0Q29tIENsYXNzIDEgUHJpbWFyeSBJbnRlcm1lZGlhdGUgQ2xpZW50IENB AgMOckowgacGCyqGSIb3DQEJEAILMYGXoIGUMIGMMQswCQYDVQQGEwJJTDEWMBQGA1UEChMN U3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2ln bmluZzE4MDYGA1UEAxMvU3RhcnRDb20gQ2xhc3MgMSBQcmltYXJ5IEludGVybWVkaWF0ZSBD bGllbnQgQ0ECAw5ySjANBgkqhkiG9w0BAQEFAASCAgBjFXMa+zI8M+jJeCnPu4mKShUA65Vz eZs1h8ySd8Yc2R+mmYRbr0PVBJOYmDb1fYY2D2eEo8mfRiqGdEC/BHZA7lH8AhHpjxg1OPiA ICFStQK43CUW+KhDYdGhXf2cy2Iyl0n75n69fNUDNEwQAhEIb7R/4XuloUpi2b23naZCtV4p zaufuCMEBHxVQfTUQsatVEDRb6WUqI8Su/Mz1IHSlp03cONtU9qtRXeBnis6oQ8gOCZWG0/F km0QFjaZPzVbNHfqsdDUDTUc+quiszOahUU4sCdZ9IukigWoBdfZEo/xxRKqJj6Wyyei+a+9 fS347qyEtzcKYs8Hc8YN2ERnOJb4EouWCqIyUiflWSVApGjgJdh6OqUVXSpMAS/LsQZd96uZ /OP5eAO0xSLn/j9AiVyE58EKiNSnlvELvuKWSEIgKDJy4kGEompRldCqJBhl7FFeiZ3qKDyk gGGywHiMj2kmd9Ax1JlRBtLJUuk+q6QzxYkTIqZvXOCWjbRRb7BpXXd8rlnyQ59JutfIwmj7 kbGqMsj0I5ACgb5cbsNtT91EjVaC+ES2i9UYm/Nx+23LlBj4JU//LCjJyzYR8kso56QFYloa zKchMhk9b89srlaQ0pfBtNG0oIYTrCmo7+WIthLwdPG0UeXXQFLriJ+r1GwQCIhuOoOS86kE 87iPoAAAAAAAAA== --------------ms010604040905040403080001--