


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml"> 
<head id="ctl00_Head1"><title>
	The Book of Eli Gives a Nod to Its Predecessors
</title><meta name="google-site-verification" content="5svF6FR76FyIZE_ap2utThC6x8ad8__MTUMYixSTAqM" /><meta name="verify-v1" content="KRcNeT0Y+bBeAC4QihntTWydfTsNLjJxOghgxtSpgXo=" /><meta name="google-site-verification" content="fk54Xt5G0mhAYtXWEcxINTYDOZu3ntHjPkw0qe9lh4Y" /><meta http-equiv="content-type" content="text/html;charset=utf-8" /><meta http-equiv="imagetoolbar" content="false" /><meta name="MSSmartTagsPreventParsing" content="true" /><meta id="ctl00_description" name="description" content="Movie News: The Book of Eli Gives a Nod to Its Predecessors (The Book of Eli,  Allen and Albert Hughes,  )" /><meta id="ctl00_keywords" name="keywords" content="The Book of Eli,  Allen and Albert Hughes,  " /><meta id="ctl00_robotsMeta" name="Robots" content="index,follow" /><link id="ctl00_Link1" rel="alternate" type="application/rss+xml" title="Today on ReelzChannel - Videos" href="http://www.Reelz.com/videorss" /><link id="ctl00_Link2" rel="alternate" type="application/rss+xml" title="ReelzChannel Feature Articles" href="http://www.Reelz.com/articlesrss " /><link id="ctl00_Link3" rel="alternate" type="application/rss+xml" title="ReelzChannel Movie News" href="http://www.Reelz.com/outtakesrss " /><link rel="apple-touch-icon" href="/assets/global/apple-touch-icon.png" type="image/png" />
    
    <script type="text/javascript" src="/library/js/jquery-1.4.2.min.js"></script>
    <script type="text/javascript" src="/library/js/swfobject.js"></script>
    <script type="text/javascript" src="/library/js/ReelzFinal/ReelzJSLib.js?q=5212013"></script>
    <script type="text/javascript" src="/library/js/ajaxManager.js"></script>
    <script type="text/javascript" src="/library/js/reelz-qsearch.js"></script>
    
    <script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>
    <script type="text/javascript" src="/library/js/widgets/reelzwidgetsloader.js"></script> 
    <script type="text/javascript" src="/library/js/jquery.masonry.min.js"></script>

    <script type="text/javascript">
        ord = Math.random() * 10000000000000000;
        var dcopt = "dcopt=ist;";
        var tile = 1;
        setCookie("__TEMP_ADORD", ord);
        setCookie("__TEMP_ADTILE", tile); 
        setCookie("__TEMP_ADDCOPT", dcopt);
             
    </script>
    <link rel="stylesheet" type="text/css" href="/library/css/ReelzMain.css" /><link rel="shortcut icon" href="/favico.ico" />
    
    <script type='text/javascript' src='http://partner.googleadservices.com/gampad/google_service.js'></script>

	<script type="text/javascript">
	    GS_googleAddAdSenseService("ca-pub-1360150150472063");
	    GS_googleEnableAllServices();	 
	</script>
	<script type="text/javascript">
	    GA_googleAddSlot("ca-pub-1360150150472063", "reelz_home_top_728x90");
	    GA_googleAddSlot("ca-pub-1360150150472063", "reelz_home_top_300x250");
	    GA_googleAddSlot("ca-pub-1360150150472063", "reelz_home_bottom_300x250");
	    GA_googleAddSlot("ca-pub-1360150150472063", "reelz_home_bottom_160x600");
	    GA_googleAddSlot("ca-pub-1360150150472063", "reelz_home_bottom_728x90");
	    
	    GA_googleAddSlot("ca-pub-1360150150472063", "reelz_general_top_728x90");
	    GA_googleAddSlot("ca-pub-1360150150472063", "reelz_general_top_300x250");
	    GA_googleAddSlot("ca-pub-1360150150472063", "reelz_general_bottom_300x250");
	    GA_googleAddSlot("ca-pub-1360150150472063", "reelz_general_bottom_160x600");
	    GA_googleAddSlot("ca-pub-1360150150472063", "reelz_general_bottom_728x90");
	</script>

	<script type="text/javascript">
	    GA_googleFetchAds();
	    GA_googleAddAttr("movie", "267819"); GA_googleAddAttr("person", "138946"); GA_googleAddAttr("show", "");
	</script>
    
    <script type="text/javascript">
        $(document).ready(function () {
            $("#google_ads_div_reelz_home_pushdown_ad_container").removeAttr("style");
            $("#google_ads_div_reelz_home_top_728x90_ad_container").removeAttr("style");
            $("#google_ads_div_reelz_home_top_300x250_ad_container").removeAttr("style");
            $("#google_ads_div_reelz_home_bottom_728x90_ad_container").removeAttr("style");
            $("#google_ads_div_reelz_home_bottom_300x250_ad_container").removeAttr("style");
            $("#expand-wrap").removeAttr("style");
        });        
    </script>

    <style type="text/css">
        div#google_ads_div_reelz_home_top_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_home_top_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_home_bottom_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_home_bottom_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_home_bottom_160x600_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_movie_top_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_movie_top_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_movie_bottom_160x600_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_movie_bottom_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_person_top_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_person_top_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_person_bottom_160x600_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_person_bottom_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_news_top_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_news_top_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_news_bottom_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_video_top_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_video_top_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_video_bottom_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_theater_top_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_theater_top_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_theater_bottom_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_ontv_top_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_ontv_top_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_ontv_bottom_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_show_top_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_show_top_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_show_bottom_160x600_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_show_bottom_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_general_top_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_general_top_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_general_bottom_160x600_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_general_bottom_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_photo_top_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_photo_top_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_photo_bottom_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_channel_top_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_channel_top_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_channel_bottom_728x90_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_home_skin_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_channel_bottom_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_general_bottom_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_home_bottom_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_movie_bottom_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_person_bottom_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_news_bottom_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_ontv_bottom_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_photo_bottom_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_show_bottom_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_theater_bottom_300x250_ad_container { width:auto ! important; height: auto ! important; }
        div#google_ads_div_reelz_video_bottom_300x250_ad_container { width:auto ! important; height: auto ! important; }
        
    </style>
	
    <link rel="canonical" href="http://www.reelz.com/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/"/>
    <script type="text/javascript" src="/library/js/alerts.js"></script>    
    <link rel="stylesheet" type="text/css" href='/dynamicCSS.aspx?nid=48' />
    <script type="text/javascript">
        GA_googleAddSlot("ca-pub-1360150150472063", "reelz_news_top_728x90");
        GA_googleAddSlot("ca-pub-1360150150472063", "reelz_news_top_300x250");
        GA_googleAddSlot("ca-pub-1360150150472063", "reelz_news_bottom_300x250");
        GA_googleAddSlot("ca-pub-1360150150472063", "reelz_news_bottom_160x600");
        GA_googleAddSlot("ca-pub-1360150150472063", "reelz_news_bottom_728x90");
    </script>
    <script language="javascript" type="text/javascript">
        var ParentControlID = 'ctl00_cphContent_subcomment_ParentID';
        var hasEmail = '0';
        function multiAlertsInit()
        {
            var profileGuid = getCookie("__REELZ_ACCOUNT_ID");
            if (profileGuid != null && hasEmail == "1") {
                if (document.getElementById("email_submission") != null)
                    document.getElementById("email_submission").style.display = "none";
                if (document.getElementById("profile_submission") != null)
                    document.getElementById("profile_submission").style.display = "block";
            } else {
                if (document.getElementById("email_submission") != null)
                    document.getElementById("email_submission").style.display = "block";
                if (document.getElementById("profile_submission") != null) 
                    document.getElementById("profile_submission").style.display = "none";            
            }
        }        
        
        var pageNum = 1;
        var pageSize = '10';
        var commentCount = '1';
        var topicID = '56199';
        var blogId = '5480';
    
        $(document).ready(function() {
            multiAlertsInit();
            leftColumnFmaInit('leftColumnFMAs', '48');
            if ( pageNum > commentCount / pageSize )
            {
                   $('#LoadMoreBtn').hide(); 
            }
        }); 
        function LoadMoreComments()
        {
            pageNum = pageNum + 1;            
            $('<div></div>').appendTo('#MoreComments').load('/services/getUserComments.aspx?f=html&uc=' + topicID + '&id=' + blogId + '&t=31&c=' + pageSize + '&p=' + pageNum + '&dt=hideTopicExpanded', 
                function(response, status, xhr) { 
                    if (status == 'error') { 
                        var msg = 'Sorry but there was an error: '; 
                        alert(msg + xhr.status + " " + xhr.statusText); 
                    } 
                });            
            // hide load more comments button
            if ( pageNum > commentCount / pageSize ) {
                   $('#LoadMoreBtn').hide(); 
            }
        }
        function addAlerts() {
            var alerts = $("#RelatedAlerts input:checked");
            var alertIds = "";var alertNames = "";var useremail = "";
            for (var i = 0; i < alerts.length; i++) {
                var addalert = alerts[i];
                alertIds += addalert.id + ",";
                alertNames += addalert.name + ",";
            }
            var result = document.getElementById("alert_submission_result");
            if (alertIds != null && alertIds != "") {
                var profileGuid = getCookie("__REELZ_ACCOUNT_ID");
                if (profileGuid != null) {
                    addUserAlertList(alertIds, result);
                } else{
                    useremail = $("#subscriberEmail").val();
                    blogSubmitEmail(useremail, alertIds, alertNames, result); 
                }
            }                        
            return false;
        }        
    </script>
