From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mail.toke.dk; dkim=pass header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20251104 header.b=PNPnrSZu; arc=pass; dmarc=pass (Used From Domain Record) header.from=gmail.com policy.dmarc=quarantine Received: from mail-vs1-xe30.google.com (mail-vs1-xe30.google.com [IPv6:2607:f8b0:4864:20::e30]) by mail.toke.dk (Postfix) with ESMTPS id B033E1370BBD for ; Tue, 21 Jul 2026 08:22:33 +0200 (CEST) Received: by mail-vs1-xe30.google.com with SMTP id ada2fe7eead31-736eea06c3eso3112270137.0 for ; Mon, 20 Jul 2026 23:22:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1784614951; cv=none; d=google.com; s=arc-20260327; b=qBtqm6uvQlY+a9Y96TpeyI9ktaoSEccQ7QN38PwYf6FjkziJWofj8qxIWIAy3e4iBj EmF/Ex/XiSvKCpCj18eBnDQamvFcoY+BsSPEfLclMwgVpwN+d3pDJE11qKcErG9Guduc cX9pLcFBMAJmN7JGh+SECgn0BbZfBCy0rAXbxjP6FbkqE3GC6GB8fATOB8htB49RD+0x OgG/PNvH00drZrxA1u8QsIRqeRscn9qJ8Ci1Akkv8fQ62GQ9vPhZINVsweabfWuX5+/L lDtQWAdPULCllqwA4SREutExo9MpGj/KQZESGjw9cZeHKNrfCzOnEYXSPI5pXpznUQg/ DpCA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=to:subject:message-id:date:from:reply-to:in-reply-to:references :mime-version:dkim-signature; bh=q+yRSKpapfmrsA1s8KsgMl6z2Ddy2nwcaF7U9HpgY84=; fh=W6J6UZbUXZ2hxtIB9oeeYlV+/tct+euEDMZXTQBxX3c=; b=O6ry7L77nGuS1ogTGY171H+kkZjE3py/HG7FfaylMahpSWBVm4fYYHoqQzsIRJLqqw HoGDNUloHTdNl5Q0fgK5zZPssc6RTRh/4DWtb+UEmO6BSOzmTwgz/J6BVmhPYsR2Wy6K eB+2mTQiuyFHRT5e+yndEZjL3Z1j3tweLk81WBV30DcuuLvKVKGkCdEHrIDpwOcO3eMb 3M+alQZYHBr37MHGwmxKQdtbjsFOZwaxAjr44+qlYCrCTt01srVpURPW8hPeYtrGWW8b dApHOYf7VURjfrihIpBNJCgJtQa65NFpRMmTj5GoRu3yIZ5/r3FMx/EYdyxJ3/8L7QZp w6zg==; darn=lists.bufferbloat.net ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784614951; x=1785219751; darn=lists.bufferbloat.net; h=content-type:to:subject:message-id:date:from:reply-to:in-reply-to :references:mime-version:from:to:cc:subject:date:message-id:reply-to :content-type; bh=q+yRSKpapfmrsA1s8KsgMl6z2Ddy2nwcaF7U9HpgY84=; b=PNPnrSZuwk0zGWzYg34YvkDxN/h8ZXLVFGvIzpNQn4DLLnCp8N1Pekn97bAEGVhsJq ILpg4ZJzbEi5RSeyMkfYwJHFHwVxsiBi91MvuYnLaJ57rsHWg+gFyzp9Yd1M8yBa3cWj jnbupTZzvGR6+tBCBozwFX+foFwDlUY32WqHJh5M3YZfHKAJl1Lum+J+hddKBKCl6YZb kc5TlAWeG5ap8SlN1WSrlUuIq+bzttiIqaJhBGOPR6PxV0CgWDlAdCGN+4/x5bpa74Zn /Q2vE9PLY1StWrMW0qHkuYpvMUV4XXydPQ1qtJ80XwI/WvlXTpXgZsPIu/JNjEmh0Whi UtdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784614951; x=1785219751; h=content-type:to:subject:message-id:date:from:reply-to:in-reply-to :references:mime-version:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to:content-type; bh=q+yRSKpapfmrsA1s8KsgMl6z2Ddy2nwcaF7U9HpgY84=; b=qYMmjkk30exW3D7TB1GjV4AmZ6aDVNcdZbY6Dfecb83Dbnpv1EBABSh6IFpQHOQ8q9 Uhiu6W9xK+UFyub16aW2M3dFGhQ/Du5xoO6OpMgiYQT2mtA4FpSLwoqZPQ32XTyDmlHM xCCST6p2QK41dFS1ghMUwh+GUqJtk3uv8EIZGwFN5rGWwzeg0TkD73mxgQ2eZ4WgDgED Cw41PYmAXJNxmN7zTTx1mMmuugj1i4ccMK3XjKg+tsUai8uLo/gumACK7FdWedoK757G O0rMVewLFH3929qe28iki1H3uynWUxYpIgMvHhfFECQeJhOqrgycmyJoVGXjxupFc85N yxlw== X-Gm-Message-State: AOJu0YxBQiWKKnWGwgWzyO/2ge7l7v40iPkQ0cJGyzRlJsAG9KQm87wi eYPNvm5pA1gF/CwD1ySBUW6KdpqVSTfpUOoPdDYGQBBZpNDN1mK+qmwk75Ano1Fjq8qOtoj1EiQ aTmb7TtcQjN79x8VInM+588VN/JB0RzDByc8/ X-Gm-Gg: AR+sD10fLoZGAmoTbUJlr2tJOPS5QGduLXnVWuoIILEn3es2ZattytmhmFWbPsQdmCU GtqnRMIIW30pQLLaM69aYZ6deZwPFlAb6M3t/p5vtcJ5JFl4WqdNhly1UJM6wruw7D272MILt9W oP2LCkubL4/KWhX2LzoK46IO3qUQI5sR8EJxv++Y2N3UPekilFzF7dT4q3bLSDWMB10iC9fC6/G V2oyVfNjbd6bIjHSwPRzzOdxC8Iokc4G1cJsi/T4g8Z1h11c0CVpkUjB5HTzL+1OLkyEt8VX7n+ BCp/XF02IiRiF/LBv7iWCOgNI97cAs1CKtiWJA0oV5YhPBi3kwz5MHC6EnVshy4UTrmWaj1PkVc z5+aClIYDUHwCYn74+uxEXEFHDtWWtm9etdE6KZDQ6mN32M5YFH9OuxXJKzNN X-Received: by 2002:a05:6102:3f55:b0:745:6721:8c2e with SMTP id ada2fe7eead31-74753465622mr5534365137.2.1784614951227; Mon, 20 Jul 2026 23:22:31 -0700 (PDT) MIME-Version: 1.0 References: <178461405980.1649.1968000986901190552@gauss> In-Reply-To: <178461405980.1649.1968000986901190552@gauss> From: le berger des photons Date: Tue, 21 Jul 2026 08:22:21 +0200 X-Gm-Features: AUfX_mwQaJHH6xwGtKY-xKfBokwPNRjtTM5ShWnmlf8cyZ9CnDqH8fZ-NsaLJZU Message-ID: To: cake@lists.bufferbloat.net Message-ID-Hash: WYD3BZHXWZLFX5BTFOCMUT5E62L7DZ7O X-Message-ID-Hash: WYD3BZHXWZLFX5BTFOCMUT5E62L7DZ7O X-MailFrom: thejoff@gmail.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 3.3.10 X-Mailman-Version: 3.3.10 Precedence: list Reply-To: thejoff@gmail.com Subject: [Cake] Re: Cake Digest, Vol 130, Issue 7 List-Id: Cake - FQ_codel the next generation Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: bG9va2luZyBicmllZmx5IGF0IHRoYXQgaXQgc2VlbXMgdGhhdCBjYWtlIGlzIG5vIGxvbmdlciBw cm9wZXJseSBuYW1lZC4gIEl0DQpkb2Vzbid0IHNlZW0gdG8gbWUgdGhhdCBpdCdzIGEgInBpZWNl IG9mIGNha2UiICBpZiBJLCB3aG8ndmUgYmVlbg0KbmV0d29ya2luZyBmb3IgMjAgeWVhcnMsIGhh cyB0byBpbnZlc3QgYSBsb3Qgb2YgdGltZSB0byBldmVuIGhhdmUgYSB2YWd1ZQ0KaWRlYSBvZiB3 aGF0IHlvdSdyZSB0YWxraW5nIGFib3V0Lg0KDQpPbiBUdWUsIEp1bCAyMSwgMjAyNiBhdCA4OjA3 4oCvQU0gPGNha2UtcmVxdWVzdEBsaXN0cy5idWZmZXJibG9hdC5uZXQ+IHdyb3RlOg0KDQo+IFNl bmQgQ2FrZSBtYWlsaW5nIGxpc3Qgc3VibWlzc2lvbnMgdG8NCj4gICAgICAgICBjYWtlQGxpc3Rz LmJ1ZmZlcmJsb2F0Lm5ldA0KPg0KPiBUbyBzdWJzY3JpYmUgb3IgdW5zdWJzY3JpYmUgdmlhIGVt YWlsLCBzZW5kIGEgbWVzc2FnZSB3aXRoIHN1YmplY3Qgb3INCj4gYm9keSAnaGVscCcgdG8NCj4g ICAgICAgICBjYWtlLXJlcXVlc3RAbGlzdHMuYnVmZmVyYmxvYXQubmV0DQo+DQo+IFlvdSBjYW4g cmVhY2ggdGhlIHBlcnNvbiBtYW5hZ2luZyB0aGUgbGlzdCBhdA0KPiAgICAgICAgIGNha2Utb3du ZXJAbGlzdHMuYnVmZmVyYmxvYXQubmV0DQo+DQo+IFdoZW4gcmVwbHlpbmcsIHBsZWFzZSBlZGl0 IHlvdXIgU3ViamVjdCBsaW5lIHNvIGl0IGlzIG1vcmUgc3BlY2lmaWMNCj4gdGhhbiAiUmU6IENv bnRlbnRzIG9mIENha2UgZGlnZXN0Li4uIg0KPg0KPiBUb2RheSdzIFRvcGljczoNCj4NCj4gICAg MS4gUmU6IFtQQVRDSCBuZXQtbmV4dF0gbmV0L3NjaGVkOiBzY2hfY2FrZTogc2tpcCBjbGVhcmlu ZyB1bnVzZWQgdGlucw0KPiBkdXJpbmcgcmF0ZSBhZGp1c3RtZW50DQo+ICAgICAgIChUb2tlIEjD uGlsYW5kLUrDuHJnZW5zZW4pDQo+ICAgIDIuIFtQQVRDSCBuZXQtbmV4dCB2Ml0gbmV0L3NjaGVk OiBzY2hfY2FrZTogc2tpcCBjbGVhcmluZyB1bnVzZWQgdGlucw0KPiBkdXJpbmcgcmF0ZSBhZGp1 c3RtZW50DQo+ICAgICAgIChKb25hcyBLw7ZwcGVsZXIpDQo+DQo+DQo+IC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0N Cj4NCj4gTWVzc2FnZTogMQ0KPiBEYXRlOiBNb24sIDIwIEp1bCAyMDI2IDIyOjMwOjA5ICswMjAw DQo+IEZyb206IFRva2UgSMO4aWxhbmQtSsO4cmdlbnNlbiA8dG9rZUB0b2tlLmRrPg0KPiBTdWJq ZWN0OiBbQ2FrZV0gUmU6IFtQQVRDSCBuZXQtbmV4dF0gbmV0L3NjaGVkOiBzY2hfY2FrZTogc2tp cA0KPiAgICAgICAgIGNsZWFyaW5nIHVudXNlZCB0aW5zIGR1cmluZyByYXRlIGFkanVzdG1lbnQN Cj4gVG86IEpvbmFzIEvDtnBwZWxlciA8ai5rb2VwcGVsZXJAdHUtYmVybGluLmRlPiwgSmFtYWwg SGFkaSBTYWxpbQ0KPiAgICAgICAgIDxqaHNAbW9qYXRhdHUuY29tPiwgSmlyaSBQaXJrbyA8amly aUByZXNudWxsaS51cz4sICJEYXZpZCBTLg0KPiBNaWxsZXIiDQo+ICAgICAgICAgPGRhdmVtQGRh dmVtbG9mdC5uZXQ+LCBFcmljIER1bWF6ZXQgPGVkdW1hemV0QGdvb2dsZS5jb20+LCBKYWt1Yg0K PiAgICAgICAgIEtpY2luc2tpIDxrdWJhQGtlcm5lbC5vcmc+LCBQYW9sbyBBYmVuaSA8cGFiZW5p QHJlZGhhdC5jb20+LCBTaW1vbg0KPiAgICAgICAgIEhvcm1hbiA8aG9ybXNAa2VybmVsLm9yZz4N Cj4gQ2M6IGNha2VAbGlzdHMuYnVmZmVyYmxvYXQubmV0LCBuZXRkZXZAdmdlci5rZXJuZWwub3Jn LA0KPiAgICAgICAgIGxpbnV4LWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmcsIE1pa2UgUGhhbSA8bWlr ZXBoYW00MzIxQGdtYWlsLmNvbT4NCj4gTWVzc2FnZS1JRDogPDJFMURDMjIwLTRDQzAtNEY0Ni1B MDQyLTZCMDk1MzVFQzM3M0B0b2tlLmRrPg0KPiBDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNo YXJzZXQ9dXRmLTgNCj4NCj4NCj4NCj4gT24gMTggSnVseSAyMDI2IDE3LjA2LjI4IENFU1QsICJK b25hcyBLw7ZwcGVsZXIiIDxqLmtvZXBwZWxlckB0dS1iZXJsaW4uZGU+DQo+IHdyb3RlOg0KPiA+ T24gNy8xNy8yNiAxMDozMSwgVG9rZSBIw7hpbGFuZC1Kw7hyZ2Vuc2VuIHdyb3RlOg0KPiA+PiBK b25hcyBLw7ZwcGVsZXIgPGoua29lcHBlbGVyQHR1LWJlcmxpbi5kZT4gd3JpdGVzOg0KPiA+Pg0K PiA+Pj4gV2hlbiBjYWtlX2NvbmZpZ3VyZV9yYXRlcygpIGlzIGNhbGxlZCBmcm9tIHRoZSBkZXF1 ZXVlIHBhdGggd2l0aA0KPiA+Pj4gcmF0ZV9hZGp1c3Q9dHJ1ZSwgaXQgb25seSBuZWVkcyB0byB1 cGRhdGUgdGhlIHJhdGUgcGFyYW1ldGVycy4gVGhlDQo+ID4+PiBsb29wIHRoYXQgY2xlYXJzIHRo ZSB1bnVzZWQgdGlucyBpcyBib3RoIHVubmVjZXNzYXJ5IGFuZCBoYXJtZnVsIGluDQo+ID4+PiB0 aGlzIHBhdGg6DQo+ID4+Pg0KPiA+Pj4gICAtIGNha2VfY2xlYXJfdGluKCkgb3ZlcndyaXRlcyBx LT5jdXJfdGluIGFuZCBxLT5jdXJfZmxvdywgd2hpY2ggYXJlDQo+ID4+PiAgICAgYWN0aXZlbHkg dXNlZCBieSBjYWtlX2RlcXVldWUoKSwgY29ycnVwdGluZyB0aGUgZGVxdWV1ZSBzdGF0ZS4NCj4g Pj4+ICAgLSBpdGVyYXRpbmcgb3ZlciB0aGUgdW51c2VkIHRpbnMgYW5kIHRoZWlyIGludGVybmFs IHF1ZXVlcyB0byBwdXJnZQ0KPiA+Pj4gICAgIHBhY2tldHMgYWRkcyBuZWVkbGVzcyBvdmVyaGVh ZCB0byB0aGUgaG90IHBhdGguDQo+ID4+Pg0KPiA+Pj4gU2tpcCB0aGUgZW50aXJlIGxvb3Agd2hl biByYXRlX2FkanVzdCBpcyBzZXQsIGFzIG5laXRoZXINCj4gPj4+IGNha2VfY2xlYXJfdGluKCkg bm9yIHRoZSBtdHVfdGltZSB1cGRhdGUgYXJlIG5lZWRlZCB3aGVuIG9ubHkgdGhlDQo+ID4+PiBy YXRlIGNoYW5nZXMuDQo+ID4+Pg0KPiA+Pj4gRml4ZXM6IDE1YzI3MTVhNTI2NCAoIm5ldC9zY2hl ZDogc2NoX2Nha2U6IGZpeHVwIGNha2VfbXEgcmF0ZQ0KPiBhZGp1c3RtZW50IGZvciBkaWZmc2Vy diBjb25maWciKQ0KPiA+Pj4gU2lnbmVkLW9mZi1ieTogSm9uYXMgS8O2cHBlbGVyIDxqLmtvZXBw ZWxlckB0dS1iZXJsaW4uZGU+DQo+ID4+PiBUZXN0ZWQtYnk6IE1pa2UgUGhhbSA8bWlrZXBoYW00 MzIxQGdtYWlsLmNvbT4NCj4gPj4NCj4gPj4gRG8geW91IGhhdmUgYW55IHBlcmZvcm1hbmNlIG51 bWJlcnMgdG8gc2hvdyB0aGUgaW1wYWN0IG9mIHRoaXM/DQo+ID5ZZXMsIHRoZSB0YWJsZSBiZWxv dyBzaG93cyByZXN1bHRzIGZyb20gYSB0ZXN0IHNldHVwIHVzaW5nIHZuZyB3aXRoDQo+ID4yIG5l dHdvcmsgbmFtZXNwYWNlcywgd2l0aCBjYWtlL2Nha2VfbXEgYXR0YWNoZWQgaW4gb25lIG9mIHRo ZW06DQo+ID4NCj4gPiAgICBuczEgLT4gY2FrZS9jYWtlX21xIC0+IG5zMg0KPiA+DQo+ID4tIHZl dGggZGV2aWNlcyBhcmUgY29uZmlndXJlZCB3aXRoIDggcngvdHggcXVldWVzLg0KPiA+LSBjYWtl L2Nha2VfbXEgaXMgY29uZmlndXJlZCB3aXRoIGEgMiBHYml0IHJhdGUgbGltaXQuDQo+ID4tIFJ1 bm5pbmcgZmxlbnQncyBycnVsIGFuZCB0Y3BfbnVwIHRlc3RzIHdpdGggMzIgVENQIHVwc3RyZWFt czoNCj4gPg0KPiA+bGVnZW5kOiBxZGlzYyBtcSA9IGNha2VfbXE7IG1vZGUgYmUgPSBiZXN0ZWZm b3J0LCBkczMgPSBkaWZmc2VydjMNCj4gPiAgICAgICAgdGVzdCBudXAgPSB0Y3BfbnVwOyBiYXNl L2xvYWQgPSBpZGxlL2xvYWRlZCBSVFQgKG1zKTsgdHB1dCA9DQo+IE1iaXQvcw0KPiA+DQo+ID4r LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tKy0tLS0tLSstLS0tLS0tKy0tLS0t LS0rLS0tLS0tLS0tKw0KPiA+fCBrZXJuZWwgICAgICAgICAgICAgIHwgcWRpc2MgfCBtb2RlIHwg dGVzdCB8ICBiYXNlIHwgIGxvYWQgfCAgICB0cHV0IHwNCj4gPistLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLSstLS0tLS0rLS0tLS0tKy0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0rDQo+ID58 IG5ldC1uZXh0ICAgICAgICAgICAgfCBjYWtlICB8IGJlICAgfCBycnVsIHwgMC4wNzUgfCAgNC43 NiB8IDE0NzMuNjkgfA0KPiA+fCBuZXQtbmV4dCAgICAgICAgICAgIHwgY2FrZSAgfCBiZSAgIHwg bnVwICB8IDAuMDc4IHwgIDYuMjMgfCAxNTUwLjc5IHwNCj4gPnwgbmV0LW5leHQgICAgICAgICAg ICB8IGNha2UgIHwgZHMzICB8IHJydWwgfCAwLjA2MyB8ICA1LjgxIHwgMTUyNi43NSB8DQo+ID58 IG5ldC1uZXh0ICAgICAgICAgICAgfCBjYWtlICB8IGRzMyAgfCBudXAgIHwgMC4wNDYgfCAgNi4w OSB8IDE3NjEuNDUgfA0KPiA+Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tLSst LS0tLS0rLS0tLS0tLSstLS0tLS0tKy0tLS0tLS0tLSsNCj4gPnwgbmV0LW5leHQgICAgICAgICAg ICB8IG1xICAgIHwgYmUgICB8IHJydWwgfCAwLjgxMCB8IDExLjc4IHwgMTQ2OS42NyB8DQo+ID58 IG5ldC1uZXh0ICAgICAgICAgICAgfCBtcSAgICB8IGJlICAgfCBudXAgIHwgMC42MzcgfCA4NS43 MSB8IDEyNDMuMTUgfA0KPiA+fCBuZXQtbmV4dCAgICAgICAgICAgIHwgbXEgICAgfCBkczMgIHwg cnJ1bCB8IDAuMzk3IHwgMTUuMjggfCAxNzcwLjA2IHwNCj4gPnwgbmV0LW5leHQgICAgICAgICAg ICB8IG1xICAgIHwgZHMzICB8IG51cCAgfCAwLjM1MSB8IDE1Ljk4IHwgMTc5OS4zOSB8DQo+ID4r LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tKy0tLS0tLSstLS0tLS0tKy0tLS0t LS0rLS0tLS0tLS0tKw0KPiA+fCB0aGlzIHBhdGNoICAgICAgICAgIHwgbXEgICAgfCBiZSAgIHwg cnJ1bCB8IDAuMDkyIHwgIDAuNTYgfCAxODczLjQwIHwNCj4gPnwgdGhpcyBwYXRjaCAgICAgICAg ICB8IG1xICAgIHwgYmUgICB8IG51cCAgfCAwLjEwOSB8ICAxLjgyIHwgMTg2OS4xMiB8DQo+ID58 IHRoaXMgcGF0Y2ggICAgICAgICAgfCBtcSAgICB8IGRzMyAgfCBycnVsIHwgMC4wOTcgfCAgMC45 OCB8IDE4NjYuMTAgfA0KPiA+fCB0aGlzIHBhdGNoICAgICAgICAgIHwgbXEgICAgfCBkczMgIHwg bnVwICB8IDAuMTAxIHwgIDAuNTEgfCAxODYxLjc5IHwNCj4gPistLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLSstLS0tLS0rLS0tLS0tKy0tLS0tLS0rLS0tLS0tLSstLS0tLS0tLS0rDQo+ID58 IGJlZm9yZSAxNWMyNzE1YTUyNjQgfCBtcSAgICB8IGJlICAgfCBycnVsIHwgMC4wNzMgfCAgMC4z MCB8IDE4OTUuNDUgfA0KPiA+fCBiZWZvcmUgMTVjMjcxNWE1MjY0IHwgbXEgICAgfCBiZSAgIHwg bnVwICB8IDAuMDc2IHwgIDAuNDkgfCAxOTA1LjU3IHwNCj4gPnwgYmVmb3JlIDE1YzI3MTVhNTI2 NCB8IG1xICAgIHwgZHMzICB8IHJydWwgfCAwLjA2OSB8ICAwLjMxIHwgMTg5Ni41OSB8DQo+ID58 IGJlZm9yZSAxNWMyNzE1YTUyNjQgfCBtcSAgICB8IGRzMyAgfCBudXAgIHwgMC4wNTggfCAgMC44 NiB8IDE4ODQuMDEgfA0KPiA+Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tLSst LS0tLS0rLS0tLS0tLSstLS0tLS0tKy0tLS0tLS0tLSsNCj4gPg0KPiA+Tm90IG9ubHkgaXMgcDk5 IGxhdGVuY3kgZHJhc3RpY2FsbHkgcmVkdWNlZCAtLSBuZWFybHkgbWF0Y2hpbmcNCj4gPnByZS0x NWMyNzE1YTUyNjQgcmVzdWx0cyAtLSBidXQgb24gY3VycmVudCB1cHN0cmVhbSBjYWtlX21xLA0K PiA+dGhyb3VnaHB1dCBhbHNvIGluY3JlYXNlcyBhcyBhIGNha2UgbW9kZSB1c2VzIG1vcmUgdGlu cy4gVGhpcyBwb2ludHMNCj4gPmRpcmVjdGx5IHRvIGNha2VfY2xlYXJfdGluKCkgZHVyaW5nIHJl Y29uZmlnIGFzIHRoZSBjYXVzZSwgc2luY2UgaXQNCj4gPmNsZWFycyAobWF4X3RpbnMgLSBjdXJf dGlucykgdGlucyBlYWNoIHRpbWUuIFNvIHRoZSBmZXdlciB0aW5zIHRoZQ0KPiA+Y3VycmVudCBt b2RlIHVzZXMsIHRoZSBtb3JlIGdldCBjbGVhcmVkIG9uIGV2ZXJ5IHJlY29uZmlnLg0KPiA+DQo+ ID5NaWtlIHJhbiBhbHNvIHNvbWUgdGVzdCBvbiBPcGVuV3J0LCBvbiBhbiBJUFE4MDc0QSB3aXRo IDQgcngvdHgNCj4gPnF1ZXVlcywgYW5kIHNhdyBzaW1pbGFyIHRyZW5kcy4gY2FrZV9tcSBpcyBj b25maWd1cmVkIHdpdGggYSAyLjIgR2JpdA0KPiA+cmF0ZSBsaW1pdC4NCj4gPg0KPiA+VW5mb3J0 dW5hdGVseSwgd2Ugb25seSBoYXZlIGRhdGEgZm9yIDEyOCBUQ1AgdXBzdHJlYW1zIG9uIG5ldC1u ZXh0LA0KPiA+YW5kIDY0IFRDUCB1cHN0cmVhbXMgZm9yICd0aGlzIHBhdGNoJy4NCj4gPg0KPiA+ Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tLSstLS0tLS0rLS0tLS0tLS0tKy0t LS0tLS0tLS0rDQo+ID58IGtlcm5lbCAgICAgICAgICAgICAgfCBxZGlzYyB8IG1vZGUgfCB0ZXN0 IHwgICAgbG9hZCB8ICAgICB0cHV0IHwNCj4gPistLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LSstLS0tLS0rLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tKw0KPiA+fCBuZXQtbmV4dCAgICAg ICAgICAgIHwgbXEgICAgfCBiZSAgIHwgbnVwICB8ICA0NjguNTAgfCAgICA1MC45MCB8DQo+ID58 IG5ldC1uZXh0ICAgICAgICAgICAgfCBtcSAgICB8IGRzMyAgfCBudXAgIHwgIDM1NS4yMiB8ICAg IDk4LjIxIHwNCj4gPnwgbmV0LW5leHQgICAgICAgICAgICB8IG1xICAgIHwgZHM0ICB8IG51cCAg fCAgMjY4LjI4IHwgICAyNTUuODQgfA0KPiA+fCBuZXQtbmV4dCAgICAgICAgICAgIHwgbXEgICAg fCBkczggIHwgbnVwICB8ICAgIDcuNDggfCAgMjAyMy42NiB8DQo+ID4rLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0rLS0tLS0tKy0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLSsNCj4gPnwg dGhpcyBwYXRjaCAgICAgICAgICB8IG1xICAgIHwgYmUgICB8IG51cCAgfCAgICA0LjI0IHwgICA5 NDQuMzUgfA0KPiA+fCB0aGlzIHBhdGNoICAgICAgICAgIHwgbXEgICAgfCBkczMgIHwgbnVwICB8 ICAgIDQuMjcgfCAgIDkzNy43NSB8DQo+ID58IHRoaXMgcGF0Y2ggICAgICAgICAgfCBtcSAgICB8 IGRzNCAgfCBudXAgIHwgICAgNC4yNCB8ICAgOTM2Ljk3IHwNCj4gPnwgdGhpcyBwYXRjaCAgICAg ICAgICB8IG1xICAgIHwgZHM4ICB8IG51cCAgfCAgICA0LjMyIHwgICA5MjcuODkgfA0KPiA+Ky0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tLSstLS0tLS0rLS0tLS0tLS0tKy0tLS0t LS0tLS0rDQo+ID4NCj4gPlRoaXMgYWdhaW4gc2hvd3MgdGhlIHNhbWUgdHJlbmQ6IHRocm91Z2hw dXQgaW5jcmVhc2VzIGFuZCBsYXRlbmN5DQo+ID5kcm9wcyBhcyBjYWtlX21xIGlzIGNvbmZpZ3Vy ZWQgd2l0aCBtb3JlIHRpbnMuIFdlJ3JlIHN0aWxsIGxvb2tpbmcNCj4gPmludG8gd2h5IG5ldC1u ZXh0K2RzOCByZWFjaGVzIGNsb3NlIHRvIDIgR2JpdC9zLCB3aGlsZSB0aGlzIHBhdGNoDQo+ID50 b3BzIG91dCBhcm91bmQgOTI4IE1iaXQvcy4NCj4gPg0KPiA+VGhhdCBzYWlkLCB0aGlzIHBhdGNo IGRvZXNuJ3Qgc29sdmUgZXZlcnkgaXNzdWUgeWV0LCBidXQgaXQgZG9lcw0KPiA+cmVtb3ZlIHRo ZSByZWdyZXNzaW9uIGludHJvZHVjZWQgYnkgY29tbWl0IDE1YzI3MTVhNTI2NA0KPiA+KCJuZXQv c2NoZWQ6IHNjaF9jYWtlOiBmaXh1cCBjYWtlX21xIHJhdGUgYWRqdXN0bWVudCBmb3IgZGlmZnNl cnYNCj4gPmNvbmZpZyIpLg0KPiA+DQo+ID5XZSdyZSBjb250aW51aW5nIHRvIGxvb2sgaW50byBm dXJ0aGVyIGltcHJvdmVtZW50cy4gTGV0IHVzIGtub3cgaWYNCj4gPnlvdSdkIGxpa2UgdG8gc2Vl IGFkZGl0aW9uYWwgdGVzdHMgOikNCj4NCj4gQ29vbCEgQ291bGQgeW91IHBsZWFzZSByZXNwaW4g dGhlIHBhdGNoIHdpdGggdGhpcyBkYXRhIGluIHRoZSBjb21taXQNCj4gbWVzc2FnZT8NCj4NCj4g RG9lc24ndCBoYXZlIHRvIGJlIGFsbCBvZiBpdCwgYnV0IHNvbWUgaW5kaWNhdGlvbiBvZiB0aGUg YmVuZWZpdCB3b3VsZCBiZQ0KPiBnb29kIHRvIGhhdmUgb24gaGFuZCBmb3IgZnV0dXJlIHJlZmVy ZW5jZSA6KQ0KPg0KPiAtVG9rZQ0KPg0KPiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0N Cj4NCj4gTWVzc2FnZTogMg0KPiBEYXRlOiBNb24sIDIwIEp1bCAyMDI2IDIzOjE0OjUyICswMjAw DQo+IEZyb206IEpvbmFzIEvDtnBwZWxlciA8ai5rb2VwcGVsZXJAdHUtYmVybGluLmRlPg0KPiBT dWJqZWN0OiBbQ2FrZV0gW1BBVENIIG5ldC1uZXh0IHYyXSBuZXQvc2NoZWQ6IHNjaF9jYWtlOiBz a2lwIGNsZWFyaW5nDQo+ICAgICAgICAgdW51c2VkIHRpbnMgZHVyaW5nIHJhdGUgYWRqdXN0bWVu dA0KPiBUbzogVG9rZSBIw7hpbGFuZC1Kw7hyZ2Vuc2VuIDx0b2tlQHRva2UuZGs+LCBKYW1hbCBI YWRpIFNhbGltDQo+ICAgICAgICAgPGpoc0Btb2phdGF0dS5jb20+LCBKaXJpIFBpcmtvIDxqaXJp QHJlc251bGxpLnVzPiwgIkRhdmlkIFMuDQo+IE1pbGxlciINCj4gICAgICAgICA8ZGF2ZW1AZGF2 ZW1sb2Z0Lm5ldD4sIEVyaWMgRHVtYXpldCA8ZWR1bWF6ZXRAZ29vZ2xlLmNvbT4sIEpha3ViDQo+ ICAgICAgICAgS2ljaW5za2kgPGt1YmFAa2VybmVsLm9yZz4sIFBhb2xvIEFiZW5pIDxwYWJlbmlA cmVkaGF0LmNvbT4sIFNpbW9uDQo+ICAgICAgICAgSG9ybWFuIDxob3Jtc0BrZXJuZWwub3JnPg0K PiBDYzogPGNha2VAbGlzdHMuYnVmZmVyYmxvYXQubmV0PiwgPG5ldGRldkB2Z2VyLmtlcm5lbC5v cmc+LA0KPiAgICAgICAgIDxsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnPiwgSm9uYXMgS8O2 cHBlbGVyDQo+ICAgICAgICAgPGoua29lcHBlbGVyQHR1LWJlcmxpbi5kZT4sIE1pa2UgUGhhbSA8 bWlrZXBoYW00MzIxQGdtYWlsLmNvbT4NCj4gTWVzc2FnZS1JRDoNCj4gICAgICAgICA8DQo+IDIw MjYwNzIwLXNjaF9jYWtlLXNraXAtY2xlYXJpbmctdGlucy12Mi0xLWU2YThiMDI3NWM3M0B0dS1i ZXJsaW4uZGU+DQo+IENvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0idXRmLTgiDQo+ DQo+IFdoZW4gY2FrZV9jb25maWd1cmVfcmF0ZXMoKSBpcyBjYWxsZWQgZnJvbSB0aGUgZGVxdWV1 ZSBwYXRoIHdpdGgNCj4gcmF0ZV9hZGp1c3Q9dHJ1ZSwgaXQgb25seSBuZWVkcyB0byB1cGRhdGUg dGhlIHJhdGUgcGFyYW1ldGVycy4gVGhlDQo+IGxvb3AgdGhhdCBjbGVhcnMgdGhlIHVudXNlZCB0 aW5zIGlzIGJvdGggdW5uZWNlc3NhcnkgYW5kIGhhcm1mdWwgaW4NCj4gdGhpcyBwYXRoOg0KPg0K PiAgLSBjYWtlX2NsZWFyX3RpbigpIG92ZXJ3cml0ZXMgcS0+Y3VyX3RpbiBhbmQgcS0+Y3VyX2Zs b3csIHdoaWNoIGFyZQ0KPiAgICBhY3RpdmVseSB1c2VkIGJ5IGNha2VfZGVxdWV1ZSgpLCBjb3Jy dXB0aW5nIHRoZSBkZXF1ZXVlIHN0YXRlLg0KPiAgLSBpdGVyYXRpbmcgb3ZlciB0aGUgdW51c2Vk IHRpbnMgYW5kIHRoZWlyIGludGVybmFsIHF1ZXVlcyB0byBwdXJnZQ0KPiAgICBwYWNrZXRzIGFk ZHMgbmVlZGxlc3Mgb3ZlcmhlYWQgdG8gdGhlIGhvdCBwYXRoLg0KPg0KPiBTa2lwIHRoZSBlbnRp cmUgbG9vcCB3aGVuIHJhdGVfYWRqdXN0IGlzIHNldCwgYXMgbmVpdGhlcg0KPiBjYWtlX2NsZWFy X3RpbigpIG5vciB0aGUgbXR1X3RpbWUgdXBkYXRlIGFyZSBuZWVkZWQgd2hlbiBvbmx5IHRoZQ0K PiByYXRlIGNoYW5nZXMuDQo+DQo+IFRoZSBjbGVhcmluZyBsb29wIHJ1bnMgb24gZXZlcnkgcmF0 ZSBhZGp1c3RtZW50IGZyb20gdGhlIGRlcXVldWUgcGF0aCwNCj4gY2xlYXJpbmcgKG1heF90aW5z IC0gY3VyX3RpbnMpIHRpbnMgZWFjaCB0aW1lLCBzbyB0aGUgY29zdCBncm93cyB0aGUNCj4gZmV3 ZXIgdGlucyB0aGUgY29uZmlndXJlZCBtb2RlIGFjdHVhbGx5IHVzZXMuIFRlc3RpbmcgY2FrZV9t cSBvdmVyIHZldGgNCj4gKDggcngvdHggcXVldWVzLCAyIEdiaXQgbGltaXQpIHdpdGggZmxlbnQn cyBbMV0gcnJ1bCBhbmQgdGNwX251cCB0ZXN0cyBhbmQNCj4gMzIgVENQIHVwc3RyZWFtcyBzaG93 cyBhIGxhcmdlIGRyb3AgaW4gbG9hZGVkIGxhdGVuY3kgYW5kIGEgdGhyb3VnaHB1dA0KPiBnYWlu LCByZXN0b3JpbmcgYmVoYXZpb3VyIHRvIHByZS0xNWMyNzE1YTUyNjQgbGV2ZWxzOg0KPg0KPiAg ICstLS0tLS0tLS0tLS0rLS0tLS0tKy0tLS0tLSstLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tKw0K PiAgIHwga2VybmVsICAgICB8IG1vZGUgfCB0ZXN0IHwgIGJhc2UgfCAgbG9hZCB8ICAgIHRwdXQg fA0KPiAgIHwgICAgICAgICAgICB8ICAgICAgfCAgICAgIHwgIChtcykgfCAgKG1zKSB8ICAoTWJp dCkgfA0KPiAgICstLS0tLS0tLS0tLS0rLS0tLS0tKy0tLS0tLSstLS0tLS0tKy0tLS0tLS0rLS0t LS0tLS0tKw0KPiAgIHwgbmV0LW5leHQgICB8IGJlICAgfCBycnVsIHwgMC44MTAgfCAxMS43OCB8 IDE0NjkuNjcgfA0KPiAgIHwgbmV0LW5leHQgICB8IGJlICAgfCBudXAgIHwgMC42MzcgfCA4NS43 MSB8IDEyNDMuMTUgfA0KPiAgIHwgbmV0LW5leHQgICB8IGRzMyAgfCBycnVsIHwgMC4zOTcgfCAx NS4yOCB8IDE3NzAuMDYgfA0KPiAgIHwgbmV0LW5leHQgICB8IGRzMyAgfCBudXAgIHwgMC4zNTEg fCAxNS45OCB8IDE3OTkuMzkgfA0KPiAgICstLS0tLS0tLS0tLS0rLS0tLS0tKy0tLS0tLSstLS0t LS0tKy0tLS0tLS0rLS0tLS0tLS0tKw0KPiAgIHwgcGF0Y2hlZCAgICB8IGJlICAgfCBycnVsIHwg MC4wOTIgfCAgMC41NiB8IDE4NzMuNDAgfA0KPiAgIHwgcGF0Y2hlZCAgICB8IGJlICAgfCBudXAg IHwgMC4xMDkgfCAgMS44MiB8IDE4NjkuMTIgfA0KPiAgIHwgcGF0Y2hlZCAgICB8IGRzMyAgfCBy cnVsIHwgMC4wOTcgfCAgMC45OCB8IDE4NjYuMTAgfA0KPiAgIHwgcGF0Y2hlZCAgICB8IGRzMyAg fCBudXAgIHwgMC4xMDEgfCAgMC41MSB8IDE4NjEuNzkgfA0KPiAgICstLS0tLS0tLS0tLS0rLS0t LS0tKy0tLS0tLSstLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tKw0KPg0KPiBUaGUgc2FtZSB0cmVu ZCBob2xkcyBvbiByZWFsIGhhcmR3YXJlIChJUFE4MDc0QSwgNCByeC90eCBxdWV1ZXMsDQo+IE9w ZW5XcnQpOiBpbiBiZXN0ZWZmb3J0IG1vZGUgdGhlIHRjcF9udXAgbG9hZGVkIGxhdGVuY3kgZHJv cHMgZnJvbQ0KPiB+NDcwIG1zIHRvIH40IG1zLg0KPg0KPiBbMV0gaHR0cHM6Ly9mbGVudC5vcmcN Cj4NCj4gRml4ZXM6IDE1YzI3MTVhNTI2NCAoIm5ldC9zY2hlZDogc2NoX2Nha2U6IGZpeHVwIGNh a2VfbXEgcmF0ZSBhZGp1c3RtZW50DQo+IGZvciBkaWZmc2VydiBjb25maWciKQ0KPiBTaWduZWQt b2ZmLWJ5OiBKb25hcyBLw7ZwcGVsZXIgPGoua29lcHBlbGVyQHR1LWJlcmxpbi5kZT4NCj4gVGVz dGVkLWJ5OiBNaWtlIFBoYW0gPG1pa2VwaGFtNDMyMUBnbWFpbC5jb20+DQo+IC0tLQ0KPiBDaGFu Z2VzIGluIHYyOg0KPiAtIGFkZGVkIHBlcmZvcm1hbmNlIGRhdGEgdG8gY29tbWl0IG1lc3NhZ2Us IG5vIGNvZGUgY2hhbmdlcw0KPiAtIExpbmsgdG8gdjE6DQo+IGh0dHBzOi8vcGF0Y2gubXNnaWQu bGluay8yMDI2MDcxNi1zY2hfY2FrZS1za2lwLWNsZWFyaW5nLXRpbnMtdjEtMS1kOTc4N2RmMjBj MjhAdHUtYmVybGluLmRlDQo+IC0tLQ0KPiAgbmV0L3NjaGVkL3NjaF9jYWtlLmMgfCA4ICsrKysr LS0tDQo+ICAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQ0K Pg0KPiBkaWZmIC0tZ2l0IGEvbmV0L3NjaGVkL3NjaF9jYWtlLmMgYi9uZXQvc2NoZWQvc2NoX2Nh a2UuYw0KPiBpbmRleCBmNzhmOGU5NTA3NzYuLjg0NWUxYzAxNzcxNCAxMDA2NDQNCj4gLS0tIGEv bmV0L3NjaGVkL3NjaF9jYWtlLmMNCj4gKysrIGIvbmV0L3NjaGVkL3NjaF9jYWtlLmMNCj4gQEAg LTI2MDksOSArMjYwOSwxMSBAQCBzdGF0aWMgdm9pZCBjYWtlX2NvbmZpZ3VyZV9yYXRlcyhzdHJ1 Y3QgUWRpc2MgKnNjaCwNCj4gdTY0IHJhdGUsIGJvb2wgcmF0ZV9hZGp1c3QpDQo+ICAgICAgICAg ICAgICAgICBicmVhazsNCj4gICAgICAgICB9DQo+DQo+IC0gICAgICAgZm9yIChjID0gcWQtPnRp bl9jbnQ7IGMgPCBDQUtFX01BWF9USU5TOyBjKyspIHsNCj4gLSAgICAgICAgICAgICAgIGNha2Vf Y2xlYXJfdGluKHNjaCwgYyk7DQo+IC0gICAgICAgICAgICAgICBxZC0+dGluc1tjXS5jcGFyYW1z Lm10dV90aW1lID0NCj4gcWQtPnRpbnNbZnRdLmNwYXJhbXMubXR1X3RpbWU7DQo+ICsgICAgICAg aWYgKCFyYXRlX2FkanVzdCkgew0KPiArICAgICAgICAgICAgICAgZm9yIChjID0gcWQtPnRpbl9j bnQ7IGMgPCBDQUtFX01BWF9USU5TOyBjKyspIHsNCj4gKyAgICAgICAgICAgICAgICAgICAgICAg Y2FrZV9jbGVhcl90aW4oc2NoLCBjKTsNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgcWQtPnRp bnNbY10uY3BhcmFtcy5tdHVfdGltZSA9DQo+IHFkLT50aW5zW2Z0XS5jcGFyYW1zLm10dV90aW1l Ow0KPiArICAgICAgICAgICAgICAgfQ0KPiAgICAgICAgIH0NCj4NCj4gICAgICAgICBxZC0+cmF0 ZV9ucyAgID0gcWQtPnRpbnNbZnRdLnRpbl9yYXRlX25zOw0KPg0KPiAtLS0NCj4gYmFzZS1jb21t aXQ6IGY2ZjNiMzZjMTVlZDQ0ZGUxZmJiNDRlNjQ1ZTRmYWU4YzRhNDQ1M2UNCj4gY2hhbmdlLWlk OiAyMDI2MDcxNi1zY2hfY2FrZS1za2lwLWNsZWFyaW5nLXRpbnMtODU2ODEyNTg2Y2RlDQo+DQo+ IEJlc3QgcmVnYXJkcywNCj4gLS0NCj4gSm9uYXMgS8O2cHBlbGVyIDxqLmtvZXBwZWxlckB0dS1i ZXJsaW4uZGU+DQo+DQo+DQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPg0KPiBT dWJqZWN0OiBEaWdlc3QgRm9vdGVyDQo+DQo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fDQo+IENha2UgbWFpbGluZyBsaXN0IC0tIGNha2VAbGlzdHMuYnVm ZmVyYmxvYXQubmV0DQo+IFRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG8gY2FrZS1sZWF2 ZUBsaXN0cy5idWZmZXJibG9hdC5uZXQNCj4NCj4NCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tDQo+DQo+IEVuZCBvZiBDYWtlIERpZ2VzdCwgVm9sIDEzMCwgSXNzdWUgNw0KPiAqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCj4NCg==