Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bcSQP-00077c-9F for pgsql-docs@arkaria.postgresql.org; Wed, 24 Aug 2016 07:16:37 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1bcRwG-0006Vl-Ni for pgsql-docs@arkaria.postgresql.org; Wed, 24 Aug 2016 06:45:28 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1bcRvu-00063I-0h for pgsql-docs@postgresql.org; Wed, 24 Aug 2016 06:45:06 +0000 Received: from mail-lf0-x243.google.com ([2a00:1450:4010:c07::243]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1bcRvm-0000tf-Ab for pgsql-docs@postgresql.org; Wed, 24 Aug 2016 06:45:04 +0000 Received: by mail-lf0-x243.google.com with SMTP id 33so346509lfw.3 for ; Tue, 23 Aug 2016 23:44:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to; bh=pg5fPop60C5zX4zn5PQ3+5Xc3hPS+9xM9PCCPVVRXRw=; b=QiiOGWgwQpBvVu6zYDLSVo4yFk+xkOMooflWDlL1dikYktS0x69+yw+rIV1ciWAl4o ZVpCWN05XTATyC3ah+/8a9Jrjd3INCO4o04H5tVFOwyInVABG+8BtOcRDw7TUv0Ie+mo fEZ0TuXlrrut0/uYiFTk0nXCY1B1nY3nMrZvVD1EKM7K93PFG3ZzQtSyXn8GKh99IERb B80pBifqPli3oB/50GaYe5QjZ/P4gDLOJbxC4NjA67LSs9dlDaBxe6QV6qmikW1Cq7hp 04mJTUpA9gTCtq0cCWUdc7JX0Z6CdUWa3yRPbYx+cT0PJFNfScSqRAns4dbDvOOmN6dw TFtg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to; bh=pg5fPop60C5zX4zn5PQ3+5Xc3hPS+9xM9PCCPVVRXRw=; b=iBOAP9Rr8Oh1N0OLeoYJurPeuxXMmHY+l2jO1GcCxNl/nZ9R43HXaSebtBEjcBHUhY EIMtaprNEDPlvLwpLJkqwq7cLYq8yJARTp9unv0YevzJCZhAY0rMTdPwPYkXs2SRi8s4 zNd6CErE95je9Fj3Qp/RMRKMIWfF43KZMst94ZKf281sX/b3mNc98sRWuhvWOxDV3+O3 esyyvwny+AEidl5Y1oE7ZkI1T8sajlChuDaKby0/7qZxmhZ08KX58sIpu/mYcs+vPQtG fryICNc4n9M3x1KTHbZikkjHWoQYh7FfHUNFHSCrcSrvqjKd4wKwPvb4uQfKK7oc7gjq hEGw== X-Gm-Message-State: AE9vXwO5EzaTkt0ZZ5SMv5Y5pfSBVzNMJiT/0PP5+3P15vUExrIJD16iHuJAIHRG9hpvWg== X-Received: by 10.25.83.198 with SMTP id h189mr411171lfb.130.1472021095676; Tue, 23 Aug 2016 23:44:55 -0700 (PDT) Received: from [1.0.0.7] ([109.196.196.118]) by smtp.gmail.com with ESMTPSA id 83sm1670878ljj.14.2016.08.23.23.44.54 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 23 Aug 2016 23:44:55 -0700 (PDT) Subject: Re: UTF-8 docs To: Tatsuo Ishii References: <20160823.234340.102844932353677705.t-ishii@sraoss.co.jp> <20160824.081919.1280691778046843345.t-ishii@sraoss.co.jp> Cc: juergen@purtz.de, pgsql-docs@postgresql.org, vitus@wagner.pp.ru From: Alexander Law Message-ID: <8befeaca-abab-27b7-4e1c-9a964d0c704c@gmail.com> Date: Wed, 24 Aug 2016 09:44:53 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: <20160824.081919.1280691778046843345.t-ishii@sraoss.co.jp> Content-Type: multipart/mixed; boundary="------------8119A5B8947B531FCEA8C421" X-Pg-Spam-Score: -2.7 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-docs Precedence: bulk Sender: pgsql-docs-owner@postgresql.org This is a multi-part message in MIME format. --------------8119A5B8947B531FCEA8C421 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hello, 24.08.2016 02:19, Tatsuo Ishii пишет: >> We at Postgres Pro using the gettext technologies for this. And we >> have complete working toolchain (including modified Makefile) for >> translation the docs. > Sounds great but I am not sure if the technique can be applied to any > language including Japanese. I don't think that gettext is Russian-focused. At https://babel.postgresql.org/ I see a number of languages, including Japanese. Please look at the attached .pot for one of the doc files. You can use any translation software (which supports .po (e.g. poedit, Lokalize, ...)) to translate it to any language. And you can look at all the docs converted to .po for translation: http://oc.postgrespro.ru/index.php/s/puEJKoUwbZ3dia5/download > >> (If someone is interested in, we can share our results and provide >> everything needed to get started). >> Those who translated sgmls/xml before are moving to gettext/po (The >> FreeBSD Documentation Project is most remarkable example) or similar >> approaches. > As far as I know, FreeBSD's Japanese document project does not use > the gettext technologies. Unfortunately I can't read Japanese and don't understand how Japanese FreeBSD team works (and why cant it use the gettext technologies) , but the main FreeBSD Documentation team is moving to PO (see https://www.bsdcan.org/2016/schedule/track/Hacking/680.en.html). Best regards, Alexander Lakhin https://postgrespro.com/ --------------8119A5B8947B531FCEA8C421 Content-Type: application/vnd.ms-powerpoint; name="advanced.pot" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="advanced.pot" bXNnaWQgIiIKbXNnc3RyICIiCiJQcm9qZWN0LUlkLVZlcnNpb246IFBBQ0tB R0UgVkVSU0lPTlxuIgoiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTYtMDgtMTkg MTU6MTUrMDMwMFxuIgoiUE8tUmV2aXNpb24tRGF0ZTogWUVBUi1NTy1EQSBI TzpNSStaT05FXG4iCiJMYXN0LVRyYW5zbGF0b3I6IEZVTEwgTkFNRSA8RU1B SUxAQUREUkVTUz5cbiIKIkxhbmd1YWdlLVRlYW06IExBTkdVQUdFIDxMTEBs aS5vcmc+XG4iCiJNSU1FLVZlcnNpb246IDEuMFxuIgoiQ29udGVudC1UeXBl OiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04XG4iCiJDb250ZW50LVRyYW5z ZmVyLUVuY29kaW5nOiA4Yml0XG4iCgojOiAuL2FkdmFuY2VkLnhtbDo1KHRp dGxlKQptc2dpZCAiQWR2YW5jZWQgRmVhdHVyZXMiCm1zZ3N0ciAiIgoKIzog Li9hZHZhbmNlZC54bWw6OCh0aXRsZSkKbXNnaWQgIkludHJvZHVjdGlvbiIK bXNnc3RyICIiCgojOiAuL2FkdmFuY2VkLnhtbDoxMChwYXJhKQptc2dpZCAi SW4gdGhlIHByZXZpb3VzIGNoYXB0ZXIgd2UgaGF2ZSBjb3ZlcmVkIHRoZSBi YXNpY3Mgb2YgdXNpbmcgPGFjcm9ueW0+U1FMPC9hY3JvbnltPiB0byBzdG9y ZSBhbmQgYWNjZXNzIHlvdXIgZGF0YSBpbiA8cHJvZHVjdG5hbWU+UG9zdGdy ZVNRTDwvcHJvZHVjdG5hbWU+LiBXZSB3aWxsIG5vdyBkaXNjdXNzIHNvbWUg bW9yZSBhZHZhbmNlZCBmZWF0dXJlcyBvZiA8YWNyb255bT5TUUw8L2Fjcm9u eW0+IHRoYXQgc2ltcGxpZnkgbWFuYWdlbWVudCBhbmQgcHJldmVudCBsb3Nz IG9yIGNvcnJ1cHRpb24gb2YgeW91ciBkYXRhLiBGaW5hbGx5LCB3ZSB3aWxs IGxvb2sgYXQgc29tZSA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJvZHVj dG5hbWU+IGV4dGVuc2lvbnMuIgptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQu eG1sOjIwKHBhcmEpCm1zZ2lkICJUaGlzIGNoYXB0ZXIgd2lsbCBvbiBvY2Nh c2lvbiByZWZlciB0byBleGFtcGxlcyBmb3VuZCBpbiA8eHJlZiBsaW5rZW5k PVwidHV0b3JpYWwtc3FsXCIvPiB0byBjaGFuZ2Ugb3IgaW1wcm92ZSB0aGVt LCBzbyBpdCB3aWxsIGJlIHVzZWZ1bCB0byBoYXZlIHJlYWQgdGhhdCBjaGFw dGVyLiBTb21lIGV4YW1wbGVzIGZyb20gdGhpcyBjaGFwdGVyIGNhbiBhbHNv IGJlIGZvdW5kIGluIDxmaWxlbmFtZT5hZHZhbmNlZC5zcWw8L2ZpbGVuYW1l PiBpbiB0aGUgdHV0b3JpYWwgZGlyZWN0b3J5LiBUaGlzIGZpbGUgYWxzbyBj b250YWlucyBzb21lIHNhbXBsZSBkYXRhIHRvIGxvYWQsIHdoaWNoIGlzIG5v dCByZXBlYXRlZCBoZXJlLiAoUmVmZXIgdG8gPHhyZWYgbGlua2VuZD1cInR1 dG9yaWFsLXNxbC1pbnRyb1wiLz4gZm9yIGhvdyB0byB1c2UgdGhlIGZpbGUu KSIKbXNnc3RyICIiCgojOiAuL2FkdmFuY2VkLnhtbDozNCh0aXRsZSkKbXNn aWQgIlZpZXdzIgptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjM2KGlu ZGV4dGVybSkKbXNnaWQgIjxwcmltYXJ5PnZpZXc8L3ByaW1hcnk+Igptc2dz dHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjQ4KHByb2dyYW1saXN0aW5nKQoj LCBuby13cmFwCm1zZ2lkICJDUkVBVEUgVklFVyBteXZpZXcgQVNcbiAgICBT RUxFQ1QgY2l0eSwgdGVtcF9sbywgdGVtcF9oaSwgcHJjcCwgZGF0ZSwgbG9j YXRpb25cbiAgICAgICAgRlJPTSB3ZWF0aGVyLCBjaXRpZXNcbiAgICAgICAg V0hFUkUgY2l0eSA9IG5hbWU7XG5cblNFTEVDVCAqIEZST00gbXl2aWV3OyIK bXNnc3RyICIiCgojOiAuL2FkdmFuY2VkLnhtbDo0MChwYXJhKQptc2dpZCAi UmVmZXIgYmFjayB0byB0aGUgcXVlcmllcyBpbiA8eHJlZiBsaW5rZW5kPVwi dHV0b3JpYWwtam9pblwiLz4uIFN1cHBvc2UgdGhlIGNvbWJpbmVkIGxpc3Rp bmcgb2Ygd2VhdGhlciByZWNvcmRzIGFuZCBjaXR5IGxvY2F0aW9uIGlzIG9m IHBhcnRpY3VsYXIgaW50ZXJlc3QgdG8geW91ciBhcHBsaWNhdGlvbiwgYnV0 IHlvdSBkbyBub3Qgd2FudCB0byB0eXBlIHRoZSBxdWVyeSBlYWNoIHRpbWUg eW91IG5lZWQgaXQuIFlvdSBjYW4gY3JlYXRlIGEgPGZpcnN0dGVybT52aWV3 PC9maXJzdHRlcm0+IG92ZXIgdGhlIHF1ZXJ5LCB3aGljaCBnaXZlcyBhIG5h bWUgdG8gdGhlIHF1ZXJ5IHRoYXQgeW91IGNhbiByZWZlciB0byBsaWtlIGFu IG9yZGluYXJ5IHRhYmxlOiA8cGxhY2Vob2xkZXItMS8+Igptc2dzdHIgIiIK CiM6IC4vYWR2YW5jZWQueG1sOjU4KHBhcmEpCm1zZ2lkICJNYWtpbmcgbGli ZXJhbCB1c2Ugb2Ygdmlld3MgaXMgYSBrZXkgYXNwZWN0IG9mIGdvb2QgU1FM IGRhdGFiYXNlIGRlc2lnbi4gVmlld3MgYWxsb3cgeW91IHRvIGVuY2Fwc3Vs YXRlIHRoZSBkZXRhaWxzIG9mIHRoZSBzdHJ1Y3R1cmUgb2YgeW91ciB0YWJs ZXMsIHdoaWNoIG1pZ2h0IGNoYW5nZSBhcyB5b3VyIGFwcGxpY2F0aW9uIGV2 b2x2ZXMsIGJlaGluZCBjb25zaXN0ZW50IGludGVyZmFjZXMuIgptc2dzdHIg IiIKCiM6IC4vYWR2YW5jZWQueG1sOjY1KHBhcmEpCm1zZ2lkICJWaWV3cyBj YW4gYmUgdXNlZCBpbiBhbG1vc3QgYW55IHBsYWNlIGEgcmVhbCB0YWJsZSBj YW4gYmUgdXNlZC4gQnVpbGRpbmcgdmlld3MgdXBvbiBvdGhlciB2aWV3cyBp cyBub3QgdW5jb21tb24uIgptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1s OjczKHRpdGxlKQptc2dpZCAiRm9yZWlnbiBLZXlzIgptc2dzdHIgIiIKCiM6 IC4vYWR2YW5jZWQueG1sOjc1KGluZGV4dGVybSkKbXNnaWQgIjxwcmltYXJ5 PmZvcmVpZ24ga2V5PC9wcmltYXJ5PiIKbXNnc3RyICIiCgojOiAuL2FkdmFu Y2VkLnhtbDo3OShpbmRleHRlcm0pCm1zZ2lkICI8cHJpbWFyeT5yZWZlcmVu dGlhbCBpbnRlZ3JpdHk8L3ByaW1hcnk+Igptc2dzdHIgIiIKCiM6IC4vYWR2 YW5jZWQueG1sOjgzKHBhcmEpCm1zZ2lkICJSZWNhbGwgdGhlIDxjbGFzc25h bWU+d2VhdGhlcjwvY2xhc3NuYW1lPiBhbmQgPGNsYXNzbmFtZT5jaXRpZXM8 L2NsYXNzbmFtZT4gdGFibGVzIGZyb20gPHhyZWYgbGlua2VuZD1cInR1dG9y aWFsLXNxbFwiLz4uIENvbnNpZGVyIHRoZSBmb2xsb3dpbmcgcHJvYmxlbTog WW91IHdhbnQgdG8gbWFrZSBzdXJlIHRoYXQgbm8gb25lIGNhbiBpbnNlcnQg cm93cyBpbiB0aGUgPGNsYXNzbmFtZT53ZWF0aGVyPC9jbGFzc25hbWU+IHRh YmxlIHRoYXQgZG8gbm90IGhhdmUgYSBtYXRjaGluZyBlbnRyeSBpbiB0aGUg PGNsYXNzbmFtZT5jaXRpZXM8L2NsYXNzbmFtZT4gdGFibGUuIFRoaXMgaXMg Y2FsbGVkIG1haW50YWluaW5nIHRoZSA8Zmlyc3R0ZXJtPnJlZmVyZW50aWFs IGludGVncml0eTwvZmlyc3R0ZXJtPiBvZiB5b3VyIGRhdGEuIEluIHNpbXBs aXN0aWMgZGF0YWJhc2Ugc3lzdGVtcyB0aGlzIHdvdWxkIGJlIGltcGxlbWVu dGVkIChpZiBhdCBhbGwpIGJ5IGZpcnN0IGxvb2tpbmcgYXQgdGhlIDxjbGFz c25hbWU+Y2l0aWVzPC9jbGFzc25hbWU+IHRhYmxlIHRvIGNoZWNrIGlmIGEg bWF0Y2hpbmcgcmVjb3JkIGV4aXN0cywgYW5kIHRoZW4gaW5zZXJ0aW5nIG9y IHJlamVjdGluZyB0aGUgbmV3IDxjbGFzc25hbWU+d2VhdGhlcjwvY2xhc3Nu YW1lPiByZWNvcmRzLiBUaGlzIGFwcHJvYWNoIGhhcyBhIG51bWJlciBvZiBw cm9ibGVtcyBhbmQgaXMgdmVyeSBpbmNvbnZlbmllbnQsIHNvIDxwcm9kdWN0 bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gY2FuIGRvIHRoaXMgZm9y IHlvdS4iCm1zZ3N0ciAiIgoKIzogLi9hZHZhbmNlZC54bWw6MTAzKHByb2dy YW1saXN0aW5nKQojLCBuby13cmFwCm1zZ2lkICJDUkVBVEUgVEFCTEUgY2l0 aWVzIChcbiAgICAgICAgY2l0eSAgICAgdmFyY2hhcig4MCkgcHJpbWFyeSBr ZXksXG4gICAgICAgIGxvY2F0aW9uIHBvaW50XG4pO1xuXG5DUkVBVEUgVEFC TEUgd2VhdGhlciAoXG4gICAgICAgIGNpdHkgICAgICB2YXJjaGFyKDgwKSBy ZWZlcmVuY2VzIGNpdGllcyhjaXR5KSxcbiAgICAgICAgdGVtcF9sbyAgIGlu dCxcbiAgICAgICAgdGVtcF9oaSAgIGludCxcbiAgICAgICAgcHJjcCAgICAg IHJlYWwsXG4gICAgICAgIGRhdGUgICAgICBkYXRlXG4pOyIKbXNnc3RyICIi CgojOiAuL2FkdmFuY2VkLnhtbDoxMjAocHJvZ3JhbWxpc3RpbmcpCiMsIG5v LXdyYXAKbXNnaWQgIklOU0VSVCBJTlRPIHdlYXRoZXIgVkFMVUVTICgnQmVy a2VsZXknLCA0NSwgNTMsIDAuMCwgJzE5OTQtMTEtMjgnKTsiCm1zZ3N0ciAi IgoKIzogLi9hZHZhbmNlZC54bWw6MTAwKHBhcmEpCm1zZ2lkICJUaGUgbmV3 IGRlY2xhcmF0aW9uIG9mIHRoZSB0YWJsZXMgd291bGQgbG9vayBsaWtlIHRo aXM6IDxwbGFjZWhvbGRlci0xLz4gTm93IHRyeSBpbnNlcnRpbmcgYW4gaW52 YWxpZCByZWNvcmQ6IDxwbGFjZWhvbGRlci0yLz4gPHNjcmVlbj5cbkVSUk9S OiAgaW5zZXJ0IG9yIHVwZGF0ZSBvbiB0YWJsZSBcIndlYXRoZXJcIiB2aW9s YXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50IFwid2VhdGhlcl9jaXR5X2Zr ZXlcIlxuREVUQUlMOiAgS2V5IChjaXR5KT0oQmVya2VsZXkpIGlzIG5vdCBw cmVzZW50IGluIHRhYmxlIFwiY2l0aWVzXCIuXG48L3NjcmVlbj4iCm1zZ3N0 ciAiIgoKIzogLi9hZHZhbmNlZC54bWw6MTMwKHBhcmEpCm1zZ2lkICJUaGUg YmVoYXZpb3Igb2YgZm9yZWlnbiBrZXlzIGNhbiBiZSBmaW5lbHkgdHVuZWQg dG8geW91ciBhcHBsaWNhdGlvbi4gV2Ugd2lsbCBub3QgZ28gYmV5b25kIHRo aXMgc2ltcGxlIGV4YW1wbGUgaW4gdGhpcyB0dXRvcmlhbCwgYnV0IGp1c3Qg cmVmZXIgeW91IHRvIDx4cmVmIGxpbmtlbmQ9XCJkZGxcIi8+IGZvciBtb3Jl IGluZm9ybWF0aW9uLiBNYWtpbmcgY29ycmVjdCB1c2Ugb2YgZm9yZWlnbiBr ZXlzIHdpbGwgZGVmaW5pdGVseSBpbXByb3ZlIHRoZSBxdWFsaXR5IG9mIHlv dXIgZGF0YWJhc2UgYXBwbGljYXRpb25zLCBzbyB5b3UgYXJlIHN0cm9uZ2x5 IGVuY291cmFnZWQgdG8gbGVhcm4gYWJvdXQgdGhlbS4iCm1zZ3N0ciAiIgoK IzogLi9hZHZhbmNlZC54bWw6MTQyKHRpdGxlKQptc2dpZCAiVHJhbnNhY3Rp b25zIgptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjE0NChpbmRleHRl cm0pCm1zZ2lkICI8cHJpbWFyeT50cmFuc2FjdGlvbjwvcHJpbWFyeT4iCm1z Z3N0ciAiIgoKIzogLi9hZHZhbmNlZC54bWw6MTQ4KHBhcmEpCm1zZ2lkICI8 Zmlyc3R0ZXJtPlRyYW5zYWN0aW9uczwvZmlyc3R0ZXJtPiBhcmUgYSBmdW5k YW1lbnRhbCBjb25jZXB0IG9mIGFsbCBkYXRhYmFzZSBzeXN0ZW1zLiBUaGUg ZXNzZW50aWFsIHBvaW50IG9mIGEgdHJhbnNhY3Rpb24gaXMgdGhhdCBpdCBi dW5kbGVzIG11bHRpcGxlIHN0ZXBzIGludG8gYSBzaW5nbGUsIGFsbC1vci1u b3RoaW5nIG9wZXJhdGlvbi4gVGhlIGludGVybWVkaWF0ZSBzdGF0ZXMgYmV0 d2VlbiB0aGUgc3RlcHMgYXJlIG5vdCB2aXNpYmxlIHRvIG90aGVyIGNvbmN1 cnJlbnQgdHJhbnNhY3Rpb25zLCBhbmQgaWYgc29tZSBmYWlsdXJlIG9jY3Vy cyB0aGF0IHByZXZlbnRzIHRoZSB0cmFuc2FjdGlvbiBmcm9tIGNvbXBsZXRp bmcsIHRoZW4gbm9uZSBvZiB0aGUgc3RlcHMgYWZmZWN0IHRoZSBkYXRhYmFz ZSBhdCBhbGwuIgptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjE2NChw cm9ncmFtbGlzdGluZykKIywgbm8td3JhcAptc2dpZCAiVVBEQVRFIGFjY291 bnRzIFNFVCBiYWxhbmNlID0gYmFsYW5jZSAtIDEwMC4wMFxuICAgIFdIRVJF IG5hbWUgPSAnQWxpY2UnO1xuVVBEQVRFIGJyYW5jaGVzIFNFVCBiYWxhbmNl ID0gYmFsYW5jZSAtIDEwMC4wMFxuICAgIFdIRVJFIG5hbWUgPSAoU0VMRUNU IGJyYW5jaF9uYW1lIEZST00gYWNjb3VudHMgV0hFUkUgbmFtZSA9ICdBbGlj ZScpO1xuVVBEQVRFIGFjY291bnRzIFNFVCBiYWxhbmNlID0gYmFsYW5jZSAr IDEwMC4wMFxuICAgIFdIRVJFIG5hbWUgPSAnQm9iJztcblVQREFURSBicmFu Y2hlcyBTRVQgYmFsYW5jZSA9IGJhbGFuY2UgKyAxMDAuMDBcbiAgICBXSEVS RSBuYW1lID0gKFNFTEVDVCBicmFuY2hfbmFtZSBGUk9NIGFjY291bnRzIFdI RVJFIG5hbWUgPSAnQm9iJyk7Igptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQu eG1sOjE1NyhwYXJhKQptc2dpZCAiRm9yIGV4YW1wbGUsIGNvbnNpZGVyIGEg YmFuayBkYXRhYmFzZSB0aGF0IGNvbnRhaW5zIGJhbGFuY2VzIGZvciB2YXJp b3VzIGN1c3RvbWVyIGFjY291bnRzLCBhcyB3ZWxsIGFzIHRvdGFsIGRlcG9z aXQgYmFsYW5jZXMgZm9yIGJyYW5jaGVzLiBTdXBwb3NlIHRoYXQgd2Ugd2Fu dCB0byByZWNvcmQgYSBwYXltZW50IG9mICQxMDAuMDAgZnJvbSBBbGljZSdz IGFjY291bnQgdG8gQm9iJ3MgYWNjb3VudC4gU2ltcGxpZnlpbmcgb3V0cmFn ZW91c2x5LCB0aGUgU1FMIGNvbW1hbmRzIGZvciB0aGlzIG1pZ2h0IGxvb2sg bGlrZTogPHBsYWNlaG9sZGVyLTEvPiIKbXNnc3RyICIiCgojOiAuL2FkdmFu Y2VkLnhtbDoxNzYocGFyYSkKbXNnaWQgIlRoZSBkZXRhaWxzIG9mIHRoZXNl IGNvbW1hbmRzIGFyZSBub3QgaW1wb3J0YW50IGhlcmU7IHRoZSBpbXBvcnRh bnQgcG9pbnQgaXMgdGhhdCB0aGVyZSBhcmUgc2V2ZXJhbCBzZXBhcmF0ZSB1 cGRhdGVzIGludm9sdmVkIHRvIGFjY29tcGxpc2ggdGhpcyByYXRoZXIgc2lt cGxlIG9wZXJhdGlvbi4gT3VyIGJhbmsncyBvZmZpY2VycyB3aWxsIHdhbnQg dG8gYmUgYXNzdXJlZCB0aGF0IGVpdGhlciBhbGwgdGhlc2UgdXBkYXRlcyBo YXBwZW4sIG9yIG5vbmUgb2YgdGhlbSBoYXBwZW4uIEl0IHdvdWxkIGNlcnRh aW5seSBub3QgZG8gZm9yIGEgc3lzdGVtIGZhaWx1cmUgdG8gcmVzdWx0IGlu IEJvYiByZWNlaXZpbmcgJDEwMC4wMCB0aGF0IHdhcyBub3QgZGViaXRlZCBm cm9tIEFsaWNlLiBOb3Igd291bGQgQWxpY2UgbG9uZyByZW1haW4gYSBoYXBw eSBjdXN0b21lciBpZiBzaGUgd2FzIGRlYml0ZWQgd2l0aG91dCBCb2IgYmVp bmcgY3JlZGl0ZWQuIFdlIG5lZWQgYSBndWFyYW50ZWUgdGhhdCBpZiBzb21l dGhpbmcgZ29lcyB3cm9uZyBwYXJ0d2F5IHRocm91Z2ggdGhlIG9wZXJhdGlv biwgbm9uZSBvZiB0aGUgc3RlcHMgZXhlY3V0ZWQgc28gZmFyIHdpbGwgdGFr ZSBlZmZlY3QuIEdyb3VwaW5nIHRoZSB1cGRhdGVzIGludG8gYSA8Zmlyc3R0 ZXJtPnRyYW5zYWN0aW9uPC9maXJzdHRlcm0+IGdpdmVzIHVzIHRoaXMgZ3Vh cmFudGVlLiBBIHRyYW5zYWN0aW9uIGlzIHNhaWQgdG8gYmUgPGZpcnN0dGVy bT5hdG9taWM8L2ZpcnN0dGVybT46IGZyb20gdGhlIHBvaW50IG9mIHZpZXcg b2Ygb3RoZXIgdHJhbnNhY3Rpb25zLCBpdCBlaXRoZXIgaGFwcGVucyBjb21w bGV0ZWx5IG9yIG5vdCBhdCBhbGwuIgptc2dzdHIgIiIKCiM6IC4vYWR2YW5j ZWQueG1sOjE5MShwYXJhKQptc2dpZCAiV2UgYWxzbyB3YW50IGEgZ3VhcmFu dGVlIHRoYXQgb25jZSBhIHRyYW5zYWN0aW9uIGlzIGNvbXBsZXRlZCBhbmQg YWNrbm93bGVkZ2VkIGJ5IHRoZSBkYXRhYmFzZSBzeXN0ZW0sIGl0IGhhcyBp bmRlZWQgYmVlbiBwZXJtYW5lbnRseSByZWNvcmRlZCBhbmQgd29uJ3QgYmUg bG9zdCBldmVuIGlmIGEgY3Jhc2ggZW5zdWVzIHNob3J0bHkgdGhlcmVhZnRl ci4gRm9yIGV4YW1wbGUsIGlmIHdlIGFyZSByZWNvcmRpbmcgYSBjYXNoIHdp dGhkcmF3YWwgYnkgQm9iLCB3ZSBkbyBub3Qgd2FudCBhbnkgY2hhbmNlIHRo YXQgdGhlIGRlYml0IHRvIGhpcyBhY2NvdW50IHdpbGwgZGlzYXBwZWFyIGlu IGEgY3Jhc2gganVzdCBhZnRlciBoZSB3YWxrcyBvdXQgdGhlIGJhbmsgZG9v ci4gQSB0cmFuc2FjdGlvbmFsIGRhdGFiYXNlIGd1YXJhbnRlZXMgdGhhdCBh bGwgdGhlIHVwZGF0ZXMgbWFkZSBieSBhIHRyYW5zYWN0aW9uIGFyZSBsb2dn ZWQgaW4gcGVybWFuZW50IHN0b3JhZ2UgKGkuZS4sIG9uIGRpc2spIGJlZm9y ZSB0aGUgdHJhbnNhY3Rpb24gaXMgcmVwb3J0ZWQgY29tcGxldGUuIgptc2dz dHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjIwNChwYXJhKQptc2dpZCAiQW5v dGhlciBpbXBvcnRhbnQgcHJvcGVydHkgb2YgdHJhbnNhY3Rpb25hbCBkYXRh YmFzZXMgaXMgY2xvc2VseSByZWxhdGVkIHRvIHRoZSBub3Rpb24gb2YgYXRv bWljIHVwZGF0ZXM6IHdoZW4gbXVsdGlwbGUgdHJhbnNhY3Rpb25zIGFyZSBy dW5uaW5nIGNvbmN1cnJlbnRseSwgZWFjaCBvbmUgc2hvdWxkIG5vdCBiZSBh YmxlIHRvIHNlZSB0aGUgaW5jb21wbGV0ZSBjaGFuZ2VzIG1hZGUgYnkgb3Ro ZXJzLiBGb3IgZXhhbXBsZSwgaWYgb25lIHRyYW5zYWN0aW9uIGlzIGJ1c3kg dG90YWxsaW5nIGFsbCB0aGUgYnJhbmNoIGJhbGFuY2VzLCBpdCB3b3VsZCBu b3QgZG8gZm9yIGl0IHRvIGluY2x1ZGUgdGhlIGRlYml0IGZyb20gQWxpY2Un cyBicmFuY2ggYnV0IG5vdCB0aGUgY3JlZGl0IHRvIEJvYidzIGJyYW5jaCwg bm9yIHZpY2UgdmVyc2EuIFNvIHRyYW5zYWN0aW9ucyBtdXN0IGJlIGFsbC1v ci1ub3RoaW5nIG5vdCBvbmx5IGluIHRlcm1zIG9mIHRoZWlyIHBlcm1hbmVu dCBlZmZlY3Qgb24gdGhlIGRhdGFiYXNlLCBidXQgYWxzbyBpbiB0ZXJtcyBv ZiB0aGVpciB2aXNpYmlsaXR5IGFzIHRoZXkgaGFwcGVuLiBUaGUgdXBkYXRl cyBtYWRlIHNvIGZhciBieSBhbiBvcGVuIHRyYW5zYWN0aW9uIGFyZSBpbnZp c2libGUgdG8gb3RoZXIgdHJhbnNhY3Rpb25zIHVudGlsIHRoZSB0cmFuc2Fj dGlvbiBjb21wbGV0ZXMsIHdoZXJldXBvbiBhbGwgdGhlIHVwZGF0ZXMgYmVj b21lIHZpc2libGUgc2ltdWx0YW5lb3VzbHkuIgptc2dzdHIgIiIKCiM6IC4v YWR2YW5jZWQueG1sOjIyNShwcm9ncmFtbGlzdGluZykKIywgbm8td3JhcApt c2dpZCAiQkVHSU47XG5VUERBVEUgYWNjb3VudHMgU0VUIGJhbGFuY2UgPSBi YWxhbmNlIC0gMTAwLjAwXG4gICAgV0hFUkUgbmFtZSA9ICdBbGljZSc7XG4t LSBldGMgZXRjXG5DT01NSVQ7Igptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQu eG1sOjIxOShwYXJhKQptc2dpZCAiSW4gPHByb2R1Y3RuYW1lPlBvc3RncmVT UUw8L3Byb2R1Y3RuYW1lPiwgYSB0cmFuc2FjdGlvbiBpcyBzZXQgdXAgYnkg c3Vycm91bmRpbmcgdGhlIFNRTCBjb21tYW5kcyBvZiB0aGUgdHJhbnNhY3Rp b24gd2l0aCA8Y29tbWFuZD5CRUdJTjwvY29tbWFuZD4gYW5kIDxjb21tYW5k PkNPTU1JVDwvY29tbWFuZD4gY29tbWFuZHMuIFNvIG91ciBiYW5raW5nIHRy YW5zYWN0aW9uIHdvdWxkIGFjdHVhbGx5IGxvb2sgbGlrZTogPHBsYWNlaG9s ZGVyLTEvPiIKbXNnc3RyICIiCgojOiAuL2FkdmFuY2VkLnhtbDoyMzQocGFy YSkKbXNnaWQgIklmLCBwYXJ0d2F5IHRocm91Z2ggdGhlIHRyYW5zYWN0aW9u LCB3ZSBkZWNpZGUgd2UgZG8gbm90IHdhbnQgdG8gY29tbWl0IChwZXJoYXBz IHdlIGp1c3Qgbm90aWNlZCB0aGF0IEFsaWNlJ3MgYmFsYW5jZSB3ZW50IG5l Z2F0aXZlKSwgd2UgY2FuIGlzc3VlIHRoZSBjb21tYW5kIDxjb21tYW5kPlJP TExCQUNLPC9jb21tYW5kPiBpbnN0ZWFkIG9mIDxjb21tYW5kPkNPTU1JVDwv Y29tbWFuZD4sIGFuZCBhbGwgb3VyIHVwZGF0ZXMgc28gZmFyIHdpbGwgYmUg Y2FuY2VsZWQuIgptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjI0MShw YXJhKQptc2dpZCAiPHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3Ru YW1lPiBhY3R1YWxseSB0cmVhdHMgZXZlcnkgU1FMIHN0YXRlbWVudCBhcyBi ZWluZyBleGVjdXRlZCB3aXRoaW4gYSB0cmFuc2FjdGlvbi4gSWYgeW91IGRv IG5vdCBpc3N1ZSBhIDxjb21tYW5kPkJFR0lOPC9jb21tYW5kPiBjb21tYW5k LCB0aGVuIGVhY2ggaW5kaXZpZHVhbCBzdGF0ZW1lbnQgaGFzIGFuIGltcGxp Y2l0IDxjb21tYW5kPkJFR0lOPC9jb21tYW5kPiBhbmQgKGlmIHN1Y2Nlc3Nm dWwpIDxjb21tYW5kPkNPTU1JVDwvY29tbWFuZD4gd3JhcHBlZCBhcm91bmQg aXQuIEEgZ3JvdXAgb2Ygc3RhdGVtZW50cyBzdXJyb3VuZGVkIGJ5IDxjb21t YW5kPkJFR0lOPC9jb21tYW5kPiBhbmQgPGNvbW1hbmQ+Q09NTUlUPC9jb21t YW5kPiBpcyBzb21ldGltZXMgY2FsbGVkIGEgPGZpcnN0dGVybT50cmFuc2Fj dGlvbiBibG9jazwvZmlyc3R0ZXJtPi4iCm1zZ3N0ciAiIgoKIzogLi9hZHZh bmNlZC54bWw6MjUyKHBhcmEpCm1zZ2lkICJTb21lIGNsaWVudCBsaWJyYXJp ZXMgaXNzdWUgPGNvbW1hbmQ+QkVHSU48L2NvbW1hbmQ+IGFuZCA8Y29tbWFu ZD5DT01NSVQ8L2NvbW1hbmQ+IGNvbW1hbmRzIGF1dG9tYXRpY2FsbHksIHNv IHRoYXQgeW91IG1pZ2h0IGdldCB0aGUgZWZmZWN0IG9mIHRyYW5zYWN0aW9u IGJsb2NrcyB3aXRob3V0IGFza2luZy4gQ2hlY2sgdGhlIGRvY3VtZW50YXRp b24gZm9yIHRoZSBpbnRlcmZhY2UgeW91IGFyZSB1c2luZy4iCm1zZ3N0ciAi IgoKIzogLi9hZHZhbmNlZC54bWw6MjYwKHBhcmEpCm1zZ2lkICJJdCdzIHBv c3NpYmxlIHRvIGNvbnRyb2wgdGhlIHN0YXRlbWVudHMgaW4gYSB0cmFuc2Fj dGlvbiBpbiBhIG1vcmUgZ3JhbnVsYXIgZmFzaGlvbiB0aHJvdWdoIHRoZSB1 c2Ugb2YgPGZpcnN0dGVybT5zYXZlcG9pbnRzPC9maXJzdHRlcm0+LiBTYXZl cG9pbnRzIGFsbG93IHlvdSB0byBzZWxlY3RpdmVseSBkaXNjYXJkIHBhcnRz IG9mIHRoZSB0cmFuc2FjdGlvbiwgd2hpbGUgY29tbWl0dGluZyB0aGUgcmVz dC4gQWZ0ZXIgZGVmaW5pbmcgYSBzYXZlcG9pbnQgd2l0aCA8Y29tbWFuZD5T QVZFUE9JTlQ8L2NvbW1hbmQ+LCB5b3UgY2FuIGlmIG5lZWRlZCByb2xsIGJh Y2sgdG8gdGhlIHNhdmVwb2ludCB3aXRoIDxjb21tYW5kPlJPTExCQUNLIFRP PC9jb21tYW5kPi4gQWxsIHRoZSB0cmFuc2FjdGlvbidzIGRhdGFiYXNlIGNo YW5nZXMgYmV0d2VlbiBkZWZpbmluZyB0aGUgc2F2ZXBvaW50IGFuZCByb2xs aW5nIGJhY2sgdG8gaXQgYXJlIGRpc2NhcmRlZCwgYnV0IGNoYW5nZXMgZWFy bGllciB0aGFuIHRoZSBzYXZlcG9pbnQgYXJlIGtlcHQuIgptc2dzdHIgIiIK CiM6IC4vYWR2YW5jZWQueG1sOjI3MShwYXJhKQptc2dpZCAiQWZ0ZXIgcm9s bGluZyBiYWNrIHRvIGEgc2F2ZXBvaW50LCBpdCBjb250aW51ZXMgdG8gYmUg ZGVmaW5lZCwgc28geW91IGNhbiByb2xsIGJhY2sgdG8gaXQgc2V2ZXJhbCB0 aW1lcy4gQ29udmVyc2VseSwgaWYgeW91IGFyZSBzdXJlIHlvdSB3b24ndCBu ZWVkIHRvIHJvbGwgYmFjayB0byBhIHBhcnRpY3VsYXIgc2F2ZXBvaW50IGFn YWluLCBpdCBjYW4gYmUgcmVsZWFzZWQsIHNvIHRoZSBzeXN0ZW0gY2FuIGZy ZWUgc29tZSByZXNvdXJjZXMuIEtlZXAgaW4gbWluZCB0aGF0IGVpdGhlciBy ZWxlYXNpbmcgb3Igcm9sbGluZyBiYWNrIHRvIGEgc2F2ZXBvaW50IHdpbGwg YXV0b21hdGljYWxseSByZWxlYXNlIGFsbCBzYXZlcG9pbnRzIHRoYXQgd2Vy ZSBkZWZpbmVkIGFmdGVyIGl0LiIKbXNnc3RyICIiCgojOiAuL2FkdmFuY2Vk LnhtbDoyODAocGFyYSkKbXNnaWQgIkFsbCB0aGlzIGlzIGhhcHBlbmluZyB3 aXRoaW4gdGhlIHRyYW5zYWN0aW9uIGJsb2NrLCBzbyBub25lIG9mIGl0IGlz IHZpc2libGUgdG8gb3RoZXIgZGF0YWJhc2Ugc2Vzc2lvbnMuIFdoZW4gYW5k IGlmIHlvdSBjb21taXQgdGhlIHRyYW5zYWN0aW9uIGJsb2NrLCB0aGUgY29t bWl0dGVkIGFjdGlvbnMgYmVjb21lIHZpc2libGUgYXMgYSB1bml0IHRvIG90 aGVyIHNlc3Npb25zLCB3aGlsZSB0aGUgcm9sbGVkLWJhY2sgYWN0aW9ucyBu ZXZlciBiZWNvbWUgdmlzaWJsZSBhdCBhbGwuIgptc2dzdHIgIiIKCiM6IC4v YWR2YW5jZWQueG1sOjI5NChwcm9ncmFtbGlzdGluZykKIywgbm8td3JhcApt c2dpZCAiQkVHSU47XG5VUERBVEUgYWNjb3VudHMgU0VUIGJhbGFuY2UgPSBi YWxhbmNlIC0gMTAwLjAwXG4gICAgV0hFUkUgbmFtZSA9ICdBbGljZSc7XG5T QVZFUE9JTlQgbXlfc2F2ZXBvaW50O1xuVVBEQVRFIGFjY291bnRzIFNFVCBi YWxhbmNlID0gYmFsYW5jZSArIDEwMC4wMFxuICAgIFdIRVJFIG5hbWUgPSAn Qm9iJztcbi0tIG9vcHMgLi4uIGZvcmdldCB0aGF0IGFuZCB1c2UgV2FsbHkn cyBhY2NvdW50XG5ST0xMQkFDSyBUTyBteV9zYXZlcG9pbnQ7XG5VUERBVEUg YWNjb3VudHMgU0VUIGJhbGFuY2UgPSBiYWxhbmNlICsgMTAwLjAwXG4gICAg V0hFUkUgbmFtZSA9ICdXYWxseSc7XG5DT01NSVQ7Igptc2dzdHIgIiIKCiM6 IC4vYWR2YW5jZWQueG1sOjI4OChwYXJhKQptc2dpZCAiUmVtZW1iZXJpbmcg dGhlIGJhbmsgZGF0YWJhc2UsIHN1cHBvc2Ugd2UgZGViaXQgJDEwMC4wMCBm cm9tIEFsaWNlJ3MgYWNjb3VudCwgYW5kIGNyZWRpdCBCb2IncyBhY2NvdW50 LCBvbmx5IHRvIGZpbmQgbGF0ZXIgdGhhdCB3ZSBzaG91bGQgaGF2ZSBjcmVk aXRlZCBXYWxseSdzIGFjY291bnQuIFdlIGNvdWxkIGRvIGl0IHVzaW5nIHNh dmVwb2ludHMgbGlrZSB0aGlzOiA8cGxhY2Vob2xkZXItMS8+Igptc2dzdHIg IiIKCiM6IC4vYWR2YW5jZWQueG1sOjMwOShwYXJhKQptc2dpZCAiVGhpcyBl eGFtcGxlIGlzLCBvZiBjb3Vyc2UsIG92ZXJzaW1wbGlmaWVkLCBidXQgdGhl cmUncyBhIGxvdCBvZiBjb250cm9sIHBvc3NpYmxlIGluIGEgdHJhbnNhY3Rp b24gYmxvY2sgdGhyb3VnaCB0aGUgdXNlIG9mIHNhdmVwb2ludHMuIE1vcmVv dmVyLCA8Y29tbWFuZD5ST0xMQkFDSyBUTzwvY29tbWFuZD4gaXMgdGhlIG9u bHkgd2F5IHRvIHJlZ2FpbiBjb250cm9sIG9mIGEgdHJhbnNhY3Rpb24gYmxv Y2sgdGhhdCB3YXMgcHV0IGluIGFib3J0ZWQgc3RhdGUgYnkgdGhlIHN5c3Rl bSBkdWUgdG8gYW4gZXJyb3IsIHNob3J0IG9mIHJvbGxpbmcgaXQgYmFjayBj b21wbGV0ZWx5IGFuZCBzdGFydGluZyBhZ2Fpbi4iCm1zZ3N0ciAiIgoKIzog Li9hZHZhbmNlZC54bWw6MzIyKHRpdGxlKQptc2dpZCAiV2luZG93IEZ1bmN0 aW9ucyIKbXNnc3RyICIiCgojOiAuL2FkdmFuY2VkLnhtbDozMjQoaW5kZXh0 ZXJtKQptc2dpZCAiPHByaW1hcnk+d2luZG93IGZ1bmN0aW9uPC9wcmltYXJ5 PiIKbXNnc3RyICIiCgojOiAuL2FkdmFuY2VkLnhtbDozMjgocGFyYSkKbXNn aWQgIkEgPGZpcnN0dGVybT53aW5kb3cgZnVuY3Rpb248L2ZpcnN0dGVybT4g cGVyZm9ybXMgYSBjYWxjdWxhdGlvbiBhY3Jvc3MgYSBzZXQgb2YgdGFibGUg cm93cyB0aGF0IGFyZSBzb21laG93IHJlbGF0ZWQgdG8gdGhlIGN1cnJlbnQg cm93LiBUaGlzIGlzIGNvbXBhcmFibGUgdG8gdGhlIHR5cGUgb2YgY2FsY3Vs YXRpb24gdGhhdCBjYW4gYmUgZG9uZSB3aXRoIGFuIGFnZ3JlZ2F0ZSBmdW5j dGlvbi4gQnV0IHVubGlrZSByZWd1bGFyIGFnZ3JlZ2F0ZSBmdW5jdGlvbnMs IHVzZSBvZiBhIHdpbmRvdyBmdW5jdGlvbiBkb2VzIG5vdCBjYXVzZSByb3dz IHRvIGJlY29tZSBncm91cGVkIGludG8gYSBzaW5nbGUgb3V0cHV0IHJvdyAm bWRhc2g7IHRoZSByb3dzIHJldGFpbiB0aGVpciBzZXBhcmF0ZSBpZGVudGl0 aWVzLiBCZWhpbmQgdGhlIHNjZW5lcywgdGhlIHdpbmRvdyBmdW5jdGlvbiBp cyBhYmxlIHRvIGFjY2VzcyBtb3JlIHRoYW4ganVzdCB0aGUgY3VycmVudCBy b3cgb2YgdGhlIHF1ZXJ5IHJlc3VsdC4iCm1zZ3N0ciAiIgoKIzogLi9hZHZh bmNlZC54bWw6MzQzKHByb2dyYW1saXN0aW5nKQojLCBuby13cmFwCm1zZ2lk ICJTRUxFQ1QgZGVwbmFtZSwgZW1wbm8sIHNhbGFyeSwgYXZnKHNhbGFyeSkg T1ZFUiAoUEFSVElUSU9OIEJZIGRlcG5hbWUpIEZST00gZW1wc2FsYXJ5OyIK bXNnc3RyICIiCgojOiAuL2FkdmFuY2VkLnhtbDozMzkocGFyYSkKbXNnaWQg IkhlcmUgaXMgYW4gZXhhbXBsZSB0aGF0IHNob3dzIGhvdyB0byBjb21wYXJl IGVhY2ggZW1wbG95ZWUncyBzYWxhcnkgd2l0aCB0aGUgYXZlcmFnZSBzYWxh cnkgaW4gaGlzIG9yIGhlciBkZXBhcnRtZW50OiA8cGxhY2Vob2xkZXItMS8+ IDxzY3JlZW4+XG4gIGRlcG5hbWUgIHwgZW1wbm8gfCBzYWxhcnkgfCAgICAg ICAgICBhdmcgICAgICAgICAgXG4tLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gZGV2ZWxvcCAgIHwgICAg MTEgfCAgIDUyMDAgfCA1MDIwLjAwMDAwMDAwMDAwMDAwMDBcbiBkZXZlbG9w ICAgfCAgICAgNyB8ICAgNDIwMCB8IDUwMjAuMDAwMDAwMDAwMDAwMDAwMFxu IGRldmVsb3AgICB8ICAgICA5IHwgICA0NTAwIHwgNTAyMC4wMDAwMDAwMDAw MDAwMDAwXG4gZGV2ZWxvcCAgIHwgICAgIDggfCAgIDYwMDAgfCA1MDIwLjAw MDAwMDAwMDAwMDAwMDBcbiBkZXZlbG9wICAgfCAgICAxMCB8ICAgNTIwMCB8 IDUwMjAuMDAwMDAwMDAwMDAwMDAwMFxuIHBlcnNvbm5lbCB8ICAgICA1IHwg ICAzNTAwIHwgMzcwMC4wMDAwMDAwMDAwMDAwMDAwXG4gcGVyc29ubmVsIHwg ICAgIDIgfCAgIDM5MDAgfCAzNzAwLjAwMDAwMDAwMDAwMDAwMDBcbiBzYWxl cyAgICAgfCAgICAgMyB8ICAgNDgwMCB8IDQ4NjYuNjY2NjY2NjY2NjY2NjY2 N1xuIHNhbGVzICAgICB8ICAgICAxIHwgICA1MDAwIHwgNDg2Ni42NjY2NjY2 NjY2NjY2NjY3XG4gc2FsZXMgICAgIHwgICAgIDQgfCAgIDQ4MDAgfCA0ODY2 LjY2NjY2NjY2NjY2NjY2NjdcbigxMCByb3dzKVxuPC9zY3JlZW4+IFRoZSBm aXJzdCB0aHJlZSBvdXRwdXQgY29sdW1ucyBjb21lIGRpcmVjdGx5IGZyb20g dGhlIHRhYmxlIDxzdHJ1Y3RuYW1lPmVtcHNhbGFyeTwvc3RydWN0bmFtZT4s IGFuZCB0aGVyZSBpcyBvbmUgb3V0cHV0IHJvdyBmb3IgZWFjaCByb3cgaW4g dGhlIHRhYmxlLiBUaGUgZm91cnRoIGNvbHVtbiByZXByZXNlbnRzIGFuIGF2 ZXJhZ2UgdGFrZW4gYWNyb3NzIGFsbCB0aGUgdGFibGUgcm93cyB0aGF0IGhh dmUgdGhlIHNhbWUgPHN0cnVjdGZpZWxkPmRlcG5hbWU8L3N0cnVjdGZpZWxk PiB2YWx1ZSBhcyB0aGUgY3VycmVudCByb3cuIChUaGlzIGFjdHVhbGx5IGlz IHRoZSBzYW1lIGZ1bmN0aW9uIGFzIHRoZSByZWd1bGFyIDxmdW5jdGlvbj5h dmc8L2Z1bmN0aW9uPiBhZ2dyZWdhdGUgZnVuY3Rpb24sIGJ1dCB0aGUgPGxp dGVyYWw+T1ZFUjwvbGl0ZXJhbD4gY2xhdXNlIGNhdXNlcyBpdCB0byBiZSB0 cmVhdGVkIGFzIGEgd2luZG93IGZ1bmN0aW9uIGFuZCBjb21wdXRlZCBhY3Jv c3MgYW4gYXBwcm9wcmlhdGUgc2V0IG9mIHJvd3MuKSIKbXNnc3RyICIiCgoj OiAuL2FkdmFuY2VkLnhtbDozNzMocGFyYSkKbXNnaWQgIkEgd2luZG93IGZ1 bmN0aW9uIGNhbGwgYWx3YXlzIGNvbnRhaW5zIGFuIDxsaXRlcmFsPk9WRVI8 L2xpdGVyYWw+IGNsYXVzZSBkaXJlY3RseSBmb2xsb3dpbmcgdGhlIHdpbmRv dyBmdW5jdGlvbidzIG5hbWUgYW5kIGFyZ3VtZW50KHMpLiBUaGlzIGlzIHdo YXQgc3ludGFjdGljYWxseSBkaXN0aW5ndWlzaGVzIGl0IGZyb20gYSByZWd1 bGFyIGZ1bmN0aW9uIG9yIGFnZ3JlZ2F0ZSBmdW5jdGlvbi4gVGhlIDxsaXRl cmFsPk9WRVI8L2xpdGVyYWw+IGNsYXVzZSBkZXRlcm1pbmVzIGV4YWN0bHkg aG93IHRoZSByb3dzIG9mIHRoZSBxdWVyeSBhcmUgc3BsaXQgdXAgZm9yIHBy b2Nlc3NpbmcgYnkgdGhlIHdpbmRvdyBmdW5jdGlvbi4gVGhlIDxsaXRlcmFs PlBBUlRJVElPTiBCWTwvbGl0ZXJhbD4gbGlzdCB3aXRoaW4gPGxpdGVyYWw+ T1ZFUjwvbGl0ZXJhbD4gc3BlY2lmaWVzIGRpdmlkaW5nIHRoZSByb3dzIGlu dG8gZ3JvdXBzLCBvciBwYXJ0aXRpb25zLCB0aGF0IHNoYXJlIHRoZSBzYW1l IHZhbHVlcyBvZiB0aGUgPGxpdGVyYWw+UEFSVElUSU9OIEJZPC9saXRlcmFs PiBleHByZXNzaW9uKHMpLiBGb3IgZWFjaCByb3csIHRoZSB3aW5kb3cgZnVu Y3Rpb24gaXMgY29tcHV0ZWQgYWNyb3NzIHRoZSByb3dzIHRoYXQgZmFsbCBp bnRvIHRoZSBzYW1lIHBhcnRpdGlvbiBhcyB0aGUgY3VycmVudCByb3cuIgpt c2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjM5Mihwcm9ncmFtbGlzdGlu ZykKIywgbm8td3JhcAptc2dpZCAiU0VMRUNUIGRlcG5hbWUsIGVtcG5vLCBz YWxhcnksXG4gICAgICAgcmFuaygpIE9WRVIgKFBBUlRJVElPTiBCWSBkZXBu YW1lIE9SREVSIEJZIHNhbGFyeSBERVNDKVxuRlJPTSBlbXBzYWxhcnk7Igpt c2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjM4NihwYXJhKQptc2dpZCAi WW91IGNhbiBhbHNvIGNvbnRyb2wgdGhlIG9yZGVyIGluIHdoaWNoIHJvd3Mg YXJlIHByb2Nlc3NlZCBieSB3aW5kb3cgZnVuY3Rpb25zIHVzaW5nIDxsaXRl cmFsPk9SREVSIEJZPC9saXRlcmFsPiB3aXRoaW4gPGxpdGVyYWw+T1ZFUjwv bGl0ZXJhbD4uIChUaGUgd2luZG93IDxsaXRlcmFsPk9SREVSIEJZPC9saXRl cmFsPiBkb2VzIG5vdCBldmVuIGhhdmUgdG8gbWF0Y2ggdGhlIG9yZGVyIGlu IHdoaWNoIHRoZSByb3dzIGFyZSBvdXRwdXQuKSBIZXJlIGlzIGFuIGV4YW1w bGU6IDxwbGFjZWhvbGRlci0xLz4gPHNjcmVlbj5cbiAgZGVwbmFtZSAgfCBl bXBubyB8IHNhbGFyeSB8IHJhbmsgXG4tLS0tLS0tLS0tLSstLS0tLS0tKy0t LS0tLS0tKy0tLS0tLVxuIGRldmVsb3AgICB8ICAgICA4IHwgICA2MDAwIHwg ICAgMVxuIGRldmVsb3AgICB8ICAgIDEwIHwgICA1MjAwIHwgICAgMlxuIGRl dmVsb3AgICB8ICAgIDExIHwgICA1MjAwIHwgICAgMlxuIGRldmVsb3AgICB8 ICAgICA5IHwgICA0NTAwIHwgICAgNFxuIGRldmVsb3AgICB8ICAgICA3IHwg ICA0MjAwIHwgICAgNVxuIHBlcnNvbm5lbCB8ICAgICAyIHwgICAzOTAwIHwg ICAgMVxuIHBlcnNvbm5lbCB8ICAgICA1IHwgICAzNTAwIHwgICAgMlxuIHNh bGVzICAgICB8ICAgICAxIHwgICA1MDAwIHwgICAgMVxuIHNhbGVzICAgICB8 ICAgICA0IHwgICA0ODAwIHwgICAgMlxuIHNhbGVzICAgICB8ICAgICAzIHwg ICA0ODAwIHwgICAgMlxuKDEwIHJvd3MpXG48L3NjcmVlbj4gQXMgc2hvd24g aGVyZSwgdGhlIDxmdW5jdGlvbj5yYW5rPC9mdW5jdGlvbj4gZnVuY3Rpb24g cHJvZHVjZXMgYSBudW1lcmljYWwgcmFuayB3aXRoaW4gdGhlIGN1cnJlbnQg cm93J3MgcGFydGl0aW9uIGZvciBlYWNoIGRpc3RpbmN0IDxsaXRlcmFsPk9S REVSIEJZPC9saXRlcmFsPiB2YWx1ZSwgaW4gdGhlIG9yZGVyIGRlZmluZWQg YnkgdGhlIDxsaXRlcmFsPk9SREVSIEJZPC9saXRlcmFsPiBjbGF1c2UuIDxm dW5jdGlvbj5yYW5rPC9mdW5jdGlvbj4gbmVlZHMgbm8gZXhwbGljaXQgcGFy YW1ldGVyLCBiZWNhdXNlIGl0cyBiZWhhdmlvciBpcyBlbnRpcmVseSBkZXRl cm1pbmVkIGJ5IHRoZSA8bGl0ZXJhbD5PVkVSPC9saXRlcmFsPiBjbGF1c2Uu Igptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjQyMShwYXJhKQptc2dp ZCAiVGhlIHJvd3MgY29uc2lkZXJlZCBieSBhIHdpbmRvdyBmdW5jdGlvbiBh cmUgdGhvc2Ugb2YgdGhlIDxxdW90ZT52aXJ0dWFsIHRhYmxlPC9xdW90ZT4g cHJvZHVjZWQgYnkgdGhlIHF1ZXJ5J3MgPGxpdGVyYWw+RlJPTTwvbGl0ZXJh bD4gY2xhdXNlIGFzIGZpbHRlcmVkIGJ5IGl0cyA8bGl0ZXJhbD5XSEVSRTwv bGl0ZXJhbD4sIDxsaXRlcmFsPkdST1VQIEJZPC9saXRlcmFsPiwgYW5kIDxs aXRlcmFsPkhBVklORzwvbGl0ZXJhbD4gY2xhdXNlcyBpZiBhbnkuIEZvciBl eGFtcGxlLCBhIHJvdyByZW1vdmVkIGJlY2F1c2UgaXQgZG9lcyBub3QgbWVl dCB0aGUgPGxpdGVyYWw+V0hFUkU8L2xpdGVyYWw+IGNvbmRpdGlvbiBpcyBu b3Qgc2VlbiBieSBhbnkgd2luZG93IGZ1bmN0aW9uLiBBIHF1ZXJ5IGNhbiBj b250YWluIG11bHRpcGxlIHdpbmRvdyBmdW5jdGlvbnMgdGhhdCBzbGljZSB1 cCB0aGUgZGF0YSBpbiBkaWZmZXJlbnQgd2F5cyBieSBtZWFucyBvZiBkaWZm ZXJlbnQgPGxpdGVyYWw+T1ZFUjwvbGl0ZXJhbD4gY2xhdXNlcywgYnV0IHRo ZXkgYWxsIGFjdCBvbiB0aGUgc2FtZSBjb2xsZWN0aW9uIG9mIHJvd3MgZGVm aW5lZCBieSB0aGlzIHZpcnR1YWwgdGFibGUuIgptc2dzdHIgIiIKCiM6IC4v YWR2YW5jZWQueG1sOjQzMihwYXJhKQptc2dpZCAiV2UgYWxyZWFkeSBzYXcg dGhhdCA8bGl0ZXJhbD5PUkRFUiBCWTwvbGl0ZXJhbD4gY2FuIGJlIG9taXR0 ZWQgaWYgdGhlIG9yZGVyaW5nIG9mIHJvd3MgaXMgbm90IGltcG9ydGFudC4g SXQgaXMgYWxzbyBwb3NzaWJsZSB0byBvbWl0IDxsaXRlcmFsPlBBUlRJVElP TiBCWTwvbGl0ZXJhbD4sIGluIHdoaWNoIGNhc2UgdGhlcmUgaXMganVzdCBv bmUgcGFydGl0aW9uIGNvbnRhaW5pbmcgYWxsIHRoZSByb3dzLiIKbXNnc3Ry ICIiCgojOiAuL2FkdmFuY2VkLnhtbDo0NDkocGFyYSkKbXNnaWQgIlRoZXJl IGFyZSBvcHRpb25zIHRvIGRlZmluZSB0aGUgd2luZG93IGZyYW1lIGluIG90 aGVyIHdheXMsIGJ1dCB0aGlzIHR1dG9yaWFsIGRvZXMgbm90IGNvdmVyIHRo ZW0uIFNlZSA8eHJlZiBsaW5rZW5kPVwic3ludGF4LXdpbmRvdy1mdW5jdGlv bnNcIi8+IGZvciBkZXRhaWxzLiIKbXNnc3RyICIiCgojOiAuL2FkdmFuY2Vk LnhtbDo0MzgocGFyYSkKbXNnaWQgIlRoZXJlIGlzIGFub3RoZXIgaW1wb3J0 YW50IGNvbmNlcHQgYXNzb2NpYXRlZCB3aXRoIHdpbmRvdyBmdW5jdGlvbnM6 IGZvciBlYWNoIHJvdywgdGhlcmUgaXMgYSBzZXQgb2Ygcm93cyB3aXRoaW4g aXRzIHBhcnRpdGlvbiBjYWxsZWQgaXRzIDxmaXJzdHRlcm0+d2luZG93IGZy YW1lPC9maXJzdHRlcm0+LiBNYW55IChidXQgbm90IGFsbCkgd2luZG93IGZ1 bmN0aW9ucyBhY3Qgb25seSBvbiB0aGUgcm93cyBvZiB0aGUgd2luZG93IGZy YW1lLCByYXRoZXIgdGhhbiBvZiB0aGUgd2hvbGUgcGFydGl0aW9uLiBCeSBk ZWZhdWx0LCBpZiA8bGl0ZXJhbD5PUkRFUiBCWTwvbGl0ZXJhbD4gaXMgc3Vw cGxpZWQgdGhlbiB0aGUgZnJhbWUgY29uc2lzdHMgb2YgYWxsIHJvd3MgZnJv bSB0aGUgc3RhcnQgb2YgdGhlIHBhcnRpdGlvbiB1cCB0aHJvdWdoIHRoZSBj dXJyZW50IHJvdywgcGx1cyBhbnkgZm9sbG93aW5nIHJvd3MgdGhhdCBhcmUg ZXF1YWwgdG8gdGhlIGN1cnJlbnQgcm93IGFjY29yZGluZyB0byB0aGUgPGxp dGVyYWw+T1JERVIgQlk8L2xpdGVyYWw+IGNsYXVzZS4gV2hlbiA8bGl0ZXJh bD5PUkRFUiBCWTwvbGl0ZXJhbD4gaXMgb21pdHRlZCB0aGUgZGVmYXVsdCBm cmFtZSBjb25zaXN0cyBvZiBhbGwgcm93cyBpbiB0aGUgcGFydGl0aW9uLiA8 cGxhY2Vob2xkZXItMS8+IEhlcmUgaXMgYW4gZXhhbXBsZSB1c2luZyA8ZnVu Y3Rpb24+c3VtPC9mdW5jdGlvbj46Igptc2dzdHIgIiIKCiM6IC4vYWR2YW5j ZWQueG1sOjQ1OChwcm9ncmFtbGlzdGluZykKIywgbm8td3JhcAptc2dpZCAi U0VMRUNUIHNhbGFyeSwgc3VtKHNhbGFyeSkgT1ZFUiAoKSBGUk9NIGVtcHNh bGFyeTsiCm1zZ3N0ciAiIgoKIzogLi9hZHZhbmNlZC54bWw6NDYyKHNjcmVl bikKIywgbm8td3JhcAptc2dpZCAiIHNhbGFyeSB8ICBzdW0gIFxuLS0tLS0t LS0rLS0tLS0tLVxuICAgNTIwMCB8IDQ3MTAwXG4gICA1MDAwIHwgNDcxMDBc biAgIDM1MDAgfCA0NzEwMFxuICAgNDgwMCB8IDQ3MTAwXG4gICAzOTAwIHwg NDcxMDBcbiAgIDQyMDAgfCA0NzEwMFxuICAgNDUwMCB8IDQ3MTAwXG4gICA0 ODAwIHwgNDcxMDBcbiAgIDYwMDAgfCA0NzEwMFxuICAgNTIwMCB8IDQ3MTAw XG4oMTAgcm93cykiCm1zZ3N0ciAiIgoKIzogLi9hZHZhbmNlZC54bWw6NDc4 KHBhcmEpCm1zZ2lkICJBYm92ZSwgc2luY2UgdGhlcmUgaXMgbm8gPGxpdGVy YWw+T1JERVIgQlk8L2xpdGVyYWw+IGluIHRoZSA8bGl0ZXJhbD5PVkVSPC9s aXRlcmFsPiBjbGF1c2UsIHRoZSB3aW5kb3cgZnJhbWUgaXMgdGhlIHNhbWUg YXMgdGhlIHBhcnRpdGlvbiwgd2hpY2ggZm9yIGxhY2sgb2YgPGxpdGVyYWw+ UEFSVElUSU9OIEJZPC9saXRlcmFsPiBpcyB0aGUgd2hvbGUgdGFibGU7IGlu IG90aGVyIHdvcmRzIGVhY2ggc3VtIGlzIHRha2VuIG92ZXIgdGhlIHdob2xl IHRhYmxlIGFuZCBzbyB3ZSBnZXQgdGhlIHNhbWUgcmVzdWx0IGZvciBlYWNo IG91dHB1dCByb3cuIEJ1dCBpZiB3ZSBhZGQgYW4gPGxpdGVyYWw+T1JERVIg Qlk8L2xpdGVyYWw+IGNsYXVzZSwgd2UgZ2V0IHZlcnkgZGlmZmVyZW50IHJl c3VsdHM6Igptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjQ4Nyhwcm9n cmFtbGlzdGluZykKIywgbm8td3JhcAptc2dpZCAiU0VMRUNUIHNhbGFyeSwg c3VtKHNhbGFyeSkgT1ZFUiAoT1JERVIgQlkgc2FsYXJ5KSBGUk9NIGVtcHNh bGFyeTsiCm1zZ3N0ciAiIgoKIzogLi9hZHZhbmNlZC54bWw6NDkxKHNjcmVl bikKIywgbm8td3JhcAptc2dpZCAiIHNhbGFyeSB8ICBzdW0gIFxuLS0tLS0t LS0rLS0tLS0tLVxuICAgMzUwMCB8ICAzNTAwXG4gICAzOTAwIHwgIDc0MDBc biAgIDQyMDAgfCAxMTYwMFxuICAgNDUwMCB8IDE2MTAwXG4gICA0ODAwIHwg MjU3MDBcbiAgIDQ4MDAgfCAyNTcwMFxuICAgNTAwMCB8IDMwNzAwXG4gICA1 MjAwIHwgNDExMDBcbiAgIDUyMDAgfCA0MTEwMFxuICAgNjAwMCB8IDQ3MTAw XG4oMTAgcm93cykiCm1zZ3N0ciAiIgoKIzogLi9hZHZhbmNlZC54bWw6NTA3 KHBhcmEpCm1zZ2lkICJIZXJlIHRoZSBzdW0gaXMgdGFrZW4gZnJvbSB0aGUg Zmlyc3QgKGxvd2VzdCkgc2FsYXJ5IHVwIHRocm91Z2ggdGhlIGN1cnJlbnQg b25lLCBpbmNsdWRpbmcgYW55IGR1cGxpY2F0ZXMgb2YgdGhlIGN1cnJlbnQg b25lIChub3RpY2UgdGhlIHJlc3VsdHMgZm9yIHRoZSBkdXBsaWNhdGVkIHNh bGFyaWVzKS4iCm1zZ3N0ciAiIgoKIzogLi9hZHZhbmNlZC54bWw6NTEzKHBh cmEpCm1zZ2lkICJXaW5kb3cgZnVuY3Rpb25zIGFyZSBwZXJtaXR0ZWQgb25s eSBpbiB0aGUgPGxpdGVyYWw+U0VMRUNUPC9saXRlcmFsPiBsaXN0IGFuZCB0 aGUgPGxpdGVyYWw+T1JERVIgQlk8L2xpdGVyYWw+IGNsYXVzZSBvZiB0aGUg cXVlcnkuIFRoZXkgYXJlIGZvcmJpZGRlbiBlbHNld2hlcmUsIHN1Y2ggYXMg aW4gPGxpdGVyYWw+R1JPVVAgQlk8L2xpdGVyYWw+LCA8bGl0ZXJhbD5IQVZJ Tkc8L2xpdGVyYWw+IGFuZCA8bGl0ZXJhbD5XSEVSRTwvbGl0ZXJhbD4gY2xh dXNlcy4gVGhpcyBpcyBiZWNhdXNlIHRoZXkgbG9naWNhbGx5IGV4ZWN1dGUg YWZ0ZXIgdGhlIHByb2Nlc3Npbmcgb2YgdGhvc2UgY2xhdXNlcy4gQWxzbywg d2luZG93IGZ1bmN0aW9ucyBleGVjdXRlIGFmdGVyIHJlZ3VsYXIgYWdncmVn YXRlIGZ1bmN0aW9ucy4gVGhpcyBtZWFucyBpdCBpcyB2YWxpZCB0byBpbmNs dWRlIGFuIGFnZ3JlZ2F0ZSBmdW5jdGlvbiBjYWxsIGluIHRoZSBhcmd1bWVu dHMgb2YgYSB3aW5kb3cgZnVuY3Rpb24sIGJ1dCBub3QgdmljZSB2ZXJzYS4i Cm1zZ3N0ciAiIgoKIzogLi9hZHZhbmNlZC54bWw6NTI4KHByb2dyYW1saXN0 aW5nKQojLCBuby13cmFwCm1zZ2lkICJTRUxFQ1QgZGVwbmFtZSwgZW1wbm8s IHNhbGFyeSwgZW5yb2xsX2RhdGVcbkZST01cbiAgKFNFTEVDVCBkZXBuYW1l LCBlbXBubywgc2FsYXJ5LCBlbnJvbGxfZGF0ZSxcbiAgICAgICAgICByYW5r KCkgT1ZFUiAoUEFSVElUSU9OIEJZIGRlcG5hbWUgT1JERVIgQlkgc2FsYXJ5 IERFU0MsIGVtcG5vKSBBUyBwb3NcbiAgICAgRlJPTSBlbXBzYWxhcnlcbiAg KSBBUyBzc1xuV0hFUkUgcG9zICZsdDsgMzsiCm1zZ3N0ciAiIgoKIzogLi9h ZHZhbmNlZC54bWw6NTI0KHBhcmEpCm1zZ2lkICJJZiB0aGVyZSBpcyBhIG5l ZWQgdG8gZmlsdGVyIG9yIGdyb3VwIHJvd3MgYWZ0ZXIgdGhlIHdpbmRvdyBj YWxjdWxhdGlvbnMgYXJlIHBlcmZvcm1lZCwgeW91IGNhbiB1c2UgYSBzdWIt c2VsZWN0LiBGb3IgZXhhbXBsZTogPHBsYWNlaG9sZGVyLTEvPiBUaGUgYWJv dmUgcXVlcnkgb25seSBzaG93cyB0aGUgcm93cyBmcm9tIHRoZSBpbm5lciBx dWVyeSBoYXZpbmcgPGxpdGVyYWw+cmFuazwvbGl0ZXJhbD4gbGVzcyB0aGFu IDMuIgptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjU1MChwcm9ncmFt bGlzdGluZykKIywgbm8td3JhcAptc2dpZCAiU0VMRUNUIHN1bShzYWxhcnkp IE9WRVIgdywgYXZnKHNhbGFyeSkgT1ZFUiB3XG4gIEZST00gZW1wc2FsYXJ5 XG4gIFdJTkRPVyB3IEFTIChQQVJUSVRJT04gQlkgZGVwbmFtZSBPUkRFUiBC WSBzYWxhcnkgREVTQyk7Igptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1s OjU0MihwYXJhKQptc2dpZCAiV2hlbiBhIHF1ZXJ5IGludm9sdmVzIG11bHRp cGxlIHdpbmRvdyBmdW5jdGlvbnMsIGl0IGlzIHBvc3NpYmxlIHRvIHdyaXRl IG91dCBlYWNoIG9uZSB3aXRoIGEgc2VwYXJhdGUgPGxpdGVyYWw+T1ZFUjwv bGl0ZXJhbD4gY2xhdXNlLCBidXQgdGhpcyBpcyBkdXBsaWNhdGl2ZSBhbmQg ZXJyb3ItcHJvbmUgaWYgdGhlIHNhbWUgd2luZG93aW5nIGJlaGF2aW9yIGlz IHdhbnRlZCBmb3Igc2V2ZXJhbCBmdW5jdGlvbnMuIEluc3RlYWQsIGVhY2gg d2luZG93aW5nIGJlaGF2aW9yIGNhbiBiZSBuYW1lZCBpbiBhIDxsaXRlcmFs PldJTkRPVzwvbGl0ZXJhbD4gY2xhdXNlIGFuZCB0aGVuIHJlZmVyZW5jZWQg aW4gPGxpdGVyYWw+T1ZFUjwvbGl0ZXJhbD4uIEZvciBleGFtcGxlOiA8cGxh Y2Vob2xkZXItMS8+Igptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjU1 NyhwYXJhKQptc2dpZCAiTW9yZSBkZXRhaWxzIGFib3V0IHdpbmRvdyBmdW5j dGlvbnMgY2FuIGJlIGZvdW5kIGluIDx4cmVmIGxpbmtlbmQ9XCJzeW50YXgt d2luZG93LWZ1bmN0aW9uc1wiLz4sIDx4cmVmIGxpbmtlbmQ9XCJmdW5jdGlv bnMtd2luZG93XCIvPiwgPHhyZWYgbGlua2VuZD1cInF1ZXJpZXMtd2luZG93 XCIvPiwgYW5kIHRoZSA8eHJlZiBsaW5rZW5kPVwic3FsLXNlbGVjdFwiLz4g cmVmZXJlbmNlIHBhZ2UuIgptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1s OjU2OCh0aXRsZSkKbXNnaWQgIkluaGVyaXRhbmNlIgptc2dzdHIgIiIKCiM6 IC4vYWR2YW5jZWQueG1sOjU3MChpbmRleHRlcm0pCm1zZ2lkICI8cHJpbWFy eT5pbmhlcml0YW5jZTwvcHJpbWFyeT4iCm1zZ3N0ciAiIgoKIzogLi9hZHZh bmNlZC54bWw6NTc0KHBhcmEpCm1zZ2lkICJJbmhlcml0YW5jZSBpcyBhIGNv bmNlcHQgZnJvbSBvYmplY3Qtb3JpZW50ZWQgZGF0YWJhc2VzLiBJdCBvcGVu cyB1cCBpbnRlcmVzdGluZyBuZXcgcG9zc2liaWxpdGllcyBvZiBkYXRhYmFz ZSBkZXNpZ24uIgptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjU4Nihw cm9ncmFtbGlzdGluZykKIywgbm8td3JhcAptc2dpZCAiQ1JFQVRFIFRBQkxF IGNhcGl0YWxzIChcbiAgbmFtZSAgICAgICB0ZXh0LFxuICBwb3B1bGF0aW9u IHJlYWwsXG4gIGFsdGl0dWRlICAgaW50LCAgICAtLSAoaW4gZnQpXG4gIHN0 YXRlICAgICAgY2hhcigyKVxuKTtcblxuQ1JFQVRFIFRBQkxFIG5vbl9jYXBp dGFscyAoXG4gIG5hbWUgICAgICAgdGV4dCxcbiAgcG9wdWxhdGlvbiByZWFs LFxuICBhbHRpdHVkZSAgIGludCAgICAgLS0gKGluIGZ0KVxuKTtcblxuQ1JF QVRFIFZJRVcgY2l0aWVzIEFTXG4gIFNFTEVDVCBuYW1lLCBwb3B1bGF0aW9u LCBhbHRpdHVkZSBGUk9NIGNhcGl0YWxzXG4gICAgVU5JT05cbiAgU0VMRUNU IG5hbWUsIHBvcHVsYXRpb24sIGFsdGl0dWRlIEZST00gbm9uX2NhcGl0YWxz OyIKbXNnc3RyICIiCgojOiAuL2FkdmFuY2VkLnhtbDo1NzkocGFyYSkKbXNn aWQgIkxldCdzIGNyZWF0ZSB0d28gdGFibGVzOiBBIHRhYmxlIDxjbGFzc25h bWU+Y2l0aWVzPC9jbGFzc25hbWU+IGFuZCBhIHRhYmxlIDxjbGFzc25hbWU+ Y2FwaXRhbHM8L2NsYXNzbmFtZT4uIE5hdHVyYWxseSwgY2FwaXRhbHMgYXJl IGFsc28gY2l0aWVzLCBzbyB5b3Ugd2FudCBzb21lIHdheSB0byBzaG93IHRo ZSBjYXBpdGFscyBpbXBsaWNpdGx5IHdoZW4geW91IGxpc3QgYWxsIGNpdGll cy4gSWYgeW91J3JlIHJlYWxseSBjbGV2ZXIgeW91IG1pZ2h0IGludmVudCBz b21lIHNjaGVtZSBsaWtlIHRoaXM6IDxwbGFjZWhvbGRlci0xLz4gVGhpcyB3 b3JrcyBPSyBhcyBmYXIgYXMgcXVlcnlpbmcgZ29lcywgYnV0IGl0IGdldHMg dWdseSB3aGVuIHlvdSBuZWVkIHRvIHVwZGF0ZSBzZXZlcmFsIHJvd3MsIGZv ciBvbmUgdGhpbmcuIgptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjYx Myhwcm9ncmFtbGlzdGluZykKIywgbm8td3JhcAptc2dpZCAiQ1JFQVRFIFRB QkxFIGNpdGllcyAoXG4gIG5hbWUgICAgICAgdGV4dCxcbiAgcG9wdWxhdGlv biByZWFsLFxuICBhbHRpdHVkZSAgIGludCAgICAgLS0gKGluIGZ0KVxuKTtc blxuQ1JFQVRFIFRBQkxFIGNhcGl0YWxzIChcbiAgc3RhdGUgICAgICBjaGFy KDIpXG4pIElOSEVSSVRTIChjaXRpZXMpOyIKbXNnc3RyICIiCgojOiAuL2Fk dmFuY2VkLnhtbDo2MTAocGFyYSkKbXNnaWQgIkEgYmV0dGVyIHNvbHV0aW9u IGlzIHRoaXM6IDxwbGFjZWhvbGRlci0xLz4iCm1zZ3N0ciAiIgoKIzogLi9h ZHZhbmNlZC54bWw6NjI2KHBhcmEpCm1zZ2lkICJJbiB0aGlzIGNhc2UsIGEg cm93IG9mIDxjbGFzc25hbWU+Y2FwaXRhbHM8L2NsYXNzbmFtZT4gPGZpcnN0 dGVybT5pbmhlcml0czwvZmlyc3R0ZXJtPiBhbGwgY29sdW1ucyAoPHN0cnVj dGZpZWxkPm5hbWU8L3N0cnVjdGZpZWxkPiwgPHN0cnVjdGZpZWxkPnBvcHVs YXRpb248L3N0cnVjdGZpZWxkPiwgYW5kIDxzdHJ1Y3RmaWVsZD5hbHRpdHVk ZTwvc3RydWN0ZmllbGQ+KSBmcm9tIGl0cyA8Zmlyc3R0ZXJtPnBhcmVudDwv Zmlyc3R0ZXJtPiwgPGNsYXNzbmFtZT5jaXRpZXM8L2NsYXNzbmFtZT4uIFRo ZSB0eXBlIG9mIHRoZSBjb2x1bW4gPHN0cnVjdGZpZWxkPm5hbWU8L3N0cnVj dGZpZWxkPiBpcyA8dHlwZT50ZXh0PC90eXBlPiwgYSBuYXRpdmUgPHByb2R1 Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiB0eXBlIGZvciB2YXJp YWJsZSBsZW5ndGggY2hhcmFjdGVyIHN0cmluZ3MuIFN0YXRlIGNhcGl0YWxz IGhhdmUgYW4gZXh0cmEgY29sdW1uLCA8c3RydWN0ZmllbGQ+c3RhdGU8L3N0 cnVjdGZpZWxkPiwgdGhhdCBzaG93cyB0aGVpciBzdGF0ZS4gSW4gPHByb2R1 Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiwgYSB0YWJsZSBjYW4g aW5oZXJpdCBmcm9tIHplcm8gb3IgbW9yZSBvdGhlciB0YWJsZXMuIgptc2dz dHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjY0NChwcm9ncmFtbGlzdGluZykK Iywgbm8td3JhcAptc2dpZCAiU0VMRUNUIG5hbWUsIGFsdGl0dWRlXG4gIEZS T00gY2l0aWVzXG4gIFdIRVJFIGFsdGl0dWRlICZndDsgNTAwOyIKbXNnc3Ry ICIiCgojOiAuL2FkdmFuY2VkLnhtbDo2MzkocGFyYSkKbXNnaWQgIkZvciBl eGFtcGxlLCB0aGUgZm9sbG93aW5nIHF1ZXJ5IGZpbmRzIHRoZSBuYW1lcyBv ZiBhbGwgY2l0aWVzLCBpbmNsdWRpbmcgc3RhdGUgY2FwaXRhbHMsIHRoYXQg YXJlIGxvY2F0ZWQgYXQgYW4gYWx0aXR1ZGUgb3ZlciA1MDAgZmVldDogPHBs YWNlaG9sZGVyLTEvPiB3aGljaCByZXR1cm5zOiA8c2NyZWVuPlxuICAgbmFt ZSAgICB8IGFsdGl0dWRlXG4tLS0tLS0tLS0tLSstLS0tLS0tLS0tXG4gTGFz IFZlZ2FzIHwgICAgIDIxNzRcbiBNYXJpcG9zYSAgfCAgICAgMTk1M1xuIE1h ZGlzb24gICB8ICAgICAgODQ1XG4oMyByb3dzKVxuPC9zY3JlZW4+Igptc2dz dHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjY2Nyhwcm9ncmFtbGlzdGluZykK Iywgbm8td3JhcAptc2dpZCAiU0VMRUNUIG5hbWUsIGFsdGl0dWRlXG4gICAg RlJPTSBPTkxZIGNpdGllc1xuICAgIFdIRVJFIGFsdGl0dWRlICZndDsgNTAw OyIKbXNnc3RyICIiCgojOiAuL2FkdmFuY2VkLnhtbDo2NjIocGFyYSkKbXNn aWQgIk9uIHRoZSBvdGhlciBoYW5kLCB0aGUgZm9sbG93aW5nIHF1ZXJ5IGZp bmRzIGFsbCB0aGUgY2l0aWVzIHRoYXQgYXJlIG5vdCBzdGF0ZSBjYXBpdGFs cyBhbmQgYXJlIHNpdHVhdGVkIGF0IGFuIGFsdGl0dWRlIG92ZXIgNTAwIGZl ZXQ6IDxwbGFjZWhvbGRlci0xLz4gPHNjcmVlbj5cbiAgIG5hbWUgICAgfCBh bHRpdHVkZVxuLS0tLS0tLS0tLS0rLS0tLS0tLS0tLVxuIExhcyBWZWdhcyB8 ICAgICAyMTc0XG4gTWFyaXBvc2EgIHwgICAgIDE5NTNcbigyIHJvd3MpXG48 L3NjcmVlbj4iCm1zZ3N0ciAiIgoKIzogLi9hZHZhbmNlZC54bWw6NjgyKHBh cmEpCm1zZ2lkICJIZXJlIHRoZSA8bGl0ZXJhbD5PTkxZPC9saXRlcmFsPiBi ZWZvcmUgPGxpdGVyYWw+Y2l0aWVzPC9saXRlcmFsPiBpbmRpY2F0ZXMgdGhh dCB0aGUgcXVlcnkgc2hvdWxkIGJlIHJ1biBvdmVyIG9ubHkgdGhlIDxjbGFz c25hbWU+Y2l0aWVzPC9jbGFzc25hbWU+IHRhYmxlLCBhbmQgbm90IHRhYmxl cyBiZWxvdyA8Y2xhc3NuYW1lPmNpdGllczwvY2xhc3NuYW1lPiBpbiB0aGUg aW5oZXJpdGFuY2UgaGllcmFyY2h5LiBNYW55IG9mIHRoZSBjb21tYW5kcyB0 aGF0IHdlIGhhdmUgYWxyZWFkeSBkaXNjdXNzZWQgJm1kYXNoOyA8Y29tbWFu ZD5TRUxFQ1Q8L2NvbW1hbmQ+LCA8Y29tbWFuZD5VUERBVEU8L2NvbW1hbmQ+ LCBhbmQgPGNvbW1hbmQ+REVMRVRFPC9jb21tYW5kPiAmbWRhc2g7IHN1cHBv cnQgdGhpcyA8bGl0ZXJhbD5PTkxZPC9saXRlcmFsPiBub3RhdGlvbi4iCm1z Z3N0ciAiIgoKIzogLi9hZHZhbmNlZC54bWw6Njk0KHBhcmEpCm1zZ2lkICJB bHRob3VnaCBpbmhlcml0YW5jZSBpcyBmcmVxdWVudGx5IHVzZWZ1bCwgaXQg aGFzIG5vdCBiZWVuIGludGVncmF0ZWQgd2l0aCB1bmlxdWUgY29uc3RyYWlu dHMgb3IgZm9yZWlnbiBrZXlzLCB3aGljaCBsaW1pdHMgaXRzIHVzZWZ1bG5l c3MuIFNlZSA8eHJlZiBsaW5rZW5kPVwiZGRsLWluaGVyaXRcIi8+IGZvciBt b3JlIGRldGFpbC4iCm1zZ3N0ciAiIgoKIzogLi9hZHZhbmNlZC54bWw6NzA0 KHRpdGxlKQptc2dpZCAiQ29uY2x1c2lvbiIKbXNnc3RyICIiCgojOiAuL2Fk dmFuY2VkLnhtbDo3MDYocGFyYSkKbXNnaWQgIjxwcm9kdWN0bmFtZT5Qb3N0 Z3JlU1FMPC9wcm9kdWN0bmFtZT4gaGFzIG1hbnkgZmVhdHVyZXMgbm90IHRv dWNoZWQgdXBvbiBpbiB0aGlzIHR1dG9yaWFsIGludHJvZHVjdGlvbiwgd2hp Y2ggaGFzIGJlZW4gb3JpZW50ZWQgdG93YXJkIG5ld2VyIHVzZXJzIG9mIDxh Y3JvbnltPlNRTDwvYWNyb255bT4uIFRoZXNlIGZlYXR1cmVzIGFyZSBkaXNj dXNzZWQgaW4gbW9yZSBkZXRhaWwgaW4gdGhlIHJlbWFpbmRlciBvZiB0aGlz IGJvb2suIgptc2dzdHIgIiIKCiM6IC4vYWR2YW5jZWQueG1sOjcxNChwYXJh KQptc2dpZCAiSWYgeW91IGZlZWwgeW91IG5lZWQgbW9yZSBpbnRyb2R1Y3Rv cnkgbWF0ZXJpYWwsIHBsZWFzZSB2aXNpdCB0aGUgUG9zdGdyZVNRTCA8dWxp bmsgdXJsPVwiaHR0cDovL3d3dy5wb3N0Z3Jlc3FsLm9yZ1wiPndlYiBzaXRl PC91bGluaz4gZm9yIGxpbmtzIHRvIG1vcmUgcmVzb3VyY2VzLiIKbXNnc3Ry ICIiCgojLiBQdXQgb25lIHRyYW5zbGF0b3IgcGVyIGxpbmUsIGluIHRoZSBm b3JtIG9mIE5BTUUgPEVNQUlMPiwgWUVBUjEsIFlFQVIyCiM6IC4vYWR2YW5j ZWQueG1sOjAoTm9uZSkKbXNnaWQgInRyYW5zbGF0b3ItY3JlZGl0cyIKbXNn c3RyICIiCgo= --------------8119A5B8947B531FCEA8C421 Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-docs mailing list (pgsql-docs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-docs --------------8119A5B8947B531FCEA8C421--