<meta name="medium" content="blog" /><meta name="og:title" content="The Book of Eli Gives a Nod to Its Predecessors" /><meta name="og:url" content="http://www.reelz.com/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/" /><meta name="og:type" content="article" /><meta name="og:image" /><meta name="twitter:card" content="summary" /><meta name="twitter:site" content="@reelzchannel" /><meta name="twitter:creator" content="@reelz" /><meta name="twitter:url" content="http://www.reelz.com/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/" /><meta name="twitter:title" content="The Book of Eli Gives a Nod to Its Predecessors" /><meta name="twitter:description" content="As a post-apocalyptic western, The Book of Eli clearly has a lot of cinematic influences.  Although its filmmakers are taking pains to make sure it doesn't get pigeonholed as a western genre piece, th" /><meta name="twitter:image:src" /></head> 
<body>
    <form name="aspnetForm" method="post" action="/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/" id="aspnetForm">
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJNjQxNzk2ODcwD2QWAmYPZBYEAgEPZBYIAgcPFgQeBG5hbWUFC2Rlc2NyaXB0aW9uHgdjb250ZW50BWpNb3ZpZSBOZXdzOiBUaGUgQm9vayBvZiBFbGkgR2l2ZXMgYSBOb2QgdG8gSXRzIFByZWRlY2Vzc29ycyAoVGhlIEJvb2sgb2YgRWxpLCAgQWxsZW4gYW5kIEFsYmVydCBIdWdoZXMsICApZAIIDxYEHwAFCGtleXdvcmRzHwEFLFRoZSBCb29rIG9mIEVsaSwgIEFsbGVuIGFuZCBBbGJlcnQgSHVnaGVzLCAgZAIRDxUDBjI2NzgxOQYxMzg5NDYAZAISDxYCHgRUZXh0BXQ8bGluayByZWw9ImNhbm9uaWNhbCIgaHJlZj0iaHR0cDovL3d3dy5yZWVsei5jb20vbW92aWUtbmV3cy81NDgwL3RoZS1ib29rLW9mLWVsaS1naXZlcy1hLW5vZC10by1pdHMtcHJlZGVjZXNzb3JzLyIvPmQCAw8WAh4GYWN0aW9uBUEvbW92aWUtbmV3cy81NDgwL3RoZS1ib29rLW9mLWVsaS1naXZlcy1hLW5vZC10by1pdHMtcHJlZGVjZXNzb3JzLxYKAgEPDxYCHgdWaXNpYmxlaGRkAgkPZBYGZg8WAh8EaGQCAg8WAh4Hb25rZXl1cAVsamF2YXNjcmlwdDpvbktleVVwTG9jYXRpb25JbnB1dCh0aGlzLCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnemlwVmFsaWRhdGlvbkVycm9yJyksIDAsIGV2ZW50KTtyZXR1cm4gZmFsc2U7ZAIEDxYCHgdvbmNsaWNrBY4BamF2YXNjcmlwdDpzdWJtaXRMb2NhdGlvbklucHV0KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjdGwwMF9sb2NhdGlvbkN0cmxfbG9jYXRpb25JbnB1dCcpLCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnemlwVmFsaWRhdGlvbkVycm9yJyksIDApO2QCCw8PFgIfBGhkZAINDxYCHwRoZAIPD2QWAgICD2QWDgIBDw8WAh8EaGQWAgIBDxYCHwRoFgICAQ8PFgIfBGhkZAIDDxYCHwIFFzxkaXYgaWQ9Im1haW4tMmNvbHVtbiI+ZAIFDw8WAh8EaGRkAgcPDxYCHwRoZBYCZg8WAh8CBc4SPHVsIGlkPSJtb3ZpZS1uZXdzIj4gICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9InJvdyI+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgzPiAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vd3d3LnJlZWx6LmNvbS9tb3ZpZS1uZXdzLzU0ODAvdGhlLWJvb2stb2YtZWxpLWdpdmVzLWEtbm9kLXRvLWl0cy1wcmVkZWNlc3NvcnMvIj48ZW0+VGhlIEJvb2sgb2YgRWxpPC9lbT4gR2l2ZXMgYSBOb2QgdG8gSXRzIFByZWRlY2Vzc29yczwvYT4gICAgICAgICAgICA8L2gzPiAgICAgICAgICAgIDxwPjxwPjxpbWcgc3JjPSJodHRwOi8vY2FjaGUuUmVlbHouY29tL2Fzc2V0cy9jb250ZW50L21vdmllcy9wb3N0ZXIvMjY3ODE5X3Bvc3Rlci5qcGciIHdpZHRoPSI5NiIgaGVpZ2h0PSIxNDQiIGFsaWduPSJsZWZ0IiBzdHlsZT0ibWFyZ2luOiAwNXB4IDEwcHggMTBweCAwOyBib3JkZXI6IHNvbGlkIDNweCAjYzRjNGMwOyIgYWx0PSJUaGUgQm9vayBvZiBFbGkiIC8+QXMgYSBwb3N0LWFwb2NhbHlwdGljIHdlc3Rlcm4sIDxhIGhyZWY9Imh0dHA6Ly93d3cuUmVlbHouY29tL21vdmllLzI2NzgxOS90aGUtYm9vay1vZi1lbGkiPjxlbT5UaGUgQm9vayBvZiBFbGk8L2VtPjwvYT4gY2xlYXJseSBoYXMgYSBsb3Qgb2YgY2luZW1hdGljIGluZmx1ZW5jZXMuICBBbHRob3VnaCBpdHMgZmlsbW1ha2VycyBhcmUgdGFraW5nIHBhaW5zIHRvIG1ha2Ugc3VyZSBpdCBkb2Vzbid0IGdldCBwaWdlb25ob2xlZCBhcyBhIHdlc3Rlcm4gZ2VucmUgcGllY2UsIHRoZXkgaGF2ZSBiZWVuIHF1aXRlIHVwZnJvbnQgYWJvdXQgaG93IG11Y2ggdGhleSB3ZXJlIGluc3BpcmVkIGJ5IHRoZSA8YSBocmVmPSJodHRwOi8vd3d3LlJlZWx6LmNvbS9wZXJzb24vMjIwMTU2L3Nlcmdpby1sZW9uZSI+U2VyZ2lvIExlb25lPC9hPi88YSByaGVmPSJodHRwOi8vd3d3LlJlZWx6LmNvbS9wZXJzb24vNjk4NTgvY2xpbnQtZWFzdHdvb2QiPkNsaW50IEVhc3R3b29kPC9hPiBzZXJpZXMgb2Ygc3BhZ2hldHRpIHdlc3Rlcm5zLjxwPjxwPkluIGEgcmVjZW50IDxhIGhyZWY9Imh0dHA6Ly9zY2lmaXdpcmUuY29tLzIwMTAvMDEvd2UtcmV2ZWFsLXNvbWUtb2YtdGhlLWJvby5waHAiPmludGVydmlldzwvYT4gd2l0aCA8ZW0+U2NpIEZpIFdpcmU8L2VtPiwgY28tZGlyZWN0b3IgPGEgaHJlZj0iaHR0cDovL3d3dy5SZWVsei5jb20vcGVyc29uLzE1NTEzMS9hbGJlcnQtaHVnaGVzIj5BbGJlcnQ8L2E+IEh1Z2hlcyBhbHNvIGFja25vd2xlZGdlZCBzb21lIG9mIDxlbT5FbGk8L2VtPidzIG1vcmUgYXBvY2FseXB0aWMgaW5mbHVlbmNlcy4gIE9uZSB0aGF0IGhlIHBvaW50cyB0byBpbiBwYXJ0aWN1bGFyIGlzIHRoZSAxOTc1IGN1bHQgY2xhc3NpYyA8YSBocmVmPSJodHRwOi8vd3d3LlJlZWx6LmNvbS9tb3ZpZS8xODEzMjUvYS1ib3ktYW5kLWhpcy1kb2ciPjxlbT5BIEJveSBhbmQgSGlzIERvZzwvZW0+PC9hPi4gIEEgY291cGxlIG9mIGV4cGxpY2l0IG5vZHMgdG8gdGhpcyBkeXN0b3BpYW4gZm9yZXJ1bm5lciB3ZXJlIGV2ZW4gaW5jbHVkZWQgaW4gdGhlIG1vdmllIGl0c2VsZi4gIEluIHRoZSBiYWNrZ3JvdW5kIG9mIG9uZSBvZiB0aGUgc2NlbmVzIGlzIGEgd2FsbCBwb3N0ZXIgZm9yIDxlbT5BIEJveSBhbmQgSGlzIERvZzwvZW0+LCBhbmQgaW4gb25lIHNob290b3V0IHNlcXVlbmNlIGEgcm9vZnRvcCBzbmlwZXIgaXMgcGFja2luZyB0aGUgZXhhY3QgZ3VuIHRoYXQgPGEgaHJlZj0iaHR0cDovL3d3dy5SZWVsei5jb20vcGVyc29uLzM1MTQwOS9kb24tam9obnNvbiI+RG9uIEpvaG5zb248L2E+IHVzZWQgaW4gdGhhdCBtb3ZpZS48L3A+PHA+QXR0ZW50aXZlIG1vdmllIHdhdGNoZXJzIHdpbGwgZmluZCBzb21lIG90aGVyIGNpbmVtYXRpYyAiZWFzdGVyIGVnZ3MiIGluIHRoZSBtb3ZpZSBhcyB3ZWxsLiAgQXMgYW4gaG9tYWdlIHRvIHRoZSAxOTMwcyBub2lyIHZlcnNpb24gb2YgPGEgaHJlZj0iaHR0cDovL3d3dy5SZWVsei5jb20vbW92aWUvMTgzOTMxL3NjYXJmYWNlIj48ZW0+U2NhcmZhY2U8L2VtPjwvYT4sIHRoZSBmaWxtbWFrZXJzIGhhdmUgaW5jbHVkZWQgYSBjcm9zcyBvciByZWxpZ2lvdXMgaWNvbiBzb21ld2hlcmUgaW4gdGhlIGZyYW1lIHdoZW5ldmVyIEVsaSBraWxscyBzb21lb25lLiBGcm9tIHRoZSBsb29rIG9mIHRoZSB0cmFpbGVyLCB0aGVyZSBhcmUgcHJvYmFibHkgZ29pbmcgdG8gYmUgYSBsb3Qgb2YgY3Jvc3Nlcy48L3A+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNsZWFyIj48L2Rpdj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+ICAgIDwvdWw+ZAIJDw8WAh8EZ2QWHgIBDw8WAh4LTmF2aWdhdGVVcmwFvQptYWlsdG86P3N1YmplY3Q9UmVlbHpDaGFubmVsOiBUaGUgQm9vayBvZiBFbGkgR2l2ZXMgYSBOb2QgdG8gSXRzIFByZWRlY2Vzc29ycyZib2R5PUFzIGEgcG9zdC1hcG9jYWx5cHRpYyB3ZXN0ZXJuLCBUaGUgQm9vayBvZiBFbGkgY2xlYXJseSBoYXMgYSBsb3Qgb2YgY2luZW1hdGljIGluZmx1ZW5jZXMuICBBbHRob3VnaCBpdHMgZmlsbW1ha2VycyBhcmUgdGFraW5nIHBhaW5zIHRvIG1ha2Ugc3VyZSBpdCBkb2Vzbid0IGdldCBwaWdlb25ob2xlZCBhcyBhIHdlc3Rlcm4gZ2VucmUgcGllY2UsIHRoZXkgaGF2ZSBiZWVuIHF1aXRlIHVwZnJvbnQgYWJvdXQgaG93IG11Y2ggdGhleSB3ZXJlIGluc3BpcmVkIGJ5IHRoZSBTZXJnaW8gTGVvbmUvQ2xpbnQgRWFzdHdvb2Qgc2VyaWVzIG9mIHNwYWdoZXR0aSB3ZXN0ZXJucy4NCg0KSW4gYSByZWNlbnQgaW50ZXJ2aWV3IHdpdGggU2NpIEZpIFdpcmUsIGNvLWRpcmVjdG9yIEFsYmVydCBIdWdoZXMgYWxzbyBhY2tub3dsZWRnZWQgc29tZSBvZiBFbGkncyBtb3JlIGFwb2NhbHlwdGljIGluZmx1ZW5jZXMuICBPbmUgdGhhdCBoZSBwb2ludHMgdG8gaW4gcGFydGljdWxhciBpcyB0aGUgMTk3NSBjdWx0IGNsYXNzaWMgQSBCb3kgYW5kIEhpcyBEb2cuICBBIGNvdXBsZSBvZiBleHBsaWNpdCBub2RzIHRvIHRoaXMgZHlzdG9waWFuIGZvcmVydW5uZXIgd2VyZSBldmVuIGluY2x1ZGVkIGluIHRoZSBtb3ZpZSBpdHNlbGYuICBJbiB0aGUgYmFja2dyb3VuZCBvZiBvbmUgb2YgdGhlIHNjZW5lcyBpcyBhIHdhbGwgcG9zdGVyIGZvciBBIEJveSBhbmQgSGlzIERvZywgYW5kIGluIG9uZSBzaG9vdG91dCBzZXF1ZW5jZSBhIHJvb2Z0b3Agc25pcGVyIGlzIHBhY2tpbmcgdGhlIGV4YWN0IGd1biB0aGF0IERvbiBKb2huc29uIHVzZWQgaW4gdGhhdCBtb3ZpZS4NCg0KQXR0ZW50aXZlIG1vdmllIHdhdGNoZXJzIHdpbGwgZmluZCBzb21lIG90aGVyIGNpbmVtYXRpYyAiZWFzdGVyIGVnZ3MiIGluIHRoZSBtb3ZpZSBhcyB3ZWxsLiAgQXMgYW4gaG9tYWdlIHRvIHRoZSAxOTMwcyBub2lyIHZlcnNpb24gb2YgU2NhcmZhY2UsIHRoZSBmaWxtbWFrZXJzIGhhdmUgaW5jbHVkZWQgYSBjcm9zcyBvciByZWxpZ2lvdXMgaWNvbiBzb21ld2hlcmUgaW4gdGhlIGZyYW1lIHdoZW5ldmVyIEVsaSBraWxscyBzb21lb25lLiBGcm9tIHRoZSBsb29rIG9mIHRoZSB0cmFpbGVyLCB0aGVyZSBhcmUgcHJvYmFibHkgZ29pbmcgdG8gYmUgYSBsb3Qgb2YgY3Jvc3Nlcy4lMGElMGFodHRwJTNhJTJmJTJmd3d3LnJlZWx6LmNvbSUyZm1vdmllLW5ld3MlMmY1NDgwJTJmdGhlLWJvb2stb2YtZWxpLWdpdmVzLWEtbm9kLXRvLWl0cy1wcmVkZWNlc3NvcnMlMmZkZAIDDw8WAh8HBawBaHR0cDovL3d3dy5mYWNlYm9vay5jb20vc2hhcmVyLnBocD91PWh0dHA6Ly93d3cucmVlbHouY29tL21vdmllLW5ld3MvNTQ4MC90aGUtYm9vay1vZi1lbGktZ2l2ZXMtYS1ub2QtdG8taXRzLXByZWRlY2Vzc29ycy8mdD1UaGUrQm9vaytvZitFbGkrR2l2ZXMrYStOb2QrdG8rSXRzK1ByZWRlY2Vzc29yc2RkAgUPDxYCHwcFcmh0dHA6Ly9yZWRkaXQuY29tL3N1Ym1pdD91cmw9aHR0cDovL3d3dy5yZWVsei5jb20vbW92aWUtbmV3cy81NDgwL3RoZS1ib29rLW9mLWVsaS1naXZlcy1hLW5vZC10by1pdHMtcHJlZGVjZXNzb3JzL2RkAgcPDxYCHwcF+wFodHRwOi8vZGlnZy5jb20vc3VibWl0P3VybD1odHRwOi8vd3d3LnJlZWx6LmNvbS9tb3ZpZS1uZXdzLzU0ODAvdGhlLWJvb2stb2YtZWxpLWdpdmVzLWEtbm9kLXRvLWl0cy1wcmVkZWNlc3NvcnMvJnRpdGxlPVRoZStCb29rK29mK0VsaStHaXZlcythK05vZCt0bytJdHMrUHJlZGVjZXNzb3JzJmRlc2NyaXB0aW9uPUFzK2ErcG9zdC1hcG9jYWx5cHRpYyt3ZXN0ZXJuJTJjK1RoZStCb29rK29mK0VsaStjbGVhcmx5K2hhcythK2xvdCtvZitjaWRkAgkPDxYCHwcFvQFodHRwOi8vZGVsaWNpb3VzLmNvbS9wb3N0P3Y9NSZub3VpJmp1bXA9Y2xvc2UmdXJsPWh0dHA6Ly93d3cucmVlbHouY29tL21vdmllLW5ld3MvNTQ4MC90aGUtYm9vay1vZi1lbGktZ2l2ZXMtYS1ub2QtdG8taXRzLXByZWRlY2Vzc29ycy8mdGl0bGU9VGhlK0Jvb2srb2YrRWxpK0dpdmVzK2ErTm9kK3RvK0l0cytQcmVkZWNlc3NvcnNkZAILDw8WAh8HBbABaHR0cDovL2NnaS5mYXJrLmNvbS9jZ2kvZmFyay9mYXJraXQucGw/dT1odHRwOi8vd3d3LnJlZWx6LmNvbS9tb3ZpZS1uZXdzLzU0ODAvdGhlLWJvb2stb2YtZWxpLWdpdmVzLWEtbm9kLXRvLWl0cy1wcmVkZWNlc3NvcnMvJmg9VGhlK0Jvb2srb2YrRWxpK0dpdmVzK2ErTm9kK3RvK0l0cytQcmVkZWNlc3NvcnNkZAINDw8WAh8HBaULaHR0cDovL3d3dy5teXNwYWNlLmNvbS9pbmRleC5jZm0/ZnVzZWFjdGlvbj1wb3N0dG8mdD1UaGUrQm9vaytvZitFbGkrR2l2ZXMrYStOb2QrdG8rSXRzK1ByZWRlY2Vzc29ycyZjPUFzK2ErcG9zdC1hcG9jYWx5cHRpYyt3ZXN0ZXJuJTJjK1RoZStCb29rK29mK0VsaStjbGVhcmx5K2hhcythK2xvdCtvZitjaW5lbWF0aWMraW5mbHVlbmNlcy4rK0FsdGhvdWdoK2l0cytmaWxtbWFrZXJzK2FyZSt0YWtpbmcrcGFpbnMrdG8rbWFrZStzdXJlK2l0K2RvZXNuJ3QrZ2V0K3BpZ2VvbmhvbGVkK2FzK2Erd2VzdGVybitnZW5yZStwaWVjZSUyYyt0aGV5K2hhdmUrYmVlbitxdWl0ZSt1cGZyb250K2Fib3V0K2hvdyttdWNoK3RoZXkrd2VyZStpbnNwaXJlZCtieSt0aGUrU2VyZ2lvK0xlb25lJTJmQ2xpbnQrRWFzdHdvb2Qrc2VyaWVzK29mK3NwYWdoZXR0aSt3ZXN0ZXJucy4lMGQlMGElMGQlMGFJbithK3JlY2VudCtpbnRlcnZpZXcrd2l0aCtTY2krRmkrV2lyZSUyYytjby1kaXJlY3RvcitBbGJlcnQrSHVnaGVzK2Fsc28rYWNrbm93bGVkZ2VkK3NvbWUrb2YrRWxpJ3MrbW9yZSthcG9jYWx5cHRpYytpbmZsdWVuY2VzLisrT25lK3RoYXQraGUrcG9pbnRzK3RvK2luK3BhcnRpY3VsYXIraXMrdGhlKzE5NzUrY3VsdCtjbGFzc2ljK0ErQm95K2FuZCtIaXMrRG9nLisrQStjb3VwbGUrb2YrZXhwbGljaXQrbm9kcyt0byt0aGlzK2R5c3RvcGlhbitmb3JlcnVubmVyK3dlcmUrZXZlbitpbmNsdWRlZCtpbit0aGUrbW92aWUraXRzZWxmLisrSW4rdGhlK2JhY2tncm91bmQrb2Yrb25lK29mK3RoZStzY2VuZXMraXMrYSt3YWxsK3Bvc3Rlcitmb3IrQStCb3krYW5kK0hpcytEb2clMmMrYW5kK2luK29uZStzaG9vdG91dCtzZXF1ZW5jZSthK3Jvb2Z0b3Arc25pcGVyK2lzK3BhY2tpbmcrdGhlK2V4YWN0K2d1bit0aGF0K0RvbitKb2huc29uK3VzZWQraW4rdGhhdCttb3ZpZS4lMGQlMGElMGQlMGFBdHRlbnRpdmUrbW92aWUrd2F0Y2hlcnMrd2lsbCtmaW5kK3NvbWUrb3RoZXIrY2luZW1hdGljKyUyMmVhc3RlcitlZ2dzJTIyK2luK3RoZSttb3ZpZSthcyt3ZWxsLisrQXMrYW4raG9tYWdlK3RvK3RoZSsxOTMwcytub2lyK3ZlcnNpb24rb2YrU2NhcmZhY2UlMmMrdGhlK2ZpbG1tYWtlcnMraGF2ZStpbmNsdWRlZCthK2Nyb3NzK29yK3JlbGlnaW91cytpY29uK3NvbWV3aGVyZStpbit0aGUrZnJhbWUrd2hlbmV2ZXIrRWxpK2tpbGxzK3NvbWVvbmUuK0Zyb20rdGhlK2xvb2srb2YrdGhlK3RyYWlsZXIlMmMrdGhlcmUrYXJlK3Byb2JhYmx5K2dvaW5nK3RvK2JlK2ErbG90K29mK2Nyb3NzZXMuJTBkJTBhJTBkJTBhKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKyUwZCUwYSsrKysrJTBkJTBhJnU9aHR0cDovL3d3dy5yZWVsei5jb20vbW92aWUtbmV3cy81NDgwL3RoZS1ib29rLW9mLWVsaS1naXZlcy1hLW5vZC10by1pdHMtcHJlZGVjZXNzb3JzLyZsPTdkZAIPD2QWAmYPFgIfAgX4DTxkaXYgY2xhc3M9ImNsZWFyIj4gICAgPGg1PlNJR04gVVAgRk9SIEZBTiBBTEVSVFM8L2g1PiAgICA8cD5CZSB0aGUgZmlyc3QgdG8gd2F0Y2ggbmV3IHRyYWlsZXJzLkdldCBuZXdzIGFib3V0IHRoZSBzdGFycyB5b3UgbG92ZS5OZXZlciBtaXNzIHlvdXIgZmF2b3JpdGUgbW92aWUhPC9wPiAgICA8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNlZGYyY2M7IGJvcmRlcjogMXB4IHNvbGlkICNDQ0NDQ0M7IHBhZGRpbmc6IDNweDsgY29sb3I6IzMzMzMzMzsgbWFyZ2luLXRvcDogNXB4OyI+ICAgICAgICA8aDUgc3R5bGU9InRleHQtYWxpZ246Y2VudGVyOyBiYWNrZ3JvdW5kLWNvbG9yOiBUcmFuc3BhcmVudDsgY29sb3I6ICM2NjY2NjY7IGZvbnQtd2VpZ2h0OmJvbGQ7Ij5SZWxhdGVkIEZhbiBBbGVydHM8L2g1PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW5saW5lLWxpc3QiPiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9InJlbGF0ZWQiIGlkPSJSZWxhdGVkQWxlcnRzIj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSA+ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9InAxMzg5NDYiIG5hbWU9IkFsbGVuIGFuZCBBbGJlcnQgSHVnaGVzIiAvPiBBbGxlbiBhbmQgQWxiZXJ0IEh1Z2hlcyAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Imxhc3QiPiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJtMjY3ODE5IiBuYW1lPSJUaGUgQm9vayBvZiBFbGkiIC8+IFRoZSBCb29rIG9mIEVsaSAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2xlYXIiPjwvZGl2PiAgICAgICAgICAgIDwvZGl2PiAgICAgICAgICAgICAgICAgICAgICAgIDxiciAvPiAgICAgICAgPGRpdiBpZD0iZW1haWxfc3VibWlzc2lvbiIgY2xhc3M9ImhpZGUiIHN0eWxlPSJtYXJnaW4tYm90dG9tOiA1cHg7IG1hcmdpbi10b3A6IC01cHg7Ij4gICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgaWQ9InN1YnNjcmliZXJFbWFpbCIgc3R5bGU9IndpZHRoOiAxMTBweDsiIHZhbHVlPSJ5b3VyIGVtYWlsIj4gICAgICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnV0dG9uIiB2YWx1ZT0iQWRkIiBvbmNsaWNrPSJqYXZhc2NyaXB0OmFkZEFsZXJ0cygpOyByZXR1cm4gZmFsc2U7Ij4gICAgICAgIDwvZGl2PiAgICAgICAgPGRpdiBpZD0icHJvZmlsZV9zdWJtaXNzaW9uIiBjbGFzcz0iaGlkZSIgc3R5bGU9Im1hcmdpbi1ib3R0b206IDVweDsgbWFyZ2luLXRvcDogLTVweDsiPiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidXR0b24iIHZhbHVlPSJBZGQgQWxlcnRzIiBvbmNsaWNrPSJqYXZhc2NyaXB0OmFkZEFsZXJ0cygpOyByZXR1cm4gZmFsc2U7IiAvPiAgICAgICAgPC9kaXY+ICAgICAgICA8ZGl2IGlkPSJhbGVydF9zdWJtaXNzaW9uX3Jlc3VsdCI+PC9kaXY+ICAgIDwvZGl2PiAgICA8YSBocmVmPSIvd2hhdGFyZWFsZXJ0cy8iIGNsYXNzPSJtb3JlIj5XaGF0IGFyZSBBTEVSVFM/PC9hPiAgICA8ZGl2IGNsYXNzPSJjbGVhciI+PC9kaXY+PC9kaXY+ZAITDw8WAh8EaGRkAhUPFgIfAgU4PGVtPlRoZSBCb29rIG9mIEVsaTwvZW0+IEdpdmVzIGEgTm9kIHRvIEl0cyBQcmVkZWNlc3NvcnNkAhcPFgIfAgUYUG9zdGVkIDAxLjA3LjEwIGJ5IHJlZWx6ZAIZDxYCHwIF/gM8ZGl2IGlkPSdmYi1yb290Jz48L2Rpdj48c2NyaXB0PihmdW5jdGlvbihkLCBzLCBpZCkgeyAgdmFyIGpzLCBmanMgPSBkLmdldEVsZW1lbnRzQnlUYWdOYW1lKHMpWzBdOyAgaWYgKGQuZ2V0RWxlbWVudEJ5SWQoaWQpKSByZXR1cm47ICBqcyA9IGQuY3JlYXRlRWxlbWVudChzKTsganMuaWQgPSBpZDsgIGpzLnNyYyA9ICcvL2Nvbm5lY3QuZmFjZWJvb2submV0L2VuX1VTL2FsbC5qcyN4ZmJtbD0xJzsgIGZqcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShqcywgZmpzKTt9KGRvY3VtZW50LCAnc2NyaXB0JywgJ2ZhY2Vib29rLWpzc2RrJykpOzwvc2NyaXB0PjxmYjpsaWtlIGhyZWY9J2h0dHA6Ly93d3cucmVlbHouY29tL21vdmllLW5ld3MvNTQ4MC90aGUtYm9vay1vZi1lbGktZ2l2ZXMtYS1ub2QtdG8taXRzLXByZWRlY2Vzc29ycy8nIHNob3dfZmFjZXM9J2ZhbHNlJyBsYXlvdXQ9J2J1dHRvbl9jb3VudCcgd2lkdGg9JzI1MHB4JyBoZWlnaHQ9JzM1cHgnIHNlbmQ9J3RydWUnPjwvZmI6bGlrZT5kAhsPFgIfAgXCDzxwPjxpbWcgc3JjPSJodHRwOi8vY2FjaGUuUmVlbHouY29tL2Fzc2V0cy9jb250ZW50L21vdmllcy9wb3N0ZXIvMjY3ODE5X3Bvc3Rlci5qcGciIHdpZHRoPSI5NiIgaGVpZ2h0PSIxNDQiIGFsaWduPSJsZWZ0IiBzdHlsZT0ibWFyZ2luOiAwNXB4IDEwcHggMTBweCAwOyBib3JkZXI6IHNvbGlkIDNweCAjYzRjNGMwOyIgYWx0PSJUaGUgQm9vayBvZiBFbGkiIC8+QXMgYSBwb3N0LWFwb2NhbHlwdGljIHdlc3Rlcm4sIDxhIGhyZWY9Imh0dHA6Ly93d3cuUmVlbHouY29tL21vdmllLzI2NzgxOS90aGUtYm9vay1vZi1lbGkiPjxlbT5UaGUgQm9vayBvZiBFbGk8L2VtPjwvYT4gY2xlYXJseSBoYXMgYSBsb3Qgb2YgY2luZW1hdGljIGluZmx1ZW5jZXMuICBBbHRob3VnaCBpdHMgZmlsbW1ha2VycyBhcmUgdGFraW5nIHBhaW5zIHRvIG1ha2Ugc3VyZSBpdCBkb2Vzbid0IGdldCBwaWdlb25ob2xlZCBhcyBhIHdlc3Rlcm4gZ2VucmUgcGllY2UsIHRoZXkgaGF2ZSBiZWVuIHF1aXRlIHVwZnJvbnQgYWJvdXQgaG93IG11Y2ggdGhleSB3ZXJlIGluc3BpcmVkIGJ5IHRoZSA8YSBocmVmPSJodHRwOi8vd3d3LlJlZWx6LmNvbS9wZXJzb24vMjIwMTU2L3Nlcmdpby1sZW9uZSI+U2VyZ2lvIExlb25lPC9hPi88YSByaGVmPSJodHRwOi8vd3d3LlJlZWx6LmNvbS9wZXJzb24vNjk4NTgvY2xpbnQtZWFzdHdvb2QiPkNsaW50IEVhc3R3b29kPC9hPiBzZXJpZXMgb2Ygc3BhZ2hldHRpIHdlc3Rlcm5zLjxwPg0KDQo8cD5JbiBhIHJlY2VudCA8YSBocmVmPSJodHRwOi8vc2NpZml3aXJlLmNvbS8yMDEwLzAxL3dlLXJldmVhbC1zb21lLW9mLXRoZS1ib28ucGhwIj5pbnRlcnZpZXc8L2E+IHdpdGggPGVtPlNjaSBGaSBXaXJlPC9lbT4sIGNvLWRpcmVjdG9yIDxhIGhyZWY9Imh0dHA6Ly93d3cuUmVlbHouY29tL3BlcnNvbi8xNTUxMzEvYWxiZXJ0LWh1Z2hlcyI+QWxiZXJ0PC9hPiBIdWdoZXMgYWxzbyBhY2tub3dsZWRnZWQgc29tZSBvZiA8ZW0+RWxpPC9lbT4ncyBtb3JlIGFwb2NhbHlwdGljIGluZmx1ZW5jZXMuICBPbmUgdGhhdCBoZSBwb2ludHMgdG8gaW4gcGFydGljdWxhciBpcyB0aGUgMTk3NSBjdWx0IGNsYXNzaWMgPGEgaHJlZj0iaHR0cDovL3d3dy5SZWVsei5jb20vbW92aWUvMTgxMzI1L2EtYm95LWFuZC1oaXMtZG9nIj48ZW0+QSBCb3kgYW5kIEhpcyBEb2c8L2VtPjwvYT4uICBBIGNvdXBsZSBvZiBleHBsaWNpdCBub2RzIHRvIHRoaXMgZHlzdG9waWFuIGZvcmVydW5uZXIgd2VyZSBldmVuIGluY2x1ZGVkIGluIHRoZSBtb3ZpZSBpdHNlbGYuICBJbiB0aGUgYmFja2dyb3VuZCBvZiBvbmUgb2YgdGhlIHNjZW5lcyBpcyBhIHdhbGwgcG9zdGVyIGZvciA8ZW0+QSBCb3kgYW5kIEhpcyBEb2c8L2VtPiwgYW5kIGluIG9uZSBzaG9vdG91dCBzZXF1ZW5jZSBhIHJvb2Z0b3Agc25pcGVyIGlzIHBhY2tpbmcgdGhlIGV4YWN0IGd1biB0aGF0IDxhIGhyZWY9Imh0dHA6Ly93d3cuUmVlbHouY29tL3BlcnNvbi8zNTE0MDkvZG9uLWpvaG5zb24iPkRvbiBKb2huc29uPC9hPiB1c2VkIGluIHRoYXQgbW92aWUuPC9wPg0KDQo8cD5BdHRlbnRpdmUgbW92aWUgd2F0Y2hlcnMgd2lsbCBmaW5kIHNvbWUgb3RoZXIgY2luZW1hdGljICJlYXN0ZXIgZWdncyIgaW4gdGhlIG1vdmllIGFzIHdlbGwuICBBcyBhbiBob21hZ2UgdG8gdGhlIDE5MzBzIG5vaXIgdmVyc2lvbiBvZiA8YSBocmVmPSJodHRwOi8vd3d3LlJlZWx6LmNvbS9tb3ZpZS8xODM5MzEvc2NhcmZhY2UiPjxlbT5TY2FyZmFjZTwvZW0+PC9hPiwgdGhlIGZpbG1tYWtlcnMgaGF2ZSBpbmNsdWRlZCBhIGNyb3NzIG9yIHJlbGlnaW91cyBpY29uIHNvbWV3aGVyZSBpbiB0aGUgZnJhbWUgd2hlbmV2ZXIgRWxpIGtpbGxzIHNvbWVvbmUuIEZyb20gdGhlIGxvb2sgb2YgdGhlIHRyYWlsZXIsIHRoZXJlIGFyZSBwcm9iYWJseSBnb2luZyB0byBiZSBhIGxvdCBvZiBjcm9zc2VzLjwvcD4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICANCmQCHQ9kFgJmDxYCHwIFxxkgICAgPHVsIGNsYXNzPSJjbGlwTGlzdCI+ICAgICAgICAgICAgICAgICAgICA8bGk+ICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly93d3cucmVlbHouY29tL3RyYWlsZXItY2xpcHMvNDE3MTkvdGhlLWJvb2stb2YtZWxpLXRyYWlsZXIvIj4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJodHRwOi8vY2FjaGUuUmVlbHouY29tL2Fzc2V0cy9jb250ZW50L3JlcEZyYW1lLzQxNzE5L2Jvb2stb2YtZWxpLXYxX3RoLmpwZyIgLz4gICAgICAgICAgICAgICAgICAgIDxzdHJvbmc+VGhlIEJvb2sgb2YgRWxpIC0gVHJhaWxlcjwvc3Ryb25nPiAgICAgICAgICAgICAgICAgICAgPHNwYW4+RGVuemVsIFdhc2hpbmd0b24gYW5kIEdhcnkgT2xkbWFuIFN0YXIgLSBSZWxlYXNpbmcgSmFuLiAxNSA8L3NwYW4+ICAgICAgICAgICAgICAgIDwvYT4gICAgICAgICAgICA8L2xpPiAgICAgICAgICAgIDwvdWw+ICAgIDxkaXYgY2xhc3M9ImNsZWFyIj48L2Rpdj4gICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJncmV5Qm94Ij4gICAgICAgIDxkaXYgY2xhc3M9ImlubGluZS1saXN0Ij4gICAgICAgICAgICA8c3BhbiBjbGFzcz0ibGFiZWwiPlJlbGF0ZWQ6PC9zcGFuPiAgICAgICAgICAgIDx1bCBjbGFzcz0icmVsYXRlZCI+CQkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgPiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHA6Ly93d3cucmVlbHouY29tL3BlcnNvbi8xMzg5NDYvYWxsZW4tYW5kLWFsYmVydC1odWdoZXMvIj48bm9icj5BbGxlbiBhbmQgQWxiZXJ0IEh1Z2hlczwvbm9icj48L2E+ICAgICAgICAgICAgICAgICAgICAgPC9saT4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJsYXN0Ij4gICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwOi8vd3d3LnJlZWx6LmNvbS9tb3ZpZS8yNjc4MTkvdGhlLWJvb2stb2YtZWxpLyI+PG5vYnI+VGhlIEJvb2sgb2YgRWxpPC9ub2JyPjwvYT4gICAgICAgICAgICAgICAgICAgIDwvbGk+ICAgICAgICAgICAgICAgIAkJICAgICAgICAgICAgPC91bD4gICAgICAgICAgICA8ZGl2IGNsYXNzPSJjbGVhciI+PC9kaXY+ICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW5saW5lLWxpc3QgYmxvZ3MiPiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJsYWJlbCI+UmVsYXRlZCBNb3ZpZSBOZXdzOjwvc3Bhbj4gICAgICAgICAgICA8dWwgaWQ9Im1vdmllLW5ld3MiIGNsYXNzPSJjb25kZW5zZWQiPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSIiPiAgICAgICAgICAgICAgICAgICAgPGgzPjxzcGFuIGNsYXNzPSJkYXRlQm94IiA+MDMuMTIuMjAxMzwvc3Bhbj48YSBocmVmPSJodHRwOi8vd3d3LnJlZWx6LmNvbS9tb3ZpZS1uZXdzLzE1OTE4L3RvcC0xMC1iZXN0LWdhcnktb2xkbWFuLW1vdmllcy8iPlRvcCAxMCBCZXN0IEdhcnkgT2xkbWFuIE1vdmllczwvYT48L2gzPiAgICAgICAgICAgICAgICA8L2xpPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSIiPiAgICAgICAgICAgICAgICAgICAgPGgzPjxzcGFuIGNsYXNzPSJkYXRlQm94IiA+MDYuMTYuMjAxMDwvc3Bhbj48YSBocmVmPSJodHRwOi8vd3d3LnJlZWx6LmNvbS9tb3ZpZS1uZXdzLzY4NzUvZHZkLXJlbGVhc2VzLXRoZS1ib29rLW9mLWVsaS15b3V0aC1pbi1yZXZvbHQtYW5kLXdoZW4taW4tcm9tZS8iPkRWRCBSZWxlYXNlczogPGVtPlRoZSBCb29rIG9mIEVsaTwvZW0+LCA8ZW0+WW91dGggaW4gUmV2b2x0PC9lbT4sIGFuZCA8ZW0+V2hlbiBpbiBSb21lPC9lbT48L2E+PC9oMz4gICAgICAgICAgICAgICAgPC9saT4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iIj4gICAgICAgICAgICAgICAgICAgIDxoMz48c3BhbiBjbGFzcz0iZGF0ZUJveCIgPjAxLjIyLjIwMTA8L3NwYW4+PGEgaHJlZj0iaHR0cDovL3d3dy5yZWVsei5jb20vbW92aWUtbmV3cy81NjI2L3RoZS1zY2FyaWVzdC1tb3ZpZS1mdXR1cmVzLyI+VGhlIFNjYXJpZXN0IE1vdmllIEZ1dHVyZXM8L2E+PC9oMz4gICAgICAgICAgICAgICAgPC9saT4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0iIj4gICAgICAgICAgICAgICAgICAgIDxoMz48c3BhbiBjbGFzcz0iZGF0ZUJveCIgPjAxLjE1LjIwMTA8L3NwYW4+PGEgaHJlZj0iaHR0cDovL3d3dy5yZWVsei5jb20vbW92aWUtbmV3cy81NTE2L211c2ljLXRvLWVuZC10aGUtd29ybGQtYnktdGhlLWJvb2stb2YtZWxpLXNvdW5kdHJhY2staXMtb3V0LW5vdy8iPk11c2ljIHRvIEVuZCB0aGUgV29ybGQgIEJ5OiA8ZW0+VGhlIEJvb2sgb2YgRWxpPC9lbT4gU291bmR0cmFjayBJcyBPdXQgTm93PC9hPjwvaDM+ICAgICAgICAgICAgICAgIDwvbGk+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9IiI+ICAgICAgICAgICAgICAgICAgICA8aDM+PHNwYW4gY2xhc3M9ImRhdGVCb3giID4wMS4xMy4yMDEwPC9zcGFuPjxhIGhyZWY9Imh0dHA6Ly93d3cucmVlbHouY29tL21vdmllLW5ld3MvNTUzOC9kZW56ZWwtd2FzaGluZ3Rvbi1hbmQtbWlsYS1rdW5pcy10YWxrLXRoZS1ib29rLW9mLWVsaS8iPkRlbnplbCBXYXNoaW5ndG9uIGFuZCBNaWxhIEt1bmlzIFRhbGsgPGVtPlRoZSBCb29rIG9mIEVsaTwvZW0+PC9hPjwvaDM+ICAgICAgICAgICAgICAgIDwvbGk+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Imxhc3QiPiAgICAgICAgICAgICAgICAgICAgPGgzPjxzcGFuIGNsYXNzPSJkYXRlQm94IiA+MDEuMTMuMjAxMDwvc3Bhbj48YSBocmVmPSJodHRwOi8vd3d3LnJlZWx6LmNvbS9tb3ZpZS1uZXdzLzU1MjgvYm9vay1vZi1lbGktZGlyZWN0b3JzLXdlcmUtb2ZmZXJlZC10aGUtZGFyay1rbmlnaHQtcmV0dXJucy8iPjxlbT5Cb29rIG9mIEVsaTwvZW0+IERpcmVjdG9ycyBXZXJlIE9mZmVyZWQgPGVtPlRoZSBEYXJrIEtuaWdodCBSZXR1cm5zPC9lbT48L2E+PC9oMz4gICAgICAgICAgICAgICAgPC9saT4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD4gICAgICAgICAgICA8ZGl2IGNsYXNzPSJjbGVhciI+PC9kaXY+ICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgICAgICAgPC9kaXY+ZAIfDw8WAh8EZ2QWBgIBD2QWAmYPFgIfAmVkAgMPZBYCZg8PFggeCE9iamVjdElEAugqHgZUeXBlSUQCHx4GUm9vdElEAoe3Ax4LU2luZ2xlVG9waWNoZBYEAgEPZBYGAgIPDxYCHg9WYWxpZGF0aW9uR3JvdXAFCnJlcGx5dmFsaWRkZAIEDw8WAh8MBQpyZXBseXZhbGlkZGQCBQ8PFgIfDAUKcmVwbHl2YWxpZGRkAgIPDxYCHwRnZBYGAgIPDxYCHwwFCnJlcGx5dmFsaWRkZAIEDw8WAh8MBQpyZXBseXZhbGlkZGQCBQ8PFgIfDAUKcmVwbHl2YWxpZGRkAgUPZBYCZg8PFggfCALoKh8JAh8fCgKHtwMfC2hkFgQCAQ9kFgYCAg8PFgIfDAUIbmV3dmFsaWRkZAIEDw8WAh8MBQhuZXd2YWxpZGRkAgUPDxYCHwwFCG5ld3ZhbGlkZGQCAg8PFgIfBGdkFgYCAg8PFgIfDAUIbmV3dmFsaWRkZAIEDw8WAh8MBQhuZXd2YWxpZGRkAgUPDxYCHwwFCG5ld3ZhbGlkZGQCCw8PFgYeD1BhZ2VyX0l0ZW1Db3VudAIBHg5QYWdlcl9QYWdlU2l6ZQIIHg9QYWdlcl9QYWdlQ291bnQCAWQWAmYPDxYCHwRoZBYSAgEPDxYCHwRoZGQCAw8PFgQeCENzc0NsYXNzBQl0aGlzLXBhZ2UeBF8hU0ICAmRkAgUPDxYCHwRoZGQCBw8PFgQfAgUCLTIfBwVdaHR0cDovL3d3dy5yZWVsei5jb20vbW92aWUtbmV3cy81NDgwL3RoZS1ib29rLW9mLWVsaS1naXZlcy1hLW5vZC10by1pdHMtcHJlZGVjZXNzb3JzLz9wYWdlPS0yZGQCCQ8PFgQfAgUCLTEfBwVdaHR0cDovL3d3dy5yZWVsei5jb20vbW92aWUtbmV3cy81NDgwL3RoZS1ib29rLW9mLWVsaS1naXZlcy1hLW5vZC10by1pdHMtcHJlZGVjZXNzb3JzLz9wYWdlPS0xZGQCCw8PFgQfAgUBMB8HBVxodHRwOi8vd3d3LnJlZWx6LmNvbS9tb3ZpZS1uZXdzLzU0ODAvdGhlLWJvb2stb2YtZWxpLWdpdmVzLWEtbm9kLXRvLWl0cy1wcmVkZWNlc3NvcnMvP3BhZ2U9MGRkAg0PDxYCHwRoZGQCDw8PFgYfEAUJdGhpcy1wYWdlHwIFATEfEQICZGQCEQ8PFgIfBGhkZAIND2QWAgIDD2QWAmYPFgIfAgW2MzxkaXYgY2xhc3M9Iml0ZW0tZm1hIj48IS0tLS0+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cDovL2NvbnRlbnQucmVlbHouY29tL2Fzc2V0cy9qcy95dWktdXRpbGl0aWVzLmpzIj48L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwOi8vY29udGVudC5yZWVsei5jb20vYXNzZXRzL2pzL3NoYWRvd2JveC15dWkuanMiPjwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHA6Ly9jb250ZW50LnJlZWx6LmNvbS9hc3NldHMvanMvc2hhZG93Ym94LmpzIj48L3NjcmlwdD48bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHA6Ly9jb250ZW50LnJlZWx6LmNvbS9hc3NldHMvY3NzL3NoYWRvd2JveC5jc3MiIHR5cGU9InRleHQvY3NzIiAvPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iaHR0cDovL2NvbnRlbnQucmVlbHouY29tL2Fzc2V0cy9jb250ZW50L3NldHRpbmdzL3N0eWxlc2hlZXRzL3N1bW1lci1ndWlkZS0yMDA5LTIuY3NzIiB0eXBlPSJ0ZXh0L2NzcyIgLz48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+d2luZG93Lm9ubG9hZCA9IFNoYWRvd2JveC5pbml0Ozwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij5mdW5jdGlvbiB0b2dnbGVFbGVtZW50VmlzaWJpbGl0eSggaWQgKSB7CXZhciBlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIGlkICk7CXZhciBlYSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCBpZCArICItbGluayIgKTsJdmFyIG5ld3N0YXRlID0gKCBlLnN0eWxlLmRpc3BsYXkgPT0gJ2Jsb2NrJyApID8gJ25vbmUnIDogJ2Jsb2NrJzsJdmFyIG5ld3RleHQgPSAoIGUuc3R5bGUuZGlzcGxheSA9PSAnYmxvY2snICkgPyAnWytdIFNob3cgTW9udGgnIDogJ1stXSBIaWRlIE1vbnRoJzsJZS5zdHlsZS5kaXNwbGF5ID0gbmV3c3RhdGU7CWVhLmlubmVySFRNTCA9IG5ld3RleHQ7fTwvc2NyaXB0PjxkaXYgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKCdodHRwOi8vY2FjaGUuUmVlbHouY29tL2Fzc2V0cy9jb250ZW50L2ZtYS9SRUVMWklTLUZNQS1iYWNrZ3JvdW5kcmVwZWF0LTAxLmpwZycpO3dpZHRoOjMwMHB4OyBtYXJnaW4tYm90dG9tOjEwcHg7IGJvcmRlcjoxcHggc29saWQgI2FhYWFhYTsgcGFkZGluZzo1cHggMCAxNXB4IDA7Ij48YSByZWw9InNoYWRvd2JveDt3aWR0aD03MjA7aGVpZ2h0PTQwNSIgaHJlZj0iaHR0cDovL2NhY2hlLnJlZWx6LmNvbS9hc3NldHMvZmxhc2gvc3luZGljYXRlZFBsYXllci5zd2Y/Y2xpcGlkPTY4MTc1Ij48aW1nIHN0eWxlPSJtYXJnaW4tbGVmdDo0cHg7IiBzcmM9Imh0dHA6Ly9jYWNoZS5SZWVsei5jb20vYXNzZXRzL2NvbnRlbnQvZm1hL3JlZWx6aXMtcmVwZnJhbWUtMDQtc20uanBnIj48L2E+PHAgc3R5bGU9InRleHQtYWxpZ246Y2VudGVyOyI+PGltZyBzdHlsZT0ibWFyZ2luLXRvcDoyNXB4OyIgc3JjPSJodHRwOi8vY2FjaGUuUmVlbHouY29tL2Fzc2V0cy9jb250ZW50L2ZtYS9yZWVsemlzLUZNQS1sZWFybm1vcmUtMDEucG5nIj48L3A+PHRhYmxlIHdpZHRoPSIxMDAlIj48dHI+CTx0ZCBhbGlnbj0iY2VudGVyIj4JPGEgaHJlZj0iaHR0cDovL3d3dy5yZWVsei5jb20vYmV2ZXJseWhpbGxzcGF3bi8/dXRtX3NvdXJjZT1SZWVsei1JcyZhbXA7dXRtX21lZGl1bT1GTUEmYW1wO3V0bV9jb250ZW50PUJldmVybHklMkJIaWxscyUyQlBhd24mYW1wO3V0bV9jYW1wYWlnbj1SZWVseiUyQklzIj4JPGltZyBzdHlsZT0ibWFyZ2luOjE1cHggMCAwIDA7IiBzcmM9Imh0dHA6Ly9jYWNoZS5SZWVsei5jb20vYXNzZXRzL2NvbnRlbnQvZm1hL1JFRUxaSVMtRk1BLWJocGF3bi1sb2dvLTAxLnBuZyI+CTwvYT4JPC90ZD4JCTx0ZCBhbGlnbj0iY2VudGVyIj4JPGEgaHJlZj0iaHR0cDovL3d3dy5yZWVsei5jb20vc2hvdy8xNTAvcmFjZS10by10aGUtc2NlbmUvP3V0bV9zb3VyY2U9UmVlbHotSXMmYW1wO3V0bV9tZWRpdW09Rk1BJmFtcDt1dG1fY29udGVudD1SYWNlJTJCdG8lMkJ0aGUlMkJTY2VuZSZhbXA7dXRtX2NhbXBhaWduPVJlZWx6JTJCSXMiPgk8aW1nIHN0eWxlPSJtYXJnaW46MTVweCAwIDAgMDsiIHNyYz0iaHR0cDovL2NhY2hlLlJlZWx6LmNvbS9hc3NldHMvY29udGVudC9mbWEvUkVFTFpJUy1GTUEtcnR0cy1sb2dvLTAxLnBuZyI+CTwvYT4JPC90ZD48L3RyPjx0cj4JPHRkIGFsaWduPSJjZW50ZXIiPgk8YSBocmVmPSJodHRwOi8vd3d3LnJlZWx6LmNvbS9sYXdtYW4vLz91dG1fc291cmNlPVJlZWx6K0lzJmFtcDt1dG1fbWVkaXVtPUZNQSZhbXA7dXRtX2NvbnRlbnQ9TGF3bWFuJmFtcDt1dG1fY2FtcGFpZ249UmVlbHorSXMiPgk8aW1nIHN0eWxlPSJtYXJnaW46MTVweCAwIDAgMDsiIHNyYz0iaHR0cDovL2NhY2hlLnJlZWx6LmNvbS9hc3NldHMvY29udGVudC9mbWEvcmVlbHppcy1GTUEtbGF3bWFuLTAxLnBuZyI+CTwvYT4JPC90ZD4JPHRkIGFsaWduPSJjZW50ZXIiPgk8YSBocmVmPSJodHRwOi8vd3d3LnJlZWx6LmNvbS9zaG93LzE2Ni90aGUtY2Fwb25lcy8/dXRtX3NvdXJjZT1SZWVseitJcyZhbXA7dXRtX21lZGl1bT1GTUEmYW1wO3V0bV9jb250ZW50PUNhcG9uZXMmYW1wO3V0bV9jYW1wYWlnbj1SZWVseitJcy8iPgk8aW1nIHN0eWxlPSJtYXJnaW46MTVweCAwIDAgMDsiIHNyYz0iaHR0cDovL2NhY2hlLnJlZWx6LmNvbS9hc3NldHMvY29udGVudC9mbWEvUkVFTFpJUy1GTUEtY2Fwb25lcy1sb2dvLTAxLnBuZyI+CTwvYT4JPC90ZD48L3RyPjx0cj4JPHRkIGFsaWduPSJjZW50ZXIiPgk8YSBocmVmPSJodHRwOi8vd3d3LnJlZWx6LmNvbS9zaG93LzE3MC90YWxrLXRoZS10YWxrLz91dG1fc291cmNlPVJlZWx6LUlzJmFtcDt1dG1fbWVkaXVtPUZNQSZhbXA7dXRtX2NvbnRlbnQ9V2hvJTJCU2FpZCUyQldoYXQmYW1wO3V0bV9jYW1wYWlnbj1SZWVseiUyQklzIj4JPGltZyBzdHlsZT0ibWFyZ2luOjE1cHggMCAwIDA7IiBzcmM9Imh0dHA6Ly9jYWNoZS5SZWVsei5jb20vYXNzZXRzL2NvbnRlbnQvZm1hL1JFRUxaSVMtRk1BLXRhbGt0aGV0YWxrLWxvZ28tMDEucG5nIj4JPC9hPgk8L3RkPgk8dGQgYWxpZ249ImNlbnRlciI+CTxhIGhyZWY9Imh0dHA6Ly93d3cucmVlbHouY29tL3JlZWx6c2hvdy8/dXRtX3NvdXJjZT1SZWVsei1JcyZhbXA7dXRtX21lZGl1bT1GTUEmYW1wO3V0bV9jb250ZW50PVRoZSUyQlJlZWx6JTJCU2hvdyZhbXA7dXRtX2NhbXBhaWduPVJlZWx6JTJCSXMiPgk8aW1nIHN0eWxlPSJtYXJnaW46MTVweCAwIDAgMDsiIHNyYz0iaHR0cDovL2NhY2hlLlJlZWx6LmNvbS9hc3NldHMvY29udGVudC9mbWEvcmVlbHppcy1GTUEtcmVlbHpzaG93LTAyLnBuZyI+CTwvYT4JPC90ZD48L3RyPjwvdGFibGU+CTwvZGl2PjwhLS0tPGEgcmVsPSJzaGFkb3dib3g7d2lkdGg9NzIwO2hlaWdodD00MDUiIGhyZWY9Imh0dHA6Ly9jYWNoZS5yZWVsei5jb20vYXNzZXRzL2ZsYXNoL3N5bmRpY2F0ZWRQbGF5ZXIuc3dmP2NsaXBpZD01NDc5NSI+LS0+PCEtLS0tPjwvZGl2PjxkaXYgY2xhc3M9Iml0ZW0tZm1hIj48IS0tLS0+PGRpdiBjbGFzcz0ic3ViLWl0ZW0iPjx0YWJsZSB3aWR0aD0iMTAwJSI+PHRyPjx0ZD4JPHAgc3R5bGU9IiBtYXJnaW4tcmlnaHQ6NXB4OyBmb250LWZhbWlseTpIZWx2ZXRpY2EsQXJpYWwsU2Fucy1zZXJpZjsgZm9udC1zaXplOjEycHg7IGNvbG9yOiM4ODg4ODg7IHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTsgZm9udC13ZWlnaHQ6Ym9sZDsiPglGT0xMT1cgUkVFTFo6IAk8L3A+PC90ZD48dGQ+CTxhIGhyZWY9Imh0dHA6Ly93d3cuZmFjZWJvb2suY29tL1JlZWx6Q2hhbm5lbCI+PGltZyBzdHlsZT0ibWFyZ2luLXJpZ2h0OjVweDsiIHNyYz0iaHR0cDovL2NhY2hlLlJlZWx6LmNvbS9hc3NldHMvY29udGVudC9mbWEvRk1BLXNvY2lhbGxpbmtzLWZhY2Vib29rLTAyLnBuZyI+PC9hPjwvdGQ+PHRkPgk8YSBocmVmPSJodHRwczovL3R3aXR0ZXIuY29tL3JlZWx6Y2hhbm5lbCI+PGltZyBzdHlsZT0ibWFyZ2luLXJpZ2h0OjVweDsiIHNyYz0iaHR0cDovL2NhY2hlLlJlZWx6LmNvbS9hc3NldHMvY29udGVudC9mbWEvRk1BLXNvY2lhbGxpbmtzLXR3aXR0ZXItMDIucG5nIj48L2E+PC90ZD48dGQ+CTxhIGhyZWY9Imh0dHA6Ly9waW50ZXJlc3QuY29tL3JlZWx6Y2hhbm5lbC8iPjxpbWcgc3R5bGU9Im1hcmdpbi1yaWdodDo1cHg7IiBzcmM9Imh0dHA6Ly9jYWNoZS5SZWVsei5jb20vYXNzZXRzL2NvbnRlbnQvZm1hL0ZNQS1zb2NpYWxsaW5rcy1waW50ZXJlc3QtMDIucG5nIj48L2E+PC90ZD48dGQ+CTxhIGhyZWY9Imh0dHA6Ly9nZXRnbHVlLmNvbS9yZWVsemNoYW5uZWwiPjxpbWcgc3JjPSJodHRwOi8vY2FjaGUuUmVlbHouY29tL2Fzc2V0cy9jb250ZW50L2ZtYS9GTUEtc29jaWFsbGlua3MtZ2V0Z2x1ZS0wMi5wbmciPjwvYT48L3RkPgk8L3RyPjwvdGFibGU+PC9kaXY+PCEtLS0tPjwvZGl2PjxkaXYgY2xhc3M9Iml0ZW0tZm1hIj48IS0tLS0+PHN0eWxlIHR5cGU9InRleHQvY3NzIj4gICAgI2VtYWlsYm94IHAge21hcmdpbi1ib3R0b206IDEwcHg7IGZvbnQtc2l6ZTogMTRweDsgY29sb3I6ICM4ODg4ODg7IGxpbmUtaGVpZ2h0OjE4cHg7fSAgICAjZW1haWxib3ggI2VtYWlsc3VibWlzc2lvbl9yZXN1bHRzIHsgY29sb3I6IHJlZDsgZm9udC1zaXplOiAxMnB4OyBwYWRkaW5nOiAxMHB4OyBkaXNwbGF5OiBub25lO30gICAgI2VtYWlsYm94IGlucHV0W3R5cGU9InRleHQiXSB7IHRleHQtYWxpZ246bGVmdDsgY29sb3I6ICNiYmJiYmI7IGZvbnQtc2l6ZTogMTRweDsgZm9udC1mYW1pbHk6QXJpYWw7IHdpZHRoOiAxOTZweDsgaGVpZ2h0OiAyOHB4OyBwYWRkaW5nLWxlZnQ6MTBweDt9ICAgICAjZW1haWxib3ggaW5wdXQuYnV0dG9uIHtib3JkZXItcmFkaXVzOjRweDsgZm9udC1zaXplOiAxNnB4OyBmb250LXdlaWdodDogYm9sZDsgZm9udC1mYW1pbHk6SGVsdmV0aWNhLEFyaWFsLENhbGlicmksU2Fucy1zZXJpZjtoZWlnaHQ6IDMwcHg7IHdpZHRoOjQwcHg7IG1hcmdpbi1sZWZ0OiA0cHg7IHZlcnRpY2FsLWFsaWduOnRvcDsgYmFja2dyb3VuZC1jb2xvcjojMzQ3Y2IzO30gICAgICNlbWFpbGJveCAubG9hZGluZyB7IGJhY2tncm91bmQ6ICNGRkZGRkYgdXJsKC9hc3NldHMvZ2xvYmFsL3JlZWx6TG9hZGluZy5naWYpIGNlbnRlciBuby1yZXBlYXQ7IGJvcmRlcjogMXB4IHNvbGlkICNDQ0NDQ0M7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgei1pbmRleDogOTk5OyB3aWR0aDoyNThweDsgaGVpZ2h0OiA1NXB4OyB9PC9zdHlsZT48ZGl2IGlkPSJlbWFpbGJveCI+ICAgIDxkaXYgY2xhc3M9InN1Yi1pdGVtIj4gICAgPGRpdiBzdHlsZT0ibWFyZ2luOjEwcHg7Ij4gICAgICAgIDxkaXYgY2xhc3M9ImxvYWRpbmcgaGlkZSIgaWQ9ImxvYWRpbmdEaXYiPjwvZGl2PiAgICAgICAgPHA+U2lnbiB1cCBmb3IgPHN0cm9uZz5SZWVseiBSZWNvbW1lbmRzPC9zdHJvbmc+LCBvdXIgd2Vla2x5IG5ld3NsZXR0ZXI8L3A+ICAgICAgICA8aW5wdXQgaWQ9ImVtYWlsSW5wdXQiIG9uZm9jdXM9ImphdmFzY3JpcHQ6Y2xlYXJJbnB1dCh0aGlzKTsiIG9uYmx1cj0iamF2YXNjcmlwdDpzZXREZWZhdWx0KHRoaXMpOyIgdHlwZT0idGV4dCIgbmFtZT0iZW1haWxJbnB1dCIgdmFsdWU9IkVtYWlsIEFkZHJlc3MiIG1heGxlbmd0aD0iMjAwIiBvbmtleXVwPSJqYXZhc2NyaXB0Om9uS2V5VXBOZXdsZXR0ZXJPcHRpbihldmVudCwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2VtYWlsSW5wdXQnKS52YWx1ZSwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2VtYWlsc3VibWlzc2lvbl9yZXN1bHRzJykpOyIvPiAgICAgICAgPGlucHV0IHR5cGU9ImJ1dHRvbiIgb25jbGljaz0iamF2YXNjcmlwdDpzdWJtaXROZXdzbGV0dGVyT3B0SW5FbWFpbChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZW1haWxJbnB1dCcpLnZhbHVlLCBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZW1haWxzdWJtaXNzaW9uX3Jlc3VsdHMnKSk7cmV0dXJuIGZhbHNlOyIgaWQ9ImJ0bkVtYWlsU3VibWl0IiB2YWx1ZT0iR08iIGNsYXNzPSJidXR0b24iIC8+ICAgICAgICA8ZGl2IGlkPSJlbWFpbHN1Ym1pc3Npb25fcmVzdWx0cyI+PC9kaXY+ICAgIDwvZGl2PjwvZGl2PjwhLS0tLT48L2Rpdj48ZGl2IGNsYXNzPSJpdGVtLWZtYSI+PCEtLS0tPjxkaXYgY2xhc3M9InN1Yi1pdGVtIj48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+JChkb2N1bWVudCkucmVhZHkoIGZ1bmN0aW9uKCkge3ZhciBsb2FkUGFnZSA9ICcvc2VydmljZXMvbmV3cy9HZXROZXdzLmFzcHg/Zj1odG1sJmFtcDtvdXQ9cG9wdWxhci1uZXdzJmFtcDtjPTYnOyBsb2FkUGFnZSA9IGxvYWRQYWdlLnJlcGxhY2UoL2FtcDsvZywgIiIpOyQoJyNwb3B1bGFyZU1vdmllTmV3cycpLmxvYWQobG9hZFBhZ2UpOyB9KTs8L3NjcmlwdD48aDI+TW9zdCBWaWV3ZWQgTW92aWUgTmV3czwvaDI+PGRpdiBpZD0icG9wdWxhcmVNb3ZpZU5ld3MiIGNsYXNzPSJtb3N0Vmlld2VkIj48L2Rpdj48YSBjbGFzcz0ibW9yZSIgaHJlZj0iL21vdmllLW5ld3MvIj5Nb3JlIE1vdmllIE5ld3MgJmd0OzwvYT48ZGl2IGNsYXNzPSJjbGVhciI+PC9kaXY+PC9kaXY+PCEtLS0tPjwvZGl2PmRk9bueClTCGq0nCtTwyxgzVp/xrkk=" />

     
    <div style="height:0px;"></div>
    
    <div id="page-wrap" >
        <div class="header-row">
            <div class="center">
                <div id="login">
                    <a class='login' href='javascript:displayLoginForm()' title='Login or Register' rel='nofollow'>login/register</a>
                </div>
                <div id="share-tools">
                    <ul>
                        <li><a class="share-twitter" href="http://www.twitter.com/reelzchannel"></a></li>
                        <li><a class="share-getglue" href="http://www.getglue.com/reelzchannel"></a></li>
                        <li><a class="share-pinterest" href="http://www.pinterest.com/reelzchannel"></a></li>
                        <li><a  class="share-facebook" href="http://www.facebook.com/reelzchannel"></a></li>
                    </ul>
                </div>
                <div class="clear"></div>
            </div>
        </div>
        <div id="header-wrap">
            <div id="header-content">
                <div class="header-row">
                    <a href="/"><span id="header-logo"><img style="margin-top:30px;" src="/assets/reelzlogo-main.png" alt="Reelz Logo"/></span></a>
                    <div class="ad">
