Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tuWb5-009Usu-Ai for pgsql-general@arkaria.postgresql.org; Tue, 18 Mar 2025 13:03:08 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1tuWb3-00E8x5-1V for pgsql-general@arkaria.postgresql.org; Tue, 18 Mar 2025 13:03:05 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tuWb2-00E8wO-AS for pgsql-general@lists.postgresql.org; Tue, 18 Mar 2025 13:03:04 +0000 Received: from forward500d.mail.yandex.net ([178.154.239.208]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1tuWay-003VaW-2l for pgsql-general@postgresql.org; Tue, 18 Mar 2025 13:03:03 +0000 Received: from mail-nwsmtp-mxback-production-main-561.iva.yp-c.yandex.net (mail-nwsmtp-mxback-production-main-561.iva.yp-c.yandex.net [IPv6:2a02:6b8:c0c:90f:0:640:e476:0]) by forward500d.mail.yandex.net (Yandex) with ESMTPS id 3AB9B6161F for ; Tue, 18 Mar 2025 16:02:56 +0300 (MSK) Received: from mail.yandex.ru (2a02:6b8:c0c:740d:0:640:28b7:0 [2a02:6b8:c0c:740d:0:640:28b7:0]) by mail-nwsmtp-mxback-production-main-561.iva.yp-c.yandex.net (mxback/Yandex) with HTTPS id n2IZEV3L1Ko0-Q8WmYN1L; Tue, 18 Mar 2025 16:02:55 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arenadata.io; s=mail; t=1742302975; bh=xjNh5Q4ue+VYuAe20hcv9okgnGVD6YusxHM1m0SiuNQ=; h=Message-Id:Date:Subject:To:References:In-Reply-To:From; b=B+B7NJ58Akf6rgSA0U+knoQBy3OGf1ddcDvV4HhWHvrstiMkWHFj1j0hZgk/XIcb/ SHr5/lQCI9sRx/RK044gtQ0PCx5r90VPvoMOHE13dNyrX8JnqUBWvdGFxF0wqbgik0 YYDCuP8Npmw6uHrC/jYdc7orcYz2+gHuYCsvTYCE= Authentication-Results: mail-nwsmtp-mxback-production-main-561.iva.yp-c.yandex.net; dkim=pass header.i=@arenadata.io Received: by sjg23nxaikj7vz54.iva.yp-c.yandex.net with HTTP; Tue, 18 Mar 2025 16:02:55 +0300 From: Evgeniy Ratkov To: "pgsql-general@postgresql.org" In-Reply-To: References: Subject: Re: How to recover correctly master and replica using backup made by pg_basebackup? MIME-Version: 1.0 X-Mailer: Yamail [ http://yandex.ru ] 5.0 Date: Tue, 18 Mar 2025 16:02:55 +0300 Message-Id: <54111742302195@mail.yandex.ru> Content-Type: multipart/mixed; boundary="----==--bound.497430.sjg23nxaikj7vz54.iva.yp-c.yandex.net" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk ------==--bound.497430.sjg23nxaikj7vz54.iva.yp-c.yandex.net Content-Transfer-Encoding: base64 Content-Type: text/html; charset=utf-8 PGRpdj48ZGl2Pk9uIDA3LzExLzIwMjQgMjI6MTksIEV2Z2VuaXkgUmF0a292IHdyb3RlOjwvZGl2 PjwvZGl2PjxibG9ja3F1b3RlPjxwPkhlbGxvLjxiciAvPjxiciAvPkkgdHJ5IHRvIHVzZSBwZ19i YXNlYmFja3VwIHRvIG1ha2UgYmFja3VwIGFuZCByZWNvdmVyIG1hc3RlciBhbmQgcmVwbGljYTxi ciAvPmZyb20gaXQuPGJyIC8+SSByZWNvdmVyIG1hc3RlciB3aXRoIGFjdGlvbiAicHJvbW90ZSIu IE5leHQsIEkgcmVjb3ZlciByZXBsaWNhIGZyb20gdGhlPGJyIC8+c2FtZTxiciAvPmJhY2t1cCB3 aXRoIGFjdGlvbiAic2h1dGRvd24iLiBBZnRlciBpdCwgSSBzdGFydCByZXBsaWNhIHdpdGggY29u ZmlndXJlZDxiciAvPmNvbm5lY3Rpb248YnIgLz5hbmQgcmVwbGljYXRpb24gc2xvdCB0byB0aGUg bWFzdGVyLiBJIGdldCBlcnJvciwgYmVjYXVzZSByZXBsaWNhIHJlYWRzPGJyIC8+YW5kIGFwcGxp ZXM8YnIgLz5hbGwgV0FMIG9mIGlycmVsZXZhbnQgdGltZWxpbmUsIHdoaWNoIGNvbnRhaW5zIGxv Z3MgYWZ0ZXIgcmVzdG9yZSBwb2ludC48YnIgLz48YnIgLz5JIHdyb3RlIFBlcmwgc2NyaXB0IGZv ciBwZ19iYXNlYmFja3VwJ3MgVEFQIHRlc3RzLiBJdCBpcyBhdHRhY2hlZCBhczxiciAvPmZpbGUg IjA1MF9jaGVja19yZXBsaWNhdGlvbi5wbCIuPGJyIC8+SXQgd29ya3Mgb24gUG9zdGdyZVNRTCAx NywgY29tbWl0PGJyIC8+N2Q4NWQ4N2Y0ZDVjMzVmZDViMmQzOGFkYWVmNjNkZmJmYTU0MmNjYyBh ZnRlcjxiciAvPmFwcGx5aW5nIHNtYWxsIHBhdGNoLCB3aGljaCBhZGRzIHBvc3NpYmlsaXR5IHRv IHN0YXJ0IG5vZGUgd2l0aCBzaHV0ZG93bjxiciAvPm9wdGlvbi48YnIgLz5QYXRjaCBpcyBhdHRh Y2hlZCBhcyBmaWxlICJhZGRfbm9kZV9zdGFydF93aXRoX3NodXRkb3duLmRpZmYiLjxiciAvPjxi ciAvPlNjcmlwdCBnZW5lcmF0ZXMgc2l0dWF0aW9uIHdoZW4gdGltZWxpbmUgY2hhbmdlcyBzZXZl cmFsIHRpbWVzLiBTbWFsbDxiciAvPnNjaGVtYSBtYXk8YnIgLz5leHBsYWluIGl0OjxiciAvPjxi ciAvPlRpbWVsaW5lIDE6PGJyIC8+wqDCoCBDcmVhdGUgdGhlIGZpcnN0IGJhY2t1cDxiciAvPsKg wqAgQ3JlYXRlIHJlc3RvcmUgcG9pbnQgJ3JwX3JlcGxfYnVnJzxiciAvPlRpbWVsaW5lIDEgLSZn dDsgMjo8YnIgLz7CoMKgIFJlY292ZXJ5IHdpdGggcHJvbW90ZSB1c2luZyB0aGUgZmlyc3QgYmFj a3VwIGFuZCAncnBfcmVwbF9idWcnPGJyIC8+wqDCoCBDcmVhdGUgdGhlIHNlY29uZCBiYWNrdXA8 YnIgLz7CoMKgIENyZWF0ZSByZXN0b3JlIHBvaW50ICdycF9yZXBsX2J1ZzInPGJyIC8+VGltZWxp bmUgMiAtJmd0OyAzOjxiciAvPsKgwqAgUmVjb3Zlcnkgd2l0aCBwcm9tb3RlIHVzaW5nIHRoZSBz ZWNvbmQgYmFja3VwIGFuZCAncnBfcmVwbF9idWcyJzxiciAvPlRpbWVsaW5lIDEgLSZndDsgNDo8 YnIgLz7CoMKgIFJlY292ZXJ5IHdpdGggcHJvbW90ZSB1c2luZyB0aGUgZmlyc3QgYmFja3VwIGFu ZCAncnBfcmVwbF9idWcnPGJyIC8+PGJyIC8+QWZ0ZXIgaXQgSSBnZXQgIjAwMDAwMDA0Lmhpc3Rv cnkiIGZpbGUsIHdoaWNoIGxvb2tzIHN0cmFuZ2U6PGJyIC8+McKgwqDCoCAwLzMwMDAwOTDCoMKg wqAgYXQgcmVzdG9yZSBwb2ludCAicnBfcmVwbF9idWciPGJyIC8+MsKgwqDCoCAwLzUwMDAwOTDC oMKgwqAgYXQgcmVzdG9yZSBwb2ludCAicnBfcmVwbF9idWcyIjxiciAvPjPCoMKgwqAgMC8zMDAw MDkwwqDCoMKgIGF0IHJlc3RvcmUgcG9pbnQgInJwX3JlcGxfYnVnIjxiciAvPjxiciAvPk5leHQs IEkgdHJ5IHRvIHJlc3RvcmUgcmVwbGljYSBmcm9tIHRoZSBmaXJzdCBiYWNrdXAuIFJlcGxpY2Eg ZGlkIG5vdDxiciAvPmZpbmQgV0FMIGZvcjxiciAvPnRpbWVsaW5lIDQgYW5kIGRvd25sb2FkZWQg YW5kIGFwcGxpZWQgV0FMIGZvciB0aW1lbGluZSAyLjxiciAvPjxiciAvPmNwOiBjYW5ub3Qgc3Rh dCAnJHtBUkNISVZFX1BBVEh9LzAwMDAwMDA0MDAwMDAwMDAwMDAwMDAwMyc6IE5vIHN1Y2ggZmls ZTxiciAvPm9yIGRpcmVjdG9yeTxiciAvPkxPRzrCoCByZWRvIHN0YXJ0cyBhdCAwLzIwMDAwMjg8 YnIgLz5jcDogY2Fubm90IHN0YXQgJyR7QVJDSElWRV9QQVRIfS8wMDAwMDAwNDAwMDAwMDAwMDAw MDAwMDMnOiBObyBzdWNoIGZpbGU8YnIgLz5vciBkaXJlY3Rvcnk8YnIgLz4nJHtBUkNISVZFX1BB VEh9LzAwMDAwMDAyMDAwMDAwMDAwMDAwMDAwMycgLSZndDs8YnIgLz4nJHtSRVBMSUNBX1BHREFU QX0vcGdfd2FsL1JFQ09WRVJZWExPRyc8YnIgLz5MT0c6wqAgcmVzdG9yZWQgbG9nIGZpbGUgIjAw MDAwMDAyMDAwMDAwMDAwMDAwMDAwMyIgZnJvbSBhcmNoaXZlPGJyIC8+TE9HOsKgIGNvbXBsZXRl ZCBiYWNrdXAgcmVjb3Zlcnkgd2l0aCByZWRvIExTTiAwLzIwMDAwMjggYW5kIGVuZCBMU048YnIg Lz4wLzIwMDAxMjA8YnIgLz5MT0c6wqAgY29uc2lzdGVudCByZWNvdmVyeSBzdGF0ZSByZWFjaGVk IGF0IDAvMjAwMDEyMDxiciAvPkxPRzrCoCByZWNvdmVyeSBzdG9wcGluZyBhdCByZXN0b3JlIHBv aW50ICJycF9yZXBsX2J1ZyIsIHRpbWUgMjAyNC0xMS0wNTxiciAvPjIyOjAwOjE2LjAzNzEyNisw MzxiciAvPjxiciAvPlRoYW4sIGF0IHRoZSBuZXh0IHJlcGxpY2EncyBzdGFydCAod2l0aCBjb25m aWd1cmVkIGNvbm5lY3Rpb24gdG8gdGhlPGJyIC8+bWFzdGVyIGFuZDxiciAvPnJlcGxpY2F0aW9u IHNsb3QpIHJlcGxpY2EgY2FuIG5vdCBzdGFydCByZWNlaXZpbmcgV0FMIGZyb20gbWFzdGVyLDxi ciAvPmJlY2F1c2UgaXQ8YnIgLz5hcHBsaWVkIGFsbCBXQUwgZnJvbSB0aW1lbGluZSAyIGluY2x1 ZGluZyBhbGwgbGluZXMgYWZ0ZXIgTFNOLCB3aGVyZSBpdDxiciAvPnNob3VsZDxiciAvPnN3aXRj aCB0aW1lbGluZTo8YnIgLz48YnIgLz5MT0c6wqAgZW50ZXJpbmcgc3RhbmRieSBtb2RlPGJyIC8+ TE9HOsKgIHJlZG8gc3RhcnRzIGF0IDAvMjAwMDAyODxiciAvPkxPRzrCoCBjb25zaXN0ZW50IHJl Y292ZXJ5IHN0YXRlIHJlYWNoZWQgYXQgMC8zMDAwMDkwPGJyIC8+TE9HOsKgIGRhdGFiYXNlIHN5 c3RlbSBpcyByZWFkeSB0byBhY2NlcHQgcmVhZC1vbmx5IGNvbm5lY3Rpb25zPGJyIC8+TE9HOsKg IHN0YXJ0ZWQgc3RyZWFtaW5nIFdBTCBmcm9tIHByaW1hcnkgYXQgMC80MDAwMDAwIG9uIHRpbWVs aW5lIDQ8YnIgLz5GQVRBTDrCoCBjb3VsZCBub3QgcmVjZWl2ZSBkYXRhIGZyb20gV0FMIHN0cmVh bTogRVJST1I6wqAgcmVxdWVzdGVkPGJyIC8+c3RhcnRpbmcgcG9pbnQgMC80MDAwMDAwIGlzIGFo ZWFkIG9mIHRoZSBXQUwgZmx1c2ggcG9zaXRpb24gb2YgdGhpczxiciAvPnNlcnZlciAwLzMwMDIw MDA8YnIgLz48YnIgLz5JZiBJIHJlc3RhcnQgcmVwbGljYSwgaXQgd2lsbCBub3Qgc3RhcnQ6PGJy IC8+TE9HOsKgIGRhdGFiYXNlIHN5c3RlbSB3YXMgc2h1dCBkb3duIGluIHJlY292ZXJ5IGF0IDIw MjQtMTEtMDUgMjI6MDA6MTggTVNLPGJyIC8+TE9HOsKgIGVudGVyaW5nIHN0YW5kYnkgbW9kZTxi ciAvPkZBVEFMOsKgIHJlcXVlc3RlZCB0aW1lbGluZSA0IGlzIG5vdCBhIGNoaWxkIG9mIHRoaXMg c2VydmVyJ3MgaGlzdG9yeTxiciAvPkRFVEFJTDrCoCBMYXRlc3QgY2hlY2twb2ludCBpcyBhdCAw LzMwMDAwOTAgb24gdGltZWxpbmUgMiwgYnV0IGluIHRoZTxiciAvPmhpc3Rvcnkgb2YgdGhlIHJl cXVlc3RlZCB0aW1lbGluZSwgdGhlIHNlcnZlciBmb3JrZWQgb2ZmIGZyb20gdGhhdDxiciAvPnRp bWVsaW5lIGF0IDAvNTAwMDA5MC48YnIgLz5MT0c6wqAgc3RhcnR1cCBwcm9jZXNzIChQSUQgMjM4 NDg4MCkgZXhpdGVkIHdpdGggZXhpdCBjb2RlIDE8YnIgLz48YnIgLz5RdWVzdGlvbnM6PGJyIC8+ PGJyIC8+MSkgV2h5IGRvZXMgbWlycm9yIG5vdCBzd2l0Y2ggdG8gdGhlIG5leHQgdGltZWxpbmUg d2hlbiBpdCBnZXQgTFNOIGluPGJyIC8+V0FMLCB3aGljaDxiciAvPnRoZXJlIGlzIGluIHRoZSBo aXN0b3J5IGZpbGU/IEFuZCB3aHkgZG9lcyBtaXJyb3IgYXBwbHkgYWxsIFdBTD88YnIgLz4yKSBX aHkgZG9lcyAwMDAwMDAwNC5oaXN0b3J5IGNvbnRhaW4gaW5mbyBhYm91dCBzd2l0Y2hpbmcgZnJv bSAyIGFuZCAzPGJyIC8+dGltZWxpbmVzPGJyIC8+ZXZlbiBpZiB0aGUgNCB0aW1lbGluZSB3YXMg c3dpdGNoZWQgZnJvbSB0aGUgZmlyc3QgdGltZWxpbmU/PGJyIC8+PGJyIC8+VGhhbmsgeW91IGlu IGFkdmFuY2UuPC9wPjwvYmxvY2txdW90ZT48ZGl2PsKgPC9kaXY+PGRpdj48ZGl2PjxkaXY+VGhl cmUgaXMgSGVpa2tpIExpbm5ha2FuZ2FzJ3MgcGF0Y2g6PC9kaXY+PGRpdj4wMDAzLURvbi10LXJl YWQtcGFzdC1jdXJyZW50LVRMSS1kdXJpbmctYXJjaGl2ZS1yZWNvdmVyeS5wYXRjaCBmcm9tPC9k aXY+PGRpdj5odHRwczovL3d3dy5wb3N0Z3Jlc3FsLm9yZy9tZXNzYWdlLWlkL2ZlN2FmODdkLWI5 YmYtNDgxYS05MDJjLTA4OWM0OWFhOTExZCU0MGlraS5maS48L2Rpdj48ZGl2Pkl0IGZpeGVzIG15 IHByb2JsZW0gd2l0aCByZWNvdmVyeSBiYWNrdXAgb24gc3RhbmRieS48L2Rpdj48ZGl2PsKgPC9k aXY+PGRpdj5JIHJlZmFjdG9yZWQgdGhlIHRlc3QsIHdoaWNoIG1heSBzaG93IHRoZSBwcm9ibGVt LiBUaGUgdGVzdCBwYXNzZWQ8L2Rpdj48ZGl2PndpdGggSGVpa2tpIExpbm5ha2FuZ2FzJ3MgcGF0 Y2guIFdpdGhvdXQgcGF0Y2ggaXQgZmFpbHMgd2l0aCBlcnJvcjo8L2Rpdj48ZGl2PiJGQVRBTDog wqBjb3VsZCBub3QgcmVjZWl2ZSBkYXRhIGZyb20gV0FMIHN0cmVhbTogRVJST1I6IMKgcmVxdWVz dGVkPC9kaXY+PGRpdj5zdGFydGluZyBwb2ludCAwLzQwMDAwMDAgaXMgYWhlYWQgb2YgdGhlIFdB TCBmbHVzaCBwb3NpdGlvbiBvZiB0aGlzPC9kaXY+PGRpdj5zZXJ2ZXIgMC8zMDAyMDAwIi48L2Rp dj48ZGl2PsKgPC9kaXY+PGRpdj5UaGUgdGVzdCBpcyBhdHRhY2hlZCBhcyAiMDUwX2NoZWNrX3Jl Y292ZXJ5X2JhY2t1cC5wbCIuIEkgYWRkZWQ8L2Rpdj48ZGl2PnRoZSB0ZXN0IHRvICJzcmMvdGVz dC9yZWNvdmVyeS90IiBkaXJlY3RvcnkuPC9kaXY+PGRpdj7CoDwvZGl2PjxkaXY+VGhhbmsgeW91 LjwvZGl2PjxkaXY+wqA8L2Rpdj48ZGl2Pi0tPC9kaXY+PGRpdj5Fdmdlbml5IFJhdGtvdjwvZGl2 PjwvZGl2PjwvZGl2Pg== ------==--bound.497430.sjg23nxaikj7vz54.iva.yp-c.yandex.net Content-Disposition: attachment; filename="050_check_recovery_backup.pl" Content-Transfer-Encoding: base64 Content-Type: application/octet-stream; name="050_check_recovery_backup.pl" dXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwp1c2UgRmlsZTo6QmFzZW5hbWUgcXcoYmFzZW5hbWUg ZGlybmFtZSk7CnVzZSBGaWxlOjpDb21wYXJlOwp1c2UgRmlsZTo6UGF0aCBxdyhybXRyZWUpOwoK dXNlIFBvc3RncmVTUUw6OlRlc3Q6OkNsdXN0ZXI7CnVzZSBQb3N0Z3JlU1FMOjpUZXN0OjpVdGls czsKdXNlIFRlc3Q6Ok1vcmU7CgojIFNldCB1bWFzayBzbyB0ZXN0IGRpcmVjdG9yaWVzIGFuZCBm aWxlcyBhcmUgY3JlYXRlZCB3aXRoIGRlZmF1bHQgcGVybWlzc2lvbnMKdW1hc2soMDA3Nyk7Cgpt eSAkdGVtcGRpciA9IFBvc3RncmVTUUw6OlRlc3Q6OlV0aWxzOjp0ZW1wZGlyOwpteSAkYmFzZWJh Y2t1cGRpcjEgPSAkdGVtcGRpciAuICcvYmFzZWJhY2t1cDEnOwpteSAkYmFzZWJhY2t1cGRpcjIg PSAkdGVtcGRpciAuICcvYmFzZWJhY2t1cDInOwpteSAkYXJjaGl2ZWRpciA9ICAkdGVtcGRpciAu ICcvYXJjaGl2ZSc7CgpteSAkcHJpbWFyeSA9IFBvc3RncmVTUUw6OlRlc3Q6OkNsdXN0ZXItPm5l dygncHJpbWFyeScpOwpteSAkc3RhbmRieSA9IFBvc3RncmVTUUw6OlRlc3Q6OkNsdXN0ZXItPm5l dygnc3RhbmRieScpOwoKc3ViIGNyZWF0ZV9iYWNrdXBfcHJpbWFyeQp7CglteSAoJGJhY2t1cF9k aXIsICRyZXN0b3JlX3BvaW50KSA9IEBfOwoKCXByaW50KCJSdW5uaW5nOiBjcmVhdGVfYmFja3Vw X3ByaW1hcnk6ICckcmVzdG9yZV9wb2ludCdcbiIpOwoKCSRwcmltYXJ5LT5jb21tYW5kX29rKFsg J3JtJywgJy1yZicsICRiYWNrdXBfZGlyIF0sCgkJImNsZWFyIGRpcmVjdG9yeSBmb3IgYmFja3Vw ICckYmFja3VwX2RpciciKTsKCW1rZGlyKCRiYWNrdXBfZGlyKTsKCgkkcHJpbWFyeS0+Y29tbWFu ZF9vayhbICdwZ19iYXNlYmFja3VwJywgJy1EJywgIiRiYWNrdXBfZGlyIiwgJy1wJywgJHByaW1h cnktPnBvcnQsICctLXZlcmJvc2UnIF0sCgkJJ3BnX2Jhc2ViYWNrdXAgcnVucycpOwoJb2soLWYg IiRiYWNrdXBfZGlyL1BHX1ZFUlNJT04iLCAiYmFja3VwIHdhcyBjcmVhdGVkIGF0ICckYmFja3Vw X2RpciciKTsKCgkkcHJpbWFyeS0+c2FmZV9wc3FsKCd0ZXN0X2RiJywgIlNFTEVDVCBwZ19jcmVh dGVfcmVzdG9yZV9wb2ludCgnJHJlc3RvcmVfcG9pbnQnKSIpOwp9CgpzdWIgcmVzdG9yZV9iYWNr dXBfcHJpbWFyeQp7CglteSAoJGJhY2t1cF9kaXIsICRyZXN0b3JlX29wdGlvbnMsICRsYWJlbCkg PSBAXzsKCW15ICRwcmltYXJ5X3BnZGF0YSA9ICRwcmltYXJ5LT5kYXRhX2RpcjsKCglwcmludCgi UnVubmluZzogcmVzdG9yZV9iYWNrdXBfcHJpbWFyeTogJyRyZXN0b3JlX29wdGlvbnMnICckbGFi ZWwnXG4iKTsKCgkkcHJpbWFyeS0+Y29tbWFuZF9vayhbICdybScsICctcmYnLCAkcHJpbWFyeV9w Z2RhdGEgXSwKCQkiJyRsYWJlbCc6IHJtIHByaW1hcnkgcGdkYXRhIik7CgkkcHJpbWFyeS0+Y29t bWFuZF9vayhbICdjcCcsICctcicsICRiYWNrdXBfZGlyLCAkcHJpbWFyeV9wZ2RhdGEgXSwKCQki JyRsYWJlbCc6IGNvcHkgYmFzZWJhY2t1cCB0byBwcmltYXJ5Iik7CgoJIyBjb25maWd1cmUgcmVj b3ZlcnkKCSRwcmltYXJ5LT5zZXRfcmVjb3ZlcnlfbW9kZTsKCW9wZW4gbXkgJGNvbmYsICc+Jywg IiRwcmltYXJ5X3BnZGF0YS9wb3N0Z3Jlc3FsLmF1dG8uY29uZiI7CglwcmludCAkY29uZiAicmVj b3ZlcnlfdGFyZ2V0X2FjdGlvbiA9ICdwcm9tb3RlJ1xuIjsKCXByaW50ICRjb25mICJyZXN0b3Jl X2NvbW1hbmQgPSAnY3AgLXYgJGFyY2hpdmVkaXIvJWYgJHByaW1hcnlfcGdkYXRhLyVwJ1xuIjsK CXByaW50ICRjb25mICIkcmVzdG9yZV9vcHRpb25zXG4iOwoJY2xvc2UgJGNvbmY7CgkkcHJpbWFy eS0+c3RhcnQ7Cn0KCnN1YiB3YWl0X3JlY292ZXJ5X2FuZF9zd2l0Y2hfd2FsX3ByaW1hcnkKewoJ bXkgKCRsYWJlbCkgPSBAXzsKCglwcmludCgiUnVubmluZzogd2FpdF9yZWNvdmVyeV9hbmRfc3dp dGNoX3dhbF9wcmltYXJ5OiAnJGxhYmVsJ1xuIik7CgoJJHByaW1hcnktPnBvbGxfcXVlcnlfdW50 aWwoJ3Rlc3RfZGInLCAiU0VMRUNUIHRydWUgRlJPTSBwZ19zd2l0Y2hfd2FsKCkiKQoJCW9yIGRp ZSAiJyRsYWJlbCc6IFRpbWVkIG91dCB3aGlsZSB3YWl0aW5nIGZvciBzd2l0Y2ggV0FMIGFmdGVy IHJlY292ZXJ5IjsKfQoKc3ViIHJlc3RvcmVfYmFja3VwX3N0YW5kYnkKewoJbXkgKCRiYWNrdXBf ZGlyLCAkcmVzdG9yZV9wb2ludCwgJHByaW1hcnlfaG9zdCwgJHByaW1hcnlfcG9ydCwgJGxhYmVs KSA9IEBfOwoKCW15ICRzdGFuZGJ5X3BnZGF0YSA9ICRzdGFuZGJ5LT5kYXRhX2RpcjsKCW15ICRz dGFuZGJ5X3BvcnQgPSAkc3RhbmRieS0+cG9ydDsKCgkkc3RhbmRieS0+Y29tbWFuZF9vayhbICdy bScsICctcmYnLCAkc3RhbmRieV9wZ2RhdGEgXSwKCQkiJyRsYWJlbCc6IHJtIHN0YW5kYnkgcGdk YXRhIik7Cgkkc3RhbmRieS0+Y29tbWFuZF9vayhbICdjcCcsICctcicsICRiYWNrdXBfZGlyLCAk c3RhbmRieV9wZ2RhdGEgXSwKCQkiJyRsYWJlbCc6IGNvcHkgYmFzZWJhY2t1cCB0byBzdGFuZGJ5 Iik7CgoJJHN0YW5kYnktPnNldF9yZWNvdmVyeV9tb2RlOwoJb3BlbiBteSAkY29uZiwgJz4nLCAi JHN0YW5kYnlfcGdkYXRhL3Bvc3RncmVzcWwuYXV0by5jb25mIjsKCXByaW50ICRjb25mICJyZWNv dmVyeV90YXJnZXRfYWN0aW9uID0gJ3NodXRkb3duJ1xuIjsKCXByaW50ICRjb25mICJyZXN0b3Jl X2NvbW1hbmQgPSAnY3AgLXYgJGFyY2hpdmVkaXIvJWYgJHN0YW5kYnlfcGdkYXRhLyVwJ1xuIjsK CXByaW50ICRjb25mICJyZWNvdmVyeV90YXJnZXRfbmFtZSA9ICckcmVzdG9yZV9wb2ludCdcbiI7 CgljbG9zZSAkY29uZjsKCSRzdGFuZGJ5LT5hZGp1c3RfY29uZigncG9zdGdyZXNxbC5jb25mJywg J3BvcnQnLCAkc3RhbmRieV9wb3J0KTsKCSRzdGFuZGJ5LT5zdGFydChmYWlsX29rID0+IDEpOwoK CSRzdGFuZGJ5LT53YWl0X2Zvcl9sb2coJ2RhdGFiYXNlIHN5c3RlbSBpcyBzaHV0IGRvd24nKTsK CgkjIGNvbmZpZ3VyZSBwcmltYXJ5IGNvbm5lY3Rpb24gd2l0aCByZXBsaWNhdGlvbiBzbG90Cgl1 bmxpbmsgIiRzdGFuZGJ5X3BnZGF0YS9yZWNvdmVyeS5zaWduYWwiOwoJdW5saW5rICIkc3RhbmRi eV9wZ2RhdGEvcG9zdGdyZXNxbC5hdXRvLmNvbmYiOwoJJHN0YW5kYnktPnNldF9zdGFuZGJ5X21v ZGU7CglvcGVuICRjb25mLCAnPicsICIkc3RhbmRieV9wZ2RhdGEvcG9zdGdyZXNxbC5hdXRvLmNv bmYiOwoJcHJpbnQgJGNvbmYgInByaW1hcnlfY29ubmluZm8gPSAncG9ydD0kcHJpbWFyeV9wb3J0 IGhvc3Q9JHByaW1hcnlfaG9zdCdcbiI7CglwcmludCAkY29uZiAicHJpbWFyeV9zbG90X25hbWUg PSAnaW50ZXJuYWxfd2FsX3JlcGxpY2F0aW9uX3Nsb3QnXG4iOwoJY2xvc2UgJGNvbmY7CgoJJHN0 YW5kYnktPl91cGRhdGVfcGlkKDApOwoJJHN0YW5kYnktPnN0YXJ0Owp9Cgpta2RpcigkYXJjaGl2 ZWRpcik7CgojIEluaXRpYWxpemUgcHJpbWFyeQokcHJpbWFyeS0+aW5pdChhbGxvd3Nfc3RyZWFt aW5nID0+IDEsIGV4dHJhID0+IFsnLS1kYXRhLWNoZWNrc3VtcyddKTsKJHByaW1hcnktPmFwcGVu ZF9jb25mKCJwb3N0Z3Jlc3FsLmNvbmYiLCAiYXJjaGl2ZV9tb2RlID0gJ29uJyIpOwokcHJpbWFy eS0+YXBwZW5kX2NvbmYoInBvc3RncmVzcWwuY29uZiIsICJhcmNoaXZlX2NvbW1hbmQgPSAnY3Ag LXYgJXAgJGFyY2hpdmVkaXIvJyIpOwokcHJpbWFyeS0+c3RhcnQ7CiRwcmltYXJ5LT5zYWZlX3Bz cWwoJ3Bvc3RncmVzJywgJ0NSRUFURSBEQVRBQkFTRSB0ZXN0X2RiJyk7CiRwcmltYXJ5LT5zYWZl X3BzcWwoJ3Rlc3RfZGInLCAnQ1JFQVRFIFRBQkxFIHRlc3QgQVMgU0VMRUNUIGdlbmVyYXRlX3Nl cmllcygxLDEwKScpOwokcHJpbWFyeS0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsICdDUkVBVEUgUk9M RSBwb3N0Z3JlcyBXSVRIIExPR0lOIFJFUExJQ0FUSU9OJyk7CgojIFN0ZXBzIGF0IHByaW1hcnkg YmVsb3cgYXJlIG5lZWRlZCB0byBnZW5lcmF0ZSBub24tbGluZWFyIGhpc3Rvcnkgb2YgdGltZWxp bmVzCgpjcmVhdGVfYmFja3VwX3ByaW1hcnkoJGJhc2ViYWNrdXBkaXIxLCAnYmFja3VwX2xhYmVs MScpOwokcHJpbWFyeS0+c3RvcCgnc21hcnQnKTsKcmVzdG9yZV9iYWNrdXBfcHJpbWFyeSgkYmFz ZWJhY2t1cGRpcjEsICJyZWNvdmVyeV90YXJnZXRfbmFtZSA9ICdiYWNrdXBfbGFiZWwxJ1xucmVj b3ZlcnlfdGFyZ2V0X3RpbWVsaW5lID0gJ2N1cnJlbnQnIiwgJzAwMSAtPiAwMTInKTsKd2FpdF9y ZWNvdmVyeV9hbmRfc3dpdGNoX3dhbF9wcmltYXJ5KCcwMDEgLT4gMDEyJyk7CgpjcmVhdGVfYmFj a3VwX3ByaW1hcnkoJGJhc2ViYWNrdXBkaXIyLCAnYmFja3VwX2xhYmVsMicpOwokcHJpbWFyeS0+ c3RvcCgnc21hcnQnKTsKcmVzdG9yZV9iYWNrdXBfcHJpbWFyeSgkYmFzZWJhY2t1cGRpcjIsICJy ZWNvdmVyeV90YXJnZXRfbmFtZSA9ICdiYWNrdXBfbGFiZWwyJ1xucmVjb3ZlcnlfdGFyZ2V0X3Rp bWVsaW5lID0gJ2N1cnJlbnQnIiwgJzAxMiAtPiAwMTMnKTsKd2FpdF9yZWNvdmVyeV9hbmRfc3dp dGNoX3dhbF9wcmltYXJ5KCcwMTIgLT4gMDEzJyk7CgokcHJpbWFyeS0+c3RvcCgnc21hcnQnKTsK cmVzdG9yZV9iYWNrdXBfcHJpbWFyeSgkYmFzZWJhY2t1cGRpcjIsICJyZWNvdmVyeV90YXJnZXRf bmFtZSA9ICdiYWNrdXBfbGFiZWwyJ1xucmVjb3ZlcnlfdGFyZ2V0X3RpbWVsaW5lID0gJ2N1cnJl bnQnIiwgJzAxMiAtPiAwMjMnKTsKd2FpdF9yZWNvdmVyeV9hbmRfc3dpdGNoX3dhbF9wcmltYXJ5 KCcwMTIgLT4gMDIzJyk7CgokcHJpbWFyeS0+c3RvcCgnc21hcnQnKTsKcmVzdG9yZV9iYWNrdXBf cHJpbWFyeSgkYmFzZWJhY2t1cGRpcjEsICJyZWNvdmVyeV90YXJnZXRfbmFtZSA9ICdiYWNrdXBf bGFiZWwxJ1xucmVjb3ZlcnlfdGFyZ2V0X3RpbWVsaW5lID0gJ2N1cnJlbnQnIiwgJzEwMSAtPiAx MTInKTsKd2FpdF9yZWNvdmVyeV9hbmRfc3dpdGNoX3dhbF9wcmltYXJ5KCcxMDEgLT4gMTEyJyk7 CgokcHJpbWFyeS0+c3RvcCgnc21hcnQnKTsKcmVzdG9yZV9iYWNrdXBfcHJpbWFyeSgkYmFzZWJh Y2t1cGRpcjIsICJyZWNvdmVyeV90YXJnZXRfbmFtZSA9ICdiYWNrdXBfbGFiZWwyJ1xucmVjb3Zl cnlfdGFyZ2V0X3RpbWVsaW5lID0gJ2N1cnJlbnQnIiwgJzExMiAtPiAxMTMnKTsKd2FpdF9yZWNv dmVyeV9hbmRfc3dpdGNoX3dhbF9wcmltYXJ5KCcxMTIgLT4gMTEzJyk7CgokcHJpbWFyeS0+c3Rv cCgnc21hcnQnKTsKcmVzdG9yZV9iYWNrdXBfcHJpbWFyeSgkYmFzZWJhY2t1cGRpcjEsICJyZWNv dmVyeV90YXJnZXRfbmFtZSA9ICdiYWNrdXBfbGFiZWwxJ1xucmVjb3ZlcnlfdGFyZ2V0X3RpbWVs aW5lID0gJ2N1cnJlbnQnIiwgJzEwMSAtPiAxMTQnKTsKCiMgd2FpdCBmb3IgZW5kIG9mIHJlY292 ZXJ5IGFuZCBjcmVhdGUgcmVwbGljYXRpb24gc2xvdAokcHJpbWFyeS0+cG9sbF9xdWVyeV91bnRp bCgndGVzdF9kYicsICJTRUxFQ1QgdHJ1ZSIpCiAgb3IgZGllICJUaW1lZCBvdXQgd2hpbGUgd2Fp dGluZyBmb3IgY3JlYXRpbmcgcmVwbGljYXRpb24gc2xvdCBhZnRlciByZWNvdmVyeSI7CiRwcmlt YXJ5LT5zYWZlX3BzcWwoJ3Rlc3RfZGInLCAiU0VMRUNUIHBnX2NyZWF0ZV9waHlzaWNhbF9yZXBs aWNhdGlvbl9zbG90KCdpbnRlcm5hbF93YWxfcmVwbGljYXRpb25fc2xvdCcpIik7CgpyZXN0b3Jl X2JhY2t1cF9zdGFuZGJ5KCRiYXNlYmFja3VwZGlyMSwgJ2JhY2t1cF9sYWJlbDEnLCAkcHJpbWFy eS0+aG9zdCwgJHByaW1hcnktPnBvcnQsICczMDEgLT4gMzEyJyk7CgojIEFmdGVyIHJlc3RhcnQg c3RhbmRieSBkaWQgbm90IHN0YXJ0IGJlY2F1c2Ugb2YgZXJyb3IgKG5vdywgaXQgc2hvdWxkIHN0 YXJ0IGNvcnJlY3RseSkKJHN0YW5kYnktPnJlc3RhcnQ7Cgpkb25lX3Rlc3RpbmcoKTsK ------==--bound.497430.sjg23nxaikj7vz54.iva.yp-c.yandex.net--