Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1gm5MW-0008Tf-Gr for pgsql-hackers@arkaria.postgresql.org; Tue, 22 Jan 2019 23:21:45 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1gm5MV-0000Sm-0A for pgsql-hackers@arkaria.postgresql.org; Tue, 22 Jan 2019 23:21:43 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1gm5MU-0000SZ-Lz for pgsql-hackers@lists.postgresql.org; Tue, 22 Jan 2019 23:21:42 +0000 Received: from smtp-fw-6002.amazon.com ([52.95.49.90]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1gm5MR-000536-Ge for pgsql-hackers@postgresql.org; Tue, 22 Jan 2019 23:21:42 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.com; i=@amazon.com; q=dns/txt; s=amazon201209; t=1548199299; x=1579735299; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=dWA3UEyJHECsyqoDl4a/b5Nr+vCwC7C9GLDB3romeTk=; b=ERSSk59jLrXg/RkwOJ9ZkVvBMODK6Rcej45jBl9Rw2r7tj/LOcZtsL83 S8rh2rIhlrUZyktgXe6GuNmqf6/dqoms2Xs+T6QqA5dspu4FDfKlMGMqI Gjf7MYA8K4wN3toyixYzSqAQSfM4k0Ls2jTcTtxzxl0Mspx+k0RhQPnHn Y=; X-Amazon-filename: v4-0001-Adjust-vacuumdb-test-regex-in-preparation-for-alw.patch, v4-0002-Always-use-a-catalog-query-to-discover-tables-to-.patch, v4-0003-Add-min-xid-age-and-min-mxid-age-options-to-vacuu.patch X-IronPort-AV: E=Sophos;i="5.56,253,1539648000"; d="scan'208,223";a="383048550" Received: from iad6-co-svc-p1-lb1-vlan3.amazon.com (HELO email-inbound-relay-2a-d0be17ee.us-west-2.amazon.com) ([10.124.125.6]) by smtp-border-fw-out-6002.iad6.amazon.com with ESMTP; 22 Jan 2019 23:21:35 +0000 Received: from EX13MTAUWC001.ant.amazon.com (pdx1-ws-svc-p6-lb9-vlan2.pdx.amazon.com [10.236.137.194]) by email-inbound-relay-2a-d0be17ee.us-west-2.amazon.com (Postfix) with ESMTPS id E8F55A247C; Tue, 22 Jan 2019 23:21:34 +0000 (UTC) Received: from EX13D03UWC004.ant.amazon.com (10.43.162.49) by EX13MTAUWC001.ant.amazon.com (10.43.162.135) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Tue, 22 Jan 2019 23:21:34 +0000 Received: from EX13D03UWC004.ant.amazon.com (10.43.162.49) by EX13D03UWC004.ant.amazon.com (10.43.162.49) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Tue, 22 Jan 2019 23:21:33 +0000 Received: from EX13D03UWC004.ant.amazon.com ([10.43.162.49]) by EX13D03UWC004.ant.amazon.com ([10.43.162.49]) with mapi id 15.00.1367.000; Tue, 22 Jan 2019 23:21:33 +0000 From: "Bossart, Nathan" To: Michael Paquier CC: Masahiko Sawada , Robert Haas , "pgsql-hackers@postgresql.org" Subject: Re: A few new options for vacuumdb Thread-Topic: A few new options for vacuumdb Thread-Index: AQHUl9xu8aMC9yfhG06pgjLAC3hejaWG4TQAgACSAwCAAfejgP//oXAAgBZvvQCABCXhgIABGu8AgACztICAAM7ggIAAB18AgAAyXQCAAU97AIASLWaAgAELwgCAAJrMAA== Date: Tue, 22 Jan 2019 23:21:32 +0000 Message-ID: References: <33F59F9F-78A6-4ECE-BFE0-B1E4AAF40094@amazon.com> <579F2B3A-4EA5-4032-AAD9-4AEE9219A4AB@amazon.com> <20190108020300.GH22498@paquier.xyz> <20190109010637.GC21835@paquier.xyz> <20190109043316.GH21835@paquier.xyz> <5C971918-E566-41AB-895A-C4793D56B041@amazon.com> <20190122060730.GD8719@paquier.xyz> In-Reply-To: <20190122060730.GD8719@paquier.xyz> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-ms-exchange-messagesentrepresentingtype: 1 x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.43.160.245] Content-Type: multipart/mixed; boundary="_004_F716EB060CBE43429CFA23409319B52Aamazoncom_" MIME-Version: 1.0 Precedence: Bulk List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --_004_F716EB060CBE43429CFA23409319B52Aamazoncom_ Content-Type: text/plain; charset="utf-8" Content-ID: <3F7B749A74898944A85E97B4E49E322A@amazon.com> Content-Transfer-Encoding: base64 T24gMS8yMS8xOSwgMTA6MDggUE0sICJNaWNoYWVsIFBhcXVpZXIiIDxtaWNoYWVsQHBhcXVpZXIu eHl6PiB3cm90ZToNCj4gT24gTW9uLCBKYW4gMjEsIDIwMTkgYXQgMTA6MDk6MDlQTSArMDAwMCwg Qm9zc2FydCwgTmF0aGFuIHdyb3RlOg0KPj4gSGVyZSdzIGEgbmV3IHBhdGNoIHNldCB0aGF0IHNo b3VsZCBhZGRyZXNzIHRoZSBmZWVkYmFjayBpbiB0aGlzDQo+PiB0aHJlYWQuICBUaGUgY2hhbmdl cyBpbiB0aGlzIHZlcnNpb24gaW5jbHVkZToNCj4+IA0KPj4gIC0gMDAwMSBpcyBhIHNtYWxsIGZp eCB0byB0aGUgJ3ZhY3V1bWRiIC0tZGlzYWJsZS1wYWdlLXNraXBwaW5nJw0KPj4gICAgZG9jdW1l bnRhdGlvbi4gIE15IHN1Z2dlc3Rpb24gaXMgdG8ga2VlcCBpdCBzaG9ydCBhbmQgc2ltcGxlIGxp a2UNCj4+ICAgIC0tZnVsbCwgLS1mcmVlemUsIC0tc2tpcC1sb2NrZWQsIC0tdmVyYm9zZSwgYW5k IC0tYW5hbHl6ZS4gIFRoZQ0KPj4gICAgRElTQUJMRV9QQUdFX1NLSVBQSU5HIG9wdGlvbiBpcyB3 ZWxsLWRlc2NyaWJlZCBpbiB0aGUgVkFDVVVNDQo+PiAgICBkb2N1bWVudGF0aW9uLCBhbmQgSU1P IGl0IGlzIHJlYXNvbmFibHkgb2J2aW91cyB0aGF0IHN1Y2ggdmFjdXVtZGINCj4+ICAgIG9wdGlv bnMgY29ycmVzcG9uZCB0byB0aGUgVkFDVVVNIG9wdGlvbnMuDQo+DQo+IE9rYXksIGNvbW1pdHRl ZCB0aGlzIG9uZS4NCg0KVGhhbmtzLg0KDQo+IFJlZ2FyZGluZyB0aGUgc2VhcmNoX3BhdGggYnVz aW5lc3MsIHRoZXJlIGlzIGFjdHVhbGx5IHNpbWlsYXIgYnVzaW5lc3MNCj4gaW4gZXhwYW5kX3Rh YmxlX25hbWVfcGF0dGVybnMoKSBmb3IgcGdfZHVtcCBpZiB5b3UgbG9vayBjbG9zZSBieSwgc28N Cj4gYXMgdXNlcnMgY2FsbGluZyAtLXRhYmxlIGRvbid0IGhhdmUgdG8gc3BlY2lmeSB0aGUgc2No ZW1hLCBhbmQganVzdA0KPiBzdGljayB3aXRoIHBhdHRlcm5zLg0KDQpJIHNlZS4gIFRoZSAiV0hF UkUgYy5yZWxraW5kLi4uIiBjbGF1c2UgbG9va3MgYSBiaXQgZGlmZmVyZW50IHRoYW4NCndoYXQg SSBoYXZlLCBzbyBJJ3ZlIGFsdGVyZWQgdmFjdXVtZGIncyBjYXRhbG9nIHF1ZXJ5IHRvIG1hdGNo LiAgVGhpcw0Kd2FzIGNoYW5nZWQgaW4gZXhwYW5kX3RhYmxlX25hbWVfcGF0dGVybnMoKSBhcyBw YXJ0IG9mIDU4MmVkYzM2OWNkIGZvcg0KYSBzZWN1cml0eSBmaXgsIHNvIHdlIHNob3VsZCBwcm9i YWJseSBkbyBzb21ldGhpbmcgc2ltaWxhciBoZXJlLg0KDQo+ICsgICAvKg0KPiArICAgICogUHJl cGFyZSB0aGUgbGlzdCBvZiB0YWJsZXMgdG8gcHJvY2VzcyBieSBxdWVyeWluZyB0aGUgY2F0YWxv Z3MuDQo+ICsgICAgKg0KPiArICAgICogU2luY2Ugd2UgZXhlY3V0ZSB0aGUgY29uc3RydWN0ZWQg cXVlcnkgd2l0aCB0aGUgZGVmYXVsdCBzZWFyY2hfcGF0aA0KPiArICAgICogKHdoaWNoIGNvdWxk IGJlIHVuc2FmZSksIGl0IGlzIGltcG9ydGFudCB0byBmdWxseSBxdWFsaWZ5IGV2ZXJ5dGhpbmcu DQo+ICsgICAgKi8NCj4gSXQgaXMgbm90IG9ubHkgaW1wb3J0YW50LCBidXQgYWxzbyBhYnNvbHV0 ZWx5IG1hbmRhdG9yeSwgc28gbGV0J3MgbWFrZQ0KPiB0aGUgY29tbWVudCBpbnNpc3RpbmcgaGFy ZGVyIG9uIHRoYXQgcG9pbnQuICBGcm9tIHRoaXMgcG9pbnQgb2YgdmlldywNCj4gdGhlIHF1ZXJ5 IHRoYXQgeW91IGFyZSBidWlsZGluZyBpcyB2aXNpYmx5IGNvcnJlY3QuDQoNCkkndmUgdXBkYXRl ZCB0aGUgY29tbWVudCBhcyBzdWdnZXN0ZWQuDQoNCj4gKyAgICAgICBhcHBlbmRTdHJpbmdMaXRl cmFsQ29ubigmY2F0YWxvZ19xdWVyeSwganVzdF90YWJsZSwgY29ubik7DQo+ICsgICAgICAgYXBw ZW5kUFFFeHBCdWZmZXIoJmNhdGFsb2dfcXVlcnksICI6OnBnX2NhdGFsb2cucmVnY2xhc3NcbiIp Ow0KPiArDQo+ICsgICAgICAgcGdfZnJlZShqdXN0X3RhYmxlKTsNCj4gKw0KPiArICAgICAgIGNl bGwgPSBjZWxsLT5uZXh0Ow0KPiArICAgICAgIGlmIChjZWxsID09IE5VTEwpDQo+ICsgICAgICAg ICAgIGFwcGVuZFBRRXhwQnVmZmVyKCZjYXRhbG9nX3F1ZXJ5LCAiIClcbiIpOw0KPiBIbS4gIEl0 IHNlZW1zIHRvIG1lIHRoYXQgeW91IGFyZSBkdXBsaWNhdGluZyB3aGF0DQo+IHByb2Nlc3NTUUxO YW1lUGF0dGVybigpIGRvZXMsIHNvIHdlIG91Z2h0IHRvIHVzZSBpdC4gIEFuZCBpdCBpcw0KPiBw b3NzaWJsZSB0byBjb250cm9sIHRoZSBnZW5lcmF0aW9uIG9mIHRoZSBkaWZmZXJlbnQgV0hFUkUg Y2xhdXNlcyB3aXRoDQo+IGEgc2luZ2xlIHF1ZXJ5IGJhc2VkIG9uIHRoZSBudW1iZXIgb2YgZWxl bWVudHMgaW4gdGhlIGxpc3QuICBQZXJoYXBzIEkNCj4gYW0gbWlzc2luZyBzb21ldGhpbmc/ICBJ dCBsb29rcyB1bm5lY2Vzc2FyeSB0byBleHBvcnQNCj4gc3BsaXRfdGFibGVfY29sdW1uc19zcGVj KCkgYXMgd2VsbC4NCg0KSSdtIHNvcnJ5LCBJIGRvbid0IHF1aXRlIGZvbGxvdyB0aGlzLiAgQUZB SUNUIHByb2Nlc3NTUUxOYW1lUGF0dGVybigpDQppcyBmb3IgZ2VuZXJhdGluZyBXSEVSRSBjbGF1 c2VzIGJhc2VkIG9uIGEgd2lsZGNhcmQtcGF0dGVybiBzdHJpbmcgZm9yDQpwc3FsIGFuZCBwZ19k dW1wLiAgVGhpcyBwb3J0aW9uIG9mIHRoZSBwYXRjaCBpcyBnZW5lcmF0aW5nIGEgV0hFUkUNCmNs YXVzZSB0byBmaWx0ZXIgb25seSBmb3IgdGhlIHRhYmxlcyBsaXN0ZWQgdmlhIC0tdGFibGUsIGFu ZCBJIGRvbid0DQp0aGluayB0aGUgLS10YWJsZSBvcHRpb24gY3VycmVudGx5IGFjY2VwdHMgcGF0 dGVybnMuICBTaW5jZSB5b3UgY2FuDQphbHNvIHByb3ZpZGUgYSBsaXN0IG9mIGNvbHVtbnMgd2l0 aCB0aGUgLS10YWJsZSBvcHRpb24sIEkgYW0gdXNpbmcNCnNwbGl0X3RhYmxlX2NvbHVtbnNfc3Bl YygpIHRvIHJldHJpZXZlIG9ubHkgdGhlIHRhYmxlIG5hbWUgZm9yIHRoZSBPSUQNCmxvb2t1cC4N Cg0KPiAtICAgcXIvc3RhdGVtZW50OiBBTkFMWVpFOy8sDQo+ICsgICBxci9zdGF0ZW1lbnQ6IEFO QUxZWkUgcGdfY2F0YWxvZ1wuLywNCj4gT3Igd2UgY291bGQganVzdCB1c2UgIkFOQUxZWkUgXC47 LyIsIHBlcmhhcHMgcGF0Y2hpbmcgaXQgZmlyc3QuDQo+IFBlcmhhcHMgbXkgcmVnZXhwIGhlcmUg aXMgaW5jb3JyZWN0LCBidXQgSSBqdXN0IG1lYW4gdG8gY2hlY2sgZm9yIGFuDQo+IEFOQUxZWkUg cXVlcnkgd2hpY2ggYmVnaW5zIGJ5ICJBTkFMWVpFICIgYW5kIGZpbmlzaGVzIHdpdGggIjsiLA0K PiB3aXRob3V0IGNhcmluZyBhYm91dCB3aGF0IGlzIGluLWJldHdlZW4uICBUaGlzIHdvdWxkIG1h a2UgdGhlIHRlc3RzDQo+IG1vcmUgcG9ydGFibGUuDQoNClN1cmUsIEkndmUgc3BsaXQgdGhpcyBv dXQgaW50byBhIHNlcGFyYXRlIHBhdGNoLg0KDQo+ICskbm9kZS0+aXNzdWVzX3NxbF9saWtlKA0K PiArICAgWyAndmFjdXVtZGInLCAnLS10YWJsZT1wZ19jbGFzcycsICctLW1pbi1teGlkLWFnZT0x MjM0NTY3ODknLA0KPiAncG9zdGdyZXMnXSwNCj4gKyAgIHFyL0FORCBHUkVBVEVTVFwocGdfY2F0 YWxvZy5teGlkX2FnZVwoYy5yZWxtaW5teGlkXCksDQo+IHBnX2NhdGFsb2cubXhpZF9hZ2VcKHQu cmVsbWlubXhpZFwpXCkgT1BFUkFUT1JcKHBnX2NhdGFsb2cuPj1cKSAxMjM0NTY3ODkvLA0KPiAr ICAgJ3ZhY3V1bWRiIC0tdGFibGUgLS1taW4tbXhpZC1hZ2UnKTsNCj4gKyRub2RlLT5pc3N1ZXNf c3FsX2xpa2UoDQo+ICsgICBbICd2YWN1dW1kYicsICctLW1pbi14aWQtYWdlPTk4NzY1NDMyMScs ICdwb3N0Z3JlcycgXSwNCj4gKyAgIHFyL0FORCBHUkVBVEVTVFwocGdfY2F0YWxvZy5hZ2VcKGMu cmVsZnJvemVueGlkXCksDQo+IHBnX2NhdGFsb2cuYWdlXCh0LnJlbGZyb3plbnhpZFwpXCkgT1BF UkFUT1JcKHBnX2NhdGFsb2cuPj1cKSA5ODc2NTQzMjEvLA0KPiArICAgJ3ZhY3V1bWRiIC0tbWlu LXhpZC1hZ2UnKTsNCj4gSXQgbWF5IGJlIGJldHRlciB0byB1c2UgbnVtYmVycyB3aGljaCBtYWtl IHN1cmUgdGhhdCBubyByZWxhdGlvbnMgYXJlDQo+IGFjdHVhbGx5IGZldGNoZWQsIHNvIGFzIGlm IHRoZSBzdXJyb3VuZGluZyB0ZXN0cyBhcmUgbWVzc2VkIHVwIHdlDQo+IG5ldmVyIG1ha2UgdGhl bSBsb25nZXIgdGhhbiBuZWNlc3NhcnkganVzdCB0byBjaGVjayB0aGUgc2hhcGUgb2YgdGhlDQo+ IHF1ZXJ5Lg0KDQpJIHRoaW5rIGl0J3MgYWxyZWFkeSBwcmV0dHkgdW5saWtlbHkgdGhhdCBhbnkg bWF0Y2hpbmcgcmVsYXRpb25zIHdvdWxkDQpiZSBmb3VuZCwgYnV0IEkndmUgdXBkYXRlZCB0aGVz ZSB2YWx1ZXMgdG8gYmUgd2l0aGluIHRoZSByYW5nZSB3aGVyZQ0KYW55IG1hdGNoaW5nIGRhdGFi YXNlIGhhcyBhbHJlYWR5IHN0b3BwZWQgYWNjZXB0aW5nIGNvbW1hbmRzIHRvDQpwcmV2ZW50IHdy YXBhcm91bmQuDQoNCk5hdGhhbg0KDQo= --_004_F716EB060CBE43429CFA23409319B52Aamazoncom_ Content-Type: application/octet-stream; name="v4-0001-Adjust-vacuumdb-test-regex-in-preparation-for-alw.patch" Content-Description: v4-0001-Adjust-vacuumdb-test-regex-in-preparation-for-alw.patch Content-Disposition: attachment; filename="v4-0001-Adjust-vacuumdb-test-regex-in-preparation-for-alw.patch"; size=2109; creation-date="Tue, 22 Jan 2019 23:21:32 GMT"; modification-date="Tue, 22 Jan 2019 23:21:32 GMT" Content-ID: Content-Transfer-Encoding: base64 RnJvbSAxY2RiZTE4Mjk3YTEyMjVhMWY4NjY1ZmVmNGU5YjdmNGNiZjY4MzY4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYXRoYW4gQm9zc2FydCA8Ym9zc2FydG5AYW1hem9uLmNvbT4K RGF0ZTogVHVlLCAyMiBKYW4gMjAxOSAyMjozMzowNyArMDAwMApTdWJqZWN0OiBbUEFUQ0ggdjQg MS8zXSBBZGp1c3QgdmFjdXVtZGIgdGVzdCByZWdleCBpbiBwcmVwYXJhdGlvbiBmb3IgYWx3YXlz CiB1c2luZyBhIGNhdGFsb2cgcXVlcnkgdG8gZGlzY292ZXIgdGFibGVzLgoKLS0tCiBzcmMvYmlu L3NjcmlwdHMvdC8xMDBfdmFjdXVtZGIucGwgfCAxNiArKysrKysrKy0tLS0tLS0tCiAxIGZpbGUg Y2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Yy9iaW4vc2NyaXB0cy90LzEwMF92YWN1dW1kYi5wbCBiL3NyYy9iaW4vc2NyaXB0cy90LzEwMF92 YWN1dW1kYi5wbAppbmRleCA3Y2IyNTQyZTQ3Li45NTEyMDJiNDBlIDEwMDY0NAotLS0gYS9zcmMv YmluL3NjcmlwdHMvdC8xMDBfdmFjdXVtZGIucGwKKysrIGIvc3JjL2Jpbi9zY3JpcHRzL3QvMTAw X3ZhY3V1bWRiLnBsCkBAIC0xNSwzNSArMTUsMzUgQEAgJG5vZGUtPnN0YXJ0OwogCiAkbm9kZS0+ aXNzdWVzX3NxbF9saWtlKAogCVsgJ3ZhY3V1bWRiJywgJ3Bvc3RncmVzJyBdLAotCXFyL3N0YXRl bWVudDogVkFDVVVNOy8sCisJcXIvc3RhdGVtZW50OiBWQUNVVU0uKjsvLAogCSdTUUwgVkFDVVVN IHJ1bicpOwogJG5vZGUtPmlzc3Vlc19zcWxfbGlrZSgKIAlbICd2YWN1dW1kYicsICctZicsICdw b3N0Z3JlcycgXSwKLQlxci9zdGF0ZW1lbnQ6IFZBQ1VVTSBcKEZVTExcKTsvLAorCXFyL3N0YXRl bWVudDogVkFDVVVNIFwoRlVMTFwpLio7LywKIAkndmFjdXVtZGIgLWYnKTsKICRub2RlLT5pc3N1 ZXNfc3FsX2xpa2UoCiAJWyAndmFjdXVtZGInLCAnLUYnLCAncG9zdGdyZXMnIF0sCi0JcXIvc3Rh dGVtZW50OiBWQUNVVU0gXChGUkVFWkVcKTsvLAorCXFyL3N0YXRlbWVudDogVkFDVVVNIFwoRlJF RVpFXCkuKjsvLAogCSd2YWN1dW1kYiAtRicpOwogJG5vZGUtPmlzc3Vlc19zcWxfbGlrZSgKIAlb ICd2YWN1dW1kYicsICctemoyJywgJ3Bvc3RncmVzJyBdLAotCXFyL3N0YXRlbWVudDogVkFDVVVN IFwoQU5BTFlaRVwpIHBnX2NhdGFsb2dcLi8sCisJcXIvc3RhdGVtZW50OiBWQUNVVU0gXChBTkFM WVpFXCkuKjsvLAogCSd2YWN1dW1kYiAtemoyJyk7CiAkbm9kZS0+aXNzdWVzX3NxbF9saWtlKAog CVsgJ3ZhY3V1bWRiJywgJy1aJywgJ3Bvc3RncmVzJyBdLAotCXFyL3N0YXRlbWVudDogQU5BTFla RTsvLAorCXFyL3N0YXRlbWVudDogQU5BTFlaRS4qOy8sCiAJJ3ZhY3V1bWRiIC1aJyk7CiAkbm9k ZS0+aXNzdWVzX3NxbF9saWtlKAogCVsgJ3ZhY3V1bWRiJywgJy0tZGlzYWJsZS1wYWdlLXNraXBw aW5nJywgJ3Bvc3RncmVzJyBdLAotCXFyL3N0YXRlbWVudDogVkFDVVVNIFwoRElTQUJMRV9QQUdF X1NLSVBQSU5HXCk7LywKKwlxci9zdGF0ZW1lbnQ6IFZBQ1VVTSBcKERJU0FCTEVfUEFHRV9TS0lQ UElOR1wpLio7LywKIAkndmFjdXVtZGIgLS1kaXNhYmxlLXBhZ2Utc2tpcHBpbmcnKTsKICRub2Rl LT5pc3N1ZXNfc3FsX2xpa2UoCiAJWyAndmFjdXVtZGInLCAnLS1za2lwLWxvY2tlZCcsICdwb3N0 Z3JlcycgXSwKLQlxci9zdGF0ZW1lbnQ6IFZBQ1VVTSBcKFNLSVBfTE9DS0VEXCk7LywKKwlxci9z dGF0ZW1lbnQ6IFZBQ1VVTSBcKFNLSVBfTE9DS0VEXCkuKjsvLAogCSd2YWN1dW1kYiAtLXNraXAt bG9ja2VkJyk7CiAkbm9kZS0+aXNzdWVzX3NxbF9saWtlKAogCVsgJ3ZhY3V1bWRiJywgJy0tc2tp cC1sb2NrZWQnLCAnLS1hbmFseXplLW9ubHknLCAncG9zdGdyZXMnIF0sCi0JcXIvc3RhdGVtZW50 OiBBTkFMWVpFIFwoU0tJUF9MT0NLRURcKTsvLAorCXFyL3N0YXRlbWVudDogQU5BTFlaRSBcKFNL SVBfTE9DS0VEXCkuKjsvLAogCSd2YWN1dW1kYiAtLXNraXAtbG9ja2VkIC0tYW5hbHl6ZS1vbmx5 Jyk7CiAkbm9kZS0+Y29tbWFuZF9mYWlscygKIAlbICd2YWN1dW1kYicsICctLWFuYWx5emUtb25s eScsICctLWRpc2FibGUtcGFnZS1za2lwcGluZycsICdwb3N0Z3JlcycgXSwKLS0gCjIuMTYuNQoK --_004_F716EB060CBE43429CFA23409319B52Aamazoncom_ Content-Type: application/octet-stream; name="v4-0002-Always-use-a-catalog-query-to-discover-tables-to-.patch" Content-Description: v4-0002-Always-use-a-catalog-query-to-discover-tables-to-.patch Content-Disposition: attachment; filename="v4-0002-Always-use-a-catalog-query-to-discover-tables-to-.patch"; size=8758; creation-date="Tue, 22 Jan 2019 23:21:32 GMT"; modification-date="Tue, 22 Jan 2019 23:21:32 GMT" Content-ID: Content-Transfer-Encoding: base64 RnJvbSA5ODgwMzg5NWIyNDIyYTRlN2VmNzhiOTIyZmIxOTVlMTE2YjAyMTEwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYXRoYW4gQm9zc2FydCA8Ym9zc2FydG5AYW1hem9uLmNvbT4K RGF0ZTogVHVlLCAyMiBKYW4gMjAxOSAyMzowODowMSArMDAwMApTdWJqZWN0OiBbUEFUQ0ggdjQg Mi8zXSBBbHdheXMgdXNlIGEgY2F0YWxvZyBxdWVyeSB0byBkaXNjb3ZlciB0YWJsZXMgdG8KIHBy b2Nlc3MgaW4gdmFjdXVtZGIuCgotLS0KIHNyYy9iaW4vc2NyaXB0cy9jb21tb24uYyAgIHwgICAy ICstCiBzcmMvYmluL3NjcmlwdHMvY29tbW9uLmggICB8ICAgMyArCiBzcmMvYmluL3NjcmlwdHMv dmFjdXVtZGIuYyB8IDE0OSArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0t LS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgOTMgaW5zZXJ0aW9ucygrKSwgNjEgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvc3JjL2Jpbi9zY3JpcHRzL2NvbW1vbi5jIGIvc3JjL2Jpbi9zY3JpcHRz L2NvbW1vbi5jCmluZGV4IDQyMTViYzNkNmUuLjQ5MzQwOGQxNWQgMTAwNjQ0Ci0tLSBhL3NyYy9i aW4vc2NyaXB0cy9jb21tb24uYworKysgYi9zcmMvYmluL3NjcmlwdHMvY29tbW9uLmMKQEAgLTI2 NSw3ICsyNjUsNyBAQCBleGVjdXRlTWFpbnRlbmFuY2VDb21tYW5kKFBHY29ubiAqY29ubiwgY29u c3QgY2hhciAqcXVlcnksIGJvb2wgZWNobykKICAqIGZpbmlzaCB1c2luZyB0aGVtLCBwZ19mcmVl KCp0YWJsZSkuICAqY29sdW1ucyBpcyBhIHBvaW50ZXIgaW50byAic3BlYyIsCiAgKiBwb3NzaWJs eSB0byBpdHMgTlVMIHRlcm1pbmF0b3IuCiAgKi8KLXN0YXRpYyB2b2lkCit2b2lkCiBzcGxpdF90 YWJsZV9jb2x1bW5zX3NwZWMoY29uc3QgY2hhciAqc3BlYywgaW50IGVuY29kaW5nLAogCQkJCQkJ IGNoYXIgKip0YWJsZSwgY29uc3QgY2hhciAqKmNvbHVtbnMpCiB7CmRpZmYgLS1naXQgYS9zcmMv YmluL3NjcmlwdHMvY29tbW9uLmggYi9zcmMvYmluL3NjcmlwdHMvY29tbW9uLmgKaW5kZXggN2Mz ODg4Y2VmZC4uZjNhNzYxNmJhZSAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9zY3JpcHRzL2NvbW1vbi5o CisrKyBiL3NyYy9iaW4vc2NyaXB0cy9jb21tb24uaApAQCAtNDgsNiArNDgsOSBAQCBleHRlcm4g dm9pZCBleGVjdXRlQ29tbWFuZChQR2Nvbm4gKmNvbm4sIGNvbnN0IGNoYXIgKnF1ZXJ5LAogZXh0 ZXJuIGJvb2wgZXhlY3V0ZU1haW50ZW5hbmNlQ29tbWFuZChQR2Nvbm4gKmNvbm4sIGNvbnN0IGNo YXIgKnF1ZXJ5LAogCQkJCQkJICBib29sIGVjaG8pOwogCitleHRlcm4gdm9pZCBzcGxpdF90YWJs ZV9jb2x1bW5zX3NwZWMoY29uc3QgY2hhciAqc3BlYywgaW50IGVuY29kaW5nLAorCQkJCQkJIGNo YXIgKip0YWJsZSwgY29uc3QgY2hhciAqKmNvbHVtbnMpOworCiBleHRlcm4gdm9pZCBhcHBlbmRR dWFsaWZpZWRSZWxhdGlvbihQUUV4cEJ1ZmZlciBidWYsIGNvbnN0IGNoYXIgKm5hbWUsCiAJCQkJ CQlQR2Nvbm4gKmNvbm4sIGNvbnN0IGNoYXIgKnByb2duYW1lLCBib29sIGVjaG8pOwogCmRpZmYg LS1naXQgYS9zcmMvYmluL3NjcmlwdHMvdmFjdXVtZGIuYyBiL3NyYy9iaW4vc2NyaXB0cy92YWN1 dW1kYi5jCmluZGV4IGVjN2QwYTMyNmEuLmI3MmU2NWMzNmQgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4v c2NyaXB0cy92YWN1dW1kYi5jCisrKyBiL3NyYy9iaW4vc2NyaXB0cy92YWN1dW1kYi5jCkBAIC0x OSw2ICsxOSw3IEBACiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19jbGFzc19kLmgiCiAKICNpbmNsdWRl ICJjb21tb24uaCIKKyNpbmNsdWRlICJmZV91dGlscy9jb25uZWN0LmgiCiAjaW5jbHVkZSAiZmVf dXRpbHMvc2ltcGxlX2xpc3QuaCIKICNpbmNsdWRlICJmZV91dGlscy9zdHJpbmdfdXRpbHMuaCIK IApAQCAtNjIsOSArNjMsNyBAQCBzdGF0aWMgdm9pZCB2YWN1dW1fYWxsX2RhdGFiYXNlcyh2YWN1 dW1pbmdPcHRpb25zICp2YWNvcHRzLAogCQkJCQkgY29uc3QgY2hhciAqcHJvZ25hbWUsIGJvb2wg ZWNobywgYm9vbCBxdWlldCk7CiAKIHN0YXRpYyB2b2lkIHByZXBhcmVfdmFjdXVtX2NvbW1hbmQo UFFFeHBCdWZmZXIgc3FsLCBQR2Nvbm4gKmNvbm4sCi0JCQkJCSAgIHZhY3V1bWluZ09wdGlvbnMg KnZhY29wdHMsIGNvbnN0IGNoYXIgKnRhYmxlLAotCQkJCQkgICBib29sIHRhYmxlX3ByZV9xdWFs aWZpZWQsCi0JCQkJCSAgIGNvbnN0IGNoYXIgKnByb2duYW1lLCBib29sIGVjaG8pOworCQkJCQkg ICB2YWN1dW1pbmdPcHRpb25zICp2YWNvcHRzLCBjb25zdCBjaGFyICp0YWJsZSk7CiAKIHN0YXRp YyB2b2lkIHJ1bl92YWN1dW1fY29tbWFuZChQR2Nvbm4gKmNvbm4sIGNvbnN0IGNoYXIgKnNxbCwg Ym9vbCBlY2hvLAogCQkJCSAgIGNvbnN0IGNoYXIgKnRhYmxlLCBjb25zdCBjaGFyICpwcm9nbmFt ZSwgYm9vbCBhc3luYyk7CkBAIC0zNTksMTMgKzM1OCwxOCBAQCB2YWN1dW1fb25lX2RhdGFiYXNl KGNvbnN0IGNoYXIgKmRibmFtZSwgdmFjdXVtaW5nT3B0aW9ucyAqdmFjb3B0cywKIAkJCQkJY29u c3QgY2hhciAqcHJvZ25hbWUsIGJvb2wgZWNobywgYm9vbCBxdWlldCkKIHsKIAlQUUV4cEJ1ZmZl ckRhdGEgc3FsOworCVBRRXhwQnVmZmVyRGF0YSBidWY7CisJUFFFeHBCdWZmZXJEYXRhIGNhdGFs b2dfcXVlcnk7CisJUEdyZXN1bHQgICAqcmVzOwogCVBHY29ubgkgICAqY29ubjsKIAlTaW1wbGVT dHJpbmdMaXN0Q2VsbCAqY2VsbDsKIAlQYXJhbGxlbFNsb3QgKnNsb3RzOwogCVNpbXBsZVN0cmlu Z0xpc3QgZGJ0YWJsZXMgPSB7TlVMTCwgTlVMTH07CiAJaW50CQkJaTsKKwlpbnQJCQludHVwczsK IAlib29sCQlmYWlsZWQgPSBmYWxzZTsKIAlib29sCQlwYXJhbGxlbCA9IGNvbmN1cnJlbnRDb25z ID4gMTsKKwlib29sCQlmaXJzdF90YWJsZSA9IHRydWU7CiAJY29uc3QgY2hhciAqc3RhZ2VfY29t bWFuZHNbXSA9IHsKIAkJIlNFVCBkZWZhdWx0X3N0YXRpc3RpY3NfdGFyZ2V0PTE7IFNFVCB2YWN1 dW1fY29zdF9kZWxheT0wOyIsCiAJCSJTRVQgZGVmYXVsdF9zdGF0aXN0aWNzX3RhcmdldD0xMDsg UkVTRVQgdmFjdXVtX2Nvc3RfZGVsYXk7IiwKQEAgLTQxMCw1NCArNDE0LDkxIEBAIHZhY3V1bV9v bmVfZGF0YWJhc2UoY29uc3QgY2hhciAqZGJuYW1lLCB2YWN1dW1pbmdPcHRpb25zICp2YWNvcHRz LAogCQlmZmx1c2goc3Rkb3V0KTsKIAl9CiAKLQlpbml0UFFFeHBCdWZmZXIoJnNxbCk7Ci0KIAkv KgotCSAqIElmIGEgdGFibGUgbGlzdCBpcyBub3QgcHJvdmlkZWQgYW5kIHdlJ3JlIHVzaW5nIG11 bHRpcGxlIGNvbm5lY3Rpb25zLAotCSAqIHByZXBhcmUgdGhlIGxpc3Qgb2YgdGFibGVzIGJ5IHF1 ZXJ5aW5nIHRoZSBjYXRhbG9ncy4KKwkgKiBQcmVwYXJlIHRoZSBsaXN0IG9mIHRhYmxlcyB0byBw cm9jZXNzIGJ5IHF1ZXJ5aW5nIHRoZSBjYXRhbG9ncy4KKwkgKgorCSAqIFNpbmNlIHdlIGV4ZWN1 dGUgdGhlIGNvbnN0cnVjdGVkIHF1ZXJ5IHdpdGggdGhlIGRlZmF1bHQgc2VhcmNoX3BhdGgKKwkg KiAod2hpY2ggY291bGQgYmUgdW5zYWZlKSwgZXZlcnl0aGluZyBpbiB0aGlzIHF1ZXJ5IG11c3Qg YmUgZnVsbHkKKwkgKiBxdWFsaWZpZWQuCiAJICovCi0JaWYgKHBhcmFsbGVsICYmICghdGFibGVz IHx8ICF0YWJsZXMtPmhlYWQpKQorCWluaXRQUUV4cEJ1ZmZlcigmY2F0YWxvZ19xdWVyeSk7CisJ YXBwZW5kUFFFeHBCdWZmZXIoJmNhdGFsb2dfcXVlcnksCisJCQkJCSAgIlNFTEVDVCBjLnJlbG5h bWUsIG5zLm5zcG5hbWUiCisJCQkJCSAgIiBGUk9NIHBnX2NhdGFsb2cucGdfY2xhc3MgY1xuIgor CQkJCQkgICIgSk9JTiBwZ19jYXRhbG9nLnBnX25hbWVzcGFjZSBucyIKKwkJCQkJICAiIE9OIGMu cmVsbmFtZXNwYWNlIE9QRVJBVE9SKHBnX2NhdGFsb2cuPSkgbnMub2lkXG4iCisJCQkJCSAgIiBM RUZUIEpPSU4gcGdfY2F0YWxvZy5wZ19jbGFzcyB0IgorCQkJCQkgICIgT04gYy5yZWx0b2FzdHJl bGlkIE9QRVJBVE9SKHBnX2NhdGFsb2cuPSkgdC5vaWRcbiIKKwkJCQkJICAiIFdIRVJFIGMucmVs a2luZCBPUEVSQVRPUihwZ19jYXRhbG9nLj0pIEFOWSAoYXJyYXlbIgorCQkJCQkgIENwcEFzU3Ry aW5nMihSRUxLSU5EX1JFTEFUSU9OKSAiLCAiCisJCQkJCSAgQ3BwQXNTdHJpbmcyKFJFTEtJTkRf TUFUVklFVykgIl0pXG4iKTsKKworCWNlbGwgPSB0YWJsZXMgPyB0YWJsZXMtPmhlYWQgOiBOVUxM OworCXdoaWxlIChjZWxsICE9IE5VTEwpCiAJewotCQlQUUV4cEJ1ZmZlckRhdGEgYnVmOwotCQlQ R3Jlc3VsdCAgICpyZXM7Ci0JCWludAkJCW50dXBzOwotCi0JCWluaXRQUUV4cEJ1ZmZlcigmYnVm KTsKLQotCQlyZXMgPSBleGVjdXRlUXVlcnkoY29ubiwKLQkJCQkJCSAgICJTRUxFQ1QgYy5yZWxu YW1lLCBucy5uc3BuYW1lIgotCQkJCQkJICAgIiBGUk9NIHBnX2NsYXNzIGMsIHBnX25hbWVzcGFj ZSBuc1xuIgotCQkJCQkJICAgIiBXSEVSRSByZWxraW5kIElOICgiCi0JCQkJCQkgICBDcHBBc1N0 cmluZzIoUkVMS0lORF9SRUxBVElPTikgIiwgIgotCQkJCQkJICAgQ3BwQXNTdHJpbmcyKFJFTEtJ TkRfTUFUVklFVykgIikiCi0JCQkJCQkgICAiIEFORCBjLnJlbG5hbWVzcGFjZSA9IG5zLm9pZFxu IgotCQkJCQkJICAgIiBPUkRFUiBCWSBjLnJlbHBhZ2VzIERFU0M7IiwKLQkJCQkJCSAgIHByb2du YW1lLCBlY2hvKTsKLQotCQludHVwcyA9IFBRbnR1cGxlcyhyZXMpOwotCQlmb3IgKGkgPSAwOyBp IDwgbnR1cHM7IGkrKykKLQkJewotCQkJYXBwZW5kUFFFeHBCdWZmZXJTdHIoJmJ1ZiwKLQkJCQkJ CQkJIGZtdFF1YWxpZmllZElkKFBRZ2V0dmFsdWUocmVzLCBpLCAxKSwKLQkJCQkJCQkJCQkJCVBR Z2V0dmFsdWUocmVzLCBpLCAwKSkpOworCQljaGFyCSAgICpqdXN0X3RhYmxlOworCQljb25zdCBj aGFyICpqdXN0X2NvbHVtbnM7CiAKLQkJCXNpbXBsZV9zdHJpbmdfbGlzdF9hcHBlbmQoJmRidGFi bGVzLCBidWYuZGF0YSk7Ci0JCQlyZXNldFBRRXhwQnVmZmVyKCZidWYpOworCQlzcGxpdF90YWJs ZV9jb2x1bW5zX3NwZWMoY2VsbC0+dmFsLCBQUWNsaWVudEVuY29kaW5nKGNvbm4pLAorCQkJCQkJ CQkgJmp1c3RfdGFibGUsICZqdXN0X2NvbHVtbnMpOworCisJCWlmIChmaXJzdF90YWJsZSkKKwkJ eworCQkJYXBwZW5kUFFFeHBCdWZmZXIoJmNhdGFsb2dfcXVlcnksICIgQU5EIChcbiAgYy5vaWQg T1BFUkFUT1IocGdfY2F0YWxvZy49KSAiKTsKKwkJCWZpcnN0X3RhYmxlID0gZmFsc2U7CiAJCX0K KwkJZWxzZQorCQkJYXBwZW5kUFFFeHBCdWZmZXIoJmNhdGFsb2dfcXVlcnksICIgIE9SIGMub2lk IE9QRVJBVE9SKHBnX2NhdGFsb2cuPSkgIik7CiAKLQkJdGVybVBRRXhwQnVmZmVyKCZidWYpOwot CQl0YWJsZXMgPSAmZGJ0YWJsZXM7CisJCWFwcGVuZFN0cmluZ0xpdGVyYWxDb25uKCZjYXRhbG9n X3F1ZXJ5LCBqdXN0X3RhYmxlLCBjb25uKTsKKwkJYXBwZW5kUFFFeHBCdWZmZXIoJmNhdGFsb2df cXVlcnksICI6OnBnX2NhdGFsb2cucmVnY2xhc3NcbiIpOwogCi0JCS8qCi0JCSAqIElmIHRoZXJl IGFyZSBtb3JlIGNvbm5lY3Rpb25zIHRoYW4gdmFjdXVtYWJsZSByZWxhdGlvbnMsIHdlIGRvbid0 Ci0JCSAqIG5lZWQgdG8gdXNlIHRoZW0gYWxsLgotCQkgKi8KKwkJcGdfZnJlZShqdXN0X3RhYmxl KTsKKworCQljZWxsID0gY2VsbC0+bmV4dDsKKwkJaWYgKGNlbGwgPT0gTlVMTCkKKwkJCWFwcGVu ZFBRRXhwQnVmZmVyKCZjYXRhbG9nX3F1ZXJ5LCAiIClcbiIpOworCX0KKworCWFwcGVuZFBRRXhw QnVmZmVyKCZjYXRhbG9nX3F1ZXJ5LCAiIE9SREVSIEJZIGMucmVscGFnZXMgREVTQzsiKTsKKwll eGVjdXRlQ29tbWFuZChjb25uLCAiUkVTRVQgc2VhcmNoX3BhdGg7IiwgcHJvZ25hbWUsIGVjaG8p OworCXJlcyA9IGV4ZWN1dGVRdWVyeShjb25uLCBjYXRhbG9nX3F1ZXJ5LmRhdGEsIHByb2duYW1l LCBlY2hvKTsKKwl0ZXJtUFFFeHBCdWZmZXIoJmNhdGFsb2dfcXVlcnkpOworCVBRY2xlYXIoZXhl Y3V0ZVF1ZXJ5KGNvbm4sIEFMV0FZU19TRUNVUkVfU0VBUkNIX1BBVEhfU1FMLAorCQkJCQkJIHBy b2duYW1lLCBlY2hvKSk7CisKKwludHVwcyA9IFBRbnR1cGxlcyhyZXMpOworCWlmIChudHVwcyA9 PSAwKQorCXsKKwkJUFFjbGVhcihyZXMpOworCQlQUWZpbmlzaChjb25uKTsKKwkJcmV0dXJuOwor CX0KKworCWluaXRQUUV4cEJ1ZmZlcigmYnVmKTsKKwlmb3IgKGkgPSAwOyBpIDwgbnR1cHM7IGkr KykKKwl7CisJCWFwcGVuZFBRRXhwQnVmZmVyU3RyKCZidWYsCisJCQkJCQkJIGZtdFF1YWxpZmll ZElkKFBRZ2V0dmFsdWUocmVzLCBpLCAxKSwKKwkJCQkJCQkJCQkJUFFnZXR2YWx1ZShyZXMsIGks IDApKSk7CisKKwkJc2ltcGxlX3N0cmluZ19saXN0X2FwcGVuZCgmZGJ0YWJsZXMsIGJ1Zi5kYXRh KTsKKwkJcmVzZXRQUUV4cEJ1ZmZlcigmYnVmKTsKKwl9CisJdGVybVBRRXhwQnVmZmVyKCZidWYp OworCisJLyoKKwkgKiBJZiB0aGVyZSBhcmUgbW9yZSBjb25uZWN0aW9ucyB0aGFuIHZhY3V1bWFi bGUgcmVsYXRpb25zLCB3ZSBkb24ndCBuZWVkCisJICogdG8gdXNlIHRoZW0gYWxsLgorCSAqLwor CWlmIChwYXJhbGxlbCkKKwl7CiAJCWlmIChjb25jdXJyZW50Q29ucyA+IG50dXBzKQogCQkJY29u Y3VycmVudENvbnMgPSBudHVwczsKIAkJaWYgKGNvbmN1cnJlbnRDb25zIDw9IDEpCiAJCQlwYXJh bGxlbCA9IGZhbHNlOwotCQlQUWNsZWFyKHJlcyk7CiAJfQorCVBRY2xlYXIocmVzKTsKIAogCS8q CiAJICogU2V0dXAgdGhlIGRhdGFiYXNlIGNvbm5lY3Rpb25zLiBXZSByZXVzZSB0aGUgY29ubmVj dGlvbiB3ZSBhbHJlYWR5IGhhdmUKQEAgLTQ5MywxMCArNTM0LDEyIEBAIHZhY3V1bV9vbmVfZGF0 YWJhc2UoY29uc3QgY2hhciAqZGJuYW1lLCB2YWN1dW1pbmdPcHRpb25zICp2YWNvcHRzLAogCQkJ CQkJICAgc3RhZ2VfY29tbWFuZHNbc3RhZ2VdLCBwcm9nbmFtZSwgZWNobyk7CiAJfQogCi0JY2Vs bCA9IHRhYmxlcyA/IHRhYmxlcy0+aGVhZCA6IE5VTEw7CisJaW5pdFBRRXhwQnVmZmVyKCZzcWwp OworCisJY2VsbCA9IGRidGFibGVzLmhlYWQ7CiAJZG8KIAl7Ci0JCWNvbnN0IGNoYXIgKnRhYm5h bWUgPSBjZWxsID8gY2VsbC0+dmFsIDogTlVMTDsKKwkJY29uc3QgY2hhciAqdGFibmFtZSA9IGNl bGwtPnZhbDsKIAkJUGFyYWxsZWxTbG90ICpmcmVlX3Nsb3Q7CiAKIAkJaWYgKENhbmNlbFJlcXVl c3RlZCkKQEAgLTUyOSwxMiArNTcyLDcgQEAgdmFjdXVtX29uZV9kYXRhYmFzZShjb25zdCBjaGFy ICpkYm5hbWUsIHZhY3V1bWluZ09wdGlvbnMgKnZhY29wdHMsCiAJCWVsc2UKIAkJCWZyZWVfc2xv dCA9IHNsb3RzOwogCi0JCS8qCi0JCSAqIFByZXBhcmUgdGhlIHZhY3V1bSBjb21tYW5kLiAgTm90 ZSB0aGF0IGluIHNvbWUgY2FzZXMgdGhpcyByZXF1aXJlcwotCQkgKiBxdWVyeSBleGVjdXRpb24s IHNvIGJlIHN1cmUgdG8gdXNlIHRoZSBmcmVlIGNvbm5lY3Rpb24uCi0JCSAqLwotCQlwcmVwYXJl X3ZhY3V1bV9jb21tYW5kKCZzcWwsIGZyZWVfc2xvdC0+Y29ubmVjdGlvbiwgdmFjb3B0cywgdGFi bmFtZSwKLQkJCQkJCQkgICB0YWJsZXMgPT0gJmRidGFibGVzLCBwcm9nbmFtZSwgZWNobyk7CisJ CXByZXBhcmVfdmFjdXVtX2NvbW1hbmQoJnNxbCwgZnJlZV9zbG90LT5jb25uZWN0aW9uLCB2YWNv cHRzLCB0YWJuYW1lKTsKIAogCQkvKgogCQkgKiBFeGVjdXRlIHRoZSB2YWN1dW0uICBJZiBub3Qg aW4gcGFyYWxsZWwgbW9kZSwgdGhpcyB0ZXJtaW5hdGVzIHRoZQpAQCAtNTQ0LDggKzU4Miw3IEBA IHZhY3V1bV9vbmVfZGF0YWJhc2UoY29uc3QgY2hhciAqZGJuYW1lLCB2YWN1dW1pbmdPcHRpb25z ICp2YWNvcHRzLAogCQlydW5fdmFjdXVtX2NvbW1hbmQoZnJlZV9zbG90LT5jb25uZWN0aW9uLCBz cWwuZGF0YSwKIAkJCQkJCSAgIGVjaG8sIHRhYm5hbWUsIHByb2duYW1lLCBwYXJhbGxlbCk7CiAK LQkJaWYgKGNlbGwpCi0JCQljZWxsID0gY2VsbC0+bmV4dDsKKwkJY2VsbCA9IGNlbGwtPm5leHQ7 CiAJfSB3aGlsZSAoY2VsbCAhPSBOVUxMKTsKIAogCWlmIChwYXJhbGxlbCkKQEAgLTY1OCw5ICs2 OTUsNyBAQCB2YWN1dW1fYWxsX2RhdGFiYXNlcyh2YWN1dW1pbmdPcHRpb25zICp2YWNvcHRzLAog ICovCiBzdGF0aWMgdm9pZAogcHJlcGFyZV92YWN1dW1fY29tbWFuZChQUUV4cEJ1ZmZlciBzcWws IFBHY29ubiAqY29ubiwKLQkJCQkJICAgdmFjdXVtaW5nT3B0aW9ucyAqdmFjb3B0cywgY29uc3Qg Y2hhciAqdGFibGUsCi0JCQkJCSAgIGJvb2wgdGFibGVfcHJlX3F1YWxpZmllZCwKLQkJCQkJICAg Y29uc3QgY2hhciAqcHJvZ25hbWUsIGJvb2wgZWNobykKKwkJCQkJICAgdmFjdXVtaW5nT3B0aW9u cyAqdmFjb3B0cywgY29uc3QgY2hhciAqdGFibGUpCiB7CiAJY29uc3QgY2hhciAqcGFyZW4gPSAi ICgiOwogCWNvbnN0IGNoYXIgKmNvbW1hID0gIiwgIjsKQEAgLTc1MywxNCArNzg4LDggQEAgcHJl cGFyZV92YWN1dW1fY29tbWFuZChQUUV4cEJ1ZmZlciBzcWwsIFBHY29ubiAqY29ubiwKIAkJfQog CX0KIAotCWlmICh0YWJsZSkKLQl7Ci0JCWFwcGVuZFBRRXhwQnVmZmVyQ2hhcihzcWwsICcgJyk7 Ci0JCWlmICh0YWJsZV9wcmVfcXVhbGlmaWVkKQotCQkJYXBwZW5kUFFFeHBCdWZmZXJTdHIoc3Fs LCB0YWJsZSk7Ci0JCWVsc2UKLQkJCWFwcGVuZFF1YWxpZmllZFJlbGF0aW9uKHNxbCwgdGFibGUs IGNvbm4sIHByb2duYW1lLCBlY2hvKTsKLQl9CisJYXBwZW5kUFFFeHBCdWZmZXJDaGFyKHNxbCwg JyAnKTsKKwlhcHBlbmRQUUV4cEJ1ZmZlclN0cihzcWwsIHRhYmxlKTsKIAlhcHBlbmRQUUV4cEJ1 ZmZlckNoYXIoc3FsLCAnOycpOwogfQogCi0tIAoyLjE2LjUKCg== --_004_F716EB060CBE43429CFA23409319B52Aamazoncom_ Content-Type: application/octet-stream; name="v4-0003-Add-min-xid-age-and-min-mxid-age-options-to-vacuu.patch" Content-Description: v4-0003-Add-min-xid-age-and-min-mxid-age-options-to-vacuu.patch Content-Disposition: attachment; filename="v4-0003-Add-min-xid-age-and-min-mxid-age-options-to-vacuu.patch"; size=6847; creation-date="Tue, 22 Jan 2019 23:21:32 GMT"; modification-date="Tue, 22 Jan 2019 23:21:32 GMT" Content-ID: Content-Transfer-Encoding: base64 RnJvbSBhOTdjYzc0ZDg1MTFlYmI0NzU4NWI3ODY1Y2FmOTRhNmI0NDg5MGJkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYXRoYW4gQm9zc2FydCA8Ym9zc2FydG5AYW1hem9uLmNvbT4K RGF0ZTogVHVlLCAyMiBKYW4gMjAxOSAyMzoxMTozMyArMDAwMApTdWJqZWN0OiBbUEFUQ0ggdjQg My8zXSBBZGQgLS1taW4teGlkLWFnZSBhbmQgLS1taW4tbXhpZC1hZ2Ugb3B0aW9ucyB0bwogdmFj dXVtZGIuCgotLS0KIGRvYy9zcmMvc2dtbC9yZWYvdmFjdXVtZGIuc2dtbCAgICB8IDM3ICsrKysr KysrKysrKysrKysrKysrKysrKysrKysrCiBzcmMvYmluL3NjcmlwdHMvdC8xMDBfdmFjdXVtZGIu cGwgfCAxMSArKysrKysrKy0KIHNyYy9iaW4vc2NyaXB0cy92YWN1dW1kYi5jICAgICAgICB8IDUw ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2Vk LCA5NyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9z Z21sL3JlZi92YWN1dW1kYi5zZ21sIGIvZG9jL3NyYy9zZ21sL3JlZi92YWN1dW1kYi5zZ21sCmlu ZGV4IGYzMDQ2Mjc4MDIuLjI5Y2NiYTJhNWEgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9yZWYv dmFjdXVtZGIuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvcmVmL3ZhY3V1bWRiLnNnbWwKQEAgLTE3 Miw2ICsxNzIsNDMgQEAgUG9zdGdyZVNRTCBkb2N1bWVudGF0aW9uCiAgICAgICA8L2xpc3RpdGVt PgogICAgICA8L3Zhcmxpc3RlbnRyeT4KIAorICAgICA8dmFybGlzdGVudHJ5PgorICAgICAgPHRl cm0+PG9wdGlvbj4tLW1pbi1teGlkLWFnZSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ bXhpZF9hZ2U8L3JlcGxhY2VhYmxlPjwvb3B0aW9uPjwvdGVybT4KKyAgICAgIDxsaXN0aXRlbT4K KyAgICAgICA8cGFyYT4KKyAgICAgICAgT25seSBleGVjdXRlIHRoZSB2YWN1dW0gb3IgYW5hbHl6 ZSBjb21tYW5kcyBvbiB0YWJsZXMgd2l0aCBhIG11bHRpeGFjdAorICAgICAgICBJRCBhZ2Ugb2Yg YXQgbGVhc3QgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm14aWRfYWdlPC9yZXBsYWNl YWJsZT4uCisgICAgICAgIFRoaXMgc2V0dGluZyBpcyB1c2VmdWwgZm9yIHByaW9yaXRpemluZyB0 YWJsZXMgdG8gcHJvY2VzcyB0byBwcmV2ZW50CisgICAgICAgIG11bHRpeGFjdCBJRCB3cmFwYXJv dW5kIChzZWUgPHhyZWYKKyAgICAgICAgbGlua2VuZD0idmFjdXVtLWZvci1tdWx0aXhhY3Qtd3Jh cGFyb3VuZCIvPikuCisgICAgICAgPC9wYXJhPgorICAgICAgIDxub3RlPgorICAgICAgICA8cGFy YT4KKyAgICAgICAgIFRoaXMgb3B0aW9uIGlzIG9ubHkgYXZhaWxhYmxlIGZvciBzZXJ2ZXJzIHJ1 bm5pbmcgUG9zdGdyZVNRTCA5LjUgYW5kCisgICAgICAgICBsYXRlci4KKyAgICAgICAgPC9wYXJh PgorICAgICAgIDwvbm90ZT4KKyAgICAgIDwvbGlzdGl0ZW0+CisgICAgIDwvdmFybGlzdGVudHJ5 PgorCisgICAgIDx2YXJsaXN0ZW50cnk+CisgICAgICA8dGVybT48b3B0aW9uPi0tbWluLXhpZC1h Z2UgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnhpZF9hZ2U8L3JlcGxhY2VhYmxlPjwv b3B0aW9uPjwvdGVybT4KKyAgICAgIDxsaXN0aXRlbT4KKyAgICAgICA8cGFyYT4KKyAgICAgICAg T25seSBleGVjdXRlIHRoZSB2YWN1dW0gb3IgYW5hbHl6ZSBjb21tYW5kcyBvbiB0YWJsZXMgd2l0 aCBhIHRyYW5zYWN0aW9uCisgICAgICAgIElEIGFnZSBvZiBhdCBsZWFzdCA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+eGlkX2FnZTwvcmVwbGFjZWFibGU+LgorICAgICAgICBUaGlzIHNl dHRpbmcgaXMgdXNlZnVsIGZvciBwcmlvcml0aXppbmcgdGFibGVzIHRvIHByb2Nlc3MgdG8gcHJl dmVudAorICAgICAgICB0cmFuc2FjdGlvbiBJRCB3cmFwYXJvdW5kIChzZWUgPHhyZWYgbGlua2Vu ZD0idmFjdXVtLWZvci13cmFwYXJvdW5kIi8+KS4KKyAgICAgICA8L3BhcmE+CisgICAgICAgPG5v dGU+CisgICAgICAgIDxwYXJhPgorICAgICAgICAgVGhpcyBvcHRpb24gaXMgb25seSBhdmFpbGFi bGUgZm9yIHNlcnZlcnMgcnVubmluZyBQb3N0Z3JlU1FMIDcuMiBhbmQKKyAgICAgICAgIGxhdGVy LgorICAgICAgICA8L3BhcmE+CisgICAgICAgPC9ub3RlPgorICAgICAgPC9saXN0aXRlbT4KKyAg ICAgPC92YXJsaXN0ZW50cnk+CisKICAgICAgPHZhcmxpc3RlbnRyeT4KICAgICAgIDx0ZXJtPjxv cHRpb24+LXE8L29wdGlvbj48L3Rlcm0+CiAgICAgICA8dGVybT48b3B0aW9uPi0tcXVpZXQ8L29w dGlvbj48L3Rlcm0+CmRpZmYgLS1naXQgYS9zcmMvYmluL3NjcmlwdHMvdC8xMDBfdmFjdXVtZGIu cGwgYi9zcmMvYmluL3NjcmlwdHMvdC8xMDBfdmFjdXVtZGIucGwKaW5kZXggOTUxMjAyYjQwZS4u NjIzNTVhNTBlMiAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9zY3JpcHRzL3QvMTAwX3ZhY3V1bWRiLnBs CisrKyBiL3NyYy9iaW4vc2NyaXB0cy90LzEwMF92YWN1dW1kYi5wbApAQCAtMyw3ICszLDcgQEAg dXNlIHdhcm5pbmdzOwogCiB1c2UgUG9zdGdyZXNOb2RlOwogdXNlIFRlc3RMaWI7Ci11c2UgVGVz dDo6TW9yZSB0ZXN0cyA9PiAzMDsKK3VzZSBUZXN0OjpNb3JlIHRlc3RzID0+IDM0OwogCiBwcm9n cmFtX2hlbHBfb2soJ3ZhY3V1bWRiJyk7CiBwcm9ncmFtX3ZlcnNpb25fb2soJ3ZhY3V1bWRiJyk7 CkBAIC03NSwzICs3NSwxMiBAQCAkbm9kZS0+Y29tbWFuZF9vayhbcXd8dmFjdXVtZGIgLVogLS10 YWJsZT0ibmVlZCIicSh1b3QiKCIpeCIpIHBvc3RncmVzfF0sCiAkbm9kZS0+Y29tbWFuZF9mYWls cygKIAlbcXd8dmFjdXVtZGIgLVp0IGZ1bmNpZHggcG9zdGdyZXN8XSwKIAkndW5xdWFsaWZlZCBu YW1lIHZpYSBmdW5jdGlvbmFsIGluZGV4Jyk7CisKKyRub2RlLT5pc3N1ZXNfc3FsX2xpa2UoCisJ WyAndmFjdXVtZGInLCAnLS10YWJsZT1wZ19jbGFzcycsICctLW1pbi1teGlkLWFnZT0yMTQ3NDgz MDAwJywgJ3Bvc3RncmVzJ10sCisJcXIvQU5EIEdSRUFURVNUXChwZ19jYXRhbG9nLm14aWRfYWdl XChjLnJlbG1pbm14aWRcKSwgcGdfY2F0YWxvZy5teGlkX2FnZVwodC5yZWxtaW5teGlkXClcKSBP UEVSQVRPUlwocGdfY2F0YWxvZy4+PVwpIDIxNDc0ODMwMDAvLAorCSd2YWN1dW1kYiAtLXRhYmxl IC0tbWluLW14aWQtYWdlJyk7Ciskbm9kZS0+aXNzdWVzX3NxbF9saWtlKAorCVsgJ3ZhY3V1bWRi JywgJy0tbWluLXhpZC1hZ2U9MjE0NzQ4MzAwMScsICdwb3N0Z3JlcycgXSwKKwlxci9BTkQgR1JF QVRFU1RcKHBnX2NhdGFsb2cuYWdlXChjLnJlbGZyb3plbnhpZFwpLCBwZ19jYXRhbG9nLmFnZVwo dC5yZWxmcm96ZW54aWRcKVwpIE9QRVJBVE9SXChwZ19jYXRhbG9nLj49XCkgMjE0NzQ4MzAwMS8s CisJJ3ZhY3V1bWRiIC0tbWluLXhpZC1hZ2UnKTsKZGlmZiAtLWdpdCBhL3NyYy9iaW4vc2NyaXB0 cy92YWN1dW1kYi5jIGIvc3JjL2Jpbi9zY3JpcHRzL3ZhY3V1bWRiLmMKaW5kZXggYjcyZTY1YzM2 ZC4uMjJjZjU1ZThkMyAxMDA2NDQKLS0tIGEvc3JjL2Jpbi9zY3JpcHRzL3ZhY3V1bWRiLmMKKysr IGIvc3JjL2Jpbi9zY3JpcHRzL3ZhY3V1bWRiLmMKQEAgLTQzLDYgKzQzLDggQEAgdHlwZWRlZiBz dHJ1Y3QgdmFjdXVtaW5nT3B0aW9ucwogCWJvb2wJCWZyZWV6ZTsKIAlib29sCQlkaXNhYmxlX3Bh Z2Vfc2tpcHBpbmc7CiAJYm9vbAkJc2tpcF9sb2NrZWQ7CisJaW50CQkJbWluX3hpZF9hZ2U7CisJ aW50CQkJbWluX214aWRfYWdlOwogfSB2YWN1dW1pbmdPcHRpb25zOwogCiAKQEAgLTExMyw2ICsx MTUsOCBAQCBtYWluKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAJCXsiYW5hbHl6ZS1pbi1zdGFn ZXMiLCBub19hcmd1bWVudCwgTlVMTCwgM30sCiAJCXsiZGlzYWJsZS1wYWdlLXNraXBwaW5nIiwg bm9fYXJndW1lbnQsIE5VTEwsIDR9LAogCQl7InNraXAtbG9ja2VkIiwgbm9fYXJndW1lbnQsIE5V TEwsIDV9LAorCQl7Im1pbi14aWQtYWdlIiwgcmVxdWlyZWRfYXJndW1lbnQsIE5VTEwsIDZ9LAor CQl7Im1pbi1teGlkLWFnZSIsIHJlcXVpcmVkX2FyZ3VtZW50LCBOVUxMLCA3fSwKIAkJe05VTEws IDAsIE5VTEwsIDB9CiAJfTsKIApAQCAtMjIyLDYgKzIyNiwyNCBAQCBtYWluKGludCBhcmdjLCBj aGFyICphcmd2W10pCiAJCQljYXNlIDU6CiAJCQkJdmFjb3B0cy5za2lwX2xvY2tlZCA9IHRydWU7 CiAJCQkJYnJlYWs7CisJCQljYXNlIDY6CisJCQkJdmFjb3B0cy5taW5feGlkX2FnZSA9IGF0b2ko b3B0YXJnKTsKKwkJCQlpZiAodmFjb3B0cy5taW5feGlkX2FnZSA8PSAwKQorCQkJCXsKKwkJCQkJ ZnByaW50ZihzdGRlcnIsIF8oIiVzOiBtaW5pbXVtIHRyYW5zYWN0aW9uIElEIGFnZSBtdXN0IGJl IGF0IGxlYXN0IDFcbiIpLAorCQkJCQkJCXByb2duYW1lKTsKKwkJCQkJZXhpdCgxKTsKKwkJCQl9 CisJCQkJYnJlYWs7CisJCQljYXNlIDc6CisJCQkJdmFjb3B0cy5taW5fbXhpZF9hZ2UgPSBhdG9p KG9wdGFyZyk7CisJCQkJaWYgKHZhY29wdHMubWluX214aWRfYWdlIDw9IDApCisJCQkJeworCQkJ CQlmcHJpbnRmKHN0ZGVyciwgXygiJXM6IG1pbmltdW0gbXVsdGl4YWN0IElEIGFnZSBtdXN0IGJl IGF0IGxlYXN0IDFcbiIpLAorCQkJCQkJCXByb2duYW1lKTsKKwkJCQkJZXhpdCgxKTsKKwkJCQl9 CisJCQkJYnJlYWs7CiAJCQlkZWZhdWx0OgogCQkJCWZwcmludGYoc3RkZXJyLCBfKCJUcnkgXCIl cyAtLWhlbHBcIiBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cbiIpLCBwcm9nbmFtZSk7CiAJCQkJZXhp dCgxKTsKQEAgLTQwMyw2ICs0MjUsMjAgQEAgdmFjdXVtX29uZV9kYXRhYmFzZShjb25zdCBjaGFy ICpkYm5hbWUsIHZhY3V1bWluZ09wdGlvbnMgKnZhY29wdHMsCiAJCWV4aXQoMSk7CiAJfQogCisJ aWYgKHZhY29wdHMtPm1pbl94aWRfYWdlICE9IDAgJiYgUFFzZXJ2ZXJWZXJzaW9uKGNvbm4pIDwg NzAyMDApCisJeworCQlmcHJpbnRmKHN0ZGVyciwgXygiJXM6IGNhbm5vdCB1c2UgdGhlIFwiJXNc IiBvcHRpb24gb24gc2VydmVyIHZlcnNpb25zIG9sZGVyIHRoYW4gUG9zdGdyZVNRTCA3LjJcbiIp LAorCQkJCXByb2duYW1lLCAiLS1taW4teGlkLWFnZSIpOworCQlleGl0KDEpOworCX0KKworCWlm ICh2YWNvcHRzLT5taW5fbXhpZF9hZ2UgIT0gMCAmJiBQUXNlcnZlclZlcnNpb24oY29ubikgPCA5 MDUwMCkKKwl7CisJCWZwcmludGYoc3RkZXJyLCBfKCIlczogY2Fubm90IHVzZSB0aGUgXCIlc1wi IG9wdGlvbiBvbiBzZXJ2ZXIgdmVyc2lvbnMgb2xkZXIgdGhhbiBQb3N0Z3JlU1FMIDkuNVxuIiks CisJCQkJcHJvZ25hbWUsICItLW1pbi1teGlkLWFnZSIpOworCQlleGl0KDEpOworCX0KKwogCWlm ICghcXVpZXQpCiAJewogCQlpZiAoc3RhZ2UgIT0gQU5BTFlaRV9OT19TVEFHRSkKQEAgLTQzMyw2 ICs0NjksMTggQEAgdmFjdXVtX29uZV9kYXRhYmFzZShjb25zdCBjaGFyICpkYm5hbWUsIHZhY3V1 bWluZ09wdGlvbnMgKnZhY29wdHMsCiAJCQkJCSAgQ3BwQXNTdHJpbmcyKFJFTEtJTkRfUkVMQVRJ T04pICIsICIKIAkJCQkJICBDcHBBc1N0cmluZzIoUkVMS0lORF9NQVRWSUVXKSAiXSlcbiIpOwog CisJaWYgKHZhY29wdHMtPm1pbl94aWRfYWdlICE9IDApCisJCWFwcGVuZFBRRXhwQnVmZmVyKCZj YXRhbG9nX3F1ZXJ5LAorCQkJCQkJICAiIEFORCBHUkVBVEVTVChwZ19jYXRhbG9nLmFnZShjLnJl bGZyb3plbnhpZCksIgorCQkJCQkJICAiIHBnX2NhdGFsb2cuYWdlKHQucmVsZnJvemVueGlkKSkg T1BFUkFUT1IocGdfY2F0YWxvZy4+PSkgJWRcbiIsCisJCQkJCQkgIHZhY29wdHMtPm1pbl94aWRf YWdlKTsKKworCWlmICh2YWNvcHRzLT5taW5fbXhpZF9hZ2UgIT0gMCkKKwkJYXBwZW5kUFFFeHBC dWZmZXIoJmNhdGFsb2dfcXVlcnksCisJCQkJCQkgICIgQU5EIEdSRUFURVNUKHBnX2NhdGFsb2cu bXhpZF9hZ2UoYy5yZWxtaW5teGlkKSwiCisJCQkJCQkgICIgcGdfY2F0YWxvZy5teGlkX2FnZSh0 LnJlbG1pbm14aWQpKSBPUEVSQVRPUihwZ19jYXRhbG9nLj49KSAlZFxuIiwKKwkJCQkJCSAgdmFj b3B0cy0+bWluX214aWRfYWdlKTsKKwogCWNlbGwgPSB0YWJsZXMgPyB0YWJsZXMtPmhlYWQgOiBO VUxMOwogCXdoaWxlIChjZWxsICE9IE5VTEwpCiAJewpAQCAtMTEwNCw2ICsxMTUyLDggQEAgaGVs cChjb25zdCBjaGFyICpwcm9nbmFtZSkKIAlwcmludGYoXygiICAtZiwgLS1mdWxsICAgICAgICAg ICAgICAgICAgICAgIGRvIGZ1bGwgdmFjdXVtaW5nXG4iKSk7CiAJcHJpbnRmKF8oIiAgLUYsIC0t ZnJlZXplICAgICAgICAgICAgICAgICAgICBmcmVlemUgcm93IHRyYW5zYWN0aW9uIGluZm9ybWF0 aW9uXG4iKSk7CiAJcHJpbnRmKF8oIiAgLWosIC0tam9icz1OVU0gICAgICAgICAgICAgICAgICB1 c2UgdGhpcyBtYW55IGNvbmN1cnJlbnQgY29ubmVjdGlvbnMgdG8gdmFjdXVtXG4iKSk7CisJcHJp bnRmKF8oIiAgICAgIC0tbWluLW14aWQtYWdlPU1YSURfQUdFICAgICBtaW5pbXVtIG11bHRpeGFj dCBJRCBhZ2Ugb2YgdGFibGVzIHRvIHZhY3V1bVxuIikpOworCXByaW50ZihfKCIgICAgICAtLW1p bi14aWQtYWdlPVhJRF9BR0UgICAgICAgbWluaW11bSB0cmFuc2FjdGlvbiBJRCBhZ2Ugb2YgdGFi bGVzIHRvIHZhY3V1bVxuIikpOwogCXByaW50ZihfKCIgIC1xLCAtLXF1aWV0ICAgICAgICAgICAg ICAgICAgICAgZG9uJ3Qgd3JpdGUgYW55IG1lc3NhZ2VzXG4iKSk7CiAJcHJpbnRmKF8oIiAgICAg IC0tc2tpcC1sb2NrZWQgICAgICAgICAgICAgICBza2lwIHJlbGF0aW9ucyB0aGF0IGNhbm5vdCBi ZSBpbW1lZGlhdGVseSBsb2NrZWRcbiIpKTsKIAlwcmludGYoXygiICAtdCwgLS10YWJsZT0nVEFC TEVbKENPTFVNTlMpXScgIHZhY3V1bSBzcGVjaWZpYyB0YWJsZShzKSBvbmx5XG4iKSk7Ci0tIAoy LjE2LjUKCg== --_004_F716EB060CBE43429CFA23409319B52Aamazoncom_--