<div class="advertisement">
<script type="text/javascript">GA_googleAddAttr("movie", "267819");GA_googleAddAttr("person", "138946");GA_googleAddAttr("show", "");GA_googleFillSlot("reelz_news_top_728x90");</script>
</div>

</div>
                    <div class="clear"></div>
                </div>
                
                <div class="header-row">
                    <div class="header-row-col">
                        <div id="top-nav">
                            <ul id="nav">
                                <li class="navItem nohover"><a href="/" class="menuLink">home</a></li>
                                <li class="navItem"><a id="reelzchanneltvHover" class="menuLink" href="/watch/">shows</a></li>
                                <li class="navItem"><a id="newsHover" href="/movie-news/" class="menuLink">news</a></li>
                                 <li class="navItem"><a id="theatersHover" href="/theaters/" class="menuLink">movies</a></li>
                                <li class="navItem"><a id="trailersHover" href="/trailers/" class="menuLink">trailers</a></li>
                                <li class="navItem"><a id="reviewsHover" href="/reviews/" class="menuLink">reviews</a></li> 
                            </ul>
                            <div class="clear"></div>
                        </div>
                        <div id="search-wrap">
                            <div id="top-search">
                                <div class="top-quicksearch-output-wrap">
                                    <span class="top-quicksearch-output" id="navQsOutput"></span>
                                </div>
                                <input autocomplete="off" id="navQsTxtBox" type="text" value="Search REELZ"
                                    onblur="javascript:setDefault(this);javascript:reelzQSearch.cancelBubble(event);"
                                    onfocus="javascript:clearInput(this)" onkeyup="javascript:reelzQSearch.refreshResults(this, document.getElementById('navQsOutput'), '', 'quicksearch', '', event); return false;" />
                            </div>
                            <input class="button go" type="button" id="btnQuickSearchSubmit" onclick="javascript:reelzQSearch.search();return false;" />
                        </div>
                    </div>
                    <div class="header-row-col last">
                        <div class="findreelz-wrapper">
                            <span id="top-location-wrap" class="location">
                                
