Douglas Adams’s celebrated sci fi franchise The Hitchhiker’s Guide To The Galaxy took almost 30 years to make it to the big screen. We revisit Garth Jennings’s underappreciated sci fi parody.
This article first appeared in Film Stories issue #48.
In just about every incarnation, The Hitchhiker’s Guide To The Galaxy begins with a comedy sketch. On the morning that Earthman Arthur Dent’s house is demolished because it’s in the path of a planned motorway bypass, the entire planet is destroyed by the bureaucratic Vogons to make way for a new hyperspace lane. What makes it a story not a sketch is that it keeps asking “and then what happens?”
On the plus side, the modular nature of the story makes it very adaptable, and from the starting point of a BBC radio series in the 1970s, it was translated into a series of novels by Adams, as well as a stage show, a comic book, a text adventure game, a TV series, and – yes, eventually – a feature film.
Like many properties considered ‘unfilmable’, it was eventually filmed, and released in April 2005. Directed by Garth Jennings, the movie stars Martin Freeman, Zooey Deschanel, Mos Def, Sam Rockwell, Bill Nighy, and John Malkovich, plus a similarly stellar voice cast.
Despite early interest, the film version took a quarter of a century to make it to the big screen, largely because of that sketch-like shaggy- dog story format that we know and love. For starters, its style works against cinematic storytelling so far as the expectations of a big- budget sci-fi movie are concerned.
The story of its bumpy road to the big screen is similarly modular. Fire up the Infinite Improbability Drive and we might have had any configuration of Simon Jones reprising his TV role as Arthur, Bill Murray as Ford Prefect, Jim Carrey as Zaphod Beeblebrox, and/or directors ranging from Ivan Reitman to Spike Jonze, released at any point between 1980 and 2005.
Like the eventual film, though, it makes sense to go a bit more linear than the source material…
PGRpdiBjbGFzcz0iYWRkdG9hbnlfc2hhcmVfc2F2ZV9jb250YWluZXIgYWRkdG9hbnlfY29udGVudCBhZGR0b2FueV9jb250ZW50X3RvcCI+PGRpdiBjbGFzcz0iYWRkdG9hbnlfaGVhZGVyIj5TaGFyZSB0aGlzIEFydGljbGU6PC9kaXY+PGRpdiBjbGFzcz0iYTJhX2tpdCBhMmFfa2l0X3NpemVfMzIgYWRkdG9hbnlfbGlzdCIgZGF0YS1hMmEtdXJsPSJodHRwczovL2ZpbG1zdG9yaWVzLmNvLnVrL2ZlYXR1cmVzL2xpZmUtYS1jaW5lbWF0aWMtdW5pdmVyc2UtYW5kLWV2ZXJ5dGhpbmctdGhlLXVuZGVyYXBwcmVjaWF0ZWQtaGl0Y2hoaWtlcnMtZ3VpZGUtbW92aWUvIiBkYXRhLWEyYS10aXRsZT0iTGlmZSwgYSBjaW5lbWF0aWMgdW5pdmVyc2UsIGFuZCBldmVyeXRoaW5nIHwgVGhlIHVuZGVyYXBwcmVjaWF0ZWQgSGl0Y2hoaWtlcuKAmXMgR3VpZGUgbW92aWUiPjxhIGNsYXNzPSJhMmFfYnV0dG9uX2ZhY2Vib29rIiBocmVmPSJodHRwczovL3d3dy5hZGR0b2FueS5jb20vYWRkX3RvL2ZhY2Vib29rP2xpbmt1cmw9aHR0cHMlM0ElMkYlMkZmaWxtc3Rvcmllcy5jby51ayUyRmZlYXR1cmVzJTJGbGlmZS1hLWNpbmVtYXRpYy11bml2ZXJzZS1hbmQtZXZlcnl0aGluZy10aGUtdW5kZXJhcHByZWNpYXRlZC1oaXRjaGhpa2Vycy1ndWlkZS1tb3ZpZSUyRiZhbXA7bGlua25hbWU9TGlmZSUyQyUyMGElMjBjaW5lbWF0aWMlMjB1bml2ZXJzZSUyQyUyMGFuZCUyMGV2ZXJ5dGhpbmclMjAlN0MlMjBUaGUlMjB1bmRlcmFwcHJlY2lhdGVkJTIwSGl0Y2hoaWtlciVFMiU4MCU5OXMlMjBHdWlkZSUyMG1vdmllIiB0aXRsZT0iRmFjZWJvb2siIHJlbD0ibm9mb2xsb3cgbm9vcGVuZXIiIHRhcmdldD0iX2JsYW5rIj48L2E+PGEgY2xhc3M9ImEyYV9idXR0b25fdHdpdHRlciIgaHJlZj0iaHR0cHM6Ly93d3cuYWRkdG9hbnkuY29tL2FkZF90by90d2l0dGVyP2xpbmt1cmw9aHR0cHMlM0ElMkYlMkZmaWxtc3Rvcmllcy5jby51ayUyRmZlYXR1cmVzJTJGbGlmZS1hLWNpbmVtYXRpYy11bml2ZXJzZS1hbmQtZXZlcnl0aGluZy10aGUtdW5kZXJhcHByZWNpYXRlZC1oaXRjaGhpa2Vycy1ndWlkZS1tb3ZpZSUyRiZhbXA7bGlua25hbWU9TGlmZSUyQyUyMGElMjBjaW5lbWF0aWMlMjB1bml2ZXJzZSUyQyUyMGFuZCUyMGV2ZXJ5dGhpbmclMjAlN0MlMjBUaGUlMjB1bmRlcmFwcHJlY2lhdGVkJTIwSGl0Y2hoaWtlciVFMiU4MCU5OXMlMjBHdWlkZSUyMG1vdmllIiB0aXRsZT0iVHdpdHRlciIgcmVsPSJub2ZvbGxvdyBub29wZW5lciIgdGFyZ2V0PSJfYmxhbmsiPjwvYT48YSBjbGFzcz0iYTJhX2J1dHRvbl9lbWFpbCIgaHJlZj0iaHR0cHM6Ly93d3cuYWRkdG9hbnkuY29tL2FkZF90by9lbWFpbD9saW5rdXJsPWh0dHBzJTNBJTJGJTJGZmlsbXN0b3JpZXMuY28udWslMkZmZWF0dXJlcyUyRmxpZmUtYS1jaW5lbWF0aWMtdW5pdmVyc2UtYW5kLWV2ZXJ5dGhpbmctdGhlLXVuZGVyYXBwcmVjaWF0ZWQtaGl0Y2hoaWtlcnMtZ3VpZGUtbW92aWUlMkYmYW1wO2xpbmtuYW1lPUxpZmUlMkMlMjBhJTIwY2luZW1hdGljJTIwdW5pdmVyc2UlMkMlMjBhbmQlMjBldmVyeXRoaW5nJTIwJTdDJTIwVGhlJTIwdW5kZXJhcHByZWNpYXRlZCUyMEhpdGNoaGlrZXIlRTIlODAlOTlzJTIwR3VpZGUlMjBtb3ZpZSIgdGl0bGU9IkVtYWlsIiByZWw9Im5vZm9sbG93IG5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayI+PC9hPjxhIGNsYXNzPSJhMmFfZGQgYWRkdG9hbnlfc2hhcmVfc2F2ZSBhZGR0b2FueV9zaGFyZSIgaHJlZj0iaHR0cHM6Ly93d3cuYWRkdG9hbnkuY29tL3NoYXJlIj48L2E+PC9kaXY+PC9kaXY+CjxwPjxzdHJvbmc+RG91Z2xhcyBBZGFtc+KAmXMgY2VsZWJyYXRlZCBzY2kgZmkgZnJhbmNoaXNlIFRoZSBIaXRjaGhpa2Vy4oCZcyBHdWlkZSBUbyBUaGUgR2FsYXh5IHRvb2sgYWxtb3N0IDMwIHllYXJzIHRvIG1ha2UgaXQgdG8gdGhlIGJpZyBzY3JlZW4uIFdlIHJldmlzaXQgR2FydGggSmVubmluZ3PigJlzIHVuZGVyYXBwcmVjaWF0ZWQgc2NpIGZpIHBhcm9keS48L3N0cm9uZz48L3A+CgoKCjxociBjbGFzcz0id3AtYmxvY2stc2VwYXJhdG9yIGhhcy1hbHBoYS1jaGFubmVsLW9wYWNpdHkiLz4KCgoKPHA+PGVtPlRoaXMgYXJ0aWNsZSBmaXJzdCBhcHBlYXJlZCBpbiBGaWxtIFN0b3JpZXMgaXNzdWUgIzQ4LjwvZW0+PC9wPgoKCgo8cD5JbiBqdXN0IGFib3V0IGV2ZXJ5IGluY2FybmF0aW9uLCA8ZW0+VGhlIEhpdGNoaGlrZXLigJlzIEd1aWRlIFRvIFRoZSBHYWxheHk8L2VtPiBiZWdpbnMgd2l0aCBhIGNvbWVkeSBza2V0Y2guIE9uIHRoZSBtb3JuaW5nIHRoYXQgRWFydGhtYW4gQXJ0aHVyIERlbnTigJlzIGhvdXNlIGlzIGRlbW9saXNoZWQgYmVjYXVzZSBpdOKAmXMgaW4gdGhlIHBhdGggb2YgYSBwbGFubmVkIG1vdG9yd2F5IGJ5cGFzcywgdGhlIGVudGlyZSBwbGFuZXQgaXMgZGVzdHJveWVkIGJ5IHRoZSBidXJlYXVjcmF0aWMgVm9nb25zIHRvIG1ha2Ugd2F5IGZvciBhIG5ldyBoeXBlcnNwYWNlIGxhbmUuIFdoYXQgbWFrZXMgaXQgYSBzdG9yeSBub3QgYSBza2V0Y2ggaXMgdGhhdCBpdCBrZWVwcyBhc2tpbmcg4oCcYW5kIHRoZW4gd2hhdCBoYXBwZW5zP+KAnTwvcD4KCgoKPHA+T24gdGhlIHBsdXMgc2lkZSwgdGhlIG1vZHVsYXIgbmF0dXJlIG9mIHRoZSBzdG9yeSBtYWtlcyBpdCB2ZXJ5IGFkYXB0YWJsZSwgYW5kIGZyb20gdGhlIHN0YXJ0aW5nIHBvaW50IG9mIGEgQkJDIHJhZGlvIHNlcmllcyBpbiB0aGUgMTk3MHMsIGl0IHdhcyB0cmFuc2xhdGVkIGludG8gYSBzZXJpZXMgb2Ygbm92ZWxzIGJ5IEFkYW1zLCBhcyB3ZWxsIGFzIGEgc3RhZ2Ugc2hvdywgYSBjb21pYyBib29rLCBhIHRleHQgYWR2ZW50dXJlIGdhbWUsIGEgVFYgc2VyaWVzLCBhbmQg4oCTIHllcywgZXZlbnR1YWxseSDigJMgYSBmZWF0dXJlIGZpbG0uPC9wPgoKCgo8cD5MaWtlIG1hbnkgcHJvcGVydGllcyBjb25zaWRlcmVkIOKAmHVuZmlsbWFibGXigJksIGl0IHdhcyBldmVudHVhbGx5IGZpbG1lZCwgYW5kIHJlbGVhc2VkIGluIEFwcmlsIDIwMDUuIERpcmVjdGVkIGJ5IEdhcnRoIEplbm5pbmdzLCB0aGUgbW92aWUgc3RhcnMgTWFydGluIEZyZWVtYW4sIFpvb2V5IERlc2NoYW5lbCwgTW9zIERlZiwgU2FtIFJvY2t3ZWxsLCBCaWxsIE5pZ2h5LCBhbmQgSm9obiBNYWxrb3ZpY2gsIHBsdXMgYSBzaW1pbGFybHkgc3RlbGxhciB2b2ljZSBjYXN0LjwvcD4KCgoKPHA+RGVzcGl0ZSBlYXJseSBpbnRlcmVzdCwgdGhlIGZpbG0gdmVyc2lvbiB0b29rIGEgcXVhcnRlciBvZiBhIGNlbnR1cnkgdG8gbWFrZSBpdCB0byB0aGUgYmlnIHNjcmVlbiwgbGFyZ2VseSBiZWNhdXNlIG9mIHRoYXQgc2tldGNoLWxpa2Ugc2hhZ2d5LSBkb2cgc3RvcnkgZm9ybWF0IHRoYXQgd2Uga25vdyBhbmQgbG92ZS4gRm9yIHN0YXJ0ZXJzLCBpdHMgc3R5bGUgd29ya3MgYWdhaW5zdCBjaW5lbWF0aWMgc3Rvcnl0ZWxsaW5nIHNvIGZhciBhcyB0aGUgZXhwZWN0YXRpb25zIG9mIGEgYmlnLSBidWRnZXQgc2NpLWZpIG1vdmllIGFyZSBjb25jZXJuZWQuPC9wPgoKCgo8cD5UaGUgc3Rvcnkgb2YgaXRzIGJ1bXB5IHJvYWQgdG8gdGhlIGJpZyBzY3JlZW4gaXMgc2ltaWxhcmx5IG1vZHVsYXIuIEZpcmUgdXAgdGhlIEluZmluaXRlIEltcHJvYmFiaWxpdHkgRHJpdmUgYW5kIHdlIG1pZ2h0IGhhdmUgaGFkIGFueSBjb25maWd1cmF0aW9uIG9mIFNpbW9uIEpvbmVzIHJlcHJpc2luZyBoaXMgVFYgcm9sZSBhcyBBcnRodXIsIEJpbGwgTXVycmF5IGFzIEZvcmQgUHJlZmVjdCwgSmltIENhcnJleSBhcyBaYXBob2QgQmVlYmxlYnJveCwgYW5kL29yIGRpcmVjdG9ycyByYW5naW5nIGZyb20gSXZhbiBSZWl0bWFuIHRvIFNwaWtlIEpvbnplLCByZWxlYXNlZCBhdCBhbnkgcG9pbnQgYmV0d2VlbiAxOTgwIGFuZCAyMDA1LjwvcD4KCgoKPHA+TGlrZSB0aGUgZXZlbnR1YWwgZmlsbSwgdGhvdWdoLCBpdCBtYWtlcyBzZW5zZSB0byBnbyBhIGJpdCBtb3JlIGxpbmVhciB0aGFuIHRoZSBzb3VyY2UgbWF0ZXJpYWzigKY8L3A+CgoKCjxzcGFuIGlkPSJtb3JlLTkzNzk3Ij48L3NwYW4+CgoKCjxwPjxzdHJvbmc+RG9u4oCZdCBwYW5pYyE8L3N0cm9uZz48L3A+CgoKCjxwPkFkYW1zIG9uY2Ugc2FpZCB0aGUgcHJvY2VzcyBvZiB0dXJuaW5nIDxlbT5UaGUgSGl0Y2hoaWtlcuKAmXMgR3VpZGUgVG8gVGhlIEdhbGF4eTwvZW0+IGludG8gYSBIb2xseXdvb2QgbW92aWUgd2FzIGxpa2Ug4oCcdHJ5aW5nIHRvIGdyaWxsIGEgc3RlYWsgYnkgaGF2aW5nIGEgc3VjY2Vzc2lvbiBvZiBwZW9wbGUgY29taW5nIGludG8gdGhlIHJvb20gYW5kIGJyZWF0aGluZyBvbiBpdC7igJ08L3A+CgoKCjxwPkluIGEgMTk4MCBpbnRlcnZpZXcsIGhlIHN0YXRlZCB0aGF0IGZvbGxvd2luZyB0aGUgc3VjY2VzcyBvZiA8ZW0+U3RhciBXYXJzPC9lbT4gaW4gdGhlIGxhdGUgMTk3MHMsIGhl4oCZZCBiZWVuIGFwcHJvYWNoZWQgYnkgQW1lcmljYW4gcHJvZHVjZXJzIHRvIGFkYXB0IHRoZSBzdG9yeSBmb3IgdGhlIHNjcmVlbiBidXQgdHVybmVkIHRoZW0gZG93biwgYmVjYXVzZSBoZSBkaWRu4oCZdCB3YW50IGl0IHRvIGJlIHR1cm5lZCBpbnRvIOKAnDxlbT5TdGFyIFdhcnM8L2VtPiB3aXRoIGpva2VzLuKAnTwvcD4KCgoKPHA+SW5zdGVhZCwgYSBCQkMgVFYgYWRhcHRhdGlvbiB3YXMgZ3JlZW5saXQgaW4gMTk3OSwgZHVyaW5nIEFkYW1z4oCZcyBvbmUtc2Vhc29uIHN0aW50IHNjcmlwdC0gZWRpdGluZyA8ZW0+RG9jdG9yIFdobzwvZW0+IChhbmQgd2hhdCBhIHNlYXNvbiB0aGF0IHdhcyEpLiBUaGUgc2l4LWVwaXNvZGUgPGVtPkhpdGNoaGlrZXLigJlzPC9lbT4gVFYgc2VyaWVzIHdhcyBicm9hZGNhc3Qgb24gQkJDMiBpbiAxOTgxLCBiZWF0aW5nIHRoZSBldmVudHVhbCBmaWxtIHZlcnNpb24gdG8gc2NyZWVucyBieSBhbG1vc3QgYSBxdWFydGVyIG9mIGEgY2VudHVyeS48L3A+CgoKCjxwPkhvd2V2ZXIsIHRhbGsgb2YgYSBtb3ZpZSB2ZXJzaW9uIHJ1bWJsZWQgb24gdGhyb3VnaG91dCB0aGUgMTk4MHMgYW5kIG1vcmUgb2YgdGhhdCBzdG9yeSBpcyBkZXRhaWxlZCBpbiBEYXZpZCBIdWdoZXPigJlzIGJyaWxsaWFudCBib29rLCA8ZW0+VGhlIEdyZWF0ZXN0IFNjaS1GaSBNb3ZpZXMgTmV2ZXIgTWFkZTwvZW0+LiBBZnRlciBhdHRlbXB0aW5nIHRvIGRldmVsb3AgYSBub24tSGl0Y2hoaWtlcuKAmXMgZmlsbSBwcm9qZWN0IHdpdGggTW9udHkgUHl0aG9uIGNvLWNyZWF0b3IgYW5kIGNsb3NlIGZyaWVuZCBUZXJyeSBKb25lcywgQWRhbXMgd2FzIG5leHQgY291cnRlZCBieSBwcm9kdWNlcnMgSXZhbiBSZWl0bWFuLCBKb2UgTWVkanVjaywgYW5kIE1pY2hhZWwgQyBHcm9zcy4gSG90IG9mZiBiYWNrLXRvLWJhY2sgY29tZWR5IGhpdHMgPGVtPk1lYXRiYWxsczwvZW0+IGFuZCA8ZW0+U3RyaXBlczwvZW0+LCB0aGUgcHJvZHVjZXJzIHBlcnN1YWRlZCBDb2x1bWJpYSB0byBvcHRpb24gdGhlIGZpbG0gcmlnaHRzIGZvciB0aGUgbmV4dCBmaXZlIHllYXJzIGFuZCBjb250cmFjdGVkIEFkYW1zIHRvIHdyaXRlIHRocmVlIGRyYWZ0cyBvZiBhIDxlbT5IaXRjaGhpa2Vy4oCZczwvZW0+IHNjcmVlbnBsYXkuPC9wPgoKCgo8cD5TdGlsbCB3b3JraW5nIG9uIHByaW50IHNlcXVlbHMgPGVtPkxpZmUsIFRoZSBVbml2ZXJzZSwgQW5kIEV2ZXJ5dGhpbmc8L2VtPiBhbmQgPGVtPlNvIExvbmcgQW5kIFRoYW5rcyBGb3IgQWxsIFRoZSBGaXNoIDwvZW0+ZHVyaW5nIHRoaXMgdGltZSwgQWRhbXMgd2FzIHdlbGwgYXdhcmUgb2YgdGhlIG5lZWQgdG8gc2V0IHRoZSBmaWxtIGFwYXJ0IGZyb20gdGhlIHVtcHRlZW4gb3RoZXIgdmVyc2lvbnMgb2YgdGhlIHN0b3J5LiBBbmQgYnkgYWxsIGFjY291bnRzLCBoZSB3YXMgb3BlbiB0byB0aGUgaWRlYSBvZiBBbWVyaWNhbiBhY3RvcnMgcGxheWluZyBwYXJ0cyBpbiB0aGUgZmlsbSwgYXMgbG9uZyBhcyBBcnRodXIgRGVudCByZW1haW5lZCBCcml0aXNoLjwvcD4KCgoKPHA+QnV0IG9uZSBvZiB0aGUgQW1lcmljYW4gc3RhcnMgUmVpdG1hbiBjb25zaWRlcmVkIGZvciBGb3JkIFByZWZlY3Qgd2FzIERhbiBBeWtyb3lkLCB3aG8gc2VwYXJhdGVseSBwaXRjaGVkIHRoZSBkaXJlY3RvciBhIGxpdHRsZSBmaWxtIGNhbGxlZCA8ZW0+R2hvc3RidXN0ZXJzPC9lbT4uIFNvLCB3aGlsZSBSZWl0bWFuIHdhcyBwcmVvY2N1cGllZCB3aXRoIHRoYXQgZmlsbSBhbmQgdGhlbiBpdHMgc2VxdWVsLCBBZGFtcyBmaW5pc2hlZCBoaXMgdGhyZWUgZHJhZnRzIGFuZCBDb2x1bWJpYSBtYWludGFpbmVkIHRoZSByaWdodHMuPC9wPgoKCgo8ZmlndXJlIGNsYXNzPSJ3cC1ibG9jay1lbWJlZCBpcy10eXBlLXZpZGVvIGlzLXByb3ZpZGVyLXlvdXR1YmUgd3AtYmxvY2stZW1iZWQteW91dHViZSB3cC1lbWJlZC1hc3BlY3QtMTYtOSB3cC1oYXMtYXNwZWN0LXJhdGlvIj48ZGl2IGNsYXNzPSJ3cC1ibG9jay1lbWJlZF9fd3JhcHBlciI+CjxpZnJhbWUgbG9hZGluZz0ibGF6eSIgdGl0bGU9IlRoZSBIaXRjaGhpa2VyJiMwMzk7cyBHdWlkZSB0byB0aGUgR2FsYXh5ICgyMDA1KSBUcmFpbGVyICMgMSAtIE1hcnRpbiBGcmVlbWFuIEhEIiB3aWR0aD0iMTc3OCIgaGVpZ2h0PSIxMDAwIiBzcmM9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkL2VMZGlXZV9ISnY0P2ZlYXR1cmU9b2VtYmVkIiBmcmFtZWJvcmRlcj0iMCIgYWxsb3c9ImFjY2VsZXJvbWV0ZXI7IGF1dG9wbGF5OyBjbGlwYm9hcmQtd3JpdGU7IGVuY3J5cHRlZC1tZWRpYTsgZ3lyb3Njb3BlOyBwaWN0dXJlLWluLXBpY3R1cmU7IHdlYi1zaGFyZSIgcmVmZXJyZXJwb2xpY3k9InN0cmljdC1vcmlnaW4td2hlbi1jcm9zcy1vcmlnaW4iIGFsbG93ZnVsbHNjcmVlbj48L2lmcmFtZT4KPC9kaXY+PC9maWd1cmU+CgoKCjxwPjxzdHJvbmc+TWljZSBjb250cm9sIHRoZSB3b3JsZDwvc3Ryb25nPjwvcD4KCgoKPHA+T25jZSBDb2x1bWJpYSBsZXQgaXRzIG9wdGlvbiBsYXBzZSwgdGhlIHByb2R1Y2VycyBhdHRlbXB0ZWQgdG8gcGFja2FnZSA8ZW0+SGl0Y2hoaWtlcuKAmXMgR3VpZGUgPC9lbT5mb3IgRGlzbmV5IGFuZCBpdHMgdGhlbi1DRU8gSmVmZnJleSBLYXR6ZW5iZXJnLCB3aG9tIHRoZXkga25ldyBmcm9tIHRoZWlyIDxlbT5NZWF0YmFsbHMgPC9lbT5kYXlzLiA8ZW0+TWF4IEhlYWRyb29tPC9lbT4gY3JlYXRvcnMgUm9ja3kgTW9ydG9uIGFuZCBBbm5hYmVsIEphbmtlbCB3ZXJlIGluIHRoZSBmcmFtZSB0byBkaXJlY3QgdGhlIHByb2plY3QgYW5kIGFub3RoZXIgd3JpdGVyIEFiYmllIEJlcm5zdGVpbiwgd2FzIGhpcmVkIHRvIHBvbGlzaCBBZGFtc+KAmXMgYWRhcHRhdGlvbiwgYnJpZWZlZCB0byBtYWtlIGl0IG1vcmUgY29tbWVyY2lhbCwgY29udmVudGlvbmFsLCBhbmQgKG5vdCB0byBwdXQgdG9vIGZpbmUgYSBwb2ludCBvbiBpdCkgY29uY2VpdmFibGUuPC9wPgoKCgo8cD5JbmRlZWQsIHRoZSBvbmx5IGF2YWlsYWJsZSAxOTgwcyBkcmFmdCwgZGF0ZWQgU2VwdGVtYmVyIDE5ODcgYW5kIGNyZWRpdGVkIHRvIEFkYW1zIGFuZCBCZXJuc3RlaW4sIGlzIHByZWZhY2VkIHdpdGggYSBub3RlIGJ5IFJlaXRtYW4gYW5kIE1lZGp1Y2ssIHByZXN1bWFibHkgdG8gcmVhc3N1cmUgRGlzbmV5IHRoYXQgdGhleSBkb27igJl0IGludGVuZCB0byBtYWtlIHRoZSBtb3ZpZSBhcyBleHBlbnNpdmUgYXMgaXQgc291bmRzLiBUYWtpbmcgYSBsZWFmIGZyb20gQWRhbXPigJlzIGJvb2ssIHRoZXkgY291bGQgaGF2ZSBnb25lIHdpdGgg4oCcRE9O4oCZVCBQQU5JQ+KAnSBpbiBsYXJnZSwgZnJpZW5kbHkgbGV0dGVycyBvbiB0aGUgY292ZXIgcGFnZSBpbnN0ZWFkLjwvcD4KCgoKPHA+SW4gdGhpcyBkcmFmdCwgd2UgZmluZCB0aGF0IEJlcm5zdGVpbiBoaXQgdXBvbiBhbm90aGVyIGlkZWEgdGhhdCBzdXJ2aXZlZCB0byB0aGUgZXZlbnR1YWwgZmlsbSDigJMgdXNpbmcgdGhlIGFjdGl2YXRpb24gb2YgRWFydGggTWsgSUkgdG8gcmVwbGFjZSB0aGUgZGVzdHJveWVkIG9yaWdpbmFsIGFzIGEgaGFwcHkgZW5kaW5nLiBJbiBvdGhlciByZWdhcmRzLCBpdOKAmXMgYSBtb3JlIGxpbmVhciBhbmQgbGVzcyByZXZlcmVudGlhbCB0ZWxsaW5nIHRoYW4gdGhlIHNjcmlwdCB0aGF0IGZpbmFsbHkgZ290IG1hZGUuPC9wPgoKCgo8cD5CZXJuc3RlaW7igJlzIG5ldyBtYXRlcmlhbCBub2RzIHRvIG1vcmUgY29udGVtcG9yYXJ5IHJlZmVyZW5jZXMgbGlrZSByZWFsaXR5IFRWIGNvdXJ0IHNob3dzLCBmb3IgYSBza2l0IGluIHdoaWNoIEFydGh1ciBpcyBzdW1tYXJpbHkgdHJpZWQgZm9yIGRpc3R1cmJpbmcgdGhlIHBlYWNlIGFuZCBzZW50ZW5jZWQgdG8gZGVhdGggZm9yIHRoZSBtb3JlIGludGVyZXN0aW5nIGFuZCB3aG9sbHkgaW1hZ2luYXJ5IGNoYXJnZSBvZiBmaXJzdC0gZGVncmVlIG11cmRlci48L3A+CgoKCjxwPlRoZW4gYWdhaW4sIGl0IGFsc28gYnJpbmdzIGZvcnRoIEFkYW1z4oCZcyBiZXN0IHNraXQgZnJvbSA8ZW0+VGhlIFJlc3RhdXJhbnQgQXQgVGhlIEVuZCBPZiBUaGUgVW5pdmVyc2U8L2VtPiwgaW4gd2hpY2ggdW5hcm1lZCB5ZXQgY2xpbmljYWxseSBkZXByZXNzZWQgYW5kcm9pZCBNYXJ2aW4gZmxhYmJlcmdhc3RzIGEgc3RhdGUtb2YtdGhlLWFydCB3YXIgbWFjaGluZSBpbnRvIGRlZmVhdGluZyBpdHNlbGYuIFRoYXQgYml04oCZcyB3YXkgdG9vIGdvb2QgdG8gaGF2ZSBzYXZlZCBmb3IgYSBwb3RlbnRpYWwgc2VxdWVsLCBhbmQgcmVhbGx5IHNob3VsZCBoYXZlIGJlZW4gaW4gZXZlcnkgZHJhZnQg4oCTIGJ1dCBpdCBkaWRu4oCZdCBtYWtlIHRoZSBjdXQuPC9wPgoKCgo8cD5JdCBnaXZlcyBhIGdvb2QgaWRlYSBvZiB0aGUga2luZCBvZiBjb21wcm9taXNlIHRoYXQgaGFkIGNvbWUgYWJvdXQgaW4gZGV2ZWxvcG1lbnQsIGJ1dCBhZnRlciBNb3J0b24gYW5kIEphbmtlbOKAmXMgRGlzbmV5LWJhY2tlZCB0aHJpbGxlciBELk8uQS4gdW5kZXJwZXJmb3JtZWQgYXQgdGhlIGJveCBvZmZpY2UsIHRoZSBIaXRjaGhpa2Vy4oCZcyBtb3ZpZSB3YXMgc3VtbWFyaWx5IHB1dCBpbnRvIHR1cm5hcm91bmQuPC9wPgoKCgo8ZmlndXJlIGNsYXNzPSJ3cC1ibG9jay1pbWFnZSBzaXplLWZ1bGwiPjxpbWcgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIiB3aWR0aD0iODAwIiBoZWlnaHQ9IjQ1MCIgc3JjPSJodHRwczovL3NwYWNlcy5maWxtc3Rvcmllcy5jby51ay91cGxvYWRzLzIwMjQvMTEvaGl0Y2hoaWtlcnMuanBnIiBhbHQ9IlRoZSBIaXRjaGhpa2VyJ3MgR3VpZGUgVG8gVGhlIEdhbGF4eSBtb3ZpZSIgY2xhc3M9IndwLWltYWdlLTkzODA1IiBzcmNzZXQ9Imh0dHBzOi8vc3BhY2VzLmZpbG1zdG9yaWVzLmNvLnVrL3VwbG9hZHMvMjAyNC8xMS9oaXRjaGhpa2Vycy5qcGcgODAwdywgaHR0cHM6Ly9zcGFjZXMuZmlsbXN0b3JpZXMuY28udWsvdXBsb2Fkcy8yMDI0LzExL2hpdGNoaGlrZXJzLTMwMHgxNjkud2VicCAzMDB3IiBzaXplcz0iKG1heC13aWR0aDogODAwcHgpIDEwMHZ3LCA4MDBweCIgLz48ZmlnY2FwdGlvbiBjbGFzcz0id3AtZWxlbWVudC1jYXB0aW9uIj5UaGUgSGl0Y2hoaWtlciYjODIxNztzIEd1aWRlIFRvIFRoZSBHYWxheHkgKDIwMDUpIChDcmVkaXQ6IERpc25leSk8L2ZpZ2NhcHRpb24+PC9maWd1cmU+CgoKCjxwPjxzdHJvbmc+VGh1bWJzIHVwPC9zdHJvbmc+PC9wPgoKCgo8cD5BbG1vc3QgYSBkZWNhZGUgbGF0ZXIsIGRldmVsb3BtZW50IHJldnZlZCB1cCBhZ2FpbiwgdGhhbmtzIHRvIHR3byBkZWNpZGVkbHkgbW9yZSBIb2xseXdvb2QtZnJpZW5kbHkgY29tZWR5IGhpdHMgaW4gMTk5Ny48L3A+CgoKCjxwPkZpcnN0LCB0aGUgc3VycHJpc2Ugc3VjY2VzcyBvZiA8ZW0+TWVuIEluIEJsYWNrPC9lbT4sIHdoaWNoIEFkYW1zIGNpdGVkIGluIGludGVydmlld3MgYXMgcHJvb2YgdGhhdCBzY2ktZmkgY29tZWR5IG1vdmllcyB3b3VsZCBwbGF5IGF0IHRoZSBib3ggb2ZmaWNlLiBBbmQgdGhlbiwgPGVtPkF1c3RpbiBQb3dlcnM6IEludGVybmF0aW9uYWwgTWFuIE9mIE15c3Rlcnk8L2VtPiwgd2hvc2UgZGlyZWN0b3IgSmF5IFJvYWNoIHdhbnRlZCB0byBjb2xsYWJvcmF0ZSB3aXRoIEFkYW1zIHRvIGZpbmFsbHkgYnJpbmcgPGVtPkhpdGNoaGlrZXLigJlzIEd1aWRlPC9lbT4gdG8gdGhlIGJpZyBzY3JlZW4uPC9wPgoKCgo8cD5XaGVuIFJvYWNoIHN0cnVjayBnb2xkIGFnYWluIHdpdGggMTk5OeKAmXMgQXVzdGluIFBvd2VycyBzZXF1ZWwgYW5kIDIwMDDigJlzIDxlbT5NZWV0IFRoZSBQYXJlbnRzPC9lbT4sIERpc25leSBzdWJzaWRpYXJ5IEhvbGx5d29vZCBQaWN0dXJlcyBvcHRpb25lZCA8ZW0+VGhlIEhpdGNoaGlrZXLigJlzIEd1aWRlIFRvIFRoZSBHYWxheHk8L2VtPiBmb3IgUm9hY2ggdG8gZGV2ZWxvcC4gUm9hY2ggaGltc2VsZiB3YXMgYnVzeSB3aXRoIHR3byBtYXNzaXZlIGNvbWVkeSBmcmFuY2hpc2VzLCBidXQgdGhpbmdzIHdlcmUgZmluYWxseSBtb3ZpbmcuPC9wPgoKCgo8cD5OYW1lcyBsaWtlIEh1Z2ggTGF1cmllIChBcnRodXIpLCBKaW0gQ2FycmV5IChaYXBob2QpLCBhbmQgU3Bpa2UgSm9uemUgKGluIHRoZSBkaXJlY3RvcuKAmXMgY2hhaXIpIHdlcmUgZmx5aW5nIGFyb3VuZC4gV2l0aCBzb21lIGRpc3RhbmNlIGZyb20gdGhlIHN0b3J5LCBBZGFtcyB3YXMgcmFyaW5nIHRvIG1ha2UgdGhlIG1vdmllIGFuZCB3cml0aW5nIG5ldyBkcmFmdHMgb2YgdGhlIHNjcmlwdCwgcmlnaHQgdXAgdW50aWwgaGUgdW5leHBlY3RlZGx5IHBhc3NlZCBhd2F5IGluIE1heSAyMDAxLjwvcD4KCgoKPHA+VW5oYXBweSB0byBsZXQgQWRhbXPigJlzIHdvcmsgYW5kIGFtYml0aW9ucyBjb21lIHRvIG5vdGhpbmcsIFJvYWNoIGFuZCBwcm9kdWNlciBSb2JiaWUgU3RhbXAgaGlyZWQgPGVtPkNoaWNrZW4gUnVuPC9lbT4gc2NyZWVud3JpdGVyIEthcmV5IEtpcmtwYXRyaWNrIHRvIHJld3JpdGUgYW5kIHJlc3RydWN0dXJlIHRoZSBhdXRob3LigJlzIGZpbmFsIGRyYWZ0IOKAkyBib3RoIHdyaXRlcnMgYXJlIGR1bHkgY28tY3JlZGl0ZWQgb24gdGhlIHNjcmVlbnBsYXkgaW4gdGhlIGZpbmlzaGVkIG1vdmllLjwvcD4KCgoKPHA+SW4gYSB3b25kZXJmdWxseSBmcmFuayAyMDA0IGludGVydmlldyBvbiB0aGUgZmlsbeKAmXMgb2ZmaWNpYWwgYmxvZywgS2lya3BhdHJpY2sgYWRkcmVzc2VzIHRoZSBhbHJlYWR5LXBvcHVsYXIgZmFuIGFjY3VzYXRpb24gdGhhdCBoZeKAmXMg4oCYTm90IERvdWdsYXMgQWRhbXPigJkgKGhlIHdhc27igJl0KSBhbmQgY29wcyB0byBub3QgYmVpbmcgZmFtaWxpYXIgd2l0aCB0aGUgYm9va3MgYmVmb3JlIGhlIHRvb2sgdGhlIGFzc2lnbm1lbnQgKGFuZCB0aGF04oCZcyBhbHJpZ2h0IHRvbykuIEFybWVkIHdpdGggQWRhbXPigJlzIGRyYWZ0cyBhbmQgbm90ZXMsIGhlIHdvcmtlZCB1cCBhIGRyYWZ0IHRoYXQgcmVpbnN0YXRlZCBzb21lIGJpdHMgb2YgdGhlIGJvb2sgdGhhdCBoYWQgYmVlbiBjdXQuIEF0IGxhc3QsIHRoZSBzdHVkaW8gZW50aHVzaWFzdGljYWxseSBhcHByb3ZlZCBvZiB0aGUgc2NyaXB0LjwvcD4KCgoKPHAgY2xhc3M9Imhhcy10ZXh0LWFsaWduLWNlbnRlciI+PHN0cm9uZz5SZWFkIG1vcmU6IDxhIGhyZWY9Imh0dHBzOi8vZmlsbXN0b3JpZXMuY28udWsvZmVhdHVyZXMvY29uY2xhdmUtYW5kLW90aGVyLW1vdmllcy1hZGFwdGVkLWZyb20tcmljaGFyZC1oYXJyaXNzLW5vdmVscy8iPkNvbmNsYXZlLCBhbmQgb3RoZXIgbW92aWVzIGFkYXB0ZWQgZnJvbSBSaWNoYXJkIEhhcnJpcyYjODIxNztzIG5vdmVsczwvYT48L3N0cm9uZz48L3A+CgoKCjxwPk1lYW53aGlsZSwgYXMgSm9uemUgd2FzIG1vdmluZyBvbiB0byBvdGhlciBwcm9qZWN0cywgaGUgcmVjb21tZW5kZWQgbXVzaWMgdmlkZW8gc3VwcmVtb3MgSGFtbWVyIGFuZCBUb25ncywgYS5rLmEuIGRpcmVjdG9yIEdhcnRoIEplbm5pbmdzIGFuZCBwcm9kdWNlciBOaWNrIEdvbGRzbWl0aCwgZm9yIHRoZSBqb2IuIEZhbWlsaWFyIHdpdGggdGhlIGJvb2tzLCBKZW5uaW5ncyBhbmQgR29sZHNtaXRoIGdvdCB0byB3b3JrIG9uIGNvbmNlcHQgZHJhd2luZ3MgZm9yIGNoYXJhY3RlcnMgYW5kIHNldHRpbmdzIHJpZ2h0IGF3YXkgYW5kIGFsc28gd29ya2VkIHdpdGggS2lya3BhdHJpY2sgb24gdGhlIHNjcmlwdC48L3A+CgoKCjxwPlNhdGlzZmllZCB0aGV54oCZZCBmb3VuZCB0aGUgcmlnaHQgY3JlYXRpdmUgdGVhbSwgRGlzbmV54oCZcyBUb3VjaHN0b25lIFBpY3R1cmVzIGdyZWVubGl0IHRoZSBmaWxtIGluIDIwMDMuIEdyYW50IEdlZeKAmXMgZXhjZWxsZW50IGhvdXItbG9uZyBmZWF0dXJldHRlLCA8ZW0+RG9u4oCZdCBDcmFzaCE6IFRoZSBEb2N1bWVudGFyeSBPZiBUaGUgTWFraW5nIE9mIFRoZSBNb3ZpZSBPZiBUaGUgQm9vayBPZiBUaGUgUmFkaW8gU2VyaWVzIE9mIFRoZSBIaXRjaGhpa2Vy4oCZcyBHdWlkZSBUbyBUaGUgR2FsYXh5PC9lbT4sIHN0YXJ0cyBzdHJvbmcgd2l0aCBjYW1jb3JkZXIgZm9vdGFnZSBvZiBob3cgZXhjaXRlZCBKZW5uaW5ncyBhbmQgR29sZHNtaXRoIHdlcmUgZHJpdmluZyBhd2F5IGZyb20gdGhhdCBjcnVjaWFsIHBpdGNoIG1lZXRpbmcuPC9wPgoKCgo8cD5XaGlsZSB0aGUgZmlsbeKAmXMgam91cm5leSB0byB0aGUgc2NyZWVuIHdhcyBjb21wYXJhdGl2ZWx5IHF1aWNrIGZyb20gdGhpcyBwb2ludCBvbiwgRG9u4oCZdCBDcmFzaCEgZ2l2ZXMgYSB0ZXJyaWZpYyBpbnNpZ2h0IGludG8gaG93IGJpZyBhIHN0ZXAgdXAgdGhpcyB3YXMgZm9yIEplbm5pbmdzIGFuZCBHb2xkc21pdGguIEF2YWlsYWJsZSBleGNsdXNpdmVseSBvbiB0aGUgdHdvLSBkaXNjIFJlZ2lvbiAyIERWRCByZWxlYXNlIGZyb20gMjAwNSwgaXTigJlzIGFuIGluc3BpcmluZyBsb29rIGF0IHRoZSBtYWtpbmcgb2YgYSB0aGVuIHVuY29tbW9ubHkgYmlnIGRlYnV0IGZlYXR1cmUuPC9wPgoKCgo8cD5PbmUgdGhpbmcgdGhhdCBzdGFuZHMgb3V0IGlzIHRoYXQgaXTigJlzIGEgQnJpdGlzaCBwcm9kdWN0aW9uIGV2ZW4gd2l0aCAobG90cyBvZikgSG9sbHl3b29kIG1vbmV5IGJlaGluZCBpdC4gVGhlIGZpcnN0IGNhc3QgcmVhZCB0aHJvdWdoIGluIEZlYnJ1YXJ5IDIwMDQgY29sbGVjdGVkIHN0YXJzIEZyZWVtYW4sIFJvY2t3ZWxsLCBEZXNjaGFuZWwsIGFuZCBOaWdoeSBpbiBCb3JlaGFtd29vZCBWaWxsYWdlIEhhbGwgYW5kIGFoZWFkIG9mIHByaW5jaXBhbCBwaG90b2dyYXBoeSBhdCBIZXJ0Zm9yZHNoaXJl4oCZcyBFbHN0cmVlIFN0dWRpb3MgYW5kIG9uIGxvY2F0aW9uIHRocm91Z2hvdXQgdGhlIFVLLiBPbiB0aGlzIG5vdGUsIHRoZSBmZWF0dXJldHRlIGluY2x1ZGVzIGEgbmljZSBjYW5kaWQgYXNpZGUgZnJvbSBGcmVlbWFuIGFib3V0IGNob29zaW5nIEJyaXRpc2ggbW92aWVzIG92ZXIgSG9sbHl3b29kIHRlbnRwb2xlcyBldmVuIHRob3VnaCB0aGUgbG9jYXRpb25zIGFyZW7igJl0IGFzIG5pY2U6IOKAnElmIHRoZXkgbWFkZSA8ZW0+TmlsIEJ5IE1vdXRoPC9lbT4gaW4gU3QgTHVjaWEsIHRoYXTigJlkIGJlIGdyZWF0LuKAnTwvcD4KCgoKPHA+VGhlcmXigJlzIGFub3RoZXIgYnJpbGxpYW50IGJpdCB3aGVyZSB0aGUgZGlyZWN0b3IgZW5lcmdldGljYWxseSByZS1lbmFjdHMgYW4gb3ZlcmhlYXJkIHNwZWFrZXJwaG9uZSBjb252ZXJzYXRpb24gd2l0aCBVUyBzdHVkaW8gZXhlY3V0aXZlcyB3aG8gZGlkbuKAmXQgZW5qb3kgdGhlIGRhaWx5IGZvb3RhZ2UgcnVzaGVzLCB3aXRoIGV4cGxldGl2ZXMgcmVwbGFjZWQgYnkgYmxlZXBzIHN1Y2ggYXMg4oCcSEVDS+KAnSwg4oCcSk9MTFkgV0VMTOKAnSwgYW5kIOKAnFBVWlpMSU5HIE1BVEVSSUFM4oCdLjwvcD4KCgoKPHA+SGXigJlzIGEgbWFuIGFmdGVyIG91ciBoZWFydHMsIHRoYXQgR2FydGggSmVubmluZ3MuPC9wPgoKCgo8cD48c3Ryb25nPlN0YXIgV2FycyB3aXRoIGpva2VzPzwvc3Ryb25nPjwvcD4KCgoKPHA+RXZlbiBpZiB5b3UgZG9u4oCZdCBsaWtlIHRoZSBmaWxtLCB5b3UgbWF5IHN0aWxsIGVuam95IDxlbT5Eb27igJl0IENyYXNoPC9lbT4sIGJlY2F1c2UgaXQgaGFzIGxvdHMgb2YgZnVubnkgYml0cyBpbiBpdHMgb3duIHJpZ2h0IGFuZCB0aGUgYmVuZWZpdCBvZiBub3QgcmVwZWF0aW5nIDI1IHllYXJz4oCZIHdvcnRoIG9mIGdhZ3MgZnJvbSBvdGhlciBzb3VyY2UgbWF0ZXJpYWwuIEJhY2sgaW4gdGhlIGRheSwgQWRhbXMgZGlkbuKAmXQgd2FudCB0aGUgSGl0Y2hoaWtlcuKAmXMgZmlsbSB0byBiZSDigJxTdGFyIFdhcnMgd2l0aCBqb2tlc+KAnSwgYSBxdW90ZSB0aGF04oCZcyBvZnRlbiBiZWVuIHVzZWQgYnkgdGhlIDIwMDUgbW92aWXigJlzIGRldHJhY3RvcnMgdG8gYmVhdCBpdC48L3A+CgoKCjxwPldlbGwsIGZvciBzdGFydGVycywgaXTigJlzIGZ1bm5pZXIgdGhhbiBhbnkgb2YgdGhlIFN0YXIgV2FycyBmaWxtcyB0byBkYXRlLCBhbmQgYXQgdGhlIHRpbWUsIGl0IGxvb2tlZCBtb3JlIGxpa2Ugb2xkLWZhc2hpb25lZCBTdGFyIFdhcnMgdGhhbiBhbnkgZmlsbXMgaGFkIGZvciBhIHdoaWxlLCBpbmNsdWRpbmcgdGhlIFN0YXIgV2FycyBvbmVzLiBBcnJpdmluZyBpbiBjaW5lbWFzIGEgbW9udGggYmVmb3JlIFJldmVuZ2UgT2YgVGhlIFNpdGgsIHRoZSB0aGlyZCBpbiBHZW9yZ2UgTHVjYXPigJlzIGluY3JlYXNpbmdseSBkaWdpdGlzZWQgcHJlcXVlbCB0cmlsb2d5LCBKZW5uaW5nc+KAmXMgZmlsbSBpcyB2aXN1YWxseSBzcGxlbmRpZCwgZnJvbSBpdHMgcHJvZHVjdGlvbiBkZXNpZ24gdG8gaXRzIGNyZWF0dXJlIGVmZmVjdHMuPC9wPgoKCgo8cD5PbiB0aGUgbWljcm8gbGV2ZWwsIERvbuKAmXQgQ3Jhc2ghIGRyYXdzIGF0dGVudGlvbiB0byB0aGUgYnJpbGxpYW50IHRlYWN1cC1pbnNwaXJlZCBkZXNpZ24gb2YgdGhlIEhlYXJ0IG9mIEdvbGQgc3BhY2VzaGlwLCBjb21wbGV0ZSB3aXRoIGJsdWUtYW5kLXdoaXRlIGNoaW5vaXNlcmllIGlsbHVzdHJhdGlvbnMgdGhhdCBhcmUgaW1wZXJjZXB0aWJsZSB3aXRob3V0IHBhdXNpbmcgdGhlIG1vdmllLiBUaGUgcHJvZHVjdGlvbiB2YWx1ZSBpcyB1cCBvbi1zY3JlZW4gd2hlbiB5b3UgcHJlc3MgcGxheSBhcyB3ZWxsLCBlc3BlY2lhbGx5IGluIHRoZSBWb2dvbnMuPC9wPgoKCgo8cD5XaXRoIGEgZGVzaWduIGluc3BpcmVkIGJ5IEphbWVzIEdpbGxyYXnigJlzIHZpbnRhZ2UgcG9saXRpY2FsIGNhcnRvb25zLCB0aGUgYWxpZW4gYnVyZWF1Y3JhdHMgYXJlIGluY3JlZGlibGUgY3JlYXRpb25zIGJvdWdodCB0byBsaWZlIGJ5IEppbSBIZW5zb27igJlzIENyZWF0dXJlIFNob3AuIFRoZXkgbW92ZSB1bmN0dW91c2x5IGFuZCByZXB1bHNpdmVseSBvbiBzY3JlZW4sIGFuZCB0aGV54oCZcmUgdmFyaW91c2x5IHZvaWNlZCBieSBIZW5zb24gcHVwcGV0ZWVycywgd29ya2luZyBhbG9uZ3NpZGUgYWN0b3JzIFJpY2hhcmQgR3JpZmZpdGhzIChKZWx0eikgYW5kIHRoZSBMZWFndWUgb2YgR2VudGxlbWVuIChhZGRpdGlvbmFsIGRpYWxvZ3VlKS48L3A+CgoKCjxwPkRpZCB3ZSBtZW50aW9uIHRoYXQgdGhlIHdob2xlIHZvaWNlIGNhc3QgaXMgc3VwZXJiPzwvcD4KCgoKPHA+QWxhbiBSaWNrbWFuIGdpdmVzIGEgc3VwcmVtZWx5IGdsdW0gcGVyZm9ybWFuY2UgYXMgTWFydmluLiBTdGVwaGVuIEZyeSwgSGVsZW4gTWlycmVuLCBhbmQgVGhvbWFzIExlbm5vbiB2b2ljZSB0aGUgR3VpZGUsIERlZXAgVGhvdWdodCwgYW5kIHNoaXAgY29tcHV0ZXIgRWRkaWUsIHJlc3BlY3RpdmVseS4gQW5kIG9mIGNvdXJzZSwgQmlsbCBCYWlsZXnigJlzIGJyaWVmIGNhbWVvLCBhcyBhIHNwZXJtIHdoYWxlIHJ1bWluYXRpbmcgb24gaXRzIGV4aXN0ZW5jZSB3aGlsZSBmYWxsaW5nIGZyb20gdGhlIHN0cmF0b3NwaGVyZSB0byB0aGUgZ3JvdW5kLCBpcyB0aGUgZnVubmllc3QgcGVyZm9ybWFuY2Ugb2YgdGhhdCBmYW1pbGlhciBza2l0LjwvcD4KCgoKPGZpZ3VyZSBjbGFzcz0id3AtYmxvY2staW1hZ2Ugc2l6ZS1sYXJnZSI+PGltZyBsb2FkaW5nPSJsYXp5IiBkZWNvZGluZz0iYXN5bmMiIHdpZHRoPSI4MDAiIGhlaWdodD0iNTUyIiBzcmM9Imh0dHBzOi8vc3BhY2VzLmZpbG1zdG9yaWVzLmNvLnVrL3VwbG9hZHMvMjAyNC8xMS90aGUtaGl0Y2hoaWtlcnMtZ3VpZGUtdG8tdGhlLWdhbGF4eV9kMzNJNUctODAweDU1Mi5qcGciIGFsdD0iaGl0Y2hoaWtlcidzIG1vdmllICIgY2xhc3M9IndwLWltYWdlLTkzODExIiBzcmNzZXQ9Imh0dHBzOi8vc3BhY2VzLmZpbG1zdG9yaWVzLmNvLnVrL3VwbG9hZHMvMjAyNC8xMS90aGUtaGl0Y2hoaWtlcnMtZ3VpZGUtdG8tdGhlLWdhbGF4eV9kMzNJNUctODAweDU1Mi53ZWJwIDgwMHcsIGh0dHBzOi8vc3BhY2VzLmZpbG1zdG9yaWVzLmNvLnVrL3VwbG9hZHMvMjAyNC8xMS90aGUtaGl0Y2hoaWtlcnMtZ3VpZGUtdG8tdGhlLWdhbGF4eV9kMzNJNUctMzAweDIwNy53ZWJwIDMwMHcsIGh0dHBzOi8vc3BhY2VzLmZpbG1zdG9yaWVzLmNvLnVrL3VwbG9hZHMvMjAyNC8xMS90aGUtaGl0Y2hoaWtlcnMtZ3VpZGUtdG8tdGhlLWdhbGF4eV9kMzNJNUcuanBnIDE1MDB3IiBzaXplcz0iKG1heC13aWR0aDogODAwcHgpIDEwMHZ3LCA4MDBweCIgLz48ZmlnY2FwdGlvbiBjbGFzcz0id3AtZWxlbWVudC1jYXB0aW9uIj5UaGUgSGl0Y2hoaWtlciYjODIxNztzIEd1aWRlIFRvIFRoZSBHYWxheHkgKDIwMDUpIChDcmVkaXQ6IERpc25leSk8L2ZpZ2NhcHRpb24+PC9maWd1cmU+CgoKCjxwPjxzdHJvbmc+Tm90IHRoZSBGb3JjZTwvc3Ryb25nPjwvcD4KCgoKPHA+VWx0aW1hdGVseSwgaXTigJlzIG5vdCBTdGFyIFdhcnMgd2l0aCBqb2tlcyBiZWNhdXNlIGl0IGNhbuKAmXQgYmUuIFRoZXJl4oCZcyBub3RoaW5nIGxpa2UtZm9yLWxpa2UgaW4gaXRzIG5hcnJhdGl2ZSwgd2hpY2ggbGVhdmVzIEplbm5pbmdzIGZyZWUgdG8gcmFpZCBIb2xseXdvb2Qgc2NpLWZpIGljb25vZ3JhcGh5LCBwYXJ0bHkgYmVjYXVzZSBoZeKAmXMgZ290IHRoZSBidWRnZXQsIGJ1dCBtb3N0bHkgYmVjYXVzZSB0aGF04oCZcyB3aGF0IHRoZSBzb3VyY2UgbWF0ZXJpYWwgZG9lcy4gSnVzdCBhcyBBZGFtcyBzZW50IHVwIHNjaS1maSB0cm9wZXMgd2l0aCBBcnRodXLigJlzIG1pc2FkdmVudHVyZXMsIHRoZSBtb3ZpZSBib3RoIGVzc2F5cyBhbmQgc3Bvb2ZzIGJsb2NrYnVzdGVyIHNwZWN0YWNsZS4gVGhlIGJlc3QgZXhhbXBsZSBpcyBhIGJyaWxsaWFudGx5IGNpbmVtYXRpYyBhaXJsb2NrIGdhZywgd2hpY2ggcHJlcGFyZXMgQXJ0aHVyLCBGb3JkLCBhbmQgdGhlIGF1ZGllbmNlIGZvciB0aGUgb3BlbmluZyBvZiBhIGJpZyBleHBlbnNpdmUgc3BhY2VzaGlwIGJ1bGtoZWFkIHRoYXQgbmV2ZXIgY29tZXMg4oCTIHRoZSBwYWlyIGFyZSB1bmNlcmVtb25pb3VzbHkgZHVtcGVkIHRocm91Z2ggYSB0cmFwZG9vciBpbnN0ZWFkLiBMaWtlIHRoZSBCYWJlbCBGaXNoIGZvciBhbm90aGVyIGNyZWF0b3IsIHRoZSBzZXF1ZW5jZSBpcyBhIGRlYWQgZ2l2ZWF3YXkgYWJvdXQgSmVubmluZ3PigJlzIGdyYXNwIG9mIHRoZSBtYXRlcmlhbC48L3A+CgoKCjxwPlRoZSBvdGhlciBjb21wYXJpc29uIHBvaW50IHRoYXQga2VlcHMgY29taW5nIHVwIGZyb20gdGhlIEFtZXJpY2FuIHNpZGUgaXMgTW9udHkgUHl0aG9uIOKAkyBtdWNoIG1vcmUgb2YgYSBjdWx0IGNvbmNlcm4gaW4gdGhlIFVTLCBhbmQgYWxzbyBmYXIgdHJpY2tpZXIgZm9yIHRoZW0gdG8gbWFrZSBhcyBhIHN0dWRpbyBjb21lZHkuIERpc25leSBkaWRu4oCZdCB5ZXQgb3duIEx1Y2FzZmlsbSwgYnV0IGFyb3VuZCB0aGlzIHRpbWUgaXQgYmFja2VkIGEgbW92aWUgdGhhdCBmZWx0IGluZmx1ZW5jZWQgYnkgdGhlIG1vcmUgQnJpdGlzaCB0cmFkaXRpb24uIFRlcnJ5IEpvbmVzIG1heSBuZXZlciBoYXZlIGdvdCBuZWFyIGFkYXB0aW5nIEhpdGNoaGlrZXLigJlzLCBidXQgdGhlIG1vc3QgaW5zcGlyZWQgUHl0aG9uZXNxdWUgY2hvaWNlIHJpZ2h0IG9mZiB0aGUgYmF0IGlzIHRvIHR1cm4gYSBnYWcgYWJvdXQgdGhlIGRvbHBoaW5zIGxlYXZpbmcgRWFydGggaW50byA8ZW0+U28gTG9uZyBBbmQgVGhhbmtzIEZvciBBbGwgVGhlIEZpc2g8L2VtPiwgYSBCdXNieSBCZXJrZWxleS1zdHlsZSBvcGVuaW5nIG11c2ljYWwgbnVtYmVyLjwvcD4KCgoKPHA+U29tZSBjcmFja2luZyBuZXcgYml0cyBjYW1lIG92ZXIgZnJvbSBBZGFtc+KAmXMgZHJhZnRzLiBUaGVyZeKAmXMgdmVyeSBsaXRlcmFsIHNsYXBzdGljayBvbiB0aGUgVm9nb25z4oCZIGhvbWUgcGxhbmV0LCB3aGljaCByZXZlYWxzIHRoZXkgZXZvbHZlZCBvbiBhIHdvcmxkIHRoYXQgZG9lcyBhIDxlbT5TaW1wc29uczwvZW0+LWNhbGlicmUgcmFrZSBqb2tlIG9uIHRoZW0gZXZlcnkgdGltZSB0aGV5IGdldCBhIG5ldyBpZGVhLiBUaGUgUG9pbnQgT2YgVmlldyBHdW4sIHRvbywgaXMgcHVyZSBBZGFtcyDigJMgYSBtb3ZpZS1mcmllbmRseSBNY0d1ZmZpbiB0aGF0IHdhcyByZXB1dGVkbHkgaW52ZW50ZWQgYnkgd29tZW4gdGlyZWQgb2YgYXJndWluZyB3aXRoIG1lbiB3aG8g4oCcanVzdCBkb27igJl0IGdldCBpdC7igJ08L3A+CgoKCjxwPktpcmtwYXRyaWNrIHdhcyB1bmRlcnN0YW5kYWJseSByZXZlcmVudCB0byBBZGFtc+KAmXMgd3JpdGluZywgbmV3IGFuZCBvbGQsIGJ1dCBpdOKAmXMgb25lIG9mIHRoZSBhc3BlY3RzIHRoYXQgYnJlYWtzIHRoZSBmaWxtIGZvciBmYW5zIHdobyBhcmUgd2VsbCBhY3F1YWludGVkIHdpdGggcHJldmlvdXMgdGV4dHMuIFZpc3VhbGx5LCB0aGVyZeKAmXMgbG90cyBvZiB1bmNoYXJ0ZWQgdGVycml0b3J5LCBidXQgdGhlIHdvcmRzIGFyZSB0aGUgc2FtZSB3b3JkcyBhY3Jvc3MgbWFueSBtZWRpdW1zLjwvcD4KCgoKPHA+UmVpbnN0YXRpbmcgc28gbWFueSBvZiB0aG9zZSBza2V0Y2hlcyBhbmQgcm91dGluZXMgaW52aXRlcyBjb21wYXJpc29ucywgYW5kIHRoZSBkaXNzb25hbmNlIG9mIGEgdHdlYWtlZCBnYWcgb3IgYSB0cnVuY2F0ZWQgcHVuY2hsaW5lICjigJxJIGhhZCB0byBnbyBkb3duIHRvIGEgY2VsbGFyIeKAnSkgc2VlbXMgdG8gc3ByZWFkIGFjcm9zcyB0aGUgZmlsbS4gVG8gcmVmZXJlbmNlIG9uZSBlc3BlY2lhbGx5IHRlZGlvdXMgZXhhbXBsZTogdGhlIGluc2lzdGVuY2UgdGhhdCB1c2luZyBDRyBmb3IgWmFwaG9k4oCZcyBzZWNvbmQgaGVhZCBhbmQgdHVja2luZyBpdCBhd2F5IHVuZGVyIGhpcyBjaGluIHdoZW4gaGXigJlzIG5vdCB1c2luZyBpdCBpcyBzb21laG93IOKAnGNoZWFwZXLigJ0gdGhhbiBhIHNob3VsZGVyLW1vdW50ZWQgbm9nZ2luIGZyb20gYSBCQkMgVFYgc2VyaWVzIHdpdGggYSAxOTgwcyBidWRnZXQuIEluIHJldHJvc3BlY3QsIHRoaXMgZmVlbHMgbGlrZSBhIGxvdy1rZXksIGJ1dCBlc3BlY2lhbGx5IHRlbGxpbmcgb21lbiBvZiB0b2RheeKAmXMgcHJldmFpbGluZyBtb2RlIG9mIG9ubGluZSBmYW5kb206IOKAmGp1c3QgZG8gaXQgbGlrZSB5b3UgZGlkIGl0IGJlZm9yZS7igJk8L3A+CgoKCjxmaWd1cmUgY2xhc3M9IndwLWJsb2NrLWltYWdlIHNpemUtbGFyZ2UiPjxpbWcgbG9hZGluZz0ibGF6eSIgZGVjb2Rpbmc9ImFzeW5jIiB3aWR0aD0iODAwIiBoZWlnaHQ9IjUzMyIgc3JjPSJodHRwczovL3NwYWNlcy5maWxtc3Rvcmllcy5jby51ay91cGxvYWRzLzIwMjQvMTEvaGl0Y2hoaWtlcnNndWlkZV9tb3ZpZXN0aWxsc2RiLTgwMHg1MzMuanBnIiBhbHQ9IlRoZSBIaXRjaGhpa2VyJ3MgR3VpZGUgVG8gVGhlIEdhbGF4eSAoMjAwNSkiIGNsYXNzPSJ3cC1pbWFnZS05MzgwNiIgc3Jjc2V0PSJodHRwczovL3NwYWNlcy5maWxtc3Rvcmllcy5jby51ay91cGxvYWRzLzIwMjQvMTEvaGl0Y2hoaWtlcnNndWlkZV9tb3ZpZXN0aWxsc2RiLTgwMHg1MzMud2VicCA4MDB3LCBodHRwczovL3NwYWNlcy5maWxtc3Rvcmllcy5jby51ay91cGxvYWRzLzIwMjQvMTEvaGl0Y2hoaWtlcnNndWlkZV9tb3ZpZXN0aWxsc2RiLTMwMHgyMDAud2VicCAzMDB3LCBodHRwczovL3NwYWNlcy5maWxtc3Rvcmllcy5jby51ay91cGxvYWRzLzIwMjQvMTEvaGl0Y2hoaWtlcnNndWlkZV9tb3ZpZXN0aWxsc2RiLmpwZyAxOTIwdyIgc2l6ZXM9IihtYXgtd2lkdGg6IDgwMHB4KSAxMDB2dywgODAwcHgiIC8+PGZpZ2NhcHRpb24gY2xhc3M9IndwLWVsZW1lbnQtY2FwdGlvbiI+VGhlIEhpdGNoaGlrZXImIzgyMTc7cyBHdWlkZSBUbyBUaGUgR2FsYXh5ICgyMDA1KSAoQ3JlZGl0OiBEaXNuZXkpPC9maWdjYXB0aW9uPjwvZmlndXJlPgoKCgo8cD48c3Ryb25nPkFuZCBhbm90aGVyIHRoaW5n4oCmPC9zdHJvbmc+PC9wPgoKCgo8cD5JbiB0aGUgbW92aWUsIHRoZSBpbnRyb2R1Y3Rpb24gb2YgdGhlIEd1aWRlIGlzIHByZWZhY2VkIGJ5IGEgdHJpYnV0ZSB0byBUaGUgRWFnbGVz4oCZIGluc3RydW1lbnRhbCBwaWVjZSA8ZW0+Sm91cm5leSBPZiBUaGUgU29yY2VyZXI8L2VtPiDigJMgbG9uZyB1c2VkIGFzIHRoZSBIaXRjaGhpa2Vy4oCZcyB0aGVtZS4gQ29tcG9zZXIgSm9ieSBUYWxib3QgYnVpbGRzIHdpdGggYmFuam9zIHVudGlsIGl0IGVydXB0cyBpbnRvIGEgZ3JhbmQgb3JjaGVzdHJhbCBhcnJhbmdlbWVudCBvdmVyIHRoZSBHdWlkZSBmbG9hdGluZyBpbiBzcGFjZS4gVGhpcyBzaG9ydCwgZmFuLXBsZWFzaW5nIHNlcXVlbmNlIGlzIHR5cGljYWwgb2YgdGhlIGZpbG3igJlzIGxvdmluZyB0cmlidXRlIGFjdC48L3A+CgoKCjxwPlRoZSBtb3ZpZSBpcyBhbiB1bmFiYXNoZWQgY292ZXIgdmVyc2lvbiBvZiB0aGUgc291cmNlIG1hdGVyaWFsLCBidXQgdGhlIHJlc3VsdCBpcyBmbGF0dGVyaW5nIOKAkyBtb3JlIHNvIHRoYW4gRGlzbmV54oCZcyBvd24gcmVjZW50IHNwYXRlIG9mIGxpdmUtYWN0aW9uIHJlbWFrZXMgb2YgaXRzIGFuaW1hdGVkIGJhY2stY2F0YWxvZ3VlLCBvciBldmVuIHRoZSBzdWJzZXF1ZW50IHNpeHRoIG5vdmVsLCBBbmQgQW5vdGhlciBUaGluZ+KApiwgd3JpdHRlbiBieSBhdXRob3IgRW9pbiBDb2xmZXIgYW5kIHJlbGVhc2VkIGluIDIwMDkuPC9wPgoKCgo8cD5HaXZlbiB0aGUgZGlmZmljdWx0eSBvZiB0cmFuc2xhdGluZyBBZGFtc+KAmXMgc3RvcnksIHRoZSBmaWxtIGlzIGFzIGZyYW50aWMgYW5kIGNoYW90aWMgYXMgeW914oCZZCBleHBlY3Qg4oCTIGFuZCBpdCB3YXMgZGVjZW50bHkgcmV2aWV3ZWQgYnkgY3JpdGljcywgd2l0aCB0aGUgbW92aWUgb3BlbmluZyBhdCBudW1iZXIgMSBhdCB0aGUgVUsgYW5kIFVTIGJveCBvZmZpY2UuIEl0IHBlcmZvcm1lZCByZXNwZWN0YWJseSB3b3JsZHdpZGUsIGJ1dCBkaWRu4oCZdCBoYXZlIHRoZSBzdHVkaW8gY2hhbXBpbmcgYXQgdGhlIGJpdCBmb3IgYSBzZXF1ZWwgZWl0aGVyLjwvcD4KCgoKPHA+SGFtbWVyIGFuZCBUb25ncyB3ZW50IG9uIHRvIG1ha2UgdGhlIGJyaWxsaWFudCA8ZW0+U29uIE9mIFJhbWJvdzwvZW0+IGluIDIwMDcgaW5zdGVhZCwgYW5kIEplbm5pbmdzIGhhcyBzaW5jZSBkaXJlY3RlZCB0aGU8ZW0+IFNpbmc8L2VtPiBtb3ZpZXMgZm9yIElsbHVtaW5hdGlvbiBBbmltYXRpb24uIFRob3VnaCBpdCBoYXMgZmFyIGZld2VyIG1vdmllIHN0YXJzIHRoYW4gaW50ZW5kZWQgYXQgZGlmZmVyZW50IHBvaW50cyBpbiBpdHMgbG9uZyByb2FkIHRvIHRoZSBzY3JlZW4sIHRoZSBmaWxtIGRvZXMgc3RhciBsb3RzIG9mIHBlb3BsZSB3aG/igJl2ZSBnb25lIG9uIHRvIGJpZ2dlciB0aGluZ3MsIHNvIGl0IGlzIHN0aWxsIGJlaW5nIGRpc2NvdmVyZWQgaW4gcmV0cm9zcGVjdC48L3A+CgoKCjxwPkl04oCZcyBieSBubyBtZWFucyBkZWZpbml0aXZlLCBidXQgaXQgd2FzIG5ldmVyIHN1cHBvc2VkIHRvIGJlLiBUaGUgcmFkaW8gcGxheXMgYW5kIHRoZSBib29rcyBhbmQgdGhlIFRWIHNlcmllcyBhcmUgc3RpbGwgb3V0IHRoZXJlLiBJbmRlZWQsIGEgbmV3IEFtZXJpY2FuIFRWIHNlcmllcyB3YXMgc2V0IHRvIGdvIGludG8gcHJvZHVjdGlvbiBpbiBtaWQtMjAyMCBidXQgd2FzIGRlbGF5ZWQgYnkgdGhlIHBhbmRlbWljLjwvcD4KCgoKPHA+SWYgdGhlcmXigJlzIGEgbGVzc29uIHRvIGJlIGxlYXJuZWQgZnJvbSB0aGUgbW92aWUsIGEgZ29yZ2VvdXMgYW5kIGVuZGVhcmluZyByZW1vdW50IG9mIGEgc2NpLWZpIHRhbGwgdGFsZSB0aGF04oCZcyBvbmx5IHNsaWdodGx5IGR1bGxlZCBieSBpdHMgc2NyaXB0IGJlaW5nIGFnb25pc2VkIG92ZXIgZm9yIGFsbW9zdCAyNSB5ZWFycywgaXQgbWlnaHQgYmUgdGhhdCB0aGUgdGV4dCBzaG91bGQgYmUgbW9yZSBvZiBhIGp1bXBpbmctIG9mZiBwb2ludCB0aGFuIGhvbHkgd3JpdC4gT3IsIHRvIGtlZXAgaXQgc2ltcGxlIOKAkyBET07igJlUIFBBTklD4oCmJm5ic3A7PC9wPgo8ZGl2IGNsYXNzPSJhZGR0b2FueV9zaGFyZV9zYXZlX2NvbnRhaW5lciBhZGR0b2FueV9jb250ZW50IGFkZHRvYW55X2NvbnRlbnRfYm90dG9tIj48ZGl2IGNsYXNzPSJhZGR0b2FueV9oZWFkZXIiPlNoYXJlIHRoaXMgQXJ0aWNsZTo8L2Rpdj48ZGl2IGNsYXNzPSJhMmFfa2l0IGEyYV9raXRfc2l6ZV8zMiBhZGR0b2FueV9saXN0IiBkYXRhLWEyYS11cmw9Imh0dHBzOi8vZmlsbXN0b3JpZXMuY28udWsvZmVhdHVyZXMvbGlmZS1hLWNpbmVtYXRpYy11bml2ZXJzZS1hbmQtZXZlcnl0aGluZy10aGUtdW5kZXJhcHByZWNpYXRlZC1oaXRjaGhpa2Vycy1ndWlkZS1tb3ZpZS8iIGRhdGEtYTJhLXRpdGxlPSJMaWZlLCBhIGNpbmVtYXRpYyB1bml2ZXJzZSwgYW5kIGV2ZXJ5dGhpbmcgfCBUaGUgdW5kZXJhcHByZWNpYXRlZCBIaXRjaGhpa2Vy4oCZcyBHdWlkZSBtb3ZpZSI+PGEgY2xhc3M9ImEyYV9idXR0b25fZmFjZWJvb2siIGhyZWY9Imh0dHBzOi8vd3d3LmFkZHRvYW55LmNvbS9hZGRfdG8vZmFjZWJvb2s/bGlua3VybD1odHRwcyUzQSUyRiUyRmZpbG1zdG9yaWVzLmNvLnVrJTJGZmVhdHVyZXMlMkZsaWZlLWEtY2luZW1hdGljLXVuaXZlcnNlLWFuZC1ldmVyeXRoaW5nLXRoZS11bmRlcmFwcHJlY2lhdGVkLWhpdGNoaGlrZXJzLWd1aWRlLW1vdmllJTJGJmFtcDtsaW5rbmFtZT1MaWZlJTJDJTIwYSUyMGNpbmVtYXRpYyUyMHVuaXZlcnNlJTJDJTIwYW5kJTIwZXZlcnl0aGluZyUyMCU3QyUyMFRoZSUyMHVuZGVyYXBwcmVjaWF0ZWQlMjBIaXRjaGhpa2VyJUUyJTgwJTk5cyUyMEd1aWRlJTIwbW92aWUiIHRpdGxlPSJGYWNlYm9vayIgcmVsPSJub2ZvbGxvdyBub29wZW5lciIgdGFyZ2V0PSJfYmxhbmsiPjwvYT48YSBjbGFzcz0iYTJhX2J1dHRvbl90d2l0dGVyIiBocmVmPSJodHRwczovL3d3dy5hZGR0b2FueS5jb20vYWRkX3RvL3R3aXR0ZXI/bGlua3VybD1odHRwcyUzQSUyRiUyRmZpbG1zdG9yaWVzLmNvLnVrJTJGZmVhdHVyZXMlMkZsaWZlLWEtY2luZW1hdGljLXVuaXZlcnNlLWFuZC1ldmVyeXRoaW5nLXRoZS11bmRlcmFwcHJlY2lhdGVkLWhpdGNoaGlrZXJzLWd1aWRlLW1vdmllJTJGJmFtcDtsaW5rbmFtZT1MaWZlJTJDJTIwYSUyMGNpbmVtYXRpYyUyMHVuaXZlcnNlJTJDJTIwYW5kJTIwZXZlcnl0aGluZyUyMCU3QyUyMFRoZSUyMHVuZGVyYXBwcmVjaWF0ZWQlMjBIaXRjaGhpa2VyJUUyJTgwJTk5cyUyMEd1aWRlJTIwbW92aWUiIHRpdGxlPSJUd2l0dGVyIiByZWw9Im5vZm9sbG93IG5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayI+PC9hPjxhIGNsYXNzPSJhMmFfYnV0dG9uX2VtYWlsIiBocmVmPSJodHRwczovL3d3dy5hZGR0b2FueS5jb20vYWRkX3RvL2VtYWlsP2xpbmt1cmw9aHR0cHMlM0ElMkYlMkZmaWxtc3Rvcmllcy5jby51ayUyRmZlYXR1cmVzJTJGbGlmZS1hLWNpbmVtYXRpYy11bml2ZXJzZS1hbmQtZXZlcnl0aGluZy10aGUtdW5kZXJhcHByZWNpYXRlZC1oaXRjaGhpa2Vycy1ndWlkZS1tb3ZpZSUyRiZhbXA7bGlua25hbWU9TGlmZSUyQyUyMGElMjBjaW5lbWF0aWMlMjB1bml2ZXJzZSUyQyUyMGFuZCUyMGV2ZXJ5dGhpbmclMjAlN0MlMjBUaGUlMjB1bmRlcmFwcHJlY2lhdGVkJTIwSGl0Y2hoaWtlciVFMiU4MCU5OXMlMjBHdWlkZSUyMG1vdmllIiB0aXRsZT0iRW1haWwiIHJlbD0ibm9mb2xsb3cgbm9vcGVuZXIiIHRhcmdldD0iX2JsYW5rIj48L2E+PGEgY2xhc3M9ImEyYV9kZCBhZGR0b2FueV9zaGFyZV9zYXZlIGFkZHRvYW55X3NoYXJlIiBocmVmPSJodHRwczovL3d3dy5hZGR0b2FueS5jb20vc2hhcmUiPjwvYT48L2Rpdj48L2Rpdj4=