"As a heartless killing machine, I was a complete failure."
In a corporate-dominated spacefaring future, planetary missions must be approved and supplied by the Company. Exploratory teams are accompanied by Company-supplied security androids, for their own safety.
But in a society where contracts are awarded to the lowest bidder, safety isn’t a primary concern.
On a distant planet, a team of scientists are conducting surface tests, shadowed by their Company-supplied ‘droid — a self-aware SecUnit that has hacked its own governor module, and refers to itself (though never out loud) as “Murderbot.” Scornful of humans, all it really wants is to be left alone long enough to figure out who it is.
But when a neighboring mission goes dark, it's up to the scientists and their Murderbot to get to the truth.
Adapted from the novel and produced with a full cast of actors, immersive sound effects and cinematic music!
Includes The Murderbot Diaries 1-7.
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.
7 Titles In This Set - See AllSee Fewer
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1MDAtMTQ4NzIyMTE4MyI+CiAgICA8c3BhbiBjbGFzcz0icHJvZHVjdC1pbWFnZS13cmFwcGVyIj4KICAgICAgICA8aW1nIGNsYXNzPSJwcm9kdWN0LWltYWdlLXBob3RvIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LXNrdT0iTVVSREVSQk9URElBUklFUzAxIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LW5hbWU9IlZHaGxJRTExY21SbGNtSnZkQ0JFYVdGeWFXVnpJREU2SUVGc2JDQlRlWE4wWlcxeklGSmxaQT09IgogICAgICAgICAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3LmdyYXBoaWNhdWRpby5uZXQvbWVkaWEvY2F0YWxvZy9wcm9kdWN0L2NhY2hlL2NlNjkyMzk0YmMzMWRiZTQxN2Y5ZDA0ZWI2NzgwMjM4L3QvaC90aGVfbXVyZGVyYm90X2RpYXJpZXNfMV9hbGxfc3lzdGVtc19yZWQuanBnIgogICAgICAgICAgICBsb2FkaW5nPSJsYXp5IgogICAgICAgICAgICB3aWR0aD0iMjAwIgogICAgICAgICAgICBoZWlnaHQ9IjIwMCIKICAgICAgICAgICAgYWx0PSJUaGUmI3gyMDtNdXJkZXJib3QmI3gyMDtEaWFyaWVzJiN4MjA7MSYjeDNBOyYjeDIwO0FsbCYjeDIwO1N5c3RlbXMmI3gyMDtSZWQiLz48L3NwYW4+Cjwvc3Bhbj4KPHN0eWxlPi5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci03NTAwLTE0ODcyMjExODMgewogICAgd2lkdGg6IDIwMHB4Owp9Ci5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci03NTAwLTE0ODcyMjExODMgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIgewogICAgcGFkZGluZy1ib3R0b206IDEwMCU7Cn08L3N0eWxlPjxzY3JpcHQgdHlwZT0idGV4dCYjeDJGO2phdmFzY3JpcHQiPnByb2RJbWFnZUNvbnRhaW5lcnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIucHJvZHVjdC1pbWFnZS1jb250YWluZXItNzUwMC0xNDg3MjIxMTgzIik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVycy5sZW5ndGg7IGkrKykgewogICAgcHJvZEltYWdlQ29udGFpbmVyc1tpXS5zdHlsZS53aWR0aCA9ICIyMDBweCI7Cn0KcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgKICAgICIucHJvZHVjdC1pbWFnZS1jb250YWluZXItNzUwMC0xNDg3MjIxMTgzICBzcGFuLnByb2R1Y3QtaW1hZ2Utd3JhcHBlciIKKTsKZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVyc1tpXS5zdHlsZS5wYWRkaW5nQm90dG9tID0gIjEwMCUiOwp9PC9zY3JpcHQ+PC9kaXY+Cgo8aDEgY2xhc3M9InByb2R1Y3QtbmFtZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlcmllcy1uYW1lIj5UaGUgTXVyZGVyYm90IERpYXJpZXM8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJlcGlzb2RlLW5hbWUiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im51bWJlciI+MSA6PC9zcGFuPiAgICAgICAgICAgICAgICBBbGwgU3lzdGVtcyBSZWQgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9oMT4KCjxkaXYgY2xhc3M9InByb2R1Y3QtYXV0aG9yIj4KICAgIGJ5IE1hcnRoYSBXZWxsczwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1pbmktYXR0cmlidXRlcyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1yZWxlYXNlZGF0ZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+UmVsZWFzZSBEYXRlOjwvbGFiZWw+IEF1ZyAyOCwgMjAyMyAgICAgICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtcnVubmluZ3RpbWUiPgogICAgICAgICAgICAgICAgPGxhYmVsPkFwcHJveGltYXRlIFJ1bm5pbmcgVGltZTo8L2xhYmVsPiAyLjUgSG91cnMKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1jb250ZW50cmF0aW5nIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5Db250ZW50IFJhdGluZzo8L2xhYmVsPiBBZ2VzIDE4KyAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgIDxkaXYgY2xhc3M9InN0ZCI+QSBtdXJkZXJvdXMgYW5kcm9pZCBkaXNjb3ZlcnMgaXRzZWxmIGluIEFsbCBTeXN0ZW1zIFJlZCwgYSB0ZW5zZSBzY2llbmNlIGZpY3Rpb24gYWR2ZW50dXJlIGJ5IE1hcnRoYSBXZWxscyB0aGF0IGludGVycm9nYXRlcyB0aGUgcm9vdHMgb2YgY29uc2Npb3VzbmVzcyB0aHJvdWdoIEFydGlmaWNpYWwgSW50ZWxsaWdlbmNlLjxiciAvPg0KPGJyIC8+DQoiQXMgYSBoZWFydGxlc3Mga2lsbGluZyBtYWNoaW5lLCBJIHdhcyBhIGNvbXBsZXRlIGZhaWx1cmUuIjxiciAvPg0KPGJyIC8+DQpJbiBhIGNvcnBvcmF0ZS1kb21pbmF0ZWQgc3BhY2VmYXJpbmcgZnV0dXJlLCBwbGFuZXRhcnkgbWlzc2lvbnMgbXVzdCBiZSBhcHByb3ZlZCBhbmQgc3VwcGxpZWQgYnkgdGhlIENvbXBhbnkuIEV4cGxvcmF0b3J5IHRlYW1zIGFyZSBhY2NvbXBhbmllZCBieSBDb21wYW55LXN1cHBsaWVkIHNlY3VyaXR5IGFuZHJvaWRzLCBmb3IgdGhlaXIgb3duIHNhZmV0eS48YnIgLz4NCjxiciAvPg0KQnV0IGluIGEgc29jaWV0eSB3aGVyZSBjb250cmFjdHMgYXJlIGF3YXJkZWQgdG8gdGhlIGxvd2VzdCBiaWRkZXIsIHNhZmV0eSBpc27igJl0IGEgcHJpbWFyeSBjb25jZXJuLjxiciAvPg0KPGJyIC8+DQpPbiBhIGRpc3RhbnQgcGxhbmV0LCBhIHRlYW0gb2Ygc2NpZW50aXN0cyBhcmUgY29uZHVjdGluZyBzdXJmYWNlIHRlc3RzLCBzaGFkb3dlZCBieSB0aGVpciBDb21wYW55LXN1cHBsaWVkIOKAmGRyb2lkIOKAlCBhIHNlbGYtYXdhcmUgU2VjVW5pdCB0aGF0IGhhcyBoYWNrZWQgaXRzIG93biBnb3Zlcm5vciBtb2R1bGUsIGFuZCByZWZlcnMgdG8gaXRzZWxmICh0aG91Z2ggbmV2ZXIgb3V0IGxvdWQpIGFzIOKAnE11cmRlcmJvdC7igJ0gU2Nvcm5mdWwgb2YgaHVtYW5zLCBhbGwgaXQgcmVhbGx5IHdhbnRzIGlzIHRvIGJlIGxlZnQgYWxvbmUgbG9uZyBlbm91Z2ggdG8gZmlndXJlIG91dCB3aG8gaXQgaXMuPGJyIC8+DQo8YnIgLz4NCkJ1dCB3aGVuIGEgbmVpZ2hib3JpbmcgbWlzc2lvbiBnb2VzIGRhcmssIGl0J3MgdXAgdG8gdGhlIHNjaWVudGlzdHMgYW5kIHRoZWlyIE11cmRlcmJvdCB0byBnZXQgdG8gdGhlIHRydXRoLjxiciAvPg0KPGJyIC8+DQpBZGFwdGVkIGZyb20gdGhlIG5vdmVsIGFuZCBwcm9kdWNlZCB3aXRoIGEgZnVsbCBjYXN0IG9mIGFjdG9ycywgaW1tZXJzaXZlIHNvdW5kIGVmZmVjdHMgYW5kIGNpbmVtYXRpYyBtdXNpYyEgICAgICAgIDwvZGl2PgogICA8L2Rpdj4KCjxkaXYgY2xhc3M9InByb2R1Y3QtY29weXJpZ2h0Ij4KICAgIENvcHlyaWdodCDCqSAyMDE3LCBNYXJ0aGEgV2VsbHMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFJlY29yZGVkIGJ5IGFycmFuZ2VtZW50IHdpdGggdGhlIGF1dGhvci4g4oSXIDIwMjMgR3JhcGhpYyBBdWRpbyBMTEMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWVkaWEtcGxheWVyIj4KICAgICAgICA8YXVkaW8gY29udHJvbHMgcHJlbG9hZD0ibWV0YWRhdGEiIHN0eWxlPSJ3aWR0aDogMTAwJTsiIHNyYz0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvTVVSREVSQk9URElBUklFUzAxLm1wMyIgdHlwZT0iYXVkaW8vbXBlZyI+CiAgICAgICAgPCEtLSBmYWxsYmFjayBmb3Igbm9uIHN1cHBvcnRpbmcgYnJvd3NlcnMgZ29lcyBoZXJlIC0tPgogICAgICAgIDxwPllvdXIgYnJvd3NlciBkb2VzIG5vdCBzdXBwb3J0IEhUTUw1LiBZb3UgY2FuIDxhIGhyZWY9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL01VUkRFUkJPVERJQVJJRVMwMS5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1MDEtMTc3NDA1NTA3MyI+CiAgICA8c3BhbiBjbGFzcz0icHJvZHVjdC1pbWFnZS13cmFwcGVyIj4KICAgICAgICA8aW1nIGNsYXNzPSJwcm9kdWN0LWltYWdlLXBob3RvIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LXNrdT0iTVVSREVSQk9URElBUklFUzAyIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LW5hbWU9IlZHaGxJRTExY21SbGNtSnZkQ0JFYVdGeWFXVnpJREk2SUVGeWRHbG1hV05wWVd3Z1EyOXVaR2wwYVc5dSIKICAgICAgICAgICAgICAgICAgICAgICAgc3JjPSJodHRwczovL3d3dy5ncmFwaGljYXVkaW8ubmV0L21lZGlhL2NhdGFsb2cvcHJvZHVjdC9jYWNoZS9jZTY5MjM5NGJjMzFkYmU0MTdmOWQwNGViNjc4MDIzOC90L2gvdGhlX211cmRlcmJvdF9kaWFyaWVzXzJfYXJ0aWZpY2lhbF9jb25kaXRpb24uanBnIgogICAgICAgICAgICBsb2FkaW5nPSJsYXp5IgogICAgICAgICAgICB3aWR0aD0iMjAwIgogICAgICAgICAgICBoZWlnaHQ9IjIwMCIKICAgICAgICAgICAgYWx0PSJUaGUmI3gyMDtNdXJkZXJib3QmI3gyMDtEaWFyaWVzJiN4MjA7MiYjeDNBOyYjeDIwO0FydGlmaWNpYWwmI3gyMDtDb25kaXRpb24iLz48L3NwYW4+Cjwvc3Bhbj4KPHN0eWxlPi5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci03NTAxLTE3NzQwNTUwNzMgewogICAgd2lkdGg6IDIwMHB4Owp9Ci5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci03NTAxLTE3NzQwNTUwNzMgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIgewogICAgcGFkZGluZy1ib3R0b206IDEwMCU7Cn08L3N0eWxlPjxzY3JpcHQgdHlwZT0idGV4dCYjeDJGO2phdmFzY3JpcHQiPnByb2RJbWFnZUNvbnRhaW5lcnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIucHJvZHVjdC1pbWFnZS1jb250YWluZXItNzUwMS0xNzc0MDU1MDczIik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVycy5sZW5ndGg7IGkrKykgewogICAgcHJvZEltYWdlQ29udGFpbmVyc1tpXS5zdHlsZS53aWR0aCA9ICIyMDBweCI7Cn0KcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgKICAgICIucHJvZHVjdC1pbWFnZS1jb250YWluZXItNzUwMS0xNzc0MDU1MDczICBzcGFuLnByb2R1Y3QtaW1hZ2Utd3JhcHBlciIKKTsKZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVyc1tpXS5zdHlsZS5wYWRkaW5nQm90dG9tID0gIjEwMCUiOwp9PC9zY3JpcHQ+PC9kaXY+Cgo8aDEgY2xhc3M9InByb2R1Y3QtbmFtZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlcmllcy1uYW1lIj5UaGUgTXVyZGVyYm90IERpYXJpZXM8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJlcGlzb2RlLW5hbWUiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im51bWJlciI+MiA6PC9zcGFuPiAgICAgICAgICAgICAgICBBcnRpZmljaWFsIENvbmRpdGlvbiAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2gxPgoKPGRpdiBjbGFzcz0icHJvZHVjdC1hdXRob3IiPgogICAgYnkgTWFydGhhIFdlbGxzPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWluaS1hdHRyaWJ1dGVzIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LXJlbGVhc2VkYXRlIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5SZWxlYXNlIERhdGU6PC9sYWJlbD4gU2VwIDcsIDIwMjMgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LXJ1bm5pbmd0aW1lIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5BcHByb3hpbWF0ZSBSdW5uaW5nIFRpbWU6PC9sYWJlbD4gMyBIb3VycwogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvbnRlbnRyYXRpbmciPgogICAgICAgICAgICAgICAgPGxhYmVsPkNvbnRlbnQgUmF0aW5nOjwvbGFiZWw+IEFnZXMgMTgrICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgoKICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgPGRpdiBjbGFzcz0ic3RkIj5BcnRpZmljaWFsIENvbmRpdGlvbiBpcyB0aGUgZm9sbG93LXVwIHRvIE1hcnRoYSBXZWxscydzIEh1Z28sIE5lYnVsYSwgQWxleCwgYW5kIExvY3VzIEF3YXJkLXdpbm5pbmcsIE5ldyBZb3JrIFRpbWVzIGJlc3RzZWxsaW5nIEFsbCBTeXN0ZW1zIFJlZC48YnIgLz4NCjxiciAvPg0KSXQgaGFzIGEgZGFyayBwYXN04oCUb25lIGluIHdoaWNoIGEgbnVtYmVyIG9mIGh1bWFucyB3ZXJlIGtpbGxlZC4gQSBwYXN0IHRoYXQgY2F1c2VkIGl0IHRvIGNocmlzdGVuIGl0c2VsZiDigJxNdXJkZXJib3TigJ0uIEJ1dCBpdCBoYXMgb25seSB2YWd1ZSBtZW1vcmllcyBvZiB0aGUgbWFzc2FjcmUgdGhhdCBzcGF3bmVkIHRoYXQgdGl0bGUsIGFuZCBpdCB3YW50cyB0byBrbm93IG1vcmUuPGJyIC8+DQo8YnIgLz4NClRlYW1pbmcgdXAgd2l0aCBhIFJlc2VhcmNoIFRyYW5zcG9ydCB2ZXNzZWwgbmFtZWQgQVJUICh5b3UgZG9u4oCZdCB3YW50IHRvIGtub3cgd2hhdCB0aGUg4oCcQeKAnSBzdGFuZHMgZm9yKSwgTXVyZGVyYm90IGhlYWRzIHRvIHRoZSBtaW5pbmcgZmFjaWxpdHkgd2hlcmUgaXQgd2VudCByb2d1ZS48YnIgLz4NCjxiciAvPg0KV2hhdCBpdCBkaXNjb3ZlcnMgd2lsbCBmb3JldmVyIGNoYW5nZSB0aGUgd2F5IGl0IHRoaW5rc+KApjxiciAvPg0KPGJyIC8+DQpBZGFwdGVkIGZyb20gdGhlIG5vdmVsIGFuZCBwcm9kdWNlZCB3aXRoIGEgZnVsbCBjYXN0IG9mIGFjdG9ycywgaW1tZXJzaXZlIHNvdW5kIGVmZmVjdHMgYW5kIGNpbmVtYXRpYyBtdXNpYyEgICAgICAgIDwvZGl2PgogICA8L2Rpdj4KCjxkaXYgY2xhc3M9InByb2R1Y3QtY29weXJpZ2h0Ij4KICAgIENvcHlyaWdodCDCqSAyMDE3LCBNYXJ0aGEgV2VsbHMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFJlY29yZGVkIGJ5IGFycmFuZ2VtZW50IHdpdGggdGhlIGF1dGhvci4g4oSXIDIwMjMgR3JhcGhpYyBBdWRpbyBMTEMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWVkaWEtcGxheWVyIj4KICAgICAgICA8YXVkaW8gY29udHJvbHMgcHJlbG9hZD0ibWV0YWRhdGEiIHN0eWxlPSJ3aWR0aDogMTAwJTsiIHNyYz0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvTVVSREVSQk9URElBUklFUzAyLm1wMyIgdHlwZT0iYXVkaW8vbXBlZyI+CiAgICAgICAgPCEtLSBmYWxsYmFjayBmb3Igbm9uIHN1cHBvcnRpbmcgYnJvd3NlcnMgZ29lcyBoZXJlIC0tPgogICAgICAgIDxwPllvdXIgYnJvd3NlciBkb2VzIG5vdCBzdXBwb3J0IEhUTUw1LiBZb3UgY2FuIDxhIGhyZWY9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL01VUkRFUkJPVERJQVJJRVMwMi5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1MDItMTcxNzk3MDIzMCI+CiAgICA8c3BhbiBjbGFzcz0icHJvZHVjdC1pbWFnZS13cmFwcGVyIj4KICAgICAgICA8aW1nIGNsYXNzPSJwcm9kdWN0LWltYWdlLXBob3RvIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LXNrdT0iTVVSREVSQk9URElBUklFUzAzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LW5hbWU9IlZHaGxJRTExY21SbGNtSnZkQ0JFYVdGeWFXVnpJRE02SUZKdlozVmxJRkJ5YjNSdlkyOXMiCiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz0iaHR0cHM6Ly93d3cuZ3JhcGhpY2F1ZGlvLm5ldC9tZWRpYS9jYXRhbG9nL3Byb2R1Y3QvY2FjaGUvY2U2OTIzOTRiYzMxZGJlNDE3ZjlkMDRlYjY3ODAyMzgvdC9oL3RoZV9tdXJkZXJib3RfZGlhcmllc18zX3JvZ3VlX3Byb3RvY29sLmpwZyIKICAgICAgICAgICAgbG9hZGluZz0ibGF6eSIKICAgICAgICAgICAgd2lkdGg9IjIwMCIKICAgICAgICAgICAgaGVpZ2h0PSIyMDAiCiAgICAgICAgICAgIGFsdD0iVGhlJiN4MjA7TXVyZGVyYm90JiN4MjA7RGlhcmllcyYjeDIwOzMmI3gzQTsmI3gyMDtSb2d1ZSYjeDIwO1Byb3RvY29sIi8+PC9zcGFuPgo8L3NwYW4+CjxzdHlsZT4ucHJvZHVjdC1pbWFnZS1jb250YWluZXItNzUwMi0xNzE3OTcwMjMwIHsKICAgIHdpZHRoOiAyMDBweDsKfQoucHJvZHVjdC1pbWFnZS1jb250YWluZXItNzUwMi0xNzE3OTcwMjMwIHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIHsKICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOwp9PC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQmI3gyRjtqYXZhc2NyaXB0Ij5wcm9kSW1hZ2VDb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1MDItMTcxNzk3MDIzMCIpOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNbaV0uc3R5bGUud2lkdGggPSAiMjAwcHgiOwp9CnByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1MDItMTcxNzk3MDIzMCAgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIiCik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnNbaV0uc3R5bGUucGFkZGluZ0JvdHRvbSA9ICIxMDAlIjsKfTwvc2NyaXB0PjwvZGl2PgoKPGgxIGNsYXNzPSJwcm9kdWN0LW5hbWUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJpZXMtbmFtZSI+VGhlIE11cmRlcmJvdCBEaWFyaWVzPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXBpc29kZS1uYW1lIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJudW1iZXIiPjMgOjwvc3Bhbj4gICAgICAgICAgICAgICAgUm9ndWUgUHJvdG9jb2wgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9oMT4KCjxkaXYgY2xhc3M9InByb2R1Y3QtYXV0aG9yIj4KICAgIGJ5IE1hcnRoYSBXZWxsczwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1pbmktYXR0cmlidXRlcyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1yZWxlYXNlZGF0ZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+UmVsZWFzZSBEYXRlOjwvbGFiZWw+IE9jdCAxNywgMjAyMyAgICAgICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtcnVubmluZ3RpbWUiPgogICAgICAgICAgICAgICAgPGxhYmVsPkFwcHJveGltYXRlIFJ1bm5pbmcgVGltZTo8L2xhYmVsPiAzIEhvdXJzCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtY29udGVudHJhdGluZyI+CiAgICAgICAgICAgICAgICA8bGFiZWw+Q29udGVudCBSYXRpbmc6PC9sYWJlbD4gQWdlcyAxOCsgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CgogICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICA8ZGl2IGNsYXNzPSJzdGQiPlJvZ3VlIFByb3RvY29sIGlzIHRoZSB0aGlyZCBlbnRyeSBpbiBNYXJ0aGEgV2VsbHMncyBIdWdvLCBOZWJ1bGEsIEFsZXgsIGFuZCBMb2N1cyBBd2FyZC13aW5uaW5nLCBOZXcgWW9yayBUaW1lcyBhbmQgVVNBIFRvZGF5IGJlc3RzZWxsaW5nIHNlcmllcywgVGhlIE11cmRlcmJvdCBEaWFyaWVzLjxiciAvPg0KPGJyIC8+DQpTdGFycmluZyBhIGh1bWFuLWxpa2UgYW5kcm9pZCB3aG8ga2VlcHMgZ2V0dGluZyBzdWNrZWQgYmFjayBpbnRvIGFkdmVudHVyZSBhZnRlciBhZHZlbnR1cmUsIHRob3VnaCBpdCBqdXN0IHdhbnRzIHRvIGJlIGxlZnQgYWxvbmUsIGF3YXkgZnJvbSBodW1hbml0eSBhbmQgc21hbGwgdGFsay48YnIgLz4NCjxiciAvPg0KV2hvIGtuZXcgYmVpbmcgYSBoZWFydGxlc3Mga2lsbGluZyBtYWNoaW5lIHdvdWxkIHByZXNlbnQgc28gbWFueSBtb3JhbCBkaWxlbW1hcz88YnIgLz4NCjxiciAvPg0KU2NpLWZp4oCZcyBmYXZvcml0ZSBhbnRpc29jaWFsIEEuSS4gaXMgYmFjayBvbiBhIG1pc3Npb24uIFRoZSBjYXNlIGFnYWluc3QgdGhlIHRvby1iaWctdG8tZmFpbCBHcmF5Q3JpcyBDb3Jwb3JhdGlvbiBpcyBmbG91bmRlcmluZywgYW5kIG1vcmUgaW1wb3J0YW50bHksIGF1dGhvcml0aWVzIGFyZSBiZWdpbm5pbmcgdG8gYXNrIG1vcmUgcXVlc3Rpb25zIGFib3V0IHdoZXJlIERyLiBNZW5zYWgncyBTZWNVbml0IGlzLjxiciAvPg0KPGJyIC8+DQpBbmQgTXVyZGVyYm90IHdvdWxkIHJhdGhlciB0aG9zZSBxdWVzdGlvbnMgd2VudCBhd2F5LiBGb3IgZ29vZC48YnIgLz4NCjxiciAvPg0KQWRhcHRlZCBmcm9tIHRoZSBub3ZlbCBhbmQgcHJvZHVjZWQgd2l0aCBhIGZ1bGwgY2FzdCBvZiBhY3RvcnMsIGltbWVyc2l2ZSBzb3VuZCBlZmZlY3RzIGFuZCBjaW5lbWF0aWMgbXVzaWMhICAgICAgICA8L2Rpdj4KICAgPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvcHlyaWdodCI+CiAgICBDb3B5cmlnaHQgwqkgMjAxOCwgTWFydGhhIFdlbGxzLiBBbGwgcmlnaHRzIHJlc2VydmVkLiBSZWNvcmRlZCBieSBhcnJhbmdlbWVudCB3aXRoIHRoZSBhdXRob3IuIOKElyAyMDIzIEdyYXBoaWMgQXVkaW8gTExDLiBBbGwgUmlnaHRzIFJlc2VydmVkLjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1lZGlhLXBsYXllciI+CiAgICAgICAgPGF1ZGlvIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzdHlsZT0id2lkdGg6IDEwMCU7IiBzcmM9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL01VUkRFUkJPVERJQVJJRVMwMy5tcDMiIHR5cGU9ImF1ZGlvL21wZWciPgogICAgICAgIDwhLS0gZmFsbGJhY2sgZm9yIG5vbiBzdXBwb3J0aW5nIGJyb3dzZXJzIGdvZXMgaGVyZSAtLT4KICAgICAgICA8cD5Zb3VyIGJyb3dzZXIgZG9lcyBub3Qgc3VwcG9ydCBIVE1MNS4gWW91IGNhbiA8YSBocmVmPSJodHRwczovL3MzLmFtYXpvbmF3cy5jb20vZ3JhcGhpY2F1ZGlvc2FtcGxlcy9NVVJERVJCT1RESUFSSUVTMDMubXAzIj5kb3dubG9hZCB0aGUgYXVkaW8gc2FtcGxlPC9hPi48L3A+CiAgICAgICAgPC9hdWRpbz4KICAgIDwvZGl2PgogCgo8L2Rpdj4=
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1MDYtMTAwMDEyNDM0OSI+CiAgICA8c3BhbiBjbGFzcz0icHJvZHVjdC1pbWFnZS13cmFwcGVyIj4KICAgICAgICA8aW1nIGNsYXNzPSJwcm9kdWN0LWltYWdlLXBob3RvIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LXNrdT0iTVVSREVSQk9URElBUklFUzA0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LW5hbWU9IlZHaGxJRTExY21SbGNtSnZkQ0JFYVdGeWFXVnpJRFE2SUVWNGFYUWdVM1J5WVhSbFozaz0iCiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz0iaHR0cHM6Ly93d3cuZ3JhcGhpY2F1ZGlvLm5ldC9tZWRpYS9jYXRhbG9nL3Byb2R1Y3QvY2FjaGUvY2U2OTIzOTRiYzMxZGJlNDE3ZjlkMDRlYjY3ODAyMzgvdC9oL3RoZV9tdXJkZXJib3RfZGlhcmllc180X2V4aXRfc3RyYXRlZ3lfMS5qcGciCiAgICAgICAgICAgIGxvYWRpbmc9ImxhenkiCiAgICAgICAgICAgIHdpZHRoPSIyMDAiCiAgICAgICAgICAgIGhlaWdodD0iMjAwIgogICAgICAgICAgICBhbHQ9IlRoZSYjeDIwO011cmRlcmJvdCYjeDIwO0RpYXJpZXMmI3gyMDs0JiN4M0E7JiN4MjA7RXhpdCYjeDIwO1N0cmF0ZWd5Ii8+PC9zcGFuPgo8L3NwYW4+CjxzdHlsZT4ucHJvZHVjdC1pbWFnZS1jb250YWluZXItNzUwNi0xMDAwMTI0MzQ5IHsKICAgIHdpZHRoOiAyMDBweDsKfQoucHJvZHVjdC1pbWFnZS1jb250YWluZXItNzUwNi0xMDAwMTI0MzQ5IHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIHsKICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOwp9PC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQmI3gyRjtqYXZhc2NyaXB0Ij5wcm9kSW1hZ2VDb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1MDYtMTAwMDEyNDM0OSIpOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNbaV0uc3R5bGUud2lkdGggPSAiMjAwcHgiOwp9CnByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1MDYtMTAwMDEyNDM0OSAgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIiCik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnNbaV0uc3R5bGUucGFkZGluZ0JvdHRvbSA9ICIxMDAlIjsKfTwvc2NyaXB0PjwvZGl2PgoKPGgxIGNsYXNzPSJwcm9kdWN0LW5hbWUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJpZXMtbmFtZSI+VGhlIE11cmRlcmJvdCBEaWFyaWVzPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXBpc29kZS1uYW1lIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJudW1iZXIiPjQgOjwvc3Bhbj4gICAgICAgICAgICAgICAgRXhpdCBTdHJhdGVneSAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2gxPgoKPGRpdiBjbGFzcz0icHJvZHVjdC1hdXRob3IiPgogICAgYnkgTWFydGhhIFdlbGxzPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWluaS1hdHRyaWJ1dGVzIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LXJlbGVhc2VkYXRlIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5SZWxlYXNlIERhdGU6PC9sYWJlbD4gT2N0IDI3LCAyMDIzICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1ydW5uaW5ndGltZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+QXBwcm94aW1hdGUgUnVubmluZyBUaW1lOjwvbGFiZWw+IDMgSG91cnMKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1jb250ZW50cmF0aW5nIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5Db250ZW50IFJhdGluZzo8L2xhYmVsPiBBZ2VzIDE4KyAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgIDxkaXYgY2xhc3M9InN0ZCI+TXVyZGVyYm90IHdhc27igJl0IHByb2dyYW1tZWQgdG8gY2FyZS4gU28sIGl0cyBkZWNpc2lvbiB0byBoZWxwIHRoZSBvbmx5IGh1bWFuIHdobyBldmVyIHNob3dlZCBpdCByZXNwZWN0IG11c3QgYmUgYSBzeXN0ZW0gZ2xpdGNoLCByaWdodD88YnIgLz4NCjxiciAvPg0KSGF2aW5nIHRyYXZlbGVkIHRoZSB3aWR0aCBvZiB0aGUgZ2FsYXh5IHRvIHVuZWFydGggZGV0YWlscyBvZiBpdHMgb3duIG11cmRlcm91cyB0cmFuc2dyZXNzaW9ucywgYXMgd2VsbCBhcyB0aG9zZSBvZiB0aGUgR3JheUNyaXMgQ29ycG9yYXRpb24sIE11cmRlcmJvdCBpcyBoZWFkaW5nIGhvbWUgdG8gaGVscCBEci4gTWVuc2Fo4oCUaXRzIGZvcm1lciBvd25lciAocHJvdGVjdG9yPyBmcmllbmQ/KeKAlHN1Ym1pdCBldmlkZW5jZSB0aGF0IGNvdWxkIHByZXZlbnQgR3JheUNyaXMgZnJvbSBkZXN0cm95aW5nIG1vcmUgY29sb25pc3RzIGluIGl0cyBuZXZlci1lbmRpbmcgcXVlc3QgZm9yIHByb2ZpdC48YnIgLz4NCjxiciAvPg0KQnV0IHdob+KAmXMgZ29pbmcgdG8gYmVsaWV2ZSBhIFNlY1VuaXQgZ29uZSByb2d1ZT88YnIgLz4NCjxiciAvPg0KQW5kIHdoYXQgd2lsbCBiZWNvbWUgb2YgaXQgd2hlbiBpdOKAmXMgY2F1Z2h0PzxiciAvPg0KPGJyIC8+DQpBZGFwdGVkIGZyb20gdGhlIG5vdmVsIGFuZCBwcm9kdWNlZCB3aXRoIGEgZnVsbCBjYXN0IG9mIGFjdG9ycywgaW1tZXJzaXZlIHNvdW5kIGVmZmVjdHMgYW5kIGNpbmVtYXRpYyBtdXNpYyEgICAgICAgIDwvZGl2PgogICA8L2Rpdj4KCjxkaXYgY2xhc3M9InByb2R1Y3QtY29weXJpZ2h0Ij4KICAgIENvcHlyaWdodCDCqSAyMDE4LCBNYXJ0aGEgV2VsbHMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFJlY29yZGVkIGJ5IGFycmFuZ2VtZW50IHdpdGggdGhlIGF1dGhvci4g4oSXIDIwMjMgR3JhcGhpYyBBdWRpbyBMTEMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWVkaWEtcGxheWVyIj4KICAgICAgICA8YXVkaW8gY29udHJvbHMgcHJlbG9hZD0ibWV0YWRhdGEiIHN0eWxlPSJ3aWR0aDogMTAwJTsiIHNyYz0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvTVVSREVSQk9URElBUklFUzA0Lm1wMyIgdHlwZT0iYXVkaW8vbXBlZyI+CiAgICAgICAgPCEtLSBmYWxsYmFjayBmb3Igbm9uIHN1cHBvcnRpbmcgYnJvd3NlcnMgZ29lcyBoZXJlIC0tPgogICAgICAgIDxwPllvdXIgYnJvd3NlciBkb2VzIG5vdCBzdXBwb3J0IEhUTUw1LiBZb3UgY2FuIDxhIGhyZWY9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL01VUkRFUkJPVERJQVJJRVMwNC5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1NjUtMTAwMzQ1MDk0MCI+CiAgICA8c3BhbiBjbGFzcz0icHJvZHVjdC1pbWFnZS13cmFwcGVyIj4KICAgICAgICA8aW1nIGNsYXNzPSJwcm9kdWN0LWltYWdlLXBob3RvIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LXNrdT0iTVVSREVSQk9URElBUklFUzA1IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LW5hbWU9IlZHaGxJRTExY21SbGNtSnZkQ0JFYVdGeWFXVnpJRFU2SUU1bGRIZHZjbXNnUldabVpXTjAiCiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz0iaHR0cHM6Ly93d3cuZ3JhcGhpY2F1ZGlvLm5ldC9tZWRpYS9jYXRhbG9nL3Byb2R1Y3QvY2FjaGUvY2U2OTIzOTRiYzMxZGJlNDE3ZjlkMDRlYjY3ODAyMzgvdC9oL3RoZV9tdXJkZXJib3RfZGlhcmllc181X25ldHdvcmtfZWZmZWN0LmpwZyIKICAgICAgICAgICAgbG9hZGluZz0ibGF6eSIKICAgICAgICAgICAgd2lkdGg9IjIwMCIKICAgICAgICAgICAgaGVpZ2h0PSIyMDAiCiAgICAgICAgICAgIGFsdD0iVGhlJiN4MjA7TXVyZGVyYm90JiN4MjA7RGlhcmllcyYjeDIwOzUmI3gzQTsmI3gyMDtOZXR3b3JrJiN4MjA7RWZmZWN0Ii8+PC9zcGFuPgo8L3NwYW4+CjxzdHlsZT4ucHJvZHVjdC1pbWFnZS1jb250YWluZXItNzU2NS0xMDAzNDUwOTQwIHsKICAgIHdpZHRoOiAyMDBweDsKfQoucHJvZHVjdC1pbWFnZS1jb250YWluZXItNzU2NS0xMDAzNDUwOTQwIHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIHsKICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOwp9PC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQmI3gyRjtqYXZhc2NyaXB0Ij5wcm9kSW1hZ2VDb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1NjUtMTAwMzQ1MDk0MCIpOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNbaV0uc3R5bGUud2lkdGggPSAiMjAwcHgiOwp9CnByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1NjUtMTAwMzQ1MDk0MCAgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIiCik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnNbaV0uc3R5bGUucGFkZGluZ0JvdHRvbSA9ICIxMDAlIjsKfTwvc2NyaXB0PjwvZGl2PgoKPGgxIGNsYXNzPSJwcm9kdWN0LW5hbWUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJpZXMtbmFtZSI+VGhlIE11cmRlcmJvdCBEaWFyaWVzPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXBpc29kZS1uYW1lIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJudW1iZXIiPjUgOjwvc3Bhbj4gICAgICAgICAgICAgICAgTmV0d29yayBFZmZlY3QgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9oMT4KCjxkaXYgY2xhc3M9InByb2R1Y3QtYXV0aG9yIj4KICAgIGJ5IE1hcnRoYSBXZWxsczwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1pbmktYXR0cmlidXRlcyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1yZWxlYXNlZGF0ZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+UmVsZWFzZSBEYXRlOjwvbGFiZWw+IERlYyAxMywgMjAyMyAgICAgICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtcnVubmluZ3RpbWUiPgogICAgICAgICAgICAgICAgPGxhYmVsPkFwcHJveGltYXRlIFJ1bm5pbmcgVGltZTo8L2xhYmVsPiA4IEhvdXJzCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtY29udGVudHJhdGluZyI+CiAgICAgICAgICAgICAgICA8bGFiZWw+Q29udGVudCBSYXRpbmc6PC9sYWJlbD4gQWdlcyAxOCsgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CgogICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICA8ZGl2IGNsYXNzPSJzdGQiPlRoZSBmaXJzdCBmdWxsLWxlbmd0aCBkcmFtYXRpemVkIGF1ZGlvYm9vayBpbiBNYXJ0aGEgV2VsbHMnIE5ldyBZb3JrIFRpbWVzIGFuZCBVU0EgVG9kYXkgYmVzdHNlbGxpbmcgTXVyZGVyYm90IERpYXJpZXMgc2VyaWVzLjxiciAvPg0KPGJyIC8+DQpZb3Uga25vdyB0aGF0IGZlZWxpbmcgd2hlbiB5b3XigJlyZSBhdCB3b3JrLCBhbmQgeW914oCZdmUgaGFkIGVub3VnaCBvZiBwZW9wbGUsIGFuZCB0aGVuIHRoZSBib3NzIHdhbGtzIGluIHdpdGggeWV0IGFub3RoZXIgam9iIHRoYXQgbmVlZHMgdG8gYmUgZG9uZSByaWdodCB0aGlzIHNlY29uZCBvciB0aGUgd29ybGQgd2lsbCBlbmQsIGJ1dCBhbGwgeW91IHdhbnQgdG8gZG8gaXMgZ28gaG9tZSBhbmQgYmluZ2UgeW91ciBmYXZvcml0ZSBzaG93cz8gQW5kIHlvdSdyZSBhIHNlbnRpZW50IG11cmRlciBtYWNoaW5lIHByb2dyYW1tZWQgZm9yIGRlc3RydWN0aW9uPyBDb25ncmF0dWxhdGlvbnMsIHlvdSdyZSBNdXJkZXJib3QuPGJyIC8+DQo8YnIgLz4NCkNvbWUgZm9yIHRoZSBwZXctcGV3IHNwYWNlIGJhdHRsZXMsIHN0YXkgZm9yIHRoZSBtb3N0IHJlbGF0YWJsZSBBLkkuIHlvdeKAmWxsIHJlYWQgdGhpcyBjZW50dXJ5LjxiciAvPg0KPGJyIC8+DQrigJQ8YnIgLz4NCjxiciAvPg0KSeKAmW0gdXN1YWxseSBhbG9uZSBpbiBteSBoZWFkLCBhbmQgdGhhdOKAmXMgd2hlcmUgOTAgcGx1cyBwZXJjZW50IG9mIG15IHByb2JsZW1zIGFyZS48YnIgLz4NCjxiciAvPg0KV2hlbiBNdXJkZXJib3QncyBodW1hbiBhc3NvY2lhdGVzIChub3QgZnJpZW5kcywgbmV2ZXIgZnJpZW5kcykgYXJlIGNhcHR1cmVkIGFuZCBhbm90aGVyIG5vdC1mcmllbmQgZnJvbSBpdHMgcGFzdCByZXF1aXJlcyB1cmdlbnQgYXNzaXN0YW5jZSwgTXVyZGVyYm90IG11c3QgY2hvb3NlIGJldHdlZW4gaW5lcnRpYSBhbmQgZHJhc3RpYyBhY3Rpb24uPGJyIC8+DQo8YnIgLz4NCkRyYXN0aWMgYWN0aW9uIGl0IGlzLCB0aGVuLjxiciAvPg0KPGJyIC8+DQpBZGFwdGVkIGZyb20gdGhlIG5vdmVsIGFuZCBwcm9kdWNlZCB3aXRoIGEgZnVsbCBjYXN0IG9mIGFjdG9ycywgaW1tZXJzaXZlIHNvdW5kIGVmZmVjdHMgYW5kIGNpbmVtYXRpYyBtdXNpYyEgICAgICAgIDwvZGl2PgogICA8L2Rpdj4KCjxkaXYgY2xhc3M9InByb2R1Y3QtY29weXJpZ2h0Ij4KICAgIENvcHlyaWdodCDCqSAyMDIwLCBNYXJ0aGEgV2VsbHMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFJlY29yZGVkIGJ5IGFycmFuZ2VtZW50IHdpdGggdGhlIGF1dGhvci4g4oSXIDIwMjMgR3JhcGhpYyBBdWRpbyBMTEMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWVkaWEtcGxheWVyIj4KICAgICAgICA8YXVkaW8gY29udHJvbHMgcHJlbG9hZD0ibWV0YWRhdGEiIHN0eWxlPSJ3aWR0aDogMTAwJTsiIHNyYz0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvTVVSREVSQk9URElBUklFUzA1Lm1wMyIgdHlwZT0iYXVkaW8vbXBlZyI+CiAgICAgICAgPCEtLSBmYWxsYmFjayBmb3Igbm9uIHN1cHBvcnRpbmcgYnJvd3NlcnMgZ29lcyBoZXJlIC0tPgogICAgICAgIDxwPllvdXIgYnJvd3NlciBkb2VzIG5vdCBzdXBwb3J0IEhUTUw1LiBZb3UgY2FuIDxhIGhyZWY9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL01VUkRFUkJPVERJQVJJRVMwNS5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1NjktMTI4MjA3MjU3OCI+CiAgICA8c3BhbiBjbGFzcz0icHJvZHVjdC1pbWFnZS13cmFwcGVyIj4KICAgICAgICA8aW1nIGNsYXNzPSJwcm9kdWN0LWltYWdlLXBob3RvIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LXNrdT0iTVVSREVSQk9URElBUklFUzA2IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LW5hbWU9IlZHaGxJRTExY21SbGNtSnZkQ0JFYVdGeWFXVnpJRFk2SUVaMVoybDBhWFpsSUZSbGJHVnRaWFJ5ZVE9PSIKICAgICAgICAgICAgICAgICAgICAgICAgc3JjPSJodHRwczovL3d3dy5ncmFwaGljYXVkaW8ubmV0L21lZGlhL2NhdGFsb2cvcHJvZHVjdC9jYWNoZS9jZTY5MjM5NGJjMzFkYmU0MTdmOWQwNGViNjc4MDIzOC90L2gvdGhlX211cmRlcmJvdF9kaWFyaWVzXzZfZnVnaXRpdmVfdGVsZW1ldHJ5LmpwZyIKICAgICAgICAgICAgbG9hZGluZz0ibGF6eSIKICAgICAgICAgICAgd2lkdGg9IjIwMCIKICAgICAgICAgICAgaGVpZ2h0PSIyMDAiCiAgICAgICAgICAgIGFsdD0iVGhlJiN4MjA7TXVyZGVyYm90JiN4MjA7RGlhcmllcyYjeDIwOzYmI3gzQTsmI3gyMDtGdWdpdGl2ZSYjeDIwO1RlbGVtZXRyeSIvPjwvc3Bhbj4KPC9zcGFuPgo8c3R5bGU+LnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1NjktMTI4MjA3MjU3OCB7CiAgICB3aWR0aDogMjAwcHg7Cn0KLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc1NjktMTI4MjA3MjU3OCBzcGFuLnByb2R1Y3QtaW1hZ2Utd3JhcHBlciB7CiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsKfTwvc3R5bGU+PHNjcmlwdCB0eXBlPSJ0ZXh0JiN4MkY7amF2YXNjcmlwdCI+cHJvZEltYWdlQ29udGFpbmVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci03NTY5LTEyODIwNzI1NzgiKTsKZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9kSW1hZ2VDb250YWluZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzW2ldLnN0eWxlLndpZHRoID0gIjIwMHB4IjsKfQpwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKAogICAgIi5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci03NTY5LTEyODIwNzI1NzggIHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIgopOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycy5sZW5ndGg7IGkrKykgewogICAgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzW2ldLnN0eWxlLnBhZGRpbmdCb3R0b20gPSAiMTAwJSI7Cn08L3NjcmlwdD48L2Rpdj4KCjxoMSBjbGFzcz0icHJvZHVjdC1uYW1lIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VyaWVzLW5hbWUiPlRoZSBNdXJkZXJib3QgRGlhcmllczwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVwaXNvZGUtbmFtZSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibnVtYmVyIj42IDo8L3NwYW4+ICAgICAgICAgICAgICAgIEZ1Z2l0aXZlIFRlbGVtZXRyeSAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2gxPgoKPGRpdiBjbGFzcz0icHJvZHVjdC1hdXRob3IiPgogICAgYnkgTWFydGhhIFdlbGxzPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWluaS1hdHRyaWJ1dGVzIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LXJlbGVhc2VkYXRlIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5SZWxlYXNlIERhdGU6PC9sYWJlbD4gSmFuIDMsIDIwMjQgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LXJ1bm5pbmd0aW1lIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5BcHByb3hpbWF0ZSBSdW5uaW5nIFRpbWU6PC9sYWJlbD4gMyBIb3VycwogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvbnRlbnRyYXRpbmciPgogICAgICAgICAgICAgICAgPGxhYmVsPkNvbnRlbnQgUmF0aW5nOjwvbGFiZWw+IEFnZXMgMTgrICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgoKICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgPGRpdiBjbGFzcz0ic3RkIj5UaGUgTmV3IFlvcmsgVGltZXMgYmVzdHNlbGxpbmcgc2VjdXJpdHkgZHJvaWQgd2l0aCBhIGhlYXJ0ICh0aG91Z2ggaXQgd291bGRuJ3QgYWRtaXQgaXQhKSBpcyBiYWNrIGluIEZ1Z2l0aXZlIFRlbGVtZXRyeSE8YnIgLz4NCjxiciAvPg0KTm8sIEkgZGlkbid0IGtpbGwgdGhlIGRlYWQgaHVtYW4uIElmIEkgaGFkLCBJIHdvdWxkbid0IGR1bXAgdGhlIGJvZHkgaW4gdGhlIHN0YXRpb24gbWFsbC48YnIgLz4NCjxiciAvPg0KV2hlbiBNdXJkZXJib3QgZGlzY292ZXJzIGEgZGVhZCBib2R5IG9uIFByZXNlcnZhdGlvbiBTdGF0aW9uLCBpdCBrbm93cyBpdCBpcyBnb2luZyB0byBoYXZlIHRvIGFzc2lzdCBzdGF0aW9uIHNlY3VyaXR5IHRvIGRldGVybWluZSB3aG8gdGhlIGJvZHkgaXMgKHdhcyksIGhvdyB0aGV5IHdlcmUga2lsbGVkICh0aGF0IHNob3VsZCBiZSByZWxhdGl2ZWx5IHN0cmFpZ2h0Zm9yd2FyZCwgYXQgbGVhc3QpLCBhbmQgd2h5IChiZWNhdXNlIGFwcGFyZW50bHkgdGhhdCBtYXR0ZXJzIHRvIGEgbG90IG9mIHBlb3BsZeKAlHdobyBrbmV3Pyk8YnIgLz4NCjxiciAvPg0KWWVzLCB0aGUgdW50aGlua2FibGUgaXMgYWJvdXQgdG8gaGFwcGVuOiBNdXJkZXJib3QgbXVzdCB2b2x1bnRhcmlseSBzcGVhayB0byBodW1hbnMhPGJyIC8+DQo8YnIgLz4NCkFnYWluITxiciAvPg0KPGJyIC8+DQpBZGFwdGVkIGZyb20gdGhlIG5vdmVsIGFuZCBwcm9kdWNlZCB3aXRoIGEgZnVsbCBjYXN0IG9mIGFjdG9ycywgaW1tZXJzaXZlIHNvdW5kIGVmZmVjdHMgYW5kIGNpbmVtYXRpYyBtdXNpYyEgICAgICAgIDwvZGl2PgogICA8L2Rpdj4KCjxkaXYgY2xhc3M9InByb2R1Y3QtY29weXJpZ2h0Ij4KICAgIENvcHlyaWdodCDCqSAyMDIxLCBNYXJ0aGEgV2VsbHMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFJlY29yZGVkIGJ5IGFycmFuZ2VtZW50IHdpdGggdGhlIGF1dGhvci4g4oSXIDIwMjQgR3JhcGhpYyBBdWRpbyBMTEMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWVkaWEtcGxheWVyIj4KICAgICAgICA8YXVkaW8gY29udHJvbHMgcHJlbG9hZD0ibWV0YWRhdGEiIHN0eWxlPSJ3aWR0aDogMTAwJTsiIHNyYz0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvTVVSREVSQk9URElBUklFUzA2Lm1wMyIgdHlwZT0iYXVkaW8vbXBlZyI+CiAgICAgICAgPCEtLSBmYWxsYmFjayBmb3Igbm9uIHN1cHBvcnRpbmcgYnJvd3NlcnMgZ29lcyBoZXJlIC0tPgogICAgICAgIDxwPllvdXIgYnJvd3NlciBkb2VzIG5vdCBzdXBwb3J0IEhUTUw1LiBZb3UgY2FuIDxhIGhyZWY9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL01VUkRFUkJPVERJQVJJRVMwNi5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc2MTUtNDg5ODczNjU2Ij4KICAgIDxzcGFuIGNsYXNzPSJwcm9kdWN0LWltYWdlLXdyYXBwZXIiPgogICAgICAgIDxpbWcgY2xhc3M9InByb2R1Y3QtaW1hZ2UtcGhvdG8iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXByb2R1Y3Qtc2t1PSJNVVJERVJCT1RESUFSSUVTMDciCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXByb2R1Y3QtbmFtZT0iVkdobElFMTFjbVJsY21KdmRDQkVhV0Z5YVdWeklEYzZJRk41YzNSbGJTQkRiMnhzWVhCelpRPT0iCiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz0iaHR0cHM6Ly93d3cuZ3JhcGhpY2F1ZGlvLm5ldC9tZWRpYS9jYXRhbG9nL3Byb2R1Y3QvY2FjaGUvY2U2OTIzOTRiYzMxZGJlNDE3ZjlkMDRlYjY3ODAyMzgvdC9oL3RoZV9tdXJkZXJib3RfZGlhcmllc183X3N5c3RlbV9jb2xsYXBzZS5qcGciCiAgICAgICAgICAgIGxvYWRpbmc9ImxhenkiCiAgICAgICAgICAgIHdpZHRoPSIyMDAiCiAgICAgICAgICAgIGhlaWdodD0iMjAwIgogICAgICAgICAgICBhbHQ9IlRoZSYjeDIwO011cmRlcmJvdCYjeDIwO0RpYXJpZXMmI3gyMDs3JiN4M0E7JiN4MjA7U3lzdGVtJiN4MjA7Q29sbGFwc2UiLz48L3NwYW4+Cjwvc3Bhbj4KPHN0eWxlPi5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci03NjE1LTQ4OTg3MzY1NiB7CiAgICB3aWR0aDogMjAwcHg7Cn0KLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc2MTUtNDg5ODczNjU2IHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIHsKICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOwp9PC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQmI3gyRjtqYXZhc2NyaXB0Ij5wcm9kSW1hZ2VDb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTc2MTUtNDg5ODczNjU2Iik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVycy5sZW5ndGg7IGkrKykgewogICAgcHJvZEltYWdlQ29udGFpbmVyc1tpXS5zdHlsZS53aWR0aCA9ICIyMDBweCI7Cn0KcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgKICAgICIucHJvZHVjdC1pbWFnZS1jb250YWluZXItNzYxNS00ODk4NzM2NTYgIHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIgopOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycy5sZW5ndGg7IGkrKykgewogICAgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzW2ldLnN0eWxlLnBhZGRpbmdCb3R0b20gPSAiMTAwJSI7Cn08L3NjcmlwdD48L2Rpdj4KCjxoMSBjbGFzcz0icHJvZHVjdC1uYW1lIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VyaWVzLW5hbWUiPlRoZSBNdXJkZXJib3QgRGlhcmllczwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVwaXNvZGUtbmFtZSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibnVtYmVyIj43IDo8L3NwYW4+ICAgICAgICAgICAgICAgIFN5c3RlbSBDb2xsYXBzZSAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2gxPgoKPGRpdiBjbGFzcz0icHJvZHVjdC1hdXRob3IiPgogICAgYnkgTWFydGhhIFdlbGxzPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWluaS1hdHRyaWJ1dGVzIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LXJlbGVhc2VkYXRlIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5SZWxlYXNlIERhdGU6PC9sYWJlbD4gTWFyIDQsIDIwMjQgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LXJ1bm5pbmd0aW1lIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5BcHByb3hpbWF0ZSBSdW5uaW5nIFRpbWU6PC9sYWJlbD4gNSBIb3VycwogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvbnRlbnRyYXRpbmciPgogICAgICAgICAgICAgICAgPGxhYmVsPkNvbnRlbnQgUmF0aW5nOjwvbGFiZWw+IEFnZXMgMTgrICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgoKICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgPGRpdiBjbGFzcz0ic3RkIj5FdmVyeW9uZSdzIGZhdm9yaXRlIGxldGhhbCBTZWNVbml0IGlzIGJhY2sgaW4gdGhlIG5leHQgaW5zdGFsbG1lbnQgaW4gTWFydGhhIFdlbGxzJ3MgTmV3IFlvcmsgVGltZXMgYmVzdHNlbGxpbmcgTXVyZGVyYm90IERpYXJpZXMgc2VyaWVzLjxiciAvPg0KPGJyIC8+DQpBbSBJIG1ha2luZyBpdCB3b3JzZT8gSSB0aGluayBJJ20gbWFraW5nIGl0IHdvcnNlLjxiciAvPg0KPGJyIC8+DQpGb2xsb3dpbmcgdGhlIGV2ZW50cyBpbiBOZXR3b3JrIEVmZmVjdCwgdGhlIEJhcmlzaC1Fc3RyYW56YSBjb3Jwb3JhdGlvbiBoYXMgc2VudCByZXNjdWUgc2hpcHMgdG8gYSBuZXdseS1jb2xvbml6ZWQgcGxhbmV0IGluIHBlcmlsLCBhcyB3ZWxsIGFzIGFkZGl0aW9uYWwgU2VjVW5pdHMuIEJ1dCBpZiB0aGVyZeKAmXMgYW4gZXRoaWNhbCBjb3Jwb3JhdGlvbiBvdXQgdGhlcmUsIE11cmRlcmJvdCBoYXMgeWV0IHRvIGZpbmQgaXQsIGFuZCBpZiBCYXJpc2gtRXN0cmFuemEgY2Fu4oCZdCBoYXZlIHRoZSBwbGFuZXQsIHRoZXnigJlyZSBzdXJlIGFzIGhlbGwgbm90IGxlYXZpbmcgd2l0aG91dCBzb21ldGhpbmcuIElmIHRoYXQgc29tZXRoaW5nIGp1c3QgaGFwcGVucyB0byBiZSBhbiBlbnRpcmUgY29sb255IG9mIGh1bWFucywgd2VsbCwgYSBmcmVlIHdvcmtmb3JjZSBpcyBhIGRlY2VudCBydW5uZXItdXAgcHJpemUuPGJyIC8+DQo8YnIgLz4NCkJ1dCB0aGVyZeKAmXMgc29tZXRoaW5nIHdyb25nIHdpdGggTXVyZGVyYm90OyBpdCBpc27igJl0IHJ1bm5pbmcgd2l0aGluIG5vcm1hbCBvcGVyYXRpb25hbCBwYXJhbWV0ZXJzLiBBUlTigJlzIGNyZXcgYW5kIHRoZSBodW1hbnMgZnJvbSBQcmVzZXJ2YXRpb24gYXJlIGRvaW5nIGV2ZXJ5dGhpbmcgdGhleSBjYW4gdG8gcHJvdGVjdCB0aGUgY29sb25pc3RzLCBidXQgd2l0aCBCYXJpc2gtRXN0cmFuemHigJlzIFNlY1VuaXQtaGVhdnkgcGVyc3Vhc2lvbiB0ZWFtcywgdGhleeKAmXJlIGdvaW5nIHRvIGhhdmUgdG8gaG9wZSBNdXJkZXJib3QgZmlndXJlcyBvdXQgd2hhdOKAmXMgd3Jvbmcgd2l0aCBpdHNlbGYsIGFuZCBmYXN0ITxiciAvPg0KPGJyIC8+DQpZZWFoLCB0aGlzIHBsYW4gaXMuLi4gbm90IGdvaW5nIHRvIHdvcmsuICAgICAgICA8L2Rpdj4KICAgPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvcHlyaWdodCI+CiAgICBDb3B5cmlnaHQgwqkgMjAyMywgTWFydGhhIFdlbGxzLiBBbGwgcmlnaHRzIHJlc2VydmVkLiBSZWNvcmRlZCBieSBhcnJhbmdlbWVudCB3aXRoIHRoZSBhdXRob3IuIOKElyAyMDI0IEdyYXBoaWMgQXVkaW8gTExDLiBBbGwgUmlnaHRzIFJlc2VydmVkLjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1lZGlhLXBsYXllciI+CiAgICAgICAgPGF1ZGlvIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzdHlsZT0id2lkdGg6IDEwMCU7IiBzcmM9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL01VUkRFUkJPVERJQVJJRVMwNy5tcDMiIHR5cGU9ImF1ZGlvL21wZWciPgogICAgICAgIDwhLS0gZmFsbGJhY2sgZm9yIG5vbiBzdXBwb3J0aW5nIGJyb3dzZXJzIGdvZXMgaGVyZSAtLT4KICAgICAgICA8cD5Zb3VyIGJyb3dzZXIgZG9lcyBub3Qgc3VwcG9ydCBIVE1MNS4gWW91IGNhbiA8YSBocmVmPSJodHRwczovL3MzLmFtYXpvbmF3cy5jb20vZ3JhcGhpY2F1ZGlvc2FtcGxlcy9NVVJERVJCT1RESUFSSUVTMDcubXAzIj5kb3dubG9hZCB0aGUgYXVkaW8gc2FtcGxlPC9hPi48L3A+CiAgICAgICAgPC9hdWRpbz4KICAgIDwvZGl2PgogCgo8L2Rpdj4=