Received: from maia.hub.org (unknown [200.46.204.183]) by mail.postgresql.org (Postfix) with ESMTP id D901A632C09 for ; Sun, 10 Jan 2010 08:28:24 -0400 (AST) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 45692-07 for ; Sun, 10 Jan 2010 12:28:13 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-ew0-f216.google.com (mail-ew0-f216.google.com [209.85.219.216]) by mail.postgresql.org (Postfix) with ESMTP id 4B3D4632708 for ; Sun, 10 Jan 2010 08:28:13 -0400 (AST) Received: by ewy8 with SMTP id 8so21068388ewy.35 for ; Sun, 10 Jan 2010 04:28:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:date :x-google-sender-auth:message-id:subject:from:to:content-type; bh=oQucXwWommQUVkcEswlJhjdAMkPiGCC3cdKIeeUHSUg=; b=Hg2hI1G1o9WPHZnkZ4Df6pdgs5IxFHI/4U1gpeHLrqqWuxA+j2txx1ujq6AJqD1GZb GUFSlXBojo+n0ktjypr7JQbJSFmzecVa/eGCydHqhMPUyIIMdhK+meDw3vePThV5TbYe JNe+tL8fa19Hgt1VWINjjpf5vq/Jx+xk9NaNw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:date:x-google-sender-auth:message-id:subject :from:to:content-type; b=XeQ2afyOvonWQnx4ub1GiUUxqZasK7HFvy3GWu8XS49v1niTYR93Z8iiRkFYGQZKIs AuFtGrH4Zs+bsE9xEP0jl3c4BRFUYqpHok+wJtVuf3jVhlE701VVVLdrAwZUiXpZl1ye v1n8hNLBh25xzcPdwvf9igdXnLmNyj/+if3Xw= MIME-Version: 1.0 Received: by 10.213.39.203 with SMTP id h11mr1887977ebe.0.1263126491115; Sun, 10 Jan 2010 04:28:11 -0800 (PST) Date: Sun, 10 Jan 2010 13:28:11 +0100 X-Google-Sender-Auth: 1ecda35e8cf9a47e Message-ID: Subject: Choice of bitmap scan over index scan From: Mathieu De Zutter To: pgsql-performance@postgresql.org Content-Type: multipart/mixed; boundary=00148531a87ecf344b047cce8ddd X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0.59 tagged_above=-10 required=5 tests=BAYES_00=-2.599, FH_DATE_PAST_20XX=3.188, HTML_MESSAGE=0.001 X-Spam-Level: X-Archive-Number: 201001/174 X-Sequence-Number: 37054 --00148531a87ecf344b047cce8ddd Content-Type: multipart/alternative; boundary=00148531a87ecf343a047cce8ddb --00148531a87ecf343a047cce8ddb Content-Type: text/plain; charset=ISO-8859-1 Hi, Part of a larger problem, I'm trying to optimize a rather simple query which is basically: SELECT * FROM table WHERE indexed_column > ... ORDER BY indexed_column DESC; (see attachment for all details: table definition, query, query plans) For small ranges it will choose an index scan which is very good. For somewhat larger ranges (not very large yet) it will switch to a bitmap scan + sorting. Pgsql probably thinks that the larger the range, the better a bitmap scan is because it reads more effectively. However, in my case, the larger the query, the worse bitmap+sort performs compared to index scan: Small range (5K rows): 5.4 msec (b+s) vs 3.3 msec (i) -- performance penalty of ~50% Large range (1.5M rows): 6400 sec (b+s) vs 2100 msec (i) -- performance penalty of ~200% How can I make pgsql realize that it should always pick the index scan? Thanks! Kind regards, Mathieu --00148531a87ecf343a047cce8ddb Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Hi,

Part of a larger problem, I'm trying to optimize a rather si= mple query which is basically:
SELECT * FROM table WHERE indexed_column = > ... ORDER BY indexed_column DESC;

(see attachment for all detai= ls: table definition, query, query plans)

For small ranges it will choose an index scan which is very good. For s= omewhat larger ranges (not very large yet) it will switch to a bitmap scan = + sorting. Pgsql probably thinks that the larger the range, the better a bi= tmap scan is because it reads more effectively. However, in my case, the la= rger the query, the worse bitmap+sort performs compared to index scan:

Small range (5K rows): 5.4 msec (b+s) vs 3.3 msec (i) -- performance pe= nalty of ~50%
Large range (1.5M rows): 6400 sec (b+s) vs 2100 msec (i) -= - performance penalty of ~200%

How can I make pgsql realize that it = should always pick the index scan?

Thanks!

