PageSourceSearch

https://www.geesey-ferguson.com/services/where-to-begin

html geesey-ferguson.com collected 2026-10-07 03:30:32 UTC 157,181 bytes, 2,002 lines download raw bytes

1
2
3<!DOCTYPE html>
4<html xmlns="https://www.w3.org/1999/xhtml" dir="ltr" lang="en-US" xmlns:fb="https://www.facebook.com/2008/fbml" class="grayson">
5<head>
6    <meta charset="utf-8" />
7    <meta name="format-detection" content="telephone=no" />
8    <meta http-equiv="X-UA-Compatible" content="IE=edge">
9    <link rel="preconnect" href="https://cdnjs.cloudflare.com" crossorigin>
10    <link rel="dns-prefetch" href="https://fonts.googleapis.com">
11    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
12    <link rel="preconnect" href="https://www.google-analytics.com" crossorigin>
13    <link rel="preconnect" href="https://d1v2hfhsvnke6s.cloudfront.net" crossorigin>
14    <link rel="preconnect" href="https://s3.amazonaws.com" crossorigin>
15    <link rel="preconnect" href="https://ajax.googleapis.com" crossorigin>
16    <link rel="preconnect" href="https://www.google.com" crossorigin>
17    <link rel="preconnect" href="https://cmp.osano.com" crossorigin>
18    <link rel="preload" href="https://d1v2hfhsvnke6s.cloudfront.net/Content/Fonts/Linearicons-Free-v1.0.0/Linearicons-Free.woff2?w118d" as="font" type="font/woff2" crossorigin="anonymous">
19    <link rel="preload" href="https://d1v2hfhsvnke6s.cloudfront.net/Content/Fonts/Linearicons/Linearicons.woff2" as="font" type="font/woff2" crossorigin="anonymous">
20    <link rel="stylesheet" href="https://d1v2hfhsvnke6s.cloudfront.net/Content/Fonts/Linearicons/styles-custom.min.css" media="print" onload="this.media='all'">
21    <link rel="stylesheet" href="https://d1v2hfhsvnke6s.cloudfront.net/Content/Fonts/Linearicons-Free-v1.0.0/style.min.css" media="print" onload="this.media='all'">
22    <link rel="stylesheet" href="https://d2zeeo94hsmapq.cloudfront.net/release/themes/88ba42d/Content/Themes/Shared/css/tribute-pay-panel.css" media="print" onload="this.media='all'">
23    <link rel="stylesheet" href="https://d2zeeo94hsmapq.cloudfront.net/release/themes/88ba42d/Content/Themes/Shared/css/lightbox.css" media="print" onload="this.media='all'">
24    <link rel="stylesheet" href="/Content/Styles/fontawesome_v5.min.css" media="print" onload="this.media='all'">
25
26    
27
28
29    
29<script>
30        (function (w, o, d) {
31            w[o] = w[o] || function () {
32                w[o][d].push(arguments);
33            };
34            w[o][d] = w[o][d] || [];
35        })(window, 'Osano', 'data');
36
37    </script>
37
38    
38<script src="https://cmp.osano.com/6oqE1UQ1Qwdt1CDn/cab8fc8c-0209-4b1d-813a-9aa0269bd5a4/osano.js"></script>
38
39    
39<script type="text/javascript">
40        document.addEventListener("DOMContentLoaded", function () {
41            const targetSelector = '.osano-cm-window__dialog:not(.osano-cm-dialog--hidden)';
42            let observer = new MutationObserver(function (mutations, obs) {
43                const elem = document.querySelector(targetSelector);
44                if (elem) {
45                    if (typeof sendNiEvent === "function") {
46                        sendNiEvent(
47                            "Support",
48                            "Cookie Banner",
49                            "niEvent - View Cookie Banner",
50                            "View Cookie Banner"
51                        );
52                    }
53                    // Attach click handlers using event delegation
54                    document.addEventListener("click", function (event) {
55                        if (typeof sendGa4Event !== "function") return;
56
57                        // Handle .osano-cm-button clicks
58                        if (event.target.closest(".osano-cm-button")) {
59                            var btn = event.target.closest(".osano-cm-button");
60                            var text = btn.textContent.trim();
61                            if (btn.classList.contains("osano-cm-button--type_accept")) {
62                                sendGa4Event("Support", "Cookie Banner", "Obituary", "Accept All Click", text + " - Cookie Banner");
63                            } else if (btn.classList.contains("osano-cm-button--type_denyAll")) {
64                                sendGa4Event("Support", "Cookie Banner", "Obituary", "Reject All Click", text + " - Cookie Banner");
65                            }
66                        }
67                        // Handle .osano-cm-storage-policy clicks
68                        if (event.target.closest(".osano-cm-storage-policy")) {
69                            var text = event.target.closest(".osano-cm-storage-policy").textContent.trim();
70                            sendGa4Event("Support", "Cookie Banner", "Obituary", "Privacy Policy", text + " - Cookie Banner");
71                        }
72                    });
73                    obs.disconnect(); // Stop observing after found
74                }
75            });
76            observer.observe(document.body, { childList: true, subtree: true });
77        });
78    </script>
78
79
80    
81<link rel="alternate" type="application/rss+xml" title="RSS Feed" href="/rss.xml" />
82    
83
84
85    <!-- Google Tag Manager -->
86    
86<script>
vendor: 495 bytes, lines 86-94
86
87        (function (w, d, s, l, i) {
88            w[l] = w[l] || []; w[l].push({
89                'gtm.start':
90                    new Date().getTime(), event: 'gtm.js'
91            }); var f = d.getElementsByTagName(s)[0],
92                j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src =
93                    'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f);
94        })(window, document, 'script', 'dataLayer', '
94GTM-PCDJ3WG
vendor: 9 bytes, lines 94-95
94');
95    
95</script>
95
96    <!-- End Google Tag Manager -->
97
98<!-- Google Tag Manager -->
99<script>
vendor: 463 bytes, lines 99-107
99
100    (function (w, d, s, l, i) {
101        w[l] = w[l] || []; w[l].push({
102            'gtm.start':
103                new Date().getTime(), event: 'gtm.js'
104        }); var f = d.getElementsByTagName(s)[0],
105            j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src =
106                'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f);
107    })(window, document, 'script', 'dataLayer', '
107GTM-PLKZ973
vendor: 5 bytes, line 107
107');
108</script>
108
109<!-- End Google Tag Manager -->
110
111
112    
112<script type="text/javascript">
113var pushData = (data) => {
114  dataLayer.push(data);
115}
116
117var replaceUndefined = (value) => {
118  return value ? value : 'Null';
119}
120
121pushDeceasedInfo = (days, age, type) => {
122  pushData({
123    "dInfo": {
124      "dDays": replaceUndefined(days),
125      "dAge": replaceUndefined(age),
126      "mType": replaceUndefined(type)
127    }
128  });
129}
130
131pushEventInfo = (timeUntilFirst, timeUntilLast) => {
132  pushData({
133    "eventInfo": {
134      "timeUntilFirst": replaceUndefined(timeUntilFirst),
135      "timeUntilLast": replaceUndefined(timeUntilLast)
136    }
137  });
138}
139
140pushWallInfo = (condolencesCount, photosCount, videosCount) => {
141  pushData({
142    "wall": {
143      "countCondolences": replaceUndefined(condolencesCount),
144      "countPhotos": replaceUndefined(photosCount),
145      "countVideos": replaceUndefined(videosCount)
146    }
147  });
148}
149
150pushSiteInfo = (siteId, locationId, websiteType, brandName, version, userType, pageType,
151    codeBase, fhName, floralNetwork, seoStatus, osanoKey, cId) => {
152  pushData({
153    'siteInfo': {
154      'siteId': replaceUndefined(siteId),
155      'locationId': replaceUndefined(locationId),
156      'websiteType': replaceUndefined(websiteType),
157      'brandName': replaceUndefined(brandName),
158      'version': replaceUndefined(version),
159      'userType': replaceUndefined(userType),
160      'pageType': replaceUndefined(pageType),
161      'codeBase': replaceUndefined(codeBase),
162      'fhName': replaceUndefined(fhName),
163      'floralNetwork': replaceUndefined(floralNetwork),
164      'seoStatus': replaceUndefined(seoStatus),
165      'osanoKey': replaceUndefined(osanoKey),
166      'CId': replaceUndefined(cId)
167    }
168  });
169}
170
171pushAbTestInfo = (templateId, templateVersion, storeTemplateVersion, obitEvents, serverId, testName) => {
172  pushData({
173    "abTestInfo": {
174      "templateId": replaceUndefined(templateId),
175      "templateVersion": replaceUndefined(templateVersion),
176      "storeTemplateVersion": replaceUndefined(storeTemplateVersion),
177      "obitEvents": replaceUndefined(obitEvents),
178      "serverId": replaceUndefined(serverId),
179      "testName": replaceUndefined(testName)
180    }
181  });
182}
183
184sendGTMInfo = (category, action, label) => {
185  dataLayer.push({
186      'event': 'gaEvent',
187      'category': category,
188      'action': action,
189      'label': label
190  });
191}
192
193 sendNiEvent = (purpose, location, action, label) => {
194    window.dataLayer = window.dataLayer || [];
195    const pageType = typeof getSitePageType === "function" ? getSitePageType() : "Other";
196
197    dataLayer.push({
198        event: "niEvent",
199        "ga4.category": pageType,
200        "ga4.purpose": purpose,
201        "ga4.location": location,
202        "ga4.action": action,
203        "ga4.label": label
204    });
205}
206
207sendGa4Event = (purpose, location, category, action, label) => {
208    dataLayer.push({
209        'event': 'ga4Event',
210        'ga4.purpose': purpose,
211        'a4.location': location,
212        'a4.category': category,
213        'a4.action': action,
214        'a4.label': label,
215    });
216}
217
218getSitePageType = () => {
219   const item = window.dataLayer.find(element => element.siteInfo != null);
220   if (item && item.siteInfo && item.siteInfo.pageType) {
221       return item.siteInfo.pageType;
222   }
223   return 'Other';
224}
225
226pushPageInfo = (tcoObitId,
227  brandObitId,
228  obitDays,
229  productsOffered,
230  backgroundImage,
231  profilePhoto,
232  obitLength,
233  funeralHomeGeo,
234  countObitVideos,
235  countTreePurchases,
236  countFreeTrees,
237  countFlowerPurchases,
238  countDonations,
239  countCharityDonations,
240  obitCDays,
241  obitHours,
242  obitCreatedHour,
243  deliveryLocation,
244  pin,
245  flag,
246  fbPost,
247  wallPostActions,
248  obitPublishDate,
249  storeName,
250  deathNotice,
251  donations,
252  daysSinceDeath,
253  deceasedAge,
254  hoursToFirstEvent,
255  hoursToLastEvent,
256  aiFlag,
257  hideObituaryDisclaimer,
258  storeSentenceInBio
259  ) => {
260  pushData({
261    "pageInfo": {
262      "tcoObitId": replaceUndefined(tcoObitId),
263      "brandObitId": replaceUndefined(brandObitId),
264      "obitDays": replaceUndefined(obitDays),
265      "productsOffered": replaceUndefined(productsOffered),
266      "backgroundImage": replaceUndefined(backgroundImage),
267      "profilePhoto": replaceUndefined(profilePhoto),
268      "obitLength": replaceUndefined(obitLength),
269      "funeralHomeGeo": replaceUndefined(funeralHomeGeo),
270      "countObitVideos": replaceUndefined(countObitVideos),
271      "countTreePurchases": replaceUndefined(countTreePurchases),
272      "countFreeTrees": replaceUndefined(countFreeTrees),
273      "countFlowerPurchases": replaceUndefined(countFlowerPurchases),
274      "countDonations": replaceUndefined(countDonations),
275      "countCharityDonations": replaceUndefined(countCharityDonations),
276      "obitCDays": replaceUndefined(obitCDays),
277      "obitHours": replaceUndefined(obitHours),
278      "obitCreatedHour": replaceUndefined(obitCreatedHour),
279      "deliveryLocation": replaceUndefined(deliveryLocation),
280      "ltPin": replaceUndefined(pin),
281      "ltFlag": replaceUndefined(flag),
282      "fbPost": replaceUndefined(fbPost),
283      "wallPostActions": replaceUndefined(wallPostActions),
284      "obitPublishDate": replaceUndefined(obitPublishDate),
285      "store": replaceUndefined(storeName),
286      "deathNotice": replaceUndefined(deathNotice),
287      "donations": replaceUndefined(donations),
288      "daysSinceDeath": replaceUndefined(daysSinceDeath),
289      "deceasedAge": replaceUndefined(deceasedAge),
290      "hoursToFirstEvent": replaceUndefined(hoursToFirstEvent),
291      "hoursToLastEvent": replaceUndefined(hoursToLastEvent),
292      "aiFlag": replaceUndefined(aiFlag),
293      "hideObituaryDisclaimer": replaceUndefined(hideObituaryDisclaimer),
294      "storeSentenceInBio": replaceUndefined(storeSentenceInBio)
295    }
296  });
297}
298
299window.getGAuuid = () => {
300    const uuidKeyCookie = "tcouuid";
301    const regexCookie = new RegExp(`(^| )${uuidKeyCookie}=([^;]+)`);
302    const gaUUidCookieArr = document.cookie.match(regexCookie);
303    if (!gaUUidCookieArr) {
304        const now = new Date();
305        let uuid = "crypto" in window && window.crypto.randomUUID && window.crypto.randomUUID();
306        if (!uuid) {
307            uuid = String(now.getTime().toString(32) + Math.random().toString(16)).replace(/\./g, '-');
308        }
309        now.setTime(now.getTime() + 3600 * 1000);// 1 hour
310        document.cookie = `${uuidKeyCookie}=${uuid};expires=${now.toUTCString()};path=/`;
311        return uuid;
312    }
313    return gaUUidCookieArr[2];
314};
315
316window.pushSessionInfo = (sessionID) => {
317    pushData({
318        sessionInfo: {
319            sessionID
320        }
321    });
322}
323</script>
323
324
325
326    
326<script type="text/javascript">
327        document.addEventListener('touchstart', {}, { passive: true });
328
329        WebFontConfig = {
330            google: {
331                families: [
332                    'Lato:400,400italic,700,700italic,900,900italic,300,100,100italic,300italic'
333                ],
334                text: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzÁÉÍÓÚáéíóúÑñÜüĆćČčĐđĎďŠšŽžŸÿ0123456789IVXLCDM!?.,:;@#$%^&*()-_=+<>[]{}|\\/„“”‘’‹›«»€£¥±×÷≠→←↑↓•◦¿¡'
335            }
336        };
337
338        var doRedirect = (function(agent, addr) {
339
340
341            //matches only smartphones
342            if (/(Android.+Mobile)|iPhone|Opera\sMobi/i.test(agent)) {
343                return function() {
344                    if (addr) {
345                        window.location = (addr.indexOf('http://')) == -1 ? ('http://' + addr) : addr;
346                    }
347                };
348            }
349            return null;
350        })(navigator.userAgent || navigator.vendor || window.opera, '');
351
352
353        //dynamic forms
354        var _getDfLoginUrl = "/Forms/LoginToPreplanning";
355        var _getDfPostUrl = "/Forms/DynamicForm";
356        var _getDFStepUrl = "/Forms/DynamicFormStep";
357        var _getObitSubsUrl = "/FunHelper/SubscribeToObituaryEmails";
358        var _gApiKey = "AIzaSyAJePqBpBIkgD-XWaEODqqSpEKUFIcbVow";
359    </script>
359
360
361
362        <meta name="viewport" content="width=device-width, initial-scale=1.0">
363
364        <link rel="shortcut icon" href='https://s3.amazonaws.com/fh-content/release/Content/Media/GeeseyFergusonFuneralHomeInc/favicon.ico' type="image/x-icon">
365
366    <link rel="stylesheet" href="https://d2zeeo94hsmapq.cloudfront.net/release/themes/88ba42d/Content/Themes/Shared/css/common.css" media="print" onload="this.media='all'">
367    <link rel="stylesheet" href="/Content/Styles/DynamicBanners/DynamicBanners.min.css" media="print" onload="this.media='all'">
368    <link rel="stylesheet" href="https://d2zeeo94hsmapq.cloudfront.net/release/themes/88ba42d/Content/Themes/Shared/css/rotatingBanner/rotating-banner.css" media="print" onload="this.media='all'">
369    <link rel="stylesheet" href="/Content/Styles/hover-effects.min.css" media="print" onload="this.media='all'">
370    <link rel="stylesheet" href="/Content/Styles/media-content.min.css" media="print" onload="this.media='all'">
371    <link rel="stylesheet" href="https://d2zeeo94hsmapq.cloudfront.net/release/themes/88ba42d/Content/Themes/Shared/css/obituaries-homepage.css" media="print" onload="this.media='all'">
372
373    <title>Where to Begin | Crowley &amp; Iota, LA Funeral Home &amp; Cremat...</title>
374<meta name="description" content="Geesey-Ferguson Funeral Home in Crowley &amp; Iota, LA provides funeral, memorial, aftercare, pre-planning, and cremation services in Crowley, Iota and the sur... Learn More" />
375<meta name="robots" content="index, follow" />
376
377<link rel="shortcut icon" href="https://s3.amazonaws.com/fh-content/release/Content/Media/GeeseyFergusonFuneralHomeInc/favicon.ico" type="image/x-icon">
378<link rel="icon" href="https://s3.amazonaws.com/fh-content/release/Content/Media/GeeseyFergusonFuneralHomeInc/favicon.ico" type="image/x-icon">
379
380
381    
381<script type="application/ld+json">
382    {
383      "@context": "https://schema.org",
384      "@type": "Organization",
385        "name": "Geesey-Ferguson Funeral Home, Inc.",
386      "url": "https://www.geesey-ferguson.com",
387        "logo": "https://www.geesey-ferguson.com/Content/Media/GeeseyFergusonFuneralHomeInc/logomain39943b413ef345c8a631e257fec9e10b_5a2118785b114ee9b18c1299eccabfa5.png",
388      "contactPoint": [
389        {
390          "@type": "ContactPoint",
391            "telephone": "(337) 783-3313"
392                  }
393      ]},
394      "sameAs": [
395          "https://www.facebook.com/GeeseyFerguson/"
396      ]
397     }
398    }
399    </script>
399
400
401    <link href="https://d1v2hfhsvnke6s.cloudfront.net/Content/Scripts/bootstrap-select/css/bootstrap-select.min.css" type="text/css" rel="stylesheet"/>
402    
403
404
405
406    
406<script src="/DependencyHandler.axd/fc7272a02042f72826c3af55a2a7529f.513.js" type="text/javascript"></script>
406<script src="https://d1v2hfhsvnke6s.cloudfront.net/Content/Scripts/bootstrap-select/js/bootstrap-select.min.js" type="text/javascript"></script>
406
407
408    
408<script type="text/javascript">
409        AC_FL_RunContent = 0;
410        $("html").addClass($.browser.name).addClass("version-" + $.browser.versionNumber);
411
412        if ($.browser.name === 'msie') {
413          $('#msie-banner').css("display", "block");
414          setTimeout(function(){$('#msie-banner').fadeOut(1000);}, 5000);
415        }
416
417        FrazerMaps.Init({ apiKey: "AIzaSyAJePqBpBIkgD-XWaEODqqSpEKUFIcbVow" });
418    </script>
418
419
420    
421    <link rel="stylesheet" href="https://d2zeeo94hsmapq.cloudfront.net/release/themes/88ba42d/Content/Themes/Shared/css/fonts.css" media="print" onload="this.media='all'">
422    <link rel="stylesheet" href="/Content/Styles/jquery-ui-1.8.18.custom.min.css" media="print" onload="this.media='all'">
423    <link rel="stylesheet" href="https://d2zeeo94hsmapq.cloudfront.net/release/themes/88ba42d/Content/Themes/Shared/css/DynamicForms.css" media="print" onload="this.media='all'">
424    <link rel="stylesheet" href="/Content/Styles/coolDropDown.min.css" media="print" onload="this.media='all'">
425    <link rel="stylesheet" href="/Content/Styles/jqtransform.min.css" media="print" onload="this.media='all'">
426    <link rel="stylesheet" href="/Content/Styles/jquery.superbox.min.css" media="print" onload="this.media='all'">
427    
428
429
430    
431
432
433    
434    
434<script>
435        setTimeout(function () { // TODO need to fix jquery loading bugs on IE
436            if (document.getElementsByTagName("html")[0].classList.contains("msie")) {
437                document.getElementsByClassName("page-loader-wrapper")[0].classList.remove("active");
438            }
439        }, 5000);
440    </script>
440
441
442    
443    
444    
445    
445<script type="text/javascript">
446        $(function () {
447            if (typeof DynamicForms !== 'undefined') {
448                DynamicForms.setDomainId('content$empty_root$$_p__nhibernate$_v__guid$_6384e0b98ec4431d96a175c3cb573fd0');
449            }
450        });
451    </script>
451
452    
453
454
455
456    
457    
458
459    <link href="https://d2zeeo94hsmapq.cloudfront.net/release/themes/88ba42d/Content/Themes/Grayson/Green_Grey/css/site.css" rel="stylesheet" type="text/css" />
460
461    
462    
463
464    
464<script id="subscribe-form" type="text/html">
465        <form data-type="dynamic" data-domainid="6384e0b98ec4431d96a175c3cb573fd0" class="obituary-subs obituary-subs-popup jqtransformdone" novalidate="novalidate" action="/FunHelper/SubscribeToObituaryEmails">
466            <a href="javascript:void(0);" class="close-popup"></a>
467            <div class="description">
468                <h1>Subscribe to Obituaries</h1>
469                <p class="submited-none">Receive emails when new obituaries<br />are published to our website.</p>
470                <p class="submited-block">Thank you!</p>
471            </div>
472            <div class="fields submited-none">
473                <input type="text" placeholder="First Name" class="obituary-subs-name bg-icon-user" title="First Name">
474                <input type="text" placeholder="Email Address" class="obituary-subs-email bg-icon-letter" title="Email Address">
475                <div class="icon-info"><div class="info-wrapper">We promise not to spam or share your email</div></div>
476                <input type="submit" value="Subscribe" class="fun-button primary ui-button ui-widget ui-state-default ui-corner-all" role="button" aria-disabled="false" />
477            </div>
478        </form>
479    </script>
479
480
481    
481<script type="text/javascript">
482        var funeralModal = {
483            init: function (modalData) {
484                var $container = $('<div class="overlay-content-container"><div class="overlay"></div><div class="content"></div></div>'),
485                    $content = $('.content', $container),
486                    $overlay = $('.overlay', $container),
487                    $body = $('body'),
488                    html = $(modalData.selector).html();
489
490                var remove = function () {
491                    $container.remove();
492                }
493
494                var init = function () {
495                    $content.append(html);
496
497                    $overlay
498                        .on('click', remove);
499
500                    $('.close-popup', $content)
501                        .on('click', remove);
502
503                    $container
504                        .hide()
505                        .appendTo($body)
506                        .fadeIn('fast');
507
508                    funeralModal[modalData.init]($content.children().first());
509                }
510
511                init();
512            }
513        }
514
515        funeralModal.subscribeObituariesModalInit = function (self) {
516            var $form = $(self),
517                $formChildren = $form.children();
518
519            $formChildren.find('input').first().focus();
520
521            $form.on('submit', function () {
522                dynSubscribeToObituaryEmails($formChildren.first(), $form.attr('action'), $form.data('domainid'),
523                    function () {
524                        $form.addClass('submited');
525                    });
526                return false;
527            });
528        }
529    </script>
vendor: 101 bytes, lines 529-540
529
530
531
532
533
534    
535    
536
537    
538
539
540    <script async src="https://www.googletagmanager.com/gtag/js?id=
540UA-147210446-1
vendor: 17 bytes, lines 540-541
540"></script>
541    
541<script>
542          
vendor: 171 bytes, lines 542-547
542window.dataLayer = window.dataLayer || [];
543
544          function gtag() { dataLayer.push(arguments); }
545
546          gtag('js', new Date());
547              gtag('config', '
547UA-147210446-1
vendor: 9 bytes, lines 547-548
547');
548    
548</script>
548
549
550    
551
552<script type="text/javascript">
553    window.aciveAnim = true;
554    (function () {
555        window.API = window.API || {};
556        API.domainId = '6384e0b9-8ec4-431d-96a1-75c3cb573fd0';
557        API.apiBaseUrl = 'https://api.secure.tributecenteronline.com' + '/ClientApi/';
558        API.apiBuilderBaseUrl = 'https://api.secure.tributecenteronline.com' + '/BuilderApi';
559        API.recaptchaV3PublicKey = '6Leawu0UAAAAAF0V79rsne6v5D0ciHG9B8519VFe';
560        API.tcoAppPath = '//';
561        if (API.tcoAppPath === "//")
562            API.tcoAppPath = '/';
563        API.isLocal = 'False' === 'True';
564        API.tcoBaseUrl = 'https://www.geesey-ferguson.com' + API.tcoAppPath;
565        API.tcoSecureBaseUrl = 'https://www.geesey-ferguson.com' + API.tcoAppPath;
566        API.s3Path = '//tributecenteronline.s3-accelerate.amazonaws.com/';
567        API.TCOCloudfrontDomain = 'https://d1q40j6jx1d8h6.cloudfront.net/';
568        API.isLocal = 'false' === 'true';
569        window.API.brand = { id: 1, name: 'Frazer Consultants, LLC', obitStyle: 0, providerId: 0}; 
570        API.brands = JSON.parse('{"0":"Frazer","1":"SRS","2":"Osiris","3":"Mortware","4":"TMS","5":"Ionic","6":"Passare","7":"ContinentalComputersCorp","8":"FuneralNet","9":"Aurora","10":"FuneralDecisions","11":"Halcyon","12":"FuneralSync","13":"FuneralCall","14":"InsuranceAssignments","15":"FrontRunner","16":"TownNews","17":"AdPerfect","18":"TCO","20":"FuneralTech","21":"ObituaryHub","22":"FuneraLogic","23":"FrontRunnerNewspaper","24":"GeneralStore","25":"FuneralDataManager","26":"CFS","27":"ConnecticutPublicBroadcasting","28":"FuneralInnovations","29":"FreedomSoftware","30":"MIMS","31":"WedLFD","33":"WhiteLabelTraining","34":"MKJ","39":"Carriage"}');
571        API.moderatorName = 'Geesey-Ferguson Funeral Home, Inc.';
572        API.xPending = false;
573        API.ajax = function (httpMethod, controller, method, data, contentType, isApi, success, error, customHeader = {}) {
574            var baseUrl = isApi ? API.apiBaseUrl : API.tcoAppPath;
575            var currentUser = localStorage.getItem("currentUser");
576
577            function filterError(data, textStatus, jqXHR) {
578                if (data && data.status === 403) {
579                    var resp = JSON.parse(data.responseText);
580                    var isCommentMethods = ['create', 'createcomment'];
581                    if (controller.toLowerCase() === 'comments' && isCommentMethods.includes(method.toLowerCase()))
582                        authCallback.showRelationship = true;
583                    if (resp.type && resp.type == 1) {
584                        error("User is blocked");
585                    } else if (typeof Funeral !== "undefined" && Funeral.BeforePostData(authCallback)) {
586                        return authCallback();
587                    } else {
588                        typeof error === "function" && error(data.responseText);
589                    }
590                } else if ($.isFunction(error))
591                    error(data.responseText);
592            };
593            function authCallback() {
594                jQuery.ajax({
595                    method: httpMethod,
596                    contentType: contentType,
597                    dataType: "json",
598                    url: baseUrl + controller + '/' + method,
599                    xhrFields: {
600                        withCredentials: isApi
601                    },
602                    headers: {
603                        "DomainId": API.domainId,
604                        "x-wall-user": currentUser
605                    },
606                    data: JSON.stringify(data)
607                }).done(success).error(filterError);
608            }
609            var headers = $.extend({}, {
610                DomainId: API.domainId,
611            }, customHeader);
612
613            if (currentUser !== null)
614                headers["x-wall-user"] = currentUser
615            var settings = {
616                method: httpMethod,
617                cache: false,
618                url: baseUrl + controller + '/' + method,
619                xhrFields: {
620                    withCredentials: isApi
621                },
622                headers: headers,
623                data: data,
624                success: function(res, status, xhr) {
625                    if(Array.isArray(res) && res.length > 0) {
626                        API.xPending = xhr.getResponseHeader("X-Pending");
627                    }
628               }
629            };
630
631            if (httpMethod.toUpperCase() === 'POST') {
632                var form = $('#__AjaxAntiForgeryForm');
633                if (form) {
634                    var token = $('input[name="__RequestVerificationToken"]', form).val();
635                    if (token)
636                        settings.headers["__RequestVerificationToken"] = token;
637                }
638
639                if (!isApi) {
640
641                    settings.data = JSON.stringify(settings.data);
642                    settings.dataType = "json";
643                    settings.contentType = "application/json";
644                }
645            }
646
647            jQuery.ajax(settings).done(success).error(filterError);
648        };
649
650        API.post = function (controller, method, data, success, error, customHeader = {}) {
651            return API.ajax('POST', controller, method, data, "application/json", true, success, error, customHeader);
652        };
653
654        API.get = function(controller, method, data, success, error) {
655            return API.ajax('GET', controller, method, data, "application/json", true, success, error);
656        };
657
658        API.postMedia = function (controller, method, data, success, error) {
659            return API.ajax('POST', controller, method, data, "multipart/form-data", true, success, error);
660        };
661
662        API.postTco = function(controller, method, data, success, error) {
663            return API.ajax('POST', controller, method, data, "application/json", false, success, error);
664        };
665
666        API.getTco = function(controller, method, data, success, error) {
667            return API.ajax('GET', controller, method, data, "application/json", false, success, error);
668        };
669
670        API.ensureHttps = function(hash) {
671            if (window.location.protocol !== "https:" &&
672                API.tcoSecureBaseUrl &&
673                API.tcoSecureBaseUrl.indexOf("https") > -1) {
674                if (hash) {
675                    window.location.hash = hash;
676                }
677                window.location.href = API.tcoSecureBaseUrl.slice(0, -1) +
678                    window.location.pathname +
679                    window.location.search +
680                    window.location.hash;
681            }
682        };
683
684        API.showFuneralHomeName = false;
685
686        jQuery.ajaxSetup({
687            beforeSend: function (e) {
688                if (!window.aciveAnim)
689                    setTimeout(function () {
690                        $('.page-loader-wrapper').addClass('active');
691                    }, 500);
692            },
693            complete: function (e) {
694                if (!window.aciveAnim)
695                    setTimeout(function () {
696                        $('.page-loader-wrapper').removeClass('active');
697                    }, 500);
698            },
699            success: function () { }
700        });
701    })();
702</script>
702
703    <meta name="google-site-verification" content="zPZfRyd85WrWoxeoDWG0NwLekAg5lywtAGapdYlpB2g" />
704    
704<script>
705        const locationIdValue = 'Other' === 'Obituary'
706                ? window.API.domainId.replace(/-/g, '') + (window.MaterialData && window.MaterialData.pageSettings ? '-' + window.MaterialData.pageSettings.ServingLocationId : '')
707                : window.API.domainId.replace(/-/g, '') + '-695109';
708
709            
710                window.pushSessionInfo(window.getGAuuid());
711            
712
713        pushSiteInfo(
714            window.API.domainId.replace(/-/g, ''),
715            locationIdValue,
716            'Funeral Home',
717            window.API.brand.name,
718            'Responsive',
719            'External',
720            'Other',
721            "Other",
722            "Geesey Ferguson Funeral Home Inc",
723            "Frazer Floral Network".replace("Frazer Floral Network", "FFN"),
724            "Title:NotEdited|Desc:NotEdited",
725            "cab8fc8c-0209-4b1d-813a-9aa0269bd5a4",
726            "Null"
727        );
728    </script>
728
729
730</head>
731
732<body >
733    
734
735
736    <!-- Google Tag Manager (noscript) -->
vendor: 83 bytes, lines 736-738
736
737    <noscript>
738        <iframe src="https://www.googletagmanager.com/ns.html?id=
738GTM-PCDJ3WG
vendor: 94 bytes, lines 738-740
738" height="0" width="0" style="display:none;visibility:hidden"></iframe>
739    </noscript>
740    
740<!-- End Google Tag Manager (noscript) -->
741
742<!-- Google Tag Manager (noscript) -->
vendor: 75 bytes, lines 742-744
742
743<noscript>
744    <iframe src="https://www.googletagmanager.com/ns.html?id=
744GTM-PLKZ973
vendor: 86 bytes, lines 744-745
744" height="0" width="0" style="display:none;visibility:hidden"></iframe>
745</noscript>
746<!-- End Google Tag Manager (noscript) -->
747
748
749
750
751    
752
753
754
755<header class="site-header main-header ">
756    
757
758
759<div class="container-fluid">
760    <div class="row obituary-search-wrapper">
761        <div class="col-xs-12">
762            <div class="form">
763                <div class="search-wrap icon-search">
764                    <label for="search">Search obituaries…</label>
765                    <div class="close-search"></div>
766                    <input type="text" id="search" placeholder="Name" autocomplete="off" aria-label="Search Obituary">
767                </div>
768            </div>
769            <div class="searchResults row"></div>
770        </div>
771        <div class="searchFog"></div>
772    </div>
773    <div class="row header-top-line">
774        <div class="col-xs-12 col-md-5 col-lg-5 left-panel">
775            <div class="row left-panel-wrapper">
776                <div class="btn btn-primary get-search-form">
777                    <i class="fa fa-search" aria-hidden="true"></i>
778                    <span class="hidden-xs hidden-sm">Search obituaries…</span>
779                </div>
780                <span class="navbar-brand hidden-md hidden-lg">
781
782
783        <div class="one-phone"><a href="tel:3377833313">(337) 783-3313</a></div>
784</span>
785                
786                <button type="button" class="navbar-toggle collapsed btn btn-primary hidden-md hidden-lg" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
787                    <span class="sr-only">Toggle navigation</span>
788                    <span class="icon-bar"></span>
789                    <span class="icon-bar"></span>
790                    <span class="icon-bar"></span>
791                </button>
792            </div>
793        </div>
794        <div class="col-xs-12 col-md-7 col-lg-7 visible-md visible-lg text-right right-panel">
795            <div class="row">
796                    <nav class="socials-wrapper">
797                       
798
799
800
801    <a target="_blank" rel="noopener" href="https://www.facebook.com/GeeseyFerguson/"
802                            class="fab fa-facebook facebook"
803                    aria-label="Link to Facebook page"
804        >
805    </a>
806
807                    </nav>
808                
809
810
811        <div class="one-phone"><a href="tel:3377833313">(337) 783-3313</a></div>
812
813                <a class="btn btn-primary contact-btn animate" href="#home-contact-us-wrapper">Contact</a>
814            </div>
815        </div>               
816    </div>
817    <div class="row logo-mobile hidden-md hidden-lg">
818        <a class="navbar-brand hidden-md hidden-lg" href="/" aria-label="Link to Home page"><img src="/Content/Media/GeeseyFergusonFuneralHomeInc/logomain39943b413ef345c8a631e257fec9e10b_5a2118785b114ee9b18c1299eccabfa5.png" alt="site logo" class="site-logo" /></a>
819    </div> 
820</div>
821
822<script type="text/javascript">
823    var closing_search_bar;
824    $(document).ready(function () {
825        $(function () {
826            var phonesArr = $(".phone-wrapper .text");
827            var maxArr = [];
828
829            phonesArr.each(function () {
830                var arr = $(this).html().split("  ");
831                $(this).html('<span class="text-location">' + arr[0] + ' </span><span class="text-number">' + arr[1] + '</span>');
832                maxArr.push($(this).html().length)
833            });
834
835            var maxVal = Math.max.apply(Math, maxArr)
836
837            phonesArr.each(function (index) {
838                if (index == maxArr.indexOf(maxVal)) $(this).find(".text-number").css("float", "none");
839            });
840
841            //
842            // Add nav-open class in body tag to indecate a nav openning status
843            //
844            $('body').click(function() {
845                $('body').removeClass('nav-open');
846                var btn = $('.btn.dropdown-toggle');
847                setTimeout(function() {
848                    if(btn.attr('aria-expanded') == 'true') {
849                        $('body').addClass('nav-open');
850                    }
851                }, 1);
852            });
853        });
854
855        $(document).keyup(function(e) {
856            if (e.keyCode === 27) closeObituarySearch(); // esc
857        });
858
859        function closeObituarySearch() {
860            if (!!$('.obituary-search-wrapper.active').length) {
861                $('.obituary-search-wrapper.active').removeClass('active');
862            }
863            $('#bs-fun-carousel').carousel({ pause: false });
864            $('body').removeClass('full-screen');
865        }
866
867        $('.close-search').on('click', closeObituarySearch );
868
869        $('.searchFog').on('click', closeObituarySearch );
870
871        $('a.animate[href^="#"]').click(function () {
872            $('.home-contact-us-wrapper').removeClass('obit-page');
873            var id = $(this).attr('href');
874            $('html, body').animate({
875                scrollTop: $(id).offset().top
876        }, 1000);
877    });
878
879    // recent obituaries search
880        $(".get-search-form").click(function () {
881        $('#search').val('');
882        $('#search').focus();
883        $('.searchResults').empty();
884        $('.obituary-search-wrapper').addClass("active");
885        $('#bs-fun-carousel').carousel('pause');
886        $('body').addClass('full-screen');
887    });
888
889    $(function () {
890        var $this = this;
891        this.search = $("#search");
892        this.search.unbind('blur.search').bind('blur.search', function () {
893            clearTimeout($this.searchTimeout);
894        }).unbind('keydown.search').bind('keydown.search', function (e) {
895            clearTimeout($this.searchTimeout);
896            if (e.keyCode === 38 || e.keyCode === 40) e.preventDefault();
897        }).unbind('keyup.search').bind('keyup.search', function () {
898            clearTimeout($this.searchTimeout);
899            $this.searchTimeout = setTimeout(function () {
900                var searchContent = $('.searchResults');
901                searchContent.empty();
902                if ($this.search.val().trim().length < 2) return;
903                searchContent.show();
904                searchContent.addClass("searching");
905                $.ajax({
906                    type: "GET",
907                    url: "/FunHelper/Obituaries_QuickSearch",
908                    processData: true,
909                    contentType: "application/json; charset=utf-8",
910                    data: {
911                        domainId: "6384e0b9-8ec4-431d-96a1-75c3cb573fd0",
912                        text: $this.search.val(),
913                        pageSize: 5
914                    },
915                    dataType: "text",
916                    success: function (json) {
917                        var obituaries = eval(json);
918                        searchContent.removeClass("searching");
919                        if (obituaries.length > 0) {
920                            for (var i = 0; i < obituaries.length; i++) {
921                                var obituaryUrl = '/obituaries/' + obituaries[i].fullName.urlifyString() + '?obId='
922                                    + obituaries[i].id + '#/obituaryInfo';
923                                var item = '<a class="row item" href="'+obituaryUrl+'">'+
924                                                '<div class="img-wrapper">'+
925                                                    '<img alt="'+obituaries[i].fullName+'" class="img-responsive" loading="lazy" src="'+obituaries[i].src+'">'+
926                                                '</div>'+
927                                                '<div class="name-wrapper">'+obituaries[i].fullName+'</div>'+
928                                            '</a>';
929                                searchContent.prepend(item);
930                            }
931                            searchContent.append('<a href="/obituaries/obituary-listings" class="btn btn-primary">View More</a>');
932                        } else {
933                            var item = '<div class="item not-found">Sorry, no results — try using part of the name, like the first or last name. </div><a href="/obituaries/obituary-listings" class="btn btn-primary">View More</a>';
934                            searchContent.append(item);
935                        }
936                    }
937                });
938            }, 300);
939        });
940    }
941    );
942    });
943</script>
943
944    <ul id="navbar" role="tablist" class="hidden-sm hidden-xs nav nav-pills collapse show-dropdown-menu-by-hover hide-arrows-in-dropdown-menu" aria-expanded="false" style="height: 0">
945    
946                        <li class="">
947                            <a href="/obituaries/obituary-listings" target="_self">
948                                Obituaries
949                            </a>
950                        </li>
951                        <li role="presentation" class='dropdown active'>
952                            <a href="#" id="drop_1" class="dropdown-toggle"  role="button" aria-haspopup="true" aria-expanded="false">Services <span class="caret"></span></a>
953                            <ul class="dropdown-menu" aria-labelledby="drop_1">
954                                    <li class='active'>
955                                        <a href="/services/where-to-begin" target="_self">Where to Begin</a>
956                                    </li>
957                                    <li class=''>
958                                        <a href="/services/burial-options" target="_self">Burial Options</a>
959                                    </li>
960                                    <li class=''>
961                                        <a href="/services/cremation-options" target="_self">Cremation Options</a>
962                                    </li>
963                                    <li class=''>
964                                        <a href="/services/celebrating-life" target="_self">Celebrating Life</a>
965                                    </li>
966                                    <li class=''>
967                                        <a href="/services/merchandise" target="_self">Merchandise</a>
968                                    </li>
969                                    <li class=''>
970                                        <a href="/services/monuments" target="_self">Monuments</a>
971                                    </li>
972                                    <li class=''>
973                                        <a href="/services/honoring-veterans" target="_self">Honoring Veterans</a>
974                                    </li>
975                            </ul>
976                        </li>
977                        <li role="presentation" class='dropdown '>
978                            <a href="#" id="drop_2" class="dropdown-toggle"  role="button" aria-haspopup="true" aria-expanded="false">Preplan <span class="caret"></span></a>
979                            <ul class="dropdown-menu" aria-labelledby="drop_2">
980                                    <li class=''>
981                                        <a href="/preplan/why-plan-ahead" target="_self">Why Plan Ahead</a>
982                                    </li>
983                                    <li class=''>
984                                        <a href="/preplan/preplanning-checklist" target="_self">Preplanning Checklist</a>
985                                    </li>
986                                    <li class=''>
987                                        <a href="/preplan/preplan-online" target="_self">Preplan Online</a>
988                                    </li>
989                            </ul>
990                        </li>
991                <li class="logo hidden-xs hidden-sm">
992                    <a class="navbar-brand" href="/" aria-label="Link to Home page"><img src="/Content/Media/GeeseyFergusonFuneralHomeInc/logomain39943b413ef345c8a631e257fec9e10b_5a2118785b114ee9b18c1299eccabfa5.png" alt="site logo" class="site-logo" /></a>
993                </li>
994                        <li role="presentation" class='dropdown '>
995                            <a href="#" id="drop_3" class="dropdown-toggle"  role="button" aria-haspopup="true" aria-expanded="false">Resources <span class="caret"></span></a>
996                            <ul class="dropdown-menu" aria-labelledby="drop_3">
997                                    <li class=''>
998                                        <a href="/resources/grief-support" target="_self">Grief Support</a>
999                                    </li>
1000                                    <li class=''>
1001                                        <a href="/resources/etiquette-tips" target="_self">Etiquette Tips</a>
1002                                    </li>
1003                                    <li class=''>
1004                                        <a href="/resources/social-security-benefits" target="_self">Social Security Benefits</a>
1005                                    </li>
1006                                    <li class=''>
1007                                        <a href="/resources/faqs" target="_self">FAQs</a>
1008                                    </li>
1009                                    <li class=''>
1010                                        <a href="/resources/upcoming-events" target="_self">Upcoming Events</a>
1011                                    </li>
1012                                    <li class=''>
1013                                        <a href="/resources/local-florists" target="_self">Local Florists</a>
1014                                    </li>
1015                                    <li class=''>
1016                                        <a href="/resources/legal-and-wills" target="_self">Legal and Wills</a>
1017                                    </li>
1018                                    <li class=''>
1019                                        <a href="/resources/liturgical-music-and-readings" target="_self">Liturgical Music and Readings</a>
1020                                    </li>
1021                            </ul>
1022                        </li>
1023                        <li role="presentation" class='dropdown '>
1024                            <a href="#" id="drop_4" class="dropdown-toggle"  role="button" aria-haspopup="true" aria-expanded="false">Who&ensp;We&ensp;Are <span class="caret"></span></a>
1025                            <ul class="dropdown-menu" aria-labelledby="drop_4">
1026                                    <li class=''>
1027                                        <a href="/who-we-are/history-and-staff" target="_self">History &amp; Staff</a>
1028                                    </li>
1029                                    <li class=''>
1030                                        <a href="/who-we-are/testimonials" target="_self">Testimonials</a>
1031                                    </li>
1032                            </ul>
1033                        </li>
1034                        <li role="presentation" class='dropdown '>
1035                            <a href="#" id="drop_5" class="dropdown-toggle"  role="button" aria-haspopup="true" aria-expanded="false">Contact <span class="caret"></span></a>
1036                            <ul class="dropdown-menu" aria-labelledby="drop_5">
1037                                    <li class=''>
1038                                        <a href="/contact/crowley-la" target="_self">Crowley, LA</a>
1039                                    </li>
1040                                    <li class=''>
1041                                        <a href="/contact/iota-la" target="_self">Iota, LA</a>
1042                                    </li>
1043                            </ul>
1044                        </li>
1045
1046</ul>
1047
1048
1049<ul id="mobile-navbar" class="nav navbar-nav collapse hidden-md hidden-lg" class="height: 0; overflow: hidden;">
1050
1051                    <li role="presentation" class="">
1052                        <a href="/obituaries/obituary-listings" target="_self">
1053                            Obituaries
1054                        </a>
1055                    </li>
1056                    <li role="presentation" class='dropdown active'>
1057                        <span class="touched-placeholder">Services</span>
1058                        <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Services <span class="caret"></span></a>
1059                        <ul class="dropdown-menu">
1060                                <li>
1061                                    <a href="/services/where-to-begin" target="_self">Where to Begin</a>
1062                                </li>
1063                                <li>
1064                                    <a href="/services/burial-options" target="_self">Burial Options</a>
1065                                </li>
1066                                <li>
1067                                    <a href="/services/cremation-options" target="_self">Cremation Options</a>
1068                                </li>
1069                                <li>
1070                                    <a href="/services/celebrating-life" target="_self">Celebrating Life</a>
1071                                </li>
1072                                <li>
1073                                    <a href="/services/merchandise" target="_self">Merchandise</a>
1074                                </li>
1075                                <li>
1076                                    <a href="/services/monuments" target="_self">Monuments</a>
1077                                </li>
1078                                <li>
1079                                    <a href="/services/honoring-veterans" target="_self">Honoring Veterans</a>
1080                                </li>
1081                        </ul>
1082                    </li>
1083                    <li role="presentation" class='dropdown '>
1084                        <span class="touched-placeholder">Preplan</span>
1085                        <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Preplan <span class="caret"></span></a>
1086                        <ul class="dropdown-menu">
1087                                <li>
1088                                    <a href="/preplan/why-plan-ahead" target="_self">Why Plan Ahead</a>
1089                                </li>
1090                                <li>
1091                                    <a href="/preplan/preplanning-checklist" target="_self">Preplanning Checklist</a>
1092                                </li>
1093                                <li>
1094                                    <a href="/preplan/preplan-online" target="_self">Preplan Online</a>
1095                                </li>
1096                        </ul>
1097                    </li>
1098                    <li role="presentation" class='dropdown '>
1099                        <span class="touched-placeholder">Resources</span>
1100                        <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Resources <span class="caret"></span></a>
1101                        <ul class="dropdown-menu">
1102                                <li>
1103                                    <a href="/resources/grief-support" target="_self">Grief Support</a>
1104                                </li>
1105                                <li>
1106                                    <a href="/resources/etiquette-tips" target="_self">Etiquette Tips</a>
1107                                </li>
1108                                <li>
1109                                    <a href="/resources/social-security-benefits" target="_self">Social Security Benefits</a>
1110                                </li>
1111                                <li>
1112                                    <a href="/resources/faqs" target="_self">FAQs</a>
1113                                </li>
1114                                <li>
1115                                    <a href="/resources/upcoming-events" target="_self">Upcoming Events</a>
1116                                </li>
1117                                <li>
1118                                    <a href="/resources/local-florists" target="_self">Local Florists</a>
1119                                </li>
1120                                <li>
1121                                    <a href="/resources/legal-and-wills" target="_self">Legal and Wills</a>
1122                                </li>
1123                                <li>
1124                                    <a href="/resources/liturgical-music-and-readings" target="_self">Liturgical Music and Readings</a>
1125                                </li>
1126                        </ul>
1127                    </li>
1128                    <li role="presentation" class='dropdown '>
1129                        <span class="touched-placeholder">Who&ensp;We&ensp;Are</span>
1130                        <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Who&ensp;We&ensp;Are <span class="caret"></span></a>
1131                        <ul class="dropdown-menu">
1132                                <li>
1133                                    <a href="/who-we-are/history-and-staff" target="_self">History &amp; Staff</a>
1134                                </li>
1135                                <li>
1136                                    <a href="/who-we-are/testimonials" target="_self">Testimonials</a>
1137                                </li>
1138                        </ul>
1139                    </li>
1140                    <li role="presentation" class='dropdown '>
1141                        <span class="touched-placeholder">Contact</span>
1142                        <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Contact <span class="caret"></span></a>
1143                        <ul class="dropdown-menu">
1144                                <li>
1145                                    <a href="/contact/crowley-la" target="_self">Crowley, LA</a>
1146                                </li>
1147                                <li>
1148                                    <a href="/contact/iota-la" target="_self">Iota, LA</a>
1149                                </li>
1150                        </ul>
1151                    </li>
1152    <li class="hr"></li>
1153    <li>
1154        <a href="#home-contact-us-wrapper" onClick="toogleMobileMenu();" aria-label="Link to contact form">Contact</a>
1155    </li>
1156    
1157
1158
1159    <li class="inline-block">
1160        <a target="_blank" rel="noopener" href="https://www.facebook.com/GeeseyFerguson/"
1161                                    class="fab fa-facebook facebook"
1162                        aria-label="Link to Facebook page"
1163            >
1164        </a>
1165    </li>
1166
1167</ul>
1168</header>
1169
1170<main>
1171    <div class="layer-back-wraper">
1172        
1173        <div class="layer-back">
1174            
1175    
1176    
1177
1178    <div class="top-banner" style="background-image: url('/Content/Media/GeeseyFergusonFuneralHomeInc/where-to-begin/wheretobegin_49e227e3137643a0a8de0066acd5c075.jpg')" data-aos="fade" data-aos-delay="500">
1179    <div class="gradient"></div>
1180    </div>
1181
1182
1183
1184        </div>
1185    </div>
1186    <div class="layer-base">
1187        
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198        
1198<script type="text/javascript">
1199            $(function () {
1200                if (typeof DynamicForms !== 'undefined') {
1201                    DynamicForms.setDomainId('content$empty_root$$_p__nhibernate$_v__guid$_6384e0b98ec4431d96a175c3cb573fd0');
1202                }
1203            });
1204        </script>
1204
1205    
1206
1207
1208
1209
1210
1211
1212    <div class="head-title" data-aos=&#39;fade-down&#39; data-aos-easing=&#39;ease&#39; data-aos-delay=&#39;400&#39; >
1213            <h1>Where to Begin</h1>
1214            </div>
1215
1216
1217
1218
1219
1220
1221<div class="main-content-wrapper container-fluid">
1222    <div class="row">
1223        <div class="editable-content container">
1224            <div class="container">
1225<div class="col-md-12" style="border: 1px solid #4d4d4d; padding: 25px; margin-bottom: 45px;">
1226<h2 style="margin-top: 0px;">Where to Begin</h2>
1227<p>Planning a funeral can be overwhelming, but you are not alone in this. We&rsquo;re here to support you throughout this journey and make this process one of love, healing, and life celebration. Below is some information to help you get started, but you can contact us at any time if you need help.</p>
1228</div>
1229<div class="row">
1230<div class="col-xs-6 col-xs-offset-3 col-sm-3 col-sm-offset-0 col-md-2 col-md-offset-0"><img style="padding-right: 20px; display: block; margin-left: auto; margin-right: auto;" src="https://s3.amazonaws.com/fh-content/release/Content/Media/Geesey-FergusonFuneralHomeInc/wheretobegin/grief.png" alt="" width="150" /></div>
1231<div class="col-xs-12 col-sm-9 col-md-10">
1232<h3>Within Hours</h3>
1233<p>When a loved one dies at home or in a place that isn&rsquo;t a healthcare facility, you&rsquo;ll need to contact emergency personnel before they can be taken into our care. If your loved one was under medical care, it&rsquo;s a good idea to call their physician as well.<br /><br /> If your loved one dies in a healthcare facility, they will notify the proper authorities, including the funeral home you have chosen to care for your loved one if they know that information.<br /><br /> Emergency and medical personnel involved in this part of the process will help you with obtaining a medical certificate and any other necessary paperwork.<br /><br /> At this time we will schedule an appointment with the responsible family members to meet with one of our knowledgeable licensed funeral directors.<br /><br /> This part of the process is often the most emotional, and we are here to help and support you. If you&rsquo;re not sure what to do, call us any time.</p>
1234<br /><br /></div>
1235</div>
1236<div class="row">
1237<div class="col-xs-6 col-xs-offset-3 col-sm-3 col-sm-offset-0 col-md-2 col-md-offset-0"><img style="padding-right: 20px; display: block; margin-left: auto; margin-right: auto;" src="https://s3.amazonaws.com/fh-content/release/Content/Media/Geesey-FergusonFuneralHomeInc/wheretobegin/writing.png" alt="" width="150" /></div>
1238<div class="col-xs-12 col-sm-9 col-md-10">
1239<h3>Within the First Few Days</h3>
1240<p>You&rsquo;ll want to notify close friends and relatives, both through personal phone calls as well as your loved one&rsquo;s death notice. If this process is too painful for you, it&rsquo;s absolutely okay to ask a trusted family member or friend to help you.<br /><br />This also is the time to review any of your loved one&rsquo;s preplanned funeral wishes and meet with a funeral director to begin planning their service. If your loved one did not preplan their funeral, you might want to start thinking about a few of the big choices you will need to make, such as:</p>
1241<ul style="margin-bottom: 0px;">
1242<li>Burial or cremation</li>
1243<li>If burial, the type of casket</li>
1244<li>If burial, the location of their final resting place in a grave or mausoleum</li>
1245<li>If cremation, the type of urn</li>
1246<li>If cremation, the location of their final resting place through burial or scattering</li>
1247<li>Any religious services you will need, such as clergy or spiritual leaders</li>
1248<li>The types of services you want, such as a viewing, service, graveside memorial, etc.</li>
1249</ul>
1250<p>&nbsp;</p>
1251<p>These questions are just a starting point, and you don't need to know the answers right away. Don&rsquo;t hesitate to contact us to gain a better understanding of your options. We're here to make this process easier for you.</p>
1252<br /><br /></div>
1253</div>
1254<div class="row">
1255<div class="col-xs-6 col-xs-offset-3 col-sm-3 col-sm-offset-0 col-md-2 col-md-offset-0"><img style="padding-right: 20px; display: block; margin-left: auto; margin-right: auto;" src="https://s3.amazonaws.com/fh-content/release/Content/Media/Geesey-FergusonFuneralHomeInc/wheretobegin/meet.png" alt="" width="150" /></div>
1256<div class="col-xs-12 col-sm-9 col-md-10">
1257<h3>What to Expect When We Meet</h3>
1258<p>At this time we will arrange services and different options best to fit your family&rsquo;s needs. As part of the arrangement process, we will need to collect information about the deceased in order to complete the death certificate, obituary, and other required documents. This may be one of the most troubling times for your family; we are here to guide you through this painful process with the utmost professional, trustworthy, and compassionate service to celebrate the life of your loved one.<br /><br />We will assist you in many different areas, such as:</p>
1259<ul style="margin-bottom: 0px;">
1260<li>Answer burial or cremation questions</li>
1261<li>Notify churches and clergy to arrange funeral ceremonies.</li>
1262<li>Prepare and send obituaries to newspapers you request.</li>
1263<li>Consult with cemetery caretakers regarding burials.</li>
1264<li>Contact beauticians and barbers if needed.</li>
1265<li>Consult with local florist regarding flowers.</li>
1266<li>Contact musicians if desired for funeral ceremonies.</li>
1267<li>Select merchandise such as casket, urn, register books, and other items you may 
1267need.</li>
1268<li>Notify Social Security Administration of the death.</li>
1269<li>Process all life insurance claims.</li>
1270<li>Process Veterans Administration benefits with copy of military discharge (DD-214)</li>
1271<li>Complete Death Certificate to file with the states vital records department.</li>
1272<li>If you have any requests other than these items, please let your funeral director know and we will try to assist you as best as we can.</li>
1273</ul>
1274<p>&nbsp;</p>
1275<p>We'd like to make this process as smooth and stress-free for you as we can, so remember to bring the following information about your loved one with you as well:</p>
1276<ul style="margin-bottom: 0px;">
1277<li>Information about deceased on birth certificate (legal name, date of birth, place of birth, parent&rsquo;s names and places of birth.)</li>
1278<li>Social Security Number</li>
1279<li>Veteran Administration Honorable Discharge (DD-214.)</li>
1280<li>Life Insurance Policies.</li>
1281<li>Clothing (long sleeves with high neck line) and undergarments.</li>
1282<li>Photo for obituary, website and prayer cards.</li>
1283<li>20-50 unframed photographs for Video Tribute DVD (no larger than 8 x 10), put in order that you desire to have on video.</li>
1284</ul>
1285<p>&nbsp;</p>
1286<p>Please also bring a recent photograph and any clothing you'd like us to use when dressing them for the service.</p>
1287</div>
1288</div>
1289</div>
1290        </div>
1291    </div>
1292</div>
1293
1294<script>
1295    $(function () {
1296        var collabsedClassName = 'collapsed';
1297        var controlClassName = 'f-expandable';
1298        var fcontainer = 'fcontainer-form';
1299
1300        var selectors = {
1301            inputs: 'input[type="radio"],input[type="checkbox"],input[type="text"],textarea',
1302            control: '.' + controlClassName,
1303            isOpened: '[data-opened]',
1304            moveTo: '[data-expandable-moveto]',
1305            goTo: '[data-expandable-goto]',
1306            groupedControl: '.' + controlClassName + '[data-expandable-isgrouped]',
1307            nonExpandableArea: '[data-expandable-ignoredarea]',
1308            form: '.' + fcontainer
1309        }
1310
1311        var init = function () {
1312            var $control = $(this);
1313
1314            var checkIfIsRecursively = function ($el, selectorStr) {
1315                return $el.closest(selectorStr).length || $el.is(selectorStr);
1316            }
1317
1318            var checkIfVisible = function ($el) {
1319                return $el.hasClass(collabsedClassName) == false;
1320            }
1321
1322            var menuHeightCalculate = function () {
1323                var menu = $('.head-menu');
1324                var menuHeight = 0;
1325                if (menu.length > 0 && menu.css('position') === 'fixed') {
1326                    menuHeight = menu.height();
1327                    if (!menu.hasClass("extended")) {
1328                        var submenu = $('.top-sub-menu.sticky');
1329                        if (submenu.length > 0) {
1330                            menuHeight += submenu.height();
1331                        }
1332                    }
1333                }
1334                return menuHeight;
1335            }
1336
1337            function isScrolledIntoView($el) {
1338                var menuHeight = menuHeightCalculate();
1339                var docViewTop = $(window).scrollTop();
1340                var docViewBottom = docViewTop + $(window).height();
1341
1342                var elemTop = $el.offset().top;
1343                var elemBottom = elemTop + $el.height();
1344
1345                return ((elemBottom <= docViewBottom) && (elemTop >= docViewTop + menuHeight));
1346            }
1347
1348            var scrollToElement = function ($el) {
1349                return; // disabled according to #6234
1350
1351                if (!$el.is(selectors.goTo) || checkIfVisible($el) === false || isScrolledIntoView($el)) {
1352                    return;
1353                }
1354
1355                //responsive navigation overlapping fix
1356                var menuHeight = menuHeightCalculate();
1357
1358                $('html,body').scrollTop($el.offset().top - menuHeight);
1359            }
1360
1361            var doExpand = function ($el, isVisible) {
1362                if (checkIfVisible($el) === isVisible) {
1363                    return;
1364                }
1365
1366                if (isVisible == undefined) {
1367                    isVisible = !checkIfVisible($el);
1368                }
1369
1370                if ($el.is(selectors.groupedControl)) {
1371                    $el.data('siblings')
1372                        .addClass(collabsedClassName);
1373                }
1374
1375                var callback = function () {
1376                    $el.toggleClass(collabsedClassName, isVisible === false).css({ 'height': '' });
1377
1378                    if (isVisible === false) {
1379                        return;
1380                    }
1381
1382                    $(selectors.inputs, $el).first()
1383                        .focus();
1384                    scrollToElement($el);
1385                }
1386
1387                callback();
1388            }
1389
1390            $('form', $control)
1391                .on('html-updated', function () {
1392                    scrollToElement($control);
1393                });
1394
1395            $(selectors.inputs, $control)
1396                .on('focus', function () {
1397                    doExpand($control, true);
1398                });
1399
1400            if (!$control.is(selectors.isOpened)) {
1401                $control.addClass(collabsedClassName);
1402            }
1403
1404            var height = 4;
1405            $control.children().each(function () { height += $(this).outerHeight(); });
1406            $control.data('height', height);
1407
1408            $control.data('siblings', $control.siblings(selectors.groupedControl));
1409
1410            $control.click(function (event) {
1411                var $target = $(event.target);
1412
1413                if (checkIfIsRecursively($target, selectors.nonExpandableArea)) {
1414                    return;
1415                }
1416
1417                doExpand($control);
1418            });
1419
1420            $control.find(selectors.moveTo).click(function () {
1421                var $el = $control;
1422                switch ($(this).data('expandable-moveto')) {
1423                    case 'next':
1424                        $el = $control.next();
1425                        break;
1426                    case 'prev':
1427                        $el = $control.prev();
1428                        break;
1429                    default:
1430                        break;
1431                }
1432
1433                if ($el.length < 1)
1434                    $el = $control;
1435
1436                doExpand($el);
1437
1438                return false;
1439            });
1440
1441
1442        }
1443        var planningForms = $(selectors.form);
1444        if (planningForms != undefined && planningForms.length) {
1445            planningForms.each(function () {
1446                var planningForm = $(this);
1447                var inited = false;
1448                if (planningForm.length > 0 && planningForm.attr('inited') == 'true') {
1449                    inited = true;
1450                }
1451                if (!inited) {
1452                    var $expandableControls = $(selectors.control, planningForm);
1453                    $expandableControls.each(init);
1454                    planningForm.attr('inited', 'true');
1455
1456                    var showStepsNumber = planningForm.hasClass("show-steps-number");
1457                    if (showStepsNumber === true) {
1458                        var expandableBlocks = $(selectors.control + " h5", planningForm);
1459                        var stepNumber = 1;
1460                        var stepsNumber = expandableBlocks.length;
1461                        expandableBlocks.each(function () {
1462                            $(this).append("<span class='steps'>Step " + stepNumber + " of " + stepsNumber + "</span>");
1463                            stepNumber++;
1464                        });
1465                    }
1466                }
1467            });
1468        } else {
1469            var $expandableControls = $(selectors.control);
1470            $expandableControls.each(init);
1471        }
1472
1473
1474    });
1475</script>
1475
1476
1477
1478<script type="text/javascript">
1479    $(document).ready(function () {
1480      if (!!$("#help-tabs") && $.fn.tabs) {
1481        $("#help-tabs").tabs();
1482      }
1483    });
1484</script>
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494<div class="container-fluid">
1495    
1496    <div id="home-contact-us-wrapper" class="row home-contact-us-wrapper  ">
1497        <div class="container">
1498            
1499
1500
1501<div class="row home-contact-us-wrapper-item">
1502    <div class="col-lg-6 col-sm-12 adress-carousel-wrapper">
1503        <h2>Get in Touch</h2>
1504        
1505
1506
1507    <div id="localtion-list-fun-carousel" class="carousel slide" data-ride="carousel" data-interval="false">
1508        <!-- Wrapper for slides -->
1509        <div class="carousel-inner">
1510                <div class="item active">
1511                            <p>Geesey-Ferguson Funeral Home</p>
1512            <p>301 North Avenue F</p>
1513            <p>Crowley, LA 70526 </p>
1514        <p>Phone: (337) 783-3313</p>
1515        <p>Fax: (337) 783-8960</p>
1516
1517                </div>
1518        </div>
1519    </div>
1520
1521
1522
1523
1524    </div>
1525    <div class="col-lg-6 col-sm-12">
1526        <form class="row home-contact-us-form">
1527            <input type="hidden" value="6384e0b9-8ec4-431d-96a1-75c3cb573fd0" name="domainId" id="domainId" />
1528            <input type="hidden" value="539b0a97-8d81-4a41-b0d3-6dea9f90dc9f" name="formId" id="formId" />
1529            <div class="form-group col-xs-12">
1530                <input type="text" name="df_Name" id="df_Name" class="required form-control" placeholder="Name" aria-label="Name" data-val="true" data-val-required=" " />
1531            </div>
1532            <div class="form-group col-xs-12 col-md-6 home-contact-us-form-email">
1533                <input type="text" name="df_Email" id="df_Email" class="required email form-control" placeholder="Email" aria-label="Email" data-val="true" data-val-required=" " />
1534            </div>
1535            <div class="form-group col-xs-12 col-md-6 home-contact-us-form-phone">
1536                <input type="text" name="df_Phone" id="df_Phone" class="required form-control" placeholder="Phone" aria-label="Phone" data-val="true" data-val-required=" " />
1537            </div>
1538            <div class="form-group col-xs-12">
1539                <textarea class="required form-control" id="df_Message" name="df_Message" placeholder="Message" aria-label="Message" data-val="true" data-val-required=" "></textarea>
1540            </div>
1541            <div class="form-group col-xs-12">
1542                <input class="btn btn-primary btn-block" type="submit" aria-label="Send" value="Send" />
1543                <input type="hidden" value="" name="recipientEmail" id="recipientEmail" />
1544            </div>
1545        </form>
1546        <div class="success-response">
1547            <p class="response-body"><p>
1548                <span class="btn btn-primary go-back">OK</span>
1549        </div>
1550    </div>
1551</div>
1552
1553<script type="text/javascript">
1554    var $form = $("form.home-contact-us-form");
1555    var sending = false;
1556    var fallbackRecaptchaToken = "";
1557
1558    $form.submit(function(e) {
1559        e.preventDefault();
1560        e.stopPropagation();
1561        if ($form.valid()) {
1562            var useCaptchaForContactForm = "False".toLowerCase() === 'true';
1563            var $this = $form;
1564            var contactUsSend = function(token) {
1565                if (fallbackRecaptchaToken) {
1566                    $("#recaptcha2-fallback-container").remove();
1567                }
1568                var dataObj = {
1569                    domainId: "6384e0b9-8ec4-431d-96a1-75c3cb573fd0",
1570                    formId: "539b0a97-8d81-4a41-b0d3-6dea9f90dc9f",
1571                    df_Name: $this.find('#df_Name').val(),
1572                    df_Email: $this.find('#df_Email').val(),
1573                    df_Phone: $this.find('#df_Phone').val(),
1574                    df_Message: $this.find('#df_Message').val(),
1575                    id_description: $this.find('#id_description').val(),
1576                    recipientEmail: ""
1577                };
1578                if (fallbackRecaptchaToken) {
1579                    dataObj["g-recaptcha-response-fallback"] = fallbackRecaptchaToken;
1580                } else {
1581                    dataObj["recaptchaResponse"] = 'recaptchaResponse=' + token;
1582                }
1583                sending = true;
1584                $.ajax({
1585                    url: "/Forms/DynamicForm",
1586                    method: "POST",
1587                    data: dataObj,
1588                    success: function(json) {
1589                        $('.response-body').html(json);
1590                        $this.addClass("form-success");
1591                        $('.recaptcha-dialog').removeClass('active');
1592                        $('body').removeClass('modal-open');
1593                        fallbackRecaptchaToken = "";
1594                    },
1595                    error: function(xhr) {
1596                        if (xhr.status === 403 && !fallbackRecaptchaToken) {
1597                            var $submitButton = $form.find("input[type=submit], button[type=submit]");
1598                            $("#recaptcha2-fallback-container").remove();
1599                            var $fallbackContainer = $("<div id='recaptcha2-fallback-container' style='display: flex; justify-content: center; margin: 20px;'></div>");
1600                            $fallbackContainer.insertAfter($submitButton);
1601
1602                            var fallbackWidgetId = grecaptcha.render($fallbackContainer.get(0), {
1603                                'sitekey': window.recaptchaPublicKey,
1604                                'callback': function(v2Token) {
1605                                    fallbackRecaptchaToken = v2Token;
1606                                    $fallbackContainer.html("<p style='color:green;'>Verified! You can now submit the form.</p>");
1607                                },
1608                                'theme': 'light'
1609                            });
1610                        }
1611                    },
1612                    complete: function() {
1613                        sending = false;
1614                    }
1615                });
1616            };
1617
1618            if (useCaptchaForContactForm)
1619                showContactUsCaptcha(function(token) {
1620                    contactUsSend(token);
1621                });
1622            else
1623                contactUsSend();
1624        }
1625    });
1626
1627    $('.go-back').click(function() {
1628        $(".home-contact-us-form input[type=text], .home-contact-us-form textarea").val("");
1629        $form.removeClass('form-success');
1630    });
1631</script>
1631
1632
1633
1634
1635
1636
1637        </div>
1638    </div>
1639    
1640</div>
1641
1642
1643
1644    </div>
1645</main>
1646<footer id="footer">
1647    <div class="footer-inner">
1648        <div class="container">
1649            <div class="copyrights">
1650        <div class="container">
1651<div class="row">
1652<div class="col-xs-12 col-md-3">&nbsp;</div>
1653<div class="col-xs-12 col-md-6">
1654<p style="text-align: center;">Geesey-Ferguson Funeral Home, Inc. <br />Point of contact: Justin M. Lee <br />301 North Avenue F, Crowley, LA 70526 <br />Phone:<a href="tel:3377833313"> (337) 783-3313</a> <br />Facsimile: (337) 783-8960 <br />Email:<a href="mailto:[email protected]"> [email protected]</a> <br />Website:<a href="../../" target="_blank" rel="noopener noreferrer"> www.geesey-ferguson.com</a></p>
1655</div>
1656<div class="col-xs-12 col-md-3">&nbsp;</div>
1657</div>
1658<div class="row">
1659<div class="col-md-6 col-md-offset-3 col-sm-6 col-sm-offset-3 col-xs-12- col-xs-offset-0"><hr /></div>
1660</div>
1661<p style="text-align: center;">&copy; Geesey-Ferguson Funeral Home, Inc.<br />Crafted with care by <a class="underline" href="http://www.frazerconsultants.com/" target="_blank" rel="nofollow noopener noreferrer">Frazer Consultants</a> &amp; <a class="underline" href="https://www.tributearchive.com/" target="_blank" rel="nofollow noopener noreferrer">TA</a></p>
1662</div>
1663        <div class="terms">
1664    
1664<script>
1665        $(function() {
1666            $('a.privacyPolicy, a.termsOfUse, a.accessibility').click(function() {
1667                var id = $(this).attr('class');
1668                var popup = $('#' + id);
1669                if (popup.hasClass("base64")) {
1670                    popup.html(atob(popup.html())).removeClass("base64");
1671                }
1672            });
1673        });
1674        window.setTermsHandler = function () {
1675            setTimeout(function() {
1676                $(".modal-login-terms a, .donate-form__bottom-text a").click(function() {
1677                    var id = $(this).attr('href');
1678                    var popup = $(id);
1679                    if (popup.hasClass("base64")) {
1680                        popup.html(atob(popup.html())).removeClass("base64");
1681                    }
1682                });
1683            }, 500);
1684        }
1685    </script>
1685
1686    <a class="privacyPolicy" rel="superbox[content]" href="#privacyPolicy">Privacy Policy</a> 
1687    & <a class="termsOfUse" rel="superbox[content]" href="#termsOfUse">Terms of Use</a>
1688    | <a class="accessibility" rel="superbox[content]" href="#accessibility">Accessibility</a>
1689    
1690
1691<div class="base64" style="display: none" id="privacyPolicy">
1692    PHA+PHN0cm9uZz5UcmlidXRlIFRlY2hub2xvZ3kgUHJpdmFjeSBQb2xpY3k8L3N0cm9uZz48L3A+DQo8cD48ZW0+TGFzdCB1cGRhdGVkOiBBcHJpbCAyMCwgMjAyMzwvZW0+PGJyPjxicj5UcmlidXRlIFRlY2hub2xvZ3kgaXMgY29tbWl0dGVkIHRvIHByb3RlY3RpbmcgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbi4gVGhpcyBQcml2YWN5IE5vdGljZSBkZXNjcmliZXMgdGhlIHBlcnNvbmFsIGluZm9ybWF0aW9uIHRoYXQgd2UgY29sbGVjdCBhYm91dCB5b3UsIGhvdyB3ZSB1c2UgYW5kIGRpc2Nsb3NlIHRoaXMgaW5mb3JtYXRpb24sIGFuZCB0aGUgc3RlcHMgd2UgdGFrZSB0byBwcm90ZWN0IHRoaXMgaW5mb3JtYXRpb24uIEZvciBwdXJwb3NlcyBvZiB0aGlzIFByaXZhY3kgTm90aWNlLCAoYSkgJmxkcXVvO3BlcnNvbmFsIGluZm9ybWF0aW9uJnJkcXVvOyBtZWFucyBhbnkgaW5mb3JtYXRpb24gdGhhdCByZWxhdGVzIHRvIHlvdSBhcyBhbiBpbmRpdmlkdWFsIGFuZCBjb3VsZCByZWFzb25hYmx5IGJlIHVzZWQgdG8gaWRlbnRpZnkgeW91IGFuZCAoYikgJmxkcXVvO1RyaWJ1dGUgVGVjaG5vbG9neSwmcmRxdW87ICZsZHF1bzt3ZSwmcmRxdW87ICZsZHF1bzt1cyZyZHF1bzsgYW5kICZsZHF1bztvdXImcmRxdW87IGVhY2ggcmVmZXIgdG8gdGhlIGxlZ2FsIGVudGl0eSBzcGVjaWZpZWQgaW4gdGhlICZsZHF1bztBcHBsaWNhYmxlIEVudGl0eSZyZHF1bzsgc2VjdGlvbiB0aGlzIFByaXZhY3kgTm90aWNlIGJlbG93LiBUaGlzIFByaXZhY3kgTm90aWNlIGFwcGxpZXMgdG8gb3VyIGNvbGxlY3Rpb24gYW5kIHVzZSBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbiB0aHJvdWdoIHRoaXMgd2Vic2l0ZSBhbmQgYW55IHJlbGF0ZWQgd2Vic2l0ZXMsIGFwcGxpY2F0aW9ucywgdG9vbHMsIG9yIHBsYXRmb3JtcyAodGhlICZsZHF1bztTZXJ2aWNlcyZyZHF1bzspLCBhcyB3ZWxsIGFzIHRocm91Z2ggYW55IG90aGVyIG1lYW5zIHdoZXJlIGEgbGluayBvciByZWZlcmVuY2UgdG8gdGhpcyBQcml2YWN5IE5vdGljZSBpcyBwcm92aWRlZCBhdCB0aGUgdGltZSBvZiBjb2xsZWN0aW9uLjwvcD4NCjxwPjxzdHJvbmc+Jm5ic3A7PC9zdHJvbmc+PC9wPg0KPHA+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiB2ZXJkYW5hLCBnZW5ldmEsIHNhbnMtc2VyaWY7Ij48c3Ryb25nPk91ciBTZXJ2aWNlczwvc3Ryb25nPjwvc3Bhbj48L3A+DQo8cD48YnI+VHJpYnV0ZSBUZWNobm9sb2d5JnJzcXVvO3MgcHJpbWFyeSBidXNpbmVzcyBpcyBhcyBhIHNvZnR3YXJlLWFzLWEtc2VydmljZSBwcm92aWRlciBvZiBmdW5lcmFsIHRlY2hub2xvZ3kgc2VydmljZXMsIGluY2x1ZGluZyB3ZWJzaXRlLCBwYXltZW50IHByb2Nlc3NpbmcsIGxpZmUgaW5zdXJhbmNlIGFzc2lnbm1lbnRzLCBzZWFyY2ggZW5naW5lIG9wdGltaXphdGlvbiwgbWFya2V0aW5nIGFuZCBlY29tbWVyY2Ugc2VydmljZXMsIHRvIGZ1bmVyYWwgaG9tZXMgYW5kIG90aGVyIGZ1bmVyYWwgcHJvZmVzc2lvbmFscyAob3VyICZsZHF1bztDbGllbnRzJnJkcXVvOykuIEluIGNvbm5lY3Rpb24gd2l0aCB0aGlzIGZhY2V0IG9mIFRyaWJ1dGUgVGVjaG5vbG9neSZyc3F1bztzIGJ1c2luZXNzLCBUcmlidXRlIFRlY2hub2xvZ3kgY29sbGVjdHMgYW5kIHN0b3JlcyBwZXJzb25hbCBpbmZvcm1hdGlvbiByZWdhcmRpbmcgaW5kaXZpZHVhbHMgd2hvIHZpc2l0IGFuZCB1dGlsaXplIGNlcnRhaW4gZnVuY3Rpb25zIG9yIGZlYXR1cmVzIG9mIG91ciBhbmQgb3VyIENsaWVudHMmcnNxdW87IHdlYnNpdGVzICgmbGRxdW87RW5kIFVzZXJzJnJkcXVvOykuIFRoaXMgUHJpdmFjeSBOb3RpY2UgYXBwbGllcyB0byBUcmlidXRlIFRlY2hub2xvZ3kmcnNxdW87cyBjb2xsZWN0aW9uIGFuZCB1c2Ugb2YgQ2xpZW50IGFuZCBFbmQgVXNlciBwZXJzb25hbCBpbmZvcm1hdGlvbiBidXQgbm90IHRvIG91ciBDbGllbnRzJnJzcXVvOyBvciBhbnkgb3RoZXIgdGhpcmQgcGFydHkmcnNxdW87cyBjb2xsZWN0aW9uIG9yIHVzZSBvZiBzdWNoIHBlcnNvbmFsIGluZm9ybWF0aW9uLjxicj48YnI+VHJpYnV0ZSBUZWNobm9sb2d5IGFsc28gbWFpbnRhaW5zIGEgd2ViIHJlcG9zaXRvcnksIHRoZSBUcmlidXRlIEFyY2hpdmUsIGNvbnRhaW5pbmcgb2JpdHVhcmllcywgYSBsaXN0aW5nIG9mIGZ1bmVyYWwgaG9tZXMsIGFuZCBvdGhlciBmdW5lcmFsLXJlbGF0ZWQgY29udGVudCBpbiBjb25uZWN0aW9uIHdpdGggd2hpY2ggcGVyc29uYWwgaW5mb3JtYXRpb24gbWF5IGJlIGNvbGxlY3RlZCBmcm9tIGluZGl2aWR1YWxzICgmbGRxdW87VHJpYnV0ZSBVc2VycyZyZHF1bzspLiBUaGlzIFByaXZhY3kgTm90aWNlIGFsc28gYXBwbGllcyB0byBUcmlidXRlIFRlY2hub2xvZ3kmcnNxdW87cyBjb2xsZWN0aW9uIGFuZCB1c2Ugb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gZnJvbSBUcmlidXRlIFVzZXJzIGFuZCBvdGhlciBpbmRpdmlkdWFscyB3aG8gaW50ZXJhY3QgZGlyZWN0bHkgd2l0aCBUcmlidXRlIFRlY2hub2xvZ3kuPC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHA+PHN0cm9uZz5QZXJzb25hbCBJbmZvcm1hdGlvbiBXZSBDb2xsZWN0PC9zdHJvbmc+PC9wPg0KPHA+PGJyPldoZW4geW91IGFjY2VzcyBvciB1c2UgdGhlIFNlcnZpY2VzIG9yIG90aGVyd2lzZSBpbnRlcmFjdCB3aXRoIHVzLCB3aGV0aGVyIGFzIGEgQ2xpZW50LCBFbmQgVXNlciwgVHJpYnV0ZSBVc2VyIG9yIG90aGVyIGluZGl2aWR1YWwsIHdlIG1heSBjb2xsZWN0IGNlcnRhaW4gY2F0ZWdvcmllcyBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbiBhYm91dCB5b3UgZnJvbSBhIHZhcmlldHkgb2Ygc291cmNlcy48YnI+PGJyPkNhdGVnb3JpZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gdGhhdCB3ZSBtYXkgY29sbGVjdCBmcm9tIHlvdSBkaXJlY3RseSBpbmNsdWRlOjwvcD4NCjx1bD4NCjxsaT5Db250YWN0IGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgbmFtZSwgcGhvbmUgbnVtYmVyLCBtYWlsaW5nIGFkZHJlc3MsIGVtYWlsIGFkZHJlc3MpPC9saT4NCjxsaT5QYXltZW50LXJlbGF0ZWQgZGV0YWlscyAoZm9yIGV4YW1wbGUsIGJpbGxpbmcgYWRkcmVzcyBhbmQgb3RoZXIgY3JlZGl0IGNhcmQgZGV0YWlscyk8L2xpPg0KPGxpPkFjY291bnQgaW5mb3JtYXRpb24gKGZvciBleGFtcGxlLCB1c2VybmFtZSBhbmQgcGFzc3dvcmQgYW5kIHRyYW5zYWN0aW9uIGhpc3RvcnkpPC9saT4NCjxsaT5Db21tdW5pY2F0aW9ucyAoZm9yIGV4YW1wbGUsIHN1Ym1pdHRlZCBxdWVzdGlvbnMgb3Igb3RoZXIgcG9zdHMsIG1hcmtldGluZyBwcmVmZXJlbmNlcyBhbmQgdXNlciBnZW5lcmF0ZWQgY29udGVudCBsaWtlIHBob3RvcyBhbmQgdmlkZW9zKTwvbGk+DQo8L3VsPg0KPHA+PGJyPkNhdGVnb3JpZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gdGhhdCB3ZSBtYXkgY29sbGVjdCBhdXRvbWF0aWNhbGx5IHdoZW4geW91IHVzZSB0aGUgU2VydmljZXMgaW5jbHVkZTo8L3A+DQo8dWw+DQo8bGk+VGVjaG5pY2FsIGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgYnJvd3NlciB0eXBlLCBJUCBhZGRyZXNzLCBjb29raWVzLCBhbmQgb3BlcmF0aW5nIHN5c3RlbSk8L2xpPg0KPGxpPlVzYWdlIGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgcGFnZXMgdmlzaXRlZCwgc2VhcmNoIHRlcm1zIGVudGVyZWQsIGFuZCBmcmVxdWVuY3kgb2YgdmlzaXRzKTwvbGk+DQo8L3VsPg0KPHA+PGJyPkNhdGVnb3JpZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gdGhhdCB3ZSBtYXkgY29sbGVjdCBmcm9tIG90aGVyIHNvdXJjZXMsIGluY2x1ZGluZyBmcm9tIG91ciBDbGllbnRzIGluIGNvbm5lY3Rpb24gd2l0aCB0aGVpciB1c2Ugb2YgdGhlIFNlcnZpY2VzLCBpbmNsdWRlOjwvcD4NCjx1bD4NCjxsaT5FbmQgVXNlciBjb250YWN0IGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgbmFtZSwgcGhvbmUgbnVtYmVyLCBtYWlsaW5nIGFkZHJlc3MsIGVtYWlsIGFkZHJlc3MpPC9saT4NCjxsaT5FbmQgVXNlciBwYXltZW50LXJlbGF0ZWQgZGV0YWlscyAoZm9yIGV4YW1wbGUsIGJpbGxpbmcgYWRkcmVzcyBhbmQgb3RoZXIgY3JlZGl0IGNhcmQgZGV0YWlscyk8L2xpPg0KPGxpPkVuZCBVc2VyIGZ1bmVyYWwgY29udHJpYnV0aW9ucywgaW5jbHVkaW5nIHRyaWJ1dGUgdmlkZW8gZGF0YSwgZGF0YSBlbnRlcmVkIGluIGZ1bmVyYWwgcmVnaXN0ZXIgYm9va3MsIG9iaXR1YXJpZXMgYW5kIHBvc3RzIGFuZCBjb21tZW50czwvbGk+DQo8bGk+RW5kIFVzZXIgZnVuZXJhbCBhZG1pbmlzdHJhdGlvbiBkYXRhLCBpbmNsdWRpbmcgbGlmZSBpbnN1cmFuY2UgY2xhaW0gZm9ybXMgYW5kIGFmZmlkYXZpdHMgdG8gZW5zdXJlIGRpc3BlcnNhbCBvZiBmdW5kcyB0byBjb3ZlciBmdW5lcmFsIGNvc3RzIGFuZCBkYXRhIHJlcXVpcmVkIHRvIGZpbGUgZGVhdGggY2VydGlmaWNhdGVzPC9saT4NCjwvdWw+DQo8cD48YnI+V2UgdXNlIEdvb2dsZSBBbmFseXRpY3MgdG8gY29sbGVjdCBhbmQgYW5hbHl6ZSBpbmZvcm1hdGlvbiBhYm91dCB1c2Ugb2YgdGhlIFNlcnZpY2VzIGFuZCB0byBoZWxwIHVzIHVuZGVyc3RhbmQgYWN0aXZpdGllcyBhbmQgdHJlbmRzLiBUaGlzIGluY2x1ZGVzIHVzZSBvZiBHb29nbGUgQW5hbHl0aWNzIHBlcmZvcm1hbmNlIHJlcG9ydHMgcmVsYXRpbmcgdG8gZGVtb2dyYXBoaWNzIGFuZCBpbnRlcmVzdHMuIEFzIHBhcnQgb2YgdGhpcyBzZXJ2aWNlLCB3ZSBzaGFyZSBhIHVuaXF1ZSBpZGVudGlmaWVyIHdpdGggR29vZ2xlIEFuYWx5dGljcy4gWW91IG1heSBvcHQtb3V0IG9mIEdvb2dsZSBBbmFseXRpY3MgYnkgaW5zdGFsbGluZyBhIEdvb2dsZSBBbmFseXRpY3Mgb3B0LW91dCBicm93c2VyIGFkZC1vbiBhdmFpbGFibGUgZm9yIGRvd25sb2FkIGhlcmU6Jm5ic3A7PGEgaHJlZj0iaHR0cHM6Ly90b29scy5nb29nbGUuY29tL2RscGFnZS9nYW9wdG91dCI+aHR0cHM6Ly90b29scy5nb29nbGUuY29tL2RscGFnZS9nYW9wdG91dDwvYT4uPGJyPjxicj5GaW5hbGx5LCB3ZSBtYXkgY29sbGVjdCBwZXJzb25hbCBpbmZvcm1hdGlvbiBwdXJzdWFudCB0byBhIGxlZ2FsIG9yIGNvbnRyYWN0dWFsIHJlcXVpcmVtZW50LCBhbmQgZmFpbHVy
1692ZSB0byBwcm92aWRlIHN1Y2ggaW5mb3JtYXRpb24gbWF5IGltcGFjdCBvdXIgYWJpbGl0eSB0byBmdWxmaWxsIG91ciBvYmxpZ2F0aW9ucy48L3A+DQo8cD48c3Ryb25nPiZuYnNwOzwvc3Ryb25nPjwvcD4NCjxwPjxzdHJvbmc+SG93IFdlIFVzZSBZb3VyIFBlcnNvbmFsIEluZm9ybWF0aW9uPC9zdHJvbmc+PC9wPg0KPHA+PGJyPldlIG1heSB1c2UgdGhlIHBlcnNvbmFsIGluZm9ybWF0aW9uIHdlIGNvbGxlY3QgZm9yIHRoZSBmb2xsb3dpbmcgcHVycG9zZXM6PC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHVsPg0KPGxpPjxzdHJvbmc+UHJvdmlkZSBhbmQgaW1wcm92ZSB0aGUgU2VydmljZXMuJm5ic3A7PC9zdHJvbmc+V2UgbWF5IHVzZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIHRvIHByb3ZpZGUgYW5kIGltcHJvdmUgdGhlIFNlcnZpY2VzLCBpbmNsdWRpbmcgdG8gZnVsZmlsbCB5b3VyIG9yZGVycyBhbmQgcmVxdWVzdHMgYW5kIHRvIHBvc3QgeW91ciBjb21tZW50cyBhbmQgb3RoZXIgZnVuZXJhbCBjb250cmlidXRpb25zLiBXZSBtYXkgYWxzbyB1c2UgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBmb3IgdGhlIGFkbWluaXN0cmF0aW9uIG9mIG91ciBidXNpbmVzcywgZm9yIGJ1c2luZXNzIGRldmVsb3BtZW50IHB1cnBvc2VzLCBhbmQgdG8gZnVsZmlsbCBvdXIgY29udHJhY3R1YWwgb2JsaWdhdGlvbnMuPC9saT4NCjwvdWw+DQo8cD4mbmJzcDs8L3A+DQo8dWw+DQo8bGk+PHN0cm9uZz5SaXNrIG1pdGlnYXRpb24gYW5kIHNlY3VyaXR5LiZuYnNwOzwvc3Ryb25nPldlIG1heSB1c2UgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBmb3IgcmlzayBtaXRpZ2F0aW9uIGFuZCBzZWN1cml0eSBwdXJwb3NlcywgaW5jbHVkaW5nIHRvIG1haW50YWluIHRoZSBwcml2YWN5IGFuZCBzZWN1cml0eSBvZiBvdXIgZGF0YSwgdG8gY29uZHVjdCBpbnRlcm5hbCBhdWRpdHMgb3IgaW52ZXN0aWdhdGlvbnMsIGZvciBkYXRhIHNlY3VyaXR5IHRlc3RpbmcgYW5kIGJ1c2luZXNzIGNvbnRpbnVpdHkgcGxhbm5pbmcgcHVycG9zZXMsIGFuZCB0byBlbnN1cmUgdGhlIHNhZmV0eSBhbmQgc2VjdXJpdHkgb2Ygb3VyIGFuZCBvdXIgYWZmaWxpYXRlcyZyc3F1bzsgQ2xpZW50cywgc3RhZmYgYW5kIGFzc2V0cy48L2xpPg0KPC91bD4NCjxwPiZuYnNwOzwvcD4NCjx1bD4NCjxsaT48c3Ryb25nPkNvbW11bmljYXRpb24gYW5kIG1hcmtldGluZy48L3N0cm9uZz4mbmJzcDtXZSBtYXkgdXNlIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gdG8gY29tbXVuaWNhdGUgd2l0aCB5b3UgYWJvdXQgdGhlIFNlcnZpY2VzLCByZXNwb25kIHRvIHlvdXIgcXVlc3Rpb25zLCBvciBvZmZlciB5b3UgYWRkaXRpb25hbCBwcm9kdWN0cyBvciBzZXJ2aWNlcy48L2xpPg0KPC91bD4NCjxwPiZuYnNwOzwvcD4NCjx1bD4NCjxsaT48c3Ryb25nPkNvbXBseSB3aXRoIHRoZSBsYXcgYW5kIGV4ZXJjaXNlIG91ciByaWdodHMuJm5ic3A7PC9zdHJvbmc+V2UgbWF5IHVzZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGFzIHJlYXNvbmFibHkgbmVjZXNzYXJ5IHRvIGFzc2VzcyBhbmQgZW5zdXJlIGNvbXBsaWFuY2Ugd2l0aCBhcHBsaWNhYmxlIGxhd3MsIGxlZ2FsIHJlcXVpcmVtZW50cywgYW5kIGNvbXBhbnkgcG9saWNpZXM7IHRvIHByb3RlY3Qgb3VyIGFuZCBvdXIgYWZmaWxpYXRlcyZyc3F1bzsgYXNzZXRzIG9yIHRvIGludmVzdGlnYXRlIG9yIGRlZmVuZCBhZ2FpbnN0IGFueSBjbGFpbXMgb2YgaWxsZWdhbGl0eSBvciB3cm9uZ2RvaW5nIChpbmNsdWRpbmcgdG8gb2J0YWluIGxlZ2FsIGFkdmljZSBvciB0byBlc3RhYmxpc2gsIGV4ZXJjaXNlIG9yIGRlZmVuZCBsZWdhbCByaWdodHMpOyBhbmQgaW4gcmVzcG9uc2UgdG8gYSBjb3VydCBvcmRlciBvciBqdWRpY2lhbCBvciBvdGhlciBnb3Zlcm5tZW50IHN1YnBvZW5hIG9yIHdhcnJhbnQuPC9saT4NCjwvdWw+DQo8cD4mbmJzcDs8L3A+DQo8dWw+DQo8bGk+PHN0cm9uZz5Db3Jwb3JhdGUgdHJhbnNhY3Rpb24uJm5ic3A7PC9zdHJvbmc+V2UgbWF5IHVzZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGluIHRoZSBldmVudCB3ZSB1bmRlcnRha2Ugb3IgYXJlIGludm9sdmVkIGluIG9yIGNvbnRlbXBsYXRpbmcgYW55IG1lcmdlciwgYWNxdWlzaXRpb24sIHJlb3JnYW5pemF0aW9uLCBzYWxlIG9mIGFzc2V0cywgYmFua3J1cHRjeSwgb3IgaW5zb2x2ZW5jeSBldmVudC48L2xpPg0KPC91bD4NCjxwPiZuYnNwOzwvcD4NCjxwPldlIG1heSBhbHNvIGFnZ3JlZ2F0ZSwgYW5vbnltaXplLCBvciBvdGhlcndpc2UgZGUtaWRlbnRpZnkgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBhbmQgdXNlIGl0IGZvciBhbnkgcHVycG9zZSBwZXJtaXR0ZWQgYnkgYXBwbGljYWJsZSBsYXcuPGJyPjxicj5Tb21lIGp1cmlzZGljdGlvbnMgcmVxdWlyZSB0aGF0IHdlIGRldGVybWluZSBhICZsZHF1bztsYXdmdWwgYmFzaXMmcmRxdW87IGZvciBwcm9jZXNzaW5nIHBlcnNvbmFsIGluZm9ybWF0aW9uLiBXaGVyZSBzdWNoIHJlcXVpcmVtZW50cyBleGlzdCwgd2UgcmVseSBvbiB0aGUgZm9sbG93aW5nIGxhd2Z1bCBiYXNlcyBmb3Igb3VyIHByb2Nlc3NpbmcgYWN0aXZpdGllczogdGhhdCB5b3UgaGF2ZSBjb25zZW50ZWQgdG8gdGhlIHByb2Nlc3Npbmc7IHRoYXQgdGhlIHByb2Nlc3NpbmcgaXMgbmVjZXNzYXJ5IGZvciB0aGUgcGVyZm9ybWFuY2Ugb2Ygb3VyIGNvbnRyYWN0IHdpdGggeW91OyB0aGF0IHdlIGhhdmUgYSBsZWdhbCBvYmxpZ2F0aW9uOyBvciB0aGF0IHdlIGhhdmUgYSBsZWdpdGltYXRlIGludGVyZXN0IGluIHByb3ZpZGluZyBhbmQgaW1wcm92aW5nIHRoZSBTZXJ2aWNlcyBhbmQgbWFuYWdpbmcgb3VyIGJ1c2luZXNzIG9wZXJhdGlvbnMuIE91ciBDbGllbnRzIGRldGVybWluZSB0aGUgbGF3ZnVsIGJhc2lzIGZvciBwcm9jZXNzaW5nIEVuZCBVc2VyIHBlcnNvbmFsIGluZm9ybWF0aW9uLjwvcD4NCjxwPiZuYnNwOzwvcD4NCjxwPjxzdHJvbmc+VXNlIG9mIENvb2tpZXM8L3N0cm9uZz48L3A+DQo8cD48YnI+V2hlbiB5b3UgdXNlIHRoZSBTZXJ2aWNlcywgd2UgbWF5IHNlbmQgb25lIG9yIG1vcmUgY29va2llcyAod2hpY2ggYXJlIHNtYWxsIHRleHQgZmlsZXMgY29udGFpbmluZyBhIHN0cmluZyBvZiBhbHBoYW51bWVyaWMgY2hhcmFjdGVycykgdG8geW91ciBjb21wdXRlciBvciBtb2JpbGUgZGV2aWNlLCB0byBoZWxwIGFuYWx5emUgb3VyIHdlYiBwYWdlIGZsb3csIGN1c3RvbWl6ZSBvdXIgY29udGVudCwgbWVhc3VyZSBwcm9tb3Rpb25hbCBlZmZlY3RpdmVuZXNzLCBhbmQgcHJvbW90ZSB0cnVzdCBhbmQgc2FmZXR5LiBZb3UgYXJlIGFsd2F5cyBmcmVlIHRvIGRlY2xpbmUgb3VyIGNvb2tpZXMgaWYgeW91ciBicm93c2VyIHBlcm1pdHMsIGFsdGhvdWdoIGRvaW5nIHNvIG1heSBpbnRlcmZlcmUgd2l0aCB5b3VyIGFiaWxpdHkgdG8gdXNlIHRoZSBTZXJ2aWNlcyBvciBjZXJ0YWluIGZlYXR1cmVzIG9mIHRoZSBTZXJ2aWNlcy4gV2UgbWF5IGFsc28gdXNlIEdvb2dsZSBBbmFseXRpY3Mgb3IgYSBzaW1pbGFyIHNlcnZpY2UgdGhhdCB1c2VzIGNvb2tpZXMgdG8gaGVscCB1cyBhbmFseXplIGhvdyB1c2VycyB1c2UgdGhlIFNlcnZpY2VzLjxicj48YnI+V2UgbWF5IGFsc28gYWxsb3cgY2VydGFpbiB0aGlyZCBwYXJ0aWVzIHN1Y2ggYXMgYWR2ZXJ0aXNpbmcsIGFuYWx5dGljcyBwcm92aWRlcnMsIGFuZCB3aWRnZXQgcHJvdmlkZXJzIHRvIHBsYWNlIGNvb2tpZXMgaW4gb3JkZXIgdG8gY29sbGVjdCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIG9ubGluZSBhY3Rpdml0aWVzIG92ZXIgdGltZSBhbmQgYWNyb3NzIGRpZmZlcmVudCB3ZWJzaXRlcyB3aGVuIHlvdSBhY2Nlc3Mgb3IgdXNlIHRoZSBTZXJ2aWNlcy4gQ3VycmVudGx5LCB2YXJpb3VzIGJyb3dzZXJzIG9mZmVyIGEgJmxkcXVvO0RvIE5vdCBUcmFjayZyZHF1bzsgb3B0aW9uLCBidXQgdGhlcmUgaXMgbm8gc3RhbmRhcmQgZm9yIGhvdyAmbGRxdW87RG8gTm90IFRyYWNrJnJkcXVvOyBzaG91bGQgd29yayBvbiBjb21tZXJjaWFsIHdlYnNpdGVzLiBEdWUgdG8gdGhlIGxhY2sgb2Ygc3VjaCBzdGFuZGFyZHMsIHRoZSBTZXJ2aWNlcywgaW5jbHVkaW5nIHRoaXMgd2Vic2l0ZSwgZG8gbm90IHJlc3BvbmQgdG8gJmxkcXVvO0RvIE5vdCBUcmFjayZyZHF1bzsgY29uc3VtZXIgYnJvd3NlciBzZXR0aW5ncy48L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD48c3Ryb25nPkhvdyBhbmQgV2hlbiBX
1692ZSBEaXNjbG9zZSBZb3VyIFBlcnNvbmFsIEluZm9ybWF0aW9uPC9zdHJvbmc+PC9wPg0KPHA+PGJyPldlIG1heSBkaXNjbG9zZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIHRvIHRoZSBmb2xsb3dpbmcgY2F0ZWdvcmllcyBvZiByZWNpcGllbnRzLCB0byBiZSB1c2VkIG9ubHkgZm9yIGxlZ2l0aW1hdGUgcHVycG9zZXMgaW4ga2VlcGluZyB3aXRoIHRoaXMgUHJpdmFjeSBOb3RpY2U6PC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHVsPg0KPGxpPjxzdHJvbmc+R3JvdXAgY29tcGFuaWVzIGFuZCBhZmZpbGlhdGVzPC9zdHJvbmc+LiBXZSBtYXkgZGlzY2xvc2UsIHNoYXJlLCBvciB0cmFuc2ZlciB5b3VyIGluZm9ybWF0aW9uIHRvIGFueSBidXNpbmVzcyBlbnRpdHkgdGhhdCBpcyBwYXJ0IG9mIG91ciBjb3Jwb3JhdGUgZmFtaWx5LjwvbGk+DQo8L3VsPg0KPHA+Jm5ic3A7PC9wPg0KPHVsPg0KPGxpPjxzdHJvbmc+Q2xpZW50czwvc3Ryb25nPi4gV2UgbWF5IHNoYXJlIHlvdXIgaW5mb3JtYXRpb24gd2l0aCBvdXIgQ2xpZW50cyBpbiBjb25uZWN0aW9uIHdpdGggb3VyIENsaWVudHMmcnNxdW87IHByb3Zpc2lvbiBvZiBzZXJ2aWNlcyB0byB5b3UuPC9saT4NCjwvdWw+DQo8cD4mbmJzcDs8L3A+DQo8dWw+DQo8bGk+PHN0cm9uZz5TZXJ2aWNlIHByb3ZpZGVycyBhbmQgcHJvZmVzc2lvbmFsIGFkdmlzb3JzPC9zdHJvbmc+LiBXZSBtYXkgZGlzY2xvc2UgeW91ciBpbmZvcm1hdGlvbiB0byB0aGlyZCBwYXJ0eSB2ZW5kb3JzIHdobyBwcm92aWRlIHNlcnZpY2VzIGluIHN1cHBvcnQgb2Ygb3VyIGJ1c2luZXNzIG9wZXJhdGlvbnMsIHN1Y2ggYXMgd2Vic2l0ZSBkZXZlbG9wbWVudCBhbmQgaG9zdGluZywgcGF5bWVudCBwcm9jZXNzaW5nLCBtYXJrZXRpbmcgbWFuYWdlbWVudCwgc2VydmljZSBvcHRpbWl6YXRpb24sIHZlbmRvcnMgdGhhdCBmdWxmaWxsIG9yZGVycyBmb3IgZnVuZXJhbC1yZWxhdGVkIGl0ZW1zIHN1Y2ggYXMgZmxvd2VycywgYW5kIGRhdGEgYW5hbHl0aWNzLiBXZSBtYXkgYWxzbyBkaXNjbG9zZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIHRvIHByb2Zlc3Npb25hbCBhZHZpc29ycyBzdWNoIGFzIG91ciBhdHRvcm5leXMsIGFjY291bnRhbnRzLCBhbmQgb3VycyBvciBFbmQgVXNlcnMmcnNxdW87IGluc3VyYW5jZSBwcm92aWRlcnMuPC9saT4NCjwvdWw+DQo8cD4mbmJzcDs8L3A+DQo8dWw+DQo8bGk+PHN0cm9uZz5QYXJ0aWVzIGludm9sdmVkIGluIGEgY29ycG9yYXRlIHRyYW5zYWN0aW9uPC9zdHJvbmc+LiBXZSBtYXkgZGlzY2xvc2UgeW91ciBpbmZvcm1hdGlvbiB0byByZWxldmFudCB0aGlyZCBwYXJ0aWVzIGluIHRoZSBldmVudCBvZiBhIGRpdmVzdGl0dXJlLCBtZXJnZXIsIGNvbnNvbGlkYXRpb24sIG9yIGFzc2V0IHNhbGUsIG9yIGluIHRoZSB1bmxpa2VseSBldmVudCBvZiBhIGJhbmtydXB0Y3kuPC9saT4NCjwvdWw+DQo8cD4mbmJzcDs8L3A+DQo8dWw+DQo8bGk+PHN0cm9uZz5MYXcgZW5mb3JjZW1lbnQgb3Igb3RoZXIgZ292ZXJubWVudGFsIGVudGl0aWVzPC9zdHJvbmc+LiBXZSBtYXkgZGlzY2xvc2UgeW91ciBpbmZvcm1hdGlvbiBpZiByZXF1aXJlZCB0byBkbyBzbyBieSBsYXcgb3IgaWYgd2UgYmVsaWV2ZSBpbiBnb29kIGZhaXRoIHRoYXQgc3VjaCBhY3Rpb24gaXMgbmVjZXNzYXJ5IHRvIGNvbXBseSB3aXRoIHRoZSBsYXcsIHByZXZlbnQgdW5sYXdmdWwgYWN0aXZpdHksIGRlZmVuZCBvdXIgcmlnaHRzLCBvciBtYWludGFpbiBzZWN1cml0eS48L2xpPg0KPC91bD4NCjxwPiZuYnNwOzwvcD4NCjx1bD4NCjxsaT48c3Ryb25nPk90aGVyIHRoaXJkIHBhcnRpZXMgd2l0aCB5b3VyIGNvbnNlbnQ8L3N0cm9uZz4uIFdlIG1heSBkaXNjbG9zZSB5b3VyIGluZm9ybWF0aW9uIHRvIGFueSBvdGhlciB0aGlyZCBwYXJ0eSB3aGVyZSB5b3UgaGF2ZSBwcm92aWRlZCBjb25zZW50IHRvIHN1Y2ggZGlzY2xvc3VyZS48L2xpPg0KPC91bD4NCjxwPjxzdHJvbmc+Jm5ic3A7PC9zdHJvbmc+PC9wPg0KPHA+PHN0cm9uZz5TZWN1cml0eSwgUmV0ZW50aW9uICZhbXA7IFRyYW5zZmVyIG9mIFBlcnNvbmFsIEluZm9ybWF0aW9uPC9zdHJvbmc+PC9wPg0KPHA+PGJyPldlIGhhdmUgaW1wbGVtZW50ZWQgYW5kIG1haW50YWluIGNvbW1lcmNpYWxseSByZWFzb25hYmxlIGFuZCBhcHByb3ByaWF0ZSB0ZWNobmljYWwgYW5kIG9yZ2FuaXphdGlvbmFsIG1lYXN1cmVzIGRlc2lnbmVkIHRvIHByb3RlY3QgdGhlIGNvbmZpZGVudGlhbGl0eSwgaW50ZWdyaXR5LCBhbmQgc2VjdXJpdHkgb2YgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbi4gUGxlYXNlIG5vdGUsIGhvd2V2ZXIsIHRoYXQgbm8gc2VjdXJpdHkgbWVhc3VyZXMgYXJlIHBlcmZlY3Qgb3IgaW1wZW5ldHJhYmxlLiBXZSB0aGVyZWZvcmUgY2Fubm90IGd1YXJhbnR5IGFuZCBkbyBub3Qgd2FycmFudCB0aGUgYWJzb2x1dGUgc2VjdXJpdHkgb2YgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbi4gV2UgcmV0YWluIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gZm9yIG5vIGxvbmdlciB0aGFuIHJlYXNvbmFibHkgbmVjZXNzYXJ5IHRvIGZ1bGZpbGwgdGhlIHB1cnBvc2VzIGZvciB3aGljaCB3ZSBjb2xsZWN0ZWQgaXQgb3IgdG8gY29tcGx5IHdpdGggdGhlIGxhdywgcHJldmVudCBmcmF1ZCwgZmFjaWxpdGF0ZSBhbiBpbnZlc3RpZ2F0aW9uLCBkZWZlbmQgYWdhaW5zdCBsZWdhbCBjbGFpbXMsIG9yIGV4ZXJjaXNlIG91ciBsZWdhbCByaWdodHMuPGJyPjxicj5EZXBlbmRpbmcgb24geW91ciBsb2NhdGlvbiwgdGhlIHBlcnNvbmFsIGluZm9ybWF0aW9uIHdlIGNvbGxlY3QgYWJvdXQgeW91IG1heSBiZSB0cmFuc2ZlcnJlZCB0byBhIGp1cmlzZGljdGlvbiB0aGF0IGRvZXMgbm90IHByb3ZpZGUgdGhlIHNhbWUgbGV2ZWwgb2YgcHJvdGVjdGlvbiBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbiBhcyB0aGUganVyaXNkaWN0aW9uIGluIHdoaWNoIHlvdSByZXNpZGUuIEFtb25nIG90aGVyIHBsYWNlcywgcGVyc29uYWwgaW5mb3JtYXRpb24gbWF5IGJlIHRyYW5zZmVycmVkIHRvLCBhbmQgc3RvcmVkIGluLCBDYW5hZGEsIEF1c3RyYWxpYSBhbmQgdGhlIFVuaXRlZCBTdGF0ZXMuIFRyYW5zZmVycyBmcm9tIHRoZSBFdXJvcGVhbiBVbmlvbiB0byBDYW5hZGEgYXJlIG1hZGUgcHVyc3VhbnQgdG8gRXVyb3BlYW4gQ29tbWlzc2lvbiBEZWNpc2lvbiAyMDAyLzIvRUMsIHdoaWNoIGRldGVybWluZWQgdGhhdCBDYW5hZGEgaXMgY29uc2lkZXJlZCBhcyBwcm92aWRpbmcgYW4gYWRlcXVhdGUgbGV2ZWwgb2YgcHJvdGVjdGlvbiBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbi48L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD48c3Ryb25nPllvdXIgQ2hvaWNlcyAmYW1wOyBSaWdodHM8L3N0cm9uZz48L3A+DQo8cD48YnI+WW91IG1heSBkZWNsaW5lIHRvIHNoYXJlIGNlcnRhaW4gaW5mb3JtYXRpb24gd2l0aCB1cywgaW4gd2hpY2ggY2FzZSB3ZSBtYXkgbm90IGJlIGFibGUgdG8gcHJvdmlkZSB0byB5b3Ugc29tZSBvZiB0aGUgZmVhdHVyZXMgYW5kIGZ1bmN0aW9uYWxpdHkgb2YgdGhlIFNlcnZpY2VzLiBPbmNlIHlvdSBoYXZlIHJlZ2lzdGVyZWQgZm9yIGFuIGFjY291bnQgd2l0aCB1cywgeW91IG1heSB1cGRhdGUsIGNvcnJlY3QsIG9yIGRlbGV0ZSB5b3VyIHByb2ZpbGUgaW5mb3JtYXRpb24gYW5kIHByZWZlcmVuY2VzIGF0IGFueSB0aW1lIGJ5IGFjY2Vzc2luZyB5b3VyIGFjY291bnQgcHJlZmVyZW5jZXMgcGFnZSB0aHJvdWdoIHRoZSBTZXJ2aWNlcy4gSWYgeW91IGRvIG5vdCB3aXNoIHRvIHJlY2VpdmUgbWFya2V0aW5nIGNvbW11bmljYXRpb25zIGZyb20gdXMsIHlvdSBjYW4gb3B0LW91dCBieSB1c2luZyB0aGUgdW5zdWJzY3JpYmUgcHJvY2VzcyBwcm92aWRlZCBvciBkZXNjcmliZWQgaW4gYW55IHN1Y2ggY29tbXVuaWNhdGlvbiwgYnV0IHlvdSBtYXkgc3RpbGwgcmVjZWl2ZSB0cmFuc2FjdGlvbmFsIG9yIGFkbWluaXN0cmF0aXZlIGNvbW11bmljYXRpb25zIGZyb20gdXMuIEFsdGhvdWdoIHlvdXIgY2hhbmdlcyBhcmUgcmVmbGVjdGVkIHByb21wdGx5IGluIGFjdGl2ZSB1c2VyIGRhdGFiYXNlcywgd2UgbWF5IHJldGFpbiBhbGwgaW5mb3JtYXRpb24geW91IHN1Ym1pdCBmb3IgYSB2YXJpZXR5IG9mIHB1cnBvc2VzLCBpbmNsdWRpbmcgYmFja3VwcyBhbmQgYXJjaGl2aW5nLCBwcmV2ZW50aW9uIG9mIGZyYXVkIGFuZCBhYnVzZSwgYW5kIGFuYWx5dGljcy48YnI+PGJyPkRlcGVuZGluZyBvbiB5b3VyIGxvY2F0aW9uIGFuZCBzdWJqZWN0IHRvIGxvY2FsIGxhdywgeW91IG1heSBoYXZlIGNlcnRhaW4gcmlnaHRzIHdpdGggcmVzcGVjdCB0byB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uLiBUaGVzZSBtY
1692XkgaW5jbHVkZTogdGhlIHJpZ2h0IHRvIGFjY2VzcywgY29ycmVjdCwgYW5kIGRlbGV0ZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uOyB0aGUgcmlnaHQgdG8gcmVzdHJpY3Qgb3Igb2JqZWN0IHRvIG91ciB1c2Ugb2YgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbjsgYW5kIHRoZSByaWdodCB0byByZWNlaXZlIGEgcG9ydGFibGUgY29weSBvZiB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGluIGEgdXNhYmxlIGZvcm1hdC4gSWYgeW91IHByb3ZpZGUgdXMgd2l0aCBjb25zZW50IHRvIHVzZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uLCB5b3UgbWF5IHdpdGhkcmF3IHRoYXQgY29uc2VudCBhdCBhbnkgdGltZSwgaG93ZXZlciwgc3VjaCB3aXRoZHJhd2FsIHdpbGwgbm90IGltcGFjdCB0aGUgbGF3ZnVsbmVzcyBvZiBvdXIgdXNlIG9mIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gYmFzZWQgb24geW91ciBjb25zZW50IHVwIHRvIHRoYXQgcG9pbnQuPGJyPjxicj5UbyBtYWtlIGEgcmVxdWVzdCByZWxhdGVkIHRvIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gb3Igb3RoZXJ3aXNlIGV4ZXJjaXNlIHlvdXIgcmlnaHRzLCB5b3UgbWF5IGNvbnRhY3QgdXMgdXNpbmcgdGhlIGNvbnRhY3QgaW5mb3JtYXRpb24gcHJvdmlkZWQgYmVsb3cuIEluIG9yZGVyIHRvIGZ1bGZpbGwgeW91ciByZXF1ZXN0LCB3ZSBtYXkgcmVxdWlyZSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGZyb20geW91LiBXZSB3aWxsIHJlc3BvbmQgdG8gcmVxdWVzdHMgd2l0aGluIHRoZSByZWxldmFudCB0aW1lIHBlcmlvZHMgZXN0YWJsaXNoZWQgYnkgYXBwbGljYWJsZSBsYXcuIFdlIGFyZSBjb21taXR0ZWQgdG8gZmluZGluZyBhIGZhaXIgYW5kIHJlYXNvbmFibGUgcmVzb2x1dGlvbiB0byBhbnkgcmVxdWVzdCwgY29uY2Vybiwgb3IgY29tcGxhaW50IHlvdSBicmluZyB0byBvdXIgYXR0ZW50aW9uLiBIb3dldmVyLCBpZiB5b3UgYXJlIHVuc2F0aXNmaWVkIHdpdGggb3VyIHJlc3BvbnNlIHRvIHlvdXIgcmVxdWVzdCwgeW91IG1heSBoYXZlIHRoZSByaWdodCB0byBsb2RnZSBhIGNvbXBsYWludCB3aXRoIGFwcGxpY2FibGUgZ292ZXJubWVudGFsIGF1dGhvcml0aWVzLCBzdWJqZWN0IHRvIGxvY2FsIGxhdy48L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD48c3Ryb25nPkNoaWxkcmVuJnJzcXVvO3MgUHJpdmFjeTwvc3Ryb25nPjwvcD4NCjxwPjxicj5XZSBkbyBub3Qga25vd2luZ2x5IGNvbGxlY3Qgb3IgbWFpbnRhaW4gaW5mb3JtYXRpb24gZnJvbSBwZXJzb25zIHVuZGVyIDE2IHllYXJzIG9mIGFnZSAoJmxkcXVvO2NoaWxkcmVuJnJkcXVvOyksIGFuZCBubyBwYXJ0IG9mIHRoZSBTZXJ2aWNlcyBpcyBkaXJlY3RlZCB0byBjaGlsZHJlbi4gSWYgeW91IGFyZSB1bmRlciAxNiB5ZWFycyBvZiBhZ2UsIHRoZW4gcGxlYXNlIGRvIG5vdCB1c2Ugb3IgYWNjZXNzIHRoZSBTZXJ2aWNlcyBhdCBhbnkgdGltZSBvciBpbiBhbnkgbWFubmVyLiBJZiB3ZSBsZWFybiB0aGF0IGluZm9ybWF0aW9uIGhhcyBiZWVuIGNvbGxlY3RlZCB0aHJvdWdoIHRoZSBTZXJ2aWNlcyBmcm9tIGNoaWxkcmVuIGFuZCB3aXRob3V0IHZlcmlmaWFibGUgcGFyZW50YWwgY29uc2VudCwgdGhlbiB3ZSB3aWxsIHRha2UgdGhlIGFwcHJvcHJpYXRlIHN0ZXBzIHRvIGRlbGV0ZSB0aGlzIGluZm9ybWF0aW9uLiBJZiB5b3UgYXJlIGEgcGFyZW50IG9yIGd1YXJkaWFuIGFuZCBkaXNjb3ZlciB0aGF0IHlvdXIgY2hpbGQgaGFzIHByb3ZpZGVkIHVzIHdpdGggcGVyc29uYWwgaW5mb3JtYXRpb24gd2l0aG91dCB5b3VyIGNvbnNlbnQsIHBsZWFzZSBjb250YWN0IHVzIHVzaW5nIHRoZSBjb250YWN0IGluZm9ybWF0aW9uIGJlbG93IHRvIHJlcXVlc3QgdGhhdCB3ZSBkZWxldGUgdGhlIGluZm9ybWF0aW9uIGZyb20gb3VyIHN5c3RlbXMuPC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHA+PHN0cm9uZz5BcHBsaWNhYmxlIEVudGl0eTwvc3Ryb25nPjwvcD4NCjxwPjxicj5BbGwgcmVmZXJlbmNlcyB0byAmbGRxdW87VHJpYnV0ZSBUZWNobm9sb2d5LCZyZHF1bzsgJmxkcXVvO3dlLCZyZHF1bzsgJmxkcXVvO3VzJnJkcXVvOyBvciAmbGRxdW87b3VyJnJkcXVvOyBpbiB0aGlzIFByaXZhY3kgTm90aWNlIHJlZmVyIHRvIHRoZSBhcHBsaWNhYmxlIGVudGl0eSBzcGVjaWZpZWQgaW4gdGhlIHRhYmxlIGJlbG93LCB3aGljaCBpcyBiYXNlZCBvbiB0aGUgbG9jYXRpb24gb2YgdGhlIGJ1c2luZXNzIGFkZHJlc3Mgb2YgdGhlIENsaWVudCBvciBvdGhlciBidXNpbmVzcyBvbiB3aG9zZSB3ZWJzaXRlIHRoaXMgUHJpdmFjeSBOb3RpY2UgYXBwZWFycyAoYXMgcG9zdGVkIG9uIHN1Y2ggd2Vic2l0ZSk6PC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHRhYmxlPg0KPHRib2R5Pg0KPHRyPg0KPHRkIHdpZHRoPSIxODYiPg0KPHA+PHN0cm9uZz5Mb2NhdGlvbiBvZiBCdXNpbmVzcyBBZGRyZXNzPC9zdHJvbmc+PC9wPg0KPC90ZD4NCjx0ZCB3aWR0aD0iMjEwIj4NCjxwPjxzdHJvbmc+QXBwbGljYWJsZSBFbnRpdHk8L3N0cm9uZz48L3A+DQo8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCB3aWR0aD0iMTg2Ij4NCjxwP
1692kNhbmFkYTwvcD4NCjwvdGQ+DQo8dGQgd2lkdGg9IjIxMCI+DQo8cD5UcmlidXRlIFRlY2hub2xvZ3kgQ2FuYWRhLCBVTEMsIGEgQnJpdGlzaCBDb2x1bWJpYSB1bmxpbWl0ZWQgbGlhYmlsaXR5IGNvbXBhbnk8L3A+DQo8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCB3aWR0aD0iMTg2Ij4NCjxwPlVuaXRlZCBTdGF0ZXMgYW5kIHRoZSByZXN0IG9mIHRoZSB3b3JsZCBvdXRzaWRlIENhbmFkYTwvcD4NCjwvdGQ+DQo8dGQgd2lkdGg9IjIxMCI+DQo8cD5UcmlidXRlIFRlY2hub2xvZ3kgVVMsIExMQywgYSBEZWxhd2FyZSBsaW1pdGVkIGxpYWJpbGl0eSBjb21wYW55PC9wPg0KPC90ZD4NCjwvdHI+DQo8L3Rib2R5Pg0KPC90YWJsZT4NCjxwPiZuYnNwOzwvcD4NCjxwPjxzdHJvbmc+Q2FsaWZvcm5pYSBSZXNpZGVudHM8L3N0cm9uZz48L3A+DQo8cD48YnI+U3VwcGxlbWVudGFsIHRvIHRoZSBhYm92ZSwgdGhlIGZvbGxvd2luZyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIHBlcnRhaW5zIHRvIENhbGlmb3JuaWEgcmVzaWRlbnRzIG9ubHk6PGJyPjxicj48ZW0+PHU+Q29sbGVjdGlvbiBhbmQgVXNlIG9mIFBlcnNvbmFsIEluZm9ybWF0aW9uPC91PjwvZW0+PC9wPg0KPHVsPg0KPGxpPkNhdGVnb3JpZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gY29sbGVjdGVkIGFib3V0IENhbGlmb3JuaWEgcmVzaWRlbnRzIGluIHRoZSBwYXN0IHR3ZWx2ZSBtb250aHMgaW5jbHVkZSBpZGVudGlmaWVycywgb3RoZXIgaWRlbnRpZnlpbmcgaW5mb3JtYXRpb24sIGNoYXJhY3RlcmlzdGljcyBvZiBwcm90ZWN0ZWQgY2xhc3MsIGNvbW1lcmNpYWwgaW5mb3JtYXRpb24sIEludGVybmV0IG9yIG90aGVyIGVsZWN0cm9uaWMgbmV0d29yayBhY3Rpdml0eSBpbmZvcm1hdGlvbiwgcHJvZmVzc2lvbmFsIG9yIGVtcGxveW1lbnQtcmVsYXRlZCBpbmZvcm1hdGlvbiwgZWR1Y2F0aW9uIGluZm9ybWF0aW9uLCBhbmQgaW5mZXJlbmNlcyBkcmF3biBmcm9tIHN1Y2ggaW5mb3JtYXRpb24uIEZvciBleGFtcGxlcyBvZiBzcGVjaWZpYyBwaWVjZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gY29sbGVjdGVkLCBwbGVhc2Ugc2VlIHRoZSAmbGRxdW87UGVyc29uYWwgSW5mb3JtYXRpb24gV2UgQ29sbGVjdCZyZHF1bzsgc2VjdGlvbiBhYm92ZS48L2xpPg0KPC91bD4NCjxwPiZuYnNwOzwvcD4NCjx1bD4NCjxsaT5DYXRlZ29yaWVzIG9mIHBlcnNvbmFsIGluZm9ybWF0aW9uIGRpc2Nsb3NlZCBmb3IgYSBidXNpbmVzcyBwdXJwb3NlIGFib3V0IENhbGlmb3JuaWEgcmVzaWRlbnRzIGluIHRoZSBwYXN0IHR3ZWx2ZSBtb250aHMgaW5jbHVkZSBpZGVudGlmaWVycywgb3RoZXIgaWRlbnRpZnlpbmcgaW5mb3JtYXRpb24sIGNoYXJhY3RlcmlzdGljcyBvZiBwcm90ZWN0ZWQgY2xhc3MsIGNvbW1lcmNpYWwgaW5mb3JtYXRpb24sIEludGVybmV0IG9yIG90aGVyIGVsZWN0cm9uaWMgbmV0d29yayBhY3Rpdml0eSBpbmZvcm1hdGlvbiwgcHJvZmVzc2lvbmFsIG9yIGVtcGxveW1lbnQtcmVsYXRlZCBpbmZvcm1hdGlvbiwgYW5kIGVkdWNhdGlvbiBpbmZvcm1hdGlvbi48L2xpPg0KPC91bD4NCjxwPiZuYnNwOzwvcD4NCjx1bD4NCjxsaT5XZSBkbyBub3Qgc2VsbCBwZXJzb25hbCBpbmZvcm1hdGlvbiwgbm9yIGRvIHdlIHNoYXJlIHBlcnNvbmFsIGluZm9ybWF0aW9uIHdpdGggdGhpcmQgcGFydGllcyBmb3IgdGhvc2UgdGhpcmQgcGFydGllcyZyc3F1bzsgZGlyZWN0IG1hcmtldGluZyBwdXJwb3Nlcy48L2xpPg0KPC91bD4NCjxwPjxicj48ZW0+PHU+WW91ciBDYWxpZm9ybmlhIFByaXZhY3kgUmlnaHRzPC91PjwvZW0+PGJyPkFzIGEgQ2FsaWZvcm5pYSByZXNpZGVudCwgeW91IGhhdmUgdGhlIGZvbGxvd2luZyByaWdodHMgd2l0aCByZXNwZWN0IHRvIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb246PC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHVsPg0KPGxpPllvdSBoYXZlIHRoZSByaWdodCB0byByZXF1ZXN0IHRvIGtub3cgYWJvdXQgcGVyc29uYWwgaW5mb3JtYXRpb24gY29sbGVjdGVkLCBkaXNjbG9zZWQsIG9yIHNvbGQuPC9saT4NCjwvdWw+DQo8cD4mbmJzcDs8L3A+DQo8dWw+DQo8bGk+WW91IGhhdmUgdGhlIHJpZ2h0IHRvIHJlcXVlc3QgdGhlIGRlbGV0aW9uIG9mIHBlcnNvbmFsIGluZm9ybWF0aW9uLjwvbGk+DQo8L3VsPg0KPHA+Jm5ic3A7PC9wPg0KPHVsPg0KPGxpPllvdSBoYXZlIHRoZSByaWdodCB0byBvcHQtb3V0IG9mIHRoZSBzYWxlIG9mIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gYXQgYW55IHRpbWUuIE5vdGUgdGhhdCB3ZSBkbyBub3QgY3VycmVudGx5IHNlbGwgcGVyc29uYWwgaW5mb3JtYXRpb24uPC9saT4NCjwvdWw+DQo8cD48YnI+RmluYWxseSwgeW91IGhhdmUgdGhlIHJpZ2h0IHRvIG5vdCBiZSBkaXNjcmltaW5hdGVkIGFnYWluc3QgYXMgYSByZXN1bHQgb2YgZXhlcmNpc2luZyB5b3VyIHByaXZhY3kgcmlnaHRzLiBBY2NvcmRpbmdseSwgdW5sZXNzIHBlcm1pdHRlZCBieSBsYXcsIHdlIH
1692dpbGwgbm90IGRlbnkgeW91IGdvb2RzIG9yIHNlcnZpY2VzLCBjaGFyZ2UgeW91IGRpZmZlcmVudCBwcmljZXMgb3IgcmF0ZXMgZm9yIGdvb2RzIG9yIHNlcnZpY2VzLCBwcm92aWRlIHlvdSBhIGRpZmZlcmVudCBsZXZlbCBvciBxdWFsaXR5IG9mIGdvb2RzIG9yIHNlcnZpY2VzLCBvciBzdWdnZXN0IHlvdSB3aWxsIHJlY2VpdmUgYSBkaWZmZXJlbnQgcHJpY2Ugb3IgcmF0ZSBmb3IgZ29vZHMgb3Igc2VydmljZXMgb3IgYSBkaWZmZXJlbnQgbGV2ZWwgb3IgcXVhbGl0eSBvZiBnb29kcyBvciBzZXJ2aWNlcy48YnI+PGJyPlRvIGV4ZXJjaXNlIHlvdXIgcmlnaHRzLCB5b3UgbWF5IGNvbnRhY3QgdXMgdXNpbmcgdGhlIGNvbnRhY3QgaW5mb3JtYXRpb24gcHJvdmlkZWQgYmVsb3cgb3IgY2FsbCAxLTgzMy0zMDMtMTg4MC4gSW4gb3JkZXIgdG8gZnVsZmlsbCB5b3VyIHJlcXVlc3QsIHdlIG1heSByZXF1aXJlIGFkZGl0aW9uYWwgcGVyc29uYWwgaW5mb3JtYXRpb24gZm9yIHB1cnBvc2VzIG9mIHZlcmlmeWluZyB5b3VyIGlkZW50aXR5LiBJZiB5b3UgbWFrZSBhIHJlcXVlc3QgdGhyb3VnaCBhbiBhdXRob3JpemVkIGFnZW50LCB3ZSBtYXkgcmVxdWlyZSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIHRvIHZlcmlmeSB5b3VyIGF1dGhvcml6YXRpb24gb2YgdGhlIGFnZW50LjwvcD4NCjxwPjxzdHJvbmc+Jm5ic3A7PC9zdHJvbmc+PC9wPg0KPHA+PHN0cm9uZz5DaGFuZ2VzIHRvIFByaXZhY3kgTm90aWNlPC9zdHJvbmc+PC9wPg0KPHA+PGJyPldlIHJlc2VydmUgdGhlIHJpZ2h0IHRvIG1ha2UgY2hhbmdlcyB0byB0aGlzIFByaXZhY3kgTm90aWNlIGF0IGFueSB0aW1lLCB3aXRob3V0IG5vdGljZS4gV2Ugd2lsbCBub3RpZnkgeW91IGFib3V0IGNoYW5nZXMgdGhhdCBzaWduaWZpY2FudGx5IGltcGFjdCBvdXIgdXNlIG9mIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gYnkgcGxhY2luZyBhIHByb21pbmVudCBub3RpY2Ugb24gdGhpcyB3ZWJzaXRlIG9yIGJ5IHNlbmRpbmcgeW91IGFuIGVtYWlsLiBQbGVhc2UgcmV2aXNpdCB0aGlzIHBhZ2UgcGVyaW9kaWNhbGx5IHRvIHN0YXkgYXdhcmUgb2YgYW55IGNoYW5nZXMgdG8gdGhpcyBQcml2YWN5IE5vdGljZS4gRm9yIHRoZSBhdm9pZGFuY2Ugb2YgZG91YnQsIGRpc3B1dGVzIGFyaXNpbmcgaGVyZXVuZGVyIHdpbGwgYmUgcmVzb2x2ZWQgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBQcml2YWN5IE5vdGljZSBpbiBlZmZlY3QgYXQgdGhlIHRpbWUgdGhlIGRpc3B1dGUgYXJvc2UuPC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHA+PHN0cm9uZz5Db250YWN0IFVzPC9zdHJvbmc+PC9wPg0KPHA+PGJyPlBsZWFzZSBjb250YWN0IHVzIHdpdGggYW55IHF1ZXN0aW9ucywgY29tbWVudHMgb3IgY29uY2VybnMgYWJvdXQgdGhpcyBQcml2YWN5IE5vdGljZSBvciBvdXIgdXNlIG9mIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gYnkgZW1haWwgYXQgcHJpdmFjeUB0cmlidXRldGVjaC5jb20gb3IgYnkgbWFpbCBhdDo8L3A+DQo8cD48YnI+VHJpYnV0ZSBUZWNobm9sb2d5PGJyPjI1MDEgUGFybWVudGVyIFN0cmVldCwgU3VpdGUgMzAwQzxicj5NaWRkbGV0b24sIFdJIDUzNTYyPC9wPg0KPHA+Jm5ic3A7PC9wPg==
1693</div>
1694    
1695
1696<div class="base64" style="display: none" id="termsOfUse">
1697    PGRpdiBpZD0iMTc3ODY4MTk4NiIgY2xhc3M9InVfMTc3ODY4MTk4NiBkbU5ld1BhcmFncmFwaCIgZGF0YS1lbGVtZW50LXR5cGU9InBhcmFncmFwaCIgZGF0YS12ZXJzaW9uPSI1IiBkYXRhLWFuaW0tZXh0ZW5kZWQ9ImV5SmtaWE5yZEc5d0lqcDdJblJ5YVdkblpYSWlPaUpsYm5SeVlXNWpaU0lzSW1GdWFXMWhkR2x2YmlJNkltWmhaR1ZKYmtOdmJXSnZJaXdpWkhWeVlYUnBiMjRpT2pFc0ltUmxiR0Y1SWpvd0xqVXNJbWx1ZEdWdWMybDBlU0k2TVN3aWNtVjJaWEp6WlNJNlptRnNjMlVzSW1ScGNpSTZJbWx1TFhCc1lXTmxJbjE5IiBkYXRhLWFuaW0tZGVza3RvcD0iZmFkZUluQ29tYm8iPg0KPHA+PHN0cm9uZz5UcmlidXRlIFRlY2hub2xvZ3kgVGVybXMgb2YgVXNlPC9zdHJvbmc+PC9wPg0KPHA+PGVtPkxhc3QgVXBkYXRlZDogQXByaWwgMjAsIDIwMjM8L2VtPjxicj48YnI+VGhlc2UgVGVybXMgb2YgVXNlLCB0b2dldGhlciB3aXRoIFRyaWJ1dGUgVGVjaG5vbG9neSdzIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnRyaWJ1dGV0ZWNoLmNvbS9wcml2YWN5LXBvbGljeSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiPjx1PlByaXZhY3kgUG9saWN5PC91PjwvYT4sIChjb2xsZWN0aXZlbHksIHRoZSAiVGVybXMiKSBzZXQgZm9ydGggdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIHRoYXQgYXBwbHkgdG8geW91ciBhY2Nlc3MgYW5kIHVzZSBvZiB0aGUgd2Vic2l0ZSBvZiBUcmlidXRlIFRlY2hub2xvZ3kgKGh0dHBzOi8vd3d3LnRyaWJ1dGV0ZWNoLmNvbS8pIGFuZCBvdXIgYXNzb2NpYXRlZCBzZXJ2aWNlcywgaW5jbHVkaW5nIFRyaWJ1dGUgVGVjaG5vbG9neSBzZXJ2aWNlcyB0aGF0IGFyZSBhdmFpbGFibGUgdGhyb3VnaCB0aGUgd2Vic2l0ZXMgb2Ygb3VyIGNsaWVudCBmdW5lcmFsIGhvbWVzIGFuZCBvdGhlciBmdW5lcmFsIHByb2Zlc3Npb25hbHMgKGVhY2gsIGEgJmxkcXVvO0NsaWVudCZyZHF1bzspIGFuZCBhbnkgb3RoZXIgd2Vic2l0ZXMgd2hlcmUgd2UgbGluayB0byB0aG
1697VzZSBUZXJtcyAodG9nZXRoZXIsIHRoZSAiU2l0ZXMiKSwgd2hldGhlciBhcyBhIENsaWVudCwgZW5kIHVzZXIgb3IgY3VzdG9tZXIgb2YgYSBDbGllbnQsIG9yIG90aGVyd2lzZS4gU3VjaCBUcmlidXRlIFRlY2hub2xvZ3kgc2VydmljZXMgYXJlIHJlZmVycmVkIHRvIGhlcmVpbiBjb2xsZWN0aXZlbHkgYXMgdGhlICZsZHF1bztTZXJ2aWNlcy4mcmRxdW87IENlcnRhaW4gU2VydmljZXMgYWNjZXNzaWJsZSB0aHJvdWdoIHRoZSBTaXRlcyBtYXkgaGF2ZSB0aGVpciBvd24gdGVybXMgYW5kIGNvbmRpdGlvbnMgdGhhdCBhcHBseSB0byB5b3VyIHVzZSBvZiB0aG9zZSBwYXJ0aWN1bGFyIFNlcnZpY2VzLiZuYnNwOyBUaGVzZSBUZXJtcyBjb25zdGl0dXRlIGEgbGVnYWxseSBiaW5kaW5nIGFncmVlbWVudCBiZXR3ZWVuIHlvdSwgd2hldGhlciBwZXJzb25hbGx5IG9yIG9uIGJlaGFsZiBvZiBhbiBlbnRpdHkgKCJ5b3UiKSwgYW5kIHRoZSBhcHBsaWNhYmxlIGVudGl0eSByZWZlcnJlZCB0byBpbiBTZWN0aW9uIDEzIG9mIHRoZXNlIFRlcm1zICgiVHJpYnV0ZSBUZWNobm9sb2d5LCIgIndlLCIgInVzIiBhbmQgJmxkcXVvO291ciZyZHF1bzspIGNvbmNlcm5pbmcgeW91ciBhY2Nlc3MgdG8gYW5kIHVzZSBvZiB0aGUgU2VydmljZXMuPGJyPjxicj5CeSB1c2luZyBvciBhY2Nlc3NpbmcgdGhlIFNlcnZpY2VzLCB5b3UgYWdyZWUgdG8gdGhlc2UgVGVybXMsIGFzIG1heSBiZSB1cGRhdGVkIGZyb20gdGltZSB0byB0aW1lIGluIGFjY29yZGFuY2Ugd2l0aCBTZWN0aW9uIDkgYmVsb3cuIElmIHlvdSBkbyBub3QgYWdyZWUgdG8gdGhlIGZvbGxvd2luZyBUZXJtcywgZG8gbm90IGFjY2VzcyBvciB1c2UgdGhlIFNlcnZpY2VzLjwvcD4NCjxwPiZuYnNwOzwvcD4NCjxwPjxzdHJvbmc+PHU+Tm90aWNlIG9mIEJpbmRpbmcgQXJiaXRyYXRpb248L3U+PC9zdHJvbmc+PHN0cm9uZz4uJm5ic3A7IFRoZXNlIFRlcm1zIHByb3ZpZGUgdGhhdCBhbGwgZGlzcHV0ZXMgYmV0d2VlbiB5b3UgYW5kIHVzIHRoYXQgaW4gYW55IHdheSByZWxhdGUgdG8gdGhlc2UgVGVybXMgb3IgeW91ciB1c2Ugb2YgdGhlIFNlcnZpY2VzIHdpbGwgYmUgcmVzb2x2ZWQgYnkgQklORElORyBBUkJJVFJBVElPTi4gQUNDT1JESU5HTFksIFlPVSBBR1JFRSBUTyBHSVZFIFVQIFlPVVIgUklHSFQgVE8gR08gVE8gQ09VUlQgKElOQ0xVRElORyBJTiBBIENMQVNTIEFDVElPTiBQUk9DRUVESU5HKSB0byBhc3NlcnQgb3IgZGVmZW5kIHlvdXIgcmlnaHRzIHVuZGVyIHRoZXNlIFRlcm1zLiBZb3VyIHJpZ2h0cyB3aWxsIGJlIGRldGVybWluZWQgYnkgYSBORVVUUkFMIEFSQklUUkFUT1IgYW5kIE5PVCBhIGp1ZGdlIG9yIGp1cnkgYW5kIHlvdXIgY2xhaW1zIGNhbm5vdCBiZSBicm91Z2h0IGFzIGEgY2xhc3MgYWN0aW9uLiBQbGVhc2UgcmV2aWV3IFNlY3Rpb24gMTIgYmVsb3cgZW50aXRsZWQgJmxkcXVvO0ludGVycHJldGF0aW9ucyBhbmQgRGlzcHV0ZXMmcmRxdW87IGZvciB0aGUgZGV0YWlscyByZWdhcmRpbmcgeW91ciBhZ3JlZW1lbnQgdG8gYXJiaXRyYXRlIGFueSBkaXNwdXRlcyB3aXRoIHVzLjwvc3Ryb25nPjwvcD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPkFjY291bnQgU2VjdXJpdHkuPC9zdHJvbmc+Jm5ic3A7VG8gdXNlIHRoZSBTZXJ2aWNlcyB5b3UgbXVzdCAoaSkgYmUgYXQgbGVhc3QgZWlnaHRlZW4gKDE4KSB5ZWFycyBvZiBhZ2U7IChpaSkgaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHN1c3BlbmRlZCBvciByZW1vdmVkIGZyb20gdGhlIFNlcnZpY2VzOyBhbmQgKGlpaSkgcmVnaXN0ZXIgZm9yIGFuZCB1c2UgdGhlIFNlcnZpY2VzIGluIGNvbXBsaWFuY2Ugd2l0aCBhbnkgYW5kIGFsbCBhcHBsaWNhYmxlIGxhd3MgYW5kIHJlZ3VsYXRpb25zLjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPjxzdHJvbmc+QWNjb3VudCBSZWdpc3RyYXRpb24uPC9zdHJvbmc+Jm5ic3A7VG8gYWNjZXNzIHNvbWUgZmVhdHVyZXMgb2YgdGhlIFNlcnZpY2VzLCB5b3UgbWF5IGJlIHJlcXVpcmVkIHRvIHJlZ2lzdGVyIGZvciBhbiBhY2NvdW50LiBXaGVuIHlvdSByZWdpc3RlciBmb3IgYW4gYWNjb3VudCwgd2UgbWF5IGFzayB5b3UgdG8gZ2l2ZSB1cyBjZXJ0YWluIGlkZW50aWZ5aW5nIGluZm9ybWF0aW9uIGFib3V0IHlvdXJzZWxmLCBpbmNsdWRpbmcgYnV0IG5vdCBsaW1pdGVkIHRvIHlvdXIgZW1haWwgYWRkcmVzcyBhbmQgb3RoZXIgY29udGFjdCBpbmZvcm1hdGlvbiwgYW5kIHRvIGNyZWF0ZSBhIHVzZXIgbmFtZSBhbmQgcGFzc3dvcmQgKCJSZWdpc3RyYXRpb24gSW5mb3JtYXRpb24iKS4gV2hlbiByZWdpc3RlcmluZyBmb3IgYW5kIG1haW50YWluaW5nIGFuIGFjY291bnQsIHlvdSBhZ3JlZSB0byBwcm92aWRlIHRydWUsIGFjY3VyYXRlLCBjdXJyZW50LCBhbmQgY29tcGxldGUgaW5mb3JtYXRpb24gYWJvdXQgeW91cnNlbGYuIFlvdSBhbHNvIGFncmVlIG5vdCB0byBpbXBlcnNvbmF0ZSBhbnlvbmUsIG1pc3JlcHJlc2VudCBhbnkgYWZmaWxpYXRpb24gd2l0aCBhbnlvbmUgZWxzZSwgdXNlIGZhbHNlIGluZm9ybWF0aW9uLCBvciBvdGhlcndpc2UgY29uY2VhbCB5b3VyIGlkZW50aXR5IGZyb20gVHJpYnV0ZSBUZWNobm9sb2d5IGZvciBhbnkgcHVycG9zZS4gWW91IGFyZSBzb2xlbHkgcmVzcG9uc2libGUgZm9yIG1haW50YWluaW5nIHRoZSBjb25maWRlbnRpYWxpdHkgYW5kIHNlY3VyaXR5IG9mIHlvdXIgcGFzc3dvcmQgYW5kIG90aGVyIFJlZ2lzdHJhdGlvbiBJbmZvcm1hdGlvbi4gRm9yIHlvdXIgcHJvdGVjdGlvbiBhbmQgdGhlIHByb3RlY3Rpb24gb2Ygb3RoZXIgdXNlcnMsIHdlIGFzayB5b3Ugbm90IHRvIHNoYXJlIHlvdXIgUmVnaXN0cmF0aW9uIEluZm9ybWF0aW9uIHdpdGggYW55b25lIGVsc2UuIElmIHlvdSBkbyBzaGFyZSB0aGlzIGluZm9ybWF0aW9uIHdpdGggYW55b25lLCB3ZSB3aWxsIGNvbnNpZGVyIHRoZWlyIGFjdGl2aXRpZXMgdG8gaGF2ZSBiZWVuIGF1dGhvcml6ZWQgYnkgeW91LiBJZiB5b3UgaGF2ZSByZWFzb24gdG8gYmVsaWV2ZSB0aGF0IHlvdXIgYWNjb3VudCBpcyBubyBsb25nZXIgc2VjdXJlLCB5b3UgbXVzdCBpbW1lZGlhdGVseSBub3RpZnkgdXMgYXQmbmJzcDt3ZWJzaXRlc0B0cmlidXRldGVjaC5jb20uPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+PHN0cm9uZz5Zb3VyIFVzZSBvZiB0aGUgU2VydmljZXMgYW5kIFByb2hpYml0ZWQgQ29uZHVjdC48L3N0cm9uZz4mbmJzcDtZb3UgYXJlIGdyYW50ZWQgYSBsaW1pdGVkLCBub24tZXhjbHVzaXZlLCByZXZvY2FibGUgcmlnaHQgdG8gYWNjZXNzIGFuZCB1c2UgdGhlIFNlcnZpY2VzIHNvbGVseSBmb3IgeW91ciBwZXJzb25hbCBvciBub24tY29tbWVyY2lhbCB1c2U7IHByb3ZpZGVkLCB0aGF0IGlmIHlvdSBhcmUgYSBDbGllbnQsIHlvdXIgY29tbWVyY2lhbCB1c2UgaW4gY29ubmVjdGlvbiB3aXRoIHlvdXIgU2l0ZSBpcyBwZXJtaXR0ZWQgZm9yIHlvdXIgYnVzaW5lc3MuJm5ic3A7IEV4Y2VwdCBmb3IgdGhlIGxpbWl0ZWQgcmlnaHQgZXhwcmVzc2x5IGdyYW50ZWQgdG8geW91IGluIHRoZXNlIFRlcm1zLCBUcmlidXRlIFRlY2hub2xvZ3kgYW5kIGl0cyBsaWNlbnNvcnMgZXhwcmVzc2x5IHJlc2VydmUgYWxsIG90aGVyIHJpZ2h0cyBhbmQgbGljZW5zZXMgdG8gdGhlIFNlcnZpY2VzIGFuZCB0aGVpciBjb250ZW50LiBZb3UgYWdyZWUgbm90IHRvOjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPG9sPg0KPGxpPlVzZSB0aGUgU2VydmljZXMgZm9yIGFueSBpbGxlZ2FsIHB1cnBvc2UsIG9yIGluIHZpb2xhdGlvbiBvZiBhbnkgbG9jYWwsIHN0YXRlLCBuYXRpb25hbCwgb3IgaW50ZXJuYXRpb25hbCBsYXc7PC9saT4NCjwvb2w+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPG9sPg0KPGxpPlZpb2xhdGUgb3IgZW5jb3VyYWdlIG90aGVycyB0byB2aW9sYXRlIHRoZSByaWdodHMgb2YgdGhpcmQgcGFydGllcywgaW5jbHVkaW5nIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHM7PC9saT4NCjwvb2w+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPG9sPg0KPGxpPlBvc3QsIHVwbG9hZCwgb3IgZGlzdHJpYnV0ZSBhbnkgY29udGVudCB0aGF0IGlzIHVubGF3ZnVsLCBkZWZhbWF0b3J5LCBsaWJlbG91cywgaW5hY2N1cmF0ZSwgb3IgdGhhdCBh
1697IHJlYXNvbmFibGUgcGVyc29uIGNvdWxkIGRlZW0gdG8gYmUgb2JqZWN0aW9uYWJsZSwgcHJvZmFuZSwgaW5kZWNlbnQsIHBvcm5vZ3JhcGhpYywgaGFyYXNzaW5nLCB0aHJlYXRlbmluZywgaGF0ZWZ1bCwgb3Igb3RoZXJ3aXNlIGluYXBwcm9wcmlhdGUsIG9yIHRoYXQgdmlvbGF0ZXMgb3IgaW5mcmluZ2VzIHRoZSBwcml2YWN5LCBjb3B5cmlnaHQsIHRyYWRlbWFyaywgdHJhZGUgZHJlc3MsIHRyYWRlIHNlY3JldHMgb3IgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBvZiBhbnkgcGVyc29uIG9yIGVudGl0eTs8L2xpPg0KPC9vbD4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8b2w+DQo8bGk+SW50ZXJmZXJlIGluIGFueSB3YXkgd2l0aCwgYnlwYXNzIG9yIGF0dGVtcHQgdG8gYnlwYXNzIGFueSBzZWN1cml0eS1yZWxhdGVkIGZlYXR1cmVzIG9mIHRoZSBTZXJ2aWNlczs8L2xpPg0KPC9vbD4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8b2w+DQo8bGk+SW50ZXJmZXJlIHdpdGggdGhlIG9wZXJhdGlvbiBvciBhbnkgdXNlcidzIGVuam95bWVudCBvZiB0aGUgU2VydmljZXMsIGluY2x1ZGluZyBieSB1cGxvYWRpbmcgb3Igb3RoZXJ3aXNlIGRpc3NlbWluYXRpbmcgdmlydXNlcywgYWR3YXJlLCBzcHl3YXJlLCB3b3Jtcywgb3Igb3RoZXIgbWFsaWNpb3VzIGNvZGUsIG1ha2luZyB1bnNvbGljaXRlZCBvZmZlcnMgb3IgYWR2ZXJ0aXNlbWVudHMgdG8gb3RoZXIgdXNlcnMsIG9yIGF0dGVtcHRpbmcgdG8gY29sbGVjdCBwZXJzb25hbCBpbmZvcm1hdGlvbiBhYm91dCB1c2VycyBvciB0aGlyZCBwYXJ0aWVzIHdpdGhvdXQgdGhlaXIgY29uc2VudDs8L2xpPg0KPC9vbD4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8b2w+DQo8bGk+RGVlcC1saW5rIHRvIGFueSBmZWF0dXJlIG9yIGNvbnRlbnQgb24gdGhlIFNlcnZpY2VzLCBvciBhY2Nlc3MsIG1vbml0b3Igb3IgY29weSBhbnkgY29udGVudCBvciBpbmZvcm1hdGlvbiBvZiB0aGUgU2VydmljZXMgdXNpbmcgYW55IHJvYm90LCBzcGlkZXIsIHNjcmFwZXIsIGNyYXdsZXIgb3Igb3RoZXIgYXV0b21hdGVkIG1lYW5zIG9yIGFueSBtYW51YWwgcHJvY2VzcyBmb3IgYW55IHB1cnBvc2Ugd2l0aG91dCBUcmlidXRlIFRlY2hub2xvZ3kmcnNxdW87cyBleHByZXNzIHdyaXR0ZW4gcGVybWlzc2lvbjs8L2xpPg0KPC9vbD4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8b2w+DQo8bGk+VXNlLCByZXByb2R1Y2UsIG1vZGlmeSwgZGlzdHJpYnV0ZSBvciBzdG9yZSBhbnkgcGFydCBvZiB0aGUgU2VydmljZXMgKGluY2x1ZGluZyBvYml0dWFyaWVzLCBldmVudCBpbmZvcm1hdGlvbiwgb3Igb3RoZXIgY29udGVudCkgZm9yIGFueSBwdXJwb3NlIHdpdGhvdXQgdGhlIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbiBvZiBUcmlidXRlIFRlY2hub2xvZ3k7PC9saT4NCjwvb2w+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPG9sPg0KPGxpPlBlcmZvcm0gYW55IGZyYXVkdWxlbnQgYWN0aXZpdHksIGluY2x1ZGluZyBpbXBlcnNvbmF0aW5nIGFueSBwZXJzb24gb3IgZW50aXR5LCBjbGFpbWluZyBmYWxzZSBhZmZpbGlhdGlvbnMsIGFjY2Vzc2luZyB0aGUgYWNjb3VudHMgb2Ygb3RoZXIgdXNlcnMgd2l0aG91dCBwZXJtaXNzaW9uLCBvciBmYWxzaWZ5aW5nIHlvdXIgaWRlbnRpdHkgb3IgYW55IGluZm9ybWF0aW9uIGFib3V0IHlvdSwgaW5jbHVkaW5nIGFnZSBvciBkYXRlIG9mIGJpcnRoOzwvbGk+DQo8L29sPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxvbD4NCjxsaT5Qb3N0LCBkaXNzZW1pbmF0ZSwgc3VibWl0LCB0cmFuc21pdCwgaG9zdCwgc2hhcmUsIGFuZC9vciBwdWJsaXNoIGFkdmVydGlzZW1lbnRzIG9yIHNvbGljaXRhdGlvbnMgb2YgYnVzaW5lc3M7IG9yPC9saT4NCjwvb2w+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPG9sPg0KPGxpPlNlbGwgb3Igb3RoZXJ3aXNlIHRyYW5zZmVyIHRoZSBhY2Nlc3MgZ3JhbnRlZCBoZXJlaW4uPC9saT4NCjwvb2w+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPjxzdHJvbmc+VGhpcmQgUGFydHkgQ29udGVudC48L3N0cm9uZz4mbmJzcDtUaGUgU2VydmljZXMgbWF5IGNvbnRhaW4gbGlua3MgdG8gdGhpcmQgcGFydHkgd2Vic2l0ZXMgYW5kIHNlcnZpY2VzLiBUcmlidXRlIFRlY2hub2xvZ3kgcHJvdmlkZXMgc3VjaCBsaW5rcyBhcyBhIGNvbnZlbmllbmNlLCBhbmQgZG9lcyBub3QgY29udHJvbCBvciBlbmRvcnNlIHRoZXNlIHdlYnNpdGVzIGFuZCBzZXJ2aWNlcy4gWW91IGFja25vd2xlZGdlIGFuZCBhZ3JlZSB0aGF0IFRyaWJ1dGUgVGVjaG5vbG9neSBoYXMgbm90IHJldmlld2VkIHRoZSBjb250ZW50LCBhZHZlcnRpc2luZywgcHJvZHVjdHMsIHNlcnZpY2VzLCBvciBvdGhlciBtYXRlcmlhbHMgdGhhdCBhcHBlYXIgb24gc3VjaCB0aGlyZCBwYXJ0eSB3ZWJzaXRlcyBvciBzZXJ2aWNlcywgYW5kIGlzIG5vdCByZXNwb25zaWJsZSBmb3IgdGhlIGxlZ2FsaXR5LCBhY2N1cmFjeSwgb3IgYXBwcm9wcmlhdGVuZXNzIG9mIGFueSBzdWNoIGNvbnRlbnQsIGFuZCBzaGFsbCBub3QgYmUgcmVzcG9uc2libGUgb3IgbGlhYmxlLCBkaXJlY3RseSBvciBpbmRpcmVjdGx5LCBmb3IgYW55IGRhbWFnZSBvciBsb3NzIGNhdXNlZCBvciBhbGxlZ2VkIHRvIGJlIGNhdXNlZCBieSBvciBpbiBjb25uZWN0aW9uIHdpdGggdGhlIHVzZSBvZiBhbnkgc3VjaCB0aGlyZCBwYXJ0eSB3ZWJzaXRlcyBvciBzZXJ2aWNlcy48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPkludGVsbGVjdHVhbCBQcm9wZXJ0eS48L3N0cm9uZz4mbmJzcDtZb3UgYWNrbm93bGVkZ2UgYW5kIGFncmVlIHRoYXQgd2hlbiB5b3Ugc3VibWl0IGFuIG9iaXR1YXJ5LCBwb3N0IGNvbW1lbnRzLCBzdWJtaXQgYSB0cmlidXRlIHZpZGVvIG9yIGltYWdlLCBvciBwb3N0IG9yIHN1Ym1pdCBvdGhlciBjb250ZW50ICh0b2dldGhlciwgIkNvbnRlbnQiKSB0byBUcmlidXRlIFRlY2hub2xvZ3kgb3IgdmlhIHRoZSBTZXJ2aWNlcywgaW5jbHVkaW5nIHRvIGFueSB3ZWJzaXRlIG9mIGFueSBmdW5lcmFsIGhvbWUgb3Igb3RoZXIgZnVuZXJhbCBwcm9mZXNzaW9uYWxzIHByb3ZpZGVkIGJ5IFRyaWJ1dGUgVGVjaG5vbG9neSwgc3VjaCBDb250ZW50IHdpbGwgYmUgc2hhcmVkIHdpdGggYW5kIHN0b3JlZCBieSBUcmlidXRlIFRlY2hub2xvZ3kgYW5kIGl0cyBhZmZpbGlhdGVzIGFuZCBwYXJ0bmVycywgaW5jbHVkaW5nIGJ1dCBub3QgbGltaXRlZCB0byBUcmlidXRlIEFyY2hpdmUgKHRyaWJ1dGVhcmNoaXZlLmNvbSksIGFuZCBtYXkgYWxzbyBiZSB1c2VkIGluIGNvbm5lY3Rpb24gd2l0aCBvdGhlciBwcm9kdWN0cyBhbmQgc2VydmljZXMgcHJvdmlkZWQgYnkgVHJpYnV0ZSBUZWNobm9sb2d5IGFuZCBpdHMgYWZmaWxpYXRlcyBhbmQgcGFydG5lcnMgaW4gY29ubmVjdGlvbiB3aXRoIHRoZSBTaXRlcywgaW5jbHVkaW5nIHByb2R1Y3RzIHN1Y2ggYXMgVHJpYnV0ZSBCb29rLiBXaXRoIHJlc3BlY3QgdG8gYW55IGltYWdlcyBvciB2aWRlb3MgdGhhdCB5b3UgcG9zdCBvciBwcm92aWRlIGluIGNvbm5lY3Rpb24gd2l0aCB0aGUgU2VydmljZXMsIHlvdSByZXByZXNlbnQgYW5kIHdhcnJhbnQgdGhhdCB5b3UgaGF2ZSBzZWN1cmVkIHRoZSBwZXJtaXNzaW9uIG9mIGFueSBsaXZpbmcgcGVyc29ucyBkZXBpY3RlZCB0aGVyZWluIHRvIChpKSBwb3N0IHRoZW0sIGFuZCAoaWkpIHRoZSB1c2Ugb2Ygc3VjaCBDb250ZW50IGFzIHNldCBvdXQgaW4gdGhlc2UgVGVybXMuIFlvdSBoZXJlYnkgZ3JhbnQgdG8gVHJpYnV0ZSBUZWNobm9sb2d5IGFuZCBpdHMgYWdlbnRzLCBhdHRvcm5leXMsIHJlcHJlc2VudGF0aXZlcywgcHJlZGVjZXNzb3JzLCBzdWNjZXNzb3JzLCBhZmZpbGlhdGVzLCBwYXJlbnRzLCBzdWJzaWRpYXJpZXMsIG5vbWluZWVzLCBsaWNlbnNlZXMsIGV4ZWN1dG9ycywgYWRtaW5pc3RyYXRvcnMsIGFzc2lnbnMsIGZ1bmVyYWwgaG9tZXMgb3Igb3RoZXIgZnVuZXJhbCBwcm9mZXNzaW9uYWxzIHRoYXQgYXJlIG91ciBDbGllbnRzLCBhbmQgdGhvc2UgYWN0aW5nIHdpdGggYXV0aG9yaXR5IG9mIHRoZSBmb3JlZ29pbmcgKGNvbGxlY3RpdmVseSwgJmxkcXVvO1RyaWJ1dGUgVGVjaG5vbG9neSBQYXJ0aWVzJnJkcXVvOyksIGEgd29ybGR3aWRlLCBub24tZXhjbHVzaXZlLCBwZXJwZXR1YWwsIGlycmV2b2NhYmxlLCByb3lhbHR5IGZyZWUsIHRyYW5zZmVyYWJsZSwgYW5kIHN1YmxpY2Vuc2FibGUgcmlnaHQgYW5kIGxpY2Vuc2UgdG8gdXNlLCBzaGFyZSwgcmVwcm9kdWNlLCBkaXN0cmlidXRlLCBzZWxsLCBwcmVwYXJlIGRlcml2YXRpdmUgd29ya3Mgb2YsIGV4Y2VycHQsIHB1YmxpY2x5IGRpc3BsYXksIHB1YmxpY2x5IHBlcmZvcm0sIGhvc3QsIGNhY2hlLCByb3V0ZSwgdHJhbnNtaXQsIHN0b3JlLCByZWZvcm1hdCwgZXhjZXJwdCwgZWRpdCwgYXJjaGl2ZSwgaW5kZXgsIGNyZWF0ZSBhbGdvcml0aG1zIGJhc2VkIG9uLCBtb2RpZnksIGFuZC9vciB0cmFuc2NvZGUgc3VjaCBDb250ZW50IGluIGFueSBhbmQgYWxsIGZvcm1hdHMgYW5kIHR
1697ocm91Z2ggYW55IGFuZCBhbGwgbWVhbnMgYW5kIGNoYW5uZWxzLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRocm91Z2ggZG93bmxvYWRpbmcgdGVjaG5vbG9naWVzLCBvbiB0aGUgaW50ZXJuZXQsIGFuZCBpbiBwdWJsaWNhdGlvbnMgYW5kIGFkdmVydGlzZW1lbnRzLiZuYnNwOyBZb3UgYWxzbyBoZXJlYnkgaXJyZXZvY2FibHkgd2FpdmUsIGFzIGFnYWluc3QgdGhlIFRyaWJ1dGUgVGVjaG5vbG9neSBQYXJ0aWVzLCBhbGwgbW9yYWwgcmlnaHRzIGFuZCByaWdodHMgb2YgcmVzdHJhaW50IGluIHN1Y2ggQ29udGVudC4mbmJzcDsgVGhlIGxpY2Vuc2UsIGNvbnNlbnQsIGFuZCByZWxlYXNlIGhlcmVpbiBhcmUgYmluZGluZyB1cG9uIHlvdSBhbmQgeW91ciBoZWlycywgZXhlY3V0b3JzLCBhZG1pbmlzdHJhdG9ycywgc3VjY2Vzc29ycywgbGljZW5zZWVzLCBhbmQgYXNzaWducy48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxwPkV4Y2VwdCBmb3IgQ29udGVudCwgYWxsIHRleHQsIGdyYXBoaWNzLCBwaG90b2dyYXBocywgdmlkZW9zLCB1c2VyIGludGVyZmFjZXMsIHRyYWRlbWFya3MsIGxvZ29zLCB0YWdsaW5lcywgYW5pbWF0aW9ucywgc291bmRzLCBtdXNpYyBhbmQgb3RoZXIgbWF0ZXJpYWxzIGNvbnRhaW5lZCBvbiBvciBjb21wcmlzaW5nIHRoZSBTZXJ2aWNlcywgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgZGVzaWduLCBzdHJ1Y3R1cmUsIHNlbGVjdGlvbiwgb3JnYW5pemF0aW9uLCBjb21waWxhdGlvbiwgZGlzcGxheSwgYXJyYW5nZW1lbnQsIGV4cHJlc3Npb24sIGFuZCAmbGRxdW87bG9vayBhbmQgZmVlbCZyZHF1bzsgb2YgdGhlIFNpdGVzIGFuZCBTZXJ2aWNlcywgYW5kIHRoZSBzb2Z0d2FyZSBjb21wcmlzaW5nIGFuZC9vciBlbWJvZHlpbmcgdGhlIGZvcmVnb2luZyAoY29sbGVjdGl2ZWx5LCB0aGUgJmxkcXVvO1RyaWJ1dGUgVGVjaG5vbG9neSBNYXRlcmlhbHMmcmRxdW87KSwgYXJlIG93bmVkLCBjb250cm9sbGVkLCBvciBsaWNlbnNlZCBieSBvciB0byBUcmlidXRlIFRlY2hub2xvZ3ksIGFuZCBhcmUgcHJvdGVjdGVkIHVuZGVyIGFwcGxpY2FibGUgaW50ZWxsZWN0dWFsIHByb3BlcnR5IGxhd3MsIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gY29weXJpZ2h0LCB0cmFkZSBkcmVzcywgdHJhZGVtYXJrLCBhbmQvb3IgcGF0ZW50IGxhd3MuJm5ic3A7IFlvdXIgdXNlIG9mIHRoZSBTZXJ2aWNlcyBnaXZlcyB5b3Ugbm8gb3duZXJzaGlwIHJpZ2h0cyBpbiB0aGUgVHJpYnV0ZSBUZWNobm9sb2d5IE1hdGVyaWFscy48L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD5UcmlidXRlIFRlY2hub2xvZ3ksIG9yIHRoaXJkIHBhcnRpZXMgZnJvbSB3aG9tIFRyaWJ1dGUgVGVjaG5vbG9neSBoYXMgcGVybWlzc2lvbiwgb3duIHRoZSB0cmFkZW1hcmtzIGFuZCBzZXJ2aWNlIG1hcmtzIHRoYXQgYXJlIHVzZWQgaW4gdGhlIFNlcnZpY2VzLiZuYnNwOyBBbGwgcmlnaHRzIGFyZSByZXNlcnZlZCBieSBUcmlidXRlIFRlY2hub2xvZ3kgYW5kIHNhaWQgdGhpcmQgcGFydGllcywgYW5kIG5vIGltcGxpZWQgcmlnaHRzIGFyZSBncmFudGVkIHRvIHlvdSBvciBhbnkgdGhpcmQgcGFydGllcy4mbmJzcDsgVGhlc2UgYW5kIG90aGVyIGdyYXBoaWNzLCBsb2dvcywgc2VydmljZSBtYXJrcywgdHJhZGVtYXJrcywgYW5kIHRyYWRlIGRyZXNzIG9mIFRyaWJ1dGUgVGVjaG5vbG9neSBhbmQgaXRzIGxpY2Vuc29ycyBtYXkgbm90IGJlIHVzZWQgd2l0aG91dCBwcmlvciB3cml0dGVuIGNvbnNlbnQgb2YgVHJpYnV0ZSBUZWNobm9sb2d5IG9yIGl0cyBsaWNlbnNvciwgYXMgdGhlIGNhc2UgbWF5IGJlLiZuYnNwOyBXaXRob3V0IGxpbWl0aW5nIHRoZSBmb3JlZ29pbmcsIG5vIFRyaWJ1dGUgVGVjaG5vbG9neSB0cmFkZW1hcmsgb3IgdHJhZGUgZHJlc3MgbWF5IGJlIHVzZWQgaW4gY29ubmVjdGlvbiB3aXRoIGFueSBwcm9kdWN0IG9yIHNlcnZpY2UgdGhhdCBpcyBub3QgVHJpYnV0ZSBUZWNobm9sb2d5J3MgaW4gYW55IG1hbm5lciB0aGF0IGlzIGxpa2VseSB0byBjYXVzZSBjb25mdXNpb24gYW1vbmcgdXNlcnMsIG9yIGluIGFueSBtYW5uZXIgdGhhdCBkaXNwYXJhZ2VzIG9yIGRpc2NyZWRpdHMgVHJpYnV0ZSBUZWNobm9sb2d5LiZuYnNwOzwvcD4NCjxwPiZuYnNwOzwvcD4NCjxwPllvdSBncmFudCBUcmlidXRlIFRlY2hub2xvZ3kgYSBwZXJwZXR1YWwsIHJveWFsdHkgZnJlZSwgaXJyZXZvY2FibGUsIHN1Yi1saWNlbnNhYmxlLCBhc3NpZ25hYmxlLCBhbmQgdHJhbnNmZXJhYmxlIGxpY2Vuc2UgdG8gYW55IGZlZWRiYWNrLCBzdWJtaXNzaW9ucywgaWRlYXMsIGNvbmNlcHRzLCBrbm93IGhvdywgb3IgdGVjaG5pcXVlcyB0aGF0IHlvdSBzdWJtaXQgYWJvdXQgdGhlIFNlcnZpY2VzIG9yIFRyaWJ1dGUgVGVjaG5vbG9neSBNYXRlcmlhbHMgZm9yIGFueSBwdXJwb3NlIChpbmNsdWRpbmcsIHdpdGhvdXQgbGltaXRhdGlvbiwgY29tbWVyY2lhbGl6YXRpb24pIGFuZCB3aXRob3V0IGNvbXBlbnNhdGlvbiB0byB5b3UuPC9wPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPjxzdHJvbmc+VXNlciBDb250ZW50Ljwvc3Ryb25nPiZuYnNwO1lvdSByZXByZXNlbnQgYW5kIHdhcnJhbnQgdGhhdCB5b3Ugb3duIG9yIG90aGVyd2lzZSBoYXZlIHRoZSByaWdodHMsIGxpY2Vuc2VzLCBjb25zZW50cyBhbmQgcGVybWlzc2lvbnMgbmVjZXNzYXJ5IHRvIHByb3ZpZGUgVHJpYnV0ZSBUZWNobm9sb2d5IHRoZSBDb250ZW50IHlvdSBwcm92aWRlIGluIGNvbm5lY3Rpb24gd2l0aCB0aGUgU2VydmljZXMuIElmIHlvdSBiZWxpZXZlIHRoYXQgeW91ciBDb250ZW50IG9yIGFueSBvdGhlciBtYXRlcmlhbCBwb3N0ZWQgaW4gY29ubmVjdGlvbiB3aXRoIHRoZSBTZXJ2aWNlcyBoYXMgYmVlbiB1c2VkIGluIGEgd2F5IHRoYXQgY29uc3RpdHV0ZXMgY29weXJpZ2h0IGluZnJpbmdlbWVudCwgcGxlYXNlIG5vdGlmeSB1cyBmb2xsb3dpbmcgdGhlIHByb2NlZHVyZXMgc2V0IGZvcnRoIGluIHRoaXMgU2VjdGlvbi48L2xpPg0KPC9vbD4NCjxwPjxzdHJvbmc+Jm5ic3A7PC9zdHJvbmc+PC9wPg0KPHA+V2UgcmVzcGVjdCB0aGUgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBvZiBvdGhlcnMgYW5kIGV4cGVjdCBvdXIgdXNlcnMgdG8gZG8gdGhlIHNhbWUuIEluIGFjY29yZGFuY2Ugd2l0aCB0aGUgRGlnaXRhbCBNaWxsZW5uaXVtIENvcHlyaWdodCBBY3QsIHdlIH
1697dpbGwgcmVzcG9uZCBwcm9tcHRseSB0byBub3RpY2VzIG9mIGFsbGVnZWQgaW5mcmluZ2VtZW50IHRoYXQgYXJlIHJlcG9ydGVkIHRvIG91ciBkZXNpZ25hdGVkIENvcHlyaWdodCBBZ2VudCwgaWRlbnRpZmllZCBiZWxvdy48L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD48dT5Ob3RpY2VzIG9mIEFsbGVnZWQgSW5mcmluZ2VtZW50PC91Pjo8L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD5JZiB5b3UgYXJlIGEgY29weXJpZ2h0IG93bmVyLCBhdXRob3JpemVkIHRvIGFjdCBvbiBiZWhhbGYgb2Ygb25lLCBvciBhdXRob3JpemVkIHRvIGFjdCB1bmRlciBhbnkgZXhjbHVzaXZlIHJpZ2h0IHVuZGVyIGNvcHlyaWdodCwgcGxlYXNlIHJlcG9ydCBhbGxlZ2VkIGNvcHlyaWdodCBpbmZyaW5nZW1lbnRzIHRha2luZyBwbGFjZSBvbiBvciB0aHJvdWdoIG91ciBTZXJ2aWNlcyBieSBzZW5kaW5nIHVzIGEgbm90aWNlICgmbGRxdW87Tm90aWNlJnJkcXVvOykgY29tcGx5aW5nIHdpdGggdGhlIGZvbGxvd2luZyByZXF1aXJlbWVudHMuPC9wPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPklkZW50aWZ5IHRoZSBjb3B5cmlnaHRlZCB3b3JrcyB0aGF0IHlvdSBjbGFpbSBoYXZlIGJlZW4gaW5mcmluZ2VkLjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPklkZW50aWZ5IHRoZSBtYXRlcmlhbCBvciBsaW5rIHlvdSBjbGFpbSBpcyBpbmZyaW5naW5nIChvciB0aGUgc3ViamVjdCBvZiBpbmZyaW5naW5nIGFjdGl2aXR5KSBhbmQgdGhhdCBhY2Nlc3MgdG8gd2hpY2ggaXMgdG8gYmUgZGlzYWJsZWQsIGluY2x1ZGluZyBhdCBhIG1pbmltdW0sIGlmIGFwcGxpY2FibGUsIHRoZSBVUkwgb2YgdGhlIGxpbmsgc2hvd24gb24gdGhlIFNpdGUgd2hlcmUgc3VjaCBtYXRlcmlhbCBtYXkgYmUgZm91bmQuPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+UHJvdmlkZSB5b3VyIG1haWxpbmcgYWRkcmVzcywgdGVsZXBob25lIG51bWJlciwgYW5kLCBpZiBhdmFpbGFibGUsIGVtYWlsIGFkZHJlc3MuPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+SW5jbHVkZSBib3RoIG9mIHRoZSBmb2xsb3dpbmcgc3RhdGVtZW50cyBpbiB0aGUgYm9keSBvZiB0aGUgTm90aWNlOjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPHA+IkkgaGVyZWJ5IHN0YXRlIHRoYXQgSSBoYXZlIGEgZ29vZCBmYWl0aCBiZWxpZWYgdGhhdCB0aGUgZGlzcHV0ZWQgdXNlIG9mIHRoZSBjb3B5cmlnaHRlZCBtYXRlcmlhbCBpcyBub3QgYXV0aG9yaXplZCBieSB0aGUgY29weXJpZ2h0IG93bmVyLCBpdHMgYWdlbnQsIG9yIHRoZSBsYXcgKGUuZy4sIGFzIGEgZmFpciB1c2UpLiI8L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD4iSSBoZXJlYnkgc3RhdGUgdGhhdCB0aGUgaW5mb3JtYXRpb24gaW4gdGhpcyBOb3RpY2UgaXMgYWNjdXJhdGUgYW5kLCB1bmRlciBwZW5hbHR5IG9mIHBlcmp1cnksIHRoYXQgSSBhbSB0aGUgb3duZXIsIG9yIGF1dGhvcml6ZWQgdG8gYWN0IG9uIGJlaGFsZiBvZiB0aGUgb3duZXIsIG9mIHRoZSBjb3B5cmlnaHQgb3Igb2YgYW4gZXhjbHVzaXZlIHJpZ2h0IHVuZGVyIHRoZSBjb3B5cmlnaHQgdGhhdCBpcyBhbGxlZ2VkbHkgaW5mcmluZ2VkLiI8L3A+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+UHJvdmlkZSB5b3VyIGZ1bGwgbGVnYWwgbmFtZSBhbmQgeW91ciBlbGVjdHJvbmljIG9yIHBoeXNpY2FsIHNpZ25hdHVyZS48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxwPlBsZWFzZSBkZWxpdmVyIHRoaXMgTm90aWNlLCB3aXRoIGFsbCBpdGVtcyBjb21wbGV0ZWQsIHRvIG91ciBkZXNpZ25hdGVkIENvcHlyaWdodCBBZ2VudCBhdCB0aGUgZm9sbG93aW5nIGFkZHJlc3M6PC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHA+Q29weXJpZ2h0IEFnZW50PC9wPg0KPHA+Yy9vIFRyaWJ1dGUgVGVjaG5vbG9neTwvcD4NCjxwPjI1MDEgUGFybWVudGVyIFN0cmVldCwgU3VpdGUgMzAwQzwvcD4NCjxwPk1pZGRsZXRvbiwgV0kgNTM1NjI8L3A+DQo8cD5QaG9uZTogODY2LTMwMy0xODgwPC9wPg0KPHA+RW1haWw6IGNvcHlyaWdodEB0cmlidXRldGVjaC5jb208L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD5UcmlidXRlIFRlY2hub2xvZ3kgaGFzIGFkb3B0ZWQgYW5kIGltcGxlbWVudHMgYSBwb2xpY3kgdGhhdCBwcm92aWRlcyBmb3IgdGVybWluYXRpb24gaW4gYXBwcm9wcmlhdGUgY2lyY3Vtc3RhbmNlcyBvZiBhY2NvdW50cyBvZiB1c2VycyB3aG8gcmVwZWF0ZWRseSBpbmZyaW5nZSBjb3B5cmlnaHQgb3Igb3RoZXIgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBvZiBUcmlidXRlIFRlY2hub2xvZ3kgb3Igb3RoZXJzLiZuYnNwOzwvcD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPkluZGVtbmlmaWNhdGlvbi48L3N0cm9uZz4mbmJzcDtZb3UgYWdyZWUgdGhhdCB5b3Ugd2lsbCBiZSBwZXJzb25hbGx5IHJlc3BvbnNpYmxlIGZvciB5b3VyIHVzZSBvZiB0aGUgU2VydmljZXMsIGFuZCB5b3UgYWdyZWUgdG8gZGVmZW5kLCBpbmRlbW5pZnksIGFuZCBob2xkIGhhcm1sZXNzIFRyaWJ1dGUgVGVjaG5vbG9neSwgaXRzIGFmZmlsaWF0ZXMsIGFuZCBlYWNoIG9mIHRoZWlyIHJlc3BlY3RpdmUgZGlyZWN0b3JzLCBvZmZpY2VycywgZW1wbG95ZWVzIGFuZCBhZ2VudHMgZnJvbSBhbmQgYWdhaW5zdCBhbnkgYW5kIGFsbCBjbGFpbXMsIGxpYWJpbGl0aWVzLCBkYW1hZ2VzLCBsb3NzZXMsIGFuZCBleHBlbnNlcyAoaW5jbHVkaW5nIGF0dG9ybmV5cycgYW5kIGFjY291bnRpbmcgZmVlcyBhbmQgY29zdHMpLCBhcmlzaW5nIG91dCBvZiBvciBpbiBhbnkgd2F5IGNvbm5lY3RlZCB3aXRoIChpKSB5b3VyIGFjY2VzcyB0bywgdXNlIG9mLCBvciBhbGxlZ2VkIHVzZSBvZiB0aGUgU2VydmljZXMsIGluY2x1ZGluZywgd2l0aG91dCBsaW1pdGF0aW9uLCBpbnZvbHZpbmcgYW55IENvbnRlbnQgeW91IHBvc3Qgb3Igc3VibWl0IHRvIHVzIG9yIGluIGNvbm5lY3Rpb24gd2l0aCB0aGUgU2VydmljZXM7IChpaSkgeW91ciB2aW9sYXRpb24gb2YgdGhlIFRlcm1zIG9yIGFueSBhcHBsaWNhYmxlIGxhdyBvciByZWd1bGF0aW9uOyAoaWlpKSB5b3VyIHZpb2xhdGlvbiBvZiBhbnkgdGhpcmQgcGFydHkgcmlnaHQsIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gYW55IGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodCwgcHVibGljaXR5LCBjb25maWRlbnRpYWxpdHksIHByb3BlcnR5LCBvciBwcml2YWN5IHJpZ2h0OyAoaXYpIGFueSBkaXNwdXRlcyBvciBpc3N1ZXMgYmV0d2VlbiB5b3UgYW5kIGFueSB0aGlyZCBwYXJ0eTsgb3IgKHYpIGFjY2VzcyB0bywgdXNlIG9mLCBvciBhbGxlZ2VkIHVzZSBvZiB0aGUgU2VydmljZXMgYnkgYW55b25lIGFjY2Vzc2luZyB0aGUgU2VydmljZXMgdXNpbmcgeW91ciB1c2VyIG5hbW
1697UgYW5kIHBhc3N3b3JkLiBUcmlidXRlIFRlY2hub2xvZ3kgcmVzZXJ2ZXMgdGhlIHJpZ2h0LCBhdCBvdXIgb3duIGV4cGVuc2UsIHRvIGFzc3VtZSB0aGUgZXhjbHVzaXZlIGRlZmVuc2UgYW5kIGNvbnRyb2wgb2YgYW55IG1hdHRlciBvdGhlcndpc2Ugc3ViamVjdCB0byBpbmRlbW5pZmljYXRpb24gYnkgeW91LCBhbmQgaW4gc3VjaCBjYXNlLCB5b3UgYWdyZWUgdG8gY29vcGVyYXRlIHdpdGggb3VyIGRlZmVuc2Ugb2Ygc3VjaCBjbGFpbS4gRm9yIHRoZSBhdm9pZGFuY2Ugb2YgZG91YnQgYW5kIHdpdGhvdXQgbGltaXRpbmcgdGhlIGZvcmVnb2luZywgeW91IGFncmVlIHRvIGluZGVtbmlmeSBUcmlidXRlIFRlY2hub2xvZ3kgYWdhaW5zdCBhbnkgY2xhaW1zIHRoYXQgQ29udGVudCB5b3Ugc3VibWl0IHRvIFRyaWJ1dGUgVGVjaG5vbG9neSB2aW9sYXRlcyB0aGUgaW50ZWxsZWN0dWFsIHByb3BlcnR5IGFuZC9vciBwcml2YWN5IHJpZ2h0cyBvZiBhbnkgcGVyc29uIG9yIHRoaXJkIHBhcnR5LjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPjxzdHJvbmc+VGVybWluYXRpb24uPC9zdHJvbmc+Jm5ic3A7SWYgeW91IHZpb2xhdGUgdGhlc2UgVGVybXMsIHlvdXIgcGVybWlzc2lvbiB0byB1c2UgdGhlIFNlcnZpY2VzIHdpbGwgYXV0b21hdGljYWxseSB0ZXJtaW5hdGUuIEluIGFkZGl0aW9uLCBUcmlidXRlIFRlY2hub2xvZ3kgaW4gaXRzIHNvbGUgZGlzY3JldGlvbiBtYXkgc3VzcGVuZCBvciB0ZXJtaW5hdGUgeW91ciB1c2VyIGFjY291bnQgYW5kL29yIHN1c3BlbmQgb3IgdGVybWluYXRlIHNvbWUgb3IgYWxsIG9mIHlvdXIgYWNjZXNzIHRvIHRoZSBTZXJ2aWNlcyBhdCBhbnkgdGltZSwgd2l0aCBvciB3aXRob3V0IG5vdGljZSB0byB5b3UuIFlvdSBtYXkgdGVybWluYXRlIHlvdXIgYWNjb3VudCBhdCBhbnkgdGltZSBieSBjb250YWN0aW5nIFRyaWJ1dGUgVGVjaG5vbG9neSBhdCZuYnNwO3dlYnNpdGVzQHRyaWJ1dGV0ZWNoLmNvbS4gQWZ0ZXIgeW91ciBhY2NvdW50IGlzIHRlcm1pbmF0ZWQsIGluZm9ybWF0aW9uIGFuZCBjb250ZW50IHByZXZpb3VzbHkgcHJvdmlkZWQgYnkgeW91IHdpbGwgbm8gbG9uZ2VyIGJlIGFjY2Vzc2libGUgdGhyb3VnaCB5b3VyIGFjY291bnQsIGJ1dCBUcmlidXRlIFRlY2hub2xvZ3kgbWF5IGNvbnRpbnVlIHRvIHN0b3JlIHN1Y2ggaW5mb3JtYXRpb24gYW5kIGNvbnRlbnQsIGFuZCBpdCBtYXkgYWxzbyBiZSBzdG9yZWQgYnkgdGhpcmQgcGFydGllcyB0byB3aG9tIGl0IGhhcyBiZWVuIHRyYW5zZmVycmVkIHRocm91Z2ggeW91ciB1c2Ugb2YgdGhlIFNlcnZpY2VzLjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPjxzdHJvbmc+TW9kaWZpY2F0aW9uIG9mIHRoZSBUZXJtcy48L3N0cm9uZz4mbmJzcDtUcmlidXRlIFRlY2hub2xvZ3kgcmVzZXJ2ZXMgdGhlIHJpZ2h0IGF0IGFueSB0aW1lIHRvIG1vZGlmeSB0aGVzZSBUZXJtcyBhbmQgdG8gaW1wb3NlIG5ldyBvciBhZGRpdGlvbmFsIHRlcm1zIG9yIGNvbmRpdGlvbnMgb24geW91ciB1c2Ugb2YgdGhlIFNlcnZpY2VzLiBTdWNoIG1vZGlmaWNhdGlvbnMgYW5kIGFkZGl0aW9uYWwgdGVybXMgYW5kIGNvbmRpdGlvbnMgd2lsbCBiZSBlZmZlY3RpdmUgaW1tZWRpYXRlbHkgYW5kIGluY29ycG9yYXRlZCBpbnRvIHRoZXNlIFRlcm1zIHVwb24gdXBkYXRpbmcgdGhlIHBvc3Rpbmcgb2YgdGhlc2UgVGVybXMuIFdlIHdpbGwgbWFrZSByZWFzb25hYmxlIGVmZm9ydHMgdG8gbm90aWZ5IHlvdSBvZiBhbnkgbWF0ZXJpYWwgY2hhbmdlcyB0byB0aGUgVGVybXMsIGluY2x1ZGluZyBieSB1cGRhdGluZyB0aGlzIHBvc3RpbmcuIFlvdSBzaG91bGQsIHRoZXJlZm9yZSwgcGVyaW9kaWNhbGx5IHZpc2l0IHRoaXMgcGFnZSB0byByZXZpZXcgdGhlIGN1cnJlbnQgVGVybXMsIHNvIHlvdSBhcmUgYXdhcmUgb2YgYW55IHN1Y2ggcmV2aXNpb25zIHRvIHdoaWNoIHlvdSBhcmUgYm91bmQuIFlvdXIgY29udGludWVkIHVzZSBvZiB0aGUgU2VydmljZXMgZm9sbG93aW5nIHJldmlzaW9ucyB0byB0aGVzZSBUZXJtcyB3aWxsIGJlIGRlZW1lZCBhY2NlcHRhbmNlIG9mIGFueSBtb2RpZmljYXRpb25zIHRvIHRoZSBUZXJtcy48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPkRpc2NsYWltZXJzIG9mIFdhcnJhbnRpZXMuPC9zdHJvbmc+Jm5ic3A7VEhFIFNFUlZJQ0VTIEFSRSBQUk9WSURFRCAmbGRxdW87QVMgSVMmcmRxdW87IEFORCBPTiBBTiAmbGRxdW87QVMgQVZBSUxBQkxFJnJkcXVvOyBCQVNJUywgV0lUSE9VVCBXQVJSQU5UWSBPUiBDT05ESVRJT04gT0YgQU5ZIEtJTkQsIEVJVEhFUiBFWFBSRVNTIE9SIElNUExJRUQuJm5ic3A7IEFsdGhvdWdoIFRyaWJ1dGUgVGVjaG5vbG9neSBzZWVrcyB0byBtYWludGFpbiBzYWZlLCBzZWN1cmUsIGFjY3VyYXRlLCBhbmQgd2VsbC1mdW5jdGlvbmluZyBzZXJ2aWNlcywgd2UgY2Fubm90IGd1YXJhbnRlZSB0aGUgY29udGludW91cyBvcGVyYXRpb24gb2Ygb3IgYWNjZXNzIHRvIG91ciBTZXJ2aWNlcywgYW5kIHRoZXJlIG1heSBhdCB0aW1lcyBiZSBpbmFkdmVydGVudCB0ZWNobmljYWwgb3IgZmFjdHVhbCBlcnJvcnMgb3IgaW5hY2N1cmFjaWVzLiZuYnNwOyBUUklCVVRFIFRFQ0hOT0xPR1kgU1BFQ0lGSUNBTExZIChCVVQgV0lUSE9VVCBMSU1JVEFUSU9OKSBESVNDTEFJTVMgKEkpIEFOWSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSwgUVVBTElUWSBPRiBJTkZPUk1BVElPTiwgUVVJRVQgRU5KT1lNRU5ULCBBTkQgVElUTEUvTk9OLUlORlJJTkdFTUVOVDsgQU5EIChJSSkgQU5ZIFdBUlJBTlRJRVMgQVJJU0lORyBPVVQgT0YgQ09VUlNFLU9GLURFQUxJTkcsIFVTQUdFLCBPUiBUUkFERS4mbmJzcDsgWU9VIEFTU1VNRSBBTEwgUklTSyBGT1IgQU5ZL0FMTCBEQU1BR0VTIFRIQVQgTUFZIFJFU1VMVCBGUk9NIFlPVVIgVVNFIE9GIE9SIEFDQ0VTUyBUTyBUSEUgU0lURVMgQU5EIFRIRSBTRVJWSUNFUy4mbmJzcDsgVFJJQlVURSBURUNITk9MT0dZIERPRVMgTk9UIFdBUlJBTlQgT1IgR1VBUkFOVEVFIFRIRSBBQ0NVUkFDWSwgQ09NUExFVEVORVNTIE9SIFRJTUVMSU5FU1MgT0YsIEFORCBESVNDTEFJTVMgQUxMIExJQUJJTElUWSBGT1IsIEFOWSBFUlJPUlMgT1IgT1RIRVIgSU5BQ0NVUkFDSUVTIElOIFRIRSBJTkZPUk1BVElPTiwgQ09OVEVOVCwgUkVDT01NRU5EQVRJT05TIEFORCBNQVRFUklBTFMgTUFERSBBVkFJTEFCTEUgVEhST1VHSCBUSEUgU0lURVMgT1IgVEhFIFNFUlZJQ0VTLiBUUklCVVRFIFRFQ0hOT0xPR1kgRE9FUyBOT1QgV0FSUkFOVCBUSEFUIEZJTEVTIEFWQUlMQUJMRSBGT1IgRE9XTkxPQUQgV0lMTCBCRSBGUkVFIE9GIFZJUlVTRVMsIFdPUk1TLCBUUk9KQU4gSE9SU0VTIE9SIE9USEVSIERFU1RSVUNUSVZF
1697IFBST0dSQU1NSU5HLiBZT1UgQVJFIFJFU1BPTlNJQkxFIEZPUiBJTVBMRU1FTlRJTkcgUFJPQ0VEVVJFUyBTVUZGSUNJRU5UIFRPIFNBVElTRlkgWU9VUiBORUVEUyBGT1IgREFUQSBCQUNLIFVQIEFORCBTRUNVUklUWS48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPkxpbWl0YXRpb24gb2YgTGlhYmlsaXR5Ljwvc3Ryb25nPiZuYnNwO0lOIE5PIEVWRU5UIFdJTEwgVFJJQlVURSBURUNITk9MT0dZIE9SIElUUyBBRkZJTElBVEVTLCBWRU5ET1JTLCBTVVBQTElFUlMsIE9SIFBBUlRORVJTIEJFIExJQUJMRSBUTyBZT1UgRk9SIEFOWSBJTkNJREVOVEFMLCBTUEVDSUFMLCBDT05TRVFVRU5USUFMLCBJTkRJUkVDVCwgRVhFTVBMQVJZIE9SIFBVTklUSVZFIERBTUFHRVMgKElOQ0xVRElORywgV0lUSE9VVCBMSU1JVEFUSU9OLCBUSE9TRSBSRVNVTFRJTkcgRlJPTSBMT1NUIFBST0ZJVFMsIExPU1QgREFUQSwgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSwgV0hFVEhFUiBCQVNFRCBPTiBXQVJSQU5UWSwgQ09OVFJBQ1QsIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFKSwgU1RBVFVURSwgT1IgQU5ZIE9USEVSIExFR0FMIFRIRU9SWSwgV0hFVEhFUiBPUiBOT1QgVFJJQlVURSBURUNITk9MT0dZIEhBUyBCRUVOIElORk9STUVEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxwPk5PVFdJVEhTVEFORElORyBBTllUSElORyBUTyBUSEUgQ09OVFJBUlkgSU4gVEhFU0UgVEVSTVMsIFVOREVSIE5PIENJUkNVTVNUQU5DRVMgU0hBTEwgVFJJQlVURSBURUNITk9MT0dZJnJzcXVvO1MsIE9SIElUUyBBRkZJTElBVEUmcnNxdW87UywgVkVORE9SJnJzcXVvO1MsIFNVUFBMSUVSJnJzcXVvO1MsIE9SIFBBUlRORVImcnNxdW87UywgQUdHUkVHQVRFIExJQUJJTElUWSBUTyBZT1UgRVhDRUVEIFRIRSBMRVNTRVIgT0YgVEhFIEFNT1VOVCBZT1UgUEFJRCBUTyBVUyBGT1IgVEhFIFBST0RVQ1QgT1IgU0VSVklDRSBSRUxBVEVEIFRPIFRIRSBDTEFJTSwgSUYgQU5ZLCBPUiBPTkUgSFVORFJFRCBET0xMQVJTICgkMTAwKS4mbmJzcDsgU09NRSBKVVJJU0RJQ1RJT05TIERPIE5PVCBBTExPVyBUSEUgRElTQ0xBSU1FUiBPRiBXQVJSQU5USUVTIE9SIExJTUlUQVRJT04gT0YgTElBQklMSVRZIElOIENFUlRBSU4gQ0lSQ1VNU1RBTkNFUy4mbmJzcDsgQUNDT1JESU5HTFksIFNPTUUgT0YgVEhFIEFCT1ZFIExJTUlUQVRJT05TIE1BWSBOT1QgQVBQTFkgVE8gWU9VLjwvcD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPkludGVycHJldGF0aW9ucyBhbmQgRGlzcHV0ZXMuPC9zdHJvbmc+Jm5ic3A7WU9VIEFORCBUUklCVVRFIFRFQ0hOT0xPR1kgQVJFIEFHUkVFSU5HIFRPIEdJVkUgVVAgQU5ZIFJJR0hUUyBUTyBMSVRJR0FURSBDTEFJTVMgSU4gQSBDT1VSVCBPUiBCRUZPUkUgQSBKVVJZLCBPUiBUTyBQQVJUSUNJUEFURSBJTiBBIENMQVNTIEFDVElPTiBPUiBSRVBSRVNFTlRBVElWRSBBQ1RJT04gV0lUSCBSRVNQRUNUIFRPIEEgQ0xBSU0uJm5ic3A7IE9USEVSIFJJR0hUUyBUSEFUIFlPVSBXT1VMRCBIQVZFIElGIFlPVSBXRU5UIFRPIENPVVJUIE1BWSBBTFNPIEJFIFVOQVZBSUxBQkxFIE9SIE1BWSBCRSBMSU1JVEVEIElOIEFSQklUUkFUSU9OLjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPkFOWSBDTEFJTSwgRElTUFVURSBPUiBDT05UUk9WRVJTWSAoV0hFVEhFUiBJTiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIFdIRVRIRVIgUFJFLUVYSVNUSU5HLCBQUkVTRU5UIE9SIEZVVFVSRSwgQU5EIElOQ0xVRElORyBTVEFUVVRPUlksIENPTlNVTUVSIFBST1RFQ1RJT04sIENPTU1PTiBMQVcsIElOVEVOVElPTkFMIFRPUlQsIElOSlVOQ1RJVkUgQU5EIEVRVUlUQUJMRSBDTEFJTVMpIEJFVFdFRU4gWU9VIEFORCBVUyBBUklTSU5HIEZST00gT1IgUkVMQVRJTkcgSU4gQU5ZIFdBWSBUTyBUSEVTRSBURVJNUyBPUiBZT1VSIFVTRSBPRiBUSEUgU0lURSBPUiBTRVJWSUNFUywgSU5DTFVESU5HIEFOWSBQVVJDSEFTRSBPUiBVU0UgT0YgT1VSIFNFUlZJQ0VTIE9SIFBST0RVQ1RTLCBXSUxMIEJFIFJFU09MVkVEIEVYQ0xVU0lWRUxZIEFORCBGSU5BTExZIEJZIEJJTkRJTkcgQVJCSVRSQVRJT04uPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2wgc3RhcnQ9Ijc4NzkiPg0KPGxpPklmIHRoZSBsb2NhdGlvbiBvZiB0aGUgYnVzaW5lc3MgYWRkcmVzcyBvZiB0aGUgQ2xpZW50LCBvciBvdGhlciBidXNpbmVzcyBvbiB3aG9zZSB3ZWJzaXRlIHRoZXNlIFRlcm1zIGFwcGVhciwgaXMgaW4gdGhlIFVuaXRlZCBTdGF0ZXMgb3IgYW55d2hlcmUgZWxzZSBpbiB0aGUgd29ybGQgb3V0c2lkZSBvZiBDYW5hZGEsIGFyYml0cmF0aW9uIHdpbGwgYmUgYWRtaW5pc3RlcmVkIGJ5IHRoZSBBbWVyaWNhbiBBcmJpdHJhdGlvbiBBc3NvY2lhdGlvbiAoJmxkcXVvO0FBQSZyZHF1bzspIGluIGFjY29yZGFuY2Ugd2l0aCBlaXRoZXIgdGhlIENvbnN1bWVyIEFyYml0cmF0aW9uIFJ1bGVzIG9yIHRoZSBDb21tZXJjaWFsIEFyYml0cmF0aW9uIFJ1bGVzIGFzIGFwcGxpY2FibGUgKHRoZSAmbGRxdW87QUFBIFJ1bGVzJnJkcXVvOykgdGhlbiBpbiBlZmZlY3QsIGV4Y2VwdCBhcyBtb2RpZmllZCBieSB0aGlzIFNlY3Rpb24gMTIsIGFuZCB0aGUgRmVkZXJhbCBBcmJpdHJhdGlvbiBBY3QgKCZsZHF1bztGQUEmcmRxdW87KSB3aWxsIGdvdmVybiB0aGUgaW50ZXJwcmV0YXRpb24gYW5kIGVuZm9yY2VtZW50IG9mIHRoaXMgU2VjdGlvbiAxMjsgcHJvdmlkZWQsIHRoYXQgaWYgdGhlIEZBQSBpcyBpbmFwcGxpY2FibGUgZm9yIGFueSByZWFzb24sIHRoZSBhcHBsaWNhYmxlIGdvdmVybmluZyBsYXcgaWRlbnRpZmllZCBpbiB0aGUgdGFibGUgaW4gU2VjdGlvbiAxMyBzaGFsbCBhcHBseSwgaW5jbHVkaW5nIHdpdGggcmVzcGVjdCB0byBEZWxhd2FyZSBsYXcsIERlbC4gQ29kZSB0aXQuIDEwICZzZWN0OyA1NzAxIGV0IHNlcSwgd2l0aG91dCByZWdhcmQgdG8gY2hvaWNlIG9mIGxhdyBwcmluY2lwbGVzLiAoVGhlIEFBQSBSdWxlcyBhcmUgYXZhaWxhYmxlIGF0IGFkci5vcmcgb3IgYnkgY2FsbGluZyB0aGUgQUFBIGF0IDEtODAwLTc3OC03ODc5LikgVW5sZXNzIHlvdSBhbmQgd2UgbXV0dWFsbHkgYWdyZWUgb3RoZXJ3aXNlLCBhbnkgaW4tcGVyc29uIGFyYml0cmF0aW9uIGhlYXJpbmdzIGJldHdlZW4geW91IGFuZCB1cyB3aWxsIHRha2UgcGxhY2UgaW4gdGhlIGFwcGxpY2FibGUganVyaXNkaWN0aW9uIGxpc3RlZCBpbiB0aGUgdGFibGUgaW4gU2VjdGlvbiAxMyBiZWxvdy48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxvbCBzdGFydD0iODQ1Ij4NCjxsaT5JZiB0aGUgbG9jYXRpb24gb2YgdGhlIGJ1c2luZXNzIGFkZHJlc3Mgb2YgdGhlIENsaWVudCwgb3Igb3RoZXIgYnVzaW5lc3Mgb24gd2hvc2Ugd2Vic2l0ZSB0aGVzZSBUZXJtcyBhcHBlYXIsIGlzIGluIENhbmFkYSwgYXJiaXRyYXRpb24gd2lsbCBiZSBhZG1pbmlzdGVyZWQgYnkgdGhlIEludGVybmF0aW9uYWwgQ2VudHJlIGZvciBEaXNwdXRlIFJlc29sdXRpb24gQ2FuYWRhICgmbGRxdW87SUNEUiBDYW5hZGEmcmRxdW87KSBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIENhbmFkaWFuIEFyYml0cmF0aW9uIFJ1bGVzICh0aGUgJmxkcXVvO0lDRFIgQ2FuYWRhIEFyYml0cmF0aW9uIFJ1bGVzJnJkcXVvOykgdGhlbiBpbiBlZmZlY3QsIGV4Y2VwdCBhcyBtb2RpZmllZCBieSB0aGlzIFNlY3Rpb24uIChUaGUgSUNEUiBDYW5hZGEgQXJiaXRyYXRpb24gUnVsZXMgYXJlIGF2YWlsYWJsZSBhdCBJQ0RSLm9yZyBvciBieSBjYWxsaW5nIHRoZSBJQ0RSIENhbmFkYSBhdCAxLTg0NC04NTktMDg0NS4pIFRoZSBzZWF0IG9mIGFyYml0cmF0aW9uIHNoYWxsIGJlIFRvcm9udG8sIE9udGFyaW8uIFVubGVzcyB5b3UgYW5kIHdlIG11dHVhbGx5IGFncmVlIG90aGVyd2lzZSwgYW55IGluLXBlcnNvbiBhcmJpdHJhdGlvbiBoZWFyaW5ncyBiZXR3ZWVuIHlvdSBhbmQgdXMgd2lsbCB0YWtlIHBsYWNlIGluIHRoZSBhcHBsaWNhYmxlIGp1cmlzZGljdGlvbiBsaXN0ZWQgaW4gdGhlIHRhYmxlIGluIFNlY3Rpb24gMTMgYmVsb3cuPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+RXhjZXB0IGFzIHByb3ZpZGVkIGhlcmVpbiwgdGhlIGFyYml0cmF0b3Igd2lsbCB
1697oYXZlIGV4Y2x1c2l2ZSBhdXRob3JpdHkgdG8gcmVzb2x2ZSBhbnkgZGlzcHV0ZSByZWxhdGluZyB0byBhcmJpdHJhYmlsaXR5IGFuZC9vciBlbmZvcmNlYWJpbGl0eSBvZiB0aGlzIGFyYml0cmF0aW9uIHByb3Zpc2lvbiwgaW5jbHVkaW5nIGFueSB1bmNvbnNjaW9uYWJpbGl0eSBjaGFsbGVuZ2Ugb3IgYW55IG90aGVyIGNoYWxsZW5nZSB0aGF0IHRoZSBhcmJpdHJhdGlvbiBwcm92aXNpb24gb3IgdGhlIFRlcm1zIGFyZSB2b2lkLCB2b2lkYWJsZSBvciBvdGhlcndpc2UgaW52YWxpZC4gVGhlIGFyYml0cmF0b3Igd2lsbCBiZSBlbXBvd2VyZWQgdG8gZ3JhbnQgd2hhdGV2ZXIgcmVsaWVmIHdvdWxkIGJlIGF2YWlsYWJsZSBpbiBjb3VydCB1bmRlciBsYXcgb3IgaW4gZXF1aXR5LiZuYnNwOyBBbnkgYXdhcmQgb2YgdGhlIGFyYml0cmF0b3Iocykgd2lsbCBiZSBmaW5hbCBhbmQgYmluZGluZyBvbiBlYWNoIG9mIHRoZSBwYXJ0aWVzIGFuZCBtYXkgYmUgZW50ZXJlZCBhcyBhIGp1ZGdtZW50IGluIGFueSBjb3VydCBvZiBjb21wZXRlbnQganVyaXNkaWN0aW9uLiBZb3UgYW5kIHdlIGFncmVlIHRoYXQgbmVpdGhlciBwYXJ0eSBzaGFsbCBhcHBlYWwgYW55IGF3YXJkIG9mIHRoZSBhcmJpdHJhdG9yLCBpbmNsdWRpbmcgYW55IGFwcGVhbCBvbiBhIHF1ZXN0aW9uIG9mIGxhdywgcXVlc3Rpb24gb2YgZmFjdCBvciBxdWVzdGlvbiBvZiBtaXhlZCBmYWN0IGFuZCBsYXcuJm5ic3A7PC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+V2Ugd2lsbCBiZSByZXNwb25zaWJsZSBmb3IgcGF5aW5nIGFueSBpbmRpdmlkdWFsIGNvbnN1bWVyJnJzcXVvO3MgYXJiaXRyYXRpb24vYXJiaXRyYXRvciBmZWVzLiBJZiBhbiBpbmRpdmlkdWFsIGNvbnN1bWVyIHByZXZhaWxzIG9uIGFueSBjbGFpbSB0aGF0IGFmZm9yZHMgdGhlIHByZXZhaWxpbmcgcGFydHkgYXR0b3JuZXlzJyBmZWVzLCB0aGUgYXJiaXRyYXRvciBtYXkgYXdhcmQgcmVhc29uYWJsZSBmZWVzIHRvIHlvdSB1bmRlciB0aGUgc3RhbmRhcmRzIGZvciBmZWUgc2hpZnRpbmcgcHJvdmlkZWQgYnkgbGF3LiZuYnNwOyBGb3IgdGhlIGF2b2lkYW5jZSBvZiBkb3VidCwgdGhpcyBTZWN0aW9uIDEyKEUpIHNoYWxsIG9ubHkgYXBwbHkgdG8gaW5kaXZpZHVhbCBjb25zdW1lcnMuJm5ic3A7PC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+WW91IGFncmVlIHRvIGFuIGFyYml0cmF0aW9uIG9uIGFuIGluZGl2aWR1YWwgYmFzaXMuIEluIGFueSBkaXNwdXRlLCBORUlUSEVSIFlPVSBOT1IgVFJJQlVURSBURUNITk9MT0dZIFdJTEwgQkUgRU5USVRMRUQgVE8gSk9JTiBPUiBDT05TT0xJREFURSBDTEFJTVMgQlkgT1IgQUdBSU5TVCBPVEhFUiBDVVNUT01FUlMgSU4gQ09VUlQgT1IgSU4gQVJCSVRSQVRJT04gT1IgT1RIRVJXSVNFIFBBUlRJQ0lQQVRFIElOIEFOWSBDTEFJTSBBUyBBIENMQVNTIFJFUFJFU0VOVEFUSVZFLCBDTEFTUyBNRU1CRVIgT1IgSU4gQSBQUklWQVRFIEFUVE9STkVZIEdFTkVSQUwgQ0FQQUNJVFkuJm5ic3A7IFRoZSBhcmJpdHJhbCB0cmlidW5hbCBzaGFsbCBub3QgY29uc29saWRhdGUgbW9yZSB0aGFuIG9uZSBwZXJzb24ncyBjbGFpbXMgYW5kIHNoYWxsIG5vdCBvdGhlcndpc2UgcHJlc2lkZSBvdmVyIGFueSBmb3JtIG9mIGEgcmVwcmVzZW50YXRpdmUgb3IgY2xhc3MgcHJvY2VlZGluZy4mbmJzcDsgVGhlIGFyYml0cmFsIHRyaWJ1bmFsIGhhcyBubyBwb3dlciB0byBjb25zaWRlciB0aGUgZW5mb3JjZWFiaWxpdHkgb2YgdGhpcyBjbGFzcyBhcmJpdHJhdGlvbiB3YWl2ZXIgYW5kIGFueSBjaGFsbGVuZ2UgdG8gdGhlIGNsYXNzIGFyYml0cmF0aW9uIHdhaXZlciBtYXkgb25seSBiZSByYWlzZWQgaW4gYSBjb3VydCBvZiBjb21wZXRlbnQganVyaXNkaWN0aW9uIGxvY2F0ZWQgaW4gdGhlIGp1cmlzZGljdGlvbiBzZXQgZm9ydGggaW4gU2VjdGlvbiAxMyBiZWxvdy4mbmJzcDs8L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT5JZiBhbnkgcHJvdmlzaW9uIG9mIHRoaXMgU2VjdGlvbiBpcyBmb3VuZCB1bmVuZm9yY2VhYmxlLCB0aGUgdW5lbmZvcmNlYWJsZSBwcm92aXNpb24gd2lsbCBiZSBzZXZlcmVkIGFuZCB0aGUgcmVtYWluaW5nIGFyYml0cmF0aW9uIHRlcm1zIHdpbGwgYmUgZW5mb3JjZWQ7IHByb3ZpZGVkLCB0aGF0IGluIHRoZSBldmVudCBzdWJzZWN0aW9uIChGKSBpcyBmb3VuZCB0byBiZSB1bmVuZm9yY2VhYmxlLCBhbGwgb2YgdGhpcyBTZWN0aW9uIDEyIHNoYWxsIGJlIGRlZW1lZCBudWxsIGFuZCB2b2lkIGFuZCBvZiBubyBlZmZlY3QuPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+PHN0cm9uZz5Db250cmFjdGluZyBFbnRpdHk7IEdvdmVybmluZyBMYXcuPC9zdHJvbmc+Jm5ic3A7IEFsbCByZWZlcmVuY2VzIHRvICZsZHF1bztUcmlidXRlIFRlY2hub2xvZ3ksJnJkcXVvOyAmbGRxdW87d2UsJnJkcXVvOyAmbGRxdW87dXMmcmRxdW87IG9yICZsZHF1bztvdXImcmRxdW87IGluIHRoZSBUZXJtcyByZWZlciB0byB0aGUgYXBwbGljYWJsZSBlbnRpdHkgc3BlY2lmaWVkIGluIHRoZSB0YWJsZSBiZWxvdywgd2hpY2ggaXMgYmFzZWQgb24gdGhlIGxvY2F0aW9uIG9mIHRoZSBidXNpbmVzcyBhZGRyZXNzIG9mIHRoZSBDbGllbnQgb3Igb3RoZXIgYnVzaW5lc3Mgb24gd2hvc2Ugd2Vic2l0ZSB0aGVzZSBUZXJtcyBhcHBlYXIsIGFzIHBvc3RlZCBvbiBzdWNoIHdlYnNpdGUuIEFkZGl0aW9uYWxseSwgdGhlc2UgVGVybXMgYXJlIGdvdmVybmVkIGJ5IHRoZSBsYXdzIG9mIHRoZSBzdGF0ZSBvciBwcm92aW5jZSBpZGVudGlmaWVkIGluIHRoZSB0YWJsZSBiZWxvdywgYWdhaW4gYmFzZWQgb24gdGhlIGxvY2F0aW9uIG9mIHRoZSBidXNpbmVzcyBhZGRyZXNzIG9mIHRoZSBDbGllbnQgb3Igb3RoZXIgYnVzaW5lc3Mgb24gd2hvc2Ugd2Vic2l0ZSB0aGVzZSBUZXJtcyBhcHBlYXIsIGFuZCB3aXRob3V0IHJlZ2FyZCB0byBjb25mbGljdCBvZiBsYXcgcHJpbmNpcGxlcy4mbmJzcDsgVG8gdGhlIGV4dGVudCB0aGF0IGFueSBsYXdzdWl0IG9yIGNvdXJ0IHByb2NlZWRpbmcgaXMgcGVybWl0dGVkIGhlcmV1bmRlciwgeW91IGFuZCBUcmlidXRlIFRlY2hub2xvZ3kgYWdyZWUgdG8gc3VibWl0IHRvIHRoZSBleGNsdXNpdmUgcGVyc29uYWwganVyaXNkaWN0aW9uIG9mIHRoZSBjb3VydHMgbG9jYXRlZCBpbiBhbmQgZm9yIHRoZSAmcmRxdW87RXhjbHVzaXZlIEp1cmlzZGljdGlvbiZyZHF1bzsgaWRlbnRpZmllZCBpbiB0aGUgdGFibGUgYmVsb3csIGZvciB0aGUgcHVycG9zZSBvZiBsaXRpZ2F0aW5nIGFsbCBzdWNoIGRpc3B1dGVzLiZuYnNwOyBBbnkgY2F1c2Ugb2YgYWN0aW9uIG9yIGNsYWltIHdpdGggcmVzcGVjdCB0byB0aGUgU2l0ZXMgb3IgdGhlIFNlcnZpY2VzIG11c3QgYmUgY29tbWVuY2VkIHdpdGhpbiB0d28gKDIpIHllYXJzIGFmdGVyIHRoZSBhY3Rpb24gb3IgY2xhaW0gYXJpc2VzIG9yIGlzIGRpc2NvdmVyZWQuPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8dGFibGU+DQo8dGJvZHk+DQo8dHI+DQo8dGQgd2lkdGg9IjEzNiI+DQo8cD48c3Ryb25nPkxvY2F0aW9uIG9mIEJ1c2luZXNzIEFkZHJl
1697c3M8L3N0cm9uZz48L3A+DQo8L3RkPg0KPHRkIHdpZHRoPSIxNjEiPg0KPHA+PHN0cm9uZz5BcHBsaWNhYmxlIENvbnRyYWN0aW5nIEVudGl0eTwvc3Ryb25nPjwvcD4NCjwvdGQ+DQo8dGQgd2lkdGg9IjEwNyI+DQo8cD48c3Ryb25nPkdvdmVybmluZyBMYXc8L3N0cm9uZz48L3A+DQo8L3RkPg0KPHRkIHdpZHRoPSIxNjAiPg0KPHA+PHN0cm9uZz5FeGNsdXNpdmUgSnVyaXNkaWN0aW9uPC9zdHJvbmc+PC9wPg0KPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQgd2lkdGg9IjEzNiI+DQo8cD5DYW5hZGE8L3A+DQo8L3RkPg0KPHRkIHdpZHRoPSIxNjEiPg0KPHA+VHJpYnV0ZSBUZWNobm9sb2d5IENhbmFkYSwgVUxDLCBhIEJyaXRpc2ggQ29sdW1iaWEgdW5saW1pdGVkIGxpYWJpbGl0eSBjb21wYW55PC9wPg0KPC90ZD4NCjx0ZCB3aWR0aD0iMTA3Ij4NCjxwPk9udGFyaW88L3A+DQo8L3RkPg0KPHRkIHdpZHRoPSIxNjAiPg0KPHA+VG9yb250bywgT250YXJpbzwvcD4NCjwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkIHdpZHRoPSIxMzYiPg0KPHA+VW5pdGVkIFN0YXRlcyBhbmQgdGhlIHJlc3Qgb2YgdGhlIHdvcmxkIG91dHNpZGUgQ2FuYWRhPC9wPg0KPC90ZD4NCjx0ZCB3aWR0aD0iMTYxIj4NCjxwPlRyaWJ1dGUgVGVjaG5vbG9neSBVUywgTExDLCBhIERlbGF3YXJlIGxpbWl0ZWQgbGlhYmlsaXR5IGNvbXBhbnk8L3A+DQo8L3RkPg0KPHRkIHdpZHRoPSIxMDciPg0KPHA+RGVsYXdhcmU8L3A+DQo8L3RkPg0KPHRkIHdpZHRoPSIxNjAiPg0KPHA+TWFkaXNvbiwgV2lzY29uc2luPC9wPg0KPC90ZD4NCjwvdHI+DQo8L3Rib2R5Pg0KPC90YWJsZT4NCjxwPiZuYnNwOzwvcD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPk1vZGlmaWNhdGlvbiBvZiB0aGUgU2l0ZXMgYW5kIFNlcnZpY2VzLjwvc3Ryb25nPiZuYnNwO1RyaWJ1dGUgVGVjaG5vbG9neSByZXNlcnZlcyB0aGUgcmlnaHQgdG8gbW9kaWZ5IG9yIGRpc2NvbnRpbnVlLCB0ZW1wb3JhcmlseSBvciBwZXJtYW5lbnRseSwgc29tZSBvciBhbGwgb2YgdGhlIFNpdGVzIGFuZCBTZXJ2aWNlcyBhdCBhbnkgdGltZSB3aXRob3V0IGFueSBub3RpY2Ugb3IgZnVydGhlciBvYmxpZ2F0aW9uIHRvIHlvdS4gWW91IGFncmVlIHRoYXQgVHJpYnV0ZSBUZWNobm9sb2d5IHdpbGwgbm90IGJlIGxpYWJsZSB0byB5b3Ugb3IgdG8gYW55IHRoaXJkIHBhcnR5IGZvciBhbnkgbW9kaWZpY2F0aW9uLCBzdXNwZW5zaW9uLCBvciBkaXNjb250aW51YW5jZSBvZiBhbnkgb2YgdGhlIFNpdGVzIG9yIFNlcnZpY2VzLjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPjxzdHJvbmc+R2VuZXJhbC48L3N0cm9uZz48L2xpPg0KPC9vbD4NCjxvbD4NCjxvbD4NCjxsaT48dT5FbnRpcmUgQWdyZWVtZW50PC91Pi4gVW5sZXNzIG90aGVyd2lzZSBleHByZXNzbHkgc3RhdGVkIGhlcmVpbiBvciBhbm90aGVyIHdyaXR0ZW4gYWdyZWVtZW50IGJldHdlZW4geW91IGFuZCBUcmlidXRlIFRlY2hub2xvZ3ksIHRoZXNlIFRlcm1zIGNvbnN0aXR1dGUgdGhlIGVudGlyZSBhbmQgZXhjbHVzaXZlIHVuZGVyc3RhbmRpbmcgYW5kIGFncmVlbWVudCBiZXR3ZWVuIHlvdSBhbmQgVHJpYnV0ZSBUZWNobm9sb2d5IHJlZ2FyZGluZyB5b3VyIHVzZSBvZiBhbmQgYWNjZXNzIHRvIHRoZSBTaXRlcyBhbmQgU2VydmljZXMsIGFuZCBleGNlcHQgYXMgZXhwcmVzc2x5IHBlcm1pdHRlZCBhYm92ZSBtYXkgb25seSBiZSBhbWVuZGVkIGJ5IGEgd3JpdHRlbiBhZ3JlZW1lbnQgc2lnbmVkIGJ5IGF1dGhvcml6ZWQgcmVwcmVzZW50YXRpdmVzIG9mIHRoZSBwYXJ0aWVzLjwvbGk+DQo8bGk+PHU+Tm8gV2FpdmVyPC91Pi4gVGhlIGZhaWx1cmUgdG8gcmVxdWlyZSBwZXJmb3JtYW5jZSBvZiBhbnkgcHJvdmlzaW9uIHNoYWxsIG5vdCBhZmZlY3Qgb3VyIHJpZ2h0IHRvIHJlcXVpcmUgcGVyZm9ybWFuY2UgYXQgYW55IHRpbWUgdGhlcmVhZnRlciwgbm9yIHNoYWxsIGEgd2FpdmVyIG9mIGFueSBicmVhY2ggb3IgZGVmYXVsdCBvZiB0aGUgVGVybXMgY29uc3RpdHV0ZSBhIHdhaXZlciBvZiBhbnkgc3Vic2VxdWVudCBicmVhY2ggb3IgZGVmYXVsdCBvciBhIHdhaXZlciBvZiB0aGUgcHJvdmlzaW9uIGl0c2VsZi48L2xpPg0KPGxpPjx1PlBhcmFncmFwaCBIZWFkZXJzPC91Pi4gVXNlIG9mIHBhcmFncmFwaCBoZWFkZXJzIGluIHRoZSBUZXJtcyBpcyBmb3IgY29udmVuaWVuY2Ugb25seSBhbmQgc2hhbGwgbm90IGhhdmUgYW55IGltcGFjdCBvbiB0aGUgaW50ZXJwcmV0YXRpb24gb2YgcGFydGljdWxhciBwcm92aXNpb25zLjwvbGk+DQo8bGk+PHU+U2V2ZXJhYmlsaXR5PC91Pi4gSW4gdGhlIGV2ZW50IHRoYXQgYW55IHBhcnQgb2YgdGhlIFRlcm1zIGlzIGhlbGQgdG8gYmUgaW52YWxpZCBvciB1bmVuZm9yY2VhYmxlLCB0aGUgdW5lbmZvcmNlYWJsZSBwYXJ0IHNoYWxsIGJlIGdpdmVuIGVmZmVjdCB0byB0aGUgZ3JlYXRlc3QgZXh0ZW50IHBvc3NpYmxlIGFuZCB0aGUgcmVtYWluaW5nIHBhcnRzIHdpbGwgcmVtYWluIGluIGZ1bGwgZm9yY2UgYW5kIGVmZmVjdC48L2xpPg0KPC9vbD4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+PHN0cm9uZz5Ob3RpY2UgdG8gQ2FsaWZvcm5pYSBSZXNpZGVudHMuPC9zdHJvbmc+Jm5ic3A7VW5kZXIgQ2FsaWZvcm5pYSBDaXZpbCBDb2RlIFNlY3Rpb24gMTc4OS4zLCB5b3UgbWF5IGNvbnRhY3QgdGhlIENvbXBsYWludCBBc3Npc3RhbmNlIFVuaXQgb2YgdGhlIERpdmlzaW9uIG9mIENvbnN1bWVyIFNlcnZpY2VzIG9mIHRoZSBDYWxpZm9ybmlhIERlcGFydG1lbnQgb2YgQ29uc3VtZXIgQWZmYWlycyBpbiB3cml0aW5nIGF0IDE2MjUgTi4gTWFya2V0IEJsdmQuLCBTdWl0ZSBOLTExMiwgU2FjcmFtZW50bywgQ2FsaWZvcm5pYSA5NTgzNCwgb3IgYnkgdGVsZXBob25lIGF0ICg4MDApIDk1Mi01MjEwIGluIG9yZGVyIHRvIHJlc29sdmUgYSBjb21wbGFpbnQgcmVnYXJkaW5nIHRoZSBzZXJ2aWNlIG9yIHRvIHJlY2VpdmUgZnVydGhlciBpbmZvcm1hdGlvbiByZWdhcmRpbmcgdXNlIG9mIHRoZSBzZXJ2aWNlLjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPC9kaXY+DQo8ZGl2IGlkPSIxNTc1OTQ5NjI0IiBjbGFzcz0iZG1OZXdQYXJhZ3JhcGgiIGRhdGEtZWxlbWVudC10eXBlPSJwYXJhZ3JhcGgiIGRhdGEtdmVyc2lvbj0iNSI+PC9kaXY+
1698</div>
1699    
1700
1701<div class="base64" style="display: none" id="accessibility">
1702    PHA+V2UgYXJlIGNvbW1pdHRlZCB0byBpbXByb3ZpbmcgYW5kIG1haW50YWluaW5nIGEgd2Vic2l0ZSB0aGF0IGlzIGFjY2Vzc2libGUgdG8gdGhlIHdpZGVzdCBwb3NzaWJsZSBhdWRpZW5jZSwgcmVnYXJkbGVzcyBvZiB0ZWNobm9sb2d5IG9yIGFiaWxpdHkuIElmIHlvdSBleHBlcmllbmNlIGFueSBkaWZmaWN1bHR5IGluIGFjY2Vzc2luZyBhbnkgcGFydCBvZiB0aGlzIHdlYnNpdGUsIHBsZWFzZSBmZWVsIGZyZWUgdG8gY2FsbCBvdXIgd2Vic2l0ZSBwcm92aWRlciBhdCA4NDQtMjAwLTYwMjAgb3IgZW1haWwgdGhlbSBhdCB3ZWJzaXRlc0B0cmlidXRldGVjaC5jb20sIG9yIGNvbnRhY3QgdXMgZGlyZWN0bHkuIE5vdGUgdGhhdCBvdXIgZWZmb3J0cyBhcmUgb25nb2luZywgYW5kIHdlIGFyZSBjb21taXR0ZWQgdG8gcHJvdmlkaW5nIHRoZSBpbmZvcm1hdGlvbiwgaXRlbSwgb3IgdHJhbnNhY3Rpb24geW91IHNlZWsgdGhyb3VnaCBhbiBhbHRlcm5hdGUgY29tbXVuaWNhdGlvbiBtZXRob2QgdGhhdCBpcyBhY2Nlc3NpYmxlIGZvciB5b3UuPC9wPg==
1703</div>
1704</div>
1705    </div>
1706        </div>
1707    </div>
1708</footer>
1709
1710
1711
1712    
1712<script>
1713        WebFontConfig.google.families.push('Libre+Baskerville:400,400i,700');
1714    </script>
1714
1715
1716
1717<div class="page-loader-wrapper active">
1718    <div class="page-loader">Loading...</div>
1719</div>
1720<div class="obit-popups-container"></div>
1721
1722
1723
1724
1725    <div class="printable"></div>
1726    
1727    
1728
1729    
1729<script type="text/javascript">
1730        $(document).ready(function() {
1731            if (!!$.fn.superbox) $.superbox();
1732            var showHomePage = 'false';
1733
1734            /* mobile menu actions */
1735            $('.navbar-toggle').on('click', toogleMobileMenu);
1736            $(window).on('resize', closeMobileMenu);
1737
1738            /* desctop menu actions */
1739            $(window).on('scroll', function() {
1740                fixedDesctopHeader(showHomePage);
1741            });
1742
1743            /* loader actions */
1744            /* hide loader */
1745            $('.page-loader-wrapper').removeClass('active');
1746
1747            window.ctrlIsPressed = false;
1748            $(document).keydown(function($event) { if($event.which === 17) { window.ctrlIsPressed = true; } });
1749            $(document).keyup(function($event) { if($event.which === 17) { window.ctrlIsPressed = false; } });
1750
1751            /* show loader */
1752            $('#mobile-navbar a').on('click', function (e) {
1753                var target = $(e.target);
1754                target.next('.dropdown-menu').fadeToggle();
1755                if (target.attr('href') &&  target.attr('href').indexOf("#") === -1) {
1756                    /* $('.page-loader-wrapper').addClass('active');*/
1757                     closeMobileMenu();
1758                }
1759             });
1760
1761            $('#navbar a').on('click', function (e) {
1762                var target = $(e.target);
1763                if (target.attr('href') &&  target.attr('href').indexOf("#") === -1 && !window.ctrlIsPressed) {
1764                   /* $('.page-loader-wrapper').addClass('active');*/
1765                    closeMobileMenu();
1766                }
1767            });
1768
1769
1770            FrazerMaps.ShowMaps($(".map-box"));
1771
1772            DailySubscribeInit();
1773        });
1774
1775        /* mobile menu functions */
1776        function toogleMobileMenu(e) {
1777            if (e) {
1778                e.preventDefault();
1779                e.stopPropagation();
1780            }
1781            //$('.home-contact-us-wrapper').removeClass('obit-page');
1782            $('#mobile-navbar, .main-header').toggleClass('active');
1783            $('.navbar-toggle.btn.btn-primary').toggleClass('collapsed');
1784        }
1785
1786        function closeMobileMenu() {
1787            $('.navbar-toggle:not(.collapsed)').click();
1788        }
1789
1790        /* desctop menu functions */
1791        function fixedDesctopHeader(hasHomeButton) {
1792            if ($(window).scrollTop() > 100) {
1793                $('.main-header').addClass('fixed');
1794                if (!!hasHomeButton) {
1795                    if ($('.main-header').hasClass('hide-logo-on-scroll') && !$('#navbar > li').first().hasClass('homeLink') ) {
1796                        $('#navbar').prepend('<li class="homeLink"><a href="/">Home</a></li>');
1797                    }
1798                }
1799            } else {
1800                $('.main-header').removeClass('fixed');
1801                if (!!hasHomeButton) {
1802                    if ($('.main-header').hasClass('hide-logo-on-scroll') ) {
1803                        $('#navbar .homeLink').remove();
1804                    }
1805                }
1806            }
1807        }
1808
1809        function DailySubscribeInit() {
1810            $(".dailySubsControls button").click(function () {
1811                subscribeToDailyEmails(this, '6384e0b9-8ec4-431d-96a1-75c3cb573fd0', '/FunHelper/SubscribeToDailyEmails');
1812            });
1813        }
1814    </script>
1814
1815
1816    
1817        
1817<script type="application/ld+json">
1818        {
1819            "@context": "https://schema.org",
1820            "@type": "BreadcrumbList",
1821            "name": "Site Navigation",
1822            "itemListElement": [
1823              {
1824                "@type": "ListItem",
1825                "position": 1,
1826                "item": "https://www.geesey-ferguson.com/",
1827                "name": "Home"
1828              },
1829              {
1830                "@type": "ListItem",
1831                "position": 2,
1832                "item": "https://www.geesey-ferguson.com/obituaries/obituary-listings",
1833                "name": "Obituaries"
1834              },
1835              {
1836                "@type": "ListItem",
1837                "position": 3,
1838                "item": "https://www.geesey-ferguson.com/services/where-to-begin",
1839                "name": "Services"
1840              },
1841              {
1842                "@type": "ListItem",
1843                "position": 4,
1844                "item": "https://www.geesey-ferguson.com/preplan/why-plan-ahead",
1845                "name": "Preplan"
1846              },
1847              {
1848                "@type": "ListItem",
1849                "position": 5,
1850                "item": "https://www.geesey-ferguson.com/resources/grief-support",
1851                "name": "Resources"
1852              },
1853              {
1854                "@type": "ListItem",
1855                "position": 6,
1856                "item": "https://www.geesey-ferguson.com/who-we-are/history-and-staff",
1857                "name": "Who We Are"
1858              },
1859              {
1860                "@type": "ListItem",
1861                "position": 7,
1862                "item": "https://www.geesey-ferguson.com/contact/overview",
1863                "name": "Contact"
1864              }
1865            ]
1866        }
1867        </script>
1867
1868
1869    
1870
1871        
1871<script type="application/ld+json">
1872            
1873                {
1874                "@context": "https://schema.org",
1875                "@type": "LocalBusiness",
1876                "name": "Geesey-Ferguson Funeral Home",
1877                    "url": "www.geesey-ferguson.com",
1878                "address": {
1879                    "@type": "PostalAddress",
1880                        "addressCountry": "United States",
1881                                            "addressLocality": "Crowley",
1882                                            "addressRegion": "LA",
1883                                            "postalCode": "70526",
1884                                            "streetAddress": "301 North Avenue F"
1885                },
1886                    "email": "[email protected],[email protected]",
1887                                    "telephone": "(337) 783-3313",
1888                                                                    "faxNumber": "(337) 783-8960",
1889                                    "image": "https://d1cq4ou4t4y4do.cloudfront.net/images/no-logo-image.png",
1890                                    
1891                        "geo": {
1892                        "@type": "GeoCoordinates",
1893                        "latitude": "30.2113927000000000",
1894                        "longitude": "-92.3736734000000000"
1895                        }
1896                    
1897                                            }
1898            
1899
1900        </script>
1900
1901
1902
1903
1904
1905
1906
1907<script>
1908        function loadScript(src, callback) {
1909            let script = document.createElement('script');
1910            script.src = src;
1911
1912            script.onload = () => callback(null, script);
1913            script.onerror = () => callback(new Error('Script load error for ' + src));
1914
1915            document.head.append(script);
1916        }
1917
1918        (function () {
1919            var wf = document.createElement('script');
1920            wf.src = ('https:' == document.location.protocol ? 'https' : 'http') +
1921                '://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js';
1922            wf.type = 'text/javascript';
1923            wf.async = 'true';
1924            var s = document.getElementsByTagName('script')[0];
1925            s.parentNode.insertBefore(wf, s);
1926
1927            var galleriaItem = document.getElementsByClassName('galleria');
1928            if (galleriaItem.length !== 0) {
1929                loadScript('https://cdnjs.cloudflare.com/ajax/libs/galleria/1.6.1/galleria.min.js', function (error, script) {
1930                    if (error) {
1931                        // handle error
1932                    } else {
1933                        Galleria.loadTheme('https://cdnjs.cloudflare.com/ajax/libs/galleria/1.6.1/themes/classic/galleria.classic.min.js');
1934                        Galleria.run('.galleria');
1935                    }
1936                });
1937            }
1938        })();
1939
1940        // Travel Insurance link
1941        function utf8Encode(string) {
1942            const encoder = new TextEncoder()
1943            return encoder.encode('lid=' + string)
1944        }
1945
1946        function base64Encode(uint8Array) {
1947            uint8Array = utf8Encode(uint8Array)
1948            return btoa(String.fromCharCode.apply(null, uint8Array))
1949        }
1950
1951        function replaceDomainIdToEncodedLid (id) {
1952            var button = document.getElementById('travelInsuranceLink');
1953            if (button && button.href) {
1954                button.href = button.href.replace('{{DOMAINLID}}', base64Encode(id));
1955            }
1956        }
1957
1958        // Travel Insurance link change parameter
1959        document.addEventListener('DOMContentLoaded', function () {
1960            replaceDomainIdToEncodedLid('6384e0b9-8ec4-431d-96a1-75c3cb573fd0');
1961        });
1962</script>
1962
1963
1964    <style type="text/css">
1965        #msie-banner {
1966            position: fixed;
1967            top: 0;
1968            left: 0;
1969            width: 100%;
1970            padding: 19px;
1971            z-index: 43;
1972            font-size: 16px;
1973            font-weight: 700;
1974            letter-spacing: .5px;
1975            color: #fff;
1976            background-color: #d86a6a;
1977            text-align: center;
1978        }
1979
1980            #msie-banner p {
1981                margin: 0;
1982            }
1983
1984            #msie-banner a {
1985                color: #fff;
1986            }
1987    </style>
1988
1989    <div id="msie-banner" style="display:none;">
1990        <p>Your browser may not work with certain site. <a href="https://www.microsoft.com/edge">Upgrade now.</a></p>
1991    </div>
1992
1993    
1993<script>
1994        // Can't find variable: _AutofillCallbackHandler fix
1995        window._AutofillCallbackHandler = window._AutofillCallbackHandler || function () { }
1996    </script>
1996
1997    
1998
1999
2000
2001</body>
2002</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.