It is 1880. The American Civil War has raged for nearly two decades, driving technology in strange and terrible directions. Combat dirigibles skulk across the sky and armored vehicles crawl along the land. Military scientists twist the laws of man and nature, and barter their souls for weapons powered by light, fire, and steam.
But life struggles forward for soldiers and ordinary citizens. The fractured nation is dotted with stricken towns and epic scenes of devastation—some manmade, and some more mysterious. In the western territories cities are swallowed by gas and walled away to rot while the frontiers are strip-mined for resources. On the borders between North and South, spies scour and scheme, and smugglers build economies more stable than their governments.
This is the Clockwork Century. It is dark here, and different.
Includes Clockwork Century 1-5 and 1 short story.
Audio Sample Player
Social Media Share Widgets
Purchase Options
Format Information
ALL DOWNLOAD FORMATS INCLUDE LISTENING TO THE TITLE IN GRAPHICAUDIO ACCESS™ APP ON ANDROID AND APPLE IOS DEVICES! LEARN MORE.
GraphicAudio is available in various high quality digital audio formats.
Listen with Access App Only - Download our app for Apple iOS & Android. App Device Compatibility: Android phones with OS 5 or later and iPhone, iPad, and iPod touch with iOS 9.0 or later. The Access App Only option does not include a zip download.
MP3 (256kbps) - Download the zip file and Play with any media player. You also get to Listen with GraphicAudio Access App. This is the most common audio download format that will play on any computer or media player. The average size of this download will be around 600 MB.
M4B (256kbps) - Download the zip file and Play with Apple Music, iPhone, iPod and iPad. You also get to Listen with GraphicAudio Access App. This format will work only in iTunes, Quicktime, on a Mac computer, or on an iOS device such as iPhone or iPad. M4B's have the ability to bookmark in some audio apps. The M4B download is one complete file, so it is not split up into smaller parts. The average size of this download will be around 600 MB.
FLAC (16 bit / 44.1 khz) - Download the zip file and Play with VLC or other high quality audio software. You also get to Listen with GraphicAudio Access App. This a studio-quality lossless digital audio format. This means that it does not lose data like other types of compressed audio files. Lossless compression still retains low-level resolution of a standard CD. The advantage of FLAC is that it takes up less room on your computer than an WAV (CD files). The average size of this download will be around 2,000 MB (2 GB).
FLAC 5.1 SURROUND (16 bit / 44.1 khz) - Download the zip file and Play with 5.1 Surround Sound Home Theater systems or other high quality surround sound audio software. You also get to listen to stereo version with the GraphicAudio Access App. The average size of this download will be around 4,500 MB (4.5 GB).
How do I un-zip my download?
When you download the file, it arrives on your computer in a compressed format called zip. Before you can add the audio files to your library and listen to it, you'll need to decompress, or "unzip" it. Doing so is very easy: If you're on a PC, right-click the file and choose Extract All... You're done. If you're on a Mac, double-click the file and it extracts into a separate folder next to where the other file is located.
My zip download says it's expired. What now?
Click here to send a customer support ticket to us. Please include the order number if you have it.
6 Titles In This Set - See AllSee Fewer
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIxOTMtNzE5NTYxNDU2Ij4KICAgIDxzcGFuIGNsYXNzPSJwcm9kdWN0LWltYWdlLXdyYXBwZXIiPgogICAgICAgIDxpbWcgY2xhc3M9InByb2R1Y3QtaW1hZ2UtcGhvdG8iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXByb2R1Y3Qtc2t1PSJDQzAxIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LW5hbWU9IlEyeHZZMnQzYjNKcklFTmxiblIxY25rZ01Ub2dRbTl1WlhOb1lXdGxjZz09IgogICAgICAgICAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3LmdyYXBoaWNhdWRpby5uZXQvbWVkaWEvY2F0YWxvZy9wcm9kdWN0L2NhY2hlL2NlNjkyMzk0YmMzMWRiZTQxN2Y5ZDA0ZWI2NzgwMjM4L2MvbC9jbG9ja3dvcmtfY2VudHVyeV8xX2JvbmVzaGFrZXJfMl8xLmpwZyIKICAgICAgICAgICAgbG9hZGluZz0ibGF6eSIKICAgICAgICAgICAgd2lkdGg9IjIwMCIKICAgICAgICAgICAgaGVpZ2h0PSIyMDAiCiAgICAgICAgICAgIGFsdD0iQ2xvY2t3b3JrJiN4MjA7Q2VudHVyeSYjeDIwOzEmI3gzQTsmI3gyMDtCb25lc2hha2VyIi8+PC9zcGFuPgo8L3NwYW4+CjxzdHlsZT4ucHJvZHVjdC1pbWFnZS1jb250YWluZXItMjE5My03MTk1NjE0NTYgewogICAgd2lkdGg6IDIwMHB4Owp9Ci5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci0yMTkzLTcxOTU2MTQ1NiBzcGFuLnByb2R1Y3QtaW1hZ2Utd3JhcHBlciB7CiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsKfTwvc3R5bGU+PHNjcmlwdCB0eXBlPSJ0ZXh0JiN4MkY7amF2YXNjcmlwdCI+cHJvZEltYWdlQ29udGFpbmVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci0yMTkzLTcxOTU2MTQ1NiIpOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNbaV0uc3R5bGUud2lkdGggPSAiMjAwcHgiOwp9CnByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIxOTMtNzE5NTYxNDU2ICBzcGFuLnByb2R1Y3QtaW1hZ2Utd3JhcHBlciIKKTsKZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVyc1tpXS5zdHlsZS5wYWRkaW5nQm90dG9tID0gIjEwMCUiOwp9PC9zY3JpcHQ+PC9kaXY+Cgo8aDEgY2xhc3M9InByb2R1Y3QtbmFtZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlcmllcy1uYW1lIj5DbG9ja3dvcmsgQ2VudHVyeTwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVwaXNvZGUtbmFtZSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibnVtYmVyIj4xIDo8L3NwYW4+ICAgICAgICAgICAgICAgIEJvbmVzaGFrZXIgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9oMT4KCjxkaXYgY2xhc3M9InByb2R1Y3QtYXV0aG9yIj4KICAgIGJ5IENoZXJpZSBQcmllc3Q8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJtaW5pLWF0dHJpYnV0ZXMiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtcmVsZWFzZWRhdGUiPgogICAgICAgICAgICAgICAgPGxhYmVsPlJlbGVhc2UgRGF0ZTo8L2xhYmVsPiBNYXkgMSwgMjAxNCAgICAgICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtcnVubmluZ3RpbWUiPgogICAgICAgICAgICAgICAgPGxhYmVsPkFwcHJveGltYXRlIFJ1bm5pbmcgVGltZTo8L2xhYmVsPiA4IEhvdXJzCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtY29udGVudHJhdGluZyI+CiAgICAgICAgICAgICAgICA8bGFiZWw+Q29udGVudCBSYXRpbmc6PC9sYWJlbD4gQWdlcyAxMysgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CgogICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICA8ZGl2IGNsYXNzPSJzdGQiPkluIHRoZSBlYXJseSBkYXlzIG9mIHRoZSBDaXZpbCBXYXIsIHJ1bW9ycyBvZiBnb2xkIGluIHRoZSBmcm96ZW4gS2xvbmRpa2UgYnJvdWdodCBob3JkZXMgb2YgbmV3Y29tZXJzIHRvIHRoZSBQYWNpZmljIE5vcnRod2VzdC4gQW54aW91cyB0byBjb21wZXRlLCBSdXNzaWFuIHByb3NwZWN0b3JzIGNvbW1pc3Npb25lZCBpbnZlbnRvciBMZXZpdGljdXMgQmx1ZSB0byBjcmVhdGUgYSBncmVhdCBtYWNoaW5lIHRoYXQgY291bGQgbWluZSB0aHJvdWdoIEFsYXNrYeKAmXMgaWNlLiBUaHVzIHdhcyBEci4gQmx1ZeKAmXMgSW5jcmVkaWJsZSBCb25lLVNoYWtpbmcgRHJpbGwgRW5naW5lIGJvcm4uPGJyIC8+DQo8YnIgLz4NCkJ1dCBvbiBpdHMgZmlyc3QgdGVzdCBydW4gdGhlIEJvbmVzaGFrZXIgd2VudCB0ZXJyaWJseSBhd3J5LCBkZXN0cm95aW5nIHNldmVyYWwgYmxvY2tzIG9mIGRvd250b3duIFNlYXR0bGUgYW5kIHVuZWFydGhpbmcgYSBzdWJ0ZXJyYW5lYW4gdmVpbiBvZiBibGlnaHQgZ2FzIHRoYXQgdHVybmVkIGFueW9uZSB3aG8gYnJlYXRoZWQgaXQgaW50byB0aGUgbGl2aW5nIGRlYWQuPGJyIC8+DQo8YnIgLz4NCk5vdyBpdCBpcyBzaXh0ZWVuIHllYXJzIGxhdGVyLCBhbmQgYSB3YWxsIGhhcyBiZWVuIGJ1aWx0IHRvIGVuY2xvc2UgdGhlIGRldmFzdGF0ZWQgYW5kIHRveGljIGNpdHkuIEp1c3QgYmV5b25kIGl0IGxpdmVzIEJsdWXigJlzIHdpZG93LCBCcmlhciBXaWxrZXMuIExpZmUgaXMgaGFyZCB3aXRoIGEgcnVpbmVkIHJlcHV0YXRpb24gYW5kIGEgdGVlbmFnZWQgYm95IHRvIHN1cHBvcnQsIGJ1dCBzaGUgYW5kIEV6ZWtpZWwgYXJlIG1hbmFnaW5nLiBVbnRpbCBFemVraWVsIHVuZGVydGFrZXMgYSBzZWNyZXQgY3J1c2FkZSB0byByZXdyaXRlIGhpc3RvcnkuPGJyIC8+DQo8YnIgLz4NCkhpcyBxdWVzdCB3aWxsIHRha2UgaGltIHVuZGVyIHRoZSB3YWxsIGFuZCBpbnRvIGEgY2l0eSB0ZWVtaW5nIHdpdGggcmF2ZW5vdXMgdW5kZWFkLCBhaXIgcGlyYXRlcywgY3JpbWluYWwgb3ZlcmxvcmRzLCBhbmQgaGVhdmlseSBhcm1lZCByZWZ1Z2Vlcy4gQW5kIG9ubHkgQnJpYXIgY2FuIGJyaW5nIGhpbSBvdXQgYWxpdmUuICAgICAgICA8L2Rpdj4KICAgPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvcHlyaWdodCI+CiAgICBDb3B5cmlnaHQgwqkgMjAwOSBieSBDaGVyaWUgUHJpZXN0LiBQdWJsaXNoZWQgYnkgYXJyYW5nZW1lbnQgd2l0aCBUb20gRG9oZXJ0eSBBc3NvY2lhdGVzLCBMTEMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuIFB1Ymxpc2hlZCBieSBhcnJhbmdlbWVudCB3aXRoIHRoZSBEb25hbGQgTWFzcyBMaXRlcmFyeSBBZ2VuY3kuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuIOKElyAyMDE0IGJ5IFRoZSBDdXR0aW5nIENvcnBvcmF0aW9uLiBBbGwgUmlnaHRzIFJlc2VydmVkLjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1lZGlhLXBsYXllciI+CiAgICAgICAgPGF1ZGlvIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzdHlsZT0id2lkdGg6IDEwMCU7IiBzcmM9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL0NDMDEubXAzIiB0eXBlPSJhdWRpby9tcGVnIj4KICAgICAgICA8IS0tIGZhbGxiYWNrIGZvciBub24gc3VwcG9ydGluZyBicm93c2VycyBnb2VzIGhlcmUgLS0+CiAgICAgICAgPHA+WW91ciBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgSFRNTDUuIFlvdSBjYW4gPGEgaHJlZj0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvQ0MwMS5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIyNzUtMTQ2MTc3NjY2OCI+CiAgICA8c3BhbiBjbGFzcz0icHJvZHVjdC1pbWFnZS13cmFwcGVyIj4KICAgICAgICA8aW1nIGNsYXNzPSJwcm9kdWN0LWltYWdlLXBob3RvIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LXNrdT0iQ0MwMiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcHJvZHVjdC1uYW1lPSJRMnh2WTJ0M2IzSnJJRU5sYm5SMWNua2dNam9nUkhKbFlXUnViM1ZuYUhRPSIKICAgICAgICAgICAgICAgICAgICAgICAgc3JjPSJodHRwczovL3d3dy5ncmFwaGljYXVkaW8ubmV0L21lZGlhL2NhdGFsb2cvcHJvZHVjdC9jYWNoZS9jZTY5MjM5NGJjMzFkYmU0MTdmOWQwNGViNjc4MDIzOC9jL2MvY2MwMl8xLmpwZyIKICAgICAgICAgICAgbG9hZGluZz0ibGF6eSIKICAgICAgICAgICAgd2lkdGg9IjIwMCIKICAgICAgICAgICAgaGVpZ2h0PSIyMDAiCiAgICAgICAgICAgIGFsdD0iQ2xvY2t3b3JrJiN4MjA7Q2VudHVyeSYjeDIwOzImI3gzQTsmI3gyMDtEcmVhZG5vdWdodCIvPjwvc3Bhbj4KPC9zcGFuPgo8c3R5bGU+LnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIyNzUtMTQ2MTc3NjY2OCB7CiAgICB3aWR0aDogMjAwcHg7Cn0KLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIyNzUtMTQ2MTc3NjY2OCBzcGFuLnByb2R1Y3QtaW1hZ2Utd3JhcHBlciB7CiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsKfTwvc3R5bGU+PHNjcmlwdCB0eXBlPSJ0ZXh0JiN4MkY7amF2YXNjcmlwdCI+cHJvZEltYWdlQ29udGFpbmVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci0yMjc1LTE0NjE3NzY2NjgiKTsKZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9kSW1hZ2VDb250YWluZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzW2ldLnN0eWxlLndpZHRoID0gIjIwMHB4IjsKfQpwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKAogICAgIi5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci0yMjc1LTE0NjE3NzY2NjggIHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIgopOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycy5sZW5ndGg7IGkrKykgewogICAgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzW2ldLnN0eWxlLnBhZGRpbmdCb3R0b20gPSAiMTAwJSI7Cn08L3NjcmlwdD48L2Rpdj4KCjxoMSBjbGFzcz0icHJvZHVjdC1uYW1lIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VyaWVzLW5hbWUiPkNsb2Nrd29yayBDZW50dXJ5PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXBpc29kZS1uYW1lIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJudW1iZXIiPjIgOjwvc3Bhbj4gICAgICAgICAgICAgICAgRHJlYWRub3VnaHQgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9oMT4KCjxkaXYgY2xhc3M9InByb2R1Y3QtYXV0aG9yIj4KICAgIGJ5IENoZXJpZSBQcmllc3Q8L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJtaW5pLWF0dHJpYnV0ZXMiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtcmVsZWFzZWRhdGUiPgogICAgICAgICAgICAgICAgPGxhYmVsPlJlbGVhc2UgRGF0ZTo8L2xhYmVsPiBKdWwgMSwgMjAxNCAgICAgICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtcnVubmluZ3RpbWUiPgogICAgICAgICAgICAgICAgPGxhYmVsPkFwcHJveGltYXRlIFJ1bm5pbmcgVGltZTo8L2xhYmVsPiA3IEhvdXJzCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtY29udGVudHJhdGluZyI+CiAgICAgICAgICAgICAgICA8bGFiZWw+Q29udGVudCBSYXRpbmc6PC9sYWJlbD4gQWdlcyAxMysgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CgogICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICA8ZGl2IGNsYXNzPSJzdGQiPk51cnNlIE1lcmN5IEx5bmNoIGlzIGVsYm93cyBkZWVwIGluIGJsb29keSBsYXVuZHJ5IGF0IGEgd2FyIGhvc3BpdGFsIGluIFJpY2htb25kLCBWaXJnaW5pYSwgd2hlbiBDbGFyYSBCYXJ0b24gY29tZXMgYmVhcmluZyBiYWQgbmV3czogTWVyY3nigJlzIGh1c2JhbmQgaGFzIGRpZWQgaW4gYSBQT1cgY2FtcC4gT24gdG9wIG9mIHRoYXQsIGEgdGVsZWdyYW0gZnJvbSB0aGUgd2VzdCBjb2FzdCBkZWNsYXJlcyB0aGF0IGhlciBlc3RyYW5nZWQgZmF0aGVyIGlzIGdyYXZlbHkgaW5qdXJlZCwgYW5kIGhlIHdpc2hlcyB0byBzZWUgaGVyLiBNZXJjeSBzZXRzIG91dCB0b3dhcmQgdGhlIE1pc3Npc3NpcHBpIFJpdmVyLiBPbmNlIHRoZXJlLCBzaGXigJlsbCBjYXRjaCBhIHRyYWluIG92ZXIgdGhlIFJvY2tpZXMgYW5k4oCUaWYgdGhlIHRlbGVncmFtIGNhbiBiZSBiZWxpZXZlZOKAlGJlIGdyZWV0ZWQgaW4gV2FzaGluZ3RvbiBUZXJyaXRvcnkgYnkgdGhlIHNoZXJpZmYsIHdobyB3aWxsIHRha2UgaGVyIHRvIHNlZSBoZXIgZmF0aGVyIGluIFNlYXR0bGUuPGJyIC8+DQo8YnIgLz4NClJlYWNoaW5nIHRoZSBNaXNzaXNzaXBwaSBpcyBhIGhhcnJvd2luZyBhZHZlbnR1cmUgYnkgZGlyaWdpYmxlIGFuZCByYWlsIHRocm91Z2ggd2FyLXRvcm4gYm9yZGVyIHN0YXRlcy4gV2hlbiBNZXJjeSBmaW5hbGx5IGFycml2ZXMgaW4gU3QuIExvdWlzLCB0aGUgb25seSBUYWNvbWEtYm91bmQgdHJhaW4gaXMgcHVsbGVkIGJ5IGEgdGVycmlmeWluZyBVbmlvbi1vcGVyYXRlZCBzdGVhbSBlbmdpbmUgY2FsbGVkIHRoZSBEcmVhZG5vdWdodC4gUmVsdWN0YW50bHksIE1lcmN5IGJ1eXMgYSB0aWNrZXQgYW5kIGNsaW1icyBhYm9hcmQuPGJyIC8+DQo8YnIgLz4NCldoYXQgb3VnaHQgdG8gYmUgYSBxdWlldCB0cmlwIHR1cm5zIGRlYWRseSB3aGVuIHRoZSB0cmFpbiBpcyBiZXNldCBieSBidXNod2hhY2tlcnMsIHRoZW4gdmlnb3JvdXNseSBhdHRhY2tlZCBieSBhIGJhbmQgb2YgUmViZWwgc29sZGllcnMuIFRoZSB0cmFpbiBpcyBtb3ZpbmcgYXdheSBmcm9tIGJhdHRsZSBsaW5lcyBpbnRvIHRoZSB2YXN0LCB1bmluY29ycG9yYXRlZCB3ZXN0LCBzbyBNZXJjeSBjYW7igJl0IGltYWdpbmUgd2h5IHRoZXnigJlyZSBzbyBpbnRlcmVzdGVkLiBQZXJoYXBzIHRoZSBteXN0ZXJpb3VzIGNhcmdvIHNlY3JldGVkIGluIHRoZSBzZWNvbmQgYW5kIGxhc3QgdHJhaW4gY2FycyBoYXMgc29tZXRoaW5nIHRvIGRvIHdpdGggaXQ/PGJyIC8+DQo8YnIgLz4NCk1lcmN5IGlzIGp1c3QgYSBmcnVzdHJhdGVkIG51cnNlIHdobyB3YW50cyB0byBzZWUgaGVyIGZhdGhlciBiZWZvcmUgaGUgZGllcy4gQnV0IHNoZeKAmWxsIGhhdmUgdG8gc3Vydml2ZSBib3RoIFVuaW9uIGludHJpZ3VlIGFuZCBDb25mZWRlcmF0ZSBvcHBvc2l0aW9uIGlmIHNoZSB3YW50cyB0byBtYWtlIGl0IG9mZiB0aGUgRHJlYWRub3VnaHQgYWxpdmUuICAgICAgICA8L2Rpdj4KICAgPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvcHlyaWdodCI+CiAgICBDb3B5cmlnaHQgwqkgMjAxMCBieSBDaGVyaWUgUHJpZXN0LiBQdWJsaXNoZWQgYnkgYXJyYW5nZW1lbnQgd2l0aCBUb20gRG9oZXJ0eSBBc3NvY2lhdGVzLCBMTEMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuIFB1Ymxpc2hlZCBieSBhcnJhbmdlbWVudCB3aXRoIHRoZSBEb25hbGQgTWFzcyBMaXRlcmFyeSBBZ2VuY3kuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuIOKElyAyMDE0IGJ5IFRoZSBDdXR0aW5nIENvcnBvcmF0aW9uLiBBbGwgUmlnaHRzIFJlc2VydmVkLjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1lZGlhLXBsYXllciI+CiAgICAgICAgPGF1ZGlvIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzdHlsZT0id2lkdGg6IDEwMCU7IiBzcmM9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL0NDMDIubXAzIiB0eXBlPSJhdWRpby9tcGVnIj4KICAgICAgICA8IS0tIGZhbGxiYWNrIGZvciBub24gc3VwcG9ydGluZyBicm93c2VycyBnb2VzIGhlcmUgLS0+CiAgICAgICAgPHA+WW91ciBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgSFRNTDUuIFlvdSBjYW4gPGEgaHJlZj0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvQ0MwMi5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIzMDgtMjAyNzQyMjgzOCI+CiAgICA8c3BhbiBjbGFzcz0icHJvZHVjdC1pbWFnZS13cmFwcGVyIj4KICAgICAgICA8aW1nIGNsYXNzPSJwcm9kdWN0LWltYWdlLXBob3RvIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LXNrdT0iQ0MwMyIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcHJvZHVjdC1uYW1lPSJRMnh2WTJ0M2IzSnJJRU5sYm5SMWNua2dNem9nUjJGdWVXMWxaR1U9IgogICAgICAgICAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3LmdyYXBoaWNhdWRpby5uZXQvbWVkaWEvY2F0YWxvZy9wcm9kdWN0L2NhY2hlL2NlNjkyMzk0YmMzMWRiZTQxN2Y5ZDA0ZWI2NzgwMjM4L2MvYy9jYzAzXzEuanBnIgogICAgICAgICAgICBsb2FkaW5nPSJsYXp5IgogICAgICAgICAgICB3aWR0aD0iMjAwIgogICAgICAgICAgICBoZWlnaHQ9IjIwMCIKICAgICAgICAgICAgYWx0PSJDbG9ja3dvcmsmI3gyMDtDZW50dXJ5JiN4MjA7MyYjeDNBOyYjeDIwO0dhbnltZWRlIi8+PC9zcGFuPgo8L3NwYW4+CjxzdHlsZT4ucHJvZHVjdC1pbWFnZS1jb250YWluZXItMjMwOC0yMDI3NDIyODM4IHsKICAgIHdpZHRoOiAyMDBweDsKfQoucHJvZHVjdC1pbWFnZS1jb250YWluZXItMjMwOC0yMDI3NDIyODM4IHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIHsKICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOwp9PC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQmI3gyRjtqYXZhc2NyaXB0Ij5wcm9kSW1hZ2VDb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIzMDgtMjAyNzQyMjgzOCIpOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNbaV0uc3R5bGUud2lkdGggPSAiMjAwcHgiOwp9CnByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIzMDgtMjAyNzQyMjgzOCAgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIiCik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnNbaV0uc3R5bGUucGFkZGluZ0JvdHRvbSA9ICIxMDAlIjsKfTwvc2NyaXB0PjwvZGl2PgoKPGgxIGNsYXNzPSJwcm9kdWN0LW5hbWUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJpZXMtbmFtZSI+Q2xvY2t3b3JrIENlbnR1cnk8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJlcGlzb2RlLW5hbWUiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im51bWJlciI+MyA6PC9zcGFuPiAgICAgICAgICAgICAgICBHYW55bWVkZSAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2gxPgoKPGRpdiBjbGFzcz0icHJvZHVjdC1hdXRob3IiPgogICAgYnkgQ2hlcmllIFByaWVzdDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1pbmktYXR0cmlidXRlcyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1yZWxlYXNlZGF0ZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+UmVsZWFzZSBEYXRlOjwvbGFiZWw+IFNlcCAxLCAyMDE0ICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1ydW5uaW5ndGltZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+QXBwcm94aW1hdGUgUnVubmluZyBUaW1lOjwvbGFiZWw+IDYgSG91cnMKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1jb250ZW50cmF0aW5nIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5Db250ZW50IFJhdGluZzo8L2xhYmVsPiBBZ2VzIDEzKyAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgIDxkaXYgY2xhc3M9InN0ZCI+VGhlIGFpciBwaXJhdGUgQW5kYW4gQ2x5IGlzIGdvaW5nIHN0cmFpZ2h0LiBXZWxsLCBzdHJhaWdodGVyLiBBbHRob3VnaCBoZeKAmXMgaGFwcHkgdG8gcnVuIGFsY29ob2wgZ3VucyB3aGVyZXZlciB0aGUgbW9uZXnigJlzIGdvb2QsIGhlIGRvZXNu4oCZdCB0aGluayB0aGUgd29ybGQgbmVlZHMgbW9yZSBzYXAsIG9yIGl0cyBpbmNyZWFzaW5nbHkgdWdseSBzaWRlLWVmZmVjdHMuIEJ1dCBiZWNvbWluZyBsZWdpdCBpcyBlYXNpZXIgc2FpZCB0aGFuIGRvbmUsIGFuZCBDbHnigJlzIGZpcnN0IGxlZ2FsIGdpZ+KAlGEgc3VwcGx5IHJ1biBmb3IgdGhlIFNlYXR0bGUgVW5kZXJncm91bmTigJR3aWxsIGJlIHBhaWQgZm9yIGJ5IHNhcCBtb25leS48YnIgLz4NCjxiciAvPg0KTmV3IE9ybGVhbnMgaXMgbm90IENseeKAmXMgZmlyc3QgcGljayBmb3IgYSBzaG9wcGluZyBydW4uIEhlIGxvdmVkIHRoZSBCaWcgRWFzeSBvbmNlLCBiYWNrIHdoZW4gaGUgYWxzbyBsb3ZlZCBhIGJlYXV0aWZ1bCBtaXhlZC1yYWNlIHByb3N0aXR1dGUgbmFtZWQgSm9zZXBoaW5lIEVhcmx54oCUYnV0IHRoYXQgd2FzIGEgZGVjYWRlIGFnbywgYW5kIGhlIGhhc27igJl0IGxvb2tlZCBiYWNrIHNpbmNlLiBKb+KAmXMgc3RpbGwgdGhpbmtpbmcgYWJvdXQgaGltLCB0aG91Z2gsIG9yIHNvIGhlIGxlYXJucyB3aGVuIGhlIGdldHMgYSB0ZWxlZ3JhbSBhYm91dCBhIHBlY3VsaWFyIHBpbG90aW5nIGpvYi4gSXTigJlzIGEgY2hhbmNlIHRvIGNvbXBsZXRlIHR3byBsdWNyYXRpdmUgam9icyBhdCBvbmNlLCBvbmUgaGUgY2Fu4oCZdCByZWZ1c2UuIEhlIHNlbmRzIGhpcyBvbGQgcGFyYW1vdXIgYSBub3RlIGFuZCBoZWFkcyBmb3IgTmV3IE9ybGVhbnMsIHdpdGggbm8gaWRlYSBvZiB3aGF0IGhl4oCZcyBpbiBmb3LigJRvciB3aGF0IHNoZSB3YW50cyBoaW0gdG8gZmx5LjxiciAvPg0KPGJyIC8+DQpCdXQgaGUgd29u4oCZdCBiZSBmbHlpbmcuIE5vdCBleGFjdGx5LiBIaWRkZW4gYXQgdGhlIGJvdHRvbSBvZiBMYWtlIFBvbnRjaGFydHJhaW4gbHVya3MgYW4gYXN0b25pc2hpbmcgd2FyIG1hY2hpbmUsIGFuIGltbWVuc2Ugc3VibWVyc2libGUgY2FsbGVkIHRoZSBHYW55bWVkZS4gVGhpcyBwcm90b3R5cGUgY291bGQgZW5kIHRoZSB3YXIsIGlmIG9ubHkgYW55b25lIGhhZCB0aGUgZmFpbnRlc3QgaWRlYSBvZiBob3cgdG8gb3BlcmF0ZSBpdOKApi4gSWYgb25seSB0aGV5IGNvdWxkIHNuZWFrIGl0IHBhc3QgdGhlIFNvdXRoZXJuIGZvcmNlcyBhdCB0aGUgbW91dGggb2YgdGhlIE1pc3Npc3NpcHBpIFJpdmVy4oCmIElmIG9ubHkgaXQgaGFkbuKAmXQga2lsbGVkIG1vc3Qgb2YgdGhlIG1lbiB3aG/igJlkIGV2ZXIgc2V0IGZvb3QgaW5zaWRlIGl0LiA8YnIgLz4NCjxiciAvPg0KQnV0IGl04oCZcyB0aG9zZSDigJxpZiBvbmx5c+KAnSB0aGF0IHdpbGwgZGVjaWRlIHdoZXRoZXIgQ2x5IGFuZCBoaXMgY3JldyB3aWxsIGVuZCB1cCBpbiB0aGUgaGlzdG9yeSBib29rcywgb3IgYXQgdGhlIGJvdHRvbSBvZiB0aGUgb2NlYW4uICAgICAgICA8L2Rpdj4KICAgPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvcHlyaWdodCI+CiAgICBDb3B5cmlnaHQgwqkgMjAxMSBieSBDaGVyaWUgUHJpZXN0LiBQdWJsaXNoZWQgYnkgYXJyYW5nZW1lbnQgd2l0aCBUb20gRG9oZXJ0eSBBc3NvY2lhdGVzLCBMTEMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuIFB1Ymxpc2hlZCBieSBhcnJhbmdlbWVudCB3aXRoIHRoZSBEb25hbGQgTWFzcyBMaXRlcmFyeSBBZ2VuY3kuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuIOKElyAyMDE0IGJ5IFRoZSBDdXR0aW5nIENvcnBvcmF0aW9uLiBBbGwgUmlnaHRzIFJlc2VydmVkLjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1lZGlhLXBsYXllciI+CiAgICAgICAgPGF1ZGlvIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzdHlsZT0id2lkdGg6IDEwMCU7IiBzcmM9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL0NDMDMubXAzIiB0eXBlPSJhdWRpby9tcGVnIj4KICAgICAgICA8IS0tIGZhbGxiYWNrIGZvciBub24gc3VwcG9ydGluZyBicm93c2VycyBnb2VzIGhlcmUgLS0+CiAgICAgICAgPHA+WW91ciBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgSFRNTDUuIFlvdSBjYW4gPGEgaHJlZj0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvQ0MwMy5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIzNTQtMTM3NTM4NzM3Ij4KICAgIDxzcGFuIGNsYXNzPSJwcm9kdWN0LWltYWdlLXdyYXBwZXIiPgogICAgICAgIDxpbWcgY2xhc3M9InByb2R1Y3QtaW1hZ2UtcGhvdG8iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXByb2R1Y3Qtc2t1PSJDQzA0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LW5hbWU9IlEyeHZZMnQzYjNKcklFTmxiblIxY25rZ05Eb2dWR2hsSUVsdVpYaHdiR2xqWVdKc1pYTT0iCiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz0iaHR0cHM6Ly93d3cuZ3JhcGhpY2F1ZGlvLm5ldC9tZWRpYS9jYXRhbG9nL3Byb2R1Y3QvY2FjaGUvY2U2OTIzOTRiYzMxZGJlNDE3ZjlkMDRlYjY3ODAyMzgvYy9jL2NjMDRfMS5qcGciCiAgICAgICAgICAgIGxvYWRpbmc9ImxhenkiCiAgICAgICAgICAgIHdpZHRoPSIyMDAiCiAgICAgICAgICAgIGhlaWdodD0iMjAwIgogICAgICAgICAgICBhbHQ9IkNsb2Nrd29yayYjeDIwO0NlbnR1cnkmI3gyMDs0JiN4M0E7JiN4MjA7VGhlJiN4MjA7SW5leHBsaWNhYmxlcyIvPjwvc3Bhbj4KPC9zcGFuPgo8c3R5bGU+LnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIzNTQtMTM3NTM4NzM3IHsKICAgIHdpZHRoOiAyMDBweDsKfQoucHJvZHVjdC1pbWFnZS1jb250YWluZXItMjM1NC0xMzc1Mzg3Mzcgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIgewogICAgcGFkZGluZy1ib3R0b206IDEwMCU7Cn08L3N0eWxlPjxzY3JpcHQgdHlwZT0idGV4dCYjeDJGO2phdmFzY3JpcHQiPnByb2RJbWFnZUNvbnRhaW5lcnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIucHJvZHVjdC1pbWFnZS1jb250YWluZXItMjM1NC0xMzc1Mzg3MzciKTsKZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9kSW1hZ2VDb250YWluZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzW2ldLnN0eWxlLndpZHRoID0gIjIwMHB4IjsKfQpwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKAogICAgIi5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci0yMzU0LTEzNzUzODczNyAgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIiCik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnNbaV0uc3R5bGUucGFkZGluZ0JvdHRvbSA9ICIxMDAlIjsKfTwvc2NyaXB0PjwvZGl2PgoKPGgxIGNsYXNzPSJwcm9kdWN0LW5hbWUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJpZXMtbmFtZSI+Q2xvY2t3b3JrIENlbnR1cnk8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJlcGlzb2RlLW5hbWUiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im51bWJlciI+NCA6PC9zcGFuPiAgICAgICAgICAgICAgICBUaGUgSW5leHBsaWNhYmxlcyAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2gxPgoKPGRpdiBjbGFzcz0icHJvZHVjdC1hdXRob3IiPgogICAgYnkgQ2hlcmllIFByaWVzdDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1pbmktYXR0cmlidXRlcyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1yZWxlYXNlZGF0ZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+UmVsZWFzZSBEYXRlOjwvbGFiZWw+IE5vdiAxLCAyMDE0ICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1ydW5uaW5ndGltZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+QXBwcm94aW1hdGUgUnVubmluZyBUaW1lOjwvbGFiZWw+IDYgSG91cnMKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1jb250ZW50cmF0aW5nIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5Db250ZW50IFJhdGluZzo8L2xhYmVsPiBBZ2VzIDEzKyAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgIDxkaXYgY2xhc3M9InN0ZCI+UmVjdG9yIOKAnFdyZWNrIOKAmGVt4oCdIFNoZXJtYW4gd2FzIG9ycGhhbmVkIGFzIGEgdG9kZGxlciBpbiB0aGUgQmxpZ2h0IG9mIDE4NjMsIGJ1dCB0aGF0IHdhcyB5ZWFycyBhZ28uIFdyZWNrIGhhcyBncm93biB1cCwgYW5kIG9uIGhpcyBlaWdodGVlbnRoIGJpcnRoZGF5LCBoZeKAmWxsIGJlIGNhc3Qgb3V0IG91dCBvZiB0aGUgb3JwaGFuYWdlLiBBbmQgV3JlY2vigJlzIHByb2JsZW1zIGFyZW4ndCBtZXJlbHkgYWJvdXQgZmluZGluZyBhIGhvbWUuIEhl4oCZcyBiZWVuIHF1aWV0bHkgYnJlYWtpbmcgdGhlIGNhcmRpbmFsIHJ1bGUgb2YgYW55IGdvb2QgZHJ1ZyBkZWFsZXIgYW5kIGRpcHBpbmcgaW50byBoaXMgb3duIHN1cHBseSBvZiB0aGUgc2FwIGhlIHNlbGxzLiBIZeKAmXMgYWxzbyBwcmV0dHkgc3VyZSBoZeKAmXMgYmVpbmcgaGF1bnRlZCBieSB0aGUgZ2hvc3Qgb2YgYSBraWQgaGUgdXNlZCB0byBrbm934oCUWmVrZSBXaWxrZXMsIHdobyBhbG1vc3QgY2VydGFpbmx5IGRpZWQgc2l4IG1vbnRocyBhZ28uIFpla2Ugd291bGQgaGF2ZSBldmVyeSByZWFzb24gdG8gcGVzdGVyIFdyZWNrLCBzaW5jZSBXcmVjayBnb3QgaGltIGluc2lkZSB0aGUgd2FsbGVkIGNpdHkgb2YgU2VhdHRsZSBpbiB0aGUgZmlyc3QgcGxhY2UsIGFuZCB0aGF0IHdhcyBwcm9iYWJseSB3aGF0IGtpbGxlZCBoaW0uTWF5YmUgaXTigJlzIG9ubHkgYSBndWlsdHkgY29uc2NpZW5jZSwgYnV0IFdyZWNrIGNhbuKAmXQgdGFrZSBpdCBhbnltb3JlLCBzbyBoZSBzbmVha3Mgb3ZlciB0aGUgd2FsbC48YnIgLz4NCiA8YnIgLz4NClRoZSB3YWxsZWQtb2ZmIHdhc3RlbGFuZCBvZiBTZWF0dGxlIGlzIGV2ZXJ5IGJpdCBhcyBiYWQgYXMgaGXigJlkIGhlYXJkLCBjaG9jay1mdWxsIG9mIHRoZSBodW5ncnkgdW4tZGVhZCBhbmQgdXR0ZXJseSBjaG9rZWQgYnkgdGhlIHBvaXNvbm91cywgaW5lc2NhcGFibGUgeWVsbG93IGdhcy4gQW5kIHRoZW4gdGhlcmUncyB0aGUgbW9uc3Rlci4gUmVjdG9yJ3MgcHJldHR5IGNlcnRhaW4gdGhhdCB3aGF0ZXZlciBhdHRhY2tlZCBoaW0gd2FzIG5vdCBhdCBhbGwgaHVtYW7igJRhbmQgbm90IGEgcm90dGVyLCBlaXRoZXIuIEFybXMgZmFyIHRvbyBsb25nLiBQb3N0dXJlIGFsbCBzdHJhbmdlLiBFeWVzIGFsbCB3aWxkIGFuZCBmYWludGx5IGdsb3dpbmcgZ29sZCBhbmQga25vd24gdG8gdGhlIGxvY2FscyBhcyBzaW1wbHkgIiJUaGUgSW5leHBsaWNhYmxlcy4iIjxiciAvPg0KIDxiciAvPg0KSW4gdGhlIHByb2Nlc3Mgb2YgdHJhY2tpbmcgZG93biB0aGVzZSBjcmVhdHVyZXMsIFJlY3RvciBjb21lcyBhY3Jvc3MgYW5vdGhlciBpbmN1cnNpb24gdGhyb3VnaCB0aGUgd2FsbOKAlGp1c3QgYXMgYml6YXJyZSBidXQgZW50aXJlbHkgYXR0cmlidXRhYmxlIHRvIGh1bWFuIGdyZWVkLiBJdCBzZWVtcyBzb21lIG91dHNpZGVycyBoYXZlIGRlY2lkZWQgIHRoZXJlJ3MgZ29sZCB0byBiZSBmb3VuZCBpbiB0aGUgY2l0eSBhbmQgdGhleSdyZSB3aWxsaW5nIHRvIGRvIHdoYXRldmVyIGl0IHRha2VzIHRvIGdldCBhIHBpZWNlIG9mIHRoZSBwaWUgdW5sZXNzIFJlY3RvciBhbmQgaGlzIHBvc3NlIGhhdmUgYW55dGhpbmcgdG8gZG8gd2l0aCBpdC4gICAgICAgIDwvZGl2PgogICA8L2Rpdj4KCjxkaXYgY2xhc3M9InByb2R1Y3QtY29weXJpZ2h0Ij4KICAgIENvcHlyaWdodCDCqSAyMDEyIGJ5IENoZXJpZSBQcmllc3QuIFB1Ymxpc2hlZCBieSBhcnJhbmdlbWVudCB3aXRoIFRvbSBEb2hlcnR5IEFzc29jaWF0ZXMsIExMQy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4gUHVibGlzaGVkIGJ5IGFycmFuZ2VtZW50IHdpdGggdGhlIERvbmFsZCBNYXNzIExpdGVyYXJ5IEFnZW5jeS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4g4oSXIDIwMTQgYnkgVGhlIEN1dHRpbmcgQ29ycG9yYXRpb24uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWVkaWEtcGxheWVyIj4KICAgICAgICA8YXVkaW8gY29udHJvbHMgcHJlbG9hZD0ibWV0YWRhdGEiIHN0eWxlPSJ3aWR0aDogMTAwJTsiIHNyYz0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvQ0MwNC5tcDMiIHR5cGU9ImF1ZGlvL21wZWciPgogICAgICAgIDwhLS0gZmFsbGJhY2sgZm9yIG5vbiBzdXBwb3J0aW5nIGJyb3dzZXJzIGdvZXMgaGVyZSAtLT4KICAgICAgICA8cD5Zb3VyIGJyb3dzZXIgZG9lcyBub3Qgc3VwcG9ydCBIVE1MNS4gWW91IGNhbiA8YSBocmVmPSJodHRwczovL3MzLmFtYXpvbmF3cy5jb20vZ3JhcGhpY2F1ZGlvc2FtcGxlcy9DQzA0Lm1wMyI+ZG93bmxvYWQgdGhlIGF1ZGlvIHNhbXBsZTwvYT4uPC9wPgogICAgICAgIDwvYXVkaW8+CiAgICA8L2Rpdj4KIAoKPC9kaXY+
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIzODAtOTA2MjI0MzAyIj4KICAgIDxzcGFuIGNsYXNzPSJwcm9kdWN0LWltYWdlLXdyYXBwZXIiPgogICAgICAgIDxpbWcgY2xhc3M9InByb2R1Y3QtaW1hZ2UtcGhvdG8iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXByb2R1Y3Qtc2t1PSJDQzA1IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LW5hbWU9IlEyeHZZMnQzYjNKcklFTmxiblIxY25rZ05Ub2dSbWxrWkd4bGFHVmhaQT09IgogICAgICAgICAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3LmdyYXBoaWNhdWRpby5uZXQvbWVkaWEvY2F0YWxvZy9wcm9kdWN0L2NhY2hlL2NlNjkyMzk0YmMzMWRiZTQxN2Y5ZDA0ZWI2NzgwMjM4L2MvYy9jYzA1XzEuanBnIgogICAgICAgICAgICBsb2FkaW5nPSJsYXp5IgogICAgICAgICAgICB3aWR0aD0iMjAwIgogICAgICAgICAgICBoZWlnaHQ9IjIwMCIKICAgICAgICAgICAgYWx0PSJDbG9ja3dvcmsmI3gyMDtDZW50dXJ5JiN4MjA7NSYjeDNBOyYjeDIwO0ZpZGRsZWhlYWQiLz48L3NwYW4+Cjwvc3Bhbj4KPHN0eWxlPi5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci0yMzgwLTkwNjIyNDMwMiB7CiAgICB3aWR0aDogMjAwcHg7Cn0KLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIzODAtOTA2MjI0MzAyIHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIHsKICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOwp9PC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQmI3gyRjtqYXZhc2NyaXB0Ij5wcm9kSW1hZ2VDb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIzODAtOTA2MjI0MzAyIik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVycy5sZW5ndGg7IGkrKykgewogICAgcHJvZEltYWdlQ29udGFpbmVyc1tpXS5zdHlsZS53aWR0aCA9ICIyMDBweCI7Cn0KcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgKICAgICIucHJvZHVjdC1pbWFnZS1jb250YWluZXItMjM4MC05MDYyMjQzMDIgIHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIgopOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycy5sZW5ndGg7IGkrKykgewogICAgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzW2ldLnN0eWxlLnBhZGRpbmdCb3R0b20gPSAiMTAwJSI7Cn08L3NjcmlwdD48L2Rpdj4KCjxoMSBjbGFzcz0icHJvZHVjdC1uYW1lIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VyaWVzLW5hbWUiPkNsb2Nrd29yayBDZW50dXJ5PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXBpc29kZS1uYW1lIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJudW1iZXIiPjUgOjwvc3Bhbj4gICAgICAgICAgICAgICAgRmlkZGxlaGVhZCAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2gxPgoKPGRpdiBjbGFzcz0icHJvZHVjdC1hdXRob3IiPgogICAgYnkgQ2hlcmllIFByaWVzdDwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1pbmktYXR0cmlidXRlcyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1yZWxlYXNlZGF0ZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+UmVsZWFzZSBEYXRlOjwvbGFiZWw+IEphbiAxLCAyMDE1ICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1ydW5uaW5ndGltZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+QXBwcm94aW1hdGUgUnVubmluZyBUaW1lOjwvbGFiZWw+IDYgSG91cnMKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1jb250ZW50cmF0aW5nIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5Db250ZW50IFJhdGluZzo8L2xhYmVsPiBBZ2VzIDEzKyAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgIDxkaXYgY2xhc3M9InN0ZCI+WW91bmcgZXgtc2xhdmUgR2lkZW9uIEJhcmRzbGV5IGlzIGEgYnJpbGxpYW50IGludmVudG9yLCBidXQgdGhlIGpvYiBpcyBsZXNzIGdsYW1vcm91cyB0aGFuIG9uZSBtaWdodCB0aGluaywgZXNwZWNpYWxseSBzaW5jZSB0aGUgYXNzYXNzaW5hdGlvbiBhdHRlbXB0cyBzdGFydGVkLiBXb3JzZSB5ZXQsIHRoZXkncmUgdHJ5aW5nIHRvIGRlc3Ryb3kgaGlzIGdyZWF0ZXN0IGFjaGlldmVtZW50OiBhIGNhbGN1bGF0aW5nIGVuZ2luZSBjYWxsZWQgRmlkZGxlaGVhZCwgd2hpY2ggcHJvdmlkZXMgdW5kZW5pYWJsZSBwcm9vZiBvZiBzb21ldGhpbmcgYXdmdWwgZW5vdWdoIHRvIGRlc3Ryb3kgdGhlIHdvcmxkLiBCb3RoIG1hbiBhbmQgbWFjaGluZSBhcmUgYXQgcmlzayBmcm9tIGZvcmNlcyBjb25zcGlyaW5nIHRvIGtlZXAgdGhlIENpdmlsIFdhciBnb2luZyBhbmQgdGhlIG1vbmV5IGZsb3dpbmcuPGJyIC8+DQo8YnIgLz4NCkJhcmRzbGV5IGhhcyBubyBjaG9pY2UgYnV0IHRvIGFzayBoaXMgcGF0cm9uLCBmb3JtZXIgcHJlc2lkZW50IEFicmFoYW0gTGluY29sbiwgZm9yIGhlbHAuICBMaW5jb2xuIHJldGlyZWQgZnJvbSBsZWFkaW5nIHRoZSBjb3VudHJ5IGFmdGVyIGFuIGF0dGVtcHQgb24gaGlzIGxpZmUsIGJ1dCBpcyBxdWl0ZSBpbnRlcmVzdGVkIGluIEJhcmRzbGV54oCZcyBpbW1lbnNlIGRhdGEtcHJvY2Vzc2luZyBjYXBhY2l0aWVzLCBjb25maWRlbnQgdGhhdCBpZiBwZW9wbGUgaGF2ZSB0aGUgZmFjdHMsIHRoZXknbGwgc2VlIHJlYXNvbiBhbmQgdXJnZSB0aGUgZ292ZXJubWVudCB0byBlbmQgdGhlIHdhci4gTGluY29sbiBtdXN0IGtlZXAgQmFyZHNsZXkgc2FmZSB1bnRpbCBoZSBjYW4gZmluaXNoIGhpcyByZXNlYXJjaCwgc28gaGUgY2FsbHMgb24gaGlzIG9sZCBwcml2YXRlIHNlY3VyaXR5IHN0YWZmIHRvIHByb3RlY3QgR2lkZW9uIGFuZCBoaXMgZGF0YS48YnIgLz4NCjxiciAvPg0KTWFyaWEg4oCcQmVsbGXigJ0gQm95ZCB3YXMgYSByZXRpcmVkIENvbmZlZGVyYXRlIHNweSwgdW50aWwgc2hlIGdvdCBhIGxpZmUtY2hhbmdpbmcgam9iIG9mZmVyIGZyb20gdGhlIFBpbmtlcnRvbiBEZXRlY3RpdmUgQWdlbmN5LiBQaW5rZXJ0b24gcmVzcGVjdHMgaGVyIHdvcmssIGRlc3BpdGUgcmVzZXJ2YXRpb25zIGFib3V0IGhlciBsaW5nZXJpbmcgU291dGhlcm4gbG95YWx0aWVzLiBCdXQgaXTigJlzIHByZWNpc2VseSB0aG9zZSBsb3lhbHRpZXMgdGhhdCBsZXQgaGVyIGdvIGludG8gQ29uZmVkZXJhdGUgdGVycml0b3J5IHRvIGZpZ3VyZSBvdXQgd2hvIG1pZ2h0IGJlIHRhcmdldGluZyBCYXJkc2xleS4gTWFyaWEgaXMgYSBnb29kIGRldGVjdGl2ZSwgYnV0IHdpdGggc3BpZXMgZnJvbSBib3RoIGNhbXBzIGd1bm5pbmcgZm9yIGhlciwgY2FuIGV2ZW4gdGhlIG5vdG9yaW91cyBCZWxsZSBCb3lkIGhvbGQgdGhlIGdyZWVkeSB3YXJoYXdrcyBhdCBiYXk/ICAgICAgICA8L2Rpdj4KICAgPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvcHlyaWdodCI+CiAgICBDb3B5cmlnaHQgwqkgMjAxMyBieSBDaGVyaWUgUHJpZXN0LiBQdWJsaXNoZWQgYnkgYXJyYW5nZW1lbnQgd2l0aCBUb20gRG9oZXJ0eSBBc3NvY2lhdGVzLCBMTEMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuIFB1Ymxpc2hlZCBieSBhcnJhbmdlbWVudCB3aXRoIHRoZSBEb25hbGQgTWFzcyBMaXRlcmFyeSBBZ2VuY3kuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuIOKElyAyMDE1IGJ5IFRoZSBDdXR0aW5nIENvcnBvcmF0aW9uLiBBbGwgUmlnaHRzIFJlc2VydmVkLjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1lZGlhLXBsYXllciI+CiAgICAgICAgPGF1ZGlvIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzdHlsZT0id2lkdGg6IDEwMCU7IiBzcmM9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL0NDMDUubXAzIiB0eXBlPSJhdWRpby9tcGVnIj4KICAgICAgICA8IS0tIGZhbGxiYWNrIGZvciBub24gc3VwcG9ydGluZyBicm93c2VycyBnb2VzIGhlcmUgLS0+CiAgICAgICAgPHA+WW91ciBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgSFRNTDUuIFlvdSBjYW4gPGEgaHJlZj0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvQ0MwNS5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIxNTUtNjk1MDYzNzkiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2Utd3JhcHBlciI+CiAgICAgICAgPGltZyBjbGFzcz0icHJvZHVjdC1pbWFnZS1waG90byIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcHJvZHVjdC1za3U9IkNDVEFOR0xFRk9PVCIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcHJvZHVjdC1uYW1lPSJRMnh2WTJ0M2IzSnJJRU5sYm5SMWNuazZJRlJoYm1kc1pXWnZiM1E9IgogICAgICAgICAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3LmdyYXBoaWNhdWRpby5uZXQvbWVkaWEvY2F0YWxvZy9wcm9kdWN0L2NhY2hlL2NlNjkyMzk0YmMzMWRiZTQxN2Y5ZDA0ZWI2NzgwMjM4L2MvYy9jY3RhbmdsZWZvb3RfMS5qcGciCiAgICAgICAgICAgIGxvYWRpbmc9ImxhenkiCiAgICAgICAgICAgIHdpZHRoPSIyMDAiCiAgICAgICAgICAgIGhlaWdodD0iMjAwIgogICAgICAgICAgICBhbHQ9IkNsb2Nrd29yayYjeDIwO0NlbnR1cnkmI3gzQTsmI3gyMDtUYW5nbGVmb290Ii8+PC9zcGFuPgo8L3NwYW4+CjxzdHlsZT4ucHJvZHVjdC1pbWFnZS1jb250YWluZXItMjE1NS02OTUwNjM3OSB7CiAgICB3aWR0aDogMjAwcHg7Cn0KLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIxNTUtNjk1MDYzNzkgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIgewogICAgcGFkZGluZy1ib3R0b206IDEwMCU7Cn08L3N0eWxlPjxzY3JpcHQgdHlwZT0idGV4dCYjeDJGO2phdmFzY3JpcHQiPnByb2RJbWFnZUNvbnRhaW5lcnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIucHJvZHVjdC1pbWFnZS1jb250YWluZXItMjE1NS02OTUwNjM3OSIpOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNbaV0uc3R5bGUud2lkdGggPSAiMjAwcHgiOwp9CnByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTIxNTUtNjk1MDYzNzkgIHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIgopOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycy5sZW5ndGg7IGkrKykgewogICAgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzW2ldLnN0eWxlLnBhZGRpbmdCb3R0b20gPSAiMTAwJSI7Cn08L3NjcmlwdD48L2Rpdj4KCjxoMSBjbGFzcz0icHJvZHVjdC1uYW1lIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VyaWVzLW5hbWUiPkNsb2Nrd29yayBDZW50dXJ5PC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXBpc29kZS1uYW1lIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUYW5nbGVmb290ICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvaDE+Cgo8ZGl2IGNsYXNzPSJwcm9kdWN0LWF1dGhvciI+CiAgICBieSBDaGVyaWUgUHJpZXN0PC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWluaS1hdHRyaWJ1dGVzIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LXJlbGVhc2VkYXRlIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5SZWxlYXNlIERhdGU6PC9sYWJlbD4gQXByIDEsIDIwMTQgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LXJ1bm5pbmd0aW1lIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5BcHByb3hpbWF0ZSBSdW5uaW5nIFRpbWU6PC9sYWJlbD4gMSBIb3VycwogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvbnRlbnRyYXRpbmciPgogICAgICAgICAgICAgICAgPGxhYmVsPkNvbnRlbnQgUmF0aW5nOjwvbGFiZWw+IEFnZXMgMTMrICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgoKICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgPGRpdiBjbGFzcz0ic3RkIj5BIG1lY2hhbmljYWxseSBpbmNsaW5lZCBvcnBoYW4gd2hvIGxpdmVzIGluIHRoZSBiYXNlbWVudCBvZiBhIHNhbml0YXJpdW0gaXMgdXJnZWQgdG8g4oCcbWFrZSBuZXcgZnJpZW5kcy7igJ0gQSBkb2RkZXJpbmcgc2NpZW50aXN0IHNoYXJlcyBoaXMgbGl2aW5nIHNwYWNlLCBhbmQgaGUgZW5jb3VyYWdlcyB0aGUgZWZmb3J0IOKAlCBwcm92aWRpbmcgYWxsIHRoZSBhc3Npc3RhbmNlIGhpcyB3ZWFrZW5pbmcgbWluZCB3aWxsIHBlcm1pdC48YnIgLz4NCjxiciAvPg0KU28gdGhlIG9ycGhhbiBtYWtlcyBhIGZyaWVuZOKApiB3aXRoIHRoZSBtYXRlcmlhbHMgdGhhdCBsaWUgaW1tZWRpYXRlbHkgYXQgaGFuZC4gVW5mb3J0dW5hdGVseSwgdGhlIHJlc3VsdGluZyBhdXRvbWF0b24gd291bGQgcmF0aGVyIGNhdXNlIGNoYW9zIHRoYW4ga2VlcCBoaW0gY29tcGFueS48YnIgLz4NCjxiciAvPg0KPHN0cm9uZz5BQk9VVCBUSEUgQ0xPQ0tXT1JLIENFTlRVUlk6IDwvc3Ryb25nPjxiciAvPg0KPGJyIC8+DQpTdG9uZXdhbGwgSmFja3NvbiBzdXJ2aXZlZCBDaGFuY2VsbG9yc3ZpbGxlLiAgRW5nbGFuZCBicm9rZSB0aGUgVW5pb27igJlzIG5hdmFsIGJsb2NrYWRlLCBhbmQgZm9ybWFsbHkgcmVjb2duaXplZCB0aGUgQ29uZmVkZXJhdGUgU3RhdGVzIG9mIEFtZXJpY2EuICBBdGxhbnRhIG5ldmVyIGJ1cm5lZC48YnIgLz4NCjxiciAvPg0KSXQgaXMgMTg4MC4gVGhlIEFtZXJpY2FuIENpdmlsIFdhciBoYXMgcmFnZWQgZm9yIG5lYXJseSB0d28gZGVjYWRlcywgZHJpdmluZyB0ZWNobm9sb2d5IGluIHN0cmFuZ2UgYW5kIHRlcnJpYmxlIGRpcmVjdGlvbnMuIENvbWJhdCBkaXJpZ2libGVzIHNrdWxrIGFjcm9zcyB0aGUgc2t5IGFuZCBhcm1vcmVkIHZlaGljbGVzIGNyYXdsIGFsb25nIHRoZSBsYW5kLiAgTWlsaXRhcnkgc2NpZW50aXN0cyB0d2lzdCB0aGUgbGF3cyBvZiBtYW4gYW5kIG5hdHVyZSwgYW5kIGJhcnRlciB0aGVpciBzb3VscyBmb3Igd2VhcG9ucyBwb3dlcmVkIGJ5IGxpZ2h0LCBmaXJlLCBhbmQgc3RlYW0uPGJyIC8+DQo8YnIgLz4NCkJ1dCBsaWZlIHN0cnVnZ2xlcyBmb3J3YXJkIGZvciBzb2xkaWVycyBhbmQgb3JkaW5hcnkgY2l0aXplbnMuICBUaGUgZnJhY3R1cmVkIG5hdGlvbiBpcyBkb3R0ZWQgd2l0aCBzdHJpY2tlbiB0b3ducyBhbmQgZXBpYyBzY2VuZXMgb2YgZGV2YXN0YXRpb27igJRzb21lIG1hbm1hZGUsIGFuZCBzb21lIG1vcmUgbXlzdGVyaW91cy4gIEluIHRoZSB3ZXN0ZXJuIHRlcnJpdG9yaWVzIGNpdGllcyBhcmUgc3dhbGxvd2VkIGJ5IGdhcyBhbmQgd2FsbGVkIGF3YXkgdG8gcm90IHdoaWxlIHRoZSBmcm9udGllcnMgYXJlIHN0cmlwLW1pbmVkIGZvciByZXNvdXJjZXMuICBPbiB0aGUgYm9yZGVycyBiZXR3ZWVuIE5vcnRoIGFuZCBTb3V0aCwgc3BpZXMgc2NvdXIgYW5kIHNjaGVtZSwgYW5kIHNtdWdnbGVycyBidWlsZCBlY29ub21pZXMgbW9yZSBzdGFibGUgdGhhbiB0aGVpciBnb3Zlcm5tZW50cy48YnIgLz4NCjxiciAvPg0KVGhpcyBpcyB0aGUgQ2xvY2t3b3JrIENlbnR1cnkuIEl0IGlzIGRhcmsgaGVyZSwgYW5kIGRpZmZlcmVudC4gICAgICAgIDwvZGl2PgogICA8L2Rpdj4KCjxkaXYgY2xhc3M9InByb2R1Y3QtY29weXJpZ2h0Ij4KICAgIENvcHlyaWdodCDCqSAyMDA4IGJ5IENoZXJpZSBQcmllc3QuIFB1Ymxpc2hlZCBieSBhcnJhbmdlbWVudCB3aXRoIHRoZSBEb25hbGQgTWFzcyBMaXRlcmFyeSBBZ2VuY3kuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuIOKElyAyMDE0IGJ5IFRoZSBDdXR0aW5nIENvcnBvcmF0aW9uLiBBbGwgUmlnaHRzIFJlc2VydmVkLjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1lZGlhLXBsYXllciI+CiAgICAgICAgPGF1ZGlvIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzdHlsZT0id2lkdGg6IDEwMCU7IiBzcmM9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL0NDVEFOR0xFRk9PVC5tcDMiIHR5cGU9ImF1ZGlvL21wZWciPgogICAgICAgIDwhLS0gZmFsbGJhY2sgZm9yIG5vbiBzdXBwb3J0aW5nIGJyb3dzZXJzIGdvZXMgaGVyZSAtLT4KICAgICAgICA8cD5Zb3VyIGJyb3dzZXIgZG9lcyBub3Qgc3VwcG9ydCBIVE1MNS4gWW91IGNhbiA8YSBocmVmPSJodHRwczovL3MzLmFtYXpvbmF3cy5jb20vZ3JhcGhpY2F1ZGlvc2FtcGxlcy9DQ1RBTkdMRUZPT1QubXAzIj5kb3dubG9hZCB0aGUgYXVkaW8gc2FtcGxlPC9hPi48L3A+CiAgICAgICAgPC9hdWRpbz4KICAgIDwvZGl2PgogCgo8L2Rpdj4=