From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 2428E4D065 for ; Fri, 30 May 2025 11:00:31 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 3A60C68C89D; Fri, 30 May 2025 14:00:25 +0300 (EEST) Received: from mail-pj1-f53.google.com (mail-pj1-f53.google.com [209.85.216.53]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 0B5B168C5E2 for ; Fri, 30 May 2025 14:00:19 +0300 (EEST) Received: by mail-pj1-f53.google.com with SMTP id 98e67ed59e1d1-310e1f4627aso1963161a91.2 for ; Fri, 30 May 2025 04:00:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1748602817; x=1749207617; darn=ffmpeg.org; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=2w9r3Uj8K+tX+RGPINDk4Cdyo4Lx7WHQqzEJ+Ea5Fg4=; b=Quo0EVKOWaP9q4Ssj53RpcWIyUony5774SIYXe5H6CEyuqQBgMEpjg40Vaift14FM8 5eopLZHNXfw8DXqTGN+3AA1IgaCBl/GgrT5UJCjtxSjb/HyuuUTyOIXYj0/jmzlObabb N8r+tgzprA5DbZo4CfikDdJOqdY4hDHtpuRAi6s/oSNuPbtEp3XIdL+UBVKID+E95zKF hGpMN9JiBqPcwPkrp/XNLwvKv963Kr6C6nxTckR+EW2xjTjDnEpDlEB33MIHUft3hqrZ 04GazcCWH+ReCfnji3kkqmYuu2A8HacH3Nn3NqqJnPOUwN3t90wczGrzlyRMUV3pkEn6 puDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748602817; x=1749207617; h=content-transfer-encoding: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=2w9r3Uj8K+tX+RGPINDk4Cdyo4Lx7WHQqzEJ+Ea5Fg4=; b=Mbyiu8Ze/gKLb0rHYBih3dSQ6yGwqCT3q0h4PtT69qxDuL4iN7t8wVzD9S3MFQi1dI es05d71zcjebk3ggxcfgiJHi8vT03n+TOcastRlSHnQlwhXDb0DuVU9yGi2SPkGuGqQL Alygi/FMJL1gYx434lejAWCOP5OsMmLmp81CPyyTSZWEdS/TcixrWg4IcAeCprOgX4ER Fy1AdmDuVeMgDd8OioQZdIKhjxjdab5kauuSrGawJHpFdRRZV4X72kr/No3PbFnQFvB0 zrnB5OdYlzU2CnWtKHWjSNEvBPhujX0kA9eBLNQATF+bASYr3njYn5JlbZbIz7lIFVHQ cfaw== X-Gm-Message-State: AOJu0YytopuwhCjJ4re+ECfD8H1itH+5O7Qr+9lsVUZsEt7yfPUDAA1H HVkYgzmXtVOqaUJolHwdH6gk55TLANnfA/OrIovM8qPFvf29MwxojgW868dsqDRVGYBcA1aA61E G7tQiPQDO/E5qXboK1kgqMF0GknwyuEy1C39+ X-Gm-Gg: ASbGnctSKOqkIhm/k6fSAoQpvTpJdK7ZqDWL8kz5qxcaVV+9VS4ghItw3X5LWb24CHS jxzqC5gDSWViZTd/+resDg7oWmzdfnl7fhBnpApghdA21zaFpgRna8n0gX37BcQnVnTIhQxIbKL Yb7Ab/v3dT/tddO8qKifkaCWApAbXZi/rKFMpCWBKQ1FQ= X-Google-Smtp-Source: AGHT+IHnXhXE8OWJW8n1aPBa0fZAqJ+CD1et1DL4XEBMEBzGFim1E8byvXpFdZ65I44pG4PBq7r0TsydfNwVYZ2UBYU= X-Received: by 2002:a17:90b:2dcb:b0:312:e9d:3ffa with SMTP id 98e67ed59e1d1-3125045122fmr2343550a91.31.1748602817006; Fri, 30 May 2025 04:00:17 -0700 (PDT) MIME-Version: 1.0 References: <20250527013328.308477-1-ramiro.polla@gmail.com> <20250527013328.308477-4-ramiro.polla@gmail.com> In-Reply-To: From: Ramiro Polla Date: Fri, 30 May 2025 13:00:05 +0200 X-Gm-Features: AX0GCFuLPLa7mv1f1CTB6W61p3bgHTyibTRLnq1wsnpUi1kEjuGawJYC6lqQ9II Message-ID: To: FFmpeg development discussions and patches Subject: Re: [FFmpeg-devel] [PATCH 4/5] ffbuild/common.mak: clean up and move fftools/resources-specific code its Makefile 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: T24gVHVlLCBNYXkgMjcsIDIwMjUgYXQgMTA6MTPigK9QTSBzb2Z0d29ya3ogLgo8c29mdHdvcmt6 LWF0LWhvdG1haWwuY29tQGZmbXBlZy5vcmc+IHdyb3RlOgo+ID4gLS0tLS1PcmlnaW5hbCBNZXNz YWdlLS0tLS0KPiA+IEZyb206IGZmbXBlZy1kZXZlbCA8ZmZtcGVnLWRldmVsLWJvdW5jZXNAZmZt cGVnLm9yZz4gT24gQmVoYWxmIE9mCj4gPiBSYW1pcm8gUG9sbGEKPiA+IFNlbnQ6IERpZW5zdGFn LCAyNy4gTWFpIDIwMjUgMjE6NTkKPiA+IFRvOiBGRm1wZWcgZGV2ZWxvcG1lbnQgZGlzY3Vzc2lv bnMgYW5kIHBhdGNoZXMgPGZmbXBlZy0KPiA+IGRldmVsQGZmbXBlZy5vcmc+Cj4gPiBTdWJqZWN0 OiBSZTogW0ZGbXBlZy1kZXZlbF0gW1BBVENIIDQvNV0gZmZidWlsZC9jb21tb24ubWFrOiBjbGVh biB1cAo+ID4gYW5kIG1vdmUgZmZ0b29scy9yZXNvdXJjZXMtc3BlY2lmaWMgY29kZSBpdHMgTWFr ZWZpbGUKPiA+Cj4gPiBPbiBUdWUsIE1heSAyNywgMjAyNSBhdCA5OjIw4oCvUE0gc29mdHdvcmt6 IC4KPiA+IDxzb2Z0d29ya3otYXQtaG90bWFpbC5jb21AZmZtcGVnLm9yZz4gd3JvdGU6Cj4gPiA+ ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KPiA+ID4gPiBGcm9tOiBmZm1wZWctZGV2ZWwg PGZmbXBlZy1kZXZlbC1ib3VuY2VzQGZmbXBlZy5vcmc+IE9uIEJlaGFsZiBPZgo+ID4gPiA+IFJh bWlybyBQb2xsYQo+ID4gPiA+IFNlbnQ6IERpZW5zdGFnLCAyNy4gTWFpIDIwMjUgMTQ6MzYKPiA+ ID4gPiBUbzogRkZtcGVnIGRldmVsb3BtZW50IGRpc2N1c3Npb25zIGFuZCBwYXRjaGVzIDxmZm1w ZWctCj4gPiA+ID4gZGV2ZWxAZmZtcGVnLm9yZz4KPiA+ID4gPiBTdWJqZWN0OiBSZTogW0ZGbXBl Zy1kZXZlbF0gW1BBVENIIDQvNV0gZmZidWlsZC9jb21tb24ubWFrOiBjbGVhbgo+ID4gdXAKPiA+ ID4gPiBhbmQgbW92ZSBmZnRvb2xzL3Jlc291cmNlcy1zcGVjaWZpYyBjb2RlIGl0cyBNYWtlZmls ZQo+ID4gPiA+Cj4gPiA+ID4gT24gVHVlLCBNYXkgMjcsIDIwMjUgYXQgNjowMuKAr0FNIHNvZnR3 b3JreiAuCj4gPiA+ID4gPHNvZnR3b3Jrei1hdC1ob3RtYWlsLmNvbUBmZm1wZWcub3JnPiB3cm90 ZToKPiA+ID4gPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KPiA+ID4gPiA+ID4gRnJv bTogZmZtcGVnLWRldmVsIDxmZm1wZWctZGV2ZWwtYm91bmNlc0BmZm1wZWcub3JnPiBPbiBCZWhh bGYKPiA+IE9mCj4gPiA+ID4gUmFtaXJvIFBvbGxhCj4gPiA+ID4gPiA+IFNlbnQ6IERpZW5zdGFn LCAyNy4gTWFpIDIwMjUgMDU6MjkKPiA+ID4gPiA+ID4gVG86IEZGbXBlZyBkZXZlbG9wbWVudCBk aXNjdXNzaW9ucyBhbmQgcGF0Y2hlcyA8ZmZtcGVnLQo+ID4gPiA+IGRldmVsQGZmbXBlZy5vcmc+ Cj4gPiA+ID4gPiA+IFN1YmplY3Q6IFJlOiBbRkZtcGVnLWRldmVsXSBbUEFUQ0ggNC81XSBmZmJ1 aWxkL2NvbW1vbi5tYWs6Cj4gPiBjbGVhbgo+ID4gPiA+IHVwIGFuZCBtb3ZlCj4gPiA+ID4gPiA+ IGZmdG9vbHMvcmVzb3VyY2VzLXNwZWNpZmljIGNvZGUgaXRzIE1ha2VmaWxlCj4gPiA+ID4gPiA+ Cj4gPiA+ID4gPiA+IE9uIFR1ZSwgTWF5IDI3LCAyMDI1IGF0IDQ6MTHigK9BTSBzb2Z0d29ya3og Lgo+ID4gPiA+ID4gPiA8c29mdHdvcmt6LWF0LWhvdG1haWwuY29tQGZmbXBlZy5vcmc+IHdyb3Rl Ogo+ID4gPiA+ID4gPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0KPiA+ID4gPiA+ID4g PiA+IEZyb206IGZmbXBlZy1kZXZlbCA8ZmZtcGVnLWRldmVsLWJvdW5jZXNAZmZtcGVnLm9yZz4g T24KPiA+IEJlaGFsZgo+ID4gPiA+IE9mIFJhbWlybwo+ID4gPiA+ID4gPiBQb2xsYQo+ID4gPiA+ ID4gPiA+ID4gU2VudDogRGllbnN0YWcsIDI3LiBNYWkgMjAyNSAwMzozMwo+ID4gPiA+ID4gPiA+ ID4gVG86IGZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCj4gPiA+ID4gPiA+ID4gPiBTdWJqZWN0OiBb RkZtcGVnLWRldmVsXSBbUEFUQ0ggNC81XSBmZmJ1aWxkL2NvbW1vbi5tYWs6Cj4gPiBjbGVhbgo+ ID4gPiA+IHVwIGFuZCBtb3ZlCj4gPiA+ID4gPiA+ID4gPiBmZnRvb2xzL3Jlc291cmNlcy1zcGVj aWZpYyBjb2RlIGl0cyBNYWtlZmlsZQo+ID4gPiA+ID4gPiA+ID4KPiA+ID4gPiA+ID4gPiA+IC0g SW50ZXJtZWRpYXRlIGZpbGVzIGFyZSBubyBsb25nZXIgcmVtb3ZlZDsKPiA+ID4gPiA+ID4gPgo+ ID4gPiA+ID4gPiA+IFdoeT8gVGhhdCdzIHRoZSB3YXkgaXQncyBtZWFudCB0byB3b3JrIGFuZCBp dCdzIHdvcmtpbmcgZmluZQo+ID4gPiA+ICh3aWxsIHB1c2gKPiA+ID4gPiA+ID4gdG9tb3Jyb3cp Cj4gPiA+ID4gPiA+Cj4gPiA+ID4gPiA+IERlbGV0aW5nIGludGVybWVkaWF0ZSBmaWxlcyBwcmlu dHMgYW4gInJtIiBtZXNzYWdlIGF0IHRoZSBlbmQKPiA+IG9mCj4gPiA+ID4gdGhlCj4gPiA+ID4g PiA+IGJ1aWxkLgo+ID4gPiA+ID4KPiA+ID4gPiA+IFllcywgdGhhdCdzIGNvcnJlY3QuIFRoYXQn cyBob3cgbWFrZSBiZWhhdmVzIGJ5IGRlZmF1bHQuIEkgaGFkCj4gPiBzZXQKPiA+ID4gPiB1cAo+ ID4gPiA+ID4gYSBtaW5pbWFsIHJlcHJvIHRvIHZlcmlmeS4KPiA+ID4gPgo+ID4gPiA+IEJlaW5n IG1ha2UncyBkZWZhdWx0IGJlaGF2aW91ciBkb2Vzbid0IG1lYW4gdGhhdCdzIGhvdyB3ZSB3YW50 IGl0Cj4gPiB0bwo+ID4gPiA+IGJlaGF2ZS4gSSBkb24ndCBsaWtlIG1ha2Ugc2lsZW50bHkgZGVs ZXRpbmcgZmlsZXMuCj4gPiA+Cj4gPiA+IEl0IGRvZXNuJ3QgZG8gaXQgc2lsZW50bHkuCj4gPiA+ Cj4gPiA+Cj4gPiA+ID4gSSBhbHNvIGRvbid0IGxpa2UKPiA+ID4gPiBtYWtlIGxvdWRseSBkZWxl dGluZyBmaWxlcyBhdCB0aGUgZW5kIG9mIHRoZSBidWlsZC4gSSBiZWxpZXZlCj4gPiBvdGhlcnMK PiA+ID4gPiBmZWVsIHRoZSBzYW1lLgo+ID4gPgo+ID4gPiBTaW5jZSB3aGVuIGRvIHdlIG1ha2Ug ZGVjaXNpb25zIGJhc2VkIG9uIHdoZXRoZXIgd2UgbGlrZSB0aGUgbG9nCj4gPiA+IG91dHB1dCBv ciBub3Q/Cj4gPiA+IEFuZCBob3cgZG9lcyBpdCBnbyB0b2dldGhlciB3aGVuIHlvdSBzYXkgeW91 IGRvbid0IHdhbnQgaXQgdG8gaGFwcGVuCj4gPiA+IHNpbGVudGx5IGFuZCB5b3UgYWxzbyBzYXkg dGhhdCB5b3UgZG9uJ3QgbGlrZSB3aGVuIG1ha2UgaW5mb3JtcyB5b3UKPiA+ID4gYWJvdXQgaXQ/ Cj4gPgo+ID4gSSBkb24ndCBsaWtlIG1ha2UgZGVsZXRpbmcgZmlsZXMuCj4gPgo+ID4gPiA+ID4g RnVydGhlciwgSSdtIGFmcmFpZCwgSSBhbHNvIGRvIG5vdCBhZ3JlZSB3aXRoIHRoZSBtb3Zpbmcg YXJvdW5kCj4gPiA+ID4gPiBvZiB0aGUgbWFrZSBydWxlcyBmcm9tIGNvbW1vbi5tYWsuIFRoZXkg YXJlIHRoZXJlIGZvciBnb29kCj4gPiByZWFzb25zOgo+ID4gPiA+ID4KPiA+ID4gPiA+Cj4gPiA+ ID4gPiAxLiBQVFggY29tcHJlc3Npb24gaXMgaGFuZGxlZCB0aGVyZS4gSXQgbWFrZXMgYSBsb3Qg b2Ygc2Vuc2UgdG8KPiA+ID4gPiA+ICAgIGJ1bmRsZSBjb2RlIG9mIHNpbWlsYXIgY29uY2VybiBp bnN0ZWFkIG9mIHNwcmVhZGluZyBpdCBhbGwKPiA+ID4gPiA+ICAgIG92ZXIgbWFueSBmaWxlcwo+ ID4gPiA+Cj4gPiA+ID4gSSBsZWZ0IHB0eCBvdXQgb2YgdGhpcyBwYXRjaHNldCwgYnV0IGl0IGNv dWxkIGJlIGltcHJvdmVkIGFzIHdlbGwuCj4gPiA+ID4gQWxzbywgcHR4IGhhcyBvbmUgY29tbW9u IHN1ZmZpeCBmb3IgbWFueSBkaWZmZXJlbnQgZmlsZXMuCj4gPiBSZXNvdXJjZXMKPiA+ID4gPiBj b3VsZCBiZSBhbnl0aGluZy4KPiA+ID4KPiA+ID4gUGxlYXNlIGRpc2N1c3MgdGhpcyB3aXRoIFRp bW8sIHdoZXRoZXIgaGUgd291bGQgYWdyZWUgdG8gbW92aW5nCj4gPiA+IHRob3NlIHBhdHRlcm4g cnVsZXMgdG8gdGhlIGF2ZmlsdGVyIE1ha2VmaWxlLgo+ID4gPiBJdCBkb2Vzbid0IG1ha2Ugc2Vu c2UgdG8gZG8gaXQgZGlmZmVyZW50bHkgZm9yIHB0eCBhbmQgcmVzb3VyY2UuCj4gPgo+ID4gT2gs IEkgZG9uJ3QgcGxhbiBvbiBtb3ZpbmcgdGhlIHB0eCBmaWxlIHJ1bGVzIG91dCBvZiBjb21tb24u bWFrLiBMaWtlCj4gPiBJIHNhaWQsIHRoZXJlIGlzIG9uZSBjb21tb24gc3VmZml4IGZvciBtYW55 IGRpZmZlcmVudCBmaWxlcy4KPiA+Cj4gPiBJdCBjYW4gYmUgaW1wcm92ZWQgYnkgZGVkdXBsaWNh dGluZyBydWxlcyB0aG91Z2guCj4gPgo+ID4gPiA+ID4gMi4gSXQgYWxsb3dzIHRvIGhhdmUgYSB1 bmlmb3JtIGltcGxlbWVudGF0aW9uIGZvciBhbGwgdGhlCj4gPiA+ID4gY29tcHJlc3Npb24KPiA+ ID4gPiA+ICAgIHdpdGhvdXQgYW55IGRpdmVyZ2VudCBjb2RlIG92ZXIgZGlmZmVyZW50IHBsYWNl cwo+ID4gPiA+ID4KPiA+ID4gPiA+IDMuIFRoZSBydWxlcyBpbiBjb21tb24ubWFrIGFyZSBpbnRl bmRlZCB0byBiZSByZS11c2FibGUuIFNhbWUKPiA+IGxpa2UKPiA+ID4gPiA+ICAgIHB0eCBmaWxl cyBjb3VsZCBvY2N1ciBub3Qgb25seSBpbiBhdmZpbHRlciBidXQgcG9zc2libHkgYWxzbwo+ID4g aW4KPiA+ID4gPiA+ICAgIGF2Y29kZWMsIHRoZSBzYW1lIGlzIHRydWUgZm9yIHJlc291cmNlczoK PiA+ID4gPiA+ICAgIEl0IGlzIHZlcnkgd2VsbCBwb3NzaWJsZSB0aGF0IEZGcHJvYmUgbWlnaHQg Z2V0IHNpbWlsYXIKPiA+IHJlc291cmNlcwo+ID4gPiA+ID4gICAgZm9yIHNvbWUgZ3JhcGggdmlz dWFsaXphdGlvbiBpbiBhIGRpZmZlcmVudCBmb2xkZXIuCj4gPiA+ID4gPiAgICBBbHNvLCB0aGUg aW50ZW50aW9uIGZvciB0aGUgQVZUZXh0Rm9ybWF0IEFQSSBpcyB0aGF0IGl0IGNhbgo+ID4gYmUK PiA+ID4gPiA+ICAgIHVzZWQgZnJvbSB0aGUgbGlicywgZS5nLiBmb3JtYXR0ZWQgZGF0YSBvdXRw dXQgZnJvbSBhIGZpbHRlcgo+ID4gPiA+ID4gICAgb3IgdmlzdWFsaXplZCBhcyBhIGdyYXBoLCBp biB3aGljaCBjYXNlIHRoZSBmaWx0ZXIgd291bGQKPiA+IHJlcXVpcmUKPiA+ID4gPiA+ICAgIHNv bWUgY3NzIG9yIGFsc28gaHRtbCByZXNvdXJjZXMuIFRoYXQncyB3aHkgdGhlIHJ1bGVzIHNob3Vs ZAo+ID4gPiA+ID4gICAgcmVtYWluIGluIGNvbW1vbi5tYWsKPiA+ID4gPgo+ID4gPiA+IFJlc291 cmNlcyBhcmUgY3VycmVudGx5IGNlbnRyYWxpemVkIGluIGZmdG9vbHMvcmVzb3VyY2VzLiBOZXcK PiA+ID4gPiByZXNvdXJjZXMgd291bGQgYWxzbyBuZWVkIHRvIGJlIGFkZGVkIHRvIHJlc21hbi5j IGFuZCByZXNtYW4uaC4KPiA+ID4gPgo+ID4gPiA+IEhvdyBkbyB5b3UgcGxhbiBvbiBhZGRpbmcg bmV3IHJlc291cmNlcyB0byBkaWZmZXJlbnQgcGFydHMgb2YKPiA+IEZGbXBlZywKPiA+ID4gPiBs aWtlIGZmcHJvYmUgb3IgYXZmaWx0ZXI/IEhvdyB3aWxsIGZpbGVzIGJlIGxhaWQgb3V0IGluIHRo ZQo+ID4gZGlyZWN0b3J5Cj4gPiA+ID4gc3RydWN0dXJlLCBhbmQgaG93IHdpbGwgdGhleSBiZSBp bmNsdWRlZCBpbiB0aGUgcmVzb3VyY2UgbWFuYWdlcj8KPiA+ID4gPiBIYXZpbmcgYSBjbGVhciBw bGFuIHdpbGwgaGVscCB1cyBtb3ZpbmcgZm9yd2FyZC4KPiA+ID4KPiA+ID4gSSBoYXZlIG1vcmUg cmVzb3VyY2VzIGluIG15IHdvcmsgYnJhbmNoIHdoaWNoIGFyZSBmb3IgdXNlIGJ5IEZGcHJvYmUK PiA+ID4gKHNvIHdlJ3JlIG5vdCB0YWxraW5nIGFib3V0IGh5cG90aGV0aWNhbCBjYXNlcyBoZXJl KS4gVGhlcmUsIGFsbAo+ID4gPiByZXNvdXJjZXMgZ28gaW50byBib3RoIHRvb2xzIC0gd2hpY2gg d291bGQgcHJvYmFibHkgYmUgb2JqZWN0ZWQuCj4gPiA+Cj4gPiA+IFRoZSBhbnN3ZXIgaXMgdGhh dCB0aGVyZSdzIG5vIGNsZWFyIHBsYW4geWV0LiBLZWVwaW5nIHRoZSBydWxlcwo+ID4gPiBpbiBj b21tb24ubWFrIHByb3ZpZGVzIHRoZSBmbGV4aWJpbGl0eSB0aGF0IG1pZ2h0IGJlIHJlcXVpcmVk LCB3aGVuCj4gPiA+IGdvaW5nIGZvcndhcmQuCj4gPgo+ID4gT2ssIEknbGwgbW92ZSBpdCBiYWNr IHRvIGNvbW1vbi5tYWsuIEJ1dCBhcyBsb25nIGFzIGl0J3Mgb25lIHJ1bGUgcGVyCj4gPiBhY3Rp b24sIGFuZCBub3QgbXVsdGlwbGUgcGVyIGZpbGUgdHlwZS4KPiA+Cj4gPiBQbGVhc2UgY29tZSB1 cCB3aXRoIGEgcGxhbiBvbiBob3cgdG8gYWRkIHJlc291cmNlIGZpbGVzIGZyb20gZGlmZmVyZW50 Cj4gPiBwbGFjZXMgaW4gdGhlIGNvZGViYXNlLCBhbmQgaG93IHRvIGluY2x1ZGUgdGhlbSBpbiB0 aGUgcmVzb3VyY2UKPiA+IG1hbmFnZXIuIEJlY2F1c2UgY3VycmVudGx5IGl0J3Mgbm90IHZlcnkg ZmxleGlibGUuCj4KPiBTdXJlIEkgd2lsbCwgYnV0IGZpcnN0IG9mIGFsbCwgd2UgbmVlZCB0byBn ZXQgdGhlIHdheSBvZiBidWlsZGluZwo+IGludGVybWVkaWF0ZXMgc2V0dGxlZC4gSSdtIGNvbnNp ZGVyaW5nIHRoZSB3YXkgeW91IGFyZSBwcm9wb3NpbmcKPiAoa2VlcGluZyBpbnRlcm1lZGlhdGVz KSBhcyBpbmZlcmlvciBhbmQgYWdhaW5zdCB0aGUgaW50ZW5kZWQgYmVoYXZpb3IKPiBvZiBtYWtl LiBXaGF0J3MgYmVlbiB0aGVyZSBiZWZvcmUsIGhhcyBvbmx5IGJlZW4gYSB3b3JrYXJvdW5kIHRv IGF2b2lkCj4gcmVidWlsZHMgdHJpZ2dlcmVkIGJ5IGRlcGVuZGVuY3kgZ2VuZXJhdGlvbi4KPiBJ biB0dXJuLCBJIGRvIG5vdCBhZ3JlZSB0byB0dXJuIGJhY2sgdG8gdGhhdCB1Z2x5IGFuZCBtb3Jl IGNvbXBsaWNhdGVkCj4gd29ya2Fyb3VuZCwgbm93IHRoYXQgdGhlIG9yaWdpbmFsIHByb2JsZW0g KHdoaWNoIGxlZCB0byB0aGF0IHdvcmthcm91bmQpCj4gaGFzIGJlZW4gaWRlbnRpZmllZCBhbmQg c29sdmVkLgoKSSd2ZSBzcGxpdCB0aGUgcGF0Y2hzZXQgaW4gdHdvIHBhcnRzIGFuZCBzZW50IGEg bmV3IHJldmlzaW9uIGZvciB0aGUKcmVzb3VyY2UgbWFuYWdlciBwYXJ0LgoKSSBkb24ndCBsaWtl IGludGVybWVkaWF0ZSBmaWxlcyBidXQgSSBsZWZ0IGl0IGxpa2UgdGhhdCBmb3Igbm93IHRvIHRy eQphbmQgZ2V0IHRoaXMgbWVyZ2VkIG1vcmUgcXVpY2tseS4KClJhbWlybwpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpmZm1wZWctZGV2ZWwgbWFpbGluZyBs aXN0CmZmbXBlZy1kZXZlbEBmZm1wZWcub3JnCmh0dHBzOi8vZmZtcGVnLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2ZmbXBlZy1kZXZlbAoKVG8gdW5zdWJzY3JpYmUsIHZpc2l0IGxpbmsgYWJvdmUsIG9y IGVtYWlsCmZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBlZy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1 YnNjcmliZSIuCg==