Web Content Display (Global)

an-error-occurred-while-processing-the-template
The following has evaluated to null or missing:
==> jsonStrings  [in template "20099#20125#100170719" at line 16, column 8]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: ${jsonStrings}  [in template "20099#20125#100170719" at line 16, column 6]
----
1<div id="portletOutput"> 
2<@liferay_portlet["runtime"] instanceId="99123461" 
3       portletName="rbi_primary_navigation_json_reader_RbiPrimaryNavigationJsonReaderPortlet" /> 
4</div> 
5 
6 
7<script> 
8    // Assuming your embedded portlet renders the string in a specific element with ID 'embeddedContent' 
9    var embeddedContentElement = document.getElementById('portletOutput'); 
10		var jsonString = embeddedContentElement.textContent.trim(); 
11		console.log("embeddedContentElement String: " + jsonString); 
12		var tempS = "Hello World" 
13		window.jsonStrings = jsonString; 
14    
15</script> 
16<div>${jsonStrings}</div> 
17<#assign theme_display = themeDisplay /> 
18<#assign images_folder = theme_display.getPathThemeImages() /> 
19<#assign tabindexNum ="" /> 
20 
21<!-- <div class="desktop-primary-navigation-wrapper full-width">--> 
22	<nav class="container pl-0 pr-0" tabindex="0"  aria-label="Primary Navigation"> 
23    <div class="rbi-header-wrap full-width"> 
24        <div class="container-fluid rbi-header"> 
25            <div data-title="Primary Navigation" id="primary-navigation" data-intro="Smart navigation with clear segregations" class="rbi-primary-navigation"> 
26                <ul class="nav navbar-site" role="menu"> 
27                    <!--Menu Level 1 start--> 
28                    <#if (content.getData())??> 
29						<#list completeJson?eval as jsonKey, jsonValue> 
30						<#list jsonValue as singleJsonValue> 
31						<li class="nav top-level-menu ${singleJsonValue.ListInfo}" role="menuitem" aria-label="${singleJsonValue.FirstLevelText} menu item"> 
32 
33                            <#if singleJsonValue.IsSecondLevelExists=="true"> 
34                                            <#assign topLevelMenuRole="role='menuitem'"> 
35                                                <#else> 
36                                                    <#assign topLevelMenuRole="role='menuitem'"> 
37                                        </#if> 
38                                                     
39						<#if singleJsonValue.FirstLevelText??> 
40						<span role="menu"> 
41							<a class="nav-link page-level-1" aria-label="${singleJsonValue.FirstLevelText} menu item"  ${topLevelMenuRole} href="${singleJsonValue.FirstLevelLink}"  tabindex="0" > 
42								<span class="text-truncate">${singleJsonValue.FirstLevelText}</span> 
43							</a> 
44					</span> 
45						</#if>      
46            <#if singleJsonValue.IsSecondLevelExists=="true"> 
47                    <div class="top-mega-menu-wrap" role="menu"   tabindex="0" aria-label="${singleJsonValue.FirstLevelText} Sub Menu Open"> 
48                        <div class="repateable-img d-none"></div> 
49                            <div class="mega-menu-first-block equalColumns"> 
50                                <div class="mega-menu-first-block-row"> 
51                                    <h3 tabindex="0">${singleJsonValue.FirstLevelText}</h3> 
52									<#if singleJsonValue.FirstLevelDescription?? && singleJsonValue.FirstLevelDescription!=""> 
53                                    <p tabindex="0" class="desc">${singleJsonValue.FirstLevelDescription}</p> 
54									</#if> 
55																		 
56                                       
57                                </div> 
58                            </div> 
59                        <div class="mega-menu-second-blocks equalColumns"> 
60												<span class="top-level-page-name">${singleJsonValue.FirstLevelText}</span> 
61                                                <!--Menu Level 2 start--> 
62                                                <#if singleJsonValue.IsSecondLevelExists == "true" > 
63                                                <ul class="second-level-menu test"> 
64                                <#list singleJsonValue.SecondLevelData as secondLevelData> 
65                                
66                                 
67                                <li class="second-level-page test" role="menuitem"> 
68                                    <!--${secondLevelData.SecondLevelLink}--> 
69                                         
70                                        <a class="second-level-menu-URL" target="_self"  
71                                        href="${secondLevelData.SecondLevelLink}" tabindex="0"> 
72                                            ${secondLevelData.SecondLevelText} 
73 
74                                        </a> 
75                                        <!--${secondLevelData.SecondLevelLink}--> 
76                                        <#if secondLevelData.IsThirdLevelExists == "true" > 
77                                        <div class="primary-nav-arrow-wrapper">  
78                                             
79                                           <span  class="primary-nav-arrow" role="menu" tabindex="0" title="Open Submenu for ${secondLevelData.SecondLevelText}">  
80                                             
81                                            <img src="${images_folder}/rbi-main/nav-arrow.svg" alt="${secondLevelData.SecondLevelText}"> 
82                                         
83                                            </span> 
84                                         
85										</div> 
86                                        </#if> 
87                                     
88											 
89                                         
90                                            <!--Menu Level 3 start--> 
91                                            <div class="mega-menu-third-blocks equalColumns"> 
92                                                <span class="third-level-page-name">${secondLevelData.SecondLevelText}</span> 
93            <#if secondLevelData.IsThirdLevelExists == "true" > 
94                                                            <ul class="third-level-menu"> 
95 
96            <#list secondLevelData.ThirdLevelData as thirdLevelData> 
97             
98            <#if thirdLevelData.IsFourthLevelExists == "true" > 
99                <#assign third_lavel_aria ="open sub menu for ${thirdLevelData.ThirdLevelText}" /> 
100                <#assign rolemenu = "role=menu" /> 
101                <#else> 
102              <#assign third_lavel_aria ="${thirdLevelData.ThirdLevelText}" /> 
103              <#assign rolemenu = "" /> 
104 
105            </#if> 
106 
107                <li class="third-level-page"> 
108                    <span class="hide-text"></span> 
109                    <a href="${thirdLevelData.ThirdLevelLink}" ${rolemenu}  aria-label="${third_lavel_aria}"  target="_self">${thirdLevelData.ThirdLevelText}</a> 
110                        <!--Menu Level 4 start--> 
111                     
112                                                                                        <#if thirdLevelData.IsFourthLevelExists == "true" > 
113         <ul class="fourth-level-menu"> 
114 
115                                                                                            <#list thirdLevelData.FourthLevelData as fourthLevelData> 
116                                                                                                <li class="fourth-level-page"  role="menuitem" >  
117                                                                                                    <a href="${fourthLevelData.FourthLevelLink}" target="_self">${fourthLevelData.FourthLevelText}</a> 
118                                                                                                </li> 
119                                                                                            </#list> 
120                                                                                                                                                                                                                            </ul> 
121                                                                                        </#if> 
122 
123 
124                </li> 
125               
126</#list> 
127</#if> 
128 
129            <!--json area--> 
130             
131                                                                <#if secondLevelData.IsThirdLevelExists == "true" > 
132                                                                    <#if secondLevelData.CommonSecondLevelData?? && secondLevelData.CommonSecondLevelData.Main.ImageLink != ""> 
133                                                                    <div class="pn-dynamic-data-wrapper"> 
134                                                                        <!--josn image--> 
135                                                                        <#if secondLevelData.CommonSecondLevelData.Main.ImageLink != ""> 
136                                                                        <div class="pn-dynamic-data--img d-none"> 
137                                                                            <img src="${secondLevelData.CommonSecondLevelData.Main.ImageLink}" alt="RBI" title="RBI" tabindex="0"> 
138                                                                        </div> 
139                                                                        </#if> 
140                                                                        <!--josn image--> 
141 
142                                                                        <!--json dynamic content--> 
143                                                                        <div class="pn-content-dynamic-wrapper"> 
144																																				       <h2>${languageUtil.get(locale, "quick-links")}</h2> 
145                                                                        <#if secondLevelData.CommonSecondLevelData.Others??> 
146                                                                            <#list secondLevelData.CommonSecondLevelData.Others as others> 
147                                                                            <#if others.Title != "" > 
148                                                                            <div class="pn-content-contents-row"> 
149                                                                                <div class="pn-content-contents-row--inner"> 
150                                                                                    <div class="pn-dynamic-content-title"> 
151                                                                                        <a href="${others.Link}" class="content-title--link"> 
152                                                                                            ${others.Title} 
153                                                                                        </a> 
154                                                                                    </div> 
155                                                                                    <#if others.Description != "" >  
156                                                                                    <div class="pn-dynamic-content-desc"> 
157                                                                                        ${others.Description} 
158                                                                                    </div> 
159                                                                                    </#if> 
160                                                                                </div> 
161                                                                            </div> 
162                                                                            </#if> 
163                                                                            </#list> 
164                                                                        </#if> 
165                                                                        </div> 
166                                                                        <!--json dynamic content--> 
167                                                                    </div> 
168                                                                    </#if> 
169                                                                        </ul> 
170                                                                </#if> 
171                                                                 
172            <!--json area--> 
173 
174     
175 
176    </div> 
177 
178</li> 
179 
180</#list> 
181</ul> 
182</#if> 
183<!--Menu Level 2 start-->      
184</div> 
185</div> 
186</#if> 
187 
188<!--top-mega-menu-wrap ends--> 
189 
190</li> 
191<!--Menu Level 1 ends--> 
192</#list> 
193</#list> 
194</#if>  
195 
196</ul> 
197</div> 
198</div> 
199</div> 
200</nav> 
201<!--</div>--> 
202 
203 
204<script> 
205    var clickedTab = false; 
206 
207    function tabPressEqualCol() { 
208       // console.log('tabPressEqualCol function called'); 
209        if ($(window).width() < 1024) { 
210                return false; 
211
212 
213            $('.top-level-menu').each(function() { 
214                var getSecondLevelTabMenuLength = $(this).children(".top-mega-menu-wrap").find($(".second-level-menu li")).length; 
215                if (getSecondLevelTabMenuLength > 0) { 
216 
217                    // var isLevelOneisHidden = $(this).children(".top-mega-menu-wrap").is(":hidden"); 
218                    //     if (isLevelOneisHidden) { 
219                    //         $(this).children(".top-mega-menu-wrap").show(); 
220                    //         const elms = document.querySelector('.top-level-menu'); 
221                    //         const getLeftPos = elms.getBoundingClientRect(); 
222                    //         const shiftLeftPos = getLeftPos.left; 
223                    //     } 
224 
225                    var maxHeight = 0; 
226                    var sameBlocks = ($(this).children(".top-mega-menu-wrap")).children( 
227                    '.equalColumns'); 
228                    var thirdLevelBlockMenu = $(this).find('.mega-menu-third-blocks .third-level-menu'); 
229 
230                    sameBlocks.each(function (ev) { 
231                        $(this).css('height', 'fit-content'); 
232                        if ($(this).height() > maxHeight) { 
233                            maxHeight = $(this).height(); 
234
235						 
236                    }); 
237 
238                    sameBlocks.each(function (ev) { 
239                        if (maxHeight > 400) { 
240                            $(this).css('height', Math.round(maxHeight).toString() + 'px'); 
241                            $(thirdLevelBlockMenu).css('height', Math.round(maxHeight).toString() + 'px'); 
242                        } else { 
243                            $(this).css('height', '400px'); 
244                            $(thirdLevelBlockMenu).css('height', '400px'); 
245
246                    }); 
247
248            }); 
249             
250 
251 
252 
253 
254
255 
256    //tab key invoke// 
257$(document).on('keyup', '.primary-nav-arrow', function (e) { 
258    if ((e.keyCode === 9) || (e.keyCode === 13))  { 
259        console.log('tab press'); 
260        tabPressEqualCol(); 
261
262}); 
263 
264	 
265    $(document).ready(function () { 
266 
267        tabPressEqualCol(); 
268			 
269			//third level content title character length 
270			$(".pn-dynamic-content-title a.content-title--link").each(function() { 
271				var getFeedbackText=$(this).text().trim(); 
272				if (getFeedbackText.length > 43) { 
273					 var setFeedbackText = getFeedbackText.substring(0, 43); 
274					$(this).text(setFeedbackText); 
275
276				//console.log("getFeedbacktext --- " + getFeedbackText); 
277			}); 
278 
279			//third level content Desc character length 
280			$(".pn-dynamic-content-desc").each(function() { 
281				var getFeedbackText=$(this).text().trim(); 
282				if (getFeedbackText.length > 43) { 
283					 var setFeedbackText = getFeedbackText.substring(0, 43); 
284					$(this).text(setFeedbackText); 
285
286				//console.log("getFeedbacktext --- " + getFeedbackText); 
287			}); 
288			 
289        // Check if 3rd level nav items exist 
290        if($(".second-level-page").length){ 
291            $(".second-level-page").each(function() { 
292                let thirdLevelNavItems = $(this).find('.third-level-page'); 
293                if(thirdLevelNavItems.length){ 
294                    $(this).addClass('has-level-3'); 
295
296            }); 
297        }   
298 
299        // Check if 4th level nav items exist 
300        if($(".third-level-page").length){ 
301            $(".third-level-page").each(function() { 
302                let fourthLevelNavItems = $(this).find('.fourth-level-page'); 
303                if(fourthLevelNavItems.length){ 
304                    $(this).addClass('is-level-4-accordion'); 
305                    $(this).parents('.mega-menu-third-blocks').addClass('is-level-4-accordion-parent'); 
306
307            }); 
308        }         
309 
310        // Close Nav 1st level anchor text 
311        $(".top-level-page-name").on('click', function () { 
312            $(this).closest(".top-mega-menu-wrap").hide(); 
313        }); 
314 
315        // Close Nav 2nd level anchor text 
316        $(".third-level-page-name").on('click', function () { 
317            $(this).parent(".mega-menu-third-blocks").removeClass('level-3-open'); 
318            $(this).siblings($(".third-level-menu")).hide(); 
319        }); 
320 
321        // Nav 1st level anchor link with lchange for accessibilty fix line 300, 306 and 309 
322        $('.top-level-menu> span a').on('click', function (e) { 
323            if ($(this).hasClass('disableURL')) { 
324                e.preventDefault(); 
325
326 
327            if ($(window).width() < 1024) { 
328                var getSecondLevelMenuLength = $(this).parent().siblings(".top-mega-menu-wrap").find($( 
329                    ".second-level-menu li")).length; 
330                if (getSecondLevelMenuLength > 0) { 
331                    var menuOpen = $(this).parent().siblings(".top-mega-menu-wrap").is(":hidden"); 
332                    if (menuOpen) { 
333                        $(this).parent().siblings(".top-mega-menu-wrap").show(); 
334
335
336
337        }); 
338 
339        // Nav 1st level anchor link 
340		$('.second-level-page a').on('click', function (e) { 
341            if ($(this).hasClass('disableURL')) { 
342                e.preventDefault(); 
343
344            if ($(window).width() < 1024) { 
345                var getThirdLevelMenuLength = $(this).closest('.second-level-page').children(".mega-menu-third-blocks").find($(".third-level-menu li")).length; 
346                if (getThirdLevelMenuLength > 0) { 
347                    $(this).closest('.second-level-page').children(".mega-menu-third-blocks").addClass('level-3-open'); 
348                    $(this).closest('.second-level-page').children(".mega-menu-third-blocks").find($(".third-level-menu")).show(); 
349					//console.log("clicked...."); 
350
351
352        }); 
353		 
354		 
355 
356		$('.second-level-page .primary-nav-arrow').on('click', function (e) { 
357            if ($(this).hasClass('disableURL')) { 
358                e.preventDefault(); 
359
360            if ($(window).width() < 1024) { 
361                var getThirdLevelMenuLength = $(this).closest('.second-level-page').children(".mega-menu-third-blocks").find($(".third-level-menu li")).length; 
362                if (getThirdLevelMenuLength > 0) { 
363                    $(this).closest('.second-level-page').children(".mega-menu-third-blocks").addClass('level-3-open'); 
364                    $(this).closest('.second-level-page').children(".mega-menu-third-blocks").find($(".third-level-menu")).show(); 
365					//console.log("clicked...."); 
366
367
368        }); 
369 
370        // Nav 1st level mouseenter event 
371        $('.top-level-menu').mouseenter(function (e) { 
372            if ($(window).width() < 1024) { 
373                return false; 
374
375             
376            var getSecondLevelMenuLength = $(this).children(".top-mega-menu-wrap").find($( 
377                ".second-level-menu li")).length; 
378                 
379              //added  
380              if (getSecondLevelMenuLength === 0) { 
381                    $(this).closest('.top-level-menu').find('.page-level-1').addClass("withoutDropdown"); 
382					//$(this).closest('.top-level-menu').find('.top-mega-menu-wrap').remove(); 
383                }    
384            if (getSecondLevelMenuLength > 0) { 
385                var isLevelOneisHidden = $(this).children(".top-mega-menu-wrap").is(":hidden"); 
386                if (isLevelOneisHidden) { 
387                    $(this).children(".top-mega-menu-wrap").show(); 
388                    const elms = document.querySelector('.top-level-menu'); 
389                    const getLeftPos = elms.getBoundingClientRect(); 
390                    const shiftLeftPos = getLeftPos.left; 
391 
392                    //$(this).children(".top-mega-menu-wrap").css("left", "-" + shiftLeftPos + "px"); 
393 
394                    // added for equal column //  
395                    var maxHeight = 0; 
396                    var sameBlocks = ($(this).children(".top-mega-menu-wrap")).children( 
397                    '.equalColumns'); 
398                    var thirdLevelBlockMenu = $(this).find('.mega-menu-third-blocks .third-level-menu'); 
399 
400                    sameBlocks.each(function (ev) { 
401                        $(this).css('height', 'fit-content'); 
402                        if ($(this).height() > maxHeight) { 
403                            maxHeight = $(this).height(); 
404
405						 
406                    }); 
407 
408                    sameBlocks.each(function (ev) { 
409                        if (maxHeight > 400) { 
410                            $(this).css('height', Math.round(maxHeight).toString() + 'px'); 
411                            $(thirdLevelBlockMenu).css('height', Math.round(maxHeight).toString() + 'px'); 
412                        } else { 
413                            $(this).css('height', '400px'); 
414                            $(thirdLevelBlockMenu).css('height', '400px'); 
415
416						 
417				}); 
418
419
420             
421        }); 
422 
423        // Nav 1st level mouseleave event 
424        $('.top-level-menu').mouseleave(function (e) { 
425            if ($(window).width() < 1024) { 
426                return false; 
427
428            $(this).children(".top-mega-menu-wrap").hide(); 
429            $(".third-level-menu").hide(); 
430        }); 
431 
432        // Nav 2nd level mouseenter event 
433        $(".second-level-page").mouseenter(function () { 
434            if ($(window).width() < 1024) { 
435                return false; 
436
437            var thirdLevelMenu = $(this).find(".third-level-menu"); 
438            var thirdLevelMenuItems = $(this).find(".third-level-menu li"); 
439 
440            if (thirdLevelMenuItems.length > 0) { 
441                thirdLevelMenu.show(); 
442            }             
443        }); 
444 
445        // Nav 2nd level mouseleave event 
446        $(".second-level-page").mouseleave(function () { 
447            if ($(window).width() < 1024) { 
448                return false; 
449
450            var thirdLevelMenu = $(this).find(".third-level-menu"); 
451            thirdLevelMenu.hide(); 
452        }); 
453 
454        // retriving top level url  
455        $(document).on('keydown', '.top-level-menu', function (e) { 
456            $('.nav.navbar-site').first().children('li').each(function () { 
457               // $(this).find('a').attr('tabindex', '0'); 
458               // $(this).find('a').addClass('First-level-menu'); 
459            }); 
460           
461            $(this).each(function () { 
462                if ( $(this).children('.page-level-1').hasClass('disableURL') ) { 
463                    if (e.which == 13) { 
464                        if ($(this).find('.top-mega-menu-wrap').is(":hidden")) { 
465                            $(".top-mega-menu-wrap").hide(); 
466                            $(this).find(".top-mega-menu-wrap").show(); 
467                            clickedTab = true; 
468                            e.preventDefault(); 
469                        } else { 
470                            $(this).find(".top-mega-menu-wrap").hide(); 
471
472
473
474                 
475            }); 
476        }); 
477 
478        $(".rbi-primary-navigation a").each(function () { 
479            var getPageLevelURL = $(this).attr("href"); 
480            if (((getPageLevelURL.indexOf("javascript") > -1)) || ((getPageLevelURL.indexOf( 
481                    "Javascript") > -1))) { 
482                $(this).addClass("disableURL"); 
483
484 
485            // added for collaborative events menu should not open  
486            if ((getPageLevelURL.indexOf("href") > -1))  { 
487                $(this).addClass("menu-not-open-collaborative"); 
488
489 
490             
491        }); 
492          
493        /*blocked temprary need to know why shift key is desier*/ 
494        // $('.mega-menu-second-blocks .second-level-menu>li:last-child>a').on('keydown', function (e) { 
495        //     if( !e.shiftKey && e.keyCode ){ 
496        //         $('.top-mega-menu-wrap').css('display', 'none');   
497        //     }                        
498        // }); 
499 
500        var navMousedown = false; 
501        $('.mega-menu-third-blocks .third-level-menu>li:last-child>a').on('mousedown', function () { 
502            navMousedown = true; 
503        }); 
504 
505        $('.mega-menu-third-blocks .third-level-menu>li:last-child>a').on('focusout', function (event) { 
506            $(this).keydown(function (e) { 
507                if(!navMousedown) { 
508                    if( !e.shiftKey && e.keyCode ){ 
509                        if( !$(this).parent('.is-level-4-accordion').hasClass('active') ){ 
510                            $(".third-level-menu").css('display', 'none'); 
511                            $(this).parent('.second-level-page').focus();  
512                        }                         
513                    }                 
514
515                navMousedown = false;   
516            });                       
517        }); 
518 
519        $('.mega-menu-second-blocks .second-level-menu li.has-level-3').on('keydown', function (event) { 
520            // on click of enter  
521            if (event.which === 13) { 
522                $(this).trigger('click').find('.third-level-menu').css('display', 'block'); 
523                 
524
525        }); 
526 
527        $('.mega-menu-second-blocks .second-level-menu>li>a').on('focus', function (event) { 
528            $(".third-level-menu").css('display', 'none'); 
529        }); 
530 
531        $('.rbi-header .site-logo .custom-logo').on('focusout', function (event) { 
532            $('.rbi-primary-navigation>ul>li:nth-child(2)>a').attr('tabindex', '0'); 
533        }); 
534 
535        // On load get number of languages 
536        let rbiLanguages = []; 
537 
538        if ($(".multipleLanguae-wrapper #languageSelector option").length) { 
539            $(".multipleLanguae-wrapper #languageSelector option").each(function () { 
540                let currentItem = { 
541                    languageText: $(this).text(), 
542                    languageURL: $(this).attr('value') 
543                }; 
544                rbiLanguages.push(currentItem); 
545            }); 
546        }  
547		 
548 
549        // Add languages to mobile list items 
550        let langListItem = ''; 
551        let langListItemContainer = $(".pwa-primary-navigation-wrapper .nav>li:first-child").find( 
552            '.second-level-menu'); 
553        langListItemContainer.empty(); 
554				 
555				     if (rbiLanguages.length) { 
556            $.each(rbiLanguages, function (key, value) { 
557							 
558                if (value.languageURL == value.languageText) { 
559                    langListItem = 
560                        "<li class='second-level-page selected test' ><a href='javascript:void(0)' target='_self'>" + 
561                        value.languageText + "</a></li>"; 
562                } else { 
563                    langListItem = 
564                        "<li class='second-level-page test'><a href='" + 
565                        value.languageURL + "' target='_self'>" + value.languageText + "</a></li>"; 
566
567 
568                langListItemContainer.append(langListItem); 
569            }); 
570
571         
572 
573    }); 
574window.addEventListener("load", () => { 
575    setTimeout(() => { 
576        if(window.location.href.includes('lost-in-transmission-financial-markets-and-monetary-policy-duplicate-0') 
577        ){ 
578                $(".multipleLanguae-wrapper .list ul li").each(function () { 
579                        $(this).removeClass('d-none') 
580                }); 
581
582    }, 2000); 
583 }); 
584 
585</script> 
586 
587 
588<script> 
589$(document).ready(function(){ 
590		setTimeout(function() {  
591        $('.rbi_home_hero_wrapper .owl-dots button').attr('aria-label', 'Slide Navigation'); 
592        $('.rbi_home_hero_wrapper .owl-dots button').attr('title', 'Slide Navigation'); 
593    }, 50); 
594}); 
595</script>