<span id="zipLabel">FIND REELZ:</span>
<input name="ctl00$locationCtrl$locationInput" type="text" id="ctl00_locationCtrl_locationInput" class="toplocationInput" size="5" maxlength="5" value="zip code" onfocus="this.value = ''" onkeyup="javascript:onKeyUpLocationInput(this, document.getElementById('zipValidationError'), 0, event);return false;" />
<input name="ctl00$locationCtrl$locationInputSubmit" type="button" id="ctl00_locationCtrl_locationInputSubmit" class="button go" onclick="javascript:submitLocationInput(document.getElementById('ctl00_locationCtrl_locationInput'), document.getElementById('zipValidationError'), 0);" />
<p class="error" id="zipValidationError" style="display: none;"></p>
                            </span>
                            <div id="topNavReelzLookup" class="top-nav-reelzlookup"></div>
                            <div class="clear"></div>
                       </div>
                    </div>
                    <div class="clear"></div>
                 </div>
            </div>
        </div>
        <div id="expand-wrap">
           
            

           
        </div>
        <div class="clear"></div>
        
        <div id="body-wrap">
            <div id="body-content">
                
                
                <div id="main-content">
                    
    
    <div id="main-2column">
    <div class="item sub-item">
        <div id="BlogWrapper">
            
            
            <div id="ctl00_cphContent_SingleBlog">
	
                <div id="ShareTools">
                    <h5>Share</h5>
                    <ul class="post-tools">
                        <li><a href="javascript:window.print();" rel="nofollow">
                            <img class="printShareButton" alt="print" title="print" src="/assets/images/services-sprite.gif" />
                            Print</a>
                        </li>
                        <li>
                            <a id="ctl00_cphContent_emailLNK" rel="nofollow" href="mailto:?subject=ReelzChannel: The Book of Eli Gives a Nod to Its Predecessors&amp;body=As a post-apocalyptic western, The Book of Eli clearly has a lot of cinematic influences.  Although its filmmakers are taking pains to make sure it doesn't get pigeonholed as a western genre piece, they have been quite upfront about how much they were inspired by the Sergio Leone/Clint Eastwood series of spaghetti westerns.

