Imagine the summer of 1540 in Burgundy. More to the point, imagine enduring those stifling, record-breaking months without air conditioning, antiperspirant or an ice-cold beer.
Forest fires seethed across Europe, worshippers at the church of Notre Dame de Beaune joined eight separate processions to pray for rain, and the temperatures were almost unbearable.
Vines suffered from hydric stress and when the grapes were eventually harvested they looked like raisins, producing wines that were sweet, rich and heady.
After three sweltering vintages between 2017 and 2019, it’s easy to forget that exceptionally warm, dry growing seasons are nothing new in Burgundy. Last year, a group of academics from the European Geosciences Union published a meticulously researched paper analysing the starting date of every harvest in Beaune between 1354 and 2018.
Of the 664 years under consideration, 33 were what they termed ‘extremely early’ and 21 of those occurred between 1393 and 1719, long before the invention of the motor car or the advent of the industrial revolution.
The beliefs of modern-day climate change sceptics could be further bolstered by the fact that there were only four unusually early vintages between 1720 and 1987, suggesting that Burgundy was cooler in that period.
{"content":"PC9wPgo8aDM+PHN0cm9uZz5UaGUgbmV3IHJlYWxpdHk8L3N0cm9uZz48L2gzPgo8cD5JbiAyMDAzIGV2ZXJ5dGhpbmcgY2hhbmdlZCwgd2l0aCB0aGUgYXJyaXZhbCBvZiB0aGUgcmVnaW9u4oCZcyBob3R0ZXN0IGV2ZXIgc3VtbWVyLjwvcD4KPGRpdiBjbGFzcz0iYWQtY29udGFpbmVyIGFkLWNvbnRhaW5lci0tbW9iaWxlIj48ZGl2IGlkPSJwb3N0LWlubGluZS0zIiBjbGFzcz0iaXBjLWFkdmVydCI+PC9kaXY+PC9kaXY+CjxwPlRoZXJlIGhhdmUgYmVlbiBjb29sZXIsIGxhdGVyLXBpY2tlZCB2aW50YWdlcyBzaW5jZSB0aGF0IHdhdGVyc2hlZCB5ZWFyLCBzdWNoIGFzIDIwMDggYW5kIDIwMTMsIGJ1dCB0aGUgdHJlbmQgaGFzIGJlZW4gdW5taXN0YWtlYWJsZS4gRWlnaHQgb2YgdGhlIHN1YnNlcXVlbnQgMTYgdmludGFnZXMgKG5pbmUgaWYgeW91IGluY2x1ZGUgMjAxOSwgd2hpY2ggd2FzIGJlaW5nIGhhcnZlc3RlZCBhcyB0aGUgRUdVIHBhcGVyIGFwcGVhcmVkKSBmZWF0dXJlIGluIHRoYXQgbGlzdCBvZiAzMyBlYXJseSBoYXJ2ZXN0cy48L3A+CjxwPkluIHRoZSBwYXN0LCBjb25jbHVkZSB0aGUgYXV0aG9ycywgb3V0c3RhbmRpbmdseSBob3QsIGRyeSB5ZWFycyB3ZXJlIGF0eXBpY2FsOyBzaW5jZSB0aGUg4oCYdHJhbnNpdGlvbiB0byByYXBpZCB3YXJtaW5n4oCZLCB3aGljaCB0aGV5IHNheSBiZWdhbiBpbiAxOTg4LCBub3QgMjAwMywgdGhleSBoYXZlIGJlY29tZSB0aGUgbm9ybS48L3A+CjxkaXYgY2xhc3M9ImFkLWNvbnRhaW5lciBhZC1jb250YWluZXItLW1vYmlsZSI+PGRpdiBpZD0icG9zdC1pbmxpbmUtNCIgY2xhc3M9ImlwYy1hZHZlcnQiPjwvZGl2PjwvZGl2Pgo8cD5TaW5jZSAxOTg4LCBCdXJndW5kaWFuIGhhcnZlc3RzIGhhdmUgc3RhcnRlZCBhbiBhdmVyYWdlIG9mIDEzIGRheXMgZWFybGllciB0aGFuIGluIHRoZSBwcmVjZWRpbmcgNjM0IHllYXJzLjwvcD4KPHA+Rm9yZ2l2ZSBtZSBmb3Igc3RhcnRpbmcgdGhpcyBwaWVjZSB3aXRoIGEgZmlyZXN0b3JtIG9mIHN0YXRpc3RpY3MsIGJ1dCB0aG9zZSBmaW5kaW5ncyBjb25maXJtIHdoYXQgaXMgc2VsZi1ldmlkZW50IHRvIG1vc3QgQnVyZ3VuZGlhbnMuPC9wPgo8ZGl2IGNsYXNzPSJhZC1jb250YWluZXIgYWQtY29udGFpbmVyLS1tb2JpbGUiPjxkaXYgaWQ9InBvc3QtaW5saW5lLTUiIGNsYXNzPSJpcGMtYWR2ZXJ0Ij48L2Rpdj48L2Rpdj4KPHA+VGhlIHJlZ2lvbiBpcyBsaXZpbmcgdGhyb3VnaCBhIHBlcmlvZCBvZiB1bnByZWNlZGVudGVkIHRyYW5zZm9ybWF0aW9uIGRyaXZlbiBieSBjbGltYXRlIGNoYW5nZS4gUGFydCBvZiB0aGlzIHRyYW5zZm9ybWF0aW9uIGhhcyBiZWVuIGJlbmVmaWNpYWwsIGVuYWJsaW5nIGEgd2VsY29tZSBydW4gb2YgZ29vZCB0byBvdXRzdGFuZGluZyB2aW50YWdlcyB0aGF0IHN0cmV0Y2hlcyBiYWNrIHRvIDIwMDUuPC9wPgo8cD7igJhJIGV4cGVyaWVuY2VkIDE5NzcgYW5kIDE5ODQsIHdoaWNoIHdlcmUgdGhlIGFudGl0aGVzaXMgb2YgMjAxOCBhbmQgMjAxOSzigJkgc2F5cyBGcmFuw6dvaXMgTWlsbGV0IG9mIERvbWFpbmUgQ29tdGUgR2VvcmdlcyBkZSBWb2fDvMOpLiDigJhBbmQgYmVsaWV2ZSBtZSwgSeKAmWQgcmF0aGVyIGhhdmUgdGhlIGxhdHRlciBwYWlyIGV2ZXJ5IHRpbWUu4oCZPC9wPgo8cD5XYXJtZXIsIGVhcmxpZXIgaGFydmVzdHMsIHBpY2tlZCBiZWZvcmUgdGhlIHJhaW5zIGFuZCBjb29sZXIgd2VhdGhlciB0aGF0IG5vcm1hbGx5IGZvbGxvdyB0aGUgYXV0dW1uYWwgZXF1aW5veCwgaGF2ZSByZXN1bHRlZCBpbiBiZXR0ZXIgYW5kIG1vcmUgY29uc2lzdGVudCB3aW5lcy4gQnVyZ3VuZHksIGVzcGVjaWFsbHkgcmVkIEJ1cmd1bmR5LCBpcyBtdWNoIGVhc2llciB0byBidXkgd2l0aCBjb25maWRlbmNlIHRoYW4gaXQgd2FzIGluIHRoZSAxOTgwcy4gTm8gd29uZGVyIHBlb3BsZSBhcmUgdGFsa2luZyBhYm91dCBhIEdvbGRlbiBBZ2UuPC9wPgo8aDM+PHN0cm9uZz5HcmF2ZSB0aHJlYXQ8L3N0cm9uZz48L2gzPgo8cD5BbmQgeWV0IHRoZXJl4oCZcyBvYnZpb3VzbHkgYSBuZWdhdGl2ZSBzaWRlIHRvIGNsaW1hdGUgY2hhbmdlLCB0b28uIEplcmVteSBTZXlzc2VzIG9mIERvbWFpbmUgRHVqYWMgZGVzY3JpYmVzIGl0IGFzIOKAmG91ciBwaHlsbG94ZXJh4oCZLCBhIHRocmVhdCB0byB0aGUgcmVnaW9uIHRoYXQgaXMgZXZlcnkgYml0IGFzIGdyYXZlIGFzIHRoZSBhcGhpZCB0aGF0IGRlc3Ryb3llZCB2aW5leWFyZHMgaW4gdGhlIDE5dGggY2VudHVyeS4gRGV2YXN0YXRpbmcgc3ByaW5nIGZyb3N0cyAoYWJldHRlZCBieSBlYXJseSBidWRkaW5nIGFmdGVyIG1pbGQgd2ludGVycyksIGhhaWwgc3Rvcm1zLCBuZXcgdmluZXlhcmQgcGVzdHMgYW5kIGRpc2Vhc2VzLCBoZWF0IHN0cmVzcywgc3VuYnVybnQgZ3JhcGVzIGFuZCB0b3JyZW50aWFsIGRvd25wb3VycyBhbGwgY29tZSB3aXRoIHRoZSB0ZXJyaXRvcnkuPC9wPgo8cD5XZeKAmXJlIGFsc28gd2l0bmVzc2luZyBhIGZpc3N1cmUgaW4gdGhlIGNhcmVmdWxseSBzdHJ1Y3R1cmVkIHB5cmFtaWQgb2YgQnVyZ3VuZHnigJlzIGFwcGVsbGF0aW9uIHN5c3RlbSwgd2hpY2ggaGFzIGhpc3RvcmljYWxseSByZWNvZ25pc2VkIHRoZSBwcmltYWN5IG9mIHdlbGwtZXhwb3NlZCwgbWlkLXNsb3BlIHNpdGVzIG92ZXIgY29vbGVyIGFuZC9vciB3ZXR0ZXIgb25lcyBhdCBhbHRpdHVkZSBvciBvbiB0aGUgcGxhaW4uPC9wPgo8cD5UaGlzIGhhcyBsb25nZXItdGVybSBpbXBsaWNhdGlvbnMgZm9yIHRoZSBwcmljZSBvZiBsYW5kIGFuZCwgaW5kZWVkLCBmb3IgdGhlIHByaWNlIG9mIGNlcnRhaW4sIGhpZ2hseSB2YWx1ZWQgd2luZXMuPC9wPgo8cD5XaWxsIGJpbGxpb25haXJlcyBsaWtlIFN0YW4gS3JvZW5rZSwgRnJhbsOnb2lzIFBpbmF1bHQgYW5kIEJlcm5hcmQgQXJuYXVsdCBzdGlsbCB3YW50IHRvIGFjcXVpcmUgZ3JhbmQgY3J1IHBhcmNlbHMgZm9yIHN0cmF0b3NwaGVyaWMgc3Vtcz8gQW5kIHdpbGwgY29sbGVjdG9ycyBiZSBwcmVwYXJlZCB0byBwYXkgwqMzMDAgb3IgbW9yZSBmb3IgYSBib3R0bGUgb2YgQnVyZ3VuZHkgd2l0aCAxNiUgYWxjb2hvbD88L3A+CjxwPkl04oCZcyBhbiBpbXBvcnRhbnQgcXVlc3Rpb24uIEZyZWQgTXVnbmllciBvZiBEb21haW5lIEotRiBNdWduaWVyIHRoaW5rcyB0aGF0IHJpcGVyLCBzb2Z0ZXIsIG1vcmUg4oCYTmV3IFdvcmxkLXN0eWxl4oCZIHJlZHMgYW5kIHdoaXRlcyBhcmUgYSDigJhtb3ZlIGF3YXkgZnJvbSB3aGF0IG1ha2VzIEJ1cmd1bmR5IHNwZWNpYWwgdG93YXJkcyBzb21ldGhpbmcgdGhhdCBpcyBnb29kIHRvIGRyaW5rIHlvdW5nLCBidXQgdWx0aW1hdGVseSBtb3JlIGJhbmFs4oCZLjwvcD4KPGRpdiBpZD0iYXR0YWNobWVudF80MzEyNzEiIHN0eWxlPSJ3aWR0aDogMTMxMHB4IiBjbGFzcz0id3AtY2FwdGlvbiBhbGlnbm5vbmUiPjxpbWcgZmV0Y2hwcmlvcml0eT0iaGlnaCIgZGVjb2Rpbmc9ImFzeW5jIiBhcmlhLWRlc2NyaWJlZGJ5PSJjYXB0aW9uLWF0dGFjaG1lbnQtNDMxMjcxIiBjbGFzcz0ibGF6eWxvYWQgYmx1ci11cCBzaXplLWZ1bGwgd3AtaW1hZ2UtNDMxMjcxIiBkYXRhLXByb2Nlc3NlZCBzcmM9Imh0dHBzOi8vd3d3LmRlY2FudGVyLmNvbS5tYXN0ZXIucHVibGljLmtleXN0b25lLXByb2QtZWtzLWV1dzEuZnV0dXJlcGxjLmVuZ2luZWVyaW5nL3dwLWNvbnRlbnQvdGhlbWVzL3NpbWJhLXRoZW1lL2Fzc2V0cy9pbWFnZXMvcGxhY2Vob2xkZXIucG5nIiBkYXRhLXNyYz0iaHR0cHM6Ly9rZXlhc3NldHMudGltZWluY3VrLm5ldC9pbnNwaXJld3AvbGl2ZS93cC1jb250ZW50L3VwbG9hZHMvc2l0ZXMvMzQvMjAyMC8wMS9DbGltYXRlLWNoYW5nZS1jaGFydC5qcGciIGFsdD0iQ2xpbWF0ZSBjaGFuZ2UgY2hhcnQiIHdpZHRoPSIxMzAwIiBoZWlnaHQ9Ijg2MCIgZGF0YS1zaXplcz0iYXV0byIgZGF0YS1zcmNzZXQ9Imh0dHBzOi8va2V5YXNzZXRzLnRpbWVpbmN1ay5uZXQvaW5zcGlyZXdwL2xpdmUvd3AtY29udGVudC91cGxvYWRzL3NpdGVzLzM0LzIwMjAvMDEvQ2xpbWF0ZS1jaGFuZ2UtY2hhcnQuanBnIDEzMDB3LCBodHRwczovL2tleWFzc2V0cy50aW1laW5jdWsubmV0L2luc3BpcmV3cC9saXZlL3dwLWNvbnRlbnQvdXBsb2Fkcy9zaXRlcy8zNC8yMDIwLzAxL0NsaW1hdGUtY2hhbmdlLWNoYXJ0LTMwMHgxOTguanBnIDMwMHcsIGh0dHBzOi8va2V5YXNzZXRzLnRpbWVpbmN1ay5uZXQvaW5zcGlyZXdwL2xpdmUvd3AtY29udGVudC91cGxvYWRzL3NpdGVzLzM0LzIwMjAvMDEvQ2xpbWF0ZS1jaGFuZ2UtY2hhcnQtNjMweDQxNy5qcGcgNjMwdywgaHR0cHM6Ly9rZXlhc3NldHMudGltZWluY3VrLm5ldC9pbnNwaXJld3AvbGl2ZS93cC1jb250ZW50L3VwbG9hZHMvc2l0ZXMvMzQvMjAyMC8wMS9DbGltYXRlLWNoYW5nZS1jaGFydC0xMzV4ODkuanBnIDEzNXcsIGh0dHBzOi8va2V5YXNzZXRzLnRpbWVpbmN1ay5uZXQvaW5zcGlyZXdwL2xpdmUvd3AtY29udGVudC91cGxvYWRzL3NpdGVzLzM0LzIwMjAvMDEvQ2xpbWF0ZS1jaGFuZ2UtY2hhcnQtMzIweDIxMi5qcGcgMzIwdywgaHR0cHM6Ly9rZXlhc3NldHMudGltZWluY3VrLm5ldC9pbnNwaXJld3AvbGl2ZS93cC1jb250ZW50L3VwbG9hZHMvc2l0ZXMvMzQvMjAyMC8wMS9DbGltYXRlLWNoYW5nZS1jaGFydC02MjB4NDEwLmpwZyA2MjB3LCBodHRwczovL2tleWFzc2V0cy50aW1laW5jdWsubmV0L2luc3BpcmV3cC9saXZlL3dwLWNvbnRlbnQvdXBsb2Fkcy9zaXRlcy8zNC8yMDIwLzAxL0NsaW1hdGUtY2hhbmdlLWNoYXJ0LTkyMHg2MDkuanBnIDkyMHcsIGh0dHBzOi8va2V5YXNzZXRzLnRpbWVpbmN1ay5uZXQvaW5zcGlyZXdwL2xpdmUvd3AtY29udGVudC91cGxvYWRzL3NpdGVzLzM0LzIwMjAvMDEvQ2xpbWF0ZS1jaGFuZ2UtY2hhcnQtMTIyMHg4MDcuanBnIDEyMjB3IiBzaXplcz0iKG1heC13aWR0aDogMTMwMHB4KSAxMDB2dywgMTMwMHB4IiAvPjxwIGlkPSJjYXB0aW9uLWF0dGFjaG1lbnQtNDMxMjcxIiBjbGFzcz0id3AtY2FwdGlvbi10ZXh0Ij5DcmVkaXQ6IE1hdHVyaXR5IHN1cnZleSDigJMgVmludGFnZSBPYnNlcnZhdG9yeSBCb3VyZ29nbmUgV2luZSBCb2FyZCAoQklWQik8L3A+PC9kaXY+CjxoMz48c3Ryb25nPkNoYW5naW5nIGxhbmRzY2FwZTwvc3Ryb25nPjwvaDM+CjxwPkNsaW1hdGUgY2hhbmdlIG1lYW5zIHRoYXQgQnVyZ3VuZGlhbnMgYXJlIGJlaW5nIGZvcmNlZCB0byByZWFzc2VzcyB0aGUgd2F5IHRoZXkgZ3JvdyB0aGVpciBncmFwZXMsIG5vdCB0byBtZW50aW9uIGhvdyB0aGV5IGZlcm1lbnQgYW5kIGFnZSB0aGVtLjwvcD4KPHA+SXQgaXMgYWxzbyBoYXZpbmcgYW4gaW1wYWN0IG9uIHRoZSBhcm9tYXMsIGZsYXZvdXJzIGFuZCBzdHJ1Y3R1cmUgb2YgdGhlaXIgZmluaXNoZWQgd2luZXMsIGFzIHdlbGwgYXMgb3BlbmluZyB0aGUgZG9vciB0byBmYXVsdHMgc3VjaCBhcyBleGNlc3NpdmUgdm9sYXRpbGl0eSwgYnJldHRhbm9teWNlcyBhbmQgc3dpbmdlaW5nIGxldmVscyBvZiBhbGNvaG9sLiBXb3JzZSwgc29tZSBwcm9kdWNlcnMgYXJlIHdvcnJpZWQgdGhhdCBjbGltYXRlIGNoYW5nZSBjb3VsZCBzZXZlciB0aGUgaW50cmljYXRlIG5leHVzIGJldHdlZW4gQnVyZ3VuZHkgYW5kIGl0cyBoaXN0b3JpYywgVU5FU0NPLWVuZG9yc2VkIFdvcmxkIEhlcml0YWdlIFNpdGVzLjwvcD4KPHA+T2YgY291cnNlLCBjb21wYXJlZCB3aXRoIHRoZSBidXNoZmlyZXMgdGhhdCBoYXZlIGFmZmVjdGVkIEF1c3RyYWxpYW4gYW5kIENhbGlmb3JuaWFuIHdpbmUgcmVnaW9ucyBpbiB0aGUgbGFzdCB5ZWFyLCB3aGF04oCZcyBoYXBwZW5pbmcgaW4gQnVyZ3VuZHkgaXMgbGVzcyBkZXZhc3RhdGluZyBhbmQgbGlmZS10aHJlYXRlbmluZywgZXZlbiBpZiBzb21lIEJ1cmd1bmRpYW5zIGhhdmUgbG9zdCBhbGwgb3IgbW9zdCBvZiBhIHZpbnRhZ2XigJlzIGNyb3AgdG8gaGFpbCwgaGVhdCBvciBmcm9zdC48L3A+CjxwPkluIHRoZSBsb25nZXIgdGVybSwgdGhlIHByb3NwZWN0IG9mIGdsb2JhbCBjYXRhc3Ryb3BoZSBpcyB3YXkgbW9yZSB0ZXJyaWZ5aW5nIHN0aWxsLiBJZiB0aGUgSW50ZXJnb3Zlcm5tZW50YWwgUGFuZWwgb24gQ2xpbWF0ZSBDaGFuZ2XigJlzIHByZWRpY3Rpb25zIGFyZSBjb3JyZWN0IGFuZCB0aGUgZWFydGggaXMgNC41wrBDIHdhcm1lciBieSAyMTAwIGF0IGN1cnJlbnQgcmF0ZXMgb2YgZ3JlZW5ob3VzZSBnYXMgZW1pc3Npb25zLCB3ZSBjb3VsZCBiZSBmYWNpbmcgY3JvcCBmYWlsdXJlcywgbWFzcyBtaWdyYXRpb24gYW5kIHdhcnMgZm91Z2h0IG92ZXIgc2NhcmNlIHJlc291cmNlcy48L3A+CjxwPldvcnNlLCB0aGUgc28tY2FsbGVkIFNpeHRoIEV4dGluY3Rpb24gbWF5IGJlIHVwb24gdXMsIGVuZGluZyBsaWZlIG9uIGVhcnRoIGFzIHdlIGtub3cgaXQuPC9wPgo8cD5JbiBzdWNoIGNpcmN1bXN0YW5jZXMsIGl0IGlzIG1vcmUgdGhhbiBhIGxpdHRsZSBvYnNjZW5lIHRvIGZyZXQgYWJvdXQgdGhlIHBvdGVudGlhbCBsb3NzIG9mIG51YW5jZSBpbiBvdXIgZ2xhc3Mgb2YgR2V2cmV5LUNoYW1iZXJ0aW4uIEFuZCB5ZXQgd2hhdOKAmXMgaGFwcGVuaW5nIGluIHRoZSB3aW5lIHdvcmxkIHJpZ2h0IG5vdyBkb2VzIG1hdHRlciwgYW5kIG5vdCBqdXN0IHRvIEJ1cmd1bmRvcGhpbGVzLjwvcD4KPHA+QXMgdGhlIEF1c3RyYWxpYW4gdml0aWN1bHR1cmlzdCBEciBSaWNoYXJkIFNtYXJ0IGhhcyBhcmd1ZWQsIHdpbmUgaXMgdGhlIOKAmGNhbmFyeSBpbiB0aGUgY29hbG1pbmUgYmVjYXVzZSBpdOKAmXMgYW4gZWFybHkgd2FybmluZyBzeXN0ZW3igJkuIE9yLCBhcyBBdWJlcnQgZGUgVmlsbGFpbmUgb2YgRG9tYWluZSBkZSBsYSBSb21hbsOpZS1Db250aSwgcHV0cyBpdDog4oCYV2luZW1ha2VycyBhcmUgb24gdGhlIGZyb250IGxpbmUgd2hlbiBpdCBjb21lcyB0byBvYnNlcnZpbmcgd2hhdOKAmXMgaGFwcGVuaW5nIHRvIHRoZSBjbGltYXRlLiBUaGUgZmx1Y3R1YXRpb25zIHdlIGFyZSBleHBlcmllbmNpbmcgdG9kYXkgYXJlIG1vcmUgc2lnbmlmaWNhbnQgdGhhbiBhdCBhbnkgdGltZSBpbiBoaXN0b3J5LuKAmTwvcD4KPHA+Tm8gY3JvcCBpcyBhcyBjbGVhcmx5IGRlZmluZWQgYnkgaXRzIGNsaW1hdGUgYW5kIG9yaWdpbiBhcyA8ZW0+Vml0aXMgdmluaWZlcmE8L2VtPiBncmFwZXMuIElmIHRoaXMgaXMgdHJ1ZSBpbiBnZW5lcmFsLCBpdCBpcyBkb3VibHkgc28gaW4gQnVyZ3VuZHksIHdoZXJlIHRlcnJvaXIgaGFzIHJlYWNoZWQgaXRzIGFwb3RoZW9zaXMgb3ZlciBjZW50dXJpZXMgb2Ygc3R1ZHksIGFuYWx5c2lzIGFuZCBlbXBpcmljaXNtLjwvcD4KPHA+SWYgd2luZSByZWdpb25zLCBCdXJndW5keSBpbmNsdWRlZCwgY2FuIGZpbmQgd2F5cyB0byBzbG93IHRoZSBpbXBhY3Qgb2YgY2xpbWF0ZSBjaGFuZ2UsIHRoaXMgY291bGQgc2VydmUgYXMgYW4gZXhhbXBsZSB0byBvdGhlciBmb3JtcyBvZiBhZ3JpY3VsdHVyZS48L3A+CjxwPlVzaW5nIHJlbmV3YWJsZSBlbmVyZ3ksIGRpdGNoaW5nIGhlYXZ5IGJvdHRsZXMsIGJ1bGsgc2hpcHBpbmcsIHNhdmluZyB3YXRlciwgZXhwbG9yaW5nIGNhcmJvbiBjYXB0dXJlLCBlc2NoZXdpbmcgc3lzdGVtaWMgZmVydGlsaXNlcnMgYW5kIHdlZWQga2lsbGVycyBhbmQgcmVkdWNpbmcgY2FyYm9uIGRpb3hpZGUgZW1pc3Npb25zIGFyZSBhbGwgcG90ZW50aWFsIHJlc3BvbnNlcyB0byB0aGUgY2xpbWF0ZSBlbWVyZ2VuY3kuPC9wPgo8aDM+PHN0cm9uZz5DaGFuZ2UgaW4gbWluZHNldDwvc3Ryb25nPjwvaDM+CjxwPldoYXQgZWxzZSBjYW4gQnVyZ3VuZHkgZG8gcmlnaHQgbm93PyBUaGUgZmlyc3QgdGhpbmcgaXMgc3VyZWx5IHRvIHJlY29nbmlzZSB0aGUgc2V2ZXJpdHkgb2YgdGhlIGNoYWxsZW5nZSBpdCBmYWNlcy48L3A+CjxwPlRvbyBtYW55IHByb2R1Y2VycyBhcmUgaW4gZGVuaWFsIGFuZCBoYXZlIGJlZW4gZm9yIHNvbWUgdGltZS4gRXZlbiBiZWZvcmUgdGhlIEV1cm9wZWFuIEdlb3NjaWVuY2VzIFVuaW9u4oCZcyBwYXBlciB3YXMgcHVibGlzaGVkIGxhc3QgeWVhciwgaXQgd2FzIG9idmlvdXMgdGhhdCwgZGVzcGl0ZSB0aGUgdmVyeSByZWFsIGFkdmFudGFnZXMgb2Ygd2FybWVyIHRlbXBlcmF0dXJlcyBpbiB0aGUgcmVnaW9uLCB0aGVyZSB3ZXJlIG9idmlvdXMgZHJhd2JhY2tzIHRvbywgbm90IGxlYXN0IHRoZSBsb25nLXRlcm0gdmlhYmlsaXR5IG9mIFBpbm90IE5vaXIgYXMgQnVyZ3VuZHnigJlzIG1hcnF1ZWUgcmVkIHZhcmlldHkuPC9wPgo8cD5JbiAyMDA2LCB0aGlzIHZlcnkgbWFnYXppbmUgcHVibGlzaGVkIGEgcGllY2UgYWJvdXQgdGhlIEZpcnN0IFdvcmxkIENvbmZlcmVuY2Ugb24gR2xvYmFsIFdhcm1pbmcgYW5kIFdpbmUuIEl0cyBoZWFkbGluZT8g4oCYUGlub3QgaW1wb3NzaWJsZSBpbiBCdXJndW5keSBvdmVyIG5leHQgNTAgeWVhcnPigJkuIEFuZCB0aGVuIHRoZXJlIHdhcyB0aGUgMjAwOSBHcmVlbnBlYWNlIFJlcG9ydCwgd2hpY2ggc3RhdGVkIHRoYXQg4oCYY2xpbWF0ZSBjaGFuZ2UgY291bGQgZGVzdHJveSBCdXJndW5keeKAmS4gT3IsIG1vcmUgdGVsbGluZ2x5LCB0aGUgcGFwZXIgZGVsaXZlcmVkIGJ5IHRoZSBBbWVyaWNhbiBzY2llbnRpc3QgUHJvZmVzc29yIEdyZWdvcnkgSm9uZXMgaW4gMjAwNyBlbnRpdGxlZCDigJhDbGltYXRlIENoYW5nZTogT2JzZXJ2YXRpb25zLCBQcm9qZWN0aW9ucyBhbmQgR2VuZXJhbCBJbXBsaWNhdGlvbnMgZm9yIFZpdGljdWx0dXJlIGFuZCBXaW5lIFByb2R1Y3Rpb27igJksIHdoaWNoIHdhcm5lZCB0aGF0IGxlYWRpbmcgcmVnaW9ucyBzdWNoIGFzIEJ1cmd1bmR5IHdlcmUgYXQgcmlzayBmcm9tIGJvdGgg4oCYc2hvcnQtdGVybSBjbGltYXRlIHZhcmlhYmlsaXR5IGFuZCBsb25nLXRlcm0gY2xpbWF0ZSBjaGFuZ2XigJkuPC9wPgo8cD5XYXMgbm8gb25lIGxpc3RlbmluZz88L3A+CjxwPlRoaXMgaXMgcGFydGx5IGEgZ2VuZXJhdGlvbmFsIHRoaW5nLiBGb3IgZ3Jvd2VycyB3aG8ga25vdyB3aGF0IGl0IHdhcyBsaWtlIHRvIGNoYXB0YWxpc2UgdGhlaXIgd2luZXMgYXMgYSBtYXR0ZXIgb2YgY291cnNlLCBzdHJ1Z2dsaW5nIHRvIHJlYWNoIHRoZSBtaW5pbXVtIHJlcXVpcmVkIGRlZ3JlZSBvZiBhbGNvaG9sIGluIHRoZSAxOTcwcyBhbmQgMTk4MHMsIHRoZSBuZXcgbm9ybWFsIGNhbiBiZSBoYXJkIHRvIGFzc2ltaWxhdGUuIE9sZGVyIHByb2R1Y2VycyBsaWtlIEZyZWQgTXVnbmllciwgd2hvIGlzIOKAmHRlcnJpZmllZCBhYm91dCB0aGUgZnV0dXJl4oCZLCBhcmUgc3RpbGwgY29tcGFyYXRpdmVseSB1bnVzdWFsLCBidXQgeW91bmdlciBvbmVzIGFyZSBtb3JlIGF3YXJlIG9mIHRoZSBpc3N1ZXMgaW52b2x2ZWQuPC9wPgo8cD7igJhNeSBkYXVnaHRlciBMw6lhIHR1cm5zIG9mZiB0aGUgYWlyIGNvbmRpdGlvbmluZyBpbiB0aGUgY2FyIHdoZW4gd2XigJlyZSBkcml2aW5nIGZyb20gTWV1cnNhdWx0IHRvIHRoZSBNw6Jjb25uYWlzLOKAmSBzYXlzIERvbWluaXF1ZSBMYWZvbiBvZiB0aGUgRG9tYWluZSBkZXMgQ29tdGVzIExhZm9uLiDigJhTaGXigJlzIGJhbm5lZCBwbGFzdGljIGF0IHRoZSBlc3RhdGUgYW5kIHNoZeKAmXMgYSB2ZWdldGFyaWFuLCBsaWtlIGFsbW9zdCBoYWxmIG9mIG91ciB0ZWFtLiBBdHRpdHVkZXMgYXJlIGNoYW5naW5nIGluIEJ1cmd1bmR5LuKAmTwvcD4KPGgzPjxzdHJvbmc+SW4gdGhlIHZpbmV5YXJkPC9zdHJvbmc+PC9oMz4KPHA+VGhlIHBsYWNlIHRvIHN0YXJ0IGlzIGluIHRoZSB2aW5leWFyZCwgd2hlcmUgdGhlcmUgYXJlIHNldmVyYWwgbWV0aG9kcyBvZiBtaXRpZ2F0aW5nIHRoZSBlZmZlY3RzIG9mIGNsaW1hdGUgY2hhbmdlLjwvcD4KPHA+SW4gZXhpc3RpbmcgdmluZXlhcmRzLCBwb3NzaWJsZSBzb2x1dGlvbnMgaW5jbHVkZSBicm9hZGVyLCBkZW5zZXIgY2Fub3BpZXMsIG5vdCB0b3BwaW5nIHRoZSB2aW5lcyBkdXJpbmcgdGhlIGdyb3dpbmcgc2Vhc29uIGFuZCBoaWdoZXIgeWllbGRzIHBlciBwbGFudCB0byByZWR1Y2Ugc3VnYXIgY29uY2VudHJhdGlvbiBpbiB0aGUgZ3JhcGVzLjwvcD4KPHA+TW9yZSBjb250cm92ZXJzaWFsbHksIHNldmVyYWwgZ3Jvd2VycyB0b2xkIG1lIHRoZXkgaGFkIHJlZHVjZWQgdGhlIGFtb3VudCBvZiB1bHRyYS1mYXNoaW9uYWJsZSBwbG91Z2hpbmcgdGhleSBkbywgb3Igc3RvcHBlZCBpdCBhbHRvZ2V0aGVyLCBiZWNhdXNlIGFzIHdlbGwgYXMgYWVyYXRpbmcgc29pbHMsIGl0IGRyaWVzIHRoZW0gb3V0LjwvcD4KPHA+VXNpbmcgY29tcG9zdCBiZWxvdyB0aGUgdmluZXMgYW5kIGNvdmVyIGNyb3BzIHRvIHJldGFpbiBtb2lzdHVyZSBpcyBiZWNvbWluZyBpbmNyZWFzaW5nbHkgd2lkZXNwcmVhZC4gT3JnYW5pYyBvciBiaW9keW5hbWljIHByYWN0aWNlcyBhbHNvIGhlbHAsIGFjY29yZGluZyB0byBKZWFuLUxvdWlzIFRyYXBldCBvZiBEb21haW5lIEplYW4tTG91aXMgVHJhcGV0LCBhcyB0aGUg4oCYdmluZXMgZGV2ZWxvcCBkZWVwZXIgcm9vdCBzeXN0ZW1zIHRoYXQgYnVmZmVyIGV4dHJlbWVz4oCZLjwvcD4KPHA+V2hlbiBpdCBjb21lcyB0byBuZXcgdmluZXlhcmRzLCBsYXRlciByaXBlbmluZywgbW9yZSBkcm91Z2h0LXJlc2lzdGFudCBjbG9uZXMsIG1hc3NhbCBzZWxlY3Rpb25zIGFuZCByb290c3RvY2tzIGFyZSBhbm90aGVyIHBhcnRpYWwgcmVzcG9uc2U7IHRoZSBvbmVzIHRoYXQgd2VyZSBwbGFudGVkIGluIHRoZSAxOTcwcywgMTk4MHMgYW5kIDE5OTBzIHdlcmUgZGVzaWduZWQgZm9yIGEgZGlmZmVyZW50IHJlYWxpdHkuPC9wPgo8cD5TaGlmdGluZyByb3cgb3JpZW50YXRpb24gZnJvbSBjb21tb24gZWFzdC13ZXN0IHRvIG5vcnRoLXNvdXRoIHdvdWxkIGhlbHAgdG8gcmVkdWNlIHRoZSBhbW91bnQgb2YgZGlyZWN0IHN1bmxpZ2h0IG9uIGJ1bmNoZXMuPC9wPgo8cD5Db29sZXIgc2l0ZXMsIGVzcGVjaWFsbHkgaW4gdGhlIEhhdXRlcyBDw7R0ZXMgYnV0IGFsc28gaW4g4oCYbGVzc2Vy4oCZIHByZW1pZXJzIGNydXMsIHZpbGxhZ2UgYW5kIGdlbmVyaWMgbGlldXgtZGl0cywgYXJlIGNvbWluZyBpbnRvIHRoZWlyIG93bi4g4oCYVGhlIGNvbGQgYXJlYXMgb2YgdGhlIHBhc3QgbGlrZSB0aGUgQ29tYmUgQXV4IE1vaW5lcyBhcmUgYmVjb21pbmcgdGhlIHBlYXJscyBvZiB0b2RheSzigJkgc2F5cyBKZWFuLU1hcmllIEZvdXJyaWVyIG9mIERvbWFpbmUgRm91cnJpZXIuPC9wPgo8cD5Tb21lIHByb2R1Y2VycyBhcmUgYWxzbyBsb29raW5nIG91dHNpZGUgQnVyZ3VuZHksIG5vdCBqdXN0IHRvIHRoZSBKdXJhIGFuZCB0aGUgQmVhdWpvbGFpcywgYnV0IHRvIHByZXZpb3VzbHkgdW5wbGFudGVkIGFyZWFzIGFzIGZhciBhZmllbGQgYXMgUGljYXJkeS4g4oCYSeKAmW0gc2VhcmNoaW5nIGZvciBmYXJtcyB3aXRoIGxpbWVzdG9uZSwgc2xvcGVzIGFuZCBjb3dzLOKAmSBzYXlzIE5pY29sYXMgUG90ZWwgb2YgRG9tYWluZSBkZSBCZWxsZW5lLiDigJhJIGhhdmVu4oCZdCBmb3VuZCBhbnl0aGluZyB5ZXQsIGJ1dCB3ZSBuZWVkIHRvIGxvb2sgbm9ydGgu4oCZPC9wPgo8cD5UaGVyZSBhcmUgZGlmZmVyaW5nIHZpZXdzIGFib3V0IHdoYXQgY2xpbWF0ZSBjaGFuZ2UgbWVhbnMgZm9yIHRoZSBmdXR1cmUgb2YgdGhlIGFwcGVsbGF0aW9uIHN5c3RlbSBpbiB3aGF0IHdhcyBvbmNlIGEgbWFyZ2luYWwgYXJlYSwgYXQgbGVhc3QgaW4gbGF0ZXItcGlja2VkIHZpbnRhZ2VzLjwvcD4KPHA+U29tZSBncm93ZXJzLCBzdWNoIGFzIFBpZXJyZSBEYW1veSBpbiBHZXZyZXktQ2hhbWJlcnRpbiwgdGhpbmsgdGhhdCB0aGUgZ3JhbmRzIGNydXMgaW4gcGFydGljdWxhciBoYXZlIGEg4oCYY2VydGFpbiBjbGFzcyBhbmQgbWFnaWPigJkgdGhhdCByZXNpc3RzIGhlYXQgYW5kIGRyb3VnaHQuPC9wPgo8cD5PdGhlcnMgYXJndWUgdGhhdCBzb21lIG9mIEJ1cmd1bmR54oCZcyBtb3N0IGZhbW91cyBhcHBlbGxhdGlvbnMgYXJlIGxpdmluZyBvbiBib3Jyb3dlZCB0aW1lLCBlc3BlY2lhbGx5IGlmIHRoZXkgYXJlIHBsYW50ZWQgb24gcG9vcmVyIGxpbWVzdG9uZSBzb2lscyB3aXRoIGxlc3MgbW9pc3R1cmUtcmV0YWluaW5nIGNsYXkgY29udGVudC4gU2l0ZXMgdGhhdCBtYW5hZ2VkIHRvIHJpcGVuIGdyYXBlcyBpbiBjaGlsbHkgdmludGFnZXMgbGlrZSAxOTg4LCAxOTk4LCAyMDA0LCAyMDA4IGFuZCAyMDEzIGFyZSBhcmd1YWJseSB0b28gd2FybSBub3cuIE9sZCB2aW5lcywgd2hpY2ggc2VlbSB0byBjb3BlIGJldHRlciB3aXRoIGNsaW1hdGUgY2hhbmdlIHRoYW4geW91bmcgb25lcywgYXJlIGEgbWl0aWdhdGluZyBmYWN0b3IsIGJ1dCBzb21lIG9mIHRoZSBncmFuZHMgY3J1cyBtYXkgYmUgaWxsLXN1aXRlZCB0byB0aGUgZXZvbHZpbmcgcmVhbGl0eS48L3A+CjxoMz48c3Ryb25nPlJhZGljYWwgbWVhc3VyZXM8L3N0cm9uZz48L2gzPgo8cD5TYWNyaWxlZ2lvdXMgaXQgbWF5IHNlZW0gdG8gc29tZSBCdXJndW5keSBsb3ZlcnMsIGJ1dCBzaG91bGQgdGhlIHJlZ2lvbiBjb25zaWRlciBwbGFudGluZyBvdGhlciB2YXJpZXRpZXM\/PC9wPgo8cD5J4oCZbSBub3QganVzdCB0YWxraW5nIGFib3V0IEdhbWF5LCB3aGljaCB3YXMgZXhwZWxsZWQgZnJvbSBCdXJndW5keSBpbiAxMzk1IGJ5IFBoaWxpcCB0aGUgQm9sZCBidXQgc3RpbGwgZXhpc3RzIGluIHRoZSBNw6Jjb25uYWlzIGFuZCBldmVuIGluIGlzb2xhdGVkIHNwb3RzIGluIHRoZSBDw7R0ZSBk4oCZT3IsIHdoZXJlIGl0IGlzIHVzZWQgdG8gbWFrZSBCb3VyZ29nbmUgUGFzc2UtVG91dC1HcmFpbnMuPC9wPgo8cD5JIHdvbmRlciBpZiwgbW9yZSByYWRpY2FsbHksIG5vdyBpcyB0aGUgdGltZSB0byBsb29rIGF0IHdoYXQgZWxzZSBtaWdodCBkbyB3ZWxsIGluIEJ1cmd1bmR5LiBTYXV2aWdub24gQmxhbmMgaXMgYWxyZWFkeSBncm93biBpbiBTYWludC1CcmlzLCBQZXRlciBHaWVyc3pld3NraSBvZiBEb21haW5lIGRlIFRoYWxpZSBoYXMgc29tZSBTeXJhaCBuZWFyIENsdW55IGFuZCBhIGJpdCBvZiBpbGxlZ2FsIENoZW5pbiBCbGFuYyBoYXMganVzdCBiZWVuIHBsYW50ZWQgYnkgYSB0b3AgZG9tYWluZSBpbiBDaGFibGlzLiDigJhJdCBtaWdodCBub3Qgd29yayzigJkgc2F5cyB0aGUgd2luZW1ha2VyIGluIHF1ZXN0aW9uLCDigJhidXQgaXTigJlzIHdvcnRoIGEgdHJ5LuKAmTwvcD4KPHA+V2hlbiBJIHdhcyBpbiBCdXJndW5keSBsYXN0IHllYXIsIEkgZGlkIGEgdGFzdGluZyBvZiBDw7R0ZSBDaGFsb25uYWlzZSB3aGl0ZXMgd2l0aCBhIGdyb3VwIG9mIGdyb3dlcnMuPC9wPgo8cD5BbGwgdGhlIHdpbmVzIHdlcmUgQ2hhcmRvbm5heXMsIHdoaWNoIHRlbmRzIHRvIGZhcmUgYmV0dGVyIGluIGhlYXR3YXZlIHZpbnRhZ2VzIHRoYW4gUGlub3QgTm9pciwgYnV0IG1hbnkgd2VyZSBmbGF0IGFuZCBsYWNrZWQgYWNpZGl0eS48L3A+CjxwPkltYWdpbmUgd2hhdCBBc3N5cnRpa28sIEdyZW5hY2hlIEJsYW5jLCBHcm9zIE1hbnNlbmcgb3IgVmVybWVudGlubyBtaWdodCBhY2hpZXZlIGhlcmUsIEkgYXNrZWQgdG8gYSBtdXRlZCByZXNwb25zZS4gVGhlIEluc3RpdHV0IE5hdGlvbmFsIGRlIGzigJlPcmlnaW5lIGV0IGRlIGxhIFF1YWxpdMOpIChJTkFPKSB3b3VsZCBoYXZlIHRvIGdpdmUgaXRzIGJsZXNzaW5nLCBhcyB3b3VsZCB0aGUgbG9jYWwgQnVyZWF1IEludGVycHJvZmVzc2lvbm5lbCBkZXMgVmlucyBkZSBCb3VyZ29nbmUgKEJJVkIpLCBidXQgZXh0cmVtZSBjb25kaXRpb25zIHJlcXVpcmUgcmFkaWNhbCB0aGlua2luZyBpbiByZXNwb25zZS4gQWZ0ZXIgYWxsLCBpZiBCb3JkZWF1eCBjYW4gc2FuY3Rpb24gdGhlIHVzZSBvZiBBbHZhcmluaG8gYW5kIFRvdXJpZ2EgTmFjaW9uYWwgc2luY2UgMjAxOSwgYW55dGhpbmcgaXMgcG9zc2libGUuPC9wPgo8cD5UaGUgc2FtZSBnb2VzIGZvciB0aGUgaW50cm9kdWN0aW9uIG9mIGlycmlnYXRpb24sIHdoaWNoIGlzIGN1cnJlbnRseSBpbGxlZ2FsIGluIEJ1cmd1bmR5LiBBZ2FpbiwgdGhpcyBtYWRlIHNlbnNlIHdoZW4gdGhlIHJlZ2lvbiBoYWQgcGxlbnRpZnVsIHJhaW5mYWxsIGF0IHRoZSByaWdodCB0aW1lcywgYnV0IGluIHZlcnkgZHJ5IHZpbnRhZ2VzIGxpa2UgMjAxOSwgaXQgbWlnaHQgaGF2ZSBpbmNyZWFzZWQgbG93IHlpZWxkcyBhbmQgZXZlbiBzYXZlZCBzb21lIHZpbmV5YXJkcyB0aGF0IHByb2R1Y2VkIG5vdGhpbmcgYXQgYWxsLjwvcD4KPHA+4oCYV2XigJlyZSBzZWVpbmcgYSBOZXcgV29ybGQgY2xpbWF0ZSBpbiBhbiBPbGQgV29ybGQgcmVnaW9uLOKAmSBzYXlzIEF1c3RyYWxpYW4gZXgtcGF0IEphbmUgRXlyZS4g4oCYSXTigJlzIGNyYXp5IHRoYXQgd2XigJlyZSBub3QgYWxsb3dlZCB0byBpcnJpZ2F0ZS4gVGhlIHBhcmFtZXRlcnMgYXJlIHNoaWZ0aW5nIHF1aWNrbHkgYW5kIGl04oCZcyByaWRpY3Vsb3VzIHRoYXQgdGhlIGxhd3MgYXJlbuKAmXQgYWRhcHRpbmcgYXQgdGhlIHNhbWUgc3BlZWQu4oCZPC9wPgo8cD5CcmlhbiBTaWV2ZSBvZiBEb21haW5lIGRlIE1vbnRpbGxlIGRpc2FncmVlczog4oCYV2UgY2FuIGxvb2sgYXQgdGhlIHdheSB3ZSBwcnVuZSBhbmQgd29yayBvdXIgc29pbHMgZGlmZmVyZW50bHkgYmVmb3JlIHdlIHJlc29ydCB0byBkcmlwIGlycmlnYXRpb24u4oCZPC9wPgo8aDM+PHN0cm9uZz5IYXJ2ZXN0IHRpZ2h0cm9wZTwvc3Ryb25nPjwvaDM+CjxwPkVhcmx5IHBpY2tpbmcgaXMgYmVjb21pbmcgaW5jcmVhc2luZ2x5IHBvcHVsYXIgaW4gQnVyZ3VuZHksIHBhcnRpY3VsYXJseSBmb3Igd2hpdGVzIGJ1dCBhbHNvIGZvciByZWRzLCB3aXRoIEFybmF1ZCBFbnRlIGxlYWRpbmcgdGhlIHdheSBpbiBNZXVyc2F1bHQgb24gMTkgQXVndXN0IGluIDIwMTguIFRoZSB0ZWNobmlxdWUgcmVtYWlucyBjb250cm92ZXJzaWFsLCBob3dldmVyLCBhbmQgaGFzIGxlZCB0byB0aGUgY2hhcmdlIHRoYXQgc29tZSBncm93ZXJzIG1pZ2h0IGFzIHdlbGwgYmUgbWFraW5nIHNwYXJrbGluZyB3aW5lIGJhc2UuPC9wPgo8cD5Bbm90aGVyIGZlYXIsIHdoZXJlIHJlZHMgYXJlIGNvbmNlcm5lZCwgaXMgdGhhdCB0aGVyZSBpcyBhIGRpY2hvdG9teSBiZXR3ZWVuIHN1Z2FyIHJpcGVuZXNzIGFuZCBwaGVub2xpYyBtYXR1cml0eSBhbmQgdGhhdCBoYXJ2ZXN0aW5nIGVhcmx5IHByb2R1Y2VzIOKAmGdyZWVu4oCZIHdpbmVzLjwvcD4KPHA+V2hhdCBpcyByaXBlIGZvciBvbmUgcHJvZHVjZXIgaXMgdW5kZXJyaXBlIGZvciBhbm90aGVyLCBzbyB0aGlzIGlzIGFzIG11Y2ggYWJvdXQgcGVyc29uYWwgdGFzdGUgYXMgYW55dGhpbmcsIGJvdGggZm9yIEJ1cmd1bmRpYW5zIGFuZCB5b3UsIHRoZSBjb25zdW1lci4gQSBwYXJ0aWFsIGFsdGVybmF0aXZlIHdvdWxkIGJlIG5pZ2h0IGhhcnZlc3RpbmcsIGJ1dCB0aGUgY29uc2Vuc3VzIGlzIHRoYXQgdGhlIHJlc3RyaWN0aXZlIEZyZW5jaCBMb2kgVHJhdmFpbCB3b3VsZCBtYWtlIHRoaXMgbW9yZSBleHBlbnNpdmUsIGlmIG5vdCBpbXBvc3NpYmxlLjwvcD4KPHA+TWVhbndoaWxlLCBpbiB0aGUgd2luZXJ5LCB0aGVyZSBhcmUgcGxlbnR5IG9mIHRlY2huaXF1ZXMgcHJvZHVjZXJzIGNhbiBhZG9wdC4gVGhlc2UgaW5jbHVkZSBjaGlsbGluZyBncmFwZXMsIHJlc3RyaWN0aW5nIHRoZSBudW1iZXIgb2YgcHVuY2hkb3ducyB0byBtaW5pbWlzZSB0YW5uaW4gZXh0cmFjdGlvbiwgZmFzdGVyIGZlcm1lbnRhdGlvbnMgdG8gYXZvaWQgZ2x5Y2Vyb2wgcHJvZHVjdGlvbiwgdXNpbmcgY3VsdHVyZWQgeWVhc3RzIHRoYXQgeWllbGQgbGVzcyBhbGNvaG9sLCBhY2lkaWZpY2F0aW9uLCByZXZlcnNlIG9zbW9zaXMsIHdob2xlIGNsdXN0ZXJzIChzdGVtcyBpbmNyZWFzZSBwSCBsZXZlbHMgYmVjYXVzZSBvZiBoaWdoZXIgcG90YXNzaXVtLCBidXQgYWRkIHN0cnVjdHVyZSksIGFnZWluZyB0aGUgd2luZXMgaW4gYW1waG9yYWUgb3IgbGFyZ2VyIG9hayBhbmQgaW50cm9kdWNpbmcgYWlyLWNvbmRpdGlvbmluZyBpbiBtYXR1cmF0aW9uIGNlbGxhcnMsIGV2ZW4gdGhvc2UgdGhhdCBhcmUgdW5kZXJncm91bmQuIEFsbCBvZiB0aGVzZSB0aGluZ3MgYXJlIGJlaW5nIGRvbmUgaW4gQnVyZ3VuZHkgcmlnaHQgbm93LCBhbGJlaXQgc2VjcmV0bHkgaW4gc29tZSBpbnN0YW5jZXMuIFRyeSBnZXR0aW5nIGEgZ3Jvd2VyIHRvIHRhbGsgYWJvdXQgdGhlIGJlbmVmaXRzIG9mIHJldmVyc2Ugb3Ntb3Npcy48L3A+CjxwPk90aGVycyBiZWxpZXZlIHRoYXQgdGhlIHRocmVhdCBvZiBjbGltYXRlIGNoYW5nZSBoYXMgYmVlbiBvdmVyc3RhdGVkLiBTw6liYXN0aWVuIENhdGhpYXJkIG9mIHRoZSBEb21haW5lIFN5bHZhaW4gQ2F0aGlhcmQgaXMgbm90IGFsb25lIGluIGFyZ3VpbmcgdGhhdCBmYXJtaW5nIGJhbGFuY2VkLCB3ZWxsLXRlbmRlZCB2aW5lcyBpcyB0aGUgc3RpbGwgYmVzdCB3YXkgdG8gcHJvZHVjZSBoYXJtb25pb3VzIHdpbmVzLjwvcD4KPHA+SXTigJlzIGFsc28gdHJ1ZSB0aGF0IEJ1cmd1bmRpYW5zIGFyZSBnZXR0aW5nIHVzZWQgdG8gZGVhbGluZyB3aXRoIHdhcm1lciB2aW50YWdlcyBhZnRlciBhbGwgdGhlIHByYWN0aWNlIHRoZXnigJl2ZSBoYWQgcmVjZW50bHkuIEFuZCBtYXliZSBNb3RoZXIgTmF0dXJlIGlzIGFkanVzdGluZyB0byBjbGltYXRlIGNoYW5nZSwgdG9vLjwvcD4KPHA+4oCYSW4gMjAwMywgc29tZSBvZiBvdXIgdmF0cyBzdG9wcGVkIGZlcm1lbnRpbmcsIGxlYXZpbmcgcmVzaWR1YWwgc3VnYXIgaW4gdGhlIHdpbmVzLCBidXQgaW4gMjAxOCBhbmQgMjAxOSB0aGF0IHdhc27igJl0IHRoZSBjYXNlLOKAmSBzYXlzIE1hcmllLUNocmlzdGluZSBNdWduZXJldC1HaWJvdXJnIG9mIERvbWFpbmUgR2VvcmdlcyBNdWduZXJldC1HaWJvdXJnLiDigJhNYXliZSB0aGUgbmF0dXJhbCB5ZWFzdHMgaGF2ZSBjaGFuZ2VkLCBvciBwZXJoYXBzIHRoZSB2aW5lcyBhcmUgY2hhbmdpbmcgdG8gY29wZSB3aXRoIGxlc3Mgd2F0ZXIgYW5kIGhpZ2hlciB0ZW1wZXJhdHVyZXMu4oCZPC9wPgo8ZGl2IGNsYXNzPSJpbmplY3Rpb24iPjwvZGl2Pgo8cD5QZXJoYXBzIHRoZXkgYXJlIGluZGVlZCwgYnV0IGh1bWFuIGludGVydmVudGlvbiByZW1haW5zIGVzc2VudGlhbCBnb2luZyBmb3J3YXJkLiBUaGlzIHdpbGwgaW52b2x2ZSBhIGxvdCBvZiB0cmlhbCBhbmQgZXJyb3IsIGFjY29yZGluZyB0byBBbmRyZXcgTmllbHNlbiBvZiBMZSBHcmFwcGluLiDigJhXZeKAmXJlIGFsbCBpbiB0aGUgZGFyayByaWdodCBub3cuIFdlIGtub3cgd2hhdCB0aGUgd3JvbmcgdGVjaG5pcXVlcyBhcmUsIGJ1dCBub3QgbmVjZXNzYXJpbHkgdGhlIHJpZ2h0IG9uZXMu4oCZPC9wPgo8cD5IaXN0b3J5IHdpbGwganVkZ2Ugd2hldGhlciBCdXJndW5kaWFucyBtYWRlIHRoZSBjb3JyZWN0IGNob2ljZXMuPC9wPgo8cD7igJhJdOKAmXMgbm90IGhvcGVsZXNzIHlldCzigJkgc2F5cyBEaWFuYSBTbm93ZGVuLVNleXNzZXMgb2YgRG9tYWluZSBEdWphYywg4oCYYnV0IGl04oCZcyBwcmV0dHkgc2NhcnkuIEkgcmVja29uIHdl4oCZdmUgZ290IGFub3RoZXIgZGVjYWRlIHRvIGFkYXB0IGJlZm9yZSBpdOKAmXMgdG9vIGxhdGUu4oCZIEZpbmdlcnMgY3Jvc3NlZC48L3A+CjxwPgo="}
You may also like