Includes Son of Texas 1-3 (6 parts).
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
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODItMTE1NzQxOTg3NyI+CiAgICA8c3BhbiBjbGFzcz0icHJvZHVjdC1pbWFnZS13cmFwcGVyIj4KICAgICAgICA8aW1nIGNsYXNzPSJwcm9kdWN0LWltYWdlLXBob3RvIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LXNrdT0iU09UMDEwMSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcHJvZHVjdC1uYW1lPSJVMjl1Y3lCdlppQlVaWGhoY3lBeE9pQlRiMjV6SUc5bUlGUmxlR0Z6SURFZ2IyWWdNZz09IgogICAgICAgICAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3LmdyYXBoaWNhdWRpby5uZXQvbWVkaWEvY2F0YWxvZy9wcm9kdWN0L2NhY2hlL2NlNjkyMzk0YmMzMWRiZTQxN2Y5ZDA0ZWI2NzgwMjM4L3Mvby9zb3QwMTAxLmpwZyIKICAgICAgICAgICAgbG9hZGluZz0ibGF6eSIKICAgICAgICAgICAgd2lkdGg9IjIwMCIKICAgICAgICAgICAgaGVpZ2h0PSIyMDAiCiAgICAgICAgICAgIGFsdD0iU29ucyYjeDIwO29mJiN4MjA7VGV4YXMmI3gyMDsxJiN4M0E7JiN4MjA7U29ucyYjeDIwO29mJiN4MjA7VGV4YXMmI3gyMDsxJiN4MjA7b2YmI3gyMDsyIi8+PC9zcGFuPgo8L3NwYW4+CjxzdHlsZT4ucHJvZHVjdC1pbWFnZS1jb250YWluZXItMTQ4Mi0xMTU3NDE5ODc3IHsKICAgIHdpZHRoOiAyMDBweDsKfQoucHJvZHVjdC1pbWFnZS1jb250YWluZXItMTQ4Mi0xMTU3NDE5ODc3IHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIHsKICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOwp9PC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQmI3gyRjtqYXZhc2NyaXB0Ij5wcm9kSW1hZ2VDb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODItMTE1NzQxOTg3NyIpOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNbaV0uc3R5bGUud2lkdGggPSAiMjAwcHgiOwp9CnByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODItMTE1NzQxOTg3NyAgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIiCik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnNbaV0uc3R5bGUucGFkZGluZ0JvdHRvbSA9ICIxMDAlIjsKfTwvc2NyaXB0PjwvZGl2PgoKPGgxIGNsYXNzPSJwcm9kdWN0LW5hbWUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJpZXMtbmFtZSI+U29ucyBvZiBUZXhhczwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVwaXNvZGUtbmFtZSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibnVtYmVyIj4xIDo8L3NwYW4+ICAgICAgICAgICAgICAgIFNvbnMgb2YgVGV4YXMgKDEgb2YgMikgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9oMT4KCjxkaXYgY2xhc3M9InByb2R1Y3QtYXV0aG9yIj4KICAgIGJ5IEVsbWVyIEtlbHRvbjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1pbmktYXR0cmlidXRlcyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1yZWxlYXNlZGF0ZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+UmVsZWFzZSBEYXRlOjwvbGFiZWw+IEFwciAxLCAyMDExICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1ydW5uaW5ndGltZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+QXBwcm94aW1hdGUgUnVubmluZyBUaW1lOjwvbGFiZWw+IDUgSG91cnMKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1jb250ZW50cmF0aW5nIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5Db250ZW50IFJhdGluZzo8L2xhYmVsPiBBZ2VzIDEzKyAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgIDxkaXYgY2xhc3M9InN0ZCI+TW9yZGVjYWkgTGV3aXMgYW5kIGhpcyBzb24gTWljaGFlbCBsZWFkIG1lbiBmcm9tIFRlbm5lc3NlZSBpbnRvIFNwYW5pc2gtcnVsZWQgVGV4YXMsIHRvIGh1bnQgd2lsZCBob3JzZXMuICBUaGUgdHJpcCBpcyBmYXRhbCBmb3IgTW9yZGVjYWksIGxlYXZpbmcgTWljaGFlbCBhbmQgaGlzIGZhbWlseSBpbiBkYW5nZXIsIGJvdGggZnJvbSB0aGUgc29sZGllcnMgb2YgU3BhaW4gYW5kIHRoZSBldmlsIEJsYWNrd29vZCBmYW1pbHkgYmFjayBob21lIGluIHRoZSBUZW5uZXNzZWUgaGlsbHMuICAgICAgICA8L2Rpdj4KICAgPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvcHlyaWdodCI+CiAgICAmY29weTsgMTk4OSBFbG1lciBLZWx0b24uIFB1Ymxpc2hlZCBieSBhcnJhbmdlbWVudCB3aXRoIEVsbWVyIEtlbHRvbiwgY2FyZSBvZiBTb2JlbC1XZWJiZXIgQXNzb2NpYXRlcywgSW5jb3Jwb3JhdGVkLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4gKFApIDIwMTEgVGhlIEN1dHRpbmcgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWVkaWEtcGxheWVyIj4KICAgICAgICA8YXVkaW8gY29udHJvbHMgcHJlbG9hZD0ibWV0YWRhdGEiIHN0eWxlPSJ3aWR0aDogMTAwJTsiIHNyYz0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvU09UMDEwMS5tcDMiIHR5cGU9ImF1ZGlvL21wZWciPgogICAgICAgIDwhLS0gZmFsbGJhY2sgZm9yIG5vbiBzdXBwb3J0aW5nIGJyb3dzZXJzIGdvZXMgaGVyZSAtLT4KICAgICAgICA8cD5Zb3VyIGJyb3dzZXIgZG9lcyBub3Qgc3VwcG9ydCBIVE1MNS4gWW91IGNhbiA8YSBocmVmPSJodHRwczovL3MzLmFtYXpvbmF3cy5jb20vZ3JhcGhpY2F1ZGlvc2FtcGxlcy9TT1QwMTAxLm1wMyI+ZG93bmxvYWQgdGhlIGF1ZGlvIHNhbXBsZTwvYT4uPC9wPgogICAgICAgIDwvYXVkaW8+CiAgICA8L2Rpdj4KIAoKPC9kaXY+
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODMtMTc1OTg5NTkxNCI+CiAgICA8c3BhbiBjbGFzcz0icHJvZHVjdC1pbWFnZS13cmFwcGVyIj4KICAgICAgICA8aW1nIGNsYXNzPSJwcm9kdWN0LWltYWdlLXBob3RvIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LXNrdT0iU09UMDEwMiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcHJvZHVjdC1uYW1lPSJVMjl1Y3lCdlppQlVaWGhoY3lBeE9pQlRiMjV6SUc5bUlGUmxlR0Z6SURJZ2IyWWdNZz09IgogICAgICAgICAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3LmdyYXBoaWNhdWRpby5uZXQvbWVkaWEvY2F0YWxvZy9wcm9kdWN0L2NhY2hlL2NlNjkyMzk0YmMzMWRiZTQxN2Y5ZDA0ZWI2NzgwMjM4L3Mvby9zb3QwMTAyLmpwZyIKICAgICAgICAgICAgbG9hZGluZz0ibGF6eSIKICAgICAgICAgICAgd2lkdGg9IjIwMCIKICAgICAgICAgICAgaGVpZ2h0PSIyMDAiCiAgICAgICAgICAgIGFsdD0iU29ucyYjeDIwO29mJiN4MjA7VGV4YXMmI3gyMDsxJiN4M0E7JiN4MjA7U29ucyYjeDIwO29mJiN4MjA7VGV4YXMmI3gyMDsyJiN4MjA7b2YmI3gyMDsyIi8+PC9zcGFuPgo8L3NwYW4+CjxzdHlsZT4ucHJvZHVjdC1pbWFnZS1jb250YWluZXItMTQ4My0xNzU5ODk1OTE0IHsKICAgIHdpZHRoOiAyMDBweDsKfQoucHJvZHVjdC1pbWFnZS1jb250YWluZXItMTQ4My0xNzU5ODk1OTE0IHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIHsKICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOwp9PC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQmI3gyRjtqYXZhc2NyaXB0Ij5wcm9kSW1hZ2VDb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODMtMTc1OTg5NTkxNCIpOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNbaV0uc3R5bGUud2lkdGggPSAiMjAwcHgiOwp9CnByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODMtMTc1OTg5NTkxNCAgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIiCik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnNbaV0uc3R5bGUucGFkZGluZ0JvdHRvbSA9ICIxMDAlIjsKfTwvc2NyaXB0PjwvZGl2PgoKPGgxIGNsYXNzPSJwcm9kdWN0LW5hbWUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJpZXMtbmFtZSI+U29ucyBvZiBUZXhhczwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVwaXNvZGUtbmFtZSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibnVtYmVyIj4xIDo8L3NwYW4+ICAgICAgICAgICAgICAgIFNvbnMgb2YgVGV4YXMgKDIgb2YgMikgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9oMT4KCjxkaXYgY2xhc3M9InByb2R1Y3QtYXV0aG9yIj4KICAgIGJ5IEVsbWVyIEtlbHRvbjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1pbmktYXR0cmlidXRlcyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1yZWxlYXNlZGF0ZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+UmVsZWFzZSBEYXRlOjwvbGFiZWw+IE1heSAxLCAyMDExICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1ydW5uaW5ndGltZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+QXBwcm94aW1hdGUgUnVubmluZyBUaW1lOjwvbGFiZWw+IDUgSG91cnMKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1jb250ZW50cmF0aW5nIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5Db250ZW50IFJhdGluZzo8L2xhYmVsPiBBZ2VzIDEzKyAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgIDxkaXYgY2xhc3M9InN0ZCI+VGhpcyBiZWdpbnMgdGhlIHNhZ2Egb2YgVGhlIExld2lzIGZhbWlseSwgTW9yZGVjYWkgYW5kIGhpcyBzb25zIE1pY2hhZWwgYW5kIEFuZHJldy4gIFRoZSBsZWF2ZSBUZW5uZXNzZWUgYW5kIGhlYWQgZm9yIFNwYW5pc2gtcnVsZWQgVGV4YXMgaW4gc2VhcmNoIG9mIHdpbGQgaG9yc2VzLiBXaGF0IHRoZXkgZmluZCB3aWxsIGNoYW5nZSB0aGVpciBsaXZlcyBmb3JldmVyLiAgICAgICAgPC9kaXY+CiAgIDwvZGl2PgoKPGRpdiBjbGFzcz0icHJvZHVjdC1jb3B5cmlnaHQiPgogICAgJmNvcHk7IDE5ODkgRWxtZXIgS2VsdG9uLiBQdWJsaXNoZWQgYnkgYXJyYW5nZW1lbnQgd2l0aCBFbG1lciBLZWx0b24sIGNhcmUgb2YgU29iZWwtV2ViYmVyIEFzc29jaWF0ZXMsIEluY29ycG9yYXRlZC4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuIChQKSAyMDExIFRoZSBDdXR0aW5nIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1lZGlhLXBsYXllciI+CiAgICAgICAgPGF1ZGlvIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzdHlsZT0id2lkdGg6IDEwMCU7IiBzcmM9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL1NPVDAxMDIubXAzIiB0eXBlPSJhdWRpby9tcGVnIj4KICAgICAgICA8IS0tIGZhbGxiYWNrIGZvciBub24gc3VwcG9ydGluZyBicm93c2VycyBnb2VzIGhlcmUgLS0+CiAgICAgICAgPHA+WW91ciBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgSFRNTDUuIFlvdSBjYW4gPGEgaHJlZj0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvU09UMDEwMi5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODQtNTMyNzg4NzU4Ij4KICAgIDxzcGFuIGNsYXNzPSJwcm9kdWN0LWltYWdlLXdyYXBwZXIiPgogICAgICAgIDxpbWcgY2xhc3M9InByb2R1Y3QtaW1hZ2UtcGhvdG8iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXByb2R1Y3Qtc2t1PSJTT1QwMjAxIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LW5hbWU9IlUyOXVjeUJ2WmlCVVpYaGhjeUF5T2lCU1lXbGtaWEp6SURFZ2IyWWdNZz09IgogICAgICAgICAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3LmdyYXBoaWNhdWRpby5uZXQvbWVkaWEvY2F0YWxvZy9wcm9kdWN0L2NhY2hlL2NlNjkyMzk0YmMzMWRiZTQxN2Y5ZDA0ZWI2NzgwMjM4L3Mvby9zb3QwMjAxLmpwZyIKICAgICAgICAgICAgbG9hZGluZz0ibGF6eSIKICAgICAgICAgICAgd2lkdGg9IjIwMCIKICAgICAgICAgICAgaGVpZ2h0PSIyMDAiCiAgICAgICAgICAgIGFsdD0iU29ucyYjeDIwO29mJiN4MjA7VGV4YXMmI3gyMDsyJiN4M0E7JiN4MjA7UmFpZGVycyYjeDIwOzEmI3gyMDtvZiYjeDIwOzIiLz48L3NwYW4+Cjwvc3Bhbj4KPHN0eWxlPi5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci0xNDg0LTUzMjc4ODc1OCB7CiAgICB3aWR0aDogMjAwcHg7Cn0KLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODQtNTMyNzg4NzU4IHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIHsKICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOwp9PC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQmI3gyRjtqYXZhc2NyaXB0Ij5wcm9kSW1hZ2VDb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODQtNTMyNzg4NzU4Iik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVycy5sZW5ndGg7IGkrKykgewogICAgcHJvZEltYWdlQ29udGFpbmVyc1tpXS5zdHlsZS53aWR0aCA9ICIyMDBweCI7Cn0KcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgKICAgICIucHJvZHVjdC1pbWFnZS1jb250YWluZXItMTQ4NC01MzI3ODg3NTggIHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIgopOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycy5sZW5ndGg7IGkrKykgewogICAgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzW2ldLnN0eWxlLnBhZGRpbmdCb3R0b20gPSAiMTAwJSI7Cn08L3NjcmlwdD48L2Rpdj4KCjxoMSBjbGFzcz0icHJvZHVjdC1uYW1lIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2VyaWVzLW5hbWUiPlNvbnMgb2YgVGV4YXM8L2Rpdj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJlcGlzb2RlLW5hbWUiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im51bWJlciI+MiA6PC9zcGFuPiAgICAgICAgICAgICAgICBSYWlkZXJzICgxIG9mIDIpICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvaDE+Cgo8ZGl2IGNsYXNzPSJwcm9kdWN0LWF1dGhvciI+CiAgICBieSBFbG1lciBLZWx0b248L2Rpdj4KCiAgICA8ZGl2IGNsYXNzPSJtaW5pLWF0dHJpYnV0ZXMiPgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtcmVsZWFzZWRhdGUiPgogICAgICAgICAgICAgICAgPGxhYmVsPlJlbGVhc2UgRGF0ZTo8L2xhYmVsPiBKdW4gMSwgMjAxMSAgICAgICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtcnVubmluZ3RpbWUiPgogICAgICAgICAgICAgICAgPGxhYmVsPkFwcHJveGltYXRlIFJ1bm5pbmcgVGltZTo8L2xhYmVsPiA0IEhvdXJzCiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIAogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InByb2R1Y3QtY29udGVudHJhdGluZyI+CiAgICAgICAgICAgICAgICA8bGFiZWw+Q29udGVudCBSYXRpbmc6PC9sYWJlbD4gQWdlcyAxMysgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CgogICA8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiI+CiAgICAgICA8ZGl2IGNsYXNzPSJzdGQiPlRoZSBzdG9yeSBvZiBNaWNoYWVsIGFuZCBBbmRyZXcgTGV3aXMgY29udGludWVzLiA1IHllYXJzIGFmdGVyIHRoZSBkZWF0aCBvZiB0aGVpciBmYXRoZXIgTW9yZGVjYWkgYXQgdGhlIGhhbmRzIG9mIFNwYW5pc2ggc29sZGllcnMgaW4gVGV4YXMsIE1pY2hhZWwgc2Vla3MgcmV2ZW5nZS4gIEhlLCBpbiB0dXJuLCBpcyBiZWluZyBodW50ZWQgYnkgdGhlIEJsYWNrd29vZCBmYW1pbHkgZnJvbSBUZW5uZXNzZWUsIHdobyBoYXZlIGRlY2xhcmVkIGEgZmV1ZCB3aXRoIHRoZSBMZXdpc2VzLiAgICAgICAgPC9kaXY+CiAgIDwvZGl2PgoKPGRpdiBjbGFzcz0icHJvZHVjdC1jb3B5cmlnaHQiPgogICAgJmNvcHk7IDE5ODkgRWxtZXIgS2VsdG9uLiBQdWJsaXNoZWQgYnkgYXJyYW5nZW1lbnQgd2l0aCBFbG1lciBLZWx0b24sIGNhcmUgb2YgU29iZWwtV2ViYmVyIEFzc29jaWF0ZXMsIEluY29ycG9yYXRlZC4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuIChQKSAyMDExIFRoZSBDdXR0aW5nIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1lZGlhLXBsYXllciI+CiAgICAgICAgPGF1ZGlvIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzdHlsZT0id2lkdGg6IDEwMCU7IiBzcmM9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL1NPVDAyMDEubXAzIiB0eXBlPSJhdWRpby9tcGVnIj4KICAgICAgICA8IS0tIGZhbGxiYWNrIGZvciBub24gc3VwcG9ydGluZyBicm93c2VycyBnb2VzIGhlcmUgLS0+CiAgICAgICAgPHA+WW91ciBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgSFRNTDUuIFlvdSBjYW4gPGEgaHJlZj0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvU09UMDIwMS5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODUtMTYzOTMzMDY0NCI+CiAgICA8c3BhbiBjbGFzcz0icHJvZHVjdC1pbWFnZS13cmFwcGVyIj4KICAgICAgICA8aW1nIGNsYXNzPSJwcm9kdWN0LWltYWdlLXBob3RvIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LXNrdT0iU09UMDIwMiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcHJvZHVjdC1uYW1lPSJVMjl1Y3lCdlppQlVaWGhoY3lBeU9pQlNZV2xrWlhKeklESWdiMllnTWc9PSIKICAgICAgICAgICAgICAgICAgICAgICAgc3JjPSJodHRwczovL3d3dy5ncmFwaGljYXVkaW8ubmV0L21lZGlhL2NhdGFsb2cvcHJvZHVjdC9jYWNoZS9jZTY5MjM5NGJjMzFkYmU0MTdmOWQwNGViNjc4MDIzOC9zL28vc290MDIwMi5qcGciCiAgICAgICAgICAgIGxvYWRpbmc9ImxhenkiCiAgICAgICAgICAgIHdpZHRoPSIyMDAiCiAgICAgICAgICAgIGhlaWdodD0iMjAwIgogICAgICAgICAgICBhbHQ9IlNvbnMmI3gyMDtvZiYjeDIwO1RleGFzJiN4MjA7MiYjeDNBOyYjeDIwO1JhaWRlcnMmI3gyMDsyJiN4MjA7b2YmI3gyMDsyIi8+PC9zcGFuPgo8L3NwYW4+CjxzdHlsZT4ucHJvZHVjdC1pbWFnZS1jb250YWluZXItMTQ4NS0xNjM5MzMwNjQ0IHsKICAgIHdpZHRoOiAyMDBweDsKfQoucHJvZHVjdC1pbWFnZS1jb250YWluZXItMTQ4NS0xNjM5MzMwNjQ0IHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIHsKICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOwp9PC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQmI3gyRjtqYXZhc2NyaXB0Ij5wcm9kSW1hZ2VDb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODUtMTYzOTMzMDY0NCIpOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNbaV0uc3R5bGUud2lkdGggPSAiMjAwcHgiOwp9CnByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODUtMTYzOTMzMDY0NCAgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIiCik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnNbaV0uc3R5bGUucGFkZGluZ0JvdHRvbSA9ICIxMDAlIjsKfTwvc2NyaXB0PjwvZGl2PgoKPGgxIGNsYXNzPSJwcm9kdWN0LW5hbWUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJpZXMtbmFtZSI+U29ucyBvZiBUZXhhczwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVwaXNvZGUtbmFtZSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibnVtYmVyIj4yIDo8L3NwYW4+ICAgICAgICAgICAgICAgIFJhaWRlcnMgKDIgb2YgMikgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9oMT4KCjxkaXYgY2xhc3M9InByb2R1Y3QtYXV0aG9yIj4KICAgIGJ5IEVsbWVyIEtlbHRvbjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1pbmktYXR0cmlidXRlcyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1yZWxlYXNlZGF0ZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+UmVsZWFzZSBEYXRlOjwvbGFiZWw+IEp1bCAxLCAyMDExICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1ydW5uaW5ndGltZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+QXBwcm94aW1hdGUgUnVubmluZyBUaW1lOjwvbGFiZWw+IDQgSG91cnMKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1jb250ZW50cmF0aW5nIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5Db250ZW50IFJhdGluZzo8L2xhYmVsPiBBZ2VzIDEzKyAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgIDxkaXYgY2xhc3M9InN0ZCI+VGhlIHN0b3J5IG9mIE1pY2hhZWwgYW5kIEFuZHJldyBMZXdpcyBjb250aW51ZXMuIDUgeWVhcnMgYWZ0ZXIgdGhlIGRlYXRoIG9mIHRoZWlyIGZhdGhlciBNb3JkZWNhaSBhdCB0aGUgaGFuZHMgb2YgU3BhbmlzaCBzb2xkaWVycyBpbiBUZXhhcywgTWljaGFlbCBzZWVrcyByZXZlbmdlLiAgSGUsIGluIHR1cm4sIGlzIGJlaW5nIGh1bnRlZCBieSB0aGUgQmxhY2t3b29kIGZhbWlseSBmcm9tIFRlbm5lc3NlZSwgd2hvIGhhdmUgZGVjbGFyZWQgYSBmZXVkIHdpdGggdGhlIExld2lzZXMuICAgICAgICA8L2Rpdj4KICAgPC9kaXY+Cgo8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvcHlyaWdodCI+CiAgICAmY29weTsgMTk4OSBFbG1lciBLZWx0b24uIFB1Ymxpc2hlZCBieSBhcnJhbmdlbWVudCB3aXRoIEVsbWVyIEtlbHRvbiwgY2FyZSBvZiBTb2JlbC1XZWJiZXIgQXNzb2NpYXRlcywgSW5jb3Jwb3JhdGVkLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4gKFApIDIwMTEgVGhlIEN1dHRpbmcgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWVkaWEtcGxheWVyIj4KICAgICAgICA8YXVkaW8gY29udHJvbHMgcHJlbG9hZD0ibWV0YWRhdGEiIHN0eWxlPSJ3aWR0aDogMTAwJTsiIHNyYz0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvU09UMDIwMi5tcDMiIHR5cGU9ImF1ZGlvL21wZWciPgogICAgICAgIDwhLS0gZmFsbGJhY2sgZm9yIG5vbiBzdXBwb3J0aW5nIGJyb3dzZXJzIGdvZXMgaGVyZSAtLT4KICAgICAgICA8cD5Zb3VyIGJyb3dzZXIgZG9lcyBub3Qgc3VwcG9ydCBIVE1MNS4gWW91IGNhbiA8YSBocmVmPSJodHRwczovL3MzLmFtYXpvbmF3cy5jb20vZ3JhcGhpY2F1ZGlvc2FtcGxlcy9TT1QwMjAyLm1wMyI+ZG93bmxvYWQgdGhlIGF1ZGlvIHNhbXBsZTwvYT4uPC9wPgogICAgICAgIDwvYXVkaW8+CiAgICA8L2Rpdj4KIAoKPC9kaXY+
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODYtMTI2NzE2Mjg1OCI+CiAgICA8c3BhbiBjbGFzcz0icHJvZHVjdC1pbWFnZS13cmFwcGVyIj4KICAgICAgICA8aW1nIGNsYXNzPSJwcm9kdWN0LWltYWdlLXBob3RvIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1wcm9kdWN0LXNrdT0iU09UMDMwMSIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcHJvZHVjdC1uYW1lPSJVMjl1Y3lCdlppQlVaWGhoY3lBek9pQlVhR1VnVW1WaVpXeHpJREVnYjJZZ01nPT0iCiAgICAgICAgICAgICAgICAgICAgICAgIHNyYz0iaHR0cHM6Ly93d3cuZ3JhcGhpY2F1ZGlvLm5ldC9tZWRpYS9jYXRhbG9nL3Byb2R1Y3QvY2FjaGUvY2U2OTIzOTRiYzMxZGJlNDE3ZjlkMDRlYjY3ODAyMzgvcy9vL3NvdDAzMDEuanBnIgogICAgICAgICAgICBsb2FkaW5nPSJsYXp5IgogICAgICAgICAgICB3aWR0aD0iMjAwIgogICAgICAgICAgICBoZWlnaHQ9IjIwMCIKICAgICAgICAgICAgYWx0PSJTb25zJiN4MjA7b2YmI3gyMDtUZXhhcyYjeDIwOzMmI3gzQTsmI3gyMDtUaGUmI3gyMDtSZWJlbHMmI3gyMDsxJiN4MjA7b2YmI3gyMDsyIi8+PC9zcGFuPgo8L3NwYW4+CjxzdHlsZT4ucHJvZHVjdC1pbWFnZS1jb250YWluZXItMTQ4Ni0xMjY3MTYyODU4IHsKICAgIHdpZHRoOiAyMDBweDsKfQoucHJvZHVjdC1pbWFnZS1jb250YWluZXItMTQ4Ni0xMjY3MTYyODU4IHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIHsKICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOwp9PC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQmI3gyRjtqYXZhc2NyaXB0Ij5wcm9kSW1hZ2VDb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODYtMTI2NzE2Mjg1OCIpOwpmb3IgKHZhciBpID0gMDsgaSA8IHByb2RJbWFnZUNvbnRhaW5lcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNbaV0uc3R5bGUud2lkdGggPSAiMjAwcHgiOwp9CnByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVycyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODYtMTI2NzE2Mjg1OCAgc3Bhbi5wcm9kdWN0LWltYWdlLXdyYXBwZXIiCik7CmZvciAodmFyIGkgPSAwOyBpIDwgcHJvZEltYWdlQ29udGFpbmVyc1dyYXBwZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnNbaV0uc3R5bGUucGFkZGluZ0JvdHRvbSA9ICIxMDAlIjsKfTwvc2NyaXB0PjwvZGl2PgoKPGgxIGNsYXNzPSJwcm9kdWN0LW5hbWUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJzZXJpZXMtbmFtZSI+U29ucyBvZiBUZXhhczwvZGl2PgogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVwaXNvZGUtbmFtZSI+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibnVtYmVyIj4zIDo8L3NwYW4+ICAgICAgICAgICAgICAgIFRoZSBSZWJlbHMgKDEgb2YgMikgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgPC9oMT4KCjxkaXYgY2xhc3M9InByb2R1Y3QtYXV0aG9yIj4KICAgIGJ5IEVsbWVyIEtlbHRvbjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1pbmktYXR0cmlidXRlcyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1yZWxlYXNlZGF0ZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+UmVsZWFzZSBEYXRlOjwvbGFiZWw+IEF1ZyAxLCAyMDExICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1ydW5uaW5ndGltZSI+CiAgICAgICAgICAgICAgICA8bGFiZWw+QXBwcm94aW1hdGUgUnVubmluZyBUaW1lOjwvbGFiZWw+IDQgSG91cnMKICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHJvZHVjdC1jb250ZW50cmF0aW5nIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5Db250ZW50IFJhdGluZzo8L2xhYmVsPiBBZ2VzIDEzKyAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2Rpdj4KCiAgIDxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIj4KICAgICAgIDxkaXYgY2xhc3M9InN0ZCI+TWV4aWNvIHdvbiBpdHMgZnJlZWRvbSBmcm9tIFNwYWluLCBhbmQgbm93IHRoZSBBbWVyaWNhbiBzZXR0bGVycyBpbiBUZXhhcyB3YW50IHRoZWlyIGluZGVwZW5kZW5jZSBmcm9tIHRoZSBnb3Zlcm5tZW50IG9mIE1leGljby4gIFJldm9sdXRpb24gaXMgaW4gdGhlIGFpciwgYW5kIHRoZSBMZXdpcyBmYW1pbHkgaXMgY2F1Z2h0IHVwIGluIHRoZSBzdHJ1Z2dsZSB3aGljaCB3aWxsIGxlYWQgdG8gdGhlIGRvb21lZCBiYXR0bGUgb2YgdGhlIEFsYW1vLiAgICAgICAgPC9kaXY+CiAgIDwvZGl2PgoKPGRpdiBjbGFzcz0icHJvZHVjdC1jb3B5cmlnaHQiPgogICAgJmNvcHk7IDE5OTAgRWxtZXIgS2VsdG9uLiBQdWJsaXNoZWQgYnkgYXJyYW5nZW1lbnQgd2l0aCBFbG1lciBLZWx0b24sIGNhcmUgb2YgU29iZWwtV2ViYmVyIEFzc29jaWF0ZXMsIEluY29ycG9yYXRlZC4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuIChQKSAyMDExIFRoZSBDdXR0aW5nIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1lZGlhLXBsYXllciI+CiAgICAgICAgPGF1ZGlvIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzdHlsZT0id2lkdGg6IDEwMCU7IiBzcmM9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL1NPVDAzMDEubXAzIiB0eXBlPSJhdWRpby9tcGVnIj4KICAgICAgICA8IS0tIGZhbGxiYWNrIGZvciBub24gc3VwcG9ydGluZyBicm93c2VycyBnb2VzIGhlcmUgLS0+CiAgICAgICAgPHA+WW91ciBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgSFRNTDUuIFlvdSBjYW4gPGEgaHJlZj0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvU09UMDMwMS5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==
-
PGRpdiBjbGFzcz0iZ3JhcGhpY2F1ZGlvLWdyaWQtcHJvZHVjdC12aWV3Ij4KCjxkaXYgY2xhc3M9InByb2R1Y3QtbWVkaWEiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2UtY29udGFpbmVyIHByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODctMzMxNjUxOTIiPgogICAgPHNwYW4gY2xhc3M9InByb2R1Y3QtaW1hZ2Utd3JhcHBlciI+CiAgICAgICAgPGltZyBjbGFzcz0icHJvZHVjdC1pbWFnZS1waG90byIKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtcHJvZHVjdC1za3U9IlNPVDAzMDIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhLXByb2R1Y3QtbmFtZT0iVTI5dWN5QnZaaUJVWlhoaGN5QXpPaUJVYUdVZ1VtVmlaV3h6SURJZ2IyWWdNZz09IgogICAgICAgICAgICAgICAgICAgICAgICBzcmM9Imh0dHBzOi8vd3d3LmdyYXBoaWNhdWRpby5uZXQvbWVkaWEvY2F0YWxvZy9wcm9kdWN0L2NhY2hlL2NlNjkyMzk0YmMzMWRiZTQxN2Y5ZDA0ZWI2NzgwMjM4L3Mvby9zb3QwMzAyLmpwZyIKICAgICAgICAgICAgbG9hZGluZz0ibGF6eSIKICAgICAgICAgICAgd2lkdGg9IjIwMCIKICAgICAgICAgICAgaGVpZ2h0PSIyMDAiCiAgICAgICAgICAgIGFsdD0iU29ucyYjeDIwO29mJiN4MjA7VGV4YXMmI3gyMDszJiN4M0E7JiN4MjA7VGhlJiN4MjA7UmViZWxzJiN4MjA7MiYjeDIwO29mJiN4MjA7MiIvPjwvc3Bhbj4KPC9zcGFuPgo8c3R5bGU+LnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODctMzMxNjUxOTIgewogICAgd2lkdGg6IDIwMHB4Owp9Ci5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci0xNDg3LTMzMTY1MTkyIHNwYW4ucHJvZHVjdC1pbWFnZS13cmFwcGVyIHsKICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOwp9PC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQmI3gyRjtqYXZhc2NyaXB0Ij5wcm9kSW1hZ2VDb250YWluZXJzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnByb2R1Y3QtaW1hZ2UtY29udGFpbmVyLTE0ODctMzMxNjUxOTIiKTsKZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9kSW1hZ2VDb250YWluZXJzLmxlbmd0aDsgaSsrKSB7CiAgICBwcm9kSW1hZ2VDb250YWluZXJzW2ldLnN0eWxlLndpZHRoID0gIjIwMHB4IjsKfQpwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKAogICAgIi5wcm9kdWN0LWltYWdlLWNvbnRhaW5lci0xNDg3LTMzMTY1MTkyICBzcGFuLnByb2R1Y3QtaW1hZ2Utd3JhcHBlciIKKTsKZm9yICh2YXIgaSA9IDA7IGkgPCBwcm9kSW1hZ2VDb250YWluZXJzV3JhcHBlcnMubGVuZ3RoOyBpKyspIHsKICAgIHByb2RJbWFnZUNvbnRhaW5lcnNXcmFwcGVyc1tpXS5zdHlsZS5wYWRkaW5nQm90dG9tID0gIjEwMCUiOwp9PC9zY3JpcHQ+PC9kaXY+Cgo8aDEgY2xhc3M9InByb2R1Y3QtbmFtZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNlcmllcy1uYW1lIj5Tb25zIG9mIFRleGFzPC9kaXY+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZXBpc29kZS1uYW1lIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJudW1iZXIiPjMgOjwvc3Bhbj4gICAgICAgICAgICAgICAgVGhlIFJlYmVscyAoMiBvZiAyKSAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICA8L2gxPgoKPGRpdiBjbGFzcz0icHJvZHVjdC1hdXRob3IiPgogICAgYnkgRWxtZXIgS2VsdG9uPC9kaXY+CgogICAgPGRpdiBjbGFzcz0ibWluaS1hdHRyaWJ1dGVzIj4KICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LXJlbGVhc2VkYXRlIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5SZWxlYXNlIERhdGU6PC9sYWJlbD4gU2VwIDEsIDIwMTEgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LXJ1bm5pbmd0aW1lIj4KICAgICAgICAgICAgICAgIDxsYWJlbD5BcHByb3hpbWF0ZSBSdW5uaW5nIFRpbWU6PC9sYWJlbD4gNSBIb3VycwogICAgICAgICAgICA8L2Rpdj4KICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwcm9kdWN0LWNvbnRlbnRyYXRpbmciPgogICAgICAgICAgICAgICAgPGxhYmVsPkNvbnRlbnQgUmF0aW5nOjwvbGFiZWw+IEFnZXMgMTMrICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgoKICAgPGRpdiBjbGFzcz0iZGVzY3JpcHRpb24iPgogICAgICAgPGRpdiBjbGFzcz0ic3RkIj5JdCdzIGJlZW4gMTUgeWVhcnMgc2luY2UgYnJvdGhlcnMgTWljaGFlbCBhbmQgQW5kcmV3IExld2lzIGNhbWUgZnJvbSBUZW5uZXNzZWUgdG8gTWV4aWNhbi1ydW4gVGV4YXMgdG8gaHVudCB3aWxkIGhvcnNlcy4gVGhleSBoYXZlIHNldHRsZWQgYW5kIGZvdW5kIHdpdmVzLCBhbmQgdGhleSdyZSBub3cgam9pbmVkIGJ5IHRoZWlyIGJyb3RoZXIgYW5kIHNpc3RlciwgSmFtZXMgYW5kIEFubmllLiBKYW1lcyBiZWNvbWVzIGEgdm9sdW50ZWVyIGluIGEgZmxlZGdsaW5nIGFybXkgb2YgcmViZWxzIGxlZCBieSBTYW0gSG91c3Rvbi4gTWljaGFlbCBhbmQgQW5kcmV3IGFyZSBzZXBhcmF0ZWQgZnJvbSB0aGVpciBmYW1pbGllcyBhbmQgZWFjaCBvdGhlciwgYmVpbmcgZHJhd24gaW50byB0aGUgY29uZmxpY3QgYXMgdGhlIGRyaXZlIHRvd2FyZCBpbmRlcGVuZGVuY2UgZnJvbSB0aGUgZ292ZXJubWVudCBvZiBNZXhpY28gQ2l0eSBnYWlucyBtb21lbnR1bS4gVGhleSBtZWV0IGFuZCBmb2xsb3cgbWVuIGxpa2UgSmltIEJvd2llLCBEYXZpZCBDcm9ja2V0dCBhbmQgSnVhbiBTZWd1aW4sIGFuZCB0aGVpciBjb3VyYWdlIHRha2VzIHRoZW0gdGhyb3VnaCB0aGUgYmF0dGxlcyBvZiBHb256YWxlcyBhbmQgQmV4YXIuIFRoZXkgbG9zZSBnb29kIGZyaWVuZHMgdG8gdGhlIGd1bnMgb2YgR2VuZXJhbCBBbnRvbmlvIExvcGV6IGRlIFNhbnRhIEFubmEgaW4gdGhlIGJsb29keSBzaWVnZSBvZiB0aGUgQWxhbW8gYXMgdGhlIGN1cnJlbnRzIG9mIHdhciBzd2VlcCB0aGVtIHRvd2FyZCB0aGUgYmF0dGxlIG9mIEdvbGlhZCwgYW5kIEluZGVwZW5kZW5jZSBmb3IgVGV4YXMuIFRoZSBMZXdpcyBmYW1pbHkgbXVzdCB0aGVuIHNlYXJjaCBmb3IgZWFjaCBvdGhlciBpbiB0aGUgYWZ0ZXJtYXRoLiAgICAgICAgPC9kaXY+CiAgIDwvZGl2PgoKPGRpdiBjbGFzcz0icHJvZHVjdC1jb3B5cmlnaHQiPgogICAgJmNvcHk7IDE5OTAgRWxtZXIgS2VsdG9uLiBQdWJsaXNoZWQgYnkgYXJyYW5nZW1lbnQgd2l0aCBFbG1lciBLZWx0b24sIGNhcmUgb2YgU29iZWwtV2ViYmVyIEFzc29jaWF0ZXMsIEluY29ycG9yYXRlZC4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuIChQKSAyMDExIFRoZSBDdXR0aW5nIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjwvZGl2PgoKICAgIDxkaXYgY2xhc3M9Im1lZGlhLXBsYXllciI+CiAgICAgICAgPGF1ZGlvIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzdHlsZT0id2lkdGg6IDEwMCU7IiBzcmM9Imh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9ncmFwaGljYXVkaW9zYW1wbGVzL1NPVDAzMDIubXAzIiB0eXBlPSJhdWRpby9tcGVnIj4KICAgICAgICA8IS0tIGZhbGxiYWNrIGZvciBub24gc3VwcG9ydGluZyBicm93c2VycyBnb2VzIGhlcmUgLS0+CiAgICAgICAgPHA+WW91ciBicm93c2VyIGRvZXMgbm90IHN1cHBvcnQgSFRNTDUuIFlvdSBjYW4gPGEgaHJlZj0iaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2dyYXBoaWNhdWRpb3NhbXBsZXMvU09UMDMwMi5tcDMiPmRvd25sb2FkIHRoZSBhdWRpbyBzYW1wbGU8L2E+LjwvcD4KICAgICAgICA8L2F1ZGlvPgogICAgPC9kaXY+CiAKCjwvZGl2Pg==