In a recent interview with Sci Fi Wire, co-director Albert Hughes also acknowledged some of Eli's more apocalyptic influences.  One that he points to in particular is the 1975 cult classic A Boy and His Dog.  A couple of explicit nods to this dystopian forerunner were even included in the movie itself.  In the background of one of the scenes is a wall poster for A Boy and His Dog, and in one shootout sequence a rooftop sniper is packing the exact gun that Don Johnson used in that movie.

Attentive movie watchers will find some other cinematic &quot;easter eggs&quot; in the movie as well.  As an homage to the 1930s noir version of Scarface, the filmmakers have included a cross or religious icon somewhere in the frame whenever Eli kills someone. From the look of the trailer, there are probably going to be a lot of crosses.%0a%0ahttp%3a%2f%2fwww.reelz.com%2fmovie-news%2f5480%2fthe-book-of-eli-gives-a-nod-to-its-predecessors%2f" target="_blank"><img class="emailShareButton" alt="email" title="email" src="/assets/images/services-sprite.gif" /> Email</a>
                        </li>
                        <li>
                            <a id="ctl00_cphContent_facebookLNK" rel="nofollow" href="http://www.facebook.com/sharer.php?u=http://www.reelz.com/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/&amp;t=The+Book+of+Eli+Gives+a+Nod+to+Its+Predecessors" target="_blank"><img class="facebookShareButton" alt="Facebook" title="Facebook" src="/assets/images/services-sprite.gif" /> Facebook</a>
                        </li>
                        <li>
                            <a id="ctl00_cphContent_redditLNK" rel="nofollow" href="http://reddit.com/submit?url=http://www.reelz.com/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/" target="_blank"><img class="redditShareButton" alt="Reddit" title="Reddit" src="/assets/images/services-sprite.gif"> Reddit</a>
                        </li>
                        <li>
                            <a id="ctl00_cphContent_diggLNK" rel="nofollow" href="http://digg.com/submit?url=http://www.reelz.com/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/&amp;title=The+Book+of+Eli+Gives+a+Nod+to+Its+Predecessors&amp;description=As+a+post-apocalyptic+western%2c+The+Book+of+Eli+clearly+has+a+lot+of+ci" target="_blank"><img class="diggShareButton" alt="Digg" title="Digg" src="/assets/images/services-sprite.gif"> Digg</a>
                        </li>
                        <li>
                            <a id="ctl00_cphContent_deliciousLNK" rel="nofollow" href="http://delicious.com/post?v=5&amp;noui&amp;jump=close&amp;url=http://www.reelz.com/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/&amp;title=The+Book+of+Eli+Gives+a+Nod+to+Its+Predecessors" target="_blank"><img class="deliciousShareButton" alt="del.icio.us" title="del.icio.us" src="/assets/images/services-sprite.gif"> Delicious</a>
                        </li>
                        <li>
                            <a id="ctl00_cphContent_farkLNK" rel="nofollow" href="http://cgi.fark.com/cgi/fark/farkit.pl?u=http://www.reelz.com/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/&amp;h=The+Book+of+Eli+Gives+a+Nod+to+Its+Predecessors" target="_blank"><img class="farkShareButton" alt="Fark" title="Fark" src="/assets/images/services-sprite.gif"> Fark</a>
                        </li>
                        <li>
                            <a id="ctl00_cphContent_myspaceLNK" rel="nofollow" href="http://www.myspace.com/index.cfm?fuseaction=postto&amp;t=The+Book+of+Eli+Gives+a+Nod+to+Its+Predecessors&amp;c=As+a+post-apocalyptic+western%2c+The+Book+of+Eli+clearly+has+a+lot+of+cinematic+influences.++Although+its+filmmakers+are+taking+pains+to+make+sure+it+doesn't+get+pigeonholed+as+a+western+genre+piece%2c+they+have+been+quite+upfront+about+how+much+they+were+inspired+by+the+Sergio+Leone%2fClint+Eastwood+series+of+spaghetti+westerns.%0d%0a%0d%0aIn+a+recent+interview+with+Sci+Fi+Wire%2c+co-director+Albert+Hughes+also+acknowledged+some+of+Eli's+more+apocalyptic+influences.++One+that+he+points+to+in+particular+is+the+1975+cult+classic+A+Boy+and+His+Dog.++A+couple+of+explicit+nods+to+this+dystopian+forerunner+were+even+included+in+the+movie+itself.++In+the+background+of+one+of+the+scenes+is+a+wall+poster+for+A+Boy+and+His+Dog%2c+and+in+one+shootout+sequence+a+rooftop+sniper+is+packing+the+exact+gun+that+Don+Johnson+used+in+that+movie.%0d%0a%0d%0aAttentive+movie+watchers+will+find+some+other+cinematic+%22easter+eggs%22+in+the+movie+as+well.++As+an+homage+to+the+1930s+noir+version+of+Scarface%2c+the+filmmakers+have+included+a+cross+or+religious+icon+somewhere+in+the+frame+whenever+Eli+kills+someone.+From+the+look+of+the+trailer%2c+there+are+probably+going+to+be+a+lot+of+crosses.%0d%0a%0d%0a++++++++++++++++++++++++++++++++++%0d%0a+++++%0d%0a&amp;u=http://www.reelz.com/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/&amp;l=7" target="_blank"><img class="myspaceShareButton" alt="MySpace" title="MySpace" src="/assets/images/services-sprite.gif"> MySpace</a>
                        </li>
                    </ul>
                    <div class="shareServices">
                        <span class="shareit"><script src="http://www.stumbleupon.com/hostedbadge.php?s=5"></script></span>
                        <span class="shareit">
                            <g:plusone size="tall" count="true"></g:plusone>
                        </span>
                       
                    </div>
                    <div class="clear">    <h5>SIGN UP FOR FAN ALERTS</h5>    <p>Be the first to watch new trailers.Get news about the stars you love.Never miss your favorite movie!</p>    <div style="background-color:#edf2cc; border: 1px solid #CCCCCC; padding: 3px; color:#333333; margin-top: 5px;">        <h5 style="text-align:center; background-color: Transparent; color: #666666; font-weight:bold;">Related Fan Alerts</h5>                                               <div class="inline-list">                <ul class="related" id="RelatedAlerts">                                            <li >                            <input type="checkbox" id="p138946" name="Allen and Albert Hughes" /> Allen and Albert Hughes                         </li>                                                                            <li class="last">                            <input type="checkbox" id="m267819" name="The Book of Eli" /> The Book of Eli                        </li>                                    </ul>                <div class="clear"></div>            </div>                        <br />        <div id="email_submission" class="hide" style="margin-bottom: 5px; margin-top: -5px;">            <input type="text" id="subscriberEmail" style="width: 110px;" value="your email">            <input type="submit" class="button" value="Add" onclick="javascript:addAlerts(); return false;">        </div>        <div id="profile_submission" class="hide" style="margin-bottom: 5px; margin-top: -5px;">            <input type="submit" class="button" value="Add Alerts" onclick="javascript:addAlerts(); return false;" />        </div>        <div id="alert_submission_result"></div>    </div>    <a href="/whatarealerts/" class="more">What are ALERTS?</a>    <div class="clear"></div></div>

                </div>
                <div id="BlogBody">
                    
                    
                    <h1>
                    <em>The Book of Eli</em> Gives a Nod to Its Predecessors</h1>
                    <cite>Posted 01.07.10 by reelz</cite>
                    <div id='fb-root'></div><script>(function(d, s, id) {  var js, fjs = d.getElementsByTagName(s)[0];  if (d.getElementById(id)) return;  js = d.createElement(s); js.id = id;  js.src = '//connect.facebook.net/en_US/all.js#xfbml=1';  fjs.parentNode.insertBefore(js, fjs);}(document, 'script', 'facebook-jssdk'));</script><fb:like href='http://www.reelz.com/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/' show_faces='false' layout='button_count' width='250px' height='35px' send='true'></fb:like>
                    <p><img src="http://cache.Reelz.com/assets/content/movies/poster/267819_poster.jpg" width="96" height="144" align="left" style="margin: 05px 10px 10px 0; border: solid 3px #c4c4c0;" alt="The Book of Eli" />As a post-apocalyptic western, <a href="http://www.Reelz.com/movie/267819/the-book-of-eli"><em>The Book of Eli</em></a> clearly has a lot of cinematic influences.  Although its filmmakers are taking pains to make sure it doesn't get pigeonholed as a western genre piece, they have been quite upfront about how much they were inspired by the <a href="http://www.Reelz.com/person/220156/sergio-leone">Sergio Leone</a>/<a rhef="http://www.Reelz.com/person/69858/clint-eastwood">Clint Eastwood</a> series of spaghetti westerns.<p>

