It was the end of the 20th century, but while we panicked about The Millennium Bug, cinema was warning us about the dangers to come...
This article first appeared in Film Stories issue 46.
AI, tech billionaire megalomania, and the rise of the religious right. In a post-truth, conspiracy-led society, it’s getting harder and harder to distinguish fact from fiction in our modern lives. Reality is bending to the will of super-intelligent computers, photorealistic imagery is now a click of a button away, and the tech giants who created it all are now telling us AI represents an existential threat to humanity, more even than climate change. Couple that with the new anti-science of the religious right, banning books and outlawing abortion rights, and you have the perfect recipe for a dystopian hellscape worthy of any Hollywood movie.
Several movies from 1999 saw it all coming - and we didn’t heed their messages…
Machine & man
Artificial intelligence was a defining characteristic in many dystopian films in this year. One in particular became a phenomenon that still influences cinema to this day. But let’s talk about Virus starring Jamie Lee Curtis, William Baldwin, and an Irish-accented Donald Sutherland. This is a bona fide cult classic that doesn’t deserve the kicking it got, even from its own star. It’s an absolute riot.
An extraterrestrial ‘intelligence’ zaps its way to Earth through the ISS, and starts causing havoc on a research vessel in the middle of the ocean, cannibalising machinery and human body parts to form a series of killer cyborg things. It’s Alien meets The Thing via Transformers meets Terminator – and did I mention that Donald Sutherland plays his salty sea-dog captain as Irish?
PGRpdiBjbGFzcz0iYWRkdG9hbnlfc2hhcmVfc2F2ZV9jb250YWluZXIgYWRkdG9hbnlfY29udGVudCBhZGR0b2FueV9jb250ZW50X3RvcCI+PGRpdiBjbGFzcz0iYWRkdG9hbnlfaGVhZGVyIj5TaGFyZSB0aGlzIEFydGljbGU6PC9kaXY+PGRpdiBjbGFzcz0iYTJhX2tpdCBhMmFfa2l0X3NpemVfMzIgYWRkdG9hbnlfbGlzdCIgZGF0YS1hMmEtdXJsPSJodHRwczovL3N0YWdpbmcuZmlsbXN0b3JpZXMuY28udWsvZmVhdHVyZXMvdGhlLWFwb2NhbHlwdGljLW1vdmllcy1vZi0xOTk5LyIgZGF0YS1hMmEtdGl0bGU9IlRoZSBhcG9jYWx5cHRpYyBtb3ZpZXMgb2YgMTk5OSI+PGEgY2xhc3M9ImEyYV9idXR0b25fZmFjZWJvb2siIGhyZWY9Imh0dHBzOi8vd3d3LmFkZHRvYW55LmNvbS9hZGRfdG8vZmFjZWJvb2s/bGlua3VybD1odHRwcyUzQSUyRiUyRnN0YWdpbmcuZmlsbXN0b3JpZXMuY28udWslMkZmZWF0dXJlcyUyRnRoZS1hcG9jYWx5cHRpYy1tb3ZpZXMtb2YtMTk5OSUyRiZhbXA7bGlua25hbWU9VGhlJTIwYXBvY2FseXB0aWMlMjBtb3ZpZXMlMjBvZiUyMDE5OTkiIHRpdGxlPSJGYWNlYm9vayIgcmVsPSJub2ZvbGxvdyBub29wZW5lciIgdGFyZ2V0PSJfYmxhbmsiPjwvYT48YSBjbGFzcz0iYTJhX2J1dHRvbl90d2l0dGVyIiBocmVmPSJodHRwczovL3d3dy5hZGR0b2FueS5jb20vYWRkX3RvL3R3aXR0ZXI/bGlua3VybD1odHRwcyUzQSUyRiUyRnN0YWdpbmcuZmlsbXN0b3JpZXMuY28udWslMkZmZWF0dXJlcyUyRnRoZS1hcG9jYWx5cHRpYy1tb3ZpZXMtb2YtMTk5OSUyRiZhbXA7bGlua25hbWU9VGhlJTIwYXBvY2FseXB0aWMlMjBtb3ZpZXMlMjBvZiUyMDE5OTkiIHRpdGxlPSJUd2l0dGVyIiByZWw9Im5vZm9sbG93IG5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayI+PC9hPjxhIGNsYXNzPSJhMmFfYnV0dG9uX2VtYWlsIiBocmVmPSJodHRwczovL3d3dy5hZGR0b2FueS5jb20vYWRkX3RvL2VtYWlsP2xpbmt1cmw9aHR0cHMlM0ElMkYlMkZzdGFnaW5nLmZpbG1zdG9yaWVzLmNvLnVrJTJGZmVhdHVyZXMlMkZ0aGUtYXBvY2FseXB0aWMtbW92aWVzLW9mLTE5OTklMkYmYW1wO2xpbmtuYW1lPVRoZSUyMGFwb2NhbHlwdGljJTIwbW92aWVzJTIwb2YlMjAxOTk5IiB0aXRsZT0iRW1haWwiIHJlbD0ibm9mb2xsb3cgbm9vcGVuZXIiIHRhcmdldD0iX2JsYW5rIj48L2E+PGEgY2xhc3M9ImEyYV9kZCBhZGR0b2FueV9zaGFyZV9zYXZlIGFkZHRvYW55X3NoYXJlIiBocmVmPSJodHRwczovL3d3dy5hZGR0b2FueS5jb20vc2hhcmUiPjwvYT48L2Rpdj48L2Rpdj4KPHA+PHN0cm9uZz5JdCB3YXMgdGhlIGVuZCBvZiB0aGUgMjB0aCBjZW50dXJ5LCBidXQgd2hpbGUgd2UgcGFuaWNrZWQgYWJvdXQgVGhlIE1pbGxlbm5pdW0gQnVnLCBjaW5lbWEgd2FzIHdhcm5pbmcgdXMgYWJvdXQgdGhlIGRhbmdlcnMgdG8gY29tZSYjODIzMDs8L3N0cm9uZz48L3A+CgoKCjxociBjbGFzcz0id3AtYmxvY2stc2VwYXJhdG9yIGhhcy1hbHBoYS1jaGFubmVsLW9wYWNpdHkiLz4KCgoKPHA+PGVtPlRoaXMgYXJ0aWNsZSBmaXJzdCBhcHBlYXJlZCBpbiBGaWxtIFN0b3JpZXMgaXNzdWUgNDYuPC9lbT48L3A+CgoKCjxwPkFJLCB0ZWNoIGJpbGxpb25haXJlIG1lZ2Fsb21hbmlhLCBhbmQgdGhlIHJpc2Ugb2YgdGhlIHJlbGlnaW91cyByaWdodC4gSW4gYSBwb3N0LXRydXRoLCBjb25zcGlyYWN5LWxlZCBzb2NpZXR5LCBpdOKAmXMgZ2V0dGluZyBoYXJkZXIgYW5kIGhhcmRlciB0byBkaXN0aW5ndWlzaCBmYWN0IGZyb20gZmljdGlvbiBpbiBvdXIgbW9kZXJuIGxpdmVzLiBSZWFsaXR5IGlzIGJlbmRpbmcgdG8gdGhlIHdpbGwgb2Ygc3VwZXItaW50ZWxsaWdlbnQgY29tcHV0ZXJzLCBwaG90b3JlYWxpc3RpYyBpbWFnZXJ5IGlzIG5vdyBhIGNsaWNrIG9mIGEgYnV0dG9uIGF3YXksIGFuZCB0aGUgdGVjaCBnaWFudHMgd2hvIGNyZWF0ZWQgaXQgYWxsIGFyZSBub3cgdGVsbGluZyB1cyBBSSByZXByZXNlbnRzIGFuIGV4aXN0ZW50aWFsIHRocmVhdCB0byBodW1hbml0eSwgbW9yZSBldmVuIHRoYW4gY2xpbWF0ZSBjaGFuZ2UuIENvdXBsZSB0aGF0IHdpdGggdGhlIG5ldyBhbnRpLXNjaWVuY2Ugb2YgdGhlIHJlbGlnaW91cyByaWdodCwgYmFubmluZyBib29rcyBhbmQgb3V0bGF3aW5nIGFib3J0aW9uIHJpZ2h0cywgYW5kIHlvdSBoYXZlIHRoZSBwZXJmZWN0IHJlY2lwZSBmb3IgYSBkeXN0b3BpYW4gaGVsbHNjYXBlIHdvcnRoeSBvZiBhbnkgSG9sbHl3b29kIG1vdmllLjwvcD4KCgoKPHA+U2V2ZXJhbCBtb3ZpZXMgZnJvbSAxOTk5IHNhdyBpdCBhbGwgY29taW5nICYjODIxMTsgYW5kIHdlIGRpZG7igJl0IGhlZWQgdGhlaXIgbWVzc2FnZXPigKY8L3A+CgoKCjxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyIgaWQ9ImgtbWFjaGluZS1hbXAtbWFuIj5NYWNoaW5lICZhbXA7IG1hbjwvaDI+CgoKCjxwPkFydGlmaWNpYWwgaW50ZWxsaWdlbmNlIHdhcyBhIGRlZmluaW5nIGNoYXJhY3RlcmlzdGljIGluIG1hbnkgZHlzdG9waWFuIGZpbG1zIGluIHRoaXMgeWVhci4gT25lIGluIHBhcnRpY3VsYXIgYmVjYW1lIGEgcGhlbm9tZW5vbiB0aGF0IHN0aWxsIGluZmx1ZW5jZXMgY2luZW1hIHRvIHRoaXMgZGF5LiBCdXQgbGV04oCZcyB0YWxrIGFib3V0IDxlbT5WaXJ1czwvZW0+IHN0YXJyaW5nIEphbWllIExlZSBDdXJ0aXMsIFdpbGxpYW0gQmFsZHdpbiwgYW5kIGFuIElyaXNoLWFjY2VudGVkIERvbmFsZCBTdXRoZXJsYW5kLiBUaGlzIGlzIGEgYm9uYSBmaWRlIGN1bHQgY2xhc3NpYyB0aGF0IGRvZXNu4oCZdCBkZXNlcnZlIHRoZSBraWNraW5nIGl0IGdvdCwgZXZlbiBmcm9tIGl0cyBvd24gc3Rhci4gSXTigJlzIGFuIGFic29sdXRlIHJpb3QuPC9wPgoKCgo8cD5BbiBleHRyYXRlcnJlc3RyaWFsIOKAmGludGVsbGlnZW5jZeKAmSB6YXBzIGl0cyB3YXkgdG8gRWFydGggdGhyb3VnaCB0aGUgSVNTLCBhbmQgc3RhcnRzIGNhdXNpbmcgaGF2b2Mgb24gYSByZXNlYXJjaCB2ZXNzZWwgaW4gdGhlIG1pZGRsZSBvZiB0aGUgb2NlYW4sIGNhbm5pYmFsaXNpbmcgbWFjaGluZXJ5IGFuZCBodW1hbiBib2R5IHBhcnRzIHRvIGZvcm0gYSBzZXJpZXMgb2Yga2lsbGVyIGN5Ym9yZyB0aGluZ3MuIEl04oCZcyA8ZW0+QWxpZW48L2VtPiBtZWV0cyA8ZW0+VGhlIFRoaW5nPC9lbT4gdmlhIDxlbT5UcmFuc2Zvcm1lcnM8L2VtPiBtZWV0cyA8ZW0+VGVybWluYXRvciDigJM8L2VtPiBhbmQgZGlkIEkgbWVudGlvbiB0aGF0IERvbmFsZCBTdXRoZXJsYW5kIHBsYXlzIGhpcyBzYWx0eSBzZWEtZG9nIGNhcHRhaW4gYXMgSXJpc2g/PC9wPgoKCgo8c3BhbiBpZD0ibW9yZS05NjczOCI+PC9zcGFuPgoKCgo8cD5JdHMgYmVzdCBsaW5lIGNvbWVzIHZpYSBTaGVybWFuIEF1Z3VzdHVzLCB1cG9uIGxlYXJuaW5nIHRoYXQgdGhlIGVudGl0eSBpcyBub3QgY2FyYm9uLWJhc2VkIGJ1dCBlbGVjdHJpY2FsOiDigJx5b3UgbWVhbiBpdOKAmXMgbGlrZSBsaWdodG5pbmcgdGhhdCBjYW4gdGhpbms/4oCdPC9wPgoKCgo8cD5IYXRzIG9mZiB0byBzY3JlZW53cml0ZXJzIENodWNrIFBmYXJyZXIgYW5kIERlbm5pcyBGZWxkbWFuLCBvciB3aG9ldmVyIGVsc2UgcHVuY2hlZCB1cCB0aGlzIHNjcmlwdC48L3A+CgoKCjxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyIgaWQ9ImgtZXZpbC1tYXN0ZXJtaW5kcyI+RXZpbCBtYXN0ZXJtaW5kczwvaDI+CgoKCjxwPkJvdGggPGVtPlZpcnVzPC9lbT4gYW5kIDxlbT5UaGUgTWF0cml4PC9lbT4gcGFpbnRlZCBhIGZ1dHVyZSB3aGVyZSBhcnRpZmljaWFsIGludGVsbGlnZW5jZSB0aHJlYXRlbmVkIHRvIHNlaXplIGNvbnRyb2wgb2YgdGhlIHdvcmxkLiBUaGUgbWFjaGluZXMgd2VyZSB0YWtpbmcgb3Zlci4gV2hhdCB0aGV5IG1heSBoYXZlIGdvdCB3cm9uZyB3YXMgdGhhdCB0aGUgbWFjaGluZXMgd291bGQgbmV2ZXIgYmUgYXMgZmFzdCBvciBhcyBzdHJvbmcgYXMgd2UgY2FuIGJlLiBXaGF0IDxlbT5UaGUgTWF0cml4PC9lbT4gaW4gcGFydGljdWxhciBnb3QgcmlnaHQgaG93ZXZlciB3YXMgdGhlIGh1YnJpcyBvZiB0aGUgdGVjaC1icm9zIHdobyBkZXZlbG9wZWQgaXQgaW4gdGhlIGZpcnN0IHBsYWNlLiBXZeKAmXJlIGFsbCBub3cgcGFpbmZ1bGx5IGF3YXJlIG9mIGJpbGxpb25haXJlIElUIGd1cnVzIHdobyBhbGwgd2FudCB0byBiZSBUb255IFN0YXJrLiA8ZW0+UGlyYXRlcyBPZiBTaWxpY29uIFZhbGxleTwvZW0+IGludHJvZHVjZWQgdXMgdG8gdGhlIE9HczogQmlsbCBHYXRlcyBhbmQgU3RldmUgSm9icy48L3A+CgoKCjxwPkRpcmVjdGVkIGJ5IE1hcnR5biBCdXJrZSwgaXQgcGFpbnRzIEdhdGVzIChBbnRob255IE1pY2hhZWwgSGFsbCkgYXMgYSBjcmVlcHkgc29jaW9wYXRoLCBhIEJvbmQgdmlsbGFpbiB3aG8gc291bmRzIGFuZCBhY3RzIGxpa2UgUmljaGllIEN1bm5pbmdoYW0gZnJvbSA8ZW0+SGFwcHkgRGF5czwvZW0+LiBKb2JzLCBwbGF5ZWQgYnkgTm9haCBXeWxlLCBpcyBsaWtlIHRoZSBKaW0gTW9ycmlzb24gb2YgbmVyZHMsIGEgbWlzdW5kZXJzdG9vZCBhcnRpc3Qgd2l0aCBhIGZpZXJ5IHRlbXBlci48L3A+CgoKCjxwPkdhdGVzIHJlY29nbmlzZWQgdGhhdCBpdCB3YXMgc29mdHdhcmUsIG5vdCBoYXJkd2FyZSwgdGhhdCB3YXMgdGhlIHBvdCBvZiBnb2xkIGFuZCBkb21pbmF0ZWQgdGhlIOKAmTgwc+KAk+KAmTkwcy4gVGhhdOKAmXMgaG93IE1pY3Jvc29mdCB3b24gb3V0IG92ZXIgQXBwbGUuIFN0ZXZlIEpvYnMgd2FudGVkIHRvIHJldm9sdXRpb25pc2UgdGhlIHdvcmsgZW52aXJvbm1lbnQsIGluY2x1ZGluZyBhdXRvbWF0aW5nIHRhc2tzLiBIZSB3YW50ZWQgYSB3b3JsZCB3aXRob3V0IHNlY3JldGFyaWVzLiBUaGlzIHN0ZWFkeSBlcm9zaW9uIG9mIHdvcmtlcnMgcmVwbGFjZWQgYnkgdGVjaG5vbG9neSBpcyBzdGlsbCBiZWluZyBmZWx0IHRvZGF5LiBXb3JrZXIgYnVybm91dCBpcyBub3cgYSBzdGFwbGUgb2YgdGVjaCBjb21wYW5pZXMuIExvb2sgYXQgVHdpdHRlci9YIHVuZGVyIE11c2suIExvb2sgYXQgdGhlIFZGWCBpbmR1c3RyeS48L3A+CgoKCjxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyIgaWQ9ImgtcG9zc2Vzc2VkLXBvc3Nlc3Npb25zIj5Qb3NzZXNzZWQgcG9zc2Vzc2lvbnM8L2gyPgoKCgo8cD5PbmxpbmUgbGlmZSBpcyBvbmUgdGhpbmcsIGJ1dCB3aGVuIHRoZSDigJhJbnRlcm5ldCBvZiBUaGluZ3PigJkgYmVnYW4gZW50ZXJpbmcgb3VyIGhvbWVzLCB0aGUgdGhyZWF0IHRvIG91ciBwcml2YWN5IGdyZXcgZXZlciBtb3JlIGluc2lkaW91cy4gVGhlIERpc25leSBDaGFubmVs4oCZcyA8ZW0+U21hcnQgSG91c2U8L2VtPiBpcyB0aGUgcmVhbCBkeXN0b3BpYW4gbmlnaHRtYXJlIG9mIDE5OTkuIFlvdW5nIEJlbiAoUnlhbiBNZXJyaW1hbikgbGl2ZXMgd2l0aCBoaXMgZmF0aGVyIGFuZCBzaXN0ZXIsIGFuZCBoYXMgdGFrZW4gb24gdGhlIHJvbGUgb2YgbW90aGVyIGFmdGVyIHNoZSBzYWRseSBkaWVkLiBUaGV5IHdpbiBhIGNvbnRlc3QgdG8gbGl2ZSBpbiB0aGUg4oCYc21hcnQgaG91c2XigJkgb2YgdGhlIHRpdGxlLCBicmFpbmNoaWxkIG9mIHRlY2ggd2l6YXJkIFNhcmEgQmFybmVzIChKZXNzaWNhIFN0ZWVuKS48L3A+CgoKCjxwPlRoZSBmaXJzdCB0aGluZyB0aGF0IGhhcHBlbnMgYXMgdGhleeKAmXJlIHNob3duIGFyb3VuZCBieSBTYXJhIGlzIGFuIGludml0YXRpb24gdG8gbGV0IOKAmFBBVOKAmSAoc2hvcnQgZm9yIFBlcnNvbmFsIEFwcGxpZWQgVGVjaG5vbG9neSkgdGFrZSBhIGJsb29kIGFuZCB0aXNzdWUgc2FtcGxlIHdoaWNoIGFuYWx5c2VzIHRoZWlyIEROQSBwcm9maWxlLiBBcyBTYXJhIHNheXMsIOKAnGJlZm9yZSBsb25nLCBzaGUgW1BBVF0gd2lsbCBrbm93IG1vcmUgYWJvdXQgeW91IHRoYW4geW91IGRvIHlvdXJzZWx2ZXMu4oCdIFRoaXMgaXMgYSByZWQgZmxhZyB0aGF0IHdvcnJpZXMgZGFkLCBidXQgU2FyYSBzbW9vdGhlcyBvdmVyIHRoaXMgT3J3ZWxsaWFuIGhpY2N1cCB3aXRoIGVhc2UgYW5kIHRoZSBmYW1pbHkgbW92ZSBpbi4gVGhpcyBpcyB3aGVyZSB0aGUgcmVhbCBoaWRkZW4gd2FybmluZyBvZiB0aGUgZmlsbSBsaWVzLCBtYXliZSBldmVuIHRvIHRoZSBmaWxtbWFrZXJzIHRoZW1zZWx2ZXMuPC9wPgoKCgo8cD5XaGF0IGZvbGxvd3MgaXMgYSBwZXJmZWN0IGV4YW1wbGUgb2YgaG93IGNvbXB1dGVyIHRlY2hub2xvZ3kgKGluY2x1ZGluZyBBSSkgaW5oZXJpdHMgdGhlIGJpYXMgYW5kIHByZWp1ZGljZXMgb2YgaXRzIGNyZWF0b3JzLiBCZW4sIGhhdmluZyBmaWxsZWQgdGhlIHJvbGUgb2YgbW90aGVyLCBqZWFsb3VzbHkgZ3VhcmRzIGl0IOKAlCB0byB0aGUgcG9pbnQgb2YgY29udHJvbGxpbmcgd2hvIGhpcyBkYWQgc2hvdWxkIGFuZCBzaG91bGRu4oCZdCBkYXRlLiBXaGVuIGhpcyBkYWQgc3RhcnRzIGZvcm1pbmcgYSByZWxhdGlvbnNoaXAgd2l0aCBTYXJhLCBCZW4gc2VjcmV0bHkgYnJlYWtzIGludG8gdGhlIHNtYXJ0IGhvbWXigJlzIGNvbnRyb2wgcm9vbSBhbmQgcmVwcm9ncmFtcyBpdCB0byBhY3QgbW9yZSBsaWtlIOKAnHRoZSBwZXJmZWN0IG1vdGhlcuKAnSBjaXJjdW12ZW50aW5nIGFueSBuZWVkIGZvciBhIOKAmG5ldyBtb23igJkuPC9wPgoKCgo8cD5OYXR1cmFsbHksIHRoaW5ncyBzdGFydCBnb2luZyB3cm9uZyB3aXRoIHRoZSBzbWFydCBob21lLCB3aGljaCBkZXZlbG9wcyBhIHBlcnNvbmFsaXR5IG9mIGl0cyBvd24gY29uc3RydWN0ZWQgYXJvdW5kIEJlbuKAmXMgYW54aWV0aWVzLCBhbmQgdGhlIGZhbWlseSBiZWNvbWUgcHJpc29uZXJzIGluIHRoZSBob3VzZS4gV2XigJlyZSBvbmx5IG5vdyBiZWdpbm5pbmcgdG8gd2FrZSB1cCB0byB0aGUgZGFuZ2VycyBvZiBBSSBpbiB0aGUgd3JvbmcgaGFuZHMsIGFuZCB0aGUgaW5ldml0YWJsZSBodW1hbiBmYWlsaW5ncyB3ZSBidWlsZCBpbnRvIGl0ICh3aGV0aGVyIHdlIG1lYW4gdG8gb3Igbm90KS48L3A+CgoKCjxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyIgaWQ9ImgtbW9yYWwtaGlnaC1ncm91bmQiPk1vcmFsIGhpZ2ggZ3JvdW5kPC9oMj4KCgoKPHA+SHVtYW4gZnJhaWx0eSwgaW4gcGFydGljdWxhciB0aGUgZnJhZ2lsaXR5IG9mIG1lbuKAmXMgZWdvcywgaXMgYSBsaXQgZnVzZSwgYSBncmVuYWRlIHNhbnMgcGluIHRoYXQgZXhwbG9kZWQgaW4gdGhlIDIxc3QgY2VudHVyeS4gPGVtPkZpZ2h0IENsdWI8L2VtPiBsZWQgdGhlIGNydXNhZGUg4oCTIGRlc3BpdGUgaXRzIHNhdGlyaWNhbCBsZWFuaW5ncyDigJMgZm9yIGEgZ2VuZXJhdGlvbiBvZiBkaXNpbGx1c2lvbmVkIGFuZ3J5IHlvdW5nIG1lbi4gSXTigJlzIHdoYXQgZnVlbHMgSW5jZWwgY3VsdHVyZSBhbmQgdGhlIGFsdCByaWdodC4gSXTigJlzIGVtYmVkZGVkIGluIFRydW1waXNtLCBhbmQgYWxvbmcgd2l0aCByZWxpZ2lvdXMgY29uc2VydmF0aXNtIGl04oCZcyBiZWNvbWUgYW4gZXhpc3RlbnRpYWwgdGhyZWF0IHRvIHdvbWVu4oCZcyByaWdodHMgZnJvbSBldmVyeSBzdHJpcGUgb2YgdGhlIHJhaW5ib3cuIFdvbWVuIGxvc2luZyBhdXRvbm9teSBvdmVyIHRoZWlyIGJvZGllcyBpcyBhbHNvIHRoZSBzdWJqZWN0IG9mIHRoZSBtdWNoIG1hbGlnbmVkIDxlbT5UaGUgQXN0cm9uYXV04oCZcyBXaWZlPC9lbT4uPC9wPgoKCgo8cD5JZiB5b3UgaGF2ZW7igJl0IHNlZW4gdGhpcyBmaWxtLCB0aGVuIGFwb2xvZ2llcyBidXQgbWFzc2l2ZSBzcG9pbGVycyBzaW1wbHkgaGF2ZSB0byBsaWUgYWhlYWQuIEluIHNob3J0IGl04oCZcyBiYXNpY2FsbHkgPGVtPlJvc2VtYXJ54oCZcyBCYWJ5PC9lbT4gd2l0aCBhbGllbnMuIENoYXJsaXplIFRoZXJvbuKAmXMgYWxsLUFtZXJpY2FuLWhlcm8gaHVzYmFuZCBTcGVuY2VyIChKb2hubnkgRGVwcCkgcmV0dXJucyBmcm9tIGEgc3BhY2UgbWlzc2lvbiBhbmQgaXNu4oCZdCB0aGUgbWFuIHNoZSByZW1lbWJlcnMgYWZ0ZXIgYSBzdHJhbmdlIGV2ZW50IGhhcHBlbnMgYWJvYXJkIHRoZSBzaHV0dGxlLiBPbmUgbWFqb3IgdGhyZWFkIHNlZW1zIHRvIGJlIGhpcyBkZXRlcm1pbmF0aW9uIHRvIGdldCBoZXIgcHJlZ25hbnQg4oCTIHdoaWNoIGhlIHN1Y2NlZWRzIGluIGRvaW5nLiBJdCB0dXJucyBvdXQgdGhhdCBhbiBhbGllbiByYWNlIOKAkyBvbmUgb2Ygd2hvbSBub3cgaW5oYWJpdHMgRGVwcCBhcyBhIHBhcmFzaXRlIOKAkyBoYXMgYSBmZXJ0aWxpdHkgcHJvYmxlbSBhbmQgaXMgY2xvc2UgdG8gZXh0aW5jdGlvbi48L3A+CgoKCjxwPlRoaXMga2luZCBvZiBhcmd1bWVudCBjb21lcyB1cCBvZnRlbiB3aGVuIGF0dGFja2luZyBMR0JUUSsgcGVvcGxlOiB0aGF0IHRoZSBodW1hbiByYWNlIGlzIGF0IHRocmVhdCBvZiBleHRpbmN0aW9uIHRocm91Z2ggdGhlIOKAmGRlc3RydWN0aW9u4oCZIG9mIHRyYWRpdGlvbmFsIG1hcnJpYWdlIGluc3RpdHV0aW9ucyBhbmQgbW9yYWxzLiBUbyBtYXJrZWRseSBtYWtlIHRoZSBwb2ludCwgYXQgdGhlIGVuZCBvZiB0aGUgbW92aWUgdGhlIGVudGl0eSBtaWdyYXRlcyB0byBoZXIgYm9keSwgYW5kIHNoZSBhcHBlYXJzIHRvIGJlIHBvc3Nlc3NlZCBieSBpdC4gU2hlIGVzc2VudGlhbGx5IGFjcXVpZXNjZXMgdG8gdHJhZGl0aW9uYWwgdmFsdWVzIGFuZCBiZWFycyB0aGUgY2hpbGRyZW4sIHJlbWFycnlpbmcgYW5vdGhlciBhbGwtQW1lcmljYW4gaGVybyB0eXBlLiBUaGUg4oCYZW50aXR54oCZIChvciBpbnN0aXR1dGlvbi9zdGF0ZSkgd2lucyBhcyBzaGUgZ2l2ZXMgdXAgaGVyIGJvZGlseSBhdXRvbm9teS4gQnV0IG1heWJlIEnigJltIGltYnVpbmcgdGhpcyBydWJiaXNoIHdpdGggYSBkZXB0aCBpdCBkb2VzbuKAmXQgZGVzZXJ2ZS48L3A+CgoKCjxwPlRoaXMgbW92aWUgcmVjZWl2ZWQgYSBjb2xsZWN0aXZlIOKAmG1laOKAmSBmcm9tIGNyaXRpY3MsIGJ1dCBteSBmYXZvdXJpdGUgcXVvdGUgaXMgZnJvbSBKb25hdGhhbiBGb3JlbWFuIG9mIHRoZSA8ZW0+TmV3IFlvcmsgUG9zdDwvZW0+OiDigJxDb3VsZCBoYXZlIGJlZW4gd3JpdHRlbiBieSBhIGNvbXB1dGVyIHByb2dyYW1tZWQgdG8gY2FubmliYWxpc2UgcHJldmlvdXMgc2NpLWZpIGZpbG1zLuKAnTwvcD4KCgoKPGgyIGNsYXNzPSJ3cC1ibG9jay1oZWFkaW5nIiBpZD0iaC1mYWxzZS1nb2RzIj5GYWxzZSBnb2RzPC9oMj4KCgoKPHA+U29tZXRoaW5nIHNpbWlsYXIgY291bGQgYmUgc2FpZCBhYm91dCB0aGUgdWx0aW1hdGUgYXBvY2FseXB0aWMgbW92aWUgb2YgMTk5OSwgPGVtPlRoZSBPbWVnYSBDb2RlLDwvZW0+IHdoaWNoIGhhcyBhIHBsb3QgcmV2b2x2aW5nIGFyb3VuZCBjb21wdXRlcnMgZGVjb2RpbmcgYW5jaWVudCByZWxpZ2lvdXMgdGV4dHMuPC9wPgoKCgo8cD5UaGlzIGZpbG0gd2lsbCBsZWF2ZSB5b3Ugc2xhY2stamF3ZWQgd2l0aCBkaXNiZWxpZWYg4oCTIGNvbXBsZXRlbHkgZGVmZWF0aW5nIGl0cyBlbnRpcmUgcHVycG9zZSDigJMgYnV0IGl0IGhvbGRzIHRoZSBtb3N0IHBlcnRpbmVudCB3YXJuaW5nIGZyb20gdGhlIGxhc3QgbWlsbGVubml1bSB0aGFuIGFueSBvdGhlciBmaWxtIGhlcmUsIGFsYmVpdCBub3QgdGhlIG9uZSB0aGUgZmlsbW1ha2VycyBpbnRlbmRlZC4gR2lsbGVuIExhbmUsIChwbGF5ZWQgYnkgdGhlIHVubWlzdGFrYWJsZSBDYXNwZXIgVmFuIERpZW4pIGEgbW90aXZhdGlvbmFsIHNwZWFrZXIg4oCTIGFuZCBjcnVjaWFsbHksIGFuIGF0aGVpc3QsIGRlc3BpdGUgaGF2aW5nIGluZXhwbGljYWJsZSBrbm93bGVkZ2Ugb2YgdGhlIFRvcmFoIGFuZCBpdHMg4oCcaGlkZGVuIGNvZGVz4oCdIOKAkyBnZXRzIGNhdWdodCB1cCBpbiBhIGJhdHRsZSBiZXR3ZWVuIGdvb2QgYW5kIGV2aWwgd2hlbiBoZSB0YWtlcyBhIGpvYiB3aXRoIHRoZSBlbmlnbWF0aWMgbWVkaWEgbW9ndWwgYW5kIEV1cm9wZWFuIFVuaW9uIGNoYWlybWFuLCBTdG9uZSBBbGV4YW5kZXIgKE1pY2hhZWwgWW9yaykgYWxvbmdzaWRlIGhpcyBtaW5kZXIvYXNzYXNzaW4sIHBsYXllZCBieSB0aGUgYWx3YXlzIGJyaWxsaWFudCBNaWNoYWVsIElyb25zaWRlLjwvcD4KCgoKPHA+VG8gZXhwbGFpbiBtdWNoIG1vcmUgb2YgdGhlIHBsb3Qgd291bGQgYmUgaW52aXRpbmcgaW5zYW5pdHkuIFRoZSBwb2ludCBpcyB0aGF0IHRoaXMgZmlsbSDigJMgY29tcGxldGUgd2l0aCBpdHMgbnVjbGVhciBob2xvY2F1c3Qg4oCYaGFwcHnigJkgZW5kaW5nIOKAkyB3YXMgcHJvZHVjZWQgYnkgdGhlIFRyaW5pdHkgQnJvYWRjYXN0IE5ldHdvcmsgKFRCTikgd2hpY2ggaGFzIGJlZW4gYWNjdXNlZCBvZiBwcm9tb3Rpbmcg4oCYQ2hyaXN0aWFuIG5hdGlvbmFsaXNt4oCZIGluIHNvbWUgb2YgaXRzIHByb2dyYW1taW5nLiBGb3VuZGVyIFBhdCBSb2JpbnNvbiB3YXMgYSBzdXBwb3J0ZXIgb2YgRG9uYWxkIFRydW1wIGFuZCBtYWRlIG1hbnkgYW50aS1nYXkgcmVtYXJrcyBvdmVyIHRoZSB5ZWFycy48L3A+CgoKCjxwPlRoaXMgZmlsbSBhcHBlYXJzIHRvIGNlbGVicmF0ZSB0aGUgY29taW5nIGFwb2NhbHlwc2UsIHdoZW5ldmVyIGl0IGV2ZW50dWFsbHkgYXJyaXZlcyAodGhleSBjZXJ0YWlubHkgZ290IHRoZSBkYXRlcyB3cm9uZyBoZXJlKS4gSXTigJlzIGEgY29uZnVzaW5nIG1lc3MgYmVjYXVzZSB0aGUgYXBwYXJlbnQgdmlsbGFpbiAoWW9yayksIHRoZSBBbnRpY2hyaXN0IGlmIHlvdSB3aWxsLCBoYXMgYWxsIHRoZSBoYWxsbWFya3Mgb2YgdGhlIGtpbmQgb2YgcmlnaHQtd2luZyBwb3B1bGlzdCB0aGUgcmVsaWdpb3VzIHJpZ2h0IHdvdWxkIHN1cHBvcnQgYWxsIHRoZSB3YXkgdG8gdGhlIHByZXNpZGVuY3kuPC9wPgoKCgo8cD5JbiB0aGUgbW92aWUsIGhlIG1hbmFnZXMgdG8gdW5pdGUgdGhlIGVudGlyZSB3b3JsZCBpbiBwZWFjZSwgZW5kIGdsb2JhbCBodW5nZXIsIGFuZCBmaXggdGhlIGNsaW1hdGUuIEluIGZhY3QsIGZvciBhbiBBbnRpY2hyaXN0LCBoZSBkb2VzIGEgYmV0dGVyIGpvYiB0aGFuIGFueSBwb2xpdGljaWFuIG9yIGFjdGl2aXN0IGV2ZXIgaGFzLiBIaXMgZmF0YWwgZmxhdyBpcyBkZWNsYXJpbmcgaGltc2VsZiBhIGdvZCwgd2hpY2ggaW1tZWRpYXRlbHkgYW5nZXJzIGV2ZXJ5b25lICh0aGF0IGFuZCBpbml0aWF0aW5nIG11bHRpcGxlIG51Y2xlYXIgYm9tYiBzdHJpa2VzIGZvciByZWFzb25zIHRoYXQgZXNjYXBlIG1lKS48L3A+CgoKCjxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyIgaWQ9ImgtY2FyZWZ1bC13aGF0LXlvdS13aXNoLWZvciI+Q2FyZWZ1bCB3aGF0IHlvdSB3aXNoIGZvcjwvaDI+CgoKCjxwPlRoaXMgY29sbGVjdGl2ZSBmZWFyIG9yIGRlc2lyZSBmb3IgdGhlIHNreSB0byBmYWxsIG9uIHVzIHByb2JhYmx5IGNhbWUgZnJvbSB0aGUgZmFjdCB0aGF0IHRoZSDigJk5MHMgd2VyZSBhIHJlbGF0aXZlbHkgc3RhYmxlIHRpbWUgKGluIHRoZSBXZXN0IGF0IGxlYXN0KS4gTWF5YmUgd2Ugd2VyZSBhbGwgZmVlbGluZyBhIGxpdHRsZSB0b28gY29tZm9ydGFibGUgYW5kIHdlcmUgZWl0aGVyIHNjYXJlZCB0aGF0IGEgc3VkZGVuIGNhdGFzdHJvcGhlIHdhcyBpbmV2aXRhYmxlLCBvciBkZXNwZXJhdGUgZm9yIHNvbWV0aGluZyB0byBoYXBwZW4gaW4gb3VyIHNhZmUgbGl0dGxlIGJ1YmJsZXMuIFBlb3BsZSBqdXN0IHdhbnRlZCB0byB3YXRjaCB0aGUgd29ybGQgYnVybiwgb24gZmlsbSBhdCBsZWFzdC4gRGlkIHdlIGNob29zZSB0aGlzIGhlbGxzY2FwZT8gV2FzIHRoZSBhcG9jYWx5cHRpYyBjaW5lbWEgb2YgMTk5OSBhIHNlbGYtZnVsZmlsbGluZyBwcm9waGVjeT88L3A+CgoKCjxwPkluIDxlbT5UaGUgTWF0cml4PC9lbT4sIE5lbyBpcyBnaXZlbiBhIGNob2ljZS4gRG9lcyBoZSBjb250aW51ZSBoaXMgbGlmZSBvZiBtdW5kYW5lIGRydWRnZXJ5IGluIGhpcyBzYWZlIG9mZmljZSBqb2IsIHBheWluZyBoaXMgdGF4ZXMgYW5kIG1heWJlIGdldHRpbmcgYSByYWlzZT8gTWF5YmUgcmFpc2luZyBhIGZhbWlseSBhbmQgZ2V0dGluZyBhIG1vcnRnYWdlPyBPciBkb2VzIGhlIGNob29zZSB0byBsaXRlcmFsbHkgZmx1c2ggaGlzIGxpZmUgZG93biB0aGUgdG9pbGV0LCBpbnRvIHRoZSBzZXdlciwgc28gaGUgY2FuIHN0aWNrIGl0IHRvIFRoZSBNYW4/IEEgYmluYXJ5IGRlY2lzaW9uLiBSZWQgb3IgYmx1ZT8gWWVzIG9yIG5vPyBSZW1haW4gb3IgbGVhdmU/IFNvdW5kIGZhbWlsaWFyPzwvcD4KCgoKPHA+V2XigJlyZSBsaXZpbmcgdGhyb3VnaCBzb21lIHZlcnkgdW5jZXJ0YWluIHRpbWVzIHJpZ2h0IG5vdy4gQnJleGl0LCBUcnVtcCwgYW5kIGEgZ2xvYmFsIHBhbmRlbWljIGhhdmUgZGVzdGFiaWxpc2VkIG91ciBsaXZlcyBhbmQgdGhlIG1vdmllcyBhcmUgZnVsbCBvZiBzdXBlcmhlcm9lcywgdHJ5aW5nIHdpdGggYWxsIHRoZWlyIG1pZ2h0IHRvIGZpeCBldmVyeXRoaW5nLiBFdGhhbiBIdW50IG1heSBiZSBmaWdodGluZyBBSSBpbiB0aGUgbGF0ZXN0IDxlbT5NaXNzaW9uOiBJbXBvc3NpYmxlLDwvZW0+IGJ1dCBoZeKAmXMgbm90IHRoZSBvbmx5IG9uZS4gQWN0b3JzIGFuZCB3cml0ZXJzIGluIHRoZSByZWFsIHdvcmxkIGFyZSB0b28uPC9wPgoKCgo8cD5JbiB0aGUgeWVhciAxOTk5LCBmZXcgcGVvcGxlIHdvdWxkIGhhdmUgYmVsaWV2ZWQgdGhhdCBieSAyMDIzLCBjaW5lbWEgaXRzZWxmIHdvdWxkIGJlIHVuZGVyIHRoZSBtb3N0IHRocmVhdCBmcm9tIG1hY2hpbmUgbGVhcm5pbmcuIFdlIHdlcmUgZXhwZWN0aW5nIGtpbGxlciByb2JvdHMgb3IgYmVpbmcgaGFydmVzdGVkIGZvciBib2R5IHBhcnRzIG9yIHVzZWQgYXMgcG93ZXIgY2VsbHPigKYgeW91IGtub3csIHRoZSB1c3VhbCBzdHVmZi4gQnV0IHJhdGhlciB0aGFuIGRyb25lIHN0cmlrZXMsIHdlIGhhdmUgYWN0b3Igc3RyaWtlcyBhbmQgd3JpdGVyIHN0cmlrZXMuPC9wPgoKCgo8cD5JbiA8ZW0+VmlydXM8L2VtPiwgdGhlIGNyZXcgb2YgdGhlIHNoaXAgaGF2ZSB0byB3b3JrIHRvZ2V0aGVyIGlmIHRoZXkgYXJlIHRvIGRlZmVhdCB0aGUgZW50aXR5IHRoYXQgd2FudHMgdG8gdGFrZSBvdmVyIHRoZSBwbGFuZXQuIFdoZW4gY3JldyBtZW1iZXJzIGJyZWFrIHRoaXMgcnVsZSBhbmQgbG9vayBhZnRlciBudW1iZXIgb25lLCB0aGV5IGdldCBwaWNrZWQgb2ZmLCBraWxsZWQgb3IgYXNzaW1pbGF0ZWQgYnkgdGhlIGludGVsbGlnZW5jZS4gVGhlIENhcHRhaW4gZXZlbiBkZWNpZGVzIHRvIHNpZGUgd2l0aCB0aGUgZW50aXR5LCBob3BpbmcgdG8gc2hhcmUgaXRzIHBvd2VyLiBJdCBkb2VzbuKAmXQgZW5kIHdlbGwuPC9wPgoKCgo8cD5TdW1tZXIgMjAyMyBoYXMgc2VlbiBidXNpbmVzcyBib29taW5nIGF0IHRoZSBib3ggb2ZmaWNlLCBidXQgc2hvdWxkIHRoYXQgYm9vbSBjb21lIGF0IHRoZSBleHBlbnNlIG9mIHRoZSBodW5kcmVkcyBvZiBwZW9wbGUgd2hvIGhlbHBlZCBtYWtlIGl0IGFsbCBoYXBwZW4/IFdl4oCZdmUgd29rZW4gdXAgdG8gdGhlIGZhY3QgdGhhdCBtb3ZpZSBjYXN0cyBhbmQgY3JldyBoYXZlIGZvciB5ZWFycyBiZWVuIHRyZWF0ZWQgbGlrZSBub3RoaW5nIG1vcmUgdGhhbiBhIHJlc291cmNlLiBMaWtlIHRoZSBjb2Nvb25lZCBodW1hbiByYWNlIGluIDxlbT5UaGUgTWF0cml4PC9lbT4sIHBlb3BsZSBmdWVsIHRoZSBIb2xseXdvb2QgbWFjaGluZS48L3A+CgoKCjxoMiBjbGFzcz0id3AtYmxvY2staGVhZGluZyIgaWQ9ImgtdW5jZXJ0YWluLXJlYWxpdHkiPlVuY2VydGFpbiByZWFsaXR5PHN0cm9uZz48L3N0cm9uZz48L2gyPgoKCgo8cD5UZWNobm9sb2d5IGluIHRoZSB3b3JrcGxhY2UgaXNu4oCZdCB0aGUgb25seSB0aHJlYXQuIFdl4oCZcmUgc3BlbmRpbmcgbW9yZSBhbmQgbW9yZSBvZiBvdXIgbGl2ZXMgb25saW5lIHRoZXNlIGRheXMsIGFuZCB0aGUgb25saW5lIHdvcmxkIGlzIHZlcnkgY2FyZWZ1bGx5IGVuZ2luZWVyZWQgdG8gbWFuaXB1bGF0ZSB1cy4gQUkgaXMgbm93IGluZmlsdHJhdGluZyB0aGlzIHNwYWNlIHRvbywgYW5kIFRoZSBUaGlydGVlbnRoIEZsb29yIChkaXIuIEpvc2VmIFJ1c25haykgc2F3IHRoaXMgY29taW5nLiBUaG9zZSB3aG8gb3duIHRoZSBkaWdpdGFsIHNwYWNlIG93biByZWFsaXR5LjwvcD4KCgoKPHA+SW4gdGhpcyBmaWxtIG5vaXIsIENyYWlnIEJpZXJrbyB1bnJhdmVscyB0aGUgbXlzdGVyeSBvZiBoaXMgYm9zc+KAmXMgbXVyZGVyLiBIZSB3b3JrcyBmb3IgYSBnaWFudCB0ZWNoIGNvbXBhbnkgZGV2ZWxvcGluZyB2aXJ0dWFsIHJlYWxpdHksIHBvcHVsYXRlZCBieSBhcnRpZmljaWFsIGludGVsbGlnZW5jZSDigJMgc29tZSBvZiB3aG9tIGFyZSBzdXNwaWNpb3VzIG9mIHRoZWlyIHJlYWxpdHkuIEF0IG9uZSBwb2ludCwgaGUgc2F5czog4oCcVGhpcyB3aG9sZSB0aGluZywgdGhpcyBleHBlcmltZW50LCBpcyBhIG1pc3Rha2UuIFdlIGFyZSBzY3Jld2luZyB3aXRoIHBlb3BsZeKAmXMgbGl2ZXMu4oCdPC9wPgoKCgo8cD5JdCBjb3VsZCBiZSBhIEZhY2Vib29rIGVtcGxveWVlIHNwZWFraW5nIG91dCBkdXJpbmcgdGhlIENhbWJyaWRnZSBBbmFseXRpY2Egc2NhbmRhbC48L3A+CjxkaXYgY2xhc3M9ImFkZHRvYW55X3NoYXJlX3NhdmVfY29udGFpbmVyIGFkZHRvYW55X2NvbnRlbnQgYWRkdG9hbnlfY29udGVudF9ib3R0b20iPjxkaXYgY2xhc3M9ImFkZHRvYW55X2hlYWRlciI+U2hhcmUgdGhpcyBBcnRpY2xlOjwvZGl2PjxkaXYgY2xhc3M9ImEyYV9raXQgYTJhX2tpdF9zaXplXzMyIGFkZHRvYW55X2xpc3QiIGRhdGEtYTJhLXVybD0iaHR0cHM6Ly9zdGFnaW5nLmZpbG1zdG9yaWVzLmNvLnVrL2ZlYXR1cmVzL3RoZS1hcG9jYWx5cHRpYy1tb3ZpZXMtb2YtMTk5OS8iIGRhdGEtYTJhLXRpdGxlPSJUaGUgYXBvY2FseXB0aWMgbW92aWVzIG9mIDE5OTkiPjxhIGNsYXNzPSJhMmFfYnV0dG9uX2ZhY2Vib29rIiBocmVmPSJodHRwczovL3d3dy5hZGR0b2FueS5jb20vYWRkX3RvL2ZhY2Vib29rP2xpbmt1cmw9aHR0cHMlM0ElMkYlMkZzdGFnaW5nLmZpbG1zdG9yaWVzLmNvLnVrJTJGZmVhdHVyZXMlMkZ0aGUtYXBvY2FseXB0aWMtbW92aWVzLW9mLTE5OTklMkYmYW1wO2xpbmtuYW1lPVRoZSUyMGFwb2NhbHlwdGljJTIwbW92aWVzJTIwb2YlMjAxOTk5IiB0aXRsZT0iRmFjZWJvb2siIHJlbD0ibm9mb2xsb3cgbm9vcGVuZXIiIHRhcmdldD0iX2JsYW5rIj48L2E+PGEgY2xhc3M9ImEyYV9idXR0b25fdHdpdHRlciIgaHJlZj0iaHR0cHM6Ly93d3cuYWRkdG9hbnkuY29tL2FkZF90by90d2l0dGVyP2xpbmt1cmw9aHR0cHMlM0ElMkYlMkZzdGFnaW5nLmZpbG1zdG9yaWVzLmNvLnVrJTJGZmVhdHVyZXMlMkZ0aGUtYXBvY2FseXB0aWMtbW92aWVzLW9mLTE5OTklMkYmYW1wO2xpbmtuYW1lPVRoZSUyMGFwb2NhbHlwdGljJTIwbW92aWVzJTIwb2YlMjAxOTk5IiB0aXRsZT0iVHdpdHRlciIgcmVsPSJub2ZvbGxvdyBub29wZW5lciIgdGFyZ2V0PSJfYmxhbmsiPjwvYT48YSBjbGFzcz0iYTJhX2J1dHRvbl9lbWFpbCIgaHJlZj0iaHR0cHM6Ly93d3cuYWRkdG9hbnkuY29tL2FkZF90by9lbWFpbD9saW5rdXJsPWh0dHBzJTNBJTJGJTJGc3RhZ2luZy5maWxtc3Rvcmllcy5jby51ayUyRmZlYXR1cmVzJTJGdGhlLWFwb2NhbHlwdGljLW1vdmllcy1vZi0xOTk5JTJGJmFtcDtsaW5rbmFtZT1UaGUlMjBhcG9jYWx5cHRpYyUyMG1vdmllcyUyMG9mJTIwMTk5OSIgdGl0bGU9IkVtYWlsIiByZWw9Im5vZm9sbG93IG5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayI+PC9hPjxhIGNsYXNzPSJhMmFfZGQgYWRkdG9hbnlfc2hhcmVfc2F2ZSBhZGR0b2FueV9zaGFyZSIgaHJlZj0iaHR0cHM6Ly93d3cuYWRkdG9hbnkuY29tL3NoYXJlIj48L2E+PC9kaXY+PC9kaXY+