From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id BD24A49E73 for ; Tue, 12 Mar 2024 17:56:35 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id F1F1D68D1BB; Tue, 12 Mar 2024 19:56:31 +0200 (EET) Received: from mail-ua1-f43.google.com (mail-ua1-f43.google.com [209.85.222.43]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E314F68D09E for ; Tue, 12 Mar 2024 19:56:24 +0200 (EET) Received: by mail-ua1-f43.google.com with SMTP id a1e0cc1a2514c-7db9694a3ceso2151379241.1 for ; Tue, 12 Mar 2024 10:56:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710266183; x=1710870983; darn=ffmpeg.org; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=BXoF45OmTiccQ/iHCaMsF/IR9KCAKTG30zgOmxD/SQQ=; b=MGWULBCDhamNuhkEFa1pdhSdyLA3ZckdyumX8GtIKykPnzKXBHykBhy6pAVc/59xk4 gdO/y9NNAAdHUtrXgP39tUT/yTIwBs6t1wH/47PUrdv113H3G5ml3fNa+YfLVyxA4qYJ B5OSlvPZEWdqHf5HjbExZ7l3rWs3YX1shEog2r6/bgmsc/fpQIOMWUSzMU/uMYIFAZaP +3DWqmcRWrrTFFVv2u93WjOb7S+azj3nWdimofJTUdjyil95WTmYc87kc0azP6Y49w47 SrLHoCH85X4E4LTnhONxnkFoxSraZV8JbOeDqWRbwTKaHAPbPvm/2T9QiiBap5hosShQ h8IA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710266183; x=1710870983; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=BXoF45OmTiccQ/iHCaMsF/IR9KCAKTG30zgOmxD/SQQ=; b=IgnITgFsATPmOZHptoSsja3qv0fquaj3FcUDlZ0tBaQ4D0Qsh/rhLwXQZuzZhwtrOx 2fNqkOs7I1LLI2r9aEiMk0Xed6G6sK4s/CJWOlY2fixCT8++K2w03FhvZQ2y7vpzv3L1 XBYha4a566xs5+rnzxbYkl+1O/su2RmiqIphfyncrEGddvhNWJI4lz2lzLiYZERwmygr JVk6n2d6kgmnY7H8H06TsthvrSqlJP41iVV/ErbCDs3bNEUeAxmmrMGwyDyXKRFGKJ2N jGT1On/VlIHqXoFcZSKMb6OtzctW+znVxRaFDVtylij0q1uWOToBpqvvg9B/fa3eo2Tv QOQQ== X-Gm-Message-State: AOJu0YxO8LgzRcj0zN6/V3KilqrdMoP/Ikc8N+1U/Ynpyfz5RBN6f0Jr fm/hmzWF6B7d1f9RgjOwWWs7UVQPB3vhYGwPXlTf363BY7SwjREU+m1ncsHbAoJa+MDNUCU7SPt vYYhk4GTZ+Z6A/3c2rr79sEMf4IDRNFrO X-Google-Smtp-Source: AGHT+IF7/ut8s6PPN3vcro0nEH9CfftwM8RMt1kdVU25IgMv8myRZABVXvxAwAEpwzP4APhz2H98Ip5iWXj1IEU+5ic= X-Received: by 2002:a67:f441:0:b0:470:4677:cdcd with SMTP id r1-20020a67f441000000b004704677cdcdmr1258188vsn.11.1710266183265; Tue, 12 Mar 2024 10:56:23 -0700 (PDT) MIME-Version: 1.0 References: <037.cb9821e3b48f657909b93eb043f05720@avcodec.org> <052.37b53673b298748e0746920ec1d4551d@avcodec.org> <6d595a68-14c8-4a22-b52b-a9ed98587d5c@gmail.com> <20240306125639.GU6401@pb2> <170996942472.7287.4678551313607358745@lain.khirnov.net> <8bbbc7fa-fe0f-4dd5-bc78-aae6106413d0@betaapp.fastmail.com> <20240310012542.GA6401@pb2> In-Reply-To: From: Paul B Mahol Date: Tue, 12 Mar 2024 18:55:55 +0100 Message-ID: To: FFmpeg development discussions and patches X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [FFmpeg-devel] Indefinite ban request [RFC] Was: Re: [FFmpeg-trac] #10882(undetermined:new): swscale wastefully scales luma during yuv420p -> yuv422p X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: T24gVHVlLCBNYXIgMTIsIDIwMjQgYXQgNjoxNeKAr1BNIFJvbmFsZCBTLiBCdWx0amUgPHJzYnVs dGplQGdtYWlsLmNvbT4gd3JvdGU6Cgo+IEhlbGxvLAo+Cj4gT24gU2F0LCBNYXIgOSwgMjAyNCBh dCA4OjI14oCvUE0gTWljaGFlbCBOaWVkZXJtYXllciA8bWljaGFlbEBuaWVkZXJtYXllci5jYwo+ ID4KPiB3cm90ZToKPgo+ID4gU29tZSBtZW1iZXJzIG9mIHRoZSBDQyB3YW50IHRvIGluZGVmaW5p dGVseSBiYW4gQmFsbGluZwo+ID4gZnJvbSB0cmFjLiBBbmQgYXMgb3VyIGRvYy9jb21tdW5pdHku dGV4aSBzYXlzOgo+ID4gIkluZGVmaW5pdGUgYmFucyBmcm9tIHRoZSBjb21tdW5pdHkgbXVzdCBi ZSBjb25maXJtZWQgYnkgdGhlIEdlbmVyYWwKPiA+IEFzc2VtYmx5LCBpbiBhIG1ham9yaXR5IHZv dGUuIgo+ID4KPiA+IFRodXMgc29tZSBDQyBtZW1iZXIgd2lzaGVzIHRvIGludm9sdmUgdGhlIHB1 YmxpYyBoZXJlCj4gPiAocmVhbGx5IHRoZXJlcyBubyBvdGhlciBvcHRpb24sIHRoZSBHQSBjYW5u b3QgZGlzY3Vzcy92b3RlIG9uIHdoYXQgaXQKPiA+IGRvZXNudCBrbm93KQo+ID4KPiA+IEFsc28g cGVvcGxlIGhhdmUgYXNrZWQgZm9yIG1vcmUgdHJhbnNwYXJlbmN5IGFuZCBpIHN0cm9uZ2x5IGFn cmVlIHdpdGgKPiA+IHRyYW5zcGFyZW5jeS4KPiA+Cj4KPiBGb3IgcmVmZXJlbmNlLCBBbnRvbiBh bmQgSSBiYW5uZWQgImJhbGxpbmciIGZyb20gSVJDIGluIE5vdmVtYmVyLiBXZQo+IChGRm1wZWcn cyBDQykgaGF2ZSBzaW5jZSB0aGVuIHJlY2VpdmVkIGEgcmVxdWVzdCB0byBiYW4gaGltIGZyb20g dHJhYyBhcwo+IHdlbGwuCj4KPiBUaGUgYmFuIG9uIElSQyB3YXMgZm9sbG93aW5nIHdoYXQgaGFw cGVuZWQgaW4gI2ZmbXBlZy1kZXZlbCBvbiAxMS8yMy8yMDIzICgKPiBodHRwczovL2xpYmVyYS5p cmNsb2cud2hpdGVxdWFyay5vcmcvZmZtcGVnLWRldmVsLzIwMjMtMTEtMjMpCj4gSSd2ZSBjb3Bp ZWQgdGhlIGxvZ3MgZnJvbSB0aGF0IGxpbmsgYmV0d2VlbiAxNDo0MyBhbmQgMTg6NTMgYmVsb3cg aGVyZSBmb3IKPiByZWZlcmVuY2UuIE15IG5pY2sgaXMgIkJCQiIsIGFuZCBBbnRvbidzIG5pY2sg aXMgImVsZW5yaWwiLiBXZSBhbHNvCj4gcmVjZWl2ZWQgaGVscCBmcm9tIGplc3MsIG9uZSBvZiBM aWJlcmEncyBhZG1pbnMuCj4KPiAxNDo0MyA8Y291cm1pc2NoPiBpcyBWYWxlcmlpIFphcG9kb3Zu aWtvdiB0aGUgc2FtZSBwZXJzb24gdGhhdCB3YXMgdHJvbGxpbmcKPiBoZXJlIGVhcmxpZXI/Cj4g MTQ6NDQgPEpFRUI+IHllcwo+IDE0OjQ0IDxKRUVCPiB2YWx6YXBvZCBpcyBoaXMgb3RoZXIgbmlj a25hbWUKPiAxNDo1NyA8Y291cm1pc2NoPiBva2F5IHNvIGhlJ3MgYWN0aXZlIGluIFZMQyBhbmQg cGxhY2VibyB0b28KPiAxNDo1NyA8SkVFQj4geWVhCj4gMTQ6NTcgPEpFRUI+IGFuZCBtYW55IG90 aGVyIHByb2plY3RzIHdoaWNoIGhhdmVuJ3QgYmFubmVkIGhpbSB5ZXQKPiAxNTo1NiA8emFkZWRm cXVsPiBhbmQgeW91IHdpbGwgbm90IGJlIGFibGUgdG8gYmFuIG1lCj4gMTU6NTYgPHphZGVkZnF1 bD4gWW91IHdhbnQgdGhlIE1vc2NvdyB0cm9sbGZhcm0/Cj4gMTU6NTcgPHphZGVkZnF1bD4gWW91 IHdpbGwgZ2V0IGl0Cj4gMTU6NTcgPHphZGVkZnF1bD4gSnVzdCBkbyBub3QgZm9yZ2V0IEkgb3du IGNvcHlyaWdodCBpbiBmZm1wZWcgdG9vLgo+IDE1OjU4IDxKRUVCPiBpbXBseWluZyBzb21lb25l IGhlcmUgYXNrZWQgZm9yIGl0LiB5b3UncmUgdGhlIG9uZSBiZWhhdmluZwo+IGhvdyB5b3UgYXJl LiBtYXliZSB5b3UgZmVlbCB5b3UncmUgY29tcGxldGVseSBPSywgYnV0IGFsYXMgdGhhdCBpcyBu b3QgYQo+IHZpZXcgc2hhcmVkIGJ5IG1hbnkuIG1heWJlIHlvdSdyZSBtdWNoIGJldHRlciBJUkws IGJ1dCBuby1vbmUgaGVyZSBoYXMgaGFkCj4gdGhlIGNoYW5jZSBvZiBleHBlcmllbmNpbmcgdGhh dC4KPiAxNTo1OSA8emFkZWRmcXVsPiBCVFcsIEkgcmVhbGx5IGFtIHN1cnByaXNlZC4gSSBoZWxw ZWQgeW91IHRyYWMgcHJvZ3Jlc3MgYXMKPiBCYWxsaW5nIGFuZCBub3cgdGhhdCBpcyB3aGF0IEkg Z2V0PyBMT0wsIG1heWJlIHN0YXJ0IHdpdGggdHJhYyB0aGVuLCBCaWRlbgo+IGxpYnRhcmQgdm90 ZXJzLiBJcyB0aGUgUnVzc2lhbiBjb2xsdXNpb24gaW4gdGhlIHJvb20gd2l0aCByaWdodCBub3c/ Cj4gMTU6NTkgPHphZGVkZnF1bD4gKndpdGggdXMKPiAxNjowMCA8emFkZWRmcXVsPiBjb3VybWlz Y2ggSSBhbSBhY3RpdmUgYWxzbyBvbiB3aXJlc2hhcmssIGxpYnRvcnJlbnQKPiAxNjowMCA8emFk ZWRmcXVsPiBnbnVyYWRpbyAod2FzKSwgcnRsLXNkciBwcm9qZWN0LCBhbGwgSW50ZWwgbGlicmFy aWVzLAo+IGNsYW5nIG5vdyB0b28uCj4gMTY6MDEgPHphZGVkZnF1bD4gQXJlIHlvdSBnb2luZyBh bmQgdHJ5IHRvIGJhbiBiZSB0aGVyZSB0b28/IFlvdSB3aWxsIGxvc2UuCj4gSnVzdCBsaWtlIEJp ZGVuIGxvc3QgdGhlIGVsZWN0aW9uLCBhZG1pdCBpdAo+IDE2OjAzIDx6YWRlZGZxdWw+IEJUVywg YmFubmluZyBhbGwgVlBOcyBpcyBuaWNlLiBBcmUgeW91IHVzaW5nIHNhbWUgZmlsdGVyCj4gYXMg d2lraXBlZGlhPyBDb29sLiBCdXQgYWdhaW4sIGdpdGh1YiBzZXJ2ZXJzIGRvIG5vIHVzZSBWUE5z LCB0aGV5IGFyZQo+IHJlYWwuIEFuZCBzbyBhcmUgYWxsIGRpZmZlcmVudCB2aXJ0dWFsIG1hY2hp bmVzLgo+IDE2OjAzIDx6YWRlZGZxdWw+IE9oLCBhbmQgSSB3ZWIuYXJjaGl2ZWQgdGhhdCBkaXNj dXNzaW9uIG9uIGdpdGh1Ygo+IDE2OjA1IDx6YWRlZGZxdWw+IG9uIHZsYydzIGdpdGxhYiwgSSBt ZWFuCj4gMTY6MDYgPG1pY3JvY2hpcF8+IEJpZGVuIGxvc3QgdGhlIGVsZWN0aW9uLCBjYW4geW91 IExPTD8/Pwo+IDE2OjA2IDxtaWNyb2NoaXBfPiBhbm90aGVyIG1hcm9vbgo+IDE2OjA3IDx6YWRl ZGZxdWw+IEpFRUI6IEkgYW0gdGhlIHNhbWUgaW4gcmVhbCBsaWZlLCBCVFcuIFlvdSBqdXN0IGNh bm5vdAo+IGJhbiBhIHBlcnNvbiBpbiByZWFsIGxpZmUsIG9ubHkga2lsbC4gTGlrZSB0aGF0IHdv bWFuIHRoYXQgc2FpZCBBbGwgbGl2ZXMKPiBtYXR0ZXIgaW4gVVNBLgo+IDE2OjA5IHphZGVkZnF1 bCB3YXMga2lja2VkIGZyb20gI2ZmbXBlZy1kZXZlbCBieSBlbGVucmlsIFt6YWRlZGZxdWxdCj4g MTY6MDkgPGVsZW5yaWw+IHBscyBkbyBOT1QgZW5nYWdlIHRoZSB0cm9sbAo+IDE2OjEwIDxjb3Vy bWlzY2g+IEkgYmxhbWUgVHlwWCB0aGlzIHRpbWUsIGJ1dCBoZSBkaWQgbm90ICJrbm93Igo+IDE2 OjEzIDx3c3FhY2FkcT4gQmFubmluZyBpcyBhbHNvIGVuZ2FnaW5nLCBBbnRvbgo+IDE2OjE0IDx3 c3FhY2FkcT4gSnVzdCBsaWtlIHlvdXIga25vd2xlZGdlIGluIHRvcCBwb3N0aW5nLgo+IDE2OjE0 IDxxNjY+IGh0dHBzOi8vaS5pbWd1ci5jb20vM3R2NGM1eC5qcGcKPiAxNjoxNSB3c3FhY2FkcSB3 YXMga2lja2VkIGZyb20gI2ZmbXBlZy1kZXZlbCBieSBlbGVucmlsIFt3c3FhY2FkcV0KPiAxNjox OSA8QkJCPiBtYW4gdGhhdCBkdWRlIGlzIHBlcnNpc3RlbnQgOikKPiAxNjoxOSA8ZWxlbnJpbD4g ZG9lcyBoZSBub3QgaGF2ZSBzb21ldGhpbmcgYmV0dGVyIHRvIGRvIHdpdGggaGlzIGxpZmUKPiAx NjoxOSA8Y291cm1pc2NoPiB0YWtlcyBjb21taXRtZW50IHRvIGNvbnRyYWN0IGEgVlBOIGp1c3Qg Zm9yIHRyb2xsaW5nCj4gb3BlbnNvYXJzCj4gMTY6MjAgPGNvdXJtaXNjaD4gb3IgbWF5YmUgaXQn cyBwcm92aWRlZCBmb3Igb2ZmaWNpYWwgTW9yZG9yIHB1YmxpYyBzZXJ2aWNlCj4gdXNlCj4gMTY6 MjAgPEJCQj4gOikKPiAxNjoyMCA8QkJCPiB3ZSdsbCBrZWVwIGJhbm5pbmcgdGhlIGJhbGxpbmcK PiAxNjoyMCA8QkJCPiBldmVyeSB0aW1lIEkgc2F3IHRoYXQsIEkgaGVhciB0aGUgZHdhcmZzIGZy b20gdGhlIGhvYmJpdAo+IDE2OjIwIDxKRUVCPiBjb3VybWlzY2g6IHRvIGJlIGhvbmVzdCB0aGUg bG9jYXRpb24gZnJvbSB3aGljaCBhIHBlcnNvbiBpcwo+IGRvZXMgbm90IG1hdHRlciBhdCBhbGwK PiAxNjoyMSA8SkVFQj4gcy9pcy9jb21lcy8KPiAxNjoyMSA8ZWxlbnJpbD4gdW50cnVlCj4gMTY6 MjEgPGVsZW5yaWw+IHdlcmUgaGUgZnJvbSBhIGNpdmlsaXplZCBjb3VudHJ5LCB3ZSBjb3VsZCB1 c2UgdGhlaXIgbGF3Cj4gZW5mb3JjZW1lbnQgc2VydmljZXMKPiAxNjoyMSA8SkVFQj4geWVhLCBi dXQgc29tZW9uZSBiZWluZyBhbiBhc3Nob2xlIG9yIHRyb2xsIGlzIG5vdCBpcyBhIHBlcnNvbgo+ IHByb2JsZW0KPiAxNjoyMSA8SkVFQj4gYXNkZgo+IDE2OjIxIDxjb3VybWlzY2g+IEkgd2FzIGFs bHVkaW5nIHRvIHRyb2xsIGZhcm1zLiBOb3QgZXZlcnkgY291bnRyeSBoYXMKPiB0aGVtLCBlc3Bl Y2lhbGx5IG5vdCBvbiB0aGUgc2NhbGUgb2YgdGhlIFJ1c3NpYW4gZmVkZXJhdGlvbgo+IDE2OjIx IDxKRUVCPiAqaXMqIGEgcGVyc29uIHByb2JsZW0KPiAxNjoyMiA8Y291cm1pc2NoPiBvYnZpb3Vz bHkgc29tZSBkZXZzIG92ZXIgdGhlcmUgYXJlIHJlYXNvbmFibGUgcGVvcGxlCj4gMTY6MjYgPHVr cmFpbmVzdWNrcz4gQlRXLCBUcnVtcCBqdXN0IG5lZWRlZCA0NDAwMCB2b3RlcyB0byB3aW4KPiAx NjoyNyA8cHN5a29zZT4gaSB0aG91Z2h0IHlvdSBzYWlkIGhlIHdvbj8gYmUgY29uc2lzdGVudAo+ IDE2OjI3IDx1a3JhaW5lc3Vja3M+IEFuZCBzbyBhcyB0aGVyZSBhcmUgdXAgdG8gYSBtaWxsaW9u IGJhbGxvdCB0aGF0IHdlcmUKPiBub3Qgb2JzZXJ2ZWQgaGUgcmVhbGx5IGRpZCB3aW4uCj4gMTY6 MjcgdWtyYWluZXN1Y2tzIHdhcyBiYW5uZWQgb24gI2ZmbXBlZy1kZXZlbCBieSBCQkIgWyohfgo+ IHVrcmFpbmVzdUAxOTUuMTg5LjIyNi40MF0KPiAxNjoyNyB1a3JhaW5lc3Vja3Mgd2FzIGtpY2tl ZCBmcm9tICNmZm1wZWctZGV2ZWwgYnkgQkJCIFtZb3VyIGJlaGF2aW9yIGlzCj4gbm90IGNvbmR1 Y2l2ZSB0byB0aGUgZGVzaXJlZCBlbnZpcm9ubWVudC5dCj4gMTY6MjcgPGVsZW5yaWw+IHBzeWtv c2U6IGkgbWVhbiBpdAo+IDE2OjI3IDxlbGVucmlsPiBkbyBOT1QgZW5nYWdlIHRoZSB0cm9sbAo+ IDE2OjI4IDx1a3JhaW5lc3VjY3h4a3M+IEFsc28sIENsaW50b24gd2FzIGZpbmVkIGZvciBTdGVl bGUgZG9zc2llcgo+IDE2OjI4IHVrcmFpbmVzdWNjeHhrcyB3YXMgYmFubmVkIG9uICNmZm1wZWct ZGV2ZWwgYnkgQkJCIFsqIX4KPiB1a3JhaW5lc3VAOTEuMTkzLjE5LjE0N10KPiAxNjoyOCB1a3Jh aW5lc3VjY3h4a3Mgd2FzIGtpY2tlZCBmcm9tICNmZm1wZWctZGV2ZWwgYnkgQkJCIFtZb3VyIGJl aGF2aW9yCj4gaXMgbm90IGNvbmR1Y2l2ZSB0byB0aGUgZGVzaXJlZCBlbnZpcm9ubWVudC5dCj4g MTY6MjkgPGNvdXJtaXNjaD4gK3IgYWxyZWFkeQo+IDE2OjI5IDxlbGVucmlsPiBuYWgKPiAxNjoy OSA8QkJCPiBJJ20gcGVyc29uYWxseSBmaW5lIHdpdGggK3IKPiAxNjoyOSA8QkJCPiBidXQgaWYg b3RoZXJzIG9iamVjdCBJIHdvbid0IGluc2lzdCBvbiBpdAo+IDE2OjMwIDxlbGVucmlsPiBJIGRv bid0IHRoaW5rIGl0J3MgYW55d2hlcmUgYmFkIGVub3VnaCB0byByZXF1aXJlICtyCj4gMTY6MzAg PGVsZW5yaWw+ICh5ZXQ/KQo+IDE2OjMwIDxic2JzdnN2c3Y+IENsaW50b24gd2FzIGZvdW5kIHRv IGJlIHVzaW5nIGdtYWlsCj4gMTY6MzAgYnNic3ZzdnN2IHdhcyBiYW5uZWQgb24gI2ZmbXBlZy1k ZXZlbCBieSBCQkIgWyohfgo+IGJzYnN2c3ZzdkAyMDUuMTg1LjEyNy44Nl0KPiAxNjozMCBic2Jz dnN2c3Ygd2FzIGtpY2tlZCBmcm9tICNmZm1wZWctZGV2ZWwgYnkgQkJCIFtZb3VyIGJlaGF2aW9y IGlzIG5vdAo+IGNvbmR1Y2l2ZSB0byB0aGUgZGVzaXJlZCBlbnZpcm9ubWVudC5dCj4gMTY6MzAg ZGJic2JzYnMgd2FzIGJhbm5lZCBvbiAjZmZtcGVnLWRldmVsIGJ5IEJCQiBbKiF+ZGJic2JzYnNA NTAuNy4xMTUuOTUKPiBdCj4gMTY6MzAgZGJic2JzYnMgd2FzIGtpY2tlZCBmcm9tICNmZm1wZWct ZGV2ZWwgYnkgQkJCIFtZb3VyIGJlaGF2aW9yIGlzIG5vdAo+IGNvbmR1Y2l2ZSB0byB0aGUgZGVz aXJlZCBlbnZpcm9ubWVudC5dCj4gMTY6MzEgPEJCQj4gKG1heWJlIHRoYXQgd2FzIHRvbyBlYXJs eSwgYXBvbG9naWVzIGlmIGl0IHdhcyA6KSApCj4gMTY6MzEgPHE2Nj4gOTkuOSUgbm90Cj4gMTY6 MzEgPGVsZW5yaWw+IGkgd2lzaCBpdCB3YXMgZmVhc2libGUgdG8gYWxsIG9mIHJ1c3NpYQo+IDE2 OjM0IDxkYmJzYnNicz4gQW5kIGFsc28gQ29tZXkgbGllZCB3aGVuIGhlIHNhaWQgbm90IGV2ZW4g Z21haWwKPiAxNjozNCA8ZGJic2JzYnM+IEp1ZGljaWFsIHdhdGNoIGFsbW9zdCBkZXBvc2VkIENs aW50b24gaW4gdGhhdCBjYXNlCj4gMTY6MzQgPGRiYnNic2JzPiBCVFcsIFRydW1wIG5ldmVyIHdp dGhvbGQgYWlkIHRvIFVrcmFpbmUsIGl0IHdhcyByZWxlYXNlZAo+IGJ5IHRoZSBlbmQgb2YgZmlz Y2FsIHllYXIgMzAgU2VwdGVtYmVyLCBKYXZlbGlucyB3ZXJlIG5vdCBwYXJ0IG9mIGFpZDogdGhl eQo+IHdlcmUgYm91Z2h0IGJ5IFVrcmFpbmUsIGFuZCBhbHNvIFplbGVuc2t5IG1lbnRpb25lZCBC aWRlbiBmaXJzdC4KPiAxNjozNCA8ZGJic2JzYnM+IEVyaWMgQ2lhcmFtZWxsYSBrbmV3IElnb3Ig RGFuY2hlbmtvLiBZZXAuIFlvdXR1YmUgc3RpbGwKPiBiYW5zIGNvbW1lbnRzIHdpdGggRXJpYyBD aWFyYW1lbGxhIGluIGl0Lgo+IDE2OjM0IGRiYnNic2JzIHdhcyBiYW5uZWQgb24gI2ZmbXBlZy1k ZXZlbCBieSBCQkIgWyohfmRiYnNic2JzQDY2LjkwLjk1LjEzCj4gXQo+IDE2OjM0IGRiYnNic2Jz IHdhcyBraWNrZWQgZnJvbSAjZmZtcGVnLWRldmVsIGJ5IEJCQiBbWW91ciBiZWhhdmlvciBpcyBu b3QKPiBjb25kdWNpdmUgdG8gdGhlIGRlc2lyZWQgZW52aXJvbm1lbnQuXQo+IDE2OjM1IDxqYW1y aWFsPiBoZSBoYWQgYSB3YWxsIG9mIHRleHQgaW4gdGhlIGNsaXBib2FyZCwgbG9sCj4gMTY6Mzkg PGxwbGxwbGxwPiBHZW9yZ2UgRmxveWQgd2FzIGEgcG9ybiBzdGFyIHdpdGggYWN0dWFsIHZpZGVv IHN0aWxsCj4gb25saW5lLCBoZSB3YXMgQ09WSUQgaW5mZWN0ZWQsIGhhZCBhIGdlbmV0aWNhbCBi bG9vZCBkZWFzZXNlIGFuZCBhbHNvIGEKPiB0dW1vciBhbmQgYSBiYWQgaGVhcnQuIElzIG5vdCB0 aGF5IGZ1bm55PyBPaCwgYW5kIGFsc28gaGUgd2FzIGluIHByaXNvbgo+IGxpa2UgOCB0aW1lcy4g QW5kIGhlIGRpZWQgaW4gdGhlIGFtYnVsYW5jZS4KPiAxNjozOSA8bHBsbHBsbHA+IEFMRVggU29y b3MgYWN0dWFsbHkgd2FzIGJlaGluZCBzb21lIG9mIHRoZSBzaXggbGFicyBpbgo+IFd1aGFuLCBD aGluYSwgaGlzIFd1WGkgQXBwdGVjaCBjb21wYW55IGFjdHVhbGx5IGRpZCBHT0YgcmVzZWFyY2gg aW4gZnVyaW4KPiBjbGVhdmFnZSBzaXRlIGluIHRob3NlIGxhYnMuIEFsc28sIHdlIGluIFJ1c3Np YSBzYXkgc29yb3N5YXRhIGZvciBhbGwKPiBwZW9wbGUgaW4gVWtyYWluZSBpbiBrZXkgcG9zaXRp b25zIGFuZCBWb2ljZSBwYXJ0eSBvZiBSYWRhIGlzIGNhbGxlZCBWb2ljZQo+IG9mIFNvcm9zLgo+ IDE2OjM5IGxwbGxwbGxwIHdhcyBiYW5uZWQgb24gI2ZmbXBlZy1kZXZlbCBieSBCQkIgWyohfgo+ IGxwbGxwbGxwQDIzLjIzNy43MS4xMl0KPiAxNjozOSBscGxscGxscCB3YXMga2lja2VkIGZyb20g I2ZmbXBlZy1kZXZlbCBieSBCQkIgW1lvdXIgYmVoYXZpb3IgaXMgbm90Cj4gY29uZHVjaXZlIHRv IHRoZSBkZXNpcmVkIGVudmlyb25tZW50Ll0KPiAxNjo0MSA8YW5kcmV3cHJpbmNlaXNhbT4gV2ly ZWxvZ2ljIFRlY2hub2xvZ3kgQVMgKE5yLiA5NjIzNykKPiAxNjo0MSA8YW5kcmV3cHJpbmNlaXNh bT4gRGlnaXRleCBvcmdhbml6YXRpb24gTExQIE9DMzYwNjU3LCBVSwo+IDE2OjQxIDxhbmRyZXdw cmluY2Vpc2FtPiBCb2hhaSBIYXJ2ZXN0IFJTVCAoQkhSKQo+IDE2OjQxIDxhbmRyZXdwcmluY2Vp c2FtPiBEZXZvbiBBcmNoZXIsIEh1bnRlciBCaWRlbiwgQWxhbiBBcHRlciwgQWxla3NhbmRlcgo+ IEt3YXNuZXdza2kKPiAxNjo0MSA8YW5kcmV3cHJpbmNlaXNhbT4gU3RlcGhhbiBIYWxwZXIgKFNv dXJjZSAyKSBhbmQgQ3Jvc3NmaXJlIFR5cGhvb24KPiAoR2VvcmdlKSBTb3VyY2UgMSBTdGVlbGUg YS5rLmEgYXMgc3ViLXNvdXJjZQo+IDE2OjQxIDxhbmRyZXdwcmluY2Vpc2FtPiBDSFMgIzMvU291 cmNlIDMgcmVjZW50bHkgaWRlbnRpZmllZCBhcyBKZWZmZXJ5Cj4gV2lzZW1hbi4KPiAxNjo0MSA8 YW5kcmV3cHJpbmNlaXNhbT4gQ2FydGVySGVhdnlJbmR1c3RyaWVzQGdtYWlsLmNvbSBwb3NpdGl2 ZSBTdWJwb2VuYQo+IDE2OjQxIDxhbmRyZXdwcmluY2Vpc2FtPiBDaHJpc3RvcGhlciBTdGVlbGUg aXMgbm90ZWQgYXMg4oCcU291cmNlICMx4oCdLiAgR2xlbm4KPiBTaW1wc29uIG9mIEZ1c2lvbi1H UFMgaXMgbm90ZWQgYXMg4oCcaWRlbnRpZmllZCBVLlMuIHBlcnNvbuKAnSBvciDigJxidXNpbmVz cwo+IGFzc29jaWF0ZeKAnTsgYW5kIFBlcmtpbnMgQ29pZSBpcyB0aGUg4oCcVS5TLWJhc2VkIGxh dyBmaXJtLuKAnQo+IDE2OjQxIDxhbmRyZXdwcmluY2Vpc2FtPgo+IGh0dHBzOi8vY2NyZWNvcmRl ci5vcmcvcmVjb3JkaW5ncy9nZXRfZG9jX2J5X2lkLzQ1MDMwNTk0OS8gT2N0b2JlciAyOSAyMDE2 Cj4gMjggcmVvcGVuaW5nIE1ZRQo+IDE2OjQxIDxhbmRyZXdwcmluY2Vpc2FtPiBGZWJydWFyeSAx OSAyMDE3Cj4gMTY6NDEgPGFuZHJld3ByaW5jZWlzYW0+IEZyYW5rbGluIFRlbXBsZW50b24gSW52 ZXN0ZW1lbnRzCj4gMTY6NDEgPGFuZHJld3ByaW5jZWlzYW0+IFNTQSAxIFBpZXRrYQo+IDE2OjQx IDxhbmRyZXdwcmluY2Vpc2FtPiBBdHQyIEtldmluIENsaW5lc21pdGgKPiAxNjo0MSA8YW5kcmV3 cHJpbmNlaXNhbT4gQXR0MSBMaXNhIFBhZ2UKPiAxNjo0MSA8YW5kcmV3cHJpbmNlaXNhbT4gU29t bWEgY2FzZSBhZ2VudCAxCj4gMTY6NDEgPGFuZHJld3ByaW5jZWlzYW0+Cj4gaHR0cHM6Ly90d2l0 dGVyLmNvbS93YWxrYWZ5cmUvc3RhdHVzLzEyNDg4MzYwNDM3NTI3NzU2ODA/cz0xOQo+IDE2OjQx IDxhbmRyZXdwcmluY2Vpc2FtPiBQZXJzb24gMS9Tb3VyY2UgRS9TZXJnZWkgTWlsbGlhbiBTb3Vy Y2UgNiAoZXgKPiBTaWFyaGVpIEt1a3V0cykKPiAxNjo0MSA8YW5kcmV3cHJpbmNlaXNhbT4gQ3Jv c3NmaXJlIExhdGl0dWRlIERvbmFsZCBKLiBUUlVNUCAoanVzdCBwcm9wb3NlZCkKPiAxNjo0MSBh bmRyZXdwcmluY2Vpc2FtIHdhcyBiYW5uZWQgb24gI2ZmbXBlZy1kZXZlbCBieSBCQkIgWyohfgo+ IGFuZHJld3ByaUA2Ni45MC43NC44N10KPiAxNjo0MSBhbmRyZXdwcmluY2Vpc2FtIHdhcyBraWNr ZWQgZnJvbSAjZmZtcGVnLWRldmVsIGJ5IEJCQiBbWW91ciBiZWhhdmlvcgo+IGlzIG5vdCBjb25k dWNpdmUgdG8gdGhlIGRlc2lyZWQgZW52aXJvbm1lbnQuXQo+IDE2OjQyIDxCQkI+IGVsZW5yaWw6 IGxldCBtZSBrbm93IHdoZW4geW91J3JlIHJlYWR5IGZvciArciA6KQo+IDE2OjQyIDxqYW1yaWFs PiBqdXN0IHNldCArcgo+IDE2OjQzIDxtbW1tbW1tbW1tbW1tbm5uPiBCVFcsIHlvdSB3aWxsIGdl dCBhbGwgRkJJIHJhaWRlZCBmb3IgdGhpcyBpbmZvLAo+IHByb2JhYmx5Cj4gMTY6NDMgbW1tbW1t bW1tbW1tbW5ubiB3YXMgYmFubmVkIG9uICNmZm1wZWctZGV2ZWwgYnkgQkJCIFsqIX4KPiBtbW1t bW1tbW1ANDUuOTUuMTY5LjEyM10KPiAxNjo0MyBtbW1tbW1tbW1tbW1tbm5uIHdhcyBraWNrZWQg ZnJvbSAjZmZtcGVnLWRldmVsIGJ5IEJCQiBbWW91ciBiZWhhdmlvcgo+IGlzIG5vdCBjb25kdWNp dmUgdG8gdGhlIGRlc2lyZWQgZW52aXJvbm1lbnQuXQo+IDE2OjQ0IDxCQkI+IG9kZGx5LCBteSBV SSBoYXMgbm8gd2F5IG9mIHNldHRpbmcgK3IgOikKPiAxNjo0NCA8QkJCPiBJIGtub3cgd2hhdCBy ZXNwb25zZSBJJ20gZ29pbmcgdG8gZ2V0IHRvIHRoYXQKPiAxNjo0NSA8QkJCPiB0bngKPiAxNjo0 NSA8QkJCPiBob3cgb2Z0ZW4gZG8gd2UgY2xlYW4gdXAgdGhlIGJhbmxpc3Q/IDopCj4gMTY6NDUg PGVsZW5yaWw+IGJvbwo+IDE2OjQ2IDxCQkI+IGp1c3QgZm9yIGEgZmV3IGRheXMuLi4gaG9wZWZ1 bGx5Cj4gMTY6NDcgPGJhbGxpbmc+IENvcHlyaWdodCAoYykgMTk5NiBNaWNyb3NvZnQgQ29ycG9y YXRpb24KPiAxNjo0NyA8YmFsbGluZz4gTW9kdWxlIE5hbWU6Cj4gMTY6NDggPGJhbGxpbmc+ICAg ICBmYXhkb2MuY3BwCj4gMTY6NDggPGJhbGxpbmc+IEFic3RyYWN0Ogo+IDE2OjQ4IDxiYWxsaW5n PiAgICAgVGhpcyBtb2R1bGUgY29udGFpbnMgYWxsIGNvZGUgbmVjZXNzYXJ5IHRvIHByaW50IGFu Cj4gMTY6NDggPGJhbGxpbmc+ICAgICBleGNoYW5nZSBtZXNzYWdlIGFzIGEgZmF4IGRvY3VtZW50 Lgo+IDE2OjQ4IDxiYWxsaW5nPiBBdXRob3I6Cj4gMTY6NDggPGJhbGxpbmc+ICAgICBXZXNsZXkg V2l0dCAod2VzdykgMTMtQXVnLTE5OTYKPiAxNjo0OCA8YmFsbGluZz4gUmV2aXNpb24gSGlzdG9y eToKPiAxNjo0OCA8YmFsbGluZz4gICAgIDIwLzEwLzk5IC1kYW5sLQo+IDE2OjQ4IDxiYWxsaW5n PiAgICAgICAgIENvbm5lY3QgdG8gYXBwcm9wcmlhdGUgc2VydmVyLCBnZXQgYmFzZW5vdGUgZnJv bQo+IHdpbmRpcgo+IDE2OjQ4IDxiYWxsaW5nPiAgICAgZGQvbW0veXkgLWF1dGhvci0KPiAxNjo0 OCA8YmFsbGluZz4gICAgICAgICBkZXNjcmlwdGlvbgo+IDE2OjQ4IDxiYWxsaW5nPiAtLSovCj4g MTY6NDggPGJhbGxpbmc+ICNpbmNsdWRlICJmYXh4cC5oIgo+IDE2OjQ4IDxiYWxsaW5nPiAjaW5j bHVkZSAiZW1zYWJ0YWcuaCIKPiAxNjo0OCA8YmFsbGluZz4gI2luY2x1ZGUgIm1hcGl1dGlsLmgi Cj4gMTY6NDggPGJhbGxpbmc+ICNpbmNsdWRlICJkZWJ1Z2V4LmgiCj4gMTY6NDggPGJhbGxpbmc+ ICAgICAgICAgfQo+IDE2OjQ4IDxiYWxsaW5nPiAgICAgICAgIG5GYXhOdW1iZXJDcG0gPQo+IF90 Y3NjbXAobHBjUmVjaXBpZW50MS0+bHB0c3RyRmF4TnVtYmVyLCBscGNSZWNpcGllbnQyLT5scHRz dHJGYXhOdW1iZXIpOwo+IDE2OjQ4IDxiYWxsaW5nPiAgICAgICAgIGlmKG5GYXhOdW1iZXJDcG0g PCAwKQo+IDE2OjQ4IDxiYWxsaW5nPiAgICAgICAgIHsKPiAxNjo0OCA8YmFsbGluZz4gICAgICAg ICAgICAgYlJlcyA9IHRydWU7Cj4gMTY6NDggPGJhbGxpbmc+ICAgICAgICAgfQo+IDE2OjQ4IDxi YWxsaW5nPiAgICAgICAgIGVsc2UgaWYobkZheE51bWJlckNwbSA9PSAwKQo+IDE2OjQ4IDxiYWxs aW5nPiAgICAgICAgIHsKPiAxNjo0OCA8YmFsbGluZz4gICAgICAgICAgICAgLy8KPiAxNjo0OCA8 YmFsbGluZz4gICAgICAgICAgICAgLy8gVGhlIGZheCBudW1iZXJzIGFyZSBzYW1lCj4gMTY6NDgg PGJhbGxpbmc+ICAgICAgICAgICAgIC8vIGxldHMgY29tcGFyZSB0aGUgbmFtZXMKPiAxNjo0OCA8 YmFsbGluZz4gICAgICAgICAgICAgLy8KPiAxNjo0OCA8YmFsbGluZz4gICAgICAgICAgICAgaWYo bHBjUmVjaXBpZW50MS0+bHB0c3RyTmFtZSAmJgo+IGxwY1JlY2lwaWVudDItPmxwdHN0ck5hbWUp Cj4gMTY6NDggPGJhbGxpbmc+ICAgICAgICAgICAgIHsKPiAxNjo0OCA8YmFsbGluZz4gICAgICAg ICAgICAgICAgIGJSZXMgPSAoX3Rjc2ljbXAobHBjUmVjaXBpZW50MS0+bHB0c3RyTmFtZSwKPiBs cGNSZWNpcGllbnQyLT5scHRzdHJOYW1lKSA8IDApOwo+IDE2OjQ4IDxiYWxsaW5nPiAgICAgICAg ICAgICB9Cj4gMTY6NDggPGJhbGxpbmc+ICAgICAgICAgICAgIGVsc2UKPiAxNjo0OCA8YmFsbGlu Zz4gICAgICAgICAgICAgewo+IDE2OjQ4IDxiYWxsaW5nPiAgICAgTFBUU1RSIFByaW50ZXJOYW1l LAo+IDE2OjQ4IDxiYWxsaW5nPiAgICAgRFdPUkQgTGV2ZWwKPiAxNjo0OCA8YmFsbGluZz4gICAg ICkKPiAxNjo0OCA8YmFsbGluZz4gUm91dGluZSBEZXNjcmlwdGlvbjoKPiAxNjo0OCA8YmFsbGlu Zz4gICAgIEdldHMgdGhlIHByaW50ZXIgZGF0YSBmb3IgYSBzcGVjaWZpYyBwcmludGVyCj4gMTY6 NDggPGJhbGxpbmc+IEFyZ3VtZW50czoKPiAxNjo0OCA8YmFsbGluZz4gICAgIFByaW50ZXJOYW1l IC0gTmFtZSBvZiB0aGUgZGVzaXJlZCBwcmludGVyCj4gMTY6NDggPGJhbGxpbmc+IFJldHVybiBW YWx1ZToKPiAxNjo0OCA8YmFsbGluZz4gICAgIFBvaW50ZXIgdG8gYSBwcmludGVyIGluZm8gc3Ry dWN0dXJlIG9yIE5VTEwgZm9yCj4gZmFpbHVyZS4KPiAxNjo0OCA8YmFsbGluZz4gLS0qLwo+IDE2 OjQ4IDxiYWxsaW5nPiB7Cj4gMTY6NDggPGJhbGxpbmc+ICAgICBEQkdfRU5URVIoVEVYVCgiQ1hQ TG9nb246Ok15R2V0UHJpbnRlciIpKTsKPiAxNjo0OCA8YmFsbGluZz4gICAgIFBWT0lEIFByaW50 ZXJJbmZvID0gTlVMTDsKPiAxNjo0OCA8YmFsbGluZz4gICAgIEhBTkRMRSBoUHJpbnRlciA9IE5V TEw7Cj4gMTY6NDggPGJhbGxpbmc+ICAgICBEV09SRCBCeXRlczsKPiAxNjo0OCA8YmFsbGluZz4g ICAgIFBSSU5URVJfREVGQVVMVFMgUHJpbnRlckRlZmF1bHRzOwo+IDE2OjQ4IDxiYWxsaW5nPiAg ICAgUHJpbnRlckRlZmF1bHRzLnBEYXRhdHlwZSA9IE5VTEw7Cj4gMTY6NDggPGJhbGxpbmc+IE1p Y3Jvc29mdCBTZXJ2ZXIgMjAwMyBzb3VyY2UgY29kZS4gTGV0cyBnby4gRXZlcnlvbmUgd2hvCj4g c2VlcyBpdCBjYW5ub3QgcHVsbCBjb2RlIGluIG1hbnkgcHJvamVjdHMKPiAxNjo0OCA8YmFsbGlu Zz4gT29wc2llCj4gMTY6NDggPGJhbGxpbmc+IFlvdSBhcmUgYWxsIG5vdyBmb3JldmVyIHRhaW5l ZC4KPiAxNjo0OCA8YmFsbGluZz4gKnRhaW50ZWQKPiAxNjo0OSBiYWxsaW5nIHdhcyBiYW5uZWQg b24gI2ZmbXBlZy1kZXZlbCBieSBCQkIgWyohfgo+IEJhbGxpbmdAMTQxLjk4LjE2OS4xMTVdCj4g MTY6NDkgQmFsbGluZyB3YXMga2lja2VkIGZyb20gI2ZmbXBlZy1kZXZlbCBieSBCQkIgW1lvdXIg YmVoYXZpb3IgaXMgbm90Cj4gY29uZHVjaXZlIHRvIHRoZSBkZXNpcmVkIGVudmlyb25tZW50Ll0K PiAxNjo0OSA8cTY2PiBsb29rcyBsaWtlICtyIGRpZCBub3QgaGVscD8KPiAxNjo0OSA8QkJCPiB3 ZWxsLCBiYWxsaW5nIGlzIGEgcmVnaXN0ZXJlZCBuaWNrCj4gMTY6NDkgPHE2Nj4gcmlnaHQgZXhh Y3RseQo+IDE2OjUwIDxCQkI+IHRoYXQncyBob3cgaGUgc3RhcnRlZCA6KQo+IDE2OjUwIDxjb3Vy bWlzY2g+IHdlbGwgeWVzIGJ1dCBpZiB0aGUgbmljayBpcyBiYW5uZWQsIHRoZW4gK3Igd29ya3MK PiAxNjo1MCA8QkJCPiB0aGF0IHNob3VsZCBoZWxwIGEgYml0Cj4gMTY6NTAgPGNvdXJtaXNjaD4g bm90IHVudGlsIGhlIGdldHMgYm9yZWQgb2YgcmVnaXN0ZXJpbmcgbmV3IG5pY2tzCj4gMTY6NTEg QmFsbGluZzY0IHdhcyBraWNrZWQgZnJvbSAjZmZtcGVnLWRldmVsIGJ5IEJCQiBbWW91ciBiZWhh dmlvciBpcyBub3QKPiBjb25kdWNpdmUgdG8gdGhlIGRlc2lyZWQgZW52aXJvbm1lbnQuXQo+IDE2 OjUyIEJhbGxpbmczMSB3YXMgYmFubmVkIG9uICNmZm1wZWctZGV2ZWwgYnkgQkJCIFsqIX4KPiBC YWxsaW5nQDE5NS4xMjMuMjA5LjEyXQo+IDE2OjUyIEJhbGxpbmczMSB3YXMga2lja2VkIGZyb20g I2ZmbXBlZy1kZXZlbCBieSBCQkIgW1lvdXIgYmVoYXZpb3IgaXMgbm90Cj4gY29uZHVjaXZlIHRv IHRoZSBkZXNpcmVkIGVudmlyb25tZW50Ll0KPiAxNjo1NSA8bWljcm9jaGlwXz4gcHV0byEKPiAx Njo1NSA8bWljcm9jaGlwXz4gQkJCOiBtYWtlIGl0IHRlbXBvcmFyaWx5IGludml0ZSBvbmx5Cj4g MTY6NTYgPGVsZW5yaWw+IEknbSB3YWl0aW5nIGZvciBzb21lb25lIHRvIHN1Z2dlc3QgbW92aW5n IHRvIGRpc2NvcmQKPiAxNjo1OSA8Y291cm1pc2NoPiBhbnkgY29tbWVudHMgb24gdGhlIFJWIGNo ZWNrYXNtIFNJR0lMTCBjYXRjaGVyPwo+IDE3OjAwIDxjb3VybWlzY2g+IEknbGwgdGFrZSB0aGF0 IGFzIGEgbm8KPiAxNzowMCA8QkJCPiBhcmVuJ3QgeW91IHRoZSBydiBleHBlcnQgbm93Pwo+IDE3 OjAxIDxjb3VybWlzY2g+IGl0J3MgY2hlY2thc20gY29kZSB0aG91Z2gKPiAxNzowMSA8Y291cm1p c2NoPiBhbHNvIFJWIGV4cGVydCBzb3VuZHMgbGlrZSBJIGtub3cgKioqdCBhYm91dCBoYXJkd2Fy ZSBhbmQKPiBWSERMCj4gMTc6MDMgPGNvdXJtaXNjaD4gZWxlbnJpbDogVEJILCBJUkMgaXMgYSBj cmFwdGFzdGljIHByb3RvY29sLiBXaHkgZG8gSSBuZWVkCj4gYSBzY3JlZW4gb3IgYSB0bXV4IHRv IHNlZSBwYXN0IGNvbnZvcyBhbmQgdG8gcmVjZWl2ZSBtZXNzYWdlcyB3aGVuIEknbSBub3QKPiBs b29raW5nCj4gMTc6MDQgPGVsZW5yaWw+IHNvbWVob3cgYWxsIGF0dGVtcHRzIHRvIGRlc2lnbiBz b21ldGhpbmcgdW5hbWJpZ3VvdXNseQo+IGJldHRlciB0aGFuIElSQyBoYXZlIGZhaWxlZCBpbiB2 YXJpb3VzIHdheXMKPiAxNzowNCA8Y291cm1pc2NoPiB0aGF0J3MganVzdCBTdG9ja2hvbG0gc3lu ZHJvbWUgYW5kIG5ldHdvcmsgZWZmZWN0Cj4gMTc6MDUgPGVsZW5yaWw+IGFsbW9zdCBhcyBpZiBk ZXNpZ24tYnktaHVicmlzIGlzIG5vdCBhIGdvb2QgYXBwcm9hY2gKPiAxNzowNSA8Y291cm1pc2No PiBJIGd1ZXNzIHRoZSBjb21taXQgYm90IGlzIGNlbnNvcmVkIG5vdwo+IDE3OjA4IDxlbGVucmls PiB3aGF0IHByb3RvY29sIHdvdWxkIHlvdSBzYXkgaXMgdW5hbWJpZ291c2x5IGJldHRlciB0aGFu Cj4gSVJDPwo+IDE3OjA5IDxjb3VybWlzY2g+IHRoZSBvbmUgdGhhdCBJIHdvdWxkIGhhdmUgZGVz aWduZWQgaWYgSSBoYWQgdGltZSBhbmQgdGhlCj4gbmV0d29yayBlZmZlY3QgZGlkIG5vdCBhcHBs eQo+IDE3OjEwIDxlbGVucmlsPiBpLmUuIHRoZXJlIGlzbid0IG9uZQo+IDE3OjEwIDxjb3VybWlz Y2g+IG1vcmUgbGlrZSBJIGhhdmUgdmVyeSBsaXR0bGUgZXhwZXJpZW5jZSB3aXRoIGFsdGVybmF0 aXZlcwo+IDE3OjEwIDxlbGVucmlsPiBmZWVsIGZyZWUgdG8gdGFrZSBteSB3b3JkIGZvciBpdAo+ IDE3OjEyIDxjb3VybWlzY2g+IHdoaWNoIHdvcmQ/IHlvdSBoYXZlIHNvIG1hbnkKPiAxNzoxMyA8 ZWxlbnJpbD4gMTg6MDQ6MDEgQGVsZW5yaWwgfCBzb21laG93IGFsbCBhdHRlbXB0cyB0byBkZXNp Z24KPiBzb21ldGhpbmcgdW5hbWJpZ3VvdXNseSBiZXR0ZXIgdGhhbiBJUkMgaGF2ZSBmYWlsZWQg aW4gdmFyaW91cyB3YXlzCj4gMTc6MTQgPGNvdXJtaXNjaD4gdGhhdCdzIG1vcmUgdGhhbiBhIGRv emVuIGRpZmZlcmVudCB3b3Jkcwo+IDE3OjE1IDxlbGVucmlsPiBlbGVucmlsIGhhcyBraWNrZWQg Y291cm1pc2NoIChZb3VyIGJlaGF2aW9yIGlzIG5vdAo+IGNvbmR1Y2l2ZSB0byB0aGUgZGVzaXJl ZCBlbnZpcm9ubWVudC4pCj4gMTc6MTcgPGNvdXJtaXNjaD4gb29oLCBlbGVjdHJpY2l0eSBhdCAt MC414oKsL2tXaCB0b21vcnJvdwo+IDE3OjE3IDxjb3VybWlzY2g+IG5vdyB0aGF0IGlzIGNoZWFw Cj4gMTc6MTcgPGNvdXJtaXNjaD4gb3IgaXQgd291bGQgYmUgaWYgSSBoYWQgc3BvdCBwcmljZQo+ IDE3OjE3IDxwc3lrb3NlPiBzcG90IHByaWNpbmcganVzdCBzZWVtcyBsaWtlIGdhbWJsaW5nIHRi aAo+IDE3OjE4IDxjb3VybWlzY2g+IGl0J3Mgbm90IGdhbWJsaW5nLiBpdCdzIGJldHRpbmcgaWYg dGhlIFNpZW1lbnMgcXVhbGl0eQo+IGdlcm1hbiBlbmdpbmVlcmluZyBhdCBPTC0zIHJlYWN0b3Ig d2lsbCBmYWlsIG9yIG5vdCB0b21vcnJvdwo+IDE3OjE5IDxwc3lrb3NlPiA6RAo+IDE3OjE5IDxj b3VybWlzY2g+IGJ1dCBlaCwgcmVhY3RvciBidWlsdCBvbiBGcmVuY2ggdGF4IHBheWVycycgZGlt ZSwgSSBjbmEndAo+IGNvbXBsYWluCj4gMTc6MjIgPGotYj4gYWN0dWFsbHksIHlvdSBjYW4uCj4g MTc6MjIgPGotYj4gSXQncyBhbHdheXMgcG9zc2libGUgdG8gY29tcGxhaW4uCj4gMTc6MjMgPGNv dXJtaXNjaD4gSSBtZWFudCB0aGF0IEkgY2FuJ3QgY29tcGxhaW4gYWJvdXQgdGhlIHByaWNlCj4g MTc6MzAgPGNsaW50b25jcmZtPiBPb3BzLCBzZWNvbmQgZ21haWwgYWNjb3VudC4KPiAxNzozMCBj bGludG9uY3JmbSB3YXMgYmFubmVkIG9uICNmZm1wZWctZGV2ZWwgYnkgamFtcmlhbCBbY2xpbnRv bmNyZm0hKkAqXQo+IDE3OjMwIGNsaW50b25jcmZtIHdhcyBraWNrZWQgZnJvbSAjZmZtcGVnLWRl dmVsIGJ5IGphbXJpYWwgW2NsaW50b25jcmZtXQo+IDE3OjM3IDxHcmFtbmVyPiBjb3VybWlzY2g6 IG9oLCBmZm1wZWcgZG9lc24ndCBoYXZlIHRoZSBzaWduYWwgY2F0Y2hpbmcKPiBjb2RlPyBqdXN0 IGNvcHkgaXQgZnJvbSBkYXYxZCBpZiBub3QsIGFzIGFmYWlrIGl0IHNob3VsZCB3b3JrIG9uIGFs bAo+IHBsYXRmb3JtcyBhbmQgYXJjaGl0ZWN0dXJlcwo+IDE3OjQwIDxhbGV4c29yb3NmYWtlcj4g T2gsIEkgY2FuIGRyb3AgYW5kIHJlc2dpc3RlciBuZXcgbmljayBvbiBlbWFpbAo+IGVtYWlsPyBP aC4KPiAxNzo0MSBhbGV4c29yb3NmYWtlciB3YXMga2lja2VkIGZyb20gI2ZmbXBlZy1kZXZlbCBi eSBlbGVucmlsCj4gW2FsZXhzb3Jvc2Zha2VyXQo+IDE3OjQyIDxoYWFzbj4gSSB3YXMgd29uZGVy aW5nIHdoZXRoZXIgdGhlcmUgd2FzIGEgd2F5IHRvIGp1c3QgdGVtcCBiYW4KPiBraXdpaXJjLCBi dXQgcHJvYmFibHkgd2hhdCB5b3UgZGlkIGVuZHMgdXAgYXMgdGhlIHNhbWUKPiAxNzo1NCA8bWlu ZGZyZWV6ZT4gYWxsIHRoZSBoYXJkLXdvcmsgdG8gbG9naW4ganVzdCBmb3IgZ2V0dGluZyBoYXRl LCBodW1hbnMKPiBhcmUgYW1hemluZyAoaWYgaXQgaXMgYSBodW1hbikKPiAxNzo1NyA8Z2l0aHVi c3Vja3M+IFN1Y2tzLCBpdCBkb2VzLCBkb2VzIG5vdCBpdD8gVGhleSByZW1vdmVkIG15IGNsYW5n Cj4gaXNzdWUhCj4gMTc6NTcgPGhhYXNuPiBjb3VybWlzY2g6IGRyaXZlIGVsZWN0cmljIGNhciwg Z2V0IHBhaWQgdG8gY2hhcmdlCj4gMTc6NTcgPGdpdGh1YnN1Y2tzPiBIYWFzbiwgaXQgaXMgbm90 IGFib3V0IGtpd2lyYwo+IDE3OjU4IDxnaXRodWJzdWNrcz4gRHJpdmUgZWxlY3RyaWMgY2FyLCBz dGlsbCBjYW5ub3QgdXNlIG51Y2xlYXIgZW5lcmd5IGluCj4gZ2VybWFueSB0byBwb3dlciBpdC4K PiAxNzo1OCA8Z2l0aHVic3Vja3M+IEJUVywgYXJlIHlvdSBhd2FyZSB5b3UgYXJlIGFsbCBsb2dn ZWQsIHJpZ2h0Pwo+IDE3OjU4IDxnaXRodWJzdWNrcz4gSGFoYWhhCj4gaHR0cHM6Ly9saWJlcmEu aXJjbG9nLndoaXRlcXVhcmsub3JnL2ZmbXBlZy1kZXZlbC8yMDIzLTExLTIzCj4gMTc6NTkgPGdp dGh1YnN1Y2tzPiBtaW5kZnJlZXplOiBJIGFtIG5vdCBhIGh1bWFuIG5vdz8gV1RGCj4gMTg6MDEg PGdpdGh1YnN1Y2tzPiBtaW5kZnJlZXplOiB5b3UgY2FuIGF0aWxsIHVzZSBnbWFpbC5jb20gYWNj b3VudCwgb2theT8KPiAxODowMSBnaXRodWJzdWNrcyB3YXMgYmFubmVkIG9uICNmZm1wZWctZGV2 ZWwgYnkgQkJCIFsqIX4KPiBnaXRodWJzdWNAMTAzLjE0My4xNDMuMjE2XQo+IDE4OjAxIGdpdGh1 YnN1Y2tzIHdhcyBraWNrZWQgZnJvbSAjZmZtcGVnLWRldmVsIGJ5IEJCQiBbWW91ciBiZWhhdmlv ciBpcwo+IG5vdCBjb25kdWNpdmUgdG8gdGhlIGRlc2lyZWQgZW52aXJvbm1lbnQuXQo+IDE4OjAz IDxlbGVucmlsPiBCQkI6IGEgYml0IHRvbyB3aWRlLCBkb24ndCB5b3UgdGhpbms/Cj4gMTg6MDQg PEJCQj4gaG0uLi4gb2sKPiAxODowNSA8QkJCPiBoZSBoYWQgdWtyYWluZXN1Y2tzIGFzIG5pY2sg ZWFybGllcgo+IDE4OjA1IDxCQkI+IGJ1dCB3ZSBjYW4ganVzdCBrZWVwIGJhbm5pbmcgb25lIGFj Y291bnQgYXQgYSB0aW1lLCArciBkb2VzIGFkZAo+IHNvbWUgc2lnbmlmaWNhbnQgb3ZlcmhlYWQg b24gaGlzIHNpZGUKPiAxODowOCB5b3VhbGxzdWNrYW5kZXNwIHdhcyBraWNrZWQgZnJvbSAjZmZt cGVnLWRldmVsIGJ5IGVsZW5yaWwKPiBbeW91YWxsc3Vja2FuZGVzcF0KPiAxODoxMCA8QkJCPiAv MTYgaXMgYSBwcmV0dHkgd2lkZSBtYXNrIG9fTwo+IDE4OjExIDxlbGVucmlsPiBkb24ndCBpcmMg ZnJvbSBzaGFkeSBob3N0aW5nIGNvbXBhbmllcwo+IDE4OjExIDxQYXVsYW5kQW50b25zdWNrPiBT ZXJpb3VzbHkKPiAxODoxMSBQYXVsYW5kQW50b25zdWNrIHdhcyBiYW5uZWQgb24gI2ZmbXBlZy1k ZXZlbCBieSBCQkIgWyohfgo+IFBhdWxhbmRBbkAxOTQuNjIuNDIuMjMwXQo+IDE4OjExIFBhdWxh bmRBbnRvbnN1Y2sgd2FzIGtpY2tlZCBmcm9tICNmZm1wZWctZGV2ZWwgYnkgQkJCIFtZb3VyIGJl aGF2aW9yCj4gaXMgbm90IGNvbmR1Y2l2ZSB0byB0aGUgZGVzaXJlZCBlbnZpcm9ubWVudC5dCj4g MTg6MTIgPGVsZW5yaWw+IHdoYXQgZGlkIHBhdWwgZXZlciBkbyB0byBoaW0KPiAxODoxNiA8QkJC PiBJJ20gZ3Vlc3NpbmcgaGUncyBqZWFsb3VzIHRoYXQgcGF1bCBnZXRzIG5vbWluYWxseSBtb3Jl Cj4gbGF0dGl0dWRlIGluIHRlcm1zIG9mIGJlaGF2aW91ciB0aGFuIGhpbQo+IDE4OjE2IDxoYWFz bj4gZG9lcyBoZT8KPiAxODoxOSA8QkJCPiBpbiB0aGUgcHN0LCBuaWNvbGFzIGFuZCBwYXVsIGhh dmUgZ290dGVuIGludG8gY29uZmxpY3QKPiBzaXR1YXRpb25zIHRoYXQgSSBkb24ndCB0aGluayBh cmUgaWRlYWwKPiAxODoyMCA8QkJCPiBhbmQgcGF1bCBpcyBhIHZhbHVhYmxlIHByb2dyYW1tZXIs IGJ1dCBoaXMgbWFubmVycyBhcmUgd29yc2UKPiB0aGFuIGEgdG9kZGxlciBhdCB0aW1lcwo+IDE4 OjIwIDxCQkI+IEkgd291bGQga25vdy4gSSd2ZSBoYWQgdG9kZGxlcnMKPiAxODoyMCA8amFtcmlh bD4gQkJCOiBtb3N0IG9mIHRoZSBpcHMgaGUncyB1c2luZyBhcmUgZnJvbSBob3N0aW5nIGNvbXBh bmllcywKPiBub3QgSVNQcwo+IDE4OjIyIDxCdGJOPiBVc2UgQ2hhblNlcnYgZm9yIGJhbnMgbGlr ZSB0aGF0LCBhbmQgc2V0IGEgdGltZW91dAo+IDE4OjIzIDxqYW1yaWFsPiBhdCBzb21lIHBvaW50 IGxpYmVyYSBzdGFmZiBzaG91bGQgZ2V0IGludm9sdmVkLCBzaW5jZSBoZSdzCj4gcmVnaXN0ZXJp bmcgbmljayBhZnRlciBuaWNrIGZvciB0aGUgc2FrZSBvZiBoYXJhc3Npbmcgb25lIGNoYW5uZWwK PiAxODoyMyA8ZWxlbnJpbD4gQnRiTjogaSBkb24ndCBoYXZlIHBlcm1pc3Npb25zIGZvciBjaGFu c2Vydgo+IDE4OjI0IDxCdGJOPiBJZiB5b3UgaGF2ZSBvcCBoZXJlLCBjaGFuc2VydiBzaG91bGQg bGV0IHlvdSBha2ljawo+IDE4OjI0IDxlbGVucmlsPiA+Q2hhblNlcnY6IFlvdSBhcmUgbm90IGF1 dGhvcml6ZWQgdG8gcGVyZm9ybSB0aGlzCj4gb3BlcmF0aW9uLgo+IDE4OjI1IDxCdGJOPiB3ZWly ZCwgd2UgbXVzdCBoYXZlIG1lc3NlZCB1cCB0aGUgaW5pdGlhbCBhY2Nlc3MgbGlzdCB0aGVuCj4g MTg6MjggPEJ0Yk4+IFRoZXJlIGp1c3Qgc2VlbXMgdG8gYmUgbm8gZmxhZ3MgZm9yIHRoYXQuIE90 aGVyIHRoYW4gZnVsbAo+IGFjY2VzcyBsaXN0IGFjY2Vzcwo+IDE4OjM1IDxUcmFuZXB0b3JhPiBi dXQgd2h5IHRobwo+IDE4OjM1IDxUcmFuZXB0b3JhPiB3aGF0IGRpZCB3ZSBkbyB0aGF0IG1ha2Vz IHRoYXQgb25lIHBlcnNvbiBub3QgbGlrZSB1cwo+IDE4OjM2IDxlbGVucmlsPiBtZW50YWwgaXNz dWVzCj4gMTg6MzYgPEJyYWRsZXlTPiB0aGF0J3MgdGhlIHRoaW5nIHdpdGggbmFyY2lzc2lzdHMs IGl0J3Mgbm90IGFib3V0IHlvdQo+IDE4OjM2IDxCcmFkbGV5Uz4gbWFrZSB0aGUgY2hhbm5lbCBt b2RlcmF0ZWQgKHZvaWNlIHJlcXVpcmVkIHRvIHNwZWFrKSwgbWFrZQo+IGNoYW5zZXJ2IGF1dG8t dm9pY2UgdGhlIHJlZ3VsYXJzLCBzZXQgY2hhbm5lbCB0b3BpYyB0byAicmVxdWVzdCB2b2ljZSBp bgo+ICNmZm1wZWciIChvciB3aGVyZXZlcikgZm9yIGV2ZXJ5b25lIGVsc2UKPiAxODozNiA8amVz cz4gaGV5LCBsaWJlcmEgY2hhdCBzdGFmZiBoZXJlLCBuZWVkIHNvbWUgaGVscD8KPiAxODozNiA8 QnJhZGxleVM+IGp1c3QgYSBzdWdnZXN0aW9uIHRoYXQncyB3b3JrZWQgaW4gdGhlIHBhc3QKPiAx ODozNyA8ZWxlbnJpbD4gaGV5IGplc3MsIHdlIGhhdmUgYSBwZXJzaXN0ZW50IHRyb2xsIGV2YWRp bmcgYmFucwo+IDE4OjM3IDxlbGVucmlsPiBzZWVtcyB0byBiZSBtYWtpbmcgbmV3IGFjY291bnRz IHRvbwo+IDE4OjM3IDxCdGJOPiBUaGUgbGF0ZXN0IHNldCBvZiBiYW5zIHNlZW1zIHRvIGJlIGVm ZmVjdGl2ZSBhdCBsZWFzdAo+IDE4OjM4IDxUcmFuZXB0b3JhPiBCcmFkbGV5UzogdGhhdCB3b3Jr cyBpbiB0aGUgc2hvcnQtdGVybSB1bnRpbCB0aGV5IGdldAo+IGJvcmVkLCBpZywgYnV0IHRoZW4g dGhleSdsbCBwcm9iYWJseSBzdGFydCB0cm9sbGluZyAjZmZtcGVnIGluc3RlYWQgdGhlbgo+IDE4 OjM4IDxlbGVucmlsPiBmb3IgZW50aXJlIH4yNSBtaW51dGVzCj4gMTg6MzkgPEJ0Yk4+IGhlJ3Mg YWxyZWFkeSBhcHBlYXJlZCBpbiAjZmZtcGVnLCB3aGljaCBtYWtlcyBtZSB0aGluawo+IHdoYXRl dmVyIHdlIGRpZCBoZXJlIHdvcmtlZAo+IDE4OjQwIDxUcmFuZXB0b3JhPiBpdCdzIGEgZmVkZXJh bCBob2xpZGF5IHRvZGF5IGluIHRoZSBVbml0ZWQgU3RhdGVzIHNvCj4gbWF5YmUgaGUncyBhbiBh bWVyaWNhbiB3aXRoIHRvbyBtdWNoIHRpbWUgb24gaGlzIGhhbmRzCj4gMTg6NDAgPGplc3M+IGx1 Y2t5IGZvciB1cyBpJ20gYnJpdGlzaCBhbmQgaGF2ZSBhIGxvdCBvZiBmcmVlIHRpbWUgdG9kYXkK PiAxODo0MCA8ZWxlbnJpbD4gaGUgaGFzIGEgcnVzc2lhbiBuYW1lIGFuZCBoaXMgb3JpZ2luYWwg SVAgYWRkcmVzc2VzIHdlcmUKPiBmcm9tIG1vc2Nvdwo+IDE4OjQwIDxqZXNzPiBpcyBoZSB1cHNl dCB0aGF0IHRoZXJlJ3MgYSBidXQgaGUgd2FudHMgeW91IHRvIGZpeCB0aGF0IHlvdQo+IGhhdmVu J3QgeWV0IGZpeGVkCj4gMTg6NDEgPGhhYXNuPiBhY3R1YWxseSwgeWVzCj4gMTg6NDEgPGVsZW5y aWw+IGhlJ3MgYmVlbiBiYW5uZWQgZnJvbSBtdWx0aXBsZSBvdGhlciBGT1NTIHByb2plY3RzIGFm YWlrCj4gMTg6NDIgPGplc3M+IGxvbAo+IDE4OjQyIDxqZXNzPiBoYWFzbjogaSBndWVzc2VkIGZy b20gdGhlIG5pY2tuYW1lcwo+IDE4OjQyIDxCdGJOPiBNb3JlIGxpa2UuLi4gZXZlcnkgYnVnIGhl IGNvdWxkIGZpbmQKPiAxODo0MiA8aGFhc24+IGhlJ3MgYmVlbiBiYW5uZWQgZnJvbSB0aGUgbXB2 IG9yZ28gb24gZ2l0aHViIGZvciB5ZWFycwo+IDE4OjQyIDxlbGVucmlsPiBhbmQgaGUncyBiZWVu IHRyb2xsaW5nIG91ciBidWd0cmFja2VyIGZvciBhIHZlcnkgbG9uZyB0aW1lCj4gMTg6NDIgPFRy YW5lcHRvcmE+IGl0J3Mgbm90IHRoZSBzYW1lIGd1eSBhcyBaYXF1TCBpcyBpdAo+IDE4OjQzIDxK RUVCPiBUcmFuZXB0b3JhOiBJIHRoaW5rIHRoYXQncyBzYW1lCj4gMTg6NDkgPGFub3RoZXJ8PiBq ZXNzISBPdXIgZmF2b3VyaXRlIHNhbmRjYXQhIEhvdyBkaWQgeW91IGdldCBoZXJlPwo+IFdhdGNo aW5nIGJhbnM/Cj4gMTg6NDkgPGplc3M+IHNhdyBzb21lIGFjY291bnQgcmVnaXN0cmF0aW9ucyB0 aGF0IGxvb2tlZCB3ZWlyZCBhbmQgbm90aWNlZAo+IHRoZXkgd2VyZSBzZWVtaW5nbHkgYmVpbmcg dXNlZCBpbiAjZmZtcGVnCj4gMTg6NTAgPGplc3M+IHRoZSBuYW1lcyBvZiB0aGUgYWNjb3VudHMg c2VlbWVkIGluZGljYXRpdmUgb2YgaGFyYXNzaW5nCj4gKnNvbWVvbmUqCj4gMTg6NTMgPGFub3Ro ZXJ8PiBJIHNlZS4gV2F0Y2hmdWwgc2FuZGNhdCA6KQo+IDE4OjUzIDxqZXNzPiBeXgo+CgoKRGVh ciBMaWJBViBjb3JlIGRldmVsb3BlciwgdGhhbmsgeW91IGZvciB0aGlzIHRyYW5zY3JpcHQuCgoK Cj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBmZm1w ZWctZGV2ZWwgbWFpbGluZyBsaXN0Cj4gZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcKPiBodHRwczov L2ZmbXBlZy5vcmcvbWFpbG1hbi9saXN0aW5mby9mZm1wZWctZGV2ZWwKPgo+IFRvIHVuc3Vic2Ny aWJlLCB2aXNpdCBsaW5rIGFib3ZlLCBvciBlbWFpbAo+IGZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZm bXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCj4KX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZmZtcGVnLWRldmVsIG1haWxpbmcgbGlzdApm Zm1wZWctZGV2ZWxAZmZtcGVnLm9yZwpodHRwczovL2ZmbXBlZy5vcmcvbWFpbG1hbi9saXN0aW5m by9mZm1wZWctZGV2ZWwKClRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFib3ZlLCBvciBlbWFp bApmZm1wZWctZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdpdGggc3ViamVjdCAidW5zdWJzY3Jp YmUiLgo=