<p>In a recent <a href="http://scifiwire.com/2010/01/we-reveal-some-of-the-boo.php">interview</a> with <em>Sci Fi Wire</em>, co-director <a href="http://www.Reelz.com/person/155131/albert-hughes">Albert</a> Hughes also acknowledged some of <em>Eli</em>'s more apocalyptic influences.  One that he points to in particular is the 1975 cult classic <a href="http://www.Reelz.com/movie/181325/a-boy-and-his-dog"><em>A Boy and His Dog</em></a>.  A couple of explicit nods to this dystopian forerunner were even included in the movie itself.  In the background of one of the scenes is a wall poster for <em>A Boy and His Dog</em>, and in one shootout sequence a rooftop sniper is packing the exact gun that <a href="http://www.Reelz.com/person/351409/don-johnson">Don Johnson</a> used in that movie.</p>

<p>Attentive movie watchers will find some other cinematic "easter eggs" in the movie as well.  As an homage to the 1930s noir version of <a href="http://www.Reelz.com/movie/183931/scarface"><em>Scarface</em></a>, the filmmakers have included a cross or religious icon somewhere in the frame whenever Eli kills someone. From the look of the trailer, there are probably going to be a lot of crosses.</p>

                                  
     

                

                        <ul class="clipList">                    <li>                <a href="http://www.reelz.com/trailer-clips/41719/the-book-of-eli-trailer/">                    <img src="http://cache.Reelz.com/assets/content/repFrame/41719/book-of-eli-v1_th.jpg" />                    <strong>The Book of Eli - Trailer</strong>                    <span>Denzel Washington and Gary Oldman Star - Releasing Jan. 15 </span>                </a>            </li>            </ul>    <div class="clear"></div>                     <div class="greyBox">        <div class="inline-list">            <span class="label">Related:</span>            <ul class="related">		                                    <li >                        <a href="http://www.reelz.com/person/138946/allen-and-albert-hughes/"><nobr>Allen and Albert Hughes</nobr></a>                     </li>                                                                <li class="last">                        <a href="http://www.reelz.com/movie/267819/the-book-of-eli/"><nobr>The Book of Eli</nobr></a>                    </li>                		            </ul>            <div class="clear"></div>        </div>                <div class="inline-list blogs">            <span class="label">Related Movie News:</span>            <ul id="movie-news" class="condensed">                                <li class="">                    <h3><span class="dateBox" >03.12.2013</span><a href="http://www.reelz.com/movie-news/15918/top-10-best-gary-oldman-movies/">Top 10 Best Gary Oldman Movies</a></h3>                </li>                                            <li class="">                    <h3><span class="dateBox" >06.16.2010</span><a href="http://www.reelz.com/movie-news/6875/dvd-releases-the-book-of-eli-youth-in-revolt-and-when-in-rome/">DVD Releases: <em>The Book of Eli</em>, <em>Youth in Revolt</em>, and <em>When in Rome</em></a></h3>                </li>                                            <li class="">                    <h3><span class="dateBox" >01.22.2010</span><a href="http://www.reelz.com/movie-news/5626/the-scariest-movie-futures/">The Scariest Movie Futures</a></h3>                </li>                                            <li class="">                    <h3><span class="dateBox" >01.15.2010</span><a href="http://www.reelz.com/movie-news/5516/music-to-end-the-world-by-the-book-of-eli-soundtrack-is-out-now/">Music to End the World  By: <em>The Book of Eli</em> Soundtrack Is Out Now</a></h3>                </li>                                            <li class="">                    <h3><span class="dateBox" >01.13.2010</span><a href="http://www.reelz.com/movie-news/5538/denzel-washington-and-mila-kunis-talk-the-book-of-eli/">Denzel Washington and Mila Kunis Talk <em>The Book of Eli</em></a></h3>                </li>                                            <li class="last">                    <h3><span class="dateBox" >01.13.2010</span><a href="http://www.reelz.com/movie-news/5528/book-of-eli-directors-were-offered-the-dark-knight-returns/"><em>Book of Eli</em> Directors Were Offered <em>The Dark Knight Returns</em></a></h3>                </li>                                        </ul>            <div class="clear"></div>        </div>                   </div>

                    <div class="clear">
                    </div>
                    <div id="ctl00_cphContent_CommentsPnl">
		
                        <h2>Comments</h2>
                            <div id="commentsExpandlvl1">
                                
                
                                <br />
                                <div id="MoreComments"></div>
                                <div id="LoadMoreBtn" onclick="javascript:LoadMoreComments();" style="color:Blue;cursor:pointer;" >&nbsp;</div>
                                      
 
