NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name IMDB Customizable Search Links // @namespace https://userscripts-mirror.org/users/4229 // @description Search directly from IMDb for reviews, torrents, subtitles and much more using movie title or IMDb-ID. // @include http://*.imdb.com/title/*/ // @include http://*.imdb.com/title/*/reference* // @include http://imdb.com/title/*/*/reference?* // @include http://*.imdb.com/title/*/* // @include http://*.imdb.com/title/*/*/?* // @include http://imdb.com/title/*/ // @include http://imdb.com/title/*/reference // @include http://imdb.com/title/*/* // @include http://imdb.com/title/*/*/?* // @include https://*.imdb.com/title/*/ // @include https://*.imdb.com/title/*/reference* // @include https://imdb.com/title/*/*/reference?* // @include https://*.imdb.com/title/*/* // @include https://*.imdb.com/title/*/*/?* // @include https://imdb.com/title/*/ // @include https://imdb.com/title/*/reference // @include https://imdb.com/title/*/* // @include https://imdb.com/title/*/*/?* // @version 0.046 // @grant GM_openInTab // @grant GM_addStyle // @grant GM_getValue // @grant GM_setValue // @history 0.46 Support for https IMDB // @license GPL-3.0-or-later // @updateURL https://openuserjs.org/meta/nascent/IMDB_Customizable_Search_Links.meta.js // @downloadURL https://openuserjs.org/install/nascent/IMDB_Customizable_Search_Links.user.js // ==/UserScript== // Based on xyzop's "IMDb->DirectSearch" which is a modification of "IMDB->Torrents Linker" by Yoda Uk (Arvid Jakobsson) // Modification by nascent /* BEGIN LICENSE BLOCK Copyright (C) 2005 Arvid Jakobsson This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You can download a copy of the GNU General Public License at http://www.gnu.org/licenses/gpl.html or get a free printed copy by writing to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. END LICENSE BLOCK */ // --------------- SEARCH ENGINES --------------- var trackers = new Array(); //Default sites using public trackers only. var searchEngines = [{"tracker": {"tracker_name": "Netflix", "tracker_url": "https://www.netflix.com/search/%title", "tracker_icon": "http://netflix.com/favicon.ico"}},{"tracker": {"tracker_name": "Amazon Prime Video", "tracker_url": "https://www.amazon.co.uk/s/ref=nb_sb_ss_c_0_8?url=search-alias%3Dprime-instant-video&field-keywords=%title&sprefix=%title%2Caps%2C151&rh=i%3Aprime-instant-video%2Ck%3A%title", "tracker_icon": "http://amazon.co.uk/favicon.ico"}},{"tracker": {"tracker_name": "Pass The Popcorn", "tracker_url": "http://passthepopcorn.me/torrents.php?imdb=%imdb-id", "tracker_icon": "http://passthepopcorn.me/favicon.ico"}}, {"tracker": {"tracker_name": "Cinemageddon", "tracker_url": "http://cinemageddon.net/browse.php?search=tt%imdb-id", "tracker_icon": "http://cinemageddon.net/favicon.ico"}},{"tracker": {"tracker_name": "Karagarga", "tracker_url": "https://karagarga.in/browse.php?incldead=&d=&sort=&search=%imdb-id&search_type=imdb", "tracker_icon": "http://karagarga.in/favicon.ico"}},{"tracker": {"tracker_name": "Cinematik", "tracker_url": "https://www.cinematik.net/browse.php?search=%title%&cat=0&incldead=1&sort=1&type=asc&srchdtls=0", "tracker_icon": "http://www.cinematik.net/favicon.ico"}},{"tracker": {"tracker_name": "Secret-Cinema", "tracker_url": "http://www.secret-cinema.net/browse.php?incldead=1&tpp=50&search=%title&dirty=1", "tracker_icon": "http://www.secret-cinema.net/favicon.ico"}},{"tracker": {"tracker_name": "goem", "tracker_url": "http://goem.org/browse.php?incldead=1&s_type=2&search=%imdb-id","tracker_icon": "http://goem.org/favicon.ico"}},{"tracker": {"tracker_name": "TehConnection", "tracker_url": "http://gladosdan.com/tc/imdb_tc_translate.php?imdb=%imdb-id", "tracker_icon": "http://tehconnection.eu/favicon.ico"}},{"tracker": {"tracker_name": "SceneAccess", "tracker_url": "https://sceneaccess.org/browse.php?search=%title&method=2", "tracker_icon": "http://sceneaccess.org/favicon.ico"}},{"tracker": {"tracker_name": "TorrentLeech", "tracker_url": "http://www.torrentleech.org/torrents/browse/index/query/%title", "tracker_icon": "http://www.torrentleech.org/favicon.ico"}},{"tracker": {"tracker_name": "BroadcasTheNet", "tracker_url": "https://broadcasthe.net/torrents.php?imdb=tt%imdb-id", "tracker_icon": "http://broadcasthe.net/favicon.ico"}},{"tracker": {"tracker_name": "BitMeTV", "tracker_url": "https://www.bitmetv.org/browse.php?search=%title&cat=0", "tracker_icon": "https://www.bitmetv.org/favicon.ico"}},{"tracker": {"tracker_name": "TheBox", "tracker_url": "http://www.zxcv.fm/browse.php?incldead=0&search=%title&nonboolean=1&titleonly=1", "tracker_icon": "http://www.zxcv.fm/favicon.ico"}},{"tracker": {"tracker_name": "UKNova", "tracker_url": "http://uknova.com/wsgi/torrent/find?title=%title&uploadtype=0&definition=0&created0=&created1=&sort=bumped", "tracker_icon": "http://www.uknova.com/theme/-dark/img/shortcut.ico"}},{"tracker": {"tracker_name": "Demonoid", "tracker_url": "http://www.demonoid.me/files/?category=1&subcategory=0&language=0&quality=0&seeded=0&external=2&query=%title&uid=0&sort=S", "tracker_icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/gD+AP7rGNSCAAAACXBIWXMAAABIAAAASABGyWs+AAAACXZwQWcAAAAQAAAAEABcxq3DAAACR0lEQVQ4y8WTz0sUYRjHP7M7O+4P29zdljQE3RKULCSLQIyKiYLoUBBdO+TFoEuXKCjoWgQdPRlEd/sLHC+F6aVwbUstcl01WRvd3dlxdmaceTvIatIPvPWcvrwP75eH5/l84X+WqqpCqov6o6Zp0l4+1rVcF3ceRfGEAHaaf6uBey7gMPw0tmOgr3pkOhp5+DzK4kKV9iMJQqEAnu8DgrJuo+s2TUmwLJtvX2pAjEDdoFyykQJg1wQfP5TRV2s4jsAyfSzTJxJVqJQcFuaLhCMNzOR0NE2Ttg2cWgghBIGAxOVrbSRSYRxb8HZsGc/32PQ8WjM+zYeaqJolioXY7h1I8gaIOEHZp1hcx6x6hGSFrmMp1leDGNVFIjEPOeQSCsaxnO+oqiqCqqqKwQcNtB+OkZ8vk52UUNxLdLTcYGpykwv9d+lqu85sNsyb0R9IUpQNZ4HTZ32mxpNbEywvVZh+34jinqPvxBlOnuohnU5RqRjIskwy1UTzwRauXrlJOt3Kk2f36Tmf25q8fteBW7fp7T1OONqAtWGhKAqu62IYBolEgkKhQDKZJJ+fp1QyeflqCHxl6wqapknDL4ao2Q4tza3Mzc2xsrJCZ2cnpmmSy+Xo7u7GdX1KJYNKRQdfQdM0KVhfYiaTeZxfHqdxH4yNTrA/foBYNM67iQk+f5ohEIDc7BgjI6+Zzs5sE7sLW1VVRd9FC09UCAZ9fCEQvoTtlNHX1iivC4yl/l24/8b9r5xnjuqEwxEct8bXbPKPWflncPYSsp+9dAnY5lgLkAAAAABJRU5ErkJggg%3D%3D"}},{"tracker": {"tracker_name": "isoHunt (Video/Movies)", "tracker_url": "http://isohunt.com/torrents/%title?ihp=1&iht=1&ihs1=2&iho1=d", "tracker_icon": "data:image/x-icon;base64,AAABAAEAEBAAAAEAGABoAwAAFgAAACgAAAAQAAAAIAAAAAEAGAAAAAAAQAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD39vX28e/5+fUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkim2EWjTazb0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkimdmMwDBq5oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQv6qymH4AAACulH1mMwCpi3EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD08O16UCaAXDPs5N/Mu6xmMwCgfl8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD7+viadFNzRRPl3tjn39dyRBaJYz4AAAAAAAAAAAC7qJaQbUvfzsYAAAAAAAAAAAAAAAC1m4ZmMwDGs57p4tqFXjh9VCXo4dgAAAAAAADZyrx1SByMbEUAAAAAAAAAAAAAAADJvKtsPQujh2n7+/qUd1dmMwB1Rxl3SRx3SRx1RxlmNAGKZj/l2NMAAAAAAAAAAADk1c5wQBGNZ0H18O2niGNmMwBtPA52SRx2SRx2SRxtPQxoNQPl2tQAAAAAAAAAAADz8eyHXz9xQxXt6OTMvrNpNwW1mYQAAAAAAAAAAACxloNmMwC6p40AAAAAAAAAAAAAAACjgGJsOgrTx7Xs49uFXjeXdlXv6uMAAAAAAADXzb9sPAujgWYAAAAAAAAAAAAAAAC/rZlmNAG4n4gAAAAAAAAAAAAAAAAAAAAAAADn39d3TCGDWS7PwbQAAAAAAAAAAADx7ei6pI7Yyr0AAAAAAAAAAAAAAAAAAAAAAAAAAACJZD9rOgrIs54AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADGsZxmMwCkjnAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADSwLdtPQqDWjL08vAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADy7uju6eQAAADx/wAA8f8AAPH/AACR/wAAAf8AAAHHAACAxwAAgAMAAIADAACA4wAAwGMAAMfhAADH8QAA//EAAP/wAAD/+QAA"}},{"tracker": {"tracker_name": "AllMovie", "tracker_url": "http://www.allrovi.com/search/movies/%title", "tracker_icon": "data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAACXBIWXMAAA7DAAAOwwHHb6hkAAACBklEQVQokWP4////gwsXVzc0T4qJx4OWVdZc3rsPqJjh7pmzPcHhPUFhxKBTGzYxrKhtwCIXHN7hE9Dm6QtiB4a2uHt3+QX1BIfNzsxhmByTgKmh0zcQaNDOqTO6A0MnhEcfXrJsbk5Bl1/wpOh4BiAGqugOCAEaCURd/sFAbqub14m1618/fATkTo5NBDp9Q1dvu6c/0DMMQAw0pj88eklp5cq6xmmJqUBtre7eR5avfHrjJkhDTMLPr9/WtXW2e8E0AB1wbuv2z2/fvnn8+OOr1yuq6xqd3PBp6PYPWVhYCrQa6Nx7Z889vHipydn9yLIVuG3wC5qenHZ6w6bbJ0+9uHvv4aXLQCcdXrocu4YJkbFT45PePXl6/9z5OVm5J9dteHTlKjAcDy9b8eT6DaBrIRrWNLVBPd0fFgX0659fvydExlRb2p5cux6orsXVE2jD64cPe0MigMH498/f3bPmAKMFagMwZN4+fvL4ytULO3YBrQL6fnpi6vLquj+//1w/cgRoyY0jR///+7+upb0vJAIUD52+QTNSM4Bm75u3AMjdNmnKvLzCdm9/oJ6d02Z0BYRMiIjZO2fesspaoHMYFhWXg6LWL6jFzavNwxfoS6DVkOjr8IamDmC0tnr4AK2amZbFcPXAISJTHhDtX7CIARjtZ7duA7oBf/IGBiAwRf35/RsAknmV/hUMm9MAAAAASUVORK5CYII="}},{"tracker": {"tracker_name": "Wikipedia", "tracker_url": "http://en.wikipedia.org/wiki/Special:Search?search=%title&go=Go", "tracker_icon": "data:image/x-icon;base64,AAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAEAgQAhIOEAMjHyABIR0gA6ejpAGlqaQCpqKkAKCgoAPz9/AAZGBkAmJiYANjZ2ABXWFcAent6ALm6uQA8OjwAiIiIiIiIiIiIiI4oiL6IiIiIgzuIV4iIiIhndo53KIiIiB/WvXoYiIiIfEZfWBSIiIEGi/foqoiIgzuL84i9iIjpGIoMiEHoiMkos3FojmiLlUipYliEWIF+iDe0GoRa7D6GPbjcu1yIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"}},{"tracker": {"tracker_name": "Youtube", "tracker_url": "http://www.youtube.com/results?search_query=%22%title%22&search=Search", "tracker_icon": "data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAABMLAAATCwAAAAAAAAAAAAD//////////4OD//9paf//bm7//2Fh//9ZWf//Wlr//1pa//9WVv//ZGT//3Bw//9jY///goL//////////////////11d//8sLP//QUH//ygo//84OP//RET//y4u//8xMf//UVH//y4u//8PD///ZWX//x0d//9aWv////////////88PP//Cgr///////8zM///1NT///////+lpf//ubn///////+urv//fHz////////g4P//Fhb/////////////MzP//woK////////NDT//8vL//9ycv//paX//7Cw//9jY///s7P//8nJ//9XV///eXn//yIi/////////////zMz//8LC///+/v//zMz///Gxv//hYX//6Ki//+srP//W1v//6ys//+3t///2tr//93d//8PD/////////////80NP//AgL///b2//8nJ///5ub//56e//+5uf//oaH//+/v//+5uf//oKD//+Li///f3///AgL/////////////MzP//wUF////////Skr//0pK//9NTf//NTX//97e//+ysv//Nzf//xIS//+mpv//Kyv//z09/////////////xkZ///Y2P////////////8nJ///EBD//wAA///y8v//Ly///wAA//8mJv//Hh7//6mp//92dv////////////+vr///Jib//xMS//8eIP//MzP//zY2//84OP//Hh///y4u//9XV///hoj//8LC///R0f//qqr/////////////////////////////////////////////////////////////////////////////////////////////////////////////AAAA/8zMzP/u7u7/IiIi/wAAAP8iIiL//////zMzM/8AAAD/AAAA/////////////////////////////////wAAAP/MzMz//////yIiIv/u7u7/ERER/7u7u/8AAAD/iIiI/xEREf///////////////////////////+7u7v8AAAD/zMzM//////8iIiL/7u7u/xEREf+7u7v/AAAA/8zMzP8RERH///////////////////////////93d3f/AAAA/1VVVf/u7u7/IiIi/wAAAP8iIiL//////wAAAP/MzMz/ERER///////////////////////d3d3/AAAA/4iIiP8AAAD/3d3d/////////////////////////////////////////////////////////////////wAAAP//////AAAA////////////////////////////////////////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%3D%3D"}},{"tracker": {"tracker_name": "Google", "tracker_url": "http://www.google.com/search?hl=en&q=%22%title%22 movie&btnG=Search", "tracker_icon": "data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7PT7/3zF6/9Ptu//RbHx/0227/+Tzvb/9vv5/97h0f9JeBz/NHoA/z98Av9AfAD/PHsA/0F6AP8AAAAA/vz7/1+33/8Mp+z/FrHw/xWy8f8bs/T/Hqrx/3zE7v////7/t8qp/zF2A/87gwH/P4ID/z59AP8+egD/Q3kA/97s8v8botj/ELn3/wy58f8PtfL/D7Lw/xuz9P8vq+f/8/n///779v9KhR3/OYYA/0GFAv88hgD/QIAC/z17AP/0+/j/N6bM/wC07/8Cxf7/CsP7/wm+9v8Aqur/SrDb//7+/v///P7/VZEl/zSJAP87jQD/PYYA/0OBBf8+fQH///3//9Dp8/84sM7/CrDf/wC14/8CruL/KqnW/9ns8f/8/v//4OjX/z+GDf85kAD/PIwD/z2JAv8+hQD/PoEA/9C7pv/97uv////+/9Xw+v+w3ej/ls/e/+rz9///////+/z6/22mSf8qjQH/OJMA/zuQAP85iwL/PIgA/zyFAP+OSSL/nV44/7J+Vv/AkG7/7trP//7//f/9//7/6/Lr/2uoRv8tjQH/PJYA/zuTAP87kwD/PY8A/z2KAP89hAD/olkn/6RVHP+eSgj/mEgR//Ho3//+/v7/5Ozh/1GaJv8tlAD/OZcC/zuXAv84lAD/O5IC/z2PAf89iwL/OIkA/6hWFf+cTxD/pm9C/76ihP/8/v//+////8nav/8fdwL/NZsA/zeZAP83mgD/PJQB/zyUAf84jwD/PYsB/z6HAf+fXif/1r6s//79///58u//3r+g/+3i2v/+//3/mbiF/yyCAP87mgP/OpgD/zeWAP85lgD/OpEB/z+TAP9ChwH/7eHb/////v/28ej/tWwo/7tUAP+5XQ7/5M+5/////v+bsZn/IHAd/zeVAP89lgP/O5MA/zaJCf8tZTr/DyuK//3////9////0qmC/7lTAP/KZAT/vVgC/8iQWf/+//3///j//ygpx/8GGcL/ESax/xEgtv8FEMz/AALh/wAB1f///f7///z//758O//GXQL/yGYC/8RaAv/Ojlf/+/////////9QU93/BAD0/wAB//8DAP3/AAHz/wAA5f8DAtr///////v7+/+2bCT/yGMA/89mAP/BWQD/0q+D///+/////P7/Rkbg/wEA+f8AA/z/AQH5/wMA8P8AAev/AADf///7/P////7/uINQ/7lXAP/MYwL/vGIO//Lm3P/8/v//1dT2/woM5/8AAP3/AwH+/wAB/f8AAfb/BADs/wAC4P8AAAAA//z7/+LbzP+mXyD/oUwE/9Gshv/8//3/7/H5/zo/w/8AAdX/AgL6/wAA/f8CAP3/AAH2/wAA7v8AAAAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAEAAA=="}}]; function xpath(query, context) { context = context ? context : document; return document.evaluate(query, context, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); } function SearchEngine(shortname, searchurl, icon) { this.shortname = shortname; this.searchurl = searchurl; this.icon = icon; this.getHTML = function (title, id) { //var html = "<a target=\"_blank\" href=\"" + this.getSearchUrl(title, id) + "\"><img border=\"1\" src=\"" + this.icon + "\" title=\"" + this.shortname + "\"><\/a> "; //Option: spaced out icons //var html = "<a href=\"" + this.getSearchUrl(title, id) + "\"><img border=\"1\" src=\"" + this.icon + "\" width=\"16\" height=\"16\" title=\"" + this.shortname + "\"><\/a> "; var html = "<a href=\"" + this.getSearchUrl(title, id) + "\"><img border=\"1\" src=\"" + this.icon + "\" width=\"16\" height=\"16\" title=\"" + this.shortname + "\"><\/a>"; //var html = "<a href=\"" + this.getSearchUrl(title, id) + "\"><img class=\"img\" style=\"-moz-opacity: 0.4;\" border=\"0\" src=\"" + this.icon + "\" width=\"16\" height=\"16\" title=\"" + this.shortname + "\"><\/a> "; return html; } this.getSearchUrl = function (title, id) { var searchUrl = this.searchurl; searchUrl = searchUrl.replace(/%imdb-id/, id); searchUrl = searchUrl.replace(/%title/, encodeURIComponent(title)); return searchUrl; } } function openAllInTabs(title, id) { for (var i = 0; i < trackers.length; i++) { // continue; //else GM_openInTab(trackers[i].getSearchUrl(title, id)); } } function saveOptions(trackerData) { //Open Dialog //Dialog.open(); //Temporary message until dialog is finished. //GM_openInTab("About:config"); //alert("Currently configurable from about:config\n" + "\"IMDB Customizable Search Links.searchEngines\" setting using JSON syntax"); //createOptions(); alert("SaveOptions:\n" + trackerData.tracker.tracker_name + "; " + trackerData.tracker.tracker_url + "; " + trackerData.tracker.tracker_icon + ";" + trackerData.tracker.tracker_enabled); } function configureLink() { //Open Dialog //Dialog.open(); //Temporary message until dialog is finished. //GM_openInTab("About:config"); //alert("Currently configurable from about:config\n" + "\"IMDB Customizable Search Links.searchEngines\" setting using JSON syntax"); createOptions(); } function createOptions(){ //var div = document.createElement('div'); div.innerHTML = 'Hello World'; document.body.appendChild(div.firstChild); //document.getElementById("somediv").innerHTML="<input type=\"text\"...blah blah...></input>"; var url=encodeURIComponent(location.href); var ifr=document.createElement('div'); ifr.id='optionsDiv'; ifr.className = 'optionsCSS'; ifr.style.position='absolute'; ifr.style.top=150+'px';ifr.style.left=150+'px'; ifr.style.width=800+'px';ifr.style.height=400+'px'; ifr.style.background='white'; ifr.style.border='3px solid green'; ifr.style.padding='8px'; /*var answer = confirm ("Are you sure you don't want to save changes?") if (answer) alert ("Abort close") else alert ("Closing.")*/ //var newHTML="<h4 align='right'><a href=\"ex_confirm_continuepressed.htm\" onclick = \"if (! confirm('Continue?')) return false;\">close" + var newHTML="<h4 align='right'><a href=\"javascript:location.reload(true)\" onClick=\"if(! confirm('Close without saving changes?')) return false;\"><font-size='10px'>Close</font></a></h4>" + // var newHTML="<h4 align='right'><a href='javascript:if(confirm('Format the hard disk?'))location.reload(true);'><font-size='10px'>Close</font></a></h4>" + //var newHTML="<h4 align='right'><a href='' onclick=javascript:if(confirm('Format the hard disk?'))location.reload(true);'><font-size='10px'>Close</font></a></h4>" + //<A HREF="newpage.htm" onClick="newwindow();return false">Click Here!</A> //var newHTML="<h4 align='right'><a href='javascript:location.reload(true)'><font-size='10px'>Close</font></a></h4>" + "<h1 align='center'>Options</h1>" + //"<script type='text/javascript'>function sendForm() {alert ('sending data');}</script>" + "<form id='formOptions' action='javascript:void()'>" + "<div id='trackerDiv' style='border : solid 2px black; background : #000000; color : #ffffff; padding : 4px; height : 150px; overflow-x : auto; wrap : off; '>"; var temp = ""; var rawView = false; //option to see raw tracker data for debugging var trackerData; for (var i = 0; i < searchEngines.length; i++) { trackerData = searchEngines[i]; if (rawView == true) { temp = temp + trackerData.tracker.tracker_name + "; " + trackerData.tracker.tracker_url + "; " + trackerData.tracker.tracker_icon + ";" + trackerData.tracker.tracker_enabled + "\n"; } else if (rawView == false) { //option to see raw tracker data for debugging //transparent 16x16 //'data:image/png;base64,PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgo8aHRtbCBsYW5nPSJlbiIgZGlyPSJsdHIiIGNsYXNzPSJjbGllbnQtbm9qcyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgo8aGVhZD4KPHRpdGxlPkZpbGU6VHJhbnNwYXJlbnQucG5nIC0gV2lraXBlZGlhLCB0aGUgZnJlZSBlbmN5Y2xvcGVkaWE8L3RpdGxlPgo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIgLz4KPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1TdHlsZS1UeXBlIiBjb250ZW50PSJ0ZXh0L2NzcyIgLz4KPG1ldGEgbmFtZT0iZ2VuZXJhdG9yIiBjb250ZW50PSJNZWRpYVdpa2kgMS4xOHdtZjEiIC8+CjxsaW5rIHJlbD0iY2Fub25pY2FsIiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL0ZpbGU6VHJhbnNwYXJlbnQucG5nIiAvPgo8bGluayByZWw9ImFwcGxlLXRvdWNoLWljb24iIGhyZWY9Ii8vZW4ud2lraXBlZGlhLm9yZy9hcHBsZS10b3VjaC1pY29uLnBuZyIgLz4KPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIvZmF2aWNvbi5pY28iIC8+CjxsaW5rIHJlbD0ic2VhcmNoIiB0eXBlPSJhcHBsaWNhdGlvbi9vcGVuc2VhcmNoZGVzY3JpcHRpb24reG1sIiBocmVmPSIvdy9vcGVuc2VhcmNoX2Rlc2MucGhwIiB0aXRsZT0iV2lraXBlZGlhIChlbikiIC8+CjxsaW5rIHJlbD0iRWRpdFVSSSIgdHlwZT0iYXBwbGljYXRpb24vcnNkK3htbCIgaHJlZj0iLy9lbi53aWtpcGVkaWEub3JnL3cvYXBpLnBocD9hY3Rpb249cnNkIiAvPgo8bGluayByZWw9ImNvcHlyaWdodCIgaHJlZj0iLy9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LXNhLzMuMC8iIC8+CjxsaW5rIHJlbD0iYWx0ZXJuYXRlIiB0eXBlPSJhcHBsaWNhdGlvbi9hdG9tK3htbCIgdGl0bGU9Ildpa2lwZWRpYSBBdG9tIGZlZWQiIGhyZWY9Ii93L2luZGV4LnBocD90aXRsZT1TcGVjaWFsOlJlY2VudENoYW5nZXMmYW1wO2ZlZWQ9YXRvbSIgLz4KPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIvL2JpdHMud2lraW1lZGlhLm9yZy9lbi53aWtpcGVkaWEub3JnL2xvYWQucGhwP2RlYnVnPWZhbHNlJmFtcDtsYW5nPWVuJmFtcDttb2R1bGVzPWV4dC53aWtpaGllcm8lN0NtZWRpYXdpa2kubGVnYWN5LmNvbW1vblByaW50JTJDc2hhcmVkJTdDc2tpbnMudmVjdG9yJmFtcDtvbmx5PXN0eWxlcyZhbXA7c2tpbj12ZWN0b3ImYW1wOyoiIHR5cGU9InRleHQvY3NzIiBtZWRpYT0iYWxsIiAvPgo8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3cvaW5kZXgucGhwP3RpdGxlPU1lZGlhV2lraTpGaWxlcGFnZS5jc3MmYW1wO2FjdGlvbj1yYXcmYW1wO21heGFnZT0yNjc4NDAwJmFtcDt1c2Vtc2djYWNoZT15ZXMmYW1wO2N0eXBlPXRleHQlMkZjc3MmYW1wO3NtYXhhZ2U9MjY3ODQwMCIgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJhbGwiIC8+PG1ldGEgbmFtZT0iUmVzb3VyY2VMb2FkZXJEeW5hbWljU3R5bGVzIiBjb250ZW50PSIiIC8+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLy9iaXRzLndpa2ltZWRpYS5vcmcvZW4ud2lraXBlZGlhLm9yZy9sb2FkLnBocD9kZWJ1Zz1mYWxzZSZhbXA7bGFuZz1lbiZhbXA7bW9kdWxlcz1zaXRlJmFtcDtvbmx5PXN0eWxlcyZhbXA7c2tpbj12ZWN0b3ImYW1wOyoiIHR5cGU9InRleHQvY3NzIiBtZWRpYT0iYWxsIiAvPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJhbGwiPmE6bGFuZyhhciksYTpsYW5nKGNrYiksYTpsYW5nKGZhKSxhOmxhbmcoa2stYXJhYiksYTpsYW5nKG16biksYTpsYW5nKHBzKSxhOmxhbmcodXIpe3RleHQtZGVjb3JhdGlvbjpub25lfWEubmV3LCNxdWlja2JhciBhLm5ld3tjb2xvcjojYmEwMDAwfQoKLyogY2FjaGUga2V5OiBlbndpa2k6cmVzb3VyY2Vsb2FkZXI6ZmlsdGVyOm1pbmlmeS1jc3M6NDpjODhlMmJjZDU2NTEzNzQ5YmVjMDlhN2UyOWNiM2ZmYSAqLzwvc3R5bGU+CjxzY3JpcHQgc3JjPSIvL2JpdHMud2lraW1lZGlhLm9yZy9lbi53aWtpcGVkaWEub3JnL2xvYWQucGhwP2RlYnVnPWZhbHNlJmFtcDtsYW5nPWVuJmFtcDttb2R1bGVzPXN0YXJ0dXAmYW1wO29ubHk9c2NyaXB0cyZhbXA7c2tpbj12ZWN0b3ImYW1wOyoiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5pZiAoIHdpbmRvdy5tZWRpYVdpa2kgKSB7Cgltdy5jb25maWcuc2V0KHsid2dDYW5vbmljYWxOYW1lc3BhY2UiOiAiRmlsZSIsICJ3Z0Nhbm9uaWNhbFNwZWNpYWxQYWdlTmFtZSI6IGZhbHNlLCAid2dOYW1lc3BhY2VOdW1iZXIiOiA2LCAid2dQYWdlTmFtZSI6ICJGaWxlOlRyYW5zcGFyZW50LnBuZyIsICJ3Z1RpdGxlIjogIlRyYW5zcGFyZW50LnBuZyIsICJ3Z0N1clJldmlzaW9uSWQiOiAwLCAid2dBcnRpY2xlSWQiOiAwLCAid2dJc0FydGljbGUiOiB0cnVlLCAid2dBY3Rpb24iOiAidmlldyIsICJ3Z1VzZXJOYW1lIjogbnVsbCwgIndnVXNlckdyb3VwcyI6IFsiKiJdLCAid2dDYXRlZ29yaWVzIjogW10sICJ3Z0JyZWFrRnJhbWVzIjogZmFsc2UsICJ3Z1Jlc3RyaWN0aW9uQ3JlYXRlIjogW10sICJ3Z1Jlc3RyaWN0aW9uVXBsb2FkIjogW10sICJ3Z1NlYXJjaE5hbWVzcGFjZXMiOiBbMF0sICJ3Z0ZsYWdnZWRSZXZzUGFyYW1zIjogeyJ0YWdzIjogeyJzdGF0dXMiOiB7ImxldmVscyI6IDEsICJxdWFsaXR5IjogMiwgInByaXN0aW5lIjogM319fSwgIndnU3RhYmxlUmV2aXNpb25JZCI6IG51bGwsICJ3Z1ZlY3RvckVuYWJsZWRNb2R1bGVzIjogeyJjb2xsYXBzaWJsZW5hdiI6IHRydWUsICJjb2xsYXBzaWJsZXRhYnMiOiB0cnVlLCAiZWRpdHdhcm5pbmciOiB0cnVlLCAiZXhwYW5kYWJsZXNlYXJjaCI6IGZhbHNlLCAiZm9vdGVyY2xlYW51cCI6IGZhbHNlLCAic2VjdGlvbmVkaXRsaW5rcyI6IGZhbHNlLCAic2ltcGxlc2VhcmNoIjogdHJ1ZSwgImV4cGVyaW1lbnRzIjogdHJ1ZX0sICJ3Z1dpa2lFZGl0b3JFbmFibGVkTW9kdWxlcyI6IHsidG9vbGJhciI6IHRydWUsICJkaWFsb2dzIjogdHJ1ZSwgImhpZGVzaWciOiB0cnVlLCAidGVtcGxhdGVFZGl0b3IiOiBmYWxzZSwgInRlbXBsYXRlcyI6IGZhbHNlLCAicHJldmlldyI6IGZhbHNlLCAicHJldmlld0RpYWxvZyI6IGZhbHNlLCAicHVibGlzaCI6IGZhbHNlLCAidG9jIjogZmFsc2V9LCAid2dUcmFja2luZ1Rva2VuIjogIjViZmQ2NGFhNDI3Yjk1MjQzOGNiZGI3ZjQyZGVkM2JlIiwgIndpa2lsb3ZlLXJlY2lwaWVudCI6ICIiLCAid2lraWxvdmUtZWRpdHRva2VuIjogIitcXCIsICJ3aWtpbG92ZS1hbm9uIjogMCwgIm1iRWRpdFRva2VuIjogIitcXCIsICJHZW8iOiB7ImNpdHkiOiAiIiwgImNvdW50cnkiOiAiIn0sICJ3Z05vdGljZVByb2plY3QiOiAid2lraXBlZGlhIn0pOwp9Cjwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5pZiAoIHdpbmRvdy5tZWRpYVdpa2kgKSB7Cgltdy5sb2FkZXIubG9hZChbIm1lZGlhd2lraS5wYWdlLnN0YXJ0dXAiXSk7Cn0KPC9zY3JpcHQ+CjwhLS1baWYgbHQgSUUgN10+PHN0eWxlIHR5cGU9InRleHQvY3NzIj5ib2R5e2JlaGF2aW9yOnVybCgiL3cvc2tpbnMtMS4xOC92ZWN0b3IvY3NzaG92ZXIubWluLmh0YyIpfTwvc3R5bGU+PCFbZW5kaWZdLS0+PC9oZWFkPgo8Ym9keSBjbGFzcz0ibWVkaWF3aWtpIGx0ciBzaXRlZGlyLWx0ciBucy02IG5zLXN1YmplY3QgcGFnZS1GaWxlX1RyYW5zcGFyZW50X3BuZyBhY3Rpb24tdmlldyBza2luLXZlY3RvciI+CgkJPGRpdiBpZD0ibXctcGFnZS1iYXNlIiBjbGFzcz0ibm9wcmludCI+PC9kaXY+CgkJPGRpdiBpZD0ibXctaGVhZC1iYXNlIiBjbGFzcz0ibm9wcmludCI+PC9kaXY+CgkJPCEtLSBjb250ZW50IC0tPgoJCTxkaXYgaWQ9ImNvbnRlbnQiPgoJCQk8YSBpZD0idG9wIj48L2E+CgkJCTxkaXYgaWQ9Im13LWpzLW1lc3NhZ2UiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij48L2Rpdj4KCQkJCQkJPCEtLSBzaXRlbm90aWNlIC0tPgoJCQk8ZGl2IGlkPSJzaXRlTm90aWNlIj48IS0tIGNlbnRyYWxOb3RpY2UgbG9hZHMgaGVyZSAtLT48L2Rpdj4KCQkJPCEtLSAvc2l0ZW5vdGljZSAtLT4KCQkJCQkJPCEtLSBmaXJzdEhlYWRpbmcgLS0+CgkJCTxoMSBpZD0iZmlyc3RIZWFkaW5nIiBjbGFzcz0iZmlyc3RIZWFkaW5nIj5GaWxlOlRyYW5zcGFyZW50LnBuZzwvaDE+CgkJCTwhLS0gL2ZpcnN0SGVhZGluZyAtLT4KCQkJPCEtLSBib2R5Q29udGVudCAtLT4KCQkJPGRpdiBpZD0iYm9keUNvbnRlbnQiPgoJCQkJCQkJCTwhLS0gdGFnbGluZSAtLT4KCQkJCTxkaXYgaWQ9InNpdGVTdWIiPkZyb20gV2lraXBlZGlhLCB0aGUgZnJlZSBlbmN5Y2xvcGVkaWE8L2Rpdj4KCQkJCTwhLS0gL3RhZ2xpbmUgLS0+CgkJCQkJCQkJPCEtLSBzdWJ0aXRsZSAtLT4KCQkJCTxkaXYgaWQ9ImNvbnRlbnRTdWIiPjwvZGl2PgoJCQkJPCEtLSAvc3VidGl0bGUgLS0+CgkJCQkJCQkJCQkJCQkJCQk8IS0tIGp1bXB0byAtLT4KCQkJCTxkaXYgaWQ9Imp1bXAtdG8tbmF2Ij4KCQkJCQlKdW1wIHRvOiA8YSBocmVmPSIjbXctaGVhZCI+bmF2aWdhdGlvbjwvYT4sCgkJCQkJPGEgaHJlZj0iI3Atc2VhcmNoIj5zZWFyY2g8L2E+CgkJCQk8L2Rpdj4KCQkJCTwhLS0gL2p1bXB0byAtLT4KCQkJCQkJCQk8IS0tIGJvZHljb250ZW50IC0tPgoJCQkJPHVsIGlkPSJmaWxldG9jIj48bGk+PGEgaHJlZj0iI2ZpbGUiPkZpbGU8L2E+PC9saT4KPGxpPjxhIGhyZWY9IiNmaWxlaGlzdG9yeSI+RmlsZSBoaXN0b3J5PC9hPjwvbGk+CjxsaT48YSBocmVmPSIjZmlsZWxpbmtzIj5GaWxlIHVzYWdlPC9hPjwvbGk+CjxsaT48YSBocmVmPSIjZ2xvYmFsdXNhZ2UiPkdsb2JhbCBmaWxlIHVzYWdlPC9hPjwvbGk+PC91bD48ZGl2IGNsYXNzPSJmdWxsSW1hZ2VMaW5rIiBpZD0iZmlsZSI+PGEgaHJlZj0iLy91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy84LzhjL1RyYW5zcGFyZW50LnBuZyI+PGltZyBhbHQ9IkZpbGU6VHJhbnNwYXJlbnQucG5nIiBzcmM9Ii8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvOC84Yy9UcmFuc3BhcmVudC5wbmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgLz48L2E+PGJyIC8+PHNtYWxsPk5vIGhpZ2hlciByZXNvbHV0aW9uIGF2YWlsYWJsZS48L3NtYWxsPjwvZGl2Pgo8ZGl2IGNsYXNzPSJmdWxsTWVkaWEiPjxhIGhyZWY9Ii8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvOC84Yy9UcmFuc3BhcmVudC5wbmciIGNsYXNzPSJpbnRlcm5hbCIgdGl0bGU9IlRyYW5zcGFyZW50LnBuZyI+VHJhbnNwYXJlbnQucG5nPC9hPuKAjiA8c3BhbiBjbGFzcz0iZmlsZUluZm8iPigxNiDDlyAxNiBwaXhlbHMsIGZpbGUgc2l6ZTogOTcgQiwgTUlNRSB0eXBlOiBpbWFnZS9wbmcpPC9zcGFuPgo8L2Rpdj4KPGRpdiBjbGFzcz0ic2hhcmVkVXBsb2FkTm90aWNlIj4KPHRhYmxlIGlkPSJtdy1zaGFyZWR1cGxvYWQiIGNsYXNzPSJwbGFpbmxpbmtzIGZtYm94IGZtYm94LXN5c3RlbSIgc3R5bGU9IiI+Cjx0cj4KPHRkIGNsYXNzPSJtYm94LWltYWdlIj4KICA8YSBocmVmPSIvd2lraS9GaWxlOkNvbW1vbnMtbG9nby5zdmciIGNsYXNzPSJpbWFnZSIgdGl0bGU9Ildpa2ltZWRpYSBDb21tb25zIGxvZ28iPjxpbWcgYWx0PSIiIHNyYz0iLy91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvZW4vdGh1bWIvNC80YS9Db21tb25zLWxvZ28uc3ZnLzMwcHgtQ29tbW9ucy1sb2dvLnN2Zy5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSI0MCIgLz48L2E+PC90ZD4KPHRkIGNsYXNzPSJtYm94LXRleHQiIHN0eWxlPSJmb250LXNpemU6IDkwJTsgdGV4dC1hbGlnbjogY2VudGVyOyI+IDxkaXY+CjxwPjxiaWc+VGhpcyBpcyBhIGZpbGUgZnJvbSB0aGUgPHNwYW4gY2xhc3M9InBsYWlubGlua3MiPjxhIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL01haW5fUGFnZSI+V2lraW1lZGlhIENvbW1vbnM8L2E+PC9zcGFuPi4gSW5mb3JtYXRpb24gZnJvbSBpdHMgPGI+PHNwYW4gY2xhc3M9InBsYWlubGlua3MiPjxhIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL0ZpbGU6VHJhbnNwYXJlbnQucG5nIj5kZXNjcmlwdGlvbiBwYWdlIHRoZXJlPC9hPjwvc3Bhbj48L2I+IGlzIHNob3duIGJlbG93LjwvYmlnPiA8YnIvPiBDb21tb25zIGlzIGEgZnJlZWx5IGxpY2Vuc2VkIG1lZGlhIGZpbGUgcmVwb3NpdG9yeS4gPHNwYW4gY2xhc3M9InBsYWlubGlua3MiPjxhIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL0NvbW1vbnM6V2VsY29tZSI+WW91IGNhbiBoZWxwPC9hPjwvc3Bhbj4uCjwvcD4KPC9kaXY+IDwvdGQ+CjwvdHI+CjwvdGFibGU+PGRpdiBjbGFzcz0ibWV0YWRhdGEgdG9waWNvbiIgaWQ9ImNvbW1vbnMtaWNvbiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsgcmlnaHQ6MzBweDsiPjxhIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvRmlsZTpUcmFuc3BhcmVudC5wbmciIHRpdGxlPSJUaGlzIGlzIGEgZmlsZSBmcm9tIHRoZSBXaWtpbWVkaWEgQ29tbW9ucyI+PGltZyBhbHQ9IlRoaXMgaXMgYSBmaWxlIGZyb20gdGhlIFdpa2ltZWRpYSBDb21tb25zIiBzcmM9Ii8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2VuL3RodW1iLzQvNGEvQ29tbW9ucy1sb2dvLnN2Zy8xNHB4LUNvbW1vbnMtbG9nby5zdmcucG5nIiB3aWR0aD0iMTQiIGhlaWdodD0iMTkiIC8+PC9hPjwvZGl2Pgo8L2Rpdj4KPGRpdiBpZD0ic2hhcmVkLWltYWdlLWRlc2MiPjx0YWJsZSBjbGFzcz0idG9jY29sb3VycyB2ZXZlbnQiIHN0eWxlPSJ3aWR0aDogMTAwJTsgZGlyZWN0aW9uOiBsdHI7IiBjZWxscGFkZGluZz0iMiI+Cjx0cj4KPHRoIHN0eWxlPSJiYWNrZ3JvdW5kOiAjY2NmOyB0ZXh0LWFsaWduOiByaWdodDsgdmVydGljYWwtYWxpZ246IHRvcDsgcGFkZGluZy1yaWdodDogMC40ZW07IHdpZHRoOiAxNSUiIGlkPSJmaWxlaW5mb3RwbF9kZXNjIj5EZXNjcmlwdGlvbjwvdGg+Cjx0ZD48c3BhbiBjbGFzcz0ic3VtbWFyeSIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+VHJhbnNwYXJlbnQucG5nPC9zcGFuPgo8ZGl2IGNsYXNzPSJkZXNjcmlwdGlvbiBlbiIgbGFuZz0iZW4iIHN0eWxlPSJkaXJlY3Rpb246bHRyOyIgeG1sOmxhbmc9ImVuIj48c3BhbiBjbGFzcz0ibGFuZ3VhZ2UgZW4iIHRpdGxlPSIiPjxiPkVuZ2xpc2g6PC9iPjwvc3Bhbj4gMTZ4MTYsIGFsbCBwaXhlbHMgdHJhbnNwYXJlbnQuPC9kaXY+CjxkaXYgY2xhc3M9ImRlc2NyaXB0aW9uIHpoIiBsYW5nPSJ6aCIgc3R5bGU9ImRpcmVjdGlvbjpsdHI7IiB4bWw6bGFuZz0iemgiPjxzcGFuIGNsYXNzPSJsYW5ndWFnZSB6aCIgdGl0bGU9IiI+PGI+5Lit5paHOjwvYj48L3NwYW4+IOatpOeCuumAj+aYjueEoeiJsueahOWcluWDj++8jOWPquS9nOeIsuS9lOaTmuepuuS9jeS5i+eUqOOAgjwvZGl2Pgo8L3RkPgo8L3RyPgo8dHIgdmFsaWduPSJ0b3AiPgo8dGggc3R5bGU9ImJhY2tncm91bmQ6ICNjY2Y7IHRleHQtYWxpZ246IHJpZ2h0OyBwYWRkaW5nLXJpZ2h0OiAwLjRlbTsgd2hpdGUtc3BhY2U6IG5vd3JhcCIgaWQ9ImZpbGVpbmZvdHBsX2RhdGUiPkRhdGU8L3RoPgo8dGQ+CjxwPjIwMDYtMTEtMTIgKG9yaWdpbmFsIHVwbG9hZCBkYXRlKTwvcD4KPC90ZD4KPC90cj4KPHRyIHZhbGlnbj0idG9wIj4KPHRoIHN0eWxlPSJiYWNrZ3JvdW5kOiAjY2NmOyB0ZXh0LWFsaWduOiByaWdodDsgcGFkZGluZy1yaWdodDogMC40ZW0iIGlkPSJmaWxlaW5mb3RwbF9zcmMiPlNvdXJjZTwvdGg+Cjx0ZD4KPHA+PGEgaHJlZj0iLy9lbi53aWtpcGVkaWEub3JnL3dpa2kvSW1hZ2U6VHJhbnNwYXJlbnQucG5nIiBjbGFzcz0iZXh0aXciIHRpdGxlPSJlbjpJbWFnZTpUcmFuc3BhcmVudC5wbmciPmVuOkltYWdlOlRyYW5zcGFyZW50LnBuZzwvYT4gVHJhbnNmZXJlZCBmcm9tIDxhIGhyZWY9Ii8vZW4ud2lraXBlZGlhLm9yZy93aWtpLyIgY2xhc3M9ImV4dGl3IiB0aXRsZT0iZW46Ij5lbi53aWtpcGVkaWE8L2E+LjwvcD4KPC90ZD4KPC90cj4KPHRyIHZhbGlnbj0idG9wIj4KPHRoIHN0eWxlPSJiYWNrZ3JvdW5kOiAjY2NmOyB0ZXh0LWFsaWduOiByaWdodDsgcGFkZGluZy1yaWdodDogMC40ZW0iIGlkPSJmaWxlaW5mb3RwbF9hdXQiPkF1dGhvcjwvdGg+Cjx0ZD4KPHA+T3JpZ2luYWwgdXBsb2FkZXIgd2FzIDxhIGhyZWY9Ii8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1VzZXI6TWVlZ3MiIGNsYXNzPSJleHRpdyIgdGl0bGU9ImVuOlVzZXI6TWVlZ3MiPk1lZWdzPC9hPjwvcD4KPC90ZD4KPC90cj4KPHRyIHZhbGlnbj0idG9wIj4KPHRoIHN0eWxlPSJiYWNrZ3JvdW5kOiAjY2NmOyB0ZXh0LWFsaWduOiByaWdodDsgcGFkZGluZy1yaWdodDogMC40ZW0iIGlkPSJmaWxlaW5mb3RwbF9wZXJtIj5QZXJtaXNzaW9uPGJyIC8+CjxzbWFsbD4oPGEgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9Db21tb25zOlJldXNpbmdfY29udGVudF9vdXRzaWRlX1dpa2ltZWRpYSIgdGl0bGU9IkNvbW1vbnM6UmV1c2luZyBjb250ZW50IG91dHNpZGUgV2lraW1lZGlhIj5SZXVzaW5nIHRoaXMgZmlsZTwvYT4pPC9zbWFsbD48L3RoPgo8dGQ+Cjx0YWJsZSBjbGFzcz0ibGljZW5zZXRwbCIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+Cjx0cj4KPHRkPjxzcGFuIGNsYXNzPSJsaWNlbnNldHBsX3Nob3J0IiBzdHlsZT0iZGlzcGxheTpub25lOyI+UHVibGljIGRvbWFpbjwvc3Bhbj48c3BhbiBjbGFzcz0ibGljZW5zZXRwbF9sb25nIiBzdHlsZT0iZGlzcGxheTpub25lOyI+UHVibGljIGRvbWFpbjwvc3Bhbj48c3BhbiBjbGFzcz0ibGljZW5zZXRwbF9saW5rX3JlcSIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPmZhbHNlPC9zcGFuPjxzcGFuIGNsYXNzPSJsaWNlbnNldHBsX2F0dHJfcmVxIiBzdHlsZT0iZGlzcGxheTpub25lOyI+ZmFsc2U8L3NwYW4+PC90ZD4KPC90cj4KPC90YWJsZT4KPHRhYmxlIGNlbGxzcGFjaW5nPSI4IiBjZWxscGFkZGluZz0iMCIgc3R5bGU9IndpZHRoOjEwMCU7IGNsZWFyOmJvdGg7IG1hcmdpbjowLjVlbSBhdXRvOyBiYWNrZ3JvdW5kLWNvbG9yOiNmN2Y4ZmY7IGJvcmRlcjoycHggc29saWQgIzg4ODhhYTsgZGlyZWN0aW9uOiBsdHI7IiBjbGFzcz0ibGF5b3V0dGVtcGxhdGUiPgo8dHI+Cjx0ZD48aW1nIGFsdD0iUEQtaWNvbi5zdmciIHNyYz0iLy91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy90aHVtYi82LzYyL1BELWljb24uc3ZnLzY0cHgtUEQtaWNvbi5zdmcucG5nIiB3aWR0aD0iNjQiIGhlaWdodD0iNjQiIC8+PC90ZD4KPHRkPjxpPlRoaXMgZmlsZSBpcyA8Yj5pbmVsaWdpYmxlIGZvciA8YSBocmVmPSIvL2VuLndpa2lwZWRpYS5vcmcvd2lraS9jb3B5cmlnaHRzIiBjbGFzcz0iZXh0aXciIHRpdGxlPSJ3OmNvcHlyaWdodHMiPmNvcHlyaWdodDwvYT48L2I+IGFuZCB0aGVyZWZvcmUgaW4gdGhlIDxiPjxhIGhyZWY9Ii8vZW4ud2lraXBlZGlhLm9yZy93aWtpL3B1YmxpY19kb21haW4iIGNsYXNzPSJleHRpdyIgdGl0bGU9Inc6cHVibGljIGRvbWFpbiI+cHVibGljIGRvbWFpbjwvYT48L2I+LCBiZWNhdXNlIGl0IGNvbnNpc3RzIGVudGlyZWx5IG9mIGluZm9ybWF0aW9uIHRoYXQgaXMgY29tbW9uIHByb3BlcnR5IGFuZCBjb250YWlucyBubyBvcmlnaW5hbCBhdXRob3JzaGlwLjwvaT4KPGhyIC8+CjxwPjxzcGFuIHN0eWxlPSJmb250LXNpemU6eC1zbWFsbDtsaW5lLWhlaWdodDoxNDAlIiBjbGFzcz0icGxhaW5saW5rcyBub3ByaW50Ij48YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL2FmIj5BZnJpa2FhbnM8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL2FyIj7Yp9mE2LnYsdio2YrYqTwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvYmUtdGFyYXNrIj7igKrQkdC10LvQsNGA0YPRgdC60LDRjyAo0YLQsNGA0LDRiNC60LXQstGW0YbQsCnigKw8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL2JnIj7QkdGK0LvQs9Cw0YDRgdC60Lg8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL2JzIj5Cb3NhbnNraTwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvY2EiPkNhdGFsw6A8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL2NzIj7EjGVza3k8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL2RhIj5EYW5zazwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvZGUiPkRldXRzY2g8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL2VuIj5FbmdsaXNoPC9hPiYjMTYwO3wgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvVGVtcGxhdGU6UEQtaW5lbGlnaWJsZS9lbyI+RXNwZXJhbnRvPC9hPiYjMTYwO3wgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvVGVtcGxhdGU6UEQtaW5lbGlnaWJsZS9lcyI+RXNwYcOxb2w8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL2V0Ij5FZXN0aTwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvZmEiPtmB2KfYsdiz24w8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL2ZpIj5TdW9taTwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvZnIiPkZyYW7Dp2FpczwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvaGUiPtei15HXqNeZ16o8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL2hpIj7gpLngpL/gpKjgpY3gpKbgpYA8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL2h1Ij5NYWd5YXI8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL2h5Ij7VgNWh1bXVpdaA1aXVtjwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvaXQiPkl0YWxpYW5vPC9hPiYjMTYwO3wgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvVGVtcGxhdGU6UEQtaW5lbGlnaWJsZS9qYSI+5pel5pys6KqePC9hPiYjMTYwO3wgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvVGVtcGxhdGU6UEQtaW5lbGlnaWJsZS9rbyI+7ZWc6rWt7Ja0PC9hPiYjMTYwO3wgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvVGVtcGxhdGU6UEQtaW5lbGlnaWJsZS9semgiPuaWh+iogDwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvbWsiPtCc0LDQutC10LTQvtC90YHQutC4PC9hPiYjMTYwO3wgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvVGVtcGxhdGU6UEQtaW5lbGlnaWJsZS9tbCI+4LSu4LSy4LSv4LS+4LSz4LSCPC9hPiYjMTYwO3wgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvVGVtcGxhdGU6UEQtaW5lbGlnaWJsZS9uZHMiPlBsYXR0ZMO8w7x0c2NoPC9hPiYjMTYwO3wgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvVGVtcGxhdGU6UEQtaW5lbGlnaWJsZS9ubCI+TmVkZXJsYW5kczwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvbm4iPuKAqk5vcnNrIChueW5vcnNrKeKArDwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvcGwiPlBvbHNraTwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvcHQiPlBvcnR1Z3XDqnM8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL3B0LWJyIj5Qb3J0dWd1w6pzIGRvIEJyYXNpbDwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvcnUiPtCg0YPRgdGB0LrQuNC5PC9hPiYjMTYwO3wgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvVGVtcGxhdGU6UEQtaW5lbGlnaWJsZS9zciI+0KHRgNC/0YHQutC4IC8gU3Jwc2tpPC9hPiYjMTYwO3wgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvVGVtcGxhdGU6UEQtaW5lbGlnaWJsZS9zdiI+U3ZlbnNrYTwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvdGgiPuC5hOC4l+C4ojwvYT4mIzE2MDt8IDxhIHJlbD0ibm9mb2xsb3ciIGNsYXNzPSJleHRlcm5hbCB0ZXh0IiBocmVmPSIvL2NvbW1vbnMud2lraW1lZGlhLm9yZy93aWtpL1RlbXBsYXRlOlBELWluZWxpZ2libGUvdHIiPlTDvHJrw6dlPC9hPiYjMTYwO3wgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvVGVtcGxhdGU6UEQtaW5lbGlnaWJsZS92ZWMiPlbDqG5ldG88L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL3poIj7kuK3mloc8L2E+JiMxNjA7fCA8YSByZWw9Im5vZm9sbG93IiBjbGFzcz0iZXh0ZXJuYWwgdGV4dCIgaHJlZj0iLy9jb21tb25zLndpa2ltZWRpYS5vcmcvd2lraS9UZW1wbGF0ZTpQRC1pbmVsaWdpYmxlL3poLWhhbnMiPuKAquS4reaWhyjnroDkvZMp4oCsPC9hPiYjMTYwO3wgPGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3dpa2kvVGVtcGxhdGU6UEQtaW5lbGlnaWJsZS96aC1oYW50Ij7igKrkuK3mloco57mB6auUKeKArDwvYT4mIzE2MDt8IDxzbWFsbCBjbGFzcz0icGxhaW5saW5rcyI+PGEgcmVsPSJub2ZvbGxvdyIgY2xhc3M9ImV4dGVybmFsIHRleHQiIGhyZWY9Ii8vY29tbW9ucy53aWtpbWVkaWEub3JnL3cvaW5kZXgucGhwP3RpdGxlPVRlbXBsYXRlOlBELWluZWxpZ2libGUvbGFuZyZhbXA7YWN0aW9uPWVkaXQiPisv4oiSPC9hPjwvc21hbGw+PC9zcGFuPjwvcD4KPC90ZD4KPC90cj4KPC90YWJsZT4KPC90ZD4KPC90cj4KPC90YWJsZT4KCgo8IS0tIApOZXdQUCBsaW1pdCByZXBvcnQKUHJlcHJvY2Vzc29yIG5vZGUgY291bnQ6IDU3My8xMDAwMDAwClBvc3QtZXhwYW5kIGluY2x1ZGUgc2l6ZTogNDM2MjAvMjA0ODAwMCBieXRlcwpUZW1wbGF0ZSBhcmd1bWVudCBzaXplOiAxNDQzNy8yMDQ4MDAwIGJ5dGVzCkV4cGVuc2l2ZSBwYXJzZXIgZnVuY3Rpb24gY291bnQ6IDEvNTAwCi0tPgoKPCEtLSBTYXZlZCBpbiBwYXJzZXIgY2FjaGUgd2l0aCBrZXkgY29tbW9uc3dpa2k6cGNhY2hlOmlkaGFzaDozMTI3NjIxLTEhKiEwIWRlZmF1bHQhKiFlbiE0ISogYW5kIHRpbWVzdGFtcCAyMDExMTAwNjIwMTkwMyAtLT4KPC9kaXY+CjxoMiBpZD0iZmlsZWhpc3RvcnkiPkZpbGUgaGlzdG9yeTwvaDI+CjxkaXYgaWQ9Im13LWltYWdlcGFnZS1zZWN0aW9uLWZpbGVoaXN0b3J5Ij4KPHA+Q2xpY2sgb24gYSBkYXRlL3RpbWUgdG8gdmlldyB0aGUgZmlsZSBhcyBpdCBhcHBlYXJlZCBhdCB0aGF0IHRpbWUuCjwvcD4KPHRhYmxlIGNsYXNzPSJ3aWtpdGFibGUgZmlsZWhpc3RvcnkiPgo8dHI+PHRkPjwvdGQ+PHRoPkRhdGUvVGltZTwvdGg+PHRoPlRodW1ibmFpbDwvdGg+PHRoPkRpbWVuc2lvbnM8L3RoPjx0aD5Vc2VyPC90aD48dGg+Q29tbWVudDwvdGg+PC90cj4KPHRyPjx0ZD5jdXJyZW50PC90ZD48dGQgY2xhc3M9J2ZpbGVoaXN0b3J5LXNlbGVjdGVkJyBzdHlsZT0nd2hpdGUtc3BhY2U6IG5vd3JhcDsnPjxhIGhyZWY9Ii8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvOC84Yy9UcmFuc3BhcmVudC5wbmciPjA5OjA1LCAyMCBPY3RvYmVyIDIwMDk8L2E+PC90ZD48dGQ+PGEgaHJlZj0iLy91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy84LzhjL1RyYW5zcGFyZW50LnBuZyI+PGltZyBhbHQ9IlRodW1ibmFpbCBmb3IgdmVyc2lvbiBhcyBvZiAwOTowNSwgMjAgT2N0b2JlciAyMDA5IiBzcmM9Ii8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvOC84Yy9UcmFuc3BhcmVudC5wbmciIHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiAvPjwvYT48L3RkPjx0ZD4xNiDDlyAxNiA8c3BhbiBzdHlsZT0id2hpdGUtc3BhY2U6IG5vd3JhcDsiPig5NyBCKTwvc3Bhbj48L3RkPjx0ZD5BbmFraW4xMDE8L3RkPjx0ZCBkaXI9Imx0ciI+IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4oTWFudWFsIGNydXNoIGluIGhleCBlZGl0b3IuKTwvc3Bhbj48L3RkPjwvdHI+Cjx0cj48dGQ+PC90ZD48dGQgIHN0eWxlPSd3aGl0ZS1zcGFjZTogbm93cmFwOyc+PGEgaHJlZj0iLy91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvY29tbW9ucy9hcmNoaXZlLzgvOGMvMjAwOTEwMjAwOTA1MjMlMjFUcmFuc3BhcmVudC5wbmciPjAzOjI3LCAyMiBOb3ZlbWJlciAyMDA3PC9hPjwvdGQ+PHRkPjxhIGhyZWY9Ii8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvYXJjaGl2ZS84LzhjLzIwMDkxMDIwMDkwNTIzJTIxVHJhbnNwYXJlbnQucG5nIj48aW1nIGFsdD0iVGh1bWJuYWlsIGZvciB2ZXJzaW9uIGFzIG9mIDAzOjI3LCAyMiBOb3ZlbWJlciAyMDA3IiBzcmM9Ii8vdXBsb2FkLndpa2ltZWRpYS5vcmcvd2lraXBlZGlhL2NvbW1vbnMvYXJjaGl2ZS84LzhjLzIwMDkxMDIwMDkwNTIzJTIxVHJhbnNwYXJlbnQucG5nIiB3aWR0aD0iMTIwIiBoZWlnaHQ9IjEyMCIgLz48L2E+PC90ZD48dGQ+MTYgw5cgMTYgPHNwYW4gc3R5bGU9IndoaXRlLXNwYWNlOiBub3dyYXA7Ij4oMTQxIEIpPC9zcGFuPjwvdGQ+PHRkPkZpbGUgVXBsb2FkIEJvdCAoTWFnbnVzIE1hbnNrZSk8L3RkPjx0ZCBkaXI9Imx0ciI+IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4oIHt7Qm90TW92ZVRvQ29tbW9uc3xlbi53aWtpcGVkaWF9fSB7e0luZm9ybWF0aW9uIHxEZXNjcmlwdGlvbj17e2VufDxhIGhyZWY9Ii93L2luZGV4LnBocD90aXRsZT1GaWxlOkFsdGFuX3NveW9tYm8uZ2lmLiZhbXA7YWN0aW9uPWVkaXQmYW1wO3JlZGxpbms9MSIgY2xhc3M9Im5ldyIgdGl0bGU9IkZpbGU6QWx0YW4gc295b21iby5naWYuIChwYWdlIGRvZXMgbm90IGV4aXN0KSI+ZW46SW1hZ2U6QWx0YW5fc295b21iby5naWYuPC9hPiAxNngxNiwgYWxsIHBpeGVscyB0cmFuc3BhcmVudH19IHxTb3VyY2U9T3JpZ2luYWxseSBmcm9tIFtodHRwOi8vZW4ud2lraXBlZGlhLm9yZyBlbi53aWtpcGVkaWFdOyBkZXNjcmlwdGlvbiBwYWdlIGlzL3dhcyBbaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvdy9pbmRleC5waCk8L3NwYW4+PC90ZD48L3RyPgo8L3RhYmxlPgoKPC9kaXY+CjxoMiBpZD0iZmlsZWxpbmtzIj5GaWxlIHVzYWdlPC9oMj4KPGRpdiBpZD0nbXctaW1hZ2VwYWdlLXNlY3Rpb24tbGlua3N0b2ltYWdlJz4KPGRpdiBjbGFzcz0ibGlua3N0b2ltYWdlIiBpZD0ibGlua3N0b2ltYWdlIj5UaGUgZm9sbG93aW5nIHBhZ2VzIG9uIHRoZSBFbmdsaXNoIFdpa2lwZWRpYSBsaW5rIHRvIHRoaXMgZmlsZSAocGFnZXMgb24gb3RoZXIgcHJvamVjdHMgYXJlIG5vdCBsaXN0ZWQpOjwvZGl2Pgo8dWwgY2xhc3M9Im13LWltYWdlcGFnZS1saW5rc3RvaW1hZ2UiPgo8bGkgaWQ9Im13LWltYWdlcGFnZS1saW5rc3RvaW1hZ2UtbnMwIj48YSBocmVmPSIvd2lraS9MaXN0X29mX2Fpcl9mb3JjZXMiIHRpdGxlPSJMaXN0IG9mIGFpciBmb3JjZXMiPkxpc3Qgb2YgYWlyIGZvcmNlczwvYT48L2xpPgo8bGkgaWQ9Im13LWltYWdlcGFnZS1saW5rc3RvaW1hZ2UtbnMyIj48YSBocmVmPSIvd2lraS9Vc2VyOkRhdmlkX0tlcm5vdy9MaXN0X29mX2Fpcl9mb3JjZXMiIHRpdGxlPSJVc2VyOkRhdmlkIEtlcm5vdy9MaXN0IG9mIGFpciBmb3JjZXMiPlVzZXI6RGF2aWQgS2Vybm93L0xpc3Qgb2YgYWlyIGZvcmNlczwvYT48L2xpPgo8L3VsPgo8L2Rpdj4KPGgyIGlkPSJnbG9iYWx1c2FnZSI+R2xvYmFsIGZpbGUgdXNhZ2U8L2gyPgo8ZGl2IGlkPSJtdy1pbWFnZXBhZ2Utc2VjdGlvbi1nbG9iYWx1c2FnZSI+PHA+VGhlIGZvbGxvd2luZyBvdGhlciB3aWtpcyB1c2UgdGhpcyBmaWxlOgo8L3A+PHVsPgo8bGkgY2xhc3M9J213LWd1LW9ud2lraS1kZV93aWtpcGVkaWFfb3JnJz5Vc2FnZSBvbiBkZS53aWtpcGVkaWEub3JnCjx1bD4JPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2RlLndpa2lwZWRpYS5vcmcvd2lraS9QcmVtamVyLUxpZ2EiPlByZW1qZXItTGlnYTwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2RlLndpa2lwZWRpYS5vcmcvd2lraS9QcmVtamVyLUxpZ2FfMjAwNiI+UHJlbWplci1MaWdhIDIwMDY8L2E+PC9saT4KCTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9kZS53aWtpcGVkaWEub3JnL3dpa2kvUHJlbWplci1MaWdhXzIwMDUiPlByZW1qZXItTGlnYSAyMDA1PC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8vZGUud2lraXBlZGlhLm9yZy93aWtpL1ByZW1qZXItTGlnYV8yMDA0Ij5QcmVtamVyLUxpZ2EgMjAwNDwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2RlLndpa2lwZWRpYS5vcmcvd2lraS9QcmVtamVyLUxpZ2FfMjAwMyI+UHJlbWplci1MaWdhIDIwMDM8L2E+PC9saT4KCTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9kZS53aWtpcGVkaWEub3JnL3dpa2kvUHJlbWplci1MaWdhXzIwMDIiPlByZW1qZXItTGlnYSAyMDAyPC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8vZGUud2lraXBlZGlhLm9yZy93aWtpL0JlbnV0emVyOk1hcmNsMTk4NC9TdGFkaWVuIj5CZW51dHplcjpNYXJjbDE5ODQvU3RhZGllbjwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2RlLndpa2lwZWRpYS5vcmcvd2lraS9QcmVtamVyLUxpZ2FfMjAwNyI+UHJlbWplci1MaWdhIDIwMDc8L2E+PC9saT4KCTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9kZS53aWtpcGVkaWEub3JnL3dpa2kvS0hMXzIwMDgvMDkiPktITCAyMDA4LzA5PC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8vZGUud2lraXBlZGlhLm9yZy93aWtpL1J1c3Npc2NoZV9GdSVDMyU5RmJhbGxtZWlzdGVyc2NoYWZ0X2Rlcl9GcmF1ZW4iPlJ1c3Npc2NoZSBGdcOfYmFsbG1laXN0ZXJzY2hhZnQgZGVyIEZyYXVlbjwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2RlLndpa2lwZWRpYS5vcmcvd2lraS9LSExfMjAwOS8xMCI+S0hMIDIwMDkvMTA8L2E+PC9saT4KCTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9kZS53aWtpcGVkaWEub3JnL3dpa2kvUHJlbWplci1MaWdhXzIwMDkiPlByZW1qZXItTGlnYSAyMDA5PC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8vZGUud2lraXBlZGlhLm9yZy93aWtpL09iZXJzdGVfTGlnYV8xOTkyIj5PYmVyc3RlIExpZ2EgMTk5MjwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2RlLndpa2lwZWRpYS5vcmcvd2lraS8xLl9GdSVDMyU5RmJhbGwtRGl2aXNpb25fMjAwOSI+MS4gRnXDn2JhbGwtRGl2aXNpb24gMjAwOTwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2RlLndpa2lwZWRpYS5vcmcvd2lraS9QcmVtamVyLUxpZ2FfMjAxMCI+UHJlbWplci1MaWdhIDIwMTA8L2E+PC9saT4KCTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9kZS53aWtpcGVkaWEub3JnL3dpa2kvMS5fRnUlQzMlOUZiYWxsLURpdmlzaW9uXzIwMDgiPjEuIEZ1w59iYWxsLURpdmlzaW9uIDIwMDg8L2E+PC9saT4KCTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9kZS53aWtpcGVkaWEub3JnL3dpa2kvVm9ybGFnZTpLYXJ0ZV9LSExfMjAwOS8xMCI+Vm9ybGFnZTpLYXJ0ZSBLSEwgMjAwOS8xMDwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2RlLndpa2lwZWRpYS5vcmcvd2lraS9Wb3JsYWdlOkthcnRlX0tITF8yMDA4LzA5Ij5Wb3JsYWdlOkthcnRlIEtITCAyMDA4LzA5PC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8vZGUud2lraXBlZGlhLm9yZy93aWtpL09iZXJzdGVfTGlnYV8xOTkzIj5PYmVyc3RlIExpZ2EgMTk5MzwvYT48L2xpPgo8L3VsPjwvbGk+CjxsaSBjbGFzcz0nbXctZ3Utb253aWtpLWVuX3dpa2lib29rc19vcmcnPlVzYWdlIG9uIGVuLndpa2lib29rcy5vcmcKPHVsPgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8vZW4ud2lraWJvb2tzLm9yZy93aWtpL1dpa2lqdW5pb3I6U3VtbWVyX0Zsb3dlcnNfb2ZfTm9ydGhlcm5fTmV3X0VuZ2xhbmQvV2hpdGVfRmxvd2VycyI+V2lraWp1bmlvcjpTdW1tZXIgRmxvd2VycyBvZiBOb3J0aGVybiBOZXcgRW5nbGFuZC9XaGl0ZSBGbG93ZXJzPC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8vZW4ud2lraWJvb2tzLm9yZy93aWtpL1dpa2lqdW5pb3I6U3VtbWVyX0Zsb3dlcnNfb2ZfTm9ydGhlcm5fTmV3X0VuZ2xhbmQvWWVsbG93X2FuZF9PcmFuZ2VfRmxvd2VycyI+V2lraWp1bmlvcjpTdW1tZXIgRmxvd2VycyBvZiBOb3J0aGVybiBOZXcgRW5nbGFuZC9ZZWxsb3cgYW5kIE9yYW5nZSBGbG93ZXJzPC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8vZW4ud2lraWJvb2tzLm9yZy93aWtpL1dpa2lqdW5pb3I6U3VtbWVyX0Zsb3dlcnNfb2ZfTm9ydGhlcm5fTmV3X0VuZ2xhbmQvUmVkX2FuZF9QaW5rX0Zsb3dlcnMiPldpa2lqdW5pb3I6U3VtbWVyIEZsb3dlcnMgb2YgTm9ydGhlcm4gTmV3IEVuZ2xhbmQvUmVkIGFuZCBQaW5rIEZsb3dlcnM8L2E+PC9saT4KCTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9lbi53aWtpYm9va3Mub3JnL3dpa2kvV2lraWp1bmlvcjpTdW1tZXJfRmxvd2Vyc19vZl9Ob3J0aGVybl9OZXdfRW5nbGFuZC9CbHVlX2FuZF9QdXJwbGVfRmxvd2VycyI+V2lraWp1bmlvcjpTdW1tZXIgRmxvd2VycyBvZiBOb3J0aGVybiBOZXcgRW5nbGFuZC9CbHVlIGFuZCBQdXJwbGUgRmxvd2VyczwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2VuLndpa2lib29rcy5vcmcvd2lraS9XaWtpanVuaW9yOlN1bW1lcl9GbG93ZXJzX29mX05vcnRoZXJuX05ld19FbmdsYW5kL0dyZWVuX2FuZF9Ccm93bl9GbG93ZXJzIj5XaWtpanVuaW9yOlN1bW1lciBGbG93ZXJzIG9mIE5vcnRoZXJuIE5ldyBFbmdsYW5kL0dyZWVuIGFuZCBCcm93biBGbG93ZXJzPC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8vZW4ud2lraWJvb2tzLm9yZy93aWtpL1RlbXBsYXRlOldKX0Zsb3dlcl9Sb3ciPlRlbXBsYXRlOldKIEZsb3dlciBSb3c8L2E+PC9saT4KCTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9lbi53aWtpYm9va3Mub3JnL3dpa2kvV2lraWp1bmlvcjpTdW1tZXJfRmxvd2Vyc19vZl9Ob3J0aGVybl9OZXdfRW5nbGFuZC9IZWxpYW50aHVzX2RpdmFyaWNhdHVzIj5XaWtpanVuaW9yOlN1bW1lciBGbG93ZXJzIG9mIE5vcnRoZXJuIE5ldyBFbmdsYW5kL0hlbGlhbnRodXMgZGl2YXJpY2F0dXM8L2E+PC9saT4KPC91bD48L2xpPgo8bGkgY2xhc3M9J213LWd1LW9ud2lraS1lc193aWtpcGVkaWFfb3JnJz5Vc2FnZSBvbiBlcy53aWtpcGVkaWEub3JnCjx1bD4JPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2VzLndpa2lwZWRpYS5vcmcvd2lraS9NYXJjYXNfY29ycG9yYXRpdmFzX2RlX1dpa2lwZWRpYSI+TWFyY2FzIGNvcnBvcmF0aXZhcyBkZSBXaWtpcGVkaWE8L2E+PC9saT4KPC91bD48L2xpPgo8bGkgY2xhc3M9J213LWd1LW9ud2lraS1mYV93aWtpcGVkaWFfb3JnJz5Vc2FnZSBvbiBmYS53aWtpcGVkaWEub3JnCjx1bD4JPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2ZhLndpa2lwZWRpYS5vcmcvd2lraS8lREElQTklRDglQjElRDglQUYlRDglQjMlRDglQUElRDglQTclRDklODZfJUQ4JUI5JUQ4JUIxJUQ4JUE3JUQ5JTgyIj7aqdix2K/Ys9iq2KfZhiDYudix2KfZgjwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2ZhLndpa2lwZWRpYS5vcmcvd2lraS8lRDglQTclRDklODQlREElQUYlRDklODg6JUQ4JUI0JUQ5JTg3JUQ4JUIxJUQ5JTg3JUQ4JUE3JURCJThDXyVEQSVBOSVEOCVCMSVEOCVBRiVEOCVCMyVEOCVBQSVEOCVBNyVEOSU4Nl8lRDglQjklRDglQjElRDglQTclRDklODIiPtin2YTar9mIOti02YfYsdmH2KfbjCDaqdix2K/Ys9iq2KfZhiDYudix2KfZgjwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2ZhLndpa2lwZWRpYS5vcmcvd2lraS8lRDglQTclRDklODQlREElQUYlRDklODg6JUQ5JTg2JUQ5JTgyJUQ4JUI0JUQ5JTg3XyVEOCVCNCVEOSU4NyVEOCVCMSVEOSU4NyVEOCVBNyVEQiU4Q18lREElQTklRDglQjElRDglQUYlRDglQjMlRDglQUElRDglQTclRDklODZfJUQ4JUI5JUQ4JUIxJUQ4JUE3JUQ5JTgyIj7Yp9mE2q/ZiDrZhtmC2LTZhyDYtNmH2LHZh9in24wg2qnYsdiv2LPYqtin2YYg2LnYsdin2YI8L2E+PC9saT4KPC91bD48L2xpPgo8bGkgY2xhc3M9J213LWd1LW9ud2lraS13aWtpbWVkaWFmb3VuZGF0aW9uX29yZyc+VXNhZ2Ugb24gd2lraW1lZGlhZm91bmRhdGlvbi5vcmcKPHVsPgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8vd2lraW1lZGlhZm91bmRhdGlvbi5vcmcvd2lraS9XaWtpbWVkaWFfb2ZmaWNpYWxfbWFya3MvQWJvdXRfdGhlX29mZmljaWFsX01hcmtzIj5XaWtpbWVkaWEgb2ZmaWNpYWwgbWFya3MvQWJvdXQgdGhlIG9mZmljaWFsIE1hcmtzPC9hPjwvbGk+CjwvdWw+PC9saT4KPGxpIGNsYXNzPSdtdy1ndS1vbndpa2ktaXRfd2lraXBlZGlhX29yZyc+VXNhZ2Ugb24gaXQud2lraXBlZGlhLm9yZwo8dWw+CTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9pdC53aWtpcGVkaWEub3JnL3dpa2kvTGlzdGFfZGVsbGVfZm9yemVfYWVyZWVfbW9uZGlhbGkiPkxpc3RhIGRlbGxlIGZvcnplIGFlcmVlIG1vbmRpYWxpPC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8vaXQud2lraXBlZGlhLm9yZy93aWtpL0xpc3RhX2RlbGxlX2ZvcnplX25hdmFsaV9taWxpdGFyaV9tb25kaWFsaSI+TGlzdGEgZGVsbGUgZm9yemUgbmF2YWxpIG1pbGl0YXJpIG1vbmRpYWxpPC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8vaXQud2lraXBlZGlhLm9yZy93aWtpL0xpc3RhX2RlbGxlX2ZvcnplX3RlcnJlc3RyaV9taWxpdGFyaV9tb25kaWFsaSI+TGlzdGEgZGVsbGUgZm9yemUgdGVycmVzdHJpIG1pbGl0YXJpIG1vbmRpYWxpPC9hPjwvbGk+CjwvdWw+PC9saT4KPGxpIGNsYXNzPSdtdy1ndS1vbndpa2kta3Vfd2lraXBlZGlhX29yZyc+VXNhZ2Ugb24ga3Uud2lraXBlZGlhLm9yZwo8dWw+CTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9rdS53aWtpcGVkaWEub3JnL3dpa2kvWmF4byI+WmF4bzwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2t1Lndpa2lwZWRpYS5vcmcvd2lraS9IYXNpeSVDMyVCQm0iPkhhc2l5w7ttPC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8va3Uud2lraXBlZGlhLm9yZy93aWtpL0RpaG9rIj5EaWhvazwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2t1Lndpa2lwZWRpYS5vcmcvd2lraS9LZXJrJUMzJUJCayI+S2Vya8O7azwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2t1Lndpa2lwZWRpYS5vcmcvd2lraS9IZXdsJUMzJUFBciI+SGV3bMOqcjwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2t1Lndpa2lwZWRpYS5vcmcvd2lraS9YYW5lcSVDMyVBRW4iPlhhbmVxw65uPC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9ImV4dGVybmFsIiBocmVmPSJodHRwOi8va3Uud2lraXBlZGlhLm9yZy93aWtpL1NpbCVDMyVBQW1hbiVDMyVBRSI+U2lsw6ptYW7DrjwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2t1Lndpa2lwZWRpYS5vcmcvd2lraS9BbSVDMyVBQWQlQzMlQUUiPkFtw6pkw648L2E+PC9saT4KCTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9rdS53aWtpcGVkaWEub3JnL3dpa2kvS295ZSI+S295ZTwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2t1Lndpa2lwZWRpYS5vcmcvd2lraS9IaWslQzMlQkJtZXRhX0hlciVDMyVBQW1hX0t1cmRpc3RhbiVDMyVBQSI+SGlrw7ttZXRhIEhlcsOqbWEgS3VyZGlzdGFuw6o8L2E+PC9saT4KCTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9rdS53aWtpcGVkaWEub3JnL3dpa2kvQWtyJUMzJUFBIj5Ba3LDqjwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2t1Lndpa2lwZWRpYS5vcmcvd2lraS9EaXlhbmEiPkRpeWFuYTwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2t1Lndpa2lwZWRpYS5vcmcvd2lraS9TJUMzJUFBbSVDMyVBQWwiPlPDqm3Dqmw8L2E+PC9saT4KCTxsaT48YSBjbGFzcz0iZXh0ZXJuYWwiIGhyZWY9Imh0dHA6Ly9rdS53aWtpcGVkaWEub3JnL3dpa2kvSGVsZWJjZSI+SGVsZWJjZTwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2t1Lndpa2lwZWRpYS5vcmcvd2lraS9Ub2JhZ28iPlRvYmFnbzwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJleHRlcm5hbCIgaHJlZj0iaHR0cDovL2t1Lndpa2lwZWRpYS5vcmcvd2lraS9SZXdhbmRpeiI+UmV3YW5kaXo8L2E+PC9saT4KPC91bD48L2xpPgo8L3VsPgo8cD5WaWV3IDxhIGhyZWY9Ii93aWtpL1NwZWNpYWw6R2xvYmFsVXNhZ2UvVHJhbnNwYXJlbnQucG5nIiB0aXRsZT0iU3BlY2lhbDpHbG9iYWxVc2FnZS9UcmFuc3BhcmVudC5wbmciPm1vcmUgZ2xvYmFsIHVzYWdlPC9hPiBvZiB0aGlzIGZpbGUuCjwvcD48L2Rpdj4JCQkJPCEtLSAvYm9keWNvbnRlbnQgLS0+CgkJCQkJCQkJPCEtLSBwcmludGZvb3RlciAtLT4KCQkJCTxkaXYgY2xhc3M9InByaW50Zm9vdGVyIj4KCQkJCVJldHJpZXZlZCBmcm9tICI8YSBocmVmPSJodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0ZpbGU6VHJhbnNwYXJlbnQucG5nIj5odHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0ZpbGU6VHJhbnNwYXJlbnQucG5nPC9hPiIJCQkJPC9kaXY+CgkJCQk8IS0tIC9wcmludGZvb3RlciAtLT4KCQkJCQkJCQkJCQkJPCEtLSBjYXRsaW5rcyAtLT4KCQkJCTxkaXYgaWQ9J2NhdGxpbmtzJyBjbGFzcz0nY2F0bGlua3MgY2F0bGlua3MtYWxsaGlkZGVuJz48L2Rpdj4JCQkJPCEtLSAvY2F0bGlua3MgLS0+CgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9InZpc3VhbENsZWFyIj48L2Rpdj4KCQkJCTwhLS0gZGVidWdodG1sIC0tPgoJCQkJCQkJCTwhLS0gL2RlYnVnaHRtbCAtLT4KCQkJPC9kaXY+CgkJCTwhLS0gL2JvZHlDb250ZW50IC0tPgoJCTwvZGl2PgoJCTwhLS0gL2NvbnRlbnQgLS0+CgkJPCEtLSBoZWFkZXIgLS0+CgkJPGRpdiBpZD0ibXctaGVhZCIgY2xhc3M9Im5vcHJpbnQiPgoJCQkKPCEtLSAwIC0tPgo8ZGl2IGlkPSJwLXBlcnNvbmFsIiBjbGFzcz0iIj4KCTxoNT5QZXJzb25hbCB0b29sczwvaDU+Cgk8dWw+CgkJPGxpIGlkPSJwdC1sb2dpbiI+PGEgaHJlZj0iL3cvaW5kZXgucGhwP3RpdGxlPVNwZWNpYWw6VXNlckxvZ2luJmFtcDtyZXR1cm50bz1GaWxlJTNBVHJhbnNwYXJlbnQucG5nIiB0aXRsZT0iWW91IGFyZSBlbmNvdXJhZ2VkIHRvIGxvZyBpbjsgaG93ZXZlciwgaXQgaXMgbm90IG1hbmRhdG9yeS4gW29dIiBhY2Nlc3NrZXk9Im8iPkxvZyBpbiAvIGNyZWF0ZSBhY2NvdW50PC9hPjwvbGk+Cgk8L3VsPgo8L2Rpdj4KCjwhLS0gLzAgLS0+CgkJCTxkaXYgaWQ9ImxlZnQtbmF2aWdhdGlvbiI+CgkJCQkKPCEtLSAwIC0tPgo8ZGl2IGlkPSJwLW5hbWVzcGFjZXMiIGNsYXNzPSJ2ZWN0b3JUYWJzIj4KCTxoNT5OYW1lc3BhY2VzPC9oNT4KCTx1bD4KCQkJCQk8bGkgIGlkPSJjYS1uc3RhYi1pbWFnZSIgY2xhc3M9InNlbGVjdGVkIj48c3Bhbj48YSBocmVmPSIvd2lraS9GaWxlOlRyYW5zcGFyZW50LnBuZyIgIHRpdGxlPSJWaWV3IHRoZSBmaWxlIHBhZ2UgW2NdIiBhY2Nlc3NrZXk9ImMiPkZpbGU8L2E+PC9zcGFuPjwvbGk+CgkJCQkJPGxpICBpZD0iY2EtdGFsayIgY2xhc3M9Im5ldyI+PHNwYW4+PGEgaHJlZj0iL3cvaW5kZXgucGhwP3RpdGxlPUZpbGVfdGFsazpUcmFuc3BhcmVudC5wbmcmYW1wO2FjdGlvbj1lZGl0JmFtcDtyZWRsaW5rPTEiICB0aXRsZT0iRGlzY3Vzc2lvbiBhYm91dCB0aGUgY29udGVudCBwYWdlIFt0XSIgYWNjZXNza2V5PSJ0Ij5EaXNjdXNzaW9uPC9hPjwvc3Bhbj48L2xpPgoJCQk8L3VsPgo8L2Rpdj4KCjwhLS0gLzAgLS0+Cgo8IS0tIDEgLS0+CjxkaXYgaWQ9InAtdmFyaWFudHMiIGNsYXNzPSJ2ZWN0b3JNZW51IGVtcHR5UG9ydGxldCI+CgkJPGg1PjxzcGFuPlZhcmlhbnRzPC9zcGFuPjxhIGhyZWY9IiMiPjwvYT48L2g1PgoJPGRpdiBjbGFzcz0ibWVudSI+CgkJPHVsPgoJCQkJCTwvdWw+Cgk8L2Rpdj4KPC9kaXY+Cgo8IS0tIC8xIC0tPgoJCQk8L2Rpdj4KCQkJPGRpdiBpZD0icmlnaHQtbmF2aWdhdGlvbiI+CgkJCQkKPCEtLSAwIC0tPgo8ZGl2IGlkPSJwLXZpZXdzIiBjbGFzcz0idmVjdG9yVGFicyBlbXB0eVBvcnRsZXQiPgoJPGg1PlZpZXdzPC9oNT4KCTx1bD4KCQkJPC91bD4KPC9kaXY+Cgo8IS0tIC8wIC0tPgoKPCEtLSAxIC0tPgo8ZGl2IGlkPSJwLWNhY3Rpb25zIiBjbGFzcz0idmVjdG9yTWVudSBlbXB0eVBvcnRsZXQiPgoJPGg1PjxzcGFuPkFjdGlvbnM8L3NwYW4+PGEgaHJlZj0iIyI+PC9hPjwvaDU+Cgk8ZGl2IGNsYXNzPSJtZW51Ij4KCQk8dWw+CgkJCQkJPC91bD4KCTwvZGl2Pgo8L2Rpdj4KCjwhLS0gLzEgLS0+Cgo8IS0tIDIgLS0+CjxkaXYgaWQ9InAtc2VhcmNoIj4KCTxoNT48bGFiZWwgZm9yPSJzZWFyY2hJbnB1dCI+U2VhcmNoPC9sYWJlbD48L2g1PgoJPGZvcm0gYWN0aW9uPSIvdy9pbmRleC5waHAiIGlkPSJzZWFyY2hmb3JtIj4KCQk8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSJ0aXRsZSIgdmFsdWU9IlNwZWNpYWw6U2VhcmNoIi8+CgkJCQk8ZGl2IGlkPSJzaW1wbGVTZWFyY2giPgoJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ic2VhcmNoIiB2YWx1ZT0iIiB0aXRsZT0iU2VhcmNoIFdpa2lwZWRpYSBbZl0iIGFjY2Vzc2tleT0iZiIgaWQ9InNlYXJjaElucHV0IiAvPgkJCQkJCTxidXR0b24gdHlwZT0ic3VibWl0IiBuYW1lPSJidXR0b24iIHRpdGxlPSJTZWFyY2ggV2lraXBlZGlhIGZvciB0aGlzIHRleHQiIGlkPSJzZWFyY2hCdXR0b24iPjxpbWcgc3JjPSIvL2JpdHMud2lraW1lZGlhLm9yZy9za2lucy0xLjE4L3ZlY3Rvci9pbWFnZXMvc2VhcmNoLWx0ci5wbmc/MzAzLTQiIGFsdD0iU2VhcmNoIiAvPjwvYnV0dG9uPgkJCQkJPC9kaXY+CgkJCTwvZm9ybT4KPC9kaXY+Cgo8IS0tIC8yIC0tPgoJCQk8L2Rpdj4KCQk8L2Rpdj4KCQk8IS0tIC9oZWFkZXIgLS0+CgkJPCEtLSBwYW5lbCAtLT4KCQkJPGRpdiBpZD0ibXctcGFuZWwiIGNsYXNzPSJub3ByaW50Ij4KCQkJCTwhLS0gbG9nbyAtLT4KCQkJCQk8ZGl2IGlkPSJwLWxvZ28iPjxhIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLy91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEvZW4vYi9iYy9XaWtpLnBuZyk7IiBocmVmPSIvd2lraS9NYWluX1BhZ2UiICB0aXRsZT0iVmlzaXQgdGhlIG1haW4gcGFnZSI+PC9hPjwvZGl2PgoJCQkJPCEtLSAvbG9nbyAtLT4KCQkJCQo8IS0tIG5hdmlnYXRpb24gLS0+CjxkaXYgY2xhc3M9InBvcnRhbCIgaWQ9J3AtbmF2aWdhdGlvbic+Cgk8aDU+TmF2aWdhdGlvbjwvaDU+Cgk8ZGl2IGNsYXNzPSJib2R5Ij4KCQk8dWw+CgkJCTxsaSBpZD0ibi1tYWlucGFnZS1kZXNjcmlwdGlvbiI+PGEgaHJlZj0iL3dpa2kvTWFpbl9QYWdlIiB0aXRsZT0iVmlzaXQgdGhlIG1haW4gcGFnZSBbel0iIGFjY2Vzc2tleT0ieiI+TWFpbiBwYWdlPC9hPjwvbGk+CgkJCTxsaSBpZD0ibi1jb250ZW50cyI+PGEgaHJlZj0iL3dpa2kvUG9ydGFsOkNvbnRlbnRzIiB0aXRsZT0iR3VpZGVzIHRvIGJyb3dzaW5nIFdpa2lwZWRpYSI+Q29udGVudHM8L2E+PC9saT4KCQkJPGxpIGlkPSJuLWZlYXR1cmVkY29udGVudCI+PGEgaHJlZj0iL3dpa2kvUG9ydGFsOkZlYXR1cmVkX2NvbnRlbnQiIHRpdGxlPSJGZWF0dXJlZCBjb250ZW50IOKAkyB0aGUgYmVzdCBvZiBXaWtpcGVkaWEiPkZlYXR1cmVkIGNvbnRlbnQ8L2E+PC9saT4KCQkJPGxpIGlkPSJuLWN1cnJlbnRldmVudHMiPjxhIGhyZWY9Ii93aWtpL1BvcnRhbDpDdXJyZW50X2V2ZW50cyIgdGl0bGU9IkZpbmQgYmFja2dyb3VuZCBpbmZvcm1hdGlvbiBvbiBjdXJyZW50IGV2ZW50cyI+Q3VycmVudCBldmVudHM8L2E+PC9saT4KCQkJPGxpIGlkPSJuLXJhbmRvbXBhZ2UiPjxhIGhyZWY9Ii93aWtpL1NwZWNpYWw6UmFuZG9tIiB0aXRsZT0iTG9hZCBhIHJhbmRvbSBhcnRpY2xlIFt4XSIgYWNjZXNza2V5PSJ4Ij5SYW5kb20gYXJ0aWNsZTwvYT48L2xpPgoJCQk8bGkgaWQ9Im4tc2l0ZXN1cHBvcnQiPjxhIGhyZWY9Ii8vd2lraW1lZGlhZm91bmRhdGlvbi5vcmcvd2lraS9TcGVjaWFsOkxhbmRpbmdjaGVjaz9sYW5kaW5nX3BhZ2U9V01GSkEwODUmYW1wO2xhbmd1YWdlPWVuJmFtcDt1dG1fc291cmNlPWRvbmF0ZSZhbXA7dXRtX21lZGl1bT1zaWRlYmFyJmFtcDt1dG1fY2FtcGFpZ249MjAxMDEyMDRTQjAwMiIgdGl0bGU9IlN1cHBvcnQgdXMiPkRvbmF0ZSB0byBXaWtpcGVkaWE8L2E+PC9saT4KCQk8L3VsPgoJPC9kaXY+CjwvZGl2PgoKPCEtLSAvbmF2aWdhdGlvbiAtLT4KCjwhLS0gU0VBUkNIIC0tPgoKPCEtLSAvU0VBUkNIIC0tPgoKPCEtLSBpbnRlcmFjdGlvbiAtLT4KPGRpdiBjbGFzcz0icG9ydGFsIiBpZD0ncC1pbnRlcmFjdGlvbic+Cgk8aDU+SW50ZXJhY3Rpb248L2g1PgoJPGRpdiBjbGFzcz0iYm9keSI+CgkJPHVsPgoJCQk8bGkgaWQ9Im4taGVscCI+PGEgaHJlZj0iL3dpa2kvSGVscDpDb250ZW50cyIgdGl0bGU9Ikd1aWRhbmNlIG9uIGhvdyB0byB1c2UgYW5kIGVkaXQgV2lraXBlZGlhIj5IZWxwPC9hPjwvbGk+CgkJCTxsaSBpZD0ibi1hYm91dHNpdGUiPjxhIGhyZWY9Ii93aWtpL1dpa2lwZWRpYTpBYm91dCIgdGl0bGU9IkZpbmQgb3V0IGFib3V0IFdpa2lwZWRpYSI+QWJvdXQgV2lraXBlZGlhPC9hPjwvbGk+CgkJCTxsaSBpZD0ibi1wb3J0YWwiPjxhIGhyZWY9Ii93aWtpL1dpa2lwZWRpYTpDb21tdW5pdHlfcG9ydGFsIiB0aXRsZT0iQWJvdXQgdGhlIHByb2plY3QsIHdoYXQgeW91IGNhbiBkbywgd2hlcmUgdG8gZmluZCB0aGluZ3MiPkNvbW11bml0eSBwb3J0YWw8L2E+PC9saT4KCQkJPGxpIGlkPSJuLXJlY2VudGNoYW5nZXMiPjxhIGhyZWY9Ii93aWtpL1NwZWNpYWw6UmVjZW50Q2hhbmdlcyIgdGl0bGU9IkEgbGlzdCBvZiByZWNlbnQgY2hhbmdlcyBpbiB0aGUgd2lraSBbcl0iIGFjY2Vzc2tleT0iciI+UmVjZW50IGNoYW5nZXM8L2E+PC9saT4KCQkJPGxpIGlkPSJuLWNvbnRhY3QiPjxhIGhyZWY9Ii93aWtpL1dpa2lwZWRpYTpDb250YWN0X3VzIiB0aXRsZT0iSG93IHRvIGNvbnRhY3QgV2lraXBlZGlhIj5Db250YWN0IFdpa2lwZWRpYTwvYT48L2xpPgoJCTwvdWw+Cgk8L2Rpdj4KPC9kaXY+Cgo8IS0tIC9pbnRlcmFjdGlvbiAtLT4KCjwhLS0gVE9PTEJPWCAtLT4KPGRpdiBjbGFzcz0icG9ydGFsIiBpZD0ncC10Yic+Cgk8aDU+VG9vbGJveDwvaDU+Cgk8ZGl2IGNsYXNzPSJib2R5Ij4KCQk8dWw+CgkJCTxsaSBpZD0idC13aGF0bGlua3NoZXJlIj48YSBocmVmPSIvd2lraS9TcGVjaWFsOldoYXRMaW5rc0hlcmUvRmlsZTpUcmFuc3BhcmVudC5wbmciIHRpdGxlPSJMaXN0IG9mIGFsbCBFbmdsaXNoIFdpa2lwZWRpYSBwYWdlcyBjb250YWluaW5nIGxpbmtzIHRvIHRoaXMgcGFnZSBbal0iIGFjY2Vzc2tleT0iaiI+V2hhdCBsaW5rcyBoZXJlPC9hPjwvbGk+CgkJCTxsaSBpZD0idC11cGxvYWQiPjxhIGhyZWY9Ii93aWtpL1dpa2lwZWRpYTpVcGxvYWQiIHRpdGxlPSJVcGxvYWQgZmlsZXMgW3VdIiBhY2Nlc3NrZXk9InUiPlVwbG9hZCBmaWxlPC9hPjwvbGk+CgkJCTxsaSBpZD0idC1zcGVjaWFscGFnZXMiPjxhIGhyZWY9Ii93aWtpL1NwZWNpYWw6U3BlY2lhbFBhZ2VzIiB0aXRsZT0iQSBsaXN0IG9mIGFsbCBzcGVjaWFsIHBhZ2VzIFtxXSIgYWNjZXNza2V5PSJxIj5TcGVjaWFsIHBhZ2VzPC9hPjwvbGk+CgkJPC91bD4KCTwvZGl2Pgo8L2Rpdj4KCjwhLS0gL1RPT0xCT1ggLS0+Cgo8IS0tIExBTkdVQUdFUyAtLT4KCjwhLS0gL0xBTkdVQUdFUyAtLT4KCQkJPC9kaXY+CgkJPCEtLSAvcGFuZWwgLS0+CgkJPCEtLSBmb290ZXIgLS0+CgkJPGRpdiBpZD0iZm9vdGVyIj4KCQkJCQkJCTx1bCBpZD0iZm9vdGVyLXBsYWNlcyI+CgkJCQkJCQkJCQkJPGxpIGlkPSJmb290ZXItcGxhY2VzLXByaXZhY3kiPjxhIGhyZWY9Ii8vd2lraW1lZGlhZm91bmRhdGlvbi5vcmcvd2lraS9Qcml2YWN5X3BvbGljeSIgdGl0bGU9Indpa2ltZWRpYTpQcml2YWN5IHBvbGljeSI+UHJpdmFjeSBwb2xpY3k8L2E+PC9saT4KCQkJCQkJCQkJCQk8bGkgaWQ9ImZvb3Rlci1wbGFjZXMtYWJvdXQiPjxhIGhyZWY9Ii93aWtpL1dpa2lwZWRpYTpBYm91dCIgdGl0bGU9Ildpa2lwZWRpYTpBYm91dCI+QWJvdXQgV2lraXBlZGlhPC9hPjwvbGk+CgkJCQkJCQkJCQkJPGxpIGlkPSJmb290ZXItcGxhY2VzLWRpc2NsYWltZXIiPjxhIGhyZWY9Ii93aWtpL1dpa2lwZWRpYTpHZW5lcmFsX2Rpc2NsYWltZXIiIHRpdGxlPSJXaWtpcGVkaWE6R2VuZXJhbCBkaXNjbGFpbWVyIj5EaXNjbGFpbWVyczwvYT48L2xpPgoJCQkJCQkJCQkJCTxsaSBpZD0iZm9vdGVyLXBsYWNlcy1tb2JpbGV2aWV3Ij48YSBocmVmPScvdy9pbmRleC5waHA/dGl0bGU9RmlsZTpUcmFuc3BhcmVudC5wbmcmYW1wO3VzZWZvcm1hdD1tb2JpbGUnPk1vYmlsZSB2aWV3PC9hPjwvbGk+CgkJCQkJCQkJCTwvdWw+CgkJCQkJCQkJCQk8dWwgaWQ9ImZvb3Rlci1pY29ucyIgY2xhc3M9Im5vcHJpbnQiPgoJCQkJCTxsaSBpZD0iZm9vdGVyLWNvcHlyaWdodGljbyI+CgkJCQkJCTxhIGhyZWY9Ii8vd2lraW1lZGlhZm91bmRhdGlvbi5vcmcvIj48aW1nIHNyYz0iLy9iaXRzLndpa2ltZWRpYS5vcmcvaW1hZ2VzL3dpa2ltZWRpYS1idXR0b24ucG5nIiB3aWR0aD0iODgiIGhlaWdodD0iMzEiIGFsdD0iV2lraW1lZGlhIEZvdW5kYXRpb24iLz48L2E+CgkJCQkJPC9saT4KCQkJCQk8bGkgaWQ9ImZvb3Rlci1wb3dlcmVkYnlpY28iPgoJCQkJCQk8YSBocmVmPSIvL3d3dy5tZWRpYXdpa2kub3JnLyI+PGltZyBzcmM9Ii8vYml0cy53aWtpbWVkaWEub3JnL3NraW5zLTEuMTgvY29tbW9uL2ltYWdlcy9wb3dlcmVkYnlfbWVkaWF3aWtpXzg4eDMxLnBuZyIgYWx0PSJQb3dlcmVkIGJ5IE1lZGlhV2lraSIgd2lkdGg9Ijg4IiBoZWlnaHQ9IjMxIiAvPjwvYT4KCQkJCQk8L2xpPgoJCQkJPC91bD4KCQkJCQkJPGRpdiBzdHlsZT0iY2xlYXI6Ym90aCI+PC9kaXY+CgkJPC9kaXY+CgkJPCEtLSAvZm9vdGVyIC0tPgoJCTwhLS0gZml4YWxwaGEgLS0+CgkJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiBpZiAoIHdpbmRvdy5pc01TSUU1NSApIGZpeGFscGhhKCk7IDwvc2NyaXB0PgoJCTwhLS0gL2ZpeGFscGhhIC0tPgoJCTxzY3JpcHQgc3JjPSIvL2JpdHMud2lraW1lZGlhLm9yZy9lbi53aWtpcGVkaWEub3JnL2xvYWQucGhwP2RlYnVnPWZhbHNlJmFtcDtsYW5nPWVuJmFtcDttb2R1bGVzPXNraW5zLnZlY3RvciZhbXA7b25seT1zY3JpcHRzJmFtcDtza2luPXZlY3RvciZhbXA7KiIgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPmlmICggd2luZG93Lm1lZGlhV2lraSApIHsKCW13LmxvYWRlci5sb2FkKFsibWVkaWF3aWtpLnVzZXIiLCAibWVkaWF3aWtpLnV0aWwiLCAibWVkaWF3aWtpLnBhZ2UucmVhZHkiLCAibWVkaWF3aWtpLmxlZ2FjeS53aWtpYml0cyIsICJtZWRpYXdpa2kubGVnYWN5LmFqYXgiLCAibWVkaWF3aWtpLmxlZ2FjeS5td3N1Z2dlc3QiLCAiZXh0LmdhZGdldC53bWZGUjIwMTFTdHlsZSIsICJleHQudmVjdG9yLmNvbGxhcHNpYmxlTmF2IiwgImV4dC52ZWN0b3IuY29sbGFwc2libGVUYWJzIiwgImV4dC52ZWN0b3IuZWRpdFdhcm5pbmciLCAiZXh0LnZlY3Rvci5zaW1wbGVTZWFyY2giLCAiZXh0LlVzZXJCdWNrZXRzIiwgImV4dC5hcnRpY2xlRmVlZGJhY2suc3RhcnR1cCJdKTsKfQo8L3NjcmlwdD4KPHNjcmlwdCBzcmM9Ii93L2luZGV4LnBocD90aXRsZT1TcGVjaWFsOkJhbm5lckNvbnRyb2xsZXImYW1wO2NhY2hlPS9jbi5qcyZhbXA7MzAzLTQiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CjxzY3JpcHQgc3JjPSIvL2JpdHMud2lraW1lZGlhLm9yZy9lbi53aWtpcGVkaWEub3JnL2xvYWQucGhwP2RlYnVnPWZhbHNlJmFtcDtsYW5nPWVuJmFtcDttb2R1bGVzPXNpdGUmYW1wO29ubHk9c2NyaXB0cyZhbXA7c2tpbj12ZWN0b3ImYW1wOyoiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5pZiAoIHdpbmRvdy5tZWRpYVdpa2kgKSB7Cgltdy51c2VyLm9wdGlvbnMuc2V0KHsiY2NtZW9uZW1haWxzIjowLCJjb2xzIjo4MCwiZGF0ZSI6ImRlZmF1bHQiLCJkaWZmb25seSI6MCwiZGlzYWJsZW1haWwiOjAsImRpc2FibGVzdWdnZXN0IjowLCJlZGl0Zm9udCI6ImRlZmF1bHQiLCJlZGl0b25kYmxjbGljayI6MCwiZWRpdHNlY3Rpb24iOjEsImVkaXRzZWN0aW9ub25yaWdodGNsaWNrIjowLCJlbm90aWZtaW5vcmVkaXRzIjowLCJlbm90aWZyZXZlYWxhZGRyIjowLCJlbm90aWZ1c2VydGFsa3BhZ2VzIjoxLCJlbm90aWZ3YXRjaGxpc3RwYWdlcyI6MCwiZXh0ZW5kd2F0Y2hsaXN0IjowLCJleHRlcm5hbGRpZmYiOjAsImV4dGVybmFsZWRpdG9yIjowLCJmYW5jeXNpZyI6MCwiZm9yY2VlZGl0c3VtbWFyeSI6MCwiZ2VuZGVyIjoidW5rbm93biIsImhpZGVtaW5vciI6MCwiaGlkZXBhdHJvbGxlZCI6MCwiaGlnaGxpZ2h0YnJva2VuIjoxLCJpbWFnZXNpemUiOjIsImp1c3RpZnkiOjAsIm1hdGgiOjEsIm1pbm9yZGVmYXVsdCI6MCwibmV3cGFnZXNoaWRlcGF0cm9sbGVkIjowLCJub2NhY2hlIjowLCJub2NvbnZlcnRsaW5rIjowLCJub3JvbGxiYWNrZGlmZiI6MCwibnVtYmVyaGVhZGluZ3MiOjAsInByZXZpZXdvbmZpcnN0IjowLCJwcmV2aWV3b250b3AiOjEsInF1aWNrYmFyIjo1LCJyY2RheXMiOjcsInJjbGltaXQiOjUwLCJyZW1lbWJlcnBhc3N3b3JkIjowLCJyb3dzIjoyNSwic2VhcmNobGltaXQiOjIwLCJzaG93aGlkZGVuY2F0cyI6ZmFsc2UsInNob3dqdW1wbGlua3MiOjEsInNob3dudW1iZXJzd2F0Y2hpbmciOjEsInNob3d0b2MiOjEsInNob3d0b29sYmFyIjoxLCJza2luIjoidmVjdG9yIiwic3R1YnRocmVzaG9sZCI6MCwidGh1bWJzaXplIjo0LCJ1bmRlcmxpbmUiOjIsInVzZWxpdmVwcmV2aWV3IjowLCJ1c2VuZXdyYyI6MCwid2F0Y2hjcmVhdGlvbnMiOjEsIndhdGNoZGVmYXVsdCI6MCwid2F0Y2hkZWxldGlvbiI6MCwid2F0Y2hsaXN0ZGF5cyI6Mywid2F0Y2hsaXN0aGlkZWFub25zIjowLAoJIndhdGNobGlzdGhpZGVib3RzIjowLCJ3YXRjaGxpc3RoaWRlbGl1IjowLCJ3YXRjaGxpc3RoaWRlbWlub3IiOjAsIndhdGNobGlzdGhpZGVvd24iOjAsIndhdGNobGlzdGhpZGVwYXRyb2xsZWQiOjAsIndhdGNobW92ZXMiOjAsIndsbGltaXQiOjI1MCwiZmxhZ2dlZHJldnNzaW1wbGV1aSI6MSwiZmxhZ2dlZHJldnNzdGFibGUiOjAsImZsYWdnZWRyZXZzZWRpdGRpZmZzIjp0cnVlLCJmbGFnZ2VkcmV2c3ZpZXdkaWZmcyI6ZmFsc2UsInZlY3Rvci1zaW1wbGVzZWFyY2giOjEsInVzZWVkaXR3YXJuaW5nIjoxLCJ2ZWN0b3ItY29sbGFwc2libGVuYXYiOjEsInVzZWJldGF0b29sYmFyIjoxLCJ1c2ViZXRhdG9vbGJhci1jZ2QiOjEsIndpa2lsb3ZlLWVuYWJsZWQiOjEsInZhcmlhbnQiOiJlbiIsImxhbmd1YWdlIjoiZW4iLCJzZWFyY2hOczAiOnRydWUsInNlYXJjaE5zMSI6ZmFsc2UsInNlYXJjaE5zMiI6ZmFsc2UsInNlYXJjaE5zMyI6ZmFsc2UsInNlYXJjaE5zNCI6ZmFsc2UsInNlYXJjaE5zNSI6ZmFsc2UsInNlYXJjaE5zNiI6ZmFsc2UsInNlYXJjaE5zNyI6ZmFsc2UsInNlYXJjaE5zOCI6ZmFsc2UsInNlYXJjaE5zOSI6ZmFsc2UsInNlYXJjaE5zMTAiOmZhbHNlLCJzZWFyY2hOczExIjpmYWxzZSwic2VhcmNoTnMxMiI6ZmFsc2UsInNlYXJjaE5zMTMiOmZhbHNlLCJzZWFyY2hOczE0IjpmYWxzZSwic2VhcmNoTnMxNSI6ZmFsc2UsInNlYXJjaE5zMTAwIjpmYWxzZSwic2VhcmNoTnMxMDEiOmZhbHNlLCJzZWFyY2hOczEwOCI6ZmFsc2UsInNlYXJjaE5zMTA5IjpmYWxzZSwiZ2FkZ2V0LXdtZkZSMjAxMVN0eWxlIjoxfSk7O213LnVzZXIudG9rZW5zLnNldCh7ImVkaXRUb2tlbiI6IitcXCIsIndhdGNoVG9rZW4iOmZhbHNlfSk7O213LmxvYWRlci5zdGF0ZSh7InVzZXIub3B0aW9ucyI6InJlYWR5IiwidXNlci50b2tlbnMiOiJyZWFkeSJ9KTsKCQoJLyogY2FjaGUga2V5OiBlbndpa2k6cmVzb3VyY2Vsb2FkZXI6ZmlsdGVyOm1pbmlmeS1qczo0OmI0MWE4NmVjNGUwZmU4MzI5YmMzY2U5MTdlNzkyMzM5ICovCn0KPC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii8vZ2VvaXBsb29rdXAud2lraW1lZGlhLm9yZy8iIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+PCEtLSBTZXJ2ZWQgYnkgc3J2MjEyIGluIDAuMzM0IHNlY3MuIC0tPgoJPC9ib2R5Pgo8L2h0bWw+Cg%3D%3D' newHTML=newHTML + "<div id='searchEngineDiv"+i+"'>" + "<img src='" + trackerData.tracker.tracker_icon + "' aligh='middle' width='16' height='16' /> " + "<input type='text' name='searchEnginesName"+i+"' value='" + trackerData.tracker.tracker_name + "' size='16' > " + "<input type='text' name='searchEnginesUrl"+i+"' value='" + trackerData.tracker.tracker_url + "' size='55' > "; //"<input type='text' name='searchEnginesEnabled"+i+"' value='" + trackerData.tracker.tracker_enabled + "' size='55' > "; /*if (trackerData.tracker.tracker_url.match(/imdb-id/i) == 'imdb-id') { newHTML=newHTML + "<input type='checkbox' name='searchEnginesBool"+i+"' value='Stuff' checked='true' title='Uses imdb id' />imdbid "; } else { newHTML=newHTML + "<input type='checkbox' name='searchEnginesBool"+i+"' title='Uses imdb id' />imdbid "; }*/ newHTML=newHTML + "<input type='text' name='searchEnginesIcon"+i+"' value='" + trackerData.tracker.tracker_icon + "' size='28' > "; if (trackerData.tracker.tracker_enabled == 'true') { newHTML=newHTML + "<input type='checkbox' name='searchEnginesEnabled"+i+"' value='Stuff' checked='true' title='Enabled' /> "; } else { newHTML=newHTML + "<input type='checkbox' name='searchEnginesEnabled"+i+"' title='Enabled' /> "; } newHTML=newHTML + "<input type='button' name='searchEnginesButton"+i+"' value='-' title='Remove " + trackerData.tracker.tracker_name +"' onClick='alert(\"To do: \\nRemove searchEngineDiv" + i + "\")' />" + //<INPUT TYPE="button" VALUE="Click here to be alerted" onClick='alert("There. You have been alerted.")'> //var element = document.getElementByName('searchEnginesName"+i+"');alert(element.length); //element.parentNode.removeChild(element); "<br /></div>"; //remBtn.addEventListener("click", function () { saveOptions(trackerData); }, false); //function () { removeElement(trackerDiv, searchEngineDiv + i); } // var remBtn = document.getElementById("searchEnginesButton" + i); // remBtn.addEventListener("click", function () { removeElement('trackerDiv', 'searchEngineDiv"+i+"'); }, false); //divOptions.appendChild(remBtn); //document.FormName.ButtonName.onclick= function() {alert('Here is a pop up message');}; //var element; //element=document.getElementByName('searchEnginesButton0'); //alert(element.length); } } if (rawView == true) { //option to see raw tracker data for debugging newHTML = newHTML + "<textarea overflow-x='scroll' wrap='off' name='inputtext' rows='20' cols='3000' >" + temp + "</textarea> <br>"; } newHTML = newHTML + "<input type='button' value='Add' id='addButton' title='Add new Search Engine' />" + //"<input type='button' value='Add' title='Add new Search Engine' onClick='document.getElementById(\"trackerDiv\").innerHTML = \"<input type='text' />\"' />" + "</div><br />" + "<input type='checkbox' name='dostuff' value='Stuff' disabled='disabled' checked='true' /> <font color='#C0C0C0'> Open in new tabs" + "<br /><br />" + "<div align='center'> <INPUT type='button' id='saveButton' value='Save' title='Save options' /*onClick='saveOptions(trackerData)'*/ /> <input type='button' value='Reset' onClick='this.form.reset()' /></div>" ; //aopenall.addEventListener("click", function () { saveOptions(trackerData); }, false); //'<input id="greasemonkeyButton" type="button" value="Call Greasemonkey Function" />'; // //button.addEventListener('click',saveOptions(trackerData),true); newHTML += /*var tdconfigure = document.createElement("td"); aconfigure.innerHTML = "Configure"; aconfigure.href = "javascript:;"; aconfigure.setAttribute("class", "configureLink"); aconfigure.addEventListener("click", function () { configureLink(); }, false); tdconfigure.appendChild(aconfigure); iconbar.appendChild(tdconfigure);*/ "</form>" + "</div>"; //ifr.style.left='150px'; //ifr.style.top='150px'; ifr.innerHTML=newHTML; ifr.frameborder=0;document.getElementsByTagName('body')[0].appendChild(ifr); //if (document.getElementById && document.createElement) { //modern browser check //Set EventListener for save button var butt = document.getElementById("saveButton"); butt.addEventListener("click", function () { saveOptions(trackerData); }, false); //Set EventListener for add button var addBtn = document.getElementById("addButton"); addBtn.addEventListener("click", function () { callbackAdd(); }, false); //Set EventListener for remove buttons /*for (var i = 0; i < searchEngines.length; i++) { var remBtn = document.getElementById("searchEnginesButton" + i); remBtn.addEventListener("click", callbackRemove(i)); //remBtn = null; }*/ } //add corresponding textboxes, buttons and imgs to the search engine div function addSearchEngine(){ var divTracker = document.getElementById("trackerDiv"); //var p = document.createElement("text"); /*var butt = document.createElement('button'); var buttext = document.createTextNode('Ready'); butt.appendChild(buttext); divTracker.appendChild(butt);*/ //"<input type='text' name='searchEnginesName"+i+"' value='" + trackerData.tracker.tracker_name + "' size='16' > "; //var iptText = document.createElement('text'); //divTracker.appendChild(iptText); //var saveBtn = document.getElementById('saveButton'); //p2.parentNode.insertBefore(butt,p2); //divTracker.insertBefore(butt,saveBtn); } // Function that provides pass of event handling parameters with separate copy in each loop function callbackRemove(index) { return function() { removeElement('trackerDiv', "searchEngineDiv" + index); } } // Function that provides pass of event handling parameters with separate copy in each loop function callbackAdd() { //alert("Add code goes here"); addSearchEngine(); } function getTitle() { var title = document.title; title = title.match(/(.*?) \(/)[1]; //Excludes everything from first set of brackets return title; } function getId() { with (location.href) { //var id = match(/title\/tt(.*?)*\?*\//i)[1]; var id = match(/title\/tt(.*?)\//i)[1]; } return id; } function addIconBarIcons(title, id, trackers) { //var iconbar = xpath("//h1",document); //var iconbar = document.evaluate('//h1 [contains(@itemprop,"name")]', document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); //var iconbar = document.evaluate( '//h1[ not( @class = "imdb-pro-ad__title" )]' ,document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null ); //var iconbar = document.evaluate( '//h1[ not( @class = "title_block" )]' ,document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null ); //var iconbar = document.getElementsByClassName('title_block'); var iconbar = document.getElementsByClassName('titlebar'); //if (!iconbar || iconbar.snapshotLength != 1) { if (!iconbar) { console.log("IMDB Customizable Search Links: Error! Couldn't find icon bar. Quitting!"); return; } //iconbar = iconbar.snapshotItem(0); //iconbar.id = "iconbar"; //var tdtab = document.createElement("div"); //iconbar.appendChild(tdtab); var tdimg; for (var i = 0; i < trackers.length; i++) { tdimg = document.createElement("td"); tdimg.innerHTML = trackers[i].getHTML(title, id); iconbar.appendChild(tdimg); } //Add configure link //Option: Configures new line //var tdconfigure = document.createElement("span"); var tdconfigure = document.createElement("td"); var aconfigure = document.createElement("a"); aconfigure.innerHTML = "Configure"; aconfigure.href = "javascript:;"; aconfigure.setAttribute("class", "configureLink"); aconfigure.addEventListener("click", function () { configureLink(); }, false); tdconfigure.appendChild(aconfigure); iconbar.appendChild(tdconfigure); if (GM_openInTab) { //Check if GM version 0.8.2+ - if earlier opens tabs in foreground so too many opening tabs would spam firefox //Option: OpenAll new line var tdopenall = document.createElement("span"); //var tdopenall = document.createElement("td"); var aopenall = document.createElement("a"); aopenall.innerHTML = "Open All"; aopenall.href = "javascript:;"; aopenall.setAttribute("class", "openall"); aopenall.addEventListener("click", function () { openAllInTabs(title, id); }, false); tdopenall.appendChild(aopenall); iconbar.appendChild(tdopenall); } } function addStyles() { var open_all_class = "a.openall {\n" + " font-weight: bold;\n" + " font-family: Verdana, Arial, Helvetica, sans-serif;\n" + " font-size: 10px\n" + "}"; GM_addStyle(open_all_class); var configure_searchengines = "a.configureLink {\n" + " font-weight: bold;\n" + " font-family: Verdana, Arial, Helvetica, sans-serif;\n" + " font-size: 10px\n" + "}"; GM_addStyle(configure_searchengines); var options_dialog = "div.optionsCSS {\n" + //background: linear-gradient(white, #cccccc, #aaaaaa) !important;" + // "background: -moz-linear-gradient(top, #A1D004, #FFFFFF) !important;" + "background-color: #FFFFFF; !important;"+ "background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#A1D004), to(#FFFFFF), color-stop(.5,#E2F1AE)) !important; "+ "background: -moz-linear-gradient(top, #A1D004 0%, #E2F1AE 50%, #FFFFFF 100%) !important;" + "-moz-border-radius: 20px;" + "-webkit-border-radius: 20px;" + "-khtml-border-radius: 20px;" + "border-radius: 20px;" //} //@include background-image(linear-gradient(white, #cccccc, #aaaaaa)); /*" background: -moz-linear-gradient(left, right," + "from(#A1D004)," + "to(#6B9A00));" + "background-image: -webkit-gradient(linear, left top, left bottom," + "color-stop(0.00, #A1D004)," + "color-stop(1.00, #6B9A00)) !important;" +*/ //"background: red !important" + "}"; GM_addStyle(options_dialog); } function removeElement(parentDiv, childDiv){ if (childDiv == parentDiv) { alert("The parent div cannot be removed."); } else if (document.getElementById(childDiv)) { var child = document.getElementById(childDiv); var parent = document.getElementById(parentDiv); parent.removeChild(child); } else { alert("Child div has already been removed or does not exist."); return false; } } function parseData() { //Settings (As no settings interface is displayed, just edit the settings directly from about:config) //searchEngines = GM_getObject("searchEngines",searchEngines); //Save settings so that they may be edited in about:config GM_setObject('searchEngines', searchEngines); //var data = [{"tracker": {"tracker_name": "Pass The Popcorn", "tracker_url": "http://passthepopcorn.me/torrents.php?imdb=%imdb-id", "tracker_icon": "http://passthepopcorn.me/favicon.ico"}}]; for (var i = 0; i < searchEngines.length; i++) { var trackerData = searchEngines[i]; //AllMusic fix for old style search //if(trackerData.tracker.tracker_name == "AllMovie") {trackerData.tracker.tracker_url = trackerData.tracker.tracker_url.replace(/ /g,"|");} trackers.push(new SearchEngine(trackerData.tracker.tracker_name, trackerData.tracker.tracker_url, trackerData.tracker.tracker_icon, trackerData.tracker.tracker_enabled)); //alert(trackerData.tracker.tracker_name + "\n" + trackerData.tracker.tracker_url + "\n" + trackerData.tracker.tracker_icon + "\n" + trackerData.tracker.tracker_enabled); } } function GM_getObject(name, defaultValue) { var s = GM_getValue(name); if (s === undefined) { return defaultValue; } else { return JSON.parse(s); } } function GM_setObject(name, value) { GM_setValue(name, JSON.stringify(value)); } //Main Function Code parseData(); addStyles(); var title = getTitle(); var id = getId(); addIconBarIcons(title, id, trackers); //settingsDialog(); (function() { try { var tr = document.evaluate("//TR[TD/@class='lhscol'][1]/TD[last()]//TR[1]", document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null).snapshotItem(0); if (tr) { tr.deleteCell(tr.cells.length - 1); } } catch (e) { alert("UserScript exception: " + e); } } )();