Kind regards,
Mathieu
--00148531a87ecf343a047cce8ddb-- --00148531a87ecf344b047cce8ddd Content-Type: text/plain; charset=US-ASCII; name="log_event_plan.txt" Content-Disposition: attachment; filename="log_event_plan.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g49sv2yw1 c2hzLWRldj0jIFxkIGxvZ19ldmVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFRhYmxlICJwdWJsaWMubG9nX2V2ZW50IgogICAgIENvbHVtbiAgICAgIHwgICAgICAgICAg IFR5cGUgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgIE1vZGlmaWVycyAgICAgICAg ICAgICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQogaWQgICAgICAgICAgICAgIHwgYmlnaW50ICAgICAgICAgICAgICAgICAgIHwgbm90IG51 bGwgZGVmYXVsdCBuZXh0dmFsKCdsb2dfZXZlbnRfaWRfc2VxJzo6cmVnY2xhc3MpCiB1c2VyX2lk ICAgICAgICAgfCBpbnRlZ2VyICAgICAgICAgICAgICAgICAgfCAKIGlwICAgICAgICAgICAgICB8 IGluZXQgICAgICAgICAgICAgICAgICAgICB8IG5vdCBudWxsCiBhY3Rpb25faWQgICAgICAgfCBp bnRlZ2VyICAgICAgICAgICAgICAgICAgfCBub3QgbnVsbAogb2JqZWN0MV9pZCAgICAgIHwgaW50 ZWdlciAgICAgICAgICAgICAgICAgIHwgCiBvYmplY3QyX2lkICAgICAgfCBpbnRlZ2VyICAgICAg ICAgICAgICAgICAgfCAKIGV2ZW50X3RpbWVzdGFtcCB8IHRpbWVzdGFtcCB3aXRoIHRpbWUgem9u ZSB8IG5vdCBudWxsCiBkYXRhICAgICAgICAgICAgfCB0ZXh0ICAgICAgICAgICAgICAgICAgICAg fCAKIGNvbW1lbnRzICAgICAgICB8IHRleHQgICAgICAgICAgICAgICAgICAgICB8IApJbmRleGVz OgogICAgImxvZ19ldmVudF9wa2V5IiBQUklNQVJZIEtFWSwgYnRyZWUgKGlkKQogICAgImxvZ19l dmVudF9hY3Rpb25faWRfaWR4IiBidHJlZSAoYWN0aW9uX2lkKQogICAgImxvZ19ldmVudF9vYmpl Y3QxX2lkeCIgYnRyZWUgKG9iamVjdDFfaWQpCiAgICAibG9nX2V2ZW50X29iamVjdDJfaWR4IiBi dHJlZSAob2JqZWN0Ml9pZCkKICAgICJsb2dfZXZlbnRfdGltZXN0YW1wX2lkeCIgYnRyZWUgKGV2 ZW50X3RpbWVzdGFtcCkKICAgICJsb2dfZXZlbnRfdXNlcl9pZF9pZHgiIGJ0cmVlICh1c2VyX2lk KQpGb3JlaWduLWtleSBjb25zdHJhaW50czoKICAgICJsb2dfZXZlbnRfYWN0aW9uX2lkX2ZrZXki IEZPUkVJR04gS0VZIChhY3Rpb25faWQpIFJFRkVSRU5DRVMgY29uZmlnLmxvZ19hY3Rpb24oaWQp Cgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgpDQVNFIDE6IFBvc3RncmVT UUwgc3dpdGNoZXMgbGVzcyBlZmZpY2llbnQgcGxhbiB3aXRoIGJpZ2dlciByYW5nZQoKKioqIElO VEVSVkFMIDQgaG91cnMgLS0tIHVzZXMgaW5kZXggc2NhbgoKc2hzLWRldj0jIGV4cGxhaW4gYW5h bHl6ZSBzZWxlY3QgKiBmcm9tIGxvZ19ldmVudCB3aGVyZSBldmVudF90aW1lc3RhbXAgPiBOT1co KSAtIGludGVydmFsICc0IGhvdXInIG9yZGVyIGJ5IGV2ZW50X3RpbWVzdGFtcCBkZXNjOwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KIEluZGV4IFNjYW4gQmFja3dhcmQgdXNpbmcgbG9nX2V2ZW50X3RpbWVz dGFtcF9pZHggb24gbG9nX2V2ZW50ICAoY29zdD0wLjAwLi45NDA1LjA0IHJvd3M9MzQyMSB3aWR0 aD0zMzgpIChhY3R1YWwgdGltZT0wLjA0Ny4uMi41MTAgcm93cz0zNTA3IGxvb3BzPTEpCiAgIElu ZGV4IENvbmQ6IChldmVudF90aW1lc3RhbXAgPiAobm93KCkgLSAnMDQ6MDA6MDAnOjppbnRlcnZh bCkpCiBUb3RhbCBydW50aW1lOiAyLjc2NyBtcwoKCioqKiBJTlRFUlZBTCA1IGhvdXJzIC0tLSB1 c2VzIGJpdG1hcCBzY2FuICsgc29ydCAKCnNocy1kZXY9IyBleHBsYWluIGFuYWx5emUgc2VsZWN0 ICogZnJvbSBsb2dfZXZlbnQgd2hlcmUgZXZlbnRfdGltZXN0YW1wID4gTk9XKCkgLSBpbnRlcnZh bCAnNSBob3VyJyBvcmRlciBieSBldmVudF90aW1lc3RhbXAgZGVzYzsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBRVUVSWSBQ TEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogU29ydCAgKGNvc3Q9MTE5 OTAuMDAuLjEyMDAxLjE0IHJvd3M9NDQ1NiB3aWR0aD0zMzgpIChhY3R1YWwgdGltZT00Ljc1MS4u NS4xMjIgcm93cz00OTI5IGxvb3BzPTEpCiAgIFNvcnQgS2V5OiBldmVudF90aW1lc3RhbXAKICAg U29ydCBNZXRob2Q6ICBxdWlja3NvcnQgIE1lbW9yeTogNTc4a0IKICAgLT4gIEJpdG1hcCBIZWFw IFNjYW4gb24gbG9nX2V2ZW50ICAoY29zdD04Ny4xMi4uMTE3MTkuOTMgcm93cz00NDU2IHdpZHRo PTMzOCkgKGFjdHVhbCB0aW1lPTAuNTg1Li4yLjQ0MyByb3dzPTQ5MjkgbG9vcHM9MSkKICAgICAg ICAgUmVjaGVjayBDb25kOiAoZXZlbnRfdGltZXN0YW1wID4gKG5vdygpIC0gJzA1OjAwOjAwJzo6 aW50ZXJ2YWwpKQogICAgICAgICAtPiAgQml0bWFwIEluZGV4IFNjYW4gb24gbG9nX2V2ZW50X3Rp bWVzdGFtcF9pZHggIChjb3N0PTAuMDAuLjg2LjAxIHJvd3M9NDQ1NiB3aWR0aD0wKSAoYWN0dWFs IHRpbWU9MC41MzAuLjAuNTMwIHJvd3M9NDkyOSBsb29wcz0xKQogICAgICAgICAgICAgICBJbmRl eCBDb25kOiAoZXZlbnRfdGltZXN0YW1wID4gKG5vdygpIC0gJzA1OjAwOjAwJzo6aW50ZXJ2YWwp KQogVG90YWwgcnVudGltZTogNS40MzEgbXMKCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KCkNBU0UgMjogQ29tcGFyaXNvbiBpbiBydW4gdGltZSBmb3Igc21hbGwgcmFuZ2UK CioqKiBJTlRFUlZBTCA2IGhvdXJzIC0tIHVzZXMgYml0bWFwIHNjYW4gKyBzb3J0IAoKc2hzLWRl dj0jIGV4cGxhaW4gYW5hbHl6ZSBzZWxlY3QgKiBmcm9tIGxvZ19ldmVudCB3aGVyZSBldmVudF90 aW1lc3RhbXAgPiBOT1coKSAtIGludGVydmFsICc2IGhvdXInIG9yZGVyIGJ5IGV2ZW50X3RpbWVz dGFtcCBkZXNjOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCiBTb3J0ICAoY29zdD0xMzA4NS44Ny4uMTMwOTguNDQgcm93cz01MDI2IHdpZHRo PTMzOCkgKGFjdHVhbCB0aW1lPTQuNjExLi41LjAxNSByb3dzPTU1MDcgbG9vcHM9MSkKICAgU29y dCBLZXk6IGV2ZW50X3RpbWVzdGFtcAogICBTb3J0IE1ldGhvZDogIHF1aWNrc29ydCAgTWVtb3J5 OiA2MjNrQgogICAtPiAgQml0bWFwIEhlYXAgU2NhbiBvbiBsb2dfZXZlbnQgIChjb3N0PTk1LjU0 Li4xMjc3Ni44OSByb3dzPTUwMjYgd2lkdGg9MzM4KSAoYWN0dWFsIHRpbWU9MC42MjYuLjIuMDM0 IHJvd3M9NTUwNyBsb29wcz0xKQogICAgICAgICBSZWNoZWNrIENvbmQ6IChldmVudF90aW1lc3Rh bXAgPiAobm93KCkgLSAnMDY6MDA6MDAnOjppbnRlcnZhbCkpCiAgICAgICAgIC0+ICBCaXRtYXAg SW5kZXggU2NhbiBvbiBsb2dfZXZlbnRfdGltZXN0YW1wX2lkeCAgKGNvc3Q9MC4wMC4uOTQuMjgg cm93cz01MDI2IHdpZHRoPTApIChhY3R1YWwgdGltZT0wLjU2Ni4uMC41NjYgcm93cz01NTA3IGxv b3BzPTEpCiAgICAgICAgICAgICAgIEluZGV4IENvbmQ6IChldmVudF90aW1lc3RhbXAgPiAobm93 KCkgLSAnMDY6MDA6MDAnOjppbnRlcnZhbCkpCiBUb3RhbCBydW50aW1lOiA1LjM3NSBtcwoKCioq IElOVEVSVkFMIDYgaG91cnMgV0lUSE9VVCBzb3J0ICAoZW5hYmxlX3NvcnQgPSBvZmYpIC0tIHVz ZXMgaW5kZXggc2NhbgoKc2hzLWRldj0jIGV4cGxhaW4gYW5hbHl6ZSBzZWxlY3QgKiBmcm9tIGxv Z19ldmVudCB3aGVyZSBldmVudF90aW1lc3RhbXAgPiBOT1coKSAtIGludGVydmFsICc2IGhvdXIn IG9yZGVyIGJ5IGV2ZW50X3RpbWVzdGFtcCBkZXNjOwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFVRVJZIFBMQU4g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogSW5k ZXggU2NhbiBCYWNrd2FyZCB1c2luZyBsb2dfZXZlbnRfdGltZXN0YW1wX2lkeCBvbiBsb2dfZXZl bnQgIChjb3N0PTAuMDAuLjEzNDQ2Ljc5IHJvd3M9NTAzMiB3aWR0aD0zMzgpIChhY3R1YWwgdGlt ZT0wLjA1MS4uMi45NDggcm93cz01NTE1IGxvb3BzPTEpCiAgIEluZGV4IENvbmQ6IChldmVudF90 aW1lc3RhbXAgPiAobm93KCkgLSAnMDY6MDA6MDAnOjppbnRlcnZhbCkpCiBUb3RhbCBydW50aW1l OiAzLjMzNyBtcwoKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKQ0FTRSAz OiBDb21wYXJpc29uIGluIHJ1biB0aW1lIGZvciBsYXJnZSByYW5nZQoKKioqIElOVEVSVkFMIDEg eWVhciAtLSB1c2VzIGJpdG1hcCBzY2FuICsgc29ydAoKc2hzLWRldj0jIGV4cGxhaW4gYW5hbHl6 ZSBzZWxlY3QgKiBmcm9tIGxvZ19ldmVudCB3aGVyZSBldmVudF90aW1lc3RhbXAgPiBOT1coKSAt IGludGVydmFsICcxIHllYXInIG9yZGVyIGJ5IGV2ZW50X3RpbWVzdGFtcCBkZXNjOwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUVVFUlkg UExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiBTb3J0ICAoY29zdD00ODE3NjMuMzEuLjQ4NTYzNC42MSByb3dz PTE1NDg1MjAgd2lkdGg9MzM4KSAoYWN0dWFsIHRpbWU9NTQyMy42MjguLjYyODYuMTQ4IHJvd3M9 MTU1MTkyMyBsb29wcz0xKQogICBTb3J0IEtleTogZXZlbnRfdGltZXN0YW1wCiAgIFNvcnQgTWV0 aG9kOiAgZXh0ZXJuYWwgbWVyZ2UgIERpc2s6IDkwNDg4a0IKICAgLT4gIFNlcSBTY2FuIG9uIGxv Z19ldmVudCAgKGNvc3Q9MC4wMC4uNzkwODUuOTIgcm93cz0xNTQ4NTIwIHdpZHRoPTMzOCkgKGFj dHVhbCB0aW1lPTAuMDIyLi4yMTk1LjUyNyByb3dzPTE1NTE5MjMgbG9vcHM9MSkKICAgICAgICAg RmlsdGVyOiAoZXZlbnRfdGltZXN0YW1wID4gKG5vdygpIC0gJzEgeWVhcic6OmludGVydmFsKSkK IFRvdGFsIHJ1bnRpbWU6IDY0MDcuMzc3IG1zCgoKKioqIElOVEVSVkFMIDEgeWVhciBXSVRIT1VU IHNvcnQgLS0gdXNlcyBpbmRleCBzY2FuCgpzaHMtZGV2PSMgZXhwbGFpbiBhbmFseXplIHNlbGVj dCAqIGZyb20gbG9nX2V2ZW50IHdoZXJlIGV2ZW50X3RpbWVzdGFtcCA+IE5PVygpIC0gaW50ZXJ2 YWwgJzEgeWVhcicgb3JkZXIgYnkgZXZlbnRfdGltZXN0YW1wIGRlc2M7CiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBRVUVSWSBQTEFOICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogSW5kZXggU2NhbiBCYWNrd2FyZCB1c2luZyBs b2dfZXZlbnRfdGltZXN0YW1wX2lkeCBvbiBsb2dfZXZlbnQgIChjb3N0PTAuMDAuLjI0MTI5OTYu NjQgcm93cz0xNTQ4NTIxIHdpZHRoPTMzOCkgKGFjdHVhbCB0aW1lPTAuMDUyLi4yMDE1Ljg3MSBy b3dzPTE1NTE5MjYgbG9vcHM9MSkKICAgSW5kZXggQ29uZDogKGV2ZW50X3RpbWVzdGFtcCA+IChu b3coKSAtICcxIHllYXInOjppbnRlcnZhbCkpCiBUb3RhbCBydW50aW1lOiAyMTEyLjY0MyBtcwoK Cg== --00148531a87ecf344b047cce8ddd Content-Type: application/octet-stream; name="postgresql.conf" Content-Disposition: attachment; filename="postgresql.conf" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g49suyic0 IyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFBvc3RncmVTUUwgY29uZmlndXJhdGlv biBmaWxlCiMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgZmlsZSBjb25z aXN0cyBvZiBsaW5lcyBvZiB0aGUgZm9ybToKIwojICAgbmFtZSA9IHZhbHVlCiMKIyAoVGhlICI9 IiBpcyBvcHRpb25hbC4pICBXaGl0ZXNwYWNlIG1heSBiZSB1c2VkLiAgQ29tbWVudHMgYXJlIGlu dHJvZHVjZWQgd2l0aAojICIjIiBhbnl3aGVyZSBvbiBhIGxpbmUuICBUaGUgY29tcGxldGUgbGlz dCBvZiBwYXJhbWV0ZXIgbmFtZXMgYW5kIGFsbG93ZWQKIyB2YWx1ZXMgY2FuIGJlIGZvdW5kIGlu IHRoZSBQb3N0Z3JlU1FMIGRvY3VtZW50YXRpb24uCiMKIyBUaGUgY29tbWVudGVkLW91dCBzZXR0 aW5ncyBzaG93biBpbiB0aGlzIGZpbGUgcmVwcmVzZW50IHRoZSBkZWZhdWx0IHZhbHVlcy4KIyBS ZS1jb21tZW50aW5nIGEgc2V0dGluZyBpcyBOT1Qgc3VmZmljaWVudCB0byByZXZlcnQgaXQgdG8g dGhlIGRlZmF1bHQgdmFsdWU7CiMgeW91IG5lZWQgdG8gcmVsb2FkIHRoZSBzZXJ2ZXIuCiMKIyBU aGlzIGZpbGUgaXMgcmVhZCBvbiBzZXJ2ZXIgc3RhcnR1cCBhbmQgd2hlbiB0aGUgc2VydmVyIHJl Y2VpdmVzIGEgU0lHSFVQCiMgc2lnbmFsLiAgSWYgeW91IGVkaXQgdGhlIGZpbGUgb24gYSBydW5u aW5nIHN5c3RlbSwgeW91IGhhdmUgdG8gU0lHSFVQIHRoZQojIHNlcnZlciBmb3IgdGhlIGNoYW5n ZXMgdG8gdGFrZSBlZmZlY3QsIG9yIHVzZSAicGdfY3RsIHJlbG9hZCIuICBTb21lCiMgcGFyYW1l dGVycywgd2hpY2ggYXJlIG1hcmtlZCBiZWxvdywgcmVxdWlyZSBhIHNlcnZlciBzaHV0ZG93biBh bmQgcmVzdGFydCB0bwojIHRha2UgZWZmZWN0LgojCiMgQW55IHBhcmFtZXRlciBjYW4gYWxzbyBi ZSBnaXZlbiBhcyBhIGNvbW1hbmQtbGluZSBvcHRpb24gdG8gdGhlIHNlcnZlciwgZS5nLiwKIyAi cG9zdGdyZXMgLWMgbG9nX2Nvbm5lY3Rpb25zPW9uIi4gIFNvbWUgcGFyYW10ZXJzIGNhbiBiZSBj aGFuZ2VkIGF0IHJ1biB0aW1lCiMgd2l0aCB0aGUgIlNFVCIgU1FMIGNvbW1hbmQuCiMKIyBNZW1v cnkgdW5pdHM6ICBrQiA9IGtpbG9ieXRlcyBNQiA9IG1lZ2FieXRlcyBHQiA9IGdpZ2FieXRlcwoj IFRpbWUgdW5pdHM6ICAgIG1zID0gbWlsbGlzZWNvbmRzIHMgPSBzZWNvbmRzIG1pbiA9IG1pbnV0 ZXMgaCA9IGhvdXJzIGQgPSBkYXlzCgoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIEZJTEUgTE9D QVRJT05TCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiMgVGhlIGRlZmF1bHQgdmFsdWVzIG9mIHRo ZXNlIHZhcmlhYmxlcyBhcmUgZHJpdmVuIGZyb20gdGhlIC1EIGNvbW1hbmQtbGluZQojIG9wdGlv biBvciBQR0RBVEEgZW52aXJvbm1lbnQgdmFyaWFibGUsIHJlcHJlc2VudGVkIGhlcmUgYXMgQ29u ZmlnRGlyLgoKZGF0YV9kaXJlY3RvcnkgPSAnL3Zhci9saWIvcG9zdGdyZXNxbC84LjMvbWFpbicJ CSMgdXNlIGRhdGEgaW4gYW5vdGhlciBkaXJlY3RvcnkKCQkJCQkjIChjaGFuZ2UgcmVxdWlyZXMg cmVzdGFydCkKaGJhX2ZpbGUgPSAnL2V0Yy9wb3N0Z3Jlc3FsLzguMy9tYWluL3BnX2hiYS5jb25m JwkjIGhvc3QtYmFzZWQgYXV0aGVudGljYXRpb24gZmlsZQoJCQkJCSMgKGNoYW5nZSByZXF1aXJl cyByZXN0YXJ0KQppZGVudF9maWxlID0gJy9ldGMvcG9zdGdyZXNxbC84LjMvbWFpbi9wZ19pZGVu dC5jb25mJwkjIGlkZW50IGNvbmZpZ3VyYXRpb24gZmlsZQoJCQkJCSMgKGNoYW5nZSByZXF1aXJl cyByZXN0YXJ0KQoKIyBJZiBleHRlcm5hbF9waWRfZmlsZSBpcyBub3QgZXhwbGljaXRseSBzZXQs IG5vIGV4dHJhIFBJRCBmaWxlIGlzIHdyaXR0ZW4uCmV4dGVybmFsX3BpZF9maWxlID0gJy92YXIv cnVuL3Bvc3RncmVzcWwvOC4zLW1haW4ucGlkJwkJIyB3cml0ZSBhbiBleHRyYSBQSUQgZmlsZQoJ CQkJCSMgKGNoYW5nZSByZXF1aXJlcyByZXN0YXJ0KQoKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K IyBDT05ORUNUSU9OUyBBTkQgQVVUSEVOVElDQVRJT04KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoK IyAtIENvbm5lY3Rpb24gU2V0dGluZ3MgLQoKI2xpc3Rlbl9hZGRyZXNzZXMgPSAnbG9jYWxob3N0 JwkJIyB3aGF0IElQIGFkZHJlc3MoZXMpIHRvIGxpc3RlbiBvbjsKCQkJCQkjIGNvbW1hLXNlcGFy YXRlZCBsaXN0IG9mIGFkZHJlc3NlczsKCQkJCQkjIGRlZmF1bHRzIHRvICdsb2NhbGhvc3QnLCAn KicgPSBhbGwKCQkJCQkjIChjaGFuZ2UgcmVxdWlyZXMgcmVzdGFydCkKcG9ydCA9IDU0MzIJCQkJ IyAoY2hhbmdlIHJlcXVpcmVzIHJlc3RhcnQpCm1heF9jb25uZWN0aW9ucyA9IDEwMAkJCSMgKGNo YW5nZSByZXF1aXJlcyByZXN0YXJ0KQojIE5vdGU6ICBJbmNyZWFzaW5nIG1heF9jb25uZWN0aW9u cyBjb3N0cyB+NDAwIGJ5dGVzIG9mIHNoYXJlZCBtZW1vcnkgcGVyIAojIGNvbm5lY3Rpb24gc2xv dCwgcGx1cyBsb2NrIHNwYWNlIChzZWUgbWF4X2xvY2tzX3Blcl90cmFuc2FjdGlvbikuICBZb3Ug bWlnaHQKIyBhbHNvIG5lZWQgdG8gcmFpc2Ugc2hhcmVkX2J1ZmZlcnMgdG8gc3VwcG9ydCBtb3Jl IGNvbm5lY3Rpb25zLgojc3VwZXJ1c2VyX3Jlc2VydmVkX2Nvbm5lY3Rpb25zID0gMwkjIChjaGFu Z2UgcmVxdWlyZXMgcmVzdGFydCkKdW5peF9zb2NrZXRfZGlyZWN0b3J5ID0gJy92YXIvcnVuL3Bv c3RncmVzcWwnCQkjIChjaGFuZ2UgcmVxdWlyZXMgcmVzdGFydCkKI3VuaXhfc29ja2V0X2dyb3Vw ID0gJycJCQkjIChjaGFuZ2UgcmVxdWlyZXMgcmVzdGFydCkKI3VuaXhfc29ja2V0X3Blcm1pc3Np b25zID0gMDc3NwkJIyBiZWdpbiB3aXRoIDAgdG8gdXNlIG9jdGFsIG5vdGF0aW9uCgkJCQkJIyAo Y2hhbmdlIHJlcXVpcmVzIHJlc3RhcnQpCiNib25qb3VyX25hbWUgPSAnJwkJCSMgZGVmYXVsdHMg dG8gdGhlIGNvbXB1dGVyIG5hbWUKCQkJCQkjIChjaGFuZ2UgcmVxdWlyZXMgcmVzdGFydCkKCiMg LSBTZWN1cml0eSBhbmQgQXV0aGVudGljYXRpb24gLQoKI2F1dGhlbnRpY2F0aW9uX3RpbWVvdXQg PSAxbWluCQkjIDFzLTYwMHMKc3NsID0gdHJ1ZQkJCQkjIChjaGFuZ2UgcmVxdWlyZXMgcmVzdGFy dCkKI3NzbF9jaXBoZXJzID0gJ0FMTDohQURIOiFMT1c6IUVYUDohTUQ1OkBTVFJFTkdUSCcJIyBh bGxvd2VkIFNTTCBjaXBoZXJzCgkJCQkJIyAoY2hhbmdlIHJlcXVpcmVzIHJlc3RhcnQpCiNwYXNz d29yZF9lbmNyeXB0aW9uID0gb24KI2RiX3VzZXJfbmFtZXNwYWNlID0gb2ZmCgojIEtlcmJlcm9z IGFuZCBHU1NBUEkKI2tyYl9zZXJ2ZXJfa2V5ZmlsZSA9ICcnCQkjIChjaGFuZ2UgcmVxdWlyZXMg cmVzdGFydCkKI2tyYl9zcnZuYW1lID0gJ3Bvc3RncmVzJwkJIyAoY2hhbmdlIHJlcXVpcmVzIHJl c3RhcnQsIEtlcmJlcm9zIG9ubHkpCiNrcmJfc2VydmVyX2hvc3RuYW1lID0gJycJCSMgZW1wdHkg c3RyaW5nIG1hdGNoZXMgYW55IGtleXRhYiBlbnRyeQoJCQkJCSMgKGNoYW5nZSByZXF1aXJlcyBy ZXN0YXJ0LCBLZXJiZXJvcyBvbmx5KQoja3JiX2Nhc2VpbnNfdXNlcnMgPSBvZmYJCSMgKGNoYW5n ZSByZXF1aXJlcyByZXN0YXJ0KQoja3JiX3JlYWxtID0gJycgICAgICAgICAgIAkJIyAoY2hhbmdl IHJlcXVpcmVzIHJlc3RhcnQpCgojIC0gVENQIEtlZXBhbGl2ZXMgLQojIHNlZSAibWFuIDcgdGNw IiBmb3IgZGV0YWlscwoKI3RjcF9rZWVwYWxpdmVzX2lkbGUgPSAwCQkjIFRDUF9LRUVQSURMRSwg aW4gc2Vjb25kczsKCQkJCQkjIDAgc2VsZWN0cyB0aGUgc3lzdGVtIGRlZmF1bHQKI3RjcF9rZWVw YWxpdmVzX2ludGVydmFsID0gMAkJIyBUQ1BfS0VFUElOVFZMLCBpbiBzZWNvbmRzOwoJCQkJCSMg MCBzZWxlY3RzIHRoZSBzeXN0ZW0gZGVmYXVsdAojdGNwX2tlZXBhbGl2ZXNfY291bnQgPSAwCQkj IFRDUF9LRUVQQ05UOwoJCQkJCSMgMCBzZWxlY3RzIHRoZSBzeXN0ZW0gZGVmYXVsdAoKCiMtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KIyBSRVNPVVJDRSBVU0FHRSAoZXhjZXB0IFdBTCkKIy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQoKIyAtIE1lbW9yeSAtCgpzaGFyZWRfYnVmZmVycyA9IDI0TUIJCQkjIG1p biAxMjhrQiBvciBtYXhfY29ubmVjdGlvbnMqMTZrQgoJCQkJCSMgKGNoYW5nZSByZXF1aXJlcyBy ZXN0YXJ0KQojdGVtcF9idWZmZXJzID0gOE1CCQkJIyBtaW4gODAwa0IKI21heF9wcmVwYXJlZF90 cmFuc2FjdGlvbnMgPSA1CQkjIGNhbiBiZSAwIG9yIG1vcmUKCQkJCQkjIChjaGFuZ2UgcmVxdWly ZXMgcmVzdGFydCkKIyBOb3RlOiAgSW5jcmVhc2luZyBtYXhfcHJlcGFyZWRfdHJhbnNhY3Rpb25z IGNvc3RzIH42MDAgYnl0ZXMgb2Ygc2hhcmVkIG1lbW9yeQojIHBlciB0cmFuc2FjdGlvbiBzbG90 LCBwbHVzIGxvY2sgc3BhY2UgKHNlZSBtYXhfbG9ja3NfcGVyX3RyYW5zYWN0aW9uKS4Kd29ya19t ZW0gPSA4TUIJCQkJIyBtaW4gNjRrQgojbWFpbnRlbmFuY2Vfd29ya19tZW0gPSAxNk1CCQkjIG1p biAxTUIKI21heF9zdGFja19kZXB0aCA9IDJNQgkJCSMgbWluIDEwMGtCCgojIC0gRnJlZSBTcGFj ZSBNYXAgLQoKbWF4X2ZzbV9wYWdlcyA9IDE1MzYwMAkJCSMgbWluIG1heF9mc21fcmVsYXRpb25z KjE2LCA2IGJ5dGVzIGVhY2gKCQkJCQkjIChjaGFuZ2UgcmVxdWlyZXMgcmVzdGFydCkKI21heF9m c21fcmVsYXRpb25zID0gMTAwMAkJIyBtaW4gMTAwLCB+NzAgYnl0ZXMgZWFjaAoJCQkJCSMgKGNo YW5nZSByZXF1aXJlcyByZXN0YXJ0KQoKIyAtIEtlcm5lbCBSZXNvdXJjZSBVc2FnZSAtCgojbWF4 X2ZpbGVzX3Blcl9wcm9jZXNzID0gMTAwMAkJIyBtaW4gMjUKCQkJCQkjIChjaGFuZ2UgcmVxdWly ZXMgcmVzdGFydCkKI3NoYXJlZF9wcmVsb2FkX2xpYnJhcmllcyA9ICcnCQkjIChjaGFuZ2UgcmVx dWlyZXMgcmVzdGFydCkKCiMgLSBDb3N0LUJhc2VkIFZhY3V1bSBEZWxheSAtCgojdmFjdXVtX2Nv c3RfZGVsYXkgPSAwCQkJIyAwLTEwMDAgbWlsbGlzZWNvbmRzCiN2YWN1dW1fY29zdF9wYWdlX2hp dCA9IDEJCSMgMC0xMDAwMCBjcmVkaXRzCiN2YWN1dW1fY29zdF9wYWdlX21pc3MgPSAxMAkJIyAw LTEwMDAwIGNyZWRpdHMKI3ZhY3V1bV9jb3N0X3BhZ2VfZGlydHkgPSAyMAkJIyAwLTEwMDAwIGNy ZWRpdHMKI3ZhY3V1bV9jb3N0X2xpbWl0ID0gMjAwCQkjIDEtMTAwMDAgY3JlZGl0cwoKIyAtIEJh Y2tncm91bmQgV3JpdGVyIC0KCiNiZ3dyaXRlcl9kZWxheSA9IDIwMG1zCQkJIyAxMC0xMDAwMG1z IGJldHdlZW4gcm91bmRzCiNiZ3dyaXRlcl9scnVfbWF4cGFnZXMgPSAxMDAJCSMgMC0xMDAwIG1h eCBidWZmZXJzIHdyaXR0ZW4vcm91bmQKI2Jnd3JpdGVyX2xydV9tdWx0aXBsaWVyID0gMi4wCQkj IDAtMTAuMCBtdWx0aXBsZXIgb24gYnVmZmVycyBzY2FubmVkL3JvdW5kCgoKIy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQojIFdSSVRFIEFIRUFEIExPRwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgojIC0g U2V0dGluZ3MgLQoKI2ZzeW5jID0gb24JCQkJIyB0dXJucyBmb3JjZWQgc3luY2hyb25pemF0aW9u IG9uIG9yIG9mZgojc3luY2hyb25vdXNfY29tbWl0ID0gb24JCSMgaW1tZWRpYXRlIGZzeW5jIGF0 IGNvbW1pdAojd2FsX3N5bmNfbWV0aG9kID0gZnN5bmMJCSMgdGhlIGRlZmF1bHQgaXMgdGhlIGZp cnN0IG9wdGlvbiAKCQkJCQkjIHN1cHBvcnRlZCBieSB0aGUgb3BlcmF0aW5nIHN5c3RlbToKCQkJ CQkjICAgb3Blbl9kYXRhc3luYwoJCQkJCSMgICBmZGF0YXN5bmMKCQkJCQkjICAgZnN5bmMKCQkJ CQkjICAgZnN5bmNfd3JpdGV0aHJvdWdoCgkJCQkJIyAgIG9wZW5fc3luYwojZnVsbF9wYWdlX3dy aXRlcyA9IG9uCQkJIyByZWNvdmVyIGZyb20gcGFydGlhbCBwYWdlIHdyaXRlcwojd2FsX2J1ZmZl cnMgPSA2NGtCCQkJIyBtaW4gMzJrQgoJCQkJCSMgKGNoYW5nZSByZXF1aXJlcyByZXN0YXJ0KQoj d2FsX3dyaXRlcl9kZWxheSA9IDIwMG1zCQkjIDEtMTAwMDAgbWlsbGlzZWNvbmRzCgojY29tbWl0 X2RlbGF5ID0gMAkJCSMgcmFuZ2UgMC0xMDAwMDAsIGluIG1pY3Jvc2Vjb25kcwojY29tbWl0X3Np YmxpbmdzID0gNQkJCSMgcmFuZ2UgMS0xMDAwCgojIC0gQ2hlY2twb2ludHMgLQoKI2NoZWNrcG9p bnRfc2VnbWVudHMgPSAzCQkjIGluIGxvZ2ZpbGUgc2VnbWVudHMsIG1pbiAxLCAxNk1CIGVhY2gK I2NoZWNrcG9pbnRfdGltZW91dCA9IDVtaW4JCSMgcmFuZ2UgMzBzLTFoCiNjaGVja3BvaW50X2Nv bXBsZXRpb25fdGFyZ2V0ID0gMC41CSMgY2hlY2twb2ludCB0YXJnZXQgZHVyYXRpb24sIDAuMCAt IDEuMAojY2hlY2twb2ludF93YXJuaW5nID0gMzBzCQkjIDAgaXMgb2ZmCgojIC0gQXJjaGl2aW5n IC0KCiNhcmNoaXZlX21vZGUgPSBvZmYJCSMgYWxsb3dzIGFyY2hpdmluZyB0byBiZSBkb25lCgkJ CQkjIChjaGFuZ2UgcmVxdWlyZXMgcmVzdGFydCkKI2FyY2hpdmVfY29tbWFuZCA9ICcnCQkjIGNv bW1hbmQgdG8gdXNlIHRvIGFyY2hpdmUgYSBsb2dmaWxlIHNlZ21lbnQKI2FyY2hpdmVfdGltZW91 dCA9IDAJCSMgZm9yY2UgYSBsb2dmaWxlIHNlZ21lbnQgc3dpdGNoIGFmdGVyIHRoaXMKCQkJCSMg dGltZTsgMCBpcyBvZmYKCgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgUVVFUlkgVFVOSU5HCiMt LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0KCiMgLSBQbGFubmVyIE1ldGhvZCBDb25maWd1cmF0aW9uIC0K CiNlbmFibGVfYml0bWFwc2NhbiA9IG9uCiNlbmFibGVfaGFzaGFnZyA9IG9uCiNlbmFibGVfaGFz aGpvaW4gPSBvbgojZW5hYmxlX2luZGV4c2NhbiA9IG9uCiNlbmFibGVfbWVyZ2Vqb2luID0gb24K I2VuYWJsZV9uZXN0bG9vcCA9IG9uCiNlbmFibGVfc2Vxc2NhbiA9IG9uCiNlbmFibGVfc29ydCA9 IG9uCiNlbmFibGVfdGlkc2NhbiA9IG9uCgojIC0gUGxhbm5lciBDb3N0IENvbnN0YW50cyAtCgoj c2VxX3BhZ2VfY29zdCA9IDEuMAkJCSMgbWVhc3VyZWQgb24gYW4gYXJiaXRyYXJ5IHNjYWxlCiNy YW5kb21fcGFnZV9jb3N0ID0gNC4wCQkJIyBzYW1lIHNjYWxlIGFzIGFib3ZlCiNjcHVfdHVwbGVf Y29zdCA9IDAuMDEJCQkjIHNhbWUgc2NhbGUgYXMgYWJvdmUKI2NwdV9pbmRleF90dXBsZV9jb3N0 ID0gMC4wMDUJCSMgc2FtZSBzY2FsZSBhcyBhYm92ZQojY3B1X29wZXJhdG9yX2Nvc3QgPSAwLjAw MjUJCSMgc2FtZSBzY2FsZSBhcyBhYm92ZQojZWZmZWN0aXZlX2NhY2hlX3NpemUgPSAxMjhNQgoK IyAtIEdlbmV0aWMgUXVlcnkgT3B0aW1pemVyIC0KCiNnZXFvID0gb24KI2dlcW9fdGhyZXNob2xk ID0gMTIKI2dlcW9fZWZmb3J0ID0gNQkJCSMgcmFuZ2UgMS0xMAojZ2Vxb19wb29sX3NpemUgPSAw CQkJIyBzZWxlY3RzIGRlZmF1bHQgYmFzZWQgb24gZWZmb3J0CiNnZXFvX2dlbmVyYXRpb25zID0g MAkJCSMgc2VsZWN0cyBkZWZhdWx0IGJhc2VkIG9uIGVmZm9ydAojZ2Vxb19zZWxlY3Rpb25fYmlh cyA9IDIuMAkJIyByYW5nZSAxLjUtMi4wCgojIC0gT3RoZXIgUGxhbm5lciBPcHRpb25zIC0KCmRl ZmF1bHRfc3RhdGlzdGljc190YXJnZXQgPSAxMDAJCSMgcmFuZ2UgMS0xMDAwCiNjb25zdHJhaW50 X2V4Y2x1c2lvbiA9IG9mZgojZnJvbV9jb2xsYXBzZV9saW1pdCA9IDgKI2pvaW5fY29sbGFwc2Vf bGltaXQgPSA4CQkjIDEgZGlzYWJsZXMgY29sbGFwc2luZyBvZiBleHBsaWNpdCAKCQkJCQkjIEpP SU4gY2xhdXNlcwoKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBFUlJPUiBSRVBPUlRJTkcgQU5E IExPR0dJTkcKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKIyAtIFdoZXJlIHRvIExvZyAtCgojbG9n X2Rlc3RpbmF0aW9uID0gJ3N0ZGVycicJCSMgVmFsaWQgdmFsdWVzIGFyZSBjb21iaW5hdGlvbnMg b2YKCQkJCQkjIHN0ZGVyciwgY3N2bG9nLCBzeXNsb2cgYW5kIGV2ZW50bG9nLAoJCQkJCSMgZGVw ZW5kaW5nIG9uIHBsYXRmb3JtLiAgY3N2bG9nCgkJCQkJIyByZXF1aXJlcyBsb2dnaW5nX2NvbGxl Y3RvciB0byBiZSBvbi4KCiMgVGhpcyBpcyB1c2VkIHdoZW4gbG9nZ2luZyB0byBzdGRlcnI6CiNs b2dnaW5nX2NvbGxlY3RvciA9IG9mZgkJIyBFbmFibGUgY2FwdHVyaW5nIG9mIHN0ZGVyciBhbmQg Y3N2bG9nCgkJCQkJIyBpbnRvIGxvZyBmaWxlcy4gUmVxdWlyZWQgdG8gYmUgb24gZm9yCgkJCQkJ IyBjc3Zsb2dzLgoJCQkJCSMgKGNoYW5nZSByZXF1aXJlcyByZXN0YXJ0KQoKIyBUaGVzZSBhcmUg b25seSB1c2VkIGlmIGxvZ2dpbmdfY29sbGVjdG9yIGlzIG9uOgojbG9nX2RpcmVjdG9yeSA9ICdw Z19sb2cnCQkjIGRpcmVjdG9yeSB3aGVyZSBsb2cgZmlsZXMgYXJlIHdyaXR0ZW4sCgkJCQkJIyBj YW4gYmUgYWJzb2x1dGUgb3IgcmVsYXRpdmUgdG8gUEdEQVRBCiNsb2dfZmlsZW5hbWUgPSAncG9z dGdyZXNxbC0lWS0lbS0lZF8lSCVNJVMubG9nJwkjIGxvZyBmaWxlIG5hbWUgcGF0dGVybiwKCQkJ CQkjIGNhbiBpbmNsdWRlIHN0cmZ0aW1lKCkgZXNjYXBlcwojbG9nX3RydW5jYXRlX29uX3JvdGF0 aW9uID0gb2ZmCQkjIElmIG9uLCBhbiBleGlzdGluZyBsb2cgZmlsZSBvZiB0aGUKCQkJCQkjIHNh bWUgbmFtZSBhcyB0aGUgbmV3IGxvZyBmaWxlIHdpbGwgYmUKCQkJCQkjIHRydW5jYXRlZCByYXRo ZXIgdGhhbiBhcHBlbmRlZCB0by4KCQkJCQkjIEJ1dCBzdWNoIHRydW5jYXRpb24gb25seSBvY2N1 cnMgb24KCQkJCQkjIHRpbWUtZHJpdmVuIHJvdGF0aW9uLCBub3Qgb24gcmVzdGFydHMKCQkJCQkj IG9yIHNpemUtZHJpdmVuIHJvdGF0aW9uLiAgRGVmYXVsdCBpcwoJCQkJCSMgb2ZmLCBtZWFuaW5n IGFwcGVuZCB0byBleGlzdGluZyBmaWxlcwoJCQkJCSMgaW4gYWxsIGNhc2VzLgojbG9nX3JvdGF0 aW9uX2FnZSA9IDFkCQkJIyBBdXRvbWF0aWMgcm90YXRpb24gb2YgbG9nZmlsZXMgd2lsbAoJCQkJ CSMgaGFwcGVuIGFmdGVyIHRoYXQgdGltZS4gIDAgdG8gZGlzYWJsZS4KI2xvZ19yb3RhdGlvbl9z aXplID0gMTBNQgkJIyBBdXRvbWF0aWMgcm90YXRpb24gb2YgbG9nZmlsZXMgd2lsbCAKCQkJCQkj IGhhcHBlbiBhZnRlciB0aGF0IG11Y2ggbG9nIG91dHB1dC4KCQkJCQkjIDAgdG8gZGlzYWJsZS4K CiMgVGhlc2UgYXJlIHJlbGV2YW50IHdoZW4gbG9nZ2luZyB0byBzeXNsb2c6CiNzeXNsb2dfZmFj aWxpdHkgPSAnTE9DQUwwJwojc3lzbG9nX2lkZW50ID0gJ3Bvc3RncmVzJwoKCiMgLSBXaGVuIHRv IExvZyAtCgojY2xpZW50X21pbl9tZXNzYWdlcyA9IG5vdGljZQkJIyB2YWx1ZXMgaW4gb3JkZXIg b2YgZGVjcmVhc2luZyBkZXRhaWw6CgkJCQkJIyAgIGRlYnVnNQoJCQkJCSMgICBkZWJ1ZzQKCQkJ CQkjICAgZGVidWczCgkJCQkJIyAgIGRlYnVnMgoJCQkJCSMgICBkZWJ1ZzEKCQkJCQkjICAgbG9n CgkJCQkJIyAgIG5vdGljZQoJCQkJCSMgICB3YXJuaW5nCgkJCQkJIyAgIGVycm9yCgojbG9nX21p bl9tZXNzYWdlcyA9IG5vdGljZQkJIyB2YWx1ZXMgaW4gb3JkZXIgb2YgZGVjcmVhc2luZyBkZXRh aWw6CgkJCQkJIyAgIGRlYnVnNQoJCQkJCSMgICBkZWJ1ZzQKCQkJCQkjICAgZGVidWczCgkJCQkJ IyAgIGRlYnVnMgoJCQkJCSMgICBkZWJ1ZzEKCQkJCQkjICAgaW5mbwoJCQkJCSMgICBub3RpY2UK CQkJCQkjICAgd2FybmluZwoJCQkJCSMgICBlcnJvcgoJCQkJCSMgICBsb2cKCQkJCQkjICAgZmF0 YWwKCQkJCQkjICAgcGFuaWMKCiNsb2dfZXJyb3JfdmVyYm9zaXR5ID0gZGVmYXVsdAkJIyB0ZXJz ZSwgZGVmYXVsdCwgb3IgdmVyYm9zZSBtZXNzYWdlcwoKI2xvZ19taW5fZXJyb3Jfc3RhdGVtZW50 ID0gZXJyb3IJIyB2YWx1ZXMgaW4gb3JkZXIgb2YgZGVjcmVhc2luZyBkZXRhaWw6CgkJCQkgCSMg ICBkZWJ1ZzUKCQkJCQkjICAgZGVidWc0CgkJCQkJIyAgIGRlYnVnMwoJCQkJCSMgICBkZWJ1ZzIK CQkJCQkjICAgZGVidWcxCgkJCQkgCSMgICBpbmZvCgkJCQkJIyAgIG5vdGljZQoJCQkJCSMgICB3 YXJuaW5nCgkJCQkJIyAgIGVycm9yCgkJCQkJIyAgIGxvZwoJCQkJCSMgICBmYXRhbAoJCQkJCSMg ICBwYW5pYyAoZWZmZWN0aXZlbHkgb2ZmKQoKI2xvZ19taW5fZHVyYXRpb25fc3RhdGVtZW50ID0g LTEJIyAtMSBpcyBkaXNhYmxlZCwgMCBsb2dzIGFsbCBzdGF0ZW1lbnRzCgkJCQkJIyBhbmQgdGhl aXIgZHVyYXRpb25zLCA+IDAgbG9ncyBvbmx5CgkJCQkJIyBzdGF0ZW1lbnRzIHJ1bm5pbmcgYXQg bGVhc3QgdGhpcyB0aW1lLgoKI3NpbGVudF9tb2RlID0gb2ZmCQkJIyBETyBOT1QgVVNFIHdpdGhv dXQgc3lzbG9nIG9yCgkJCQkJIyBsb2dnaW5nX2NvbGxlY3RvcgoJCQkJCSMgKGNoYW5nZSByZXF1 aXJlcyByZXN0YXJ0KQoKIyAtIFdoYXQgdG8gTG9nIC0KCiNkZWJ1Z19wcmludF9wYXJzZSA9IG9m ZgojZGVidWdfcHJpbnRfcmV3cml0dGVuID0gb2ZmCiNkZWJ1Z19wcmludF9wbGFuID0gb2ZmCiNk ZWJ1Z19wcmV0dHlfcHJpbnQgPSBvZmYKI2xvZ19jaGVja3BvaW50cyA9IG9mZgojbG9nX2Nvbm5l Y3Rpb25zID0gb2ZmCiNsb2dfZGlzY29ubmVjdGlvbnMgPSBvZmYKI2xvZ19kdXJhdGlvbiA9IG9m ZgojbG9nX2hvc3RuYW1lID0gb2ZmCmxvZ19saW5lX3ByZWZpeCA9ICcldCAnCQkJIyBzcGVjaWFs IHZhbHVlczoKCQkJCQkjICAgJXUgPSB1c2VyIG5hbWUKCQkJCQkjICAgJWQgPSBkYXRhYmFzZSBu YW1lCgkJCQkJIyAgICVyID0gcmVtb3RlIGhvc3QgYW5kIHBvcnQKCQkJCQkjICAgJWggPSByZW1v dGUgaG9zdAoJCQkJCSMgICAlcCA9IHByb2Nlc3MgSUQKCQkJCQkjICAgJXQgPSB0aW1lc3RhbXAg d2l0aG91dCBtaWxsaXNlY29uZHMKCQkJCQkjICAgJW0gPSB0aW1lc3RhbXAgd2l0aCBtaWxsaXNl Y29uZHMKCQkJCQkjICAgJWkgPSBjb21tYW5kIHRhZwoJCQkJCSMgICAlYyA9IHNlc3Npb24gSUQK CQkJCQkjICAgJWwgPSBzZXNzaW9uIGxpbmUgbnVtYmVyCgkJCQkJIyAgICVzID0gc2Vzc2lvbiBz dGFydCB0aW1lc3RhbXAKCQkJCQkjICAgJXYgPSB2aXJ0dWFsIHRyYW5zYWN0aW9uIElECgkJCQkJ IyAgICV4ID0gdHJhbnNhY3Rpb24gSUQgKDAgaWYgbm9uZSkKCQkJCQkjICAgJXEgPSBzdG9wIGhl cmUgaW4gbm9uLXNlc3Npb24KCQkJCQkjICAgICAgICBwcm9jZXNzZXMKCQkJCQkjICAgJSUgPSAn JScKCQkJCQkjIGUuZy4gJzwldSUlJWQ+ICcKI2xvZ19sb2NrX3dhaXRzID0gb2ZmCQkJIyBsb2cg bG9jayB3YWl0cyA+PSBkZWFkbG9ja190aW1lb3V0CiNsb2dfc3RhdGVtZW50ID0gJ25vbmUnCQkJ IyBub25lLCBkZGwsIG1vZCwgYWxsCiNsb2dfdGVtcF9maWxlcyA9IC0xCQkJIyBsb2cgdGVtcG9y YXJ5IGZpbGVzIGVxdWFsIG9yIGxhcmdlcgoJCQkJCSMgdGhhbiBzcGVjaWZpZWQgc2l6ZTsKCQkJ CQkjIC0xIGRpc2FibGVzLCAwIGxvZ3MgYWxsIHRlbXAgZmlsZXMKI2xvZ190aW1lem9uZSA9IHVu a25vd24JCQkjIGFjdHVhbGx5LCBkZWZhdWx0cyB0byBUWiBlbnZpcm9ubWVudAoJCQkJCSMgc2V0 dGluZwoKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBSVU5USU1FIFNUQVRJU1RJQ1MKIy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQoKIyAtIFF1ZXJ5L0luZGV4IFN0YXRpc3RpY3MgQ29sbGVjdG9yIC0K CiN0cmFja19hY3Rpdml0aWVzID0gb24KI3RyYWNrX2NvdW50cyA9IG9uCiN1cGRhdGVfcHJvY2Vz c190aXRsZSA9IG9uCgoKIyAtIFN0YXRpc3RpY3MgTW9uaXRvcmluZyAtCgojbG9nX3BhcnNlcl9z dGF0cyA9IG9mZgojbG9nX3BsYW5uZXJfc3RhdHMgPSBvZmYKI2xvZ19leGVjdXRvcl9zdGF0cyA9 IG9mZgojbG9nX3N0YXRlbWVudF9zdGF0cyA9IG9mZgoKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K IyBBVVRPVkFDVVVNIFBBUkFNRVRFUlMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKI2F1dG92YWN1 dW0gPSBvbgkJCSMgRW5hYmxlIGF1dG92YWN1dW0gc3VicHJvY2Vzcz8gICdvbicgCgkJCQkJIyBy ZXF1aXJlcyB0cmFja19jb3VudHMgdG8gYWxzbyBiZSBvbi4KI2xvZ19hdXRvdmFjdXVtX21pbl9k dXJhdGlvbiA9IC0xCSMgLTEgZGlzYWJsZXMsIDAgbG9ncyBhbGwgYWN0aW9ucyBhbmQKCQkJCQkj IHRoZWlyIGR1cmF0aW9ucywgPiAwIGxvZ3Mgb25seQoJCQkJCSMgYWN0aW9ucyBydW5uaW5nIGF0 IGxlYXN0IHRoYXQgdGltZS4KI2F1dG92YWN1dW1fbWF4X3dvcmtlcnMgPSAzCQkjIG1heCBudW1i ZXIgb2YgYXV0b3ZhY3V1bSBzdWJwcm9jZXNzZXMKI2F1dG92YWN1dW1fbmFwdGltZSA9IDFtaW4J CSMgdGltZSBiZXR3ZWVuIGF1dG92YWN1dW0gcnVucwojYXV0b3ZhY3V1bV92YWN1dW1fdGhyZXNo b2xkID0gNTAJIyBtaW4gbnVtYmVyIG9mIHJvdyB1cGRhdGVzIGJlZm9yZQoJCQkJCSMgdmFjdXVt CiNhdXRvdmFjdXVtX2FuYWx5emVfdGhyZXNob2xkID0gNTAJIyBtaW4gbnVtYmVyIG9mIHJvdyB1 cGRhdGVzIGJlZm9yZSAKCQkJCQkjIGFuYWx5emUKI2F1dG92YWN1dW1fdmFjdXVtX3NjYWxlX2Zh Y3RvciA9IDAuMgkjIGZyYWN0aW9uIG9mIHRhYmxlIHNpemUgYmVmb3JlIHZhY3V1bQojYXV0b3Zh Y3V1bV9hbmFseXplX3NjYWxlX2ZhY3RvciA9IDAuMQkjIGZyYWN0aW9uIG9mIHRhYmxlIHNpemUg YmVmb3JlIGFuYWx5emUKI2F1dG92YWN1dW1fZnJlZXplX21heF9hZ2UgPSAyMDAwMDAwMDAJIyBt YXhpbXVtIFhJRCBhZ2UgYmVmb3JlIGZvcmNlZCB2YWN1dW0KCQkJCQkjIChjaGFuZ2UgcmVxdWly ZXMgcmVzdGFydCkKI2F1dG92YWN1dW1fdmFjdXVtX2Nvc3RfZGVsYXkgPSAyMAkjIGRlZmF1bHQg dmFjdXVtIGNvc3QgZGVsYXkgZm9yCgkJCQkJIyBhdXRvdmFjdXVtLCAtMSBtZWFucyB1c2UKCQkJ CQkjIHZhY3V1bV9jb3N0X2RlbGF5CiNhdXRvdmFjdXVtX3ZhY3V1bV9jb3N0X2xpbWl0ID0gLTEJ IyBkZWZhdWx0IHZhY3V1bSBjb3N0IGxpbWl0IGZvcgoJCQkJCSMgYXV0b3ZhY3V1bSwgLTEgbWVh bnMgdXNlCgkJCQkJIyB2YWN1dW1fY29zdF9saW1pdAoKCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K IyBDTElFTlQgQ09OTkVDVElPTiBERUZBVUxUUwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgojIC0g U3RhdGVtZW50IEJlaGF2aW9yIC0KCiNzZWFyY2hfcGF0aCA9ICciJHVzZXIiLHB1YmxpYycJCSMg c2NoZW1hIG5hbWVzCiNkZWZhdWx0X3RhYmxlc3BhY2UgPSAnJwkJIyBhIHRhYmxlc3BhY2UgbmFt ZSwgJycgdXNlcyB0aGUgZGVmYXVsdAojdGVtcF90YWJsZXNwYWNlcyA9ICcnCQkJIyBhIGxpc3Qg b2YgdGFibGVzcGFjZSBuYW1lcywgJycgdXNlcwoJCQkJCSMgb25seSBkZWZhdWx0IHRhYmxlc3Bh Y2UKI2NoZWNrX2Z1bmN0aW9uX2JvZGllcyA9IG9uCiNkZWZhdWx0X3RyYW5zYWN0aW9uX2lzb2xh dGlvbiA9ICdyZWFkIGNvbW1pdHRlZCcKI2RlZmF1bHRfdHJhbnNhY3Rpb25fcmVhZF9vbmx5ID0g b2ZmCiNzZXNzaW9uX3JlcGxpY2F0aW9uX3JvbGUgPSAnb3JpZ2luJwojc3RhdGVtZW50X3RpbWVv dXQgPSAwCQkJIyAwIGlzIGRpc2FibGVkCiN2YWN1dW1fZnJlZXplX21pbl9hZ2UgPSAxMDAwMDAw MDAKI3htbGJpbmFyeSA9ICdiYXNlNjQnCiN4bWxvcHRpb24gPSAnY29udGVudCcKCiMgLSBMb2Nh bGUgYW5kIEZvcm1hdHRpbmcgLQoKZGF0ZXN0eWxlID0gJ2lzbywgbWR5JwojdGltZXpvbmUgPSB1 bmtub3duCQkJIyBhY3R1YWxseSwgZGVmYXVsdHMgdG8gVFogZW52aXJvbm1lbnQKCQkJCQkjIHNl dHRpbmcKI3RpbWV6b25lX2FiYnJldmlhdGlvbnMgPSAnRGVmYXVsdCcgICAgICMgU2VsZWN0IHRo ZSBzZXQgb2YgYXZhaWxhYmxlIHRpbWUgem9uZQoJCQkJCSMgYWJicmV2aWF0aW9ucy4gIEN1cnJl bnRseSwgdGhlcmUgYXJlCgkJCQkJIyAgIERlZmF1bHQKCQkJCQkjICAgQXVzdHJhbGlhCgkJCQkJ IyAgIEluZGlhCgkJCQkJIyBZb3UgY2FuIGNyZWF0ZSB5b3VyIG93biBmaWxlIGluCgkJCQkJIyBz aGFyZS90aW1lem9uZXNldHMvLgojZXh0cmFfZmxvYXRfZGlnaXRzID0gMAkJCSMgbWluIC0xNSwg bWF4IDIKI2NsaWVudF9lbmNvZGluZyA9IHNxbF9hc2NpaQkJIyBhY3R1YWxseSwgZGVmYXVsdHMg dG8gZGF0YWJhc2UKCQkJCQkjIGVuY29kaW5nCgojIFRoZXNlIHNldHRpbmdzIGFyZSBpbml0aWFs aXplZCBieSBpbml0ZGIsIGJ1dCB0aGV5IGNhbiBiZSBjaGFuZ2VkLgpsY19tZXNzYWdlcyA9ICdl bl9VUy5VVEYtOCcJCQkjIGxvY2FsZSBmb3Igc3lzdGVtIGVycm9yIG1lc3NhZ2UKCQkJCQkjIHN0 cmluZ3MKbGNfbW9uZXRhcnkgPSAnZW5fVVMuVVRGLTgnCQkJIyBsb2NhbGUgZm9yIG1vbmV0YXJ5 IGZvcm1hdHRpbmcKbGNfbnVtZXJpYyA9ICdlbl9VUy5VVEYtOCcJCQkjIGxvY2FsZSBmb3IgbnVt YmVyIGZvcm1hdHRpbmcKbGNfdGltZSA9ICdlbl9VUy5VVEYtOCcJCQkJIyBsb2NhbGUgZm9yIHRp bWUgZm9ybWF0dGluZwoKIyBkZWZhdWx0IGNvbmZpZ3VyYXRpb24gZm9yIHRleHQgc2VhcmNoCmRl ZmF1bHRfdGV4dF9zZWFyY2hfY29uZmlnID0gJ3BnX2NhdGFsb2cuZW5nbGlzaCcKCiMgLSBPdGhl ciBEZWZhdWx0cyAtCgojZXhwbGFpbl9wcmV0dHlfcHJpbnQgPSBvbgojZHluYW1pY19saWJyYXJ5 X3BhdGggPSAnJGxpYmRpcicKI2xvY2FsX3ByZWxvYWRfbGlicmFyaWVzID0gJycKCgojLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCiMgTE9DSyBNQU5BR0VNRU5UCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K CiNkZWFkbG9ja190aW1lb3V0ID0gMXMKI21heF9sb2Nrc19wZXJfdHJhbnNhY3Rpb24gPSA2NAkJ IyBtaW4gMTAKCQkJCQkjIChjaGFuZ2UgcmVxdWlyZXMgcmVzdGFydCkKIyBOb3RlOiAgRWFjaCBs b2NrIHRhYmxlIHNsb3QgdXNlcyB+MjcwIGJ5dGVzIG9mIHNoYXJlZCBtZW1vcnksIGFuZCB0aGVy ZSBhcmUKIyBtYXhfbG9ja3NfcGVyX3RyYW5zYWN0aW9uICogKG1heF9jb25uZWN0aW9ucyArIG1h eF9wcmVwYXJlZF90cmFuc2FjdGlvbnMpCiMgbG9jayB0YWJsZSBzbG90cy4KCgojLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCiMgVkVSU0lPTi9QTEFURk9STSBDT01QQVRJQklMSVRZCiMtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KCiMgLSBQcmV2aW91cyBQb3N0Z3JlU1FMIFZlcnNpb25zIC0KCiNhZGRfbWlz c2luZ19mcm9tID0gb2ZmCiNhcnJheV9udWxscyA9IG9uCiNiYWNrc2xhc2hfcXVvdGUgPSBzYWZl X2VuY29kaW5nCSMgb24sIG9mZiwgb3Igc2FmZV9lbmNvZGluZwojZGVmYXVsdF93aXRoX29pZHMg PSBvZmYKI2VzY2FwZV9zdHJpbmdfd2FybmluZyA9IG9uCiNyZWdleF9mbGF2b3IgPSBhZHZhbmNl ZAkJIyBhZHZhbmNlZCwgZXh0ZW5kZWQsIG9yIGJhc2ljCiNzcWxfaW5oZXJpdGFuY2UgPSBvbgoj c3RhbmRhcmRfY29uZm9ybWluZ19zdHJpbmdzID0gb2ZmCiNzeW5jaHJvbml6ZV9zZXFzY2FucyA9 IG9uCgojIC0gT3RoZXIgUGxhdGZvcm1zIGFuZCBDbGllbnRzIC0KCiN0cmFuc2Zvcm1fbnVsbF9l cXVhbHMgPSBvZmYKCgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ1VTVE9NSVpFRCBPUFRJT05T CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiNjdXN0b21fdmFyaWFibGVfY2xhc3NlcyA9ICcnCQkj IGxpc3Qgb2YgY3VzdG9tIHZhcmlhYmxlIGNsYXNzIG5hbWVzCg== --00148531a87ecf344b047cce8ddd--