<script language="javascript" type="text/javascript">
    function showShadow(evt)
    {            
        if (lastkey == 13)
        { 
            return false; 
        }
    
        if (Page_ClientValidate('replyvalid') || Page_ClientValidate('newvalid'))
        {
            $(".commentOverlay").prepend('<div id="commentSB"><span>Thank-you your comment has been received!</span></div>');
            $(".button").toggleClass('hide');
        }
    }
    
    var lastkey = 0;
        
    function stopRKey(evt) 
    {
      var evt = (evt) ? evt : ((event) ? event : null);
      var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
      if (node.className == "enterFix")
      {
        lastkey = 0;
      }
      else
      {
        lastkey = evt.keyCode;
      }
    }

    document.onkeypress = stopRKey; 
    
    function shareonFB()
    {
        if (Page_ClientValidate('replyvalid') || Page_ClientValidate('newvalid'))
        {
            var urlString = 'www.reelz.com/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/';
            newwindow = window.open("http://www.facebook.com/sharer.php?u=http://" + urlString + "&t=TV About Movies!", "fbshare", 'height=380,width=640');
            if (window.focus) { newwindow.focus() }
        }
    }
</script>
        
<input name="ctl00$cphContent$subcomment$ParentID" type="text" id="ctl00_cphContent_subcomment_ParentID" class="hide" />
    
    <div id="ctl00_cphContent_subcomment_AnonPnl">
	
        <div class="commentForm">
            <div class="commentOverlay">
                <fieldset>
                    <p>Don't just sit there, join the conversation!  No need to register to comment, just let us know what you think. Have fun, but please keep it clean and stay on topic &mdash; inappropriate remarks will be removed.</p>
                    <label>
                        Guest Name (<a href="javascript:displayLoginForm();">Login / Register</a>):
                    </label>            
                    <input name="ctl00$cphContent$subcomment$anonName" type="text" id="ctl00_cphContent_subcomment_anonName" class="enterFix" />
                    <label>Topic:</label>
                    <input name="ctl00$cphContent$subcomment$anonTopic" type="text" id="ctl00_cphContent_subcomment_anonTopic" class="enterFix" /><br />
                    &nbsp;
                    <label>Your Comment:</label>
                    <textarea name="ctl00$cphContent$subcomment$anonComment" rows="2" cols="20" id="ctl00_cphContent_subcomment_anonComment" class="enterFix"></textarea><br />
                    &nbsp;<br />
                    <input type="submit" name="ctl00$cphContent$subcomment$anonBtn" value="Add Comment" onclick="javascript:showShadow(event);if (lastkey == 13){return false;};WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$cphContent$subcomment$anonBtn&quot;, &quot;&quot;, true, &quot;replyvalid&quot;, &quot;&quot;, false, false))" id="ctl00_cphContent_subcomment_anonBtn" class="button" />
                    <input type="submit" name="ctl00$cphContent$subcomment$anonFBShare" value="Add and Share on Facebook" onclick="javascript:showShadow(event);shareonFB();if (lastkey == 13){return false;};" id="ctl00_cphContent_subcomment_anonFBShare" class="button" />
                </fieldset>
            </div>
        </div>
    
</div>

                                <div class="clear"></div>
                            </div>
                            <div class="greyBox">
                                <h4>Add New Comment</h4>
                            </div>
                                  
 
<script language="javascript" type="text/javascript">
    function showShadow(evt)
    {            
        if (lastkey == 13)
        { 
            return false; 
        }
    
        if (Page_ClientValidate('replyvalid') || Page_ClientValidate('newvalid'))
        {
            $(".commentOverlay").prepend('<div id="commentSB"><span>Thank-you your comment has been received!</span></div>');
            $(".button").toggleClass('hide');
        }
    }
    
    var lastkey = 0;
        
    function stopRKey(evt) 
    {
      var evt = (evt) ? evt : ((event) ? event : null);
      var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
      if (node.className == "enterFix")
      {
        lastkey = 0;
      }
      else
      {
        lastkey = evt.keyCode;
      }
    }

    document.onkeypress = stopRKey; 
    
    function shareonFB()
    {
        if (Page_ClientValidate('replyvalid') || Page_ClientValidate('newvalid'))
        {
            var urlString = 'www.reelz.com/movie-news/5480/the-book-of-eli-gives-a-nod-to-its-predecessors/';
            newwindow = window.open("http://www.facebook.com/sharer.php?u=http://" + urlString + "&t=TV About Movies!", "fbshare", 'height=380,width=640');
            if (window.focus) { newwindow.focus() }
        }
    }
