From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hans de Goede Subject: Re: Some llvm questions (for tgsi backend) Date: Tue, 12 Jan 2016 15:53:10 +0100 Message-ID: <56951356.2040005@redhat.com> References: <56938CE2.1010705@redhat.com> <20160111171008.GA27306@freedesktop.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20160111171008.GA27306-CC+yJ3UmIYqDUpFQwHEjaQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: Tom Stellard Cc: "nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" List-Id: nouveau.vger.kernel.org SGkgVG9tLAoKVGhhbmtzIGZvciB0YWtpbmcgdGhlIHRpbWUgdG8gYW5zd2VyIHRoaXMuCgpPbiAx MS0wMS0xNiAxODoxMCwgVG9tIFN0ZWxsYXJkIHdyb3RlOgo+IE9uIE1vbiwgSmFuIDExLCAyMDE2 IGF0IDEyOjA3OjE0UE0gKzAxMDAsIEhhbnMgZGUgR29lZGUgd3JvdGU6Cj4+IEhpLAo+Pgo+PiBB ZnRlciBhIGZldyBkaXN0cmFjdGlvbnMgSSdtIGJhY2sgdG8gd29yayBvbiB0aGUgbGx2bSB0Z3Np IGJhY2tlbmQuIEkndmUKPj4gYWRkZWQgY2xhbmcgaW50ZWdyYXRpb24gYW5kIEkgY2FuIG5vdyBj b21waWxlIGEgc2ltcGxlIG9wZW5jbCBwcm9ncmFtCj4+IHRvIHNvbWV0aGluZyB3aGljaCBzb3J0 IG9mIGxvb2tzIGxpa2UgdGdzaS4KPj4KPj4gWW91IGNhbiBmaW5kIG15IGxhdGVzdCB3b3JrIG9u IHRoaXMgaGVyZToKPj4gaHR0cDovL2NnaXQuZnJlZWRlc2t0b3Aub3JnL35qd3JkZWdvZWRlL2xs dm0KPj4gaHR0cDovL2NnaXQuZnJlZWRlc2t0b3Aub3JnL35qd3JkZWdvZWRlL2NsYW5nCj4+ICh0 aGUgbGF0dGVyIG1heSBzdGlsbCBuZWVkIHRvIHN5bmMpCj4+Cj4+IEkndmUgYSBsaXR0bGUgdGVz dCBwcm9ncmFtIG9mIHdoaWNoIEkgaGF2ZSAzIHZlcnNpb25zIG5vdywKPj4gMSByYXcgZ2FsbGl1 bSBjYWxscyArIGEgdGdzaSBrZXJuZWwKPj4gMiBvcGVuY2wgY2FsbHMgdG8gY2xvdmVyICsgYSB0 Z3NpIGtlcm5lbAo+PiAzIG9wZW5jbCBjYWxscyB0byBjbG92ZXIgKyBhbiBvcGVuY2wga2VybmVs Cj4+Cj4+IDEgYW5kIDIgaGF2ZSBiZWVuIHRlc3RlZCBvbiBhIGtlcGxlciBjYXJkLCAzIGhhcyBi ZWVuCj4+IHRlc3RlZCB3aXRoIHBvY2wuIE15IGdvYWwgZm9yIHRoaXMgd2VlayBpcyB0byBnZXQK Pj4gdGhlIHRnc2kgYmFja2VuZCB0byBwcm9kdWNlIGNvZGUgd2hpY2ggSSBjYW4gY29weQo+PiBh bmQgcGFzdGUgaW50byAyIGFuZCB0aGVuIGhhdmUgaXQgd29ya2luZyBvbiBhIGtlcGxlciBjYXJk Lgo+Pgo+PiBUaGUgdGVzdCBwcm9ncmFtIGxvb2tzIGxpa2UgdGhpczoKPj4KPj4gX19rZXJuZWwg dm9pZCB0ZXN0X2tlcm4oX19nbG9iYWwgdWludCAqdmFscywgX19nbG9iYWwgdWludCAqYnVmKQo+ PiB7Cj4+ICAgIHVpbnQgaWQgPSBnZXRfZ2xvYmFsX2lkKDApOwo+Pgo+PiAgICBidWZbMzIgKiBp ZF0gLT0gdmFsc1tpZF07Cj4+IH0KPj4KPj4gVGhlIGxsdm0gaXIgbG9va3MgbGlrZSB0aGlzOgo+ Pgo+PiBiaW4vY2xhbmcgLXggY2wgLWMgLWVtaXQtbGx2bSAtdGFyZ2V0IHRnc2ktLSAtaW5jbHVk ZSAvdXNyL3NoYXJlL3BvY2wvaW5jbHVkZS9fa2VybmVsLmggLW8gfi9mb28uaXIgLXggY2wgLVMg fi9mb28uY2wKPj4KPj4gOyBNb2R1bGVJRCA9ICcvaG9tZS9oYW5zL2Zvby5jbCcKPj4gdGFyZ2V0 IGRhdGFsYXlvdXQgPSAiRS1wOjMyOjMyLWk2NDo2NDo2NC1mMzI6MzI6MzItbjMyIgo+PiB0YXJn ZXQgdHJpcGxlID0gInRnc2ktLSIKPj4KPj4gOyBGdW5jdGlvbiBBdHRyczogbm91bndpbmQKPj4g ZGVmaW5lIHZvaWQgQHRlc3Rfa2VybihpMzIgYWRkcnNwYWNlKDEpKiBub2NhcHR1cmUgcmVhZG9u bHkgJXZhbHMsIGkzMiBhZGRyc3BhY2UoMSkqIG5vY2FwdHVyZSAlYnVmKSAjMCB7Cj4+IGVudHJ5 Ogo+PiAgICAlY2FsbCA9IHRhaWwgY2FsbCBpMzIgQF9aMTNnZXRfZ2xvYmFsX2lkaihpMzIgMCkg IzIKPj4gICAgJWFycmF5aWR4ID0gZ2V0ZWxlbWVudHB0ciBpbmJvdW5kcyBpMzIsIGkzMiBhZGRy c3BhY2UoMSkqICV2YWxzLCBpMzIgJWNhbGwKPj4gICAgJTAgPSBsb2FkIGkzMiwgaTMyIGFkZHJz cGFjZSgxKSogJWFycmF5aWR4LCBhbGlnbiA0LCAhdGJhYSAhNwo+PiAgICAlbXVsID0gc2hsIGkz MiAlY2FsbCwgNQo+PiAgICAlYXJyYXlpZHgxID0gZ2V0ZWxlbWVudHB0ciBpbmJvdW5kcyBpMzIs IGkzMiBhZGRyc3BhY2UoMSkqICVidWYsIGkzMiAlbXVsCj4+ICAgICUxID0gbG9hZCBpMzIsIGkz MiBhZGRyc3BhY2UoMSkqICVhcnJheWlkeDEsIGFsaWduIDQsICF0YmFhICE3Cj4+ICAgICVzdWIg PSBzdWIgaTMyICUxLCAlMAo+PiAgICBzdG9yZSBpMzIgJXN1YiwgaTMyIGFkZHJzcGFjZSgxKSog JWFycmF5aWR4MSwgYWxpZ24gNCwgIXRiYWEgITcKPj4gICAgcmV0IHZvaWQKPj4gfQo+Pgo+PiBk ZWNsYXJlIGkzMiBAX1oxM2dldF9nbG9iYWxfaWRqKGkzMikgIzEKPj4KPj4gYXR0cmlidXRlcyAj MCA9IHsgbm91bndpbmQgImRpc2FibGUtdGFpbC1jYWxscyI9ImZhbHNlIiAibGVzcy1wcmVjaXNl LWZwbWFkIj0iZmFsc2UiICJuby1mcmFtZS1wb2ludGVyLWVsaW0iPSJ0cnVlIiAibm8tZnJhbWUt cG9pbnRlci1lbGltLW5vbi1sZWFmIiAibm8taW5mcy1mcC1tYXRoIj0iZmFsc2UiICJuby1uYW5z LWZwLW1hdGgiPSJmYWxzZSIgInN0YWNrLXByb3RlY3Rvci1idWZmZXItc2l6ZSI9IjgiICJ1bnNh ZmUtZnAtbWF0aCI9ImZhbHNlIiAidXNlLXNvZnQtZmxvYXQiPSJmYWxzZSIgfQo+PiBhdHRyaWJ1 dGVzICMxID0geyAiZGlzYWJsZS10YWlsLWNhbGxzIj0iZmFsc2UiICJsZXNzLXByZWNpc2UtZnBt YWQiPSJmYWxzZSIgIm5vLWZyYW1lLXBvaW50ZXItZWxpbSI9InRydWUiICJuby1mcmFtZS1wb2lu dGVyLWVsaW0tbm9uLWxlYWYiICJuby1pbmZzLWZwLW1hdGgiPSJmYWxzZSIgIm5vLW5hbnMtZnAt bWF0aCI9ImZhbHNlIiAic3RhY2stcHJvdGVjdG9yLWJ1ZmZlci1zaXplIj0iOCIgInVuc2FmZS1m cC1tYXRoIj0iZmFsc2UiICJ1c2Utc29mdC1mbG9hdCI9ImZhbHNlIiB9Cj4+IGF0dHJpYnV0ZXMg IzIgPSB7IG5vdW53aW5kIH0KPj4KPj4gIW9wZW5jbC5rZXJuZWxzID0gIXshMH0KPj4gIWxsdm0u aWRlbnQgPSAheyE2fQo+Pgo+PiAhMCA9ICF7dm9pZCAoaTMyIGFkZHJzcGFjZSgxKSosIGkzMiBh ZGRyc3BhY2UoMSkqKSogQHRlc3Rfa2VybiwgITEsICEyLCAhMywgITQsICE1fQo+PiAhMSA9ICF7 ISJrZXJuZWxfYXJnX2FkZHJfc3BhY2UiLCBpMzIgMSwgaTMyIDF9Cj4+ICEyID0gIXshImtlcm5l bF9hcmdfYWNjZXNzX3F1YWwiLCAhIm5vbmUiLCAhIm5vbmUifQo+PiAhMyA9ICF7ISJrZXJuZWxf YXJnX3R5cGUiLCAhInVpbnQqIiwgISJ1aW50KiJ9Cj4+ICE0ID0gIXshImtlcm5lbF9hcmdfYmFz ZV90eXBlIiwgISJ1aW50KiIsICEidWludCoifQo+PiAhNSA9ICF7ISJrZXJuZWxfYXJnX3R5cGVf cXVhbCIsICEiIiwgISIifQo+PiAhNiA9ICF7ISJjbGFuZyB2ZXJzaW9uIDMuOC4wIChodHRwOi8v bGx2bS5vcmcvZ2l0L2NsYW5nLmdpdCA5Mzc2Zjk5MmUwMDU2OWJkMDhhNGVjZjNhMWQwNmQ4Yjkz Yzk3NjgxKSAoaHR0cDovL2xsdm0ub3JnL2dpdC9sbHZtLmdpdCA3YTMxMTE0MzU1MGM2ZmMwMWFh NTAwMDA0OTgyNWVjYzA5Nzg3NDQwKSJ9Cj4+ICE3ID0gIXshOCwgITgsIGk2NCAwfQo+PiAhOCA9 ICF7ISJpbnQiLCAhOSwgaTY0IDB9Cj4+ICE5ID0gIXshIm9tbmlwb3RlbnQgY2hhciIsICExMCwg aTY0IDB9Cj4+ICExMCA9ICF7ISJTaW1wbGUgQy9DKysgVEJBQSJ9Cj4+Cj4+IEFuZCB0aGUgInRn c2kiIGxvb2tzIGxpa2UgdGhpczoKPj4KPj4gICAgICAgICAgLnRleHQKPj4gICAgICAgICAgLmZp bGUgICAiL2hvbWUvaGFucy9mb28uY2wiCj4+ICAgICAgICAgIC5nbG9ibCAgdGVzdF9rZXJuCj4+ IHRlc3Rfa2VybjoKPj4gICAgICAgICAgQkdOU1VCCj4+ICAgICAgICAgIE1PVmlzIFRFTVAxeCwg MAo+PiAgICAgICAgICBDQUwgX1oxM2dldF9nbG9iYWxfaWRqCj4+ICAgICAgICAgIFNITHMgVEVN UDF5LCBURU1QMXgsIDcKPj4gICAgICAgICAgTE9BRGlpcyBURU1QMXosIFs0XQo+PiAgICAgICAg ICBVQUREcyBURU1QMXksIFRFTVAxeiwgVEVNUDF5Cj4+ICAgICAgICAgIFNITHMgVEVNUDF4LCBU RU1QMXgsIDIKPj4gICAgICAgICAgTE9BRGlpcyBURU1QMXosIFswXQo+PiAgICAgICAgICBVQURE cyBURU1QMXgsIFRFTVAxeiwgVEVNUDF4Cj4+ICAgICAgICAgIExPQURnaXMgVEVNUDF4LCBbVEVN UDF4XQo+PiAgICAgICAgICBJTkVHcyBURU1QMXgsIFRFTVAxeAo+PiAgICAgICAgICBMT0FEZ2lz IFRFTVAxeiwgW1RFTVAxeV0KPj4gICAgICAgICAgVUFERHMgVEVNUDF4LCBURU1QMXgsIFRFTVAx ego+PiAgICAgICAgICBTVE9SRWdpcyBbVEVNUDF5XSwgVEVNUDF4Cj4+ICAgICAgICAgIFJFVAo+ PiAgICAgICAgICBFTkRTVUIKPj4KPj4gV29ya2luZyB0Z3NpIGZvciB0aGlzIHdvdWxkIGxvb2sg bGlrZSB0aGlzOgo+Pgo+PiBDT01QCj4+IERDTCBTVlswXSwgVEhSRUFEX0lEWzBdCj4+IERDTCBU RU1QWzBdLCBMT0NBTAo+PiBEQ0wgVEVNUFsxXSwgTE9DQUwKPj4gSU1NIFVJTlQzMiB7IDAsIDAs IDAsIDAgfQo+PiBJTU0gVUlOVDMyIHsgNCwgMCwgMCwgMCB9Cj4+IElNTSBVSU5UMzIgeyAxMjgs IDAsIDAsIDAgfQo+Pgo+PiBCR05TVUIKPj4gICAgICAgICBMT0FEIFRFTVBbMF0ueHksIFJJTlBV VCwgSU1NWzBdCj4+ICAgICAgICAgVU1VTCBURU1QWzFdLngsIFNWWzBdLCBJTU1bMV0KPj4gICAg ICAgICBVQUREIFRFTVBbMF0ueCwgVEVNUFswXSwgVEVNUFsxXQo+PiAgICAgICAgIFVNVUwgVEVN UFsxXS54LCBTVlswXSwgSU1NWzJdCj4+ICAgICAgICAgVUFERCBURU1QWzBdLnksIFRFTVBbMF0s IFRFTVBbMV0ueHh4eAo+PiAgICAgICAgIExPQUQgVEVNUFsxXS54LCBSR0xPQkFMLCBURU1QWzBd Cj4+ICAgICAgICAgTE9BRCBURU1QWzBdLngsIFJHTE9CQUwsIFRFTVBbMF0ueXl5eQo+PiAgICAg ICAgIFVBREQgVEVNUFsxXS54LCBURU1QWzBdLCAtVEVNUFsxXQo+PiAgICAgICAgIFNUT1JFIFJH TE9CQUwueCwgVEVNUFswXS55eXl5LCBURU1QWzFdCj4+ICAgICAgICAgUkVUCj4+IEVORFNVQjsK Pj4KPj4gU28gbXkgcXVlc3Rpb25zIChJJ20gc3RpbGwgcXVpdGUgZ3JlZW4gd2hlbiBpdCBjb21l cyB0byBsbHZtKToKPj4KPj4gMSkgQXMgeW91IGNhbiBzZWUgYSBwcm9wZXIgdGdzaSBwcm9ncmFt IG5lZWRzIGEgaGVhZGVyCj4+IHRvIGRlY2xhcmUgd2hpY2ggcmVnaXN0ZXJzIChldGMpIGl0IGlz IHVzaW5nLCBpbiB3aGljaAo+PiBjbGFzcy1tZXRob2Qgc2hvdWxkIEkgaW1wbGVtZW50IHRoaXMg Pwo+Pgo+Cj4gVGhlc2Uga2luZHMgb2YgdGhpbmdzIHNob3VsZCBiZSBlbWl0dGVkIGJ5IHRoZSBU R1NJIGltcGxlbWVudGF0aW9uIG9mIHRoZQo+IEFzbVByaW50ZXIgY2xhc3M6IGh0dHA6Ly9sbHZt Lm9yZy9kb2NzL2RveHlnZW4vaHRtbC9jbGFzc2xsdm1fMV8xQXNtUHJpbnRlci5odG1sCj4gWW91 IHByb2JhYmx5IHdhbnQgdG8gdXNlIEVtaXRTdGFydE9mQXNtRmlsZSgpIGZvciB0aGUgaGVhZGVy cy4KCk9rLCBpcyB0aGVyZSBhbiBlYXN5IHdheSB0byBzdXBwcmVzcyB0aGUgZ2VuZXJhdGlvbiBv ZjoKCiAgICAgICAgIC50ZXh0CiAgICAgICAgIC5maWxlICAgIi9ob21lL2hhbnMvZm9vLmNsIgog ICAgICAgICAuZ2xvYmwgIHRlc3Rfa2VybgoKPwoKSXQgc2VlbXMgSSBuZWVkIHRvIHRhY2tsZSBh bGwgMyBvZiB0aG9zZSBzZXBhcmF0ZWx5ID8KCj4+IDIpIEltbWVkaWF0ZXMgbmVlZCB0byBiZSBk ZWNsYXJlZCB3aXRoIGEgc3BlY2lmaWMKPj4gdmFsdWUgYW5kIHRoZW4gYWRkcmVzc2VkIGFzIElN TVt4XSwgaG93IHdvdWxkIEkgZ28gYWJvdXQKPj4gdGhpcyA/Cj4+Cj4KPiBJIHdvdWxkIHJlY29t bWVuZCBhZGRpbmcgYSBwYXNzIHRoYXQgcmVwbGFjZWQgaW1tZWRpYXRlcyBpbiB0aGUgY29kZSB3 aXRoCj4gSU1NIGZpbGUgcmVnaXRzZXIgYWNjZXNzZXMuCgpUaGlua2luZyBtb3JlIGFib3V0IHRo aXMsIEkgYmVsaWV2ZSBJIGNhbiB1c2UgdGhlIGV4aXN0aW5nIGNvbnN0Cm1lY2hhbmlzbSBmb3Ig dGhpcyAoYW5kIHRoZW4gYWRkIGEgY29uc3QgZ2VuZXJhdGlvbiBwYXNzIHRvIEFzbVByaW50ZXIp LgoKSG93IGRvIEkgdGVsbCBsbHZtIHRvIG5ldmVyIGdlbmVyYXRlIGluc3RydWN0aW9ucyB1c2lu ZyBpbW1lZGlhdGVzCmFuZCB0byBpbnN0ZWFkIGFsd2F5cyB1c2UgdGhlIGNvbnN0IGFkZHJlc3Mg c3BhY2UgZm9yIHRoaXMgPwoKPj4gMykgVGhlIGdldF9nbG9iYWxfaWQgY2FsbCBuZWVkcyB0byBi ZSB0cmFuc2xhdGVkIGludG8KPj4gc2ltcGx5IHVzaW5nIHRoZSBTVlswXSAicmVnaXN0ZXIiLCBo b3cgd291bGQgSSBnbyBhYm91dAo+PiB0aGlzID8KPj4KPgo+IGdldF9nbG9iYWxfaWQgc2hvdWxk IGJlIGltcGxlbWVudGVkIGluIGxpYmNsYyB3aXRoIHRnc2kgc3BlY2lmaWMgaW50cmluc2ljcwo+ IHRoYXQgcmVhZCBmcm9tIHRoZSBzeXN0ZW0gdmFsdWUgcmVnaXN0ZXJzLgoKSSBzZWUgSSB3aWxs IGludmVzdGlnYXRlIHRoaXMgZnVydGhlci4KCj4+IDQpIFRoZSBnbG9iYWwgYW5kIGlucHV0IGxv YWQgLyBzdG9yZXMgYXJlIG5vdCBoYW5kbGVkCj4+IGNvcnJlY3RseSwgSSBzZWUgdGhhdCB0aGUg TE9BRCBpbnN0cnVjdGlvbnMgZ2V0IHBvc3RmaXhlZAo+PiB3aXRoIGEgaSByZXBzLiBnIGZvciBp bnB1dCAvIGdsb2JhbCBob3cgd291bGQgSSBnbyBhYm91dAo+PiBtb2RpZnlpbmcgdGhlIGNvZGUg ZW1pdHRlciAoQXNtUHJpbnRlcj8pIHRvIGNoYW5nZSAiTE9BRGkiCj4+IGludG8gIkxPQUQgPGRl c3Q+IFJJTlBVVCA8b2Zmc2V0PiI/Cj4+Cj4KPiBJIGRvbid0IHVuZGVyc3RhbmQgZXhhY3RseSB3 aHkgeW91IHdhbnQgdG8gY2hhbmdlIHRoaXMuICBBcmUgeW91IHRyeWluZyB0bwo+IG1ha2UgdGhl IGFzc2VtYmx5IHN0cmluZyBmb3IgaW5wdXQgbG9hZHMgYW5kIGdsb2JhbCBsb2FkcyBsb29rIHRo ZSBzYW1lPwoKQ3VycmVudGx5IHRoZSBmb2xsb3dpbmcgY29kZSBpcyBnZW5lcmF0ZWQ6CgpMT0FE aWlzIFRFTVBbMV0ueiwgWzBdCgpUaGlzIHNob3VsZCBiZToKCkxPQUQgVEVNUFsxXS56LCBSSU5Q VVQsIDAKClNvIEkgbmVlZCB0byBhZGQgaGFuZGxpbmcgdG8gZ2VuZXJhdGUgdGhlIFJJTlBVVCBo ZXJlLiBJJ20gd29uZGVyaW5nCndoYXQgdGhlIGJlc3QgcGxhY2UgaXMgZm9yIHRoaXMuIERvIEkg c2ltcGx5IGludGVyY2VwdCB0aGUgTE9BRCBpbgpMb3dlck1hY2hpbmVJbnN0clRvTUNJbnN0IGFu ZCBhZGQgYW4gZXh0cmEgb3BlcmFuZCB0aGVyZSA/CgoKPj4gNSkgVGFsa2luZyBhYm91dCB0aGUg bG93ZWNhc2Ugc3VmZml4ZXMgdG8gdGhlIGluc3RydWN0aW9ucywKPj4gdGhlc2Ugc2hvdWxkIG5v dCBiZSBwYXJ0IG9mIHRoZSBvdXRwdXQsIGhvdyBkbyBJIGZpbHRlciB0aGVzZT8KPj4KPj4gNikg QW5kIGZpbmFsbHksIHRoZSBjdXJyZW50IGxsdm0tdGdzaSBvdXRwdXQgdXNlcyBlLmcuCj4+IFRF TVAxeSB3aGVyZSBhcyBmb3IgdGhlIGRlc3RpbmF0aW9uIGl0IHNob3VsZCB1c2UgVEVNUFsxXS55 Cj4+IGFuZCBmb3IgdGhlIHNvdXJjZXMgaXQgc2hvdWxkIHVzZSBURU1QWzFdLnh4eHggKHNvIGlu Y2x1ZGUKPj4gcHJvcGVyIHN3aXp6bGluZyBpbmZvKS4KPj4KPgo+IFlvdSBqdXN0IG5lZWQgdG8g Y2hhbmdlIGhvdyB0aGUgcmVnaXN0ZXJzIGFyZSBwcmludGVkIGluIHRoZQo+IFRHU0lSZWdpc3Rl ckluZm8udGQgZmlsZSB3aGljaCBzaG91bGQgZml4IHRoaXMuCgpPSywgc28gSSd2ZSBtYW5hZ2Vk IChlYXN5KSB0byBjaGFuZ2UgdGhpbmdzIHNvIHRoYXQgbm93IEkgZ2V0CihpLmUuKSA6CgpVQURE cyBURU1QWzFdLngsIFRFTVBbMV0ueCwgVEVNUFsxXS56CgpUaGlzIGlzIGhvd2V2ZXIgbm90IGNv cnJlY3QgVEdTSSwgY29ycmVjdCB3b3VsZCBiZToKClVBREQgVEVNUFsxXS54LCBURU1QWzFdLnh4 eHgsIFRFTVBbMV0uenp6egoKV2hpY2ggbWF5IGJlIHNob3J0ZW5kIHRvOgoKVUFERCBURU1QWzFd LngsIFRFTVBbMV0sIFRFTVBbMV0uenp6egoKVEdTSSB3aWxsIGF1dG9tYXRpY2FsbHkgdXNlIHRo ZSBkZXN0IHZlY3RvciBjb21wb25lbnQgZnJvbQp0aGUgc291cmNlcywgYW5kIGlmIHlvdSB3YW50 IHRvIHVzZSBhbm90aGVyIGNvbXBvbmVudCB5b3UKbmVlZCB0byBzcGVjaWZ5IGEgc3dpenpsZSBv cmRlciwgd2hpY2ggaXMgdGhlIDQgY29tcG9uZW50cwppbiBhbiBhbHRlcm5hdGUgb3JkZXIuCgpJ J20gbm90IHF1aXRlIHN1cmUgeWV0IGhvdyB0byBkZWFsIHdpdGggdGhpcy4KClJlZ2FyZHMsCgpI YW5zCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk5vdXZl YXUgbWFpbGluZyBsaXN0Ck5vdXZlYXVAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9ub3V2ZWF1Cg==