</script>
        
<input name="ctl00$cphContent$subNewComment$ParentID" type="text" id="ctl00_cphContent_subNewComment_ParentID" class="hide" />
    
    <div id="ctl00_cphContent_subNewComment_AnonPnl">
	
        <div class="commentFormNew">
            <div class="commentOverlay">
                <fieldset>
                    <p>Don't just sit there, join the conversation!  No need to register to comment, just let us know what you think. Have fun, but please keep it clean and stay on topic &mdash; inappropriate remarks will be removed.</p>
                    <label>
                        Guest Name (<a href="javascript:displayLoginForm();">Login / Register</a>):
                    </label>            
                    <input name="ctl00$cphContent$subNewComment$anonName" type="text" id="ctl00_cphContent_subNewComment_anonName" class="enterFix" />
                    <label>Topic:</label>
                    <input name="ctl00$cphContent$subNewComment$anonTopic" type="text" id="ctl00_cphContent_subNewComment_anonTopic" class="enterFix" /><br />
                    &nbsp;
                    <label>Your Comment:</label>
                    <textarea name="ctl00$cphContent$subNewComment$anonComment" rows="2" cols="20" id="ctl00_cphContent_subNewComment_anonComment" class="enterFix"></textarea><br />
                    &nbsp;<br />
                    <input type="submit" name="ctl00$cphContent$subNewComment$anonBtn" value="Add Comment" onclick="javascript:showShadow(event);if (lastkey == 13){return false;};WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$cphContent$subNewComment$anonBtn&quot;, &quot;&quot;, true, &quot;newvalid&quot;, &quot;&quot;, false, false))" id="ctl00_cphContent_subNewComment_anonBtn" class="button" />
                    <input type="submit" name="ctl00$cphContent$subNewComment$anonFBShare" value="Add and Share on Facebook" onclick="javascript:showShadow(event);shareonFB();if (lastkey == 13){return false;};" id="ctl00_cphContent_subNewComment_anonFBShare" class="button" />
                </fieldset>
            </div>
        </div>
    
</div>

                    
	</div>
                </div>
            
</div>
        </div>
        

        <div class="clear">
        </div>
    </div>
    </div><!-- leave this closing div tag here... it is opened by the MainColumn Literal control above in the code behind. -->
    <div id="ctl00_cphContent_RightColumn">
	
        <div id="right-column">
            <div class="item-ad">
                
<div class="advertisement">
<script type="text/javascript">GA_googleAddAttr("movie", "267819");GA_googleAddAttr("person", "138946");GA_googleAddAttr("show", "");GA_googleFillSlot("reelz_news_top_300x250");</script>
</div>


                <p><a href="/advertise/">Advertise on ReelzChannel</a></p>
            </div>
            <div class="item">
                <div class="item-fma"><!----><script type="text/javascript" src="http://content.reelz.com/assets/js/yui-utilities.js"></script><script type="text/javascript" src="http://content.reelz.com/assets/js/shadowbox-yui.js"></script><script type="text/javascript" src="http://content.reelz.com/assets/js/shadowbox.js"></script><link rel="stylesheet" href="http://content.reelz.com/assets/css/shadowbox.css" type="text/css" /><link rel="stylesheet" href="http://content.reelz.com/assets/content/settings/stylesheets/summer-guide-2009-2.css" type="text/css" /><script type="text/javascript">window.onload = Shadowbox.init;</script><script type="text/javascript">function toggleElementVisibility( id ) {	var e = document.getElementById( id );	var ea = document.getElementById( id + "-link" );	var newstate = ( e.style.display == 'block' ) ? 'none' : 'block';	var newtext = ( e.style.display == 'block' ) ? '[+] Show Month' : '[-] Hide Month';	e.style.display = newstate;	ea.innerHTML = newtext;}</script><div style="background-image:url('http://cache.Reelz.com/assets/content/fma/REELZIS-FMA-backgroundrepeat-01.jpg');width:300px; margin-bottom:10px; border:1px solid #aaaaaa; padding:5px 0 15px 0;"><a rel="shadowbox;width=720;height=405" href="http://cache.reelz.com/assets/flash/syndicatedPlayer.swf?clipid=68175"><img style="margin-left:4px;" src="http://cache.Reelz.com/assets/content/fma/reelzis-repframe-04-sm.jpg"></a><p style="text-align:center;"><img style="margin-top:25px;" src="http://cache.Reelz.com/assets/content/fma/reelzis-FMA-learnmore-01.png"></p><table width="100%"><tr>	<td align="center">	<a href="http://www.reelz.com/beverlyhillspawn/?utm_source=Reelz-Is&amp;utm_medium=FMA&amp;utm_content=Beverly%2BHills%2BPawn&amp;utm_campaign=Reelz%2BIs">	<img style="margin:15px 0 0 0;" src="http://cache.Reelz.com/assets/content/fma/REELZIS-FMA-bhpawn-logo-01.png">	</a>	</td>		<td align="center">	<a href="http://www.reelz.com/show/150/race-to-the-scene/?utm_source=Reelz-Is&amp;utm_medium=FMA&amp;utm_content=Race%2Bto%2Bthe%2BScene&amp;utm_campaign=Reelz%2BIs">	<img style="margin:15px 0 0 0;" src="http://cache.Reelz.com/assets/content/fma/REELZIS-FMA-rtts-logo-01.png">	</a>	</td></tr><tr>	<td align="center">	<a href="http://www.reelz.com/lawman//?utm_source=Reelz+Is&amp;utm_medium=FMA&amp;utm_content=Lawman&amp;utm_campaign=Reelz+Is">	<img style="margin:15px 0 0 0;" src="http://cache.reelz.com/assets/content/fma/reelzis-FMA-lawman-01.png">	</a>	</td>	<td align="center">	<a href="http://www.reelz.com/show/166/the-capones/?utm_source=Reelz+Is&amp;utm_medium=FMA&amp;utm_content=Capones&amp;utm_campaign=Reelz+Is/">	<img style="margin:15px 0 0 0;" src="http://cache.reelz.com/assets/content/fma/REELZIS-FMA-capones-logo-01.png">	</a>	</td></tr><tr>	<td align="center">	<a href="http://www.reelz.com/show/170/talk-the-talk/?utm_source=Reelz-Is&amp;utm_medium=FMA&amp;utm_content=Who%2BSaid%2BWhat&amp;utm_campaign=Reelz%2BIs">	<img style="margin:15px 0 0 0;" src="http://cache.Reelz.com/assets/content/fma/REELZIS-FMA-talkthetalk-logo-01.png">	</a>	</td>	<td align="center">	<a href="http://www.reelz.com/reelzshow/?utm_source=Reelz-Is&amp;utm_medium=FMA&amp;utm_content=The%2BReelz%2BShow&amp;utm_campaign=Reelz%2BIs">	<img style="margin:15px 0 0 0;" src="http://cache.Reelz.com/assets/content/fma/reelzis-FMA-reelzshow-02.png">	</a>	</td></tr></table>	</div><!---<a rel="shadowbox;width=720;height=405" href="http://cache.reelz.com/assets/flash/syndicatedPlayer.swf?clipid=54795">--><!----></div><div class="item-fma"><!----><div class="sub-item"><table width="100%"><tr><td>	<p style=" margin-right:5px; font-family:Helvetica,Arial,Sans-serif; font-size:12px; color:#888888; text-transform:uppercase; font-weight:bold;">	FOLLOW REELZ: 	</p></td><td>	<a href="http://www.facebook.com/ReelzChannel"><img style="margin-right:5px;" src="http://cache.Reelz.com/assets/content/fma/FMA-sociallinks-facebook-02.png"></a></td><td>	<a href="https://twitter.com/reelzchannel"><img style="margin-right:5px;" src="http://cache.Reelz.com/assets/content/fma/FMA-sociallinks-twitter-02.png"></a></td><td>	<a href="http://pinterest.com/reelzchannel/"><img style="margin-right:5px;" src="http://cache.Reelz.com/assets/content/fma/FMA-sociallinks-pinterest-02.png"></a></td><td>	<a href="http://getglue.com/reelzchannel"><img src="http://cache.Reelz.com/assets/content/fma/FMA-sociallinks-getglue-02.png"></a></td>	</tr></table></div><!----></div><div class="item-fma"><!----><style type="text/css">    #emailbox p {margin-bottom: 10px; font-size: 14px; color: #888888; line-height:18px;}    #emailbox #emailsubmission_results { color: red; font-size: 12px; padding: 10px; display: none;}    #emailbox input[type="text"] { text-align:left; color: #bbbbbb; font-size: 14px; font-family:Arial; width: 196px; height: 28px; padding-left:10px;}     #emailbox input.button {border-radius:4px; font-size: 16px; font-weight: bold; font-family:Helvetica,Arial,Calibri,Sans-serif;height: 30px; width:40px; margin-left: 4px; vertical-align:top; background-color:#347cb3;}     #emailbox .loading { background: #FFFFFF url(/assets/global/reelzLoading.gif) center no-repeat; border: 1px solid #CCCCCC; position: absolute; z-index: 999; width:258px; height: 55px; }</style><div id="emailbox">    <div class="sub-item">    <div style="margin:10px;">        <div class="loading hide" id="loadingDiv"></div>        <p>Sign up for <strong>Reelz Recommends</strong>, our weekly newsletter</p>        <input id="emailInput" onfocus="javascript:clearInput(this);" onblur="javascript:setDefault(this);" type="text" name="emailInput" value="Email Address" maxlength="200" onkeyup="javascript:onKeyUpNewletterOptin(event, document.getElementById('emailInput').value, document.getElementById('emailsubmission_results'));"/>        <input type="button" onclick="javascript:submitNewsletterOptInEmail(document.getElementById('emailInput').value, document.getElementById('emailsubmission_results'));return false;" id="btnEmailSubmit" value="GO" class="button" />        <div id="emailsubmission_results"></div>    </div></div><!----></div><div class="item-fma"><!----><div class="sub-item"><script type="text/javascript">$(document).ready( function() {var loadPage = '/services/news/GetNews.aspx?f=html&amp;out=popular-news&amp;c=6'; loadPage = loadPage.replace(/amp;/g, "");$('#populareMovieNews').load(loadPage); });</script><h2>Most Viewed Movie News</h2><div id="populareMovieNews" class="mostViewed"></div><a class="more" href="/movie-news/">More Movie News &gt;</a><div class="clear"></div></div><!----></div>

            </div>
            <div id="ctl00_cphContent_rightColBottomAdWrapper" class="item-ad">
                
<div class="advertisement">
<script type="text/javascript">GA_googleAddAttr("movie", "267819");GA_googleAddAttr("person", "138946");GA_googleAddAttr("show", "");GA_googleFillSlot("reelz_news_bottom_300x250");</script>
</div>


                 <p><a href="/advertise/">Advertise on ReelzChannel</a></p>
            </div>
        </div>
    
</div>    

                </div>
                <div class="clear"></div>
                 
            </div>
        </div>
       
        <div id="footer-wrap">
            <div class="ad">
<div class="advertisement">
<script type="text/javascript">GA_googleAddAttr("movie", "267819");GA_googleAddAttr("person", "138946");GA_googleAddAttr("show", "");GA_googleFillSlot("reelz_news_bottom_728x90");</script>
</div>

</div>
            <iframe src="/FooterFrame.aspx" id="FooterFrame" width="100%" height="500px" scrolling="no"></iframe>
        </div>
    </div>
    
<div id="loginBox-container" class="hide">
    <div class="loginBox">
				<a class="right" style="font-size:12px; margin:10px 10px 10px 0px" href="javascript:hideLoginForm();">close</a>
        <iframe id="reelzProfile" width="600" height="515" frameborder="0" scrolling="no" ></iframe>
    </div>
</div>

    
    </form>
    <script type="text/javascript">
        locationInit('top-location-wrap', 'True');
        trailersHoverInit('trailersHover');
        reviewsHoverInit('reviewsHover');
        //tvHoverInit('tvHover');
        newsHoverInit('newsHover');
        reelzchanneltvHoverInit('reelzchanneltvHover');
        theatersHoverInit('theatersHover');
        topNavReelzLookupInit('topNavReelzLookup');
        //hideMovieMineLink('movieMineMenu');
        FB.init("ed0ce3ebe946b763bc23d17de7226c43", "/xd_receiver.htm");  
    </script>

    
        <script type="text/javascript">
            var _gaq;_gaq = _gaq || []; _gaq.push(['_setAccount', "UA-343720-9"]);_gaq.push(['_setDomainName', '.Reelz.com']);
            var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
            document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
            _uacct = "UA-343720-1";
        </script>
        <script type="text/javascript">
            try {
                if (typeof (_gat) == 'object') {
                    var pageTracker = _gat._getTracker(_uacct);
                    pageTracker._trackPageview();
                    var pageTracker = _gat._getTracker("UA-343720-9");
                    pageTracker._trackPageview();
                }
            } catch (err) { }
        </script>
    
    <!-- Begin comScore Tag -->
    <script>
    document.write(unescape("%3Cscript src='" + (document.location.protocol == "https:" ? "https://sb" : "http://b") + ".scorecardresearch.com/beacon.js' %3E%3C/script%3E"));
    </script>
    <script>
    COMSCORE.beacon({
        c1: 2,
        c2: "6035614",
        c3: "",
        c4: "",
        c5: "",
        c6: "",
        c15: ""
    });
    </script>
    <noscript>
        <img src="http://b.scorecardresearch.com/b?c1=2&c2=6035614&c3=&c4=&c5=&c6=&c15=C67BD3C1&cv=1.3&cj=1"
            style="display: none" width="0" height="0" alt="" />
    </noscript>
    <!-- End comScore Tag -->    
</body>
</html>
